/* ===== “Miben segíthetünk?” SECTION – Chrome-safe ===== */
:root {
    /* magasság változó a kártyákhoz */
    --card-h: 710px;
}
.section {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 33px;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    letter-spacing: 0;
    padding: 45px 172px;
    margin-top: 0px;
    overflow: hidden;
}
.kinalatunk-images {
    display: flex;
    flex-direction: row;
}
.kinalatunk-images-row,
.kinalatunk-images-row-rev {
    display: flex;
    flex-direction: column;
    align-items: flex-end; /* kép és szöveg alja egy vonalban */
    justify-content: center; /* ha középre akarod a párost */
    gap: 16px;
}
.kinalatunk-images-row img,
.kinalatunk-images-row-rev img {
    display: block;
    height: auto;
}

/* opcionális: a p ne dobjon extra alul-felül marginokat */
.kinalatunk-images-row p,
.kinalatunk-images-row-rev p {
    margin: 0 auto;
}
.kinalatunk-images-row > p,
.kinalatunk-images-row-rev > p {
    color: #2f2f2f;
    text-align: center;
    font-family: "Plus Jakarta Sans";
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 500;
}
.kinalatunk-images {
    display: flex;
    flex-direction: row;
    gap: 24px; /* oszlop/sor közt */
}

.kinalatunk-text-sub {
    margin: 0 auto;
    margin-top: 80px;
    max-width: 1140px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
}

.kinalatunk-text-title {
    color: #1d3c0f;
    text-align: center;
    font-family: "Plus Jakarta Sans";
    font-size: clamp(1.125rem, 1.4vw, 2rem);
    font-style: normal;
    font-weight: 500;
    line-height: 160.719%;
}
.kinalatunk-text-paragraph {
    color: #2f2f2f;
    text-align: center;
    font-family: "Plus Jakarta Sans";
    font-size: clamp(1.125rem, 1.1vw, 1.8rem);
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 48px */
    letter-spacing: -0.352px;
}

.kinalatunk-aru {
    margin-top: 100px;
    display: grid;

    /* + egy "gutter" oszlop a képek és a szöveg között */
    grid-template-columns: 260px 320px 48px minmax(0, 50%);
    grid-template-rows: 1fr 1fr;

    grid-template-areas:
        "up   right . text"
        "down right . text";

    gap: 24px; /* általános térköz */
    align-items: stretch;
}

/* területek kiosztása */
.aru-img-up {
    grid-area: up;
}
.aru-img-down {
    grid-area: down;
}
.aru-img-right {
    grid-area: right;
}
.aru-text {
    grid-area: text;
}

/* képek */
.aru-img-up img,
.aru-img-down img,
.aru-img-right img {
    display: block;
    width: 100%;
    height: auto;
}

/* bal oldali képek kitöltése (ha kell vágás) */
.aru-img-up,
.aru-img-down {
    overflow: hidden;
}
.aru-img-up img,
.aru-img-down img {
    height: 100%;
    object-fit: cover;
}

/* szöveg blokk */
.aru-text {
    display: flex;
    flex-direction: column;
    justify-content: center;

    /* ha a szöveg túl közel lenne mégis: */
    /* padding-left: 0; */
}

/* képek kezelése */
.aru-img-up img,
.aru-img-down img,
.aru-img-right img {
    display: block;
    width: 100%;
    height: auto;
}

/* opcionális: a bal oldali up/down képek töltsék ki a saját cellájuk magasságát,
   és "vágással" legyenek szépek (ha kell) */
.aru-img-up,
.aru-img-down {
    overflow: hidden;
}

.aru-img-up img,
.aru-img-down img {
    height: 100%;
    object-fit: cover; /* csak akkor jó, ha nem baj, ha kicsit vág */
}

.aru-text {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    gap: 30px;
}
.aru-text-title {
    color: #083428;
    font-family: "Plus Jakarta Sans";
    font-size: 2.3rem;
    font-style: normal;
    font-weight: 600;
    text-transform: uppercase;
}
.section-1-button-primary {
    background: #ef7417;
    color: #fff;
    font-family: "Plus Jakarta Sans", system-ui, sans-serif;
    font-size: 20px;
    font-weight: 600;
    padding: 14px 32px;
    border: none;
    border-radius: 58px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 50px auto 0 auto;
    text-transform: uppercase;
}
@media (max-width: 768px) {
    .kinalatunk-aru {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
        grid-template-areas:
            "text text"
            "up   down";
        gap: 16px; /* mobilon kisebb gap */
    }

    .aru-img-right {
        display: none;
    }

    /* biztos ami biztos: semmi ne floatoljon mobilon */
    .kinalatunk-aru img {
        float: none !important;
    }
    .section-1-button-primary {
        margin-top: 32px;
        font-size: 18px;
        padding: 12px 24px;
        display: block;
        width: 100%;
        max-width: 320px;
    }

    .section {
        padding: 25px 42px;
    }
    .kinalatunk-aru,
    .kinalatunk-text-sub {
        margin-top: 30px;
    }
}

/* tablet + mobil */
@media (max-width: 1024px) {
    .kinalatunk-images {
        flex-wrap: wrap; /* ettől lesz 2 sor */
    }

    .kinalatunk-images-row,
    .kinalatunk-images-row-rev {
        flex: 0 0 calc(50% - 12px); /* 2 elem / sor (gap fele levonva) */
        /* ha kell, hogy ne nyúljon túl: */
        box-sizing: border-box;
    }
    .kinalatunk-images-row > p,
    .kinalatunk-images-row-rev > p {
        font-size: 1.3rem;
    }
}
/* @media (max-width: 640px) {
    .kinalatunk-images-row,
    .kinalatunk-images-row-rev {
        flex: 0 0 100%;
    }
} */

