/* NWA mobile composition — quiet authority, touch-first hierarchy. */
@media (max-width: 768px) {
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body { overflow-x: clip; }
  :where(input, select, textarea) { font-size: 16px; }
  :where(button, a, input, select) { -webkit-tap-highlight-color: transparent; }

  /* ── Public site ───────────────────────────────────────────── */
  .nwa-home .status-bar { display: none; }
  .nwa-home .header-system {
    padding: max(.7rem, env(safe-area-inset-top)) 0 .7rem;
    background: rgba(8, 8, 9, .88);
    backdrop-filter: blur(26px) saturate(140%);
    -webkit-backdrop-filter: blur(26px) saturate(140%);
  }
  .nwa-home .header-system.scrolled { padding: max(.55rem, env(safe-area-inset-top)) 0 .55rem; }
  .nwa-home .grid-container { padding-inline: max(1.25rem, env(safe-area-inset-left)) max(1.25rem, env(safe-area-inset-right)); }
  .nwa-home .logo img { height: 28px; }
  .nwa-home .menu-toggle { width: 44px; height: 44px; display: grid; place-items: center; margin-right: -.5rem; }
  .nwa-home .nav-menu {
    padding: calc(5.75rem + env(safe-area-inset-top)) max(1.5rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1.5rem, env(safe-area-inset-left));
    justify-content: flex-start; align-items: flex-start; gap: .35rem;
    background: rgba(8, 8, 9, .975);
    backdrop-filter: blur(28px) saturate(125%);
    -webkit-backdrop-filter: blur(28px) saturate(125%);
  }
  .nwa-home .nav-menu li { width: 100%; border-bottom: .5px solid rgba(197,160,89,.075); }
  .nwa-home .nav-link { display: flex; align-items: center; min-height: 48px; padding: .65rem 0; font-size: .66rem; letter-spacing: .24em; }
  .nwa-home #hero { min-height: auto; padding: calc(8rem + env(safe-area-inset-top)) 0 3rem; align-items: flex-start; }
  .nwa-home .hero-badge { margin-bottom: 2rem; font-size: .6rem; letter-spacing: .34em; }
  .nwa-home .hero-thesis { font-size: clamp(2.75rem, 12.75vw, 4.4rem); line-height: .96; letter-spacing: -.045em; margin: 0 0 1.4rem; }
  .nwa-home .hero-statement { max-width: 33ch; margin: 0; padding-left: 1.25rem; font-size: 1rem; line-height: 1.75; }
  .nwa-home .hero-right { margin-top: 3rem; padding-top: 1.4rem; }
  .nwa-home .hero-trust { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin-top: 0; border: .5px solid rgba(197,160,89,.10); }
  .nwa-home .hero-trust .trust-item { min-width: 0; padding: 1rem; border: 0; border-right: .5px solid rgba(197,160,89,.08); border-bottom: .5px solid rgba(197,160,89,.08); }
  .nwa-home .hero-trust .trust-item:nth-child(2) { border-right: 0; }
  .nwa-home .hero-trust .trust-item:last-child { grid-column: 1 / -1; border-bottom: 0; }
  .nwa-home .trust-item .t-label { font-size: .53rem; letter-spacing: .2em; line-height: 1.35; }
  .nwa-home .trust-item .t-value { margin-top: .45rem; font-size: .69rem; letter-spacing: .09em; }
  .nwa-home .proof-section .proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border: .5px solid rgba(197,160,89,.075); }
  .nwa-home .proof-section .proof-item { min-width: 0; padding: 1.35rem 1rem; }
  .nwa-home .proof-number { font-size: clamp(2.05rem, 10vw, 2.85rem); }
  .nwa-home .proof-label { font-size: .54rem; letter-spacing: .18em; line-height: 1.45; }
  .nwa-home .section-label { font-size: .58rem; letter-spacing: .22em; }
  .nwa-home .golden-cell, .nwa-home .framework-cell { padding: 2rem 1.25rem; }
  .nwa-home .investment-item { min-height: 0; padding: 1.9rem 1.25rem; }
  .nwa-home .enforcement-ledger { padding: 1.25rem; }
  .nwa-home .contact-layout { gap: 2.75rem; }
  .nwa-home .contact-invitation, .nwa-home .contact-offer { max-width: 35ch; font-size: 1rem; line-height: 1.75; }
  .nwa-home .contact-line { margin-bottom: 1.5rem; }
  .nwa-home .contact-value { display: flex; align-items: center; min-height: 44px; margin-top: .25rem; font-size: 1rem; overflow-wrap: anywhere; }
  .nwa-home .footer-actions { gap: 1.1rem; }
  .nwa-home .page-border { inset: 4px; opacity: .72; }

  /* ── NWA Toolkit ───────────────────────────────────────────── */
  .nwa-toolkit .container { padding-inline: max(1.1rem, env(safe-area-inset-left)) max(1.1rem, env(safe-area-inset-right)); }
  .nwa-toolkit .toolkit-header { min-height: 56px; padding: max(.55rem, env(safe-area-inset-top)) 0 .55rem; }
  .nwa-toolkit .header-inner { flex-direction: row !important; min-height: 40px; gap: .5rem; }
  .nwa-toolkit .header-left { min-width: 0; gap: .65rem; }
  .nwa-toolkit .header-logo { height: 28px; }
  .nwa-toolkit .header-divider, .nwa-toolkit .header-title { display: none; }
  .nwa-toolkit .header-right { margin-left: auto; gap: .1rem; }
  .nwa-toolkit .live-indicator { padding: .35rem .4rem; font-size: .5rem; letter-spacing: .08em; }
  .nwa-toolkit .header-back { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; }
  .nwa-toolkit .header-back span { display: none; }
  .nwa-toolkit .toolkit-hero { padding: calc(6.8rem + env(safe-area-inset-top)) 0 2.25rem; }
  .nwa-toolkit .hero-top-row { gap: 1.75rem; margin-bottom: 0; }
  .nwa-toolkit .toolkit-hero h1 { font-size: clamp(2.35rem, 11vw, 3.15rem); line-height: .98; }
  .nwa-toolkit .hero-subtitle { font-size: .96rem; line-height: 1.7; max-width: 34ch; }
  .nwa-toolkit .hero-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; gap: 0; border-top: .5px solid rgba(197,160,89,.10); border-bottom: .5px solid rgba(197,160,89,.10); }
  .nwa-toolkit .hero-meta-item { min-width: 0; padding: .9rem .65rem .85rem 0; }
  .nwa-toolkit .hero-meta-item + .hero-meta-item { padding-left: .65rem; border-left: .5px solid rgba(197,160,89,.08); }
  .nwa-toolkit .hero-meta-value { font-size: 1.15rem; }
  .nwa-toolkit .hero-meta-label { font-size: .48rem; letter-spacing: .11em; line-height: 1.35; }
  .nwa-toolkit .bubble-index-card { padding: 1.25rem; }
  .nwa-toolkit .bic-score { font-size: 3.7rem; }
  .nwa-toolkit .bic-components { padding-top: .9rem; }
  .nwa-toolkit .bic-comp-row { padding: .45rem 0; font-size: .76rem; }
  .nwa-toolkit .toolkit-nav { top: 56px; padding: .25rem 0; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .nwa-toolkit .toolkit-nav::-webkit-scrollbar { display: none; }
  .nwa-toolkit .toolkit-nav .container { padding: 0 .65rem; }
  .nwa-toolkit .nav-tab { min-height: 44px; padding: .65rem .8rem; font-size: .54rem; letter-spacing: .12em; scroll-snap-align: start; }
  .nwa-toolkit .toolkit-section { padding: 2.5rem 0; }
  .nwa-toolkit .section-header { margin-bottom: 1.65rem; }
  .nwa-toolkit .section-title { font-size: clamp(2rem, 9vw, 2.6rem); }
  .nwa-toolkit .section-desc { font-size: .95rem; line-height: 1.72; }
  .nwa-toolkit .ew-card, .nwa-toolkit .method-card, .nwa-toolkit .stress-scenario { padding: 1.25rem; }
  .nwa-toolkit .dcf-card { padding: 1.25rem; }
  .nwa-toolkit .macro-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nwa-toolkit .macro-cell { min-width: 0; padding: 1.1rem; }
  .nwa-toolkit .history-chart { height: 230px; }
  .nwa-toolkit .chart-header { align-items: flex-start; gap: .8rem; }
  .nwa-toolkit .chart-title { max-width: 18ch; font-size: 1rem; line-height: 1.3; }
  .nwa-toolkit .company-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
  .nwa-toolkit .search-box { grid-column: 1 / -1; width: 100%; }
  .nwa-toolkit .filter-btn { width: auto; min-height: 42px; justify-content: center; padding-inline: .5rem; }
  .nwa-toolkit .export-bar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
  .nwa-toolkit .export-btn { justify-content: center; min-height: 44px; padding-inline: .7rem; }
  .nwa-toolkit .detail-panel { max-width: 100vw; width: 100%; padding: max(1.5rem, env(safe-area-inset-top)) 1.25rem max(1.5rem, env(safe-area-inset-bottom)); }
  .nwa-toolkit .modal-content { width: calc(100% - 2rem); padding: 1.5rem; }
  .nwa-toolkit .toolkit-footer-inner { align-items: flex-start; }

  /* ── Contagion Engine ───────────────────────────────────────── */
  .nwa-contagion .container { padding-inline: max(1.1rem, env(safe-area-inset-left)) max(1.1rem, env(safe-area-inset-right)); }
  .nwa-contagion header { height: 54px; }
  .nwa-contagion header nav { padding-inline: max(1.1rem, env(safe-area-inset-left)) max(1.1rem, env(safe-area-inset-right)); }
  .nwa-contagion .brand img { height: 25px; }
  .nwa-contagion .brand-tag, .nwa-contagion .nav-status { display: none; }
  .nwa-contagion .nav-r { gap: 0; }
  .nwa-contagion .nav-back { display: flex; align-items: center; min-height: 42px; padding: 0 .25rem; font-size: .56rem; letter-spacing: .11em; }
  .nwa-contagion .hero-c { padding: calc(5.4rem + env(safe-area-inset-top)) 0 1.75rem; }
  .nwa-contagion .hero-c h1 { font-size: clamp(2.2rem, 10.5vw, 3rem); line-height: 1; }
  .nwa-contagion .hero-sub { font-size: .96rem; line-height: 1.7; }
  .nwa-contagion .ctrl-strip { position: relative; top: auto; padding: 1rem 0 1.15rem; }
  .nwa-contagion .ctrl-inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem .75rem; }
  .nwa-contagion .ctrl-inner .ctrl-sep { display: none; }
  .nwa-contagion .ctrl-group { min-width: 0; }
  .nwa-contagion .ctrl-row { width: 100%; }
  .nwa-contagion .ctrl-slider { width: 100% !important; min-width: 0; }
  .nwa-contagion .ctrl-val { min-width: 36px; font-size: .72rem; }
  .nwa-contagion .ctrl-select { width: 100%; min-height: 36px; font-size: .64rem; }
  .nwa-contagion .ctrl-btn { min-height: 42px; padding: .6rem .55rem; font-size: .48rem; letter-spacing: .1em; white-space: normal; }
  .nwa-contagion .summary-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 1rem 0; }
  .nwa-contagion .summary-card { min-width: 0; padding: 1.05rem .65rem; }
  .nwa-contagion .sum-val { font-size: 1.55rem; }
  .nwa-contagion .sum-label { font-size: .44rem; letter-spacing: .17em; line-height: 1.35; }
  .nwa-contagion .graph-canvas-wrap { height: 250px; }
  .nwa-contagion .scenario-desc { align-items: flex-start; flex-wrap: wrap; gap: .75rem; padding: 1rem; }
  .nwa-contagion .scenario-desc > div[style*="height:28px"] { display: none; }
  .nwa-contagion .scenario-desc p { flex-basis: 100%; order: 3; font-size: .75rem !important; }
  .nwa-contagion .tier-card, .nwa-contagion .inst-panel, .nwa-contagion .portfolio-section { padding: 1.1rem; }
  .nwa-contagion #hedgeGrid { grid-template-columns: 1fr !important; }
  .nwa-contagion .port-header { gap: .75rem; align-items: center; }
  .nwa-contagion .port-header .ctrl-btn { flex-shrink: 0; }
  .nwa-contagion .port-inputs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nwa-contagion .port-field input { min-height: 38px; }
  .nwa-contagion .port-result { grid-template-columns: 1fr; gap: 1rem; }
  .nwa-contagion .corr-canvas-wrap { height: 230px; }
  .nwa-contagion .news-item { padding: .9rem 1rem; }
  .nwa-contagion .news-item-title { font-size: .9rem; line-height: 1.45; }
  .nwa-contagion .news-item-summary { font-size: .76rem; line-height: 1.55; }
  .nwa-contagion .export-bar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
  .nwa-contagion .export-bar .ctrl-btn { font-size: .43rem; }
  .nwa-contagion .footer-inner { align-items: flex-start; flex-direction: column; gap: .8rem; padding: 1rem 0; }
  .nwa-contagion .footer-inner a { display: inline-flex; min-height: 36px; align-items: center; margin-left: 0; margin-right: .85rem; }
}

@media (max-width: 390px) {
  .nwa-home .hero-thesis { font-size: clamp(2.55rem, 12.5vw, 3rem); }
  .nwa-home .hero-statement { font-size: .95rem; }
  .nwa-toolkit .live-indicator #dataStatusText { display: none; }
  .nwa-toolkit .live-indicator { width: 32px; justify-content: center; }
  .nwa-toolkit .hero-meta-label { font-size: .44rem; letter-spacing: .08em; }
  .nwa-toolkit .macro-cell { padding: 1rem .8rem; }
  .nwa-contagion .ctrl-btn { letter-spacing: .06em; }
}
