:root { --ink:#071a20; --ink-soft:#0d2930; --paper:#f3f2ea; --signal:#c9ff35; --mist:#a8bac0; --line:rgba(201,255,53,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; background:var(--ink); color:var(--paper); font-family:Inter,"Segoe UI",Helvetica,Arial,sans-serif; text-rendering:optimizeLegibility; }
a { color:inherit; text-decoration:none; }
a:focus-visible { outline:2px solid var(--signal); outline-offset:5px; }
.email-link { display:inline-block; margin-top:28px; padding-bottom:4px; color:var(--mist); border-bottom:1px solid rgba(168,186,192,.45); }
.email-link:hover { color:var(--signal); border-bottom-color:var(--signal); }
.site-header { position:absolute; z-index:10; top:0; left:0; width:100%; min-height:92px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(243,242,234,.16); }
.wordmark { font-size:1.25rem; font-weight:760; letter-spacing:-.035em; display:flex; align-items:center; }
.wordmark > span:last-child { color:var(--signal); }
.signal-mark { width:10px; height:10px; background:var(--signal); margin-right:12px; box-shadow:0 0 24px rgba(201,255,53,.65); }
nav { display:flex; align-items:center; gap:clamp(20px,3vw,48px); font-size:.82rem; font-weight:650; }
.nav-cta { border:1px solid rgba(243,242,234,.42); padding:12px 18px; transition:.25s ease; }
.nav-cta:hover { background:var(--signal); border-color:var(--signal); color:var(--ink); }
.hero { min-height:100svh; padding:148px 5vw 48px; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; }
.signal-field { position:absolute; inset:0 0 0 52%; opacity:.9; background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px); background-size:54px 54px; mask-image:linear-gradient(90deg,transparent 0,black 24%); }
.signal-field::before { content:""; position:absolute; inset:0; background:linear-gradient(120deg,transparent 42%,rgba(201,255,53,.13) 50%,transparent 58%); animation:scan 7s linear infinite; }
.pulse { position:absolute; width:8px; height:8px; background:var(--signal); box-shadow:0 0 20px var(--signal); }
.pulse::after { content:""; position:absolute; inset:-12px; border:1px solid rgba(201,255,53,.5); animation:radiate 3s ease-out infinite; }
.pulse-one { top:28%; left:36%; }.pulse-two { top:61%; left:64%; animation-delay:.8s; }.pulse-three { top:78%; left:22%; animation-delay:1.6s; }
.hero-kicker { position:relative; z-index:1; display:flex; align-items:center; gap:12px; color:var(--mist); text-transform:uppercase; letter-spacing:.17em; font-size:.72rem; font-weight:700; }
.hero-kicker span { display:block; width:34px; height:2px; background:var(--signal); }
h1 { position:relative; z-index:1; margin:5vh 0; max-width:1120px; font-size:clamp(3.2rem,7.2vw,7.8rem); line-height:.91; letter-spacing:-.068em; font-weight:680; }
h1 em { color:var(--signal); font-style:normal; }
.hero-bottom { position:relative; z-index:1; display:flex; align-items:end; justify-content:space-between; gap:32px; }
.hero-bottom p { max-width:600px; margin:0; color:var(--mist); font-size:clamp(1rem,1.5vw,1.3rem); line-height:1.55; }
.text-link { padding-bottom:8px; border-bottom:1px solid var(--signal); font-size:.9rem; font-weight:700; white-space:nowrap; }
.text-link span { color:var(--signal); margin-left:16px; }
.transition-strip { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(243,242,234,.18); border-bottom:1px solid rgba(243,242,234,.18); }
.transition { min-height:112px; padding:28px 3vw; display:flex; align-items:center; gap:14px; border-right:1px solid rgba(243,242,234,.18); font-size:clamp(.82rem,1.15vw,1rem); }
.transition:last-child { border-right:0; }.transition span { color:var(--mist); }.transition i { flex:1; height:1px; background:linear-gradient(90deg,rgba(168,186,192,.3),var(--signal)); position:relative; }.transition i::after { content:""; position:absolute; right:0; top:-3px; width:7px; height:7px; background:var(--signal); }.transition strong { color:var(--signal); }
@keyframes scan { from { transform:translateX(-80%); } to { transform:translateX(80%); } }
@keyframes radiate { 0% { opacity:.8; transform:scale(.2); } 100% { opacity:0; transform:scale(1.8); } }
@media (max-width:800px) { .site-header{min-height:76px}.site-header nav a:not(.nav-cta){display:none}.nav-cta{padding:10px 12px;font-size:.72rem}.hero{min-height:92svh;padding-top:120px}.signal-field{left:20%;opacity:.62}h1{font-size:clamp(3rem,14vw,5.5rem);margin-top:10vh}.hero-bottom{align-items:start;flex-direction:column}.transition-strip{grid-template-columns:1fr}.transition{min-height:84px;border-right:0;border-bottom:1px solid rgba(243,242,234,.18)} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important} }

