@font-face{font-family:'Tiro Devanagari Hindi';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/tiro-devanagari-hindi-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Tiro Devanagari Hindi';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/tiro-devanagari-hindi-devanagari-400-normal.woff2) format('woff2');unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FF}
@font-face{font-family:'Mukta';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/mukta-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Mukta';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/mukta-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Mukta';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/mukta-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#3A2348;--ink-2:#6A5476;--plum:#5B3478;--plum-d:#45265C;--marigold:#E39A2D;--gold:#F2B84B;--kumkum:#B7322C;
  --paper:#FFFBF5;--line:rgba(91,52,120,.14);
  --max:1200px;--r-lg:30px;--r-md:20px;
  --sh-soft:0 1px 0 rgba(255,255,255,.8) inset,0 2px 4px rgba(91,52,120,.06),0 14px 30px -10px rgba(120,60,40,.18),0 40px 70px -30px rgba(91,52,120,.28);
  --sh-lift:0 2px 6px rgba(91,52,120,.08),0 24px 50px -18px rgba(120,60,40,.30),0 60px 90px -40px rgba(91,52,120,.35);
  --serif:"Tiro Devanagari Hindi",Georgia,serif;
  --sans:"Mukta",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{background:#FFF6EC;scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;color:var(--ink);font:400 18px/1.6 var(--sans);
  background:linear-gradient(180deg,#FFE4CF 0,#FFEEDD 7%,#FFF6EC 18%,#FFF8F0 36%,#FFF5EE 52%,#FBEFF1 64%,#F3E8F4 80%,#ECE1F4 92%,#E6D9F1 100%);
  overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
button{font-family:inherit}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.01em;color:var(--ink)}
p{margin:0}
.dev{font-family:var(--serif)}
.skip{position:absolute;left:-999px;top:8px;background:var(--plum);color:#fff;padding:10px 16px;border-radius:12px;z-index:100}
.skip:focus{left:12px}
:focus-visible{outline:3px solid var(--marigold);outline-offset:3px;border-radius:10px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font:600 17px/1 var(--sans);
  text-decoration:none;border:0;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s;white-space:nowrap}
.btn .wa-logo{width:24px;height:24px;flex:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.15))}
.btn .ph{width:20px;height:20px;flex:none}
.btn-wa{background:linear-gradient(180deg,#6A3F8A,var(--plum) 55%,var(--plum-d));color:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 -2px 0 rgba(0,0,0,.18) inset,0 10px 22px -8px rgba(69,38,92,.6)}
.btn-call,.btn-ghost{background:rgba(255,255,255,.72);color:var(--plum-d);box-shadow:0 0 0 1.5px rgba(91,52,120,.28) inset,0 8px 18px -12px rgba(91,52,120,.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
@media (hover:hover){.btn:hover{transform:translateY(-2px)}.btn-wa:hover{box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 -2px 0 rgba(0,0,0,.18) inset,0 16px 28px -10px rgba(69,38,92,.7)}}
.btn.sm{min-height:44px;padding:0 18px;font-size:15.5px;gap:8px}
.btn.sm .wa-logo{width:21px;height:21px}
.btn.big{min-height:58px;padding:0 30px;font-size:18px}
.nav-b{width:44px;height:44px;flex:none;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;background:rgba(255,255,255,.85);
  box-shadow:0 0 0 1.5px rgba(91,52,120,.18) inset,0 6px 14px -8px rgba(91,52,120,.45);transition:transform .2s,background .2s}
.nav-b svg{width:20px;height:20px;fill:none;stroke:var(--plum-d);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.nav-b:active{transform:scale(.92)}
@media (hover:hover){.nav-b:hover{background:#fff}}
.nav-b[disabled]{opacity:.35;cursor:default}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;gap:24px;padding:14px max(24px,calc((100vw - var(--max))/2));
  transition:background .3s,box-shadow .3s,padding .3s}
.hdr.scrolled{background:rgba(255,248,240,.84);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);padding-top:8px;padding-bottom:8px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.1}
.b-name{font-family:var(--serif);font-size:21px}
.b-sub{font-size:13.5px;color:var(--ink-2)}
.nav{display:flex;gap:26px;margin-left:auto}
.nav a{text-decoration:none;font-weight:500;font-size:16px;color:var(--ink);padding:6px 0;background:linear-gradient(var(--marigold),var(--marigold)) 0 100%/0 2px no-repeat;transition:background-size .3s}
.nav a:hover{background-size:100% 2px}
.hdr-act{display:flex;gap:10px}

main{overflow-x:clip}
main>section{position:relative;z-index:1;max-width:var(--max);margin:0 auto;padding-left:24px;padding-right:24px}
.sec-head{text-align:center;max-width:680px;margin:0 auto 34px}
.sec-head .diya{width:46px;height:46px;margin:0 auto 6px}
.sec-head h2{font-size:clamp(32px,4vw,52px);line-height:1.08}
.sec-head p{margin-top:12px;color:var(--ink-2);font-size:18.5px}
.sec-head b{color:var(--plum-d);font-weight:600}
.diya .flame{transform-origin:32px 30px;animation:flick 1.6s ease-in-out infinite alternate}
.diya .flame-in{transform-origin:32px 30px;animation:flick 1.1s ease-in-out infinite alternate-reverse}
@keyframes flick{0%{transform:scale(1,1) rotate(-2deg)}50%{transform:scale(.94,1.06) rotate(2deg)}100%{transform:scale(1.04,.96) rotate(-1deg)}}

/* ---------- hero ---------- */
.hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center;min-height:100svh;padding-top:96px;padding-bottom:40px}
.hero::before{content:"";position:absolute;z-index:-1;left:-20%;top:-10%;width:80%;height:70%;background:radial-gradient(closest-side,rgba(255,206,140,.45),rgba(255,206,140,0));pointer-events:none}
.hello{display:flex;align-items:center;gap:14px;font-size:16.5px;line-height:1.4;color:var(--ink-2);max-width:30em}
.hello b{display:block;color:var(--ink);font-weight:600;font-size:17.5px}
.hello-face{flex:none;width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 12%;box-shadow:0 0 0 3px #fff,0 0 0 5px rgba(227,154,45,.45),var(--sh-soft)}
.hero h1{font-size:clamp(44px,5.4vw,80px);line-height:1.02;margin:22px 0 18px;letter-spacing:-.02em}
.hero-sub{font-size:20px;max-width:30em;color:#4E3A5C}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-note{margin-top:14px;font-size:15.5px;color:var(--ink-2)}
.mus-hint{display:inline-block;white-space:nowrap}
.mus-hint b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--plum);font-weight:600;box-shadow:0 0 0 1px var(--line);margin:0 2px;font-size:14px;line-height:1}

/* ---------- wheel ---------- */
.wheel-wrap{position:relative;display:flex;flex-direction:column;align-items:center}
.side-pic{position:absolute;margin:0;left:-34px;bottom:120px;width:150px;z-index:0;transform:rotate(-5deg);border-radius:90px 90px 22px 22px;overflow:hidden;
  box-shadow:0 0 0 5px #fff,var(--sh-lift);aspect-ratio:4/5;background:#f3e6d6}
.side-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 14%}
.wheel{position:relative;width:min(600px,100%);aspect-ratio:1;z-index:1}
.halo{position:absolute;inset:-4%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.9),rgba(255,236,214,.65) 62%,rgba(232,220,243,.5) 82%,rgba(232,220,243,0));pointer-events:none}
.orbit{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;animation:spin 220s linear infinite reverse}
.orbit circle{fill:none;stroke:rgba(227,154,45,.55);stroke-width:.45;stroke-dasharray:.4 1.6;stroke-linecap:round}
.orbit .o2{stroke:rgba(91,52,120,.22);stroke-width:.3;stroke-dasharray:none}
.petals{position:absolute;inset:16.5%;border-radius:50%;pointer-events:none;
  background:repeating-conic-gradient(from 0deg,rgba(242,184,75,.30) 0 5deg,rgba(242,184,75,0) 5deg 11.25deg);
  -webkit-mask:radial-gradient(closest-side,transparent 82%,#000 84%,#000 97%,transparent 99%);mask:radial-gradient(closest-side,transparent 82%,#000 84%,#000 97%,transparent 99%);
  animation:spin 160s linear infinite}
.ring{position:absolute;inset:0;animation:spin 150s linear infinite}
.wheel.hold .ring,.wheel.hold .med-in{animation-play-state:paused}
.med{position:absolute;width:15.5%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;display:block;padding:0;border:0;background:none;cursor:pointer;transition:scale .45s cubic-bezier(.2,1.4,.4,1);-webkit-tap-highlight-color:transparent}
.med-in{display:block;width:100%;height:100%;border-radius:50%;overflow:hidden;background:#fff;box-shadow:0 0 0 2.5px #fff,0 6px 14px -6px rgba(91,52,120,.45),0 14px 24px -14px rgba(120,60,40,.35);
  animation:spin 150s linear infinite reverse;transition:box-shadow .3s}
.med img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.med.on{z-index:2;scale:1.2}
.med.on .med-in{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--marigold),0 0 26px 6px rgba(242,184,75,.55),var(--sh-lift)}
@media (hover:hover){.med:hover .med-in img{transform:scale(1.08)}}
@keyframes spin{to{transform:rotate(360deg)}}
.hub{position:absolute;inset:21.5%;border-radius:50%;overflow:hidden;box-shadow:0 0 0 8px rgba(255,255,255,.85),0 0 0 9.5px rgba(227,154,45,.45),var(--sh-lift);background:#f6e8d8;isolation:isolate}
.hub-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .6s ease,transform 4s ease}
.hub-img.on{opacity:1;transform:scale(1)}
.hub-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:30% 12% 12%;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;
  background:linear-gradient(180deg,rgba(40,20,50,0),rgba(40,20,50,.55) 55%,rgba(40,20,50,.78))}
.hc-n{font-size:13px;letter-spacing:.06em;opacity:.92}
.hc-e{font-family:var(--serif);font-size:clamp(20px,2.3vw,30px);line-height:1.1;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.wheel-card{position:relative;z-index:2;width:min(520px,100%);margin-top:6px;background:rgba(255,251,245,.94);border-radius:24px;padding:16px 18px 14px;box-shadow:var(--sh-soft);text-align:center}
.wk-k{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--kumkum)}
.wk-k span{text-transform:none;letter-spacing:0;font-weight:500;color:var(--ink-2)}
.wk-t{font-family:var(--serif);font-size:24px;line-height:1.2;margin-top:4px}
.wk-t .dev{color:var(--plum);margin-left:4px}
.wk-x{font-size:16.5px;color:#4E3A5C;margin:6px auto 0;max-width:30em;min-height:3.2em;line-height:1.55}
.wk-act{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px}

/* ---------- popular ---------- */
.popular{padding-top:70px;padding-bottom:40px}
.pc{position:relative;border-radius:var(--r-lg);background:linear-gradient(170deg,#fff 0,#FFF8F0 100%);box-shadow:var(--sh-soft);overflow:hidden;display:flex;flex-direction:column;
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--ty,0px));transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.pc::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 1px rgba(255,255,255,.8) inset,0 0 0 1px rgba(91,52,120,.06)}
@media (hover:hover){.pc:hover{--ty:-4px;box-shadow:var(--sh-lift)}}
.pc.tilting{transition:transform .12s linear,box-shadow .4s}
.pc-top{position:relative;height:118px;flex:none;display:grid;place-items:center}
.t-peach .pc-top{background:radial-gradient(120% 120% at 30% 10%,#FFE9D2,#FFD6C0 70%)}
.t-gold .pc-top{background:radial-gradient(120% 120% at 30% 10%,#FFF3D6,#FBDFA6 75%)}
.t-lilac .pc-top{background:radial-gradient(120% 120% at 30% 10%,#F4EAFB,#DCCBEE 75%)}
.t-rose .pc-top{background:radial-gradient(120% 120% at 30% 10%,#FFEDEF,#F7CFD6 75%)}
.t-sky .pc-top{background:radial-gradient(120% 120% at 30% 10%,#EEF1FB,#D6DCF1 75%)}
.t-peach{background:linear-gradient(175deg,#fff 30%,#FFF1E6)}.t-gold{background:linear-gradient(175deg,#fff 30%,#FFF6E2)}
.t-lilac{background:linear-gradient(175deg,#fff 30%,#F6EFFB)}.t-rose{background:linear-gradient(175deg,#fff 30%,#FFF0F2)}.t-sky{background:linear-gradient(175deg,#fff 30%,#F1F3FC)}
.pc-top::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Ccircle cx='20' cy='20' r='1.4' fill='%23ffffff' fill-opacity='.55'/%3E%3C/svg%3E");opacity:.8}
.pc-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pc-icon{position:relative;width:92px;height:92px;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.9),0 12px 22px -10px rgba(91,52,120,.5);transition:transform .5s cubic-bezier(.2,1.4,.4,1)}
@media (hover:hover){.pc:hover .pc-icon{transform:rotate(-6deg) scale(1.06)}}
.has-photo .pc-icon{position:absolute;width:70px;height:70px;right:16px;bottom:-30px;z-index:2}
.pc-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.pc h3{font-size:24px;line-height:1.15;padding-right:64px}
.pc:not(.has-photo) h3{padding-right:0}
.pc-g{font-size:15.5px;color:var(--ink-2);margin-top:3px;line-height:1.4}
.pts{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.pts li{position:relative;padding-left:20px;font-size:15.5px;line-height:1.5;color:#4E3A5C}
.pts li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--marigold);box-shadow:0 0 0 3px rgba(227,154,45,.18)}
.pc-act{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:16px}
/* feature */
.feat{display:grid;grid-template-columns:1.15fr 1fr;margin-bottom:26px;background:linear-gradient(160deg,#fff 0,#FFF4E8 60%,#F7EDF8 100%)}
.feat .pc-top{height:auto;min-height:440px}
.feat .pc-photo{object-position:60% 40%}
.feat .pc-top::before{display:none}
.feat .pc-top::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,244,232,0) 70%,rgba(255,244,232,.35))}
.badge{position:absolute;left:18px;top:18px;z-index:2;background:rgba(255,251,245,.92);color:var(--kumkum);font:600 13.5px/1 var(--sans);letter-spacing:.04em;padding:9px 14px;border-radius:999px;box-shadow:0 6px 16px -8px rgba(91,52,120,.45)}
.feat .pc-body{padding:34px 36px 32px}
.feat .pc-icon{width:72px;height:72px;margin-bottom:12px}
.feat h3{font-size:clamp(32px,3.2vw,44px);padding-right:0}
.feat .pc-g{font-size:18px}
.feat .pts{gap:10px;margin-top:16px}
.feat .pts li{font-size:16.5px}
.rail{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rail-ctl{display:none}
.ask-card{background:linear-gradient(165deg,#F4EAFB,#FFF1E6)}
.ask-card .pc-icon{width:84px;height:84px;object-fit:cover;margin-bottom:12px}
.ask-p{font-size:15.5px;color:#4E3A5C;margin-top:10px;line-height:1.5}

/* ---------- all services ---------- */
.index{padding-top:70px;padding-bottom:60px}
.jump{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 28px;max-width:900px}
.jump a{display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 5px;border-radius:999px;background:rgba(255,255,255,.8);text-decoration:none;font-weight:500;font-size:15.5px;
  box-shadow:0 0 0 1px var(--line),0 6px 14px -10px rgba(91,52,120,.5);transition:transform .25s,background .25s}
.jump img{width:32px;height:32px;border-radius:50%}
@media (hover:hover){.jump a:hover{transform:translateY(-2px);background:#fff}}
.grps{columns:2;column-gap:22px}
.grp{break-inside:avoid;display:inline-block;width:100%;margin:0 0 22px;background:rgba(255,251,245,.92);border-radius:var(--r-md);box-shadow:0 0 0 1px rgba(91,52,120,.08),0 14px 30px -20px rgba(91,52,120,.45);padding:6px 0 10px}
.g-hd{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:12px 18px 10px 14px}
.g-hd img{width:58px;height:58px;border-radius:50%;box-shadow:0 4px 10px -4px rgba(91,52,120,.35)}
.g-t h3{font-size:23px;line-height:1.2}
.g-t p{font-size:15px;color:var(--ink-2);line-height:1.4;margin-top:2px}
.g-c{font-size:14px;font-weight:600;color:var(--plum);background:#F1E8F8;border-radius:999px;min-width:34px;height:30px;display:grid;place-items:center;padding:0 9px}
.svc{list-style:none;margin:0;padding:0 18px}
.svc li.sub{font:600 13px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--kumkum);padding:14px 2px 4px}
.svc li a{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;padding:9px 34px 9px 2px;border-bottom:1px solid var(--line);text-decoration:none;position:relative;transition:padding .25s,background .25s;border-radius:8px}
.svc .nm{font-weight:500;font-size:17px}
.svc .gl{color:var(--ink-2);font-size:15px}
.svc .gl::before{content:"("}.svc .gl::after{content:")"}
.wa-mini{position:absolute;right:4px;top:50%;width:21px;height:21px;margin-top:-10.5px;opacity:.55;transition:opacity .25s,transform .25s}
.svc li a:hover .wa-mini,.svc li a:focus-visible .wa-mini{opacity:1;transform:scale(1.1)}
@media (hover:hover){.svc li a:hover{padding-left:10px;background:rgba(255,255,255,.7)}}
.js .grp:not(.open) .more{display:none}
.g-more{display:none}
.js .g-more{display:flex;align-items:center;gap:6px;margin:10px 18px 4px;padding:0 16px;min-height:40px;border-radius:999px;border:0;cursor:pointer;background:#F1E8F8;color:var(--plum-d);font:600 15px/1 var(--sans)}
.g-more svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;transition:transform .3s}
.g-close{display:none}
.grp.open .g-open{display:none}.grp.open .g-close{display:inline}.grp.open .g-more svg{transform:rotate(180deg)}

/* ---------- about ---------- */
.about{display:grid;grid-template-columns:.8fr 1fr;gap:60px;align-items:start;padding-top:70px;padding-bottom:70px}
.ab-pic{margin:0;justify-self:end;width:100%;max-width:420px;position:sticky;top:100px}
.ab-frame{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-lift);aspect-ratio:4/5;transform:rotate(-1.2deg)}
.ab-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.ab-text h2{font-size:clamp(34px,4vw,50px);line-height:1.08}
.ab-lead{font-size:19.5px;margin-top:14px;color:#4E3A5C}
.ab-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.ab-list li{padding-left:22px;position:relative;font-size:17px;color:#4E3A5C}
.ab-list li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:9px;border-radius:50%;background:var(--marigold);box-shadow:0 0 0 3px rgba(227,154,45,.2)}
.ab-list b{color:var(--ink);font-weight:600}
.faq{margin-top:30px}
.faq h3{font-size:26px;margin-bottom:8px}
.qa{border-bottom:1px solid var(--line)}
.qa summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 2px;cursor:pointer;font-weight:600;font-size:17px}
.qa summary::-webkit-details-marker{display:none}
.qa summary svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--ink-2);stroke-width:2;stroke-linecap:round;transition:transform .3s}
.qa[open] summary svg{transform:rotate(180deg)}
.qa p{padding:0 2px 14px;color:#4E3A5C;font-size:16.5px}

/* ---------- booking ---------- */
.book{padding-top:30px;padding-bottom:80px}
.book-card{position:relative;max-width:660px;margin:0 auto;background:var(--paper);border-radius:var(--r-lg);padding:62px 48px 40px;box-shadow:var(--sh-lift)}
.bk-face{position:absolute;left:50%;top:-44px;width:88px;height:88px;margin-left:-44px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #fff,0 0 0 6px rgba(227,154,45,.45),var(--sh-soft)}
.book-card h2{font-size:clamp(30px,3.4vw,44px);line-height:1.1;text-align:center}
.bk-sub{text-align:center;color:var(--ink-2);margin:12px auto 24px;max-width:30em}
#bk-form{display:flex;flex-wrap:wrap;gap:14px}
.f{flex:1 1 100%;display:flex;flex-direction:column;gap:6px}
.f.half{flex:1 1 220px}
.f span{font-size:15.5px;font-weight:500}
.f input,.f select,.f textarea{font:400 17px/1.4 var(--sans);color:var(--ink);background:#fff;border:1.5px solid rgba(91,52,120,.22);border-radius:14px;padding:12px 14px;min-height:50px;width:100%}
.f textarea{resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--plum);box-shadow:0 0 0 4px rgba(91,52,120,.15)}
.f-err{flex-basis:100%;color:var(--kumkum);font-weight:500}
.bk-act{flex-basis:100%;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}

/* ---------- footer ---------- */
.ftr{position:relative;z-index:1;padding:30px 24px 50px;text-align:center;color:var(--ink-2)}
.ftr-in{max-width:var(--max);margin:0 auto;border-top:1px solid var(--line);padding-top:28px}
.f-name{font-family:var(--serif);font-size:22px;color:var(--ink)}
.f-name span{display:block;font-family:var(--sans);font-size:15.5px;color:var(--ink-2)}
.f-links{display:flex;justify-content:center;gap:26px;margin:14px 0 16px}
.f-links a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;color:var(--plum-d)}
.f-links svg{width:20px;height:20px}
.legal{font-size:14px;max-width:46em;margin:0 auto}

/* ---------- floating buttons ---------- */
.fab{position:fixed;z-index:60;bottom:calc(18px + env(safe-area-inset-bottom));border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
  transition:transform .3s cubic-bezier(.2,1.4,.4,1),box-shadow .3s,background .3s,color .3s}
.fab-wa{right:18px;height:60px;padding:0 22px 0 16px;gap:10px;border-radius:999px;color:#fff;font:600 17px/1 var(--sans);
  background:linear-gradient(180deg,#6A3F8A,var(--plum) 55%,var(--plum-d));box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 14px 30px -10px rgba(69,38,92,.7),0 0 0 4px rgba(255,255,255,.6)}
.fab-wa .wa-logo{width:30px;height:30px}
.fab-mus{left:18px;width:50px;height:50px;border-radius:50%;color:var(--plum);background:rgba(255,251,245,.94);box-shadow:0 0 0 1px var(--line),0 10px 24px -10px rgba(69,38,92,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.fab-mus svg{width:22px;height:22px}
.fab-mus .eq{display:none;gap:2px;align-items:flex-end;height:16px;margin-left:3px}
.fab-mus .eq i{width:3px;background:currentColor;border-radius:2px;height:5px;animation:eq 1s ease-in-out infinite alternate}
.fab-mus .eq i:nth-child(2){animation-delay:.3s}.fab-mus .eq i:nth-child(3){animation-delay:.6s}
@keyframes eq{to{height:15px}}
.fab-mus[aria-pressed="true"]{background:var(--plum);color:#fff;width:auto;padding:0 14px;border-radius:999px}
.fab-mus[aria-pressed="true"] .eq{display:inline-flex}
@media (hover:hover){.fab:hover{transform:translateY(-3px)}}
.fab:active{transform:scale(.94)}

/* ---------- tablet ---------- */
@media (max-width:1100px){.nav{gap:18px}.hero{gap:20px}.side-pic{width:120px;left:-10px}}
@media (max-width:1000px){.rail{grid-template-columns:repeat(2,1fr)}}

/* ---------- mobile ---------- */
@media (max-width:900px){
  body{font-size:17px}
  .nav,.hide-s{display:none}
  .hdr{padding:10px 16px}
  .b-name{font-size:18px}.b-sub{font-size:12.5px}
  .hdr-act{margin-left:auto}
  .hdr .btn-wa span{display:none}
  .hdr .btn-wa{padding:0 12px}
  main>section{padding-left:16px;padding-right:16px}
  .sec-head{margin-bottom:22px}
  .sec-head .diya{width:38px;height:38px}
  .sec-head h2{font-size:clamp(30px,8.4vw,40px)}
  .sec-head p{font-size:16.5px;margin-top:8px}
  .hero{grid-template-columns:1fr;min-height:0;padding-top:72px;padding-bottom:10px;gap:6px}
  .hello{font-size:14.5px;gap:12px}
  .hello b{font-size:15.5px}
  .hello-face{width:54px;height:54px}
  .hero h1{font-size:clamp(31px,8.6vw,40px);margin:12px 0 8px}
  .hero-sub{font-size:16px;line-height:1.5}
  .hero-cta{margin-top:14px;gap:10px;flex-wrap:nowrap}
  .hero-cta .btn{min-height:50px;padding:0 16px}
  .hero-cta .btn-wa{flex:1.6}.hero-cta .btn-call{flex:1}
  .hero-note{font-size:14px;margin-top:8px}
  .side-pic{display:none}
  .wheel-wrap{margin:0 -8px}
  .wheel{width:min(100%,430px)}
  .med{width:16.2%}
  .med.on{scale:1.16}
  .hc-e{font-size:21px}
  .hc-n{font-size:12px}
  .wheel-card{margin-top:2px;padding:14px 14px 12px;width:calc(100% - 16px)}
  .wk-t{font-size:22px}
  .wk-x{font-size:15.5px}
  .popular{padding-top:46px}
  .feat{grid-template-columns:1fr;margin-bottom:18px}
  .feat .pc-top{min-height:0;aspect-ratio:3/2}
  .feat .pc-top::after{display:none}
  .feat .pc-body{padding:18px 18px 20px}
  .feat .pc-icon{position:absolute;right:16px;top:-40px;width:72px;height:72px;margin:0}
  .feat h3{font-size:30px;padding-right:70px}
  .feat .pc-g{font-size:16px}
  .feat .pts li{font-size:15.5px}
  .feat .pc-act .btn{flex:1 1 100%}
  .rail-wrap{margin:0 -16px}
  .rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 16px 18px;scroll-padding:0 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .rail::-webkit-scrollbar{display:none}
  .rail .pc{flex:0 0 82%;max-width:330px;scroll-snap-align:start}
  .pc-top{height:104px}
  .pc-icon{width:80px;height:80px}
  .has-photo .pc-icon{width:62px;height:62px;bottom:-26px}
  .pc h3{font-size:22px}
  .pc-body{padding:16px 16px 18px}
  .pts li{font-size:15px}
  .rail-ctl{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px}
  .rail-hint{font-size:14.5px;color:var(--ink-2);text-align:center}
  .index{padding-top:46px;padding-bottom:30px}
  .jump{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin:0 -16px 18px;padding:4px 16px 8px;scrollbar-width:none}
  .jump::-webkit-scrollbar{display:none}
  .jump a{flex:none;font-size:15px}
  .grps{columns:1}
  .grp{margin-bottom:14px}
  .g-hd{grid-template-columns:50px 1fr auto;gap:12px;padding:10px 14px 8px 12px}
  .g-hd img{width:50px;height:50px}
  .g-t h3{font-size:21px}
  .g-t p{font-size:14px}
  .svc{padding:0 14px}
  .svc .nm{font-size:16.5px}.svc .gl{font-size:14.5px}
  .svc li a{padding:8px 32px 8px 2px}
  .js .g-more{margin:8px 14px 2px}
  .about{grid-template-columns:1fr;gap:22px;padding-top:46px;padding-bottom:40px}
  .ab-pic{position:relative;top:0;justify-self:start;max-width:none;display:flex;align-items:center;gap:16px}
  .ab-frame{width:118px;flex:none;transform:rotate(-2deg);border-radius:22px}
  .ab-text h2{font-size:32px}
  .ab-lead{font-size:17px}
  .ab-list li{font-size:16px}
  .faq h3{font-size:24px}
  .qa summary{font-size:16.5px}
  .qa p{font-size:15.5px}
  .book{padding-top:56px;padding-bottom:40px}
  .book-card{padding:54px 18px 24px}
  .bk-sub{font-size:16px;margin-bottom:18px}
  .bk-act .btn{flex:1 1 100%}
  .ftr{padding-bottom:110px}
  .fab-wa{right:14px;height:58px;width:58px;padding:0}
  .fab-wa span{display:none}
  .fab-mus{left:14px;width:46px;height:46px}
  .fab-mus[aria-pressed="true"]{padding:0 12px}
}
@media (max-width:380px){.hdr .b-sub{display:none}.hero h1{font-size:30px}.hero-cta .btn{font-size:15.5px;padding:0 12px;gap:7px}}

@media (prefers-reduced-motion:reduce){
  .ring,.med-in,.orbit,.petals,.diya .flame,.diya .flame-in,.fab-mus .eq i{animation:none!important}
  .pc,.hub-img{transition:none}
}

/* ---------- round 2 refinements ---------- */
.pc-top{height:150px}
.pc-photo{object-position:50% 24%}
.feat .pc-body{position:relative}
@media (min-width:901px){
  .hello-face{display:none}
  .wheel{width:min(580px,100%,calc(100svh - 150px))}
  .hero{padding-top:84px;padding-bottom:28px}
  .wheel-card{margin-top:-4px}
}
@media (max-width:900px){
  .hdr .b-sub{display:none}
  .hero-text{margin-bottom:12px}
  .hero-sub{font-size:15.5px}
  .pc-top{height:112px}
  .has-photo .pc-top{height:132px}
  .ab-pic{display:block}
  .ab-frame{width:100%;aspect-ratio:4/3;transform:rotate(-1deg);border-radius:24px}
  .ab-frame img{object-position:50% 22%}
}

/* =====================================================================
   v11: first screen with 8 tiles, wheel below, new pages, QA fixes
   ===================================================================== */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.m-only{display:none}
.brand{min-height:44px;justify-content:center}
.hdr.solid{background:rgba(255,248,240,.9);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.nav a{padding:12px 0}
html{scroll-padding-top:90px}

/* ---------- hero: who he is + everything he does ---------- */
.hero2{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-areas:"intro tiles" "cta tiles" "note tiles";
  column-gap:52px;align-content:center;align-items:center;min-height:100svh;padding-top:96px;padding-bottom:36px}
.hero2::before{content:"";position:absolute;z-index:-1;left:-18%;top:-8%;width:70%;height:70%;background:radial-gradient(closest-side,rgba(255,206,140,.45),rgba(255,206,140,0));pointer-events:none}
.hero2::after{content:"";position:absolute;z-index:-1;right:-10%;top:10%;width:60%;height:80%;background:radial-gradient(closest-side,rgba(214,190,240,.35),rgba(214,190,240,0));pointer-events:none}
.h2-intro{grid-area:intro;align-self:end}
.h2-face{width:112px;height:112px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #fff,0 0 0 7px rgba(227,154,45,.5),var(--sh-lift)}
.hero2 h1{margin:22px 0 0;line-height:1.05}
.h2-name{display:block;font:600 19px/1.3 var(--sans);color:var(--kumkum);letter-spacing:.01em}
.h2-line{display:block;font-size:clamp(40px,4.1vw,58px);line-height:1.04;letter-spacing:-.02em;margin-top:8px}
.h2-sub{font-size:20px;color:#4E3A5C;margin-top:14px;max-width:24em}
.h2-cta{grid-area:cta;display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;align-self:start}
.h2-note{grid-area:note;align-self:start;margin-top:12px;font-size:15px;color:var(--ink-2)}
.h2-tiles{grid-area:tiles}
.h2-tiles ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tile{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;height:100%;padding:18px 12px 16px;border-radius:24px;text-decoration:none;
  background:linear-gradient(170deg,#fff 0,#FFF6EC 100%);box-shadow:var(--sh-soft);overflow:hidden;isolation:isolate;
  transition:transform .35s cubic-bezier(.2,1.2,.4,1),box-shadow .35s}
.tile::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.95}
.tile::after{content:"";position:absolute;inset:5px;border-radius:19px;border:1px dashed rgba(227,154,45,.38);pointer-events:none}
.tile.t-rose::before{background:radial-gradient(120% 90% at 50% 0,#FFE3E8,#FFF6F2 70%)}
.tile.t-peach::before{background:radial-gradient(120% 90% at 50% 0,#FFE2CC,#FFF7EE 70%)}
.tile.t-gold::before{background:radial-gradient(120% 90% at 50% 0,#FFEDC2,#FFF9EC 70%)}
.tile.t-lilac::before{background:radial-gradient(120% 90% at 50% 0,#EDE0FA,#FBF6FE 70%)}
.tile.t-sky::before{background:radial-gradient(120% 90% at 50% 0,#E2E8FA,#F7F8FE 70%)}
.tile.t-plum::before{background:radial-gradient(120% 90% at 50% 0,#E6D6F5,#FFF1E6 80%)}
.tile img{width:86px;height:86px;border-radius:50%;flex:none;box-shadow:0 0 0 3px rgba(255,255,255,.95),0 10px 20px -10px rgba(91,52,120,.55);transition:transform .45s cubic-bezier(.2,1.4,.4,1)}
.tlab{display:flex;flex-direction:column;gap:3px}
.tlab b{font:400 19px/1.15 var(--serif);color:var(--ink)}
.tlab small{font-size:13.5px;line-height:1.3;color:var(--ink-2)}
@media (hover:hover){.tile:hover{transform:translateY(-4px);box-shadow:var(--sh-lift)}.tile:hover img{transform:rotate(-6deg) scale(1.06)}}
.tile:active{transform:scale(.97)}

/* ---------- the wheel, now just below the hero ---------- */
.sk-sec{padding-top:56px;padding-bottom:30px}
.sk-sec .wheel-wrap{display:grid;grid-template-columns:minmax(0,560px) minmax(0,430px);justify-content:center;align-items:center;gap:48px}
.sk-sec .wheel{width:min(560px,100%)}
.sk-sec .wheel-card{margin:0;width:100%;text-align:left;padding:24px 26px 20px}
.sk-sec .wk-x{margin-left:0;min-height:4.8em}
.sk-sec .wk-act{justify-content:flex-start}
.wheel.still .ring,.wheel.still .med-in,.wheel.still .orbit,.wheel.still .petals{animation-play-state:paused}
.wk-pause{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:8px;padding:0 14px 0 10px;border:0;border-radius:999px;background:transparent;color:var(--ink-2);font:500 14.5px/1 var(--sans);cursor:pointer}
.wk-pause svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.wk-pause .i-play{display:none;fill:currentColor;stroke:none}
.wk-pause[aria-pressed="true"] .i-play{display:block}.wk-pause[aria-pressed="true"] .i-pause{display:none}
@media (hover:hover){.wk-pause:hover{background:rgba(91,52,120,.07);color:var(--plum-d)}}

/* ---------- popular cards: anchors, links, keep-ready lists ---------- */
.pc{scroll-margin-top:90px}
.pc:focus{outline:none}
.pc-more{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:600;font-size:15.5px;color:var(--plum-d);text-decoration:none;
  background:linear-gradient(var(--marigold),var(--marigold)) 0 82%/0 2px no-repeat;transition:background-size .3s}
.pc-more:hover{background-size:100% 2px}
.arr{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.feat-links{display:flex;flex-wrap:wrap;gap:0 22px;margin-top:6px}
.keep{margin-top:12px;border-radius:16px;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px rgba(227,154,45,.28)}
.keep summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:0 14px;cursor:pointer;font-weight:600;font-size:15.5px;color:var(--plum-d)}
.keep summary::-webkit-details-marker{display:none}
.keep summary::before{content:"";width:18px;height:18px;flex:none;border-radius:5px;background:var(--marigold);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11' stroke='%23000' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='4.5' cy='6' r='1.7'/%3E%3Ccircle cx='4.5' cy='12' r='1.7'/%3E%3Ccircle cx='4.5' cy='18' r='1.7'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11' stroke='%23000' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='4.5' cy='6' r='1.7'/%3E%3Ccircle cx='4.5' cy='12' r='1.7'/%3E%3Ccircle cx='4.5' cy='18' r='1.7'/%3E%3C/svg%3E") center/contain no-repeat}
.keep summary span{flex:1}
.keep .chev{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;transition:transform .3s}
.keep[open] .chev{transform:rotate(180deg)}
.keep-b{padding:0 14px 14px}
.keep-lead{font-size:14.5px;color:#4E3A5C;line-height:1.45}
.keep-l{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:5px}
.keep-l li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.45;color:#4E3A5C}
.keep-l li::before{content:"";position:absolute;left:2px;top:.28em;width:14px;height:14px;border-radius:4px;box-shadow:0 0 0 1.5px rgba(91,52,120,.4) inset;background:#fff}
.keep-foot{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;font-weight:600;color:var(--plum-d)}
.keep-foot .wa-logo{width:20px;height:20px;flex:none}
.pc .keep+.pc-act,.pc .pc-more+.pc-act{padding-top:12px}
.t-plum .pc-top{background:radial-gradient(120% 120% at 30% 10%,#F4EAFB,#FFE9D2 75%)}

/* ---------- guides ---------- */
.guides{padding-top:40px;padding-bottom:10px}
.gd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gd{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:var(--r-md);text-decoration:none;box-shadow:var(--sh-soft);transition:transform .3s,box-shadow .3s;min-height:44px}
.gd.t-rose{background:linear-gradient(160deg,#fff,#FFEFF2)}.gd.t-sky{background:linear-gradient(160deg,#fff,#EEF1FB)}.gd.t-peach{background:linear-gradient(160deg,#fff,#FFF0E2)}
.gd img{width:64px;height:64px;border-radius:50%;flex:none;box-shadow:0 0 0 3px #fff,0 8px 16px -8px rgba(91,52,120,.5)}
.gd span{display:flex;flex-direction:column;gap:3px;flex:1}
.gd b{font:400 21px/1.15 var(--serif)}
.gd small{font-size:14.5px;line-height:1.4;color:var(--ink-2)}
.gd .arr{color:var(--plum)}
@media (hover:hover){.gd:hover{transform:translateY(-3px);box-shadow:var(--sh-lift)}}

/* ---------- about ---------- */
.ab-h3{font-size:24px;margin-top:24px}
.ab-quals{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ab-quals li{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:16px;background:rgba(255,251,245,.9);box-shadow:0 0 0 1px rgba(227,154,45,.25),0 8px 18px -14px rgba(91,52,120,.5)}
.ab-quals b{font-weight:600;font-size:16px;color:var(--ink)}
.ab-quals span{font-size:14.5px;color:var(--ink-2);line-height:1.4}
.ab-more{margin-top:10px}
.bk-priv{flex-basis:100%;text-align:center;font-size:14px;color:var(--ink-2)}
.bk-priv a{display:inline-block;padding:12px 4px;color:var(--plum-d);font-weight:600}
.book{scroll-margin-top:80px}
.book:focus{outline:none}
.grp{scroll-margin-top:90px}.grp:focus{outline:none}

/* ---------- footer ---------- */
.f-name span+span{margin-top:2px}
.f-links a{min-height:48px;padding:0 6px}
.f-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:0 6px;margin:0 auto 12px;max-width:820px}
.f-pages a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--plum-d);font-size:15px;text-decoration:none}
.f-pages a:hover{text-decoration:underline}

/* ---------- floating buttons ---------- */
.fab-wa.fab-hide{opacity:0;transform:scale(.6);pointer-events:none}
.fab-mus.resume{box-shadow:0 0 0 3px rgba(227,154,45,.6),0 10px 24px -10px rgba(69,38,92,.55)}
@media (min-width:901px){.fab-wa{display:none}}

/* ---------- sub pages ---------- */
body.sub main{padding-bottom:10px}
.sub-hero{max-width:900px!important;padding-top:118px;padding-bottom:20px;text-align:center}
.sub-hero::before{content:"";position:absolute;z-index:-1;left:50%;top:0;width:900px;max-width:120%;height:100%;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(255,206,140,.42),rgba(255,206,140,0));pointer-events:none}
.sub-hero.sky::before{background:radial-gradient(closest-side,rgba(205,214,245,.55),rgba(205,214,245,0))}
.sub-hero.rose::before{background:radial-gradient(closest-side,rgba(255,200,212,.5),rgba(255,200,212,0))}
.sub-hero.lilac::before{background:radial-gradient(closest-side,rgba(220,200,240,.5),rgba(220,200,240,0))}
.crumb{font-size:14.5px;color:var(--ink-2)}
.crumb a{display:inline-block;padding:12px 4px;color:var(--plum-d);font-weight:600;text-decoration:none}
.sub-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.06;margin-top:4px}
.sub-lead{font-size:19.5px;color:#4E3A5C;margin:16px auto 0;max-width:38em}
.sub-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}
.sub-cta:empty{display:none}
.sub-sec{max-width:1080px!important;padding-top:34px;padding-bottom:20px}
.sub-sec h2{font-size:clamp(28px,3.2vw,40px);line-height:1.12}
.sub-sec h2.mt{margin-top:28px}
.sub-p{font-size:17.5px;color:#4E3A5C;margin-top:12px;max-width:40em}
.sub-sec.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.fine{font-size:14.5px;color:var(--ink-2);margin-top:14px}
.fine a{color:var(--plum-d);font-weight:600}
.order-note{display:inline-block;margin-top:14px;padding:10px 16px;border-radius:14px;background:#FFF1DC;color:#6A3E10;font-size:15px;font-weight:500;box-shadow:0 0 0 1px rgba(227,154,45,.35)}
.mini-card,.note-card,.tip,.end-card,.vows{background:rgba(255,251,245,.94);border-radius:var(--r-md);padding:22px 24px;box-shadow:var(--sh-soft)}
.mini-card.t-rose{background:linear-gradient(170deg,#fff,#FFF0F2)}.mini-card.t-peach{background:linear-gradient(170deg,#fff,#FFF1E6)}.mini-card.t-gold{background:linear-gradient(170deg,#fff,#FFF6E2)}
.mini-card h3,.note-card h3,.tip h3{font-size:23px;line-height:1.2}
.note-card{background:linear-gradient(170deg,#fff,#F4EEFB)}
.note-card p{margin-top:8px;font-size:16px;color:#4E3A5C}
.tips{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px}
.tip p{margin-top:6px;font-size:15.5px;color:#4E3A5C;line-height:1.5}
.share{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:18px}
.share-sec .share{justify-content:flex-start}
.share-ok{font-size:14.5px;font-weight:600;color:#1F7A44;min-width:7em}
/* timeline */
.tl-wrap{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:22px}
.tl-sh{font:600 13.5px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--kumkum);margin:0 0 10px 58px}
.tl{list-style:none;margin:0;padding:0;position:relative}
.tl::before{content:"";position:absolute;left:21px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--marigold),rgba(91,52,120,.25));border-radius:2px}
.tl-i{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;padding:0 0 12px}
.tl-n{position:relative;z-index:1;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font:400 19px/1 var(--serif);color:#fff;
  background:radial-gradient(circle at 35% 30%,#F6C25A,#D98820 70%);box-shadow:0 0 0 4px #FFF6EC,0 8px 16px -8px rgba(120,60,40,.6)}
.tl-c{background:rgba(255,251,245,.95);border-radius:18px;padding:12px 16px 13px;box-shadow:0 0 0 1px rgba(91,52,120,.07),0 12px 26px -20px rgba(91,52,120,.5)}
.tl-c h4{font:400 21px/1.2 var(--serif);color:var(--ink)}
.tl-c h4 span{display:block;font:500 14.5px/1.3 var(--sans);color:var(--kumkum);margin-top:2px}
.tl-c p{font-size:16px;color:#4E3A5C;margin-top:5px;line-height:1.5}
.seven{margin:12px 0 0;padding:0;list-style:none;counter-reset:s;display:grid;gap:8px}
.seven li{counter-increment:s;display:flex;align-items:center;gap:12px;font-size:16.5px;color:#4E3A5C}
.seven li::before{content:counter(s);flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:400 16px/1 var(--serif);color:var(--plum-d);background:#F1E8F8;box-shadow:0 0 0 1px rgba(91,52,120,.15)}
/* funeral */
.fsteps{list-style:none;margin:18px 0 0;padding:0;counter-reset:f;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.fsteps li{counter-increment:f;position:relative;background:linear-gradient(170deg,#fff,#F3F5FC);border-radius:var(--r-md);padding:18px 20px 18px 66px;box-shadow:var(--sh-soft)}
.fsteps li::before{content:counter(f);position:absolute;left:18px;top:18px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:400 17px/1 var(--serif);color:#fff;background:#6E7FB5}
.fsteps h3{font-size:22px;line-height:1.2}
.fsteps p{margin-top:6px;font-size:16px;color:#4E3A5C;line-height:1.55}
.soft-l{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:12px}
.soft-l li{font-size:16.5px;color:#4E3A5C;line-height:1.55;padding:12px 16px;border-radius:16px;background:rgba(255,251,245,.9);box-shadow:0 0 0 1px rgba(91,52,120,.08)}
.soft-l b{display:block;font-family:var(--serif);font-weight:400;font-size:20px;color:var(--ink)}
.sub-sec .keep{margin-top:16px}
/* end card + services list */
.end-card{text-align:center;max-width:680px;margin:20px auto 0;padding:56px 24px 28px;position:relative}
.end-card img{position:absolute;left:50%;top:-40px;width:80px;height:80px;margin-left:-40px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #fff,0 0 0 6px rgba(227,154,45,.45)}
.end-card p{margin-top:10px;color:#4E3A5C}
.sub-end{padding-top:60px;padding-bottom:50px}
.pb-serv{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pb-serv a{display:flex;flex-direction:column;gap:2px;height:100%;padding:14px 16px;border-radius:16px;text-decoration:none;background:rgba(255,251,245,.94);box-shadow:0 0 0 1px rgba(91,52,120,.08),0 10px 22px -16px rgba(91,52,120,.5);position:relative;padding-right:36px}
.pb-serv b{font:400 19px/1.2 var(--serif)}.pb-serv small{font-size:14.5px;color:var(--ink-2)}
.pb-serv .arr{position:absolute;right:12px;top:16px;color:var(--plum)}
.sub-sec .faq{margin-top:10px;max-width:760px}
/* privacy prose */
.prose{max-width:780px!important}
.prose h2{font-size:28px;margin-top:28px}
.prose p,.prose li{font-size:17px;color:#4E3A5C;margin-top:10px;line-height:1.6}
.prose ul{padding-left:22px;margin:8px 0 0}
.prose a{color:var(--plum-d);font-weight:600}
.prose .fine{margin-top:0}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  .hero2{column-gap:30px}
  .h2-tiles ul{gap:12px}
  .tile img{width:72px;height:72px}
  .tlab b{font-size:17.5px}
  .tips{grid-template-columns:repeat(2,1fr)}
  .pb-serv{grid-template-columns:repeat(2,1fr)}
}

/* ---------- phone ---------- */
@media (max-width:900px){
  .d-only{display:none!important}
  .m-only{display:inline-grid}
  .hdr-call{place-items:center;width:44px;height:44px;border-radius:50%;color:var(--plum-d);background:rgba(255,255,255,.75);box-shadow:0 0 0 1.5px rgba(91,52,120,.22) inset}
  .hdr-call .ph{width:20px;height:20px}
  .hero2{grid-template-columns:1fr;grid-template-areas:"intro" "tiles" "cta" "note";min-height:0;padding-top:66px;padding-bottom:6px;row-gap:0}
  .h2-intro{display:flex;align-items:center;gap:14px;align-self:auto}
  .h2-face{width:62px;height:62px;flex:none;box-shadow:0 0 0 3px #fff,0 0 0 5px rgba(227,154,45,.5),var(--sh-soft)}
  .hero2 h1{margin:0}
  .h2-name{font-size:14.5px;line-height:1.25}
  .h2-line{font-size:clamp(23px,6.6vw,28px);margin-top:2px;line-height:1.08}
  .h2-sub{font-size:14.5px;line-height:1.35;margin-top:4px}
  .h2-tiles{margin-top:14px}
  .h2-tiles ul{grid-template-columns:1fr 1fr;gap:8px}
  .tile{flex-direction:row;text-align:left;align-items:center;gap:9px;padding:9px 8px 9px 9px;border-radius:18px;min-height:74px}
  .tile::after{inset:3px;border-radius:15px}
  .tile img{width:46px;height:46px;box-shadow:0 0 0 2px rgba(255,255,255,.95),0 6px 12px -6px rgba(91,52,120,.55)}
  .tlab{gap:1px;min-width:0}
  .tlab b{font:600 14.5px/1.16 var(--sans)}
  .tlab small{font-size:12px;line-height:1.22}
  .h2-cta{margin-top:12px;gap:10px;flex-wrap:nowrap}
  .h2-cta .btn{min-height:50px;padding:0 14px}
  .h2-cta .btn-wa{flex:1.7}.h2-cta .btn-call{flex:1}
  .h2-note{font-size:13.5px;margin-top:8px;text-align:center}
  .sk-sec{padding-top:40px}
  .sk-sec .wheel-wrap{display:flex;flex-direction:column;gap:0;margin:0 -8px}
  .sk-sec .wheel{width:min(100%,430px)}
  .sk-sec .wheel-card{text-align:center;padding:14px 14px 8px;width:calc(100% - 16px);margin-top:2px}
  .sk-sec .wk-x{margin:6px auto 0;min-height:4.6em}
  .sk-sec .wk-act{justify-content:center;gap:8px}
  .guides{padding-top:30px}
  .gd-grid{grid-template-columns:1fr;gap:12px}
  .gd{padding:12px 14px;gap:12px}
  .gd img{width:52px;height:52px}
  .gd b{font-size:19px}.gd small{font-size:14px}
  .ab-quals{grid-template-columns:1fr}
  .ab-h3{font-size:22px}
  /* keep controls in the middle of the screen, clear of the corner buttons */
  .pc-act{justify-content:center}
  .feat .pc-act .btn{flex:0 1 auto}
  .js .g-more{margin:10px auto 4px}
  .rail-ctl{justify-content:center;gap:14px}
  .rail-hint{min-width:7.5em}
  .bk-act .btn{flex:0 1 auto}
  .ftr{padding-bottom:120px}
  .fab-wa{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));height:54px;width:54px}
  .fab-wa .wa-logo{width:28px;height:28px}
  .fab-mus{left:12px;bottom:calc(14px + env(safe-area-inset-bottom));width:44px;height:44px}
  .fab-mus svg{width:19px;height:19px}
  /* sub pages */
  .sub-hero{padding-top:84px;padding-bottom:6px}
  .sub-hero h1{font-size:clamp(30px,8.4vw,40px)}
  .sub-lead{font-size:16.5px;margin-top:12px}
  .sub-cta{margin-top:18px}
  .sub-sec{padding-top:26px;padding-bottom:12px}
  .sub-sec.two{grid-template-columns:1fr;gap:22px}
  .sub-p{font-size:16.5px}
  .tips{grid-template-columns:1fr;gap:12px}
  .mini-card,.note-card,.tip,.vows{padding:18px 18px}
  .tl-sh{margin-left:52px}
  .tl::before{left:18px}
  .tl-i{grid-template-columns:38px 1fr;gap:12px}
  .tl-n{width:38px;height:38px;font-size:17px}
  .tl-c{padding:11px 14px 12px}
  .tl-c h4{font-size:19.5px}
  .tl-c p{font-size:15.5px}
  .fsteps{grid-template-columns:1fr;gap:12px}
  .fsteps li{padding:16px 16px 16px 60px}
  .fsteps h3{font-size:20px}
  .pb-serv{grid-template-columns:1fr}
  .share-sec .share{justify-content:center}
  .prose h2{font-size:24px}
  .prose p,.prose li{font-size:16px}
}
@media (max-width:380px){
  .h2-line{font-size:23px}
  .tlab b{font-size:14px}
  .tlab small{font-size:11.5px}
  .tile{gap:7px;padding:8px 6px 8px 7px}
  .tile img{width:42px;height:42px}
  .h2-cta .btn{font-size:15.5px;padding:0 10px;gap:7px}
  .sk-sec .wk-act .btn{padding:0 14px}
}
@media (prefers-reduced-motion:reduce){.tile,.gd{transition:none}}

/* home: the name is in the hero, so the header brand appears only after scrolling */
.hdr.home .brand{transition:opacity .3s,visibility .3s}
.hdr.home:not(.scrolled) .brand{opacity:0;visibility:hidden}

@media (min-width:1001px){.rail .ask-card{grid-column:span 2}.rail .ask-card .pc-body{padding:28px 30px}}

@media (max-width:900px){
  .feat-links{flex-direction:column;align-items:center}
  .pc-more{align-self:center}
  .pc-body>.pc-more{margin:0 auto}
  .ab-more{text-align:center}
}

/* desktop: wheel on the left, title and card on the right, all inside one screen */
@media (min-width:901px){
  .sk-sec{display:grid;grid-template-columns:minmax(0,560px) minmax(0,440px);grid-template-areas:"wheel head" "wheel card";justify-content:center;column-gap:56px;row-gap:18px;align-items:center;padding-top:40px}
  .sk-sec .wheel-wrap{display:contents}
  .sk-sec .sec-head{grid-area:head;text-align:left;margin:0;align-self:end}
  .sk-sec .sec-head .diya{margin:0 0 4px}
  .sk-sec .sec-head p{font-size:17.5px}
  .sk-sec .wheel{grid-area:wheel;width:min(560px,100%,calc(100svh - 120px))}
  .sk-sec .wheel-card{grid-area:card;align-self:start}
}

/* ---------- hero tiles as watercolour cards: soft colour washes, paper grain, gold deckle line ---------- */
.tile{background:#FFFBF4;--w1:#FFD9C2;--w2:#F8C9D6;--w3:#FFE9B8}
.tile.t-rose{--w1:#F9C6D2;--w2:#FFDCC8;--w3:#F3D3EE}
.tile.t-peach{--w1:#FFD2B0;--w2:#FFE6B8;--w3:#F9CFC4}
.tile.t-gold{--w1:#FFE09A;--w2:#FFD0B0;--w3:#FBEFC2}
.tile.t-lilac{--w1:#DCC8F2;--w2:#F6D0E2;--w3:#E4DAF8}
.tile.t-sky{--w1:#C9D6F4;--w2:#E2D4F2;--w3:#D7ECF4}
.tile.t-plum{--w1:#D8C0EE;--w2:#FFD6BE;--w3:#F2C9DE}
.tile::before{opacity:1;
  background:
   radial-gradient(60% 46% at 18% 12%,color-mix(in srgb,var(--w1) 85%,transparent),transparent 72%),
   radial-gradient(52% 40% at 88% 22%,color-mix(in srgb,var(--w2) 70%,transparent),transparent 70%),
   radial-gradient(70% 50% at 70% 104%,color-mix(in srgb,var(--w3) 80%,transparent),transparent 70%),
   radial-gradient(40% 30% at 8% 92%,color-mix(in srgb,var(--w2) 45%,transparent),transparent 70%),
   linear-gradient(170deg,#FFFDF8,#FFF5EA)!important}
.tile .tlab,.tile img{position:relative;z-index:1}
.tile>.tlab::before{content:none}
.tile::after{border:1.5px solid transparent;inset:5px;
  background:linear-gradient(#0000,#0000) padding-box,linear-gradient(135deg,rgba(227,154,45,.55),rgba(255,255,255,.2) 40%,rgba(227,154,45,.45) 70%,rgba(255,255,255,.2)) border-box;
  -webkit-mask:linear-gradient(#000 0 0) padding-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) padding-box exclude,linear-gradient(#000 0 0)}
.tile{box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 2px 4px rgba(91,52,120,.06),0 16px 30px -14px rgba(150,80,50,.32),0 30px 50px -30px rgba(91,52,120,.3)}
.h2-tiles li{position:relative}
.h2-tiles .tile{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .55  0 0 0 0 .4  0 0 0 0 .3  0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.h2-tiles .tile::before{mix-blend-mode:multiply}

/* ---------- v11 QA round 2 ---------- */
.adv{margin:10px 18px 4px;padding:9px 12px;border-radius:12px;background:#F6F0FA;color:var(--ink-2);font-size:13.5px;line-height:1.45}
.pc .adv{margin:12px 0 0}
.prose a,.fine a,.crumb a{display:inline-block;min-height:44px;line-height:44px;padding:0 2px;margin:-12px 0}
.prose p .fine a{margin:-12px 0}
@media (max-width:900px){
  .tlab small{font-size:12.5px}
  .h2-note .mus-hint{display:inline-block;margin-top:2px}
}
@media (max-width:380px){
  .tlab small{font-size:12.5px;line-height:1.18}
  .tlab b{font-size:14px}
  .sk-sec{padding-top:30px}
  .sk-sec .sec-head{margin-bottom:10px}
  .sk-sec .sec-head p{font-size:15px}
  .sk-sec .wheel{width:min(100%,300px)}
  .sk-sec .wheel .med{width:17%}
  .sk-sec .hc-e{font-size:17px}
  .sk-sec .wheel-card{margin-top:4px}
}

/* =====================================================================
   v12: detail sheets, compact image cards, menu + search, astrology form,
   music toast, drifting watercolour background, scroll reveal
   ===================================================================== */
html.lock{overflow:hidden}
body{position:relative}
/* slow drifting watercolour washes behind everything (transform + opacity only) */
body::before,body::after{content:"";position:fixed;z-index:0;pointer-events:none;width:70vmax;height:70vmax;border-radius:50%;will-change:transform;opacity:.55}
body::before{left:-22vmax;top:-18vmax;background:radial-gradient(closest-side,rgba(255,186,150,.55),rgba(255,186,150,0) 70%),radial-gradient(closest-side at 70% 70%,rgba(246,170,200,.45),rgba(246,170,200,0) 70%);animation:drift1 46s ease-in-out infinite alternate}
body::after{right:-26vmax;top:30vh;background:radial-gradient(closest-side,rgba(205,180,245,.55),rgba(205,180,245,0) 70%),radial-gradient(closest-side at 30% 30%,rgba(255,214,140,.45),rgba(255,214,140,0) 70%);animation:drift2 58s ease-in-out infinite alternate}
@keyframes drift1{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(14vw,22vh,0) scale(1.12)}100%{transform:translate3d(30vw,8vh,0) scale(.95)}}
@keyframes drift2{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-18vw,-14vh,0) scale(1.1)}100%{transform:translate3d(-8vw,26vh,0) scale(1.05)}}
html.paused body::before,html.paused body::after{animation-play-state:paused}
.hdr,.ftr,main{position:relative}
.hdr{position:fixed}
main{z-index:1}

/* scroll reveal */
.rv-on .rv{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--k,0) * 70ms)}
.rv-on .rv:not(.in){opacity:0;transform:translateY(18px)}

/* ---------- header menu button ---------- */
.hdr-menu{display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;justify-content:center;padding:0 14px;border:0;border-radius:999px;cursor:pointer;
  background:rgba(255,255,255,.78);color:var(--plum-d);font:600 15.5px/1 var(--sans);box-shadow:0 0 0 1.5px rgba(91,52,120,.24) inset,0 6px 14px -10px rgba(91,52,120,.5)}
.hdr-menu svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
@media (hover:hover){.hdr-menu:hover{background:#fff}}
.hdr-act{align-items:center}

/* ---------- hero tiles: real service names, readable on a phone ---------- */
.h2-tiles li{animation:tfloat 7s ease-in-out infinite;animation-delay:calc(var(--i) * -0.9s)}
.h2-tiles li.still{animation:none}
@keyframes tfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.tile{cursor:pointer}
.tlab small{color:#5B4868}
.tile::before{transition:filter .4s}
@media (hover:hover){.tile:hover::before{filter:saturate(1.25)}}
.tile .tlab b{text-wrap:balance}
@media (min-width:901px){
  .h2-tiles ul{gap:14px}
  .tile{padding:16px 12px 14px;gap:8px}
  .tile img{width:74px;height:74px}
  .tlab b{font-size:18px}
  .tlab small{font-size:13.5px;line-height:1.32}
  .hero2{column-gap:44px}
}
@media (max-width:900px){
  .hero2{padding-top:62px}
  .h2-intro{gap:12px}
  .h2-face{width:56px;height:56px}
  .h2-tiles{margin-top:10px}
  .h2-tiles ul{gap:7px}
  .tile{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:7px;row-gap:3px;align-items:center;text-align:left;padding:8px 9px 9px;min-height:0;border-radius:16px}
  .tile img{width:34px;height:34px;grid-row:1;grid-column:1}
  .tlab{display:contents}
  .tlab b{grid-row:1;grid-column:2;font:600 14.5px/1.12 var(--sans)}
  .tlab small{grid-row:2;grid-column:1/3;font-size:12.5px;line-height:1.24;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .h2-cta{margin-top:10px}
  .h2-note{font-size:13px;margin-top:6px;line-height:1.35}
}
@media (max-width:380px){
  .tile{padding:7px 7px 8px;grid-template-columns:30px 1fr;column-gap:6px}
  .tile img{width:30px;height:30px}
  .tlab b{font-size:13.8px}
  .tlab small{font-size:12.5px;line-height:1.2}
  .h2-line{font-size:22px}
}

/* ---------- popular: compact image cards ---------- */
.popular{padding-top:56px}
.pgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.pc2{position:relative;display:flex;flex-direction:column;height:100%;border-radius:22px;overflow:hidden;text-decoration:none;background:#FFFBF5;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 2px 4px rgba(91,52,120,.06),0 16px 30px -16px rgba(150,80,50,.35),0 30px 50px -34px rgba(91,52,120,.35);
  transition:transform .4s cubic-bezier(.2,1.2,.4,1),box-shadow .4s}
.pc2-img{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(120% 120% at 30% 10%,#FFF3E6,#F6E3F2)}
.pc2-img .bn{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.bn-ic{display:grid;place-items:center;width:100%;height:100%}
.bn-ic img{width:46%;height:auto;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.9),0 12px 22px -10px rgba(91,52,120,.5)}
.pc2-t{display:flex;flex-direction:column;gap:2px;padding:12px 14px 14px;flex:1}
.pc2-t b{font:400 20px/1.15 var(--serif);color:var(--ink)}
.pc2-t small{font-size:14.5px;line-height:1.35;color:var(--ink-2)}
.pc2-go{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,251,245,.9);color:var(--plum-d);
  box-shadow:0 6px 14px -8px rgba(91,52,120,.6);opacity:0;transform:scale(.8);transition:opacity .3s,transform .3s}
.pc2-go .arr{width:17px;height:17px}
@media (hover:hover){.pc2:hover{transform:translateY(-5px);box-shadow:var(--sh-lift)}.pc2:hover .bn{transform:scale(1.06)}.pc2:hover .pc2-go{opacity:1;transform:none}}
.pc2:active{transform:scale(.98)}
.pc2.t-gold{background:linear-gradient(175deg,#fff 40%,#FFF6E2)}.pc2.t-rose{background:linear-gradient(175deg,#fff 40%,#FFF0F2)}
.pc2.t-lilac{background:linear-gradient(175deg,#fff 40%,#F6EFFB)}.pc2.t-peach{background:linear-gradient(175deg,#fff 40%,#FFF1E6)}.pc2.t-sky{background:linear-gradient(175deg,#fff 40%,#F1F3FC)}
.pc2.gentle .bn{filter:saturate(.9)}
.tw{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 6px 2px rgba(255,240,200,.9),0 0 14px 4px rgba(200,180,255,.5);animation:twinkle 2.8s ease-in-out infinite;animation-delay:var(--d,0s);pointer-events:none}
@keyframes twinkle{0%,100%{opacity:.15;transform:scale(.6)}50%{opacity:1;transform:scale(1.2)}}
.pc2-diya{position:absolute;left:8px;bottom:6px;width:38px;height:38px;filter:drop-shadow(0 4px 6px rgba(120,60,20,.35))}
.pc2-diya .diya{width:100%;height:100%}
.ask-li{grid-column:1/-1}
.pc2-ask{display:flex;align-items:center;gap:20px;padding:18px 22px;border-radius:22px;background:linear-gradient(165deg,#F4EAFB,#FFF1E6);box-shadow:var(--sh-soft)}
.pc2-ask img{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 4px #fff,0 0 0 6px rgba(227,154,45,.4)}
.pc2-ask b{display:block;font:400 24px/1.15 var(--serif)}
.pc2-ask small{display:block;font-size:15.5px;color:#4E3A5C;margin-top:4px}
.pc2-ask .pc-act{padding-top:10px;justify-content:flex-start}
.btn .arr{width:18px;height:18px}
.feat .pc-act .btn-wa{gap:8px}
@media (max-width:1100px){.pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .popular{padding-top:40px}
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .pc2{border-radius:18px}
  .pc2-t{padding:9px 11px 11px}
  .pc2-t b{font-size:17px}
  .pc2-t small{font-size:13.5px}
  .pc2-diya{width:30px;height:30px}
  .pc2-ask{flex-direction:column;text-align:center;gap:10px;padding:18px 16px}
  .pc2-ask .pc-act{justify-content:center}
  .feat .pc-act{flex-direction:column}
  .feat .pc-act .btn{flex:1 1 auto;width:100%}
}

/* ---------- the detail sheet (bottom sheet on phone, centred modal on desktop) ---------- */
dialog{padding:0;border:0;background:transparent;color:inherit;max-width:none;max-height:none}
.sheet{position:fixed;inset:0;width:100%;height:100%;margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.sheet:not([open]){display:none}
.sheet::backdrop,.drawer::backdrop{background:rgba(48,24,62,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fadein .25s ease}
.sh-in{position:relative;width:min(760px,calc(100% - 40px));max-height:min(88vh,920px);overflow-y:auto;overscroll-behavior:contain;border-radius:28px;background:#FFFBF5;
  box-shadow:0 30px 80px -20px rgba(40,10,50,.55);animation:sheetin .32s cubic-bezier(.2,.9,.3,1)}
.sheet.closing .sh-in{animation:sheetout .18s ease-in forwards}
@keyframes sheetin{from{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:none}}
@keyframes sheetout{to{opacity:0;transform:translateY(40px)}}
@keyframes fadein{from{opacity:0}}
.sh-grab{display:none}
.sh-x{position:sticky;float:right;top:12px;margin:12px 12px -56px 0;z-index:5;width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;
  background:rgba(255,251,245,.92);box-shadow:0 0 0 1px rgba(91,52,120,.15),0 8px 18px -8px rgba(40,10,50,.5)}
.sh-x svg{width:20px;height:20px;fill:none;stroke:var(--plum-d);stroke-width:2.4;stroke-linecap:round}
.sh-ban{position:relative;aspect-ratio:16/8;overflow:hidden;background:radial-gradient(120% 120% at 30% 10%,#FFF3E6,#F2E2F4)}
.sh-ban .bn{width:100%;height:100%;object-fit:cover;animation:banin 1.4s cubic-bezier(.2,.7,.2,1)}
.sh-ban .bn-face{object-position:50% 22%}
.sh-ban::after{content:"";position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(180deg,rgba(255,251,245,0),#FFFBF5)}
@keyframes banin{from{transform:scale(1.08)}to{transform:none}}
.sh-ban .bn-ic img{width:28%}
.sh-c{padding:4px 30px 30px;position:relative}
.sh-gal{list-style:none;display:flex;gap:10px;margin:-34px 0 12px;padding:0;position:relative;z-index:2}
.sh-gal li{width:96px;aspect-ratio:4/3;border-radius:14px;overflow:hidden;box-shadow:0 0 0 3px #fff,0 10px 18px -10px rgba(91,52,120,.6);transform:rotate(-2deg)}
.sh-gal li:nth-child(2){transform:rotate(2deg)}
.sh-gal img{width:100%;height:100%;object-fit:cover}
.sh-h{font-size:clamp(30px,4vw,40px);line-height:1.08;outline:none}
.sh-intro{font-size:17px;color:#4E3A5C;margin-top:8px;line-height:1.55}
.sh-top{margin-top:6px}
.sh-k{font:600 14px/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--kumkum);margin-top:22px}
.sh-k small{display:block;margin-top:3px;text-transform:none;letter-spacing:0;font-weight:500;font-size:14px;color:var(--ink-2)}
.sh-g{font:600 15px/1.2 var(--sans);color:var(--plum-d);margin:16px 0 8px}
.chips{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sh-g+.chips{margin-top:0}
.chips li{animation:chipin .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--k,0) * 35ms + 120ms)}
@keyframes chipin{from{opacity:0;transform:translateY(8px)}}
.chip{position:relative;display:flex;flex-direction:column;gap:1px;height:100%;min-height:52px;padding:9px 38px 10px 13px;border-radius:14px;text-decoration:none;text-align:left;cursor:pointer;
  background:#fff;border:0;font:inherit;color:inherit;width:100%;box-shadow:0 0 0 1px rgba(91,52,120,.13),0 6px 14px -12px rgba(91,52,120,.6);transition:box-shadow .2s,transform .2s,background .2s}
.chip b{font-weight:600;font-size:15.5px;line-height:1.25;color:var(--ink)}
.chip small{font-size:13.5px;line-height:1.3;color:var(--ink-2)}
.chip .wa-logo{position:absolute;right:11px;top:50%;width:21px;height:21px;margin-top:-10.5px;opacity:.75}
@media (hover:hover){.chip:hover{box-shadow:0 0 0 1.5px rgba(91,52,120,.35),0 10px 18px -12px rgba(91,52,120,.6);transform:translateY(-1px)}}
.chip:active{transform:scale(.98)}
.opt .tick{position:absolute;right:11px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:6px;box-shadow:0 0 0 1.5px rgba(91,52,120,.4) inset;background:#fff}
.opt[aria-pressed="true"]{background:#F3E9FB;box-shadow:0 0 0 2px var(--plum),0 8px 16px -12px rgba(91,52,120,.7)}
.opt[aria-pressed="true"] .tick{background:var(--plum) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;box-shadow:none}
.sh-many{margin-top:14px;padding:12px 14px;border-radius:14px;background:#FFF4E2;color:#5A3B14;font-size:15.5px;line-height:1.5;box-shadow:0 0 0 1px rgba(227,154,45,.3)}
.sh-many a{color:var(--plum-d);font-weight:600}
.sh-c .adv{margin:14px 0 0}
.sh-c .keep{margin-top:16px}
.keep-sub{font-size:14.5px;font-weight:600;color:var(--plum-d);margin-top:10px}
.sh-more{margin-top:14px}
.sh-more .btn{white-space:normal;text-align:center;line-height:1.2;padding:8px 18px}
.sh-links{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:8px}
.sh-act{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;position:sticky;bottom:-30px;padding:12px 0 22px;margin-bottom:-22px;background:linear-gradient(180deg,rgba(255,251,245,0),#FFFBF5 30%)}
.sh-act .btn{flex:1 1 auto}
.sh-call{margin-top:16px;padding:16px;border-radius:18px;background:linear-gradient(165deg,#EEF1FB,#F8F2FB);box-shadow:0 0 0 1px rgba(110,127,181,.25);text-align:center}
.sh-call p{font-size:16px;color:#3F4A72;margin-bottom:10px}
.sh-call .btn{width:100%;white-space:normal}
.sheet.gentle .sh-ban .bn{animation:none}
/* astrology form */
.astro{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.fs{border:0;margin:0;padding:0;min-width:0}
.fs legend{font-size:15.5px;font-weight:500;padding:0;margin-bottom:6px}
.fs legend small{font-weight:400;color:var(--ink-2);margin-left:6px;font-size:14px}
.fs .chips{margin-top:0}
.partner{display:flex;flex-wrap:wrap;gap:12px;padding:14px;border-radius:16px;background:#F7F1FB;box-shadow:0 0 0 1px rgba(91,52,120,.12)}
.partner[hidden],.palm-note[hidden]{display:none}
.chk{flex-direction:row;align-items:center;gap:10px;min-height:44px}
.chk input,.rad input{width:22px;height:22px;min-height:0;accent-color:var(--plum);flex:none;margin:0}
.chk span,.rad span{font-size:15.5px;font-weight:500}
.how{display:flex;flex-wrap:wrap;gap:8px 18px}
.how legend{flex-basis:100%;width:100%}
.rad{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px rgba(91,52,120,.15);cursor:pointer}
.f input:disabled{opacity:.5}
.palm-note{flex-basis:100%;font-size:15px;padding:10px 14px;border-radius:12px;background:#FFF4E2;color:#5A3B14}
.astro .sh-act{flex-basis:100%;margin-top:6px}
.trust{flex-basis:100%;font-size:15px;font-weight:600;color:#1F6A3F;margin-top:6px}
.astro .adv,.astro .bk-priv{flex-basis:100%;margin:0;text-align:left}
@media (max-width:760px){
  .sheet{align-items:flex-end}
  .sh-in{width:100%;max-height:92vh;max-height:92dvh;border-radius:26px 26px 0 0;animation:sheetup .34s cubic-bezier(.2,.9,.3,1)}
  .sheet.closing .sh-in{animation:sheetdown .18s ease-in forwards}
  .sh-grab{display:block;position:absolute;left:50%;top:8px;width:46px;height:5px;margin-left:-23px;border-radius:9px;background:rgba(255,255,255,.95);box-shadow:0 1px 4px rgba(0,0,0,.25);z-index:6;touch-action:none}
  .sh-ban{aspect-ratio:16/9}
  .sh-c{padding:2px 16px 20px}
  .sh-h{font-size:28px}
  .sh-intro{font-size:16px}
  .chips{grid-template-columns:1fr;gap:7px}
  .sh-gal li{width:78px}
  .sh-act{bottom:-20px;padding-bottom:calc(16px + env(safe-area-inset-bottom));margin-bottom:-16px}
  .sh-act .btn{flex:1 1 100%}
  .opts{grid-template-columns:1fr 1fr}
  .opts .chip{padding-right:34px}
}
@keyframes sheetup{from{transform:translateY(100%)}to{transform:none}}
@keyframes sheetdown{to{transform:translateY(100%)}}

/* ---------- menu drawer with live search ---------- */
.drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(440px,100%);height:100%;max-height:none}
.drawer:not([open]){display:none}
.dr-in{height:100%;overflow-y:auto;overscroll-behavior:contain;background:#FFFBF5;padding:14px 18px 30px;box-shadow:-20px 0 60px -20px rgba(40,10,50,.5);animation:drin .3s cubic-bezier(.2,.9,.3,1)}
.drawer.closing .dr-in{animation:drout .18s ease-in forwards}
@keyframes drin{from{transform:translateX(100%)}}
@keyframes drout{to{transform:translateX(100%)}}
.dr-top{display:flex;align-items:center;justify-content:space-between}
.dr-top p{font:400 24px/1 var(--serif)}
.dr-top .sh-x{position:static;float:none;margin:0}
.srch{position:relative;margin-top:12px}
.srch input{width:100%;min-height:52px;padding:12px 14px 12px 46px;border-radius:999px;border:1.5px solid rgba(91,52,120,.25);background:#fff;font:400 17px/1.3 var(--sans);color:var(--ink)}
.srch input:focus{outline:none;border-color:var(--plum);box-shadow:0 0 0 4px rgba(91,52,120,.15)}
.srch-i{position:absolute;left:16px;top:50%;width:22px;height:22px;margin-top:-11px;fill:none;stroke:var(--plum);stroke-width:2.2;stroke-linecap:round;pointer-events:none}
.q-hint{font-size:14px;color:var(--ink-2);margin:8px 6px 0}
.q-res{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.qr{display:flex;align-items:center;gap:10px;justify-content:space-between;min-height:52px;padding:8px 12px 8px 14px;border-radius:14px;background:#fff;text-decoration:none;box-shadow:0 0 0 1px rgba(91,52,120,.12)}
.qr b{display:block;font-weight:600;font-size:16px}
.qr small{display:block;font-size:14px;color:var(--ink-2);line-height:1.3}
.qr-go{flex:none;font:600 13.5px/1 var(--sans);color:var(--plum-d);background:#F1E8F8;border-radius:999px;padding:7px 10px}
.q-none,.q-wait{font-size:15px;color:var(--ink-2);padding:8px 6px}
.q-none a{color:var(--plum-d);font-weight:600;display:inline-block;min-height:44px;line-height:44px}
.dr-nav ul{list-style:none;margin:16px 0 0;padding:0}
.dr-sheets{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dr-sheets a{display:flex;align-items:center;gap:9px;min-height:54px;padding:6px 10px 6px 6px;border-radius:16px;background:#fff;text-decoration:none;font-weight:600;font-size:14.5px;line-height:1.2;box-shadow:0 0 0 1px rgba(91,52,120,.1),0 8px 16px -14px rgba(91,52,120,.6)}
.dr-sheets img{width:38px;height:38px;border-radius:50%;flex:none}
.dr-pages{border-top:1px solid var(--line);padding-top:8px!important}
.dr-pages a{display:flex;align-items:center;min-height:46px;padding:0 6px;text-decoration:none;font-size:16.5px;font-weight:500;border-bottom:1px solid var(--line)}
.dr-act{display:flex;gap:10px;margin-top:18px}
.dr-act .btn{flex:1}

/* ---------- all services: search ---------- */
.svc-srch{max-width:560px;margin:0 auto 16px}
.svc-none{text-align:center;color:var(--ink-2);margin:0 0 16px}
.svc-none a{color:var(--plum-d);font-weight:600}
.grps.filtering .grp .more{display:block}
.grps.filtering .svc li.miss,.grps.filtering .grp.miss,.grps.filtering .g-more{display:none!important}
.g-form{margin:10px 18px 2px}
.g-form .btn{gap:8px}

/* ---------- wheel: more compact ---------- */
.sk-sec{padding-top:46px;padding-bottom:20px}
.wk-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px}
.wk-sheet{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px;border:0;background:none;cursor:pointer;font:600 15px/1.2 var(--sans);color:var(--plum-d);
  background-image:linear-gradient(var(--marigold),var(--marigold));background-size:0 2px;background-position:0 82%;background-repeat:no-repeat;transition:background-size .3s}
.wk-sheet:hover{background-size:100% 2px}
.wk-pause{margin-top:0}
@media (min-width:901px){
  .sk-sec{grid-template-columns:minmax(0,450px) minmax(0,440px)}
  .sk-sec .wheel{width:min(450px,100%,calc(100svh - 160px))}
}
@media (max-width:900px){
  .sk-sec .wheel{width:min(100%,330px)}
  .sk-sec .wheel .med{width:17%}
  .sk-sec .hc-e{font-size:18px}
  .sk-sec .wk-x{min-height:0}
  .wk-foot{justify-content:center}
}

/* ---------- footer, toast ---------- */
.legal a{color:var(--plum-d);font-weight:600;display:inline-block;min-height:44px;line-height:44px;padding:0 4px}
.mtoast{position:fixed;z-index:70;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;width:min(440px,calc(100% - 24px));
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;border-radius:20px;background:rgba(255,251,245,.97);
  box-shadow:0 0 0 1px rgba(91,52,120,.14),0 20px 44px -16px rgba(40,10,50,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:opacity .3s,transform .3s}
.mtoast.show{opacity:1;transform:translate(-50%,0)}
.mtoast[hidden]{display:none}
.mt-ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;background:#F1E8F8;color:var(--plum)}
.mt-ic svg{width:18px;height:18px}
.mtoast p{flex:1;min-width:150px;font-size:15.5px;font-weight:500;line-height:1.3}
.mt-b{display:flex;gap:8px;margin-left:auto}
.mt-b .btn{min-height:42px;padding:0 16px;font-size:15px}
@media (max-width:900px){.mtoast{bottom:calc(80px + env(safe-area-inset-bottom))}.mt-b{flex:1 1 100%}.mt-b .btn{flex:1}}

/* ---------- sub pages ---------- */
.soft-grid{grid-template-columns:repeat(3,1fr)}
.soft-grid b{margin-bottom:2px}
.gov{margin-top:18px;padding:12px 14px;border-radius:14px;background:#F3F5FC;box-shadow:0 0 0 1px rgba(110,127,181,.2)}
.legal-sec .legal-text{font-size:19px;color:var(--ink);line-height:1.6;padding:20px 22px;border-radius:18px;background:rgba(255,251,245,.95);box-shadow:var(--sh-soft)}
.sub-hero .share{margin-top:18px}
@media (max-width:900px){.soft-grid{grid-template-columns:1fr}}
@media (min-width:901px){.hdr .d-lab{display:inline}}
@media (max-width:900px){.hdr .d-lab{display:none}.hdr-menu{padding:0;width:44px;background:rgba(255,255,255,.75)}.hdr-act{gap:8px}}
@media (max-width:1180px) and (min-width:901px){.nav{gap:16px}.nav a{font-size:15px}}
@media (max-width:1040px) and (min-width:901px){.nav{display:none}}

/* ---------- reduced motion: everything still ---------- */
@media (prefers-reduced-motion:reduce){
  body::before,body::after,.h2-tiles li,.tw,.chips li,.sh-in,.dr-in,.sh-ban .bn,.sheet::backdrop,.drawer::backdrop{animation:none!important}
  .pc2,.pc2 .bn,.mtoast,.rv{transition:none!important}
  .tw{opacity:.7}
}
/* v12 round 2 */
.sh-call{margin-top:14px;padding:12px 16px;border-radius:16px;background:linear-gradient(165deg,#EEF1FB,#F8F2FB);box-shadow:0 0 0 1px rgba(110,127,181,.25);font-size:16px;color:#3F4A72;text-align:left}
.sh-call a{font-weight:600;color:var(--plum-d);white-space:nowrap;display:inline-block;min-height:44px;line-height:44px}
@media (min-width:761px){.sh-ban{aspect-ratio:auto;height:300px}}
.sh-act{flex-wrap:nowrap}
.sh-act .btn{flex:1 1 0;min-width:0}
.sh-act .btn-ghost{flex:0 1 auto}
@media (max-width:760px){
  .sh-act .btn{flex:1 1 0;min-height:50px;padding:0 12px;font-size:16px}
  .sh-act .btn-ghost{flex:0 0 auto;padding:0 16px}
  .sh-act .btn.big{min-height:52px}
}
@media (max-width:900px){
  .mtoast{flex-wrap:nowrap;gap:8px;padding:8px 8px 8px 14px;border-radius:18px;bottom:calc(78px + env(safe-area-inset-bottom))}
  .mt-ic{display:none}
  .mtoast p{min-width:0;font-size:14.5px;line-height:1.25}
  .mt-b{flex:none;gap:6px}
  .mt-b .btn{min-height:44px;padding:0 12px;font-size:14.5px;flex:none}
}
/* v12 QA round */
.h2-tiles li{animation-iteration-count:2}
html.calm *,html.calm *::before,html.calm *::after{animation-play-state:paused!important}
html.calm .rv{transition:none!important}
.calm-p{margin:0 0 4px}
.calm-btn{min-height:44px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--ink-2);font:500 14.5px/1 var(--sans);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.calm-btn:hover{color:var(--plum-d)}
.keep.gentle{box-shadow:0 0 0 1px rgba(110,127,181,.3);background:rgba(243,245,252,.8)}
.keep.gentle summary::before{background:#6E7FB5}
html.toast-on .fab-mus{opacity:0;pointer-events:none}
@media (max-width:900px){
  .hero2{min-height:100svh;align-content:start}
  .mtoast{left:12px;right:76px;width:auto;transform:translateY(20px);bottom:calc(12px + env(safe-area-inset-bottom));flex-wrap:wrap;padding:10px 10px 10px 14px}
  .mtoast.show{transform:none}
  .mtoast p{flex:1 1 100%}
  .mt-b{flex:1 1 100%}
  .mt-b .btn{flex:1 1 0}
}
.sub-ban{margin:24px auto 0;max-width:900px;border-radius:26px;overflow:hidden;aspect-ratio:16/8;box-shadow:var(--sh-soft)}
.sub-ban .bn{width:100%;height:100%;object-fit:cover}
.keep-note{margin-top:10px;padding:10px 12px;border-radius:12px;background:#fff;font-size:14.5px;line-height:1.5;color:#3F4A72;box-shadow:0 0 0 1px rgba(110,127,181,.25)}
.keep.gentle .keep-l li::before{box-shadow:0 0 0 1.5px rgba(110,127,181,.5) inset}
.credit{font-size:14.5px;color:var(--ink-2)}
@media (max-width:900px){.sub-ban{margin-top:18px;border-radius:20px;aspect-ratio:4/3}}
