@font-face{font-family:Fraunces;font-weight:100 900;font-display:swap;src:url(../fonts/fraunces-latin-opsz-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2013-2014,U+2018-201D,U+2022,U+2026}
@font-face{font-family:"Plus Jakarta Sans";font-weight:200 800;font-display:swap;src:url(../fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2013-2014,U+2018-201D,U+2022,U+2026}
@font-face{font-family:Rupee;font-weight:600;src:url(../fonts/hind-latin-600.woff2) format("woff2");unicode-range:U+20B9}

:root{
  --indigo:#14304f;      /* deepened from the logo navy */
  --indigo-2:#1f4a6e;    /* logo navy */
  --marigold:#f4a81d;
  --gulmohar:#d9452b;    /* petals in your hero photo */
  --blush:#fce8e1;
  --ivory:#fff9f6;
  --ink:#1c2535;
  --muted:#556070;
  --line:rgba(20,48,79,.16);
  --display:Rupee,Fraunces,"Noto Serif Devanagari",Georgia,serif;
  --body:Rupee,"Plus Jakarta Sans","Noto Sans Devanagari",system-ui,-apple-system,"Segoe UI",sans-serif;
  --toran:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='46' viewBox='0 0 36 46'%3E%3Cpath d='M0 3H36' stroke='%23F4A81D' stroke-width='2'/%3E%3Cpath d='M18 4C9 14 10 32 18 42C26 32 27 14 18 4Z' fill='%23F4A81D'/%3E%3Cpath d='M18 10C15 18 15.5 30 18 36C20.5 30 21 18 18 10Z' fill='%23D9452B'/%3E%3Ccircle cx='18' cy='43' r='2.5' fill='%23D9452B'/%3E%3C/svg%3E");
  --jaali:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cpath d='M28 2L54 28L28 54L2 28Z' fill='none' stroke='%23F4A81D' stroke-opacity='.16'/%3E%3Ccircle cx='28' cy='28' r='8' fill='none' stroke='%23F4A81D' stroke-opacity='.16'/%3E%3Ccircle cx='0' cy='0' r='3' fill='%23F4A81D' fill-opacity='.14'/%3E%3Ccircle cx='56' cy='0' r='3' fill='%23F4A81D' fill-opacity='.14'/%3E%3Ccircle cx='0' cy='56' r='3' fill='%23F4A81D' fill-opacity='.14'/%3E%3Ccircle cx='56' cy='56' r='3' fill='%23F4A81D' fill-opacity='.14'/%3E%3C/svg%3E");
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:70px}
html,body{overflow-x:clip}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 1rem/1.65 var(--body);padding-bottom:calc(84px + env(safe-area-inset-bottom));overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:600;margin:0;letter-spacing:-.015em;font-optical-sizing:auto}
h1{font-size:clamp(2.1rem,9vw,3.5rem);line-height:1.1}
h2{font-size:clamp(1.8rem,7.4vw,2.6rem);line-height:1.12}
h3{font-size:1.35rem;line-height:1.2}
p{margin:0}
:focus-visible{outline:3px solid var(--marigold);outline-offset:3px;border-radius:6px}
.wrap{width:min(100% - 40px,1080px);margin-inline:auto}
section{position:relative}
.pad{padding-block:64px}
.dark{background:var(--indigo) var(--jaali);color:#fff}
.dark .muted{color:#c5d2e0}
.muted{color:var(--muted)}
.lead{font-size:1.15rem;max-width:34em}
.sec-head{display:grid;gap:12px;margin-bottom:32px}
.sec-head p{max-width:32em}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 26px;border-radius:999px;font:700 1rem/1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s}
.btn:active{transform:scale(.97)}
.btn svg{width:22px;height:22px;flex:none}
.btn-gold{background:var(--marigold);color:var(--indigo);box-shadow:0 8px 0 -2px rgba(0,0,0,.18)}
.btn-gold:hover{background:#ffbb3d}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-ink{background:var(--indigo);color:#fff}
.btn-line{border-color:var(--indigo);color:var(--indigo)}
.btn-block{width:100%}

/* header */
.top{position:sticky;top:0;z-index:30;background:var(--indigo);color:#fff;border-bottom:1px solid rgba(244,168,29,.35)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 1.15rem/1 var(--display)}
.brand img{width:38px;height:38px;border-radius:50%;border:2px solid var(--marigold)}
.top nav{display:none;gap:26px;font-weight:500}
.top nav a{text-decoration:none;opacity:.9}
.top nav a:hover{opacity:1;color:var(--marigold)}
.top .pill{min-height:40px;padding:0 16px;font-size:.92rem;white-space:nowrap;gap:8px}
.brand span{white-space:nowrap}
.top .pill svg{width:18px;height:18px}

/* hero */
.hero{overflow:hidden;padding-top:36px;padding-bottom:48px}
.hero .wrap{display:grid;gap:30px;justify-items:center;text-align:center}
.stage{position:relative;width:min(68vw,272px);margin-top:14px}
.mandala{position:absolute;left:50%;top:50%;width:155%;aspect-ratio:1;translate:-50% -52%;color:var(--marigold);opacity:.38;animation:turn 140s linear infinite;pointer-events:none}
.arch{position:relative;aspect-ratio:4/5;border-radius:999px 999px 14px 14px;border:3px solid var(--marigold);padding:8px;background:var(--indigo);animation:rise 1.1s cubic-bezier(.2,.7,.2,1) both}
.arch img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;border-radius:999px 999px 8px 8px}
.chip{position:absolute;display:flex;align-items:center;gap:8px;background:var(--ivory);color:var(--indigo);border-radius:999px;padding:9px 16px;font-weight:600;font-size:.95rem;line-height:1.1;box-shadow:0 8px 20px rgba(0,0,0,.25);white-space:nowrap}
.chip svg{width:18px;height:18px;color:var(--marigold)}
.chip.a{left:-18px;bottom:44px}
.chip.b{right:-14px;bottom:-14px}
.hero h1{max-width:11em}
.hero .lead{color:#dbe5ef}
.hero .cta{display:grid;gap:12px;width:100%;max-width:380px;margin-top:6px}
.hero .fine{font-size:.95rem;color:#c5d2e0}
.hero-text{display:grid;gap:18px;justify-items:center}
@keyframes turn{to{rotate:360deg}}
@keyframes rise{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}

/* scrolling issues strip */
.marquee{background:var(--marigold);color:var(--indigo);overflow:hidden;border-block:2px solid var(--indigo)}
.marquee-track{display:flex;width:max-content;animation:scroll 32s linear infinite}
.marquee ul{display:flex;list-style:none;margin:0;padding:0}
.marquee li{display:flex;align-items:center;font:600 1.25rem/1 var(--display);padding:15px 0;white-space:nowrap}
.marquee li::after{content:"";width:9px;height:9px;margin:0 22px;background:var(--gulmohar);transform:rotate(45deg)}
@keyframes scroll{to{transform:translateX(-50%)}}

/* goals */
.goals{display:grid;border-top:2px dotted var(--line)}
.goal{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 16px;padding:22px 2px;border-bottom:2px dotted var(--line);text-decoration:none}
.goal h3{font-size:1.55rem}
.goal p{grid-column:1;color:var(--muted);font-size:1rem}
.goal .go{grid-row:1/3;grid-column:2;width:48px;height:48px;border-radius:50%;background:var(--marigold);color:var(--indigo);display:grid;place-items:center;transition:transform .2s}
.goal .go svg{width:22px;height:22px}
.goal:hover .go{transform:translateX(4px)}

/* steps */
.blush{background:var(--blush)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.steps li{display:grid;grid-template-columns:48px 1fr;gap:18px;padding-bottom:30px;position:relative}
.steps li:last-child{padding-bottom:0}
.steps li::before{content:"";position:absolute;left:23px;top:50px;bottom:2px;border-left:2px dashed rgba(217,69,43,.5)}
.steps li:last-child::before{display:none}
.steps .n{width:48px;height:48px;border-radius:50%;background:var(--indigo);color:var(--marigold);font:600 1.4rem/48px var(--display);text-align:center}
.steps h3{margin:6px 0 4px}

/* why */
.why{display:grid;gap:26px}
.why div{display:grid;grid-template-columns:44px 1fr;gap:6px 16px}
.why svg{grid-row:1/3;width:44px;height:44px;color:var(--marigold)}
.why h3{font-size:1.3rem}

/* about */
.about .wrap{display:grid;gap:36px;justify-items:center}
.about .stage{width:min(72vw,290px)}
.about .arch{animation:none;aspect-ratio:3/4}
.about{overflow:hidden}
.about .txt{display:grid;gap:16px}
.about .stats{display:flex;gap:28px;margin-top:6px}
.stats b{display:block;font:600 2.2rem/1 var(--display);color:var(--marigold)}
.stats span{font-size:.95rem;color:#c5d2e0}

/* schedule */
.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--blush);border-radius:999px;padding:5px;margin-bottom:22px}
.tabs button{border:0;background:none;min-height:50px;border-radius:999px;font:600 1.02rem/1 var(--body);color:var(--indigo);cursor:pointer}
.tabs button[aria-selected=true]{background:var(--indigo);color:#fff}
.slots{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.slots[hidden]{display:none}
.slots li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border:2px solid var(--line);border-radius:16px;background:#fff;font-weight:600}
.slots small{font-weight:400;color:var(--muted);font-size:.92rem}
.slots li::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--gulmohar);flex:none}
.slots li span{flex:1}
.plans{display:grid;gap:14px;margin-top:30px}
.plan{border-radius:22px;padding:24px;background:var(--indigo);color:#fff;display:grid;gap:4px}
.plan.alt{background:var(--marigold);color:var(--indigo)}
.plan .price{font:600 2.6rem/1.05 var(--display)}
.plan .price small{font:500 1rem var(--body);opacity:.85}
.plan p{opacity:.92}
.pay{margin-top:22px;display:grid;gap:12px;justify-items:start}
.pay p{color:var(--muted)}

/* reviews */
.rating{display:grid;gap:18px;justify-items:center;text-align:center}
.rating .big{font:600 clamp(4.5rem,24vw,7rem)/1 var(--display);color:var(--marigold)}
.stars{display:flex;gap:4px;color:var(--marigold)}
.stars svg{width:30px;height:30px}

/* instagram */
.ig-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px 26px;padding:0 20px 8px;scrollbar-width:none}
.ig-strip::-webkit-scrollbar{display:none}
.ig-strip a{flex:none;width:62vw;max-width:260px;aspect-ratio:4/5;border-radius:18px;overflow:hidden;scroll-snap-align:center;border:2px solid var(--marigold)}
.ig-strip img{width:100%;height:100%;object-fit:cover}

/* faq */
.faq{border-top:2px dotted var(--line)}
.faq details{border-bottom:2px dotted var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 2px;font-weight:600;font-size:1.1rem;line-height:1.35}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:34px;height:34px;border-radius:50%;background:var(--blush);color:var(--indigo);display:grid;place-items:center;font-size:1.4rem;line-height:1;transition:transform .2s,background .2s}
.faq details[open] summary::after{transform:rotate(45deg);background:var(--marigold)}
.faq details p{padding:0 2px 22px;color:var(--muted);max-width:38em}

/* final + footer */
.final{text-align:center;overflow:hidden}
.final .wrap{display:grid;gap:18px;justify-items:center;position:relative;z-index:1}
.final .mandala{width:130%;opacity:.2;animation:none}
footer{background:#0d2036;color:#c5d2e0;padding:40px 0 30px;font-size:.98rem}
footer .wrap{display:grid;gap:24px}
footer .links{display:flex;flex-wrap:wrap;gap:10px 22px}
footer a{text-decoration:none}
footer a:hover{color:var(--marigold)}
.social{display:flex;gap:12px}
.social a{min-height:44px;padding:0 18px;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;display:inline-flex;align-items:center;color:#fff;font-weight:500}

/* sticky bottom bar (phones) */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;gap:10px;transform:translateY(110%);transition:transform .3s;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(20,48,79,.97) 70%,rgba(20,48,79,0));pointer-events:none}
.dock.show{transform:none}
.dock>*{pointer-events:auto}
.dock .btn-gold{flex:1;min-height:54px}
.dock .call{flex:none;width:54px;min-height:54px;padding:0;background:#fff;color:var(--indigo)}


/* ---------- motion ---------- */
.hero .wrap{position:relative;z-index:1}
.petals{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.petal{position:absolute;top:0;width:12px;height:18px;border-radius:70% 0 70% 0;background:var(--marigold);opacity:0;animation:fall var(--t,13s) linear var(--dl,0s) infinite}
.petal:nth-child(3n){background:var(--gulmohar);width:10px;height:15px}
.petal:nth-child(3n+1){width:9px;height:13px}
@keyframes fall{0%{transform:translate3d(0,-30px,0) rotate(0);opacity:0}10%{opacity:.9}50%{transform:translate3d(34px,55vh,0) rotate(200deg)}90%{opacity:.8}100%{transform:translate3d(-14px,112vh,0) rotate(380deg);opacity:0}}
.mandala{animation:turn 140s linear infinite,breathe 7s ease-in-out infinite}
.final .mandala{animation:turn 200s linear infinite,breathe 8s ease-in-out infinite}
@keyframes breathe{0%,100%{scale:.95}50%{scale:1.05}}
@keyframes fadeup{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-text>*{animation:fadeup .85s cubic-bezier(.2,.7,.2,1) both}
.hero-text>:nth-child(1){animation-delay:.45s}
.hero-text>:nth-child(2){animation-delay:.65s}
.hero-text>:nth-child(3){animation-delay:.85s}
.hero-text>:nth-child(4){animation-delay:1.05s}
.chip{animation:chip-in .7s cubic-bezier(.3,1.6,.5,1) both,bob 5s ease-in-out infinite}
.chip.a{animation-delay:1.2s,1.9s}
.chip.b{animation-delay:1.45s,3.2s}
@keyframes chip-in{from{opacity:0;scale:.4}to{opacity:1;scale:1}}
@keyframes bob{50%{translate:0 -7px}}
.pulse{position:relative}
.pulse::after{content:"";position:absolute;inset:-3px;border-radius:inherit;border:2px solid var(--marigold);animation:ring 2.4s ease-out 2s infinite;pointer-events:none}
@keyframes ring{0%{opacity:.9;transform:scale(1)}80%,100%{opacity:0;transform:scale(1.07,1.32)}}
.marquee:hover .marquee-track{animation-play-state:paused}

/* scroll reveals (JS adds data-r; without JS everything simply shows) */
.js [data-r]{transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1),clip-path 1.2s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
.js [data-r=up]:not(.in){opacity:0;transform:translateY(26px)}
.js [data-r=left]:not(.in){opacity:0;transform:translateX(-30px)}
.js [data-r=pop]:not(.in){opacity:0;transform:scale(.92) translateY(18px)}
.js [data-r=arch]:not(.in){clip-path:inset(100% 0 0 0)}
.js .steps li::before{transform-origin:top;transition:transform .7s ease-out calc(var(--d,0ms) + .35s)}
.js .steps li:not(.in)::before{transform:scaleY(0)}
.js .stars svg{transition:opacity .4s,transform .55s cubic-bezier(.3,1.6,.5,1)}
.js .stars:not(.in) svg{opacity:0;transform:scale(.2) rotate(-40deg)}
.stars svg:nth-child(2){transition-delay:.12s}.stars svg:nth-child(3){transition-delay:.24s}.stars svg:nth-child(4){transition-delay:.36s}.stars svg:nth-child(5){transition-delay:.48s}
.goal .go{transition:transform .2s,background .2s}
.goal:active .go{transform:scale(.9)}

@media (min-width:640px){
  .goals{grid-template-columns:1fr 1fr;column-gap:40px}
  .why{grid-template-columns:1fr 1fr;gap:34px 40px}
  .slots{grid-template-columns:1fr 1fr}
  .plans{grid-template-columns:1fr 1fr}
  .ig-strip a{width:230px}
}
@media (min-width:900px){
  body{padding-bottom:0}
  .dock{display:none}
  .top nav{display:flex}
  .pad{padding-block:96px}
  .hero{padding-top:56px;padding-bottom:96px}
  .hero .wrap{grid-template-columns:1.1fr .9fr;text-align:left;justify-items:start;align-items:center;gap:60px}
  .hero-text{justify-items:start;order:1}
  .stage{order:2;justify-self:center;width:min(100%,400px)}
  .hero .cta{grid-template-columns:auto auto;max-width:none}
  .about .wrap{grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px;justify-items:start}
  .about .stage{justify-self:center}
  .ig-strip{margin-inline:0;padding-inline:0;overflow:visible;display:grid;grid-template-columns:repeat(5,1fr)}
  .ig-strip a{width:auto;max-width:none}
  .final .mandala{width:60%}
}
@media (prefers-reduced-motion:reduce){
  .petals{display:none}
  .pulse::after{display:none}
  .chip,.hero-text>*{animation:none}
  .marquee-track{animation:none}
  .marquee-track{animation:none;overflow-x:auto;width:auto}
  .dock{transition:none}
  html{scroll-behavior:auto}
  .mandala{animation:none}
  .arch{animation:none}
}

/* ================= shared header extras, menu ================= */
.lock{overflow:hidden}
.top .pill{display:none}
.top-r{display:flex;align-items:center;gap:10px}
.menu-btn{width:46px;height:46px;border-radius:50%;border:2px solid rgba(244,168,29,.7);background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.menu-btn span,.menu-btn span::before{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .3s,background .3s}
.menu-btn span::before{content:"";position:absolute;top:-7px;left:0}
.menu-btn span::after{content:"";position:absolute;top:7px;left:0;width:20px;height:2px;background:currentColor;border-radius:2px}
.top nav a[aria-current=page]{color:var(--marigold);opacity:1}
.menu{position:fixed;inset:0;z-index:60;background:var(--indigo) var(--jaali);color:#fff;display:flex;flex-direction:column;padding:0 24px calc(24px + env(safe-area-inset-bottom));overflow-y:auto;visibility:hidden;clip-path:circle(0 at calc(100% - 44px) 34px);transition:clip-path .6s cubic-bezier(.7,0,.2,1),visibility 0s .6s}
.menu.open{visibility:visible;clip-path:circle(150% at calc(100% - 44px) 34px);transition:clip-path .7s cubic-bezier(.7,0,.2,1),visibility 0s}
.menu-top{display:flex;align-items:center;justify-content:space-between;height:60px;flex:none}
.menu-x{width:46px;height:46px;border-radius:50%;border:2px solid var(--marigold);background:var(--marigold);color:var(--indigo);display:grid;place-items:center;cursor:pointer;padding:0;font-size:1.7rem;line-height:1}
.menu ul{list-style:none;margin:26px 0;padding:0;display:grid;gap:2px}
.menu li a{display:block;padding:12px 0;font:600 2rem/1.1 var(--display);text-decoration:none;border-bottom:1px dotted rgba(244,168,29,.35);opacity:0;transform:translateY(18px);transition:opacity .5s,transform .5s,color .2s}
.menu.open li a{opacity:1;transform:none}
.menu.open li:nth-child(1) a{transition-delay:.25s}.menu.open li:nth-child(2) a{transition-delay:.31s}.menu.open li:nth-child(3) a{transition-delay:.37s}.menu.open li:nth-child(4) a{transition-delay:.43s}.menu.open li:nth-child(5) a{transition-delay:.49s}.menu.open li:nth-child(6) a{transition-delay:.55s}.menu.open li:nth-child(7) a{transition-delay:.61s}
.menu li a[aria-current=page]{color:var(--marigold)}
.menu .m-foot{margin-top:auto;display:grid;gap:16px}
.menu .m-social{display:flex;gap:10px;flex-wrap:wrap}
.menu .m-social a{min-height:44px;padding:0 18px;border:1.5px solid rgba(255,255,255,.4);border-radius:999px;display:inline-flex;align-items:center;color:#fff;text-decoration:none;font-weight:500}
.menu .m-loc{color:#c5d2e0;font-size:.95rem}

/* ================= inner pages ================= */
.page-hero{padding:46px 0 54px;position:relative;overflow:hidden}
.page-hero .wrap{display:grid;gap:14px;position:relative;z-index:1}
.page-hero h1{font-size:clamp(2rem,8.6vw,3.3rem);max-width:15em}
.page-hero p{color:#dbe5ef;max-width:34em;font-size:1.1rem}
.page-hero .mandala{left:auto;right:-40%;top:50%;width:90%;translate:0 -50%;opacity:.22}
.back{display:inline-flex;align-items:center;gap:6px;color:var(--marigold);font-weight:600;text-decoration:none;font-size:.98rem;margin-bottom:6px}
.back svg{width:18px;height:18px;transform:rotate(180deg)}
.prose{max-width:40rem}
.prose h2{font-size:1.55rem;margin:1.9em 0 .5em}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:1.25rem;margin:1.5em 0 .4em}
.prose p{margin:0 0 1.05em;color:#2b3547}
.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1.3em}
.prose li{margin:.5em 0;padding-left:.35em}
.prose li::marker{color:var(--gulmohar);font-weight:700}
.prose a{color:var(--indigo-2);text-underline-offset:3px;word-break:break-word}
.prose .lede{font-size:1.2rem;line-height:1.6;color:var(--ink)}
.byline{display:flex;gap:18px;flex-wrap:wrap;color:#c5d2e0;font-size:.95rem}
.tag{display:inline-block;padding:5px 14px;border-radius:999px;background:var(--blush);color:var(--indigo);font-weight:600;font-size:.88rem;width:max-content}
.page-hero .tag{background:var(--marigold)}
.cover{aspect-ratio:16/10;object-fit:cover;object-position:50% 45%;width:100%;height:auto;border-radius:22px;border:3px solid var(--marigold);margin-bottom:34px}
.cta-card{margin-top:44px;border-radius:24px;padding:28px 24px;background:var(--indigo) var(--jaali);color:#fff;display:grid;gap:12px;justify-items:start}
.cta-card h3{font-size:1.5rem}
.cta-card p{color:#dbe5ef}
.posts{display:grid;gap:22px}
.post{display:grid;border-radius:24px;overflow:hidden;background:#fff;border:2px solid var(--line);text-decoration:none;color:inherit;transition:transform .2s,border-color .2s}
.post:hover{transform:translateY(-4px);border-color:var(--marigold)}
.post img{aspect-ratio:16/10;object-fit:cover;object-position:50% 45%;width:100%;height:auto}
.post>div{padding:20px 22px 24px;display:grid;gap:10px;justify-items:start}
.post h2{font-size:1.4rem}
.post p{color:var(--muted)}
.post .more{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--gulmohar)}
.post .more svg{width:18px;height:18px}
.vframe{aspect-ratio:16/9;border-radius:24px;border:3px solid var(--marigold);padding:6px;background:var(--indigo)}
.vframe iframe{width:100%;height:100%;border:0;border-radius:17px;display:block}
.formcard{background:#fff;border:2px solid var(--line);border-radius:24px;overflow:hidden}
.formcard iframe{width:100%;border:0;display:block;min-height:3109px}
.formnote{display:grid;gap:12px;justify-items:start;margin-bottom:26px}
.paybox{margin-top:22px;background:#fff;border:2px solid var(--line);border-radius:22px;padding:22px;display:grid;gap:12px}
.paybox form{display:flex;justify-content:flex-start}
.plan .small{opacity:.9;font-size:.98rem}
.plan.wide{grid-column:1/-1}
.quotes{display:grid;gap:16px;margin-top:34px;text-align:left}
.quote{background:#fff;border-radius:22px;padding:24px 22px;display:grid;gap:12px;border:2px solid rgba(20,48,79,.1)}
.quote .stars svg{width:18px;height:18px}
.quote p{font:500 1.12rem/1.55 var(--display);color:var(--ink)}
.quote cite{font-style:normal;font-weight:700;color:var(--indigo)}
.rating .big+h2{margin-top:-4px}
.center{text-align:center}
.tight{padding-block:48px}

/* dialogs (link-in-bio) */
dialog{border:0;border-radius:26px;padding:0;width:min(92vw,460px);max-height:88vh;background:var(--ivory);color:var(--ink);overflow:auto}
dialog::backdrop{background:rgba(10,24,40,.72)}
dialog[open]{animation:dlg .35s cubic-bezier(.2,.8,.2,1)}
@keyframes dlg{from{opacity:0;transform:translateY(30px) scale(.97)}}
.dlg{padding:30px 22px 26px;display:grid;gap:16px;position:relative}
.dlg h2{font-size:1.6rem;padding-right:44px}
.dlg-x{position:absolute;top:12px;right:12px;width:42px;height:42px;border-radius:50%;border:0;background:var(--blush);color:var(--indigo);font-size:1.5rem;cursor:pointer;line-height:1}
.dlg .slots li{padding:13px 16px}

/* link in bio */
body.bio{background:var(--indigo) var(--jaali);color:#fff;min-height:100vh;padding-bottom:0}
.bio-wrap{width:min(100% - 36px,440px);margin:0 auto;padding:30px 0 40px;display:grid;gap:18px;justify-items:center;text-align:center}
.bio-wrap .stage{width:min(56vw,210px);margin-top:6px}
.bio-wrap .mandala{width:170%}
.bio-wrap h1{font-size:1.9rem}
.bio-wrap .tagline{color:#dbe5ef}
.bio-wrap .marquee{width:100vw;margin:4px calc(50% - 50vw)}
.bio-links{display:grid;gap:12px;width:100%;margin-top:6px}
.bio-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:0 20px 0 26px;border-radius:999px;background:#fff;color:var(--indigo);text-decoration:none;font:600 1.15rem/1 var(--display);border:0;cursor:pointer;width:100%;transition:transform .15s}
.bio-btn:active{transform:scale(.98)}
.bio-btn svg{width:24px;height:24px;flex:none;color:var(--gulmohar)}
.bio-btn.gold{background:var(--marigold);position:relative}
.bio-btn.gold svg{color:var(--indigo)}
.bio-note{background:rgba(255,255,255,.1);border:1px dashed rgba(244,168,29,.7);border-radius:16px;padding:12px 16px;color:#fff}
.bio-social{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.bio-social a{min-height:44px;padding:0 18px;border:1.5px solid rgba(255,255,255,.4);border-radius:999px;display:inline-flex;align-items:center;color:#fff;text-decoration:none;font-weight:500}
.coach-photo{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:999px 999px 16px 16px;border:3px solid var(--marigold)}

/* 404 */
.nf{min-height:calc(100vh - 60px);display:grid;place-items:center;text-align:center;padding:50px 0}
.nf .wrap{display:grid;gap:16px;justify-items:center}
.nf .num{font:600 clamp(6rem,36vw,11rem)/1 var(--display);color:var(--marigold)}

@media (min-width:640px){
  .top .pill{display:inline-flex}
  .posts{grid-template-columns:1fr 1fr}
  .quotes{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:900px){
  .menu-btn{display:none}
  .posts{grid-template-columns:repeat(3,1fr)}
  .page-hero{padding:70px 0 80px}
  .page-hero .mandala{right:-5%;width:46%}
}
@media (prefers-reduced-motion:reduce){
  .menu,.menu.open{transition:none}
  .menu li a{transition:none;opacity:1;transform:none}
  dialog[open]{animation:none}
}

.social{flex-wrap:wrap}
footer .wrap>*{min-width:0}
