/* ============================================================
   RELL S.R.L. — responsive.css
   Breakpoints: xl(1280), lg(1024), md(768), sm(640)
   ============================================================ */

/* ── XL → LG ─────────────────────────────────────────────── */
@media (max-width: 1280px) {
    .footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
    .footer__grid > :first-child { grid-column: 1 / -1; }
    .stats-grid { gap: var(--space-4); }
}

/* ── LG → MD ─────────────────────────────────────────────── */
@media (max-width: 1024px) {
    :root { --header-height: 64px; }

    .split, .about-intro, .contact-layout { grid-template-columns: 1fr; gap: var(--space-10); }
    .split--3-2, .split--2-3 { grid-template-columns: 1fr; }
    .contact-info-card { position: static; }

    .service-detail__overview { grid-template-columns: 1fr; }
    .service-detail__sidebar { position: static; }

    .sectors-hero-grid { grid-template-columns: repeat(2, 1fr); }
    .about-values { grid-template-columns: 1fr 1fr; }
    .grid--4 { grid-template-columns: repeat(2, 1fr); }
    .grid--3 { grid-template-columns: repeat(2, 1fr); }

    .hero-home__image { display: none; }
    .hero-home__content { text-align: center; }
    .hero-home__actions { justify-content: center; }
    .hero-home__trust { justify-content: center; }
    .hero-home__subtitle { margin-inline: auto; }

    .stats-grid { grid-template-columns: repeat(3, 1fr); }
    .stat-item::after { display: none; }
}

/* ── MD → SM ─────────────────────────────────────────────── */
@media (max-width: 768px) {
    :root {
        --header-height: 60px;
    }

    .section { padding-block: var(--space-16); }
    .section--lg { padding-block: var(--space-20); }

    /* Header */
    .nav { display: none; }
    .hamburger { display: flex; }

    /* Grid */
    .grid--3, .grid--4 { grid-template-columns: 1fr; }
    .sectors-hero-grid { grid-template-columns: 1fr; }
    .about-values { grid-template-columns: 1fr; }
    .form-row { grid-template-columns: 1fr; }
    .usp-grid { grid-template-columns: 1fr; }

    /* Footer */
    .footer__grid { grid-template-columns: 1fr; gap: var(--space-8); }
    .footer__grid > :first-child { grid-column: auto; }
    .footer__bottom { flex-direction: column; text-align: center; }
    .footer__legal { justify-content: center; }

    /* CTA Banner */
    .cta-banner { padding: var(--space-10) var(--space-6); }
    .cta-banner__actions { flex-direction: column; align-items: center; }

    /* Stats */
    .stats-grid { grid-template-columns: 1fr 1fr; }

    /* Cookie */
    .cookie-banner { left: var(--space-3); right: var(--space-3); bottom: var(--space-3); }

    /* About intro */
    .about-intro__image-wrap img { height: 300px; }

    /* Quote */
    .quote-form-card { padding: var(--space-6); }

    /* Preventivo form */
    .contact-form-wrap { padding: var(--space-6); }
}

/* ── SM → XS ─────────────────────────────────────────────── */
@media (max-width: 480px) {
    .container { padding-inline: var(--space-4); }
    .hero-home__title { font-size: 2rem; }
    .hero-home__trust { gap: var(--space-4); }
    .stats-grid { grid-template-columns: 1fr; }
    .btn--lg { padding: var(--space-3) var(--space-6); font-size: var(--text-base); }
    .cta-banner__actions .btn { width: 100%; }
    .hero-home__actions .btn { width: 100%; justify-content: center; }
    .thankyou-card { padding: var(--space-8) var(--space-5); }
    .footer__legal { flex-direction: column; gap: var(--space-3); }
}

/* ── PRINT ───────────────────────────────────────────────── */
@media print {
    .header, .footer, .cookie-banner, .cta-banner { display: none !important; }
    body { background: white; color: black; }
    a { color: black; }
}
