

/* RESPONSIVE.CSS */

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important; }
}

@media (max-width:720px){ section{ padding:64px 0; } }

@media (max-width:900px){ .brand img{ max-height:38px; max-width:180px; } }

@media (max-width:900px){ .nav-links a::after{ display:none; } }

@media (min-width:980px){ .nav-phone{ display:inline; } }

@media (max-width:900px){
  .nav{ row-gap:0; }
  .nav-cta{ order:3; }
  .nav-cta .btn-primary{ display:none; }
  .nav-toggle{ display:block; order:4; }

  .nav-links{
    display:none;
    order:10;
    flex-basis:100%;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid var(--line);
    max-height:calc(100dvh - 90px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  .nav-links.open{ display:flex; }

  .nav-links > li{
    width:100%;
    border-bottom:1px solid var(--line);
  }
  .nav-links > li:last-child{ border-bottom:none; }
  .nav-links > li > a{
    display:flex; align-items:center; width:100%;
    min-height:44px; padding:15px 2px;
    line-height:1.3; font-size:15.5px; font-weight:500;
  }
}

@media (max-width:900px){ .hero-grid{ grid-template-columns:1fr; } }

@media (max-width:900px){ .services-grid{ grid-template-columns:repeat(2,1fr); } }

@media (max-width:560px){ .services-grid{ grid-template-columns:1fr; } }

@media (max-width:900px){ .process-intro{ grid-template-columns:1fr; } }

@media (max-width:900px){ .step-ribbon{ grid-template-columns:1fr 1fr; } }

@media (max-width:560px){ .step-ribbon{ grid-template-columns:1fr; } }

@media (max-width:900px){ .why-grid{ grid-template-columns:1fr; } }

@media (max-width:900px){ .area-grid{ grid-template-columns:1fr; } }

@media (min-width:901px){
  .region-diagram{ width:clamp(420px, calc(150px + 23.4vw), 640px); }
}

@media (max-width:600px){
  .region-diagram{ max-width:400px; }
  .region-diagram .rd-desktop{ display:none; }
  .region-diagram .rd-mobile{ display:block; }
}

@media (max-width:900px){ .contact-grid{ grid-template-columns:1fr; } }

@media (max-width:560px){ .form-row{ grid-template-columns:1fr; } }

@media (max-width:920px){ .flow-ribbon{ grid-template-columns:repeat(2,1fr); } }

@media (max-width:560px){ .flow-ribbon{ grid-template-columns:1fr; } }

@media (max-width:640px){ .results-list{ grid-template-columns:1fr; } }

@media (max-width:900px){ .pillar-grid{ grid-template-columns:1fr; } }

@media (max-width:820px){ .footer-cols{ grid-template-columns:1fr 1fr; } }

@media (max-width:520px){ .footer-cols{ grid-template-columns:1fr; } }

@media (max-width:900px){
  .legal-page{ padding-left:28px; padding-right:28px; box-sizing:border-box; }
}

@media (max-width:720px){ .subsection{ padding:52px 0; } }

@media (max-width:900px){ .info-grid{ grid-template-columns:1fr 1fr; } }

@media (max-width:560px){ .info-grid{ grid-template-columns:1fr; } }

@media (max-width:860px){ .flow-steps{ flex-direction:column; gap:26px; } }

@media (max-width:860px){ .related-grid{ grid-template-columns:1fr; } }

@media (max-width:900px){ .offer-grid{ grid-template-columns:1fr; } }

@media (max-width:700px){ .service-links-grid{ grid-template-columns:1fr; } }

@media (max-width:860px){ .split-block{ grid-template-columns:1fr; gap:28px; } }

@media (max-width:860px){ .split-block.img-first{ grid-template-areas:"img" "text"; } }

@media (max-width:700px){ .check-grid{ grid-template-columns:1fr; } }

@media (max-width:700px){ .quick-list{ grid-template-columns:1fr; } }

@media (max-width:700px){ .crosslinks{ grid-template-columns:1fr; } }

@media (max-width:900px){
  li.has-dropdown{ width:100%; border-bottom:1px solid var(--line); }
  .dropdown-trigger{ width:100%; justify-content:space-between; padding:15px 2px; min-height:44px; font-size:15.5px; }
  .dropdown-trigger::after{ display:none; }
  .dropdown-menu{
    position:static; box-shadow:none; opacity:1; visibility:visible; transform:none;
    display:flex; flex-direction:column; align-items:stretch;
    max-height:0; overflow:hidden; padding:0; margin:0 0 0 2px;
    transition:max-height .25s ease;
    background:transparent; border-radius:0;
    border-left:2px solid var(--line);
  }
  li.has-dropdown.open .dropdown-menu{ max-height:340px; padding:2px 0 12px 18px; margin-bottom:6px; overflow-y:auto; }
  .dropdown-menu a{ padding:11px 4px; min-height:44px; box-sizing:border-box; font-size:14px; border-radius:0; }
  .dropdown-menu a .sub{ font-size:11.5px; line-height:1.4; }
  .dropdown-menu a:hover, .dropdown-menu a:focus-visible, .dropdown-menu a.active{ background:transparent; }
}

@media (min-width:901px){
  .nav-links{ align-items:center; }
  .nav-links li{ display:flex; align-items:center; height:100%; }
  .nav-links > li > a,
  .dropdown-trigger{
    display:inline-flex; align-items:center; justify-content:center;
    height:40px; padding:0; line-height:1; box-sizing:border-box;
  }
  .dropdown-trigger{ gap:6px; }
  .dropdown-trigger .dropdown-arrow{ margin-top:0; }
}

@media (max-width:980px){ .overview-cards{ grid-template-columns:1fr 1fr; } }

@media (max-width:700px){ .overview-cards{ grid-template-columns:1fr; } }

@media (max-width:860px){ .challenge-grid{ grid-template-columns:1fr; gap:20px; } }

@media (max-width:480px){ .challenge-grid{ gap:16px; } }

@media (max-width:860px){ .support-grid, .support-grid.cols-3{ grid-template-columns:1fr; } }

@media (max-width:860px){ .steps-grid{ grid-template-columns:1fr 1fr; } }

@media (max-width:620px){ .steps-grid{ grid-template-columns:1fr; } }

@media (max-width:860px){ .crosslinks{ grid-template-columns:1fr !important; } }

@media (max-width:600px){ .trust-bar-items{ flex-direction:column; align-items:flex-start; gap:16px; max-width:320px; margin:0 auto; } }

@media (max-width:900px){ .footer-columns{ grid-template-columns:1fr 1fr; row-gap:36px; } }

@media (max-width:560px){ .footer-columns{ grid-template-columns:1fr; row-gap:32px; } }

@media (max-width:560px){ .footer-bottom-row{ flex-direction:column; align-items:flex-start; } }