/* The Race Plan: one hero row (the pitch, the first sheet, the sprint), the sheets, then the whole workbook in columns. */
.race{width:min(1320px,calc(100% - 48px));margin:0 auto;padding:28px 0 56px;font-family:var(--ic-sans)}
.race-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,.9fr);gap:28px;align-items:stretch}
.race-pitch{display:flex;flex-direction:column;justify-content:center;gap:14px;min-width:0}
body[data-public-layout] .race-pitch h1{margin:0;font:400 clamp(44px,4.6vw,64px)/1 var(--ic-serif),Georgia,serif;letter-spacing:-.03em;color:#181918}
.race-lede{margin:0;font-size:16px;line-height:1.5;color:var(--public-muted);max-width:52ch}
.race-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:4px}
.race-facts{font-size:13px;line-height:1.3;color:var(--public-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.race-cover{display:block;align-self:center;border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px #1730241a,0 18px 40px -22px #17302459;transition:transform .18s cubic-bezier(.2,0,0,1),box-shadow .18s cubic-bezier(.2,0,0,1)}
.race-cover:hover,.race-cover:focus-visible{transform:translateY(-2px);box-shadow:0 0 0 1px #17302426,0 22px 44px -22px #17302473}
.race-cover img{display:block;width:100%;height:auto}
.race-sprint{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0;padding:22px 24px;border-radius:16px;background:var(--ic-night,#181918);color:#efeee8}
body[data-public-layout] .race-sprint h2{margin:0;font:400 28px/1.1 var(--ic-serif),Georgia,serif;letter-spacing:-.02em;color:#fff}
.race-sprint p{margin:0;font-size:15px;line-height:1.45;color:#c9cac2}
.race-sprint .signup-status[data-error]{color:#f0b7ae}
.race-sprint .race-note{font-size:13px;color:#a4a69d}
.race-sprint .signup-done{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:#ffffff14;color:#efeee8;font-size:14px;line-height:1.45}
.race-sprint .signup-done strong{color:#fff;font-weight:600}
body[data-public-layout] .race-sprint .subscribe-fields{flex-direction:row;align-items:center;border-radius:999px;background:#fff;border-color:transparent}
body[data-public-layout] .race-sprint .subscribe-fields button{flex-shrink:0;white-space:nowrap}
.race-sheets{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;margin-top:28px}
.race-sheets a{position:relative;display:block;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px #1730241a;transition:transform .15s cubic-bezier(.2,0,0,1),box-shadow .15s cubic-bezier(.2,0,0,1)}
.race-sheets a:hover,.race-sheets a:focus-visible{transform:translateY(-2px);box-shadow:0 0 0 1px #17302433,0 10px 22px -14px #17302466}
.race-sheets img{display:block;width:100%;height:auto}
.race-sheets span{position:absolute;right:6px;bottom:6px;min-width:20px;padding:2px 6px;border-radius:999px;background:#181918d9;color:#fff;font:600 11px/1.3 var(--ic-sans);text-align:center;font-variant-numeric:tabular-nums}
.race-read{column-width:340px;column-gap:20px;margin-top:32px;scroll-margin-top:24px}
.race-step{break-inside:avoid;display:flow-root;margin:0 0 20px;padding:22px 24px;border:1px solid var(--public-line);border-radius:16px;background:#fffefa;font-size:14.5px;line-height:1.5;color:var(--public-ink)}
body[data-public-layout] .race-step h2{margin:0 0 12px;font:400 25px/1.15 var(--ic-serif),Georgia,serif;letter-spacing:-.02em;color:#181918}
body[data-public-layout] .race-step h3{margin:18px 0 6px;font:600 13.5px/1.3 var(--ic-sans);letter-spacing:0;color:#3a4f42}
.race-step p{margin:0 0 8px;color:var(--public-muted)}
.race-step .race-big{margin:12px 0;font:400 20px/1.25 var(--ic-serif),Georgia,serif;letter-spacing:-.01em;color:#181918}
.race-step .race-formula{margin:6px 0;padding:8px 12px;border-radius:8px;background:#e9efe7;color:#252a27;font-size:14px;line-height:1.4}
.race-step .race-example{margin:6px 0 8px;font-style:italic;color:var(--public-muted)}
.race-step .race-fields{font-size:13.5px}
.race-rows{width:100%;margin:6px 0 10px;border-collapse:collapse;font-size:13.5px;line-height:1.4}
.race-rows th,.race-rows td{padding:6px 0;border-top:1px solid var(--public-line);text-align:left;vertical-align:top;font-weight:400;color:var(--public-muted)}
.race-rows tr:first-child th,.race-rows tr:first-child td{border-top:0}
.race-rows th{width:38%;padding-right:12px;font-weight:600;color:var(--public-ink)}
.race-rows-num td:last-child{width:3.5em;padding-left:10px;text-align:right;white-space:nowrap;color:var(--public-ink);font-variant-numeric:tabular-nums}
.race-list{margin:6px 0 10px;padding:0;list-style:none;font-size:14px}
.race-list li{position:relative;padding:3px 0 3px 16px;color:var(--public-muted)}
.race-list li::before{content:"";position:absolute;left:2px;top:.8em;width:5px;height:5px;border-radius:50%;background:#96a98c}
.race-list b{color:var(--public-ink);font-weight:600}
.race-sheet-link{display:inline-block;margin-top:6px;font-size:13px;color:#3a4f42;text-decoration:none;transition:color .15s}
.race-sheet-link:hover,.race-sheet-link:focus-visible{color:#181918}
.race-foot{max-width:80ch;margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--public-muted)}
@media(max-width:1180px){
 .race-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}
 .race-cover{display:none}
}
@media(max-width:760px){
 .race{width:calc(100% - 32px);padding:20px 0 40px}
 .race-hero{grid-template-columns:minmax(0,1fr);gap:16px}
 .race-cover{display:block}
 .race-sheets{display:none}
 .race-read{margin-top:24px}
 .race-step{padding:18px}
}
@media(prefers-reduced-motion:reduce){.race-cover,.race-sheets a,.race-sheet-link{transition:none}}
