:root{
  --bg:#0b1219;
  --panel:#121e27;
  --panel2:#182731;
  --text:#ece9df;
  --muted:#a3b2bb;
  --line:#2c3b45;
  --accent:#d9b47b;
  --cyan:#83b6bc;
  --good:#a5c9ae;
  --bad:#e9a79c;
  --font:Arial,Helvetica,sans-serif;
  --mono:'Courier New',monospace;
  --display:Georgia,'Times New Roman',serif;
  --target:44px;
  --focus-width:3px;
  --focus-offset:3px;
  --control:#697d88;
  --focus-color:var(--accent);
  --on-accent:#14212a;
  --code-surface:#0c171f;
  --text-tiny:8px;
  --text-telemetry:9px;
  --text-caption:10px;
  --text-small:11px;
  --text-ui:12px;
  --text-code:13px;
  --text-copy:14px;
  --text-body:15px;
  --text-subtitle:16px;
  --text-lead-mobile:17px;
  --text-lead:18px;
  --text-icon:20px;
  --text-heading:23px;
  --text-heading-small:24px;
  --text-metric:25px;
  --text-quote:28px;
  --text-metric-large:30px;
  --text-page-mobile:43px;
  --text-page:52px;
  --text-hero-tablet:76px;
  --text-hero-mobile:80px;
  --text-hero:91px;
  --text-hero-wide:108px;
  --space-fine:4px;
  --space-tight:8px;
  --space-control:12px;
  --space-inline:16px;
  --space-card:20px;
  --space-panel-mobile:22px;
  --space-layout:24px;
  --space-panel:28px;
  --space-section:30px;
  --space-section-large:32px;
  --space-block:40px;
  --space-page:52px;
  
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:var(--text-body)/1.65 var(--font);background-image:radial-gradient(ellipse at 82% 17%,#172a362e,transparent 43%)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}h1,h2,h3,p{margin:0}h1{font:var(--text-page)/1.08 var(--display);letter-spacing:-1.8px}h2{font-size:var(--text-heading);line-height:1.25;letter-spacing:-.5px}h3{font-size:var(--text-copy);line-height:1.5}p+p{margin-top:14px}code{font:var(--text-code) var(--mono);color:var(--accent);overflow-wrap:anywhere}pre{font:var(--text-ui)/1.75 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}strong{font-weight:700}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:14px;top:-80px;z-index:99;background:var(--accent);color:var(--bg);padding:var(--space-control)}.skip-link:focus{top:12px}.topbar{max-width:1480px;margin:auto;padding:23px var(--space-page);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:var(--space-layout)}.brand{display:flex;align-items:center;gap:var(--space-control);font-size:var(--text-copy);letter-spacing:2px;line-height:1.4;font-weight:700}.brand-mark{border:1px solid #5d6a72;border-radius:50%;width:43px;height:43px;display:flex;align-items:center;justify-content:center;font-size:var(--text-ui);letter-spacing:-1px}.brand-mark span{color:var(--accent);margin:0 2px}.brand small{display:block;font:var(--text-tiny)/2 var(--mono);letter-spacing:1.2px;color:var(--muted)}nav{display:flex;gap:23px;font-size:var(--text-ui)}nav a{color:var(--muted);padding:var(--space-tight) 0;border-bottom:1px solid transparent}nav a[aria-current=page]{color:var(--text);border-color:var(--accent)}.status-light{display:flex;align-items:center;gap:9px;font:var(--text-telemetry) var(--mono);letter-spacing:1px;color:var(--muted);white-space:nowrap}.status-light i,.mini-dot{width:6px;height:6px;display:inline-block;background:var(--accent);border-radius:50%;flex-shrink:0}.preview-banner{font:var(--text-caption)/1.6 var(--mono);text-align:center;padding:9px var(--space-card);color:#c8b596;background:#1d211f;letter-spacing:.35px}.page{max-width:1380px;margin:0 auto;padding:50px var(--space-page) 65px;animation:appear .28s ease-out}.hero-page{padding-top:var(--space-block);padding-bottom:34px}.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:38px;align-items:center;min-height:530px}.eyebrow{font:var(--text-caption)/1.7 var(--mono);letter-spacing:1.7px;color:var(--muted);display:block}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;color:#c3c1b4}.tiny-line{width:24px;height:1px;background:var(--accent)}.hero-copy h1{font-size:var(--text-hero);line-height:.96;letter-spacing:-4px;margin:var(--space-panel) 0 26px}.hero-copy h1 em{font-style:normal;color:var(--accent)}.hero-lead{font-size:var(--text-lead);line-height:1.55;max-width:430px}.hero-detail{font-size:var(--text-code);color:var(--muted);max-width:405px;line-height:1.8;margin-top:17px}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-control);align-items:center;margin-top:var(--space-layout)}.button{border:1px solid var(--line);padding:var(--space-control) var(--space-card);display:inline-flex;align-items:center;justify-content:center;gap:15px;border-radius:3px;font-size:var(--text-ui);font-weight:600;line-height:1.4;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.primary:hover{background:#e5c391}.secondary{background:#1b2a34;color:var(--text)}.secondary:hover{background:#263c49}.quiet{background:transparent;border-color:transparent;color:var(--muted);padding-left:2px}.large{padding:var(--space-inline) 23px}.hero-meta{display:flex;gap:31px;margin-top:36px}.hero-meta strong{font-size:var(--text-subtitle);font-weight:500;display:block}.hero-meta span{display:block;font-size:var(--text-caption);color:var(--muted);margin-top:3px}.orbital-panel{position:relative;min-height:475px;border:1px solid #2d404d;background:linear-gradient(160deg,#15263070,#0c151db3);border-radius:3px;overflow:hidden}.scan-top{position:absolute;top:24px;left:25px;right:25px;display:flex;justify-content:space-between;color:var(--muted);font:var(--text-telemetry) var(--mono);letter-spacing:1px;z-index:2}.mono{font-family:var(--mono)}.space-grid{position:absolute;inset:0;background-image:linear-gradient(#93abba08 1px,transparent 1px),linear-gradient(90deg,#93abba08 1px,transparent 1px);background-size:55px 55px;mask-image:linear-gradient(transparent,#000,transparent)}.planet{position:absolute;width:235px;height:235px;border-radius:50%;top:126px;left:calc(50% - 117px);background:radial-gradient(circle at 33% 26%,#687f8b 0,#354d5b 27%,#1c2a35 56%,#0a1218 74%);box-shadow:inset 4px 3px 14px #9eafb53a,22px 25px 70px #000b;opacity:.8}.planet:after{content:'';position:absolute;inset:1px;border-radius:50%;background:repeating-linear-gradient(-32deg,transparent 0 18px,#c3d0d308 19px,transparent 24px);opacity:.7}.orbital{position:absolute;inset:0;width:100%;height:100%}.orbital-bottom{position:absolute;left:25px;right:25px;bottom:54px;display:flex;justify-content:space-between;align-items:center}.label{font:var(--text-tiny) var(--mono);letter-spacing:1.3px;color:var(--muted);display:block}.orbital-bottom strong{font-size:var(--text-subtitle);font-weight:400;display:block;margin-top:7px}.blink{color:var(--accent);animation:pulse 2s ease-in-out infinite}.signal-bars{display:flex;gap:var(--space-fine);align-items:end;height:27px}.signal-bars i{width:3px;background:#7c929b;height:7px}.signal-bars i:nth-child(2){height:13px}.signal-bars i:nth-child(3){height:19px;background:var(--accent)}.signal-bars i:nth-child(4){height:24px;opacity:.35}.signal-bars i:nth-child(5){height:28px;opacity:.15}.floating-note{position:absolute;bottom:17px;left:25px;font:var(--text-telemetry) var(--mono);color:var(--muted);display:flex;align-items:center;gap:var(--space-tight)}.mission-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-block);padding:var(--space-panel-mobile) 0;gap:var(--space-inline);font-size:var(--text-small);color:#bdc7cb}.mission-strip b{color:var(--accent);font:var(--text-caption) var(--mono);margin-right:9px}.bottom-quote{display:flex;align-items:center;gap:17px;margin-top:25px}.avatar{flex-shrink:0;border-radius:50%;width:39px;height:39px;background:#20333d;color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font:var(--text-copy) var(--display);border:1px solid #43545c}.bottom-quote p{font-size:var(--text-ui);color:var(--muted)}.bottom-quote small,.character-line small{display:block;font:var(--text-tiny)/1.7 var(--mono);letter-spacing:1.3px;margin-top:5px;color:#a7b8c2}.bottom-quote>.mono{margin-left:auto;font-size:var(--text-telemetry);color:var(--muted)}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:34px}.section-head h1{margin-top:15px}.section-head>p{max-width:350px;color:var(--muted);font-size:var(--text-copy);padding-bottom:var(--space-fine)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-layout)}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-panel-mobile);margin-top:var(--space-layout)}.panel{background:linear-gradient(135deg,#14232b,#101b23);border:1px solid var(--line);border-radius:4px;padding:var(--space-panel)}.panel h2{margin:14px 0 17px}.panel p{color:#c5d0d5;font-size:var(--text-copy)}.tag{display:inline-block;font:var(--text-telemetry) var(--mono);letter-spacing:1.2px;color:var(--accent);border:1px solid #6d5e424f;padding:5px var(--space-tight);background:#d9b47b08}.small{font-size:var(--text-small)!important;line-height:1.7}.muted{color:var(--muted)!important}.character-line{margin:var(--space-layout) 0;display:flex;gap:15px;border-top:1px solid var(--line);padding-top:var(--space-panel-mobile);align-items:center}.logs{margin:17px 0;display:grid;gap:9px}.log-button{display:flex;justify-content:space-between;text-align:left;padding:14px;border:1px solid var(--line);border-radius:3px;background:#182630;color:var(--text);font-size:var(--text-ui)}.log-button[aria-pressed=true]{border-color:var(--accent)}.log-button span:last-child{color:var(--accent);font:var(--text-caption) var(--mono)}.log-detail{font-size:var(--text-code);line-height:1.8;border-left:2px solid var(--accent);padding:var(--space-tight) 15px;min-height:100px;color:#c4d0d5}.mission-card{padding:var(--space-layout);background:#121f27;border:1px solid var(--line);border-radius:3px}.mission-card>span{font:var(--text-small) var(--mono);color:var(--accent)}.mission-card h3{margin:14px 0 10px;font-size:var(--text-subtitle)}.mission-card p{font-size:var(--text-ui);color:var(--muted)}.section-footer{margin-top:var(--space-section);padding-top:var(--space-layout);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:var(--space-card)}.section-footer p{font-size:var(--text-ui)}.academy-top{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:25px}.academy-top p{font-size:var(--text-ui);margin-top:var(--space-control);color:var(--muted)}.progress-readout{text-align:right;min-width:140px}.progress-readout strong{font:var(--text-metric-large) var(--display);display:block;color:var(--accent)}.progress-readout span{font-size:var(--text-caption);color:var(--muted)}.academy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-control)}.concept{border:1px solid var(--line);border-radius:3px;background:var(--panel)}.concept summary{cursor:pointer;list-style:none;padding:18px;display:flex;gap:13px;align-items:center;font-size:var(--text-copy);font-weight:600}.concept summary::-webkit-details-marker{display:none}.concept summary:after{content:'+';margin-left:auto;color:var(--accent);font-size:var(--text-icon);font-weight:400}.concept[open] summary:after{content:'−'}.concept summary span{font:var(--text-caption) var(--mono);color:var(--accent)}.concept-content{padding:0 var(--space-panel-mobile) var(--space-panel-mobile);font-size:var(--text-code);color:#c0d0d5}.concept-content .example{margin-top:var(--space-control);padding:var(--space-control);background:#0c171e;border-left:2px solid var(--cyan);color:#b9cbd4}.concept.reviewed{border-left:3px solid var(--accent)}.principle{margin-top:26px}.resource-heading{margin:35px 0 var(--space-card)}.resource-heading p{font-size:var(--text-ui);margin-top:var(--space-tight)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.resource{display:block;border:1px solid var(--line);padding:18px;background:#101c25;border-radius:3px}.resource .eyebrow{font-size:var(--text-tiny);letter-spacing:1px;color:var(--accent)}.resource strong{font-size:var(--text-code);display:block;margin:var(--space-tight) 0}.resource p{font-size:var(--text-small);color:var(--muted)}.resource:hover{border-color:var(--accent)}.steps{padding-left:19px;margin:18px 0 25px;color:#c7d3d7;font-size:var(--text-code)}.steps li{padding:0 0 var(--space-control) 6px}.code-panel{background:var(--code-surface)}.code-title{font:var(--text-telemetry) var(--mono);letter-spacing:.8px;color:var(--muted);display:flex;justify-content:space-between;gap:var(--space-control);align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:23px}.code-panel pre{color:#d9bd8f;line-height:2.2;margin:10px 0 25px}.code-panel p{font-size:var(--text-ui)}.text-button{border:0;background:transparent;color:var(--muted);font-size:var(--text-small);padding:var(--space-fine);text-decoration:underline;text-underline-offset:4px}.text-button:hover{color:var(--text)}.callout{background:#d9b47b0a;border-left:2px solid var(--accent);font-size:var(--text-ui);line-height:1.8;padding:14px;margin:var(--space-card) 0;color:#d2c9b7}.route-tabs{display:flex;gap:var(--space-control);margin-top:var(--space-section);margin-bottom:var(--space-control)}.route-tab{padding:15px 18px;background:transparent;color:var(--muted);border:1px solid var(--line);font-size:var(--text-ui);border-radius:3px}.route-tab.active{background:#22343e;color:var(--text);border-color:var(--accent)}.route-content p{font-size:var(--text-code)}.route-content h3{font-size:var(--text-lead);margin-bottom:var(--space-control)}.route-content ul{font-size:var(--text-code);color:#c4d1d8;padding-left:19px}.route-content pre{margin:18px 0;color:#d6c3a3}.contract-panel{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:var(--space-layout);align-items:center}.contract-panel pre{background:#0b151c;padding:var(--space-card);color:#c7be9d;border-radius:3px}.lab-notice{display:flex;gap:18px;border:1px solid #7766405e;background:#d9b47b0a;color:#ceb68d;padding:14px 18px;align-items:center;border-radius:3px;margin-bottom:var(--space-card);font-size:var(--text-small)}.lab-notice strong{font:var(--text-telemetry) var(--mono);min-width:170px}.lab-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:var(--space-card)}.terminal{padding:0;overflow:hidden;background:#0b161e}.terminal-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-control);padding:var(--space-inline) var(--space-card);border-bottom:1px solid var(--line);font:var(--text-telemetry) var(--mono);color:var(--muted)}.terminal-head span{display:flex;gap:var(--space-tight);align-items:center}.chat-log{height:340px;overflow:auto;padding:var(--space-panel-mobile);display:flex;flex-direction:column;gap:14px;scrollbar-color:#47606e #111e26;scrollbar-width:thin}.chat-message{max-width:94%;font-size:var(--text-code);line-height:1.7;overflow-wrap:anywhere}.chat-message .speaker{display:block;font:var(--text-tiny) var(--mono);letter-spacing:1px;margin-bottom:5px;color:var(--accent)}.chat-message.user{margin-left:auto;background:#1d303b;padding:10px 15px;border-radius:4px;max-width:85%}.chat-message.user .speaker{color:#b5cbd4}.chat-message.system{border-left:2px solid var(--cyan);padding:var(--space-fine) var(--space-control);color:#bccbd3}.chat-message.error{color:var(--bad)}#chatForm{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 18px;align-items:center;gap:var(--space-tight)}#chatInput{width:100%;background:transparent;border:0;padding:18px var(--space-fine);color:var(--text);font-size:var(--text-code);min-width:0}#chatInput::placeholder{color:#94a6b2}.send-button{background:var(--accent);color:var(--on-accent);width:34px;height:34px;border:0;border-radius:3px;font-size:var(--text-heading);flex-shrink:0}.suggestions{padding:15px 18px;display:flex;gap:7px;flex-wrap:wrap}.suggestions button{background:transparent;border:1px solid #34444f;color:#b5c4cd;font-size:var(--text-telemetry);border-radius:3px;padding:6px var(--space-tight)}.suggestions button:hover{border-color:var(--accent);color:var(--accent)}.confirm-box{background:#283626;border:1px solid #75855f;margin:var(--space-tight) var(--space-card) 18px;padding:15px;font-size:var(--text-ui);color:#e5e5c8}.confirm-box .button-row{margin-top:var(--space-control)}.small-button{padding:9px var(--space-control);font-size:var(--text-caption)}.stats{margin:var(--space-card) 0}.stats div{display:flex;justify-content:space-between;gap:15px;padding:var(--space-tight) 0;border-bottom:1px solid var(--line)}.stats dt{font-size:var(--text-small);color:var(--muted)}.stats dd{margin:0;font:var(--text-copy) var(--mono);color:var(--accent)}.mission-checks{font-size:var(--text-small);display:grid;gap:7px;margin:var(--space-panel-mobile) 0}.mission-checks div{display:flex;gap:var(--space-tight);color:var(--muted)}.mission-checks div.done{color:var(--good)}.evidence h3{margin:18px 0 9px}.evidence pre{background:var(--code-surface);padding:14px;color:#b7c5cd;font-size:var(--text-caption);max-height:170px;overflow:auto}.evidence .small{margin-top:var(--space-control)}.lab-bottom{margin-top:var(--space-layout)}.file-label{display:block;font-size:var(--text-ui);color:#dcc08e;margin:var(--space-card) 0 10px}input[type=file]{display:block;width:100%;margin-top:10px;font-size:var(--text-small);color:var(--muted)}input[type=file]::file-selector-button{background:#293c47;color:var(--text);border:1px solid #526975;padding:11px 14px;border-radius:3px;margin-right:var(--space-control);cursor:pointer}#reportFeedback{font-size:var(--text-ui);margin-top:var(--space-inline)}#reportResults{display:grid;gap:6px;margin-top:var(--space-control);max-height:270px;overflow:auto}.result-row{border-left:2px solid var(--bad);background:#13212a;font-size:var(--text-small);padding:10px;overflow-wrap:anywhere}.result-row.ok{border-color:var(--good)}.result-row p{font-size:var(--text-small);color:var(--muted);margin-top:var(--space-fine)}.final-challenge{background:radial-gradient(ellipse at 90% 100%,#52635322,transparent 60%),#14222b}.final-challenge .button{margin-top:var(--space-card)}.final-challenge #finalFeedback{margin-top:15px;font-size:var(--text-ui);color:var(--accent)}.delivery-checks{display:grid;gap:var(--space-inline);margin:var(--space-panel-mobile) 0}.delivery-checks label{display:flex;gap:var(--space-control);font-size:var(--text-ui);align-items:flex-start;color:#c4d2d8}.delivery-checks input{margin-top:var(--space-fine);accent-color:var(--accent);width:16px;height:16px;flex-shrink:0}.rubric{margin-top:var(--space-card);display:grid;gap:14px}.rubric-row{display:grid;grid-template-columns:1fr 30px;gap:18px;font-size:var(--text-ui)}.rubric-row strong{text-align:right;color:var(--accent);font:var(--text-lead-mobile) var(--display)}.rubric-bar{height:3px;background:#273943;margin-top:6px}.rubric-bar i{display:block;height:3px;background:#b79d77}.defense{margin-top:26px;padding-top:var(--space-card);border-top:1px solid var(--line)}.defense p{font-size:var(--text-ui);margin:10px 0 18px}.closing-note{display:flex;gap:var(--space-panel-mobile);margin-top:26px;align-items:center}.closing-note h2{font:var(--text-quote) var(--display);margin:0 0 var(--space-control)}.closing-note p{font-size:var(--text-code)}.closing-note small{color:var(--accent);font:var(--text-tiny) var(--mono);letter-spacing:1px;display:block;margin-top:var(--space-control)}.site-footer{max-width:1480px;margin:auto;border-top:1px solid var(--line);padding:25px var(--space-page) var(--space-section-large);display:flex;justify-content:space-between;gap:var(--space-card)}.site-footer strong{display:block;font:var(--text-telemetry) var(--mono);letter-spacing:1.5px;color:var(--muted)}.site-footer span{display:block;font-size:var(--text-caption);color:#9eafb9;margin-top:6px}.site-footer>div:last-child{text-align:right}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#2a3e48;color:var(--text);border:1px solid #647a85;padding:var(--space-control) 23px;border-radius:4px;box-shadow:0 5px 40px #0007;z-index:20;font-size:var(--text-ui);max-width:90vw}
@keyframes pulse{50%{opacity:.3}}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-grid{min-height:590px}.hero-copy h1{font-size:var(--text-hero-wide)}.orbital-panel{min-height:530px}}
@media(max-width:1100px){.topbar{padding:var(--space-card) var(--space-section);flex-wrap:wrap;gap:15px}.status-light{display:none}nav{gap:18px}.page{padding:35px var(--space-section) 50px}.hero-copy h1{font-size:var(--text-hero-tablet)}.hero-grid{gap:var(--space-panel-mobile)}.orbital-panel{min-height:440px}.hero-meta{gap:var(--space-card)}.section-head{gap:var(--space-section)}.site-footer{padding:25px var(--space-section)}.panel{padding:var(--space-layout)}.terminal{padding:0}.resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{padding:18px var(--space-panel-mobile);gap:17px}.brand{font-size:var(--text-code)}.brand-mark{height:36px;width:36px}nav{width:100%;gap:0;justify-content:space-between;font-size:var(--text-caption);overflow-x:auto}nav a{padding:6px 1px}.preview-banner{font-size:var(--text-telemetry);padding:9px var(--space-card)}.page{padding:var(--space-section) var(--space-panel-mobile) var(--space-block)}.hero-grid{grid-template-columns:1fr;gap:33px;min-height:0}.hero-copy h1{font-size:var(--text-hero-mobile);margin:25px 0}.hero-lead{font-size:var(--text-lead-mobile)}.hero-detail{font-size:var(--text-code)}.hero-meta{gap:27px}.orbital-panel{min-height:360px}.planet{top:75px;width:200px;height:200px;left:calc(50% - 100px)}.orbital-bottom{bottom:49px}.orbital-bottom strong{font-size:var(--text-copy)}.orbital{height:360px;top:0}.floating-note{font-size:var(--text-tiny);left:18px}.mission-strip{display:grid;grid-template-columns:1fr;gap:13px;margin-top:var(--space-panel);padding:var(--space-card) 0}.mission-strip>.eyebrow{margin-bottom:5px}.bottom-quote{align-items:flex-start}.bottom-quote>.mono{display:none}.section-head{display:block;margin-bottom:var(--space-layout)}.section-head h1{font-size:var(--text-page-mobile);letter-spacing:-1.4px}.section-head>p{margin-top:var(--space-card);max-width:100%;font-size:var(--text-code)}.two-col,.three-col,.contract-panel,.lab-layout{grid-template-columns:1fr}.panel{padding:var(--space-panel-mobile)}.terminal{padding:0}.three-col{gap:var(--space-control)}.section-footer{align-items:flex-start;flex-direction:column;gap:15px}.section-footer .button{width:100%}.academy-top{align-items:flex-start}.academy-top>div:first-child{max-width:65%}.progress-readout{min-width:80px}.progress-readout strong{font-size:var(--text-metric)}.progress-readout span{font-size:var(--text-telemetry)}.academy-grid{grid-template-columns:1fr}.resource-grid{grid-template-columns:1fr}.route-tabs{gap:9px}.route-tab{font-size:var(--text-caption);padding:var(--space-control);flex:1}.route-content pre{font-size:var(--text-caption)}.lab-notice{display:block;font-size:var(--text-small)}.lab-notice strong{display:block;margin-bottom:6px}.chat-log{height:320px;padding:18px}.terminal-head{font-size:var(--text-tiny);padding:14px 17px}.stats{margin:18px 0}.contract-panel{gap:15px}.closing-note{align-items:flex-start;gap:15px}.closing-note h2{font-size:var(--text-heading-small)}.site-footer{padding:23px var(--space-panel-mobile);flex-direction:column;gap:15px}.site-footer>div:last-child{text-align:left}#exportChecklist{margin-top:var(--space-control)}.hero-copy .button-row{gap:var(--space-control)}.button{font-size:var(--text-small)}.large{padding:15px 19px}.eyebrow{font-size:var(--text-telemetry)}.hero-meta strong{font-size:var(--text-body)}.hero-meta span{font-size:var(--text-telemetry)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{body{background:#fff;color:#000}.page[hidden]{display:block!important}.topbar,nav,.preview-banner,.site-footer,.button,.suggestions{display:none}.page{page-break-before:always;padding:var(--space-card)}.panel{background:white;border-color:#aaa}.panel p,.muted{color:#333!important}}

/* Shared access and reflow primitives preserve the approved Nébula palette. */
html{color-scheme:dark}
:is(button,a,input,summary):focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:var(--focus-offset)}
:where(h1,h2,h3){overflow-wrap:anywhere;text-wrap:balance;scroll-margin-top:var(--space-layout)}
:where(.hero-grid,.two-col,.three-col,.academy-grid,.resource-grid,.contract-panel,.lab-layout)>*{min-width:0}
:where(.button,.text-button,.send-button,.suggestions button,.route-tab,nav a,.concept summary){min-height:var(--target)}
:where(.button,.text-button,.send-button,.suggestions button,.route-tab,nav a){min-width:var(--target)}
:where(nav a){display:inline-flex;align-items:center;justify-content:center}
.button,.route-tab,.log-button,.suggestions button,#chatForm{border-color:var(--control)}
.button.primary{border-color:var(--accent)}
.button.quiet{border-color:transparent}
.brand{min-width:var(--target);min-height:var(--target)}
.send-button{width:var(--target);height:var(--target)}
.delivery-checks label{min-height:var(--target);align-items:center;cursor:pointer}
.delivery-checks input{margin-top:0;outline-offset:2px}
:where(.button,.route-tab,.log-button,.resource,.tag,.stats dd,.preview-banner){overflow-wrap:anywhere}
:where(.code-title,.terminal-head,.hero-meta,.academy-top,.section-footer,.closing-note){flex-wrap:wrap}
:where(.code-title,.terminal-head)>*{min-width:0}
#chatInput:focus-visible{outline-offset:calc(-1 * var(--focus-width))}
.concept summary:focus-visible{outline-offset:calc(-1 * (var(--focus-width) + 1px))}
:where(pre,.chat-log){overscroll-behavior:contain}
.stats dd,.progress-readout{font-variant-numeric:tabular-nums}
@media(max-width:760px){nav{flex-wrap:wrap;overflow:visible;column-gap:var(--space-tight)}nav a{flex:1 0 auto}.hero-copy h1{font-size:clamp(52px,20.5vw,80px)}.hero-meta{row-gap:var(--space-control)}.academy-top>div:first-child{max-width:100%}.button{max-width:100%}.route-tabs{flex-wrap:wrap}.toast{overflow-wrap:anywhere}}
@media(forced-colors:active){:root{--focus-color:Highlight}.button,.route-tab,.log-button,.suggestions button,.concept{border:1px solid ButtonText}.rubric-bar i,.mini-dot{background:CanvasText}}

/* Existing landing primitives, focused on the challenge and its required path. */
.hero-page .hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:var(--space-block);min-height:0;align-items:center}
.hero-page .hero-copy h1{font-size:clamp(var(--text-page-mobile),4.2vw,var(--text-hero-tablet));line-height:1.06;letter-spacing:-.04em;margin:var(--space-layout) 0;text-wrap:balance}
.hero-page .hero-copy .eyebrow{font-size:var(--text-ui);letter-spacing:.08em;color:var(--cyan)}
.hero-page .hero-lead{max-width:34ch;font-size:var(--text-lead);line-height:1.6}
.hero-page .hero-detail{max-width:52ch;font-size:var(--text-body);margin-top:var(--space-inline)}
.hero-file{font:var(--text-ui)/1.6 var(--mono);color:var(--muted);margin-top:var(--space-tight)}
.download-feedback:empty{display:none}.download-feedback:not(:empty){margin-top:var(--space-control)}
.hero-visual{margin:0;min-width:0}.hero-visual>[data-cloudpaw-scene]{margin:0;aspect-ratio:16/9;background:var(--panel)}
.hero-visual .media-scene{border:0}.hero-visual .media-scene figcaption{display:none}
.hero-visual>figcaption{display:flex;justify-content:space-between;gap:var(--space-inline);align-items:start;padding-top:var(--space-inline)}
.hero-visual>figcaption span{font:var(--text-small)/1.6 var(--mono);color:var(--muted)}
.hero-visual>figcaption strong{font:var(--text-body)/1.5 var(--display);font-weight:400}
.hero-page .hero-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-layout);margin-top:0;padding:var(--space-layout) 0;border-block:1px solid var(--line)}
.hero-page .hero-meta strong{font:var(--text-subtitle)/1.4 var(--font);font-weight:600}.hero-page .hero-meta span{font-size:var(--text-ui);line-height:1.6;margin-top:var(--space-tight)}
.landing-section{padding-top:var(--space-page);scroll-margin-top:var(--space-layout)}
.landing-section>.section-head h2{font:var(--text-quote)/1.25 var(--display);margin-top:var(--space-control);text-wrap:balance;letter-spacing:-.02em}
.landing-section>.section-head>p{max-width:50ch;font-size:var(--text-body);line-height:1.7}
.landing-section p{max-width:65ch}.landing-section .panel p{font-size:var(--text-body)}
.challenge-overview{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-block);align-items:start}
.challenge-overview h3{font-size:var(--text-lead);font-weight:500}.task-list{font-size:var(--text-body);line-height:1.65;margin:var(--space-layout) 0;padding-left:var(--space-layout)}
.task-list li{padding-left:var(--space-tight);padding-bottom:var(--space-inline)}.task-list li::marker{font-family:var(--mono);color:var(--muted)}
.hero-page .tag{color:var(--cyan);background:var(--panel2);border:0;font-size:var(--text-small);letter-spacing:.04em}
.decision-flow{list-style:none;margin:var(--space-layout) 0 0;padding:0;display:grid;gap:var(--space-card)}
.decision-flow li+li{border-top:1px solid var(--line);padding-top:var(--space-card)}.decision-flow .eyebrow{color:var(--cyan);font-size:var(--text-ui)}
.decision-flow p{margin-top:var(--space-tight)}.decision-flow code{display:inline-block;margin-top:var(--space-tight)}
.decision-flow p+p{font-size:var(--text-copy)}.example-flow .button{margin-top:var(--space-inline);text-align:left;justify-content:start}
.participation-steps{list-style:none;padding:0;margin:0;display:grid;gap:0}
.participation-steps>li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-layout);padding:var(--space-layout) 0;border-top:1px solid var(--line)}
.step-number{font:var(--text-quote)/1.3 var(--display);color:var(--cyan)}
.participation-steps h3{font-size:var(--text-lead);margin-bottom:var(--space-tight)}.participation-steps p{font-size:var(--text-body)}
.participation-steps code{display:inline-block;margin-top:var(--space-control)}.participation-steps .button{margin-top:var(--space-tight)}
.landing-section a[href^="mailto:"],.landing-section a[href^="https://wa.me"]{text-decoration:underline;text-underline-offset:.2em;color:var(--cyan)}
.delivery-section .two-col{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:var(--space-layout)}
.delivery-section .rubric-row,.delivery-checks label{font-size:var(--text-body)}.delivery-section .eyebrow{font-size:var(--text-ui)}
.delivery-section .callout{border:0;background:var(--panel2);font-size:var(--text-copy)}.delivery-section .small{font-size:var(--text-copy)!important}
.delivery-section #formLink{margin-bottom:var(--space-control)}.delivery-section #exportChecklist{margin-top:var(--space-card)}
.optional-resources{border-top:1px solid var(--line);margin-top:var(--space-page)}.optional-resources .resource-grid{margin-top:0}
.optional-resources .resource strong{font-size:var(--text-body)}.optional-resources .resource p{font-size:var(--text-copy)}
.optional-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-block);align-items:center;margin-top:var(--space-block)}
.optional-story h3{font:var(--text-quote)/1.3 var(--display);margin:var(--space-control) 0}.optional-story p{font-size:var(--text-body)}
.bridge-film{max-width:65ch;margin-inline:auto}.workshop-kits{margin-block:var(--space-layout)}
.topbar #nav{gap:var(--space-tight)}.topbar #nav a{padding:var(--space-tight) var(--space-control);font-size:var(--text-ui);border:0}
.topbar #nav a[aria-current=page]{background:var(--panel2);color:var(--text)}.topbar #nav a:hover{background:var(--panel)}
.topbar #nav{flex-wrap:wrap}
.workshop-download,.workshop-optional{display:grid;gap:var(--space-inline);margin-bottom:var(--space-layout);min-width:0}
.workshop-download>p,.workshop-optional>p{max-width:65ch;margin:0}
.workshop-download .button.quiet,.workshop-optional .button.quiet{justify-self:start}
.workshop-download+.route-tabs{margin-top:var(--space-layout)}
.workshop-optional{margin-top:var(--space-layout)}
.demo-stock{padding:var(--space-inline) var(--space-card);background:var(--panel2)}
#demoStock{display:grid;gap:var(--space-tight)}
.demo-stock-item{display:flex;justify-content:space-between;flex-wrap:wrap;column-gap:var(--space-inline);font-size:var(--text-body);font-variant-numeric:tabular-nums}
.demo-stock-item strong{color:var(--text)}.demo-stock-item span{color:var(--cyan)}
.demo-stock p{font-size:var(--text-body);color:var(--muted);margin-top:var(--space-control)}
@media(max-width:760px){.demo-stock-item{font-size:var(--text-lead-mobile)}}
.route-tab.active,.log-button[aria-pressed=true]{border-color:var(--control);background:var(--panel2)}
@media(max-width:1100px){.hero-page .hero-grid{gap:var(--space-layout)}.hero-page .hero-copy h1{font-size:var(--text-page)}.hero-page .hero-meta{gap:var(--space-inline)}.challenge-overview{gap:var(--space-layout)}}
@media(max-width:760px){
.hero-page .hero-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-inline)}.hero-page .hero-copy{display:contents}
.hero-page .hero-copy>.eyebrow{order:1}.hero-page .hero-copy h1{order:2;font-size:var(--text-page-mobile);margin:0 0 var(--space-tight);letter-spacing:-.035em}
.hero-page .hero-lead{order:3;font-size:var(--text-lead-mobile);max-width:none}.hero-page .hero-copy>.button-row{order:4;margin-top:var(--space-tight)}
.hero-page .download-feedback{order:5}.hero-page .hero-visual{order:6}.hero-page .hero-detail{order:7;margin-top:0}.hero-page .hero-file{order:8;margin-top:0}
.hero-page .hero-meta{order:9;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--space-control);gap:var(--space-card)}
.hero-visual>figcaption{padding-top:var(--space-tight)}.hero-visual>figcaption strong{font-size:var(--text-copy)}
.landing-section{padding-top:var(--space-block)}.landing-section>.section-head>p{font-size:var(--text-body);margin-top:var(--space-inline)}
.challenge-overview,.delivery-section .two-col,.optional-story{grid-template-columns:minmax(0,1fr);gap:var(--space-layout)}
.participation-steps>li{gap:var(--space-inline)}.hero-page .button{font-size:var(--text-copy)}.optional-story{margin-top:var(--space-layout)}
.topbar #nav a{flex:1 1 auto;font-size:var(--text-ui);padding-inline:var(--space-tight)}
}

