@font-face{font-family:"Reddit Sans";font-style:normal;font-weight:200 900;font-display:swap;src:url("assets/fonts/reddit-sans/reddit-sans-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Reddit Sans";font-style:normal;font-weight:200 900;font-display:swap;src:url("assets/fonts/reddit-sans/reddit-sans-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Antonio";font-style:normal;font-weight:100 700;font-display:swap;src:url("assets/fonts/antonio/antonio-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Antonio";font-style:normal;font-weight:100 700;font-display:swap;src:url("assets/fonts/antonio/antonio-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --vb-bg:#11110F;--vb-surface:#131313;--vb-surface-2:#181916;--vb-surface-3:#1E1D1D;--vb-text:#EAEAEA;
  --vb-text-body:rgba(255,255,255,.6);--vb-text-muted:#BCBCC0;--vb-brand:#95F400;--vb-on-brand:#11110F;
  --vb-border:#3C3C3D;--vb-accent:#FFDD2A;--vb-error:#FE0000;
  color-scheme:dark;
  --ink:var(--vb-text);--prose:var(--vb-text-muted);--quiet:var(--vb-text-body);--lime:var(--vb-brand);--rule:var(--vb-border);
  --sans:"Reddit Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --cond:"Antonio","Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --gut:16px;--gap:24px;--sect:48px;--lane:58ch;--max:1376px;
  --r-btn:7px;--r-card:8px;--r-slip:10px;
}
@media (min-width:1024px){:root{--gut:32px;--gap:32px}}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--vb-bg);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--vb-bg);color:var(--prose);font:400 16px/26px var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg{max-width:100%}
img{height:auto}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--lime)}
strong{color:var(--ink);font-weight:700}
p,ul,ol,dl,figure{margin:0}
h1,h2,h3{margin:0;color:var(--ink);text-wrap:balance}
p,li,dd{text-wrap:pretty}
a,button,summary,label,input{touch-action:manipulation}
html{-webkit-tap-highlight-color:rgba(149,244,0,.16)}
main h2[id]{scroll-margin-top:16px}
:focus-visible{outline:2px solid var(--vb-text);outline-offset:2px;box-shadow:0 0 0 4px var(--vb-bg)}
svg.ic{display:block;flex:none;width:20px;height:20px}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}

/* ---------- Masthead: stacked nameplate + section ribbon ---------- */
.masthead{background:var(--vb-bg)}
.masthead-in{display:grid;grid-template-columns:1fr auto;grid-template-areas:"np ed" "ear ear";align-items:end;column-gap:12px;padding-block:8px 6px}
.nameplate{grid-area:np;display:inline-flex;align-items:center;gap:8px;justify-self:start;padding-block:8px;margin-block:-8px;font:700 26px/26px var(--cond);text-transform:lowercase;letter-spacing:-.005em;color:var(--ink);text-decoration:none;white-space:nowrap}
.nameplate:hover{color:var(--ink)}
.np-flag{display:inline-block;background:var(--lime);color:var(--vb-on-brand);padding:0 .46em .2em .22em;clip-path:polygon(0 0,100% 0,calc(100% - .28em) 100%,0 100%);line-height:.92}
.edition{grid-area:ed;font:500 14px/18px var(--sans);color:var(--quiet);white-space:nowrap;padding-bottom:2px}
.edition time{color:inherit}
.ear{grid-area:ear;font:500 14px/18px var(--cond);color:var(--prose);letter-spacing:.01em;margin-top:2px}
.ribbon{border-top:3px solid var(--ink);border-bottom:1px solid var(--rule)}
.ribbon .wrap{padding-inline:0}
.ribbon-list{list-style:none;margin:0;padding:0 40px 0 var(--gut);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}
.ribbon-list::-webkit-scrollbar{display:none}
.ribbon-list li{flex:none}
.ribbon-list a{position:relative;display:flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;font:600 15px/20px var(--sans);color:var(--ink);text-decoration:none;white-space:nowrap}
.ribbon-list li:first-child a{padding-left:0}
.ribbon-list a:hover{color:var(--lime)}
.ribbon-list a[aria-current="page"]::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:var(--lime)}
.ribbon-list li:first-child a[aria-current="page"]::after{left:0}
.ribbon-feat svg.ic{width:18px;height:18px;color:var(--lime)}
.ribbon-calc a{color:var(--lime)}
@media (min-width:1024px){
  .masthead-in{grid-template-columns:auto 1fr;grid-template-areas:"np ear" "ed ear";align-items:end;column-gap:40px;padding-block:22px 14px}
  .nameplate{font-size:80px;line-height:74px;gap:12px;letter-spacing:-.01em;padding-block:0;margin-block:0}
  .edition{padding:8px 0 0;font-size:14px}
  .ear{justify-self:end;align-self:end;max-width:26ch;border-left:3px solid var(--lime);padding:2px 0 4px 14px;font-size:22px;line-height:28px;margin:0 0 6px}
  .ribbon .wrap{padding-inline:var(--gut)}
  .ribbon-list{padding:0;-webkit-mask-image:none;mask-image:none;overflow:visible;gap:8px}
  .ribbon-list a{font-size:16px;min-height:48px;padding:0 14px}
  .ribbon-feat{margin-left:auto}
  .ribbon-calc a{border:1px solid var(--lime);border-radius:var(--r-btn);min-height:40px;margin-block:4px}
  .ribbon-calc a:hover{filter:brightness(1.08)}
}

/* ---------- Main grid ---------- */
main{display:block;width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut);padding-bottom:var(--sect)}
main > * + *{margin-top:var(--sect)}
main > .opening + .slip-example{margin-top:24px}
main > .slip-example + .opbox{margin-top:32px}

