.oferta-container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xl); 
    margin-top: var(--spacing-md);
    margin-bottom: var(--spacing-xl);
}

.oferta-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-lg); 
    align-items: stretch;
    
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.oferta-text-box {
    background-color: var(--color-szary-jasny-alpha);
    border: 2px solid var(--color-gr2);
    padding: var(--spacing-2xl) var(--spacing-xl);
    display: flex;
    flex-direction: column;
    justify-content: center; 
    gap: var(--spacing-md);
    box-shadow: 0 4px 15px rgba(0, 76, 8, 0.04);
}

.oferta-title {
    color: var(--color-light-green);
    text-transform: uppercase;
    font-family: var(--font-cinzel);
    font-weight: bold;
    font-size: 28px;
    letter-spacing: 1px;
}

.oferta-image-wrapper {
    border: 2px solid var(--color-gr2);
    overflow: hidden;
    display: flex;
}

.oferta-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 350px;
}

.oferta-row:not(.reverse) .oferta-text-box {
    border-left: none;
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
    
    padding-left: max(var(--spacing-page), calc((100vw - var(--content-width)) / 2 + var(--spacing-page)));
}
.oferta-row:not(.reverse) .oferta-image-wrapper {
    border-right: none;
    border-radius: var(--radius-md) 0 0 var(--radius-md);
}


.oferta-row.reverse .oferta-text-box {
    border-right: none;
    border-radius: var(--radius-md) 0 0 var(--radius-md);
    
    padding-right: max(var(--spacing-page), calc((100vw - var(--content-width)) / 2 + var(--spacing-page)));
    
    order: 2;
}
.oferta-row.reverse .oferta-image-wrapper {
    border-left: none;
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
    
    order: 1; 
}

@media (max-width: 900px) {
    .oferta-row {
        grid-template-columns: 1fr;
        gap: 0;
    }
    
    .oferta-row.reverse .oferta-text-box,
    .oferta-row:not(.reverse) .oferta-text-box {
        order: 2; 
        border-radius: 0;
        border-left: none;
        border-right: none;
        padding-left: var(--spacing-page);
        padding-right: var(--spacing-page);
    }
    
    .oferta-row.reverse .oferta-image-wrapper,
    .oferta-row:not(.reverse) .oferta-image-wrapper {
        order: 1; 
        border-radius: 0;
        border-left: none;
        border-right: none;
        height: 300px;
    }
}