/* Center for Future Coastlines — site stylesheet
   Palette from the logo and the beach: sand ground, shell-white panels, logo navy ink,
   logo teal accent, logo gold for dune tones. Deep-water navy for the hero and pipeline bands. */

:root{
  --bg:#EDE6D6; --bg-2:#DCD2B8; --paper:#F7F2E6; --card:#F7F2E6;
  --ink:#173A5D; --ink-2:#2E4D6B; --muted:#455969;
  --line:#C4B79C; --line-strong:#173A5D;
  --accent:#3E8F8E; --accent-ink:#215E5D; --accent-soft:#D5E9E8;
  --marsh:#7E6B3D; --marsh-soft:#EFE6D0;
  --deep:#0C1A27; --deep-2:#112030; --deep-ink:#F4EFE5; --deep-ink-2:#C5BFB4;
  --deep-line:rgba(244,239,229,.18); --deep-teal:#6EB8B3; --deep-gold:#C4973E;
  --xsand-1:#D4C4A0; --xsand-2:#B8A882; --xsand-3:#C8B890; --xmarsh:#8FA882; --xwater:#3E8F8E;
  --display:"Barlow Condensed","BC Fallback","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --body:"Libre Franklin","Franklin Gothic Medium","Segoe UI",Helvetica,Arial,sans-serif;
  --mono:"IBM Plex Mono",Menlo,Consolas,monospace;
  --t-sm:1.1rem; --t-md:1.3rem; --t-lg:1.6rem;
  color-scheme:light;
}
/* Metric-compatible fallback so the condensed headings do not reflow when the webfont lands */
@font-face{font-family:"BC Fallback";src:local("Arial"),local("Helvetica");size-adjust:82%;ascent-override:92%;descent-override:22%}

@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0F1E2E; --bg-2:#1B2D3E; --paper:#1A2E40; --card:#1A2E40;
    --ink:#ECE5D4; --ink-2:#C8C0AC; --muted:#A3B2BD;
    --line:#3A5266; --line-strong:#D9CFB8;
    --accent:#6FC3C0; --accent-ink:#9ADAD7; --accent-soft:#1E3F44;
    --marsh:#D7B36A; --marsh-soft:#2E2A1B;
    --deep:#050C13; --deep-2:#0C1A27;
    --xsand-1:#9C8D6A; --xsand-2:#7A6C4E; --xsand-3:#8C7E5E; --xmarsh:#5E7A56; --xwater:#6FC3C0;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0F1E2E; --bg-2:#1B2D3E; --paper:#1A2E40; --card:#1A2E40;
  --ink:#ECE5D4; --ink-2:#C8C0AC; --muted:#A3B2BD;
  --line:#3A5266; --line-strong:#D9CFB8;
  --accent:#6FC3C0; --accent-ink:#9ADAD7; --accent-soft:#1E3F44;
  --marsh:#D7B36A; --marsh-soft:#2E2A1B;
  --deep:#050C13; --deep-2:#0C1A27;
  --xsand-1:#9C8D6A; --xsand-2:#7A6C4E; --xsand-3:#8C7E5E; --xmarsh:#5E7A56; --xwater:#6FC3C0;
  color-scheme:dark;
}

