/* Y2K layer: chrome type, gel controls, HUD brackets, over deep water.
   The chrome fill is used only on large headings and falls back to plain text in light theme and forced colours.
   Every body-size text stays on a solid-enough ground. */
:root{--ice:#A9DBFF;--lime:#B8FF3C;--chrome:linear-gradient(180deg,#ffffff 0%,#dce9f8 34%,#8da6c1 49%,#eef6ff 63%,#a8bdd4 100%)}

.tour h1,.tour h2,.hero-title,.exhibit h2,.seabed h2,.site-foot h2,.doc h1{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;line-height:1.03;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 1px 0 rgba(0,0,0,.5)) drop-shadow(0 0 16px rgba(120,180,255,.2))}
.tour h1{font-size:clamp(2.2rem,1.05rem + 4.2vw,4.5rem);max-width:17ch}
.tour h2{font-size:clamp(1.8rem,1.1rem + 2.5vw,3rem);max-width:19ch}
.exhibit h2,.hero-title,.seabed h2{font-size:clamp(1.7rem,1.2rem + 1.7vw,2.5rem)}
.hero-title{max-width:14ch}
@media (forced-colors:active){.tour h1,.tour h2,.hero-title,.exhibit h2,.seabed h2,.site-foot h2,.doc h1{background:none;color:CanvasText;-webkit-text-fill-color:currentColor;filter:none}}
html[data-theme="light"] .exhibit h2,html[data-theme="light"] .hero-title,html[data-theme="light"] .doc h1,html[data-theme="light"] .site-foot h2{background:none;color:var(--text-primary);-webkit-text-fill-color:currentColor;filter:none}

/* labels in brackets */
.tour .tag b::before,.ex-tag b::before,.seabed .tag b::before{content:"[ ";opacity:.55}
.tour .tag b::after,.ex-tag b::after,.seabed .tag b::after{content:" ]";opacity:.55}

