/* ─────────────────────────────
   Signify Insights — beyond-the-plan.v4.css
   The six stations and the five polls of the "Beyond the Plan" session, in
   both of the places they run: inside a 1280×720 slide (.btp[data-ctx=deck])
   and on the session page (.btp[data-ctx=page]), where they reflow for phones;
   since v2 (b30), the slide components of its strategy-house section: the
   house, the quote cards, the principle rows, the pillar cards, the
   initiative charter, the timeline and project grid, and the capacity bar;
   and since v3 (b31), the components of the reordered talk (the opening
   number, the maturity assessments, the tools that raise the pillars, the
   initiative card and its monitoring, who helps, the enabler assessment, the
   path to the committee) and the session's landing page in Signify Labs;
   and since v4 (b32), what makes it land harder: the house that grows on every
   slide, the two layers of a dense slide (the room's on screen, the desk's on
   paper), guess-then-reveal, the fifth poll, and the landing page's new parts.

   Components read only the slide tokens (--s-*). On a slide the deck sets
   them; on the session page .btp-scope maps them onto the site's own tokens,
   so the stations follow the site's light and dark themes exactly.
   ───────────────────────────── */

/* ═══ tokens on the session page ═══════════════════════════════════════ */
.btp-scope{
  --s-bg:var(--surface); --s-ink:var(--ink); --s-soft:var(--ink-soft); --s-mute:var(--ink-mute); --s-line:var(--hair-2);
  --s-card:var(--surface-2); --s-card2:var(--surface-3); --s-fill:var(--jade); --s-on-fill:var(--paper); --s-acc:var(--jade);
  --s-deep:var(--jade-deep); --s-gold:var(--amber); --s-gold-t:var(--amber); --s-coral:#d9694a; --s-coral-t:var(--bad);
  --s-band:#0f4a40; --s-band-t:#f3f0e4; --s-band-m:#bfd0c7; --s-band-a:#7ed4b3; --s-band-g:#f0c18f; --s-band2:#1d5c50;
}

/* ═══ shared bits ═══════════════════════════════════════════════════════ */
.btp{font-family:var(--sans);color:var(--s-ink)}
.btp *,.btp *::before,.btp *::after{box-sizing:border-box}
.btp button{font:inherit;color:inherit}
.btp p{margin:0}
.btp .bl{font:700 10.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-mute)}
.btp .bl.a{color:var(--s-acc)} .btp .bl.g{color:var(--s-gold-t)}
.btp .note{font-size:12.5px;line-height:1.45;color:var(--s-mute)}
.btp .score{font:700 12px var(--mono);letter-spacing:.06em;color:var(--s-acc);text-transform:uppercase}
.btp .tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.btp .tb{display:inline-flex;align-items:center;gap:6px;min-height:32px;border-radius:999px;border:1px solid var(--s-line);background:transparent;
  padding:0 13px;font:700 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-mute);cursor:pointer}
.btp .tb:hover,.btp .tb:focus-visible{border-color:var(--s-acc);color:var(--s-acc)}
.btp .tb.fill{background:var(--s-fill);border-color:var(--s-fill);color:var(--s-on-fill)}
.btp .tb.fill:hover,.btp .tb.fill:focus-visible{filter:brightness(1.08);color:var(--s-on-fill)}
.btp .ic{width:15px;height:15px;flex:none;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.btp .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;border:1px solid var(--s-line);border-radius:999px;padding:3px}
.btp .seg{display:inline-flex;gap:3px}
.btp .seg button{min-width:28px;height:28px;border-radius:7px;border:1px solid var(--s-line);background:var(--s-bg);cursor:pointer;
  font:700 11.5px var(--mono);color:var(--s-mute);padding:0 6px}
.btp .seg button:hover,.btp .seg button:focus-visible{border-color:var(--s-acc);color:var(--s-acc)}
.btp .seg button[aria-checked="true"]{background:var(--s-fill);border-color:var(--s-fill);color:var(--s-on-fill)}
.btp .seg.t button[aria-checked="true"]{background:var(--s-gold-t);border-color:var(--s-gold-t);color:var(--s-bg)}
.btp-store-off{margin-top:8px}
.btp .btp-nojs{font-size:15px;line-height:1.5;color:var(--s-mute)}
.btp .btp-nojs a{color:var(--s-acc);text-decoration:underline}
.btp svg text{font-family:var(--mono)}

/* ═══ Station 1 · Plan or strategy? ═══════════════════════════════════ */
.s1-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.s1-card{background:var(--s-card);border-radius:10px;padding:12px 13px;display:flex;flex-direction:column;gap:9px;min-height:0;border:1.5px solid transparent}
.s1-card .tx{font-size:14px;line-height:1.38;color:var(--s-ink);font-weight:600;flex:1}
.s1-card .sn{font:700 10.5px var(--mono);color:var(--s-mute);letter-spacing:.06em}
.s1-card .two button{border:0;border-radius:999px;height:30px;background:transparent;cursor:pointer;font:700 10.5px var(--mono);letter-spacing:.07em;
  text-transform:uppercase;color:var(--s-mute)}
.s1-card .two button:hover,.s1-card .two button:focus-visible{color:var(--s-acc)}
.s1-card .two button[aria-pressed="true"]{background:var(--s-fill);color:var(--s-on-fill)}
.s1-card.ok{border-color:var(--s-fill)}
.s1-card.no{border-color:var(--s-coral)}
.s1-card .why{font-size:12px;line-height:1.38;color:var(--s-soft)}
.s1-card .why b{font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-right:5px}
.s1-card.ok .why b{color:var(--s-acc)} .s1-card.no .why b{color:var(--s-coral-t)}
.s1-foot{display:flex;align-items:center;gap:14px;margin-top:12px}

/* ═══ Station 2 · Capability gap radar ════════════════════════════════ */
.s2{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:22px;align-items:start}
.s2-rows{display:flex;flex-direction:column}
.s2-head,.s2-row{display:grid;grid-template-columns:minmax(0,1fr) var(--s2c,152px) var(--s2c,152px);gap:14px;align-items:center}
.s2-head{padding:0 0 6px;border-bottom:1px solid var(--s-line)}
.s2-head .bl.g,.s2-head .bl.a{text-align:center}
.s2-row{padding:5px 0;border-bottom:1px solid var(--s-line)}
.s2-row .nm{font-weight:700;font-size:13.5px;line-height:1.2;color:var(--s-ink)}
.s2-row .nm small{display:block;font-weight:500;font-size:11.5px;color:var(--s-mute);margin-top:2px;line-height:1.3}
.s2-viz{display:flex;flex-direction:column;align-items:center;gap:8px}
.s2-viz svg{width:100%;max-width:330px;height:auto;display:block}
.s2-key{display:flex;gap:14px;font:700 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--s-mute)}
.s2-key i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-2px}
.s2-key .k1{background:var(--s-gold);opacity:.75} .s2-key .k2{border:2px solid var(--s-acc)}
.s2-gaps{width:100%;background:var(--s-card);border-radius:10px;padding:10px 12px}
.s2-gaps ol{margin:6px 0 0;padding:0;list-style:none;counter-reset:g}
.s2-gaps li{display:flex;gap:9px;align-items:baseline;padding:4px 0;font-size:13px;line-height:1.3;color:var(--s-ink);counter-increment:g}
.s2-gaps li::before{content:counter(g);font:700 11px var(--mono);color:var(--s-gold-t)}
.s2-gaps li b{margin-left:auto;font:700 11px var(--mono);color:var(--s-acc);white-space:nowrap}
.s2-gaps .empty{font-size:12.5px;color:var(--s-mute);margin-top:4px}

/* ═══ Station 3 · Your IA SAR ═════════════════════════════════════════ */
.s3{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:start}
.s3-lib{display:flex;flex-direction:column;gap:6px}
.s3-lens{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;align-items:start}
.s3-lens .bl{padding-top:7px}
.s3-chips{display:flex;flex-wrap:wrap;gap:5px}
.btp .s3-chip{border:1px solid var(--s-line);background:var(--s-bg);border-radius:999px;padding:5px 11px;font:600 12.5px/1.25 var(--sans);
  color:var(--s-ink);cursor:pointer;text-align:left}
.btp .s3-chip:hover,.btp .s3-chip:focus-visible{border-color:var(--s-acc)}
.btp .s3-chip[aria-pressed="true"]{background:var(--s-fill);border-color:var(--s-fill);color:var(--s-on-fill)}
.btp .s3-chip:disabled{opacity:.45;cursor:not-allowed}
.s3-own{display:flex;gap:6px;align-items:center;margin-top:2px}
.s3-own input,.s3-own select{height:30px;border-radius:7px;border:1px solid var(--s-line);background:var(--s-bg);color:var(--s-ink);font:600 12.5px var(--sans);padding:0 9px;min-width:0}
.s3-own input{flex:1 1 0;width:0}
.s3-picked{margin-top:6px;border-top:1px solid var(--s-line)}
.s3-picked .note{margin:10px 0 4px}
.s3-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto auto 26px;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid var(--s-line)}
.s3-item .lb{font-size:12.5px;font-weight:700;line-height:1.25;color:var(--s-ink)}
.s3-item .lb small{display:block;font:700 9.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-mute);margin-top:2px}
.s3-item .seg button{min-width:24px;height:24px;font-size:10.5px;padding:0 5px}
.s3-item .x{width:26px;height:26px;border-radius:50%;border:1px solid var(--s-line);background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--s-mute)}
.s3-item .x:hover,.s3-item .x:focus-visible{border-color:var(--s-coral);color:var(--s-coral-t)}
.s3-dot{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font:700 10.5px var(--mono);color:#fff;background:var(--s-mute)}
.s3-dot.z0{background:var(--s-gold-t);color:var(--s-bg)} .s3-dot.z1{background:var(--s-fill);color:var(--s-on-fill)}
.s3-viz svg{width:100%;max-width:360px;height:auto;display:block;margin:0 auto}
.s3-buckets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:6px}
.s3-buckets .bk{background:var(--s-card);border-radius:9px;padding:8px 10px;font-size:12px;line-height:1.35;color:var(--s-ink)}
.s3-buckets .bk ul{margin:4px 0 0;padding:0;list-style:none}
.s3-buckets .bk li{padding:2px 0}
.s3-buckets .bk .none{color:var(--s-mute)}
.s3-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 16px;font:700 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--s-mute);margin-top:6px}
.s3-legend span{display:inline-flex;align-items:center;gap:6px}
.s3-legend i{width:12px;height:12px;border-radius:50%;flex:none;background:var(--s-bg);border:2px solid var(--s-mute)}
.s3-legend i.z0{background:var(--s-gold-t);border-color:var(--s-gold-t)} .s3-legend i.z1{background:var(--s-fill);border-color:var(--s-fill)}

