/* ==========================================================================
   PHASE 01 · WHA GLOBAL SHELL / NAVIGATION / DESIGN SYSTEM
   Canonical shared shell. Protected certification brochures are isolated and
   do not consume these files.
   ========================================================================== */
.site-header{
  position:sticky;top:0;z-index:500;
  background:rgba(251,253,255,.94);
  border-bottom:1px solid rgba(18,61,104,.15);
  box-shadow:0 10px 34px rgba(7,24,45,.055);
  backdrop-filter:blur(20px) saturate(155%);
  transition:background var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease),border-color var(--duration-base) var(--ease)
}
.site-header::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,107,255,.025),transparent 24%,transparent 76%,rgba(0,189,235,.025));pointer-events:none}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(18,107,255,.2) 30%,rgba(0,189,235,.5) 50%,rgba(18,107,255,.2) 70%,transparent 100%);opacity:.58;pointer-events:none}
.site-header.is-scrolled{background:rgba(255,255,255,.98);border-color:rgba(170,194,210,.92);box-shadow:0 16px 46px rgba(7,24,45,.12)}
.header-inner{position:relative;width:min(calc(100% - 36px),1520px);margin:auto;min-height:var(--header-height);display:grid;grid-template-columns:minmax(250px,auto) minmax(0,1fr) auto;align-items:center;gap:clamp(14px,1.7vw,30px);transition:min-height var(--duration-base) var(--ease)}
.site-header.is-scrolled .header-inner{min-height:74px}

.brand{display:inline-flex;align-items:center;gap:13px;min-width:0;width:max-content}
.brand-mark{position:relative;width:58px;height:58px;flex:0 0 58px;overflow:hidden;border-radius:14px;background:linear-gradient(145deg,#061528,#123d68);border:1px solid #285474;box-shadow:inset 0 0 0 1px rgba(120,223,245,.2),0 11px 26px rgba(7,24,45,.2);isolation:isolate;transition:width var(--duration-base) var(--ease),height var(--duration-base) var(--ease),flex-basis var(--duration-base) var(--ease)}
.brand-mark::before{content:"";position:absolute;inset:-35% 45% -35% -20%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.2),transparent);transform:translateX(-120%) rotate(5deg);transition:transform .7s var(--ease);z-index:2;pointer-events:none}.brand:hover .brand-mark::before{transform:translateX(250%) rotate(5deg)}
.brand-mark::after{content:"";position:absolute;inset:auto 12% 5px;height:2px;border-radius:3px;background:linear-gradient(90deg,transparent,var(--cyan),var(--electric-blue),transparent);box-shadow:0 0 12px rgba(0,189,235,.68);opacity:.92;z-index:3}
.brand-logo{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;object-fit:cover;transform:none;filter:saturate(1.08) contrast(1.04)}
.brand-word{display:block;font:700 18px/1 var(--font-display);letter-spacing:-.025em;color:var(--command-navy);white-space:nowrap}
.brand-word small{display:block;margin-top:6px;font:600 8px/1.2 var(--font-mono);letter-spacing:.12em;color:var(--steel-light)}
.site-header.is-scrolled .brand-mark{width:50px;height:50px;flex-basis:50px}

