/* ==========================================================================
   FEEDER — RESPONSIVE OVERRIDES
   Breakpoints: >=1920 ultrawide, 1280-1919 desktop, 1024-1279 laptop,
   768-1023 tablet, <768 mobile.
   ========================================================================== */

/* ---------- Laptop ---------- */
@media (max-width: 1279px) {
  :root {
    --sp-11: 5rem;
    --sp-12: 6.5rem;
  }

  .grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ---------- Tablet ---------- */
@media (max-width: 1023px) {
  .why-grid {
    grid-template-columns: 1fr !important;
  }

  .why-visual {
    aspect-ratio: 16 / 10;
    max-width: 480px;
    margin-inline: auto;
  }

  .footer-top {
    row-gap: var(--sp-8);
  }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  :root {
    --container-pad: 1.25rem;
    --sp-9: 3rem;
    --sp-10: 3.5rem;
    --sp-11: 4rem;
    --sp-12: 4.5rem;
  }

  .section-head {
    margin-bottom: var(--sp-7);
  }

  .hero h1 {
    letter-spacing: -0.02em;
  }

  .hero-trust {
    gap: var(--sp-5);
  }

  .contact-form-card {
    border-radius: var(--radius-md);
  }

  .cta-banner {
    padding: var(--sp-9) var(--sp-5);
  }
}

/* ---------- Small mobile ---------- */
@media (max-width: 380px) {
  .hero-trust-item .num {
    font-size: var(--fs-lg);
  }
}

/* ---------- Ultrawide ---------- */
@media (min-width: 1920px) {
  body {
    font-size: 1.05rem;
  }
}

/* ---------- Landscape phones (short viewport) ---------- */
@media (max-height: 480px) and (orientation: landscape) {
  .hero {
    min-height: auto;
    padding-block: calc(var(--header-h) + var(--sp-6)) var(--sp-8);
  }
  .scroll-cue {
    display: none;
  }
}

/* ---------- Print ---------- */
@media print {
  .site-header,
  .hero-canvas,
  .scroll-cue,
  .back-to-top,
  #lang-toggle {
    display: none !important;
  }
}