/* ═══ Station 4 · Do or don't? ════════════════════════════════════════ */
.s4-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.s4-card{background:var(--s-card);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:9px;border:1.5px solid transparent}
.s4-card .tx{font-size:13.5px;line-height:1.4;color:var(--s-ink);font-weight:600;flex:1}
.s4-card .sn{font:700 10.5px var(--mono);color:var(--s-mute);letter-spacing:.06em}
.s4-card .two button{border:0;border-radius:999px;height:30px;background:transparent;cursor:pointer;font:700 10.5px var(--mono);letter-spacing:.07em;
  text-transform:uppercase;color:var(--s-mute)}
.s4-card .two button:hover,.s4-card .two button:focus-visible{color:var(--s-acc)}
.s4-card .two button[aria-pressed="true"]{background:var(--s-fill);color:var(--s-on-fill)}
.s4-card.ok{border-color:var(--s-fill)} .s4-card.no{border-color:var(--s-coral)}
.s4-card .res{font-size:12px;line-height:1.4;color:var(--s-soft)}
.s4-card .res b{font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-right:5px}
.s4-card.ok .res b{color:var(--s-acc)} .s4-card.no .res b{color:var(--s-coral-t)}
.s4-card .res .les{display:block;margin-top:5px;color:var(--s-ink);font-weight:700}
.s4-card .res .hap{display:block;margin-top:4px}
.btp[data-ctx="deck"] .s4-card .res .hap{display:none}
.s4-foot{display:flex;align-items:center;gap:14px;margin-top:12px}

/* ═══ Station 5 · My strategy on a page ═══════════════════════════════ */
.s5{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.s5 .fld{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}
.s5 label{font:700 10.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc)}
.s5 .hint{font-size:11.5px;color:var(--s-mute);line-height:1.35}
.s5 input[type="text"],.s5 textarea,.s5 select{width:100%;border-radius:8px;border:1px solid var(--s-line);background:var(--s-bg);color:var(--s-ink);
  font:600 13.5px/1.4 var(--sans);padding:7px 10px}
.s5 textarea{resize:vertical;min-height:58px}
.s5 input:focus-visible,.s5 textarea:focus-visible,.s5 select:focus-visible,.s3-own input:focus-visible,.s3-own select:focus-visible{outline:2px solid var(--s-acc);outline-offset:1px;border-color:var(--s-acc)}
.s5 .objs{display:flex;flex-direction:column;gap:5px}
.s5 .auto{background:var(--s-card);border-radius:10px;padding:10px 12px;margin-bottom:10px}
.s5 .auto ul{margin:5px 0 0;padding:0 0 0 16px;font-size:12.5px;line-height:1.45;color:var(--s-ink)}
.s5 .auto li::marker{color:var(--s-gold)}
.s5 .auto .none{font-size:12.5px;color:var(--s-mute);margin-top:4px}
.s5 .opts5{display:flex;flex-wrap:wrap;gap:5px}
.s5 .opts5 button{border:1px solid var(--s-line);background:var(--s-bg);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600;color:var(--s-ink);cursor:pointer}
.s5 .opts5 button:hover,.s5 .opts5 button:focus-visible{border-color:var(--s-acc)}
.s5 .opts5 button[aria-pressed="true"]{background:var(--s-fill);border-color:var(--s-fill);color:var(--s-on-fill)}
.s5 .yrs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.s5-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;grid-column:1 / -1}
/* v2: the house fields — mission, principles, pillars, and where each first move goes */
.s5 .prins{display:flex;flex-direction:column;gap:5px}
.s5 .pils{display:flex;flex-direction:column;gap:5px}
.s5 .pil{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:5px}
.s5 .place{margin:5px 0 0;padding:0;list-style:none}
.s5 .pl{display:grid;grid-template-columns:minmax(0,1fr) 148px 104px;gap:6px;align-items:center;padding:5px 0;border-top:1px solid var(--s-line)}
.s5 .pl .lb{font-size:12.5px;font-weight:700;line-height:1.3;color:var(--s-ink)}
.s5 .pl select{padding:5px 8px;font-size:12.5px}
.s5-msg{font-size:12.5px;color:var(--s-acc);font-weight:600}

/* ═══ inside a slide: bigger type for a shared screen, and every state fits ═ */
.btp[data-ctx="deck"] .s1-card{padding:12px 13px;gap:7px}
.btp[data-ctx="deck"] .s1-card .tx{font-size:14.5px}
.btp[data-ctx="deck"] .s1-card .why{font-size:12px}
.btp[data-ctx="deck"] .s4-card .tx{font-size:15px}
.btp[data-ctx="deck"] .s4-card .res{font-size:13px}
.btp[data-ctx="deck"] .s4-card .res .les{display:inline;margin-top:0}
.btp[data-ctx="deck"] .s2{--s2c:172px;gap:30px}
.btp[data-ctx="deck"] .s2-row{padding:4px 0}
.btp[data-ctx="deck"] .s2-row .nm{font-size:15.5px}
.btp[data-ctx="deck"] .s2-row .seg button{min-width:32px;height:32px;font-size:12.5px}
.btp[data-ctx="deck"] .s2-viz svg{max-width:380px}
.btp[data-ctx="deck"] .s2-rows .tools{margin-top:14px}
.btp[data-ctx="deck"] .s2-gaps li{font-size:14px}
.btp[data-ctx="deck"] .s3{gap:30px}
.btp[data-ctx="deck"] .s3-lib{gap:7px}
.btp[data-ctx="deck"] .s3-chip{font-size:12px;padding:4px 10px}
.btp[data-ctx="deck"] .s3-item{padding:4px 0}
.btp[data-ctx="deck"] .s3-item .lb{font-size:13px}
.btp[data-ctx="deck"] .s3-viz .tools{justify-content:center;margin-top:12px}
.btp[data-ctx="deck"] .s3-item .lb small{display:none}
.btp[data-ctx="deck"] .s3-viz svg{max-width:300px}
.btp[data-ctx="deck"] .s3-buckets .bk{font-size:12.5px}
.btp[data-ctx="deck"] .s5{gap:28px}
.btp[data-ctx="deck"] .s5 .fld{margin-bottom:16px;gap:8px}
.btp[data-ctx="deck"] .s5 label,.btp[data-ctx="deck"] .s5 .bl{font-size:11.5px}
.btp[data-ctx="deck"] .s5 textarea{min-height:64px;font-size:15px;padding:9px 12px}
.btp[data-ctx="deck"] .s5 .objs{gap:8px}
.btp[data-ctx="deck"] .s5 .objs input{padding:8px 12px;font-size:14.5px}
.btp[data-ctx="deck"] .s5 .auto{padding:14px 16px;margin-bottom:14px}
.btp[data-ctx="deck"] .s5 .auto ul,.btp[data-ctx="deck"] .s5 .auto .none{font-size:14px}
.btp[data-ctx="deck"] .s5-actions{margin-top:6px}
.btp[data-ctx="deck"] .s5 .pils{gap:8px}
.btp[data-ctx="deck"] .s5 .pil input{padding:8px 12px;font-size:14.5px}
.btp[data-ctx="deck"] .tb{min-height:34px;font-size:11px}

/* ═══ polls (slides and page) ═════════════════════════════════════════ */
.btp-poll{margin:6px 0 26px}
.btp-poll .bl{font:700 10.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc)}
.btp-poll .q{font-family:var(--display);font-weight:400;font-size:21px;line-height:1.25;color:var(--s-ink);margin:4px 0 10px}
.btp-poll .po{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.btp-poll .po button{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--s-line);background:var(--s-bg);border-radius:10px;
  padding:10px 12px;font-size:14px;line-height:1.3;font-weight:600;color:var(--s-ink);cursor:pointer;min-height:48px}
.btp-poll .po button .L{width:28px;height:28px;flex:none;border-radius:7px;display:grid;place-items:center;background:var(--s-card2);font:700 13px var(--mono);color:var(--s-acc)}
.btp-poll .po button:hover,.btp-poll .po button:focus-visible{border-color:var(--s-acc)}
.btp-poll .po button[aria-pressed="true"]{border-color:var(--s-fill);background:var(--s-card)}
.btp-poll .po button[aria-pressed="true"] .L{background:var(--s-fill);color:var(--s-on-fill)}
.btp-poll .ctx{font-size:13px;line-height:1.5;color:var(--s-mute);margin-top:8px}