/* gel controls */
.btn{border-radius:999px;border:1px solid rgba(190,222,255,.6);color:var(--text-primary);background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,.07) 47%,rgba(0,0,0,.22) 52%,rgba(255,255,255,.1) 100%),#14304c;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -6px 10px rgba(0,0,0,.28),0 6px 16px -6px rgba(0,0,0,.6);text-shadow:0 1px 0 rgba(0,0,0,.35);padding-inline:1.25rem}
.btn:hover{background:linear-gradient(180deg,rgba(255,255,255,.4) 0%,rgba(255,255,255,.12) 47%,rgba(0,0,0,.18) 52%,rgba(255,255,255,.14) 100%),#1a3d60;color:#fff}
.btn:active{box-shadow:inset 0 2px 6px rgba(0,0,0,.5);transform:translateY(1px)}
.btn-primary,.tour .btn-primary{color:#06140A;text-shadow:0 1px 0 rgba(255,255,255,.45);border-color:#e4ffa6;background:linear-gradient(180deg,#f3ffb8 0%,#c9ff55 44%,#8fd600 52%,#c6ff4f 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -6px 10px rgba(60,110,0,.35),0 0 22px -2px rgba(184,255,60,.45),0 6px 16px -6px rgba(0,0,0,.6)}
.btn-primary:hover,.tour .btn-primary:hover{background:linear-gradient(180deg,#fbffd0 0%,#d6ff77 44%,#9cea0a 52%,#d3ff6b 100%);color:#06140A}
html[data-theme="light"] .btn{background:linear-gradient(180deg,#fff 0%,#eef2f8 47%,#d5dce8 52%,#eef2f8 100%);color:var(--text-primary);border-color:var(--border-strong);text-shadow:none}
html[data-theme="light"] .btn-primary{background:linear-gradient(180deg,#5b86ee 0%,#1546c8 50%,#0f35a0 52%,#2a58d8 100%);color:#fff;border-color:#0f2f8f;text-shadow:0 1px 0 rgba(0,0,0,.3)}
.tour .btn,.seabed .btn{background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,.07) 47%,rgba(0,0,0,.22) 52%,rgba(255,255,255,.1) 100%),#14304c;color:var(--tw)}
.skip-tour{border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.05) 50%,rgba(0,0,0,.25) 52%),#102a44;box-shadow:inset 0 1px 0 rgba(255,255,255,.5);border-color:rgba(190,222,255,.5)}
.chip{border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,.03) 50%,rgba(0,0,0,.25) 52%),rgba(10,26,43,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.chip .dot{background:radial-gradient(circle at 32% 30%,#fff 0%,var(--sc) 48%,#02080f 130%);box-shadow:0 0 10px -1px var(--sc)}

/* glossy panels with HUD corner brackets */
.exhibit>.sheet,.hero>.sheet{position:relative;border-radius:10px;border:1px solid rgba(160,195,230,.32);background:linear-gradient(180deg,rgba(255,255,255,.05) 0,rgba(255,255,255,0) 160px),color-mix(in srgb,var(--surface-1) 98%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 40px 90px -50px rgba(0,0,0,.85)}
.exhibit>.sheet::before,.exhibit>.sheet::after,.hero>.sheet::before,.hero>.sheet::after{content:"";position:absolute;width:16px;height:16px;pointer-events:none;border:2px solid var(--ice);opacity:.85}
.exhibit>.sheet::before,.hero>.sheet::before{left:-1px;top:-1px;border-right:0;border-bottom:0;border-top-left-radius:10px}
.exhibit>.sheet::after,.hero>.sheet::after{right:-1px;bottom:-1px;border-left:0;border-top:0;border-bottom-right-radius:10px}
html[data-theme="light"] .exhibit>.sheet::before,html[data-theme="light"] .exhibit>.sheet::after,html[data-theme="light"] .hero>.sheet::before,html[data-theme="light"] .hero>.sheet::after{border-color:var(--accent)}

/* a hairline and a four-point star where the wave used to be */
.ex-head::before{height:1px;background:linear-gradient(90deg,var(--ice),rgba(169,219,255,0));-webkit-mask:none;mask:none;animation:none;top:6px}
.ex-head::after{content:"";position:absolute;left:0;top:0;width:13px;height:13px;background:var(--lime);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0 15 9 24 12 15 15 12 24 9 15 0 12 9 9Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0 15 9 24 12 15 15 12 24 9 15 0 12 9 9Z'/%3E%3C/svg%3E") center/contain no-repeat}
html[data-theme="light"] .ex-head::after{background:var(--accent)}
.ex-head{padding-top:1.8rem}

.stage-list li,.defects li,.repair li,.proof>div,.seat-card{border-radius:2px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 40%),rgba(4,14,26,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.proof>div{border-radius:6px;border-color:rgba(169,219,255,.28)}
.proof dd{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}
.ladder li{border-radius:4px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 45%),rgba(4,14,26,.84)}

/* corner marks on the stage and a readout in the bar */
.tour-stage::after{content:"";position:absolute;inset:14px;pointer-events:none;z-index:3;opacity:.55;background:
  linear-gradient(var(--ice),var(--ice)) top left/22px 2px no-repeat,linear-gradient(var(--ice),var(--ice)) top left/2px 22px no-repeat,
  linear-gradient(var(--ice),var(--ice)) top right/22px 2px no-repeat,linear-gradient(var(--ice),var(--ice)) top right/2px 22px no-repeat,
  linear-gradient(var(--ice),var(--ice)) bottom left/22px 2px no-repeat,linear-gradient(var(--ice),var(--ice)) bottom left/2px 22px no-repeat,
  linear-gradient(var(--ice),var(--ice)) bottom right/22px 2px no-repeat,linear-gradient(var(--ice),var(--ice)) bottom right/2px 22px no-repeat}
.telemetry{display:none;margin:0;font:400 .6875rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tw2);white-space:nowrap}
.telemetry b{color:var(--ta);font-weight:600}
@media (min-width:1100px){.telemetry{display:block}}
.tour .brand{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}
.hud #hud-n{font-family:var(--font-display)}
.tour .tag b{color:var(--ta)}
.tour a{color:var(--ice)}
.tour a:hover{color:#fff}
.defects b,.defects li b{color:#FFC46B}

/* overview cards */
.pitch-grid{display:grid;gap:var(--space-4);margin:var(--space-5) 0 var(--space-5)}
@media (min-width:760px){.pitch-grid{grid-template-columns:1fr 1fr}}
.pitch-grid article{position:relative;padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 50%),var(--surface-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.pitch-grid h3{display:flex;align-items:baseline;gap:var(--space-3);font-size:1.25rem;margin-bottom:var(--space-2);color:var(--text-primary)}
.pitch-grid h3 span{font:600 .8125rem/1 var(--font-mono);color:var(--accent);letter-spacing:.08em}
html[data-theme="light"] .pitch-grid h3 span{color:var(--accent-strong)}
.pitch-grid p{margin:0;color:var(--text-secondary);font-size:var(--fs-body)}
.rubric-h{margin:var(--space-7) 0 var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-strong);font-size:1.25rem}
.pitch .lede{font-size:1.25rem;color:var(--text-primary);max-width:44rem}