/* Háttér dísz képek maradnak abszolúton */
.section-vass-logo1 {
    position: absolute;
    top: -388px;
    left: -733px;
    width: calc(100% + 1466px);
    max-width: 1120px;
}
.section-vass-logo2 {
    position: absolute;
    top: -638px;
    right: -752px;
    width: calc(100% + 1504px);
    max-width: 1120px;
}

/* Fejléc blokk */
.section-col-top {
    margin-inline: 308px 271px;
    display: flex;
    flex-direction: column;
    text-align: center;
}
.section-title {
    color: var(--primary);
    font-size: 58px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.517;
}
.section-subtitle {
    color: var(--text-main);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.679;
}

/* A három kártya egy sorban – stabil flex beállítások */
.section-row {
    position: relative;
    z-index: 3;
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 22px;
}

/* Kritikus: engedd zsugorodni a gyerekeket */
.section-row > * {
    min-width: 0;
}

/* Bal nagykártya – arány: ~1.3 */
.section-item-1 {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1.3 1 0;
    min-height: 560px;
}

/* Jobb oldali két oszlop – arány: ~0.85 + 0.85 */
.column {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 0.85 1 0;
    min-height: 520px;
}
.section-item-1,
.column {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: var(--card-h);
    overflow: hidden;
    border-radius: 20px;
}

.section-mask-group,
.column-mask-group {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    z-index: 0;
}

/* Jobb felső kis kör gomb az oszlopokon */
.column-circle {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 20px;
}

/* Alsó overlay kártyák */
.card-bottom,
.card-bottom2 {
    position: relative;
    z-index: 2;
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: linear-gradient(
        148deg,
        rgba(255, 76, 0, 0.28) 18%,
        rgba(121, 51, 0, 0.67) 80%
    );
    border-radius: 20px;
    padding: 20px 20px 16px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* A nagy bal kártya belső */
.card-bottom2 {
    border-radius: 10px;
    gap: 8px;
    padding: 17px 15px 20px 15px;
}

/* Tipók az alsó kártyákban (megtartjuk az eredetit) */
.card-bottom-text {
    color: #fff;
    font:
        700 16px/1.5 "DM Sans",
        system-ui,
        sans-serif;
    text-transform: none;
}
.card-subtitle {
    text-transform: uppercase;
}

/* ===== Reszponzív / container breakpont ===== */

/* EREDETI: width < 1575px → ez 1440-es desktopon is stackelt. */
@container section-services (width < 1000px) {
    .section-row {
        flex-direction: column;
    }
    .section-item-1,
    .column {
        min-height: 420px;
    }
}

/* Fallback viewport media query – ha a container query véletlen nem futna */
@media (max-width: 1000px) {
    .section-row {
        flex-direction: column;
    }
    .section-item-1,
    .column {
        min-height: 420px;
    }
}

/* Kis képernyős padding finomítások */
@media (max-width: 1280px) {
    .section {
        padding-inline: var(--margin-md);
    }
    .section-col-top {
        margin-inline: 0;
    }
}
@media (max-width: 576px) {
    .section {
        padding-inline: var(--margin-sm);
    }
}
.section-row {
    align-items: stretch;
}
.section-item-1,
.column {
    display: flex;
    flex-direction: column;
    min-height: var(--card-h);
}

/* Responsive finomhangolás */
@media (max-width: 1200px) {
}
@media (max-width: 900px) {
    .card-bottom-subtitle,
    .card-subtitle {
        font-size: 18px;
    }
    .section-title {
        font-size: 38px;
    }
    .section-subtitle {
        font-size: 22px;
    }
    .section {
        margin-top: 0px;
    }
    .card-bottom2 {
        position: relative;
        z-index: 2;
        margin-top: auto;
        display: flex;
        flex-direction: column;
        gap: 10px;
        background: linear-gradient(
            148deg,
            rgba(255, 76, 0, 0.28) 18%,
            rgba(121, 51, 0, 0.67) 80%
        );
        border-radius: 20px;
        padding: 20px 20px 16px;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }

    .section-vass-logo1,
    .section-vass-logo2 {
        max-width: none;
        pointer-events: none;
        user-select: none;
    }

    .section-vass-logo1 {
        /* nagy desktop érték helyett jóval kisebb, viewport-arányos */
        width: 120vw;
        top: -220px;
        left: -40vw;
    }
    .section-vass-logo2 {
        width: 120vw;
        top: -360px;
        right: -40vw;
    }
}
@media (max-width: 600px) {
    .section-vass-logo1 {
        width: 110vw;
        top: -160px;
        left: -30vw;
    }
    .section-vass-logo2 {
        width: 110vw;
        top: -280px;
        right: -30vw;
    }
}
/* Mobil viselkedés */
@container section-services (width < 1000px) {
    .section-row {
        flex-direction: column;
    }
    .section-item-1,
    .column {
        min-height: 420px;
    }
}
@media (max-width: 1000px) {
    .section-row {
        flex-direction: column;
    }
    .section-item-1,
    .column {
        min-height: 420px;
    }
}

/* mobilon rejtsük a leíró bekezdést az első kártyában */
@media (max-width: 900px) {
    .section .section-item-1 .card-bottom-text-bottom.paragraph {
        display: none !important;
    }
}

@media (max-width: 1200px) {
    :root {
        --card-h: 560px;
    }
}
@media (max-width: 900px) {
    :root {
        --card-h: 420px;
    }
}