/* ═══ the session page ════════════════════════════════════════════════ */
.btp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.btp-actions .btn.ghost,.btp-reset .btn.ghost{background:transparent;color:var(--jade);border:1px solid var(--jade-line)}
.btp-actions .btn.ghost:hover,.btp-reset .btn.ghost:hover{background:var(--jade-soft)}
.btp-actions .btn .ic{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btp-actions .sz{opacity:.75;font-size:10px}
.btp-ways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0 30px}
.btp-way{border:1px solid var(--hair);border-radius:16px;background:var(--surface);padding:18px 20px;box-shadow:var(--shadow-card)}
.btp-way .k{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--jade)}
.btp-way h3{font-family:var(--display);font-weight:400;font-size:21px;margin:8px 0 6px;color:var(--ink)}
.btp-way p{font-size:15px;line-height:1.55;margin:0;color:var(--ink-soft)}
.btp-agenda{list-style:none;padding:0!important;margin:10px 0 28px!important}
.btp-agenda li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;padding:12px 0!important;margin:0!important;border-bottom:1px solid var(--hair)}
.btp-agenda li::marker{content:''}
.btp-agenda .t{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--amber);padding-top:4px}
.btp-agenda b{display:block;font-family:var(--display);font-weight:400;font-size:19px;color:var(--ink)}
.btp-agenda span{display:block;font-size:15px;line-height:1.5;color:var(--ink-soft)}
.btp-play{max-width:1040px;margin:10px auto 0;padding:0 0 10px}
.btp-st{border:1px solid var(--hair);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-card);padding:22px clamp(16px,3vw,28px) 24px;margin:0 0 22px;scroll-margin-top:20px}
.btp-st .sh{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:6px}
.btp-st .sk{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--jade)}
.btp-st .st{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.btp-st h3{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.8vw,28px);line-height:1.15;margin:0 0 6px;color:var(--ink);width:100%}
.btp-st h3 em{font-style:italic;color:var(--jade)}
.btp-st .sd{font-size:15px;line-height:1.55;color:var(--ink-soft);margin:0 0 16px;max-width:70ch}
.btp-reset{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:1040px;margin:4px auto 0;font-size:14px;color:var(--ink-mute)}
.btp-reset a{color:var(--jade);text-decoration:underline;text-underline-offset:3px}

