/* ============================================================
   BRAUN GARTENBAU — GALABAU
   responsive.css — breakpoints & mobile navigation
   ============================================================ */

/* ---------- <= 1024px ---------- */
@media (max-width: 1024px) {

    .nav__links {
        position: fixed;
        inset: 0;
        z-index: -1;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 1.4rem;
        background: var(--bg);
        opacity: 0;
        visibility: hidden;
        transition: opacity .4s var(--ease), visibility .4s;
    }
    .nav.open .nav__links { opacity: 1; visibility: visible; z-index: 1; }
    .nav.open { background: var(--bg); }
    .nav__links a {
        font-family: var(--font-d);
        font-weight: 700;
        font-size: 1.7rem;
        color: var(--green-deep);
    }
    .nav:not(.scrolled) .nav__links a { color: var(--green-deep); }
    .nav__links a::after { display: none; }
    .nav__burger { display: flex; }
    .nav__cta .btn { display: none; }
    .nav.open .nav__logo,
    .nav.open .nav__logo .leaf { color: var(--green-deep); }
    .nav.open .nav__logo small { color: var(--muted); }
    .nav.open .nav__burger span { background: var(--green-deep); }

    .intro__grid { grid-template-columns: 1fr; }
    .gallery { grid-template-columns: repeat(3, 1fr); }
    .why-grid { grid-template-columns: repeat(2, 1fr); }
    .steps { grid-template-columns: repeat(3, 1fr); row-gap: 2rem; }
    .step:nth-child(3) .step__line { display: none; }
    .problems__grid { grid-template-columns: 1fr; }
    .seo-grid { grid-template-columns: 1fr; }
    .contact__grid { grid-template-columns: 1fr; }
}

/* ---------- <= 860px ---------- */
@media (max-width: 860px) {

    .hero { min-height: 88vh; }
    .hero__inner { padding-block: 8rem 3rem; }

    .intro__media { order: -1; }
    .intro__media > img { aspect-ratio: 16 / 12; }
    .intro__badge { right: 1rem; bottom: 1rem; }
    .intro__list { grid-template-columns: 1fr; }

    .services, .projects { grid-template-columns: 1fr; }
    .ba-grid { grid-template-columns: 1fr; }
    .quotes { grid-template-columns: 1fr; }

    .strip__grid { grid-template-columns: repeat(2, 1fr); gap: 2rem 1.5rem; }

    .steps { grid-template-columns: 1fr; row-gap: 1.6rem; }
    .step__line { display: none !important; }

    .footer__grid { grid-template-columns: 1fr; gap: 2.2rem; }
    .footer__bottom { flex-direction: column; }
}

/* ---------- <= 560px ---------- */
@media (max-width: 560px) {

    :root { --radius: 17px; }

    .nav__logo small { display: none; }

    .gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 150px; }
    .gallery__item--big { grid-column: span 2; grid-row: span 2; }
    .gallery__item--wide { grid-column: span 2; }
    .gallery__item--tall { grid-row: span 1; }

    .why-grid { grid-template-columns: 1fr; }

    .intro__badge { position: static; margin-top: 1rem; }
    .intro__media { position: static; }

    .btn { width: 100%; }
    .hero__actions { width: 100%; }
    .nav__cta .btn, .lightbox__btn { width: auto; }
}

/* ---------- print ---------- */
@media print {
    .nav, .fab, .cookie { display: none; }
}
