/* TOPIC POSTERS (programme highlights, same language as the social banners) */
.tp{background:#fff;padding:clamp(56px,6vw,104px) 0 clamp(40px,4vw,64px)}
.tp + .tp{padding-top:0}
.tp__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(24px,3vw,44px)}
.tp__day{font-weight:900;font-size:clamp(44px,5.4vw,120px);line-height:.88;letter-spacing:-.05em;color:var(--navy)}
.tp__day small{display:block;margin-top:14px;font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.tp__theme{text-align:right;font-weight:900;font-size:clamp(18px,1.8vw,32px);line-height:1.05;letter-spacing:-.03em;text-transform:uppercase;color:var(--navy)}
.tp__theme span{display:block;font-weight:300;color:var(--blue)}
.tp__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,28px)}
.tc{--bg:#0A1F44;--fg:#fff;--em:#0065E1;--mute:rgba(255,255,255,.62);--line:rgba(145,175,208,.22);--track:rgba(255,255,255,.08);
  position:relative;container-type:inline-size;aspect-ratio:4/5;border-radius:12px 12px 12px clamp(40px,4.5vw,88px);overflow:hidden;background:var(--bg);color:var(--fg)}
.tc--light{--bg:#F4F8FC;--fg:#0A1F44;--mute:#5B7288;--line:rgba(10,31,68,.14);--track:rgba(10,31,68,.08);box-shadow:inset 0 0 0 1px #E3EDF5}
.tc__in{position:absolute;inset:0;display:flex;flex-direction:column;padding:7cqw 7cqw 7cqw 9cqw}
.tc__vis{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-start}
.tc__hl{font-weight:900;font-size:10.4cqw;line-height:1.02;letter-spacing:-.045em;margin-top:5cqw}
.tc__hl em{font-style:normal;color:var(--em)}
.tc__tag{margin-top:5cqw;padding-left:3.6cqw;border-left:.7cqw solid var(--em)}
.tc__k{display:flex;align-items:center;gap:2cqw;flex-wrap:wrap;font-family:var(--mono);font-size:2.5cqw;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.tc__k .pg-badge{font-size:2.3cqw;padding:.55em .8em .5em}
.tc__t{font-weight:700;font-size:4.3cqw;line-height:1.18;letter-spacing:-.015em;margin-top:2cqw}
/* kinetic cuts */
.tc__cuts{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;font-weight:900;letter-spacing:-.05em;line-height:.9;text-align:center;padding:0 6cqw;pointer-events:none;opacity:0}
.tc.is-cutting .tc__cuts{opacity:1;background:var(--bg)}
.tc.is-cutting .tc__in{opacity:0}
.tc__in{transition:opacity .6s ease}
/* shared board */
.vb{border:1px solid var(--line);background:color-mix(in srgb,var(--fg) 4%,transparent);padding:4cqw 4.4cqw}
.vb__h{display:flex;justify-content:space-between;font-family:var(--mono);font-size:2.4cqw;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);padding-bottom:2.4cqw;border-bottom:1px solid var(--line)}
.vr{display:grid;grid-template-columns:16cqw 1fr 15cqw;align-items:center;gap:3cqw;padding:2.3cqw 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:2.5cqw;letter-spacing:.08em;text-transform:uppercase}
.vr:last-child{border-bottom:0}
.vr .st{text-align:right;color:var(--mute)}
.vt{position:relative;height:1.7cqw;background:var(--track)}
.vt i{position:absolute;left:0;top:0;bottom:0;background:var(--em);transform:scaleX(0);transform-origin:0 50%;transition:transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.tc.is-on .vt i{transform:scaleX(1)}
.vr.live .vt i{background:#01CF11}.vr.live .st{color:#01CF11}
.vr,.vchip,.vcol{opacity:0;transform:translateX(-2cqw);transition:opacity .4s ease var(--d,0s),transform .5s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.tc.is-on .vr,.tc.is-on .vchip,.tc.is-on .vcol{opacity:1;transform:none}
/* meter (debate) */
.vm{padding:5cqw 4.4cqw}
.vm__labels{display:flex;justify-content:space-between;font-family:var(--mono);font-size:2.6cqw;letter-spacing:.14em;text-transform:uppercase;margin:4cqw 0 2.4cqw}
.vm__labels b{font-weight:500;color:var(--em)}
.vm__track{position:relative;height:2.2cqw;background:linear-gradient(90deg,var(--em) 0 50%,var(--track) 50% 100%)}
.vm__mark{position:absolute;top:50%;left:50%;width:6cqw;height:6cqw;margin:-3cqw 0 0 -3cqw;border-radius:50%;background:var(--fg);box-shadow:0 0 0 1.2cqw color-mix(in srgb,var(--bg) 70%,transparent)}
.tc.is-on .vm__mark{animation:swing 3.2s cubic-bezier(.45,0,.2,1) both}
@keyframes swing{0%{left:50%}18%{left:14%}40%{left:84%}62%{left:30%}80%{left:62%}100%{left:50%}}
.vm__q{display:flex;justify-content:space-between;margin-top:3cqw;font-family:var(--mono);font-size:2.4cqw;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
/* sort (AI lab) */
.vs{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw;margin-top:3cqw}
.vcol{border-top:2px solid var(--line);padding-top:2.4cqw;display:flex;flex-direction:column;gap:1.8cqw}
.vcol p{font-family:var(--mono);font-size:2.3cqw;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:.6cqw}
.vchip{font-family:var(--mono);font-size:2.3cqw;letter-spacing:.06em;text-transform:uppercase;padding:2cqw 2.2cqw;border:1px solid var(--line);background:var(--track)}
.vchip.hum{border-color:#01CF11;color:var(--fg)}
.vcol.keep{border-top-color:#01CF11}
/* final say */
.vf .vr{grid-template-columns:24cqw 1fr}
.vf .big{font-family:var(--font);font-weight:900;font-size:4.6cqw;letter-spacing:-.02em;text-transform:none;text-align:right}
.vf .strike{position:relative;color:var(--mute);font-weight:300}
.vf .strike::after{content:"";position:absolute;left:-2%;right:-2%;top:55%;height:.5cqw;background:#01CF11;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1) 1.6s}
.tc.is-on .vf .strike::after{transform:scaleX(1)}
.vf .new{color:var(--em);opacity:0;transition:opacity .4s ease 2.2s;margin-left:2cqw}
.tc.is-on .vf .new{opacity:1}
/* sliders (decision lab) */
.vl .vr{grid-template-columns:20cqw 1fr}
.vl .sl{position:relative;height:.9cqw;background:var(--track)}
.vl .sl i{position:absolute;left:0;top:0;bottom:0;width:var(--to);background:var(--em);transition:width 1.2s cubic-bezier(.45,0,.2,1) var(--d,0s)}
.vl .sl b,.vl .sl u{position:absolute;top:50%;width:3.6cqw;height:3.6cqw;margin:-1.8cqw 0 0 -1.8cqw;border-radius:50%}
.vl .sl u{left:var(--from);border:1px solid var(--mute)}
.vl .sl b{left:var(--to);background:var(--fg);transition:left 1.2s cubic-bezier(.45,0,.2,1) var(--d,0s)}
.tc:not(.is-on) .vl .sl b{left:var(--from)}.tc:not(.is-on) .vl .sl i{width:var(--from)}
.vl .btns{display:grid;grid-template-columns:1fr 1fr;gap:2cqw}
.vl .btns span{text-align:center;padding:1.8cqw 0;border:1px solid var(--line);font-size:2.3cqw}
.vl .btns .on{background:var(--em);border-color:var(--em);color:#fff}
/* timer */
.vtm__n{display:flex;align-items:flex-end;gap:2cqw;font-weight:900;font-size:30cqw;line-height:.8;letter-spacing:-.06em}
.vtm__n small{font-family:var(--mono);font-weight:500;font-size:2.6cqw;letter-spacing:.14em;text-transform:uppercase;line-height:1.4;color:var(--mute);padding-bottom:2cqw}
.vtm__bars{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw;margin-top:5cqw}
.vtm__bars div{font-family:var(--mono);font-size:2.2cqw;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.vtm__bars .vt{height:1.4cqw;margin-bottom:1.6cqw}
/* agenda gate */
.ag{background:var(--light);padding:clamp(72px,8vw,140px) 0}
.ag__row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.ag h2{font-weight:900;font-size:clamp(44px,6vw,150px);line-height:.92;letter-spacing:-.05em;color:var(--navy)}
.ag h2 span{display:block;color:var(--blue)}
.ag p{max-width:26em;font-size:clamp(17px,1.35vw,22px);line-height:1.5;color:var(--muted);margin-bottom:24px}
/* media placeholders */
.mv{background:#fff;padding:clamp(72px,8vw,140px) 0}
.mv__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:end}
.mv h2{font-weight:900;font-size:clamp(40px,4.6vw,104px);line-height:.94;letter-spacing:-.045em;color:var(--navy)}
.mv h2 span{display:block;font-weight:300;color:var(--muted)}
.mv p{font-size:clamp(16px,1.2vw,20px);line-height:1.55;color:var(--muted);margin-top:20px;max-width:26em}
.ph{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;text-align:center;border:1.5px dashed var(--pblue);background:repeating-linear-gradient(135deg,#F4F8FC 0 2px,#fff 2px 10px);border-radius:12px 12px 12px clamp(48px,6vw,110px);color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;line-height:1.6;padding:24px}
.ph--video{aspect-ratio:16/9}
.ph b{display:block;color:var(--navy);font-size:13px}
.ph__play{width:72px;height:72px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center}
.ph__play::after{content:"";border-left:20px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:6px}
@media (max-width:980px){.tp__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mv__grid{grid-template-columns:1fr}}
@media (max-width:640px){.tp__grid{grid-template-columns:1fr}.tp__theme{text-align:left}}
.pg-badge{display:inline-block;font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#fff;border-radius:3px}
.vtm__bars .vt i{width:100%}
.tp__day small{margin-top:clamp(18px,1.8vw,28px)}
.vtm__bars .vt{display:block}
.js-tc .tc:not(.is-on) .tc__in{opacity:0}

.tp__head--rev{flex-direction:row-reverse}.tp__head--rev .tp__day{text-align:right}.tp__head--rev .tp__theme{text-align:left}
@media (max-width:640px){.tp__head--rev{flex-direction:column;align-items:flex-start}.tp__head--rev .tp__day{text-align:left}}
.lay-center .ppm-cta__kick{display:flex}