/* page context: phones and tablets */
@media (max-width:980px){
  .btp[data-ctx="page"] .s2,.btp[data-ctx="page"] .s3,.btp[data-ctx="page"] .s5{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s1-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btp[data-ctx="page"] .s4-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .btp[data-ctx="page"] .s1-grid,.btp[data-ctx="page"] .s4-grid{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s2-head,.btp[data-ctx="page"] .s2-row{grid-template-columns:minmax(0,1fr);gap:6px}
  .btp[data-ctx="page"] .s2-head{display:none}
  .btp[data-ctx="page"] .s2-row .seg::before{content:attr(data-cap);font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;
    color:var(--s-mute);width:92px;display:inline-flex;align-items:center}
  .btp[data-ctx="page"] .seg button{min-width:38px;height:38px}
  .btp[data-ctx="page"] .s3-lens{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s3-own{flex-wrap:wrap}
  .btp[data-ctx="page"] .s3-own input{flex:1 1 100%}
  .btp[data-ctx="page"] .s3-item{grid-template-columns:22px minmax(0,1fr) 30px;grid-template-areas:"d l x" "v v v" "t t t"}
  .btp[data-ctx="page"] .s3-item .s3-dot{grid-area:d} .btp[data-ctx="page"] .s3-item .lb{grid-area:l}
  .btp[data-ctx="page"] .s3-item .x{grid-area:x} .btp[data-ctx="page"] .s3-item .sv{grid-area:v} .btp[data-ctx="page"] .s3-item .stl{grid-area:t}
  .btp[data-ctx="page"] .s3-item .seg::before{content:attr(data-cap);font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;
    color:var(--s-mute);width:78px;display:inline-flex;align-items:center}
  .btp[data-ctx="page"] .s3-item .seg button{min-width:44px;height:36px}
  .btp[data-ctx="page"] .s3-buckets{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s5 .yrs{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s5 .pil{grid-template-columns:minmax(0,1fr)}
  .btp[data-ctx="page"] .s5 .pl{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .btp[data-ctx="page"] .s5 .pl .lb{grid-column:1 / -1}
  .btp-poll .po{grid-template-columns:minmax(0,1fr)}
  .btp-ways{grid-template-columns:minmax(0,1fr)}
  .btp-agenda li{grid-template-columns:minmax(0,1fr);gap:2px}
}

/* ═══ the one-page print of "my strategy house" ═══════════════════════ */
.btp-sheet{display:none}
@page btpcanvas{size:A4 landscape;margin:11mm}
/* measured off screen before printing, at the page's width (fitSheet in the script) */
.btp-sheet.btp-measure{display:block!important;position:absolute;left:-10000px;top:0;visibility:hidden}
@media print{
  html.btp-printing body>*:not(.btp-sheet){display:none!important}
  html.btp-printing .btp-sheet{display:block!important;page:btpcanvas;color:#17211c;font-family:var(--sans)}
  html.btp-printing,html.btp-printing body{background:#fff!important;height:auto!important;overflow:visible!important}
}
.btp-sheet .sh-top{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #1f7a57;padding-bottom:6px}
.btp-sheet .sh-k{font:700 8.5pt var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#1f7a57}
.btp-sheet h1{font:600 20pt/1.1 var(--display);margin:3px 0 0;color:#17211c}
.btp-sheet h1 em{font-style:italic;color:#1f7a57}
.btp-sheet .sh-org{font:700 8.5pt var(--mono);letter-spacing:.06em;color:#5f6a67;text-transform:uppercase;text-align:right}
.btp-sheet .roof{position:relative;text-align:center;padding:9mm 15% 3mm;margin-top:5px;color:#f3f0e4}
.btp-sheet .roof svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.btp-sheet .roof polygon{fill:#17211c}
.btp-sheet .roof>div{position:relative}
.btp-sheet .roof .sh-k{color:#7ed4b3}
.btp-sheet .roof p{font:italic 12.5pt/1.32 var(--display);margin:2px 0 0}
.btp-sheet .beam{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:5px;margin-top:5px}
.btp-sheet .cols{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:5px;margin-top:5px}
.btp-sheet .row4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:5px}
.btp-sheet .b{border:1px solid #d6e3dc;border-radius:6px;padding:5px 9px;break-inside:avoid}
.btp-sheet .b ul{margin:3px 0 0;padding-left:13px;font-size:9pt;line-height:1.35}
.btp-sheet .b p{font-size:9pt;line-height:1.35;margin:3px 0 0}
.btp-sheet .b .ob{font-weight:700;color:#17211c}
.btp-sheet .b .yr{font:700 7.5pt var(--mono);color:#875b1b;margin-left:4px}
.btp-sheet .b .em{color:#8b9690}
.btp-sheet .b.col{border-top:3px solid #1f7a57}
.btp-sheet .b.base{background:#eef3f0;border-color:#eef3f0;border-bottom:3px solid #a8742e;margin-top:5px}
.btp-sheet .ft{display:flex;justify-content:space-between;margin-top:7px;font:700 7.5pt var(--mono);letter-spacing:.08em;color:#5f6a67;text-transform:uppercase}

/* ═══ v2 · slide components of the strategy-house section ═════════════ */
/* quote cards (P.14): the words that come back in the vision are underlined */
.bq{padding:13px 18px}
.bq .q{font-family:var(--display);font-style:italic;font-size:18px;line-height:1.38;color:var(--s-ink);margin:0}
.bq u{text-decoration:underline;text-decoration-color:var(--s-gold);text-decoration-thickness:2px;text-underline-offset:4px}
.bq .who{display:block;margin-top:8px;font:700 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-mute)}
/* the house: roof (an SVG pentagon behind the text), beam, pillars, timeline, foundation */
.bh{display:flex;flex-direction:column;gap:6px;min-width:0}
.bh.tags{padding-right:112px}
.bh-roof,.bh-cols,.bh-base{position:relative}
.bh-roof{text-align:center;padding:36px 21% 12px;color:var(--s-band-t)}
.bh-rf{position:absolute;inset:0;width:100%;height:100%;display:block}
.bh-rf polygon{fill:var(--s-band)}
.bh-in{position:relative}
.bh-roof .lbl{color:var(--s-band-a)}
.bh-big{font-family:var(--display);font-style:italic;font-size:17px;line-height:1.3;color:var(--s-band-t);margin:4px 0 0}
.bh-tag{position:absolute;right:-112px;top:50%;transform:translateY(-50%);width:100px;font:700 10px/1.3 var(--mono);letter-spacing:.05em;
  text-transform:uppercase;color:var(--s-gold-t);border-left:2px solid var(--s-gold);padding:2px 0 2px 8px}
.bh-beam{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
.bh-beam>div{background:var(--s-card2);border-radius:8px;padding:8px 12px;min-width:0}
.bh-beam p,.bh-col p{font-size:13.5px;line-height:1.35;color:var(--s-soft);margin:3px 0 0}
/* A plain label (--s-acc) on --s-card2 measures 4.32:1 in light mode (the browser gate, b30).
   --s-deep is the dark jade on a light slide and the light jade in dark mode. */
.slide:not(.dark) .bh-beam .lbl:not(.g):not(.m):not(.c),
.slide:not(.dark) .card.alt>.lbl:not(.g):not(.m):not(.c){color:var(--s-deep)}
.bh-cols{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:6px}
.bh-col{background:var(--s-card);border-radius:8px;padding:9px 12px 10px;border-top:4px solid var(--s-fill);min-width:0;display:flex;flex-direction:column}
.bh-ins{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.bh-ins span{display:block;background:var(--s-bg);border:1px solid var(--s-line);border-radius:6px;padding:4px 8px;font-size:12.5px;line-height:1.3;font-weight:600;color:var(--s-ink)}
.bh-ins b{font:700 10.5px var(--mono);color:var(--s-gold-t);margin-left:4px;white-space:nowrap}
.bh-time{display:flex;align-items:center;gap:8px;padding:2px 4px}
.bh-time i{flex:1;height:1px;background:var(--s-line)}
.bh-time .lbl{font-size:10.5px;white-space:nowrap}
.bh-base{background:var(--s-card2);border-radius:8px;padding:8px 12px;border-bottom:4px solid var(--s-gold)}
.bh-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.bh-chips span{font:700 10.5px/1.2 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--s-ink);background:var(--s-bg);
  border:1px solid var(--s-line);border-radius:999px;padding:4px 9px}
.bh-ask{font-size:13px;line-height:1.35;color:var(--s-soft);margin:6px 0 0}
.bh-ask b{color:var(--s-ink)}
.bh-full .bh-roof{padding:30px 15% 10px}
.bh-full .bh-big{font-size:18px}
.bh-ws .bh-beam>div,.bh-ws .bh-col,.bh-ws .bh-base{background:transparent;border:1px solid var(--s-line)}
.bh-ws .bh-col{border-top:4px solid var(--s-fill)}
.bh-ws .bh-base{border-bottom:4px solid var(--s-gold)}
/* the six parts beside the house (P.10) */
.steps8{display:flex;flex-direction:column}
.steps8>div{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--s-line)}
.steps8 b{font-family:var(--display);font-weight:600;font-size:17px;line-height:1.2;color:var(--s-ink)}
.steps8 .pg{font:700 11px var(--mono);letter-spacing:.06em;color:var(--s-gold-t)}
.steps8 .n{width:26px;height:26px;font-size:12px}
/* principle rows (P.17) */
.pr{display:grid;grid-template-columns:34px 220px minmax(0,1fr) 320px;gap:14px;align-items:center;padding:9px 0;border-bottom:1px solid var(--s-line)}
.pr:last-child{border-bottom:0}
.pr .nm{font-family:var(--display);font-weight:600;font-size:19px;line-height:1.2;color:var(--s-ink)}
.pr .rl{font-size:15.5px;line-height:1.35;color:var(--s-ink);font-weight:600}
.pr .st{font-family:var(--display);font-style:italic;font-size:15px;line-height:1.35;color:var(--s-soft)}
.pr.pr-h{padding:0 0 6px}
.pr.pr-h .lbl{font-size:11px}
/* the vision, underlined into pillars (P.26) */
.vcl{padding:13px 22px}
.vcl .q{font-size:20px;line-height:1.55;margin-top:4px}
.vcl .cl{border-bottom:2px solid var(--s-band-g);padding-bottom:1px}
.vcl .cl i{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--s-band-g);color:var(--s-band);
  font:700 11px/1 var(--mono);font-style:normal;margin-right:6px;vertical-align:2px}
/* pillar cards with their objectives and measures (P.27) */
.pc{display:flex;flex-direction:column;padding:15px 18px 16px}
.pc .ph{display:flex;gap:12px;align-items:center;padding-bottom:9px;border-bottom:1px solid var(--s-line)}
.pc .ph b{display:block;font-family:var(--display);font-weight:600;font-size:19px;line-height:1.2;color:var(--s-ink)}
.pc .ph span:not(.n){display:block;font-size:12.5px;line-height:1.3;color:var(--s-mute);margin-top:2px}
.pc .ph .n{width:34px;height:34px;font-size:12px}
.pc .ob{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:9px 0;border-bottom:1px solid var(--s-line);
  font-size:14.5px;line-height:1.35;color:var(--s-ink);font-weight:600}
.pc .ob .k{font:700 11.5px var(--mono);color:var(--s-acc);padding-top:2px}
.pc .ob b{display:block;font:700 12.5px var(--mono);letter-spacing:.02em;color:var(--s-gold-t);margin-top:4px}
.pc .ms{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:auto;padding-top:10px}
.pc .ms>div{font-size:12.5px;line-height:1.35;color:var(--s-soft)}
.pc .ms .lbl{display:block;font-size:10px;margin-bottom:3px}
.kpis4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;flex:1;min-width:0}
.kpis4 .kpi{border-top:0;padding:3px 0}
/* the initiative card, worked (P.32–33; the blank card on P.31 is .chg.tpl) */
.chg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.chf{background:var(--s-card);border-radius:10px;padding:14px 16px 15px;min-width:0}
.chf .lbl{font-size:10.5px}
.chf p{font-size:14.5px;line-height:1.42;color:var(--s-soft);margin:7px 0 0}
.chf p b{color:var(--s-ink);font-weight:700}
.chf.dk{background:var(--s-band)}
.chf.dk .lbl{color:var(--s-band-a)}
.chf.dk p{color:var(--s-band-t);font-family:var(--display);font-style:italic;font-size:16px;line-height:1.42}
/* the timeline and the project grid (P.35, P.37): one grid row per line, quarters as columns */
.tl{position:relative;--q:12;min-width:0}
.tl-r{display:grid;grid-template-columns:var(--lw,230px) repeat(var(--q),minmax(0,1fr)) var(--gw,0px);align-items:center;min-height:23px;position:relative}
.tl-r>*{grid-row:1}
.tl-r>.l{grid-column:1;font-size:12.5px;font-weight:600;line-height:1.2;color:var(--s-ink);padding-right:10px}
.tl-r>.l small{display:block;font-weight:500;font-size:10.5px;color:var(--s-mute);margin-top:1px}
.tl-r>.g{grid-column:-2 / -1;font-size:11.5px;line-height:1.25;color:var(--s-soft);padding-left:12px}
.tl-yr>span{font:700 11px var(--mono);letter-spacing:.08em;color:var(--s-acc);padding-left:6px}
.tl-qs>span{font:700 9.5px var(--mono);letter-spacing:.04em;color:var(--s-mute);text-align:center}
.tl-qs>span.l,.tl-qs>span.g{text-align:left}
.tl-ln{font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc);padding:7px 0 2px;border-top:1px solid var(--s-line);margin-top:3px;position:relative}
.tl-b{display:block;height:13px;border-radius:7px;background:var(--s-fill);margin:0 2px}
.tl-b.p2{background:var(--s-deep)}
.tl-b.p3{background:var(--s-gold)}
.tl-b.f{background:transparent;border:2px solid var(--s-mute);height:12px}
.tl-ms{display:block;width:11px;height:11px;background:var(--s-gold-t);transform:rotate(45deg);justify-self:end;margin-right:1px;box-shadow:0 0 0 2px var(--s-bg)}
.tl-dot{display:block;height:0;border-top:2px dotted var(--s-mute);margin:0 4px}
.tl-star{font-style:normal;color:var(--s-gold-t)}
.tl-arr{font:700 10px var(--mono);letter-spacing:.04em;color:var(--s-mute);font-style:normal;padding-left:6px;white-space:nowrap}
.tl-sep{position:absolute;top:0;bottom:0;width:1px;background:var(--s-line);left:calc(var(--lw,230px) + (100% - var(--lw,230px) - var(--gw,0px)) * var(--k) / 3)}
.tl-key{display:inline-block;width:9px;height:9px;background:var(--s-gold-t);transform:rotate(45deg);margin:0 6px 0 2px}
.tl-gt .tl-r{min-height:33px}
.tl-gt .tl-b{height:15px}
/* the project card and the hours in the plan (P.38) */
.pcard{padding:16px 22px 14px}
.pcard h3{font-size:24px;margin:6px 0 8px}
.pcard dl{display:grid;grid-template-columns:118px minmax(0,1fr);margin:0}
.pcard dt{font:700 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-mute);padding:8px 0;border-top:1px solid var(--s-line)}
.pcard dt.g{color:var(--s-gold-t)}
.pcard dd{margin:0;padding:7px 0;border-top:1px solid var(--s-line);font-size:14.5px;line-height:1.38;color:var(--s-ink)}
.cap{display:flex;height:30px;border-radius:8px;overflow:hidden;gap:2px}
.cap i,.capl i{display:block}
.cap i{height:100%}
.cap .c1,.capl .c1{background:var(--s-line)}
.cap .c2,.capl .c2{background:var(--s-gold-t)}
.cap .c3,.capl .c3{background:var(--s-fill)}
.cap .c4,.capl .c4{background:var(--s-coral)}
.capl>div{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--s-line);font-size:14.5px;color:var(--s-ink)}
.capl i{width:14px;height:14px;border-radius:3px}
.capl b{font:700 12.5px var(--mono);color:var(--s-ink)}
.capl span small{display:block;font-size:12px;line-height:1.3;color:var(--s-mute);margin-top:2px}
/* the enabler matrix and the ask (P.41, P.43) */
.cmp.mx{font-size:13.5px}
.cmp.mx th{padding:7px 12px;font-size:11px}
.cmp.mx td{padding:8px 12px;line-height:1.36}
.cmp.mx td:first-child{width:auto;padding-top:10px;font-size:11px}
/* the station 6 worksheet: a roof you can write on, and the station 3 key: eight rows on one page */
.bh-ws .bh-rf polygon{fill:var(--s-bg);stroke:var(--s-ink);stroke-width:1.5;vector-effect:non-scaling-stroke}
.bh-ws .bh-roof .lbl{color:var(--s-acc)}
.cmp.tight td{padding:9px 14px;font-size:14.5px;line-height:1.35}
.cmp.tight td:first-child{padding-top:11px}

/* ═══ v3 · the components of the reordered talk (b31) ═════════════════════ */
/* b31 review: station 3 answered on its slide (the "why" under every card)
   brought its foot to 4 px of the Your-turn band */
.btp[data-ctx="deck"] .s1-card{padding:11px 13px}
.btp[data-ctx="deck"] .s1-foot{margin-top:8px}
/* b31 review, second pass: with four or more first moves the SAR's right column
   (plot, buckets, buttons) ran under the Your-turn band. On the slide the plot
   is smaller and each bucket line stays one line (the full names are in the
   list on the left), so six first moves end above the band. */
.btp[data-ctx="deck"] .s3-viz svg{max-width:250px}
.btp[data-ctx="deck"] .s3-buckets .bk li{padding:1px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btp[data-ctx="deck"] .s3-viz .tools{margin-top:8px}
/* and each picked row stays one line on the slide: an initiative added on the
   page (up to 60 characters) would wrap and push the list under the band */
.btp[data-ctx="deck"] .s3-item .lb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* three things we will learn (P.02) */
.learn3{margin-top:30px}
.learn3 .card{padding:26px 26px 22px;min-height:282px}
.learn3 .card h3{font-size:25px;margin-top:16px}
.learn3 .card p{font-size:17px;line-height:1.5;margin-top:10px}
.learn3 .card .ev{font-size:14.5px}
.learn3+.band{margin-top:22px}
/* the number (P.03): one figure, two bars, the cut, and its source */
.hook{display:grid;grid-template-columns:400px minmax(0,1fr);gap:44px;align-items:center}
.hook-big .hv{font-family:var(--display);font-weight:600;font-size:150px;line-height:.86;letter-spacing:-.04em;color:var(--s-acc)}
.hook-big .hv span{font:700 15px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--s-gold-t);margin-left:12px}
.hook-big p{font-size:16px;line-height:1.45;color:var(--s-soft);margin:16px 0 0}
.hook-bars .hb{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:6px 14px;align-items:center;margin-top:16px}
.hook-bars .hl{grid-column:1 / -1;font-size:15.5px;font-weight:600;line-height:1.3;color:var(--s-ink)}
.hook-bars .ht{display:block;height:24px;border-radius:6px;background:var(--s-card2);overflow:hidden}
.hook-bars .ht i{display:block;height:100%;border-radius:6px;background:var(--s-fill)}
.hook-bars .ht i.lo{background:var(--s-mute)}
.hook-bars .hb b{font:700 24px var(--mono);color:var(--s-ink);text-align:right}
.hook-bars .hn{font-size:15px;line-height:1.45;color:var(--s-mute);margin:16px 0 0}
.hook-cut b{display:block;font-family:var(--display);font-weight:600;font-size:34px;line-height:1.1;color:var(--s-band-g);white-space:nowrap}
.hook-cut span{display:block;font:700 11px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--s-band-m);max-width:230px;margin-top:4px}
.slide .src{font-size:12.5px;line-height:1.45;color:var(--s-mute);margin:12px 0 0;max-width:1080px}
/* the inputs (P.20): four compact cards beside the five questions */
.in4 .card{padding:15px 18px 13px}
.in4 .card h3{font-size:19px;margin-top:8px}
.in4 .card p{font-size:14.5px;line-height:1.42;margin-top:5px}
.in4 .ev{margin-top:9px;padding-top:7px;font-size:13px}
.q5 .nrow{padding:9px 0}
.q5 .nrow b{font-size:16.5px}
/* four assessments (P.21) */
.mat4 .card{padding:15px 20px 14px}
.mat4 .mh{display:flex;align-items:center;gap:12px}
.mat4 .mh b{flex:1;min-width:0;font-family:var(--display);font-weight:600;font-size:18px;line-height:1.2;color:var(--s-ink)}
.mat4 .mh .tool{flex:none;font:700 10.5px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-on-fill);
  background:var(--s-fill);border-radius:999px;padding:6px 10px 5px}
.mat4 .card p{font-size:14.5px;line-height:1.42;margin-top:8px}
.mat4 .ev{margin-top:10px;padding-top:8px}
/* inputs to themes to the house (P.25) */
.flow4{display:flex;flex-direction:column;margin-top:4px}
.flow4>div{display:grid;grid-template-columns:minmax(0,1fr) 30px 300px;gap:10px;align-items:center;padding:6px 0;border-top:1px solid var(--s-band2)}
.flow4>div:first-child{border-top:0}
.flow4 .fi{font-size:13.5px;line-height:1.35;color:var(--s-band-m)}
.flow4 .fa{font:700 16px var(--mono);color:var(--s-band-g);text-align:center}
.flow4 b{font-family:var(--display);font-weight:600;font-size:16px;line-height:1.2;color:var(--s-band-t)}
.flow4 b.g{color:var(--s-band-g)}
/* the blank initiative card (P.31): the same eight boxes, drawn as a form */
.chg.tpl .chf{background:transparent;border:1.5px dashed var(--s-line)}
.chg.tpl .chf.dk{background:var(--s-band);border:1.5px solid var(--s-band)}
.chg.tpl .chf{min-height:112px}
.chg.tpl .chf p{font-size:14px}
/* how a card gets made (P.31), on the band */
.mk3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:8px}
.mk3>div{display:flex;gap:12px;align-items:flex-start}
.mk3 b{display:block;font-family:var(--display);font-weight:600;font-size:16.5px;line-height:1.25;color:var(--s-band-t)}
.mk3 span:not(.n){display:block;font-size:13.5px;line-height:1.4;color:var(--s-band-m);margin-top:3px}
/* the monitoring rule (P.34): fixed light chips, so they read on the band in either theme */
.rag{display:inline-block;font:700 10.5px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;padding:5px 9px 4px;border-radius:999px;margin-right:3px;vertical-align:1px}
.rag.g{background:#7ed4b3;color:#0a3a32}
.rag.a{background:#f0c18f;color:#3d2a0c}
.rag.r{background:#f2a08a;color:#4a160b}
/* one status line, worked (P.34) */
.sigln{padding:13px 20px 14px}
.sigln p{font-size:15.5px;line-height:1.45;color:var(--s-ink);margin-top:7px}
/* who helps (P.39) and the enabler assessment (P.42): the denser table, as on P.41 */
.cmp.helpers{font-size:15px}
.cmp.helpers th{padding:8px 13px;font-size:11px}
.cmp.helpers td{padding:12px 13px;line-height:1.38}
.cmp.helpers td:first-child{width:auto;padding-top:14px;font-size:11px}
.cmp.ena{font-size:14px}
.cmp.ena th{padding:7px 12px;font-size:11px}
.cmp.ena td{padding:9px 12px;line-height:1.36}
.cmp.ena td:first-child{width:auto;padding-top:11px;font-size:11px}
.raci{display:flex;flex-direction:column;margin-top:8px}
.raci>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding:7px 0;border-top:1px solid var(--s-band2)}
.raci>div:first-child{border-top:0}
.raci b{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;background:var(--s-band-g);color:var(--s-band);font:700 13px/1 var(--mono)}
.raci span{font-size:14px;line-height:1.4;color:var(--s-band-t);padding-top:3px}
/* today → needed, on the capability scale (P.42) */
.lv{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}
.lv i{display:block;width:15px;height:12px;border-radius:3px;background:var(--s-card2);border:1px solid var(--s-line)}
.lv i.on{background:var(--s-fill);border-color:var(--s-fill)}
.lv i.gap{background:transparent;border:1.5px dashed var(--s-gold-t)}
.lv b{font:700 12px var(--mono);color:var(--s-ink);margin-left:8px}
/* the five questions beside the path (P.46) */
.cq .nrow{padding:9px 0}
.cq .nrow b{font-size:17px}
/* the path to the committee (P.46) */
.path5{display:flex;flex-direction:column}
.path5>div{display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:14px;row-gap:2px;padding:8px 0;border-bottom:1px solid var(--s-line)}
.path5>div:last-child{border-bottom:0}
.path5 .t{grid-row:1 / span 2;font:700 11px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--s-gold-t);padding-top:3px}
.path5 b{font-family:var(--display);font-weight:600;font-size:17px;line-height:1.2;color:var(--s-ink)}
.path5 span:not(.t){font-size:13.5px;line-height:1.38;color:var(--s-mute)}
/* the Signify Labs declaration on the cover (si111 writes the markup; si99 holds it byte for byte) */
.slide .lab-decl{margin-top:12px;max-width:350px;border-left:2px solid var(--s-acc);padding:1px 0 1px 10px}
.slide .lab-decl-eyebrow{font:700 10.5px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--s-acc);margin:0}
.slide .lab-decl-line{font-size:13px;line-height:1.45;color:var(--s-soft);margin:3px 0 0}

/* ═══ v3 · the session's landing page in Signify Labs (/labs/ia-strategy/) ═ */
/* the speaker, under the deck line */
.ias-who{display:flex;gap:14px;align-items:center;margin:26px 0 0}
.ias-who img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;border:2px solid var(--jade-line)}
.ias-who b{display:block;font-family:var(--display);font-weight:400;font-size:20px;line-height:1.2;color:var(--ink)}
.ias-who span{display:block;font:700 10.5px/1.55 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute)}
.ias-hero .byline{margin-top:20px}
.ias-hero .lab-decl{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:20px 0 0}
.ias-hero .lab-decl-eyebrow{font:700 10px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--jade);margin:0}
.ias-hero .lab-decl-line{font-size:14px;line-height:1.5;color:var(--ink-mute);margin:0}
/* the wide sections: their own heading, aligned with what it introduces, and a
   lead outside .prose, so it never takes the first paragraph's drop cap */
.ias-hero .art-eyebrow{display:block;line-height:1.8}
.ias-wide{max-width:1040px;margin:0 auto}
.ias-h2{font-family:var(--display);font-weight:300;font-size:clamp(24px,3vw,32px);line-height:1.12;letter-spacing:-.015em;color:var(--ink);margin:50px 0 18px}
.ias-h2 em{font-style:italic;color:var(--jade)}
.ias-lead{font-size:17px;line-height:1.65;color:var(--ink-soft);max-width:70ch;margin:-6px 0 18px}
/* three things we will learn */
.ias-learn{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ias-learn li{display:flex;flex-direction:column;border:1px solid var(--hair);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-card);padding:18px 20px 16px}
.ias-learn .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--jade);color:var(--paper);font:700 12px/1 var(--mono)}
.ias-learn h3{font-family:var(--display);font-weight:400;font-size:21px;line-height:1.2;margin:12px 0 6px;color:var(--ink)}
.ias-learn p{font-size:15px;line-height:1.55;margin:0 0 14px;color:var(--ink-soft)}
.ias-learn .w{margin-top:auto;padding-top:11px;border-top:1px solid var(--hair);font:700 10.5px/1.4 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--amber)}
.ias-also{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;justify-content:space-between;margin-top:14px;padding:16px 22px;
  border-radius:16px;background:var(--block);color:var(--block-text)}
.ias-also p{margin:0;font-family:var(--display);font-style:italic;font-size:18px;line-height:1.4;max-width:60ch}
.ias-also .w{font:700 10.5px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--block-faint)}
/* the number */
.ias-num{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:20px 34px;align-items:center;border:1px solid var(--hair);
  border-radius:18px;background:var(--surface);box-shadow:var(--shadow-card);padding:24px clamp(18px,3vw,30px)}
.ias-num .v{font-family:var(--display);font-weight:300;font-size:clamp(66px,9vw,108px);line-height:.88;letter-spacing:-.035em;color:var(--jade)}
.ias-num .v small{font:700 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-left:10px}
.ias-num .d{font-size:15px;line-height:1.55;color:var(--ink-soft);margin:12px 0 0}
.ias-num .k{font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.ias-bar{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:6px 12px;align-items:center;margin-top:14px}
.ias-bar .l{grid-column:1 / -1;font-size:14.5px;font-weight:600;line-height:1.35;color:var(--ink)}
.ias-bar .t{display:block;height:16px;border-radius:5px;background:var(--surface-3);overflow:hidden}
.ias-bar .t i{display:block;height:100%;border-radius:5px;background:var(--jade)}
.ias-bar .t i.lo{background:var(--ink-mute)}
.ias-bar b{font:700 16px var(--mono);color:var(--ink);text-align:right}
.ias-num .cut{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;border-top:1px solid var(--hair);padding-top:14px;
  font-size:15px;line-height:1.5;color:var(--ink-soft)}
.ias-num .cut b{font-family:var(--display);font-weight:400;font-size:24px;color:var(--amber);white-space:nowrap}
.ias-num .cut span{flex:1;min-width:220px}
.ias-src{font-size:13px;line-height:1.5;color:var(--ink-mute);margin:10px 0 0}
/* the finished house, drawn with the slide's own components (.btp-scope maps the tokens) */
.ias-house{border:1px solid var(--hair);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-card);padding:clamp(14px,2.4vw,24px)}
.ias-house .lbl{font:700 10.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc)}
.ias-house .lbl.g{color:var(--s-gold-t)}
.ias-house .lbl.m{color:var(--s-mute)}
.ias-house .bh-beam .lbl{color:var(--s-deep)}
.ias-house .bh-roof .lbl{color:var(--s-band-a)}
.ias-house .bh-base .lbl.g{color:var(--s-gold-t)}
.ias-cap{font-size:14px;line-height:1.55;color:var(--ink-mute);margin:10px 0 0}
/* the agenda's station line, and where each station is played */
.btp-agenda strong.on{color:var(--jade);font-weight:700}
.btp-st .sw{margin-left:auto;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
@media (max-width:900px){
  .ias-learn{grid-template-columns:minmax(0,1fr)}
  .ias-num{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:720px){
  .ias-house .bh-cols,.ias-house .bh-beam{grid-template-columns:minmax(0,1fr)}
  .ias-house .bh-full .bh-roof{padding:28px 9% 10px}
  .ias-house .bh-full .bh-big{font-size:15px}
  .ias-house .bh-time{flex-wrap:wrap;gap:4px 12px}
  .ias-house .bh-time i{display:none}
  .btp-st .sw{margin-left:0;width:100%}
}

/* ═══ v4 · the house that grows (b32) ══════════════════════════════════════
   One symbol, #btp-house in the deck's defs, drawn small in the eyebrow of every
   slide from part 01 on and large on each part's divider. Each part of the house
   reads its fill from a custom property, so data-yah (the slide's part) says which
   parts are built (--h-done) and which one is being built now (--h-on). */
.yah{flex:none;width:28px;height:23px;margin:-4px 0 -3px;overflow:visible}
.eyebrow.yah-e::before{display:none}
.yah,.hh{--h-on:var(--s-gold);--h-done:var(--s-acc);--h-ln:var(--s-acc);--h-win:var(--s-bg);--h-sw:1.4px;
  --h-roof:none;--h-pil:none;--h-ini:none;--h-band:none;--h-base:none}
[data-yah="effective"]{--h-ln:var(--s-gold)}
[data-yah="roof"]{--h-roof:var(--h-on)}
[data-yah="pillars"]{--h-roof:var(--h-done);--h-pil:var(--h-on)}
[data-yah="initiatives"]{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-on)}
[data-yah="projects"]{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-win);--h-band:var(--h-on)}
[data-yah="enablers"]{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-win);--h-band:var(--h-done);--h-base:var(--h-on)}
[data-yah="land"]{--h-roof:var(--h-on);--h-pil:var(--h-on);--h-ini:var(--h-win);--h-band:var(--h-on);--h-base:var(--h-on)}
[data-yah="home"]{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-win);--h-band:var(--h-done);--h-base:var(--h-done)}
/* the small house (symbol btp-house-s) has no outline: a faint silhouette under
   every part, so a part not yet built still shows where it will go (b32 review) */
.yah{--h-off:var(--s-line)}
.yah[data-yah="effective"]{--h-off:var(--s-gold)}
/* on a divider the house takes the place of the big part number */
.hh{position:absolute;right:64px;top:100px;width:264px;height:220px;z-index:0;overflow:visible;--h-sw:2.2px}
.divider.has-hh .bignum{display:none}
.hh-cap{position:absolute;right:64px;top:330px;width:264px;text-align:center;font:700 11px/1.3 var(--mono);letter-spacing:.1em;
  text-transform:uppercase;color:var(--s-mute);z-index:0}

/* ═══ v4 · two layers on a dense slide (b32) ═══════════════════════════════
   The room sees .room (a .live block: screen only); paper and the PDF keep the
   full content as the desk (a .sheet block: print only). Both rules are the deck
   engine's own (deck.v1.css), so the stations' worksheets and these layers obey
   one switch, and without JavaScript the desk is what reads. */
.slide .room{margin-top:26px}
.room .rm-lbl{font:700 13px/1.25 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc);margin:0 0 12px}
.room .rm-lbl.g{color:var(--s-gold-t)}
.room .rm-tiles{display:grid;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));gap:16px}
.room .rm-t{background:var(--s-card);border-radius:14px;padding:20px 22px 22px;min-width:0}
.room .rm-t.ln{background:transparent;border:1.5px solid var(--s-line)}
.room .rm-t.dk{background:var(--s-band)}
.room .rm-t.gd{border-top:4px solid var(--s-gold)}
.room .rm-t.fl{border-top:4px solid var(--s-fill)}
.room .rm-t .k{display:block;font:700 12.5px/1.25 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-acc)}
.room .rm-t .k.g{color:var(--s-gold-t)}
.room .rm-t .k.c{color:var(--s-coral-t)}
.room .rm-t b{display:block;font-family:var(--display);font-weight:600;font-size:28px;line-height:1.17;color:var(--s-ink);margin-top:10px;text-wrap:balance}
.room .rm-t b em{font-style:italic;color:var(--s-acc)}
.room .rm-t span.s{display:block;font-size:19px;line-height:1.4;color:var(--s-soft);margin-top:9px;text-wrap:pretty}
.room .rm-t.dk .k{color:var(--s-band-a)}
.room .rm-t.dk b,.room .rm-t.dk span.s{color:var(--s-band-t)}
.room .rm-tiles > .rm-t{min-height:150px}
.room .rm-tiles > .rm-t.sm{min-height:118px}
.room .rm-t.sm b{font-size:23px}
.room .rm-t.sm span.s{font-size:17px}
/* P.20: the five interview questions, on screen (b32 review) */
.room .rm-q5{margin-top:18px;border-radius:14px;background:var(--s-card);padding:16px 24px 18px}
.room .rm-q5 .rm-lbl{margin:0 0 10px}
.room .rm-q5 ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 32px}
.room .rm-q5 li{display:flex;gap:12px;align-items:baseline;font-size:20px;line-height:1.3;color:var(--s-ink)}
.room .rm-q5 li .n{width:26px;height:26px;font-size:12.5px;align-self:flex-start;margin-top:-1px}
.room .rm-q5 li{align-items:flex-start}
/* P.33: the your-turn band's task, readable from the back of the room */
.slide .turn.big .where{font:600 17px/1.3 var(--sans);letter-spacing:0;text-transform:none}
.slide .turn.big .where b{font-weight:700}
/* P.33 on paper: the your-turn the screen gives in its band */
.slide .sheet-turn{margin:14px 0 0;font-size:15px;line-height:1.45;color:var(--s-soft)}
.slide .sheet-turn b{color:var(--s-acc);font-weight:700}
/* P.42 on paper: each enabler row carries its poll letter */
.slide .ena td b.pl{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--s-acc);
  font:700 10.5px/1 var(--mono);color:var(--s-acc);margin-right:8px;vertical-align:1px}