*{box-sizing:border-box}
[hidden]{display:none !important}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.08;margin:0;text-wrap:balance;letter-spacing:.005em}
h1{font-size:clamp(2.6rem,6.5vw,4.6rem);font-weight:700;line-height:.95;text-transform:uppercase;letter-spacing:.01em}
h2{font-size:clamp(1.8rem,3.2vw,2.5rem)}
h3{font-size:var(--t-md)}
p{margin:0}
abbr[title]{text-decoration:underline dotted;text-underline-offset:2px;cursor:help}
.eyebrow{font-family:var(--mono);font-weight:500;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin:0}
.eyebrow::before{content:"";display:inline-block;width:18px;height:1px;background:var(--accent-ink);vertical-align:middle;margin-right:8px}
.wrap{max-width:1080px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
.note{font-size:.9rem;color:var(--muted);margin-top:14px;max-width:80ch}
.note a{color:var(--accent-ink)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;font-family:var(--display);text-transform:uppercase;z-index:100;text-decoration:none}
.skip:focus{left:8px}

/* draft notice */
.draft{background:var(--deep-gold);color:var(--deep);font-size:.86rem}
.draft .wrap{padding-block:7px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.draft b{font-family:var(--mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}

/* header */
header.site{border-bottom:2px solid var(--line-strong);background:var(--bg)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;padding-block:10px;flex-wrap:wrap}
.brand{display:flex;align-items:center;text-decoration:none;color:var(--ink);flex:none}
.brand img{height:76px;width:auto;display:block}
.brand .logo-dark{display:none}
nav.top{display:flex;gap:4px 10px;flex-wrap:wrap}
nav.top a{color:var(--ink);text-decoration:none;font-family:var(--display);font-size:1.05rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:8px 6px;border-bottom:2px solid transparent}
nav.top a:hover,nav.top a[aria-current="page"]{border-bottom-color:var(--accent)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .brand .logo-light{display:none}
  :root:not([data-theme="light"]) .brand .logo-dark{display:block}
}
:root[data-theme="dark"] .brand .logo-light{display:none}
:root[data-theme="dark"] .brand .logo-dark{display:block}
@media (max-width:600px){.brand img{height:56px}nav.top a{font-size:.98rem;padding:8px 5px}}

/* dark bands */
.deep{background:var(--deep);color:var(--deep-ink);
  --ink:var(--deep-ink); --ink-2:var(--deep-ink-2); --muted:#A3B3BE; --line:var(--deep-line); --line-strong:rgba(244,239,229,.5);
  --accent:var(--deep-teal); --accent-ink:var(--deep-teal); --card:var(--deep-2); --paper:var(--deep-2); --marsh:var(--deep-gold); --bg:var(--deep)}
.hero{padding-block:clamp(52px,8vw,96px) clamp(40px,6vw,72px);position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}
.hero .lede{font-size:1.15rem;color:var(--deep-ink-2);max-width:50ch;margin-top:22px}
.hero .lede strong{color:var(--deep-ink);font-weight:600}
.hero .status{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);padding:5px 10px;font-family:var(--mono);font-size:.78rem;letter-spacing:.03em;color:var(--ink);background:transparent}
.pill .dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.focus{border:1.5px solid var(--line-strong);background:var(--deep-2);padding:20px 22px 18px}
.focus-name{font-family:var(--display);font-size:1.9rem;font-weight:700;line-height:1;margin-top:10px;text-transform:uppercase}
.focus-sub{color:var(--ink-2);font-size:.95rem;margin-top:8px}
.focus-list{margin:16px 0 0;display:grid;gap:10px}
.focus-list div{border-top:1px solid var(--line);padding-top:10px}
.focus-list dt{font-weight:600;font-size:.95rem}
.focus-list dd{margin:2px 0 0;font-size:.86rem;color:var(--muted)}
.focus svg{display:block;width:100%;height:auto;margin-top:14px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--bg);font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:9px 16px;text-decoration:none;font-size:1rem;align-self:flex-start;border:1.5px solid var(--ink);white-space:nowrap}
.btn.ghost{background:transparent;color:var(--ink)}
.btn:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:var(--bg)}
.deep .btn{background:var(--deep-teal);border-color:var(--deep-teal);color:var(--deep)}
.deep .btn.ghost{background:transparent;color:var(--deep-ink);border-color:var(--line-strong)}
.deep .btn:hover{background:var(--deep-ink);border-color:var(--deep-ink);color:var(--deep)}

