/* ===== Theme refresh ===== */
:root{--gold:#F5B841;--gold-deep:#D99A1E;--plum:#3B0A66}
body{background:radial-gradient(1200px 600px at 100% 0,#F6EDFF 0,transparent 60%),#FCFAFF!important}
h1,h2,h3,.font-display{font-family:"Bricolage Grotesque","DM Sans",system-ui,sans-serif!important;letter-spacing:-.02em}
.grad{background:linear-gradient(120deg,#5B0FA8 0%,#7817B6 45%,#B23AD0 80%,#EB34A9 120%)!important}
.grad-text{background:linear-gradient(90deg,#7817B6,#EB34A9)!important;-webkit-background-clip:text!important;background-clip:text!important}
.card{border-radius:1.4rem;border-color:#EEE3FA!important}
section h2{font-weight:800}
a.grad,button.grad{box-shadow:0 14px 30px -12px rgba(120,23,182,.6)!important}

/* ===== Mascot blocks ===== */
.pawa-hero{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:420px}
.pawa-hero .halo{position:absolute;bottom:20px;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#F3E3FF 0,#E4C8FF 45%,transparent 70%)}
.pawa-hero .ring{position:absolute;bottom:40px;width:62%;aspect-ratio:1;border-radius:50%;border:2px dashed #D6B4F5;animation:spin 40s linear infinite}
.pawa-hero img.pawa-fig{position:relative;height:460px;width:auto;filter:drop-shadow(0 24px 30px rgba(76,29,149,.28));animation:bob 4s ease-in-out infinite}
.pawa-hero .mini-phone{position:absolute;right:2%;bottom:30px;width:150px;border-radius:24px;border:6px solid #1f1235;overflow:hidden;box-shadow:0 20px 40px -16px rgba(40,10,80,.5);transform:rotate(6deg)}
.pawa-hero .mini-phone img{display:block;width:100%}
.pawa-say{position:absolute;top:10px;left:0;max-width:230px;background:#fff;border-radius:20px 20px 20px 4px;padding:14px 16px;font-size:14px;line-height:1.4;color:#3B0A66;box-shadow:0 18px 40px -18px rgba(76,29,149,.5);border:1px solid #EEDFFD;cursor:pointer}
.pawa-say b{color:#7817B6}
.pawa-say .play{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-weight:700;color:#fff;background:#7817B6;border-radius:999px;padding:6px 12px;font-size:12px}
@keyframes bob{50%{transform:translateY(-10px)}}
@keyframes spin{to{transform:rotate(360deg)}}
.sparkle{position:absolute;color:var(--gold);font-size:22px;animation:twinkle 2.4s ease-in-out infinite}
@keyframes twinkle{50%{opacity:.25;transform:scale(.7)}}

.pawa-strip{display:grid;grid-template-columns:1fr;gap:0;align-items:center;margin:0 auto 2.5rem;max-width:64rem;background:linear-gradient(120deg,#FBF5FF,#FFF5E6);border:1px solid #F0E2FB;border-radius:2rem;overflow:hidden}
.pawa-strip img{width:100%;height:240px;object-fit:cover;object-position:center 25%}
.pawa-strip .txt{padding:1.6rem 1.8rem}
.pawa-strip .who{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#7817B6}
.pawa-strip .who i{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.pawa-strip q{display:block;margin-top:.6rem;font-family:"Bricolage Grotesque",sans-serif;font-size:1.35rem;line-height:1.35;font-weight:600;color:#2A0C4E;quotes:none}
.pawa-strip button{margin-top:1rem;display:inline-flex;gap:8px;align-items:center;font-weight:700;font-size:14px;color:#7817B6;background:#fff;border:1px solid #E2CCF7;padding:8px 16px;border-radius:999px}
@media(min-width:768px){.pawa-strip{grid-template-columns:300px 1fr}.pawa-strip img{height:100%;min-height:250px}}

.pawa-cta{position:relative;overflow:hidden;border-radius:2rem;color:#fff;display:grid;align-items:center}
.pawa-cta img{width:100%;height:280px;object-fit:cover;object-position:center 20%}
@media(min-width:768px){.pawa-cta{grid-template-columns:1.1fr 1fr}.pawa-cta img{height:100%;min-height:380px}}
.store{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#2A0C4E;font-weight:700;padding:12px 20px;border-radius:14px}
.store.gold{background:var(--gold);color:#2A0C4E}

/* ===== Talking guide widget ===== */
#pawa-guide{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;align-items:flex-end;gap:10px;font-family:"DM Sans",sans-serif}
#pawa-guide .avatar{width:84px;height:84px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#F6E9FF,#D9B8FA);border:3px solid #fff;box-shadow:0 14px 30px -10px rgba(76,29,149,.6);overflow:hidden;cursor:pointer;flex:none;position:relative}
#pawa-guide .avatar img{width:150%;max-width:none;margin-left:-25%;margin-top:4px}
#pawa-guide.talking .avatar{animation:talk .35s ease-in-out infinite alternate}
#pawa-guide .avatar::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:3px solid #EB34A9;opacity:0}
#pawa-guide.idle .avatar::after{animation:ping 2s ease-out infinite}
@keyframes ping{0%{opacity:.8;transform:scale(.9)}100%{opacity:0;transform:scale(1.3)}}
@keyframes talk{to{transform:translateY(-3px) rotate(-2deg)}}
#pawa-guide .bubble{width:min(330px,calc(100vw - 130px));background:#fff;border-radius:22px 22px 6px 22px;padding:16px 16px 12px;box-shadow:0 24px 50px -20px rgba(40,10,80,.55);border:1px solid #EEDFFD;color:#2A0C4E}
#pawa-guide .bubble[hidden]{display:none}
#pawa-guide .hd{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;color:#7817B6;text-transform:uppercase;letter-spacing:.1em}
#pawa-guide .hd button{color:#9a8bb0;font-size:18px;line-height:1}
#pawa-guide .msg{margin-top:6px;font-size:15px;line-height:1.45;min-height:3em}
#pawa-guide .bar{height:4px;background:#F1E6FC;border-radius:4px;margin-top:10px;overflow:hidden}
#pawa-guide .bar i{display:block;height:100%;background:linear-gradient(90deg,#7817B6,#EB34A9);transition:width .4s}
#pawa-guide .ctl{display:flex;gap:6px;align-items:center;margin-top:10px}
#pawa-guide .ctl button,#pawa-guide .ctl a{font-size:13px;font-weight:700;border-radius:999px;padding:7px 12px}
#pawa-guide .b-ghost{color:#7817B6;background:#F6EDFF}
#pawa-guide .b-main{color:#fff;background:#7817B6;margin-left:auto}
#pawa-guide .b-gold{color:#2A0C4E;background:var(--gold);margin-left:auto}
.pawa-focus{outline:3px solid rgba(235,52,169,.35);outline-offset:-3px;transition:outline-color .4s}
@media(max-width:639px){#pawa-guide{bottom:86px;right:10px}#pawa-guide .avatar{width:66px;height:66px}#pawa-guide .msg{font-size:14px}}

/* ===== Perched mascots on app screens ===== */
.duo{position:relative;display:flex;justify-content:center;align-items:flex-start;gap:22px;padding-top:40px;min-height:520px}
.duo .halo{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#F3E3FF 0,#E8D2FF 40%,transparent 70%);z-index:0}
.duo-col{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;width:47%;max-width:230px}
.duo-col.down{margin-top:70px}
.duo-col .hero-phone{width:100%!important;max-width:230px!important;display:block}
.duo-tag{order:3;margin-top:14px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7817B6;background:#fff;border:1px solid #EAD9FA;border-radius:999px;padding:6px 14px;box-shadow:0 8px 20px -12px rgba(76,29,149,.5)}
.duo-tag.biz{color:#2A0C4E;background:var(--gold);border-color:var(--gold)}
.perch-h{position:relative;width:100%;height:0;z-index:4}
.perch-h .sit{position:absolute;left:50%;top:6px;transform:translate(-50%,calc(-100% * var(--h,.62)));pointer-events:none;filter:drop-shadow(0 12px 14px rgba(60,20,110,.28))}
.perch-h .sit.wave{width:150%;max-width:none}
.sleep-wrap{--h:.80}
.sleep-wrap .sit.sleep{width:140%;max-width:none}
.zzz{position:absolute;left:8%;bottom:70px;font-weight:800;color:#9B59D6;font-family:"Bricolage Grotesque",sans-serif;font-size:18px;animation:zz 3s ease-in-out infinite}
.zzz i{font-style:normal;font-size:22px;margin-left:2px;position:relative;top:-10px}
.zzz b{font-size:28px;margin-left:2px;position:relative;top:-24px}
@keyframes zz{0%,100%{opacity:.3;transform:translateY(4px)}50%{opacity:1;transform:translateY(-4px)}}
.duo .pawa-say{position:absolute;top:-10px;left:-10px;z-index:6}
.duo.single .duo-col{max-width:260px;width:70%;margin-top:120px}
.duo.single .pawa-say{left:0}
.perch{position:relative;padding-top:150px}
.perch>.sit{position:absolute;left:50%;width:250px;max-width:none;top:calc(150px - 250px * var(--hip,.66) + 6px);transform:translateX(-50%);z-index:5;pointer-events:none;filter:drop-shadow(0 14px 16px rgba(60,20,110,.28))}
@media(max-width:639px){.duo{gap:12px;min-height:0;padding-top:150px}.duo .pawa-say{position:relative;top:auto;left:auto;order:-1;position:absolute;top:0;left:0;right:0;margin:auto;max-width:300px}.duo-col.down{margin-top:50px}.perch{padding-top:130px}.perch>.sit{width:210px;top:calc(130px - 210px * var(--hip,.66) + 6px)}}
.pawa-hero.two{min-height:480px}
.pawa-hero .mini-phone{width:170px;z-index:1}
.pawa-hero .mini-phone.left{right:auto;left:2%;bottom:60px;transform:rotate(-7deg)}
.pawa-hero img.pawa-fig{z-index:2}
.mp-tag{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:#fff;color:#7817B6;padding:5px 10px;border-radius:999px;box-shadow:0 6px 14px -8px rgba(76,29,149,.6)}
.mp-tag.biz{background:var(--gold);color:#2A0C4E}
.pawa-hero .pawa-say{z-index:3}
@media(max-width:639px){.pawa-hero.two{min-height:400px}.pawa-hero img.pawa-fig{height:380px}.pawa-hero .mini-phone{width:118px;border-width:4px}.pawa-hero .pawa-say{max-width:190px;font-size:13px}}
.free-card{position:relative}
.free-hero{position:relative;display:flex;align-items:flex-end;gap:4px;height:150px;margin:-24px -24px 18px;padding-right:18px;border-radius:1.4rem 1.4rem 0 0;overflow:hidden;background:radial-gradient(circle at 25% 110%,#FFE7B0 0,transparent 55%),linear-gradient(120deg,#F3E6FF,#FFF4DF)}
.free-hero img{height:168px;width:auto;margin:0 -10px -22px -8px;flex:none;filter:drop-shadow(0 8px 12px rgba(60,20,110,.25))}
.free-msg{align-self:center;display:flex;flex-direction:column;line-height:1.2;background:#fff;border-radius:16px 16px 16px 4px;padding:10px 14px;box-shadow:0 10px 24px -14px rgba(76,29,149,.55);border:1px solid #EEDFFD}
.fm-k{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7817B6}
.free-msg b{font-family:"Bricolage Grotesque",sans-serif;font-size:20px;color:#2A0C4E;margin-top:2px}
.free-msg small{font-size:12px;color:#6b5a86;margin-top:2px}


/* gentle hover only, no constant motion */
.free-hero img{transform-origin:50% 100%;transition:transform .45s cubic-bezier(.22,1,.36,1),filter .45s}
.free-card:hover .free-hero img{transform:translateY(-6px) rotate(-2deg) scale(1.03);filter:drop-shadow(0 14px 18px rgba(60,20,110,.32))}
.free-msg{transition:transform .45s cubic-bezier(.22,1,.36,1)}
.free-card:hover .free-msg{transform:translateY(-3px)}
@media(prefers-reduced-motion:reduce){.free-hero img,.free-msg{transition:none}}
/* CRM Pro banner */
.pro-hero{background:radial-gradient(120% 140% at 20% 100%,#FFE7A3 0,#F6C55A 30%,#B65BE8 75%,#7817B6 100%)}
.pro-card:hover .pro-hero img{transform:translateY(-6px) rotate(2deg) scale(1.03)}
/* keep tour button clear of mobile tab bar (Contact) */
@media(max-width:1023px){#pawa-guide{bottom:calc(84px + env(safe-area-inset-bottom))}}
body.sheet-open #pawa-guide{opacity:0;pointer-events:none;transition:opacity .2s}

/* ===== Walking Pawa tour (silent) ===== */
#pawa-guide{display:none!important}
#pawa-walk{position:fixed;z-index:85;width:170px;display:flex;flex-direction:column;align-items:center;font-family:"DM Sans",sans-serif;transition:left 1.1s cubic-bezier(.45,.05,.35,1),top 1.1s cubic-bezier(.45,.05,.35,1)}
#pawa-walk.nofx{transition:none}
#pawa-walk.home{right:18px;bottom:18px;left:auto;top:auto;width:110px}
#pawa-walk .pw-body{position:relative;width:100%;cursor:pointer}
#pawa-walk .pw-body img{display:block;width:100%;height:auto;filter:drop-shadow(0 14px 14px rgba(60,20,110,.3));transform-origin:50% 100%;transition:transform .3s}
#pawa-walk.face-left .pw-body img{transform:scaleX(-1)}
#pawa-walk .shadow{position:absolute;left:20%;right:20%;bottom:-4px;height:10px;border-radius:50%;background:rgba(60,20,110,.22);filter:blur(3px)}
#pawa-walk.walking .pw-body img{animation:pwStep .28s ease-in-out infinite alternate}
#pawa-walk.walking.face-left .pw-body img{animation-name:pwStepL}
#pawa-walk.walking .shadow{animation:pwSh .28s ease-in-out infinite alternate}
@keyframes pwStep{from{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-9px) rotate(4deg)}}
@keyframes pwStepL{from{transform:scaleX(-1) translateY(0) rotate(-4deg)}to{transform:scaleX(-1) translateY(-9px) rotate(4deg)}}
@keyframes pwSh{to{transform:scaleX(.8);opacity:.6}}
#pawa-walk:not(.walking):not(.home) .pw-body img{animation:pwIdle 3s ease-in-out infinite}
@keyframes pwIdle{50%{transform:translateY(-4px)}}
#pawa-walk.face-left:not(.walking):not(.home) .pw-body img{animation:none}
#pawa-walk .pw-bubble{position:absolute;bottom:calc(100% - 6px);width:min(320px,calc(100vw - 24px));background:#fff;border-radius:20px;padding:14px 14px 12px;box-shadow:0 24px 50px -20px rgba(40,10,80,.55);border:1px solid #EEDFFD;color:#2A0C4E}
#pawa-walk.home .pw-bubble{right:0}
#pawa-walk:not(.home) .pw-bubble{left:50%;transform:translateX(-50%)}
#pawa-walk .pw-bubble[hidden]{display:none}
#pawa-walk .hd{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;color:#7817B6;text-transform:uppercase;letter-spacing:.1em}
#pawa-walk .hd button{color:#9a8bb0;font-size:18px;line-height:1}
#pawa-walk .msg{margin-top:6px;font-size:15px;line-height:1.45}
#pawa-walk .pick{display:flex;flex-direction:column;gap:8px;margin-top:12px}
#pawa-walk .pick[hidden],#pawa-walk .ctl[hidden],#pawa-walk .bar[hidden]{display:none}
#pawa-walk .pick button{text-align:left;font-size:14px;font-weight:700;border-radius:14px;padding:10px 14px}
#pawa-walk .bar{height:4px;background:#F1E6FC;border-radius:4px;margin-top:10px;overflow:hidden}
#pawa-walk .bar i{display:block;height:100%;background:linear-gradient(90deg,#7817B6,#EB34A9);transition:width .4s}
#pawa-walk .ctl{display:flex;gap:6px;align-items:center;margin-top:10px}
#pawa-walk .cnt{font-size:12px;color:#8a7aa3;font-weight:700;margin-right:auto}
#pawa-walk .ctl button,#pawa-walk .ctl a{font-size:13px;font-weight:700;border-radius:999px;padding:7px 12px}
#pawa-walk .b-ghost{color:#7817B6;background:#F6EDFF}
#pawa-walk .b-main{color:#fff;background:#7817B6}
#pawa-walk .b-gold{color:#2A0C4E;background:var(--gold)}
.pawa-focus{outline:3px solid #EB34A9!important;outline-offset:3px;box-shadow:0 0 0 8px rgba(235,52,169,.12)!important;transition:outline-color .4s}
@media(max-width:639px){#pawa-walk{width:110px}#pawa-walk.home{width:80px;bottom:calc(90px + env(safe-area-inset-bottom))}}
@media(max-width:1023px) and (min-width:640px){#pawa-walk.home{bottom:calc(90px + env(safe-area-inset-bottom))}}
body.sheet-open #pawa-walk{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){#pawa-walk{transition:none}#pawa-walk .pw-body img{animation:none!important}}
.tour-pick{display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem}

#pawa-walk .pw-body img{transition:transform .3s,opacity .2s}
/* hero: keep Pawa's greeting clear of the phone mockups */
.pawa-hero.two{padding-top:16px;min-height:480px}
.pawa-hero.two .pawa-say{top:0;left:50%;transform:translateX(-50%);max-width:300px;width:max-content;text-align:center;border-radius:20px}
.pawa-hero.two .pawa-say::after{content:"";position:absolute;left:50%;bottom:-8px;width:16px;height:16px;background:#fff;border-right:1px solid #EEDFFD;border-bottom:1px solid #EEDFFD;transform:translateX(-50%) rotate(45deg)}
@media(max-width:639px){.pawa-hero.two{padding-top:12px;min-height:410px}.pawa-hero.two .pawa-say{max-width:min(290px,92vw);font-size:13px}}

/* ===== v3: story intro + chapter guide ===== */
html.pawa-lock{overflow:hidden}
#pawa-story{position:fixed;inset:0;z-index:95;background:rgba(36,10,64,.55);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;font-family:"DM Sans",sans-serif}
#pawa-story[hidden]{display:none}
.ps-card{position:relative;width:min(560px,100%);background:#fff;border-radius:28px;padding:22px 24px 18px;box-shadow:0 30px 80px rgba(60,20,110,.35);cursor:pointer;animation:psIn .45s cubic-bezier(.2,.9,.3,1.2)}
@keyframes psIn{from{transform:translateY(20px) scale(.96);opacity:0}}
.ps-seg,.pw-seg{display:flex;gap:4px}.ps-seg i,.pw-seg i{flex:1;height:4px;border-radius:4px;background:#EEDFFD;overflow:hidden}
.ps-seg i b,.pw-seg i b{display:block;height:100%;width:0;background:linear-gradient(90deg,#7817B6,#EB34A9)}
.ps-seg i.done b{width:100%}.ps-seg i.on b{animation:psBar 4.6s linear forwards}@keyframes psBar{to{width:100%}}
.ps-x{position:absolute;top:14px;right:16px;font-size:22px;color:#7a5c99;background:none;border:0;cursor:pointer}
.ps-map{display:grid;grid-template-columns:1fr 60px 120px 60px 1fr;align-items:center;margin:22px 0 10px}
.ps-map .nd{display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .4s,opacity .4s;opacity:.4}
.ps-map .nd span{font-size:30px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#F6EEFE}
.ps-map .nd b{margin-top:6px;font-family:"Bricolage Grotesque",sans-serif;color:#2a0b49}.ps-map .nd i{font-style:normal;font-size:12px;color:#7a5c99}
.ps-map .nd.p{opacity:1}.ps-map .nd.p img{width:120px;height:150px;object-fit:contain;filter:drop-shadow(0 10px 12px rgba(60,20,110,.25))}
.ps-map.m-c .nd.c,.ps-map.m-cv .nd.c,.ps-map.m-v .nd.v,.ps-map.m-cv .nd.v{opacity:1;transform:scale(1.08)}
.ps-map.m-c .nd.c span,.ps-map.m-cv .nd span{background:linear-gradient(135deg,#7817B6,#EB34A9);box-shadow:0 8px 20px rgba(120,23,182,.35)}
.ps-map.m-v .nd.v span{background:linear-gradient(135deg,#F5B841,#EB34A9)}
.ps-map .ln{position:relative;height:4px;background:repeating-linear-gradient(90deg,#E3CCFA 0 6px,transparent 6px 12px)}
.ps-map .ln em{position:absolute;top:-3px;width:10px;height:10px;border-radius:50%;background:#EB34A9;opacity:0}
.ps-map.m-c .ln.l em,.ps-map.m-cv .ln em,.ps-map.m-v .ln.r em{animation:flow 1.6s linear infinite;opacity:1}
.ps-map .ln em:nth-child(2){animation-delay:.53s!important}.ps-map .ln em:nth-child(3){animation-delay:1.06s!important}
@keyframes flow{from{left:-5px}to{left:calc(100% - 5px)}}
.ps-txt{min-height:72px;text-align:center;font-size:17px;line-height:1.5;color:#3b2259;margin:6px 4px 10px}.ps-txt b{color:#7817B6}
.ps-txt.in{animation:psT .5s ease}@keyframes psT{from{opacity:0;transform:translateY(8px)}}
.ps-pick{text-align:center}.ps-pick p{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:20px;color:#2a0b49;margin-bottom:12px}
.ps-pick button{display:block;width:100%;margin-top:10px;padding:14px;border-radius:999px;font-weight:700;font-size:16px;border:0;cursor:pointer}
.ps-foot{display:flex;justify-content:space-between;font-size:13px;color:#9a7fb6}.ps-skip{background:none;border:0;color:#7817B6;font-weight:600;cursor:pointer}
@media(max-width:520px){.ps-map{grid-template-columns:1fr 26px 86px 26px 1fr}.ps-map .nd.p img{width:86px;height:110px}.ps-map .nd span{width:48px;height:48px;font-size:22px}.ps-map .nd i{display:none}.ps-txt{font-size:15px}}
/* chapter card */
#pawa-walk .pw-bubble{width:320px}
#pawa-walk .pw-seg{margin-bottom:10px}
#pawa-walk .kick{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#EB34A9}
#pawa-walk .pw-t{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:19px;line-height:1.2;color:#2a0b49;margin:4px 0 6px}
#pawa-walk .msg{font-size:14px;line-height:1.5;color:#4b3366}
#pawa-walk .chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}
#pawa-walk .chips button{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:#F6EEFE;color:#6a1aa0;border:1px solid #E3CCFA;cursor:pointer}
#pawa-walk .chips button:hover{background:#7817B6;color:#fff}
#pawa-walk .ctl{display:flex;gap:6px;margin-top:10px}#pawa-walk .ctl .pp{flex:1}
#pawa-walk .endrow{display:flex;flex-direction:column;gap:6px;margin-top:10px}#pawa-walk .endrow>*{text-align:center}
.pawa-dim>.card:not(.pawa-lit),.pawa-dim>li:not(.pawa-lit){opacity:.38;filter:saturate(.5);transition:opacity .5s,filter .5s}
.pawa-lit{opacity:1!important;box-shadow:0 0 0 3px #EB34A9,0 18px 40px rgba(120,23,182,.25)!important;transform:translateY(-3px);transition:box-shadow .5s,transform .5s}
.pawa-pop{animation:pwPop .7s ease}@keyframes pwPop{40%{transform:scale(1.05)}}
@media(max-width:639px){#pawa-walk:not(.home){width:100%!important;left:0!important;right:0;top:auto!important;bottom:0;flex-direction:row;align-items:flex-end;padding:0 8px 8px}
 #pawa-walk:not(.home) .pw-body{width:76px;flex:none}
 #pawa-walk:not(.home) .pw-bubble{position:static;width:auto;flex:1;max-height:46vh;overflow:auto}
 #pawa-walk .pw-t{font-size:16px}#pawa-walk .msg{font-size:13px}}


/* hero entrance: Pawa walks in, waves, then speaks */
.pawa-hero .pawa-fig.pw-enter{animation:pwWalkIn 1.6s cubic-bezier(.3,.7,.3,1) both;transform-origin:50% 100%}
@keyframes pwWalkIn{0%{transform:translateX(70vw) scaleX(-1);opacity:0}8%{opacity:1}
 15%{transform:translateX(60vw) translateY(-8px) scaleX(-1)}25%{transform:translateX(50vw) scaleX(-1)}35%{transform:translateX(40vw) translateY(-8px) scaleX(-1)}
 45%{transform:translateX(30vw) scaleX(-1)}55%{transform:translateX(21vw) translateY(-8px) scaleX(-1)}65%{transform:translateX(13vw) scaleX(-1)}
 75%{transform:translateX(6vw) translateY(-6px) scaleX(-1)}88%{transform:translateX(0) scaleX(-1)}100%{transform:translateX(0) scaleX(1)}}
@keyframes pwWave{0%,100%{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(4deg)}}
.pawa-hero .pw-hand{position:absolute;z-index:6;font-size:44px;pointer-events:none;transform-origin:70% 90%;animation:pwHand 1.8s ease-in-out 1.6s both}
@keyframes pwHand{0%{opacity:0;transform:scale(.3)}12%{opacity:1;transform:scale(1.1) rotate(0)}25%{transform:rotate(-22deg)}40%{transform:rotate(18deg)}55%{transform:rotate(-22deg)}70%{transform:rotate(18deg)}85%{opacity:1;transform:rotate(0)}100%{opacity:0;transform:scale(.6)}}
.pawa-hero .pawa-say.pw-wait{opacity:0;transform:translateX(-50%) translateY(10px) scale(.9)}
.pawa-hero .pawa-say.pw-show{transition:opacity .45s,transform .5s cubic-bezier(.2,.9,.3,1.4)}
.pawa-hero{overflow:visible}
@media(prefers-reduced-motion:reduce){.pawa-hero .pawa-fig.pw-enter,.pawa-hero .pw-hand{animation:none}.pawa-hero .pawa-say.pw-wait{opacity:1;transform:translateX(-50%)}}


#pawa-walk,#pawa-story{display:none!important}
.pw-btn{margin-top:1rem;display:inline-flex;gap:8px;align-items:center;font-weight:700;font-size:14px;color:#7817B6;background:#fff;border:1px solid #E2CCF7;padding:8px 16px;border-radius:999px;margin-right:6px}
.pw-btn:hover{background:#7817B6;color:#fff}
/* journey rail */
#pawa-rail{position:fixed;left:22px;top:18vh;height:64vh;width:16px;z-index:60;opacity:0;transform:translateX(-30px);transition:opacity .5s,transform .5s;font-family:"DM Sans",sans-serif}
#pawa-rail.show{opacity:1;transform:none}
.pr-track{position:absolute;left:6px;top:0;bottom:0;width:4px;border-radius:4px;background:rgba(120,23,182,.12)}
.pr-fill{position:absolute;left:0;top:0;width:100%;border-radius:4px;background:linear-gradient(#7817B6,#EB34A9,#F5B841);transition:height .15s linear}
.pr-stop{position:absolute;left:0;width:16px;height:16px;margin-top:-8px;border-radius:50%;border:3px solid #fff;background:#E3CCFA;box-shadow:0 2px 8px rgba(60,20,110,.25);cursor:pointer;padding:0;transition:background .3s,transform .3s}
.pr-stop.past,.pr-stop.on{background:#7817B6}.pr-stop.on{transform:scale(1.25);background:#EB34A9}
.pr-stop span{position:absolute;left:26px;top:50%;transform:translate(-6px,-50%);white-space:nowrap;font-size:12px;font-weight:700;color:#3B0A66;background:#fff;padding:4px 10px;border-radius:999px;box-shadow:0 6px 16px -6px rgba(60,20,110,.4);opacity:0;pointer-events:none;transition:.2s}
.pr-stop:hover span{opacity:1;transform:translate(0,-50%)}
.pr-pawa{position:absolute;left:20px;width:58px;margin-top:-46px;transition:top .15s linear;pointer-events:none}
.pr-pawa img{width:58px;height:72px;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(60,20,110,.3));transition:opacity .15s,transform .15s;transform-origin:50% 100%}
.pr-pawa img.swap{opacity:0;transform:scale(.8)}
.pr-pawa.moving img{animation:prBob .3s ease-in-out infinite alternate}
@keyframes prBob{to{transform:translateY(-4px) rotate(3deg)}}
.pr-pawa em{position:absolute;left:62px;top:22px;white-space:nowrap;font-style:normal;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(90deg,#7817B6,#EB34A9);padding:3px 9px;border-radius:999px;opacity:0;transition:opacity .3s}
.pr-pawa.moving em{opacity:1}
@media(max-width:767px){#pawa-rail{right:auto;left:0;top:auto;bottom:0;width:100%;height:4px}
 .pr-track{left:0;right:0;top:0;bottom:auto;width:auto;height:4px;border-radius:0}.pr-fill{display:none}.pr-stop,.pr-pawa em{display:none}
 .pr-pawa{right:auto;width:40px;margin:0}.pr-pawa img{width:40px;height:50px}
 #pawa-rail .pr-pawa{top:auto!important;bottom:4px;left:var(--x,0)}}
@media(prefers-reduced-motion:reduce){.pr-pawa.moving img{animation:none}}

.pawa-hero .pawa-fig{animation:none!important}
/* rail v2: Pawa left of the track, labels always shown, desktop only */
#pawa-rail{left:104px}
#pawa-rail .pr-pawa{left:auto;right:22px;width:88px;margin-top:-62px}
#pawa-rail .pr-pawa img{width:88px;height:110px;filter:drop-shadow(0 8px 12px rgba(60,20,110,.35))}
#pawa-rail .pr-pawa::before{content:"";position:absolute;left:8px;right:8px;bottom:2px;height:10px;border-radius:50%;background:radial-gradient(rgba(235,52,169,.45),transparent 70%);filter:blur(2px)}
#pawa-rail .pr-pawa em{display:none}
#pawa-rail .pr-stop span{opacity:.75;transform:translate(0,-50%);font-size:11.5px;background:rgba(255,255,255,.85);backdrop-filter:blur(4px)}
#pawa-rail .pr-stop.on span{opacity:1;color:#fff;background:linear-gradient(90deg,#7817B6,#EB34A9)}
#pawa-rail .pr-stop:hover span{opacity:1}
@media(max-width:1023px){#pawa-rail{display:none!important}}
#pawa-rail{display:none!important}
