/* Swathe Orbital: the Earth, read in strips. One swathe-wide column between two hairlines; the console in the margins. */
@font-face{font-family:"B612";src:url(/assets/fonts/specimen/b612-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"B612";src:url(/assets/fonts/specimen/b612-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"B612 Mono";src:url(/assets/fonts/specimen/b612-mono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@property --sp{syntax:"<percentage>";inherits:false;initial-value:100%}

body.spec-swathe-orbital{margin:0;background:#030509}
.sw-page{
  --sw-bg:#030509;--sw-ink:#C9D3DA;--sw-amber:#FFB000;--sw-support:#7C8F9C;
  --sw-rule:rgba(124,143,156,.28);--sw-edge:rgba(124,143,156,.4);--sw-tick:rgba(124,143,156,.55);--sw-veil:rgba(3,5,9,.86);--sw-dim:rgba(3,5,9,.94);
  --sans:"B612","Segoe UI",system-ui,sans-serif;--mono:"B612 Mono",ui-monospace,"Cascadia Mono",Menlo,monospace;
  --t-h1:clamp(2.5rem,1.9rem + 2.2vw,3.5rem);--t-x:clamp(1.625rem,1.1rem + 2.3vw,2.75rem);--t-h2:clamp(1.5rem,1.25rem + .9vw,1.875rem);
  --t-h3:clamp(1.0625rem,1rem + .15vw,1.125rem);--t-lede:clamp(1.0625rem,.98rem + .35vw,1.25rem);--t-body:clamp(1rem,.94rem + .2vw,1.125rem);--t-clock:clamp(1.25rem,.6rem + 2.9vw,3rem);
  --nav:44px;--top:calc(var(--bar-h,43px) + var(--nav));--stage-h:calc(100svh - var(--top));--run:300vh;
  --cw:600px;--cx:calc((100% - var(--cw)) / 2);--pad:24px;--gut:24px;
  position:relative;background:var(--sw-bg);color:var(--sw-ink);font:400 var(--t-body)/1.667 var(--sans);font-synthesis:none;-webkit-font-smoothing:antialiased
}
@media (max-width:1359px){.sw-page{--cw:560px}}
@media (max-width:1099px){.sw-page{--cw:60%;--cx:32px}}
@media (max-width:699px){.sw-page{--cw:calc(100% - 32px);--cx:16px;--pad:12px;--gut:16px}}

/* ---------- base ---------- */
.sw-page *,.sw-page ::before,.sw-page ::after{box-sizing:border-box}
.sw-page :where(h1,h2,h3,p,ol,ul,dl,dt,dd,figure,fieldset,legend,table,caption){margin:0;padding:0}
.sw-page :where(ol,ul){list-style:none}
.sw-page :where(a){color:inherit}
.sw-page img{display:block;max-width:100%;height:auto}
.sw-page :where(button,input,textarea){font:inherit;color:inherit}
.sw-page b{font-weight:inherit}
.sw-page :focus-visible{outline:2px solid var(--sw-amber);outline-offset:3px}
.sw-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sw-sym{position:absolute;width:0;height:0;overflow:hidden}
.sw-ic{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:square;flex:none}
.sw-ic *,.sw-sym *{vector-effect:non-scaling-stroke}
.sw-page:not(.is-js) .sw-jo,.is-js .sw-nj{display:none!important}
.sw-q{position:absolute;left:0;width:1px;height:1px;pointer-events:none}
:where(.sw-page) p+p{margin-top:1em}
.sw-page h1{font:700 var(--t-h1)/1.072 var(--sans);letter-spacing:-.015em}
.sw-page h1>span{display:block}
.sw-page h2{font:700 var(--t-h2)/1.27 var(--sans);letter-spacing:-.005em;text-wrap:balance}
.sw-page h3{font:700 var(--t-h3)/26px var(--sans)}
.sw-code,.sw-ph,.sw-rh,.sw-dl,.sw-cap,.sw-stand,.sw-page legend,.sw-fr>label,.sw-pair label,.sw-pt label{font:400 11px/16px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sw-support)}
.sw-cap{letter-spacing:.1em}
.sw-small,.sw-help{font:13px/20px var(--sans);color:var(--sw-support)}
.sw-n{font-family:var(--mono);font-size:.9em}
.sw-f,.sw-ph b,.sw-rh b,.sw-dl b,.sw-pl b,.sw-kv dd{font-family:var(--mono);color:var(--sw-amber);font-weight:400}
.sw-f{font-size:.9em;white-space:nowrap}
button.sw-f{background:none;border:0;padding:0;cursor:pointer;border-bottom:1px dotted rgba(255,176,0,.6);line-height:1.25}
button.sw-f:hover,button.sw-f[aria-expanded="true"]{border-bottom-style:solid}
.sw-co{font-family:var(--sans);font-size:1.05em;margin-inline:.02em;vertical-align:.02em}
.sw-chg{text-decoration:underline 1px var(--sw-amber);text-underline-offset:3px;animation:sw-mark .6s forwards}
@keyframes sw-mark{to{text-decoration-color:transparent}}

/* buttons and keycaps */
.sw-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:0 18px;border:1px solid var(--sw-amber);background:none;color:var(--sw-ink);font:700 13px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap}
.sw-btn:hover{box-shadow:inset 0 0 0 1px var(--sw-amber)}
.sw-kc{font:400 11px/1 var(--mono);letter-spacing:.04em;padding:3px 5px;border:1px solid var(--sw-support);color:var(--sw-support);text-transform:none}

/* panels: open L-brackets, a hairline on top and left, ticks at the far corners, amber while holding focus */
.sw-pn{position:relative;border-top:1px solid var(--sw-rule);border-left:1px solid var(--sw-rule);--tk:var(--sw-tick)}
.sw-pn::after{content:"";position:absolute;inset:-1px 0 0 -1px;pointer-events:none;background:linear-gradient(var(--tk) 0 0) 100% 0/1px 8px no-repeat,linear-gradient(var(--tk) 0 0) 100% 0/8px 1px no-repeat,linear-gradient(var(--tk) 0 0) 0 100%/8px 1px no-repeat,linear-gradient(var(--tk) 0 0) 0 100%/1px 8px no-repeat}
.sw-pn:focus-within{--tk:var(--sw-amber)}
.sw-ph{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 8px;min-height:20px;padding:2px 8px;letter-spacing:.1em}
/* a header too long for its margin wraps its time to a second line, at the right, rather than losing letters */
.sw-ph>*{white-space:nowrap}
.sw-ph>:last-child:not(:first-child){margin-left:auto}
.sw-np .sw-ph>span{white-space:normal}
.sw-pl{font:13px/20px var(--mono);color:var(--sw-ink);padding:2px 8px;letter-spacing:.02em}
.sw-pl2{font:14px/22px var(--sans);color:var(--sw-ink);padding:4px 8px 10px}
.sw-pl2 .sw-f{white-space:normal}
.sw-pl+.sw-pl{margin:0}
.sw-kv{font:13px/20px var(--mono);padding:4px 8px 8px}
.sw-kv>div{display:flex;justify-content:space-between;gap:12px}
.sw-kv dt{color:var(--sw-support);font-size:11px;letter-spacing:.1em}
.sw-lit{display:inline-block;width:6px;height:6px;border:1px solid currentColor;margin-right:6px;vertical-align:1px}
.sw-lit.on{background:currentColor}

/* ---------- one swathe, two margins ---------- */
.sw-aos,.sw-fleet,.sw-pass,.sw-phud,.sw-ch{display:grid;grid-template-columns:var(--cx) var(--cw) minmax(0,1fr);align-items:start}
.sw-ml{grid-column:1;padding-inline:var(--gut)}
.sw-c{grid-column:2;padding-inline:var(--pad)}
.sw-mr{grid-column:3;padding-inline:var(--gut)}
.sw-x{grid-column:1/-1}
.sw-r2{grid-row:2}

/* the two swathe rules, from the nav to the footer, with scan ticks every 24 px */
.sw-edges{position:absolute;left:0;right:0;top:var(--nav);bottom:0;pointer-events:none;z-index:3}
.sw-e{position:absolute;top:0;bottom:0;width:1px;background:var(--sw-edge)}
.sw-el{left:var(--cx)}
.sw-er{left:calc(var(--cx) + var(--cw) - 1px)}
.sw-e::before{content:"";position:absolute;top:0;bottom:0;width:4px;background:repeating-linear-gradient(to bottom,var(--sw-tick) 0 1px,transparent 1px 24px)}
.sw-el::before{right:1px}.sw-er::before{left:1px}
.sw-e::after{content:"";position:absolute;bottom:0;left:-6px;width:13px;height:1px;background:var(--sw-amber)}
.is-js .sw-e{background:linear-gradient(to bottom,var(--sw-edge) var(--fs,var(--fe,0px)),var(--sw-amber) var(--fs,var(--fe,0px)),var(--sw-amber) var(--fe,0px),var(--sw-edge) calc(var(--fe,0px) + 100vh))}
.is-js .sw-edges.is-live{--fs:0px}

/* ---------- nav ---------- */
.sw-nav{position:sticky;top:var(--bar-h,43px);z-index:800;height:var(--nav);display:flex;align-items:center;gap:16px;padding-inline:var(--gut);background:var(--sw-bg);border-bottom:1px solid var(--sw-rule)}
.sw-wm{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--sw-ink);text-decoration:none;font:700 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.sw-wm-mk{width:34px;height:20px;fill:none;stroke:var(--sw-support);stroke-width:1}
.sw-wm-mk .sw-wm-st{stroke:var(--sw-ink)}
.sw-nadir{position:absolute;top:0;height:100%;left:calc(var(--cx) + var(--cw) / 2);display:flex;align-items:center;padding-left:10px;font:11px/1 var(--mono);letter-spacing:.12em;color:var(--sw-support)}
.sw-nadir::before{content:"";position:absolute;left:0;bottom:0;width:1px;height:6px;background:var(--sw-tick)}
.sw-nav-r{margin-left:auto;display:flex;align-items:center;gap:18px;font:13px/1 var(--mono);white-space:nowrap}
.sw-clk{color:var(--sw-support);letter-spacing:.06em}
.sw-clk b{color:var(--sw-amber);font-weight:400;letter-spacing:0}
.sw-mdl{display:flex;align-items:stretch;border:1px solid var(--sw-amber);font:11px/1 var(--mono);letter-spacing:.1em;color:var(--sw-amber)}
.sw-mdl[hidden]{display:none}
.sw-mdl>span{display:flex;align-items:center;padding:0 8px}
.sw-mdl b{margin-left:6px}
.sw-back{min-height:30px;padding:0 10px;background:none;border:0;border-left:1px solid var(--sw-amber);color:var(--sw-ink);font:700 11px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.sw-back:hover{text-decoration:underline}
/* the MODEL badge is wider than the clock it replaces: NADIR steps aside while it shows */
.sw-is-model .sw-clk,.sw-is-model .sw-nadir{display:none}
.sw-mark{display:flex;align-items:center;gap:8px;font:11px/1 var(--mono);letter-spacing:.12em;color:var(--sw-ink)}
.sw-mark i{width:6px;height:6px;background:var(--sw-amber)}
.sw-ixb{min-height:44px;padding:0 0 0 16px;background:none;border:0;border-left:1px solid var(--sw-rule);color:var(--sw-ink);font:11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.sw-ixb[aria-expanded="true"]{color:var(--sw-amber)}
.sw-ix{display:none;position:fixed;z-index:850;top:var(--top);right:0;width:min(420px,100%);max-height:calc(100svh - var(--top));overflow:auto;padding:12px var(--gut) 20px;background:var(--sw-bg);border-left:1px solid var(--sw-rule);border-bottom:1px solid var(--sw-rule)}
.sw-ix.is-open{display:block}
.sw-ix a{display:flex;align-items:baseline;gap:10px;min-height:44px;padding-top:14px;text-decoration:none;font:12px/16px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sw-ink);border-bottom:1px solid var(--sw-rule)}
.sw-ix a b{color:var(--sw-support);order:3}
.sw-ix a i{flex:1;order:2;border-bottom:1px dotted var(--sw-tick);transform:translateY(-3px)}
.sw-ix a[aria-current]{color:var(--sw-amber)}
.sw-ix a:hover span{text-decoration:underline}
/* ---------- the film: the hero, the fleet and the pass scroll over the sticky stage ---------- */
.sw-film{display:grid;grid-template-columns:100%;position:relative}
.sw-film>.sw-sec{grid-column:1;position:relative;z-index:2;pointer-events:none}
#sw-aos{grid-row:1}#sw-fleet{grid-row:2}#sw-pass{grid-row:3}
.sw-film .sw-sec :is(p,h1,h2,a,button,ol,dl,.sw-pn,label,input,canvas){pointer-events:auto}
.sw-stage{grid-row:1/4;grid-column:1;align-self:start;position:sticky;top:var(--top);height:var(--stage-h);z-index:1;overflow:hidden;touch-action:pan-y;outline:0;--disc:min(var(--cw),var(--stage-h) - 211px)}
.sw-stage:focus-visible{outline:2px solid var(--sw-amber);outline-offset:-3px}
.sw-rm .sw-stage{position:relative;top:0}
/* without JavaScript the stage and the pass HUD stop sticking, and the poster's caption sits in the space the live
   caption keeps (so nothing moves when the script arrives). The pass's scroll run has no film to play, so it
   closes to its own heading, log line and panel (the script opens it again with .is-js). */
.sw-page:not(.is-js) .sw-stage{position:relative;top:0}
.sw-page:not(.is-js) .sw-phud{position:relative;height:auto;padding-bottom:48px}
.sw-page:not(.is-js) .sw-aos-cap.sw-jo{display:block!important;visibility:hidden}
.sw-page:not(.is-js) .sw-run{height:auto}
.sw-cv{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0}
.is-gl .sw-cv{opacity:1}
.sw-poster{position:absolute;left:calc(var(--cx) + (var(--cw) - var(--disc)) / 2);top:24px;width:var(--disc)}
.sw-poster img{width:100%;border-radius:50%}
.sw-poster figcaption{margin-top:6px;text-align:center;font:10px/14px var(--mono);letter-spacing:.08em;color:var(--sw-support)}
.is-gl .sw-poster,.is-nogl .sw-poster{visibility:hidden}
.sw-wb{position:absolute;left:calc(var(--cx) + (var(--cw) - var(--disc)) / 2);top:24px;width:var(--disc);display:none;transition:transform .6s cubic-bezier(.2,.7,.1,1)}
.is-nogl .sw-wb{display:block}
.sw-wb svg,.sw-pst svg{display:block;width:100%;height:auto}
.sw-lab{position:absolute;left:0;top:0;font:11px/16px var(--mono);letter-spacing:.1em;color:var(--sw-support);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .3s;will-change:transform}
.sw-lab.on{opacity:1}
.sw-slab{color:var(--sw-amber);letter-spacing:.06em}
/* KEYS sits in the column's top corner, inside the right rule: the disc never reaches it and the margins keep their panels */
.sw-keys{position:absolute;right:calc(100% - var(--cx) - var(--cw) + 9px);top:16px;z-index:3}
.is-nogl .sw-keys{top:32px}
.sw-keys-b{min-height:32px;padding:0 10px;background:var(--sw-veil);border:1px solid var(--sw-rule);color:var(--sw-support);font:11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.sw-keys-b:hover,.sw-keys-b[aria-expanded="true"]{color:var(--sw-ink)}
.sw-keys-l{position:absolute;right:0;top:calc(100% + 8px);width:320px;padding:10px 12px;background:var(--sw-bg);border:1px solid var(--sw-rule);font:13px/20px var(--sans)}
.sw-keys-l>div{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:2px 0}
.sw-keys-l dt{font:11px/20px var(--mono);letter-spacing:.06em;color:var(--sw-ink)}
.sw-keys-l dd{color:var(--sw-support)}

/* hero */
.sw-aos{min-height:var(--stage-h);padding-bottom:48px}
.sw-aos-l{padding-top:24px}
.sw-aos-l>*{max-width:348px}
.sw-aos-c{padding:24px 0 0}
.sw-aos-c>*{padding-inline:var(--pad)}
.sw-aos-c>.sw-slot{padding:0;width:min(100%,var(--stage-h) - 211px);aspect-ratio:1;margin-inline:auto}
.sw-aos-r{padding-top:24px;display:flex;flex-direction:column;gap:24px}
.sw-dl{display:flex;flex-direction:column;margin-bottom:40px;letter-spacing:.06em}
.sw-dl>span>*{display:block}
.sw-aos h1{margin-bottom:28px}
.sw-sub{font-size:1.0625rem;line-height:27px}
.sw-acts{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:32px}
.sw-aos-cap{margin-top:12px;text-align:center}
.sw-lede{margin-top:16px;font:400 var(--t-lede)/1.5 var(--sans)}
.sw-hint{margin-top:10px;font:13px/20px var(--sans);color:var(--sw-support)}
.sw-hs{display:none}
.sw-big{padding:6px 8px 4px;font:400 var(--t-clock)/1 var(--mono);color:var(--sw-amber);white-space:nowrap}
.sw-big b{font-weight:400}
.sw-putc .sw-pl{padding-bottom:8px}
.sw-psun .sw-pl:last-child{padding-bottom:8px}
.sw-flb{display:none}
.sw-fl{padding-bottom:6px}
.sw-fr-b{display:grid;grid-template-columns:26px 16px 1fr auto;align-items:center;width:100%;height:24px;padding:0 8px;background:none;border:0;color:var(--sw-ink);font:12px/1 var(--mono);text-align:left;cursor:pointer;white-space:nowrap}
.sw-fr-b:hover{background:rgba(124,143,156,.12)}
.sw-fr-b[aria-pressed="true"],.sw-sp[aria-pressed="true"]{background:var(--sw-amber);color:var(--sw-bg)}
.sw-fr-b:focus-visible,.sw-sp:focus-visible{outline-offset:-2px;outline-color:var(--sw-ink)}
.sw-fr-b small{font-size:11px;color:var(--sw-support)}
.sw-fr-b[aria-pressed="true"] small{color:inherit}
.sw-pn2{display:flex;gap:14px;align-items:flex-start;padding:6px 8px 8px}
.sw-pn2 .sw-pl{padding:0}
.sw-sky{width:96px;height:96px;flex:none;overflow:visible}
.sw-sky .h{fill:none;stroke:var(--sw-rule)}
.sw-sky .h0{stroke:var(--sw-tick)}
.sw-sky .a{fill:none;stroke:var(--sw-amber)}
.sw-sky .d{fill:var(--sw-amber)}
.sw-sky path,.sw-sky circle{vector-effect:non-scaling-stroke}
.sw-sky text{font:8px var(--mono);fill:var(--sw-support)}
.sw-work{background:var(--sw-bg)}
.sw-work .sw-ph{padding-right:44px}
.sw-wl{padding:6px 8px 12px;font:14px/22px var(--sans)}
.sw-wl p{margin:0 0 6px}
.sw-work.is-set .sw-wl p{animation:sw-set .2s linear both}
.sw-work.is-set .sw-wl p:nth-child(2){animation-delay:.04s}.sw-work.is-set .sw-wl p:nth-child(3){animation-delay:.08s}.sw-work.is-set .sw-wl p:nth-child(4){animation-delay:.12s}
@keyframes sw-set{from{opacity:0}}
.sw-wx{position:absolute;top:-1px;right:0;width:40px;height:40px;display:grid;place-items:center;background:none;border:0;color:var(--sw-ink);cursor:pointer}
.sw-wx:hover{color:var(--sw-amber)}
.sw-leader{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:3}
.sw-leader path{fill:none;stroke:var(--sw-amber);stroke-width:1}

/* 01 fleet: the Earth pulled back in the column, the words and the fleet in the margins */
.sw-fleet{min-height:calc(var(--stage-h) + 70vh);padding:24px 0 0}
.sw-fleet-l,.sw-fleet-r{position:sticky;top:calc(var(--top) + 24px)}
.sw-fleet-l{background:var(--sw-veil);padding-block:24px 28px;font-size:1rem;line-height:26px}
.sw-fleet-l h2{margin:14px 0 12px}
.sw-stand{margin-bottom:18px;letter-spacing:.1em}
.sw-fleet-r{padding-top:24px;top:var(--top)}
.sw-sats{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sw-sp{display:grid;align-content:start;height:96px;padding:5px 8px;background:var(--sw-veil);border:0;text-align:left;color:var(--sw-ink);font:12px/19px var(--mono);cursor:pointer;white-space:nowrap}
.sw-sp b{font:700 13px/19px var(--mono)}
.sw-hdg{width:16px;height:16px;margin-left:4px;vertical-align:-4px;fill:none;stroke:currentColor;stroke-width:1;overflow:visible}
.sw-fkey{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:16px}
.sw-fkey span{display:inline-flex;align-items:center}
.sw-fkey .sw-hdg{margin:0 4px 0 -4px;vertical-align:0}
#sw-q-fleet{top:50vh}
/* 1100-1359: one cell column per margin, so each satellite is a two-line cell: its id, height and light over its position */
@media (min-width:1100px) and (max-width:1359px){
  .sw-sats{grid-template-columns:minmax(0,1fr);gap:8px}
  .sw-sp{grid-template-columns:auto 1fr auto;column-gap:10px;height:auto;min-height:48px;align-content:center}
  .sw-sp b{grid-area:1/1}
  .sw-sp>span:nth-of-type(1){grid-area:2/1/3/-1}
  .sw-sp>span:nth-of-type(2){grid-area:1/2}
  .sw-sp .c{grid-area:1/3}
}
@media (min-width:1100px) and (max-width:1139px){.sw-fr-b small{display:none}.sw-fr-b{grid-template-columns:26px 16px 1fr}}
/* the fleet's margins let go before 02 starts, so the key never sits over the pass */
@media (min-width:1100px){.sw-page:not(.sw-rm) .sw-fleet-r{margin-bottom:96px}}

/* 02 pass: the log on the left, the satellite on the right, the ground between */
.sw-pass-h{grid-row:1/3;grid-column:1;align-self:start;position:sticky;top:calc(var(--top) + 24px);z-index:3;margin-top:24px}
.sw-pass-h{background:var(--sw-veil);padding-block:18px 20px}
/* the head lets go with the stage: its sticky run ends where the HUD's does, so the log never slides up under it */
@media (min-width:1100px){.is-js .sw-pass-h{margin-bottom:max(0px,calc(var(--stage-h) - 24px - var(--ph,150px)))}}
.sw-pass-h h2{margin-top:12px}
.sw-run{grid-row:1/3;grid-column:1/-1;height:var(--run);position:relative}
.sw-phud{position:sticky;top:var(--top);height:var(--stage-h);z-index:2}
/* the log hangs straight under the heading's veil; a line is veiled only once it is written, so the map shows below */
.sw-plog{padding-top:calc(var(--ph,150px) + 24px)}
.sw-log{font:13px/20px var(--mono);padding:4px var(--gut) 10px}
.sw-plog .sw-log{margin-inline:calc(-1 * var(--gut));padding:0}
.sw-log li{position:relative;display:grid;grid-template-columns:70px 1fr;gap:10px;padding:5px 0}
.sw-plog .sw-log li{padding:6px var(--gut)}
.sw-plog .sw-log li:not(.w){background:var(--sw-veil)}
.sw-log li.sw-nj{display:block;font-family:var(--sans);color:var(--sw-support)}
.sw-log span,.sw-lstrip>span{font:14px/20px var(--sans)}
.sw-log time,.sw-lstrip time{font-family:var(--mono);color:var(--sw-support)}
.sw-log li.w{visibility:hidden}
.sw-log li.is-new::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--sw-amber);animation:sw-flash .3s steps(1) forwards}
@keyframes sw-flash{to{visibility:hidden}}
.sw-pass-r{padding-top:24px}
.sw-psat{background:var(--sw-veil);display:grid;grid-template-columns:minmax(0,1fr) auto}
.sw-psat .sw-ph{grid-column:1/-1}
.sw-psat .sw-sky{margin:6px 6px 10px 0}
.sw-lstrip{display:none}
.sw-lstrip time{color:var(--sw-support);margin-right:8px}
.sw-pst{position:absolute;left:0;right:0;top:0;height:var(--stage-h);display:none;z-index:1}
.sw-pst canvas{display:block;width:100%;height:100%}
#sw-q-pass{top:calc(.45 * (var(--run) - var(--stage-h)) + 50vh - var(--top))}
#sw-handover{top:calc(.96 * (var(--run) - var(--stage-h)) + 50vh - var(--top))}
.sw-rm .sw-run,.sw-nogl .sw-run{height:auto}
.sw-rm .sw-phud,.sw-nogl .sw-phud{position:relative;top:0}
.sw-rm .sw-pst,.sw-nogl .sw-pst{display:block}
.sw-rm .sw-pass-h,.sw-nogl .sw-pass-h{position:relative;top:0;margin-bottom:0}
.sw-rm .sw-q,.sw-nogl .sw-q{top:50%}
.sw-rm #sw-q-pass,.sw-nogl #sw-q-pass,.sw-rm #sw-handover,.sw-nogl #sw-handover{top:calc(50vh - var(--top))}
.sw-fst{position:absolute;left:0;right:0;top:0;height:var(--stage-h);z-index:-1;pointer-events:none}
.sw-fst canvas{display:block;width:100%;height:100%;object-fit:cover}
/* where the fleet's text runs taller than the stage the still keeps the stage's size, centred, instead of being
   scaled up to cover (which enlarged and softened the globe and pushed its ring label past the rule) */
@media (min-width:1100px){.sw-rm .sw-fleet{min-height:0;padding-bottom:48px}.sw-rm .sw-fst{height:auto;bottom:0;overflow:hidden}
  .sw-rm .sw-fst canvas{position:absolute;left:0;top:50%;height:var(--stage-h);translate:0 -50%}}

/* after the handover: the column holds the words */
.sw-def{padding-top:0}
.sw-def::before{display:none}
.sw-big-p{margin-top:40px;font:400 var(--t-lede)/1.6 var(--sans)}
.sw-logf{display:none}

/* chapter heads, and the crossing line that breaks the rules */
.sw-ch{position:relative;padding-top:clamp(72px,9vw,128px)}
.sw-ch::before{content:"";position:absolute;top:0;left:calc(var(--cx) + var(--cw) / 2);width:1px;height:6px;background:var(--sw-tick)}
.sw-hd{margin-bottom:36px}
.sw-rh{text-align:center;margin-bottom:28px}
.sw-rh b{letter-spacing:.04em}
.sw-x{position:relative;z-index:4;margin-top:clamp(64px,8vw,112px);padding:16px var(--gut);font:700 var(--t-x)/1.18 var(--sans);letter-spacing:-.01em;text-align:center;background:linear-gradient(var(--sw-bg) 0 0) center/100% 100% no-repeat}
.sw-x>span{display:block;max-width:1200px;margin-inline:auto;text-wrap:balance}
.sw-x::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--cx) - 3px);width:calc(var(--cw) + 6px);pointer-events:none;background:linear-gradient(var(--sw-amber) 0 0) 0 0/7px 1px no-repeat,linear-gradient(var(--sw-amber) 0 0) 0 100%/7px 1px no-repeat,linear-gradient(var(--sw-amber) 0 0) 100% 0/7px 1px no-repeat,linear-gradient(var(--sw-amber) 0 0) 100% 100%/7px 1px no-repeat}
/* 03 see: four strips side by side, like four swathes laid next to each other */
.sw-note{padding-top:10px;border-top:1px solid var(--sw-rule);font:14px/22px var(--sans);color:var(--sw-support)}
.sw-strips{display:flex;gap:8px;height:560px}
.sw-st{position:relative;flex:1 1 0;min-width:0;padding:0;border:0;background:#0b0e13;cursor:pointer;overflow:hidden;transition:flex-grow .28s cubic-bezier(.2,.7,.1,1)}
.sw-st[aria-expanded="true"]{flex-grow:4.333}
/* line studies: grey hairlines for the ground, amber for the one edge each note is about */
.sw-sv{display:block;width:100%;height:100%;fill:none;stroke:var(--sw-support);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;opacity:.72;transition:opacity .28s linear}
.sw-sv *{vector-effect:non-scaling-stroke}
.sw-st[aria-expanded="true"] .sw-sv,.sw-st:hover .sw-sv{opacity:1}
.sw-sf{opacity:.42}.sw-sd{opacity:.7}.sw-sg{opacity:.95}.sw-sk{opacity:.75;stroke-dasharray:3 4}.sw-sq{opacity:.85}.sw-sr{opacity:.6}
.sw-sa{stroke:var(--sw-amber)}.sw-sw{stroke:var(--sw-amber);stroke-width:2.5}
.sw-st:hover{outline:1px solid var(--sw-tick);outline-offset:2px}
.sw-st:focus-visible{outline:2px solid var(--sw-amber);outline-offset:3px}
.sw-st-l{position:absolute;left:0;bottom:0;padding:10px 4px;writing-mode:vertical-rl;transform:rotate(180deg);background:var(--sw-veil);font:11px/16px var(--mono);letter-spacing:.14em;color:var(--sw-support)}
.sw-st[aria-expanded="true"] .sw-st-l{color:var(--sw-ink)}
.sw-ents{margin-top:24px}
.sw-se h3{margin-bottom:6px}
.sw-se .sw-not{margin-top:8px;color:var(--sw-support);font-size:.9375rem}
.sw-see>.sw-cap{margin-top:16px}
.sw-psel .sw-pl:last-child{padding-bottom:8px}

/* 04 today: a tide table */
.sw-ttw{overflow-x:auto}
.sw-tt{width:100%;border-collapse:collapse;font:13px/20px var(--mono)}
.sw-tt th,.sw-tt td{height:36px;padding:0 10px 0 0;text-align:left;border-top:1px solid var(--sw-rule);font-weight:400;white-space:nowrap}
.sw-tt thead th{height:28px;font-size:11px;letter-spacing:.1em;color:var(--sw-support)}
.sw-tt .sw-tt-z th{border-top:0;color:var(--sw-ink)}
.sw-tt .sw-tt-z span{color:var(--sw-amber)}
.sw-tt td:first-child{padding-left:8px}
.sw-tt .is-next td{color:var(--sw-amber)}
.sw-tt .is-next td:first-child{box-shadow:inset 2px 0 var(--sw-amber)}
.sw-tt .sw-dk td,.sw-tt .sw-dy td{font-size:11px;letter-spacing:.12em;color:var(--sw-support)}
.sw-tt .sw-dy td{color:var(--sw-ink);padding-top:10px}
.sw-sb{min-width:44px;min-height:36px;padding:0;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted var(--sw-tick);text-underline-offset:5px}
.sw-sb[aria-pressed="true"]{text-decoration:underline solid var(--sw-amber)}
.sw-ttw .sw-small{margin-top:12px}

/* 05 ask how */
.sw-chk{border-top:1px solid var(--sw-rule)}
.sw-chk li{display:flex;align-items:baseline;gap:8px;padding:11px 0;border-bottom:1px solid var(--sw-rule);font:11px/16px var(--mono);letter-spacing:.1em;color:var(--sw-support)}
.sw-chk b{color:var(--sw-ink);white-space:nowrap}
.sw-chk i{flex:1 1 16px;min-width:16px;border-bottom:1px dotted var(--sw-tick);transform:translateY(-3px)}
.sw-chk span{text-align:right}
.sw-cloud{margin-top:32px}
.sw-ins{margin-top:40px;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.sw-inset-m{position:relative;aspect-ratio:14/13;background:#071523;cursor:crosshair;overflow:hidden}
.sw-inset-m svg{display:block;width:100%;height:100%}
.sw-inset-m .sw-pl{padding:16px}
.sw-rg{border:0;min-width:0}
.sw-rg legend{margin-bottom:8px}
.sw-chips{display:flex;flex-wrap:wrap;gap:6px}
.sw-chips label{position:relative;display:inline-flex}
.sw-chips input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.sw-chips span{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--sw-rule);font:13px/1 var(--sans);color:var(--sw-ink);white-space:nowrap}
.sw-chips input:checked+span{border-color:var(--sw-ink)}
.sw-chips input:checked+span::before{content:"";width:6px;height:6px;margin-right:8px;background:var(--sw-ink)}
.sw-chips label:hover span{border-color:var(--sw-support)}
.sw-chips input:focus-visible+span{outline:2px solid var(--sw-amber);outline-offset:2px}
.sw-pt{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);gap:6px 12px;align-items:center}
.sw-pt input,.sw-form input,.sw-form textarea{width:100%;min-width:0;min-height:44px;padding:8px 2px;background:none;border:0;border-bottom:1px solid var(--sw-tick);border-radius:0;color:var(--sw-ink);font:16px/1.4 var(--sans)}
.sw-pt input,.sw-form input[type="date"],#sw-f-lat,#sw-f-lon{font:15px/1.4 var(--mono)}
.sw-form input[type="date"]{color-scheme:dark}
.sw-pt input:focus,.sw-form input:focus,.sw-form textarea:focus{border-bottom-color:var(--sw-ink)}
.sw-npt{width:100%;border-collapse:collapse;font:12px/18px var(--mono)}
.sw-npt th,.sw-npt td{padding:7px 10px 7px 8px;text-align:left;border-top:1px solid var(--sw-rule);font-weight:400;white-space:nowrap}
.sw-npt thead th{font-size:10px;letter-spacing:.1em;color:var(--sw-support)}
.sw-npt td{color:var(--sw-amber)}
.sw-np .sw-small{margin-top:10px}
.sw-bd .sea{fill:#0B2640}.sw-bd .land{fill:#8E8A74}
.sw-bd .ngt{fill:rgba(3,5,9,.66)}
.sw-bd :is(.tw,.gr,.tk,.sat,.ss,.rg,.pt,.pl,.adl,.bdg){vector-effect:non-scaling-stroke}
.sw-bd .tw{fill:none;stroke:rgba(124,143,156,.45)}
.sw-bd .gr{fill:none;stroke:rgba(201,211,218,.12)}
.sw-bd .tk{fill:none;stroke:rgba(124,143,156,.5)}
.sw-bd .tk.sel{stroke:var(--sw-amber)}
.sw-bd .sw8{fill:var(--sw-amber);fill-opacity:.38}
.sw-bd .sw8.lo{fill-opacity:.14}
.sw-bd .sat{fill:var(--sw-ink);stroke:var(--sw-bg)}
.sw-bd .sat.off{fill:var(--sw-bg);stroke:var(--sw-ink)}
.sw-bd .sat.sel{fill:var(--sw-amber)}
.sw-bd .ss{fill:none;stroke:var(--sw-ink);stroke-width:1.5}
.sw-bd .rg{fill:var(--sw-bg);stroke:var(--sw-ink)}
.sw-bd .rg.on{fill:var(--sw-ink)}
.sw-bd .pt{fill:none;stroke:var(--sw-amber);stroke-width:1.5}
.sw-bd .ps{fill:none;stroke:var(--sw-amber);stroke-opacity:.1;stroke-linecap:butt}
.sw-bd .ps2{stroke-opacity:.38}
.sw-bd .pe{fill:none;stroke:var(--sw-amber);stroke-opacity:.75;vector-effect:non-scaling-stroke}
.sw-bd .pl{fill:none;stroke:var(--sw-amber);stroke-opacity:.5;stroke-dasharray:3 5}
.sw-bd .lbl{fill:var(--sw-ink);font-family:var(--mono);letter-spacing:.06em}
.sw-bd .adl{fill:none;stroke:var(--sw-ink)}
.sw-bd .dim{fill:var(--sw-dim)}
.sw-bd .bdg{stroke:var(--sw-amber);fill:none}
.sw-inset .sw-bd .land{fill:#5b6163}
.sw-inset .sw-bd .sea{fill:#071523}
.sw-inset .sw-bd .gr{stroke:rgba(124,143,156,.3)}

/* 06 delivery, 07 build */
.sw-steps b{font-weight:700}
.sw-fig{margin-top:40px}
.sw-fig figcaption{margin-top:8px;font:10px/14px var(--mono);letter-spacing:.1em;color:var(--sw-support);text-align:left}
.sw-dish img{width:100%;aspect-ratio:3/2;object-fit:cover}
.sw-gls{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.sw-gl .sw-ph{color:var(--sw-ink)}
.sw-gl .sw-pl{padding-bottom:10px}
.sw-clean{font:inherit}
.sw-clean picture,.sw-clean figcaption{display:block;max-width:1200px;margin-inline:auto}
.sw-clean img{width:100%}

/* 08 real */
.sw-five{border-top:1px solid var(--sw-rule);counter-reset:f}
.sw-five li{counter-increment:f;display:grid;grid-template-columns:40px 1fr;padding:12px 0;border-bottom:1px solid var(--sw-rule)}
.sw-five li::before{content:counter(f,decimal-leading-zero);font:12px/30px var(--mono);color:var(--sw-support)}
.sw-elw{margin-top:40px;overflow-x:auto}
.sw-elt{width:100%;border-collapse:collapse;font:12px/18px var(--mono)}
.sw-elt caption{text-align:left;padding-bottom:10px;font:11px/16px var(--mono);letter-spacing:.12em;color:var(--sw-support)}
.sw-elt th,.sw-elt td{padding:8px 10px 8px 0;text-align:left;vertical-align:top;border-top:1px solid var(--sw-rule);font-weight:400}
.sw-elt thead th{font-size:10px;letter-spacing:.1em;color:var(--sw-support)}
.sw-elt tbody th{color:var(--sw-ink);white-space:nowrap}
.sw-elt td{white-space:nowrap}
.sw-elt tr>:last-child{padding-right:0}
.sw-lstrip>span{font-size:13px;line-height:18px}
.sw-elx{margin-top:10px;font:11px/16px var(--mono);letter-spacing:.06em}
.sw-real>.sw-c+.sw-c{margin-top:28px}

/* 09 ask: a log sheet */
.sw-lead{font:400 var(--t-lede)/1.5 var(--sans)}
.sw-askm{grid-row:2/4;display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.sw-form{grid-row:3;margin-top:32px;border-top:1px solid var(--sw-tick)}
.sw-fr{display:grid;grid-template-columns:152px minmax(0,1fr);gap:16px;padding:10px 0;margin:0;border:0;border-bottom:1px solid var(--sw-rule);min-width:0}
.sw-fr>label{padding-top:14px}
.sw-page fieldset.sw-fr{display:block}
.sw-page fieldset.sw-fr>legend{float:left;width:152px;padding-top:10px}
fieldset.sw-fr>div{margin-left:168px}
.sw-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sw-pair label{display:grid}
.sw-form textarea{resize:vertical;min-height:56px}
.sw-help{margin-top:4px}
.sw-send{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:24px}
.sw-send .sw-help{margin:0}
.sw-form-status{flex-basis:100%;min-height:20px;margin:0;font:13px/20px var(--mono);color:var(--sw-amber)}

/* LOS: the strip closes */
.sw-los{position:relative;padding:clamp(88px,10vw,128px) 0 64px}
.sw-los::before{content:"";position:absolute;top:0;left:calc(var(--cx) + var(--cw) / 2);width:1px;height:6px;background:var(--sw-tick)}
.sw-los-c{margin-left:var(--cx);width:var(--cw);padding-inline:var(--pad);text-align:center;font:13px/20px var(--sans);color:var(--sw-support)}
.sw-disc{display:block;width:64px;height:64px;margin:0 auto 20px}
.sw-disc-n{fill:#05080D}.sw-disc-d{fill:#8E8A74}.sw-disc-o{fill:none;stroke:var(--sw-tick)}
.sw-disc *{vector-effect:non-scaling-stroke}
.sw-vlog{max-width:34em;margin:0 auto 32px;font:11px/18px var(--mono);letter-spacing:.1em}
.sw-vlog b{color:var(--sw-amber);font-weight:400}
.sw-los-c .sw-wm{margin-bottom:8px}
.sw-los-c p+p{margin-top:4px}
.sw-lix{display:flex;flex-wrap:wrap;justify-content:center;gap:0 18px;margin-top:28px;font:11px/16px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.sw-lix a{display:inline-flex;align-items:center;min-height:44px;color:var(--sw-support);text-decoration:none}
.sw-lix a:hover{color:var(--sw-ink)}

/* ---------- motion: nothing flies in; blocks are recorded top to bottom by a line ---------- */
@property --sl{syntax:"<number>";inherits:true;initial-value:0}
@media (prefers-reduced-motion:no-preference){
  .is-js .sw-e{animation:sw-draw .6s linear backwards}
  .is-gl .sw-cv{transition:opacity .9s linear}
  .is-js:not(.sw-typed) .sw-aos .sw-ph>span:first-child,.is-js .sw-work .sw-ph>span:first-child{display:inline-block;overflow:hidden;animation:sw-type .36s steps(9) .48s both}
  .is-js .sw-scan{clip-path:inset(0 0 calc(100% - var(--sp)) 0);transition:--sp .42s linear,--sl 0s .42s}
  .is-js .sw-scan:not(.is-in){--sp:0%;--sl:1}
  .is-js .sw-scan::after{content:"";position:absolute;z-index:5;left:0;right:0;top:calc(var(--sp) - 1px);height:1px;background:var(--sw-amber);opacity:var(--sl);pointer-events:none}
  .is-js .sw-x.sw-scan{transition:--sp .42s linear,--sl 0s .42s,background-size .2s linear .42s}
  .is-js .sw-x:not(.is-in){background-size:100% calc(100% - 16px)}
  .is-js .sw-x::before{transition:opacity .2s .42s}
  .is-js .sw-x:not(.is-in)::before{opacity:0}
  .is-js .sw-strips.sw-scan{transition-duration:.52s,0s}
  .is-js .sw-st[aria-expanded="true"] .sw-sv{animation:sw-rec .6s linear both}
  .is-js .sw-st[aria-expanded="true"]::after{content:"";position:absolute;z-index:1;left:0;right:0;top:0;height:1px;background:var(--sw-amber);animation:sw-recl .6s linear both;pointer-events:none}
  @supports (animation-timeline:view()){
    .is-js .sw-scan,.is-js .sw-scan:not(.is-in){--sp:100%;--sl:0;transition:none;animation:sw-sp linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
    .is-js .sw-x.sw-scan:not(.is-in){transition:background-size .2s linear}
  }
}
.sw-scan{position:relative}
.is-js .sw-ents.is-swap{animation:sw-sp .42s linear both}
@keyframes sw-sp{from{--sp:0%;--sl:1}96%{--sl:1}to{--sp:100%;--sl:0}}
@keyframes sw-type{from{max-width:0}to{max-width:14ch}}
@keyframes sw-rec{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
@keyframes sw-recl{from{top:0;opacity:1}96%{opacity:1}to{top:100%;opacity:0}}
@keyframes sw-draw{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 calc(100% - 100vh) 0)}}
@media (prefers-reduced-motion:reduce){.sw-st{transition:none}}
@media (min-width:1100px) and (max-height:819px){.sw-page h1{font-size:3rem;line-height:52px}.sw-dl{margin-bottom:28px}.sw-acts{margin-top:24px}}

/* ---------- 700-1099: the column at the left, one margin at the right ---------- */
@media (max-width:1099px){
  .sw-nadir{display:none}
  .sw-aos{grid-template-rows:repeat(10,auto)}
  .sw-aos-l,.sw-aos-c{display:contents}
  .sw-aos-l>*,.sw-aos-c>*{grid-column:2;max-width:none;padding-inline:var(--pad)}
  .sw-aos-c>.sw-slot{order:-2;width:min(100%,var(--stage-h) - 211px);margin-top:24px}
  .sw-dl{margin:28px 0 20px}
  .sw-acts{flex-direction:row;flex-wrap:wrap;margin:28px 0 8px}
  .sw-aos-cap{margin-top:24px;text-align:left}
  .sw-aos-r{grid-column:3;grid-row:1/-1;padding-top:24px}
  .sw-aos-r #sw-working{display:none}
  .sw-aos-c #sw-working{margin-top:16px;border-left:2px solid var(--sw-amber)}
  .sw-pnext .sw-pn2{flex-direction:column}
  .sw-fr-b small{display:none}
  .sw-fr-b{grid-template-columns:26px 16px 1fr}
  .sw-fleet{padding-top:52svh;min-height:0}
  .sw-fleet-l{grid-column:2;position:relative;top:0;background:var(--sw-bg);border-top:1px solid var(--sw-tick);padding:24px var(--pad) 32px}
  .sw-fleet-r{grid-column:3;padding-top:0;position:relative;top:0}
  .sw-psat{grid-template-columns:minmax(0,1fr)}
  .sw-psat .sw-sky{margin:0 0 10px 8px}
  .sw-sats{grid-template-columns:1fr;gap:12px}
  .sw-sp{height:auto;min-height:56px}
  .sw-pass-h{grid-column:2;grid-row:1;position:relative;top:0;margin:0;padding:20px var(--pad) 24px;background:var(--sw-bg);border-top:1px solid var(--sw-tick)}
  .sw-run{grid-row:2}
  .sw-rm .sw-run,.sw-nogl .sw-run{grid-row:2}
  .sw-plog{display:none}
  .sw-lstrip{display:flex;position:absolute;left:0;right:0;bottom:0;min-height:44px;align-items:center;padding:4px var(--gut);background:var(--sw-veil);font:12px/16px var(--mono);color:var(--sw-ink)}
  .sw-rm .sw-lstrip,.sw-nogl .sw-lstrip{display:none}
.sw-lstrip time{color:var(--sw-support);margin-right:8px}
  .sw-logf{display:block;grid-column:2;padding:24px var(--pad) 0}
  .sw-logf li{grid-template-columns:62px 1fr}
  .sw-ch>.sw-ml{grid-column:3}
  .sw-ch:has(>.sw-ml)>.sw-mr.sw-r2{grid-row:3}
  .sw-bld>.sw-gls{grid-column:2;grid-row:auto;margin-top:28px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .sw-x{text-align:left;padding-left:calc(var(--cx) + var(--pad))}
  .sw-x>span{margin:0;max-width:none}
  .sw-clean{padding-inline:var(--gut)}
  .sw-askm{grid-row:2/5}
  .sw-fr{grid-template-columns:1fr;gap:0}
  .sw-fr>label{padding-top:6px}
  .sw-page fieldset.sw-fr>legend{float:none;width:auto;padding:6px 0 8px}
  fieldset.sw-fr>div{margin-left:0}
}

/* ---------- < 700: the phone's whole width is the swathe ---------- */
@media (max-width:699px){
  .sw-page{--t-body:1rem}
  .sw-nav{gap:10px}
  .sw-wm{font-size:12px;letter-spacing:.12em;gap:8px}
  .sw-wm-mk{width:28px}
  .sw-nav-r{gap:12px}
  .sw-mark{display:none}
  .sw-aos,.sw-ch,.sw-fleet,.sw-pass,.sw-phud{grid-template-columns:var(--cx) minmax(0,1fr) var(--cx)}
  .sw-ml,.sw-mr,.sw-ch>.sw-ml{grid-column:2;padding-inline:var(--pad)}
  .sw-r2,.sw-ch:has(>.sw-ml)>.sw-mr.sw-r2{grid-row:auto}
  .sw-aos{display:flex;flex-direction:column;padding-bottom:24px}
  .sw-aos-r{display:contents}
  .sw-aos-l>*,.sw-aos-c>*,.sw-aos-r>*{margin-inline:var(--cx);padding-inline:var(--pad)}
  .sw-aos-c>.sw-slot{order:-2;margin:16px var(--cx) 0;width:calc(100% - 2 * var(--cx));padding:0}
  .sw-keys{display:none}
  .sw-is-model .sw-wm span{display:none}
  .sw-bk1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .sw-poster,.sw-wb{top:16px}
  .sw-hs{order:-1;align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;padding-block:0;border-top:1px solid var(--sw-rule);border-bottom:1px solid var(--sw-rule);font:12px/16px var(--mono);white-space:nowrap}
  .sw-hs p{min-width:0;flex:1 1 auto;padding-block:6px;white-space:pre-line;font-size:11px;line-height:15px;letter-spacing:.02em}
  .sw-hs-b{min-height:44px;min-width:56px;padding:0 0 0 12px;background:none;border:0;border-left:1px solid var(--sw-rule);color:var(--sw-ink);font:11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
  .sw-dl{margin:16px 0}
  .sw-aos h1{margin-bottom:20px}
  .sw-sub{font-size:1rem;line-height:25px}
  .sw-acts{margin:24px var(--cx) 0}
  .sw-acts .sw-btn{flex:1}
  .sw-acts .sw-btn-q{display:none}
  .sw-lede{font-size:1.0625rem;line-height:27px}
  button.sw-f{padding:12px 2px;margin:-12px -2px}
  .sw-putc,.sw-psun,.sw-pnext,.sw-aos-r>.sw-code{display:none}
  .sw-pfleet{order:1;margin-top:24px}
  .sw-pfleet .sw-ph{display:none}
  .sw-flb{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:0 8px;background:none;border:0;color:var(--sw-ink);font:11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
  .sw-flb[aria-expanded="true"] .sw-ic{transform:rotate(90deg)}
  .sw-fl{display:none}
  .sw-fl.is-open{display:block}
  .sw-fr-b{height:44px;border-top:1px solid var(--sw-rule)}
  .sw-fleet{display:block;padding:52svh 0 12vh}
  .sw-fleet-l,.sw-fleet-r{margin-inline:var(--cx);padding-inline:var(--pad);background:var(--sw-bg)}
  .sw-fleet-r{padding-bottom:24px}
  .sw-sats{gap:0}
  .sw-sp{grid-template-columns:34px 1fr auto;column-gap:8px;min-height:56px;align-content:center;border-top:1px solid var(--sw-rule);background:var(--sw-bg)}
  .sw-sp::after{display:none}
  .sw-sp b{grid-row:1/3}
  .sw-sp .c{grid-column:3;grid-row:1/3;align-self:center}
  .sw-pass-r,.sw-pass-h{grid-column:2}
  .sw-pass-r{display:none}
  .sw-x{padding-inline:calc(var(--cx) + var(--pad))}
  .sw-strips{height:420px;gap:6px}
  .sw-st[aria-expanded="true"]{flex-grow:3.583}
  .sw-st-l{font-size:10px;padding:8px 3px}
  .sw-tt{font-size:12px}
  .sw-tt th,.sw-tt td{padding-right:4px;height:44px}
  .sw-tt thead th{font-size:10px;letter-spacing:.06em;height:28px}
  .sw-sb{min-height:44px}
  .sw-pt{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-template-rows:auto auto}
  .sw-npt th:nth-child(4),.sw-npt td:nth-child(4){display:none}
  .sw-chips span{min-height:44px}
  .sw-pair{grid-template-columns:1fr}
  .sw-bld>.sw-gls{grid-template-columns:1fr}
  .sw-gls{display:grid}
  .sw-fig{margin-top:28px}
  .sw-dish img{aspect-ratio:4/5}
  .sw-clean{padding-inline:calc(var(--cx) + var(--pad))}
  .sw-lix{gap:0 14px}
}
/* the nav on narrow screens: in model time the chapter mark gives way, the badge stacks, and under 342 px the wordmark does */
@media (max-width:899px){.sw-is-model .sw-mark{display:none}}
@media (max-width:419px){.sw-mdl>span{flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding-block:3px}.sw-mdl b{margin-left:0}}
@media (max-width:359px){.sw-nav .sw-wm span{white-space:normal;width:min-content;line-height:1.15}}
