/* Final responsive layer. Touch interaction must not retain mouse hover states. */
.nav-group{display:block;position:relative}
.nav-dropdown{display:block;min-width:0}
.nav-dropdown summary{display:flex;justify-content:space-between;gap:10px;width:auto;min-height:44px;padding:10px 0;color:var(--ivory);font-size:inherit;line-height:1.4}
.nav-dropdown summary .chevron{flex-shrink:0}
.nav-dropdown:not([open]) .dropdown-panel{display:none}
.nav-dropdown[open] .dropdown-panel{display:block}
.dropdown-panel{top:calc(100% + 8px)}
.home-about .wrap.section-head{margin-inline:auto}
.service-row{opacity:1;transform:none;transition:background .2s}
.service-row:hover{padding-left:0;padding-right:0}
.footer-links,.about-summary,.sequence-row,.network-stage{min-width:0}
.footer-links a,.about-summary p,.checklist li{overflow-wrap:anywhere}

@media(max-width:960px){
  .desktop-nav:not(.is-open){display:none!important}
  .desktop-nav.is-open{display:flex;position:absolute;left:0;right:0;width:100%;top:var(--header-height);flex-direction:column;align-items:stretch;background:var(--navy);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:calc(100dvh - var(--header-height));padding-bottom:max(24px,env(safe-area-inset-bottom));border-bottom:1px solid var(--line)}
  .desktop-nav.is-open>*{flex:0 0 auto;min-width:0}
  .desktop-nav .nav-group{display:block;width:100%;border-top:1px solid var(--line)}
  .desktop-nav .nav-dropdown{display:block}
  .desktop-nav .nav-dropdown summary{width:100%;min-height:52px;padding:14px 0;font-size:16px;grid-column:auto;grid-row:auto;color:var(--ivory)}
  .desktop-nav .dropdown-panel,.desktop-nav .nav-group:nth-last-of-type(-n+2) .dropdown-panel{position:static;width:100%;max-width:none;margin:0 0 14px;padding:4px 12px;background:#0c253b;border:1px solid #315268;border-radius:4px;box-shadow:none;overflow:visible}
  .desktop-nav .dropdown-panel a{display:block;white-space:normal;overflow-wrap:break-word;min-height:48px;height:auto;padding:12px 8px;line-height:1.5;font-size:15px;border-bottom:0}
  .desktop-nav a[aria-current],.desktop-nav a:hover{color:var(--ivory);border-bottom-color:transparent}
  .reveal-ready{opacity:1;transform:none;transition:none}
  .header-inner{gap:12px}
  .menu-toggle{flex-shrink:0}
  .home-about .wrap.section-head{margin-inline:auto}
  .contact-form{transform:none}
  .field input,.field textarea,.field select{font-size:16px}
}

@media(hover:none),(pointer:coarse){
  .network:hover{box-shadow:12px 12px 0 rgba(33,185,212,.08)}
  .service-row:hover{background:transparent}
  .service-row:hover:before{transform:scaleX(0)}
  .service-row:hover .plus{transform:none;color:#526c79}
  .method-step:hover,.difference:hover,.insight-card:hover{transform:none}
  .method-step:hover:after{width:0}
  .method-step:hover .num{color:#647a87}
  .difference:hover{background:transparent}
  .insight-card:hover .insight-graphic{border-color:var(--light-line);background:transparent}
  .input-tag:hover{background:transparent;color:inherit;border-color:#486072;transform:none}
  .button:hover{background:var(--orange);border-color:var(--orange)}
  .button.secondary:hover{background:transparent;border-color:currentColor}
  .button:hover:after{transform:translateX(-102%)}
  .desktop-nav a:hover:not([aria-current]){color:var(--ivory);border-bottom-color:transparent}
  .desktop-nav .dropdown-panel a:hover{background:transparent;color:var(--ivory)}
  .desktop-nav .nav-cta:hover{background:transparent;color:var(--ivory);border-color:#647584}
  .nav-dropdown summary:hover{color:var(--muted)}
  .text-link:hover{color:inherit}
  .live-network .activity:hover:not([aria-pressed=true]) rect{stroke:#507086;stroke-width:1;fill:#102d44}
  .live-network .activity.critical:hover:not([aria-pressed=true]) rect{stroke:#ff8b59}
  .live-network .network-tabs button:not([aria-pressed=true]):hover{background:transparent;color:#c2d7e3}
}

@media(max-width:640px){
  .home-about .section-head{margin-inline:auto}
  .brand-sub{font-size:8px;letter-spacing:.3px}
  .live-network .network-stage{flex-wrap:wrap;gap:6px}
  .live-network .sequence-heading{gap:8px;letter-spacing:.3px}
  .legend{gap:10px}
  .live-network .drawing{overscroll-behavior-x:contain;touch-action:pan-x pan-y}
  .live-network .activity-detail{min-height:0}
  .live-network .network-tabs button,.study-stages button{min-height:48px}
  .framework{padding:20px}
  .inputs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .input-tag{font-size:clamp(8px,2.5vw,11px);overflow-wrap:anywhere}
  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-brand{grid-column:auto}
  .contact-form:focus-within{transform:none;box-shadow:8px 8px 0 rgba(33,185,212,.15)}
  .contact-form .form-meter{margin:-20px -20px 22px}
}

@media(max-width:360px){
  .brand-sub{display:none}
  .brand-title{font-size:19px}
  .hero-foot{grid-template-columns:1fr}
  .live-network .network-top{font-size:10px;letter-spacing:.5px}
  .sequence-row{grid-template-columns:74px minmax(0,1fr);gap:8px}
}