/* P.42: Maya's weakest, at a size a webinar window keeps legible */
.slide.poll .poll-note .band p.m{font-size:17px;line-height:1.45}
.room .rm-big{font-family:var(--display);font-weight:500;font-size:35px;line-height:1.28;color:var(--s-ink);text-wrap:balance;margin:0}
.room .rm-big em{font-style:italic;color:var(--s-acc)}
.room .rm-big u{text-decoration-color:var(--s-gold);text-decoration-thickness:3px;text-underline-offset:5px}
.room .rm-band{display:flex;gap:22px;align-items:center;background:var(--s-band);border-radius:12px;padding:18px 26px;margin-top:20px}
.room .rm-band .k{flex:none;font:700 12.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--s-band-g)}
.room .rm-band p{font-family:var(--display);font-style:italic;font-size:24px;line-height:1.35;margin:0;color:var(--s-band-t)}
.room .rm-qs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.room .rm-qc{border:1.5px solid var(--s-line);border-radius:14px;padding:24px 26px 22px;display:flex;flex-direction:column;min-height:230px}
.room .rm-qc p{font-family:var(--display);font-style:italic;font-size:28px;line-height:1.3;color:var(--s-ink);margin:0}
.room .rm-qc p u{text-decoration-color:var(--s-gold);text-decoration-thickness:2.5px;text-underline-offset:4px}
.room .rm-qc span{margin-top:auto;padding-top:14px;font:700 12.5px/1.3 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-acc)}
.room .rm-flow{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;margin-top:26px;font:600 21px/1.3 var(--sans);color:var(--s-soft)}
.room .rm-flow i{font-style:normal;font-size:28px;color:var(--s-gold-t)}
.room .rm-flow b{font-family:var(--display);font-weight:600;font-size:26px;color:var(--s-acc)}
.room .rm-rows{border-top:1px solid var(--s-line)}
.room .rm-r{display:grid;grid-template-columns:44px minmax(0,370px) minmax(0,1fr);gap:18px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--s-line)}
.room .rm-r .n{align-self:center}
/* a row's number keeps the deck's own colors, not the row's text color */
.room .rm-r > .n{font:700 13px/1 var(--mono);color:var(--s-on-fill)}
.room .rm-r > .n.g{color:var(--s-bg)}
.room .rm-r > .n.o{color:var(--s-acc)}
.room .rm-r b{font-family:var(--display);font-weight:600;font-size:26px;line-height:1.2;color:var(--s-ink)}
.room .rm-r span{font-size:21px;line-height:1.4;color:var(--s-soft)}
.room .rm-r span q{font-family:var(--display);font-style:italic;color:var(--s-ink)}
.room .rm-chips{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:22px}
.room .rm-chips .chip{font-size:14.5px;padding:9px 17px}
.room .rm-chips .lbl{margin-right:4px}
.room .rm-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.room .rm-num{font-family:var(--display);font-weight:600;font-size:50px;line-height:1;color:var(--s-acc);letter-spacing:-.01em}
.room .rm-num.g{color:var(--s-gold-t)}
.room .rm-cap{display:flex;height:30px;border-radius:8px;overflow:hidden;margin-top:12px}
.room .rm-cap i{display:block;height:100%}
.room .rm-cap .c1{background:var(--s-fill)} .room .rm-cap .c2{background:var(--s-gold)}
.room .rm-cap .c3{background:var(--s-mute)} .room .rm-cap .c4{background:var(--s-line)}
.room .rm-capl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;font-size:16.5px;line-height:1.35;color:var(--s-soft)}
.room .rm-capl b{display:block;font:700 15px var(--mono);color:var(--s-ink)}
.room .rm-capl i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:0}
.room .rm-capl .c1{background:var(--s-fill)} .room .rm-capl .c2{background:var(--s-gold)}
.room .rm-capl .c3{background:var(--s-mute)} .room .rm-capl .c4{background:var(--s-line)}
.room .rm-t b.q{font-style:italic;font-weight:500}
.room .rm-t span.s b.ik{display:inline;font:700 11px/1.3 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--s-acc);margin:0 8px 0 0}
.room .rm-rows.tight .rm-r{grid-template-columns:36px 150px minmax(0,1fr);gap:14px;padding:12px 0}
.room .rm-rows.tight .rm-r b{font-size:23px}
.room .rm-rows.tight .rm-r span{font-size:19px}
.room .rm-note{font-size:14px;line-height:1.45;color:var(--s-mute);margin:8px 0 0}
.room .rm-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--s-line)}
.room .rm-list li{display:flex;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid var(--s-line);
  font-family:var(--display);font-weight:600;font-size:24px;line-height:1.25;color:var(--s-ink)}
