/* Platform page (green). Generated scope: every rule sits under body.pf, after page.css, so it wins over the kit's .pg .ui rules.
   Scenes reuse the homepage's product vocabulary (home.css) adapted to this page; motion: final state is the markup, platform.js adds .js-pf and .play. */
/* ---------- Shared scene parts (the homepage's product vocabulary) ---------- */
.pf .ui .h4{display:block;margin:0;font-size:19px;line-height:26px;font-weight:600;letter-spacing:-0.02em;color:var(--u-ink);}
.pf .ui .ag{display:inline-flex;align-items:center;height:20px;padding:0 8px;margin-left:6px;border-radius:999px;background:var(--u-teal-w);color:var(--u-teal);font-size:11px;line-height:16px;font-weight:500;vertical-align:1px;white-space:nowrap;}
.pf .ui .ag.ag0{margin-left:0;}
.pf .ui .k{display:inline-block;margin-right:6px;color:var(--u-teal);font-weight:500;}
.pf .ui .bt.sx-a{height:28px;padding:0 10px;font-size:12px;}
.pf .ui .bt.sx-a.pri,.pf .ui .sx-r > .bt.sx-a{background:var(--u-dark);border-color:var(--u-dark);color:#fff;}
/* a status that changes: both states share one cell; the final one is the resting state */
.pf .ui .sw{display:inline-grid;align-items:center;justify-items:end;}
.pf .ui .sw > *{grid-area:1/1;}
.pf .ui .sw .s0{opacity:0;pointer-events:none;}
.pf .ui .sw.r{margin-left:auto;}
.pf .ui .done{display:inline-flex;align-items:center;gap:8px;color:var(--u-ok);font-weight:500;white-space:nowrap;}
.pf .ui .done i{width:18px;height:18px;border-radius:50%;background:var(--u-ok);display:grid;place-items:center;flex:0 0 auto;}
.pf .ui .done svg{width:11px;height:11px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
.pf .ui .av3{display:flex;flex:0 0 auto;}
.pf .ui .av3 img{width:24px;height:24px;border-radius:50%;margin-right:-8px;border:2px solid #fff;object-fit:cover;object-position:50% 20%;}
.pf .ui .av3 img:last-child{margin-right:0;}
.pf .ui img.av{object-position:50% 18%;}
.pf .ui .card{border-radius:10px;}

/* tile the windows sit on */
.pf .pf-stage{border-radius:var(--r-l);background:var(--tile);padding:40px;}
.pf .pg-sec.tint .pf-stage{background:var(--canvas);}

/* window: the product's top bar over a white body */
.pf .pf-win{position:relative;background:#fff;}
.pf .pf-win .tb .nv-sub{color:var(--u-ink);padding-left:4px;}
.pf .pf-win .tb .nv-sub::before{content:"/";margin-right:10px;color:#C4C4C4;}
.pf .pf-win .tb .srch{width:200px;}
.pf .pf-win > .bd{padding:0;}
.pf .app.lt.pf-win{box-shadow:0 0 0 1px rgba(20,32,27,.06),0 1px 2px rgba(12,38,30,.06),0 24px 56px rgba(12,38,30,.14);outline:0;}

/* Companion drawer */
.pf .cdr{display:flex;flex-direction:column;background:#fff;}
.pf .cdr .h{display:flex;align-items:center;gap:8px;padding:14px 16px;font-weight:500;font-size:14px;}
.pf .cdr .h .star{color:var(--u-teal);width:13px;height:13px;}
.pf .cdr .h .sm{margin-left:auto;font-weight:400;}
.pf .cdr .tbs{display:flex;gap:16px;padding:0 16px;border-bottom:1px solid var(--u-line);}
.pf .cdr .tbs span{padding:8px 0;color:var(--u-2);}
.pf .cdr .tbs span.on{color:var(--u-ink);font-weight:500;box-shadow:inset 0 -2px 0 var(--u-ink);}
.pf .cdr .body{padding:14px 16px;display:flex;flex-direction:column;gap:12px;flex:1 1 auto;}
.pf .cdr .in{margin:auto 16px 8px;border:1px solid var(--u-in);border-radius:10px;padding:10px 12px;color:var(--u-3);}
.pf .cdr .dis{padding:0 16px 14px;}
.pf .cdr sup{font-size:9px;color:var(--u-teal);margin-left:1px;}
.pf .sx{display:flex;flex-direction:column;}
.pf .sx .sx-r{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--u-line);}
.pf .sx .sx-r:first-child,.pf .sx .sxh + .sx-r{border-top:0;}
.pf .sx .sx-r .t{flex:1;min-width:0;}
.pf .sx .sx-r .t b,.pf .sx .sx-r .t .sm{display:block;}
.pf .cdr .sxi{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:var(--u-teal-w);}
.pf .cdr .sxi .ico{width:14px;height:14px;color:var(--u-teal);}
/* agent proposal strip */
.pf .sxp{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--u-teal-w);border-color:var(--u-teal-b);}
.pf .sxp .t{flex:1;min-width:0;}
.pf .sxp .t b{display:block;font-weight:500;}
.pf .sxp .t .sm{display:block;margin-top:2px;color:var(--u-2);}
.pf .sxp .sxi{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;background:#fff;box-shadow:0 0 0 1px var(--u-teal-b);color:var(--u-teal);}
.pf .sxp .av3 img{border-color:var(--u-teal-w);}

/* ---------- 1. Hero: the Today queue rising out of the green field ---------- */
.pf .pf-hero{background:none;overflow:visible;padding-bottom:56px;}
.pf .pf-hero::before{content:"";position:absolute;inset:0 0 calc(var(--tail,200px) + 56px) 0;z-index:-1;background:radial-gradient(120% 90% at 85% 10%,#173D30 0%,var(--green-deep) 55%,#081B15 100%);}
.pf .pf-hero-t{max-width:760px;}
.pf .pf-hero h1{max-width:12em;}
.pf .pf-hero .sub{max-width:36em;}
.pf .pf-hero{padding-top:calc(var(--bar) + env(safe-area-inset-top, 0px) + 88px);}
.pf .pf-hero-fig{margin-top:48px;}
.pf .pf-today{border-radius:14px;outline:1px solid rgba(255,255,255,.14);outline-offset:-1px;box-shadow:0 0 0 1px rgba(12,38,30,.08),0 2px 6px rgba(2,14,10,.18),0 40px 90px rgba(2,14,10,.32);}
.pf .pf-today > .bd{display:flex;min-height:0;}
.pf .pf-today .mn{flex:1 1 auto;min-width:0;padding:22px 26px 24px;}
.pf .pf-today .tdh{display:flex;align-items:baseline;gap:12px;}
.pf .pf-today .tdh .sm{margin-left:auto;}
.pf .pf-today .q{margin-top:16px;}
.pf .pf-today .qh{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--u-line);}
.pf .pf-today .qr{display:flex;align-items:center;gap:14px;min-height:52px;padding:8px 16px;border-bottom:1px solid var(--u-line);}
.pf .pf-today .qr:last-child{border-bottom:0;}
.pf .pf-today .qr .ic{width:44px;display:flex;flex:0 0 auto;}
.pf .pf-today .qr .ic .ico{width:26px;height:26px;padding:5px;border:1px solid var(--u-line);border-radius:7px;}
.pf .pf-today .qr .ic img{width:24px;height:24px;border-radius:50%;margin-right:-8px;border:2px solid #fff;object-fit:cover;}
.pf .pf-today .qr .t{flex:1;min-width:0;}
.pf .pf-today .qr .t b{display:flex;align-items:center;flex-wrap:wrap;}
.pf .pf-today .qr .t .sm{display:block;text-wrap:pretty;}
.pf .pf-today .qr .chev{width:14px;height:14px;color:var(--u-3);}
.pf .pf-today .cdr{width:320px;flex:0 0 auto;border-left:1px solid var(--u-line);}
.pf .pf-today .cdr .sx-r .av{width:28px;height:28px;}

/* ---------- 2. Creators: the shortlist beside the profile ---------- */
.pf .pf-cr-st{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:center;}
/* a plain section after a tinted band opens with full air (the kit gives plain-after-plain a 16px top) */
.pf .pg-sec.tint + .pg-sec:not(.tint):not(.dark){padding-top:128px;}
.pf .pf-cards{margin-top:12px;}
.pf .pf-sl > .bd{padding:20px 22px 22px;display:flex;flex-direction:column;gap:14px;}
.pf .pf-sl .slh .sm{display:block;margin-top:2px;}
.pf .fl{display:flex;flex-wrap:wrap;gap:6px;}
.pf .fl .pill{height:28px;color:var(--u-2);}
.pf .fl .pill b{color:var(--u-ink);}
.pf .sl .slr{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 14px;border-top:1px solid var(--u-line);}
.pf .sl .slr:first-child{border-top:0;}
.pf .sl .slr .av{width:32px;height:32px;}
.pf .sl .slr .t b{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.pf .sl .slr .t .sm{display:block;margin-top:1px;text-wrap:pretty;}
.pf .sl .fit{display:inline-grid;place-items:center;min-width:36px;height:26px;padding:0 8px;border-radius:7px;background:var(--u-teal-w);color:var(--u-teal);font-weight:600;font-size:13px;}
.pf .sl .fit.lo{background:var(--u-wash);color:var(--u-3);}
.pf .sl .held .av{filter:grayscale(1);opacity:.7;}
.pf .sl .held .t b{color:var(--u-2);}
.pf .agc .sxi .star{width:13px;height:13px;}
.pf .agc .t{display:flex;flex-direction:column;align-items:flex-start;gap:3px;}
.pf .agc .t .sm{margin-top:0;}
.pf .agc .bt{height:30px;}
.pf .pf-pr > .bd{padding:20px 22px 22px;}
.pf .pf-pr .who{display:flex;gap:14px;align-items:center;}
.pf .pf-pr .who > img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:0 0 auto;}
.pf .pf-pr .who .t{flex:1;min-width:0;}
.pf .pf-pr .who .nm{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.pf .pf-pr .who .r{margin-left:auto;}
.pf .pf-pr .tabsx{display:flex;gap:18px;margin-top:14px;border-bottom:1px solid var(--u-line);overflow:hidden;}
.pf .pf-pr .tabsx span{padding:8px 0;color:var(--u-2);white-space:nowrap;}
.pf .pf-pr .tabsx span.on{color:var(--u-ink);font-weight:500;box-shadow:inset 0 -2px 0 var(--u-teal);}
.pf .pf-pr .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;}
.pf .pf-pr .kpis > div{padding:9px 12px;border-left:1px solid var(--u-line);}
.pf .pf-pr .kpis > div:first-child{border-left:0;}
.pf .pf-pr .kpis b{display:block;font-size:20px;line-height:26px;font-weight:600;letter-spacing:-0.02em;}
.pf .pf-pr .cols{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px;margin-top:12px;}
.pf .pf-pr .lcol{display:flex;flex-direction:column;gap:12px;min-width:0;}
.pf .pf-pr .sf{padding:12px 14px;}
.pf .pf-pr .sf .ring{display:flex;gap:12px;align-items:flex-start;}
.pf .pf-pr .sf .ring svg{width:48px;height:48px;flex:0 0 auto;}
.pf .pf-pr .sf .sfh{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap;}
.pf .pf-pr .sf .sfh .ag{margin-left:auto;}
.pf .pf-pr .tl{overflow:hidden;}
.pf .pf-pr .tl .th{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--u-line);}
.pf .pf-pr .tl .row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;align-items:start;min-height:0;padding:8px 14px;}
.pf .pf-pr .tl .row + .row{border-top:1px solid var(--u-line);}
.pf .pf-pr .tl .row.new{background:var(--u-teal-w);box-shadow:inset 2px 0 0 var(--u-teal);}
.pf .pf-pr .sxc{padding:12px 14px;align-self:stretch;display:flex;flex-direction:column;}
.pf .pf-pr .sxc .sxh{display:flex;align-items:center;gap:6px;padding-bottom:6px;}
.pf .pf-pr .sxc .sxh .star{width:12px;height:12px;color:var(--u-teal);}
.pf .pf-pr .sxc .sx-r{padding:12px 0;align-items:flex-start;flex-wrap:wrap;row-gap:8px;}
.pf .pf-pr .sxc .sx-r .t{flex-basis:100%;}
.pf .pf-pr .sxc .sx-r .sw{justify-items:start;}
.pf .pf-pr .sxc .sx-r .t .sm + .sm{margin-top:2px;}
.pf .pf-pr .sxc .sx-r .ag{margin-left:0;}
.pf .pf-pr .sxc .sxf{margin-top:auto;padding-top:10px;border-top:1px solid var(--u-line);}

/* ---------- 3. Companion and agents ---------- */
.pf .pf-ai-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;}
.pf .pf-tile{display:flex;flex-direction:column;gap:28px;padding:32px;border-radius:var(--r-l);background:var(--canvas);}
.pf .pf-tile-t .n,.pf .pwr-h .n{display:block;margin-bottom:8px;font-size:14px;line-height:20px;font-weight:500;color:var(--green-2);font-variant-numeric:tabular-nums;}
.pf .pf-tile-t h3,.pf .pwr-h h3{font-size:var(--fs-h3);line-height:1.3;letter-spacing:-0.02em;}
.pf .pf-tile-t p{margin-top:6px;color:var(--ink-2);max-width:34em;}
.pf .pf-tile-t .lnk{margin-top:6px;}
.pf .pf-tile figure{display:flex;flex-direction:column;gap:12px;margin-top:auto;}
.pf .pf-chat{border-radius:var(--r-m);box-shadow:0 0 0 1px rgba(20,32,27,.06),0 1px 2px rgba(12,38,30,.06),0 18px 44px rgba(12,38,30,.12);}
.pf .pf-chat .me{align-self:flex-end;background:#EFEFEF;border-radius:12px 12px 4px 12px;padding:8px 12px;}
.pf .pf-chat .by{display:flex;align-items:center;gap:6px;}
.pf .pf-chat .by .tag{gap:4px;}
.pf .pf-chat .by .star{width:9px;height:9px;color:var(--u-teal);}
.pf .cx{display:flex;flex-direction:column;gap:8px;}
.pf .cx .ci{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--u-line),0 1px 2px rgba(0,0,0,.03);}
.pf .cx .cd{flex:0 0 auto;width:7px;height:7px;margin-top:6px;border-radius:50%;background:var(--u-teal);}
.pf .cx .cd.att{background:var(--u-att-d);}
.pf .cx .t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.pf .cx .t b{font-weight:500;}
.pf .cx .t span{font-size:12px;line-height:16px;color:var(--u-3);}
.pf .cx .cbar{display:block;height:3px;margin-top:6px;border-radius:2px;background:var(--u-line);overflow:hidden;}
.pf .cx .cbar i{display:block;width:73%;height:100%;border-radius:inherit;background:var(--u-teal);}
.pf .cx .cs{flex:0 0 auto;align-self:center;font-size:11px;line-height:16px;color:var(--u-teal);background:var(--u-teal-w);border-radius:6px;padding:2px 7px;white-space:nowrap;font-weight:500;}
.pf .cx .cact{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
.pf .cx .cbn{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:8px;font-size:12px;font-weight:500;background:#fff;box-shadow:inset 0 0 0 1px var(--u-in);}
.pf .cx .cbn.pri{background:var(--u-teal);color:#fff;box-shadow:none;}
.pf .scope{overflow:hidden;box-shadow:0 0 0 1px rgba(20,32,27,.04),0 18px 44px rgba(12,38,30,.10);}
.pf .scope .sh{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--u-line);background:var(--u-canvas);}
.pf .scope .sh2{border-top:1px solid var(--u-line);}
.pf .scope .sh .r{margin-left:auto;}
.pf .scope .sr{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border-bottom:1px solid var(--u-line);}
.pf .scope .sr:last-child{border-bottom:0;}
.pf .scope .ai{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px;border-radius:999px;background:var(--u-teal-w);color:var(--u-teal);font-size:11px;font-weight:600;flex:0 0 auto;}
.pf .scope .ai .star{width:8px;height:8px;}
.pf .scope .sr .t{flex:1;min-width:0;}
.pf .scope .sr .t b{display:block;}
.pf .scope .seg{display:inline-flex;border:1px solid var(--u-in);border-radius:8px;overflow:hidden;flex:0 0 auto;}
.pf .scope .seg span{padding:4px 10px;color:var(--u-3);}
.pf .scope .seg span.on{background:#fff;color:var(--u-ink);font-weight:500;box-shadow:0 0 0 1px var(--u-in);}
.pf .scope .lock{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--u-in);border-radius:8px;color:var(--u-2);flex:0 0 auto;}
.pf .scope .lock .ico{width:13px;height:13px;}
.pf .scope,.pf .pf-prop{border-radius:12px;background:#fff;}
.pf .pf-prop{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;box-shadow:0 0 0 1px rgba(20,32,27,.04),0 18px 44px rgba(12,38,30,.10);}
.pf .pf-prop .av{width:36px;height:36px;}
.pf .pf-prop .t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.pf .pf-prop .t > .sm:first-child{display:flex;align-items:center;}
.pf .pf-prop .t b{font-size:14px;}
.pf .pwr{margin-top:24px;border-radius:var(--r-l);background:var(--green-deep);color:var(--on-dark);padding:32px;}
.pf .pwr-h .n{color:#9FD1BE;}
.pf .pwr-g{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;margin-top:22px;border-top:1px solid rgba(255,255,255,.18);}
.pf .pwr-g li{position:relative;padding-top:20px;}
.pf .pwr-g li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:#7FC8B6;}
.pf .pwr-g b{display:block;font-weight:500;}
.pf .pwr-g span{display:block;margin-top:6px;font-size:15px;color:var(--on-dark-2);text-wrap:pretty;}

/* ---------- 4. Campaigns: the window beside the four points ---------- */
.pf .pf-cp-g{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:56px;align-items:center;}
.pf .pf-cmp > .bd{padding:20px 22px 22px;}
.pf .pf-cmp .ch{display:flex;align-items:center;gap:10px;}
.pf .pf-cmp .ch > div:first-child{margin-right:auto;min-width:0;}
.pf .pf-cmp .ch .h4 .sm{font-weight:400;letter-spacing:0;}
.pf .pf-cmp .ch > div > .sm{display:block;margin-top:2px;}
.pf .pf-cmp .ch .sw.r{margin-right:4px;}
.pf .pf-cmp .stp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px;padding:14px 16px;}
.pf .pf-cmp .sn{position:relative;display:flex;flex-direction:column;gap:2px;padding-top:34px;min-width:0;}
.pf .pf-cmp .sn > .dot,.pf .pf-cmp .sn > .dsw{position:absolute;left:0;top:0;}
.pf .pf-cmp .dsw{width:24px;height:24px;}
.pf .pf-cmp .dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;}
.pf .pf-cmp .dot.ok{background:var(--u-ok-w);}
.pf .pf-cmp .dot.ok .ico{width:13px;height:13px;color:var(--u-ok);stroke-width:2.4;}
.pf .pf-cmp .dot.att{background:var(--u-att-w);box-shadow:inset 0 0 0 1.5px var(--u-att-d);}
.pf .pf-cmp .sn:not(:last-of-type)::after{content:"";position:absolute;left:32px;right:-8px;top:11px;height:2px;border-radius:1px;background:#CFE8DA;}
.pf .pf-cmp .sn > .st,.pf .pf-cmp .sn > .sw{margin-top:6px;}
.pf .pf-cmp .sn > .sw{justify-items:start;}
.pf .pf-cmp .sn > .dsw{margin-top:0;}
.pf .pf-cmp .stf{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--u-line);}
.pf .pf-cmp .stf .ico{width:14px;height:14px;color:var(--u-teal);}
.pf .pf-cmp .c2{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;margin-top:12px;}
.pf .pf-cmp .hist{overflow:hidden;}
.pf .pf-cmp .hist .th{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--u-line);}
.pf .pf-cmp .hist .row{display:flex;gap:10px;align-items:center;min-height:0;padding:8px 14px;}
.pf .pf-cmp .hist .row + .row{border-top:1px solid var(--u-line);}
.pf .pf-cmp .hist .row .av,.pf .pf-cmp .hist .row .avt{width:26px;height:26px;}
.pf .pf-cmp .hist .avt .ico{width:13px;height:13px;}
.pf .pf-cmp .hist .row .t{min-width:0;}
.pf .pf-cmp .hist .row .t b,.pf .pf-cmp .hist .row .t .sm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf .pf-cmp .hist .row.new{background:var(--u-teal-w);box-shadow:inset 2px 0 0 var(--u-teal);}
.pf .pf-cmp .kit{padding:12px 14px;display:flex;flex-direction:column;gap:2px;}
.pf .pf-cmp .kit .kh{display:flex;align-items:center;justify-content:space-between;}
.pf .pf-cmp .kit .kg{display:flex;flex-direction:column;margin-top:8px;}
.pf .pf-cmp .kit .kg > div{display:flex;align-items:baseline;justify-content:space-between;padding:7px 0;border-top:1px solid var(--u-line);}
.pf .pf-cmp .kit .kg b{font-size:17px;line-height:22px;font-weight:600;}
.pf .pf-cmp .kit .kfix{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:auto;padding:10px 12px;border-radius:8px;background:var(--u-teal-w);}
.pf .pf-cmp .kit .kfix .sm{color:var(--u-2);}
.pf .pf-cmp .pf-inv{margin-top:12px;}
.pf .pf-list{display:flex;flex-direction:column;}
.pf .pf-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:22px 0;border-top:1px solid var(--line);}
.pf .pf-list li:last-child{border-bottom:1px solid var(--line);}
.pf .pf-list .n{padding-top:3px;font-size:14px;line-height:20px;font-weight:500;color:var(--green-2);font-variant-numeric:tabular-nums;}
.pf .pf-list h3{font-size:var(--fs-h3);line-height:1.3;letter-spacing:-0.02em;}
.pf .pf-list p{margin-top:6px;color:var(--ink-2);}
.pf .pf-list .lnk{margin-top:4px;}

/* ---------- 5. Channels: one brief, four channels, written back (rebuilt from the parked homepage section) ---------- */
.pf .pf-chs{padding-top:96px;}
.pf .ch-stage{--ch-ring:0 0 0 1px rgba(12,38,30,.09);padding:18px;border-radius:var(--r-l);background:var(--tile);}
.pf .ch-flow{position:relative;display:flex;flex-direction:column;gap:16px;}
.pf .ch-src{display:flex;align-items:center;gap:14px;min-height:56px;padding:8px 10px;border-radius:14px;background:var(--green-deep);color:#EEF2EF;font-size:14px;line-height:20px;box-shadow:0 0 0 1px rgba(12,38,30,.4),0 1px 2px rgba(12,38,30,.1),0 10px 24px rgba(12,38,30,.14);}
.pf .ch-src .ico{width:15px;height:15px;}
.pf .ch-src-i{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;background:rgba(255,255,255,.08);color:#8FD8BF;}
.pf .ch-src-i .ico{width:17px;height:17px;}
.pf .ch-src-t{display:flex;flex-direction:column;flex:0 0 auto;}
.pf .ch-src-k{font-size:12px;line-height:16px;color:#A9B9B1;}
.pf .ch-src-t b{font-weight:500;}
.pf .ch-src-m{padding-left:14px;border-left:1px solid rgba(255,255,255,.14);color:#C9D6CF;min-width:0;}
.pf .ch-src-c{display:flex;gap:6px;margin-left:auto;}
.pf .ch-src-c span{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);font-size:13px;color:#DDE7E1;white-space:nowrap;}
.pf .ch-src-c .ico{width:13px;height:13px;color:#8FD8BF;}
.pf .ch-src-s{display:inline-flex;align-items:center;gap:8px;padding:0 6px 0 4px;font-size:13px;color:#C9D6CF;white-space:nowrap;font-variant-numeric:tabular-nums;}
.pf .ch-src-s i{width:7px;height:7px;border-radius:50%;background:#5FC79A;}
.pf .ch-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.pf .ch-ln{position:relative;display:flex;flex-direction:column;min-width:0;}
.pf .ch-ln::before{content:"";position:absolute;left:50%;top:-16px;width:2px;height:16px;margin-left:-1px;border-radius:1px;background:#9CCBBB;}
.pf .ch-ph{position:relative;aspect-ratio:7/5;border-radius:12px;overflow:hidden;background:var(--canvas-2);flex:0 0 auto;box-shadow:0 1px 2px rgba(12,38,30,.08);}
.pf .ch-ph::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);pointer-events:none;}
.pf .ch-ph img{width:100%;height:100%;object-fit:cover;filter:var(--grade);}
.pf .ch-ph-av{display:grid;place-items:center;background:radial-gradient(90% 90% at 50% 40%,#E3EFE9 0%,#CFE1D8 100%);}
.pf .ch-ph-av .ch-in{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--green);font-size:34px;font-weight:500;letter-spacing:-0.02em;box-shadow:0 0 0 4px #fff,0 10px 28px rgba(12,38,30,.18);}
.pf .ch-ph.ch-ph-av img{width:112px;height:112px;border-radius:50%;object-fit:cover;filter:var(--grade);box-shadow:0 0 0 4px #fff,0 10px 28px rgba(12,38,30,.18);}.pf .ch-l2 .ch-ph img{object-position:50% 28%;}.pf .ch-l3 .ch-ph img{object-position:50% 0%;}.pf .ch-l4 .ch-ph img{object-position:50% 12%;}
.pf .ch-who,.pf .ch-via{position:absolute;z-index:2;top:10px;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 9px 0 8px;border-radius:999px;background:rgba(255,255,255,.94);font-size:12px;line-height:16px;font-weight:500;color:var(--u-ink);white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.08);}
.pf .ch-who{left:10px;}.pf .ch-who i{width:6px;height:6px;border-radius:50%;background:var(--u-ok-d);}
.pf .ch-via{right:10px;}.pf .ch-via .ico{width:13px;height:13px;color:var(--u-teal);}
.pf .ch-card{position:relative;z-index:1;flex:1 1 auto;display:flex;flex-direction:column;margin:10px 0 0;border-radius:12px;background:#fff;overflow:hidden;box-shadow:var(--ch-ring),0 1px 2px rgba(12,38,30,.08),0 12px 28px rgba(12,38,30,.12);}
.pf .ch-pt{background:#FAF8F4;color:#1B1A18;}
.pf .ch-pt-h{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;border-bottom:1px solid #ECE8E0;}
.pf .ch-pt-h b{font-size:12px;font-weight:600;letter-spacing:.08em;}
.pf .ch-pt-h span{font-size:12px;color:#6B675F;}
.pf .ch-pt-me{display:flex;flex-direction:column;padding:10px 14px 0;}
.pf .ch-pt-me > div{display:flex;flex-direction:column;min-width:0;}
.pf .ch-pt-c{display:flex;align-items:center;gap:10px;margin:10px 14px 12px;padding:9px 10px;background:#fff;border:1px solid #ECE8E0;border-radius:10px;}
.pf .ch-pt-c img{width:38px;height:46px;border-radius:6px;object-fit:cover;object-position:50% 15%;filter:var(--grade);flex:0 0 auto;}
.pf .ch-pt-c > div{display:flex;flex-direction:column;min-width:0;}
.pf .ch-pt-b{position:relative;display:flex;align-items:center;justify-content:center;height:34px;margin:auto 14px 14px;border-radius:999px;background:#10695E;color:#fff;font-weight:500;}
.pf .ch-pt-b > span{display:inline-flex;align-items:center;gap:6px;}
.pf .ch-pt-b .j0{position:absolute;inset:0;justify-content:center;border-radius:inherit;background:#10695E;opacity:0;}
.pf .ch-pt-b svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
.pf .ch-wa{background:#EFEAE2;}
.pf .ch-wa-h{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#fff;border-bottom:1px solid #E6E1D8;}
.pf .ch-wa-h > div{display:flex;flex-direction:column;line-height:17px;}
.pf .ch-wa-h span:not(.ch-wa-av){font-size:11px;line-height:14px;color:#54656F;}
.pf .ch-wa-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:#10695E;color:#fff;font-size:12px;font-weight:600;}
.pf .ch-wa-b{flex:1 1 auto;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:10px;}
.pf .ch-wa-b p{max-width:88%;padding:6px 9px 4px;border-radius:9px;font-size:12.5px;line-height:17px;color:#111B21;box-shadow:0 1px .5px rgba(11,20,26,.13);text-wrap:pretty;}
.pf .ch-wa .ch-in{align-self:flex-start;background:#fff;border-top-left-radius:3px;}
.pf .ch-wa .ch-out{align-self:flex-end;background:#D9FDD3;border-top-right-radius:3px;}
.pf .ch-tm{display:flex;justify-content:flex-end;align-items:center;gap:3px;margin-top:1px;font-size:10.5px;line-height:12px;color:#54656F;}
.pf .ch-out .ch-tm{color:#4A5B53;}
.pf .ch-tm svg{width:15px;height:10px;fill:none;stroke:#3A9FD1;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf .ch-em-h{display:flex;gap:10px;padding:11px 14px;border-bottom:1px solid var(--u-line);}
.pf .ch-em-lg{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:#10695E;color:#fff;font-size:12px;font-weight:600;}
.pf .ch-em-h .t{flex:1;min-width:0;display:flex;flex-direction:column;}
.pf .ch-em-h .r{display:flex;align-items:baseline;justify-content:space-between;gap:8px;}
.pf .ch-em-h .sj{font-weight:600;}
.pf .ch-em-h .pv{font-size:12px;line-height:16px;color:var(--u-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf .ch-em-b{flex:1 1 auto;display:flex;flex-direction:column;gap:10px;padding:12px 14px 14px;background:#FAF8F4;}
.pf .ch-em-hero{display:flex;align-items:center;gap:12px;padding:10px;border-radius:10px;background:#0E5C53;color:#fff;}
.pf .ch-em-hero img{width:44px;height:52px;border-radius:7px;object-fit:cover;object-position:50% 20%;filter:var(--grade);flex:0 0 auto;}
.pf .ch-em-hero > div{display:flex;flex-direction:column;min-width:0;}
.pf .ch-em-hero .k{font-size:10px;line-height:14px;font-weight:600;letter-spacing:.14em;color:#BFE6D9;}
.pf .ch-em-hero span:last-child{font-size:12px;line-height:16px;color:#DCEDE7;}
.pf .ch-em-cta{align-self:flex-start;display:inline-flex;align-items:center;height:34px;margin-top:auto;padding:0 16px;border-radius:999px;background:#10695E;color:#fff;font-weight:500;}
.pf .ch-nt{flex:1 1 auto;margin:10px 0 0;background:none;box-shadow:none;overflow:visible;display:flex;flex-direction:column;gap:6px;font-size:12.5px;line-height:17px;color:#111;}
.pf .ch-n{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:#fff;box-shadow:var(--ch-ring),0 1px 2px rgba(12,38,30,.08),0 12px 28px rgba(12,38,30,.14);}
.pf .ch-n > div{flex:1;min-width:0;display:flex;flex-direction:column;}
.pf .ch-n .r{display:flex;justify-content:space-between;font-size:11px;line-height:14px;color:var(--u-3);}
.pf .ch-n .r b{font-weight:500;color:var(--u-2);}
.pf .ch-n > div > b{font-weight:600;}
.pf .ch-n > div > span{color:var(--u-2);}
.pf .ch-n-i{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;background:#10695E;color:#fff;font-size:12px;font-weight:600;}
.pf .ch-back{display:flex;align-items:center;gap:8px;padding:12px 0;border-radius:14px;background:#fff;box-shadow:var(--ch-ring),0 1px 2px rgba(12,38,30,.06);}
.pf .ch-back-t{flex:0 0 auto;width:280px;display:flex;align-items:flex-start;gap:8px;padding:2px 16px;border-right:1px solid var(--u-line);font-weight:500;text-wrap:balance;}
.pf .ch-back-t .star{margin-top:4px;flex:0 0 auto;color:var(--u-teal);}
.pf .ch-back-r{flex:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.pf .ch-wb{display:flex;align-items:center;gap:10px;padding:0 14px;min-width:0;}
.pf .ch-wb + .ch-wb{border-left:1px solid var(--u-line);}
.pf .ch-wb img{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:50% 18%;flex:0 0 auto;filter:var(--grade);}
.pf .ch-wb > div{flex:1;min-width:0;display:flex;flex-direction:column;}
.pf .ch-wb .sm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf .ch-wb i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:var(--u-ok-w);color:var(--u-ok);}
.pf .ch-wb i svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;}
.pf .ch-pts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin-top:40px;}
.pf .ch-pts li{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:12px;padding-top:20px;border-top:1px solid var(--line);}
.pf .ch-pts li > *{grid-column:2;}
.pf .ch-pts .n{grid-column:1;grid-row:1;padding-top:3px;font-size:14px;line-height:20px;font-weight:500;color:var(--green-2);font-variant-numeric:tabular-nums;}
.pf .ch-pts h3{font-size:var(--fs-h3);line-height:1.3;letter-spacing:-0.02em;}
.pf .ch-pts .ch-sub{margin-top:2px;color:var(--green-2);font-size:15px;font-weight:500;}
.pf .ch-pts p + p{margin-top:10px;color:var(--ink-2);max-width:36em;}

/* ---------- 6. Content and reporting ---------- */
.pf .pf-lib > .bd{display:grid;grid-template-columns:minmax(0,1fr) 340px;}
.pf .pf-lib .lib{padding:18px 20px 20px;min-width:0;}
.pf .pf-lib .lib .fl{align-items:center;}
.pf .pf-lib .lib .cnt{margin-left:auto;}
.pf .pf-lib .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;}
.pf .pf-lib .tile{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:var(--canvas-2);}
.pf .pf-lib .tile::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);pointer-events:none;}
.pf .pf-lib .tile.on::after{box-shadow:inset 0 0 0 2px var(--u-teal),inset 0 0 0 4px #fff;}
.pf .pf-lib .tile img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:var(--grade);}
.pf .pf-lib .tile.more{grid-column:span 2;aspect-ratio:auto;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 20px;background:var(--u-wash);}
.pf .pf-lib .tile.more::after{box-shadow:inset 0 0 0 1px var(--u-line);}
.pf .pf-lib .tile.more b{font-size:24px;line-height:30px;font-weight:600;letter-spacing:-0.02em;}
.pf .pf-lib .tile.more span{color:var(--u-3);}
.pf .pf-lib .tile .tag{position:absolute;top:8px;left:8px;background:rgba(255,255,255,.94);}
.pf .pf-lib .tile .cap2{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;padding:28px 10px 8px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.62));color:#fff;font-size:12px;line-height:16px;}
.pf .pf-lib .tile .cap2 b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pf .pf-lib .tile .cap2 span{color:rgba(255,255,255,.82);}
.pf .pf-lib .rv{display:flex;flex-direction:column;gap:10px;padding:18px;border-left:1px solid var(--u-line);background:#fff;}
.pf .rv .rh{display:flex;align-items:center;gap:10px;}
.pf .rv .rh .t{flex:1;min-width:0;}
.pf .rv .rh .t b,.pf .rv .rh .t .sm{display:block;}
.pf .rv .note{display:flex;gap:8px;padding:10px 12px;border-radius:8px;background:var(--u-wash);color:var(--u-2);}
.pf .rv .note .star{color:var(--u-teal);margin-top:4px;flex:0 0 auto;}
.pf .rv .note b{color:var(--u-ink);}
.pf .rv .req li{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--u-line);}
.pf .rv .req li:last-child{border-bottom:0;}
.pf .rv .req .ok{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--u-ok-w);flex:0 0 auto;}
.pf .rv .req .ok .ico{width:11px;height:11px;color:var(--u-ok);stroke-width:2.2;}
.pf .rv .req .r{margin-left:auto;font-size:12px;color:var(--u-ok);}
.pf .rv .df{margin-top:auto;padding-top:12px;border-top:1px solid var(--u-line);min-height:46px;justify-items:start;}
.pf .rv .df .act{display:flex;gap:8px;}
.pf .pf-rp-g{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:24px 56px;align-items:center;}
.pf .pf-rp-sc{display:contents;}
.pf .pf-lib-st{grid-column:1 / -1;}
.pf .pf-rb > .bd{display:flex;}
.pf .pf-rb .mn{flex:1 1 auto;min-width:0;padding:20px 22px 22px;display:flex;flex-direction:column;}
.pf .pf-rb .top{display:flex;align-items:flex-start;gap:10px;}
.pf .pf-rb .top > div{margin-right:auto;}
.pf .pf-rb .top .sm{display:block;margin-top:2px;}
.pf .pf-rb .fl{margin-top:12px;}
.pf .pf-rb .k3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;}
.pf .pf-rb .k3 > div{padding:10px 14px;border-left:1px solid var(--u-line);}
.pf .pf-rb .k3 > div:first-child{border-left:0;}
.pf .pf-rb .k3 b{display:block;font-size:20px;line-height:26px;font-weight:600;letter-spacing:-0.02em;}
.pf .pf-rb .chart{margin-top:12px;padding:12px 14px;}
.pf .pf-rb .chart .chh{display:flex;align-items:center;gap:8px;}
.pf .pf-rb .chart svg{display:block;width:100%;height:auto;margin-top:8px;}
.pf .pf-rb .chart .src{display:block;margin-top:6px;}
.pf .pf-rb .ins{width:260px;flex:0 0 auto;border-left:1px solid var(--u-line);}
.pf .ins .ib{padding:12px;border:1px solid var(--u-line);border-radius:10px;}
.pf .ins .ib b{display:block;margin-bottom:4px;text-wrap:pretty;}
.pf .ins .sug{padding:10px 12px;border-radius:10px;background:var(--u-teal-w);color:var(--u-teal);font-weight:500;text-wrap:pretty;}
.pf .ins .act{display:flex;flex-wrap:wrap;gap:8px;}
.pf .ins .nx{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:var(--u-wash);margin-top:auto;}
.pf .ins .nx b{font-weight:500;}

/* ---------- 7. Also in the workspace (dark) ---------- */
.pf .pf-more-g{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px;align-items:start;}
.pf .pf-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;}
.pf .pf-tiles li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:4px 14px;align-content:start;padding:22px 0 26px;border-top:1px solid var(--edge-dk);}
.pf .pf-tiles .mk{grid-row:span 2;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--edge-dk);}
.pf .pf-tiles .mk .ico{width:19px;height:19px;color:#CFE3D6;}
.pf .pf-tiles h3{font-size:17px;line-height:1.35;letter-spacing:-0.015em;}
.pf .pf-tiles p{color:var(--on-dark-2);font-size:15px;text-wrap:pretty;}
.pf .pf-trust{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;margin-top:56px;padding-top:28px;border-top:1px solid var(--edge-dk);}
.pf .pf-trust p{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--on-dark);font-size:17px;}
.pf .pf-trust .bd{width:32px;height:32px;border-radius:8px;background:#fff;display:grid;place-items:center;padding:5px;overflow:hidden;}
.pf .pf-trust .bd img{width:22px;height:22px;object-fit:contain;}
/* site.css sizes the B Corp mark to 46px with !important, which the 32px tile would clip */
.pf .pf-trust .bd img[src*="bcorp.svg"]{width:auto !important;height:22px !important;}
.pf .pf-trust .bd + .bd{margin-left:-2px;}
.pf .pf-trust p .bd:last-of-type{margin-right:6px;}

/* ---------- 8. CTA ---------- */
.pf .pf-cta .card > div:first-child p{max-width:40em;}
.pf .pf-cta .mark{position:absolute;right:-60px;top:-80px;width:360px;opacity:.07;pointer-events:none;}
.pf .pf-cta .acts{position:relative;z-index:1;}

/* wide screens: the library window spans the page, so four posts in a row and the count as a slim bar under them */
@media (min-width:1200px){
  .pf .pf-lib .grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .pf .pf-lib .tile.more{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;min-height:56px;padding:0 18px;}
  .pf .pf-lib .tile.more b{font-size:20px;line-height:26px;}
}

/* ---------- Motion: the decided state is the markup; platform.js adds .js-pf, then .play once a scene is seen ---------- */
.js-pf .pf [data-play] .pa{transition:opacity .28s var(--ease-out),transform .28s var(--ease-out);transition-delay:calc(.04s + var(--i,0) * 50ms);}
.js-pf .pf [data-play]:not(.play) .pa{opacity:0;transform:translateY(8px);transition-delay:0s;}
.js-pf .pf [data-play] .pa-new{transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);transition-delay:var(--dn,.7s);}
.js-pf .pf [data-play]:not(.play) .pa-new{opacity:0;transform:translateY(-6px);transition-delay:0s;}
.js-pf .pf [data-play] .sw .s0{transition:opacity .2s var(--ease-out),transform .14s var(--ease-out);transition-delay:var(--sw,.55s),calc(var(--sw,.55s) - .16s);}
.js-pf .pf [data-play] .sw .s1{transition:opacity .24s var(--ease-out),transform .24s var(--ease-out);transition-delay:calc(var(--sw,.55s) + .06s);}
.js-pf .pf [data-play].play .sw .bt.s0{transform:scale(.95);}
.js-pf .pf [data-play]:not(.play) .sw .s0{opacity:1;transition-delay:0s;}
.js-pf .pf [data-play]:not(.play) .sw .s1{opacity:0;transform:translateY(4px);transition-delay:0s;}
.pf .pf-pr{--sw:.5s;--dn:.7s;}
.pf .pf-cmp{--sw:.45s;--dn:.7s;}
.pf .pf-prop{--sw:.45s;}
.pf .rv{--sw:.65s;}
/* channels: each lane plays once as it comes into view (cards rise, a reply arrives, the app button turns to Joined) */
.js-pf .pf .ch-card,.js-pf .pf .ch-n.ch-a,.js-pf .pf .ch-wb{transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);transition-delay:calc(var(--i,0) * 50ms);}
.js-pf .pf .ch-ln:not(.play) .ch-card{opacity:0;transform:translateY(12px);transition-delay:0s;}
.js-pf .pf .ch-l3 .ch-nt{transition:none;}
.js-pf .pf .ch-l3:not(.play) .ch-nt{opacity:1;transform:none;}
.js-pf .pf .ch-l3:not(.play) .ch-n.ch-a{opacity:0;transform:translateY(-12px) scale(.98);}
.js-pf .pf .ch-l3 .ch-n.ch-a{transition-delay:.2s;}
.js-pf .pf .ch-wa .ch-a{transition:opacity .24s var(--ease-out),transform .24s var(--ease-out);}
.js-pf .pf .ch-wa .ch-out{transition-delay:.35s;transform-origin:100% 0;}
.js-pf .pf .ch-wa .ch-in.ch-a{transition-delay:.6s;transform-origin:0 0;}
.js-pf .pf .ch-ln:not(.play) .ch-wa .ch-a{opacity:0;transform:translateY(6px) scale(.96);transition-delay:0s;}
.js-pf .pf .ch-pt-b > span{transition:opacity .18s var(--ease-out);transition-delay:.5s;}
.js-pf .pf .ch-ln:not(.play) .ch-pt-b .j0{opacity:1;transition-delay:0s;}
.js-pf .pf .ch-ln:not(.play) .ch-pt-b .j1{opacity:0;transition-delay:0s;}
.js-pf .pf .ch-wb{transition-delay:calc(.4s + var(--i,0) * 60ms);}
.js-pf .pf .ch-back:not(.play) .ch-wb{opacity:0;transform:translateY(4px);transition-delay:0s;}
.pf .ch-l1,.pf .ch-back-r > :nth-child(1){--i:0;}.pf .ch-l2,.pf .ch-back-r > :nth-child(2){--i:1;}.pf .ch-l3,.pf .ch-back-r > :nth-child(3){--i:2;}.pf .ch-l4{--i:3;}

/* ---------- Responsive ---------- */
@media (max-width:1279px){
  .pf .ch-src-m{display:none;}
  .pf .pwr-g{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:0;}
  .pf .pwr-g li{padding-bottom:20px;}
  .pf .pf-today .cdr{width:290px;}
  .pf .pf-pr .cols{grid-template-columns:minmax(0,1fr) 230px;}
}
@media (max-width:1199px){
  .pf .pf-cr-st{grid-template-columns:minmax(0,1fr);max-width:860px;margin-left:auto;margin-right:auto;}
  .pf .pf-cp-g,.pf .pf-rp-g{grid-template-columns:minmax(0,1fr);gap:32px;}
  .pf .pf-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;}
  .pf .pf-list li:nth-last-child(2){border-bottom:1px solid var(--line);}
  .pf .pf-lib > .bd{grid-template-columns:minmax(0,1fr) 300px;}
  .pf .pf-more-g{grid-template-columns:minmax(0,1fr);gap:40px;}
}
@media (max-width:1023px){
  .pf .pf-ai-g{grid-template-columns:minmax(0,1fr);max-width:860px;margin-left:auto;margin-right:auto;}
}
@media (min-width:1024px) and (max-width:1199px){
  .pf .pf-ai-g{gap:16px;}
  .pf .pf-tile{padding:24px;}
  .pf .pf-chat .h .sm{display:none;}
  .pf .scope .ai{display:none;}
}
@media (max-width:1099px){
  .pf .pf-hero-fig{margin-top:48px;}
  .pf .pf-today .tb .srch,.pf .pf-today .tb .me{display:none;}
  .pf .pf-today .tb .cmp{margin-left:auto;}
  .pf .ch-stage{max-width:720px;margin-left:auto;margin-right:auto;}
  .pf .ch-lanes{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px;}
  .pf .ch-ln:nth-child(n+3)::before{top:-32px;height:32px;}
  .pf .ch-back{flex-direction:column;align-items:stretch;gap:12px;}
  .pf .ch-back-t{width:auto;padding:0 16px 12px;border-right:0;border-bottom:1px solid var(--u-line);}
  .pf .ch-src{flex-wrap:wrap;}
  .pf .ch-src-s{margin-left:auto;}
  .pf .ch-src-c{order:3;margin-left:0;width:100%;}
  .pf .ch-src-c span{flex:1;justify-content:center;}
  .pf .ch-pts{gap:32px;}
  .pf .pf-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pf .pf-rb .ins{width:240px;}
  .pf .pf-rb .chart svg text.o{display:none;}
  /* the CTA carries a long line: stack it under the heading rather than squeeze both beside the buttons */
  .pf .pg-cta.pf-cta .card{grid-template-columns:minmax(0,1fr);gap:28px;align-items:start;}
}
@media (max-width:899px){
  .pf .pf-today .cdr{display:none;}
  .pf .pf-lib > .bd{grid-template-columns:minmax(0,1fr);}
  .pf .pf-lib .rv{border-left:0;border-top:1px solid var(--u-line);}
  .pf .pf-cmp .c2{grid-template-columns:minmax(0,1fr) 200px;}
}

/* phones: designed, not stacked; one focal point per scene */
@media (max-width:759px){
  /* On this page: the eyebrow clears the sticky pill bar by 16px more on phones */
  .pf .pg-sec[id]{scroll-margin-top:16px;}
  .pf .pf-hero{--tail:120px;padding-bottom:40px;}
  .pf .pf-hero::before{bottom:calc(var(--tail) + 40px);}
  .pf .pf-hero-fig{margin-top:40px;margin-left:calc(var(--gut) * -1 + 8px);margin-right:calc(var(--gut) * -1 + 8px);}
  .pf .pf-today .tb{padding:0 10px;gap:2px;}
  .pf .pf-today .tb .nv:not(.on){padding:0 8px;}
  .pf .pf-today .tb .nv:not(.on) .l,.pf .pf-today .tb .nv:nth-of-type(n+4){display:none;}
  .pf .pf-today .tb .cmp span{display:none;}
  .pf .pf-today .mn{padding:16px 14px 16px;}
  .pf .pf-today .tdh{flex-direction:column;gap:0;}
  .pf .pf-today .tdh .sm{margin-left:0;}
  .pf .pf-today .q{margin-top:12px;}
  .pf .pf-today .qh{padding:10px 12px;}
  .pf .pf-today .qh .lk{display:none;}
  .pf .pf-today .qr{gap:10px;padding:8px 12px;min-height:50px;}
  .pf .pf-today .qr .ic{width:30px;}
  .pf .pf-today .qr .ic.av3{width:40px;}
  .pf .pf-today .qr .ic .ico{width:26px;height:26px;}
  .pf .pf-today .qr .ic img{width:20px;height:20px;}
  .pf .pf-today .qr .ag{display:none;}
  .pf .pf-today .qr .chev{display:none;}
  .pf .pf-today .qr:nth-child(n+6){display:none;}

  .pf .pf-stage,.pf .pg-sec.tint .pf-stage{padding:0;border-radius:0;background:none;}
  .pf .pf-cr-st{gap:12px;}
  .pf .pf-win .tb{height:44px;padding:0 12px;}
  .pf .pf-win .tb .nv:not(.on) .l{display:none;}
  .pf .pf-win .tb .nv-sub{padding-left:2px;}
  .pf .pf-win .tb .nv-sub::before{margin-right:8px;}
  .pf .pf-win .tb .cmp span{display:none;}
  .pf .pf-sl > .bd,.pf .pf-pr > .bd,.pf .pf-cmp > .bd{padding:16px 14px;}
  .pf .pf-sl .fl{display:none;}
  .pf .pf-sl .slr{padding:10px 12px;gap:10px;}
  .pf .pf-sl .held{display:none;}
  .pf .agc{flex-wrap:wrap;}
  .pf .agc .t{flex-basis:calc(100% - 42px);}
  .pf .agc .bt{flex:1;justify-content:center;}
  .pf .pf-pr .who{flex-wrap:wrap;}
  .pf .pf-pr .who .r,.pf .pf-pr .tabsx,.pf .pf-pr .kpis,.pf .pf-pr .tl{display:none;}
  .pf .pf-pr .cols{grid-template-columns:minmax(0,1fr);margin-top:14px;}
  .pf .pf-pr .sf .sfh .ag{margin-left:0;}
  .pf .pf-pr .sxc .sx-r + .sx-r,.pf .pf-pr .sxc .sxf{display:none;}
  .pf .pf-cards{margin-top:20px;}

  .pf .pf-tile{padding:0;background:none;gap:18px;border-radius:0;}
  .pf .pf-ai-g{gap:40px;}
  .pf .pf-ai-g > .pf-tile:first-child .pf-tile-t{order:0;}
  .pf .pf-chat{margin:0 calc(var(--gut) * -1 + 8px);}
  .pf .pf-chat .h .sm{display:none;}
  .pf .cx .ci{padding:10px;}
  .pf .scope .sh .r,.pf .scope .ai,.pf .scope .sh2,.pf .scope .sh2 ~ .sr,.pf .scope .sr3{display:none;}
  .pf .scope .sr{gap:10px;padding:10px 12px;}
  .pf .scope .seg span{padding:4px 8px;}
  .pf .scope .sr .t{flex:1 1 40%;}
  .pf .scope .lock{flex:0 1 auto;min-width:0;align-items:flex-start;}
  .pf .scope .lock .ico{flex:0 0 auto;margin-top:3px;}
  .pf .pf-prop{flex-wrap:wrap;padding:14px;}
  .pf .pf-prop .t{flex-basis:calc(100% - 48px);}
  .pf .pf-prop .sw{width:100%;justify-items:stretch;}
  .pf .pf-prop .sw .bt{justify-content:center;}
  .pf .pf-prop .sw .done{justify-content:center;}
  .pf .pwr{margin-top:40px;padding:24px 18px 6px;border-radius:var(--r-m);}
  .pf .pwr-g{grid-template-columns:1fr;gap:0;margin-top:16px;border-top:0;}
  .pf .pwr-g li{display:grid;grid-template-columns:minmax(0,9fr) minmax(0,14fr);gap:12px;padding:14px 0;border-top:1px solid rgba(255,255,255,.14);}
  .pf .pwr-g li::before{display:none;}
  .pf .pwr-g span{margin-top:0;font-size:14px;}

  .pf .pf-cmp .ch{flex-wrap:wrap;}
  .pf .pf-cmp .ch > div:first-child{flex-basis:100%;}
  .pf .pf-cmp .ch .sw.r{margin-left:0;}
  .pf .pf-cmp .ch .bt{margin-left:auto;}
  .pf .pf-cmp .stp{grid-template-columns:1fr;gap:12px;padding:12px 14px;}
  .pf .pf-cmp .sn{padding:0 0 0 36px;}
  .pf .pf-cmp .sn::after{display:none;}
  .pf .pf-cmp .sn > .st,.pf .pf-cmp .sn > .sw{margin-top:2px;}
  .pf .pf-cmp .c2{grid-template-columns:1fr;}
  .pf .pf-cmp .hist .row.r3,.pf .pf-cmp .hist .row.r4{display:none;}
  .pf .pf-cmp .pf-inv{display:none;}
  .pf .pf-cp-g,.pf .pf-rp-g{gap:24px;}
  .pf .pf-list{display:flex;flex-direction:row;}
  .pf .pf-list li,.pf .pf-list li:last-child,.pf .pf-list li:nth-last-child(2){display:block;padding:22px 20px;border:0;border-radius:var(--r-m);background:var(--tile);}
  .pf .pg-sec.tint .pf-list li{background:var(--canvas);}
  .pf .pf-list .n{display:block;padding:0;margin-bottom:8px;}

  .pf .pf-chs{padding-top:48px;}
  .pf .pg-sec.tint + .pg-sec:not(.tint):not(.dark){padding-top:64px;}
  .pf .ch-stage{margin-left:calc(var(--gut) * -1 + 8px);margin-right:calc(var(--gut) * -1 + 8px);padding:10px;border-radius:var(--r-m);}
  .pf .ch-src-c span{padding:0 8px;font-size:12px;}
  .pf .ch-src-c .ico{display:none;}
  .pf .ch-lanes{display:flex;margin:0 -10px;padding:0 10px;scroll-padding-inline:10px;}
  .pf .ch-ln::before{display:none;}
  .pf .ch-flow > .pg-count.on{margin-top:-6px;padding-right:4px;}
  .pf .ch-back-r{grid-template-columns:minmax(0,1fr);row-gap:12px;}
  .pf .ch-wb + .ch-wb{border-left:0;}
  .pf .ui .ch-n .r,.pf .ch-em-hero .k,.pf .ch-tm{font-size:12px;}
  .pf .ch-pts{grid-template-columns:1fr;gap:0;margin-top:24px;}
  .pf .ch-pts li{padding:18px 0;}
  .pf .ch-pts li + li{border-top:1px solid var(--line);}
  .pf .ch-pts h3{font-size:18px;}
  .pf .ch-pts p + p{font-size:15px;}

  .pf .pf-lib-st{margin-left:calc(var(--gut) * -1 + 8px);margin-right:calc(var(--gut) * -1 + 8px);}
  .pf .pf-lib .lib{display:none;}
  .pf .pf-lib .rv{border-top:0;padding:16px 14px;}
  .pf .pf-rb .mn{padding:16px 14px;}
  .pf .pf-rb > .bd{flex-direction:column;}
  .pf .pf-rb .fl,.pf .pf-rb .chart,.pf .pf-rb .top .tag{display:none;}
  .pf .pf-rb .k3{grid-template-columns:1fr 1fr;}
  .pf .pf-rb .k3 > div:nth-child(3){display:none;}
  .pf .pf-rb .ins{width:auto;border-left:0;border-top:1px solid var(--u-line);}
  .pf .pf-rb .ins .fn,.pf .pf-rb .ins .ib p{display:none;}

  .pf .pf-tiles{grid-template-columns:1fr;}
  .pf .pf-tiles li{padding:16px 0 18px;}
  .pf .pf-trust{margin-top:32px;padding-top:24px;flex-direction:column;align-items:flex-start;}
  .pf .pf-trust p{font-size:16px;}
  .pf .pf-cta .acts{flex-direction:column;align-items:stretch;}
  .pf .pf-cta .acts .btn{width:100%;}
  .pf .pf-cta .acts .lnk{justify-content:center;}
}
@media (max-width:389px){
  .pf .pf-today .qr .ic.av3{width:30px;}
  .pf .pf-today .qr .ic img:nth-child(n+2){display:none;}
}

/* ---------- Phones, condensed (review P4, MUST 3): one focal point per scene, about one screen each ---------- */
@media (max-width:759px){
  /* hero: three queue rows are enough to say "the day's decisions" */
  .pf .pf-today .qr:nth-child(n+5){display:none;}
  /* creators: tighter between scenes and cards; the profile keeps header, safety and one suggestion */
  .pf .pf-cr-st{gap:10px;}
  .pf .pf-sl > .bd{gap:12px;}
  .pf .pf-sl .slh .sm{display:none;}
  .pf .pf-pr .sxc .sxh{padding-bottom:2px;}
  .pf .pf-pr .sxc .sx-r{padding:8px 0 2px;}
  .pf .pf-pr .sxc .sx-r .t .sm + .sm{display:none;}
  /* companion: the question, the three sourced rows and the missing-data line; no tabs, buttons, input or disclaimer */
  .pf .pf-tile{gap:14px;}
  .pf .pf-ai-g{gap:32px;}
  .pf .pf-chat .tbs,.pf .pf-chat .cact,.pf .pf-chat .in,.pf .pf-chat .dis,.pf .pf-chat .cl{display:none;}
  .pf .pf-chat .h{padding:12px 14px 4px;}
  .pf .pf-chat .body{padding:10px 14px 14px;gap:10px;}
  .pf .cx .cbar{display:none;}
  .pf .pf-prop{gap:10px;}
  /* six agents: one column, the name above its job */
  .pf .pwr{margin-top:32px;padding:20px 16px 4px;}
  .pf .pwr-g{margin-top:10px;}
  .pf .pwr-g li{display:block;padding:12px 0;}
  .pf .pwr-g b{font-size:15px;line-height:20px;}
  .pf .pwr-g span{margin-top:2px;font-size:14px;line-height:20px;}
  /* campaigns: kit figures in one row */
  .pf .pf-cmp .ch > div > .sm{display:none;}
  .pf .pf-cmp .kit .kg{flex-direction:row;gap:0;}
  .pf .pf-cmp .kit .kg > div{flex:1;flex-direction:column;align-items:flex-start;border-top:0;padding:4px 0 8px;}
  .pf .pf-cmp .kit .kfix{margin-top:4px;}
  .pf .pf-cp-g,.pf .pf-rp-g{gap:20px;}
  .pf .pf-list li,.pf .pf-list li:last-child,.pf .pf-list li:nth-last-child(2){padding:18px 18px;}
  /* channels: shorter portraits, tighter write-back */
  .pf .ch-ph{aspect-ratio:16/9;}
  .pf .ch-ph.ch-ph-av img,.pf .ch-ph-av .ch-in{width:96px;height:96px;}
  .pf .ch-ph-av .ch-in{font-size:28px;}
  .pf .ch-back{padding:10px 0;gap:10px;}
  .pf .ch-back-t{padding:0 14px 10px;}
  .pf .ch-back-r{row-gap:10px;}
  .pf .ch-pts li{padding:16px 0;}
  /* reporting: the open post; the KPI pair and Companion's suggestion */
  .pf .rv{gap:8px;}
  .pf .rv .req li{padding:5px 0;}
  .pf .pf-rb .top .sm,.pf .pf-rb .ins .cap,.pf .pf-rb .ins .nx,.pf .pf-rb .ins .h .sm{display:none;}
  .pf .pf-rb .ins .body{padding:10px 14px 14px;gap:10px;}
  .pf .pf-rb .ins .h{padding:12px 14px 0;}
  .pf .pf-rb .k3{margin-top:10px;}
  /* also in the workspace: short tiles */
  .pf .pf-more-g{gap:24px;}
  .pf .pf-tiles li{grid-template-columns:32px minmax(0,1fr);column-gap:12px;padding:12px 0 14px;}
  .pf .pf-tiles .mk{width:32px;height:32px;border-radius:8px;}
  .pf .pf-tiles .mk .ico{width:16px;height:16px;}
  .pf .pf-tiles h3{font-size:16px;}
  .pf .pf-tiles p{font-size:14px;line-height:20px;}
}
/* phones: scenes that belong together swipe as one row ("1 of 2"), so each section is about one screen */
@media (max-width:759px){
  .pf .pf-cr-st[data-snap],.pf .pf-ai-g[data-snap],.pf .pf-rp-sc[data-snap],.pf .ch-pts[data-snap]{display:flex;max-width:none;margin-left:calc(var(--gut) * -1);margin-right:calc(var(--gut) * -1);gap:10px;}
  .pf .pf-rp-sc[data-snap] > .pf-stage{margin:0;}
  .pf .pf-lib-st{margin-left:0;margin-right:0;}
  .pf .pf-ai-g[data-snap] > .pf-tile{gap:14px;}
  .pf .pf-chat{margin:0;}
  .pf .ch-pts[data-snap]{margin-top:24px;}
  .pf .pf-cr-st[data-snap],.pf .pf-ai-g[data-snap]{margin-top:28px;}
  .pf .ch-pts[data-snap] li,.pf .ch-pts[data-snap] li + li{padding:18px 18px;border:0;border-radius:var(--r-m);background:var(--tile);}
  .pf .ch-pts .n{padding-top:2px;}
}
/* phones: rhythm a step tighter than the kit's 64px, and the detail each scene can lose */
@media (max-width:759px){
  .pf .pg-sec.pf-cr,.pf .pg-sec.pf-ai,.pf .pg-sec.pf-cp,.pf .pg-sec.pf-rp,.pf .pg-sec.pf-more{padding-top:48px;padding-bottom:48px;}
  .pf .pg-sec.tint + .pg-sec:not(.tint):not(.dark){padding-top:48px;}
  .pf .pf-chs{padding-top:36px;padding-bottom:48px;}
  .pf .ch-lanes > *{max-width:340px;}
  .pf .ch-src-c{display:none;}
  .pf .pf-cmp .sn > .sm{display:none;}
  .pf .ch-wb{padding:0 12px;}
  .pf .ch-back-r{row-gap:8px;}
  .pf .pf-today .tdh .sm{display:none;}
  .pf .pf-trust{margin-top:24px;padding-top:20px;}
  .pf .ch-em-hero,.pf .rv .note,.pf .pf-cmp .kit .kfix{display:none;}
  .pf .ch-ph{aspect-ratio:5/2;}
  .pf .ch-pts p + p{margin-top:8px;font-size:14px;line-height:21px;}
  .pf .ch-wb img{width:28px;height:28px;}
  .pf .pwr-g li{padding:10px 0;}
  .pf .pf-tiles li{padding:10px 0 12px;}
}
/* phones, polish pass: gutters, room for shadows, concentric corners, 15px body */
@media (max-width:759px){
  /* swipe rows: the creators row keeps the page gutter like every other row, and each row leaves room under its cards so window shadows fade out instead of ending in a hard line */
  .pf .pf-cr-st[data-snap]{padding-left:var(--gut);padding-right:var(--gut);scroll-padding-inline:var(--gut);}
  .pf .pf-cr-st[data-snap],.pf .pf-ai-g[data-snap],.pf .pf-rp-sc[data-snap],.pf .ch-lanes{padding-bottom:20px;}
  /* a smaller canvas takes a shorter shadow, so it fits inside that room */
  .pf .app.lt.pf-win{box-shadow:0 0 0 1px rgba(20,32,27,.06),0 1px 2px rgba(12,38,30,.06),0 6px 16px rgba(12,38,30,.10);}
  .pf .pf-chat{box-shadow:0 0 0 1px rgba(20,32,27,.06),0 1px 2px rgba(12,38,30,.06),0 6px 16px rgba(12,38,30,.10);}
  .pf .scope,.pf .pf-prop{box-shadow:0 0 0 1px rgba(20,32,27,.05),0 6px 16px rgba(12,38,30,.08);}
  .pf .ch-card{box-shadow:var(--ch-ring),0 1px 2px rgba(12,38,30,.08),0 6px 16px rgba(12,38,30,.10);}
  .pf .pf-cr-st[data-snap] + .pg-count.on,.pf .pf-ai-g[data-snap] + .pg-count.on{margin-top:6px;}
  .pf .ch-flow > .pg-count.on{margin-top:-10px;}
  /* the count sits just under that room (a taller card peeking in from the right ends inside it); in a grid or flex column the gap already separates them */
  .pf .pf-rp-sc[data-snap] + .pg-count.on{margin-top:-14px;}
  .pf .pf-list + .pg-count.on{margin-top:-8px;}
  /* hero queue: the third row is the last one shown, so it drops its rule (the card has its own edge) */
  .pf .pf-today .qr:nth-child(4){border-bottom:0;}
  /* channels: Lea's portrait sits low in the frame, clear of the name and channel pills */
  .pf .ch-ph-av{place-items:end center;padding-bottom:12px;}
  .pf .ch-ph.ch-ph-av img,.pf .ch-ph-av .ch-in{width:72px;height:72px;}
  .pf .ch-ph-av .ch-in{font-size:22px;}
  /* concentric corners: 10px of stage padding around 12px cards */
  .pf .ch-stage{border-radius:22px;}
  .pf .ch-src,.pf .ch-back{border-radius:12px;}
  /* body copy no smaller than 15px */
  .pf .pwr-g span,.pf .pf-tiles p,.pf .ch-pts p + p{font-size:15px;line-height:22px;}
}
/* chart axis labels: 12 px or more on screen at every layout (the svg scales with its card) */
.pf .pf-rb .chart svg text{font-size:14px;}
@media (min-width:1200px) and (max-width:1439px){.pf .pf-rb .chart svg text{font-size:18px;}.pf .pf-rb .chart svg text.o{display:none;}}
@media (min-width:1024px) and (max-width:1199px){.pf .pf-rb .chart svg text{font-size:12px;}}
@media (min-width:760px) and (max-width:1023px){.pf .pf-rb .chart svg text{font-size:16px;}.pf .pf-rb .chart svg text.o{display:none;}}

/* phones, swipe rows: 50 px of the next card everywhere (the desktop gaps no longer leak into the rows), the channels row to the screen edge */
@media (max-width:759px){
  .pf .pf-list[data-snap],.pf .ch-lanes[data-snap]{gap:10px;}
  .pf .ch-stage{margin-left:calc(var(--gut) * -1);margin-right:calc(var(--gut) * -1);padding-left:var(--gut);padding-right:var(--gut);border-radius:0;}
  /* 20 px under the cards is room for their shadow (0 6px 16px), taken back by the negative margin so the count stays where it was; site.js adds it to the row height */
  .pf .ch-lanes{margin:0 calc(var(--gut) * -1) -20px;padding:0 var(--gut) 20px;scroll-padding-inline:var(--gut);}
}
