/* Product pages with personality (W03, Sam 2026-10-11): "each needs its own personality. Fewer words, more
   visuals. Tell the story in pictures." One stylesheet for every product page, loaded after depth.css and,
   like it, hand-written for all three themes (tools/v2_light_theme.py never touches it).
   The personality is DATA: each profile's theme block (data/product-pages/<id>.json) sets
     --pp      the page's signature colour: the hero motif, the kicker, the moments, the step nodes.
               Buttons and links stay blue on every page.
     .pp-<motif>  which line drawing sits faintly behind the hero (lines only: no plate, no box, no grid)
   and the engine (auditor/product_pages.py) picks the hero layout: .pp-stage (headline above a full-width
   live demo) or .pp-split (text beside the visual). No per-page rules below this line, ever. */

.pp-page{--pp:#3355e0;--pp-ink:color-mix(in srgb,var(--pp) 62%,#fff);--pp-soft:color-mix(in srgb,var(--pp) 18%,transparent)}
html.light .pp-page{--pp-ink:color-mix(in srgb,var(--pp) 88%,#000);--pp-soft:color-mix(in srgb,var(--pp) 10%,transparent)}

/* ---------- the hero ---------- */
.pp-page .p-hero{padding:150px 0 90px}
.pp-motif{position:absolute;inset:0;width:100%;height:100%;color:var(--pp);opacity:.18;pointer-events:none;
  -webkit-mask-image:radial-gradient(60% 75% at 96% 22%,#000 0,rgba(0,0,0,.4) 45%,transparent 78%);
  mask-image:radial-gradient(60% 75% at 96% 22%,#000 0,rgba(0,0,0,.4) 45%,transparent 78%)}
html.light .pp-motif{opacity:.12}
.pp-motif circle[r="5"],.pp-motif circle[r="6"]{fill:currentColor;fill-opacity:.5}
.pp-page .p-hero .wrap{z-index:1}
.pp-page .pp-kicker{color:var(--pp-ink)}
.pp-page .crumb b{color:var(--pp-ink)}
.pp-page .facts div{border-left-color:var(--pp)}

/* stage: words in two columns, then the live demo across the full width */
.pp-stage .wrap{display:block}
.pp-head{display:grid;grid-template-columns:1.15fr 1fr;gap:20px 64px;align-items:end;margin-bottom:56px}
.pp-head .h-lg{margin-bottom:0}
.pp-head .lead{margin-bottom:26px}
.pp-head .facts{margin-top:30px;gap:24px}
.pp-show{position:relative;scroll-margin-top:110px}
.pp-cue{display:flex;align-items:center;gap:10px;margin:0 0 16px 2px;font-family:var(--head);font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pp-split .pp-show .vis{aspect-ratio:auto}

/* ---------- sound familiar: three moments, drawn as the notification the owner sees ---------- */
.pp-moments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.pp-moment{margin:0;min-width:0}
.pp-lock{position:relative;border-radius:24px;padding:26px 18px 20px;min-height:250px;display:flex;flex-direction:column;align-items:center;overflow:hidden;
  background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--pp) 26%,transparent),transparent 70%),linear-gradient(180deg,#151a23,#0d1016);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 2px 4px rgba(0,0,0,.25),0 22px 44px -14px rgba(0,0,0,.6)}
html.light .pp-lock{background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--pp) 16%,#fff),transparent 72%),linear-gradient(180deg,#FFFFFF,#EEF1F6);
  box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(16,24,40,.06),0 1px 2px rgba(16,24,40,.06),0 18px 34px -16px rgba(16,24,40,.28)}
.pp-clock{font-family:var(--head);font-weight:600;font-size:clamp(42px,3.6vw,56px);line-height:1;letter-spacing:.01em;color:var(--text)}
.pp-day{margin-top:6px;font-size:15px;color:var(--muted);text-align:center}
.pp-note{margin-top:auto;width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;text-align:left;
  background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);backdrop-filter:blur(6px);
  transform:translateY(-14px);opacity:0;transition:transform .6s var(--ease) .25s,opacity .6s var(--ease) .25s}
html.light .pp-note{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.05),0 1px 2px rgba(16,24,40,.06),0 8px 18px -8px rgba(16,24,40,.22)}
.pp-moment.in-view .pp-note{transform:none;opacity:1}
.pp-app{flex-shrink:0;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--pp);color:#fff}
.pp-app svg{width:20px;height:20px}
.pp-note b{display:block;font-size:16px;line-height:1.25;color:var(--text)}
.pp-note small{display:block;font-size:14px;line-height:1.3;color:var(--muted);overflow-wrap:anywhere}
.pp-moment figcaption{padding:18px 4px 0;font-size:17px;line-height:1.4;color:var(--muted)}
.pp-moment figcaption b{display:block;font-family:var(--head);font-size:23px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text);margin-bottom:4px}
.pp-page .pp-turn{display:flex;align-items:center;justify-content:center;gap:18px;max-width:980px;margin:60px auto 0;text-align:center;
  font-family:var(--head);font-weight:500;font-size:clamp(22px,2.2vw,30px);line-height:1.25;letter-spacing:.01em;color:var(--text);background:none;box-shadow:none;border:0;padding:0}
.pp-turn i{flex-shrink:0;width:44px;height:3px;background:var(--pp)}
@media (prefers-reduced-motion:reduce){.pp-note{transform:none;opacity:1;transition:none}}

/* ---------- how it works: three nodes on one line ---------- */
.pp-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;position:relative;counter-reset:none}
.pp-flow::before{content:"";position:absolute;top:40px;left:calc(16.6% + 20px);right:calc(16.6% + 20px);height:2px;
  background:repeating-linear-gradient(90deg,var(--pp) 0 10px,transparent 10px 18px);opacity:.55}
.pp-flow li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;position:relative}
.pp-node{position:relative;width:82px;height:82px;display:grid;place-items:center;color:var(--pp-ink);margin-bottom:10px;border-radius:22px;
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line),0 18px 34px -16px rgba(0,0,0,.6)}
html.light .pp-node{background:linear-gradient(180deg,#fff,#F1F3F7);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(16,24,40,.06),0 2px 4px rgba(16,24,40,.06),0 16px 30px -14px rgba(16,24,40,.3)}
.pp-node svg{width:34px;height:34px}
.pp-node i{position:absolute;top:-9px;right:-12px;font-style:normal;font-family:var(--head);font-weight:600;font-size:14px;letter-spacing:.04em;
  padding:3px 8px;border-radius:999px;background:var(--pp);color:#fff}
.pp-flow b{font-family:var(--head);font-size:26px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;line-height:1.05}
.pp-flow p{font-size:18px;color:var(--muted);max-width:30ch}

/* ---------- what is included: six raised tiles ---------- */
.pp-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pp-tile{display:grid;grid-template-columns:50px 1fr;grid-template-rows:auto 1fr;column-gap:16px;row-gap:4px;align-items:start;padding:22px;
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line),0 18px 34px -22px rgba(0,0,0,.6);border-radius:16px}
html.light .pp-tile{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.05),0 1px 2px rgba(16,24,40,.06),0 12px 26px -14px rgba(16,24,40,.22)}
.pp-tile .ic{grid-row:1 / 3;width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--pp-soft);color:var(--pp-ink)}
.pp-tile .ic svg{width:24px;height:24px}
.pp-tile b{font-family:var(--head);font-size:22px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;line-height:1.1;padding-top:2px}
.pp-tile p{font-size:17px;line-height:1.4;color:var(--muted)}

