/* ==========================================================================
   Astrovasthu.telugu — central theme stylesheet
   Loaded AFTER bootstrap.min.css so these rules win.
   ========================================================================== */

:root{
  --white:#ffffff;
  --ivory:#FAF6EC;
  --ivory-2:#F5F0E6;
  --gold:#6E1E1E;
  --accent-gold:#B8860B;
  --gold-deep:#4A1414;
  --gold-bright:#8A2A2A;
  --ink:#26264F;
  --body:#584a35;
  --line:#E6DEC9;
}

/* ---- base ---- */
body{
  background:var(--white);color:var(--body);
  font-family:"Mukta",system-ui,sans-serif;font-weight:400;
  font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;color:var(--ink);
  font-weight:600;line-height:1.05;margin:0;}
p{margin:0 0 1.1em}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.gold{color:var(--gold)}
.topline{height:3px;background:linear-gradient(90deg,#8a6410,var(--accent-gold),#8a6410)}

/* ---- shared centered section header ---- */
.section-head{max-width:70ch;margin:0 auto 46px;text-align:center}
.section-head h2{font-size:clamp(2.1rem,4.2vw,3.2rem);margin-bottom:18px}
.section-head p{font-size:1.08rem}

/* ---- kicker / eyebrow ---- */
.kicker{font-size:14px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:10px}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;display:inline-flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--gold)}
.eyebrow.center{justify-content:center}

/* ==========================================================================
   NAVBAR
   ========================================================================== */
.site-nav{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);padding-top:.4rem;padding-bottom:.4rem;z-index:1030}
.brand{display:flex;align-items:center;gap:12px;padding:0}
.brand .mark{width:46px;height:46px;flex:none;border-radius:9px;object-fit:contain}
.brand .name{font-family:"Cormorant Garamond",serif;font-size:26px;
  font-weight:600;color:var(--ink);line-height:1}
.brand .name b{color:var(--gold);font-weight:600}
.navbar-nav .nav-link{font-family:"Mukta",sans-serif;font-size:15px;font-weight:500;
  color:var(--ink);position:relative}
.navbar-nav .nav-link.active,.navbar-nav .nav-link:hover{color:var(--gold-deep)}

.navbar-toggler{border:1px solid var(--line);padding:.35rem .5rem}
.navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(110,30,30,.25)}
.navbar-toggler svg{width:22px;height:22px;color:var(--ink);display:block}

/* ---- primary button ---- */
.cta{display:inline-flex;align-items:center;gap:9px;font-family:"Mukta",sans-serif;
  font-weight:600;font-size:15px;color:#fff;
  background:linear-gradient(135deg,var(--gold-bright),var(--gold-deep));
  padding:12px 22px;border-radius:40px;border:0;cursor:pointer;white-space:nowrap;
  box-shadow:0 6px 18px rgba(110,30,30,.28);transition:transform .2s,box-shadow .2s}
.cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(110,30,30,.34);color:#fff}
.cta svg{width:16px;height:16px}
.ghost{font-weight:600;color:var(--ink);border-bottom:1.5px solid var(--gold);padding-bottom:2px}

/* ==========================================================================
   HOME — HERO
   ========================================================================== */
.hero{position:relative;overflow:hidden;
  background:radial-gradient(120% 90% at 78% 20%,var(--ivory) 0%,var(--white) 60%)}
.hero-grid{padding:clamp(40px,6vw,84px) 0 clamp(36px,4vw,60px)}
.hero h1{font-size:clamp(2rem,4.4vw,3.5rem);letter-spacing:-.005em;line-height:1.12}
.hero h1 .metal{background:linear-gradient(100deg,#8a2a2a,#6E1E1E 52%,#4A1414);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.subline{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.6rem;
  color:var(--gold-deep);margin:.4em 0 1.1em}
.hero .lede{max-width:46ch;font-size:1.08rem;color:var(--body)}
.hero-actions{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}
.trust-strip{display:flex;flex-wrap:wrap;gap:10px 20px;margin:28px 0 0;padding:0;list-style:none}
.trust-strip li{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--body)}
.trust-strip svg{width:16px;height:16px;flex:none;color:var(--gold-deep)}