/* ---------- Opening (home) ---------- */
.opening{display:flex;flex-direction:column;padding-top:8px}
.opening .hero{display:contents}
.headline{order:1;display:flex;align-items:center;justify-content:space-between;gap:12px}
.opening .intro{order:2;margin-top:12px}
.opening .deal{order:3;margin-top:16px}
.opening .lede{order:4;margin-top:24px}
h1{font:700 44px/44px var(--cond);letter-spacing:-.01em}
.plate{display:inline-flex;align-items:center;justify-content:center;flex:none;background:var(--vb-surface-3);border:1px solid var(--rule);border-radius:var(--r-card);padding:8px 10px}
.plate img{display:block;width:96px;height:auto;aspect-ratio:480/85}
.intro{font:400 16px/24px var(--sans);color:var(--ink);max-width:var(--lane)}
.lede{font:500 19px/24px var(--sans);color:var(--ink);max-width:var(--lane)}
@media (min-width:1024px){
  main:has(> .opening){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:auto 1fr;column-gap:var(--gap);align-items:start}
  main:has(> .opening) > *{grid-column:1 / -1}
  main > .opening{grid-column:1 / 4;grid-row:1 / span 2;gap:28px;padding-top:40px;position:relative}
  main > .opening::after{content:"";position:absolute;top:40px;bottom:0;right:calc(var(--gap) * -.5 - .5px);width:1px;background:var(--rule)}
  main > .opening + .slip-example{grid-column:4 / 6;grid-row:1;margin:40px 0 0 calc(var(--gap) * .5)}
  main > .slip-example + .opbox{grid-column:4 / 6;grid-row:2;margin:28px 0 0 calc(var(--gap) * .5)}
  .opening .hero{display:block}
  .opening .deal{margin:0}
  .headline{justify-content:flex-start;gap:28px;align-items:flex-end}
  h1{font-size:clamp(80px,8.34vw,120px);line-height:.9;letter-spacing:-.015em;white-space:nowrap}
  .plate{padding:14px 18px;margin-bottom:12px}
  .plate img{width:150px}
  .opening .lede{margin-top:22px;font-size:22px;line-height:30px;max-width:44ch}
  .opening .intro{margin-top:16px;font-size:18px;line-height:29px}
}

/* ---------- Deal: broadcast strap (lower third) ---------- */
.strap{background:var(--vb-surface-3);border-radius:var(--r-card);overflow:hidden;color:var(--ink)}
.strap-band{display:grid;grid-template-columns:auto 1fr;align-items:stretch}
.strap-flag{background:var(--lime);display:flex;align-items:center;padding:10px 26px 10px 10px;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%)}
.strap-plate{display:flex;background:var(--vb-bg);border-radius:6px;padding:8px 10px}
.strap-plate img{display:block;width:104px;height:auto;aspect-ratio:480/85}
.strap-copy{display:flex;flex-direction:column;justify-content:center;padding:8px 12px 8px 6px;min-width:0}
.strap-kicker{font:500 13px/17px var(--sans);color:var(--prose)}
.strap-offer{font:600 26px/28px var(--cond);color:var(--ink);padding:16px 14px 0;letter-spacing:.005em}
.strap-band .strap-offer{padding:0}
.strap-terms{list-style:none;margin:0;padding:12px 14px 0;font:400 13px/18px var(--sans);color:var(--prose)}
.strap-terms li{padding:6px 0;border-top:1px solid var(--rule)}
.strap-terms li:first-child{border-top:0}
.strap-act{display:grid;gap:10px;padding:12px 14px 14px;border-top:1px solid var(--rule);margin-top:6px}
.strap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;background:var(--lime);color:var(--vb-on-brand);border-radius:var(--r-btn);font:700 15px/20px var(--sans);text-decoration:none;transition:filter .12s}
.strap-btn:hover{color:var(--vb-on-brand);filter:brightness(1.08)}
.strap-btn svg.ic{width:18px;height:18px}
.strap-ad{display:flex;align-items:center;gap:10px;font:600 13px/18px var(--sans);color:var(--prose)}
.strap-age{border:1px solid var(--prose);border-radius:4px;padding:0 5px;font-weight:700;color:var(--ink)}
.strap-aff{font:400 12px/17px var(--sans);color:var(--quiet)}
@media (max-width:1023.98px){
  .strap-band{grid-template-columns:1fr}
  .strap-flag{justify-self:start}
  .strap-copy{padding:10px 14px 0}
  .strap-band + .strap-terms{padding-top:6px}
}
@media (min-width:1024px){
  .strap{display:grid;grid-template-columns:216px minmax(0,1fr) auto;grid-template-areas:"flag copy btn" "terms terms terms" "ad aff aff"}
  .strap-band,.strap-act{display:contents}
  .strap-flag{grid-area:flag;padding:16px 36px 16px 16px;clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%)}
  .strap-plate{padding:12px 14px}
  .strap-plate img{width:136px}
  .strap-copy{grid-area:copy;padding:14px 16px 14px 4px}
  .strap-kicker{font-size:14px}
  .strap-offer{font-size:32px;line-height:36px}
  .strap-btn{grid-area:btn;align-self:center;margin-right:20px}
  .strap-terms{grid-area:terms;columns:2;column-gap:24px;column-rule:1px solid var(--rule);padding:12px 20px 10px;margin:0;border-top:1px solid var(--rule);font-size:12.5px;line-height:18px}
  .strap-terms li{break-inside:avoid;padding:5px 0;border-top:0}
  .strap-ad{grid-area:ad;padding:10px 0 12px 20px;border-top:1px solid var(--rule)}
  .strap-aff{grid-area:aff;padding:10px 20px 12px 0;border-top:1px solid var(--rule);max-width:none}
}
@media (min-width:1024px) and (max-width:1365.98px){
  .strap{grid-template-columns:216px minmax(0,1fr);grid-template-areas:"flag copy" "flag btn" "terms terms" "ad aff"}
  .strap-btn{justify-self:start;margin:0 20px 16px 4px}
}

