/* PandaPath · How We Work — Growth Strategy Workspace
   Standalone prototype. All selectors are scoped to .hww so it cannot leak into
   shared components. Tokens follow the approved um-owner-direction baseline:
   Outfit / Instrument Serif, #E84274 pink, #17171b stage, thin borders, 12px radii. */

.hww{
  --hww-ink:#17171b; --hww-ink-soft:#55555a; --hww-paper:#faf9f6; --hww-tint:#f6f5f1;
  --hww-line:#dedbd5; --hww-pink:var(--pink,#E84274); --hww-pink-ink:#c72d5c;
  --hww-stage:#17171b; --hww-s1:#1f1f22; --hww-s2:#26262a; --hww-s3:#2e2e33;
  --hww-dline:#3a3a3f; --hww-dline2:#4a4a50; --hww-on:#f7f5f1; --hww-on-soft:#b9b8bd; --hww-on-mute:#8a898f;
  --hww-orange:#F59700;
  --hww-ease:cubic-bezier(.2,.7,.2,1);
  font-family:'Outfit',-apple-system,"Segoe UI",sans-serif; color:var(--hww-ink);
}
.hww *,.hww *::before,.hww *::after{box-sizing:border-box}
.hww button{font:inherit;color:inherit;cursor:pointer}
.hww :focus-visible{outline:2px solid var(--hww-pink);outline-offset:3px}
.hww [hidden]{display:none!important}
.hww img{max-width:100%;height:auto}

/* ---------- Section head (approved copy, approved eyebrow treatment) ---------- */
.hww-head{display:grid;grid-template-columns:1.35fr 1fr;align-items:end;gap:48px;margin-bottom:32px}
.hww-eyebrow{display:inline-block;width:fit-content;border:1px solid currentColor;border-radius:30px;padding:8px 15px;
  font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--hww-pink-ink);margin:0 0 18px}
.hww-head h2{font-size:clamp(2rem,4.4vw,4.2rem);font-weight:600;line-height:1.07;letter-spacing:-.045em;margin:0;max-width:22ch;text-wrap:balance}
.hww-head p{font-size:1.08rem;line-height:1.6;color:var(--hww-ink-soft);margin:0;max-width:38ch}

/* ---------- Stage selector ---------- */
.hww-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.hww-stage-tab{display:flex;align-items:center;gap:14px;min-height:56px;padding:14px 20px;border:1px solid #b7b6b4;border-radius:10px;
  background:transparent;text-align:left;font-size:1rem;font-weight:500;transition:background .18s,border-color .18s,color .18s}