.room .rm-list li .n{flex:none}
.room .mt16{margin-top:16px}
/* the card's eight boxes, said in a line each */
.room .rm-card8{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.room .rm-card8 .rm-t{padding:20px 22px 22px;min-height:150px}
.room .rm-card8 .rm-t b{font-size:26px}
/* a station's Your-turn band, on a teaching slide (P.33) */
.turn.live .where b{color:var(--s-band-g)}

/* ═══ v4 · guess, then reveal (b32) ════════════════════════════════════════
   The number waits behind its question until it is revealed: on the slide by the
   presenter (the button here, or Show example in the console), on the page by the
   visitor. Only once the script has armed it; print and no-script show it all. */
.btp-guess{position:relative}
.btp-guess .gq{display:none}
.btp-guess.armed:not(.shown) .gq{display:flex}
.btp-guess.armed:not(.shown) .ga{visibility:hidden}
@media print{.btp-guess .gq{display:none!important}.btp-guess .ga{display:block!important;visibility:visible!important}}
.slide .btp-guess .gq{position:absolute;inset:0;z-index:2;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;
  border:2px dashed var(--s-line);border-radius:16px;padding:28px 34px;background:var(--s-bg)}
.slide .btp-guess .gq .big{font-family:var(--display);font-weight:600;font-size:46px;line-height:1.12;color:var(--s-ink);letter-spacing:-.01em}
.slide .btp-guess .gq .big em{font-style:italic;color:var(--s-acc)}
.slide .btp-guess .gq p{font-size:20px;line-height:1.45;color:var(--s-soft);margin:0;max-width:820px}
.slide .btp-guess .gq .tb{min-height:44px;padding:0 20px;font-size:12.5px}
.btp-guess .gq .tb{display:inline-flex;align-items:center;gap:7px;border-radius:999px;border:1px solid var(--s-fill);background:var(--s-fill);
  color:var(--s-on-fill);font:700 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;min-height:38px;padding:0 16px;cursor:pointer}
.btp-guess .gq .tb:hover,.btp-guess .gq .tb:focus-visible{filter:brightness(1.08)}
.btp-guess .gsay{font:700 12px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--s-gold-t);margin:0}
.btp-guess .gsay:empty{display:none}
/* on the session page */
.ias-guess .gq{flex-wrap:wrap;gap:12px 16px;align-items:center;border:1px dashed var(--hair-2);border-radius:16px;padding:20px clamp(16px,3vw,26px);
  background:var(--surface)}
