/* Caraway breakdown: page-specific additions to the breakdown kit (2026-11-10, rich v2) */
.bd-plays { grid-template-columns: repeat(auto-fit, minmax(min(480px, 100%), 1fr)); } /* 4 plays: 2x2, not 3+1 */
.pg-section:not(.alt):not(.dark) .bd-plays > li { background-color: var(--bg); }

/* Our diagrams: narrow viewBox so text stays >= 12px at 375; capped so it doesn't balloon on desktop */
.cw-fig svg { max-width: 460px; margin: 0 auto; }
.cw-fig-label { margin: 0 0 16px; opacity: .7; }
.bd-figure svg .cw-t { font-size: 17px; fill: var(--dark); }
.bd-figure svg .cw-b { font-weight: 600; }
.bd-figure svg .cw-s { font-size: 14px; fill: var(--dark); opacity: .75; }
.bd-figure svg .cw-n { font-size: 14px; font-weight: 600; fill: var(--dark); }
.bd-figure svg .cw-k { font-family: var(--font--mono); font-size: 14px; letter-spacing: .06em; fill: var(--dark); opacity: .7; }
.bd-figure svg .cw-inv { font-size: 17px; fill: var(--light); }
.bd-figure svg .cw-dash { stroke-dasharray: 5 4; }
@media (max-width: 479px) { .bd-figure.cw-fig { padding: 16px; } }

.cw-quote { margin-bottom: 32px; padding-top: 4px; padding-bottom: 4px; }
.pg-split-text .cw-quote { margin: 8px 0 0; padding-left: 20px; }
.pg-split-text .cw-quote blockquote { font-size: clamp(22px, 2vw, 28px); }

/* Ad anatomy zones on the phone wireframe */
.bd-phone .cw-z1 { top: 5%; } .bd-phone .cw-z2 { top: 15%; } .bd-phone .cw-z3 { top: 45%; } .bd-phone .cw-z4 { top: 71%; } .bd-phone .cw-z5 { top: 82%; }

/* One landscape video + two Shorts */
@media (min-width: 992px) { .cw-embeds { grid-template-columns: 2fr 1fr 1fr; align-items: start; } }
.bd-checklist a { white-space: nowrap; }
/* Hero figure sits on the dark hero: keep its text dark and its caption in body type */
.pg-hero-media .cw-fig { color: var(--dark); }
.pg-hero-media .cw-fig figcaption { font-family: var(--font--body); font-size: 13px; letter-spacing: 0; text-transform: none; }

/* v4 screenshots + interactivity (2026-11-10) */
.bx-sub { margin: 64px 0 16px; font-family: var(--font--serif); font-weight: 400; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.1; }
.pg-head + .bx-sub, .pg-head + .bd-tabs { margin-top: 0; }
.bx-lead { margin: 0 0 24px; max-width: 760px; line-height: 1.55; }
.bx-hint { margin: 0 0 16px; font-family: var(--font--mono); font-size: 12px; opacity: .7; }
.bx-math { margin: 24px 0 0; font-family: var(--font--mono); font-size: 13px; line-height: 1.5; max-width: 760px; }
.bd-tabs + .bd-steal, .bx-math + .bd-steal { margin-top: 16px; max-width: 760px; }
.bd-hot-wrap + .bx-sub, .bd-hot-wrap + .bd-shots { margin-top: 48px; }
.bd-hot-wrap.bx-n { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); }
.bx-adtab { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 32px; align-items: start; }
.bx-adtab h3, .bx-adtab h4 { margin: 0 0 12px; font-family: var(--font--serif); font-weight: 400; font-size: 28px; line-height: 1.1; }
.bx-adtab p { margin: 0 0 12px; line-height: 1.55; max-width: 560px; }
.bx-adtab .bx-meta { font-family: var(--font--mono); font-size: 12px; line-height: 1.6; opacity: .8; }
.bx-adtab .bx-meta a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.bx-adtab .bd-shot { max-width: 300px; }
@media (max-width: 767px) {
  .bd-hot-wrap.bx-n { grid-template-columns: minmax(0, 1fr); }
  .bd-hot-wrap.bx-n .bd-hot { max-width: 340px; width: 100%; justify-self: center; }
  .bx-adtab { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .bx-adtab .bd-shot { max-width: 280px; }
}
