
:root{--navy:#10283b;--ink:#172d3b;--paper:#f5f0e6;--card:#fffaf0;--gold:#be9850;--rule:#d9cebb;--muted:#54616a;--teal:#1f6775}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,'Times New Roman',serif}a{color:var(--teal);text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.top{background:var(--navy);color:var(--paper);padding:14px 24px;font:700 12px/1.5 Arial,sans-serif;letter-spacing:.12em}.top-inner{max-width:1160px;margin:auto;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.top a{color:var(--paper);text-decoration:none}.masthead{max-width:1160px;margin:auto;padding:34px 24px 22px}.brand{font:700 12px Arial,sans-serif;letter-spacing:.25em;color:var(--muted);margin-bottom:5px}.masthead h1{font-size:clamp(38px,7vw,76px);line-height:1.06;font-weight:400;letter-spacing:-.035em;margin:0}.edition{font:700 12px/1.6 Arial,sans-serif;letter-spacing:.1em;border-top:3px double var(--ink);border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;gap:14px;padding:12px 0;margin-top:23px;flex-wrap:wrap}.nav{display:flex;gap:25px;flex-wrap:wrap;margin-top:18px;font:700 13px Arial,sans-serif}.nav a{color:var(--ink);text-decoration:none}.nav a:hover{text-decoration:underline}main{max-width:1160px;margin:auto;padding:8px 24px 56px}.hero{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:38px;border-bottom:3px double var(--ink);padding:30px 0 36px}.kicker{font:700 11px/1.7 Arial,sans-serif;letter-spacing:.16em;color:var(--teal);text-transform:uppercase;display:block;margin-bottom:11px}.hero h2{font-size:clamp(36px,5vw,58px);line-height:1.07;font-weight:400;letter-spacing:-.028em;margin:0 0 20px}.standfirst{font-size:21px;line-height:1.6;max-width:710px;margin:0}.hero-aside{background:var(--navy);color:var(--paper);padding:25px;border-top:4px solid var(--gold);align-self:start}.hero-aside .kicker{color:#dbc594}.hero-aside h3{font-size:25px;font-weight:400;margin:0 0 16px}.hero-aside p{font-size:16px;color:#dce4e6}.hero-aside a{color:#f1d69a}.numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid #526270;padding-top:18px}.numbers strong{font-size:32px;font-weight:400;display:block;line-height:1.2}.numbers span{font:11px/1.5 Arial,sans-serif;color:#d5dde0}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;border-bottom:1px solid var(--ink);padding:30px 0 9px;margin-bottom:22px}.section-head h2{font-size:30px;font-weight:400;margin:0}.section-head span{font:11px/1.5 Arial,sans-serif;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.story-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.story{border-top:3px solid var(--gold);padding-top:16px}.story h3{font-size:27px;line-height:1.2;font-weight:400;margin:0 0 14px}.story p{margin:0 0 15px}.story .story-foot{font:700 12px/1.6 Arial,sans-serif;margin-top:18px}.history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.history{background:#ede6d8;border-top:3px solid var(--teal);padding:22px}.history h3{font-size:24px;font-weight:400;line-height:1.25;margin:0 0 14px}.history p{margin:0 0 14px}.source-note{font:12px/1.6 Arial,sans-serif;color:var(--muted)}.scope-note{font:14px/1.7 Arial,sans-serif;color:var(--muted);margin-top:0}.ledger-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.milestone{background:var(--card);border:1px solid var(--rule);padding:20px}.milestone h3{font-size:25px;font-weight:400;line-height:1.2;margin:10px 0}.milestone p{margin:0;font-size:15px}.table-wrap{overflow-x:auto;margin:18px 0;border:1px solid var(--rule);background:var(--card)}table{width:100%;border-collapse:collapse;font:14px/1.6 Arial,sans-serif}caption{text-align:left;font:bold 18px Georgia,serif;padding:16px}th,td{padding:12px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}th{font-size:11px;letter-spacing:.07em;text-transform:uppercase;background:#e9e2d4}tbody tr:last-child td{border-bottom:0}td:first-child{font-weight:700}.race{border-top:2px solid var(--ink);padding:22px 0;margin-top:26px;scroll-margin-top:20px}.race h3{font-size:28px;font-weight:400;line-height:1.2;margin:0 0 9px}.race .meta{font:13px/1.6 Arial,sans-serif;color:var(--muted)}.result-callout{border-left:3px solid var(--gold);padding:8px 16px;font-size:18px;margin:14px 0;background:#ece5d7}.race details{font:14px/1.7 Arial,sans-serif;padding:12px 0}.race summary{font-weight:700;cursor:pointer}.subsection{font-size:20px;font-weight:400;margin:20px 0 5px}.sources ul{padding-left:20px}.sources li{margin-bottom:12px;font-size:15px}.sources .source-note{display:block;margin-top:3px}.footer{background:var(--navy);color:#d7e1e5;padding:28px 24px;font:13px/1.7 Arial,sans-serif}.footer-inner{max-width:1112px;margin:auto;display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap}.footer a{color:#e3c584}.timeline{border-left:3px solid var(--gold);padding-left:20px}.timeline p{margin:0 0 18px}.timeline b{font:700 12px Arial,sans-serif;letter-spacing:.05em;display:block;color:var(--teal)}@media(max-width:760px){body{font-size:16px}.masthead{padding-top:26px}.hero,.story-grid,.story-grid.two,.history-grid,.ledger-grid{grid-template-columns:1fr}.hero{gap:25px}.hero h2{font-size:39px}.hero-aside{width:100%}.standfirst{font-size:19px}.section-head h2{font-size:26px}.section-head span{max-width:130px;text-align:right}.nav{gap:16px}th,td{padding:10px;font-size:13px}.milestone h3{font-size:24px}}@media print{body{background:white}.top,.nav,.footer{display:none}.hero-aside{background:#eee;color:#111}.hero-aside p,.hero-aside .kicker,.numbers span{color:#333}.story-grid,.story-grid.two,.history-grid{display:block}.story,.history,.race{break-inside:avoid;margin-bottom:22px}main{padding:0}a{color:inherit}.table-wrap{overflow:visible}}

.hero-visual{margin:0 0 8px;border-bottom:3px double var(--ink);padding:0 0 32px}
.hero-visual figure{margin:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,.7fr);gap:22px;align-items:end}
.hero-visual img{display:block;width:100%;max-height:520px;object-fit:cover;border:1px solid var(--rule)}
.hero-visual figcaption{font:14px/1.65 Arial,sans-serif;color:var(--muted);padding:0 6px}
.hero-visual figcaption strong{display:block;font:400 28px/1.15 Georgia,'Times New Roman',serif;color:var(--ink);margin-bottom:8px}
@media(max-width:760px){.hero-visual figure{grid-template-columns:1fr}.hero-visual img{max-height:none}}