/* ---------- Slip (signature): example, worked case, calculator ---------- */
.slip{background:var(--vb-surface-2);border:1px solid var(--rule);border-top:3px solid var(--lime);border-radius:var(--r-slip);color:var(--ink)}
.slip-example{padding:14px 14px 16px}
.slip-cap{display:grid;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--rule)}
.slip-title{font:600 22px/26px var(--cond);color:var(--ink)}
.slip-sub{font:400 14px/20px var(--sans);color:var(--prose)}
.legs{list-style:none;margin:0;padding:6px 0 0;position:relative}
.slip-example .legs::before{content:"";position:absolute;left:7px;top:26px;bottom:26px;width:2px;background:var(--lime);opacity:.55}
.slip-example .leg{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-areas:"name odd" "note odd";column-gap:12px;padding:10px 0 10px 28px;border-bottom:1px solid var(--rule)}
.slip-example .leg::before{content:"";position:absolute;left:0;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;background:var(--vb-surface-2);border:3px solid var(--lime)}
.slip-example .leg:last-child::before{background:var(--lime)}
.leg-name{grid-area:name;font:600 15px/20px var(--sans);color:var(--ink)}
.leg-note{grid-area:note;text-wrap:balance;font:400 14px/20px var(--sans);color:var(--prose)}
.leg-odd{grid-area:odd;align-self:center;min-width:76px;text-align:center;background:var(--vb-bg);border-radius:6px;padding:6px 10px;font:600 26px/30px var(--cond);color:var(--lime)}
.slip-sum{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:14px 0 12px}
.slip-sum dt,.result dt{font:500 14px/20px var(--sans);color:var(--prose)}
.slip-sum dd{margin:0;font:600 20px/26px var(--cond);color:var(--ink)}
.slip-sum .ret dd{font-size:30px;line-height:34px;color:var(--lime)}
.slip-alt{padding-top:12px;border-top:1px dashed var(--rule);font:400 16px/25px var(--sans);color:var(--prose)}
@media (min-width:1024px){.slip-example{padding:18px 20px 20px}.leg-odd{font-size:28px;line-height:32px}}

/* ---------- Operator box: match facts strip ---------- */
.opbox{border-top:3px solid var(--ink);border-bottom:1px solid var(--rule);padding-top:12px}
.opbox-head{font:600 20px/24px var(--cond);color:var(--ink);padding-bottom:8px}
.opbox dl{display:grid;grid-template-columns:1fr}
.opbox dl > div{padding:10px 0;border-top:1px solid var(--rule)}
.opbox dt{font:500 14px/20px var(--sans);color:var(--prose)}
.opbox dd{margin:2px 0 0;font:500 16px/25px var(--sans);color:var(--ink);overflow-wrap:anywhere}
@media (min-width:640px) and (max-width:1023.98px){.opbox dl{grid-template-columns:1fr 1fr;column-gap:var(--gap)}}
@media (min-width:1024px){
  .opbox{border-bottom:0}
  .opbox-head{font-size:22px;line-height:26px}
  .opbox dl > div{display:grid;grid-template-columns:minmax(0,9.5em) minmax(0,1fr);column-gap:16px;padding:11px 0}
  .opbox dl > div:last-child{border-bottom:1px solid var(--rule)}
  .opbox dt{padding-top:2px}
  .opbox dd{margin:0}
}

/* ---------- Reports (sections) ---------- */
main section h2{font:600 30px/32px var(--cond);letter-spacing:-.005em;padding-bottom:10px;border-bottom:3px solid var(--ink);margin-bottom:18px}
main section h3{font:700 19px/24px var(--sans)}
main section > p,main section > ul,main section > ol,main section > dl{max-width:var(--lane)}
main section > * + *{margin-top:16px}
main section > h2 + *{margin-top:0}
main section ul,main section ol{padding-left:1.25em}
main section li + li{margin-top:6px}
main section li::marker{color:var(--lime)}
.src{font:400 16px/25px var(--sans);color:var(--prose)}
.src a{color:var(--prose)}
@media (min-width:1024px){
  body{font-size:17px;line-height:28px}
  main section h2{font-size:50px;line-height:54px;padding-bottom:14px;margin-bottom:24px;padding-right:max(0px,100% - 980px)}
  main section h3{font-size:21px;line-height:28px}
  .report{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap);align-items:start}
  .report > *{grid-column:1 / 4}
  .report > .board,.report > .slip,.report > .spread,.report > .qa-cards,.report > .playbook,.report > .match-clock{grid-column:1 / -1}
  .report:has(> .sidebar-note,> .spread,> .qa-cards,> .slip,> .board) > h2{grid-column:1 / -1}
  .report > .sidebar-note{grid-column:4 / 6;grid-row:span 2}
}

/* ---------- Odds board (tables) ---------- */
.board,.tbl{position:relative}
.board table,.tbl table{width:100%;border-collapse:separate;border-spacing:0 2px;font:400 15px/22px var(--sans)}
caption{caption-side:top;text-align:left;font:600 18px/24px var(--cond);color:var(--ink);padding-bottom:8px}
thead th{font:600 15px/20px var(--sans);color:var(--ink);text-align:left;padding:8px 14px 10px;border-bottom:3px solid var(--ink);letter-spacing:.01em}
tbody th,tbody td{background:var(--vb-surface-3);padding:12px 14px;vertical-align:top;text-align:left}
tbody th{color:var(--ink);font-weight:600}
tbody td{color:var(--prose)}
tbody tr > :first-child{border-radius:6px 0 0 6px}
tbody tr > :last-child{border-radius:0 6px 6px 0}
td.fig,.board .fig{font:600 22px/26px var(--cond);color:var(--lime);white-space:nowrap}
q{quotes:"\201C" "\201D"}
.tbl{overflow-x:auto;background:linear-gradient(90deg,var(--vb-bg) 30%,transparent) left/40px 100% no-repeat local,linear-gradient(270deg,var(--vb-bg) 30%,transparent) right/40px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,rgba(234,234,234,.22),transparent) left/12px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(234,234,234,.22),transparent) right/12px 100% no-repeat scroll}
.tbl table{min-width:600px}
@media (max-width:759.98px){
  .board:not(.versus) table,.board:not(.versus) tbody,.board:not(.versus) tr,.board:not(.versus) th,.board:not(.versus) td{display:block}
  .board:not(.versus) caption{display:block}
  .board:not(.versus) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .board:not(.versus) tbody{border-top:3px solid var(--ink)}
  .board:not(.versus) tr{background:none;border-radius:0;padding:12px 0;margin:0;border-bottom:1px solid var(--rule)}
  .board:not(.versus) tbody th,.board:not(.versus) tbody td{background:none;padding:0;border-radius:0}
  .board:not(.versus) tbody th{font:700 17px/22px var(--sans);color:var(--ink);padding-bottom:4px}
  .board:not(.versus) tbody td{padding-top:6px;margin-top:2px}
  .board:not(.versus) tbody td::before{content:attr(data-label);content:attr(data-label) / "";display:block;font:500 14px/18px var(--sans);color:var(--prose);margin-bottom:2px}
}