.hww-stage-tab span{font-size:.75rem;color:#656568;font-variant-numeric:tabular-nums}
.hww-stage-tab em{margin-left:auto;font-style:normal;font-size:.72rem;color:#7a797e}
.hww-stage-tab[aria-selected=true]{background:var(--hww-ink);border-color:var(--hww-ink);color:#fff}
.hww-stage-tab[aria-selected=true] span{color:var(--hww-pink)}
.hww-stage-tab[aria-selected=true] em{color:#a9a8ad}
@media(hover:hover) and (pointer:fine){.hww-stage-tab[aria-selected=false]:hover{border-color:var(--hww-pink);background:#fff}}

/* ---------- Workspace shell ---------- */
.hww-shell{background:var(--hww-stage);border:1px solid #424246;border-radius:16px;color:var(--hww-on);
  display:grid;grid-template-columns:minmax(260px,320px) 1fr;min-height:640px;overflow:hidden}
.hww-rail{padding:28px 26px;border-right:1px solid var(--hww-dline);display:flex;flex-direction:column;gap:22px}
.hww-modules{display:grid;gap:8px}
.hww-mod{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--hww-dline2);
  border-radius:10px;background:transparent;text-align:left;font-size:.95rem;color:#e4e3e6;transition:background .18s,border-color .18s,color .18s}
.hww-mod span{font-size:.7rem;color:var(--hww-on-mute);font-variant-numeric:tabular-nums;min-width:18px}
.hww-mod[aria-selected=true]{background:var(--hww-on);border-color:var(--hww-on);color:var(--hww-ink)}
.hww-mod[aria-selected=true] span{color:var(--hww-pink-ink)}
@media(hover:hover) and (pointer:fine){.hww-mod[aria-selected=false]:hover{border-color:var(--hww-pink)}}
.hww-copy{margin-top:auto}
.hww-step{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--hww-on-soft)}
.hww-copy h3{font-size:clamp(1.45rem,2.1vw,1.95rem);font-weight:600;line-height:1.12;letter-spacing:-.03em;margin:12px 0 14px;color:#fff;text-wrap:balance}
.hww-copy p{font-size:.95rem;line-height:1.55;color:#d0cfd3;margin:0}
.hww-link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;min-height:44px;color:#fff;font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--hww-pink)}

.hww-canvas{position:relative;padding:24px;min-width:0;display:flex;flex-direction:column}
.hww-view{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px}
.hww-view.is-entering{animation:hww-enter .26s var(--hww-ease)}
@keyframes hww-enter{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
.hww-copy.is-entering{animation:hww-fade .2s ease-out}
@keyframes hww-fade{from{opacity:.55}to{opacity:1}}

/* Shared viz primitives */
.hww-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hww-label{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--hww-on-soft)}
.hww-sample{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--hww-on-mute);border:1px solid var(--hww-dline2);border-radius:99px;padding:4px 9px;white-space:nowrap}
.hww-seg{display:inline-flex;flex-wrap:wrap;gap:6px}
.hww-chip{min-height:36px;padding:7px 13px;border:1px solid var(--hww-dline2);border-radius:99px;background:transparent;font-size:.8rem;color:#dddce0;
  transition:background .16s,border-color .16s,color .16s}
.hww-chip[aria-pressed=true],.hww-chip[aria-selected=true]{background:var(--hww-pink);border-color:var(--hww-pink);color:#17171b;font-weight:600}
@media(hover:hover) and (pointer:fine){.hww-chip:not([aria-pressed=true]):not([aria-selected=true]):hover{border-color:#86858b}}
.hww-panel{background:var(--hww-s1);border:1px solid var(--hww-dline);border-radius:12px}

/* Shared by 02 (findings rail) and 07 (evidence note) */
.hww-findings{padding:18px;display:flex;flex-direction:column;gap:12px}
.hww-flist{display:grid;gap:8px}
.hww-ev-note{margin:auto 0 0;font-size:.74rem;color:#6e6c66}

/* ---------- 01 Visibility audit: local search scene (2026-10-21 v3) ---------- */
.hww-lsa{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}
.hww-lsa-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.hww-lsa-tab{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 14px;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent;
  text-align:left;font-size:.92rem;font-weight:500;color:#e4e3e6;transition:background .18s,border-color .18s,color .18s}
.hww-lsa-tab span{font-size:.7rem;color:var(--hww-on-mute);font-variant-numeric:tabular-nums}
.hww-lsa-tab[aria-selected=true]{background:var(--hww-on);border-color:var(--hww-on);color:var(--hww-ink)}
.hww-lsa-tab[aria-selected=true] span{color:var(--hww-pink-ink)}
@media(hover:hover) and (pointer:fine){.hww-lsa-tab[aria-selected=false]:hover{border-color:var(--hww-pink)}}
.hww-lsa-note{margin:0;min-height:2.9em;font-size:.95rem;line-height:1.45;color:#ecebee;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.hww-lsa-note.is-entering{animation:hww-fade .24s ease-out}
.hww-lsa-fix{display:inline-flex;align-items:baseline;gap:8px;font-size:.84rem;color:#cfcdd2}
.hww-lsa-fix b{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#17171b;background:var(--hww-pink);border-radius:99px;padding:2px 8px}

/* The search scene: one light surface, the dominant visual */
.hww-serp{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;color:#1f1f23;border:1px solid #dedbd5;border-radius:14px;overflow:hidden}
.hww-serp-top{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #ebe8e2;flex-wrap:wrap}
.hww-search{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0;height:42px;padding:0 16px;border:1px solid #dedbd5;border-radius:99px;font-size:.98rem;color:#17171b;background:#faf9f6}
.hww-search svg{width:17px;height:17px;color:#6e6c66;flex:none}
.hww-filters{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0}
.hww-filters::-webkit-scrollbar{display:none}
.hww-filters span{flex:none;font-size:.78rem;padding:6px 11px;border:1px solid #dedbd5;border-radius:99px;color:#3a3a40;white-space:nowrap}
.hww-serp-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
.hww-places{list-style:none;margin:0;padding:4px 0;border-right:1px solid #ebe8e2;overflow:hidden}
.hww-place{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:12px;padding:11px 14px;border-bottom:1px solid #f0ede8}
.hww-place h4{margin:0 0 2px;font-size:.98rem;font-weight:600;letter-spacing:-.01em;line-height:1.25;color:#17171b;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hww-place p{margin:0;font-size:.8rem;line-height:1.45;color:#55555a}
.hww-rate{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:0 6px;margin-left:-6px;color:#17171b!important;font-weight:500;border-radius:6px}
.hww-rate>span:last-child{color:#6e6c66;font-weight:400}
.hww-stars{position:relative;display:inline-flex;line-height:0}
.hww-stars svg{width:11px;height:11px;fill:#dedbd5}
.hww-stars>span{position:absolute;inset:0;display:inline-flex;overflow:hidden;width:var(--r)}
.hww-stars>span svg{fill:#F59700;flex:none}
.hww-status.is-open{color:#1d7a46}
.hww-status.is-soon{color:#b4610b}
.hww-status.is-none{color:#8a898f;font-style:italic;width:fit-content;border-radius:6px;padding:0 6px;margin-left:-6px}
.hww-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.hww-acts span{font-size:.72rem;font-weight:500;padding:4px 10px;border:1px solid #dedbd5;border-radius:99px;color:#3a3a40}
.hww-acts .hww-missing{display:none}
.hww-thumb{align-self:start;position:relative}
.hww-thumb img,.hww-nophoto{display:block;width:88px;height:88px;border-radius:10px;object-fit:cover;background:#efece6}
.hww-nophoto{display:grid;place-content:center;justify-items:center;gap:4px;color:#9b968c;border:1px dashed #d6d1c7}
.hww-nophoto svg{width:22px;height:22px}
.hww-nophoto em{font-style:normal;font-size:.66rem}
.hww-more{padding:8px 14px 4px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#8a898f;border-radius:6px}
.hww-place.is-you{background:#fcfbf9}
.hww-youtag{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#c72d5c;border:1px solid #f0bfce;border-radius:99px;padding:2px 7px}
.hww-rank{display:none}
.hww-mapwrap{position:relative;min-height:0;background:#efece6}
.hww-map{position:absolute;inset:0;width:100%;height:100%;display:block}
.hww-map text{font-family:'Outfit',-apple-system,sans-serif}
.hww-map-labels text,.hww-poi text,.hww-pin text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.hww-pin path{fill:#17171b}
.hww-pin text{font-size:11px;font-weight:600;fill:#2a2a2f}
.hww-pin .hww-pin-r{font-size:10px;font-weight:500;fill:#6e6c66}
.hww-pin.is-you circle{fill:#a9a6a0;stroke:#fff;stroke-width:2}
.hww-pin.is-you text{font-size:10px;font-weight:500;fill:#8a857b;opacity:0;transition:opacity .2s}
.hww-pin-ring{fill:rgba(232,66,116,.16)!important;stroke:#E84274!important;stroke-width:1.5!important;opacity:0;transform:scale(.6);transform-box:fill-box;transform-origin:center;transition:opacity .25s var(--hww-ease),transform .25s var(--hww-ease)}

/* Finding highlights: pink ring on the exact interface element */
.hww-serp [data-f]{transition:box-shadow .22s var(--hww-ease),background .22s}
.hww-serp .is-hit:not(.hww-pin){box-shadow:0 0 0 2px #E84274;background:#fff5f8}
.hww-serp .hww-nophoto.is-hit{border-color:transparent;color:#c72d5c}
.hww-serp .hww-more.is-hit{color:#c72d5c}
.hww-serp .hww-rank.is-hit{display:block;position:absolute;right:-6px;top:-6px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#E84274;border-radius:99px;padding:3px 9px;box-shadow:0 0 0 2px #fff}
.hww-serp .hww-missing.is-hit{display:inline-block;color:#c72d5c;border-style:dashed;border-color:#E84274;box-shadow:none;background:#fff5f8}
.hww-pin.is-you.is-hit .hww-pin-ring{opacity:1;transform:scale(1)}
.hww-pin.is-you.is-hit circle:not(.hww-pin-ring){fill:#E84274}
.hww-pin.is-you.is-hit text{opacity:1;fill:#c72d5c;font-weight:600}
@media(prefers-reduced-motion:reduce){.hww-serp [data-f],.hww-pin-ring,.hww-pin.is-you text{transition:none}}

@media(max-width:1100px){.hww-filters span:nth-child(n+3){display:none}}
@media(max-width:900px){.hww-place{grid-template-columns:minmax(0,1fr) 76px;gap:10px}.hww-thumb img,.hww-nophoto{width:76px;height:76px}}
@media(max-width:600px){
  .hww-findings{padding:14px}
  .hww-lsa-tabs{gap:6px}
  .hww-lsa-tab{flex-direction:column;align-items:flex-start;gap:2px;min-height:58px;padding:8px 10px;font-size:.8rem;line-height:1.2}
  .hww-lsa-note{font-size:.88rem}
  .hww-serp-top{padding:10px}
  .hww-search{flex-basis:100%;height:40px}
  .hww-serp-body{grid-template-columns:1fr}
  .hww-mapwrap{order:-1;aspect-ratio:420/290}
  .hww-places{border-right:0;border-top:1px solid #ebe8e2}
  .hww-filters span{display:inline-block!important}
  .hww-place{grid-template-columns:minmax(0,1fr) 72px;gap:10px;padding:10px 12px}
  .hww-thumb img,.hww-nophoto{width:72px;height:72px}
  .hww-place h4{font-size:.92rem}
  .hww-acts{gap:5px}
  .hww-acts span{font-size:.68rem;padding:3px 8px}
}

/* ---------- 04 Campaign calendar ---------- */
.hww-cal{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;flex:1;min-height:0}
.hww-month{padding:14px;display:flex;flex-direction:column;gap:10px}
.hww-mnav{display:flex;align-items:center;gap:8px}
.hww-mnav h4{margin:0 auto 0 0;font-size:1.15rem;font-weight:600;color:#fff;font-variant-numeric:tabular-nums}
.hww-icon-btn{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent}
.hww-icon-btn:disabled{opacity:.35;cursor:default}
.hww-dow,.hww-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.hww-dow span{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--hww-on-mute);padding:4px 6px}
.hww-days{border-top:1px solid #303035;border-left:1px solid #303035;display:block}
.hww-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:24px repeat(var(--lanes),22px) 8px;row-gap:3px;position:relative}
.hww-day{grid-row:1/-1;border-right:1px solid #303035;border-bottom:1px solid #303035;padding:4px 6px 0;min-width:0}
.hww-day>small{font-size:.68rem;color:#a9a8ad;font-variant-numeric:tabular-nums}
.hww-day.is-out>small{color:#4f4f55}
/* Bars: fixed type size; the label is chosen to fit (full → short → colour only), never shrunk.
   Selector weight beats `.hww button{font:inherit}` and the zh 10px override. */
.hww .hww-days .hww-ev{position:relative;z-index:1;display:flex;align-items:center;height:22px;min-width:0;align-self:center;border:0;margin:0;padding:0 8px;
  font-size:12px;font-weight:600;line-height:1;letter-spacing:0;text-align:left;color:#17171b;white-space:nowrap;overflow:hidden;transition:filter .15s,opacity .2s}
.hww .hww-days .hww-ev>span{display:block;white-space:nowrap}
.hww .hww-days .hww-ev.is-bare{padding:0}
.hww-ev.is-start{border-top-left-radius:5px;border-bottom-left-radius:5px;margin-left:3px}
.hww-ev.is-end{border-top-right-radius:5px;border-bottom-right-radius:5px;margin-right:3px}
.hww-ev[aria-pressed=true]{box-shadow:inset 0 0 0 2px #fff}
.hww-ev:focus-visible{outline:2px solid #fff;outline-offset:2px;z-index:2}
.hww-ev.is-dim{opacity:.18}
.hww-detail{padding:18px;display:flex;flex-direction:column;gap:12px}
.hww-detail h4{margin:0;text-wrap:balance;font-size:1.3rem;font-weight:600;letter-spacing:-.02em;color:#fff;line-height:1.2}
.hww-kv{display:grid;gap:0;margin:0}
.hww-kv>div{display:grid;grid-template-columns:84px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #333338;font-size:.84rem}
.hww-kv dt{color:var(--hww-on-mute)}.hww-kv dd{margin:0;color:#e4e3e6}
.hww-cats{display:flex;flex-wrap:wrap;gap:6px}
.hww-cat{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 11px;border:1px solid var(--hww-dline2);border-radius:99px;background:transparent;font-size:.76rem;color:#dddce0}
.hww-cat i{width:9px;height:9px;border-radius:2px}
.hww-cat[aria-pressed=false]{opacity:.45}
.hww-evlist{display:none}
/* Any colour-only bar puts the readable list under the grid at every width. */
.hww-cal.has-bare .hww-evlist{display:grid;gap:0;margin-top:2px}
.hww-evlist button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;min-height:44px;padding:8px 2px;border:0;border-bottom:1px solid #333338;background:transparent;text-align:left;font-size:.84rem;line-height:1.3;color:#e4e3e6}
.hww-evlist button:last-child{border-bottom:0}
.hww-evlist button i{width:10px;height:10px;border-radius:2px}
.hww-evlist button small{font-size:.72rem;color:var(--hww-on-mute);font-variant-numeric:tabular-nums;white-space:nowrap}
.hww-evlist button[aria-pressed=true]{color:#fff;font-weight:600}
.hww-evlist button:focus-visible{outline:2px solid #fff;outline-offset:-2px}

/* ---------- 06 Execution ---------- */
.hww-exec{display:grid;grid-template-columns:.75fr 1.6fr;gap:14px;flex:1;min-height:0}
.hww-core{padding:18px;display:flex;flex-direction:column;gap:16px}
.hww-swatches{display:flex;gap:6px;margin-top:auto}
.hww-swatches i{flex:1;height:34px;border-radius:6px;border:1px solid #3a3a3f}
.hww-core figure{margin:0;border-radius:8px;overflow:hidden;background:#111;aspect-ratio:4/5}
.hww-core img{width:100%;height:100%!important;object-fit:cover;display:block}
.hww-core h4{margin:0;font-size:1.15rem;font-weight:600;color:#fff;letter-spacing:-.01em}
.hww-touch{display:flex;flex-direction:column;gap:12px;min-width:0}
.hww-touch-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.hww-touch-tabs .hww-chip{padding:7px 8px;border-radius:10px}
.hww-stagebox{flex:1;min-height:400px;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 50% 120%,rgba(232,66,116,.10),transparent 60%),var(--hww-s1);overflow:hidden}
.hww-mock{animation:hww-enter .28s var(--hww-ease)}
.hww-phone{width:250px;border-radius:26px;border:1px solid #4a4a50;background:#0f0f11;padding:10px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.hww-phone-top{display:flex;align-items:center;gap:8px;padding:4px 6px 8px}
.hww-ph-av{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#FF9D00,#F22F83)}
.hww-ph-line{height:7px;border-radius:4px;background:#3a3a40}
.hww-phone img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;display:block}
.hww-ph-actions{display:flex;gap:10px;padding:9px 6px 2px}
.hww-ph-actions i{width:16px;height:16px;border:1.5px solid #8a898f;border-radius:50%}
.hww-ad{width:300px;max-width:100%;background:#f7f5f1;color:#17171b;border-radius:10px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.hww-ad-top{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:.72rem;color:#55555a}
.hww-ad img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.hww-ad-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px}
.hww-ad-foot strong{font-size:.86rem}
.hww-ad-foot span{font-size:.75rem;font-weight:600;background:#17171b;color:#fff;border-radius:6px;padding:7px 11px}
.hww-brief{width:min(340px,100%);display:grid;grid-template-columns:1fr;gap:16px;background:#f7f5f1;color:#17171b;border-radius:10px;padding:16px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.hww-brief img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;display:block}
.hww-brief h5{margin:0 0 8px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#7a797e}
.hww-brief ol{margin:0;padding:0;list-style:none;display:grid}
.hww-brief li{display:grid;grid-template-columns:22px 1fr;font-size:.84rem;padding:7px 0;border-bottom:1px solid #e3e0da}
.hww-brief li span{color:var(--hww-pink-ink);font-size:.7rem;padding-top:2px}
.hww-gbp{width:300px;max-width:100%;background:#fff;color:#17171b;border-radius:12px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.35);border:1px solid #e6e3de}
.hww-gbp img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:50% 0;display:block}
.hww-gbp-body{padding:12px 14px;display:grid;gap:8px}
.hww-gbp-body small{font-size:.7rem;color:#7a797e}
.hww-gbp-body strong{font-size:1.05rem}
.hww-gbp-body p{margin:0;font-size:.82rem;color:#55555a;line-height:1.45}
.hww-gbp-btns{display:flex;gap:6px}
.hww-gbp-btns span{flex:1;text-align:center;font-size:.74rem;font-weight:600;border:1px solid #d8d5cf;border-radius:99px;padding:7px 0;color:#2a2a2e}
.hww-instore{position:relative;width:240px;max-width:80%;padding-bottom:22px;perspective:900px}
.hww-tent{position:relative;z-index:1;transform:rotateX(6deg);transform-origin:bottom;background:#efece6;padding:9px;border-radius:4px;box-shadow:0 24px 40px rgba(0,0,0,.45)}
.hww-tent img{display:block;width:100%;height:auto!important;aspect-ratio:4/5;object-fit:contain}
.hww-table{position:absolute;left:-30px;right:-30px;bottom:0;height:34px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#3a3a40,transparent 70%)}

/* ---------- 08 Optimization ---------- */
.hww-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.hww-steps button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent;text-align:left;min-height:56px}
.hww-steps button small{font-size:.64rem;color:var(--hww-on-mute);font-variant-numeric:tabular-nums}
.hww-steps button span{font-size:.84rem;color:#e4e3e6}
.hww-steps button[aria-selected=true]{border-color:var(--hww-pink);background:rgba(232,66,116,.12)}
.hww-steps button[aria-selected=true] small{color:#ff9dbb}

/* ---------- Evidence modules 02–08 (2026-10-21) ---------- */
.hww-tag{align-self:flex-start;font-size:.7rem;padding:4px 9px;border-radius:99px;background:var(--hww-pink);color:#17171b;font-weight:600}
.hww-cap{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#6e6c66}
.hww-panel .hww-cap{color:var(--hww-on-soft)}
.hww-xlink{align-self:flex-start;border:0;background:none;padding:6px 0;min-height:40px;font-size:.86rem;font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--hww-pink)}
.hww-kv--light>div{border-bottom-color:#dedbd5}
.hww-kv--light dt{color:#6e6c66}.hww-kv--light dd{color:#17171b}
.hww-light{background:#f6f5f1;color:#17171b;border:1px solid #dedbd5;border-radius:12px}

/* Findings lists rendered by tabList (02) share the 01 finding style */
.hww-flist--plain button{display:grid;grid-template-columns:26px 1fr;gap:8px;align-items:start;width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent;text-align:left;font-size:.92rem;line-height:1.35;color:#e4e3e6;transition:background .18s,border-color .18s}
.hww-flist--plain button span{font-size:.7rem;color:var(--hww-on-mute);padding-top:3px}
.hww-flist--plain button[aria-selected=true]{border-color:var(--hww-pink);background:rgba(232,66,116,.12);color:#fff}
.hww-flist--plain button[aria-selected=true] span{color:#ff9dbb}
@media(hover:hover) and (pointer:fine){.hww-flist--plain button[aria-selected=false]:hover{border-color:#86858b}}
.hww-fdesc{margin:auto 0 0;padding-top:14px;border-top:1px solid #333338;font-size:.95rem;line-height:1.5;color:#e4e3e6;min-height:4.6em}

/* 02 USP: research map */
.hww-usp2{display:grid;grid-template-columns:1fr 1.25fr;gap:14px;flex:1;min-height:0}
.hww-posmap{background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;color:#17171b}
.hww-pm-plot{position:relative;flex:1;min-height:380px;border-left:1px solid #b9b6af;border-bottom:1px solid #b9b6af;margin:0 0 22px 22px}
.hww-pm-ax{position:absolute;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#6e6c66;white-space:nowrap}
.hww-pm-x0{left:0;bottom:-20px}.hww-pm-x1{right:0;bottom:-20px}
.hww-pm-y0{left:-20px;bottom:0;transform-origin:left bottom;transform:rotate(-90deg) translateY(100%)}
.hww-pm-y1{left:-20px;top:0;transform-origin:left top;transform:rotate(-90deg) translateX(-100%)}
.hww-pm-zone{position:absolute;border-radius:50%;transition:background .25s,border-color .25s,opacity .25s}
.hww-pm-zone b{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);white-space:nowrap;font-size:.74rem;font-weight:600;line-height:1;padding:5px 10px;border-radius:99px;background:#f6f5f1;border:1px solid currentColor}
.hww-pm-cluster{left:4%;top:44%;width:46%;height:52%;background:repeating-linear-gradient(135deg,rgba(23,23,27,.06) 0 6px,transparent 6px 12px);border:1px dashed #9a978f;color:#3a3a40}
.hww-pm-open{left:52%;top:4%;width:46%;height:50%;border:1.5px dashed #E84274;background:rgba(232,66,116,.06);color:#c72d5c}
.hww-pm-zone.is-on{opacity:1}
.hww-pm-zone:not(.is-on){opacity:.55}
.hww-pm-open.is-on{background:rgba(232,66,116,.13)}
.hww-pm-cluster.is-on{border-color:#17171b}
.hww-pm-art{position:absolute;margin:0;background:#fff;padding:5px;border-radius:4px;box-shadow:0 10px 24px rgba(23,23,27,.18);transition:transform .25s var(--hww-ease),box-shadow .25s}
.hww-pm-art img{display:block;width:100%;height:auto;border-radius:2px}
.hww-pm-art--happy{width:92px;left:20%;top:55%;transform:rotate(-4deg)}
.hww-pm-art--holiday{width:100px;left:68%;top:13%;transform:rotate(3deg)}
.hww-pm-art.is-on{box-shadow:0 0 0 2px #E84274,0 14px 30px rgba(23,23,27,.24)}
.hww-pm-usp{margin:0;display:flex;gap:10px;align-items:baseline;font-size:1.02rem;font-weight:600;line-height:1.35}
.hww-pm-usp span{flex:none;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#17171b;background:#E84274;border-radius:99px;padding:3px 9px;font-weight:700}

/* 03 Channel plan: journey + channel card */
.hww-plan2{display:flex;flex-direction:column;gap:12px;flex:1}
.hww-journey{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.hww-journey button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:72px;padding:12px;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent;text-align:left;transition:background .18s,border-color .18s}
.hww-journey small{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--hww-on-mute)}
.hww-journey strong{font-size:.92rem;font-weight:500;color:#e4e3e6;line-height:1.25}
.hww-journey button[aria-selected=true]{background:var(--hww-on);border-color:var(--hww-on)}
.hww-journey button[aria-selected=true] small{color:#c72d5c}
.hww-journey button[aria-selected=true] strong{color:#17171b}
@media(hover:hover) and (pointer:fine){.hww-journey button[aria-selected=false]:hover{border-color:var(--hww-pink)}}
.hww-chcard{flex:1;display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;color:#17171b;overflow:hidden}
.hww-ch-main{padding:22px;display:flex;flex-direction:column;gap:12px}
.hww-ch-main h4{margin:0;font-size:clamp(1.3rem,2vw,1.7rem);font-weight:600;line-height:1.15;letter-spacing:-.025em}
.hww-ch-viz{padding:22px;border-left:1px solid #dedbd5;background:#fff;display:flex;flex-direction:column;justify-content:center;gap:12px}
.hww-mix{display:grid;gap:10px}
.hww-mix div{display:grid;grid-template-columns:1fr 44px;gap:4px 10px;align-items:center;font-size:.84rem;color:#3a3a40}
.hww-mix i{grid-column:1/-1;grid-row:2;height:8px;border-radius:4px;background:linear-gradient(90deg,#E84274 var(--w),#efe9e4 var(--w))}
.hww-mix b{text-align:right;font-variant-numeric:tabular-nums;color:#17171b}
.hww-steps2{list-style:none;margin:0;padding:0;display:grid;gap:0}
.hww-steps2 li{display:grid;grid-template-columns:30px 1fr;padding:11px 0;border-bottom:1px solid #ebe8e2;font-size:.95rem}
.hww-steps2 li span{font-size:.7rem;color:#c72d5c;padding-top:3px}
.hww-tags{display:grid;gap:10px}
.hww-tags>div{display:flex;flex-wrap:wrap;gap:6px}
.hww-tags>div span{border:1px solid #dedbd5;border-radius:99px;padding:6px 11px;font-size:.84rem;background:#f6f5f1}
.hww-ch-viz .hww-xlink{color:#17171b}

/* 04 Calendar: brand-palette categories, year ribbon, light detail */
.c-offer{background:#F59700}.c-season{background:#E84274}.c-event{background:#f6f5f1}
.hww-ev.c-event{color:#17171b}
.hww-year{display:grid;grid-template-columns:repeat(12,1fr) auto;align-items:center;gap:3px}
.hww-year span{font-size:.6rem;text-align:center;color:var(--hww-on-mute);border-radius:4px;padding:3px 0;background:#232327}
.hww-year span.is-on{background:var(--hww-pink);color:#17171b;font-weight:700}
.hww-year em{font-style:normal;font-size:.74rem;color:#e4e3e6;padding-left:10px;white-space:nowrap}
.hww-detail--light{background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;color:#17171b;padding:16px;display:grid;grid-template-columns:1fr;gap:14px;align-content:start}
.hww-detail--light h4{color:#17171b}
.hww-dt-art{margin:0;justify-self:center;width:min(180px,70%);background:#fff;padding:6px;border-radius:4px;box-shadow:0 10px 24px rgba(23,23,27,.16)}
.hww-dt-art img{display:block;width:100%;height:auto}
.hww-dt-body{display:flex;flex-direction:column;gap:10px}
.hww-tag.c-event{border:1px solid #dedbd5}

/* 05 Measurement: rule + plan table + rhythm */
.hww-kpi2{display:grid;grid-template-columns:.9fr 1.5fr;grid-template-rows:auto 1fr;gap:14px;flex:1}
.hww-kpi2 .hww-ktab{grid-column:2;grid-row:1/3}
.hww-kpi2 .hww-rhythm{grid-column:1;grid-row:2;grid-template-columns:1fr;align-content:end}
.hww-rule{margin:0;display:flex;flex-direction:column;gap:14px;font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:600;line-height:1.2;letter-spacing:-.02em;color:#fff;padding:18px;border:1px solid var(--hww-dline);border-radius:12px}
.hww-rule span{align-self:flex-start;flex:none;letter-spacing:.1em;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#17171b;background:var(--hww-pink);border-radius:99px;padding:3px 9px;font-weight:700}
.hww-ktab{display:grid;grid-template-columns:1.2fr 1fr 1.1fr;background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;color:#17171b;overflow:hidden;align-content:start;align-self:start}
.hww-ktab>div{padding:18px 16px;border-bottom:1px solid #e4e0d9;font-size:.88rem;color:#3a3a40;display:flex;align-items:center}
.hww-ktab>div strong{font-weight:600;color:#17171b;font-size:.95rem}
.hww-ktab .hh{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:#6e6c66;background:#efece6;padding:10px 16px}
.hww-ktab .is-real{color:#c72d5c;font-weight:600}
.hww-rhythm{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.hww-rhythm div{border:1px solid var(--hww-dline2);border-radius:10px;padding:12px 14px;display:grid;gap:4px}
.hww-rhythm strong{font-size:.95rem;color:#fff;font-weight:600}
.hww-rhythm span{font-size:.8rem;color:#cfcdd2;line-height:1.4}

/* 07 Track: report document */
.hww-report2{display:grid;grid-template-columns:200px 1fr;gap:14px;flex:1}
.hww-rp-nav{display:grid;align-content:start;gap:6px}
.hww-rp-nav button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:58px;padding:11px 14px;border:1px solid var(--hww-dline2);border-radius:10px;background:transparent;text-align:left;font-size:.95rem;color:#e4e3e6}
.hww-rp-nav small{font-size:.64rem;color:var(--hww-on-mute)}
.hww-rp-nav button[aria-selected=true]{background:var(--hww-on);border-color:var(--hww-on);color:#17171b}
.hww-rp-nav button[aria-selected=true] small{color:#c72d5c}
.hww-rp-page{background:#fff;color:#17171b;border:1px solid #dedbd5;border-radius:12px;padding:26px 28px;display:flex;flex-direction:column;gap:18px;box-shadow:inset 0 3px 0 #E84274}
.hww-rp-page.is-entering{animation:hww-enter .22s var(--hww-ease)}
.hww-rp-head h4{margin:6px 0 0;font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:600;letter-spacing:-.03em;line-height:1.1}
.hww-rp-table{display:grid;grid-template-columns:1.1fr 1fr 1fr}
.hww-rp-table>div{padding:18px 0;border-bottom:1px solid #ebe8e2;font-size:.92rem;color:#3a3a40;display:flex;align-items:baseline}
.hww-rp-table .hh{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:#6e6c66;padding-top:0}
.hww-rp-table .was{color:#8a878f;font-variant-numeric:tabular-nums}
.hww-rp-table .now{font-size:1.9rem;font-weight:700;color:#17171b;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hww-rp-table--plan{grid-template-columns:1.4fr 1fr .9fr}
.hww-rp-table--plan>div:not(.hh):nth-child(3n+1){font-weight:600;color:#17171b}
.hww-rp-table--plan .was{color:#55555a}
.hww-rp-table--plan .now{font-size:.85rem;font-weight:500;color:#c72d5c;letter-spacing:0}
.hww-rp-list{list-style:none;margin:0;padding:0;display:grid}
.hww-rp-list li{display:grid;grid-template-columns:34px 1fr;padding:16px 0;border-bottom:1px solid #ebe8e2;font-size:1.05rem;line-height:1.4}
.hww-rp-list li span{font-size:.72rem;color:#c72d5c;padding-top:4px}

/* 08 Optimize: plan shift */
.hww-opt2{display:flex;flex-direction:column;gap:12px;flex:1}
.hww-shift{flex:1;background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;color:#17171b;padding:8px 22px 16px;display:flex;flex-direction:column}
.hww-shift-row{flex:1;display:grid;grid-template-columns:120px 1fr 1.3fr;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid #e4e0d9}
.hww-shift-k{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#6e6c66}
.hww-shift-was{font-size:.86rem;color:#8a878f;text-decoration:line-through;text-decoration-color:#c9c5bd}
.hww-shift-row strong:empty::after,.hww-shift-row strong.is-none{color:#9a978f}
.hww-shift-row strong{font-size:clamp(1.02rem,1.6vw,1.25rem);font-weight:600;line-height:1.35}
.hww-shift[data-step="0"] .hww-shift-row,.hww-shift[data-step="1"] .hww-shift-row{grid-template-columns:120px 1fr}
.hww-shift[data-step="0"] .hww-shift-was,.hww-shift[data-step="1"] .hww-shift-was{display:none}
.hww-shift[data-step="1"] strong{color:#c72d5c}
.hww-shift[data-step="2"] strong,.hww-shift[data-step="3"] strong{color:#17171b}
.hww-shift[data-step="3"] .hww-shift-was{display:none}
.hww-shift[data-step="3"] .hww-shift-row{grid-template-columns:120px 1fr}
.hww-shift .hww-xlink{margin-top:12px;color:#17171b}

@media(max-width:900px){
  .hww-usp2,.hww-report2{grid-template-columns:1fr}
  .hww-kpi2{grid-template-columns:1fr;grid-template-rows:auto}
  .hww-kpi2 .hww-ktab,.hww-kpi2 .hww-rhythm{grid-column:1;grid-row:auto}
  .hww-kpi2 .hww-rhythm{grid-template-columns:repeat(3,1fr)}
  .hww-chcard{grid-template-columns:1fr}.hww-ch-viz{border-left:0;border-top:1px solid #dedbd5}
  .hww-journey{grid-template-columns:repeat(5,minmax(0,1fr))}
  .hww-rp-nav{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:600px){
  .hww-journey{grid-template-columns:repeat(2,1fr)}
  .hww-journey button:last-child{grid-column:1/-1}
  .hww-journey button{min-height:60px;padding:10px}
  .hww-ch-main,.hww-ch-viz{padding:16px}
  .hww-pm-plot{min-height:300px;margin:0 0 20px 20px}
  .hww-pm-art--happy{width:66px;left:18%;top:56%}
  .hww-pm-art--holiday{width:72px;left:66%;top:14%}
  .hww-pm-zone b{font-size:.62rem;padding:4px 8px}
  .hww-pm-zone b{font-size:.68rem}
  .hww-ktab{grid-template-columns:1fr 1fr}
  .hww-ktab>div:nth-child(3n+2){display:none}
  .hww-ktab>div{padding:12px}
  .hww-rhythm{grid-template-columns:1fr}
  .hww-kpi2{grid-template-columns:1fr;grid-template-rows:auto}
  .hww-kpi2 .hww-ktab,.hww-kpi2 .hww-rhythm{grid-column:1;grid-row:auto}
  .hww-rule{font-size:1.2rem;padding:14px}
  .hww-rp-page{padding:18px}
  .hww-rp-nav button{min-height:52px;padding:9px 10px;font-size:.84rem}
  .hww-rp-table .now{font-size:1.2rem}
  .hww-rp-table--plan{grid-template-columns:1fr 1fr;column-gap:12px}
  .hww-rp-table--plan .hh:nth-child(3),.hww-rp-table--plan .now{grid-column:1/-1;padding-top:0}
  .hww-rp-table--plan .hh:nth-child(3){display:none}
  .hww-rp-table--plan>div:not(.hh):nth-child(3n+1),.hww-rp-table--plan .was{border-bottom:0;padding-bottom:4px}
  .hww-rp-table--plan .now{font-size:.8rem}
  .hww-shift{padding:4px 14px 12px}
  .hww-shift-row,.hww-shift[data-step] .hww-shift-row{grid-template-columns:1fr;gap:4px;padding:12px 0}
  .hww-kpi2 .hww-rhythm{grid-template-columns:1fr}
  .hww-dt-art{width:150px}
  .hww-year em{grid-column:1/-1;padding:4px 0 0}
  .hww-year{grid-template-columns:repeat(12,1fr)}
}

/* ---------- Tablet ---------- */
@media(max-width:1100px){
  .hww-shell{grid-template-columns:1fr;min-height:0}
  .hww-rail{border-right:0;border-bottom:1px solid var(--hww-dline);display:grid;grid-template-columns:1fr 1.2fr;gap:20px 28px;align-items:start}
  .hww-copy{margin-top:0}
  .hww-copy h3{margin-top:8px}
  .hww-canvas{min-height:600px}
}
@media(max-width:900px){
  .hww-head{grid-template-columns:1fr;gap:16px}
  .hww-stage-tab em{display:none}
  .hww-rail{grid-template-columns:1fr}
  .hww-modules{grid-template-columns:repeat(var(--n,3),1fr)}
  .hww-usp,.hww-cal,.hww-report,.hww-exec,.hww-compare{grid-template-columns:1fr}
  .hww-matrix{min-height:380px}
  .hww-canvas{min-height:0}
}

/* ---------- Mobile: designed, not compressed ---------- */
@media(max-width:600px){
  .hww-head h2{font-size:2.1rem;line-height:1.12;letter-spacing:-.035em}
  .hww-head p{font-size:.98rem}
  .hww-stages{gap:6px}
  .hww-stage-tab{flex-direction:column;align-items:flex-start;gap:2px;padding:10px 10px;min-height:64px;font-size:.84rem;line-height:1.2}
  .hww-shell{border-radius:14px}
  .hww-rail{padding:16px;gap:16px}
  .hww-modules{gap:6px}
  .hww-mod{flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;font-size:.8rem;line-height:1.2;min-height:54px}
  .hww-copy h3{font-size:1.35rem}
  .hww-copy p{font-size:.88rem}
  .hww-link{margin-top:8px}
  .hww-canvas{padding:12px}
  .hww-matrix{padding:12px 10px 30px 28px;min-height:330px}
  .hww-plot{min-height:290px}
  .hww-dot b{font-size:.66rem}
  .hww-ax.x0{left:28px}
  .hww-insight{padding:16px}.hww-insight h4{font-size:1.15rem}
  .hww-insight dl>div{grid-template-columns:76px 1fr;font-size:.8rem}
  .hww-grid{grid-template-columns:minmax(92px,1.1fr) repeat(4,1fr)}
  .hww-grid .hww-gh{font-size:.56rem;letter-spacing:.02em}
  .hww-grid>*{min-height:46px}
  .hww-row{padding:0 10px;font-size:.78rem}
  .hww-cell i.lead{width:18px;height:18px}.hww-cell i.support{width:13px;height:13px}
  .hww-role{grid-template-columns:1fr;gap:6px}
  /* Compact month: colour lines only; the event list below is the readable, tappable view.
     Bars leave the tab order here so keyboard users reach each event once, in the list. */
  .hww-week{grid-template-rows:20px repeat(var(--lanes),6px) 6px;row-gap:3px}
  .hww-day{padding:3px 4px 0}
  .hww-day>small{font-size:.66rem}
  .hww .hww-days .hww-ev{height:6px;padding:0;pointer-events:none}
  .hww .hww-days .hww-ev>span{display:none}
  .hww-ev.is-start{margin-left:2px;border-radius:3px 0 0 3px}.hww-ev.is-end{margin-right:2px;border-radius:0 3px 3px 0}
  .hww-ev.is-start.is-end{border-radius:3px}
  .hww-ev[aria-pressed=true]{box-shadow:0 0 0 1px #fff}
  .hww-evlist{display:grid;gap:0;margin-top:2px}
  .hww-month{padding:10px}
  .hww-objective{grid-template-columns:1fr;gap:10px;padding:14px}
  .hww-objective strong{font-size:1.6rem}
  .hww-ktable{grid-template-columns:1fr 1.15fr}
  .hww-ktable .hc{display:none}
  .hww-ktable>div{padding:12px 12px;min-height:58px}
  .hww-weeks{gap:2px}.hww-weeks span{height:20px}
  .hww-touch-tabs{grid-template-columns:repeat(3,1fr)}
  .hww-stagebox{min-height:380px;padding:14px}
  .hww-core{padding:14px;gap:10px}
  .hww-swatches i{height:18px}
  .hww-brief{padding:14px}
  .hww-tiles{gap:6px}.hww-tile{padding:8px 9px}.hww-tile strong{font-size:1.15rem}
  .hww-steps{grid-template-columns:1fr 1fr}
  .hww-arow{grid-template-columns:78px 1fr 52px;font-size:.78rem}
  .hww-hgrid{grid-template-columns:44px repeat(7,1fr);gap:3px}
  .hww-hgrid span{height:24px}
}
@media(prefers-reduced-motion:reduce){
  .hww *,.hww *::before,.hww *::after{animation:none!important;transition:none!important}
}

/* ---------- Content density pass (2026-10-21): progressive disclosure ---------- */
.hww-more-btn{display:none}
.hww-disc{border-top:1px solid #dedbd5;padding-top:4px}
.hww-disc summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;list-style:none;
  font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#6e6c66}
.hww-disc summary::-webkit-details-marker{display:none}
.hww-disc summary::after{content:"+";font-size:1.1rem;letter-spacing:0;color:#c72d5c;transition:transform .2s var(--hww-ease)}
.hww-disc[open] summary::after{transform:rotate(45deg)}
.hww-disc summary:focus-visible{outline:2px solid var(--hww-pink);outline-offset:2px;border-radius:4px}
.hww-disc ul{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:6px}
.hww-disc li{font-size:.9rem;color:#17171b;line-height:1.4;padding-left:14px;position:relative}
.hww-disc li::before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:#E84274}
@media(prefers-reduced-motion:reduce){.hww-disc summary::after{transition:none}}
@media(max-width:600px){
  .hww-copy p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hww-copy.is-open p{display:block;overflow:visible}
  .hww-more-btn{display:flex;align-items:center;min-height:40px;margin-top:2px;padding:0;border:0;background:none;font-size:.85rem;font-weight:600;color:#fff;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--hww-pink)}
  .hww-copy .hww-link{margin-top:0}
}

/* 02 USP: evidence per finding (2026-10-22). Replaces the large research map; the map survives as .hww-mini.
   Light panel inside the dark workspace, same tokens as the rest of .hww. */
.hww-evi{background:#f6f5f1;border:1px solid #dedbd5;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:14px;color:#17171b;min-width:0}
.hww-evi-k{margin:0;display:flex;align-items:center;gap:8px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#6e6c66}
.hww-evi-n{font-weight:700;color:#c72d5c;letter-spacing:.04em}
.hww-evi-stage{flex:1;min-height:318px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.hww-ev{display:grid;gap:14px;animation:hww-ev-in .26s var(--hww-ease) both}
@keyframes hww-ev-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hww-ev{animation:none}}

/* 01 · decision signals on a fictional listing */
.hww-ev--decide{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}
.hww-evd-card{background:#fff;border:1px solid #e4e1da;border-radius:12px;padding:16px 18px 14px;display:grid;gap:10px;box-shadow:0 12px 26px -18px rgba(23,23,27,.35)}
.hww-evd-top{display:grid;gap:8px}
.hww-evd-top b{font-size:1rem;line-height:1.2}
.hww-evd-rate{font-size:.86rem}
.hww-evd-rate .hww-evd-mark{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:#17171b;font-weight:600}
.hww-evd-rate svg{display:block;width:12px;height:12px;fill:#F59700}
.hww-evd-mark{position:relative;justify-self:start;font-size:.8rem;color:#55555a;padding:2px 8px;margin-left:-8px;border:1.5px solid #E84274;border-radius:99px}
.hww-evd-mark::after{content:attr(data-n);position:absolute;top:-8px;right:-8px;width:17px;height:17px;border-radius:50%;background:#E84274;color:#fff;font-size:.62rem;font-weight:700;line-height:17px;text-align:center}
.hww-evd-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;justify-self:stretch;margin:4px 0 0;padding:6px;border-radius:10px}
.hww-evd-photos i{display:grid;place-items:center;aspect-ratio:1;border-radius:6px;background:#ece9e2;color:#9a978f}
.hww-evd-photos svg{width:20px;height:20px}
.hww-evd-review{margin:0;font-size:.8rem;line-height:1.4;color:#55555a;font-style:italic}
.hww-evd-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:d}
.hww-evd-list li{display:grid;grid-template-columns:22px 1fr;gap:2px 8px;counter-increment:d}
.hww-evd-list li::before{content:counter(d);grid-row:1/span 2;width:20px;height:20px;border-radius:50%;background:#17171b;color:#fff;font-size:.66rem;font-weight:700;display:grid;place-items:center}
.hww-evd-list b{font-size:.92rem}
.hww-evd-list span{font-size:.8rem;line-height:1.35;color:#55555a}

/* 02 · three-second storyboard */
.hww-evh-frames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:440px}
.hww-evh-frames figure{margin:0;aspect-ratio:9/14;border-radius:10px;background:#17171b;color:#f7f5f1;display:flex;flex-direction:column;justify-content:space-between;padding:10px;position:relative;overflow:hidden}
.hww-evh-frames figure:nth-child(2){background:#26262a}
.hww-evh-frames figure:nth-child(3){background:#2e2e33;box-shadow:inset 0 0 0 1.5px #E84274}
.hww-evh-frames figure::after{content:"";position:absolute;left:10px;right:10px;top:6px;height:2px;border-radius:2px;background:rgba(247,245,241,.7)}
.hww-evh-frames figure:nth-child(3)::after{right:auto;width:calc((100% - 20px) * .5);background:#E84274}
.hww-evh-frames span{margin-top:6px}
.hww-evh-frames span{position:relative;font-size:.66rem;letter-spacing:.08em;color:#b9b8bd}
.hww-evh-frames em{position:relative;font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:clamp(1.15rem,2.1vw,1.55rem);line-height:1}
.hww-evh-bar{position:relative;height:4px;border-radius:99px;background:#dedbd5;margin:6px 0 0;max-width:440px}
.hww-evh-bar i{position:absolute;left:0;top:0;bottom:0;width:100%;border-radius:inherit;background:linear-gradient(90deg,#17171b 0 75%,transparent 75%)}
.hww-evh-bar b{position:absolute;left:75%;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#E84274;box-shadow:0 0 0 4px rgba(232,66,116,.18)}
.hww-evh-note{margin:0;max-width:440px;display:flex;gap:10px;align-items:baseline;font-size:.86rem;line-height:1.4;color:#55555a}
.hww-evh-note b{flex:none;font-size:.78rem;color:#c72d5c}

/* 03 · occasion bookings */
.hww-evo-k{margin:0;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#6e6c66}
.hww-evo-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.hww-evo-list li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 12px;align-items:center;padding:10px 12px;background:#fff;border:1px solid #e4e1da;border-radius:10px}
.hww-evo-day{grid-row:1/span 2;display:grid;place-items:center;height:40px;border-radius:8px;background:#17171b;color:#fff;font-size:.78rem;font-weight:600}
.hww-evo-list b{font-size:.92rem;line-height:1.2}
.hww-evo-n{grid-column:2;font-size:.78rem;color:#55555a}
.hww-evo-when{grid-column:3;grid-row:1/span 2;font-size:.72rem;font-weight:600;color:#c72d5c;border:1px solid rgba(232,66,116,.45);border-radius:99px;padding:3px 9px;white-space:nowrap}
.hww-evo-note{margin:0;font-size:.86rem;line-height:1.45;color:#55555a}

/* 04 · look-alike menus */
.hww-evm-grid{display:grid;gap:0;background:#fff;border:1px solid #e4e1da;border-radius:12px;padding:6px 12px;font-size:.82rem}
.hww-evm-grid>div{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:8px;align-items:center;padding:9px 0;border-top:1px solid #efece6}
.hww-evm-grid>div:first-child{border-top:0}
.hww-evm-head span{font-size:.66rem;letter-spacing:.04em;font-weight:700;color:#17171b;line-height:1.25}
.hww-evm-grid [role=rowheader]{color:#55555a}
.hww-evm-grid [role=cell]{font-weight:600;font-variant-numeric:tabular-nums}
.hww-evm-grid>div:not(.hww-evm-head){box-shadow:inset 3px 0 0 transparent}
.hww-evm-span{grid-column:2/-1;font-weight:500!important;color:#17171b;background:rgba(232,66,116,.1);border-radius:6px;padding:4px 8px}
.hww-evm-note{margin:0;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:.86rem;line-height:1.4;color:#55555a}
.hww-evm-note b{color:#c72d5c}

/* compact positioning map + where this finding points */
.hww-evi-foot{display:flex;align-items:center;gap:12px;padding-top:12px;border-top:1px solid #dedbd5}
.hww-mini{position:relative;flex:none;width:58px;height:46px;border-left:1px solid #b9b6af;border-bottom:1px solid #b9b6af}
.hww-mini i{position:absolute;border-radius:50%;transition:background .25s,border-color .25s,opacity .25s;opacity:.45}
.hww-mini-c{left:6%;top:44%;width:46%;height:50%;border:1px dashed #6e6c66}
.hww-mini-o{left:52%;top:4%;width:44%;height:48%;border:1px dashed #E84274}
.hww-mini i.is-on{opacity:1}
.hww-mini-c.is-on{background:rgba(23,23,27,.14);border-style:solid;border-color:#17171b}
.hww-mini-o.is-on{background:rgba(232,66,116,.22);border-style:solid}
.hww-evi-points{margin:0;display:grid;gap:2px;font-size:.88rem;line-height:1.3}
.hww-evi-points span{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#6e6c66}
.hww-evi[data-zone=open] .hww-evi-points b{color:#c72d5c}

@media(max-width:600px){
  .hww-evi{padding:14px}
  .hww-evi-stage{min-height:400px}
  .hww-evh-frames figure{aspect-ratio:9/16}
  .hww-ev--decide{grid-template-columns:1fr}
  .hww-evd-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .hww-evd-list li{grid-template-columns:1fr;gap:4px}
  .hww-evd-list li::before{grid-row:auto}
  .hww-evm-grid{padding:4px 10px;font-size:.76rem}
  .hww-evm-grid>div{grid-template-columns:minmax(0,1.15fr) repeat(3,minmax(0,1fr));gap:6px}
  .hww-evm-head span{font-size:.6rem}
  .hww-evo-list li{grid-template-columns:40px minmax(0,1fr);padding:9px 10px}
  .hww-evo-when{grid-column:2;grid-row:auto;justify-self:start;margin-top:4px}
  .hww-evo-day{grid-row:1/span 3}
}
@media(max-width:374px){
  .hww-evd-list{grid-template-columns:1fr}
  .hww-evd-list li{grid-template-columns:22px 1fr;gap:2px 8px}
  .hww-evd-list li::before{grid-row:1/span 2}
  .hww-evm-grid{font-size:.72rem}
}
:lang(zh) .hww-evh-frames em,:lang(zh-Hans) .hww-evh-frames em{font-family:inherit;font-style:normal;font-weight:600}