/* Archive routes inherit the same paper, ink and type as the Sailing Gazette. */
.shell{min-height:100vh}.masthead{padding-bottom:14px}.masthead h1 a{color:var(--ink);text-decoration:none}.archive-brand{font:700 12px Arial,sans-serif;letter-spacing:.25em;color:var(--muted);margin-bottom:5px}.edition strong{font-weight:700}.edition-ledger{display:flex;gap:16px;flex-wrap:wrap;font:12px/1.5 Arial,sans-serif;padding:12px 0;color:var(--muted);border-bottom:1px solid var(--rule)}.edition-ledger b{color:var(--ink)}
.sidebar{max-width:1112px;margin:0 auto 10px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font:13px/1.6 Arial,sans-serif}.sidebar summary{cursor:pointer;padding:12px 0;font-weight:700;color:var(--muted)}.directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 0 16px}.directory a{text-decoration:none;padding:7px;border:1px solid var(--rule)}.directory a:hover,.directory a.active{background:#e9e2d4;color:var(--ink)}.nav a.active{color:var(--teal);border-bottom:2px solid var(--gold);padding-bottom:5px}.nav-section,.sidebar-note{display:none}.content{padding-top:0}.section{margin-top:34px}.section-title{display:flex;gap:16px;border-bottom:1px solid var(--ink);padding-bottom:9px;margin-bottom:22px}.section-title h2{font-size:30px;font-weight:400;line-height:1.2;margin:0}.section-title p{font:12px/1.6 Arial,sans-serif;color:var(--muted);margin:8px 0 0}.hero{margin-top:20px}.hero h2{font-size:clamp(36px,4.4vw,56px)}.hero-aside p{line-height:1.6}.story h3 a{color:var(--ink);text-decoration:none}.story h3 a:hover{text-decoration:underline}.journal-score{font:700 13px/1.7 Arial,sans-serif;color:var(--teal)}.journal-score strong{color:var(--ink);white-space:nowrap}.story-foot{font:700 12px/1.7 Arial,sans-serif}.story p{font-size:16px;line-height:1.7}.source-note{line-height:1.7}.table-wrap{margin-top:0}table{min-width:660px}th{white-space:nowrap}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.rank{color:var(--teal)}.table-wrap.tall{max-height:70vh}.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{min-width:0;padding:22px;background:var(--card);border:1px solid var(--rule);margin-bottom:14px}.card h3{font:400 24px/1.25 Georgia,serif;margin:0 0 12px}.card p{margin:8px 0;color:var(--ink);font-size:16px;line-height:1.7}.pill{display:inline-block;font:700 11px/1.5 Arial,sans-serif;padding:5px 8px;background:#e9e2d4;color:var(--teal);margin-bottom:12px}.game-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:18px;align-items:center;padding:17px 0;text-decoration:none;border-bottom:1px solid var(--rule);color:var(--ink)}.game-row:hover{background:#eee7da}.date{font:12px/1.6 Arial,sans-serif;color:var(--muted)}.match{font:18px/1.5 Georgia,serif}.muted{font:12px/1.6 Arial,sans-serif;color:var(--muted)}.score{font:400 28px/1.2 Georgia,serif;color:var(--ink)}.round-head{font:700 12px/1.5 Arial,sans-serif;letter-spacing:.1em;color:var(--teal);margin-top:24px}.scorehero{background:var(--navy);color:var(--paper);padding:24px;text-align:center;border-top:4px solid var(--gold)}.scorehero .teams{font-size:24px}.scorehero .bigscore{font-size:56px;line-height:1.2;margin:12px 0;color:var(--paper)}.scorehero .meta{font:12px/1.6 Arial,sans-serif;color:#d5dde0}.match-story-head{padding:30px 0}.match-story-head h2{font-size:clamp(34px,4.5vw,52px);font-weight:400;letter-spacing:-.02em;line-height:1.12;margin:0 0 18px}.recap p:first-child::first-letter{float:left;font-size:48px;line-height:1;margin:4px 8px 0 0;color:var(--teal)}.event{display:grid;grid-template-columns:55px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--rule);font:14px/1.7 Arial,sans-serif}.minute{font-weight:700;color:var(--teal)}.badge{display:inline-block;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.03em;background:#e9e2d4;padding:4px 6px}.badge.goal{color:#205332;background:#e2eddf}.badge.card{color:#6d5419;background:#f1e1b7}.mini-record{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--rule);padding:13px 0;font:14px/1.6 Arial,sans-serif}.callout{background:#ede6d8;border-left:3px solid var(--gold);padding:18px;font-size:17px;line-height:1.7}.empty,.loading{padding:26px;background:var(--card);border:1px solid var(--rule);color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{background:var(--card);border-top:3px solid var(--gold);padding:18px}.stat b{display:block;font:400 30px/1.3 Georgia,serif}.stat span{font:11px/1.6 Arial,sans-serif;color:var(--muted)}a,button,summary{touch-action:manipulation}.menu-btn{display:none}
@media(max-width:1160px){.sidebar{margin-left:24px;margin-right:24px}}@media(max-width:760px){.directory{grid-template-columns:repeat(2,minmax(0,1fr))}.g2,.g3,.g4,.stats{grid-template-columns:1fr}.edition{font-size:11px}.edition-ledger{font-size:11px;gap:8px 16px}.hero h2{font-size:39px}.game-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.game-row .date{grid-column:1/-1}.game-row .match{font-size:16px}.scorehero .teams{font-size:21px}.card{padding:16px}.mini-record{font-size:12px}.section-title h2{font-size:26px}.footer-inner{font-size:12px}.story-grid.two{gap:30px}}@media print{.sidebar,.edition-ledger{display:none}.scorehero{background:#eee;color:#111}.scorehero .bigscore,.scorehero .meta{color:#111}.table-wrap.tall{max-height:none}.card,.story{break-inside:avoid}.g2,.g3{display:block}}

/* Full engraving is visible on every screen size. */
.hero-visual{padding-top:28px}.hero-visual img{height:auto;max-height:none;object-fit:contain}.hero-visual figcaption .source-note{display:block;margin-top:14px}.hero-visual{break-inside:avoid}@media(max-width:760px){.hero-visual{padding-top:22px}.hero-visual figcaption{padding:0}.hero-visual figcaption strong{font-size:26px}}