/* ---------- works with what you have: the CRM names as chips ---------- */
.pp-plug{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pp-plug-g{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:16px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .pp-plug-g{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.05),0 1px 2px rgba(16,24,40,.06),0 12px 26px -14px rgba(16,24,40,.22)}
.pp-plug-g.ours{box-shadow:inset 0 0 0 1px var(--blue),0 18px 36px -18px rgba(51,85,224,.55)}
html.light .pp-plug-g.ours{box-shadow:0 0 0 1px rgba(51,85,224,.45),0 16px 32px -14px rgba(51,85,224,.35)}
.pp-plug-g small{display:flex;align-items:center;gap:8px;font-family:var(--head);font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pp-plug-g small svg{width:18px;height:18px;color:var(--pp-ink)}
.pp-plug-g>div{display:flex;flex-wrap:wrap;gap:8px}
.pp-plug-g p{font-size:16px;color:var(--muted);margin-top:auto}
.pp-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;font-size:16px;font-weight:500;color:var(--text);
  background:var(--panel2);box-shadow:inset 0 0 0 1px var(--line2)}
html.light .pp-chip{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.08),0 2px 6px -2px rgba(16,24,40,.15)}
.pp-chip.ok::before{content:"";width:8px;height:8px;border-radius:50%;background:#2fbf71}
.pp-chip.ask::before{content:"";width:8px;height:8px;border-radius:50%;background:#e7a008}
html .pp-chip.ours{background:var(--blue);color:#fff;box-shadow:0 8px 18px -8px rgba(51,85,224,.7)}

/* ---------- custom builds, one lit at a time (the hero visual) ---------- */
.bl .in{padding:22px;display:flex;flex-direction:column;gap:16px}
.bl .vis-top{margin-bottom:0}
.bl-body{display:grid;grid-template-columns:minmax(0,210px) minmax(0,1fr);gap:16px}
.bl-list{display:grid;gap:8px;align-content:start}
.bl-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 13px;border:0;cursor:pointer;text-align:left;font:inherit;font-size:16px;color:var(--muted);
  background:var(--panel2);box-shadow:inset 0 0 0 1px var(--line);transition:color .2s,box-shadow .2s,transform .2s var(--ease)}
.bl-item svg{width:18px;height:18px;flex-shrink:0;color:var(--dim)}
.bl-item:hover{color:var(--text);transform:translateX(3px)}
.bl-item[aria-pressed=true]{color:var(--text);box-shadow:inset 3px 0 0 var(--pp),0 0 0 1px var(--pp),0 12px 24px -14px var(--pp)}
.bl-item[aria-pressed=true] svg{color:var(--pp-ink)}
.bl-cards{min-width:0}
.bl-card{display:flex;flex-direction:column;gap:6px;animation:blIn .45s var(--ease)}
.bl-card[hidden]{display:none}
@keyframes blIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.bl-step{padding:14px 16px;background:var(--panel2);box-shadow:inset 0 0 0 1px var(--line)}
.bl-step small{display:block;font-family:var(--head);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.bl-step b{font-weight:500;font-size:18px;line-height:1.3}
.bl-step.you{box-shadow:inset 3px 0 0 var(--pp),inset 0 0 0 1px var(--line)}
.bl-step.you small{color:var(--pp-ink)}
.bl-arrow{display:block;width:2px;height:14px;margin-left:24px;background:var(--pp);opacity:.6}
.bl-core{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--pp-soft);color:var(--text)}
.bl-core>svg{width:26px;height:26px;color:var(--pp-ink);flex-shrink:0}
.bl-core b{display:block;font-family:var(--head);font-size:18px;letter-spacing:.04em;text-transform:uppercase;line-height:1.1}
.bl-core small{font-size:14px;color:var(--muted)}
html.light .island :is(.bl-item,.bl-step){background:#fff;box-shadow:var(--raise)}
html.light .island .bl-item[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--pp),0 0 0 1px color-mix(in srgb,var(--pp) 45%,transparent),0 12px 24px -12px color-mix(in srgb,var(--pp) 45%,transparent)}
html.light .island .bl-step.you{box-shadow:inset 3px 0 0 var(--pp),var(--raise)}

/* ---------- phone and tablet ---------- */
@media (max-width:1100px){
  .pp-head{grid-template-columns:1fr;align-items:start}
  .pp-tiles,.pp-plug{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .pp-page .p-hero{padding:120px 0 64px}
  .pp-moments{grid-template-columns:1fr;max-width:460px;margin:0 auto}
  .pp-lock{min-height:210px}
  .pp-flow{grid-template-columns:1fr;gap:34px}
  .pp-flow::before{display:none}
  .bl-body{grid-template-columns:1fr}
  .bl-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .pp-tiles,.pp-plug{grid-template-columns:1fr}
  .pp-turn{flex-direction:column;gap:12px}
  html .pp-page .pp-motif{opacity:.1}
}

/* =====================================================================================
   REAL EXAMPLES (W04, Sam 2026-10-12: "use the real estate to show as many real-life examples and visuals of
   the system and its features as possible; all the little details matter"). Software windows for the sample
   business. Shared pieces first, then one block per visual. Still no per-page rules: these are per VISUAL.
   ===================================================================================== */
.pp-showcase .pp-cue{margin-bottom:18px}
.sx{position:relative}
.sc-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);align-items:stretch}
.sc-row.mid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr)}
.sc{margin:0;min-width:0;display:flex;flex-direction:column;gap:12px;position:relative}
.sc figcaption{display:flex;align-items:center;gap:10px;font-family:var(--head);font-size:19px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}
.sc figcaption i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:14px;background:var(--pp);color:#fff;flex-shrink:0}
.sc:not(:last-child)::after{content:"";position:absolute;top:13px;right:calc(-1 * clamp(16px,2vw,28px));width:clamp(16px,2vw,28px);height:2px;
  background:repeating-linear-gradient(90deg,var(--pp) 0 5px,transparent 5px 9px);opacity:.6}
.sc-win{flex:1;display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:var(--panel);color:var(--text);
  box-shadow:inset 0 0 0 1px var(--line),0 24px 48px -22px rgba(0,0,0,.7)}