/* sections */
section{padding-block:clamp(44px,7vw,84px);border-top:1px solid var(--line)}
section.tint{background:var(--bg-2)}
section.deep{border-top:0}
main>section:first-child,main>.page-head+section{border-top:0}
.page-head{background:var(--bg-2);border-bottom:2px solid var(--line-strong);padding-block:clamp(36px,6vw,64px) clamp(28px,4vw,44px)}
.page-head h1{font-size:clamp(2.2rem,5vw,3.6rem)}
.page-head .lede{font-size:1.1rem;color:var(--ink-2);max-width:60ch;margin-top:16px}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px 48px;margin-bottom:34px}
.sec-head p:not(.eyebrow){color:var(--ink-2);font-size:1.05rem}
.sec-head h2{margin-top:8px}
.prose p+p{margin-top:14px}
.mission{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.2;color:var(--ink);border-left:6px solid var(--accent);padding-left:22px;margin-block:8px 26px}
.mission cite{display:block;font-family:var(--mono);font-style:normal;font-size:.78rem;letter-spacing:.04em;color:var(--muted);margin-top:12px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.rule-cols>div{border-top:1px solid var(--line-strong);padding-top:14px}
.rule-cols h3{margin:8px 0 10px}
.rule-cols p:not(.eyebrow){font-size:.95rem;color:var(--ink-2)}
.sub{margin:44px 0 14px}
.mt{margin-top:56px}

/* facts */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:0}
.facts div{padding:18px 20px;background:var(--card)}
.facts dt{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500}
.facts dd{margin:6px 0 0;font-family:var(--mono);font-size:1rem;color:var(--ink)}
.facts dd.txt{font-family:var(--body);font-size:1.02rem}

/* overview cards */
.overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.overview a{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);background:var(--card);padding:22px;text-decoration:none;color:var(--ink);transition:border-color .2s,background .2s}
.overview a:hover{background:var(--accent-soft);border-color:var(--accent-ink)}
.overview h3{font-size:var(--t-md)}
.overview p:not(.eyebrow){font-size:.95rem;color:var(--ink-2);flex:1}
.overview .more{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}
.band{display:grid;grid-template-columns:minmax(0,2fr) auto;gap:24px 40px;align-items:center}
.band .btns{display:flex;gap:10px;flex-wrap:wrap}
.prevnext{border-top:1px solid var(--line);padding-block:26px 36px}
.prevnext .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.prevnext a{font-family:var(--display);text-transform:uppercase;font-size:var(--t-sm);font-weight:600;letter-spacing:.03em;text-decoration:none;color:var(--ink)}
.prevnext a:hover{color:var(--accent-ink)}
.prevnext small{display:block;font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:4px}
.prevnext .r{text-align:right}

/* cross-section */
.xsec{margin:0 0 22px;border:1px solid var(--line);background:var(--card);padding:16px 12px 12px}
.xsec-scroll{overflow-x:auto}
.xsec svg{display:block;width:100%;min-width:720px;height:auto;font-family:var(--body)}
.xsec figcaption,.compare figcaption{font-size:.86rem;color:var(--muted);margin-top:10px;padding-inline:6px}
.legend{list-style:none;padding:0;margin:12px 6px 0;display:flex;gap:6px 18px;flex-wrap:wrap;font-size:.84rem;color:var(--ink-2)}
.legend i{display:inline-block;width:14px;height:3px;vertical-align:middle;margin-right:6px}
.hint{display:none;font-family:var(--mono);font-size:.72rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 6px 6px}
@media (max-width:760px){.hint{display:block}}