:root{--motion-tilt-max:2;--motion-reveal-distance:12px;--motion-reveal-duration:600ms;--motion-release-duration:280ms;--motion-ease:cubic-bezier(.2,.7,.3,1);--motion-perspective:1000px;--brand-paper:#ffffff}
.guide-link{display:inline-flex;align-items:center;min-height:var(--target);font-size:var(--text-copy);color:var(--cyan);text-decoration:underline;text-underline-offset:.2em;margin-top:var(--space-tight)}
.collaboration-band{display:flex;align-items:center;gap:var(--space-block);padding:var(--space-layout) 0;border-bottom:1px solid var(--line)}
.collaboration-logos{display:flex;flex-wrap:wrap;gap:var(--space-block);align-items:center}.collaboration-partner{display:grid;gap:var(--space-tight);font-size:var(--text-ui);color:var(--muted)}
.collaboration-partner:hover{color:var(--text)}.brand-logo{display:flex;align-items:center;justify-content:center;width:240px;height:112px;padding:var(--space-tight)}
.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.brand-logo-paper{background:var(--brand-paper)}
.challenge-visuals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-layout)}.challenge-visuals figure{min-width:0;margin:0;background:var(--panel)}
.challenge-image{overflow:hidden;aspect-ratio:3/2;background:var(--code-surface)}.challenge-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.challenge-visuals figcaption{padding:var(--space-card)}.challenge-visuals .eyebrow{font-size:var(--text-ui);color:var(--cyan)}.challenge-visuals h3{font:var(--text-lead)/1.4 var(--display);margin:var(--space-control) 0}.challenge-visuals p{font-size:var(--text-body)}
.illustration-note{font-size:var(--text-copy);color:var(--muted);margin:var(--space-inline) 0 var(--space-block)}
[data-motion-visual]{overflow:hidden;perspective:var(--motion-perspective)}
[data-motion-visual]>.media-scene,[data-motion-visual]>.visual-motion-surface{transform:rotateX(var(--visual-rx,0deg)) rotateY(var(--visual-ry,0deg));transition:transform var(--motion-release-duration) var(--motion-ease)}
[data-motion-tracking]>.media-scene,[data-motion-tracking]>.visual-motion-surface{transition:none}
@keyframes visual-arrive{from{opacity:.8;transform:translateY(var(--motion-reveal-distance)) scale(1.025)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
[data-motion-enabled="true"][data-motion-seen="true"]>.media-scene img{animation:visual-arrive var(--motion-reveal-duration) var(--motion-ease) both}
[data-motion-enabled="true"][data-motion-seen="true"]>.visual-motion-surface img{animation:visual-arrive var(--motion-reveal-duration) var(--motion-ease)}
}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){[data-motion-visual]>.media-scene,[data-motion-visual]>.visual-motion-surface{transform:none;animation:none;transition:none}}
@media(max-width:760px){.hero-page .guide-link{order:8;margin-top:0}.collaboration-band{align-items:start;flex-direction:column;gap:var(--space-inline)}.collaboration-logos{gap:var(--space-layout);width:100%}.collaboration-partner{flex:1 1 0;min-width:0}.brand-logo{width:100%;max-width:240px;height:112px}.challenge-visuals{grid-template-columns:minmax(0,1fr)}}