/* ---------- Versus (comparison) ---------- */
.board.versus{display:grid;grid-template-columns:1fr;gap:8px;max-width:none}
.versus-side{border-top:3px solid var(--lime);padding:14px 0 4px;color:var(--prose);max-width:none}
.versus-side strong{display:block;font:600 30px/34px var(--cond);color:var(--lime);margin-bottom:6px}
.versus-x{justify-self:center;font:700 34px/34px var(--cond);color:var(--ink)}
@media (min-width:760px){.board.versus{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:0 18px}.versus-x{align-self:center;font-size:48px;line-height:48px}}

/* ---------- Calculator: the slip as a tool ---------- */
.slip.is-tool{display:grid;grid-template-columns:minmax(0,1fr);max-width:none;margin-top:20px}
.slip-entry{padding:14px 14px 4px}
.tool-note{font:400 16px/25px var(--sans);color:var(--prose);padding-bottom:12px;border-bottom:1px solid var(--rule)}
#calc label{color:var(--ink);font:600 15px/20px var(--sans)}
#calc input{scroll-margin-top:16px;scroll-margin-bottom:150px}
#calc input:not([type="checkbox"]){width:104px;min-height:44px;background:var(--vb-bg);border:1px solid var(--rule);border-radius:6px;padding:4px 10px;text-align:right;font:600 24px/32px var(--cond);color:var(--lime);font-variant-numeric:tabular-nums}
#c-stake{color:var(--ink)!important;width:140px!important}
#calc input:not([type="checkbox"]):hover{border-color:var(--prose)}
#calc input[aria-invalid="true"]{border-color:var(--vb-error);box-shadow:inset 3px 0 0 var(--vb-error);color:var(--ink)}
#calc:has([aria-invalid="true"]) .result dd{color:var(--quiet)}
.field.stake{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}
.slip.is-tool .legs{padding:0}
.slip.is-tool .leg{display:grid;grid-template-columns:1fr auto;grid-template-areas:"lab inp" "chk inp";column-gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--rule)}
.slip.is-tool .leg > label:first-child{grid-area:lab}
.slip.is-tool .leg > input{grid-area:inp}
.slip.is-tool .leg > .chk{grid-area:chk}
#calc .chk{display:flex;align-items:center;gap:10px;min-height:44px;font:500 14px/20px var(--sans);color:var(--prose);cursor:pointer}
#calc .chk input{width:20px;height:20px;margin:0;accent-color:var(--lime);flex:none}
#calc .chk.free{padding:6px 0;border-bottom:1px solid var(--rule)}
.err{font:600 14px/20px var(--sans);color:var(--ink)}
.err:not(:empty){margin:10px 0 6px;padding:8px 12px;border-left:3px solid var(--vb-error);background:var(--vb-bg)}
.slip-total{position:sticky;bottom:0;z-index:2;background:var(--vb-surface-3);border-top:3px solid var(--lime);border-radius:0 0 var(--r-slip) var(--r-slip);padding:10px 14px;margin-top:8px}
.result{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
.result > div{min-width:0;display:flex;flex-direction:column;justify-content:flex-end}
.result dd{margin:0;font:600 20px/24px var(--cond);color:var(--ink)}
.result dt{font-size:14px;line-height:18px}
.result .ret dd{font-size:30px;line-height:40px;color:var(--lime);overflow:hidden}
#o-ret{display:inline-block}
#o-ret.is-rolling{animation:roll .22s cubic-bezier(.2,.7,.2,1)}
@keyframes roll{from{transform:translateY(70%);opacity:.15}to{transform:none;opacity:1}}
.hint{padding:12px 14px 14px;border-top:1px dashed var(--rule);font:400 16px/25px var(--sans);color:var(--prose)}
@media (max-width:1023.98px){
  .result > div:nth-child(1){order:1}.result > div:nth-child(3){order:2}.result > div:nth-child(2){order:3}.result > div:nth-child(4){order:4}
}
@media (min-width:1024px){
  .slip.is-tool{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:0;margin-top:28px}
  .slip-entry{grid-column:1 / 4;padding:20px 28px 14px 22px}
  .slip-total{grid-column:4 / 6;position:sticky;top:16px;bottom:auto;align-self:start;margin:20px 20px 20px 0;border-radius:var(--r-card);border-top:3px solid var(--lime);padding:18px 20px}
  .result{grid-template-columns:1fr;gap:12px}
  .result > div{padding-bottom:12px;border-bottom:1px solid var(--rule)}
  .result > div:last-child{border-bottom:0;padding-bottom:0}
  .result dt{font-size:14px;line-height:20px}
  .result dd{font-size:24px;line-height:30px}
  .result .ret dd{font-size:48px;line-height:62px}
  .hint{grid-column:1 / -1;padding:14px 22px 16px}
  .slip.is-tool .leg{grid-template-columns:1fr auto auto;grid-template-areas:"lab chk inp";column-gap:20px}
}

/* ---------- Worked case + rail ---------- */
.spread{display:grid;grid-template-columns:1fr;gap:var(--gap);max-width:none}
.case{background:var(--vb-surface-2);border:1px solid var(--rule);border-top:3px solid var(--lime);border-radius:var(--r-slip);padding:14px 16px 16px}
.case h3{padding-bottom:10px;border-bottom:1px solid var(--rule);margin-bottom:12px}
.case p{max-width:var(--lane)}
.sidebar-note{border-top:1px solid var(--ink);padding-top:12px;font:400 16px/26px var(--sans);color:var(--prose);max-width:var(--lane)}
@media (min-width:1024px){
  .spread{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap)}
  .spread .case{grid-column:1 / 4}
  .spread .spread-rail{grid-column:4 / 6}
}