/* system strip */
.system{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.system li{padding:18px 20px;background:var(--card)}
.system .k{font-family:var(--mono);font-size:.74rem;color:var(--accent-ink);letter-spacing:.08em}
.system h3{margin-top:6px;font-size:var(--t-sm)}
.system p{font-size:.9rem;color:var(--ink-2);margin-top:8px}
.why{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 32px}
.why li{border-top:1px solid var(--line);padding-top:12px}
.why h3{font-size:var(--t-sm);display:block}
.why p{font-size:.93rem;color:var(--ink-2);margin-top:4px}

/* baseline vs monitored comparison */
.compare{margin:0;max-width:900px}
.compare-stage{position:relative;aspect-ratio:3/1;border:1px solid var(--line);overflow:hidden;user-select:none;background:#1A2F42;touch-action:pan-y}
.compare-stage svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.cmp-top{position:absolute;top:0;left:0;height:100%;width:50%;overflow:hidden}
.cmp-top svg{right:auto;width:auto;aspect-ratio:3/1;height:100%}
.cmp-label{position:absolute;top:12px;font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#F4EFE5;opacity:.9;pointer-events:none;background:rgba(12,26,39,.55);padding:3px 8px}
.cmp-label-l{left:12px}.cmp-label-r{right:12px}
.cmp-bar{position:absolute;top:0;left:50%;width:2px;height:100%;background:#C4973E;transform:translateX(-1px);pointer-events:none}
.cmp-knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:#C4973E;border:2px solid #0C1A27;display:flex;align-items:center;justify-content:center}
.cmp-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none;-webkit-appearance:none;appearance:none}
.compare-stage{cursor:ew-resize}
.cmp-range::-webkit-slider-thumb{-webkit-appearance:none;width:36px;height:100%}
.compare-stage:focus-within .cmp-knob{outline:2px solid #F4EFE5;outline-offset:2px}

/* instrument table */
.params{width:100%;min-width:720px;border-collapse:collapse;font-size:.95rem}
.params th,.params td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.params th{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;border-bottom:1.5px solid var(--line-strong)}
.params th:nth-child(1){width:26%}.params th:nth-child(2){width:19%}.params th:nth-child(3){width:19%}
.params td:first-child{font-family:var(--display);font-size:var(--t-sm);font-weight:600;line-height:1.15}
.params td:first-child small{display:block;font-family:var(--body);font-size:.84rem;font-weight:400;color:var(--muted);margin-top:2px}
.params td.mono{font-family:var(--mono);font-size:.8rem;color:var(--ink-2)}
.tablewrap{overflow-x:auto}

/* pipeline / areas / questions */
.pipe{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);counter-reset:step}
.pipe li{padding:16px 14px;background:var(--card)}
.pipe li::before{counter-increment:step;content:"0" counter(step);font-family:var(--mono);font-size:.74rem;color:var(--accent-ink);letter-spacing:.08em;display:block}
.pipe h3{font-size:var(--t-sm);margin-top:4px;line-height:1.1}
.pipe p{font-size:.86rem;color:var(--ink-2);margin-top:6px}
.areas{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.areas li{border:1px solid var(--line);padding:16px 18px;background:var(--card)}
.areas h3{font-size:var(--t-sm)}
.areas p{font-size:.9rem;color:var(--ink-2);margin-top:6px}
.questions{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;counter-reset:q;border-top:1px solid var(--line-strong)}
.questions li{padding:20px 0 22px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:44px 1fr;column-gap:12px}
.questions li::before{counter-increment:q;content:"0" counter(q);grid-row:1/4;font-family:var(--mono);font-size:.8rem;color:var(--accent-ink);padding-top:6px}
.questions h3{font-size:var(--t-lg);line-height:1.05;font-weight:700}
.questions i{font-style:normal;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.questions p{font-size:.95rem;color:var(--ink-2);margin-top:10px}

/* roadmap */
.timeline{list-style:none;padding:0;margin:0 0 0 6px;border-left:2px solid var(--line-strong)}
.timeline li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:0 0 30px 24px;position:relative}
.timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;background:var(--bg);border:2px solid var(--accent);border-radius:50%}
.timeline time{font-family:var(--mono);font-size:.82rem;color:var(--muted);padding-top:2px}
.timeline .tag{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);display:inline-block;margin-right:10px}
.timeline .status{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;display:inline-block;padding:1px 7px;border:1px solid var(--line-strong)}
.timeline .status.done{background:var(--accent-soft);border-color:var(--accent-ink)}
.timeline .status.todo{color:var(--muted)}
.timeline h3{font-size:var(--t-md);margin-top:6px}
.timeline p{font-size:.95rem;color:var(--ink-2);margin-top:6px;max-width:70ch}

/* support */
.cta-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cta{border:1px solid var(--line);background:var(--card);padding:22px;display:flex;flex-direction:column;gap:10px}
.cta p{color:var(--ink-2);font-size:.95rem;flex:1}
.cta .addr{font-family:var(--mono);font-size:.8rem;color:var(--accent-ink);flex:0}
.levels{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.levels li{border-top:1px solid var(--line-strong);padding-top:10px}
.levels h3{font-size:var(--t-sm)}
.levels em{display:block;font-style:normal;font-family:var(--mono);font-size:.88rem;color:var(--accent-ink);margin:2px 0 8px;font-variant-numeric:tabular-nums}
.levels p{font-size:.9rem;color:var(--ink-2)}
.ways{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.ways li{padding:16px 18px;background:var(--card)}
.ways h3{font-size:var(--t-sm)}
.ways p{font-size:.9rem;color:var(--ink-2);margin-top:6px}
.howto{border:1px solid var(--line-strong);background:var(--card);padding:22px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px 32px}
.howto h3{font-size:var(--t-sm)}
.howto p{font-size:.93rem;color:var(--ink-2);margin-top:6px}
.howto .ph{font-family:var(--mono);font-size:.84rem;background:var(--marsh-soft);color:var(--ink);padding:0 4px}
.disclose{font-size:.86rem;color:var(--ink-2);border:1px solid var(--line-strong);padding:12px 16px;margin-top:22px;max-width:80ch}
.disclose b{font-weight:600}
.signup{border:1px solid var(--line);background:var(--card);padding:20px 22px;display:grid;grid-template-columns:minmax(0,2fr) auto;gap:16px 24px;align-items:center}
.signup p{font-size:.95rem;color:var(--ink-2)}

/* contact */
.contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;margin:0;background:var(--line);border:1px solid var(--line)}
.contacts div{padding:20px 22px;background:var(--card)}
.contacts dt{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.contacts dd{margin:8px 0 0;font-size:.98rem;font-weight:600;overflow-wrap:break-word}
.contacts dd a{color:var(--ink);text-decoration-color:var(--accent)}
.contacts dd a:hover{color:var(--accent-ink)}
.contacts dd small{display:block;font-weight:400;font-size:.86rem;color:var(--muted);margin-top:4px}

/* footer */
footer{border-top:2px solid var(--line-strong);padding-block:32px 40px;font-size:.9rem;color:var(--muted);background:var(--bg-2)}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}
footer h2{color:var(--ink);font-size:var(--t-sm);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px}
footer address{font-style:normal;line-height:1.55}
footer a{display:inline-block;padding:2px 0}
footer .fine{font-family:var(--mono);font-size:.76rem;letter-spacing:.02em;margin-top:12px}
footer .legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px;font-size:.8rem;line-height:1.5;color:var(--muted)}

@media (max-width:900px){
  .pipe{grid-template-columns:repeat(4,minmax(0,1fr))}
  .grid-4{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .hero .wrap,.sec-head,.grid-3,.cta-row,footer .wrap,.areas,.questions,.overview,.band,.signup{grid-template-columns:1fr}
  .system{grid-template-columns:1fr 1fr}
  .timeline li{grid-template-columns:1fr;gap:4px}
  .prevnext .r{text-align:left}
}
@media (max-width:520px){
  .pipe,.system,.grid-4{grid-template-columns:1fr}
}

@media print{
  .draft,nav.top,.prevnext,.skip,.compare,.signup{display:none !important}
  body{background:#fff;color:#000}
  .deep,.deep *{background:#fff !important;color:#000 !important}
  .hero{padding-block:16px}
  section{page-break-inside:avoid}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em;color:#444}
}
