:root{--paper:#efe6cf;--paper-2:#e4d7b5;--card:#f6efdd;--ink:#29241b;--muted:#675e4c;--line:#29241b2e;--line-strong:#29241b66;--accent:#a3302a;--accent-ink:#fff8ec;--navy:#23395b;--brass:#8a6a22;--sea:#c8d2cc;--land:#ece0bf;--coast:#3d3528;--grat:#23395b38;--route:#a3302a;--train:#1d1a14;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:"Courier New", Courier, ui-monospace, "SFMono-Regular", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0f1519;--paper-2:#151e24;--card:#182229;--ink:#ebe2cc;--muted:#a39e8b;--line:#ebe2cc24;--line-strong:#ebe2cc57;--accent:#d65b4e;--accent-ink:#160e0b;--navy:#9db9de;--brass:#c8a24a;--sea:#12212a;--land:#25313a;--coast:#c9bd9c;--grat:#9db9de29;--route:#e0705f;--train:#ebe2cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#0f1519;--paper-2:#151e24;--card:#182229;--ink:#ebe2cc;--muted:#a39e8b;--line:#ebe2cc24;--line-strong:#ebe2cc57;--accent:#d65b4e;--accent-ink:#160e0b;--navy:#9db9de;--brass:#c8a24a;--sea:#0d1a22;--land:#2b3842;--coast:#c9bd9c;--grat:#9db9de29;--route:#e0705f;--train:#ebe2cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:inherit}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 .5em;font-weight:600;line-height:1.15}h1{font-size:clamp(2.1rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.4vw,2.4rem)}h3{font-size:1.2rem}p{margin:0 0 1em}.muted{color:var(--muted)}.eyebrow{font:600 .78rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:.9rem}.nav{z-index:10;background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px max(16px,50vw - 590px);display:flex;position:sticky;top:0}.logo{font:700 1.05rem/1 var(--serif);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:10px;text-decoration:none;display:flex}.mark{background:url(../favicon.svg) 50%/contain no-repeat;flex:none;width:22px;height:22px}.nav nav{align-items:center;gap:22px;font-size:.95rem;display:flex}.nav nav a:not(.btn){color:var(--muted);text-decoration:none}.nav nav a:not(.btn):hover{color:var(--ink)}.btn{background:var(--accent);color:var(--accent-ink);font:700 1rem/1.1 var(--sans);box-shadow:0 2px 0 color-mix(in srgb, var(--accent) 55%, #000);border:1px solid #0000;border-radius:3px;padding:.75em 1.3em;text-decoration:none;display:inline-block}.btn:hover{filter:brightness(1.08)}.btn:focus-visible,a:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.btn.small{padding:.5em .95em;font-size:.9rem}.btn.ghost{color:var(--ink);border-color:var(--line-strong);box-shadow:none;background:0 0}.hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,4vw,56px);max-width:1180px;margin:0 auto;padding:clamp(28px,6vw,72px) 16px clamp(32px,6vw,64px);display:grid}.hero-copy>p{max-width:34em;font-size:1.12rem}.cta{flex-wrap:wrap;align-items:center;gap:12px 18px;margin:1.6rem 0 1.8rem;display:flex}.cta .note{color:var(--muted);font-size:.92rem}.facts{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:16px 0 0;list-style:none;display:grid}.facts li{color:var(--muted);font-size:.82rem;line-height:1.3}.facts b{font:600 1.6rem/1.1 var(--serif);color:var(--ink);margin-bottom:2px;display:block}.chart-wrap{border:1px solid var(--line-strong);background:var(--card);margin:0;padding:8px;position:relative;box-shadow:0 18px 40px -24px #00000073}.chart-wrap figcaption{font:.78rem/1.4 var(--mono);color:var(--muted);padding:8px 2px 0}.chart{width:100%;height:auto;display:block}.chart .sea{fill:var(--sea)}.chart .land{fill:var(--land);stroke:var(--coast);stroke-width:1.2px;stroke-linejoin:round}.chart .grat line{stroke:var(--grat);stroke-width:1px}.chart .grat text{fill:var(--navy);opacity:.6;font:14px var(--mono)}.chart .mines circle{fill:none;stroke:var(--navy);stroke-width:1.2px}.chart .routes path{fill:none;stroke:var(--route);stroke-width:1.8px;stroke-dasharray:7 5}.chart .trains use{fill:var(--train)}.chart .tow{stroke:var(--train);stroke-width:.8px}.chart .beaches circle{fill:var(--accent)}.chart .beaches text{fill:var(--accent-ink);font:700 15px var(--sans);text-anchor:middle}.chart .towns circle{fill:var(--coast)}.chart .towns text{fill:var(--ink);font:600 18px var(--serif);letter-spacing:.04em;font-variant:small-caps}.chart .sealabels text{fill:var(--navy);opacity:.7;font:italic 21px var(--serif);letter-spacing:.3em;text-anchor:middle}.chart .rose circle{fill:none;stroke:var(--navy);opacity:.55}.chart .rose path{fill:var(--navy);opacity:.35}.chart .rose .rose-n{fill:var(--accent);opacity:.9}.chart .rose text{fill:var(--navy);font:700 13px var(--serif);text-anchor:middle}.chart .cartouche rect{fill:var(--card);stroke:var(--coast)}.chart .cartouche text{fill:var(--ink);font:700 13px var(--serif);letter-spacing:.12em;text-anchor:middle}.chart .cartouche .small{font:italic 11px var(--serif);letter-spacing:.02em;fill:var(--muted)}.section{border-top:1px solid var(--line);max-width:1180px;margin:0 auto;padding:clamp(44px,7vw,88px) 16px}.section-head{max-width:46em;margin-bottom:2.2rem}.section-head p{font-size:1.06rem}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:2px;padding:22px 22px 8px}.card h3{align-items:center;gap:10px;display:flex}.card p{color:var(--muted);font-size:.98rem}.card ul{color:var(--muted);margin:0 0 1em;padding-left:1.1em;font-size:.98rem}.card li{margin-bottom:.35em}.insignia{flex:none;width:28px;height:28px}.side-card{border-top:4px solid var(--ink)}.side-card.gb{border-top-color:var(--accent)}.score{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,56px);display:grid}.gauge{width:100%;max-width:520px;height:auto;display:block}.gauge .track{fill:var(--paper-2);stroke:var(--line-strong)}.gauge .bar-de{fill:var(--ink)}.gauge .need{stroke:var(--accent);stroke-width:2.5px}.gauge text{fill:var(--muted);font:12px var(--mono)}.gauge .big{fill:var(--ink);font:600 40px var(--serif)}.gauge .label-need{fill:var(--accent)}.window{width:100%;height:auto;margin-top:8px;display:block}.window .tide{fill:none;stroke:var(--navy);stroke-width:2px}.window .ok{fill:color-mix(in srgb, var(--accent) 16%, transparent)}.window .moon-dark{fill:var(--paper);stroke:var(--line-strong)}.window .moon-lit{fill:var(--ink)}.window text{fill:var(--muted);font:11px var(--mono)}.window .axis{stroke:var(--line-strong)}.pad{background:var(--card);border:1px solid var(--line-strong);font:.95rem/1.55 var(--mono);max-width:820px;padding:8px 0}.pad p{border-bottom:1px dashed var(--line);grid-template-columns:9.5em minmax(0,1fr);gap:12px;margin:0;padding:10px 20px;display:grid}.pad p:last-child{border-bottom:0}.pad .who{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;padding-top:.2em;font-size:.78rem}.pad em{font-style:normal;font-weight:700}.signal-note{max-width:46em;color:var(--muted);margin-top:1.2rem;font-size:.95rem}.barges{width:100%;height:46px;color:var(--ink);opacity:.85;display:block}.packs{flex-wrap:wrap;gap:10px;margin:0 0 1.2rem;padding:0;list-style:none;display:flex}.packs li{font:.86rem/1.2 var(--mono);border:1px dashed var(--line-strong);color:var(--muted);padding:8px 12px}.packs b{color:var(--ink)}.limits>*{max-width:46em}.limits ul{color:var(--muted);padding-left:1.1em}.limits li{margin-bottom:.5em}.footer{border-top:1px solid var(--line);gap:10px;padding:28px max(16px,50vw - 590px) 40px;font-size:.9rem;display:grid}.footer a{color:var(--ink)}.footer .muted a{color:var(--muted)}.footer .links{flex-wrap:wrap;gap:6px 16px;display:flex}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(14px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}}@media (max-width:900px){.hero,.score{grid-template-columns:minmax(0,1fr)}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav nav a:not(.btn){display:none}}@media (max-width:620px){body{font-size:16px}.grid,.grid.two{grid-template-columns:minmax(0,1fr)}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pad p{grid-template-columns:minmax(0,1fr);gap:2px}}
