:root{color-scheme:dark;--bg:#080f14;--panel:#101c23;--line:#293c43;--text:#e4f5ee;--muted:#a0b9ae;--green:#63f7a4;--cyan:#6ad9f2;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}a:hover{color:var(--green)}p{color:var(--muted);margin:0 0 1em}h1,h2,h3,h4{line-height:1.14;margin:0;letter-spacing:-.04em}h1{font-size:clamp(3.1rem,5.9vw,5.6rem);font-weight:760}h1 em{color:var(--green);font-style:normal}h2{font-size:clamp(2rem,3.7vw,3.3rem);font-weight:680}h3{font-size:1.3rem;letter-spacing:-.025em}h4{font-size:1.1rem}.container{width:min(1192px,calc(100% - 80px));margin-inline:auto}.mono,.eyebrow,.index,.date{font-family:var(--mono)}.eyebrow{font-size:.72rem;letter-spacing:.13em;color:var(--green);margin-bottom:25px;line-height:1.8}.mono{font-size:.72rem;letter-spacing:.06em;color:var(--muted)}header{position:sticky;top:0;z-index:10;background:rgba(8,15,20,.97);border-bottom:1px solid var(--line)}.header-inner{width:min(1360px,calc(100% - 64px));min-height:90px;margin:auto;display:flex;align-items:center;gap:30px}.brand{font-family:var(--mono);font-size:1rem;letter-spacing:.04em;display:inline-flex;align-items:center;gap:12px;line-height:1.15;font-weight:700}.brand-icon{border:1px solid var(--green);color:var(--green);padding:10px;font-size:1.2rem;border-radius:4px}.brand-sub{display:block;font-size:.62rem;letter-spacing:.18em;color:var(--muted);margin-top:7px}nav{display:flex;gap:22px;margin-left:auto}nav a{font-size:.85rem;padding:12px 0}.header-actions{display:flex;gap:14px;align-items:center}.language{font-family:var(--mono);font-size:.8rem;min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:12px 22px;background:var(--green);color:#081610;border:1px solid var(--green);border-radius:4px;font-size:.9rem;font-weight:650;line-height:1.4}.button:hover{background:#91ffbe;color:#081610}.button.small{font-size:.78rem;min-height:44px;padding:10px 14px;gap:8px}.button.secondary{background:transparent;border-color:var(--line);color:var(--text)}.button.secondary:hover{border-color:var(--green);color:var(--green)}.hero{padding-block:88px 64px;display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;position:relative}.hero:before{content:'';position:absolute;inset:0 -30px;z-index:-1;background-image:linear-gradient(#6ad9f207 1px,transparent 1px),linear-gradient(90deg,#6ad9f207 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(#000,transparent)}.hero .lead{font-size:1.08rem;max-width:580px;margin-top:26px}.welcome{font-size:.82rem;display:flex;align-items:center;gap:10px;margin:22px 0}.dot{width:6px;height:6px;flex-shrink:0;border-radius:100%;background:var(--green);box-shadow:0 0 12px #63f7a450}.actions{display:flex;gap:12px;flex-wrap:wrap}.deadline{font-size:.75rem;margin:14px 0 0}.terminal{border:1px solid #39584e;border-radius:8px;background:#0b151b;box-shadow:0 25px 85px #0004;overflow:hidden}.terminal-bar{display:flex;align-items:center;gap:20px;min-height:44px;padding:10px 16px;border-bottom:1px solid var(--line);background:#132127;font-family:var(--mono);font-size:.63rem;color:var(--muted)}.lights{color:#739388;font-size:10px;white-space:nowrap}.terminal-body{padding:24px;font-family:var(--mono)}.command{font-size:.85rem;color:var(--text);margin-bottom:24px}.command span,.terminal-foot>span{color:var(--green)}.terminal-line{display:grid;grid-template-columns:105px 1fr;gap:14px;font-size:.73rem;margin:13px 0;line-height:1.5}.terminal-line>span{color:#87a49a}.terminal-line strong{font-weight:400;color:var(--text)}.terminal-art{height:208px;position:relative;display:grid;place-items:center;margin:14px 0;background:radial-gradient(ellipse,#63f7a409,transparent 67%)}.orbit{position:absolute;border:1px solid #31594a;border-radius:50%;width:170px;height:170px}.orbit.outer{width:220px;height:170px;transform:rotate(-28deg);border-style:dashed}.orbit.inner{width:160px;height:160px;border-color:#6ad9f236}.core{width:94px;height:94px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--green);background:#101f20;border-radius:16px;font-size:2rem;color:var(--green);line-height:1.2;box-shadow:0 0 38px #63f7a415}.core span{font-size:.65rem;letter-spacing:.25em;color:var(--muted);margin-top:5px}.node{position:absolute;background:#0b151b;border:1px solid #32534a;padding:3px 9px;font-size:.55rem;letter-spacing:.1em;color:var(--cyan)}.n1{left:7%;top:30%}.n2{right:5%;top:20%}.n3{bottom:4%;left:40%}.terminal-foot{font-size:.67rem;margin:10px 0 0;padding-top:16px;border-top:1px dashed var(--line)}.cursor{opacity:.7}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding:26px 0}.stats>div{display:flex;align-items:center;gap:19px;padding:0 30px;border-right:1px solid var(--line)}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{font:2.1rem var(--mono);color:var(--green)}.stats span{font-size:.84rem;color:var(--muted);max-width:170px}.section{padding-block:100px}.section-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:end;margin-bottom:42px}.section-heading p{max-width:470px;margin:0;font-size:.98rem}.goals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.goal{padding:25px 0;border-top:1px solid var(--line)}.index{color:var(--green);font-size:.77rem}.goal h3{margin:22px 0 14px}.goal p,.audience p,.resource p,.help-grid p{font-size:.9rem;line-height:1.7}.band{background:#0d171d;border-block:1px solid #1d3037}.audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:38px 0 25px}.audience{padding:30px;border:1px solid var(--line);background:#101c23;display:flex;flex-direction:column;border-radius:6px}.audience h3{font-size:1.6rem;margin:20px 0 16px}.audience p{flex:1}.text-link{font-size:.83rem;color:var(--green);display:inline-flex;align-items:center;gap:12px;min-height:44px}.text-link:hover{text-decoration:underline}.small-note{font-size:.8rem;max-width:960px;line-height:1.8}.calendar-note{font-size:.8rem;color:var(--cyan);border-left:2px solid var(--cyan);padding-left:16px;margin-bottom:30px}.path-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:65px;align-items:start}.stage{border-bottom:1px solid var(--line)}.stage:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.stage summary{display:grid;grid-template-columns:34px 1fr 20px;gap:17px;padding:23px 0;align-items:start}.stage summary:hover strong{color:var(--green)}.step{font: .78rem var(--mono);color:var(--green);padding-top:3px}.date{display:block;font-size:.67rem;color:var(--cyan);letter-spacing:.04em;margin-bottom:9px}.stage strong{display:block;font-size:1.15rem;font-weight:600;line-height:1.3}.stage-sub{display:block;color:var(--muted);font-size:.8rem;margin-top:6px}.plus{color:var(--green);font-size:1.3rem;line-height:1.3}.stage[open] .plus,.faq[open] summary>span{transform:rotate(45deg)}.stage>p{padding:0 30px 24px 51px;font-size:.9rem;margin:0}.path-aside{border:1px solid var(--line);border-radius:6px;padding:30px;background:var(--panel);position:sticky;top:125px}.path-aside h3{font-size:1.5rem;margin:22px 0 16px}.path-aside p{font-size:.9rem}.path-diagram{display:flex;flex-direction:column;align-items:center;margin:25px 0;font-family:var(--mono);font-size:.8rem;gap:5px}.path-diagram span{border:1px solid #355246;padding:10px 20px;width:80%;text-align:center}.path-diagram b{color:var(--green);font-size:1rem}.starter{border:1px solid var(--line);border-radius:6px;padding:28px;margin-bottom:30px}.starter>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:25px}.starter h4{margin:10px 0}.starter p{font-size:.86rem;margin:0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.filters button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:4px;padding:10px 20px;min-height:44px;font-size:.83rem}.filters button[aria-pressed=true]{border-color:var(--green);color:var(--green);background:#63f7a40b}.resources{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.resource{padding:26px;background:var(--panel);border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column}.resource-top{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:27px}.tag{color:var(--cyan);font-size:.67rem}.resource h3{margin-bottom:16px}.resource p{flex:1}.resource[hidden]{display:none}.ethics{margin:28px 0 0;font-size:.85rem;padding:20px 24px;background:#63f7a406;border-left:2px solid var(--green);color:#c3d9cf}.ethics span{font-family:var(--mono);color:var(--green);margin-right:8px}.help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.help-grid article{border-top:1px solid var(--line);padding-top:20px}.help-grid h3{margin:18px 0 14px}.help-bottom{display:flex;gap:35px;align-items:center;margin-top:32px}.help-bottom p{font-size:.8rem;max-width:630px;margin:0}.help-bottom .button{flex-shrink:0}.faq-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.faq{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;gap:25px;padding:22px 0;font-size:.98rem;font-weight:500;line-height:1.6}.faq summary span{color:var(--green);height:25px;flex-shrink:0}.faq p{font-size:.9rem;padding-bottom:18px}.contact h2{max-width:700px}.contact>p:not(.eyebrow){margin-top:20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.contact-grid article{padding:25px;border:1px solid var(--line);border-radius:6px}.contact-grid h3{margin:15px 0 8px}.contact-grid a{color:var(--cyan);font-size:.9rem;overflow-wrap:anywhere;display:inline-block;padding-block:8px}footer{border-top:1px solid var(--line);padding:40px 0 25px;display:grid;grid-template-columns:1fr 1fr;gap:20px}footer p,footer a:not(.brand){font-size:.75rem}footer p{margin-top:13px}.privacy{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px;font-size:.75rem}.privacy summary{min-height:44px;display:flex;align-items:center;text-decoration:underline}.privacy p{max-width:850px}.menu-toggle{display:none}.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{position:fixed;top:-100px;left:20px;z-index:50;padding:12px 20px;background:var(--green);color:#081610}.skip:focus{top:10px}
@media(min-width:1500px){.hero{padding-block:110px 80px}}
@media(max-width:1100px){.header-inner{gap:18px}.header-actions .button{display:none}nav{gap:18px}.hero{gap:35px}.terminal-body{padding:20px}.terminal-line{grid-template-columns:85px 1fr;font-size:.67rem}.section-heading{gap:35px}.goals,.help-grid{grid-template-columns:repeat(2,1fr)}.path-layout{gap:30px}.resources{grid-template-columns:repeat(2,1fr)}.audience{padding:24px}.faq-layout{gap:35px}}
@media(max-width:760px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.header-inner{width:calc(100% - 32px);min-height:76px;gap:12px;flex-wrap:wrap}.brand{font-size:.85rem}.brand-icon{font-size:1rem;padding:9px}.brand-sub{font-size:.54rem}.menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;min-height:44px;border:0;background:transparent;color:var(--text);font-size:.8rem}.header-actions{gap:0}.language{font-size:.75rem}nav{width:100%;order:4;display:none;margin:0;padding:0 0 20px;flex-wrap:wrap;gap:6px 24px}nav[data-open=true]{display:flex}nav a{min-height:44px}.hero{padding-block:52px 40px;grid-template-columns:1fr;gap:38px}h1{font-size:clamp(2.65rem,9.8vw,4.4rem)}.hero .lead{font-size:1rem;max-width:580px}.eyebrow{font-size:.63rem;margin-bottom:20px}.terminal{max-width:520px;width:100%}.terminal-line{grid-template-columns:95px 1fr;font-size:.75rem}.terminal-art{height:180px}.terminal-body{padding:22px}.stats{gap:12px;padding-block:22px}.stats>div{padding:0 10px;gap:5px;align-items:flex-start;flex-direction:column}.stats strong{font-size:1.6rem}.stats span{font-size:.7rem;line-height:1.5}.section{padding-block:62px}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}h2{font-size:2.15rem}.section-heading p{font-size:.94rem}.goals,.help-grid{gap:20px}.goal h3{font-size:1.15rem}.audiences{grid-template-columns:1fr;gap:16px;margin-top:28px}.audience{padding:25px}.audience h3{margin:15px 0;font-size:1.45rem}.path-layout{grid-template-columns:1fr;gap:28px}.path-aside{position:static}.path-diagram{flex-direction:row;gap:8px}.path-diagram span{width:auto;flex:1;padding:8px 4px;font-size:.65rem}.path-diagram b{transform:rotate(-90deg)}.starter{padding:22px}.starter>div{grid-template-columns:1fr;gap:20px}.starter article{display:grid;grid-template-columns:30px 1fr;gap:5px 12px}.starter .index{grid-row:1/3}.starter h4{margin:0}.starter p{grid-column:2}.resources{gap:14px}.resource{padding:20px}.resource-top{flex-wrap:wrap;gap:6px;margin-bottom:20px}.resource h3{font-size:1.14rem}.filters button{padding:10px 15px}.help-bottom{align-items:flex-start;flex-direction:column;gap:18px}.faq-layout{grid-template-columns:1fr;gap:20px}.contact-grid{grid-template-columns:1fr;gap:15px}.contact-grid article{padding:23px}footer{grid-template-columns:1fr;gap:12px}.privacy{grid-column:1}.terminal-foot{font-size:.65rem}.welcome{font-size:.76rem}.help-grid h3{font-size:1.2rem}}
@media(max-width:420px){.container{width:calc(100% - 32px)}.goals,.help-grid,.resources{grid-template-columns:1fr}.goal{padding:22px 0 0}.goal h3{margin:12px 0}.goal p{margin-bottom:0}.actions{flex-direction:column}.actions .button{width:100%}.hero .eyebrow{max-width:280px}.terminal-line{grid-template-columns:80px 1fr;gap:10px;font-size:.64rem}.terminal-body{padding:18px}.terminal-bar{gap:12px;font-size:.55rem}.stage summary{grid-template-columns:26px 1fr 16px;gap:10px}.stage>p{padding-left:36px;padding-right:16px}.stats span{font-size:.66rem}.stats>div{padding-right:6px;padding-left:6px}.header-inner{gap:6px}.menu-toggle{gap:5px}.language{min-width:40px}.brand{gap:8px}.path-aside{padding:23px}.hero{padding-top:40px}.terminal-art{height:178px}.n1{left:0}.n2{right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Let long French calendar labels wrap inside narrow grid tracks. */
.path-layout>*{min-width:0}.stage summary>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
