*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;text-size-adjust:100%;background:var(--cold-white)}
body{margin:0;background:var(--cold-white);color:var(--command-navy);font-family:var(--font-body);font-size:var(--text-base);line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video,canvas{max-width:100%;display:block}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
/* A9 interaction contract: form and command controls keep a usable touch target. */
button:not([type="checkbox"]):not([type="radio"]),input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea{min-height:44px}
button,a,summary,input,select,textarea{touch-action:manipulation}
main,main>*,section,article,aside{min-width:0}
pre{max-width:100%;overflow:auto}
main code,main kbd,main samp{overflow-wrap:anywhere}
::selection{background:rgba(18,107,255,.18);color:var(--command-navy)}
:focus-visible{outline:2px solid var(--electric-blue);outline-offset:3px}
[hidden],.is-hidden{display:none!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

h1,h2,h3,h4,h5,h6{font-family:var(--font-head);font-weight:var(--weight-bold);line-height:1.06;letter-spacing:-.035em;color:inherit;margin:0 0 var(--space-5);text-wrap:balance}
h1{font-size:clamp(2.65rem,5.3vw,4.9rem);letter-spacing:-.052em}
h2{font-size:clamp(2rem,3.5vw,3.35rem);letter-spacing:-.045em}
h3{font-size:clamp(1.45rem,2vw,2rem)}
h4{font-size:clamp(1.15rem,1.4vw,1.38rem);letter-spacing:-.02em}
h5{font-size:1.05rem;letter-spacing:-.01em}
h6{font-size:.95rem;letter-spacing:0}
p{margin:0 0 var(--space-5)}
strong,b{font-weight:750}
small{font-size:var(--text-sm)}
code,kbd,samp{font-family:var(--font-mono)}
hr{border:0;border-top:1px solid var(--line);margin:var(--space-10) 0}

.lead{font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7;color:var(--muted);max-width:820px}
.small{font-size:var(--text-sm)}
.mono{font-family:var(--font-mono)}
.container,.editorial{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.editorial{max-width:var(--editorial)}
.measure{max-width:var(--measure)}
.section{padding:clamp(4.5rem,7vw,6.5rem) 0;position:relative}
.section-ice{background:var(--ice)}
.section-dark{background:var(--command-navy);color:var(--white)}
.section-dark .lead,.section-dark p{color:#bfd2e1}
.page-hero{padding:clamp(5.5rem,9vw,7rem) 0 clamp(3.5rem,6vw,4.5rem);background:linear-gradient(180deg,#fff 0%,var(--ice) 100%);border-bottom:1px solid var(--line)}
.breadcrumb,.eyebrow,.section-index,.algiz-kicker{font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:.115em;text-transform:uppercase;color:var(--electric-blue)}
.breadcrumb{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.section-index{margin-bottom:var(--space-5)}
.section-index strong{color:var(--command-navy)}
.section-dark .section-index strong{color:#fff}
.section-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(2rem,5vw,4.5rem);align-items:end;margin-bottom:clamp(2.25rem,4vw,3.5rem)}

.skip-link{position:fixed;left:12px;top:-80px;z-index:10000;background:#fff;color:var(--command-navy);border:2px solid var(--electric-blue);border-radius:var(--radius-sm);padding:10px 14px;font-weight:800;box-shadow:var(--shadow);transition:none}
.skip-link:focus{top:12px}
.icon{width:22px;height:22px;display:inline-block;flex:0 0 auto;color:currentColor}
.icon-lg{width:42px;height:42px}

.btn,.button-row a,.button-row button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 18px;border-radius:var(--radius-sm);border:1px solid transparent;font-family:var(--font-head);font-weight:var(--weight-bold);font-size:.8125rem;line-height:1;letter-spacing:.035em;text-align:center;transition:transform var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease),background var(--duration-base) var(--ease),border-color var(--duration-base) var(--ease),color var(--duration-base) var(--ease)}
.btn:hover,.button-row a:hover,.button-row button:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--electric-blue),#0758d7);color:#fff;box-shadow:0 9px 26px rgba(18,107,255,.25)}
.btn-primary:hover{background:linear-gradient(135deg,#0c60e5,#064fc3);box-shadow:0 14px 34px rgba(18,107,255,.28)}
.btn-secondary{background:#fff;border-color:#c8d8e4;color:var(--command-navy);box-shadow:var(--shadow-xs)}
.btn-secondary:hover{border-color:var(--electric-blue);color:var(--electric-blue)}
.btn-ghost{border-color:#b9cfde;background:transparent;color:var(--command-navy)}
.section-dark .btn-ghost{border-color:#365773;color:#fff}
.btn-row,.button-row{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}

/* Phase 01 · canonical typography + control variants */
.display-xl{font:700 clamp(3.1rem,6.2vw,6rem)/.94 var(--font-display);letter-spacing:-.06em;text-wrap:balance}
.title-kicker{display:inline-flex;align-items:center;gap:9px;font:600 .69rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--electric-blue)}
.title-kicker::before{content:"";width:18px;height:2px;background:linear-gradient(90deg,var(--electric-blue),var(--cyan));box-shadow:var(--glow-cyan)}
.subtitle{max-width:780px;font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.72;color:var(--muted)}
.btn-dark{background:linear-gradient(145deg,var(--wha-navy-900),var(--wha-navy-700));border-color:#1e4a70;color:#fff;box-shadow:0 12px 28px rgba(7,24,45,.22)}
.btn-dark:hover{border-color:#2b76aa;box-shadow:0 16px 34px rgba(7,24,45,.28)}
.btn-cyan{background:linear-gradient(135deg,#00aede,var(--cyan));border-color:#00a5d2;color:#03111f;box-shadow:0 10px 28px rgba(0,189,235,.22)}
.btn-cyan:hover{background:linear-gradient(135deg,#17c4ee,#67e0fa);box-shadow:0 14px 34px rgba(0,189,235,.28)}
.btn-sm{min-height:38px;padding:9px 13px;font-size:.74rem}
.btn-lg{min-height:52px;padding:14px 22px;font-size:.86rem}
.btn-icon{width:46px;padding:0;aspect-ratio:1}
.btn[aria-disabled="true"],.btn:disabled{pointer-events:none;opacity:.48;filter:saturate(.55);box-shadow:none;transform:none}
.control-label{display:block;margin-bottom:7px;font:700 .68rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.badge{display:inline-flex;align-items:center;gap:7px;min-height:27px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--graphite);font:700 .65rem var(--font-mono);letter-spacing:.055em;text-transform:uppercase}
.badge--blue{border-color:#b9d3f4;background:#f2f7ff;color:#0758d7}.badge--cyan{border-color:#a9e5f3;background:#effcff;color:#006f8b}.badge--dark{border-color:#294b67;background:#091d32;color:#8ee6ff}.badge--success{border-color:#b9dfd3;background:var(--success-soft);color:var(--success)}

.status{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(0,189,235,.34);border-radius:999px;color:#72ddff;font:700 .6875rem var(--font-mono);letter-spacing:.075em;text-transform:uppercase;background:rgba(0,189,235,.04)}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(0,189,235,.1)}
.status.blue{color:#075bd8;border-color:#a9c9f7;background:#f5f9ff}
.data-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.data-strip span{font:500 .69rem var(--font-mono);padding:8px 10px;border:1px solid #c8d8e4;border-radius:var(--radius-xs);background:rgba(255,255,255,.78);color:var(--steel);letter-spacing:.02em}
.data-strip strong{color:var(--command-navy)}
.section-dark .data-strip span{background:rgba(255,255,255,.04);border-color:#284c69;color:#a7bfd1}
.section-dark .data-strip strong{color:#fff}

.tech-frame{position:relative;border:1px solid #284866;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.tech-frame::before,.tech-frame::after{content:"";position:absolute;width:44px;height:3px;background:linear-gradient(90deg,var(--cyan),var(--electric-blue));z-index:2}
.tech-frame::before{top:0;left:24px}.tech-frame::after{bottom:0;right:24px}
.tech-surface{background:linear-gradient(145deg,#061628,#0d2b4b);color:#eaf5ff}
.note,.authority-source-note,.tool-note{background:#f5f9fc;border:1px solid #dbe7ef;border-left:3px solid var(--electric-blue);padding:14px 16px;border-radius:var(--radius-sm);color:var(--muted)}

.field,.form-field{display:grid;gap:7px}
.field label,.form-field label{font-size:.8125rem;font-weight:800;color:var(--graphite)}
.field input,.field select,.field textarea,.form-field input,.form-field select,.form-field textarea,.search-box,.f6-input,.f6-select{width:100%;min-height:46px;border:1px solid #c7d7e3;border-radius:var(--radius-sm);background:#fff;padding:11px 13px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
.field textarea,.form-field textarea{min-height:140px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.search-box:focus,.f6-input:focus,.f6-select:focus{border-color:var(--electric-blue);box-shadow:var(--focus-ring)}
.check{display:flex!important;gap:10px!important;align-items:flex-start!important}
.check input{width:auto;min-height:0;margin-top:.3rem}
.full{grid-column:1/-1}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-status{min-height:1.4rem;margin-top:14px;font-size:.875rem;color:var(--muted)}
.form-status.is-success{color:var(--success)}
.form-status.is-error{color:var(--critical)}

.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);overflow:hidden}
.metric{padding:24px 26px;border-right:1px solid var(--line)}
.metric:last-child{border-right:0}
.metric b{display:block;font:700 clamp(1.75rem,2.4vw,2.2rem) var(--font-head);letter-spacing:-.04em;color:var(--technical-blue)}
.metric span{font-size:.8125rem;color:var(--muted)}

/* Design-system utilities used to remove inline styles */
.u-grid-1{display:grid;grid-template-columns:1fr;gap:10px}
.u-grid-2,.u-grid-two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.u-mt-0{margin-top:0!important}.u-mt-18{margin-top:18px!important}.u-mt-24{margin-top:24px!important}.u-mt-26{margin-top:26px!important}.u-mt-30{margin-top:30px!important}.u-mt-34{margin-top:34px!important}
.u-my-16{margin:16px 0!important}.u-mb-0{margin-bottom:0!important}.u-p-28{padding:28px!important}.u-pt-28{padding:28px 0 0!important}
.measure-760{max-width:760px}.measure-880{max-width:880px}.u-summary-strip{margin-top:16px;max-width:760px}
.heading-compact{font-size:clamp(1.75rem,2.7vw,2rem);margin-bottom:24px}
.text-steel{color:var(--steel)!important}.text-steel-light{color:var(--steel-light)!important}.text-steel-mid{color:#64839a!important}.text-muted{color:var(--muted)!important}.text-signal{color:#49a5ff!important}.text-warning{color:#e6b35f!important}.text-cool{color:#a9c6da!important}
.readiness-45{width:45%}
.f8-honeypot-input{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* A8 motion contract: content is visible without JS; motion.js progressively enhances. */
html.motion-ready [data-reveal]{opacity:0;transform:translate3d(0,18px,0);transition:opacity .58s var(--ease),transform .58s var(--ease),clip-path .72s var(--ease);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform,clip-path}
html.motion-ready [data-reveal][data-motion="fade-left"]{transform:translate3d(22px,0,0)}
html.motion-ready [data-reveal][data-motion="fade-right"]{transform:translate3d(-22px,0,0)}
html.motion-ready [data-reveal][data-motion="scale"]{transform:scale(.975) translate3d(0,8px,0)}
html.motion-ready [data-reveal][data-motion="clip"]{transform:none;clip-path:inset(0 0 100% 0)}
html.motion-ready [data-reveal].is-revealed{opacity:1;transform:none;clip-path:inset(0);will-change:auto}
@media(max-width:700px){html.motion-ready [data-reveal][data-motion="fade-left"],html.motion-ready [data-reveal][data-motion="fade-right"]{transform:translate3d(0,14px,0)}html.motion-ready [data-reveal].is-revealed{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html.motion-ready [data-reveal]{opacity:1;transform:none;clip-path:none}}

@media(max-width:900px){.section-head{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metric:nth-child(2){border-right:0}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.u-grid-2,.u-grid-two-cols{grid-template-columns:1fr}}
@media(max-width:560px){.container,.editorial{width:min(calc(100% - 28px),var(--container))}.section{padding:3.75rem 0}.page-hero{padding:5rem 0 3rem}.metric-strip{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.metric:last-child{border-bottom:0}.btn{width:100%}.btn-row,.button-row{display:grid;grid-template-columns:1fr}.lead{font-size:1.02rem}}


/* PHASE 05 · GLOBAL BRAND SURFACE SYSTEM */
html{background:linear-gradient(180deg,#fcfdff 0%,#f4f8fb 100%)}
body{background:radial-gradient(circle at 100% 0%,rgba(18,107,255,.08),transparent 22%),radial-gradient(circle at 0% 14%,rgba(0,189,235,.06),transparent 20%),linear-gradient(180deg,#fcfdff 0%,#f4f8fb 100%);color:var(--text-strong)}
main{position:relative;z-index:1}
.section,.page-hero,.public-hero,.archive-hero,.evidence-hero,.cert-f3-hero,.tool-hero,.simulator-hero,.lab-hero,.contact-hero{overflow:clip}
.lead,.subtitle,.note,.authority-source-note,.tool-note,p{color:inherit}
.lead,.subtitle,.note,.authority-source-note,.tool-note{color:var(--text-soft)}
.section-ice{background:linear-gradient(180deg,#f9fcff 0%,#eef5fa 100%)}
.btn,.button-row a,.button-row button{border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.btn-primary,.btn-secondary,.btn-ghost,.btn-dark,.btn-cyan{position:relative;overflow:hidden}
.btn-primary::after,.btn-dark::after,.btn-cyan::after{content:"";position:absolute;inset:-1px auto -1px -24%;width:44%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.3),transparent);transform:translateX(-180%);transition:transform .6s var(--ease);pointer-events:none}
.btn-primary:hover::after,.btn-dark:hover::after,.btn-cyan:hover::after{transform:translateX(340%)}
.btn-secondary{background:var(--surface-premium-light)}
.metric-strip,table,.table-scroll,.cert-summary,.cert-visual,.lab-facts,.contact-form-wrap,.login-box{box-shadow:var(--brand-ring)}
.field input,.field select,.field textarea,.form-field input,.form-field select,.form-field textarea,.search-box,.f6-input,.f6-select{background:linear-gradient(180deg,#fff,#f9fcfe)}
.field input:hover,.field select:hover,.field textarea:hover,.form-field input:hover,.form-field select:hover,.form-field textarea:hover,.search-box:hover,.f6-input:hover,.f6-select:hover{border-color:#a9c7dd}
.badge,.status,.data-strip span{box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
@media(max-width:560px){body{background:linear-gradient(180deg,#fcfdff 0%,#f4f8fb 100%)}}