.ias-guess .gq .qq{flex:1 1 100%;font-family:var(--display);font-weight:400;font-size:clamp(20px,2.6vw,26px);line-height:1.25;color:var(--ink);margin:0}
.ias-guess .gq label{font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.ias-guess .gq input{width:92px;height:40px;border:1px solid var(--hair-2);border-radius:10px;background:var(--surface-2);color:var(--ink);
  font:700 17px var(--mono);padding:0 10px;text-align:center}
.ias-guess .gq input:focus-visible{outline:2px solid var(--jade);outline-offset:2px}
.ias-guess .gsay{margin:12px 0 0;color:var(--amber)}
/* on the page the number takes no room until it is revealed */
.ias-guess.armed:not(.shown) .ga{display:none}
.ias-guess .ga:focus{outline:none}
.ias-guess .ga:focus-visible{outline:2px solid var(--jade);outline-offset:6px;border-radius:12px}

/* ═══ v4 · the fifth poll: six options on one slide (b32) ══════════════════ */
.slide.poll .opts.o6{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.slide.poll .opts.o6 .opt{padding:13px 16px;font-size:18px;min-height:76px}
.slide.poll .opts.o6 .opt .L{width:40px;height:40px;font-size:17px}

/* ═══ v4 · the presenter's own stories, marked in the notes (b32) ═══════════ */
.pv-notes .tx p.story{border-left:3px solid #e0a96d;padding:2px 0 2px 12px;color:#f6e2c8}
.pv-notes .tx p.story b{color:#e0a96d}

/* ═══ v4 · the landing page (b32) ═════════════════════════════════════════ */
.ias-promise{font-family:var(--display);font-style:italic;font-size:clamp(19px,2.2vw,23px);line-height:1.4;color:var(--jade);margin:18px 0 0;max-width:58ch}
/* the finished house is the page's map: each part opens its row of the agenda */
.ias-house a.hn{display:block;color:inherit;text-decoration:none;border-radius:10px;outline-offset:3px;transition:box-shadow .2s ease,transform .2s ease}
.ias-house a.hn:hover{box-shadow:0 0 0 2px var(--jade-line)}
.ias-house a.hn:focus-visible{outline:2px solid var(--jade)}
.ias-house .go{display:inline-block;margin-left:8px;font:700 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber);white-space:nowrap}
.ias-house .bh-roof .go{color:#f0c18f}
.ias-map{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.ias-map a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hair-2);border-radius:999px;padding:6px 12px;font:700 10.5px var(--mono);
  letter-spacing:.07em;text-transform:uppercase;color:var(--jade);text-decoration:none}
.ias-map a:hover,.ias-map a:focus-visible{border-color:var(--jade);background:var(--jade-soft)}
/* Maya's story, in five steps */
.ias-story{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ias-story li{position:relative;border:1px solid var(--hair);border-radius:14px;background:var(--surface);padding:14px 16px 16px;box-shadow:var(--shadow-card)}
.ias-story .w{font:700 10.5px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.ias-story b{display:block;font-family:var(--display);font-weight:400;font-size:18px;line-height:1.25;color:var(--ink);margin:6px 0 4px}
.ias-story p{font-size:14px;line-height:1.5;color:var(--ink-soft);margin:0}
.ias-story .pp{display:block;margin-top:8px;font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute)}
.ias-h3{font-family:var(--display);font-weight:400;font-size:clamp(20px,2.4vw,24px);line-height:1.2;color:var(--ink);margin:34px 0 0}
.ias-fic{font-size:13px;line-height:1.5;color:var(--ink-mute);margin:10px 0 0}
/* the agenda: what each part asks of you, and where its slides and detail are */
.btp-agenda li{scroll-margin-top:24px}
.btp-agenda li:target{background:var(--jade-soft);border-radius:10px}
.btp-agenda .yt{display:block;margin-top:6px;font-size:14px;line-height:1.45;color:var(--amber)}
.btp-agenda .yt b{display:inline;font:700 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--amber);margin-right:6px}
.btp-agenda .go{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}
.btp-agenda .go a{font:700 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--jade);text-decoration:none;border-bottom:1px solid var(--jade-line)}
.btp-agenda .go a:hover,.btp-agenda .go a:focus-visible{border-bottom-color:var(--jade)}
/* before the session */
.ias-before{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;align-items:start}
.ias-before ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.ias-before li{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--hair);border-radius:12px;background:var(--surface);padding:12px 14px;
  font-size:15px;line-height:1.5;color:var(--ink-soft)}
.ias-before li b{color:var(--ink)}
.ias-before li .n{flex:none;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--jade-soft);color:var(--jade);font:700 11px var(--mono)}
.ias-when{border:1px solid var(--hair);border-radius:16px;background:var(--surface-2);padding:16px 18px}
.ias-when .k{font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--jade)}
.ias-when p{font-size:15px;line-height:1.55;color:var(--ink-soft);margin:8px 0 0}
/* how far your own house has got */
.btp-progress{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 18px;align-items:center;border:1px solid var(--hair);border-radius:16px;
  background:var(--surface);padding:14px 18px;margin:0 0 18px}
