@charset "UTF-8";
/* THE OBSERVATORY — one object, changing perspectives. Native scroll; local imagery. */
.observatory-root { scroll-behavior:auto; }
body.observatory-home {
  --o-paper:#e7e9e4; --o-ink:#10262b; --o-deep:#081b23; --o-white:#edf0e9;
  --o-muted:#53666a; --o-aqua:#9be2d7; --o-line:#15323825;
  --o-gutter:clamp(1.4rem,4.2vw,5rem); --o-ease:cubic-bezier(.22,.8,.2,1);
  --maxw:1600px; --gutter:var(--o-gutter); --f-display:var(--f-body); background:var(--o-paper); color:var(--o-ink); overflow-x:clip;
}
body.observatory-home.is-locked { overflow:hidden; }
.observatory-home main p { color:inherit; }
.observatory-home :is(.o-voyage__note p,.o-manifesto__foot p,.o-dossier__head > p,.o-dossier details p,.o-questions details p) { color:var(--o-muted); }
.observatory-home .o-fleet__intro { color:#a7babb; }
.observatory-home .o-study p:not(.o-eyebrow),.observatory-home .o-atlas__panels p { color:#b7ceca; }
.observatory-home :is(h1,h2,h3,h4) { font-family:var(--f-body); color:inherit; font-weight:500; }
.observatory-home main a:not(.btn):not(.card):not(.nav__link) { color:inherit; }
.observatory-home main :is(a,button,summary):focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.observatory-home ::selection { background:var(--o-aqua); color:var(--o-deep); }
.observatory-home .lx-prog { display:none; }
.observatory-home .lx-head { background:var(--o-paper); border-bottom:1px solid var(--o-line); }
.observatory-home .lx-head.is-stuck { background:#e7e9e4ed; backdrop-filter:blur(20px); }
.observatory-home .lx-head__in { max-width:1600px; padding-inline:var(--o-gutter); min-height:78px; }
.observatory-home .lx-head :is(.brand__name,.brand__name b,.nav__link) { color:var(--o-ink); }
.observatory-home .lx-head .brand__name { font-family:var(--f-body); font-weight:600; letter-spacing:-.045em; font-size:1.06rem; }
.observatory-home .lx-head .brand__tag { font-size:.47rem; letter-spacing:.2em; color:var(--o-muted); }
.observatory-home .lx-head .brand__mark { width:2rem; height:2rem; }
.observatory-home .lx-head .brand__mark path[stroke="#04263C"] { stroke:var(--o-ink); }
.observatory-home .lx-head .brand__mark path[fill="#0A6FAC"] { fill:var(--o-ink); }
.observatory-home .lx-head .brand__mark path[fill="#12B5AC"] { fill:#48746e; }
.observatory-home .nav__link { font-size:.69rem; letter-spacing:.045em; }
.observatory-home .header__cta .btn { border:1px solid var(--o-ink); border-radius:0; background:transparent; color:var(--o-ink); font-size:.82rem; padding:.8rem 1rem; }
.observatory-home .header__cta .btn:is(:hover,:focus-visible) { background:var(--o-ink); color:var(--o-white); }
.observatory-home .header__cta .btn:focus-visible { outline:2px solid var(--o-ink); outline-offset:4px; }
.observatory-home .lx-burger i { background:var(--o-ink); }
.observatory-home .lx-sheet { background:var(--o-deep); }
.observatory-home.is-locked .lx-head { background:var(--o-paper); }
.o-eyebrow,.o-section-bar { font:500 .68rem/1.6 var(--f-mono); letter-spacing:.1em; text-transform:uppercase; }
.o-eyebrow { display:flex; align-items:center; gap:.7rem; }
.o-status-dot { display:inline-block; width:6px; height:6px; background:currentColor; border-radius:50%; flex:none; }
.o-edition { margin-left:auto; }
.o-line-link { display:inline-flex; align-items:center; justify-content:space-between; gap:2rem; padding-block:.8rem; border-bottom:1px solid currentColor; font-size:.88rem; font-weight:500; }
.o-line-link > span { transition:transform .5s var(--o-ease); font-size:1.2rem; }
.o-line-link:hover > span { transform:translate(3px,-3px); }
.o-cross { font-weight:300; font-size:2rem; line-height:1; }
.o-fleet__layout,.o-manifesto,.o-dossier__head,.o-atlas__layout,.o-anatomy__layout,.o-questions,.o-outro__link { container-type:inline-size; }
.o-section-bar { width:min(100%,1600px); margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.7rem var(--o-gutter); border-bottom:1px solid currentColor; }

/* One shared grid. The opening and anatomy are ordinary document sections.
   Scroll adds depth within each slot; it never pins the visitor to a viewport. */
.o-voyage { position:relative; --voyage:0; --mouse-x:0px; --mouse-y:0px; background:var(--o-paper); }
.o-voyage__stage { position:relative; width:min(100%,1600px); margin-inline:auto; container-type:inline-size; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:auto 1fr auto; padding:8rem var(--o-gutter) 0; isolation:isolate; overflow:hidden; }
.o-voyage__grid { position:absolute; inset:78px var(--o-gutter) 0; z-index:-1; background-image:linear-gradient(90deg,#55757912 1px,transparent 1px); background-size:25% 100%; }
.o-voyage__intro { position:relative; grid-column:1/-1; grid-row:1; z-index:1; }
.o-voyage__intro > .o-eyebrow { margin-bottom:2rem; }
.observatory-home .o-voyage h1 { font-size:clamp(4rem,10.3cqw,10rem); line-height:.9; letter-spacing:-.075em; color:var(--o-ink); font-weight:500; }
.o-voyage h1 > span { display:block; white-space:nowrap; }
.o-voyage h1 i { font-style:normal; color:#50716f; }
.o-voyage__note { display:flex; gap:1rem; margin-top:2rem; max-width:27%; }
.o-voyage__note p { font-size:.95rem; line-height:1.65; }
.o-voyage__note .o-line-link { margin-top:.6rem; gap:1rem; font-size:.86rem; }
.o-orbit { position:absolute; width:66%; aspect-ratio:1; left:29%; top:15%; transform:rotateX(67deg) rotateZ(-19deg); pointer-events:none; opacity:.48; }
.o-orbit__ring { position:absolute; inset:0; border:1px solid #66928e; border-radius:50%; }
.o-orbit__ring::before,.o-orbit__ring::after { content:""; position:absolute; width:10px; height:10px; border:1px solid #66928e; border-radius:50%; background:var(--o-paper); left:50%; top:-5px; }
.o-orbit__ring::after { top:auto; bottom:-5px; }
.o-orbit__ring--inner { inset:10%; border-style:dashed; opacity:.5; }
.o-orbit > span { position:absolute; left:50%; top:-4%; font:.75rem var(--f-mono); color:#58726d; }
.o-orbit > span:last-child { top:auto; bottom:-4%; }
.o-vessel { position:relative; grid-column:4/-1; grid-row:1/3; align-self:end; width:100%; margin-top:8rem; z-index:2; transform:translate3d(var(--mouse-x),calc(var(--voyage) * -32px + var(--mouse-y)),0) rotate(calc(var(--voyage) * -1.5deg)); transform-origin:center; pointer-events:none; }
.o-vessel__image { width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; filter:drop-shadow(0 22px 20px #07191b18); }
.o-vessel__registration { display:flex; justify-content:space-between; margin-inline:3%; padding-top:1rem; border-top:1px solid #6b8a8260; font:.61rem/1.6 var(--f-mono); letter-spacing:.07em; color:#526d67; }
.o-voyage__start { position:relative; grid-column:1/4; grid-row:2; align-self:end; z-index:3; padding-block:3rem; }
.o-entry { display:flex; align-items:center; gap:1rem; font-size:.95rem; line-height:1.5; font-weight:500; }
.o-entry__arrow { width:4.3rem; height:4.3rem; flex:none; display:grid; place-items:center; border:1px solid var(--o-ink); border-radius:50%; font-size:2rem; transition:transform .6s var(--o-ease),background .4s,color .4s; }
.o-entry:hover .o-entry__arrow { transform:rotate(-45deg); background:var(--o-ink); color:var(--o-white); }
.o-voyage__hint { display:flex; align-items:center; gap:1rem; margin-top:2rem; font:.58rem/1.6 var(--f-mono); letter-spacing:.08em; max-width:25ch; }
.o-voyage__hint i { font-size:1.1rem; font-style:normal; }
.o-voyage__rail { position:relative; grid-column:1/-1; grid-row:3; margin-top:2rem; min-height:4rem; border-top:1px solid #77938c55; display:flex; align-items:center; gap:2rem; font:.6rem/1.5 var(--f-mono); letter-spacing:.06em; color:#526d67; }
.o-voyage__rail > span:last-child { margin-left:auto; }
.o-voyage__rail-progress { width:8rem; height:2px; background:#5e7e7330; }
.o-voyage__rail-progress i { height:100%; display:block; background:#4d8a7f; transform:scaleX(calc(.05 + var(--voyage) * .95)); transform-origin:left; }
.o-anatomy { background:var(--o-deep); color:var(--o-white); }
.o-anatomy__layout { width:min(100%,1600px); margin-inline:auto; padding:clamp(3rem,6vw,6rem) var(--o-gutter); display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(2rem,5vw,5rem); align-items:center; }
.o-anatomy__visual { min-width:0; align-self:center; }
.o-study-vessel { position:relative; width:100%; background:radial-gradient(ellipse at 50% 65%,#244b4c55,transparent 65%); }
.o-study-vessel > img { width:100%; height:auto; transition:transform .8s var(--o-ease); }
.o-study-vessel[data-focus="1"] > img { transform:translate(1%,-1%) scale(1.02); }
.o-study-vessel[data-focus="2"] > img { transform:translate(-1%,1%); }
.o-vessel__spots { position:absolute; inset:0; }
.o-spot { position:absolute; display:flex; gap:.5rem; align-items:center; color:var(--o-white); padding:.5rem; }
.o-spot > span { width:2.6rem; height:2.6rem; border:1px solid #eff5eb88; border-radius:50%; display:grid; place-items:center; background:#0b262bdd; backdrop-filter:blur(6px); font:.7rem var(--f-mono); transition:background .3s,color .3s; }
.o-spot i { font:500 .6rem var(--f-mono); letter-spacing:.06em; text-transform:uppercase; background:#081b23ee; padding:.4rem .5rem; }
.o-spot[aria-pressed="true"] > span { background:var(--o-aqua); color:var(--o-deep); border-color:var(--o-aqua); }
.o-spot--form { left:72%; top:68%; }
.o-spot--space { left:43%; top:38%; }
.o-spot--purpose { left:15%; top:60%; }
.o-anatomy__measure { display:flex; align-items:center; gap:1.2rem; margin-top:2rem; font:.59rem var(--f-mono); letter-spacing:.05em; color:#a5beb9; }
.o-anatomy__measure i { height:1px; background:#9be2d740; flex:1; }
.o-study { min-width:0; color:var(--o-white); }
.o-study > .o-eyebrow { color:var(--o-aqua); margin-bottom:1.6rem; }
.observatory-home .o-study h2 { font-size:clamp(2.6rem,4.4vw,4.3rem); line-height:.98; letter-spacing:-.065em; }
.o-study h2 span { color:#91a9aa; }
.o-study__panels { margin-top:2rem; min-height:255px; }
.o-study__panel { padding-bottom:1rem; }
.o-study__index { font:.66rem var(--f-mono); letter-spacing:.06em; color:var(--o-aqua); }
.observatory-home .o-study h3 { font-size:1.25rem; letter-spacing:-.025em; margin-top:1rem; }
.o-study p:not(.o-eyebrow) { font-size:.95rem; line-height:1.8; margin:.8rem 0 1rem; max-width:43ch; }
.o-study .o-line-link { font-size:.83rem; }
.o-study__controls { display:flex; gap:.4rem; border-top:1px solid #9be2d740; }
.o-study__controls button { flex:1; min-height:3.5rem; font-size:.79rem; color:#a4b8b8; border-top:2px solid transparent; margin-top:-1px; }
.o-study__controls button span { font:.63rem var(--f-mono); margin-right:.35rem; }
.o-study__controls button[aria-pressed="true"] { color:var(--o-aqua); border-top-color:var(--o-aqua); }
.o-study .o-study__next { display:flex; margin-top:1rem; border-color:#9be2d740; }

/* Class index: a single changing picture, not another carousel of cards. */
.o-fleet { background:var(--o-deep); color:var(--o-white); padding-bottom:var(--o-gutter); }
.o-fleet .o-section-bar { color:#98adae; border-color:#e7e9e429; }
.o-fleet__layout { width:min(100%,1600px); margin-inline:auto; display:grid; grid-template-columns:.85fr 1.45fr; gap:clamp(2rem,5vw,5rem); padding:4.5rem var(--o-gutter) 0; }
.o-fleet__layout > * { min-width:0; }
.observatory-home .o-fleet h2 { font-size:clamp(2rem,3.1cqw,4.3rem); line-height:.97; letter-spacing:-.055em; }
.o-fleet h2 span { color:#8da9aa; }
.o-fleet__intro { color:#99afb0; font-size:.95rem; line-height:1.75; margin-top:1.4rem; }
.o-class-list { margin-top:3rem; border-top:1px solid #e7e9e42c; }
.o-class-list button { display:grid; grid-template-columns:1.7rem 1fr 1rem; column-gap:.6rem; width:100%; text-align:left; padding:1.35rem 0; border-bottom:1px solid #e7e9e42c; color:#819a9d; align-items:center; transition:color .4s,padding .5s var(--o-ease); }
.o-class-list button > span { font:.55rem var(--f-mono); }
.o-class-list button b { font-size:clamp(1.6rem,2.5vw,3rem); font-weight:400; letter-spacing:-.05em; line-height:1; }
.o-class-list button i { font-style:normal; font-size:1.3rem; opacity:.3; }
.o-class-list button small { grid-column:2/4; font-size:.77rem; line-height:1.7; max-height:0; opacity:0; overflow:hidden; transform:translateY(-5px); transition:max-height .5s var(--o-ease),opacity .5s,transform .5s,padding .5s; }
.o-class-list button[aria-pressed="true"] { color:var(--o-white); padding-left:.6rem; }
.o-class-list button[aria-pressed="true"] > span,.o-class-list button[aria-pressed="true"] i { color:var(--o-aqua); opacity:1; }
.o-class-list button[aria-pressed="true"] small { max-height:3rem; opacity:1; padding-top:.9rem; transform:none; }
.o-class-list button:hover { color:var(--o-white); }
.o-fleet__index > .o-line-link { margin-top:2rem; color:var(--o-aqua)!important; border-color:#9be2d75c; }
.o-class-stage { min-height:0; aspect-ratio:1/1.04; position:relative; align-self:stretch; }
.o-class-panel { position:relative; min-height:700px; margin-bottom:1rem; background:#0d303b; overflow:hidden; isolation:isolate; }
.o-class-panel::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,#041620eb 0%,transparent 70%),linear-gradient(180deg,#071a2333,transparent 30%); }
.o-class-panel img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.o-class-panel__number { position:absolute; top:1.2rem; left:2rem; font-size:clamp(6rem,9vw,12rem); line-height:1; font-weight:300; letter-spacing:-.08em; color:#fff8; }
.o-class-panel__caption { position:absolute; inset:auto 2.3rem 2.5rem; }
.o-class-panel__caption > span { font:.52rem var(--f-mono); letter-spacing:.12em; color:var(--o-aqua); }
.observatory-home .o-class-panel h3 { font-size:clamp(2.5rem,4.2vw,5.5rem); line-height:1.03; letter-spacing:-.065em; margin-block:1.3rem 1.7rem; color:var(--o-white); }
.o-class-panel__caption > a { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #e7e9e450; padding-top:1rem; font-size:.86rem; }
.o-class-panel__caption > a span { font-size:1.6rem; }
.o-class-stage__frame { position:absolute; inset:1rem; border:1px solid #e7e9e449; pointer-events:none; z-index:3; }
.o-class-stage__frame > span { position:absolute; top:.8rem; right:.9rem; color:var(--o-white); font:.5rem var(--f-mono); letter-spacing:.12em; }
.o-class-stage__frame > span:nth-child(2) { top:3.2rem; writing-mode:vertical-rl; }
.o-class-stage__frame i { position:absolute; left:-1px; bottom:-1px; width:16px; height:16px; border-left:2px solid var(--o-white); border-bottom:2px solid var(--o-white); }
.o-class-stage__frame i:last-child { left:auto; right:-1px; top:-1px; bottom:auto; transform:rotate(180deg); }

/* Typographic pause, asymmetric by construction. */
.o-manifesto { width:min(100%,1600px); margin-inline:auto; display:grid; grid-template-columns:.55fr 1.45fr; padding:8rem var(--o-gutter); gap:clamp(2rem,7vw,7rem); background:var(--o-paper); }
.o-manifesto__tag { align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; gap:2rem; }
.o-manifesto__tag .o-cross { font-size:4rem; font-weight:300; }
.o-manifesto__tag p { font:.62rem/1.85 var(--f-mono); letter-spacing:.08em; padding-top:1rem; border-top:1px solid var(--o-line); }
.o-manifesto__body > .o-eyebrow { color:var(--o-muted); margin-bottom:2.6rem; }
.observatory-home .o-manifesto h2 { font-size:clamp(2.5rem,5cqw,6.8rem); line-height:1.02; letter-spacing:-.065em; }
.o-manifesto h2 span { color:#69837d; }
.o-manifesto__foot { display:flex; gap:4rem; align-items:center; margin-top:3rem; }
.o-manifesto__mark { font-size:4rem; font-weight:300; letter-spacing:-.12em; white-space:nowrap; }
.o-manifesto__foot p { font-size:.98rem; line-height:1.85; max-width:39ch; color:var(--o-muted); }

/* Destination atlas: image and interface occupy separate planes. */
.o-atlas { background:#0d353e; color:var(--o-white); }
.o-atlas__layout { width:min(100%,1600px); margin-inline:auto; padding:4rem var(--o-gutter); display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(2rem,5vw,5rem); }
.o-atlas__picture { position:relative; overflow:hidden; min-width:0; }
.o-atlas__picture::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#072b37b0,transparent 60%),#06465022; pointer-events:none; }
.o-atlas__picture img { position:absolute; width:100%; height:110%; top:-5%; object-fit:cover; object-position:55% 50%; transform:translateY(var(--atlas-y,0px)) scale(var(--atlas-scale,1)); transition:object-position 1.2s var(--o-ease); }
.o-atlas__scope { position:absolute; z-index:1; inset:15% 10%; border:1px solid #e7e9e47a; border-radius:50%; aspect-ratio:1; margin:auto; }
.o-atlas__scope::before,.o-atlas__scope::after { content:""; position:absolute; inset:50% -12%; border-top:1px solid #e7e9e43b; }
.o-atlas__scope::after { inset:-12% 50%; border:0; border-left:1px solid #e7e9e43b; }
.o-atlas__scope i { position:absolute; inset:12%; border:1px dashed #e7e9e44a; border-radius:50%; }
.o-atlas__scope i:nth-child(2) { inset:38%; border-style:solid; }
.o-atlas__scope > span { position:absolute; top:-1.8rem; left:50%; font:.6rem var(--f-mono); }
.o-atlas__visual-note { position:absolute; z-index:2; bottom:1.5rem; left:2rem; font:.45rem var(--f-mono); letter-spacing:.1em; }
.o-atlas__callout { position:absolute; z-index:2; left:43%; top:54%; display:flex; align-items:center; gap:.7rem; padding:1rem; background:#e7e9e4f2; color:var(--o-ink); font:.5rem/1.6 var(--f-mono); letter-spacing:.03em; max-width:220px; }
.o-atlas__callout i { font-style:normal; font-size:1.5rem; }
.o-atlas__content { padding:0; }
.o-atlas__content > .o-eyebrow { color:var(--o-aqua); }
.observatory-home .o-atlas__intro { color:#b7ceca; max-width:38ch; font-size:.95rem; line-height:1.7; margin:-1rem 0 1.5rem; }
.observatory-home .o-atlas h2 { font-size:clamp(4rem,7.5cqw,10rem); letter-spacing:-.07em; line-height:.88; margin-block:2.5rem 3rem; }
.o-atlas h2 span { color:var(--o-aqua); }
.o-atlas__regions { display:grid; grid-template-columns:1fr 1fr; gap:.5rem; }
.o-atlas__regions button { text-align:left; font:.68rem/1.6 var(--f-mono); letter-spacing:.03em; color:#b8ceca; padding:.7rem .5rem; border:1px solid #b8ceca44; min-height:40px; transition:background .3s,color .3s; }
.o-atlas__regions button[aria-pressed="true"] { background:var(--o-aqua); color:var(--o-deep); border-color:var(--o-aqua); }
.o-atlas__panels { margin-top:1.8rem; }
.o-atlas__panels article { margin-bottom:1rem; }
.observatory-home .o-atlas h3 { font-size:1.25rem; letter-spacing:-.025em; }
.o-atlas__panels p { font-size:.95rem; line-height:1.8; color:#b7ceca; margin:.7rem 0; max-width:38ch; }
.o-atlas .o-line-link { font-size:.82rem; }
.o-atlas__all { display:flex; justify-content:space-between; gap:1rem; font:.51rem var(--f-mono); text-transform:uppercase; letter-spacing:.06em; color:#b7ceca!important; margin-top:2rem; border-top:1px solid #e7e9e42c; padding-top:1.5rem; }

/* Ownership is a compact working dossier, not a second visual sales pitch. */
.o-dossier { background:var(--o-paper); padding-bottom:6rem; }
.o-dossier .o-section-bar { border-color:var(--o-line); color:var(--o-muted); }
.o-dossier__head { width:min(100%,1600px); margin-inline:auto; display:flex; justify-content:space-between; align-items:end; gap:3rem; padding:4.5rem var(--o-gutter) 3rem; }
.observatory-home .o-dossier h2 { font-size:clamp(3rem,6cqw,8rem); letter-spacing:-.065em; line-height:.98; }
.o-dossier h2 span { color:#658077; }
.o-dossier__head > p { font-size:.78rem; color:var(--o-muted); line-height:1.85; margin-bottom:.3rem; }
.o-dossier__layout { width:min(100%,1600px); margin-inline:auto; display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(2rem,7vw,7rem); padding-inline:var(--o-gutter); align-items:start; }
.o-dossier__image { padding-top:.5rem; }
.o-dossier__image img { width:100%; height:auto; aspect-ratio:1.45; object-fit:cover; filter:saturate(.65); }
.o-dossier__image > span { display:block; font:.47rem var(--f-mono); letter-spacing:.1em; margin-top:.8rem; color:var(--o-muted); }
.o-dossier details { border-top:1px solid var(--o-line); }
.o-dossier details:last-child { border-bottom:1px solid var(--o-line); }
.o-dossier summary { display:flex; align-items:center; gap:2rem; list-style:none; cursor:pointer; padding:2rem 0; }
.o-dossier summary::-webkit-details-marker,.o-questions summary::-webkit-details-marker { display:none; }
.o-dossier summary > span { font:.6rem var(--f-mono); color:var(--o-muted); }
.observatory-home .o-dossier h3 { font-size:clamp(1.7rem,2.7vw,3.7rem); letter-spacing:-.045em; }
.o-dossier summary > i { margin-left:auto; font-size:1.7rem; font-weight:300; font-style:normal; transition:transform .35s; }
.o-dossier details[open] summary > i { transform:rotate(45deg); }
.o-dossier details > div { padding:0 2rem 2rem 3rem; }
.o-dossier details p { color:var(--o-muted); font-size:.95rem; line-height:1.85; max-width:45ch; }
.o-dossier details .o-line-link { margin-top:.8rem; font-size:.82rem; }
.o-questions { width:min(100%,1600px); margin-inline:auto; display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,8vw,8rem); padding:5rem var(--o-gutter); border-top:1px solid var(--o-line); background:var(--o-paper); }
.o-questions .o-eyebrow { color:var(--o-muted); }
.observatory-home .o-questions h2 { font-size:clamp(2.6rem,4.3vw,5.5rem); letter-spacing:-.055em; line-height:1; margin-top:1.5rem; }
.o-questions details { border-bottom:1px solid var(--o-line); }
.o-questions details:first-child { border-top:1px solid var(--o-line); }
.o-questions summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; list-style:none; cursor:pointer; padding-block:1.4rem; font-size:.93rem; }
.o-questions summary span { font-size:1.3rem; font-weight:300; transition:transform .35s; }
.o-questions details[open] summary span { transform:rotate(45deg); }
.o-questions details p { font-size:.93rem; line-height:1.8; padding:0 2rem 1.5rem 0; color:var(--o-muted); }
.o-outro { background:var(--o-aqua); padding-block:2rem 4rem; }
.o-outro > * { width:min(100%,1600px); margin-inline:auto; padding-inline:var(--o-gutter); }
.o-outro__top { display:flex; align-items:center; justify-content:space-between; gap:2rem; border-bottom:1px solid var(--o-line); padding-bottom:1.5rem; }
.o-outro__top > span { font:.55rem var(--f-mono); letter-spacing:.08em; }
.o-outro__top .o-line-link { border:0; }
.o-outro__link { display:flex; align-items:end; justify-content:space-between; margin-top:4rem; gap:2rem; }
.observatory-home .o-outro h2 { font-size:clamp(4rem,13cqw,17rem); letter-spacing:-.075em; line-height:.84; }
.o-outro__arrow { font-size:clamp(6rem,19vw,22rem); line-height:.8; font-weight:300; transition:transform .7s var(--o-ease); }
.o-outro__link:hover .o-outro__arrow { transform:translate(10px,-10px); }
.observatory-home .site-notice { background:var(--o-deep); border-color:#e7e9e42c; }
.observatory-home .lx-foot { background:var(--o-deep); padding-bottom:5.5rem; color:#a4b7b8; --lx-mist:#a4b7b8; }
.observatory-home .lx-foot h5 { color:var(--o-white); }
.observatory-home .lx-foot a:hover { color:var(--o-aqua); }
.observatory-home .lx-foot__base { font-size:.6rem; }

/* Progressive enhancement. No script: studies and class panels remain readable. */
.observatory-ready .o-study__panel:not(.is-active),.observatory-ready [data-region-panel]:not(.is-active) { display:none; }
.observatory-ready .o-class-stage { height:100%; }
.observatory-ready .o-class-panel { position:absolute; inset:0; min-height:0; margin:0; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .65s ease,visibility .65s; }
.observatory-ready .o-class-panel.is-active { opacity:1; visibility:visible; pointer-events:auto; z-index:1; }
.observatory-ready .o-class-panel img { transform:scale(1.065); transition:transform 1.3s var(--o-ease); }
.observatory-ready .o-class-panel.is-active img { transform:scale(1); }
.observatory-ready .o-class-panel__caption { transform:translateY(22px); opacity:0; transition:transform .8s var(--o-ease) .08s,opacity .65s .1s; }
.observatory-ready .o-class-panel.is-active .o-class-panel__caption { transform:none; opacity:1; }
.observatory-ready:not(.observatory-reduced) [data-o-reveal] { opacity:0; transform:translateY(32px); transition:transform 1s var(--o-ease),opacity .85s; }
.observatory-ready [data-o-reveal].is-revealed { opacity:1; transform:none; }
.observatory-ready:not(.observatory-reduced) .o-voyage__intro h1 span { animation:o-title-in 1.2s var(--o-ease) both; }
.observatory-ready:not(.observatory-reduced) .o-voyage__intro h1 span:nth-child(2) { animation-delay:.1s; }
.observatory-ready:not(.observatory-reduced) .o-vessel__image { animation:o-yacht-in 1.5s var(--o-ease) both; }
@keyframes o-title-in { from { opacity:0; transform:translateY(50px); clip-path:inset(100% 0 0); } to { opacity:1; transform:none; clip-path:inset(-10%); } }
@keyframes o-yacht-in { from { opacity:0; transform:translate(8%,-2%) rotate(3deg); } to { opacity:1; transform:none; } }

@media (max-width:1100px) {
  .o-fleet__layout { grid-template-columns:.95fr 1.2fr; gap:3rem; }
  .o-class-stage { min-height:0; aspect-ratio:3/4; }
  .o-manifesto { gap:clamp(2rem,4vw,4rem); grid-template-columns:.5fr 1.5fr; }
  .o-atlas__content { padding:0; }
  .o-atlas__regions { grid-template-columns:1fr; gap:.4rem; }
  .o-atlas__regions button { min-height:38px; }
  .o-atlas__callout { left:32%; }
}

@media (max-width:900px) {
  .observatory-home .lx-head__in { min-height:70px; }
  .o-edition { display:none; }
  .observatory-home .o-voyage h1 { font-size:10.5vw; }
  .o-voyage__note { margin-top:1.4rem; }
  .o-fleet__layout { grid-template-columns:minmax(0,1fr); padding-top:3rem; gap:2.5rem; }
  .o-fleet__index { display:grid; grid-template-columns:1fr 1fr; gap:1rem 2rem; }
  .o-fleet__intro { margin-top:0; }
  .o-class-list { grid-column:1/-1; display:flex; border-top:0; margin-top:1.5rem; overflow-x:auto; padding-bottom:.5rem; scrollbar-width:thin; }
  .o-class-list button { flex:1; min-width:120px; display:flex; flex-direction:column; align-items:start; gap:.9rem; border:0; border-top:1px solid #e7e9e435; padding:1rem .9rem!important; }
  .o-class-list button b { font-size:1.25rem; }
  .o-class-list button[aria-pressed="true"] { border-color:var(--o-aqua); }
  .o-class-list button small,.o-class-list button i { display:none; }
  .o-fleet__index > .o-line-link { grid-column:1/-1; justify-self:start; margin:0; }
  .o-class-stage { min-height:0; aspect-ratio:4/3; }
  .o-class-panel__number { font-size:7rem; }
  .o-class-panel__caption h3 { font-size:3.5rem!important; }
  .o-manifesto { padding-block:5rem; grid-template-columns:1fr; gap:3rem; }
  .o-manifesto__tag { flex-direction:row; align-items:center; }
  .o-manifesto__tag p { border:0; padding:0; text-align:right; }
  .observatory-home .o-manifesto h2 { font-size:7vw; }
  .o-manifesto__body > .o-eyebrow { margin-bottom:2rem; }
  .o-manifesto__foot { justify-content:space-between; }
  .o-atlas__layout { grid-template-columns:1fr; }
  .o-atlas__picture { min-height:0; aspect-ratio:4/3; }
  .o-atlas__scope { max-width:480px; }
  .o-atlas__content { padding:0; display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
  .o-atlas__content > .o-eyebrow { grid-column:1/-1; }
  .observatory-home .o-atlas h2 { font-size:5.5rem; margin:0; grid-row:2/4; }
  .o-atlas__regions { grid-column:2; grid-template-columns:1fr 1fr; }
  .o-atlas__panels { margin:0; }
  .o-atlas__all { grid-column:1/-1; margin-top:0; }
  .o-dossier__head { display:block; }
  .o-dossier__head > p { margin-top:1.5rem; }
  .o-dossier__layout { gap:3rem; }
  .o-dossier summary { gap:1rem; padding:1.5rem 0; }
  .o-dossier details > div { padding-left:1.8rem; padding-right:0; }
  .o-questions { gap:3rem; }
}
@media (max-width:600px) {
  .o-section-bar { font-size:.56rem; align-items:start; gap:1.5rem; padding-block:1.4rem; }
  .o-section-bar > span:last-child { max-width:120px; text-align:right; }
  .o-eyebrow { font-size:.59rem; letter-spacing:.075em; }
  .observatory-home .lx-head .brand__name { font-size:.91rem; }
  .observatory-home .lx-head .brand__tag { display:none; }
  .o-voyage__stage { display:block; padding-top:6.7rem; }
  .o-voyage__intro > .o-eyebrow { margin-bottom:1.7rem; }
  .observatory-home .o-voyage h1 { font-size:10.2vw; line-height:.96; }
  .o-voyage__note { max-width:none; margin-top:1.5rem; gap:.7rem; }
  .o-voyage__note p { font-size:.85rem; }
  .o-voyage__note .o-cross { font-size:1.7rem; }
  .o-vessel { width:calc(100% + 2.8rem); margin:0 -1.4rem; transform:translateY(calc(var(--voyage) * -12px)); }
  .o-vessel__registration { margin-inline:1.4rem; font-size:.51rem; padding-top:.6rem; }
  .o-orbit { left:-10%; top:12%; width:120%; }
  .o-voyage__start { padding-block:2rem; }
  .o-entry { font-size:.87rem; }
  .o-entry__arrow { width:3.3rem; height:3.3rem; font-size:1.5rem; }
  .o-voyage__hint,.o-voyage__rail { display:none; }
  .o-anatomy__layout { grid-template-columns:1fr; gap:2.5rem; padding-block:3rem; }
  .o-anatomy__visual { order:2; }
  .observatory-home .o-study h2 { font-size:9.4vw; }
  .o-study__panels { min-height:270px; }
  .o-spot i { display:none; }
  .o-anatomy__measure { font-size:.52rem; gap:.7rem; }
  .o-fleet { padding-bottom:1.4rem; }
  .o-fleet__index { display:block; }
  .observatory-home .o-fleet h2 { font-size:8.5vw; }
  .o-fleet__intro { margin-top:1rem; font-size:.9rem; }
  .o-class-list { margin-inline:calc(-1 * var(--o-gutter)); padding-inline:var(--o-gutter); margin-bottom:1.1rem; }
  .o-class-list button { min-width:115px; }
  .o-class-list button b { font-size:1.23rem; }
  .o-class-stage { min-height:0; aspect-ratio:3/4; }
  .o-class-panel__caption { inset:auto 1.5rem 1.6rem; }
  .o-class-panel__caption h3 { font-size:2.6rem!important; }
  .o-class-panel__caption > span { font-size:.43rem; letter-spacing:.06em; }
  .o-class-panel__caption > a { font-size:.82rem; }
  .o-class-panel__number { font-size:5.5rem; left:1.5rem; top:1.5rem; }
  .o-manifesto { padding-block:3.5rem; gap:2rem; }
  .o-manifesto__tag .o-cross { font-size:3rem; }
  .o-manifesto__tag p { font-size:.48rem; }
  .observatory-home .o-manifesto h2 { font-size:7.8vw; }
  .o-manifesto__foot { gap:1.5rem; margin-top:2rem; align-items:start; }
  .o-manifesto__mark { font-size:2.3rem; }
  .o-manifesto__foot p { font-size:.9rem; line-height:1.8; }
  .o-atlas__picture { min-height:0; aspect-ratio:1/1; }
  .o-atlas__scope { inset:15% 6%; }
  .o-atlas__callout { left:30%; font-size:.45rem; padding:.8rem; }
  .o-atlas__visual-note { left:var(--o-gutter); font-size:.4rem; }
  .o-atlas__layout { padding-block:3rem; }
  .o-atlas__content { display:block; padding:0; }
  .observatory-home .o-atlas h2 { font-size:20vw; margin-block:2rem; }
  .o-atlas__regions { grid-template-columns:1fr 1fr; }
  .o-atlas__panels { margin-top:1.8rem; min-height:195px; }
  .o-atlas__all { margin-top:1rem; }
  .o-dossier { padding-bottom:3rem; }
  .o-dossier__head { padding-top:3rem; padding-bottom:2rem; }
  .observatory-home .o-dossier h2 { font-size:9vw; }
  .o-dossier__head > p { font-size:.9rem; }
  .o-dossier__layout { grid-template-columns:1fr; gap:2rem; }
  .o-dossier__image img { aspect-ratio:1.6; }
  .observatory-home .o-dossier h3 { font-size:1.8rem; }
  .o-dossier summary { padding-block:1.5rem; }
  .o-dossier details p { font-size:.9rem; }
  .o-questions { grid-template-columns:1fr; gap:2rem; padding-block:3rem; }
  .observatory-home .o-questions h2 { font-size:11vw; }
  .o-questions summary { font-size:.86rem; }
  .o-outro { padding-top:1.4rem; padding-bottom:3rem; }
  .o-outro__top { gap:1rem; align-items:start; }
  .o-outro__top > span { font-size:.45rem; max-width:110px; line-height:1.6; }
  .o-outro__top .o-line-link { padding:0; font-size:.82rem; gap:1rem; }
  .o-outro__link { margin-top:3rem; gap:.5rem; }
  .observatory-home .o-outro h2 { font-size:16vw; }
  .o-outro__arrow { font-size:18vw; }
}
/* A single interactive opening: one stable vessel, short explanations and water.
   Hotspots reveal useful context without moving the vessel or document layout. */
.o-voyage__stage { padding-top:7.5rem; }
.observatory-home .o-voyage h1 { font-size:clamp(4rem,9.8cqw,9.5rem); }
.o-voyage__note { max-width:29%; }
.o-vessel { grid-column:4/-1; grid-row:1/3; width:90%; margin-top:5.5rem; justify-self:center; align-self:center; pointer-events:auto; transform:none; }
.o-vessel__rig { position:relative; }
.o-ocean { position:absolute; z-index:0; pointer-events:none; left:25%; right:var(--o-gutter); top:38%; width:auto; aspect-ratio:2; background:radial-gradient(ellipse at 50% 50%,#4d8d86b3 0%,#79aaa466 43%,transparent 69%); }
.o-ocean canvas { width:100%; height:100%; display:block; }
.o-ocean:has(canvas[data-ocean="ready"]) { background:none; }
.o-vessel__image { user-select:none; -webkit-user-drag:none; transform:scaleX(-1); }
.o-vessel__spots { pointer-events:none; }
.o-spot { pointer-events:auto; cursor:pointer; }
.o-spot > span { width:2.75rem; height:2.75rem; font-size:.78rem; box-shadow:0 0 0 6px #e7e9e433; }
.o-spot i { font-size:.7rem; }
.o-spot[aria-pressed="true"] > span { box-shadow:0 0 0 8px #9be2d733; }
/* Mirror the photo and the circle anchors, never the readable control labels. */
.o-spot--form { left:calc(25% - 3.75rem); top:68%; }
.o-spot--space { left:calc(54% - 3.75rem); top:42%; }
.o-spot--purpose { left:calc(80% - 3.75rem); top:58%; }
.o-vessel__registration { font-size:.65rem; }
.o-hero-study { position:relative; grid-column:1/4; grid-row:2; align-self:end; z-index:3; padding-block:1.5rem 2rem; color:var(--o-ink); }
.o-hero-study .o-study__controls { border-color:#10262b40; gap:0; }
.o-hero-study .o-study__controls button { font-size:.8rem; color:var(--o-muted); min-height:3.5rem; }
.o-hero-study .o-study__controls button span { display:block; font-size:.65rem; margin:0 0 .3rem; }
.o-hero-study .o-study__controls button[aria-pressed="true"] { color:var(--o-ink); border-color:var(--o-ink); }
.o-hero-study .o-study__panels { margin-top:1.4rem; min-height:205px; }
.observatory-home .o-hero-study h2 { font-size:clamp(1.6rem,2cqw,2rem); line-height:1.08; letter-spacing:-.045em; max-width:14ch; }
.observatory-home .o-hero-study p:not(.o-eyebrow) { color:var(--o-muted); font-size:.91rem; line-height:1.65; margin:.9rem 0; }
.o-hero-study .o-line-link { font-size:.82rem; padding-block:.65rem; }
.o-voyage__rail { margin-top:0; }
.o-voyage__rail > a { margin-left:auto; display:flex; gap:1.5rem; align-items:center; font-size:.72rem; padding-block:1.3rem; }
.o-voyage__rail > a span { font-size:1.1rem; }
.observatory-ready:not(.observatory-reduced) .o-vessel__image { animation:o-object-arrive 1.8s var(--o-ease) both; }
@keyframes o-object-arrive { from { opacity:0; filter:drop-shadow(0 18px 16px #07191b00); } to { opacity:1; filter:drop-shadow(0 18px 16px #07191b18); } }
@media (max-width:1100px) {
  .o-hero-study { grid-column:1/5; padding-right:1rem; }
  .o-vessel { grid-column:5/-1; margin-top:9rem; }
  .o-voyage__note { max-width:35%; }
  .o-ocean { left:30%; top:47%; aspect-ratio:1.95; }
  .o-hero-study .o-study__panels { min-height:230px; }
  .o-spot i { display:none; }
}
@media (max-width:760px) {
  .o-voyage__stage { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto auto auto; padding-top:6.6rem; }
  .o-voyage__intro { grid-column:1; grid-row:1; transform:none; }
  .observatory-home .o-voyage h1 { font-size:12.2cqw; line-height:.94; }
  .o-voyage__intro > .o-eyebrow { margin-bottom:1.5rem; }
  .o-voyage__note { max-width:none; margin-top:1.4rem; }
  .o-voyage__note p { font-size:.9rem; }
  .o-vessel { grid-column:1; grid-row:2; width:100%; margin:0; padding-top:.5rem; transform:none; }
  .o-vessel__rig { width:100%; margin-inline:0; }
  .o-orbit { width:110%; top:10%; left:-5%; }
  .o-ocean { left:0; right:0; top:35%; width:auto; aspect-ratio:1.65; }
  .o-vessel__registration { display:none; }
  .o-hero-study { grid-column:1; grid-row:3; padding:0; }
  .o-hero-study .o-study__controls button span { display:inline; margin:0 .5rem 0 0; }
  .o-hero-study .o-study__panels { margin-top:1rem; min-height:165px; }
  .observatory-home .o-hero-study h2 { font-size:1.6rem; max-width:none; }
  .o-hero-study .o-study__panel { padding-bottom:1rem; }
  .observatory-home .o-hero-study p { max-width:43ch; margin:.65rem 0; }
  .o-voyage__rail { grid-column:1; grid-row:4; display:flex; min-height:3.5rem; gap:.5rem; font-size:.57rem; }
  .o-voyage__rail-progress { display:none; }
  .o-voyage__rail > a { font-size:.62rem; gap:.6rem; }
  .o-spot > span { width:2.5rem; height:2.5rem; font-size:.72rem; }
  .o-spot--form { left:calc(25% - 3.5rem); }
  .o-spot--space { left:calc(54% - 3.5rem); }
  .o-spot--purpose { left:calc(80% - 3.5rem); }
}
@media (max-width:400px) {
  .o-hero-study .o-study__controls button span { display:block; margin:0 0 .3rem; }
}
.observatory-reduced-root { scroll-behavior:auto!important; }
.observatory-reduced *, .observatory-reduced *::before, .observatory-reduced *::after { animation:none!important; transition:none!important; }
.observatory-reduced [data-o-reveal] { opacity:1!important; transform:none!important; }
@media (prefers-reduced-motion:reduce) {
  .observatory-home *, .observatory-home *::before, .observatory-home *::after { animation:none!important; transition:none!important; }
  .observatory-home [data-o-reveal] { opacity:1!important; transform:none!important; }
}
@media print {
  .observatory-home .lx-head,.o-vessel,.o-orbit,.o-voyage__start,.o-voyage__rail,.o-class-list,.o-class-stage__frame { display:none!important; }
  .o-voyage,.o-voyage__stage { height:auto!important; min-height:0!important; }
  .o-voyage__intro,.o-study { position:relative!important; inset:auto!important; opacity:1!important; transform:none!important; padding:1rem!important; }
  .o-study__panel,.o-class-panel,[data-region-panel] { display:block!important; visibility:visible!important; opacity:1!important; position:relative!important; transform:none!important; }
  .o-class-panel { min-height:400px!important; }
  .o-fleet__layout,.o-manifesto,.o-atlas,.o-dossier__layout,.o-questions { display:block; }
  .observatory-home [data-o-reveal] { opacity:1!important; transform:none!important; }
}