/* ---------- Q&A cards ---------- */
.qa-cards{display:grid;grid-template-columns:1fr;gap:12px var(--gap);align-items:start;max-width:none}
.qa-cards > details{max-width:none;padding-block:2px 12px}
.qa-cards > details + details{margin-top:0!important}
.qa-cards summary{align-items:flex-start;padding-block:10px 4px}
.qa-cards summary h3{flex:1;font:700 19px/24px var(--sans);text-wrap:pretty}
.qa-cards summary::after{content:"";flex:none;width:28px;height:28px;margin:-2px 0 0 12px;padding:0;border:1px solid var(--rule);border-radius:6px;background:linear-gradient(var(--lime),var(--lime)) center/12px 2px no-repeat,linear-gradient(var(--lime),var(--lime)) center/2px 12px no-repeat}
.qa-cards details[open] > summary::after{content:"";background:linear-gradient(var(--lime),var(--lime)) center/12px 2px no-repeat;border-color:var(--lime)}
@media (forced-colors:active){.qa-cards summary::after{content:"+";background:none;text-align:center;font:600 22px/26px var(--cond)}.qa-cards details[open] > summary::after{content:"2"}}
.qa-cards details > p{max-width:var(--lane);margin-top:4px}
@media (min-width:760px){.qa-cards{grid-template-columns:1fr 1fr;row-gap:16px}.qa-cards > details:last-child:nth-child(odd){grid-column:1 / -1}}
@media (min-width:1024px){.qa-cards summary h3{font-size:21px;line-height:28px}.qa-cards summary::after{margin-top:0}}

/* ---------- RG close: pausa panel ---------- */
.rg{background:var(--vb-surface-2);border:1px solid var(--rule);border-radius:var(--r-slip);padding:18px 16px 20px;position:relative}
main .rg h2{display:flex;align-items:center;gap:14px;font-size:28px;line-height:32px;border-bottom:1px solid var(--rule);padding-bottom:12px;margin-bottom:14px;padding-right:0}
main .rg h2::before{content:"";flex:none;width:18px;height:22px;background:linear-gradient(90deg,var(--lime) 0 6px,transparent 6px 12px,var(--lime) 12px 18px)}
.rg ul{list-style:none;padding:0}
.rg li{padding:8px 0;border-top:1px solid var(--rule);color:var(--ink)}
.rg li + li{margin-top:0}
@media (min-width:1024px){.rg{padding:28px 32px 30px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap)}.rg > *{grid-column:1 / 4}.rg > ul{grid-column:4 / 6;grid-row:2;margin-top:0}main .rg h2{grid-column:1 / -1;font-size:40px;line-height:44px}}

/* ---------- Byline ---------- */
.byline{display:flex;gap:14px;align-items:flex-start;border-top:3px solid var(--ink);padding-top:16px}
.byline-mark{flex:none;width:30px;height:24px;margin-top:10px;background:var(--lime);clip-path:polygon(0 0,100% 0,calc(100% - 7px) 100%,0 100%)}
.byline-name{font:600 20px/26px var(--cond);color:var(--ink)}
.byline-name a{text-decoration:none;color:var(--ink);display:inline-flex;min-height:44px;align-items:center}
.byline-name a:hover{color:var(--lime)}
.byline-note{font:400 16px/25px var(--sans);color:var(--prose);max-width:var(--lane)}

/* ---------- Footer: sports index ---------- */
.index{background:var(--vb-surface);border-top:3px solid var(--ink);padding-block:28px 32px}
.index-in{display:grid;gap:24px}
.index-np{font:700 30px/32px var(--cond);text-transform:lowercase;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:8px;justify-self:start;min-height:44px}
.index-np:hover{color:var(--ink)}
.index-cols{display:grid;grid-template-columns:1fr;gap:20px}
.index-head{font:600 20px/24px var(--cond);color:var(--ink);padding-bottom:6px;border-bottom:3px solid var(--lime);margin-bottom:4px}
.index-col ul{list-style:none;margin:0;padding:0}
.index-col li{border-bottom:1px solid var(--rule)}
.index-col a,.index-col span{display:flex;align-items:center;min-height:44px;font:500 15px/20px var(--sans);color:var(--prose);text-decoration:none}
.index-col a:hover{color:var(--lime)}
.index-col a[aria-current="page"]{color:var(--ink);box-shadow:inset 3px 0 0 var(--lime);padding-left:10px}
.index-base{display:grid;gap:10px;border-top:1px solid var(--rule);padding-top:18px;font:400 14px/21px var(--sans);color:var(--prose)}
.index-rg{display:flex;gap:10px;align-items:flex-start}
.index-age{flex:none;border:1px solid var(--ink);border-radius:4px;padding:0 6px;font-weight:700;color:var(--ink);line-height:21px}
.index-indep{color:var(--ink);font-weight:600}
.index-pub{color:var(--quiet)}
@media (min-width:760px){.index-cols{grid-template-columns:repeat(3,1fr);gap:var(--gap)}}
@media (min-width:1024px){.index-in{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap);row-gap:32px}.index-np{grid-column:1 / 3;font-size:44px;line-height:46px}.index-cols{grid-column:1 / -1}.index-base{grid-column:1 / -1;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap)}.index-rg{grid-column:1 / 4}.index-indep{grid-column:4 / 6}.index-pub{grid-column:1 / 4}}

/* ---------- Contents: "Nesta edição" index (pages of 2,500+ words only) ---------- */
.contents{border-top:3px solid var(--ink);border-bottom:1px solid var(--rule);padding-top:12px}
.contents-head{font:600 20px/24px var(--cond);color:var(--ink);padding-bottom:8px}
.contents ul{list-style:none;margin:0;padding:0}
.contents li{border-top:1px solid var(--rule);break-inside:avoid}
.contents a{display:flex;align-items:center;min-height:44px;padding-block:4px;font:500 15px/20px var(--sans);color:var(--ink);text-decoration:none}
.contents a:hover{color:var(--lime)}
@media (min-width:760px){.contents ul{columns:2;column-gap:var(--gap)}}
@media (min-width:1024px){.contents{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--gap);padding-top:0}.contents-head{padding-top:12px;font-size:22px;line-height:26px}.contents ul{grid-column:2 / -1;columns:3}}