.btp-progress .hh-p{width:74px;height:62px;--h-sw:1.6px;--h-on:var(--amber);--h-done:var(--jade);--h-ln:var(--jade);--h-win:var(--surface);
  --h-roof:none;--h-pil:none;--h-ini:none;--h-band:none;--h-base:none}
/* the house fills in the order the talk builds it, one part per station played */
.btp-progress .hh-p.n1{--h-roof:var(--h-done)}
.btp-progress .hh-p.n2{--h-roof:var(--h-done);--h-pil:var(--h-done)}
.btp-progress .hh-p.n3{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-on)}
.btp-progress .hh-p.n4{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-on);--h-band:var(--h-done)}
.btp-progress .hh-p.n5{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-on);--h-band:var(--h-done);--h-base:var(--h-done)}
.btp-progress .hh-p.n6{--h-roof:var(--h-done);--h-pil:var(--h-done);--h-ini:var(--h-on);--h-band:var(--h-done);--h-base:var(--h-done);--h-ln:var(--amber)}
.btp-progress .pt{font-family:var(--display);font-size:20px;line-height:1.25;color:var(--ink);margin:0}
.btp-progress .pt b{font-weight:600;color:var(--jade)}
.btp-progress ol{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.btp-progress ol a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hair-2);border-radius:999px;padding:5px 11px;
  font:700 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute);text-decoration:none}
.btp-progress ol a:hover,.btp-progress ol a:focus-visible{border-color:var(--jade);color:var(--jade)}
.btp-progress ol a.ok{border-color:var(--jade);background:var(--jade-soft);color:var(--jade)}
.btp-progress ol a.ok::before{content:'✓'}
/* after the session */
.ias-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ias-af{border:1px solid var(--hair);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-card);padding:18px 20px 20px;min-width:0}
.ias-af.wide{grid-column:1 / -1}
.ias-af .k{font:700 10.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--jade)}
.ias-af h3{font-family:var(--display);font-weight:400;font-size:22px;line-height:1.2;margin:8px 0 8px;color:var(--ink)}
.ias-af p,.ias-af li{font-size:15px;line-height:1.55;color:var(--ink-soft)}
.ias-af p{margin:0 0 10px}
.ias-af ol{margin:0 0 6px;padding-left:20px}
.ias-af li{margin:0 0 6px}
.ias-af .mail{white-space:pre-wrap;font:15px/1.6 var(--sans);color:var(--ink);background:var(--surface-2);border:1px solid var(--hair);border-radius:12px;
  padding:14px 16px;margin:0 0 12px}
.ias-af .acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ias-af .acts .btn{min-height:40px}
.ias-af .btn.ghost{background:transparent;color:var(--jade);border:1px solid var(--jade-line)}
.ias-af .btn.ghost:hover{background:var(--jade-soft)}
.ias-af .msg{font:700 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--jade)}
/* the same deep green in both themes (the site's jade-deep turns light in dark mode) */
.ias-af.cta{background:#0f4a40;border-color:#0f4a40;color:#f3f0e4}
.ias-af.cta .k{color:#7ed4b3}
.ias-af.cta h3,.ias-af.cta p{color:#f3f0e4}
.ias-af.cta a.btn{background:#f3f0e4;color:#0f4a40;border-color:#f3f0e4}
.ias-af.cta a.btn.ghost{background:transparent;color:#f3f0e4;border-color:rgba(243,240,228,.55)}
.ias-af.cta a.btn:hover{background:#fff;border-color:#fff}
.ias-af.cta a.btn.ghost:hover,.ias-af.cta a.btn.ghost:focus-visible{background:rgba(243,240,228,.1);border-color:#f3f0e4}
/* the site's focus ring is the card's own green: a light one here (b32 review) */
.ias-af.cta a:focus-visible{outline:2px solid #f3f0e4;outline-offset:3px}
.ias-af .pr{display:none}
@media (max-width:900px){
  .ias-story{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ias-before{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .ias-story{grid-template-columns:minmax(0,1fr)}
  .ias-after{grid-template-columns:minmax(0,1fr)}
  .btp-progress{grid-template-columns:minmax(0,1fr)}
}
@media print{
  .btp-progress,.ias-af .acts{display:none!important}
  /* on paper: the help card in ink, with its addresses; no screen-only links */
  .ias-af.cta{background:none!important;border:1px solid #0f4a40!important;color:#17211c!important}
  .ias-af.cta .k{color:#0f4a40!important}
  .ias-af.cta h3,.ias-af.cta p{color:#17211c!important}
  .ias-af .pr{display:block;font:700 10pt var(--mono);color:#0f4a40!important;margin:6px 0 0}
  .ias-map,.ias-house .go{display:none!important}
  /* the site's skip link is fixed, so it prints on every page, over whatever is
     there (the help card's addresses, in b32): not on this page's paper */
  .skip-link{display:none!important}
}
/* the blank house (b32): room to write by hand, still one page */
/* a pen cannot write on the dark roof: the blank house's roof is drawn in outline */
.btp-sheet.blank .roof{color:#17211c}
.btp-sheet.blank .roof polygon{fill:#fff;stroke:#17211c;stroke-width:1.4px;vector-effect:non-scaling-stroke}
.btp-sheet.blank .roof .sh-k{color:#0f4a40}
.btp-sheet.blank .roof p{min-height:13mm}
.btp-sheet.blank .beam .b{min-height:22mm}
.btp-sheet.blank .cols .b{min-height:42mm}
.btp-sheet.blank .base{min-height:15mm}
.btp-sheet.blank .row4 .b{min-height:22mm}
.btp-sheet.blank .em{color:#8a948f;font-style:italic}