.hero-media{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:420px}
.compass{position:absolute;width:118%;max-width:540px;top:50%;left:50%;
  transform:translate(-50%,-52%);opacity:.16;z-index:0;pointer-events:none;color:var(--gold)}
.portrait{position:relative;z-index:1;width:min(360px,82%);aspect-ratio:360/500;
  object-fit:cover;object-position:top center;border-radius:999px 999px 20px 20px;
  border:1px solid var(--line);box-shadow:0 24px 60px rgba(74,20,20,.18);background:var(--ivory)}
.glow{position:absolute;z-index:0;width:70%;height:70%;left:50%;top:46%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(245,240,230,.35),transparent 68%);filter:blur(10px)}

/* hero: vedic-science emblem + founder photo composition */
.hero-media{align-items:center;flex-direction:column}
.hero-figure{position:relative;width:100%;display:flex;justify-content:center}
.vedic-emblem{position:relative;width:90%;max-width:460px;margin:0 auto;color:var(--gold);z-index:1}
.vedic-emblem svg,.vedic-emblem img{width:100%;height:auto;display:block;filter:drop-shadow(0 14px 30px rgba(74,20,20,.10))}
.hero-photo{position:relative;display:block;margin-left:auto;width:54%;max-width:300px;aspect-ratio:3/4;
  object-fit:cover;object-position:top center;border-radius:999px 999px 18px 18px;border:1px solid var(--line);
  box-shadow:0 24px 60px rgba(74,20,20,.22);background:var(--ivory);z-index:2}
.hero-figure-cap{margin:18px auto 0;text-align:center;max-width:44ch;
  font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.08rem;color:var(--gold-deep)}
