:root{
  color-scheme:dark;
  --bg:#071219;
  --panel:#0d2028;
  --text:#edf4ef;
  --muted:#afc1c0;
  --line:#29424a;
  --cyan:#a8e3df;
  --gold:#e5b986;
  --mint:#b9d4b8;
  --serif:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--sans);overflow-x:hidden}
body::before{content:"";position:absolute;inset:0 0 auto;height:760px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 55% 70% at 82% 22%,#12353b 0%,transparent 73%),linear-gradient(180deg,#0a1c24 0%,var(--bg) 100%)}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
button:disabled{cursor:not-allowed}
::selection{background:#87d9d1;color:#071219}
.skip-link{position:absolute;left:16px;top:-100px;background:var(--gold);color:var(--bg);padding:9px 14px;z-index:20;border-radius:4px}
.skip-link:focus{top:12px}
.site-wrap{max-width:1600px;margin:auto;padding:0 clamp(24px,5vw,92px)}
.site-header{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff1a}
.brand{display:inline-flex;align-items:center;gap:15px;flex-shrink:0}
.brand-mark{position:relative;width:32px;height:32px;border:1px solid #82b5b4;border-radius:50%;transform:rotate(-18deg)}
.brand-mark::after{content:"";position:absolute;inset:7px;border:1px solid #82b5b4;border-radius:50%}
.brand-mark span{width:4px;height:4px;background:var(--gold);border-radius:50%;position:absolute;z-index:2}
.brand-mark span:nth-child(1){left:3px;top:4px}.brand-mark span:nth-child(2){right:1px;top:9px}.brand-mark span:nth-child(3){left:11px;bottom:-2px}.brand-mark span:nth-child(4){right:9px;top:11px}
.brand-name{font-weight:800;font-size:1.16rem;letter-spacing:.03em;white-space:nowrap}.brand-name span{font-weight:500;letter-spacing:.18em;color:var(--muted);padding-left:6px;font-size:.76em}
.main-nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:clamp(13px,2.5vw,36px);font-size:.82rem;font-weight:650;color:#c2d1d0}
.main-nav a:hover,.footer-links a:hover{color:var(--gold)}
.main-nav .nav-accent{border:1px solid #8dc4c25c;border-radius:5px;padding:12px 16px;color:var(--text);white-space:nowrap}
.main-nav .nav-accent:hover{border-color:var(--gold)}
.main-nav .nav-parent{color:var(--gold);white-space:nowrap}.main-nav .nav-parent:hover{color:#f6d9b4;text-decoration:underline;text-underline-offset:4px}
.nav-accent span{margin-left:10px;color:var(--gold)}
.hero{min-height:650px;padding:clamp(76px,10vw,150px) 0 clamp(65px,8vw,120px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);gap:clamp(25px,5vw,80px);align-items:center}
.hero-copy{position:relative;z-index:2}
.eyebrow,.section-label,.figure-topline,.figure-bottomline,.figure-disclaimer,.card-index,.card-kicker,.card-footer,.hero-footnote{font-family:var(--mono)}
.eyebrow{color:var(--cyan);font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin:0 0 27px}
.eyebrow-line{width:30px;height:1px;background:var(--cyan);display:block}
h1,h2,h3,p,figure{margin-top:0}
h1,h2,h3{font-weight:400}
h1{font-family:var(--serif);font-size:clamp(3.5rem,6.8vw,7rem);line-height:1.035;letter-spacing:-.065em;max-width:900px;margin-bottom:30px}
h1 em,h2 em{color:var(--gold);font-weight:400}
.hero-intro{max-width:610px;color:#c5d3d1;font-size:clamp(1rem,1.4vw,1.14rem);line-height:1.78;margin-bottom:34px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px;border-radius:4px;font-weight:700;font-size:.84rem;min-height:52px;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.button:hover{transform:translateY(-2px)}
.button span{font-size:1rem}
.button-primary{color:#071719;background:var(--cyan);border:1px solid var(--cyan)}.button-primary:hover{background:#d0f7ef}
.button-ghost{border:1px solid #78949880;background:#07121955;color:var(--text)}.button-ghost:hover{border-color:var(--gold)}
.hero-footnote{margin-top:30px;display:flex;gap:10px;align-items:center;color:var(--muted);font-size:.68rem;line-height:1.5}
.spark{width:5px;height:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold);flex-shrink:0}
.concept-figure{position:relative;min-width:0;border:1px solid #789c9b59;border-radius:7px;background:radial-gradient(circle at 52% 50%,#15343a 0,#0b1b24 48%,#091821 82%);box-shadow:0 32px 95px #0007,0 0 0 7px #ffffff08;overflow:hidden}
.concept-figure::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.3;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:42px 42px}
.figure-topline,.figure-bottomline{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted);font-size:.67rem;letter-spacing:.11em;text-transform:uppercase}
.figure-topline{padding:21px 24px 0}.muted-divider{color:#66888d;padding:0 6px}.figure-status{color:var(--cyan);white-space:nowrap}
.concept-art{display:block;width:100%;height:auto;padding:0 12px;overflow:visible}
.relation-layer,.projection-layer{transition:opacity .65s ease,transform .8s cubic-bezier(.2,.7,.2,1);transform-origin:center}
.relation-layer{opacity:1;transform:scale(1)}.projection-layer{opacity:0;transform:scale(.87) translateY(24px)}
.relation-thread{fill:none;stroke:url(#lineGlow);stroke-width:1.4}.relation-thread.fine{stroke-width:.8;opacity:.6}
.nodes circle{fill:#a9d9d5;stroke:#d6eee5;stroke-width:1.3;filter:drop-shadow(0 0 8px #94dad1)}
.nodes .node-bright{fill:var(--gold);stroke:#f1d2a6;filter:drop-shadow(0 0 13px #dbae80)}
.pulse{fill:none;stroke:var(--gold);stroke-width:1;opacity:.28;transform-origin:center;animation:floatPulse 4.8s ease-in-out infinite}.pulse-two{animation-delay:1.3s}
.plane{fill:url(#planeGlow);stroke:#a7d2d1;stroke-width:1;opacity:.35}.plane-lines{fill:none;stroke:#90c8c9;stroke-width:1.25;opacity:.75}.projected-nodes circle{fill:var(--gold);stroke:#f5dfbc;stroke-width:1.8;filter:drop-shadow(0 0 8px #e5b986)}.record-line{fill:none;stroke:#e4ba85;stroke-width:2.5;stroke-dasharray:8 8;opacity:.85}
.concept-figure.is-projected .relation-layer{opacity:.07;transform:scale(.9)}.concept-figure.is-projected .projection-layer{opacity:1;transform:scale(1) translateY(0)}
.figure-bottomline{border-top:1px solid #ffffff18;margin:0 22px;padding:17px 0 0;letter-spacing:0;text-transform:none;font-size:.75rem;line-height:1.4}
.figure-bottomline>span{max-width:270px}.figure-toggle{background:transparent;color:var(--cyan);border:0;border-bottom:1px solid #86d5cf96;padding:4px 0;font-family:var(--mono);font-size:.69rem;white-space:nowrap}.figure-toggle:hover{color:var(--gold);border-color:var(--gold)}
.figure-disclaimer{position:relative;z-index:2;color:#93a8a8;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;margin:12px 22px 20px}
.orientation,.learning,.sequence{border-top:1px solid #a8d2ce30;padding:clamp(64px,8vw,110px) 0}
.section-label{color:var(--gold);font-size:.69rem;letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:17px;margin-bottom:32px}.section-label span{width:40px;height:1px;background:#9bb8ae65}
.orientation-grid{display:grid;grid-template-columns:1.15fr .72fr;gap:clamp(35px,7vw,115px);align-items:start}
h2{font-family:var(--serif);font-size:clamp(2.55rem,4.5vw,5rem);line-height:1.15;letter-spacing:-.045em;margin:0}
.orientation-copy{color:#c5d1d0;line-height:1.85;padding-top:8px;max-width:540px}
.orientation-copy p+p{margin-top:20px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:35px}
.section-heading .section-label{margin-bottom:20px}.section-heading>p{max-width:345px;color:var(--muted);font-size:.93rem;margin:0 0 3px}
.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.course-card{min-height:520px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #77979264;border-radius:5px;padding:clamp(24px,3vw,40px);overflow:hidden;position:relative;transition:border-color .2s ease,transform .2s ease}
.course-card:hover{border-color:var(--gold);transform:translateY(-3px)}
.course-known{background:radial-gradient(circle at 91% 21%,#223e44 0,transparent 30%),linear-gradient(143deg,#142b30,#0c1b24 68%)}
.course-proposed{background:radial-gradient(circle at 88% 15%,#48393055 0,transparent 32%),linear-gradient(143deg,#2a2926,#181e25 73%)}
.card-top,.card-footer{display:flex;justify-content:space-between;gap:15px;align-items:center}
.card-index{color:#a8c3be;font-size:.69rem;letter-spacing:.12em}
.card-symbol{font-family:var(--serif);font-size:5.5rem;line-height:1;color:#b7e3df53}.relational-symbol{color:#dfbc936e}
.card-body{max-width:480px;margin:18px 0 38px}
.card-kicker{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--cyan);margin-bottom:10px}.course-proposed .card-kicker{color:var(--gold)}
h3{font-family:var(--serif);font-size:clamp(2.25rem,3.25vw,3.65rem);letter-spacing:-.04em;line-height:1.13;margin:0 0 19px}
.card-body>p:last-child{color:#c9d7d3;line-height:1.78;max-width:450px;font-size:.95rem;margin:0}
.card-footer{border-top:1px solid #ffffff30;padding-top:23px;font-size:.71rem;letter-spacing:.06em;color:var(--muted)}
.card-footer a{font-family:var(--sans);font-size:.87rem;letter-spacing:0;font-weight:700;color:var(--text);white-space:nowrap}.card-footer a span{color:var(--gold);margin-left:5px}.card-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.dot{color:var(--gold);padding:0 4px}
.sequence-layout{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(50px,8vw,155px)}
.sequence-intro{max-width:500px;line-height:1.8;color:var(--muted);margin:23px 0 26px}
.text-link{display:inline-flex;align-items:center;gap:14px;color:var(--cyan);font-weight:700;border-bottom:1px solid #90d4cd88;padding-bottom:7px}.text-link:hover{color:var(--gold);border-color:var(--gold)}
.sequence-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.sequence-list li{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:22px 0;border-bottom:1px solid var(--line)}
.sequence-list li>span{font-family:var(--mono);font-size:.71rem;color:var(--gold);padding-top:6px}.sequence-list strong{font-family:var(--serif);font-size:1.42rem;font-weight:400}.sequence-list p{font-size:.9rem;color:var(--muted);margin:5px 0 0;line-height:1.55}
.closing{position:relative;overflow:hidden;text-align:center;border:1px solid #8db1a852;border-radius:6px;background:#11272a;padding:clamp(65px,9vw,115px) 24px;margin:24px 0 88px}
.closing-halo{pointer-events:none;position:absolute;inset:-220px -130px auto;height:540px;background:radial-gradient(ellipse at center,#426d6b66 0,transparent 60%)}
.closing>*:not(.closing-halo){position:relative}.closing .eyebrow{justify-content:center;margin-bottom:19px}.closing h2{max-width:760px;margin:0 auto 18px}.closing p:not(.eyebrow){max-width:600px;margin:0 auto 27px;color:#cbdad3;line-height:1.75}.closing .hero-actions{justify-content:center}
.site-footer{border-top:1px solid #ffffff2c;padding:50px 0 25px;display:grid;grid-template-columns:1fr 1fr;gap:32px}
.footer-brand p{color:var(--muted);font-size:.83rem;max-width:310px;margin:13px 0 0}.footer-links{display:flex;justify-content:end;align-items:flex-start;gap:20px 28px;flex-wrap:wrap;font-size:.78rem;font-weight:650;color:#c3d2ce}
.footer-base{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;border-top:1px solid #ffffff1a;padding-top:24px;color:#97acab;font-size:.72rem}
@keyframes floatPulse{50%{opacity:.5;transform:scale(1.22)}}
@media(max-width:1180px){.hero{grid-template-columns:1fr 1fr}h1{font-size:clamp(3.45rem,6vw,5.8rem)}.main-nav{gap:15px}.main-nav a:nth-child(1){display:none}}
@media(max-width:850px){.site-header{min-height:90px}.main-nav a:nth-child(3){display:none}.hero{grid-template-columns:1fr;gap:40px;padding-top:75px}.hero-copy{max-width:730px}.concept-figure{max-width:670px;width:100%;margin:auto}.orientation-grid,.sequence-layout{grid-template-columns:1fr;gap:27px}.orientation-copy{max-width:720px}.section-heading{align-items:start;flex-direction:column}.section-heading>p{max-width:640px}.course-card{min-height:480px}.card-symbol{font-size:4.1rem}}
@media(max-width:640px){.site-wrap{padding:0 20px}.site-header{align-items:flex-start;flex-direction:column;gap:12px;padding:22px 0}.main-nav{justify-content:flex-start;gap:16px}.main-nav a:nth-child(1),.main-nav a:nth-child(3){display:none}.main-nav .nav-accent{padding:6px 10px}.hero{padding:70px 0 68px;min-height:0}.hero-intro{font-size:1rem}h1{font-size:clamp(3.3rem,11vw,5rem)}.hero-actions .button{width:100%}.hero-footnote{margin-top:24px}.figure-topline{padding:15px 15px 0;font-size:.56rem}.concept-art{padding:0}.figure-bottomline{margin:0 14px;align-items:start;flex-direction:column;gap:11px}.figure-disclaimer{margin:12px 14px 16px;font-size:.55rem}.course-grid{grid-template-columns:1fr}.course-card{min-height:440px;padding:25px}.card-symbol{font-size:4.5rem}.card-footer{font-size:.62rem}.sequence-list li{padding:18px 0}.closing{margin-bottom:48px}.site-footer{grid-template-columns:1fr;gap:24px}.footer-links{justify-content:flex-start}.footer-base{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