.main-nav{display:flex;justify-content:center;align-items:center;gap:1px;min-width:0}
.main-nav>a,.nav-drop>summary{position:relative;display:flex;align-items:center;min-height:44px;padding:0 9px;border:1px solid transparent;border-radius:10px;list-style:none;font:700 .78rem var(--font-display);letter-spacing:.015em;color:var(--graphite);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}
.main-nav>a::before,.nav-drop>summary::before{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:2px;border-radius:3px;background:linear-gradient(90deg,var(--electric-blue),var(--cyan));transform:scaleX(0);transform-origin:center;box-shadow:0 0 10px rgba(0,189,235,.28);transition:transform var(--duration-base) var(--ease)}
.main-nav>a:hover,.nav-drop>summary:hover,.main-nav>a[aria-current="page"],.nav-drop>summary.has-current,.nav-drop[open]>summary{background:#f2f7fb;border-color:#d7e4ed;color:var(--technical-blue);transform:translateY(-1px)}
.main-nav>a:hover::before,.nav-drop>summary:hover::before,.main-nav>a[aria-current="page"]::before,.nav-drop>summary.has-current::before,.nav-drop[open]>summary::before{transform:scaleX(1)}
.nav-drop{position:relative}.nav-drop>summary::-webkit-details-marker{display:none}
.nav-drop>summary::after{content:"+";margin-left:6px;font:600 .7rem var(--font-mono);color:var(--electric-blue);transition:transform var(--duration-fast) var(--ease)}
.nav-drop[open]>summary::after{content:"−"}
.nav-library{gap:6px}

.mega{position:fixed;z-index:560;top:calc(var(--header-height) - 1px);left:50%;transform:translateX(-50%);width:min(920px,calc(100vw - 44px));padding:18px;background:rgba(255,255,255,.988);border:1px solid #c8d9e5;border-radius:0 0 20px 20px;box-shadow:var(--shadow-float);overflow:hidden;isolation:isolate}
.site-header.is-scrolled .mega{top:73px}
.mega--wide{width:min(1100px,calc(100vw - 44px))}.mega--services{width:min(980px,calc(100vw - 44px))}
.mega::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--electric-blue),var(--cyan),#89e6f8,var(--electric-blue))}
.mega::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(18,61,104,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(18,61,104,.035) 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(to bottom,#000,transparent 76%);pointer-events:none;z-index:-1}
.nav-drop:not([open]) .mega{display:none}
.mega-heading{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:4px 6px 16px;margin-bottom:8px;border-bottom:1px solid #dfe9f0}
.mega-identity{width:58px;height:58px;display:grid;place-items:center;border:1px solid #d5e4ee;border-radius:15px;background:linear-gradient(145deg,#f7fbfe,#eaf3f9);box-shadow:0 9px 24px rgba(7,24,45,.08);overflow:hidden}.mega-identity img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(7,24,45,.12))}
.mega-heading-copy{min-width:0}.mega-heading strong{display:block;margin-top:3px;font:700 1.04rem var(--font-head);letter-spacing:-.02em;color:var(--command-navy)}
.mega-heading code{justify-self:end;padding:6px 8px;border:1px solid #d7e5ee;border-radius:6px;background:#f7fbfe;font-size:.57rem;letter-spacing:.09em;color:#6b879b}
.mega-kicker{font:600 .61rem var(--font-mono);letter-spacing:.12em;color:var(--electric-blue)}
.mega-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mega-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.mega-link{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 20px;gap:12px;align-items:center;min-width:0;padding:12px;border:1px solid transparent;border-radius:12px;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}
.mega-link:hover,.mega-link[aria-current="page"]{background:linear-gradient(135deg,#f7fbfe,#edf6fc);border-color:#cbdde9;transform:translateY(-2px);box-shadow:0 9px 22px rgba(7,24,45,.07)}
.mega-icon{position:relative;overflow:hidden;width:42px;height:42px;display:grid;place-items:center;border-radius:11px;color:#7be2fa;background:linear-gradient(145deg,#06162a,#0d3154);border:1px solid #2a5a7a;box-shadow:inset 0 0 0 1px rgba(120,223,245,.08),0 9px 22px rgba(7,24,45,.15);transition:transform var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}
.mega-icon::after{content:"";position:absolute;inset:2px;border-radius:9px;border:1px solid rgba(0,189,235,.11);pointer-events:none}.mega-icon .icon{width:21px;height:21px;color:#79dcf5;filter:drop-shadow(0 0 7px rgba(0,189,235,.28))}.mega-link:hover .mega-icon{transform:translateY(-2px);border-color:#45bde2;box-shadow:inset 0 0 0 1px rgba(120,223,245,.14),0 12px 28px rgba(7,24,45,.19)}
.mega-link b{display:block;margin-bottom:3px;font:700 .82rem var(--font-head);letter-spacing:-.01em;color:var(--command-navy)}.mega-link small{display:block;font-size:.675rem;line-height:1.42;color:var(--muted)}
.mega-arrow{display:grid;place-items:center;color:#93aabc;transition:color var(--duration-fast),transform var(--duration-fast)}.mega-arrow .icon{width:15px;height:15px}.mega-link:hover .mega-arrow{color:var(--electric-blue);transform:translateX(2px)}
.nav-badge{justify-self:end;font:600 .55rem var(--font-mono);font-style:normal;letter-spacing:.06em;color:#53748a}
.mega-utility{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:8px;padding:12px 7px 0;border-top:1px solid #e1eaf0}.mega-utility>span{margin-right:auto;font:600 .57rem var(--font-mono);letter-spacing:.11em;color:#8197a7}.mega-utility a{display:inline-flex;align-items:center;gap:7px;font:700 .7rem var(--font-head);color:var(--technical-blue)}.mega-utility a .icon{width:14px;height:14px;color:var(--electric-blue)}

.header-actions{display:flex;align-items:center;gap:7px}.header-actions .btn{width:auto;min-height:42px;padding:0 14px;font-size:.72rem;white-space:nowrap}.btn-header-secondary{background:#fff;border-color:#c7d9e5;color:var(--command-navy);box-shadow:0 4px 14px rgba(7,24,45,.045)}.btn-header-secondary:hover{color:var(--electric-blue);border-color:#91bce6;box-shadow:0 8px 20px rgba(7,24,45,.08)}.btn-header-primary{background:linear-gradient(135deg,#126bff,#0752cc);color:#fff;border-color:#126bff;box-shadow:0 10px 26px rgba(18,107,255,.24)}.btn-header-primary:hover{background:linear-gradient(135deg,#0c60e6,#0649b8);box-shadow:0 13px 30px rgba(18,107,255,.3)}.btn-header-primary .icon{width:15px;height:15px}

.mobile-nav{display:none;position:relative}.mobile-nav>summary{display:flex;align-items:center;gap:9px;min-height:44px;padding:0 13px;list-style:none;border:1px solid #c9d9e5;border-radius:10px;background:#fff;font:700 .72rem var(--font-head);letter-spacing:.04em;cursor:pointer;box-shadow:var(--shadow-xs)}
.mobile-nav>summary::-webkit-details-marker,.mobile-group>summary::-webkit-details-marker{display:none}.mobile-menu-icon{width:17px;height:14px;display:grid;align-content:center;gap:5px}.mobile-menu-icon i{display:block;height:2px;border-radius:2px;background:var(--command-navy);transition:transform var(--duration-fast),margin var(--duration-fast)}.mobile-nav[open] .mobile-menu-icon i:first-child{transform:rotate(45deg);margin-bottom:-7px}.mobile-nav[open] .mobile-menu-icon i:last-child{transform:rotate(-45deg)}
.mobile-panel{position:fixed;z-index:550;top:calc(var(--header-height) - 2px);left:10px;right:10px;max-height:calc(100dvh - var(--header-height) - 18px);overflow:auto;padding:14px;background:rgba(251,253,255,.998);border:1px solid #c7d9e5;border-radius:0 0 18px 18px;box-shadow:0 30px 70px rgba(7,24,45,.22);overscroll-behavior:contain}.site-header.is-scrolled .mobile-panel{top:72px;max-height:calc(100dvh - 88px)}
.mobile-panel-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px;padding:7px 7px 14px;border-bottom:1px solid var(--line);margin-bottom:8px}.mobile-panel-head .mega-kicker{grid-column:1/-1}.mobile-panel-head strong{font:700 1rem var(--font-head)}.mobile-panel-head code{font-size:.55rem;letter-spacing:.07em;color:#7792a5}
.mobile-panel nav{display:grid;grid-template-columns:1fr;gap:7px}.mobile-home,.mobile-library{display:flex!important;align-items:center;gap:11px;padding:12px 13px!important;border:1px solid #d9e5ed!important;border-radius:11px!important;background:#fff!important;font:700 .81rem var(--font-head)!important}.mobile-home .icon,.mobile-library .icon{width:20px;height:20px;color:var(--electric-blue)}
.mobile-group{border:1px solid #d8e5ed;border-radius:12px;background:#fff;overflow:hidden}.mobile-group>summary{display:grid;grid-template-columns:38px minmax(0,1fr) 18px;gap:10px;align-items:center;padding:8px 11px;list-style:none;cursor:pointer;background:linear-gradient(135deg,#fff,#f7fbfe)}.mobile-group>summary img{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(7,24,45,.12))}.mobile-group>summary span{min-width:0}.mobile-group>summary b{display:block;font:700 .8rem var(--font-head);color:var(--command-navy)}.mobile-group>summary small{display:block;margin-top:2px;font-size:.64rem;color:var(--muted)}.mobile-group>summary>.icon{width:15px;height:15px;color:#7895a9;transition:transform var(--duration-fast) var(--ease)}.mobile-group[open]>summary>.icon{transform:rotate(90deg);color:var(--electric-blue)}.mobile-group>summary.has-current{background:#f0f7ff;box-shadow:inset 3px 0 0 var(--electric-blue)}
.mobile-group:not([open])>div{display:none}.mobile-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px;border-top:1px solid #e1eaf0;background:#f8fbfd}.mobile-group>div a{padding:10px 11px;border:1px solid transparent;border-radius:8px;font-size:.73rem;font-weight:700;color:#425b6d}.mobile-group>div a:hover,.mobile-group>div a[aria-current="page"]{background:#fff;border-color:#cedfea;color:var(--electric-blue)}
.mobile-panel nav>a[aria-current="page"]{color:var(--electric-blue);border-color:#bfd8ee!important;background:#f1f7ff!important}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;margin-top:8px;border-top:1px solid var(--line)}.mobile-actions .btn{width:100%;margin:0}

/* Footer */
.site-footer{position:relative;background:radial-gradient(circle at 11% 28%,rgba(0,189,235,.075),transparent 25%),radial-gradient(circle at 84% 72%,rgba(18,107,255,.08),transparent 30%),linear-gradient(150deg,#04111f,#071a30 50%,#09213c);color:#dce9f4;border-top:1px solid #183a56;overflow:hidden}.site-footer::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(89,166,218,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(89,166,218,.035) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,#000,transparent 74%);pointer-events:none}.footer-signal{position:relative;z-index:1;border-bottom:1px solid #1c3d59;background:rgba(4,17,31,.52)}.footer-signal .editorial{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;font:600 .62rem var(--font-mono);letter-spacing:.12em;color:#8fcde9}.footer-signal i{height:1px;flex:1;max-width:150px;background:linear-gradient(90deg,#244f6d,#1a6ea6,#244f6d)}
.footer-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,1.45fr) repeat(5,minmax(105px,.66fr));gap:clamp(22px,2.5vw,40px);padding:68px 0 52px}.footer-brand p{max-width:390px;margin:20px 0;color:#a9c1d3;font-size:.84rem;line-height:1.7}.footer-brand-lockup .brand-word{color:#fff}.site-footer .brand-mark{border-color:#234f6f;box-shadow:0 12px 34px rgba(0,0,0,.2)}.footer-system{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:24px}.footer-system code{font-size:.61rem;letter-spacing:.07em;color:#7799af}.footer-col h4{position:relative;margin:5px 0 20px;padding-bottom:12px;font:700 .7rem var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:#fff}.footer-col h4::after{content:"";position:absolute;left:0;bottom:0;width:32px;height:2px;background:linear-gradient(90deg,var(--electric-blue),var(--cyan))}.footer-col a{display:block;width:max-content;max-width:100%;margin:9px 0;color:#a9c0d1;font-size:.77rem;line-height:1.42;transition:color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.footer-col a:hover{color:#fff;transform:translateX(3px)}.footer-bottom{position:relative;z-index:1;min-height:64px;border-top:1px solid #1b3a55;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#7895aa;font-size:.71rem}.footer-bottom-code{font:500 .61rem var(--font-mono);letter-spacing:.08em;color:#66869d}

@media(max-width:1320px){.header-inner{grid-template-columns:minmax(225px,auto) minmax(0,1fr) auto;gap:10px}.brand-word{font-size:15.5px}.brand-word small{font-size:7.2px}.main-nav>a,.nav-drop>summary{padding-inline:7px;font-size:.735rem}.header-actions .btn{padding-inline:11px}.mega-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1160px){.main-nav,.header-actions{display:none}.header-inner{grid-template-columns:1fr auto}.mobile-nav{display:block}.footer-grid{grid-template-columns:1.35fr repeat(2,minmax(0,1fr))}.footer-brand{grid-row:span 2}}
@media(max-width:720px){:root{--header-height:72px}.header-inner{width:min(calc(100% - 26px),1520px);min-height:72px}.site-header.is-scrolled .header-inner{min-height:68px}.brand-mark{width:46px;height:46px;flex-basis:46px;border-radius:12px}.brand-logo{width:100%!important;height:100%!important}.brand-word{font-size:14px}.brand-word small{font-size:6.8px;letter-spacing:.09em}.mobile-panel{top:70px;left:7px;right:7px;max-height:calc(100dvh - 80px);border-radius:0 0 14px 14px}.mobile-group>div{grid-template-columns:1fr}.mobile-actions{grid-template-columns:1fr}.footer-signal .editorial{min-height:50px;gap:9px}.footer-signal i{max-width:60px}.footer-grid{grid-template-columns:1fr;padding:52px 0 40px}.footer-brand{grid-row:auto}.footer-bottom{padding:20px 0;flex-direction:column;align-items:flex-start}.footer-bottom-code{line-height:1.55}}
@media(max-width:430px){.brand-word{font-size:13px}.brand-word small{display:none}.brand-mark{width:43px;height:43px;flex-basis:43px}.footer-signal span:nth-of-type(2),.footer-signal i:nth-of-type(2){display:none}}

/* Generic premium surfaces + Phase 01 card families */
.card,.product-primary,.product-mini,.feature-row,.competency,.task,.outcome,.spec,.lab-fact,.channel,.evidence-card,.resource-card,.modality-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-xs)}
.card:hover,.product-mini:hover,.resource-card:hover,.modality-card:hover{border-color:#bdd4e5;box-shadow:var(--shadow-soft)}
.ds-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-xs);transition:transform var(--duration-base) var(--ease),border-color var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease)}
.ds-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--card-accent,var(--electric-blue));opacity:.95}.ds-card:hover{transform:translateY(-3px);border-color:#bfd5e5;box-shadow:var(--shadow-soft)}
.ds-card--academic{--card-accent:var(--electric-blue);background:linear-gradient(145deg,#fff,#f7fbff)}
.ds-card--operational{--card-accent:var(--cyan);background:linear-gradient(145deg,#fff,#f3fbfd)}
.ds-card--evidence{--card-accent:var(--evidence);background:linear-gradient(145deg,#fff,#faf9ff)}
.ds-card--intelligence{--card-accent:#1f8fcc;background:linear-gradient(145deg,#fff,#f2f8fc)}
.ds-card--knowledge{--card-accent:#526a7d;background:linear-gradient(145deg,#fff,#f7f9fb)}
.ds-card--command{--card-accent:var(--cyan);background:radial-gradient(circle at 88% 0%,rgba(0,189,235,.12),transparent 32%),linear-gradient(145deg,#061629,#0b2744);border-color:#28516e;color:#eaf6ff;box-shadow:var(--shadow-command)}
.ds-card__icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid #cbdce7;border-radius:14px;background:var(--surface-metal);box-shadow:0 10px 24px rgba(7,24,45,.08)}.ds-card__icon .icon{width:27px;height:27px;color:var(--technical-blue)}
.ds-card__icon--premium{width:64px;height:64px;padding:3px}.ds-card__icon--premium img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 9px rgba(7,24,45,.14))}
.ds-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:600 .62rem var(--font-mono);letter-spacing:.075em;text-transform:uppercase;color:var(--steel)}
.ds-divider{height:1px;background:linear-gradient(90deg,var(--line),rgba(0,189,235,.35),var(--line));border:0;margin:18px 0}

/* Tables */
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-xs)}
th,td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{background:linear-gradient(180deg,#f1f6f9,#e8f1f6);color:var(--graphite);font:700 .72rem var(--font-mono);letter-spacing:.055em;text-transform:uppercase}
tr:last-child td{border-bottom:0}tbody tr:hover td{background:#f8fcff}.table-system{border-color:#c9d9e5;box-shadow:var(--shadow-soft)}.table-system th{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#0b2744,#07182d);color:#dff5ff;border-bottom-color:#28506c}.table-system td{font-size:.88rem}.table-system tbody tr:nth-child(even) td{background:#fbfdff}.table-system tbody tr:hover td{background:#eff7fc}

/* Lightbox */
.gallery-lightbox{position:fixed;inset:0;background:rgba(3,12,24,.94);z-index:1000;display:none;place-items:center;padding:24px}
.gallery-lightbox.open{display:grid}.gallery-lightbox img{max-width:min(1100px,95vw);max-height:88vh;object-fit:contain;background:#fff;border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.4)}
.gallery-lightbox button{position:absolute;top:20px;right:24px;background:#fff;color:#07182d;border:0;border-radius:50%;width:46px;height:46px;font-size:22px;box-shadow:var(--shadow)}
.evidence-img,.wha-evidence-frame img{cursor:zoom-in}

/* Common pills / filters */
.filters{display:flex;gap:8px;flex-wrap:wrap}.filter,.archive-filter button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-size:.76rem;font-weight:700;transition:.18s}
.filter:hover,.filter.active,.archive-filter button.active{background:var(--command-navy);color:#fff;border-color:var(--command-navy)}

body.lightbox-open{overflow:hidden}

/* A2 responsive containment */
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-xs);scrollbar-width:thin}
.table-scroll .comparison-table{margin:0;border:0;box-shadow:none}
.table-scroll:focus-visible{outline:2px solid var(--electric-blue);outline-offset:3px}

/* ==========================================================================
   A6 · PREMIUM ICONOGRAPHY SYSTEM
   Duotone SVG sprite + consistent shells for conceptual, navigation and data UI.
   ========================================================================== */
.a6-icon-node,.a6-icon-chip,.a6-route-node,.a6-method-icon,.a6-icon-display{display:grid;place-items:center;position:relative;isolation:isolate;color:var(--technical-blue)}
.a6-icon-node::before,.a6-icon-chip::before,.a6-route-node::before,.a6-method-icon::before,.a6-icon-display::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 32% 28%,rgba(0,189,235,.16),transparent 46%),linear-gradient(145deg,rgba(255,255,255,.96),rgba(232,244,251,.94));z-index:-1}
.a6-icon-node::after,.a6-icon-chip::after,.a6-route-node::after,.a6-method-icon::after,.a6-icon-display::after{content:"";position:absolute;inset:0;border:1px solid rgba(18,61,104,.14);border-radius:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.82)}
.a6-icon-node{width:52px;height:52px;border-radius:15px;box-shadow:0 10px 24px rgba(7,24,45,.08)}.a6-icon-node .icon{width:27px;height:27px}
.a6-icon-chip{width:44px;height:44px;border-radius:12px;box-shadow:0 8px 20px rgba(7,24,45,.07)}.a6-icon-chip .icon{width:23px;height:23px}
.a6-route-node{width:58px;height:58px;border-radius:50%;box-shadow:0 12px 28px rgba(18,107,255,.12)}.a6-route-node .icon{width:26px;height:26px}
.a6-method-icon{width:54px;height:54px;border-radius:16px;box-shadow:0 10px 24px rgba(7,24,45,.075)}.a6-method-icon .icon{width:25px;height:25px}
.a6-icon-display{width:82px;height:82px;border-radius:22px;box-shadow:0 18px 38px rgba(7,24,45,.1)}.a6-icon-display .icon{width:40px;height:40px}
.a6-icon-display-dark{color:#bfeaff}.a6-icon-display-dark::before{background:radial-gradient(circle at 32% 28%,rgba(0,189,235,.18),transparent 50%),linear-gradient(145deg,#0b2a49,#07192e)}.a6-icon-display-dark::after{border-color:#315875;box-shadow:inset 0 1px 0 rgba(134,216,255,.08)}
.section-dark .a6-icon-node,.section-dark .a6-icon-chip,.section-dark .a6-route-node,.section-dark .a6-method-icon{color:#c7ecff}.section-dark .a6-icon-node::before,.section-dark .a6-icon-chip::before,.section-dark .a6-route-node::before,.section-dark .a6-method-icon::before{background:radial-gradient(circle at 30% 25%,rgba(0,189,235,.15),transparent 47%),linear-gradient(145deg,#0a2845,#07192d)}.section-dark .a6-icon-node::after,.section-dark .a6-icon-chip::after,.section-dark .a6-route-node::after,.section-dark .a6-method-icon::after{border-color:#31536d;box-shadow:inset 0 1px 0 rgba(150,221,255,.06)}
@media(max-width:680px){.a6-icon-node{width:46px;height:46px;border-radius:13px}.a6-icon-node .icon{width:23px;height:23px}.a6-route-node{width:52px;height:52px}.a6-method-icon{width:48px;height:48px;border-radius:14px}.a6-icon-display{width:72px;height:72px;border-radius:19px}.a6-icon-display .icon{width:35px;height:35px}}


/* PHASE 05 · HEADER / FOOTER BRAND REBUILD */
.site-header{background:linear-gradient(180deg,rgba(255,255,255,.975),rgba(246,250,253,.95));border-bottom-color:rgba(18,61,104,.12);box-shadow:0 18px 44px rgba(7,24,45,.08)}
.site-header.is-scrolled{box-shadow:0 20px 48px rgba(7,24,45,.12)}
.header-inner{gap:clamp(16px,1.8vw,32px)}
.brand{gap:14px}
.brand-mark{background:linear-gradient(165deg,#051221 0%,#0b3155 55%,#1464d9 100%);border-color:#3573a1;box-shadow:inset 0 0 0 1px rgba(133,221,255,.22),0 14px 34px rgba(7,24,45,.22)}
.brand-word{font-size:18.5px;display:flex;flex-wrap:wrap;align-items:center;gap:0;color:var(--text-strong);text-shadow:0 1px 0 rgba(255,255,255,.55)}
.brand-word-main,.brand-word-accent{display:inline-block;line-height:1;background-clip:text;-webkit-background-clip:text;color:transparent}
.brand-word-main{background-image:linear-gradient(180deg,var(--wha-metal-hi) 0%,#d4dee8 50%,#7a93a7 100%)}
.site-header .brand-word-main,.mobile-panel .brand-word-main,.login-brand .brand-word-main{background-image:linear-gradient(180deg,#f8fbfe 0%,#d7e2eb 48%,#8aa4b9 100%)}
.site-header .brand-word-main{background-image:linear-gradient(180deg,#eef4f9 0%,#c5d4e0 45%,#6f8799 100%)}
.brand-word-accent{background-image:linear-gradient(180deg,#59c8ff 0%,#228cff 45%,#0a56d9 100%)}
.brand-word small{width:100%;margin-top:6px;color:#617c92;letter-spacing:.12em}
.main-nav{gap:3px;padding:6px;border-radius:16px;background:rgba(255,255,255,.74);border:1px solid rgba(18,61,104,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.88)}
.main-nav>a,.nav-drop>summary{min-height:46px;padding:0 12px;border-radius:12px;font-size:.79rem;letter-spacing:.03em}
.main-nav>a:hover,.nav-drop>summary:hover,.main-nav>a[aria-current="page"],.nav-drop>summary.has-current,.nav-drop[open]>summary{background:linear-gradient(180deg,#ffffff,#eef5fa);border-color:#cfe0ea;box-shadow:0 10px 22px rgba(7,24,45,.07)}
.mega{padding:20px 20px 18px;background:rgba(255,255,255,.995);border-color:#c4d8e6;border-radius:0 0 24px 24px;box-shadow:0 28px 72px rgba(7,24,45,.16)}
.mega-heading{padding-bottom:18px;margin-bottom:12px}
.mega-identity{background:linear-gradient(145deg,#f8fbfe,#eaf4fb);border-color:#c9dce9}
.mega-link{padding:14px;border-radius:14px}
.mega-link:hover,.mega-link[aria-current="page"]{background:linear-gradient(135deg,#f9fcfe,#eef6fb);border-color:#bfd6e4;box-shadow:0 14px 28px rgba(7,24,45,.08)}
.mega-link b{font-size:.84rem}
.mega-utility{margin-top:14px;padding-top:14px}
.header-actions{gap:10px}.header-actions .btn{min-height:44px;padding-inline:16px;border-radius:13px}
.btn-header-secondary{background:linear-gradient(180deg,#fff,#f3f8fb);border-color:#cbdde8;color:var(--text-strong)}
.btn-header-primary{background:linear-gradient(135deg,#0f5ee0 0%,#1584ff 55%,#22aef6 100%);border-color:#1174ef;color:#fff;box-shadow:0 16px 34px rgba(18,107,255,.22)}
.btn-header-primary:hover{background:linear-gradient(135deg,#0a53ca 0%,#0d79eb 55%,#17a0ee 100%)}
.mobile-panel{padding:16px;background:rgba(251,253,255,.998);border-color:#c7d9e5;border-radius:0 0 20px 20px;box-shadow:0 30px 76px rgba(7,24,45,.22)}
.mobile-panel-head,.mobile-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px;padding:7px 7px 14px;border-bottom:1px solid var(--line);margin-bottom:8px}.mobile-panel-head .mega-kicker,.mobile-head .mega-kicker{grid-column:1/-1}.mobile-panel-head strong,.mobile-head strong{font:700 1rem var(--font-head);color:var(--text-strong)}.mobile-panel-head code,.mobile-head code{font-size:.55rem;letter-spacing:.07em;color:#7792a5}
.mobile-nav-toggle{background:linear-gradient(145deg,#081a2f,#0b2d4d);border:1px solid #2c5b79;box-shadow:0 14px 28px rgba(7,24,45,.2)}
.mobile-nav-toggle span{background:linear-gradient(90deg,#89def7,#1796ff)}
.mobile-group>summary,.mobile-home,.mobile-library{background:linear-gradient(180deg,#fff,#f6f9fc);border:1px solid #d6e4ed;border-radius:14px;box-shadow:0 10px 24px rgba(7,24,45,.06)}
.mobile-group>div a{border-radius:12px}
.site-footer{background:radial-gradient(circle at 12% 24%,rgba(0,189,235,.11),transparent 26%),radial-gradient(circle at 88% 72%,rgba(18,107,255,.12),transparent 30%),linear-gradient(155deg,#04111f 0%,#081d35 42%,#0b3155 100%)}
.footer-grid{grid-template-columns:minmax(280px,1.55fr) repeat(4,minmax(120px,.7fr))}.footer-brand p{color:#b5cad9}.footer-brand .brand-word-main{background-image:linear-gradient(180deg,#f6fbfe 0%,#d7e3ec 45%,#89a2b4 100%)}.footer-brand .brand-word-accent{background-image:linear-gradient(180deg,#75ddff 0%,#2f98ff 45%,#1770ff 100%)}
.footer-col a{padding:2px 0}
.footer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.footer-actions .btn{min-height:42px;padding-inline:15px;font-size:.72rem}
.footer-bottom{min-height:68px}
@media(max-width:1320px){.main-nav{padding:5px}.main-nav>a,.nav-drop>summary{padding-inline:10px}}
@media(max-width:1160px){.footer-grid{grid-template-columns:1.45fr repeat(2,minmax(0,1fr))}.footer-actions{display:grid;grid-template-columns:1fr}}
@media(max-width:720px){.main-nav{padding:0;background:none;border:0;box-shadow:none}.footer-actions{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;padding:54px 0 42px}}
