/* Design: editorial, native CSS. Variance 6 / motion 4 / density 2.
   Navy is explicitly required by the brand brief. Layers: words 1, centre 2,
   focus/skip link 3. No WebGL, texture, canvas, font, or third-party requests. */
:root{color-scheme:dark;--navy:#092c4e;--ink:#f5f3ec;--muted:#afc0cf;--line:rgba(201,219,232,.22);--accent:#dce9f0;--font:"Avenir Next",Avenir,"Segoe UI",sans-serif;font-family:var(--font);background:var(--navy);color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,.sphere-stage:focus-visible{outline:2px solid var(--accent);outline-offset:7px}::selection{background:#dce9f0;color:var(--navy)}.wrap{width:min(1440px,calc(100% - 112px));margin-inline:auto}.skip-link{position:absolute;top:10px;left:20px;transform:translateY(-180%);z-index:3;background:var(--ink);color:var(--navy);padding:12px}.skip-link:focus{transform:translateY(0)}
.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:block}.brand-crop{display:block;width:198px;height:62px;overflow:hidden;position:relative}.brand img{position:absolute;width:330px;height:330px;max-width:none;left:-66px;top:-134px;filter:invert(1)}nav{display:flex;align-items:center;gap:35px;font-size:14px}nav a{padding-block:12px}nav a:hover,.text-link:hover{color:var(--muted)}.nav-plan{border-bottom:1px solid #9eafbd}.nav-plan span{margin-left:22px;font-size:20px}
.intro{padding-block:77px 66px}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 22px;color:var(--muted);font-weight:500}h1,h2,p{margin-top:0}h1,h2{font-weight:400;letter-spacing:-.055em}h1{font-size:clamp(45px,5.5vw,82px);line-height:1.08;margin-bottom:28px}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.intro-bottom p{font-size:18px;line-height:1.65;color:var(--muted);margin:0}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:10px;white-space:nowrap}.text-link span{font-size:21px}.connections{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#082744}.connection-layout{display:grid;grid-template-columns:36% 64%;align-items:center;min-height:730px}.connection-copy{padding-block:56px;position:relative;z-index:2;pointer-events:none}.connection-copy a{pointer-events:auto}.connection-copy h2{font-size:clamp(52px,5.4vw,82px);line-height:1.04;margin-bottom:32px}.connection-copy>p{max-width:340px;font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:40px}.sphere-experience{min-width:0;align-self:center}.sphere-stage{height:640px;width:100%;position:relative;isolation:isolate;touch-action:pan-y;user-select:none;cursor:grab;contain:layout style;outline-offset:-4px!important}.sphere-stage.dragging{cursor:grabbing}.sphere-words{position:absolute;inset:0;visibility:hidden}.sphere-stage.ready .sphere-words{visibility:visible}.sphere-word{position:absolute;top:50%;left:50%;white-space:nowrap;font-weight:400;line-height:1.2;color:var(--accent);transform-origin:center;will-change:transform;pointer-events:none}.sphere-word.long-word{white-space:normal;width:180px;text-align:center}.sphere-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:2;width:170px}.sphere-center>span{display:block;text-transform:uppercase;font-size:13px;letter-spacing:.19em;font-weight:500}.sphere-center p{font-size:26px;line-height:1.3;letter-spacing:-.025em;margin:13px 0 0;color:var(--ink)}.sphere-toolbar{display:flex;align-items:center;justify-content:center;gap:32px;padding-block:0 34px;color:var(--muted);font-size:12px}.sphere-toolbar[hidden]{display:none}.sphere-toolbar p{margin:0}.drag-symbol{display:inline-block;margin-right:7px;font-size:20px;vertical-align:-1px}.keyboard-help{display:none}.sphere-stage:focus-visible+.sphere-toolbar .keyboard-help{display:inline}.motion-toggle{background:transparent;border:0;padding:12px 0;font-size:12px;white-space:nowrap;min-height:44px}.motion-toggle:hover{color:var(--ink)}.motion-symbol{display:inline-block;width:24px}.connection-footer{border-top:1px solid var(--line);padding-block:26px;display:flex;gap:32px;justify-content:space-between;align-items:flex-start}.connection-footer>p{font-size:14px;margin:8px 0;line-height:1.7}.connection-footer>p span{color:var(--muted)}.subjects-disclosure{width:310px;max-width:100%;flex-shrink:0}.subjects-disclosure summary{list-style:none;display:flex;gap:24px;align-items:center;justify-content:space-between;font-size:13px;min-height:44px}.subjects-disclosure summary::-webkit-details-marker{display:none}.subjects-disclosure summary span{font-size:22px;font-weight:300}.subjects-disclosure[open] summary span{transform:rotate(45deg)}.subject-list{list-style:none;padding:20px 0 6px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;font-size:14px;line-height:1.5;color:var(--muted)}.fallback-message{padding-block:20px;color:var(--muted)}
.learning-plan{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:112px 105px}.learning-plan h2{font-size:clamp(42px,4.5vw,67px);line-height:1.1;margin:0}.plan-body{padding-top:38px;max-width:490px}.plan-body p{font-size:16px;line-height:1.85;color:var(--muted)}.plan-body .plan-lead{font-size:24px;line-height:1.5;color:var(--ink);letter-spacing:-.02em;margin-bottom:24px}.plan-principles{display:flex;flex-direction:column;gap:16px;padding-top:24px;margin-top:28px;border-top:1px solid var(--line);font-size:14px}.site-footer{display:flex;align-items:center;gap:24px;padding-block:26px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.site-footer p{margin:0}.site-footer p:first-child{color:var(--ink)}.site-footer a{margin-left:auto}
@media(min-width:1600px){.sphere-stage{height:700px}.connection-layout{min-height:800px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}nav{gap:24px}.connection-layout{grid-template-columns:38% 62%;min-height:620px}.sphere-stage{height:540px}.connection-copy h2{font-size:56px}.connection-copy>p{font-size:15px;max-width:290px}.sphere-center{width:140px}.sphere-center p{font-size:22px}.sphere-center>span{font-size:11px}.learning-plan{gap:40px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:84px}.brand-crop{width:150px;height:48px}.brand img{width:250px;height:250px;left:-50px;top:-101px}nav{gap:0}nav>a:not(.nav-plan){display:none}.nav-plan{font-size:12px}.nav-plan span{margin-left:10px}.intro{padding-block:56px 42px}.intro .eyebrow{font-size:10px}.intro h1{font-size:clamp(35px,8vw,58px);margin-bottom:22px}.intro-bottom{display:block}.intro-bottom p{font-size:15px}.intro-bottom .text-link{margin-top:25px}.connection-layout{display:block;padding-top:48px;min-height:0}.connection-copy{padding:0}.connection-copy h2{font-size:clamp(44px,10vw,62px);margin-bottom:22px}.connection-copy h2 br{display:none}.connection-copy>p{max-width:440px;font-size:15px;line-height:1.85;margin-bottom:24px}.connection-copy .text-link{font-size:13px}.sphere-experience{margin-inline:-12px;margin-top:16px}.sphere-stage{height:460px;max-width:570px;margin-inline:auto}.sphere-center{width:125px}.sphere-center p{font-size:22px}.sphere-center>span{font-size:10px;letter-spacing:.14em}.sphere-word.long-word{width:130px}.sphere-toolbar{gap:20px;padding-bottom:25px}.connection-footer{display:block;padding-block:20px}.connection-footer>p{font-size:12px;margin-bottom:16px}.subjects-disclosure{width:100%}.subjects-disclosure summary{font-size:13px}.subject-list{grid-template-columns:1fr 1fr}.learning-plan{display:block;padding-block:64px}.learning-plan h2{font-size:44px}.plan-body{padding-top:32px}.plan-body .plan-lead{font-size:22px}.site-footer{gap:12px;font-size:11px}}
@media(max-width:400px){.nav-plan{max-width:137px;line-height:1.5}.nav-plan span{display:none}.sphere-stage{height:410px}.sphere-center p{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
