/* ============================================================
   HELIOS RE — RESPONSIVE
   ============================================================ */

@media (max-width: 1080px){
  .hero .container{ grid-template-columns:1fr; }
  .hero-visual{ order:-1; }
  .dash-grid{ grid-template-columns:1fr; }
  .footer-top{ grid-template-columns:1fr 1fr 1fr; }
  .team-grid{ grid-template-columns:repeat(3,1fr); }
}

@media (max-width: 860px){
  .g-3,.g-4{ grid-template-columns:repeat(2,1fr); }
  .solution-grid{ grid-template-rows:none; }
  .solution-grid .solution-card{ grid-row:auto; grid-template-rows:none; }
  .solution-grid .solution-body{ grid-row:auto; grid-template-rows:none; grid-template-columns:1fr; }
  .process-row{ grid-template-columns:1fr 1fr; row-gap:var(--space-4); }
  .process-connector{ display:none; }
  .flow-compare{ grid-template-columns:1fr; }
  .risk-chip-grid{ grid-template-columns:repeat(2,1fr); }
  .solution-body{ grid-template-columns:1fr; }
  .footer-top{ grid-template-columns:1fr 1fr; }
  .stats-strip .grid{ grid-template-columns:repeat(3,1fr); }
  .stats-strip .grid.cols-6{ grid-template-columns:repeat(3,1fr); }
  .cta-split{ grid-template-columns:1fr; }
  .field-row{ grid-template-columns:1fr; }
  .kpi-row{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 720px){
  .nav-links{
    position:fixed; top:82px; right:0; left:0; bottom:0;
    height:calc(100vh - 82px); height:calc(100dvh - 82px);
    background:var(--cream-050);
    flex-direction:column; align-items:flex-start; padding:var(--space-4);
    gap:var(--space-3); transform:translateX(100%); transition:transform var(--dur-m) var(--ease);
    overflow-y:auto; margin:0;
  }
  .nav-links.is-open{ transform:translateX(0); }
  .nav-links a{ font-size:1.1rem; width:100%; padding-block:.5em; }
  .site-header .nav-cta{ display:none; }
  .nav-toggle{ display:flex; }
  .brand .word{ font-size:1.05rem; }
  .nav-links-cta{ display:block; width:100%; margin-top:var(--space-3); padding-top:var(--space-3); border-top:1px solid var(--line); }
  .nav-links-cta a{ width:100%; }
  .nav-links-cta a::after{ display:none; }
  .g-2,.g-3,.g-4{ grid-template-columns:1fr; }
  .team-grid{ grid-template-columns:repeat(2,1fr); }
  .stats-strip .grid{ grid-template-columns:repeat(2,1fr); }
  .stats-strip .grid.cols-6{ grid-template-columns:repeat(2,1fr); }
  .hero-stats{ gap:var(--space-3); }
  .process-row{ grid-template-columns:1fr; }
  h1{ font-size:var(--step-4); }
  h2{ font-size:var(--step-3); }
  .risk-chip-grid{ grid-template-columns:1fr; }
  section{ padding-block:var(--space-5); }
  .kpi-row{ grid-template-columns:1fr; }
  .reco-metrics{ grid-template-columns:1fr 1fr; }
}

@media (max-width: 520px){
  .container,.container-narrow{ padding-inline:var(--space-3); }
  .hero-cta{ flex-direction:column; align-items:stretch; }
  .hero-cta .btn{ width:100%; }
  .footer-top{ grid-template-columns:1fr; gap:var(--space-4); }
  .footer-bottom{ flex-direction:column; gap:var(--space-2); align-items:flex-start; }
}

/* Print */
@media print{
  .site-header,.site-footer,.nav-toggle,.cta-band{ display:none; }
}
