@font-face{font-family:'Bebas Neue';src:url('./assets/fonts/BebasNeue-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('./assets/fonts/Inter-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:dark;--ink:#061225;--navy:#09182c;--blue:#2a91ff;--ice:#82bbf9;--white:#f5f8fd;--muted:#99a9bc;--line:rgba(143,177,211,.18);font-family:Inter,Arial,sans-serif;color:var(--white);background:var(--ink);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,dialog:focus-visible,[tabindex]:focus-visible{outline:2px solid #90c8ff;outline-offset:5px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}
.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 6.25%;background:#071326;border-bottom:1px solid var(--line);position:relative;z-index:5;gap:30px}.brand{display:flex;align-items:center;flex-shrink:0;transition:opacity .45s}.brand img{width:164px;height:auto;max-height:55px;object-fit:contain}.header-caption{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#8da1b9;flex:1;border-left:1px solid #2b394c;padding-left:26px;margin:0}
.hero{position:relative;isolation:isolate;min-height:628px;height:calc(100svh - 266px);max-height:978px;overflow:hidden;background:radial-gradient(ellipse at 69% 30%,#1b3149 0, #0b1a30 30%,#071327 67%)}.hero-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(95,134,173,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(95,134,173,.045) 1px,transparent 1px);background-size:80px 80px;pointer-events:none;mask-image:linear-gradient(#000,transparent 97%)}.hero:after{content:'';position:absolute;width:8px;height:8px;border:1px solid #3c556d;left:6.25%;top:28px;pointer-events:none}.portrait-stage{position:absolute;right:-2%;top:0;bottom:0;width:73%;z-index:0;overflow:hidden}.portrait-stage canvas,.static-portrait,.static-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portrait-stage canvas{opacity:0;transition:opacity .65s}.ready canvas{opacity:1}.static-portrait{transition:opacity .65s}.ready .static-portrait{opacity:0;pointer-events:none}.hero-copy{position:relative;z-index:2;width:49%;padding:95px 0 55px 6.25%;pointer-events:none}.hero-copy a,.hero-copy button{pointer-events:auto}.hero-eyebrow{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.22em;font-weight:500;text-transform:uppercase;color:#a8bfd9;margin:0 0 24px}.live-dot{display:inline-block;width:5px;height:5px;background:#62afff;border-radius:50%;box-shadow:0 0 12px rgba(51,156,255,.7);flex-shrink:0}h1{font-family:'Bebas Neue','Arial Narrow',sans-serif;font-size:clamp(62px,6.7vw,114px);line-height:.96;letter-spacing:.005em;font-weight:400;margin:0 0 26px}h1 span,h1 em{font-style:normal;color:var(--ice)}.hero-description{color:#a8b8cb;max-width:335px;font-size:13px;line-height:1.85;font-weight:400;margin:0 0 28px}.interaction-hint{display:flex;align-items:center;gap:12px;margin-top:27px;font-size:9px;line-height:1.8;color:#FCD34E;letter-spacing:.02em}.interaction-hint svg{width:21px;height:25px;flex-shrink:0;color:#b6cce5;stroke-width:1}.interaction-hint strong{color:#b8c8dc;font-weight:500}.model-caption{position:absolute;z-index:2;top:34px;right:6.25%;display:flex;align-items:center;gap:12px;color:#95abc3;font-size:9px;letter-spacing:.13em;text-transform:uppercase;pointer-events:none}.model-caption span+span{border-left:1px solid #3a4e65;padding-left:12px}.model-caption .live-dot{box-shadow:none;width:4px;height:4px}.view-indicator{position:absolute;z-index:2;right:4.3%;top:43%;display:flex;flex-direction:column;align-items:center;gap:15px;font-size:10px;letter-spacing:.06em;color:#677e99;pointer-events:none}.view-indicator strong{color:#a4c4e8;font-weight:500}.view-indicator i,.view-indicator .line{display:block;height:60px;width:1px;background:#34516d;font-style:normal}.view-indicator svg{width:1px;height:60px}.scan-cursor{position:absolute;z-index:4;width:80px;height:80px;pointer-events:none;opacity:0;transition:opacity .2s;color:#b5d8ff;transform:translate(-50%,-50%);filter:drop-shadow(0 0 5px rgba(20,102,184,.4))}.scan-cursor.active{opacity:1}.scan-cursor svg{width:80px;height:80px;overflow:visible}.scan-cursor circle{fill:none;stroke:currentColor;stroke-width:1}#scan-progress{stroke:#8ac5ff;stroke-width:2;transform:rotate(-90deg);transform-origin:40px 40px}.scan-cursor .crosshair{stroke:#bddbfb;stroke-width:1}.scan-cursor .scan-label{position:absolute;top:90px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:8px;letter-spacing:.15em;text-transform:uppercase;padding:4px 8px;background:rgba(4,18,36,.72);color:#b9d5f3}.site-footer{min-height:61px;padding:19px 6.25%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);background:#061124;color:#577089;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.site-footer p{margin:0}.site-footer a{color:#90a9c4;transition:color .2s}.site-footer a:hover{color:#c1e0ff}
.loader{display:none;position:fixed;inset:0;z-index:50;background:#061225;transition:background .8s;pointer-events:all}.js .loader{display:block}.loader-logo{position:absolute;width:290px;height:auto;left:50%;top:calc(50% - 90px);transform:translateX(-50%);transform-origin:0 0;will-change:transform,left,top,width;filter:drop-shadow(0 0 28px rgba(69,130,184,.1))}.loader-logo img{width:100%}.loader-details{position:absolute;width:290px;left:50%;top:calc(50% + 45px);transform:translateX(-50%);transition:opacity .25s}.load-track{height:1px;background:#23344a;width:100%;overflow:hidden}.load-track span{height:100%;display:block;background:#65affc;width:0;transition:width .25s;box-shadow:0 0 12px #4d9eff}.loader-details p,.load-status{color:#8097b2;font-size:9px;letter-spacing:.15em;line-height:1.7;text-transform:uppercase;display:flex;justify-content:space-between;gap:20px;margin:15px 0 0}.loader.departing{background:transparent;pointer-events:none}.loader.departing .loader-details{opacity:0}.loader.completed{display:none}.js:not(.loaded) .brand{visibility:hidden}
@media(min-width:1700px){.hero-copy{padding-top:115px}.hero-description{font-size:14px;max-width:365px}.hero-eyebrow{font-size:10px}.interaction-hint{font-size:10px}}
@media(max-width:1150px) and (min-width:761px){.hero-copy{width:52%;padding-top:85px}.portrait-stage{width:81%;right:-9%}.hero-description{font-size:12px;max-width:280px}.header-caption{font-size:8px;letter-spacing:.16em}.hero-eyebrow{font-size:8px;letter-spacing:.16em}.model-caption{font-size:8px}.view-indicator{right:2.8%}}
@media(max-width:760px){.site-header{height:78px;padding:0 6.15%;gap:14px}.brand img{width:130px;max-height:46px}.header-caption{display:none}.hero{height:auto;max-height:none;min-height:934px;background:radial-gradient(ellipse at 55% 49%,#182e46 0,#09192e 29%,#071327 70%)}.hero:after{display:none}.hero-grid{background-size:56px 56px}.hero-copy{padding:43px 6.15% 0;width:100%}.hero-eyebrow{font-size:8px;letter-spacing:.17em;gap:8px;margin-bottom:17px}h1{font-size:clamp(53px,15.9vw,76px);line-height:.94;margin-bottom:17px;max-width:420px}.hero-description{font-size:11px;line-height:1.75;max-width:282px;margin-bottom:19px}.interaction-hint{position:relative;left:auto;top:auto;max-width:310px;margin:18px 0 0;font-size:11px;gap:9px}.interaction-hint svg{width:18px;height:21px}.portrait-stage{top:377px;bottom:0;width:140%;right:-20%}.model-caption{top:465px;right:6.15%;font-size:7px;letter-spacing:.09em;gap:7px;flex-direction:column;align-items:flex-end}.model-caption span+span{border:0;padding:0}.view-indicator{right:5%;top:595px;font-size:8px;gap:10px}.view-indicator i,.view-indicator .line{height:38px}.scan-cursor{width:65px;height:65px}.scan-cursor svg{width:65px;height:65px}.scan-cursor .scan-label{top:72px;font-size:7px}.site-footer{min-height:66px;padding:15px 6.15%;font-size:7px;letter-spacing:.08em;gap:10px;align-items:flex-start}.site-footer p{max-width:180px;line-height:1.8}.loader-logo{width:230px}.loader-details{width:230px;top:calc(50% + 25px)}.loader-details p,.load-status{font-size:8px}}
@media(max-width:359px){.hero{min-height:934px}.hero-copy{padding-top:35px}.hero-eyebrow{font-size:7px;letter-spacing:.1em}h1{font-size:53px}.model-caption{top:450px}.site-header{padding-left:5%;padding-right:5%}.brand img{width:120px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.loader-logo{will-change:auto}}
/* DOM alignment and readable controls at desktop and touch sizes. */
.skip-link{position:fixed;top:10px;left:16px;z-index:60;padding:12px 16px;color:#fff;background:#176fca;transform:translateY(-150%);font-size:13px;border:1px solid #97c8ff}
.skip-link:focus{transform:translateY(0)}
.hero-eyebrow{font-size:10px}.hero-description{font-size:16px;line-height:1.7;max-width:350px}.interaction-hint{font-size:11px;line-height:1.65}.interaction-hint p{margin:0}.header-caption{font-size:10px}.model-caption{font-size:11px;gap:13px;align-items:center}.model-caption>div{display:grid;gap:6px}.model-caption span+span{border:0;padding:0}.model-caption .eyebrow{color:#7e98b5;font-size:9px;letter-spacing:.15em}.model-caption .caption-line{width:28px;height:1px;background:#4d6b89;display:block}.model-caption .caption-separator{padding:0 7px;color:#496681}.view-indicator{font-size:11px}.view-indicator .indicator-line{display:block;width:1px;height:60px;background:linear-gradient(#567fa8,#203952)}.view-indicator span:first-child{color:#b8d8f8}.site-footer{font-size:10px;letter-spacing:.08em}.footer-divider{margin:0 10px;color:#3e5876}
.scan-cursor .scan-track{stroke:rgba(154,196,235,.3);stroke-width:1}#scan-progress{stroke:#8ac5ff;stroke-width:2;stroke-dasharray:232.5;stroke-dashoffset:232.5;transform:rotate(-90deg);transform-origin:40px 40px}.scan-cursor .crosshair{position:absolute;left:50%;top:50%;width:13px;height:13px;transform:translate(-50%,-50%);background:transparent}.scan-cursor .crosshair:before,.scan-cursor .crosshair:after{content:'';position:absolute;background:#c5e1ff}.scan-cursor .crosshair:before{width:13px;height:1px;top:6px;left:0}.scan-cursor .crosshair:after{width:1px;height:13px;left:6px;top:0}.scan-cursor .scan-label{font-size:9px}.stage-note{position:absolute;z-index:4;right:6.25%;bottom:28px;max-width:330px;padding:12px 16px;background:rgba(8,26,46,.91);border:1px solid #3b6489;color:#b5d2ef;font-size:12px;line-height:1.6;box-shadow:0 10px 30px #0003}.noscript-notice{margin:0;padding:18px 6.25%;font-size:13px;line-height:1.6;color:#c2d8ee;background:#172f49;border-top:1px solid #375675}.loader-details>.eyebrow{display:block;font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#a2b8d0;line-height:1.7;margin-bottom:20px}.text-button{padding:9px 0;background:transparent;color:#91c7ff;border-bottom:1px solid #3d6791;font-size:12px;margin-top:10px}.text-button:hover{color:#e0f1ff;border-color:#88bff5}
@media(min-width:1700px){.hero-description{font-size:17px;max-width:380px}}
@media(max-width:1150px) and (min-width:761px){.hero-description{font-size:15px;max-width:300px}.header-caption{font-size:9px}.model-caption{font-size:10px}}
@media(max-width:760px){.hero{min-height:934px}.hero-copy{padding-top:43px}.hero-eyebrow{font-size:10px;letter-spacing:.13em}.hero-description{font-size:14.5px;line-height:1.65;max-width:300px;margin-bottom:20px}.portrait-stage{top:377px;bottom:0}.interaction-hint{display:flex}.model-caption{top:421px;right:6.15%;font-size:10px;align-items:flex-end;gap:6px}.model-caption .caption-line{display:none}.model-caption>div{gap:5px;text-align:right}.model-caption .eyebrow{font-size:8px;letter-spacing:.1em}.view-indicator{top:660px;font-size:10px}.view-indicator .indicator-line{height:38px}.site-footer{font-size:8px;letter-spacing:.035em;flex-wrap:wrap;gap:10px}.footer-divider{margin:0 6px}.stage-note{right:6.15%;left:6.15%;max-width:none;bottom:24px;font-size:11px}.scan-cursor .scan-label{font-size:8px}.loader-details>.eyebrow{font-size:8px}.noscript-notice{font-size:12px}}
@media(max-width:359px){.hero{min-height:934px}.hero-eyebrow{font-size:9px}.hero-description{font-size:14px;max-width:280px}.site-footer{font-size:8px}}
@media(min-width:761px) and (max-width:1000px){.interaction-hint{font-size:10px}}
.skip-link{opacity:0;pointer-events:none}.skip-link:focus{opacity:1;pointer-events:auto}

/* Native page scrolling remains available over the tap-to-inspect portrait. */
.portrait-stage{bottom:0;touch-action:pan-y pinch-zoom;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.portrait-stage img,.portrait-stage canvas{-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}
.portrait-stage .static-portrait{pointer-events:none}

@media(min-width:761px) and (max-width:1000px){.hero{min-height:562px;height:calc(100svh - 332px);max-height:912px}.portrait-stage{bottom:0}}
@media(max-width:760px){
  .portrait-stage{bottom:0}
  
}


.portrait-stage:focus-visible{outline:2px solid #72b8ff;outline-offset:-5px}

@media(min-width:1700px) and (max-height:900px){.hero-copy{padding-top:85px}}

/* Fade artwork in viewport coordinates so the shared hero background stays continuous. */
.portrait-artwork{position:absolute;inset:0}
.portrait-artwork{
  --portrait-fade:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 11%,#000 34%),linear-gradient(0deg,transparent 0%,rgba(0,0,0,.7) 3%,#000 13%);
  -webkit-mask-image:var(--portrait-fade);
  mask-image:var(--portrait-fade);
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
  mask-mode:alpha;
}
@media(max-width:760px){
  .portrait-artwork{
    --portrait-fade:linear-gradient(0deg,transparent 0%,rgba(0,0,0,.7) 3%,#000 13%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 5%,#000 19%);
  }
}

/* DOXA editorial sections. These rules are scoped below the interactive hero. */
.story-section{position:relative;padding:108px 0;background:#071327;border-top:1px solid rgba(128,164,201,.13)}
.story-shell{width:87.5%;max-width:1600px;margin:0 auto}
.section-kicker{display:flex;align-items:center;gap:17px;margin:0 0 43px;color:#6d89a7;font-size:9px;line-height:1.5;font-weight:500;letter-spacing:.17em;text-transform:uppercase}
.section-kicker>span:first-child{color:#9bb7d5}
.kicker-rule{width:42px;height:1px;background:#385b7d;flex-shrink:0}
.story-title{margin:0;font-family:'Bebas Neue','Arial Narrow',sans-serif;font-size:clamp(50px,4.8vw,82px);font-weight:400;line-height:1.01;letter-spacing:.005em;color:#f1f6fc}
.story-title em{font-style:normal;color:#82bbf9}
.story-copy{margin:0;font-size:15px;line-height:1.85;color:#94aac2;font-weight:400}
.story-lead{margin:0 0 23px;font-size:20px;line-height:1.65;letter-spacing:-.015em;color:#d1dfef;font-weight:400}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}
.intro-copy{max-width:560px;padding-top:3px}
.intro-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:67px;padding-top:31px;border-top:1px solid rgba(129,166,203,.19)}
.intro-principles p{display:grid;grid-template-columns:17px 1fr;column-gap:11px;row-gap:9px;margin:0}
.principle-mark{grid-row:1/3;color:#5b9fe1;font-size:18px;line-height:20px;font-weight:300}
.intro-principles strong{font-size:14px;line-height:1.4;font-weight:500;color:#c3d5e8;letter-spacing:-.015em}
.intro-principles p>span:last-child{font-size:12px;line-height:1.65;color:#728ca7}
.anatomy-story{background:linear-gradient(135deg,#0b1c31,#081729 70%)}
.section-heading-row{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:end;margin-bottom:48px}
.section-heading-row>.story-copy{max-width:465px;padding-bottom:3px}
.anatomy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.anatomy-figure{margin:0;min-width:0}
.anatomy-image{position:relative;isolation:isolate;aspect-ratio:1/1.06;max-height:490px;overflow:hidden;border:1px solid rgba(129,166,203,.22);background:radial-gradient(ellipse at 50% 38%,#1a334d,#10253d 51%,#0c1c30 92%)}
.anatomy-image:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(124,167,207,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(124,167,207,.035) 1px,transparent 1px);background-size:52px 52px}
.anatomy-image img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;mask-image:linear-gradient(0deg,transparent,#000 14%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 14%)}
.image-index{position:absolute;left:20px;top:19px;z-index:1;font-size:8px;font-weight:500;letter-spacing:.15em;line-height:1.5;color:#9fbad5}
.anatomy-figure figcaption{padding:24px 4px 0 0}
.anatomy-figure h3{margin:0 0 10px;font-size:19px;line-height:1.35;font-weight:500;letter-spacing:-.025em;color:#dce9f7}
.anatomy-figure figcaption p{margin:0;max-width:330px;font-size:13px;line-height:1.75;color:#819bb6}
.anatomy-footnote{display:flex;align-items:center;gap:9px;margin:31px 0 0;font-size:10px;line-height:1.65;letter-spacing:.025em;color:#6a86a3}
.anatomy-footnote .live-dot{height:4px;width:4px;box-shadow:none;opacity:.75}
.purpose-story{background:#071327}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}
.purpose-intro .story-title{font-size:clamp(47px,4.3vw,74px);margin-bottom:28px}
.purpose-intro .section-kicker{margin-bottom:30px}
.purpose-intro>.story-copy{max-width:445px}
.story-text-link{display:inline-flex;align-items:center;gap:29px;min-height:44px;margin-top:26px;padding:8px 0;border-bottom:1px solid #3d6892;font-size:12px;line-height:1.5;color:#add1f6;transition:color .2s,border-color .2s}
.story-text-link:hover{color:#edf7ff;border-color:#b0d8ff}
.story-text-link span{font-size:17px;font-weight:400}
.purpose-list{list-style:none;margin:0;padding:0}
.purpose-list li{display:grid;grid-template-columns:33px 1fr;gap:20px;padding:29px 0;border-top:1px solid rgba(129,166,203,.22)}
.purpose-list li:first-child{padding-top:25px}
.purpose-list li:last-child{border-bottom:1px solid rgba(129,166,203,.22);padding-bottom:30px}
.purpose-number{font-family:'Bebas Neue',sans-serif;font-size:27px;line-height:1.05;font-weight:400;color:#537fa9}
.purpose-list h3{margin:0 0 10px;font-size:17px;line-height:1.45;font-weight:500;letter-spacing:-.02em;color:#c6d9ec}
.purpose-list p{margin:0;max-width:420px;font-size:14px;line-height:1.8;color:#819ab5}
.story-close{padding:75px 0;background:radial-gradient(ellipse at 86% 0,rgba(26,75,124,.24),transparent 65%),#0b1c30}
.closing-grid{display:flex;justify-content:space-between;align-items:center;gap:42px}
.story-close .section-kicker{margin-bottom:22px;font-size:9px}
.story-close .story-title{font-size:clamp(44px,4.2vw,72px);margin-bottom:15px}
.story-close .story-copy{font-size:14px;color:#90acc7}
.story-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;min-height:53px;flex-shrink:0;padding:0 23px;background:#147de0;border:1px solid #3796ed;color:#f5faff;font-size:12px;font-weight:500;letter-spacing:.02em;transition:background .2s,border-color .2s}
.story-cta span{font-size:19px;font-weight:400}
.story-cta:hover{background:#258fed;border-color:#75b8f5}
@media(min-width:1700px){.story-section{padding-top:120px;padding-bottom:120px}.story-lead{font-size:22px}.story-copy{font-size:16px}.anatomy-figure figcaption p{font-size:14px}.purpose-list p{font-size:15px}.purpose-list h3{font-size:19px}.purpose-list li{padding-top:32px;padding-bottom:32px}.story-close{padding-top:87px;padding-bottom:87px}}
@media(min-width:761px) and (max-width:1050px){.story-section{padding-top:82px;padding-bottom:82px}.section-kicker{margin-bottom:34px;font-size:8px;gap:13px;letter-spacing:.12em}.intro-grid,.section-heading-row,.purpose-grid{gap:6%}.story-title{font-size:54px}.story-lead{font-size:17px}.story-copy{font-size:13px;line-height:1.8}.intro-principles{gap:24px;margin-top:46px;padding-top:27px}.intro-principles p{column-gap:7px;grid-template-columns:13px 1fr}.intro-principles strong{font-size:12px}.intro-principles p>span:last-child{font-size:11px}.anatomy-gallery{gap:17px}.anatomy-image{aspect-ratio:1/1.22}.image-index{left:12px;top:14px;font-size:7px;letter-spacing:.08em}.anatomy-figure h3{font-size:16px}.anatomy-figure figcaption{padding-top:20px}.anatomy-figure figcaption p{font-size:12px}.purpose-intro .story-title{font-size:45px}.purpose-list li{gap:13px;grid-template-columns:26px 1fr;padding:23px 0}.purpose-list h3{font-size:15px}.purpose-list p{font-size:12px}.purpose-number{font-size:25px}.story-close{padding-top:62px;padding-bottom:62px}.story-close .story-title{font-size:43px}.story-cta{min-height:50px;padding:0 17px;gap:22px;font-size:11px}.closing-grid{gap:22px}}
@media(max-width:760px){
  .story-section{padding:66px 0}
  .story-shell{width:87.7%}
  .section-kicker{font-size:8px;letter-spacing:.115em;gap:10px;margin-bottom:30px;flex-wrap:wrap;row-gap:7px}
  .kicker-rule{width:23px}
  .story-title{font-size:clamp(43px,12vw,68px);line-height:1.01}
  .intro-grid,.section-heading-row,.purpose-grid{grid-template-columns:1fr;gap:27px}
  .intro-copy{padding-top:0;max-width:520px}
  .story-lead{font-size:17px;line-height:1.65;margin-bottom:20px}
  .story-copy{font-size:14px;line-height:1.8}
  .intro-principles{grid-template-columns:1fr;gap:0;margin-top:36px;padding-top:0}
  .intro-principles p{grid-template-columns:17px 1fr;column-gap:10px;row-gap:6px;padding:21px 0;border-bottom:1px solid rgba(129,166,203,.13)}
  .intro-principles strong{font-size:14px}
  .intro-principles p>span:last-child{font-size:12px}
  .section-heading-row{align-items:start;margin-bottom:34px}
  .section-heading-row>.story-copy{max-width:490px;padding:0}
  .anatomy-gallery{grid-template-columns:1fr;gap:35px}
  .anatomy-image{aspect-ratio:1.05/1;max-height:445px}
  .image-index{font-size:8px;top:18px;left:18px}
  .anatomy-figure figcaption{padding-top:19px}
  .anatomy-figure h3{font-size:18px;margin-bottom:8px}
  .anatomy-figure figcaption p{font-size:13px;max-width:420px}
  .anatomy-footnote{font-size:9px;margin-top:28px;align-items:flex-start}
  .anatomy-footnote .live-dot{margin-top:6px}
  .purpose-grid{gap:38px}
  .purpose-intro .section-kicker{margin-bottom:28px}
  .purpose-intro .story-title{font-size:clamp(41px,11.2vw,64px);margin-bottom:24px}
  .purpose-intro>.story-copy{max-width:490px}
  .story-text-link{margin-top:18px;font-size:12px;gap:23px}
  .purpose-list li{grid-template-columns:28px 1fr;gap:17px;padding:24px 0}
  .purpose-list li:first-child{padding-top:24px}
  .purpose-list li:last-child{padding-bottom:24px}
  .purpose-number{font-size:26px}
  .purpose-list h3{font-size:16px;margin-bottom:8px}
  .purpose-list p{font-size:13px;line-height:1.8;max-width:470px}
  .story-close{padding:59px 0 62px}
  .closing-grid{display:grid;grid-template-columns:1fr;gap:27px;align-items:start}
  .story-close .section-kicker{font-size:8px;margin-bottom:22px}
  .story-close .story-title{font-size:clamp(39px,10.2vw,60px);margin-bottom:15px}
  .story-close .story-copy{font-size:13px}
  .story-cta{width:100%;max-width:335px;min-height:52px;padding:0 20px;font-size:12px}
}
@media(max-width:359px){.story-section{padding-top:56px;padding-bottom:56px}.section-kicker{font-size:7px;letter-spacing:.07em;gap:8px}.kicker-rule{width:17px}.story-title{font-size:42px}.story-lead{font-size:16px}.story-copy{font-size:13px}.purpose-intro .story-title{font-size:39px}.story-close .story-title{font-size:36px}}
.anatomy-figure:nth-child(2) .anatomy-image{background:radial-gradient(ellipse at 50% 38%,#536f88,#35526d 56%,#203b56 100%)}

/* Character selection stays attached to the interactive portrait, outside its mask. */
.character-selector{position:absolute;left:50%;bottom:20px;z-index:6;transform:translateX(-50%);display:flex;align-items:stretch;gap:4px;width:max-content;max-width:calc(100% - 32px);padding:5px;background:rgba(6,20,38,.9);border:1px solid rgba(133,177,218,.34);border-radius:14px;box-shadow:0 8px 25px rgba(0,0,0,.25),inset 0 1px 0 rgba(169,207,243,.04);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:auto;touch-action:manipulation}
.character-selector button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:108px;min-height:50px;margin:0;padding:8px 13px;border:1px solid transparent;border-radius:9px;background:transparent;color:#bed0e2;font-size:12px;line-height:1.2;font-weight:500;letter-spacing:.02em;text-align:center;transition:background .2s,border-color .2s,color .2s}
.character-selector button small{font-size:10px;line-height:1.2;font-weight:400;letter-spacing:.025em;color:#a4bed7}
.character-selector button[aria-pressed=true]{background:linear-gradient(145deg,#1e83d4,#1466aa);border-color:#4897d7;color:#f4faff;box-shadow:inset 0 1px 0 rgba(213,238,255,.1)}
.character-selector button[aria-pressed=true] small{color:#d2e9fb}
.character-selector button:not(:disabled):hover{background:#298cd5;border-color:#77baf0;color:#fff}
.character-selector button:disabled{opacity:1;color:#9bafc5;cursor:default}
.character-selector button:disabled small{color:#8a9fb6}
.character-selector button:focus-visible{outline:2px solid #acd8ff;outline-offset:2px}
@media(max-width:359px){.character-selector button{min-width:102px}}

/* Keep loading feedback clear of the portrait selector. */
.stage-note{bottom:96px}
.character-selector button[aria-busy=true]{border-color:#77baf0;background:#173d60}