.section-pad { padding: clamp(90px,12vw,180px) 5vw; }
.eyebrow { color:#35515a; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; font-weight:800; display:flex; align-items:center; gap:12px; }
.eyebrow::before { content:""; width:28px; height:2px; background:var(--signal); }
.eyebrow.light { color:var(--mist); }
h2 { margin:0; font-size:clamp(2.6rem,5.1vw,6rem); line-height:.98; letter-spacing:-.058em; font-weight:650; }
h2 em { font-style:normal; color:#56727a; }

.recognition { background:var(--paper); color:var(--ink); }
.recognition-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,.65fr); gap:clamp(50px,10vw,150px); align-items:start; margin-top:70px; }
.recognition h2 { max-width:850px; }
.recognition-copy { padding-top:12px; }
.recognition-copy p { font-size:1rem; line-height:1.75; color:#40555b; }
.recognition-copy .lead { color:var(--ink); font-size:clamp(1.25rem,2vw,1.65rem); line-height:1.45; margin-top:0; }
.accent-copy { border-left:3px solid var(--signal); padding-left:22px; margin-top:34px; font-weight:700; }

.statement { background:var(--paper); color:var(--ink); padding:0 5vw clamp(100px,14vw,220px); }
.statement p { margin:0 0 12px; font-size:clamp(1.15rem,2.2vw,2rem); color:#6e8186; }
.statement h2 { max-width:1100px; }

.outcomes { background:#dce5df; color:var(--ink); }
.section-intro { display:grid; grid-template-columns:.55fr 1.2fr .65fr; gap:40px; align-items:end; margin-bottom:clamp(60px,9vw,130px); }
.section-intro h2 { font-size:clamp(2.8rem,5.2vw,6.2rem); }
.section-intro > p { margin:0; color:#455e64; line-height:1.65; }
.outcome-list { border-top:1px solid rgba(7,26,32,.25); }
.outcome { display:grid; grid-template-columns:60px 1fr 1fr .9fr; gap:clamp(18px,3vw,48px); align-items:start; padding:38px 0; border-bottom:1px solid rgba(7,26,32,.25); transition:padding .25s ease,background .25s ease; }
.outcome:hover { padding-left:18px; padding-right:18px; background:rgba(243,242,234,.38); }
.outcome-no { color:#61787e; font-size:.72rem; font-weight:800; }
.outcome h3 { margin:0; max-width:330px; font-size:clamp(1.35rem,2vw,2.15rem); line-height:1.1; letter-spacing:-.035em; }
.outcome p { margin:0; color:#455e64; line-height:1.55; }
.outcome strong { color:#203b42; font-size:.88rem; line-height:1.55; }

.definition { background:var(--ink); }
.definition-head { display:grid; grid-template-columns:.5fr 1.2fr .65fr; gap:40px; align-items:end; margin-bottom:90px; }
.definition-head h2 em { color:var(--signal); }
.definition-head > p { color:var(--mist); line-height:1.7; margin:0; }
.domain-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(243,242,234,.2); border-left:1px solid rgba(243,242,234,.2); }
.domain { min-height:330px; padding:30px; border-right:1px solid rgba(243,242,234,.2); border-bottom:1px solid rgba(243,242,234,.2); display:flex; flex-direction:column; transition:background .25s ease,color .25s ease; }
.domain:hover { background:var(--signal); color:var(--ink); }
.domain > span { color:var(--signal); font-size:.7rem; font-weight:800; }
.domain:hover > span,.domain:hover p { color:var(--ink); }
.domain h3 { margin:auto 0 22px; font-size:clamp(1.7rem,2.8vw,3.2rem); letter-spacing:-.05em; }
.domain p { color:var(--mist); line-height:1.55; margin:0; font-size:.92rem; }

.implementation { background:var(--paper); color:var(--ink); display:grid; grid-template-columns:.5fr 1.5fr; gap:8vw; }
.big-index { color:#b6c0b7; font-size:clamp(4rem,9vw,10rem); font-weight:750; letter-spacing:-.09em; line-height:.8; }
.implementation h2 { margin:40px 0; max-width:1000px; }
.implementation p { max-width:720px; color:#455e64; font-size:clamp(1.05rem,1.5vw,1.28rem); line-height:1.7; }

.starting { background:#112d35; }
.split-intro { grid-template-columns:1.5fr .5fr; }
.split-intro > div h2 { max-width:900px; margin-top:38px; }
.start-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.start-card { min-height:380px; padding:30px; background:rgba(243,242,234,.06); border:1px solid rgba(243,242,234,.16); display:flex; flex-direction:column; position:relative; transition:transform .25s ease,border-color .25s ease; }
.start-card:hover { transform:translateY(-8px); border-color:var(--signal); }
.start-card > span { color:var(--signal); font-size:.72rem; font-weight:800; }
.start-card h3 { margin:auto 0 20px; max-width:300px; font-size:clamp(1.8rem,3vw,3.2rem); line-height:1; letter-spacing:-.05em; }
.start-card p { color:var(--mist); line-height:1.6; max-width:370px; margin:0; }
.start-card i { position:absolute; right:28px; top:24px; color:var(--signal); font-style:normal; font-size:1.2rem; }

.guidance { background:var(--signal); color:var(--ink); display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; align-items:center; }
.guidance .eyebrow::before { background:var(--ink); }
.guidance-copy h2 { margin:40px 0; }
.guidance-copy p { max-width:680px; line-height:1.7; font-size:1.05rem; }
.guidance-signal { aspect-ratio:1; border:1px solid rgba(7,26,32,.38); position:relative; background-image:linear-gradient(rgba(7,26,32,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(7,26,32,.14) 1px,transparent 1px); background-size:14.28% 14.28%; }
.guidance-signal::before,.guidance-signal::after { content:""; position:absolute; background:var(--ink); }
.guidance-signal::before { width:1px; height:70%; left:50%; top:15%; }.guidance-signal::after { height:1px; width:70%; top:50%; left:15%; }
.guidance-signal span { position:absolute; width:12px; height:12px; background:var(--ink); }
.guidance-signal span:nth-child(1){left:14.28%;top:28.56%}.guidance-signal span:nth-child(2){left:42.84%;top:57.12%}.guidance-signal span:nth-child(3){left:71.4%;top:14.28%}.guidance-signal span:nth-child(4){left:71.4%;top:71.4%}

.final-cta { min-height:78svh; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; background:var(--ink); }
.final-cta h2 { max-width:1100px; margin:55px 0 24px; }
.final-cta > p { color:var(--signal); font-size:clamp(1.4rem,2.5vw,2.8rem); margin:0 0 70px; }
.cta-button { width:100%; padding:30px 0; border-top:1px solid rgba(243,242,234,.25); border-bottom:1px solid rgba(243,242,234,.25); display:flex; justify-content:space-between; align-items:center; font-size:clamp(1rem,2vw,1.6rem); transition:padding .25s ease,color .25s ease; }
.cta-button span { color:var(--signal); font-size:1.5em; }
.cta-button:hover { padding-left:24px; padding-right:24px; color:var(--signal); }
footer { padding:32px 5vw; display:grid; grid-template-columns:1fr 1.5fr auto; gap:30px; align-items:center; border-top:1px solid rgba(243,242,234,.17); color:var(--mist); font-size:.75rem; }
footer p { margin:0; text-align:center; }

@media (max-width:1000px) {
  .section-intro,.definition-head { grid-template-columns:1fr; }
  .section-intro .eyebrow,.definition-head .eyebrow { margin-bottom:4px; }
  .outcome { grid-template-columns:44px 1fr 1fr; }.outcome strong { grid-column:2/4; }
  .domain-grid { grid-template-columns:repeat(2,1fr); }
  .start-grid { grid-template-columns:1fr; }.start-card { min-height:290px; }
}

@media (max-width:800px) {
  h2 { font-size:clamp(2.5rem,11vw,4.8rem); }
  .section-pad { padding:90px 6vw; }
  .recognition-grid,.implementation,.guidance { grid-template-columns:1fr; }
  .recognition-grid { margin-top:48px; }
  .big-index { margin-bottom:30px; }
  .outcome { grid-template-columns:34px 1fr; }.outcome p,.outcome strong { grid-column:2; }
  .domain-grid { grid-template-columns:1fr; }.domain { min-height:260px; }
  .split-intro { grid-template-columns:1fr; }
  .guidance-signal { max-width:520px; }
  footer { grid-template-columns:1fr; text-align:left; } footer p { text-align:left; }
}