/* ---------- Writer blocks (documented in COMPONENTS.md) ---------- */
.playbook{list-style:none;padding:0!important;counter-reset:step;max-width:none!important;display:grid;gap:0}
.playbook > li{counter-increment:step;display:grid;grid-template-columns:44px 1fr;gap:4px 14px;padding:14px 0;border-top:1px solid var(--rule);margin:0!important}
.playbook > li::before{content:counter(step);grid-row:span 2;font:600 34px/36px var(--cond);color:var(--lime)}
.playbook > li > strong{display:block;color:var(--ink)}
.match-clock{list-style:none;padding:0!important;max-width:none!important;border-left:2px solid var(--rule);margin-left:6px!important}
.match-clock > li{position:relative;padding:0 0 18px 22px;margin:0!important}
.match-clock > li::before{content:"";position:absolute;left:-8px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--vb-bg);border:3px solid var(--lime)}
.match-clock .when{display:block;font:600 20px/24px var(--cond);color:var(--ink)}
.slip-checks{list-style:none;padding:0!important;display:grid;gap:0}
.slip-checks > li{display:grid;grid-template-columns:22px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--rule);margin:0!important}
.slip-checks > li::before{content:"";width:16px;height:16px;margin-top:5px;border:2px solid var(--lime);border-radius:4px}
.v5-pending{border:2px dashed var(--vb-accent);border-radius:6px;padding:10px 14px;color:var(--vb-accent);font:500 14px/20px var(--sans)}