html.light .sc-win{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 2px 4px rgba(16,24,40,.05),0 24px 48px -20px rgba(16,24,40,.3)}
.sc-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--panel2);border-bottom:1px solid var(--line)}
html.light .sc-bar{background:linear-gradient(180deg,#F8F9FB,#EFF1F5)}
.sc-bar i{width:9px;height:9px;border-radius:50%;background:var(--line2)}
.sc-bar i:nth-child(1){background:#ef6a5e}.sc-bar i:nth-child(2){background:#f4bf4f}.sc-bar i:nth-child(3){background:#61c454}
.sc-bar b{margin-left:8px;font-size:13px;font-weight:500;color:var(--muted)}
.sc-body{flex:1;padding:16px;font-size:15px;line-height:1.4;display:flex;flex-direction:column;gap:12px;min-width:0}
.sx-chip{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:12.5px;font-weight:500;white-space:nowrap;
  color:var(--muted);box-shadow:inset 0 0 0 1px var(--line2)}
.sx-chip.ok{color:#1c7c4a;background:rgba(47,191,113,.12);box-shadow:none}
.sx-chip.blue{color:#2641b5;background:rgba(51,85,224,.1);box-shadow:none}
.sx-chip.bad{color:#b42318;background:rgba(229,72,77,.12);box-shadow:none}
html:not(.light) .sx-chip.ok{color:#8fe0b6}html:not(.light) .sx-chip.blue{color:var(--pale)}html:not(.light) .sx-chip.bad{color:#ff9b9b}
.cx-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.cx-head b{font-family:var(--head);font-size:20px;letter-spacing:.03em;text-transform:uppercase}
.cx-head small{font-size:13px;color:var(--dim)}
.rx-init{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:linear-gradient(160deg,var(--pp),color-mix(in srgb,var(--pp) 60%,#000));
  color:#fff;font-family:var(--head);font-size:15px;letter-spacing:.04em}

/* tabs */
.tb-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.tb-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:0;border-radius:999px;cursor:pointer;font:inherit;font-size:16px;color:var(--muted);
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line2);transition:color .2s,box-shadow .2s,background .2s}
html.light .tb-tab{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.08),0 2px 6px -2px rgba(16,24,40,.12)}
.tb-tab svg{width:17px;height:17px}
.tb-tab:hover{color:var(--text)}
html .tb-tab[aria-pressed=true]{color:#fff;background:var(--pp);box-shadow:0 10px 22px -10px var(--pp)}
.tb-pane[hidden]{display:none}
.tb-pane{animation:blIn .45s var(--ease)}

/* ---------- reception trail ---------- */
.rx-who{display:flex;align-items:center;gap:10px}
.rx-who>span:nth-child(2){flex:1;min-width:0}
.rx-who b{display:block;font-size:15px}
.rx-who small{font-size:13px;color:var(--dim)}
.rx-av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--pp);color:#fff;flex-shrink:0}
.rx-av svg{width:18px;height:18px}
.rx-call{display:flex;flex-direction:column;gap:9px}
.rx-line{max-width:90%;padding:9px 12px;border-radius:14px;font-size:14.5px;line-height:1.38}
.rx-line small{display:block;font-family:var(--head);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.75;margin-bottom:2px}
.rx-line.ai{align-self:flex-start;background:var(--panel2);box-shadow:inset 0 0 0 1px var(--line);border-bottom-left-radius:4px}
html.light .rx-line.ai{background:#F3F5F9;box-shadow:none}
.rx-line.me{align-self:flex-end;background:var(--blue);color:#fff;border-bottom-right-radius:4px}
.rx-mail{display:flex;flex-direction:column;gap:10px;flex:1}
.rx-from{display:flex;flex-wrap:wrap;gap:4px 6px;font-size:13px;color:var(--muted)}
.rx-from span{margin-left:auto;color:var(--dim)}
.rx-mail h5{font-size:17px;font-weight:600;line-height:1.3}
.rx-mail table{width:100%;border-collapse:collapse;font-size:14px}
.rx-mail th{width:34%;text-align:left;font-weight:500;color:var(--dim);padding:6px 8px 6px 0;vertical-align:top;border-bottom:1px solid var(--line)}
.rx-mail td{padding:6px 0;border-bottom:1px solid var(--line)}
.rx-mail tr:first-child td,.rx-mail tr:first-child th{border-top:1px solid var(--line)}
.rx-note{font-size:14px;padding:9px 11px;border-radius:10px;background:color-mix(in srgb,var(--pp) 10%,transparent);box-shadow:inset 3px 0 0 var(--pp)}
.rx-att{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);margin-top:auto}
.rx-att svg{width:16px;height:16px}
.rx-crm{display:flex;flex-direction:column;gap:12px}
.rx-rec{display:flex;align-items:center;gap:11px}
.rx-rec b{display:block;font-size:17px}
.rx-rec small{font-size:13px;color:var(--dim)}
.rx-chips{display:flex;flex-wrap:wrap;gap:6px}
.rx-tl{list-style:none;display:flex;flex-direction:column;border-left:2px solid var(--line2);margin-left:6px}
.rx-tl li{position:relative;padding:0 0 12px 16px;font-size:14px;line-height:1.35}
.rx-tl li::before{content:"";position:absolute;left:-6px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--pp);box-shadow:0 0 0 3px var(--panel)}
html.light .rx-tl li::before{box-shadow:0 0 0 3px #fff}
.rx-sum{margin-top:auto;padding:10px 12px;border-radius:10px;font-size:14px;line-height:1.4;background:var(--panel2)}
html.light .rx-sum{background:#F3F5F9}
.rx-sum b{display:block;font-family:var(--head);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.rx-crm{flex:1}
.rx-tl time{display:block;font-size:12px;color:var(--dim)}

/* ---------- CRM screens ---------- */
.cx-today{list-style:none;display:flex;flex-direction:column;gap:7px}
.cx-today li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:var(--panel2);box-shadow:inset 0 0 0 1px var(--line)}
html.light .cx-today li{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 2px 5px -2px rgba(16,24,40,.12)}
.cx-today li>span:not(.sx-chip){flex:1;min-width:0}
.cx-today b{display:block;font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cx-today small{font-size:12.5px;color:var(--dim)}
.cx-today li.done b{text-decoration:line-through;color:var(--dim)}
.cx-box{width:20px;height:20px;border-radius:6px;flex-shrink:0;display:grid;place-items:center;font-style:normal;box-shadow:inset 0 0 0 2px var(--line2)}
.done .cx-box{background:#2fbf71;box-shadow:none;color:#fff}
.cx-box svg{width:13px;height:13px}
.cx-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;flex:1}
.cx-col{display:flex;flex-direction:column;gap:6px;padding:6px;border-radius:10px;background:var(--panel2)}
html.light .cx-col{background:#F3F5F9}
.cx-col h6{display:flex;justify-content:space-between;font-family:var(--head);font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:2px 2px 4px}
.cx-col h6 span{color:var(--dim)}
.cx-card{padding:8px;border-radius:8px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);font-size:12.5px;line-height:1.3}
html.light .cx-card{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 2px 4px -2px rgba(16,24,40,.15)}
.cx-card b{display:block;font-size:13px;font-weight:600}
.cx-card small{color:var(--dim)}
html .cx-card.hot{box-shadow:inset 3px 0 0 var(--pp),0 0 0 1px var(--line)}
html .cx-card.late{box-shadow:inset 3px 0 0 #e5484d,0 0 0 1px var(--line)}
html .cx-card.won{box-shadow:inset 3px 0 0 #2fbf71,0 0 0 1px var(--line)}
.cx-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cx-kpis div{padding:9px 11px;border-radius:10px;background:var(--panel2)}
html.light .cx-kpis div{background:#F3F5F9}
.cx-kpis small{display:block;font-size:12px;color:var(--dim)}
.cx-kpis b{font-family:var(--head);font-size:28px;font-weight:600;line-height:1}
.cx-kpis em{font-style:normal;font-size:12px;color:#1c9a5b;margin-left:6px}
.cx-k{font-family:var(--head);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.cx-bars{list-style:none;display:flex;flex-direction:column;gap:7px}
.cx-bars li{display:grid;grid-template-columns:100px 1fr 24px;align-items:center;gap:8px;font-size:13px}
.cx-bars i{height:9px;border-radius:5px;background:linear-gradient(90deg,var(--pp),color-mix(in srgb,var(--pp) 55%,#fff));width:var(--w)}
.cx-bars b{text-align:right}
.cx-alert{display:flex;align-items:center;gap:8px;margin-top:auto;padding:9px 11px;border-radius:10px;font-size:13.5px;color:#9a5b00;background:rgba(231,160,8,.12)}
html:not(.light) .cx-alert{color:#f2c063}
.cx-alert svg{width:16px;height:16px;flex-shrink:0}

/* ---------- site anatomy ---------- */
.sa{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:center}
.sa-stage{position:relative;padding:92px 96px 64px 0}
.sa-win .sc-body{padding:0;gap:0}
.sa-site{display:flex;flex-direction:column;background:#fff;color:#14181d}
.sa-nav{position:relative;display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid #eceff3}
.sa-logo{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#0f3b5f;color:#fff;font-family:var(--head);font-size:13px}
.sa-links{display:flex;gap:10px;flex:1}
.sa-links i{width:44px;height:7px;border-radius:4px;background:#e3e7ed}
.sa-call{position:relative;display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#0f3b5f;color:#fff;font-size:12.5px;font-weight:600}
.sa-call svg{width:13px;height:13px}
.sa-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;padding:20px 16px;background:linear-gradient(160deg,#eef4fb,#fff)}
.sa-hero h5{font-family:var(--head);font-size:26px;line-height:1.02;text-transform:uppercase;color:#0f3b5f}
.sa-stars{position:relative;display:inline-block;margin:8px 0 12px;color:#f5b400;font-size:15px;letter-spacing:1px}
.sa-stars span{color:#4b5563;font-size:12.5px;letter-spacing:0}
.sa-btn{display:inline-block;padding:8px 13px;border-radius:999px;background:#e36b2c;color:#fff;font-size:12.5px;font-weight:600}
.sa-hero .sa-btn{display:table}
.sa-form{position:relative;display:flex;flex-direction:column;gap:7px;padding:12px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px #e5e8ee,0 8px 18px -10px rgba(16,24,40,.3)}
.sa-form b{font-size:13px}
.sa-form>i{height:20px;border-radius:5px;box-shadow:inset 0 0 0 1px #dde1e7}
.sa-form>i.tall{height:36px}
.sa-form>span{align-self:flex-start;padding:5px 12px;border-radius:6px;background:#0f3b5f;color:#fff;font-size:12px}
.sa-tiles{position:relative;display:flex;flex-wrap:wrap;gap:7px;padding:14px 16px 18px}
.sa-tiles span{padding:6px 11px;border-radius:8px;background:#f3f5f8;font-size:12.5px;color:#334155}
.sa-tiles span:nth-child(n+4){background:#eef4fb;color:#0f3b5f}
.sa-phone{position:absolute;right:0;bottom:0;width:150px;padding:30px 10px 14px;border-radius:24px;background:#fff;color:#14181d;display:flex;flex-direction:column;gap:7px;align-items:flex-start;
  box-shadow:0 0 0 6px #1c2027,0 24px 40px -14px rgba(0,0,0,.55)}
.sa-phone b{font-family:var(--head);font-size:15px;line-height:1.05;text-transform:uppercase;color:#0f3b5f}
.sa-phone>i{width:100%;height:8px;border-radius:4px;background:#e3e7ed}
.sa-phone>i.short{width:60%}
.sa-serp{position:absolute;left:38%;top:0;width:250px;padding:11px 13px;border-radius:12px;background:#fff;color:#14181d;display:flex;flex-direction:column;gap:2px;font-size:12.5px;
  box-shadow:0 0 0 1px rgba(16,24,40,.08),0 18px 34px -14px rgba(16,24,40,.45)}
.sa-serp small{color:#4b5563}
.sa-serp b{color:#1a0dab;font-weight:500;font-size:14.5px}
.sa-serp span{color:#b06000}
.sa .sa-dot{position:absolute;z-index:2;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-family:var(--head);font-size:13px;font-weight:600;
  background:var(--pp);color:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--pp) 25%,transparent);transition:transform .2s var(--ease),box-shadow .2s}
.sa-stars .sa-dot{right:-30px;top:-4px}.sa-form .sa-dot{right:-8px;top:-8px}
.sa .sa-nav .sa-dot,.sa .sa-tiles .sa-dot{position:relative;flex-shrink:0;align-self:center}
.sa-phone .sa-dot{left:-10px;top:-10px}.sa-serp .sa-dot{left:-10px;top:-10px}
.sa .sa-dot.lit{transform:scale(1.25);box-shadow:0 0 0 8px color-mix(in srgb,var(--pp) 30%,transparent)}
.sa-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.sa-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;cursor:default;outline:none;transition:background .2s,box-shadow .2s}
.sa-item>i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-style:normal;font-family:var(--head);font-weight:600;font-size:14px;
  color:var(--pp-ink);box-shadow:inset 0 0 0 2px var(--pp)}
.sa-item b{display:block;font-family:var(--head);font-size:20px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;line-height:1.1}
.sa-item span{font-size:16px;color:var(--muted)}
.sa-item.lit,.sa-item:focus-visible{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .sa-item.lit,html.light .sa-item:focus-visible{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 10px 22px -12px rgba(16,24,40,.3)}
.sa-item.lit>i{background:var(--pp);color:#fff}

/* ---------- brain rule ---------- */
.br{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1.15fr);align-items:center}
.br .vb{display:none}
.br.v2 .va{display:none}.br.v2 .vb{display:inline}
.br-rule{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:16px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line),0 24px 48px -22px rgba(0,0,0,.7);transition:box-shadow .3s}
html.light .br-rule{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 24px 48px -20px rgba(16,24,40,.3)}
html .br.v2 .br-rule{box-shadow:0 0 0 2px var(--pp),0 24px 48px -20px color-mix(in srgb,var(--pp) 50%,transparent)}
.br-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--dim)}
.br-meta span{display:inline-flex;align-items:center;gap:6px}
.br-meta svg{width:16px;height:16px;color:var(--pp-ink)}
.br-meta em{font-style:normal;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--pp) 14%,transparent);color:var(--pp-ink)}
.br-rule h5{font-family:var(--head);font-size:26px;text-transform:uppercase;line-height:1}
.br-rule p{font-size:17px;line-height:1.45}
.br-rule .br-by{font-size:13px;color:var(--dim)}
.br-change{align-self:flex-start}
.br-hint{margin-top:12px;font-size:15px;color:var(--muted);text-align:center}
.br-lines{display:flex;flex-direction:column;justify-content:space-around;align-self:stretch;padding:40px 0}
.br-lines i{height:2px;background:repeating-linear-gradient(90deg,var(--pp) 0 6px,transparent 6px 11px);opacity:.7}
.br.v2 .br-lines i{animation:brFlow .8s linear 2}
@keyframes brFlow{to{background-position:22px 0}}
.br-outs{display:flex;flex-direction:column;gap:12px}
.br-out{padding:14px 16px;border-radius:14px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .br-out{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 10px 24px -14px rgba(16,24,40,.28)}
.br.flash .br-out{animation:brPulse .9s var(--ease)}
@keyframes brPulse{30%{box-shadow:0 0 0 2px var(--pp),0 14px 30px -12px var(--pp)}}
.br-k{display:flex;align-items:center;gap:7px;font-family:var(--head);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.br-k svg{width:16px;height:16px;color:var(--pp-ink)}
.br-q{margin-top:6px;font-size:14.5px;color:var(--muted)}
.br-a{margin-top:4px;font-size:16.5px;font-weight:500;line-height:1.35}
.br-src{margin-top:6px;font-size:12.5px;color:var(--dim)}

/* ---------- build screens ---------- */
.bx-quote{width:100%;border-collapse:collapse;font-size:13.5px}
.bx-quote th{font-weight:500;font-size:12px;color:var(--dim);text-align:left;padding:4px 0;border-bottom:1px solid var(--line)}
.bx-quote td{padding:7px 0;border-bottom:1px solid var(--line);vertical-align:top}
.bx-quote td small{display:block;font-size:11.5px;color:var(--pp-ink)}
.bx-quote :is(th,td):nth-child(2){text-align:center;width:36px}
.bx-quote :is(th,td):nth-child(3){text-align:right;white-space:nowrap}
.bx-quote tfoot td{font-weight:600;font-size:15px;border:0;padding-top:9px}
.bx-flag{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:10px;font-size:13px;background:color-mix(in srgb,var(--pp) 10%,transparent)}
.bx-flag svg{width:16px;height:16px;color:var(--pp-ink);flex-shrink:0}
.bx-acts{display:flex;gap:8px;align-items:center;margin-top:auto}
.bx-acts .sa-btn{background:var(--blue)}
.bx-ghost{padding:7px 12px;border-radius:999px;font-size:12.5px;box-shadow:inset 0 0 0 1px var(--line2)}
.bx-steps{list-style:none;display:flex;flex-direction:column}
.bx-steps li{position:relative;display:flex;gap:12px;padding-bottom:14px}
.bx-steps li:not(:last-child)::after{content:"";position:absolute;left:8px;top:20px;bottom:0;width:2px;background:var(--line2)}
.bx-steps li.done:not(:last-child)::after{background:#2fbf71}
.bx-steps li>i{width:18px;height:18px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 2px var(--line2);background:var(--panel)}
.bx-steps .done>i{background:#2fbf71;box-shadow:none}
.bx-steps .now>i{background:var(--pp);box-shadow:none;animation:fdlPulse 1.6s ease-out infinite}
.bx-steps b{display:block;font-size:14.5px}
.bx-steps small{font-size:12.5px;color:var(--dim)}
.bx-steps li:not(.done):not(.now) b{color:var(--dim);font-weight:500}
.bx-tech{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:var(--panel2)}
html.light .bx-tech{background:#F3F5F9}
.bx-tech b{display:block;font-size:14px}.bx-tech small{font-size:12.5px;color:var(--dim)}
.bx-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:auto}
.bx-photos i{aspect-ratio:1;border-radius:8px;overflow:hidden;background:#20262f}
.bx-photos svg{width:100%;height:100%;display:block}
.bx-photos span{grid-column:1 / -1;font-size:12.5px;color:var(--dim)}
.bx-rep{list-style:none;display:flex;flex-direction:column;gap:8px}
.bx-rep li{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;padding:9px 11px;border-radius:10px;background:var(--panel2);font-size:14px}
html.light .bx-rep li{background:#F3F5F9}
.bx-rep b{font-family:var(--head);font-size:22px;font-weight:600;color:var(--pp-ink)}
.bx-rep i{font-style:normal;font-weight:700}
.bx-rep .up{color:#1c9a5b}.bx-rep .warn{color:#c2410c}
.bx-next{display:flex;gap:9px;margin-top:auto;padding:11px 12px;border-radius:10px;font-size:14px;box-shadow:inset 3px 0 0 var(--pp);background:color-mix(in srgb,var(--pp) 9%,transparent)}
.bx-next svg{width:17px;height:17px;flex-shrink:0;color:var(--pp-ink)}

@media (max-width:1100px){
  .sc-row,.sc-row.mid{grid-template-columns:1fr;max-width:560px;margin-inline:auto}
  .sc:not(:last-child)::after{top:auto;bottom:calc(-1 * clamp(16px,2vw,28px));left:24px;right:auto;width:2px;height:clamp(16px,2vw,28px);
    background:repeating-linear-gradient(180deg,var(--pp) 0 5px,transparent 5px 9px)}
  .sa{grid-template-columns:minmax(0,1fr)}
  .br{grid-template-columns:1fr;gap:18px}
  .br-lines{display:none}
}
@media (max-width:600px){
  .sa-stage{padding:0;display:flex;flex-direction:column;align-items:center;gap:22px}
  .sa-hero{grid-template-columns:1fr}
  .sa .sa-serp,.sa .sa-phone{position:relative;left:auto;right:auto;top:auto;bottom:auto}
  .sa .sa-serp{width:100%;max-width:320px;order:-1}
  .sa .sa-phone{width:170px}
  .sa .sa-win{width:100%;min-width:0}
  .sa-links{display:none}
  .sa-nav{justify-content:space-between}
  .sa-hero h5{font-size:22px}
  .cx-board{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* =====================================================================================
   W05 (independent review 2026-10-12): the story across pages. The lead-to-cash strip under every hero,
   a result card + the sample week at the end of every real example, visitor-number calculators,
   the team-asks visual, the workday feed, and phone-first heroes.
   ===================================================================================== */
/* ---------- the lead-to-cash strip ---------- */
.pp-rail{padding:8px 0 40px;position:relative}
.rl-k{font-family:var(--head);font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:12px}
.rl-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;position:relative}
.rl-step{position:relative;display:flex;flex-direction:column;gap:3px;padding:14px 14px 13px;border-radius:14px;text-decoration:none;color:var(--text);
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:transform .2s var(--ease),box-shadow .2s}
html.light .rl-step{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 6px 16px -10px rgba(16,24,40,.25)}
.rl-step:not(:last-child)::after{content:"";position:absolute;right:-9px;top:50%;width:8px;height:8px;margin-top:-4px;border-top:2px solid var(--line2);border-right:2px solid var(--line2);transform:rotate(45deg)}
.rl-step:hover{transform:translateY(-2px)}
.rl-ic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--panel2);color:var(--muted);margin-bottom:4px}
html.light .rl-ic{background:#F1F3F7}
.rl-ic svg{width:17px;height:17px}
.rl-step b{font-family:var(--head);font-size:18px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;line-height:1.05}
.rl-step small{font-size:13.5px;line-height:1.3;color:var(--muted)}
html .rl-step.on{box-shadow:inset 0 0 0 2px var(--pp),0 14px 30px -14px var(--pp)}
.rl-step.on .rl-ic{background:var(--pp);color:#fff}
.rl-base{display:flex;align-items:center;gap:10px;margin-top:10px;padding:11px 16px;border-radius:12px;text-decoration:none;color:var(--muted);font-size:15px;
  background:repeating-linear-gradient(90deg,transparent 0 10px,color-mix(in srgb,var(--line) 60%,transparent) 10px 11px),var(--panel2)}
html.light .rl-base{background:#EEF1F6}
.rl-base svg{width:20px;height:20px;color:#d97706;flex-shrink:0}
.rl-base b{color:var(--text);font-family:var(--head);font-size:17px;letter-spacing:.03em;text-transform:uppercase;margin-right:4px}
html .rl-base.on{box-shadow:inset 0 0 0 2px var(--pp);color:var(--text)}

/* ---------- the result card + the sample week ---------- */
.pp-result{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;margin-top:28px}
.rs-card{padding:18px 20px;border-radius:16px;background:color-mix(in srgb,#2fbf71 9%,var(--panel));box-shadow:inset 4px 0 0 #2fbf71,inset 0 0 0 1px var(--line)}
html.light .rs-card{background:linear-gradient(180deg,#F2FBF6,#fff);box-shadow:inset 4px 0 0 #2fbf71,0 0 0 1px rgba(16,24,40,.06),0 12px 26px -16px rgba(16,24,40,.3)}
.rs-card small{display:flex;align-items:center;gap:6px;font-family:var(--head);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#1c9a5b}
html:not(.light) .rs-card small{color:#8fe0b6}
.rs-card small svg{width:16px;height:16px}
.rs-card b{display:block;margin-top:6px;font-family:var(--head);font-size:26px;font-weight:600;line-height:1.1}
.rs-card p{margin-top:6px;font-size:16px;color:var(--muted)}
.rs-week{padding:16px 18px;border-radius:16px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .rs-week{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 12px 26px -16px rgba(16,24,40,.3)}
.rs-week small{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--dim)}
.rs-week em{font-style:normal;padding:1px 8px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line2)}
.rs-week div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:10px}
.rs-week span{display:flex;flex-direction:column;font-size:12.5px;line-height:1.2;color:var(--muted)}
.rs-week span b{font-family:var(--head);font-size:30px;font-weight:600;line-height:1;color:var(--pp-ink)}

/* ---------- calculators (the visitor's own numbers) ---------- */
.cc{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:stretch;padding:24px;border-radius:18px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .cc{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 24px 48px -24px rgba(16,24,40,.3)}
.cc-ins{display:flex;flex-direction:column;gap:20px}
.cc-in span{display:flex;justify-content:space-between;gap:12px;font-size:17px;margin-bottom:8px}
.cc-in output{font-family:var(--head);font-size:24px;font-weight:600;color:var(--pp-ink)}
.cc-in input{width:100%;accent-color:var(--pp);height:6px}
.cc-out{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:22px;border-radius:14px;background:color-mix(in srgb,var(--pp) 10%,var(--panel2))}
html.light .cc-out{background:color-mix(in srgb,var(--pp) 7%,#fff)}
.cc-out small{font-family:var(--head);font-size:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cc-sum{font-family:var(--head);font-size:clamp(46px,5vw,68px);font-weight:700;line-height:1;color:var(--pp-ink)}
.cc-out p{font-size:14.5px;color:var(--muted)}

/* ---------- the team asks the brain ---------- */
.ba{display:flex;flex-direction:column;gap:10px}
.ba-head,.ba-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1.3fr);gap:14px;align-items:center}
.ba-head span{font-family:var(--head);font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.ba-head .new{color:var(--pp-ink)}
.ba-row{padding:12px;border-radius:14px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .ba-row{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 8px 20px -14px rgba(16,24,40,.28)}
.ba-q{display:flex;align-items:center;gap:10px}
.ba-q p{font-weight:600;font-size:16px;line-height:1.3}
.ba-old{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:12px;background:var(--panel2);font-size:13.5px;color:var(--muted)}
html.light .ba-old{background:#F3F5F9}
.ba-old span{display:flex;align-items:center;gap:6px}
.ba-old svg{width:15px;height:15px}
.ba-old em{font-style:normal;color:#c2410c;font-size:13px}
html:not(.light) .ba-old em{color:#f2c063}
.ba-new{padding:10px 13px;border-radius:12px;background:color-mix(in srgb,var(--pp) 9%,transparent);box-shadow:inset 3px 0 0 var(--pp)}
.ba-new p{font-size:15.5px;line-height:1.38}
.ba-new small{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:12.5px;color:var(--dim)}
.ba-new small svg{width:14px;height:14px;color:var(--pp-ink)}

/* ---------- the workday feed ---------- */
.wd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(24px,4vw,56px);align-items:center}
.wd-side{display:flex;flex-direction:column;gap:22px}
.wd-you{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center}
.wd-ladder{grid-row:1 / 3;width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--pp);color:#fff}
.wd-ladder svg{width:28px;height:28px}
.wd-you b{font-family:var(--head);font-size:24px;text-transform:uppercase;line-height:1}
.wd-you small{font-size:15.5px;color:var(--muted)}
.wd-clock span{display:flex;justify-content:space-between;font-family:var(--head);font-size:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.wd-clock output{font-size:28px;color:var(--text);letter-spacing:.02em}
.wd-clock input{width:100%;accent-color:var(--pp)}
.wd-count{font-size:18px;color:var(--muted)}
.wd-count b{font-family:var(--head);font-size:44px;line-height:1;color:var(--pp-ink);margin-right:6px}
.wd-phone{border-radius:40px;padding:10px;background:linear-gradient(160deg,#3a404c,#14171d 60%);box-shadow:var(--lift),inset 0 0 0 1px rgba(255,255,255,.14);max-width:440px;width:100%;justify-self:center}
.wd-screen{border-radius:31px;background:#f4f6f9;color:#111;padding:18px 14px;height:560px;overflow:hidden;display:flex;flex-direction:column}
.wd-top{display:flex;justify-content:space-between;align-items:baseline;padding:0 6px 12px}
.wd-top b{font-size:22px}
.wd-top small{font-size:12.5px;color:#6b7280}
.wd-list{list-style:none;display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:8px}
.wd-item{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:start;padding:10px 11px;border-radius:14px;background:#fff;
  box-shadow:0 0 0 1px rgba(16,24,40,.05),0 4px 10px -6px rgba(16,24,40,.2);transition:opacity .3s,transform .35s var(--ease)}
.wd-item[hidden]{display:grid;opacity:0;transform:translateY(-8px);height:0;padding:0 11px;margin:-4px 0;overflow:hidden}
.wd-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--pp);color:#fff}
.wd-ic svg{width:17px;height:17px}
.wd-t b{display:block;font-size:14px}
.wd-t b{line-height:1.25}
.wd-t small{display:block;font-size:12.5px;line-height:1.35;color:#4b5563;margin-top:2px}
.wd-meta{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:11.5px;color:#6b7280;white-space:nowrap}
.wd-meta em{font-style:normal;padding:1px 7px;border-radius:999px;background:#eef1f6;color:#374151}

/* ---------- the early demo (content: the free posts straight under the hero) ---------- */
.pp-rail+#try{padding-top:30px}

/* ---------- phone-first heroes: the demo shows before the fact row ---------- */
@media (max-width:860px){
  .pp-stage .wrap{display:flex;flex-direction:column;gap:0}
  .pp-stage .pp-kicker{margin-bottom:12px}
  .pp-stage .h-lg{margin-bottom:16px}
  .pp-stage .pp-btns{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
  .pp-stage .pp-btns .btn{margin:0}
  .pp-stage .pp-head,.pp-stage .pp-head>div{display:contents}
  .pp-stage .pp-show{order:1;margin-top:8px}
  .pp-stage .facts{order:2;margin-top:28px}
  .rl-steps{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
  .rl-step{scroll-snap-align:start}
  .pp-result,.cc,.wd{grid-template-columns:1fr}
  .ba-head{display:none}
  .ba-row{grid-template-columns:1fr}
}
@media (max-width:600px){
  .pp-stage .crumb{display:none}
  .pp-page .p-hero{padding-top:104px}
  .pp-stage .lead{font-size:17px;margin-bottom:18px}
  .rs-week div{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}
  .wd-screen{height:520px}
}
html .cc-in input,html .wd-clock input{background:linear-gradient(90deg,var(--pp) var(--p,50%),var(--panel3) var(--p,50%));border-radius:3px}
html .cc-in input::-webkit-slider-thumb,html .wd-clock input::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb,var(--pp) 45%,transparent)}
.wd-by{display:flex;flex-wrap:wrap;gap:8px}
.wd-by span{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 6px;border-radius:999px;font-size:14.5px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:opacity .2s}
html.light .wd-by span{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 3px 8px -4px rgba(16,24,40,.2)}
.wd-by span b{min-width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:var(--pp);color:#fff;font-size:13px}
.wd-by span.zero{opacity:.45}

/* =====================================================================================
   W06: the homepage map + three demos (lead to won, photo to post, taps to leads)
   ===================================================================================== */
.pp-home .pp-rail{padding-top:30px}
.pp-home #workday{padding-top:40px}

/* ---------- lead to won ---------- */
.lw{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.lw-board .sc-body{position:relative;min-height:250px}
.lw-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;flex:1}
.lw-col{position:relative;min-height:200px;padding:8px;border-radius:10px;background:var(--panel2);transition:box-shadow .3s}
html.light .lw-col{background:#F3F5F9}
.lw-col h6{font-family:var(--head);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lw-col.on{box-shadow:inset 0 0 0 2px var(--pp)}
.lw-card{margin-top:8px;display:flex;align-items:center;gap:8px;padding:9px;border-radius:10px;
  background:var(--panel);box-shadow:inset 3px 0 0 var(--pp),0 0 0 1px var(--line),0 12px 24px -12px rgba(0,0,0,.5)}
.lw-card.moved{animation:lwIn .5s var(--ease)}
@keyframes lwIn{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:none}}
html.light .lw-card{background:#fff;box-shadow:inset 3px 0 0 var(--pp),0 0 0 1px rgba(16,24,40,.08),0 12px 24px -12px rgba(16,24,40,.35)}
.lw-card .rx-init{width:30px;height:30px;font-size:12px}
.lw-card b{display:block;font-size:13.5px;line-height:1.2}
.lw-card small{font-size:11.5px;color:var(--dim)}
.lw-card.won{box-shadow:inset 3px 0 0 #2fbf71,0 0 0 2px #2fbf71,0 14px 30px -12px rgba(47,191,113,.6)}
.lw-ctl{display:flex;align-items:center;gap:14px;margin-top:16px;flex-wrap:wrap}
.lw-reset{border:0;background:none;font:inherit;font-size:15px;color:var(--muted);text-decoration:underline;cursor:pointer}
.lw-prog{margin-left:auto;font-size:15px;color:var(--muted)}
.lw-prog b{font-family:var(--head);font-size:22px;color:var(--pp-ink)}
.lw-log{list-style:none;display:flex;flex-direction:column;gap:8px}
.lw-ev{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:start;padding:11px 12px;border-radius:12px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);animation:blIn .45s var(--ease)}
html.light .lw-ev{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.06),0 6px 14px -10px rgba(16,24,40,.3)}
.lw-ev[hidden]{display:none}
.lw-ev.now{box-shadow:inset 0 0 0 2px var(--pp)}
.lw-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--pp) 14%,transparent);color:var(--pp-ink)}
.lw-ic svg{width:18px;height:18px}
.lw-ev time{display:block;font-size:12px;color:var(--dim)}
.lw-ev b{display:block;font-size:15px}
.lw-ev small{font-size:13.5px;line-height:1.35;color:var(--muted)}
.lw-ev em{font-style:normal;font-size:12px;padding:2px 8px;border-radius:999px;white-space:nowrap}
.lw-ev em.by-sys{color:#2641b5;background:rgba(51,85,224,.1)}
.lw-ev em.by-you{color:#9a5b00;background:rgba(231,160,8,.14)}
html:not(.light) .lw-ev em.by-sys{color:var(--pale)}html:not(.light) .lw-ev em.by-you{color:#f2c063}

/* ---------- photo to post ---------- */
.ph2p{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:start}
.ph2p-k{font-family:var(--head);font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.ph2p-k+.ph2p-steps{margin-top:0}
.ph2p-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:26px}
.pp-pick{display:flex;flex-direction:column;gap:8px;padding:8px;border:0;border-radius:14px;cursor:pointer;font:inherit;font-size:14px;color:var(--text);text-align:left;
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:transform .2s var(--ease),box-shadow .2s}
html.light .pp-pick{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 8px 18px -12px rgba(16,24,40,.35)}
.pp-pick:hover{transform:translateY(-3px)}
html .pp-pick[aria-pressed=true]{box-shadow:0 0 0 2px var(--pp),0 14px 28px -14px var(--pp)}
.pp-thumb{display:block;aspect-ratio:1;border-radius:10px;overflow:hidden}
.pp-thumb svg{width:100%;height:100%;display:block}
.ph2p-steps{list-style:none;display:flex;flex-direction:column;gap:8px}
.ph2p-steps li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;font-size:16px;color:var(--dim);background:var(--panel2);transition:color .3s,background .3s}
html.light .ph2p-steps li{background:#F3F5F9}
.ph2p-steps svg{width:18px;height:18px;flex-shrink:0}
.ph2p-steps li.done{color:var(--text)}
.ph2p-steps li.done svg{color:#2fbf71}
.ph2p-steps li.busy{color:var(--text);box-shadow:inset 3px 0 0 var(--pp)}
.ph2p-right{position:relative;min-height:420px}
.ph2p-empty{height:100%;min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-radius:18px;color:var(--dim);font-size:16px;
  box-shadow:inset 0 0 0 2px var(--line2);background:repeating-linear-gradient(135deg,transparent 0 12px,color-mix(in srgb,var(--line) 50%,transparent) 12px 13px)}
.ph2p-empty svg{width:40px;height:40px}
.pp-made{max-width:420px;margin:0 auto;border-radius:18px;overflow:hidden;animation:blIn .5s var(--ease);
  box-shadow:0 0 0 1px rgba(16,24,40,.06),0 24px 48px -20px rgba(16,24,40,.4)}
.pp-made[hidden]{display:none}

/* ---------- taps to leads ---------- */
.stp{display:grid;grid-template-columns:minmax(0,320px) 60px minmax(0,1fr);gap:16px;align-items:center}
.st-phone{border-radius:40px;padding:10px;background:linear-gradient(160deg,#3a404c,#14171d 60%);box-shadow:var(--lift),inset 0 0 0 1px rgba(255,255,255,.14)}
.st-screen{border-radius:31px;background:#fff;color:#14181d;overflow:hidden;min-height:480px;display:flex;flex-direction:column}
.st-url{font-size:12px;color:#6b7280}
.st-hero{padding:22px 16px;background:linear-gradient(160deg,#eef4fb,#fff)}
.st-hero b{display:block;font-family:var(--head);font-size:26px;line-height:1.02;text-transform:uppercase;color:#0f3b5f}
.st-btns{display:flex;flex-direction:column;gap:10px;padding:16px}
.st-tap{display:flex;align-items:center;justify-content:center;gap:9px;padding:14px;border:0;border-radius:999px;cursor:pointer;font:inherit;font-size:16px;font-weight:600;
  color:#fff;background:#e36b2c;box-shadow:0 8px 18px -10px rgba(227,107,44,.8);transition:transform .15s}
.st-tap:nth-child(2){background:#0f3b5f;box-shadow:0 8px 18px -10px rgba(15,59,95,.8)}
.st-tap:nth-child(3){background:#fff;color:#0f3b5f;box-shadow:inset 0 0 0 2px #0f3b5f}
.st-tap svg{width:18px;height:18px}
.st-tap:active{transform:scale(.97)}
.st-tap.done{opacity:.55}
.st-hint{margin-top:auto;padding:12px;text-align:center;font-size:13px;color:#6b7280}
.st-arrow{height:2px;background:repeating-linear-gradient(90deg,var(--pp) 0 6px,transparent 6px 11px);position:relative}
.st-arrow i{position:absolute;right:-2px;top:-5px;width:12px;height:12px;border-top:2px solid var(--pp);border-right:2px solid var(--pp);transform:rotate(45deg)}
.stp .sc-body{min-height:320px}
.st-leads{list-style:none;display:flex;flex-direction:column;gap:8px}
.st-lead{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:12px;background:var(--panel2);animation:stDrop .5s var(--ease)}
html.light .st-lead{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 6px 14px -8px rgba(16,24,40,.3)}
.st-lead[hidden]{display:none}
@keyframes stDrop{from{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:none}}
.st-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--pp);color:#fff}
.st-ic svg{width:18px;height:18px}
.st-lead b{display:block;font-size:15px}
.st-lead small{font-size:13px;color:var(--muted)}
.st-wait{display:flex;align-items:center;gap:8px;margin-top:auto;font-size:14px;color:var(--dim)}
.st-wait svg{width:18px;height:18px}

@media (max-width:900px){
  .lw,.ph2p{grid-template-columns:1fr}
  .stp{grid-template-columns:1fr;justify-items:stretch}
  .stp>.rv:first-child{max-width:320px;margin:0 auto;width:100%}
  .st-arrow{width:2px;height:40px;margin:0 auto;background:repeating-linear-gradient(180deg,var(--pp) 0 6px,transparent 6px 11px)}
  .st-arrow i{right:-5px;top:auto;bottom:-2px;transform:rotate(135deg)}
}
@media (max-width:600px){
  .lw-cols{gap:4px}
  .lw-col h6{font-size:11px}
  .lw-card{padding:6px;flex-direction:column;align-items:flex-start;gap:4px}
  .lw-card small{display:none}
}
.ph2p-empty[hidden],.st-wait[hidden]{display:none}

/* =====================================================================================
   W07: rule tester, trade week, who sees what, build screens in the custom builds hero
   ===================================================================================== */
.rt-k{font-family:var(--head);font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.rt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.1fr);gap:clamp(16px,2.4vw,32px);align-items:start}
.rt-rules,.rt-callers{display:flex;flex-direction:column;gap:8px}
.rt-sw{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;cursor:pointer;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
html.light .rt-sw{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 6px 14px -10px rgba(16,24,40,.3)}
.rt-sw.locked{cursor:default;opacity:.75}
.rt-sw input{position:absolute;opacity:0;pointer-events:none}
.rt-sw>i{position:relative;flex-shrink:0;width:40px;height:22px;border-radius:999px;background:var(--line2);transition:background .2s}
.rt-sw>i::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s var(--ease)}
.rt-sw input:checked+i{background:var(--pp)}
.rt-sw input:checked+i::after{transform:translateX(18px)}
.rt-sw input:focus-visible+i{box-shadow:0 0 0 3px color-mix(in srgb,var(--pp) 40%,transparent)}
.rt-sw b{display:block;font-size:15.5px}
.rt-sw small{font-size:13px;color:var(--dim)}
.rt-caller{display:flex;align-items:center;gap:10px;padding:11px 13px;border:0;border-radius:12px;cursor:pointer;font:inherit;text-align:left;color:var(--text);
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s,transform .2s var(--ease)}
html.light .rt-caller{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 6px 14px -10px rgba(16,24,40,.3)}
.rt-caller:hover{transform:translateX(3px)}
html .rt-caller[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--pp),0 0 0 2px var(--pp)}
.rt-caller svg{width:20px;height:20px;flex-shrink:0;color:var(--pp-ink)}
.rt-caller b{display:block;font-size:14.5px}
.rt-caller small{font-size:13.5px;color:var(--muted)}
.rt-reply{padding:18px;border-radius:16px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);min-height:170px}
html.light .rt-reply{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 18px 36px -18px rgba(16,24,40,.35)}
.rt-say{padding:11px 14px;border-radius:14px;border-bottom-left-radius:4px;font-size:16px;line-height:1.4;background:var(--panel2)}
html.light .rt-say{background:#F3F5F9}
.rt-say::before{content:"Receptionist";display:block;font-family:var(--head);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:3px}
.rt-do{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14.5px;font-weight:500;color:#1c7c4a}
.rt-do.no{color:#b42318}
html:not(.light) .rt-do{color:#8fe0b6}html:not(.light) .rt-do.no{color:#ff9b9b}
.rt-do::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor;flex-shrink:0}
.rt-reply.pop{animation:blIn .4s var(--ease)}
.rt-note{margin-top:10px;font-size:14px;color:var(--dim)}

.tw .tb-pane{max-width:860px}
.tw-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.tw-list li{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;background:var(--panel2)}
html.light .tw-list li{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 4px 10px -8px rgba(16,24,40,.3)}
.tw-d{font-family:var(--head);font-size:20px;font-weight:600;text-transform:uppercase;color:var(--pp-ink)}
.tw-t{font-size:16px;line-height:1.3}
.tw-t small{display:block;font-family:var(--head);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}

.ws{max-width:860px}
.ws-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.ws-role{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:0;border-radius:999px;cursor:pointer;font:inherit;font-size:16px;color:var(--muted);
  background:var(--panel);box-shadow:inset 0 0 0 1px var(--line2)}
html.light .ws-role{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.08),0 2px 6px -2px rgba(16,24,40,.12)}
.ws-role svg{width:17px;height:17px}
html .ws-role[aria-pressed=true]{color:#fff;background:var(--pp);box-shadow:0 10px 22px -10px var(--pp)}
.ws-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.ws-doc{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;background:var(--panel2);transition:opacity .3s,filter .3s}
html.light .ws-doc{background:#fff;box-shadow:0 0 0 1px rgba(16,24,40,.07),0 4px 10px -8px rgba(16,24,40,.3)}
.ws-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--pp) 14%,transparent);color:var(--pp-ink)}
.ws-ic svg{width:18px;height:18px}
.ws-doc b{display:block;font-size:15.5px}
.ws-doc small{font-size:13.5px;color:var(--muted)}
.ws-doc em{display:inline-flex;align-items:center;gap:5px;font-style:normal;font-size:13px;padding:3px 10px;border-radius:999px}
.ws-doc em svg{width:13px;height:13px}
.ws-yes{color:#1c7c4a;background:rgba(47,191,113,.12)}
.ws-no{color:var(--dim);box-shadow:inset 0 0 0 1px var(--line2);display:none!important}
html:not(.light) .ws-yes{color:#8fe0b6}
.ws-doc.off{opacity:.5;filter:grayscale(1)}
.ws-doc.off .ws-yes{display:none}
.ws-doc.off .ws-no{display:inline-flex!important}
.ws-doc.off b{text-decoration:line-through}
.ws-sum{margin-top:6px;font-size:14.5px;color:var(--muted)}
.ws-sum b{font-family:var(--head);font-size:22px;color:var(--pp-ink)}

/* custom builds hero: each build as its screen */
.bl-card{gap:10px}
.bl-win .sc-body{padding:12px;min-height:200px;font-size:14px}
.mn{display:flex;flex-direction:column;gap:8px}
.mn .rx-line{font-size:13.5px}
.mn .bx-quote{font-size:13px}
.mn .sa-btn{align-self:flex-start;background:var(--blue)}
.mn-flow{list-style:none;display:flex;flex-direction:column;gap:7px}
.mn-flow li{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:10px;background:var(--panel2);font-size:14px}
html.light .mn-flow li{background:#F3F5F9}
.mn-flow svg{width:16px;height:16px;color:var(--pp-ink);flex-shrink:0}
.bl-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:14px;line-height:1.35}
.bl-line small{font-family:var(--head);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.bl-line i{font-style:normal;color:var(--pp-ink)}
.bl-line b{color:var(--pp-ink);font-weight:600}

@media (max-width:1100px){.rt{grid-template-columns:1fr 1fr}.rt-out{grid-column:1 / -1}}
@media (max-width:700px){.rt{grid-template-columns:1fr}.tw-list li{grid-template-columns:44px 1fr}.tw-list .st{grid-column:2;justify-self:start}}
