/* ═══════════════════════════════════════════════════════
   Kártyaudvar — responsive.css
   768px, 1024px, 1280px breakpoints
   ═══════════════════════════════════════════════════════ */

/* ── Tablet: 768px ─────────────────────────────────── */
@media (min-width: 768px) {

    :root {
        --header-h: 72px;
    }

    /* Nav visible */
    .kv-nav {
        display: flex;
    }

    .kv-hamburger {
        display: none;
    }

    /* Grids to 2 columns */
    .kv-grid--2 { grid-template-columns: repeat(2, 1fr); }
    .kv-grid--3 { grid-template-columns: repeat(2, 1fr); }
    .kv-grid--4 { grid-template-columns: repeat(2, 1fr); }

    /* Two-col */
    .kv-two-col {
        grid-template-columns: 1fr 1fr;
    }

    /* Form row 2-col */
    .kv-form__row--2 {
        grid-template-columns: 1fr 1fr;
    }

    /* Type selector horizontal */
    .kv-form__type-selector {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Footer: columns + sidebar side by side */
    .kv-footer__inner {
        grid-template-columns: 2fr 1fr;
    }

    .kv-footer__sidebar {
        padding-top: 0;
        border-top: none;
        border-left: 1px solid var(--c-border);
        padding-left: var(--s-32);
    }

    /* Footer bottom horizontal */
    .kv-footer__bottom-inner {
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
    }

    .kv-footer__hours {
        flex-direction: row;
        gap: var(--s-24);
    }

    /* Gallery */
    .kv-gallery {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ── Desktop: 1024px ───────────────────────────────── */
@media (min-width: 1024px) {

    /* Split hero side-by-side */
    .kv-hero--split {
        grid-template-columns: 1fr 1fr;
    }

    .kv-hero--split .kv-hero__content {
        order: 1;
        padding: var(--s-80) var(--s-64);
    }

    .kv-hero--split .kv-hero__media {
        order: 2;
    }

    /* Grids to 3 columns */
    .kv-grid--3 { grid-template-columns: repeat(3, 1fr); }
    .kv-grid--4 { grid-template-columns: repeat(3, 1fr); }

    /* Menu layout: sidebar + content */
    .kv-menu-layout {
        grid-template-columns: 200px 1fr;
    }

    .kv-menu-nav {
        flex-direction: column;
        position: sticky;
        top: calc(var(--header-h) + var(--s-24));
        overflow-x: visible;
    }

    /* Gallery */
    .kv-gallery {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Steps in two-col context: vertical */
    .kv-two-col .kv-steps {
        grid-template-columns: 1fr;
    }
}

/* ── Wide: 1280px ──────────────────────────────────── */
@media (min-width: 1280px) {

    /* 4-col grids */
    .kv-grid--4 { grid-template-columns: repeat(4, 1fr); }

    /* Wider container padding */
    .kv-container {
        padding: 0 var(--s-32);
    }

    /* Hero content wider */
    .kv-hero--split .kv-hero__content {
        padding: var(--s-96) var(--s-80);
    }
}
