@font-face{font-family:Barlow Condensed;src:url('/fonts/barlow.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:Barlow Condensed;src:url('/fonts/barlow-italic.woff2') format('woff2');font-style:italic;font-weight:800;font-display:swap}
@font-face{font-family:Instrument Sans;src:url('/fonts/instrument.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root {
  --paper:#f4f1e8; --ink:#17251d; --green:#143f30; --deep:#0e241b;
  --orange:#f5a24d; --soft:#515e52; --rule:#b9beaf; --red:#952e28;
  --display:"Barlow Condensed","Arial Narrow",sans-serif; --body:"Instrument Sans",Arial,sans-serif;
  color:var(--ink);background:var(--paper);font-family:var(--body);line-height:1.5;
  color-scheme:light;scroll-padding-top:1rem
}
*,*::after,*::before{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
::selection{background:#f5bd83;color:var(--deep)}
:focus-visible{outline:2px solid #a94d1a;outline-offset:4px}
a{color:inherit;text-underline-offset:.19em}
a:hover{text-decoration-thickness:2px}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.62}
h1,h2,h3,p,figure,ol,ul{margin:0}
h1,h2{font-family:var(--display);font-weight:800}
.shell{max-width:1510px;margin-inline:auto;padding-inline:clamp(20px,4.4vw,72px)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;top:.6rem;left:1rem;transform:translateY(-180%);padding:.65rem 1rem;background:var(--deep);color:var(--paper);z-index:5}
.skip:focus{transform:none}
.masthead{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:2px solid var(--ink)}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.brand span,.footer-brand{font:italic 800 clamp(1.8rem,4vw,3.05rem)/.85 var(--display);letter-spacing:-.025em}
.brand img{width:43px;height:43px}
nav{display:flex;align-items:center;gap:clamp(14px,3.2vw,48px)}
nav a{display:inline-flex;min-height:44px;align-items:center;font-weight:700;text-decoration:none}
nav a:hover{ text-decoration:underline}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.09fr);align-items:stretch;gap:clamp(24px,3.6vw,62px);padding-block:clamp(24px,3.6vw,56px)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
h1{font-size:clamp(2.9rem,5.3vw,5.9rem);line-height:.91;letter-spacing:-.034em}
.lede{font-size:clamp(1rem,1.55vw,1.34rem);margin-top:1rem;max-width:37ch}
.quiz{margin-top:clamp(24px,3.4vw,46px)}
.match-strip{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--rule);padding-top:11px;margin-bottom:10px;font-size:.83rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--green)}
#meta-label{letter-spacing:0;text-transform:none;color:var(--soft);text-align:right}
#prompt{font:700 clamp(1.18rem,2vw,1.64rem)/1.22 var(--body);letter-spacing:-.025em;max-width:36ch}
#prompt:focus,#full-title:focus{outline:none}
.condition{margin-top:.52rem;color:var(--soft);max-width:56ch;font-size:.91rem}
#answer-form{margin-top:8px}
.answer-row{display:flex;align-items:flex-end;gap:8px;margin-top:0}
.answer-box{position:relative;flex:1;min-width:0}
#answer{display:block;width:100%;height:52px;color:var(--ink);background:#faf7ee;border:1px solid #697a69;border-radius:3px;padding:0 12px;font-size:1rem;caret-color:#713e1b}
#answer::placeholder{color:#546052}
#answer[aria-invalid="true"]{border-color:var(--red)}
.button{border:1px solid var(--green);background:var(--green);color:var(--paper);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:.62rem 1.06rem;min-height:48px;font-weight:700;line-height:1.15}
.button:hover:enabled{background:var(--deep)}
.button:active:enabled{transform:translateY(1px)}
.answer-row .button{height:52px;min-height:52px;min-width:105px;white-space:nowrap}
.text-button{border:0;background:none;padding:0;min-height:44px;color:var(--green);text-decoration:underline;text-underline-offset:.21em;font-weight:700}
.form-meta{display:flex;gap:12px;justify-content:space-between;align-items:center;color:var(--soft);font-size:.875rem}
#suggestions{z-index:3;list-style:none;position:absolute;top:calc(100% + 3px);left:0;right:0;background:#faf7ee;border:1px solid #697a69;border-radius:3px;padding:3px;max-height:220px;overflow:auto;box-shadow:0 6px 14px #17251d18}
#suggestions li{padding:11px 9px;cursor:pointer;min-height:44px;overflow-wrap:anywhere}
#suggestions li:hover,#suggestions li[aria-selected="true"]{background:#dfebd7}
.suggestion-name{display:block;font-size:.95rem;font-weight:600;line-height:1.35}
.suggestion-canonical{display:block;margin-top:3px;font-size:.75rem;line-height:1.35;color:#515e52}
.answer-help{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 14px}
.language-trigger{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:inherit;font-weight:500;color:#315642;text-decoration:none}
.language-trigger:hover{text-decoration:underline}
.language-trigger[data-unavailable="true"]{color:var(--red)}
.language-panel{position:fixed;inset:auto;margin:0;border:0;width:min(300px,calc(100vw - 32px));padding:18px 20px;border-radius:12px;background:#fffefa;color:var(--ink);box-shadow:0 12px 36px #071b1340;overflow:auto;text-align:left}
.language-panel:not(:popover-open){display:none}
.language-panel h3{font-size:1rem;line-height:1.35}
.language-panel p{font-size:.85rem;line-height:1.5;margin-top:9px}
.language-panel .language-list{color:#315642;font-weight:600;font-size:.78rem}
.language-panel .language-rule{color:#515e52;font-size:.77rem}
.status{margin-top:7px;color:var(--red);font-weight:600}
.field-feedback{display:flex;align-items:flex-end;margin:0 0 5px;min-height:1.4em;font-size:.84rem;line-height:1.4;font-weight:600;overflow-wrap:anywhere;color:#8a4319}
.field-feedback[data-kind="hint"]{color:#315642}
.shot-result{margin:0;padding:0}
.hero.has-result #opening{display:none}
.result-summary{display:flex;justify-content:space-between;align-items:center;gap:20px}
.result-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;min-width:0}
.result-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 10px;min-width:0;font:700 1.2rem/1.35 var(--body);letter-spacing:-.015em}
#result-name{overflow-wrap:anywhere}
#result-outcome{font-weight:600;color:var(--green)}
.shot-result[data-outcome="miss"] #result-outcome{color:var(--red)}
#result-tier{color:var(--green);font-size:1.45rem;font-weight:700;line-height:1.25;white-space:nowrap}
.result-details{margin-top:4px;font-size:.86rem;line-height:1.5}
.result-details summary{width:max-content;max-width:100%;min-height:40px;padding-block:10px;color:var(--soft);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.result-details p{margin-top:8px;overflow-wrap:anywhere}
.result-details .result-question{font-weight:600}
.result-details .result-condition{font-size:.82rem;color:var(--soft)}
.quiet-link{display:inline-block;font-size:.88rem;text-decoration:underline}
.shot-result .quiet-link{margin-top:4px}
.next-button{display:flex;margin-top:11px;width:max-content;max-width:100%}
.result-summary .next-button{margin:0;flex-shrink:0}
@media(max-width:660px){
  .result-summary{flex-direction:column;align-items:stretch;gap:14px}
  .result-copy{justify-content:space-between;flex-wrap:nowrap;gap:12px}
  .result-title{font-size:1.1rem;flex:1}
  .result-summary .next-button{width:100%}
}
.pitch-card{
  position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;
  padding:clamp(11px,1.6vw,23px) clamp(9px,1.25vw,17px);
  background:#0e291f;color:var(--paper);border:1px solid #0a2119;
}
.pitch-card figcaption{
  display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 3% 10px;
  border-bottom:1px solid #789d7c56;
  font:800 clamp(.86rem,1.5vw,1.15rem)/1.05 var(--display);text-transform:uppercase;letter-spacing:.09em;
}
#pitch-title{display:flex;align-items:center;gap:8px}
.map-icon{display:inline-block;width:16px;height:12px;border:1px solid #a8c3a1;position:relative}
.map-icon::after{content:"";position:absolute;left:50%;height:100%;border-left:1px solid #a8c3a1}
#pitch-caption{text-align:right;color:#c6dfbe;font-variant-numeric:tabular-nums}
.pitch-display{position:relative}
.pitch-display::after{content:"";position:absolute;inset:8% 5% 5%;pointer-events:none;background:url('/grain.png') repeat;opacity:.2;mix-blend-mode:soft-light}
.pitch-definitions{position:absolute;pointer-events:none}
.pitch{display:block;width:100%;height:auto}
.pitch text{
  fill:#fff7db;font:italic 800 21px var(--display);
  paint-order:stroke;stroke:#133828;stroke-width:3;stroke-linejoin:round;
}
#shot-points{fill:#ffbc79;font-size:46px;letter-spacing:-.025em}
#shot-line{stroke-dasharray:1}
.pitch-card[data-outcome="preview"] #trajectory{opacity:.83}
.shot-ball,.shot-impact,.goal-call{opacity:0;pointer-events:none}
.goal-call{
  position:absolute;top:16%;left:50%;color:#fff1bb;font:italic 800 clamp(3.2rem,8vw,7.1rem)/.83 var(--display);
  letter-spacing:-.025em;text-shadow:0 4px 20px #0e291f;white-space:nowrap;transform:translateX(-50%);
}
.pitch-card.in-flight .shot-ball{opacity:1}
.pitch-card.in-flight #shot-readout{opacity:0}
.pitch-card.on-impact .shot-impact{animation:impact-flare 410ms cubic-bezier(.16,1,.3,1) both}
.pitch-card.on-impact #shot-net{transform-box:fill-box;transform-origin:50% 100%;animation:net-snap 420ms cubic-bezier(.16,1,.3,1)}
.pitch-card.on-impact #shot-readout{transform-box:fill-box;animation:points-in 360ms 60ms cubic-bezier(.16,1,.3,1) backwards}
.pitch-card.on-impact .goal-call{animation:goal-call 420ms cubic-bezier(.16,1,.3,1) both}
@keyframes impact-flare{0%{opacity:.85}100%{opacity:0}}
@keyframes net-snap{0%{transform:scale(1.12,1.27);opacity:1}38%{transform:scale(.99,.91);opacity:.85}100%{transform:scale(1);opacity:1}}
@keyframes points-in{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}
@keyframes goal-call{
  0%{opacity:0;clip-path:inset(0 100% 0 0);translate:0 8px}
  25%,58%{opacity:1;clip-path:inset(0 -12% 0 -12%);translate:0 0}
  100%{opacity:0;clip-path:inset(0 -12% 0 -12%);translate:0 -4px}
}
.pitch-footer{min-height:45px;display:grid;grid-template-columns:1fr minmax(78px,auto);align-items:center;gap:10px;margin:0 3%;border-top:1px solid #789d7c56}
.progress{list-style:none;display:flex;align-items:center;gap:0;padding:0}
.progress li{width:13%;display:grid;place-items:center;position:relative;min-height:24px}
.progress li::before{content:"";position:absolute;width:100%;height:1px;background:#c6dfbe88;top:50%;left:-50%}
.progress li:first-child::before{display:none}
.progress li::after{content:"";position:relative;width:12px;height:12px;background:#0e291f;border:1.5px solid #b9d4b0;border-radius:50%}
.progress li.active::after{box-shadow:0 0 0 2px #0e291f,0 0 0 3px #e2edce}
.progress li.goal::after{background:var(--orange);border-color:var(--orange)}
.progress li.miss::after{background:#9a493c}
.replay-button{
  display:flex;align-items:center;justify-content:center;gap:5px;padding:0 2px;
  min-height:44px;border:0;background:none;color:#e4edcf;font-size:.89rem;font-weight:700;
}
.replay-button:hover{color:#ffbc79;text-decoration:underline}
.sound-toggle{white-space:nowrap}
.sound-toggle .sound-muted,.sound-toggle[aria-pressed="false"] .sound-waves{display:none}
.sound-toggle[aria-pressed="false"] .sound-muted{display:block}
.sound-toggle:disabled{opacity:.6;cursor:default}
.sound-controls{position:relative;display:flex;align-items:center;gap:10px}
.volume-toggle{text-decoration:underline;text-underline-offset:4px}
.sound-panel{position:fixed;inset:auto;margin:0;border:0;width:min(230px,calc(100vw - 32px));padding:16px 18px;border-radius:12px;background:#123c2c;color:#f4f1e8;box-shadow:0 12px 32px #061b1366;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 12px;font-size:.85rem;letter-spacing:0}
.sound-panel:not(:popover-open){display:none}
.sound-panel output{font-variant-numeric:tabular-nums}
.sound-panel input{grid-column:1/-1;width:100%;min-width:0;height:32px;margin:0;accent-color:#f5a24d;cursor:pointer}
.sound-panel p{grid-column:1/-1;margin:0;color:#c4d9c8;font-size:.75rem;line-height:1.4}
.pitch-card :focus-visible,.score-band :focus-visible{outline-color:#ffc17e}
.hero.is-live .hero-copy{justify-content:center}
.hero.is-live #opening{display:none}
.hero.is-live .quiz{margin-top:0}
.hero.is-live #prompt{font:800 clamp(2.15rem,4.2vw,4.35rem)/1.02 var(--display);letter-spacing:-.02em;max-width:18ch}
.hero.is-done{display:none}
.instructions{border-top:2px solid var(--ink);display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;padding-block:24px 30px;gap:24px;align-items:start}
.instructions h2,.lower h2,.review h2,.article h1,.article h2{font-size:clamp(2rem,4.2vw,4rem);line-height:.99;letter-spacing:-.02em}
.instructions h2{font-style:italic}
.instructions h3{font-size:1.05rem;margin-bottom:.28rem;line-height:1.2}
.instructions p,.lower p{color:var(--soft);font-size:.96rem}
.instructions > div{border-left:1px solid var(--rule);padding-left:clamp(14px,2.2vw,34px)}
.lower{border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,110px);padding-block:42px 58px}
.lower h2{font-size:clamp(2rem,3.5vw,3.2rem);margin-bottom:.65rem}
.lower .fine{font-size:.88rem}
.tier-list{list-style:none;padding:0;margin:17px 0}
.tier-list li,.fixture{border-top:1px solid var(--rule);min-height:44px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;padding:8px 0;font-variant-numeric:tabular-nums}
.tier-list li:last-child,.fixture:last-child{border-bottom:1px solid var(--rule)}
#edition-list{margin-top:17px}
.fixture{width:100%;border-inline:0;border-bottom:0;background:none;text-decoration:none;color:var(--ink)}
.fixture:hover{color:var(--green);text-decoration:underline}
.fixture small{color:var(--soft);text-align:right}
.full-time{padding:clamp(24px,4vw,55px) 0}
.score-band{
  color:var(--paper);background:#0d281e;padding:clamp(24px,4.5vw,62px);position:relative;overflow:hidden;
  isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,2vw,34px);
  border-top:3px solid #f5a24d;
}
.score-content{grid-column:1;grid-row:1;min-width:0}
.final-pitch{
  align-self:center;justify-self:end;width:100%;max-width:630px;grid-column:2;grid-row:1;
  opacity:.95;pointer-events:none;
}
#final-trails path{fill:none;stroke:#ffb760;stroke-width:3.1;stroke-linecap:round;stroke-dasharray:1}
#final-trails circle{fill:#ffc078;stroke:#f4f1e8;stroke-width:1.6}
.score-reveal #final-trails path{animation:final-trail 460ms var(--trail-delay) cubic-bezier(.16,1,.3,1) backwards}
.score-reveal #final-trails circle{animation:final-spot 260ms calc(var(--trail-delay) + 160ms) backwards}
@keyframes final-trail{from{stroke-dashoffset:1}}
@keyframes final-spot{from{opacity:0}to{opacity:1}}
.score-band h1{font-style:italic;color:#fff9df}
#full-edition{margin-top:10px}
.score{font-family:var(--display);line-height:.95;margin-top:22px;font-variant-numeric:tabular-nums}
.score strong{display:inline-block;min-width:3ch;text-align:left;font-size:clamp(4.3rem,9.2vw,8rem);font-weight:800;color:#ffc07e}
.score span{font-size:clamp(1.45rem,3vw,2.55rem);font-weight:800}
#score-note{margin-top:11px}
.result-shots{list-style:none;display:flex;gap:clamp(4px,1vw,11px);padding:0;margin-top:19px}
.result-shots a{min-height:44px;width:clamp(32px,6.6vw,52px);padding:6px 2px;display:grid;place-items:center;border:1px solid #a4bcaa;text-decoration:none;text-align:center;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.02}
.result-shots .scored{border-color:#efa865;color:#ffc07e}
.result-shots a:hover{background:#23503b}
.result-shots small{font-size:.7rem}
#share-message textarea{width:min(100%,500px);min-height:105px;padding:8px}
.share-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:21px}
.button.orange{background:var(--orange);color:var(--deep);border-color:var(--orange)}
.button.orange:hover:enabled{background:#ffc384}
.button.outline{background:transparent;border-color:#bccbb9}
.button.outline:hover:enabled{background:#23503b}
#share-message{margin-top:8px}
.review{max-width:810px;margin-top:32px}
.review>p{margin:.5rem 0 1rem;color:var(--soft)}
.review details{border-top:1px solid var(--rule)}
.review details:last-child{border-bottom:1px solid var(--rule)}
.review summary{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;cursor:pointer;padding:12px 3px;min-height:46px;font-weight:700;list-style:none}
.review summary::-webkit-details-marker{display:none}
.review summary::before{content:"+";color:var(--green);font-weight:700}
.review details[open] summary::before{content:"−"}
.review summary span:last-child{white-space:nowrap;color:var(--green);font-variant-numeric:tabular-nums}
.review-body{padding:0 20px 16px;color:var(--soft)}
.review-body ul{list-style:none;padding:0;margin:10px 0 12px;max-width:510px}
.review-body li{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid var(--rule)}
.review>.quiet-link{margin-top:14px}
footer{border-top:2px solid var(--ink);padding:22px 0 34px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;color:var(--soft);font-size:.9rem}
.footer-brand{font-size:1.7rem;color:var(--ink)}
footer a{margin-left:auto}
.article{max-width:780px;padding-block:clamp(32px,7vw,86px)}
.article h1{font-size:clamp(3.25rem,7.3vw,6rem)}
.article h2{margin-top:2.4rem;font-size:clamp(2rem,4.8vw,3rem)}
.article p,.article li{margin-top:.85rem;max-width:66ch}
.article .button{margin-top:1.35rem;text-decoration:none}
.article ul{padding-left:1.3em}
.article a{overflow-wrap:anywhere}
@media(max-width:840px){
  .hero{gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,.92fr)}
  .instructions{grid-template-columns:1fr 1fr 1fr;gap:13px 20px}
  .instructions h2{grid-column:1/-1}
  .instructions>div:nth-child(2){border:0;padding-left:0}
}
@media(max-width:660px){
  .shell{padding-inline:16px}
  .masthead{min-height:67px}
  .brand img{width:34px;height:34px}
  .brand{gap:7px}
  .brand span{font-size:1.87rem}
  nav{gap:14px}
  nav a{font-size:.85rem}
  .hero{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:23px}
  h1{font-size:clamp(2.55rem,10.4vw,4.85rem)}
  .lede{margin-top:.65rem}
  .quiz{margin-top:19px}
  .match-strip{padding-top:8px;margin-bottom:7px}
  #prompt{font-size:1.19rem}
  .condition{margin-top:.35rem;font-size:.88rem}
  .answer-row{margin-top:0}
  .answer-row .button{min-width:83px;padding-inline:.65rem;gap:6px}
  .pitch-card{padding:11px 8px 7px}
  .pitch-card figcaption{font-size:.85rem;padding-bottom:8px}
  .pitch-display{width:min(100%,440px);margin-inline:auto}
  .score-band{grid-template-columns:minmax(0,1fr);gap:20px;padding:18px}
  .final-pitch{grid-column:1;grid-row:2;max-width:420px;justify-self:center}
  .score-content{grid-row:1}
  .score strong{min-width:2.4ch}
  .result-shots a{width:clamp(32px,9vw,46px)}
  .instructions{grid-template-columns:1fr;padding-block:20px;gap:11px}
  .instructions h2{grid-column:auto}
  .instructions>div,.instructions>div:nth-child(2){border:0;padding:9px 0 0;border-top:1px solid var(--rule)}
  .lower{grid-template-columns:1fr;gap:27px;padding-block:26px}
  footer a{margin-left:0}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}

.replay-stage {
  position:absolute;z-index:1;inset:3% 3% 4%;overflow:hidden;
  background:#0b1d26;border:1px solid #87a39a78;
}
.replay-stage canvas{display:block;width:100%;height:100%}
.pitch-card:not([data-view="map"]) .pitch,.pitch-card:not([data-view="map"]) .goal-call{visibility:hidden}
.pitch-card[data-view="loading"] .replay-stage canvas,.pitch-card[data-view="loading"] .replay-overlay{visibility:hidden}
.replay-overlay{
  position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;
  pointer-events:none;padding:clamp(8px,1.6vw,18px);
  background:linear-gradient(180deg,#0a1724b8,transparent 31%);
}
.replay-camera,#replay-points{
  color:#fff2d0;background:#0d211e;padding:4px 9px;
  font:800 clamp(.91rem,1.5vw,1.2rem)/1.15 var(--display);
  letter-spacing:.08em;
}
.replay-camera{display:inline-flex;align-items:center;min-height:25px;gap:7px}
.replay-camera>span:first-child{width:7px;height:7px;border:1px solid #f3bc82;border-radius:50%}
#replay-points:empty{display:none}
.replay-goal .replay-camera,.replay-goal #replay-points{background:#f5a24d;color:#19251a}
.replay-goal .replay-camera>span:first-child{background:#19251a;border-color:#19251a}
.replay-goal #replay-points{animation:points-in 310ms cubic-bezier(.16,1,.3,1) both}
.pitch-footer{grid-template-columns:minmax(0,1fr) auto auto auto}
#replay-label{white-space:nowrap}
@media(max-width:370px){
  .replay-button{font-size:.82rem}
  .pitch-footer{gap:7px}
}

.replay-status{margin:0 3%;padding:0 0 5px;color:#e1edcf;font-size:.86rem;line-height:1.35}

.challenge-links{
  display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:clamp(16px,3vw,40px);
  padding:24px 0 26px;border-top:1px solid var(--rule);
}
.challenge-links h2,.source-content h2{
  font:800 clamp(2rem,3.8vw,3.2rem)/.98 var(--display);
}
.challenge-links a{
  display:flex;flex-direction:column;justify-content:center;gap:3px;padding:9px 0;
  text-decoration:none;border-bottom:1px solid var(--rule);
}
.challenge-links a:hover strong{text-decoration:underline;text-underline-offset:.18em}
.challenge-links strong{font-size:1.05rem}
.challenge-links span,.source-content>p{font-size:.95rem;color:var(--soft)}
.source-content{padding:25px 0 30px;border-top:1px solid var(--rule)}
.source-content>p{margin:.6rem 0 1rem;max-width:67ch}
.source-content details{max-width:760px;border-top:1px solid var(--rule);padding:9px 0}
.source-content details:last-child{border-bottom:1px solid var(--rule)}
.source-content summary{cursor:pointer;min-height:28px;font-weight:700;padding:2px 0}
.source-content details p{margin:.25rem 0 .3rem 1rem;max-width:66ch}
.review #restart-challenge{margin-top:12px}
.progress li{flex:0 1 13%}
.result-shots{flex-wrap:wrap}
@media(max-width:660px){
  .challenge-links{grid-template-columns:1fr;gap:11px}
  .brand span{font-size:clamp(1.5rem,5.5vw,1.85rem)}
}
