@font-face{font-family:Anton;src:url('../assets/anton.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Barlow;src:url('../assets/barlow.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Bodoni;src:url('../assets/bodoni-moda.woff2') format('woff2');font-display:swap;font-weight:400}

:root{
  --night:#071c23;--ink:#10282b;--ivory:#f4efdf;--mist:#b5c7c8;--saffron:#eec654;
  --line:#b5c7c833;--gutter:clamp(16px,3vw,40px);
  color-scheme:dark;background:var(--night);color:var(--ivory);font-family:Barlow,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font-size:17px;line-height:1.55}
a{color:inherit}
:focus-visible{outline:3px solid var(--saffron);outline-offset:4px}
.brand-dot{display:inline-block;width:.25em;height:.25em;margin-left:.2em;background:var(--saffron)}

.stage{height:100vh;height:100svh;min-height:500px;display:grid;grid-template-rows:auto minmax(0,1fr) auto}

.bar{display:flex;align-items:center;gap:clamp(4px,2vw,20px);min-height:48px;padding:0 var(--gutter);border-bottom:1px solid var(--line)}
.wordmark{display:inline-flex;align-items:center;min-height:44px;font-family:Anton,sans-serif;font-size:clamp(18px,1.6vw,21px);letter-spacing:.05em;white-space:nowrap;text-decoration:none}
.credits-link{display:inline-flex;align-items:center;min-height:44px;margin-left:auto;padding:0 6px;font-size:14px;color:var(--mist);text-decoration:none}
.ocean-nav{display:flex;gap:clamp(0px,1vw,12px);font-size:14px}
.ocean-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;white-space:nowrap;text-decoration:none}
.wordmark:hover,.credits-link:hover,.ocean-nav a:hover{color:var(--saffron)}
.ocean-nav [aria-current]{color:var(--saffron);box-shadow:inset 0 -2px 0 var(--saffron)}
.wordmark:focus-visible,.credits-link:focus-visible,.ocean-nav a:focus-visible{outline-offset:-3px}

.stage .console{grid-template-columns:auto minmax(0,1fr) minmax(200px,280px);gap:clamp(16px,2.4vw,36px)}
h1{margin:0;font:400 clamp(22px,2vw,28px)/1.1 Anton,sans-serif;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}
.eyebrow{margin:2px 0 0;font-size:12px;line-height:1.3;letter-spacing:.04em;color:var(--mist);white-space:nowrap}

.notes{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);padding:clamp(48px,7vw,90px) var(--gutter);background:var(--night);border-top:1px solid var(--line)}
.notes h2{margin:0 0 16px;font:400 clamp(32px,3.6vw,54px)/1.06 Bodoni,Georgia,serif;letter-spacing:-.025em}
.notes h3{margin:0 0 12px;font:400 15px/1.4 Barlow,sans-serif;letter-spacing:.04em;color:var(--saffron)}
.notes p{margin:0 0 12px;max-width:52ch;color:var(--mist)}
.notes-lead p{color:var(--ivory)}
.notes a{text-underline-offset:3px}
.notes a:hover{color:var(--saffron)}
.notes dl{margin:0}
.notes dt{color:var(--ivory)}
.notes dd{margin:0 0 12px;color:var(--mist)}

@media (max-width:1180px){
  .stage .console{grid-template-columns:auto minmax(0,1fr);gap:6px 24px}
  .stage .controls{grid-column:1/-1;grid-row:2;justify-content:space-between}
  .stage .status{min-height:0}
  .stage .log{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}
}
@media (max-width:860px){
  .notes{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:559px),(max-width:640px) and (min-height:521px){
  .bar{gap:0}
  .stage .console{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:8px var(--gutter)}
  .stage .log{display:contents}
  .plate{grid-column:1;grid-row:1;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 10px}
  .stage .readout{grid-column:2;grid-row:1;align-self:center;gap:10px;margin:0;white-space:nowrap}
  .stage .controls{grid-column:1/-1;grid-row:2}
  .stage .status{grid-column:1/-1;grid-row:3;min-height:2.8em;font-size:14px}
  .eyebrow{margin:0;font-size:11px}
  h1{font-size:20px}
}
@media (max-width:370px){
  .eyebrow{width:100%}
  .stage .readout{align-self:start;flex-direction:column;gap:0;text-align:right}
}
@media (max-width:640px){
  .bar{flex-wrap:wrap}
  .eyebrow,h1{white-space:normal}
}
@media (max-width:300px){
  .stage{height:auto}
  .stage .water{min-height:60svh}
  .credits-link{margin-left:0}
}
@media (max-height:520px) and (min-width:560px){
  .stage{min-height:300px;grid-template-columns:minmax(0,1fr) clamp(230px,32vw,300px);grid-template-rows:auto minmax(0,1fr)}
  .bar{grid-column:1/-1;min-height:44px}
  .plate{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px}
  h1{font-size:18px}
  .eyebrow{margin:0;font-size:11px;white-space:normal}
  .stage .controls{grid-column:auto;grid-row:auto}
  .stage .log{display:block}
  .stage .status{min-height:0}
}