.visual-motion-surface{height:100%}

:root{--motion-scroll-travel:48px;--motion-scroll-overscan:56px}
@keyframes visual-parallax{from{transform:translate3d(0,var(--motion-scroll-travel),0)}to{transform:translate3d(0,calc(-1 * var(--motion-scroll-travel)),0)}}
@supports(animation-timeline:view()) and (overflow:clip){
@media(prefers-reduced-motion:no-preference){
[data-motion-visual],[data-motion-visual]>.media-scene,[data-motion-visual]>.visual-motion-surface{overflow:clip}
.hero-visual [data-motion-visual]>.media-scene{position:relative;aspect-ratio:16/9}
[data-motion-visual]>.visual-motion-surface{position:relative;aspect-ratio:3/2}
.hero-page [data-motion-visual]>.media-scene img,.hero-page [data-motion-visual]>.visual-motion-surface img{position:absolute;inset-inline:0;top:calc(-1 * var(--motion-scroll-overscan));width:100%;height:calc(100% + var(--motion-scroll-overscan) * 2);aspect-ratio:auto;object-fit:cover;animation:visual-parallax 1s linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
}
}
.optional-context{margin-top:var(--space-block)}

/* Supporting tools stay separate from the three participation steps. */
.lab-paths{display:flex;flex-wrap:wrap;gap:var(--space-control);margin-bottom:var(--space-layout)}
.lab-section,.report-section{scroll-margin-top:var(--space-layout)}.lab-section>h2{font:var(--text-quote)/1.3 var(--display);margin-bottom:var(--space-layout)}
.demo-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-layout);padding-inline-start:var(--space-layout);margin:0 0 var(--space-layout)}
.demo-guide li{padding-inline-start:var(--space-tight)}.demo-guide li::marker{font-family:var(--mono);color:var(--cyan)}.demo-guide strong{font-size:var(--text-body)}.demo-guide p{font-size:var(--text-copy);color:var(--muted);margin-top:var(--space-fine)}
.report-section{margin-top:var(--space-block);padding-top:var(--space-layout);border-top:1px solid var(--line)}.report-section .lab-bottom{margin-top:0}
.delivery-video{padding:var(--space-inline);margin-bottom:var(--space-card);background:var(--code-surface)}.delivery-video h3{font-size:var(--text-body)}.delivery-video ol{padding-inline-start:var(--space-card);margin:var(--space-control) 0 0;font-size:var(--text-copy)}.delivery-video li+li{margin-top:var(--space-tight)}
.academy-picker{border:1px solid var(--line);background:var(--panel);min-width:0}.academy-picker>summary{cursor:pointer;min-height:var(--target);padding:var(--space-inline);font-size:var(--text-body);font-weight:600}.academy-picker>summary span{display:block;font-size:var(--text-copy);font-weight:400;color:var(--muted);margin-top:var(--space-tight)}
.academy-picker #academyIndex{padding:0 var(--space-control) var(--space-control)}.academy-picker #academyIndex h2{font:var(--text-copy)/1.5 var(--font);font-weight:600;margin:var(--space-inline) var(--space-control) var(--space-tight)}
.resource-groups{display:grid;gap:var(--space-section-large)}.resource-group>h3{font:var(--text-lead)/1.4 var(--display);margin-bottom:var(--space-inline)}.resource-group .resource-grid{grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr))}
@media(max-width:760px){.demo-guide{grid-template-columns:minmax(0,1fr);gap:var(--space-inline)}.lab-paths .button{flex:1 1 100%}.academy-picker #academyIndex{max-height:none;overflow:visible}}

.hero-route-inline{display:block;font-size:var(--text-copy);color:var(--cyan);margin-top:var(--space-control)}

.optional-resources>.resource-grid{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}
