/* Soulguide by Dr Neeta Panchal – site styles */
@font-face{font-family:"Marcellus";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/marcellus-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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Marcellus";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/marcellus-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Marcellus draws "1" like "I" – use Lato numerals inside Marcellus text */
@font-face{font-family:"Marcellus";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-latin-400-normal.woff2) format("woff2");unicode-range:U+0030-0039}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lato-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/lato-latin-700-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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/lato-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lato";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/lato-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-500-italic.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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-ext-500-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --violet:#5B2A86; --violet-d:#47206C; --indigo:#3E2A86; --night:#221640; --blue:#2F4FA8;
  --ivory:#FAF8F2; --ivory-2:#F4EFE6; --lilac:#EFE7F6; --lilac-2:#E4D8F0; --line:#E3DAEC;
  --green:#7CB342; --yellow:#F2C230; --orange:#EE7D2B; --red:#D7262E; --brown:#5A2E22;
  --ink:#2A2238; --muted:#5F566E; --white:#fff;
  --chakra:linear-gradient(90deg,#5B2A86,#2F4FA8,#2F9FD8,#7CB342,#F2C230,#EE7D2B,#D7262E);
  --serif:"Marcellus",Georgia,"Times New Roman",serif; --sans:"Lato",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --quote:"Cormorant Garamond",Georgia,serif;
  --r:18px; --r-sm:12px; --shadow:0 18px 40px -22px rgba(62,42,134,.35); --shadow-sm:0 6px 18px -10px rgba(62,42,134,.3);
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 1.0625rem/1.7 var(--sans);overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--violet)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--violet-d);line-height:1.18;margin:0 0 .5em;letter-spacing:.005em}
h1{font-size:clamp(2.1rem,4.6vw,3.6rem)}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}
h3{font-size:1.32rem}
h4{font-size:1.1rem}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.2em}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--violet);color:#fff;padding:.6rem 1rem;z-index:100}
.skip:focus{left:1rem;top:1rem}
.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
.ic{width:1.25em;height:1.25em;flex:none}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* top bar */
.topbar{background:var(--night);color:#E9E2F5;font-size:.86rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 0;flex-wrap:wrap}
.topbar a,.topbar span{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.topbar a:hover{color:var(--yellow)}
.topbar .tb-left,.topbar .tb-right{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap}
.topbar .ic{width:1em;height:1em}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,248,242,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--chakra);opacity:.85}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:78px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--violet)}
.brand img{width:50px;height:auto}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-name{font-family:var(--serif);font-size:1.75rem;color:var(--violet);letter-spacing:.01em}
.brand-by{font-size:.74rem;font-weight:700;color:var(--indigo);letter-spacing:.06em;margin:.28rem 0 0 1.6rem}
.nav{display:flex;align-items:center;gap:.25rem}
.nav>ul{list-style:none;display:flex;gap:.1rem;margin:0;padding:0;align-items:center}
.nav a.nl,.nav button.nl{display:flex;align-items:center;gap:.25rem;padding:.6rem .75rem;border-radius:999px;color:var(--ink);text-decoration:none;font:700 .93rem var(--sans);background:none;border:0;cursor:pointer}
.nav a.nl:hover,.nav button.nl:hover,.nav .current>.nl{color:var(--violet);background:var(--lilac)}
.has-sub{position:relative}
.has-sub .chev{width:.9em;height:.9em;transition:transform .2s}
.sub{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:300px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:.5rem;list-style:none;margin:0;opacity:0;visibility:hidden;transition:.18s}
.has-sub:hover .sub,.has-sub:focus-within .sub,.has-sub.open .sub{opacity:1;visibility:visible;transform:translate(-50%,2px)}
.sub a{display:flex;gap:.7rem;align-items:center;padding:.6rem .7rem;border-radius:10px;color:var(--ink);text-decoration:none;font-size:.95rem}
.sub a:hover{background:var(--lilac);color:var(--violet)}
.sub .ic{color:var(--violet)}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:12px;padding:.55rem;color:var(--violet);cursor:pointer}
.menu-btn .ic{width:1.5rem;height:1.5rem}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.85rem 1.4rem;border-radius:999px;font:700 .98rem/1.1 var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .2s,box-shadow .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--violet);color:#fff;box-shadow:0 10px 24px -12px rgba(91,42,134,.8)}
.btn-primary:hover{background:var(--violet-d);color:#fff}
.btn-outline{border-color:var(--violet);color:var(--violet);background:transparent}
.btn-outline:hover{background:var(--violet);color:#fff}
.btn-light{background:#fff;color:var(--violet)}
.btn-light:hover{background:var(--lilac);color:var(--violet-d)}
.btn-ghost-light{border-color:rgba(255,255,255,.6);color:#fff}
.btn-ghost-light:hover{background:#fff;color:var(--violet)}
.btn-wa{background:#1F8F4E;color:#fff}
.btn-wa:hover{background:#18763F;color:#fff}
.btn-sm{padding:.6rem 1rem;font-size:.9rem}
.btn-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.link-arrow{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--violet);text-decoration:none}
.link-arrow .ic{transition:transform .2s;width:1.1em;height:1.1em}
.link-arrow:hover .ic{transform:translateX(4px)}

/* sections */
.section{padding:clamp(3.5rem,7vw,6rem) 0}
.section-sm{padding:clamp(2.5rem,5vw,3.5rem) 0}
.bg-lilac{background:var(--lilac)}
.bg-white{background:#fff}
.bg-ivory2{background:var(--ivory-2)}
.bg-night{background:radial-gradient(1200px 500px at 85% -10%,rgba(47,79,168,.55),transparent 60%),radial-gradient(900px 500px at 0% 110%,rgba(91,42,134,.75),transparent 60%),var(--night);color:#E9E2F5}
.bg-night h2,.bg-night h3{color:#fff}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font:700 .78rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--violet);margin-bottom:1rem}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--chakra);border-radius:2px}
.bg-night .eyebrow{color:var(--yellow)}
.sec-head{max-width:760px;margin-bottom:2.6rem}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head.center .eyebrow{justify-content:center}
.lead{font-size:1.18rem;color:var(--muted)}
.bg-night .lead{color:#D6CCE9}
.divider{height:3px;border:0;background:var(--chakra);border-radius:3px;width:120px;margin:0 0 1.5rem}

/* hero */
.hero{position:relative;overflow:hidden;padding:clamp(3rem,6vw,5.5rem) 0 clamp(3.5rem,6vw,5rem)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 500px at 78% 30%,rgba(239,231,246,.95),transparent 70%),radial-gradient(600px 400px at 10% 90%,rgba(242,194,48,.12),transparent 70%);z-index:-1}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero h1{font-size:clamp(2.2rem,3.9vw,3.35rem);margin-bottom:.45em}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--violet),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .kicker{font:700 .82rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:1.1rem}
.hero .sub-h1{font:700 1rem var(--sans);color:var(--muted);letter-spacing:.01em;margin:-.3rem 0 1rem}
.chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.8rem}
.chip{display:inline-flex;align-items:center;gap:.45rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.45rem .85rem;font-size:.88rem;font-weight:700;color:var(--indigo)}
.chip .ic{color:var(--violet);width:1.05em;height:1.05em}
.portrait{position:relative;justify-self:center;width:min(100%,460px)}
.portrait .frame{position:relative;border-radius:240px 240px var(--r) var(--r);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/5;background:var(--lilac)}
.portrait .frame img{width:100%;height:100%;object-fit:cover}
.portrait .rings{position:absolute;inset:-9% -12% auto auto;width:62%;z-index:-1;opacity:.9}
.portrait .badge{position:absolute;left:-1.5rem;bottom:2rem;background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:.9rem 1.1rem;display:flex;gap:.8rem;align-items:center;max-width:260px}
.portrait .badge .ic{width:2.2rem;height:2.2rem;color:var(--violet);background:var(--lilac);border-radius:12px;padding:.4rem}
.portrait .badge b{display:block;font-family:var(--serif);font-weight:400;color:var(--violet-d);font-size:1.05rem;line-height:1.2}
.portrait .badge span{font-size:.82rem;color:var(--muted)}

/* trust strip */
.trust{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-item{display:flex;gap:.9rem;align-items:center;padding:1.5rem 1.2rem;border-right:1px solid var(--line)}
.trust-item:last-child{border-right:0}
.trust-item .ic{width:2.6rem;height:2.6rem;padding:.55rem;border-radius:50%;background:var(--lilac);color:var(--violet)}
.trust-item b{display:block;font-family:var(--serif);font-weight:400;font-size:1.08rem;color:var(--violet-d);line-height:1.25}
.trust-item span{font-size:.86rem;color:var(--muted)}

/* grids & cards */
.grid{display:grid;gap:1.5rem}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;display:flex;flex-direction:column}
a.card{text-decoration:none;color:inherit}
a.card:hover,.card.hover:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--lilac-2)}
.card h3{margin-bottom:.4rem}
.card p{color:var(--muted);margin-bottom:1rem}
.card .link-arrow{margin-top:auto}
.icon-tile{width:3.4rem;height:3.4rem;border-radius:16px;display:grid;place-items:center;margin-bottom:1.2rem;color:#fff;background:linear-gradient(135deg,var(--violet),var(--blue))}
.icon-tile .ic{width:1.7rem;height:1.7rem}
.t-green{background:linear-gradient(135deg,#5E9A2C,#7CB342)}
.t-orange{background:linear-gradient(135deg,#D9661B,#EE7D2B)}
.t-yellow{background:linear-gradient(135deg,#C7951A,#E8B526)}
.t-red{background:linear-gradient(135deg,#B91F27,#D7262E)}
.t-blue{background:linear-gradient(135deg,#25418F,#2F9FD8)}
.t-indigo{background:linear-gradient(135deg,#2B1E66,#3E2A86)}
.card-for{border-top:4px solid var(--violet)}
.card-for:nth-child(2){border-top-color:var(--blue)}
.card-for:nth-child(3){border-top-color:var(--orange)}
.pillar-tag{display:inline-block;font:700 .72rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--indigo);background:var(--lilac);padding:.25rem .6rem;border-radius:999px;margin-bottom:.8rem;align-self:flex-start}

/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.split.rev>:first-child{order:2}
.media{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);background:var(--lilac)}
.media img{width:100%;height:100%;object-fit:cover}
.media-arch{border-radius:200px 200px var(--r) var(--r)}
.checklist{list-style:none;padding:0;margin:0 0 1.2rem}
.checklist li{display:flex;gap:.7rem;align-items:flex-start;margin-bottom:.7rem}
.checklist .ic{color:#fff;background:var(--violet);border-radius:50%;padding:.22rem;width:1.35rem;height:1.35rem;margin-top:.2rem}

/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.step{background:#fff;border-radius:var(--r);padding:2rem 1.6rem;border:1px solid var(--line);position:relative}
.step::before{counter-increment:s;content:counter(s);font-family:var(--serif);font-size:1.4rem;color:#fff;width:3rem;height:3rem;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),var(--blue));margin-bottom:1rem}
.bg-night .step{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.bg-night .step p{color:#D6CCE9}

/* testimonials */
.quote-card{margin:0;background:#fff;border-radius:var(--r);padding:2rem 1.8rem 1.6rem;border:1px solid var(--line);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;position:relative}
.quote-card .qmark{width:2.2rem;height:2.2rem;color:var(--lilac-2);margin-bottom:.7rem}
.quote-card blockquote{margin:0 0 1.2rem;font:500 italic 1.3rem/1.45 var(--quote);color:var(--ink)}
.quote-card .who{margin-top:auto;display:flex;align-items:center;gap:.75rem;border-top:1px solid var(--line);padding-top:1rem}
.quote-card .av{width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:var(--serif);font-size:1.1rem;background:linear-gradient(135deg,var(--violet),var(--blue));flex:none}
.quote-card .who b{display:block;font-size:.95rem;color:var(--violet-d)}
.quote-card .who .meta span{font-size:.83rem;color:var(--muted)}
.bg-night .quote-card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14)}
.bg-night .quote-card blockquote{color:#fff}
.bg-night .quote-card .who{border-color:rgba(255,255,255,.14)}
.bg-night .quote-card .who b{color:#fff}
.bg-night .quote-card .who .meta span{color:#CFC4E6}
.bg-night .quote-card .qmark{color:rgba(255,255,255,.18)}
.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
.filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.5rem 1rem;font:700 .9rem var(--sans);color:var(--indigo);cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--violet);color:#fff;border-color:var(--violet)}
.masonry{columns:3 320px;column-gap:1.5rem}
.masonry .quote-card{break-inside:avoid;margin-bottom:1.5rem}
.note{font-size:.85rem;color:var(--muted)}

/* faq */
.faq{max-width:860px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:.8rem;transition:box-shadow .2s}
.faq details[open]{box-shadow:var(--shadow-sm);border-color:var(--lilac-2)}
.faq summary{list-style:none;cursor:pointer;padding:1.15rem 3.4rem 1.15rem 1.4rem;font:700 1.04rem/1.45 var(--sans);color:var(--violet-d);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:1.3rem;top:50%;width:1.6rem;height:1.6rem;margin-top:-.8rem;border-radius:50%;background:var(--lilac) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B2A86' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/62% no-repeat;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .ans{padding:0 1.4rem 1.2rem;color:var(--muted)}
.faq .ans p:last-child{margin:0}

/* page hero */
.page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#F3ECF9 0%,#EFE7F6 45%,#E8EEF9 100%);padding:clamp(2.8rem,6vw,4.8rem) 0 clamp(2.6rem,5vw,4rem);border-bottom:1px solid var(--line)}
.page-hero .wrap{position:relative;z-index:1}
.page-hero .ph-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:2rem;align-items:center}
.page-hero h1{margin-bottom:.35em}
.page-hero .lead{max-width:720px;margin:0}
.page-hero .art{justify-self:end;width:170px;height:170px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--violet);box-shadow:var(--shadow);position:relative}
.page-hero .art::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:2px solid transparent;background:var(--chakra) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55}
.page-hero .art .ic{width:42%;height:42%}
.page-hero .rings-bg{position:absolute;right:-120px;top:-120px;width:520px;opacity:.55}
.crumbs{font-size:.85rem;margin-bottom:1.2rem;color:var(--muted)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:0}
.crumbs li+li::before{content:"›";margin-right:.4rem;color:var(--muted)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--violet)}
.answer-box{background:#fff;border-left:4px solid var(--violet);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:1.3rem 1.5rem;box-shadow:var(--shadow-sm);font-size:1.08rem}
.answer-box b:first-child{color:var(--violet-d)}

/* service / content layout */
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.sidebar{position:sticky;top:110px;display:grid;gap:1.2rem}
.side-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;box-shadow:var(--shadow-sm)}
.side-card h3{font-size:1.2rem}
.side-card.cta{background:linear-gradient(150deg,var(--violet),var(--indigo));color:#fff;border:0}
.side-card.cta h3{color:#fff}
.side-card.cta p{color:#E5DCF3}
.side-card .btn{width:100%;margin-top:.6rem}
.side-links{list-style:none;padding:0;margin:0}
.side-links li{border-bottom:1px solid var(--line)}
.side-links li:last-child{border:0}
.side-links a{display:flex;justify-content:space-between;align-items:center;padding:.65rem 0;text-decoration:none;color:var(--ink);font-weight:700;font-size:.95rem}
.side-links a:hover{color:var(--violet)}
.block{margin-bottom:3rem}
.block:last-child{margin-bottom:0}
.pains{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem}
.pain{display:flex;gap:.75rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:1rem 1.1rem}
.pain .ic{color:var(--violet);margin-top:.15rem}
.formats{display:grid;gap:1rem}
.format{display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:1.1rem 1.25rem}
.format .ic{width:2.4rem;height:2.4rem;padding:.5rem;border-radius:12px;background:var(--lilac);color:var(--violet)}
.format b{display:block;color:var(--violet-d)}
.format span{color:var(--muted);font-size:.95rem}
.mod-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}
.mod-list li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.4rem .9rem;font-weight:700;font-size:.9rem;color:var(--indigo)}
.disclaimer{font-size:.88rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;margin-top:2rem}

/* timeline */
.timeline{list-style:none;padding:0;margin:0;position:relative}
.timeline::before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--violet),var(--blue),var(--green),var(--yellow),var(--orange),var(--red))}
.timeline li{position:relative;padding:0 0 1.5rem 2.6rem}
.timeline li::before{content:"";position:absolute;left:4px;top:.35rem;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--violet)}
.timeline .yr{font:700 .8rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.timeline b{display:block;font-family:var(--serif);font-weight:400;color:var(--violet-d);font-size:1.12rem}

/* story */
.story p{font-size:1.1rem}
.story .first{font-size:1.22rem;color:var(--violet-d)}
.pull,.story .pull{font:500 italic 1.75rem/1.4 var(--quote);color:var(--violet-d);border-left:3px solid;border-image:var(--chakra) 1;padding:.3rem 0 .3rem 1.4rem;margin:2rem 0}

/* workshops */
.ws-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}
.ws-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ws-top{height:130px;display:grid;place-items:center;color:#fff;position:relative;overflow:hidden}
.ws-top .ic{width:3.2rem;height:3.2rem;position:relative;z-index:1}
.ws-top::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:1.5px solid rgba(255,255,255,.25);box-shadow:0 0 0 30px rgba(255,255,255,.05),0 0 0 60px rgba(255,255,255,.04)}
.ws-body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.ws-body h3{font-size:1.22rem;margin-bottom:.3rem}
.ws-body p{color:var(--muted);font-size:.95rem;margin-bottom:1rem}
.ws-theme{font:700 .72rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:.4rem}
.ws-body .link-arrow{margin-top:auto;font-size:.92rem}
.th-abundance{background:linear-gradient(135deg,#C7951A,#EE7D2B)}
.th-love{background:linear-gradient(135deg,#B91F57,#EE7D2B)}
.th-release{background:linear-gradient(135deg,#5B2A86,#8E4FC2)}
.th-spirit{background:linear-gradient(135deg,#2F4FA8,#2F9FD8)}
.th-self{background:linear-gradient(135deg,#3E7D1F,#7CB342)}
.th-joy{background:linear-gradient(135deg,#E8A31F,#F2C230)}
.th-goddess{background:linear-gradient(135deg,#8C1B2E,#D7262E)}
.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}

/* journal */
.post-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.post-cover{aspect-ratio:16/9;display:grid;place-items:center;color:#fff;position:relative;overflow:hidden}
.post-cover .ic{width:3.4rem;height:3.4rem;position:relative;z-index:1;opacity:.95}
.post-cover::before,.post-cover::after{content:"";position:absolute;border-radius:50%;border:1.5px solid rgba(255,255,255,.22)}
.post-cover::before{width:220px;height:220px}
.post-cover::after{width:340px;height:340px}
.post-body{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;flex:1}
.post-meta{font-size:.82rem;color:var(--muted);margin-bottom:.5rem;display:flex;gap:.8rem;flex-wrap:wrap}
.post-meta .cat{font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
.post-body h3{font-size:1.25rem}
.post-body p{color:var(--muted);font-size:.96rem}
.post-body .link-arrow{margin-top:auto}
.c-mind{background:linear-gradient(135deg,#2F4FA8,#5B2A86)}
.c-heal{background:linear-gradient(135deg,#5B2A86,#B53A8C)}
.c-spirit{background:linear-gradient(135deg,#C7951A,#EE7D2B)}
.c-beauty{background:linear-gradient(135deg,#B91F57,#EE7D2B)}
.article-hero .post-meta{margin:0}
.article-hero h1{font-size:clamp(1.9rem,3.6vw,2.8rem);max-width:820px}
.prose{margin-inline:auto}
.prose{max-width:740px;font-size:1.1rem}
.prose h2{font-size:1.75rem;margin-top:2.2rem}
.prose h3{margin-top:1.8rem}
.prose ul,.prose ol{padding-left:1.3rem}
.prose li{margin-bottom:.5rem}
.prose li::marker{color:var(--violet)}
.prose blockquote{margin:1.8rem 0;font:500 italic 1.5rem/1.45 var(--quote);color:var(--violet-d);border-left:3px solid var(--violet);padding-left:1.2rem}
.tldr{background:var(--lilac);border-radius:var(--r);padding:1.4rem 1.6rem;margin-bottom:2rem}
.tldr h2{font-size:1.15rem;font-family:var(--sans);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--violet);margin:0 0 .6rem}
.tldr ul{margin:0}
.author{display:flex;gap:1.2rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.4rem;margin-top:2.5rem}
.author img{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:none}
.author b{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--violet-d)}
.author p{margin:.3rem 0 0;color:var(--muted);font-size:.95rem}

/* cta band */
.cta-band{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(120deg,var(--violet) 0%,var(--indigo) 55%,var(--blue) 100%);color:#fff;padding:clamp(2.2rem,5vw,3.6rem);display:grid;grid-template-columns:1.4fr auto;gap:2rem;align-items:center}
.cta-band::after{content:"";position:absolute;right:-90px;bottom:-140px;width:360px;height:360px;border-radius:50%;border:2px solid rgba(255,255,255,.18);box-shadow:0 0 0 40px rgba(255,255,255,.05),0 0 0 80px rgba(255,255,255,.04)}
.cta-band h2{color:#fff;margin-bottom:.3em}
.cta-band p{color:#E5DCF3;margin:0;font-size:1.1rem}
.cta-band .btn-row{margin:0;position:relative;z-index:1}

/* forms */
.form{display:grid;gap:1rem}
.form .row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form label{display:block;font-weight:700;font-size:.92rem;margin-bottom:.35rem;color:var(--violet-d)}
.form input,.form select,.form textarea{width:100%;font:inherit;font-size:1rem;padding:.8rem 1rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--violet);outline:none;box-shadow:0 0 0 4px rgba(91,42,134,.12)}
.form textarea{min-height:140px;resize:vertical}
.form .consent{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;color:var(--muted)}
.form .consent input{width:auto;margin-top:.3rem}
.hp{position:absolute;left:-9999px}
.alert{border-radius:12px;padding:1rem 1.2rem;margin-bottom:1rem;font-weight:700}
.alert-ok{background:#E8F5E1;color:#2F5E15}
.alert-err{background:#FBE7E7;color:#8C1B22}
.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.contact-list li{display:flex;gap:.9rem;align-items:flex-start}
.contact-list .ic{width:2.6rem;height:2.6rem;padding:.6rem;border-radius:12px;background:var(--lilac);color:var(--violet)}
.contact-list b{display:block;color:var(--violet-d)}
.contact-list a{font-weight:700;text-decoration:none}

/* footer */
.site-footer{background:var(--night);color:#CFC4E6;padding-top:4rem;position:relative;margin-top:0}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--chakra)}
.f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2.5rem;padding-bottom:3rem}
.site-footer h4{color:#fff;font-size:1.15rem;margin-bottom:1rem}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:.5rem}
.site-footer a{color:#CFC4E6;text-decoration:none}
.site-footer a:hover{color:var(--yellow)}
.f-brand .brand{color:#fff}
.f-brand .brand-name{color:#fff}
.f-brand .brand-by{color:#CFC4E6}
.f-brand p{margin-top:1rem;font-size:.95rem}
.social{display:flex;gap:.6rem;margin-top:1.2rem}
.social a{width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff}
.social a:hover{background:var(--violet);color:#fff}
.f-contact li{display:flex;gap:.6rem;align-items:flex-start}
.f-contact .ic{color:var(--yellow);margin-top:.25rem;width:1.05rem;height:1.05rem}
.f-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1.4rem 0 1.6rem;font-size:.85rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.f-bottom p{margin:0}
.f-disc{font-size:.8rem;color:#A99DC4;padding-bottom:1.4rem;margin:0}

/* sticky mobile bar */
.mbar{display:none}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:40;width:58px;height:58px;border-radius:50%;background:#1F8F4E;color:#fff;display:grid;place-items:center;box-shadow:0 12px 28px -10px rgba(0,0,0,.45)}
.wa-float .ic{width:30px;height:30px}
.wa-float:hover{background:#18763F;color:#fff}

/* misc */
.center{text-align:center}
.mt-2{margin-top:2rem}
.mt-1{margin-top:1rem}
.mb-0{margin-bottom:0}
.max-760{max-width:760px}
.stat-row{display:flex;gap:2rem;flex-wrap:wrap;margin-top:1.5rem}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:2.2rem;color:var(--violet);line-height:1}
.stat span{font-size:.9rem;color:var(--muted)}
.pill-list{display:flex;flex-wrap:wrap;gap:.5rem}
.notfound{text-align:center;padding:6rem 0}
.notfound .rings{width:180px;margin:0 auto 1.5rem}
.fade{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.fade.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.fade{opacity:1;transform:none}}

/* responsive */
@media (max-width:1100px){
  .nav>ul{gap:0}
  .nav a.nl,.nav button.nl{padding:.55rem .55rem;font-size:.9rem}
  .hdr .btn-primary.hdr-cta{display:none}
}
@media (max-width:960px){
  .site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--ivory)}
  .nav{visibility:hidden}
  .nav.open{visibility:visible}
  .menu-btn{display:inline-flex}
  .nav{position:fixed;inset:0 0 0 auto;width:min(380px,88vw);background:var(--ivory);flex-direction:column;align-items:stretch;padding:5.5rem 1.4rem 2rem;transform:translateX(100%);transition:transform .25s;box-shadow:-20px 0 40px -20px rgba(0,0,0,.3);overflow-y:auto;z-index:60}
  .nav.open{transform:none}
  .nav>ul{flex-direction:column;align-items:stretch;gap:.2rem}
  .nav a.nl,.nav button.nl{font-size:1.05rem;padding:.8rem .9rem;width:100%;justify-content:space-between}
  .sub{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:0;padding:0 0 .4rem .6rem;display:none;min-width:0;background:transparent}
  .has-sub.open .sub{display:block;transform:none}
  .has-sub:hover .sub{transform:none}
  .has-sub.open .chev{transform:rotate(180deg)}
  .nav .nav-cta{margin-top:1rem;display:flex!important}
  .nav-close{position:absolute;top:1.2rem;right:1.2rem}
  .scrim{position:fixed;inset:0;background:rgba(34,22,64,.45);z-index:49;opacity:0;visibility:hidden;transition:.2s}
  .scrim.show{opacity:1;visibility:visible}
  .hero-grid,.split,.content-grid,.page-hero .ph-grid{grid-template-columns:1fr}
  .split.rev>:first-child{order:0}
  .page-hero .art{display:none}
  .portrait{width:min(100%,340px)}
  .portrait .badge{left:.5rem}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-item:nth-child(2){border-right:0}
  .trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .f-grid{grid-template-columns:1fr 1fr}
  .sidebar{position:static}
  .cta-band{grid-template-columns:1fr}
}
@media (min-width:961px){.nav .nav-cta,.nav-close{display:none!important}.scrim{display:none}}
@media (max-width:640px){
  body{font-size:1rem;padding-bottom:64px}
  .topbar .tb-right{display:none}
  .topbar .wrap{justify-content:center}
  .brand img{width:42px}
  .brand-name{font-size:1.45rem}
  .brand-by{font-size:.66rem;margin-left:1.2rem}
  .hdr{min-height:68px}
  .g2,.g3,.g4,.pains,.form .row2{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:1fr}
  .trust-item{border-right:0;border-bottom:1px solid var(--line)}
  .trust-item:last-child{border-bottom:0}
  .f-grid{grid-template-columns:1fr}
  .wa-float{display:none}
  .mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:45;box-shadow:0 -8px 24px -12px rgba(0,0,0,.3)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-weight:700;text-decoration:none;color:#fff}
  .mbar .m-wa{background:#1F8F4E}
  .mbar .m-call{background:var(--violet)}
  .btn{white-space:normal}
  .portrait .badge{position:relative;left:auto;bottom:auto;margin:-2.5rem auto 0;max-width:90%}
  .masonry{columns:1}
}
@media print{.site-header,.topbar,.site-footer,.mbar,.wa-float,.btn{display:none!important}body{background:#fff}}

.ring-art{width:100%;max-width:380px;justify-self:center}
.ring-art svg{width:100%;height:auto}