/* ---------- Inner pages (not redesigned this round) ---------- */
main > .hero{padding-top:12px;display:grid;gap:12px}
main > .hero .plate{justify-self:start}
main > .hero h1{font-size:40px;line-height:42px}
main > .hero .lede{font-size:19px;line-height:24px}
main > .hero + .deal{margin-top:20px}
main > .tbl{max-width:none}
main section:not(.report):not(.rg) > h2 + *{margin-top:0}
details{border-top:2px solid var(--ink);padding-block:4px 10px;max-width:var(--lane)}
details + details{margin-top:12px!important}
summary{display:flex;align-items:center;min-height:44px;cursor:pointer;list-style:none;color:var(--ink)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";margin-left:auto;padding-left:12px;font:600 24px/24px var(--cond);color:var(--lime)}
details[open] > summary::after{content:"\2212"}
summary h3{font:700 18px/24px var(--sans)}
details > p{margin-top:6px}
.ficha{display:grid;gap:0}
.ficha > div{padding:10px 0;border-top:1px solid var(--rule)}
.ficha dt{font:500 14px/20px var(--sans);color:var(--prose)}
.ficha dd{margin:0;color:var(--ink)}
.line{font:500 14px/20px var(--sans);color:var(--prose)}
@media (min-width:1024px){
  main > .hero{padding-top:40px;max-width:60%}
  main > .hero h1{font-size:72px;line-height:72px}
  main > .hero .lede{font-size:22px;line-height:30px}
  main > .hero .intro{font-size:18px;line-height:29px}
  main > .hero + .deal{max-width:60%}
  main > section:not(.report):not(.rg) > *{max-width:var(--lane)}
  main > section:not(.report):not(.rg) > h2{max-width:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* ---------- First-screen pass (22.10), v6: dark nameplate bar, condensed H1, ink lede on a lime rule, dark lower-third strap ---------- */
.masthead-in{padding-block:0}
.nameplate{color:var(--ink);margin-block:0}
.nameplate:hover{color:var(--ink)}
.np-flag{background:var(--lime);color:var(--vb-on-brand)}
.edition{align-self:center;padding:0;color:var(--prose);font-weight:600}
.ear{font:500 14px/18px var(--sans);margin-top:3px;color:var(--prose)}
.ribbon{border-top:0;box-shadow:inset 0 3px 0 var(--lime)}
.lede{width:auto;color:var(--ink);border-left:4px solid var(--lime);padding:2px 0 2px 12px}
.strap{background:var(--vb-surface-3);color:var(--ink);border-top:4px solid var(--lime)}
.strap-flag{background:var(--vb-bg)}
.strap-plate{border:2px solid var(--lime);background:var(--vb-surface-3)}
.strap-kicker{font-size:14px;line-height:18px;color:var(--prose)}
.strap-offer{color:var(--ink)}
.strap-terms{font:400 16px/24px var(--sans);color:var(--prose)}
.strap-ad{font-size:14px;line-height:20px;color:var(--prose)}
.strap-age{border-color:var(--prose);color:var(--ink)}
.strap-aff{font:400 16px/24px var(--sans);color:var(--prose)}
.strap-btn,.strap-btn:hover{background:var(--lime);color:var(--vb-on-brand)}
@media (max-width:1023.98px){
  .nameplate{padding-block:2px}
  .ear{margin-top:0;padding-block:1px;line-height:17px}
  .opening{padding-top:4px}
  .opening .headline{align-items:flex-start}
  .opening .hero h1{font-size:clamp(52px,16.4vw,76px);line-height:.9;white-space:nowrap}
  .opening .plate{flex:none}
  .opening .plate img{width:clamp(72px,20vw,96px)}
  .opening .deal{margin-inline:calc(-1 * var(--gut))}
  .opening .strap{border-radius:0}
  .strap-flag{padding-left:var(--gut)}
  .strap-copy,.strap-terms,.strap-act{padding-inline:var(--gut)}
}
@media (min-width:1024px){
  .masthead-in{padding-block:16px 12px}
  .ear{font-size:20px;line-height:28px;margin-top:0}
  .edition{padding-top:8px;align-self:end}
  .strap-terms{font-size:17px;line-height:26px}
  .strap-aff{font-size:17px;line-height:26px}
}
/* First-screen pass (22.10), section front at desktop: hero beside the house card, the strap full-bleed, then the lead story and the second story side by side */
@media (min-width:1024px){
  .nameplate{font-size:64px;line-height:60px}
  .masthead-in{padding-block:14px 12px}
  .ear{font-size:20px;line-height:26px}
  main:has(> .opening){grid-template-rows:none}
  main > .opening{display:contents}
  main > .opening::after{content:none}
  .opening > .hero{grid-column:1 / 4;grid-row:1;padding-top:28px;position:relative;display:grid;gap:20px;align-content:start}
  .opening > .hero > *{order:0;margin-top:0}
  .opening > .hero::after{content:"";position:absolute;top:28px;bottom:0;right:calc(var(--gap) * -.5 - .5px);width:1px;background:var(--rule)}
  main > .slip-example + .opbox{grid-column:4 / 6;grid-row:1;margin:28px 0 0 calc(var(--gap) * .5)}
  .opening > .deal{grid-column:1 / -1;grid-row:2;margin-top:20px}
  main > .opbox + .report{grid-column:1 / 4;grid-row:3 / span 2;margin-top:20px;grid-template-columns:minmax(0,1fr)}
  main > .opbox + .report + .report{grid-column:4 / 6;grid-row:3;margin:20px 0 0;padding-left:calc(var(--gap) * .5);border-left:1px solid var(--rule);grid-template-columns:minmax(0,1fr)}
  main > .opening + .slip-example{grid-column:4 / 6;grid-row:4;margin:28px 0 0 calc(var(--gap) * .5);align-self:start}
  main > .opbox + .report > *,main > .opbox + .report + .report > *{grid-column:1 / -1}
  main > .opbox + .report > p{max-width:var(--lane)}
  main > .opbox + .report + .report .board.versus{grid-template-columns:1fr;gap:8px}
  main > .opbox + .report + .report .versus-x{align-self:start;font-size:32px;line-height:32px}
}
@media (min-width:1366px){
  .strap{grid-template-columns:216px minmax(0,.9fr) minmax(0,2fr);grid-template-areas:"flag copy terms" "flag btn terms" "ad aff aff"}
  .strap-btn{justify-self:start;align-self:start;margin:0 0 16px 4px}
  .strap-terms{border-top:0;border-left:1px solid var(--rule);padding:16px 22px 12px}
}
/* First-screen pass (22.10), calculator at desktop: the totals card moves to the left, like a scoreboard before the entry */
@media (min-width:1024px){
  .slip.is-tool > .slip-total{grid-column:1 / 3;grid-row:1;margin:20px 0 20px 20px;align-self:stretch;align-content:start}
  .slip.is-tool > .slip-entry{grid-column:3 / 6;grid-row:1;padding:20px 22px 14px 28px}
  .slip.is-tool > .hint{grid-row:2}
  .slip.is-tool .result{grid-template-columns:1fr 1fr;gap:14px 20px}
  .slip.is-tool .result > .ret{grid-column:1 / -1;order:-1}
  .slip.is-tool .result > div:nth-last-child(2){border-bottom:0;padding-bottom:0}
}

/* ---------- v6 (22.10): wide screens and readability ---------- */
:root{--lane:44ch;--art:min(820px,60%)}
.byline{background:var(--vb-surface-2);border:1px solid var(--rule);border-top:3px solid var(--ink);border-radius:0 0 var(--r-card) var(--r-card);padding:16px}
.qa-cards{align-items:stretch}
@media (min-width:1024px){
  .slip-alt,.src,.tool-note,.hint,.sidebar-note,.byline-note,.opbox dd,.strap-terms,.strap-aff{font-size:17px;line-height:27px}
  .slip-sub,.leg-note{font-size:15px;line-height:21px}
  /* masthead: tagline ear left, nameplate centre, edition ear right */
  .masthead-in{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"ear np ed";align-items:stretch;column-gap:40px}
  .nameplate{justify-self:center;align-self:center}
  .ribbon{border-bottom:2px solid var(--rule)}
  .ear{justify-self:stretch;align-self:stretch;display:flex;align-items:center;max-width:none;margin:0;padding:2px 0 4px 14px;border-left:3px solid var(--lime)}
  .edition{justify-self:stretch;align-self:stretch;display:block;align-content:center;text-align:right;padding:0}
  /* every article section: the head stays in the left rail, the article runs in the right zone */
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--art));column-gap:var(--gap);align-items:start;border-top:3px solid var(--ink);padding-top:22px}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > *{grid-column:2;grid-row:auto;margin-top:16px}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2{grid-column:1;grid-row:1 / span 60;position:sticky;top:20px;align-self:start;margin:0;padding:0;border:0;max-width:none}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2 + *{margin-top:0}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p,ul,ol:not(.playbook):not(.match-clock),dl,h3){max-width:var(--lane)}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(.board,.tbl,.slip,.spread,.playbook,.match-clock,.case){max-width:none}
  main > section .spread{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
  main > section .spread .case,main > section .spread .spread-rail{grid-column:auto}
  main > section .slip.is-tool > .slip-total{grid-column:1 / 3}
  main > section .slip.is-tool > .slip-entry{grid-column:3 / 6;padding:20px 18px 14px 22px}
  main > section .slip.is-tool .leg{grid-template-columns:1fr auto;grid-template-areas:"lab inp" "chk inp";column-gap:14px}
  /* inner and utility heroes: a full-width front; the lede is the standfirst in the head zone, the intro opens the article zone */
  main > .hero{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--art));column-gap:var(--gap);row-gap:22px;padding-top:36px}
  main > .hero > h1{grid-column:1 / -1;grid-row:1;align-self:end;white-space:normal;padding-right:220px}
  main > .hero > .plate{grid-column:2;grid-row:1;justify-self:end;align-self:end;margin:0}
  main > .hero > .lede{grid-column:1;grid-row:2;align-self:stretch;max-width:none;font-size:22px;line-height:31px}
  main > .hero > .intro{grid-column:2;grid-row:2;max-width:var(--lane)}
  main > .hero + .deal{max-width:none;margin-top:28px}
  .byline{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,var(--art));column-gap:var(--gap);padding:20px 24px}
  .byline-tx{display:contents}
  .byline-name{grid-column:2}
  .byline-note{grid-column:3;max-width:var(--lane)}
}
/* above 1440: running text at 18px, the newspaper widens with the screen, and from 1690 the whole page scales up */
@media (min-width:1440px){
  :root{--max:2000px}
  body{font-size:18px;line-height:29px}
  .slip-alt,.src,.tool-note,.hint,.sidebar-note,.byline-note,.opbox dd,.strap-terms,.strap-aff{font-size:18px;line-height:28px}
}
@media (min-width:1690px){
  body{zoom:1.1}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2{font-size:64px;line-height:66px}
}
@media (min-width:2290px){body{zoom:1.3}}
@media (min-width:2800px){body{zoom:1.5}}
/* v6 critique 1 (22.10): fill the hero beside the intro, deck-size ledes, RG list beside its paragraph */
@media (min-width:1024px){
  .rg{grid-template-columns:minmax(0,var(--lane)) minmax(0,1fr)}
  .rg > *{grid-column:1}
  .rg > ul{grid-column:2;grid-row:2;align-self:start;max-width:none}
  main > .hero > .lede{font-size:25px;line-height:34px}
}
@media (min-width:1690px){
  .opening > .hero{grid-template-columns:minmax(0,1fr) minmax(0,var(--lane));column-gap:var(--gap);row-gap:24px}
  .opening > .hero > .headline{grid-column:1 / -1}
  .opening > .hero > .lede{grid-column:1;grid-row:2;align-self:stretch;max-width:none;font-size:28px;line-height:37px}
  .opening > .hero > .intro{grid-column:2;grid-row:2;max-width:none}
  main > .hero > .lede{font-size:28px;line-height:37px}
}
@media (min-width:2290px){
  .opening > .hero > .lede,main > .hero > .lede{font-size:32px;line-height:41px}
}
/* polish 1 (22.10): prose at 60-62 characters a line, the timeline capped at the prose measure, the example slip at the top of the lead story with the contents box under it, and from 1690 a head zone of 2 of 7 with the article centred in the right track and figures across it */
h1{hyphens:manual}
.match-clock > li{max-width:calc(var(--lane) + 22px)}
@media (min-width:1024px){
  main > .opening + .slip-example{grid-row:3;margin-top:20px}
}
/* polish 2 (22.10): side heads hug their own text; from 1690 an examples rail at the right where small boards, case boxes and notes hang beside the prose they follow; the home lead story hugs its lane with the slip and the index beside it and the second story under them */
@media (min-width:1024px){
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2{text-align:right;text-wrap:pretty}
}
@media (min-width:1440px){
  main:has(> .opening){grid-template-rows:auto auto auto 1fr}
  main > .opbox + .report{grid-column:1 / 3}
  main > .opening + .slip-example{grid-column:3 / 5;grid-row:3;margin:20px 0 0 calc(var(--gap) * .5)}
  main > .opbox + .report + .contents{grid-column:5 / 6;grid-row:3;align-self:start;display:block;margin:20px 0 0;border-bottom:0}
  main > .opbox + .report + .contents ul{columns:1}
  main > .opbox + section.report + .contents + section.report.report.report.report{grid-column:3 / 6;grid-row:4;margin:32px 0 0 calc(var(--gap) * .5);grid-template-columns:minmax(0,1fr)}
  main > .opbox + section.report + .contents + section.report.report.report.report > *{grid-column:1}
  main > .opbox + section.report + .contents + section.report.report.report.report > h2{grid-row:auto;position:static;text-align:left}
}
@media (min-width:1690px){
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report){grid-template-columns:minmax(0,1fr) minmax(0,var(--lane)) minmax(0,21%)}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > *{grid-column:2;max-width:none}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2{grid-column:1;font-size:56px;line-height:60px}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(.board,.tbl,.slip,.spread,.playbook,.qa-cards){grid-column:2 / 4}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))){grid-column:3;align-self:start}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))):has(+ :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl)){grid-row:span 2}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))):has(+ :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl)){grid-row:span 3}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))):has(+ :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl)){grid-row:span 4}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))):has(+ :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl)){grid-row:span 5}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))):has(+ :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl) + :is(p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl)){grid-row:span 6}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > h2 + :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))){margin-top:0}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report) > :is(p:not(.sidebar-note),ul,ol:not(.playbook),dl) + :is(.case,.sidebar-note,.board:not(.versus):not(:has(tbody tr:nth-child(8))):not(:has(tr > :nth-child(4))):not(:has(tbody tr:nth-child(5)):has(tr > :nth-child(3))):not(:has(tr > :nth-child(3)):has(td.fig))) td.fig{white-space:normal}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report):not(:has(> :not(h2,p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl))){grid-template-columns:minmax(0,1fr) minmax(0,34%) minmax(0,var(--lane)) minmax(0,1fr)}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report):not(:has(> :not(h2,p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl))) > *{grid-column:3}
  main > section:not(.rg):not(.faq):not(.opbox + .report):not(.opbox + .report + .report):not(:has(> :not(h2,p:not(.sidebar-note),h3,ul,ol:not(.playbook),dl))) > h2{grid-column:2}
  main > .hero{grid-template-columns:minmax(0,1fr) minmax(0,var(--lane)) minmax(0,21%)}
  main > .hero > .plate{grid-column:3}
  main > .hero > .intro{grid-column:2;max-width:none}
  main > .opbox + .report{align-self:stretch}
  main > .opbox + section.report + .contents + section.report.report.report.report{grid-template-columns:minmax(0,1fr) minmax(0,var(--lane));align-self:stretch;align-content:start}
  main > .opbox + section.report + .contents + section.report.report.report.report > *{grid-column:2}
  main > .opbox + section.report + .contents + section.report.report.report.report > h2{grid-column:1;grid-row:1;align-self:start;margin:0;text-align:right;font-size:48px;line-height:52px}
  main > .opbox + section.report + .contents + section.report.report.report.report > h2 + *{grid-row:1;margin-top:0}
  main > .opbox + section.report + .contents + section.report.report.report.report > .playbook.playbook{grid-column:1 / -1}
  main > .opbox + section.report + .contents + section.report.report.report.report > .playbook > li{grid-template-columns:minmax(0,1fr) 44px minmax(0,var(--lane))}
  main > .opbox + section.report + .contents + section.report.report.report.report > .playbook > li > strong{grid-column:1;grid-row:1;text-align:right}
  main > .opbox + section.report + .contents + section.report.report.report.report > .playbook > li::before{grid-column:2}
}