.ve-disc{fill:#FAF6EC;stroke:var(--line);stroke-width:1}
.ve-line{fill:none;stroke:currentColor;stroke-width:1.2}
.ve-line-2{fill:none;stroke:currentColor;stroke-width:1.8}
.ve-accent{fill:var(--accent-gold)}
.ve-bright{fill:var(--accent-gold)}
.ve-lbl{fill:currentColor;font-family:"Mukta",sans-serif;font-size:12px;font-weight:600;letter-spacing:.06em}
.ve-el-lbl{fill:var(--gold-deep);font-family:"Mukta",sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.03em}
.ve-flow{stroke:var(--gold-bright);stroke-width:1.3;fill:none;stroke-linecap:round}
.ve-flow-dash{stroke:var(--gold-bright);stroke-width:1.2;fill:none;stroke-dasharray:2 4;stroke-linecap:round}
.ve-sun{fill:var(--gold)}
.ve-flow-lbl{fill:var(--gold-bright);font-family:"Mukta",sans-serif;font-size:8.5px;font-weight:700;letter-spacing:.12em}
@media(max-width:991.98px){
  .hero-figure{position:static;min-height:0;display:flex;flex-direction:column;align-items:center;gap:22px}
  .vedic-emblem{position:static;transform:none;width:74%;max-width:330px}
  .hero-photo{margin-left:0;width:66%;max-width:250px}
}

/* ---- feature strip ---- */
.strip{background:linear-gradient(90deg,#5c1a1a,#6E1E1E 50%,#5c1a1a);color:#F3ECDD}
.feat{display:flex;align-items:center;gap:12px;padding:22px 20px;
  border-left:1px solid rgba(245,240,230,.18)}
.feat:first-child{border-left:0}
.feat svg{width:30px;height:30px;flex:none;color:#E7C06A}
.feat span{font-size:14px;font-weight:500;line-height:1.3}

/* ---- divider glyph ---- */
.divider{display:flex;align-items:center;justify-content:center;gap:18px;
  padding:clamp(44px,6vw,76px) 0 0}
.divider .rule{height:1px;width:90px;background:linear-gradient(90deg,transparent,var(--accent-gold))}
.divider .rule.r{background:linear-gradient(90deg,var(--accent-gold),transparent)}
.divider svg{width:30px;height:30px;color:var(--accent-gold)}

/* ==========================================================================
   HOME — ABOUT
   ========================================================================== */
.about{padding:clamp(36px,4vw,60px) 0 clamp(52px,7vw,88px)}
.about-media{position:relative;max-width:420px;margin:0 auto}
.about-media .panel{position:absolute;inset:auto -18px -18px auto;width:74%;height:82%;
  background:var(--ivory-2);border-radius:18px;z-index:0}
.about-media img{position:relative;z-index:1;border-radius:18px;display:block;width:100%;height:auto;
  box-shadow:0 20px 46px rgba(74,20,20,.16);border:1px solid var(--line)}
.about .col-lg-7{position:relative}.about-emblem{position:absolute;z-index:-1;top:50%;right:-3%;transform:translateY(-50%);width:58%;max-width:420px;opacity:.25;color:var(--gold);pointer-events:none}
.about-emblem svg{width:100%;height:auto;display:block}
.about h2{font-size:clamp(2.1rem,4vw,3.1rem);margin-bottom:8px}
.who-sub{font-family:"Cormorant Garamond",serif;font-style:italic;
  font-size:1.5rem;color:var(--gold-deep);margin-bottom:22px}
.about p{max-width:60ch}
.signature{font-family:"Cormorant Garamond",serif;font-size:1.7rem;color:var(--ink);margin-top:26px}
.signature small{display:block;font-family:"Mukta",sans-serif;font-size:.8rem;
  font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:2px}

/* ==========================================================================
   HOME — WHY / SERVICE CARDS
   ========================================================================== */
.why{background:linear-gradient(180deg,var(--white),var(--ivory));padding:clamp(52px,7vw,92px) 0}
.svc-card{background:var(--white);border:1px solid var(--line);border-radius:16px;
  padding:32px 28px;height:100%;position:relative;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.svc-card:hover{transform:translateY(-4px);border-color:var(--gold-bright);
  box-shadow:0 18px 40px rgba(110,30,30,.12)}
.svc-card .ico{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;
  justify-content:center;background:linear-gradient(135deg,var(--ivory-2),#ECE3CE);margin-bottom:20px}
.svc-card .ico svg{width:28px;height:28px;color:var(--gold-deep)}
.svc-card h3{font-size:1.7rem;margin-bottom:10px}
.svc-card p{font-size:1rem;margin:0;color:var(--body)}
.svc-card.feature{border-color:var(--accent-gold);box-shadow:0 18px 44px rgba(110,30,30,.14)}
.svc-card.feature .ico{background:linear-gradient(135deg,var(--accent-gold),#8a6410)}
.svc-card.feature .ico svg{color:#fff}
.svc-card .tag{position:absolute;top:20px;right:22px;font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:#8a6410}

/* ==========================================================================
   SHARED — CLOSING CTA + FOOTER
   ========================================================================== */
.close-cta{background:linear-gradient(120deg,#5a1919,#6E1E1E);color:#f5ead2;text-align:center;
  padding:clamp(48px,7vw,80px) 0}
.close-cta h2{color:#fff;font-size:clamp(1.9rem,4vw,3rem);margin-bottom:14px}
.close-cta p{max-width:52ch;margin:0 auto 28px;color:#EBD9BE}
.close-cta .cta{font-size:16px;padding:15px 30px}

footer{background:#3F1212;color:#CBB794;font-size:14px;padding:26px 0}
footer .name{font-family:"Cormorant Garamond",serif;font-size:20px;color:#DDB55A}
footer .foot-copy{color:#CBB794}
.social{display:flex;gap:12px}
.social-link{width:40px;height:40px;border-radius:50%;border:1px solid rgba(221,181,90,.35);
  display:flex;align-items:center;justify-content:center;color:#DDB55A;
  transition:background .2s,color .2s,border-color .2s,transform .2s}
.social-link:hover{background:rgba(221,181,90,.14);color:#fff;border-color:#DDB55A;transform:translateY(-2px)}
.social-link svg{width:19px;height:19px}

/* ==========================================================================
   THREE FORCES PAGE
   ========================================================================== */
.subhero{position:relative;overflow:hidden;text-align:center;
  background:radial-gradient(120% 90% at 50% 0%,var(--ivory) 0%,var(--white) 62%);
  padding:clamp(48px,7vw,96px) 0 clamp(28px,4vw,48px)}
.subhero h1{font-size:clamp(2.6rem,6vw,4.6rem);letter-spacing:-.01em;margin-bottom:14px}
.subhero h1 .metal{background:linear-gradient(100deg,#8a2a2a,#6E1E1E 52%,#4A1414);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.subhero .sub{font-family:"Cormorant Garamond",serif;font-style:italic;
  font-size:clamp(1.2rem,2.4vw,1.7rem);color:var(--gold-deep);margin-bottom:22px}
.subhero .lede{max-width:60ch;margin:0 auto;font-size:1.08rem}

/* three-forces yantra diagram */
.tf-diagram{max-width:560px;margin:clamp(24px,4vw,44px) auto 0;color:var(--gold)}
.tf-diagram svg{width:100%;height:auto;display:block}
.tf-diagram .edge{stroke:var(--line);stroke-width:1.4;fill:none}
.tf-diagram .spoke{stroke:var(--gold-bright);stroke-width:1.2;stroke-dasharray:3 5;fill:none}
.tf-diagram .node{fill:#fff;stroke:var(--gold);stroke-width:1.6}
.tf-diagram .node-ico{stroke:var(--gold-deep);stroke-width:1.6;fill:none}
.tf-diagram .bindu{fill:url(#tfGold)}
.tf-diagram .lbl{font-family:"Cormorant Garamond",serif;font-weight:600;fill:var(--ink)}
.tf-diagram .lbl-sm{font-family:"Mukta",sans-serif;fill:var(--gold-deep);
  font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.tf-diagram .lbl-core{font-family:"Cormorant Garamond",serif;font-weight:600;fill:#fff}

/* the three force cards */
.forces{padding:clamp(48px,7vw,88px) 0}
.force{height:100%;background:var(--white);border:1px solid var(--line);border-radius:18px;
  padding:34px 30px;position:relative;overflow:hidden}
.force::before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;
  background:linear-gradient(180deg,var(--gold-bright),var(--gold-deep))}
.force .ico{width:60px;height:60px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--ivory-2),#ECE3CE);margin-bottom:22px}
.force .ico svg{width:30px;height:30px;color:var(--gold-deep)}
.force .role{font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:6px}
.force h3{font-size:1.9rem;margin-bottom:12px}
.force p{margin:0;color:var(--body)}
.force .meta{margin-top:20px;padding-top:16px;border-top:1px dashed var(--line);
  font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.15rem;color:var(--gold-deep)}

/* control section */
.control{background:linear-gradient(180deg,var(--white),var(--ivory));padding:clamp(52px,7vw,92px) 0}
.control-list{max-width:840px;margin:0 auto}
.control-row{padding:26px 0;border-bottom:1px solid var(--line)}
.control-row:last-child{border-bottom:0}
.control-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;flex-wrap:wrap}
.control-top h3{font-size:1.5rem}
.control-verdict{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#8a6410}
.control-track{height:12px;border-radius:20px;background:var(--ivory-2);overflow:hidden;border:1px solid var(--line)}
.control-fill{height:100%;border-radius:20px;background:linear-gradient(90deg,var(--gold-bright),var(--gold-deep))}
.control-note{margin:10px 0 0;font-size:1rem;color:var(--body)}

.pullquote{max-width:760px;margin:clamp(40px,6vw,64px) auto 0;text-align:center;
  font-family:"Cormorant Garamond",serif;font-size:clamp(1.6rem,3.4vw,2.4rem);
  line-height:1.3;color:var(--ink)}
.pullquote b{color:var(--gold-deep);font-weight:600}

/* metaphor / how they work together */
.together{padding:clamp(52px,7vw,92px) 0}
.mstep{height:100%;text-align:center;padding:16px 10px}
.mstep .ring{width:74px;height:74px;margin:0 auto 18px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1.5px solid var(--gold);background:var(--ivory)}
.mstep .ring svg{width:34px;height:34px;color:var(--gold-deep)}
.mstep .role{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.mstep h3{font-size:1.5rem;margin-bottom:8px}
.mstep p{font-size:.98rem;margin:0}
.marrow{display:flex;align-items:center;justify-content:center;color:var(--gold-bright)}
.marrow svg{width:26px;height:26px}
.together .closing{max-width:66ch;margin:clamp(32px,5vw,52px) auto 0;text-align:center;font-size:1.1rem}

/* the astrovasthu way */
.approach{background:var(--ivory);padding:clamp(52px,7vw,92px) 0}
.step-card{height:100%;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:30px 26px}
.step-card .num{font-family:"Cormorant Garamond",serif;font-size:2.4rem;color:var(--gold-bright);line-height:1;margin-bottom:10px}
.step-card h3{font-size:1.45rem;margin-bottom:10px}
.step-card p{margin:0;font-size:1rem}

/* ==========================================================================
   VASTU PAGE
   ========================================================================== */
/* two starting-point cards */
.paths{padding:clamp(48px,7vw,88px) 0}
.path-card{height:100%;background:var(--white);border:1px solid var(--line);border-radius:18px;
  padding:34px 32px;position:relative;overflow:hidden}
.path-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--gold-bright),var(--gold-deep))}
.path-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.path-head .ico{width:56px;height:56px;flex:none;border-radius:14px;display:flex;align-items:center;
  justify-content:center;background:linear-gradient(135deg,var(--ivory-2),#ECE3CE)}
.path-head .ico svg{width:28px;height:28px;color:var(--gold-deep)}
.path-head h3{font-size:1.7rem}
.path-lead{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.2rem;
  color:var(--gold-deep);margin-bottom:18px}
.path-points{list-style:none;padding:0;margin:0}
.path-points li{position:relative;padding-left:30px;margin-bottom:12px;color:var(--body)}
.path-points li:last-child{margin-bottom:0}
.path-points li::before{content:"";position:absolute;left:4px;top:.5em;width:10px;height:6px;
  border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}

/* core teaching + timeline */
.teaching{padding:clamp(48px,7vw,88px) 0}
.teaching .lead-copy{max-width:64ch;margin:0 auto;text-align:center}
.teaching .lead-copy p{font-size:1.08rem}
.vastu-timeline{margin:clamp(28px,4vw,46px) auto 0;overflow-x:auto}
.vastu-timeline svg{width:100%;min-width:560px;height:auto;display:block}
.tl-band-a{fill:#FAF5E8}.tl-band-b{fill:#F0E7CF}.tl-band-c{fill:#F7F1DE}
.tl-baseline{stroke:var(--line);stroke-width:1}
.tl-house{stroke:var(--gold);stroke-width:1.4;stroke-dasharray:2 6;fill:none}
.tl-house-ico{stroke:var(--gold-deep);stroke-width:1.5;fill:none}
.tl-curve{stroke:url(#tlGold);stroke-width:3;fill:none;stroke-linecap:round}
.tl-dot{fill:var(--gold-deep)}
.tl-review{stroke:var(--gold-deep);stroke-width:1.2;stroke-dasharray:3 4}
.tl-band-lbl{font-family:"Mukta",sans-serif;font-size:12px;font-weight:600;
  letter-spacing:.14em;fill:var(--gold);text-transform:uppercase}
.tl-stage{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:16px;fill:var(--ink)}
.tl-note{font-family:"Mukta",sans-serif;font-size:12px;fill:var(--gold-deep)}
.tl-axis-lbl{font-family:"Mukta",sans-serif;font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;fill:var(--body)}
.timeline-cap{max-width:60ch;margin:22px auto 0;text-align:center;
  font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.2rem;color:var(--gold-deep)}

/* reasons grid */
.reasons{background:linear-gradient(180deg,var(--white),var(--ivory));padding:clamp(48px,7vw,88px) 0}
.reason-item{height:100%;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:28px 26px}
.reason-item .ico{width:52px;height:52px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--ivory-2),#ECE3CE);margin-bottom:16px}
.reason-item .ico svg{width:26px;height:26px;color:var(--gold-deep)}
.reason-item h3{font-size:1.35rem;margin-bottom:8px}
.reason-item p{margin:0;font-size:.98rem}

/* vastu as a lifestyle */
.lifestyle{padding:clamp(52px,7vw,92px) 0}
.habit-list{max-width:780px;margin:0 auto;list-style:none;padding:0}
.habit{display:flex;gap:16px;align-items:flex-start;padding:18px 4px;border-bottom:1px solid var(--line)}
.habit:last-child{border-bottom:0}
.habit .tick{width:36px;height:36px;flex:none;border-radius:50%;border:1.5px solid var(--gold);
  display:flex;align-items:center;justify-content:center;background:var(--ivory)}
.habit .tick svg{width:18px;height:18px;color:var(--gold-deep)}
.habit p{margin:0;font-size:1.05rem;color:var(--body)}
.habit p b{color:var(--ink);font-weight:600}

/* ==========================================================================
   FAQ PAGE
   ========================================================================== */
.faq{padding:clamp(40px,6vw,72px) 0 clamp(52px,7vw,92px)}
.faq-section{max-width:840px;margin:0 auto}
.faq-section + .faq-section{margin-top:46px}
.faq-section > h2{font-size:clamp(1.6rem,3vw,2.3rem);margin-bottom:20px}
.faq .accordion{
  --bs-accordion-bg:transparent;--bs-accordion-color:var(--body);
  --bs-accordion-border-width:0;--bs-accordion-border-radius:14px;--bs-accordion-inner-border-radius:14px;
  --bs-accordion-btn-color:var(--ink);--bs-accordion-btn-bg:var(--white);
  --bs-accordion-active-color:var(--gold-deep);--bs-accordion-active-bg:var(--ivory);
  --bs-accordion-btn-focus-border-color:var(--gold-bright);
  --bs-accordion-btn-focus-box-shadow:0 0 0 .2rem rgba(110,30,30,.18);
  --bs-accordion-body-color:var(--body);
  --bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236E1E1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M4 6l4 4 4-4'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%234A1414' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M4 6l4 4 4-4'/%3e%3c/svg%3e");
}
.faq .accordion-item{margin-bottom:12px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--white)}
.faq .accordion-button{font-family:"Cormorant Garamond",serif;font-size:1.35rem;font-weight:600;color:var(--ink);padding:20px 22px}
.faq .accordion-button:not(.collapsed){background:var(--ivory);color:var(--gold-deep);box-shadow:none}
.faq .accordion-body{font-size:1.02rem;color:var(--body);padding:2px 22px 22px}
.faq .accordion-body a{color:var(--gold-deep);border-bottom:1px solid var(--gold-bright)}

/* ==========================================================================
   TRILAYA — HARMONY VISUAL
   ========================================================================== */
.harmony{padding:clamp(40px,6vw,72px) 0 0}
.harmony .lead-copy{max-width:62ch;margin:0 auto;text-align:center}
.harmony .lead-copy p{font-size:1.08rem}
.harmony-viz{max-width:520px;margin:clamp(24px,4vw,40px) auto 0}
.harmony-viz svg{width:100%;height:auto;display:block}
.hv-intent{fill:#6E1E1E;fill-opacity:.18;stroke:#6E1E1E;stroke-width:1.4}
.hv-astro{fill:#B8860B;fill-opacity:.22;stroke:#B8860B;stroke-width:1.4}
.hv-vastu{fill:#4A1414;fill-opacity:.18;stroke:#4A1414;stroke-width:1.4}
.hv-core-bg{fill:#4A1414}
.hv-core{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:15px;fill:#fff}
.hv-name{font-family:"Cormorant Garamond",serif;font-weight:600;font-size:21px;fill:var(--ink)}
.hv-role{font-family:"Mukta",sans-serif;font-size:10px;font-weight:600;letter-spacing:.14em;fill:var(--gold-deep)}

/* ==========================================================================
   WHY ASTROVASTHU — USP
   ========================================================================== */
.usp{background:linear-gradient(180deg,var(--ivory),var(--white));padding:clamp(52px,7vw,92px) 0}
.pillar{height:100%;padding:4px}
.pillar .ico{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--white),var(--ivory-2));border:1px solid var(--line);margin-bottom:18px}
.pillar .ico svg{width:28px;height:28px;color:var(--gold-deep)}
.pillar h3{font-size:1.45rem;margin-bottom:8px}
.pillar p{margin:0;font-size:1rem;color:var(--body)}

/* ==========================================================================
   ENTRANCE ANIMATION
   ========================================================================== */
.rise{opacity:0;transform:translateY(18px);animation:rise .8s cubic-bezier(.2,.7,.2,1) forwards}
.d1{animation-delay:.05s}.d2{animation-delay:.15s}.d3{animation-delay:.25s}.d4{animation-delay:.35s}
@keyframes rise{to{opacity:1;transform:none}}

/* ==========================================================================
   RESPONSIVE (Bootstrap breakpoints)
   ========================================================================== */
@media(max-width:991.98px){
  .feat{border-left:0}
  .hero-media{min-height:340px;margin-bottom:8px}
}
@media(max-width:767.98px){
  .marrow{transform:rotate(90deg);padding:6px 0}
}
@media(max-width:575.98px){
  body{font-size:16px}
  .brand .name{font-size:21px}
  .feat{justify-content:center;border-top:1px solid rgba(245,240,230,.18)}
  .strip .feat:first-child{border-top:0}
}
@media(prefers-reduced-motion:reduce){
  .rise{animation:none;opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* Sun sweep over the Vastu emblem (NE -> centre -> SW) */
.vedic-emblem{position:relative}
.sun-sweep{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:50%;z-index:2}
.sun-sweep .glow{position:absolute;width:62%;height:62%;left:74%;top:50%;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle at center,
     rgba(255,255,250,1) 0%,
     rgba(255,244,190,.96) 14%,
     rgba(255,214,120,.85) 32%,
     rgba(255,165,60,.62) 52%,
     rgba(255,120,20,.32) 72%,
     rgba(255,110,10,0) 88%);
  filter:blur(2px) brightness(1.15);animation:sunSweep 9s ease-in-out infinite;will-change:left,top,opacity}
@keyframes sunSweep{
  0%{left:74%;top:50%;opacity:0}
  10%{opacity:.85}
  50%{left:50%;top:50%;opacity:1}
  90%{opacity:.6}
  100%{left:26%;top:50%;opacity:0}}
@media (prefers-reduced-motion: reduce){.sun-sweep .glow{animation:none;opacity:.5;left:50%;top:50%}}
