/* Vastu Peeth — main stylesheet. Colours and fonts come from theme.json presets. */
:root{
  --vp-sindoor:#B23319;--vp-sindoor-dark:#8E2814;--vp-saffron:#F28A4B;--vp-gold:#D9A441;--vp-gold-light:#E7B95A;
  --vp-ivory:#FFF8EE;--vp-parchment:#F8EAD3;--vp-sand:#FBE9CF;--vp-card:#FFFDF8;--vp-line:#EAD3AE;
  --vp-ink:#2A1712;--vp-muted:#6B4F45;--vp-peacock:#0F3D3E;--vp-peacock-2:#145052;--vp-peacock-soft:#C9DAD3;
  --vp-radius:22px;--vp-arch:200px 200px 22px 22px;--vp-shadow:0 14px 34px rgba(142,40,20,.10);
  --vp-lotus:url(../img/lotus.webp);--vp-lotus-ivory:url(../img/lotus-ivory.webp);
}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
.vp-main{margin:0}
body{overflow-x:clip}
.vp-main>.wp-block-post-content>*:first-child{margin-top:0}
:where(.vp-main .wp-block-post-content)>*{margin-block-start:0}
::selection{background:var(--vp-sand);color:var(--vp-ink)}
:focus-visible{outline:2px solid var(--vp-sindoor);outline-offset:3px}

/* ---------- Header ---------- */
.vp-topband{background:var(--vp-peacock);color:var(--vp-peacock-soft);font-size:14px;padding-block:7px!important}
.vp-topband p{margin:0}
.vp-topband-inner{gap:6px 24px}
.vp-topband em{color:var(--vp-gold-light);font-family:var(--wp--preset--font-family--heading);font-size:16px}
.vp-topband a{color:#FFF6EA;text-decoration:none}
.vp-site-header{position:sticky;top:0;z-index:50}
.vp-header-bar{background:rgba(255,248,238,.96);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--vp-line);padding-block:8px!important;transition:box-shadow .3s}
.vp-header-bar.is-scrolled{box-shadow:0 6px 24px rgba(42,23,18,.08)}
.vp-header-inner{gap:24px;align-items:center}
.vp-logo img{width:150px;height:auto;display:block}
.vp-nav{font-weight:500;font-size:16px;flex:1}
.vp-nav .wp-block-navigation-item__content{color:var(--vp-ink);text-decoration:none;padding:6px 2px;position:relative}
.vp-nav .wp-block-navigation-item__content::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--vp-sindoor);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.vp-nav .wp-block-navigation-item__content:hover::after,.vp-nav .current-menu-item>.wp-block-navigation-item__content::after{transform:scaleX(1)}
.vp-nav .wp-block-navigation__container{gap:26px}
.vp-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--vp-ivory);padding:28px}
.vp-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:22px;font-family:var(--wp--preset--font-family--heading);font-weight:600}
.vp-header-cta{flex-shrink:0}
.vp-header-cta .wp-block-button__link{padding:11px 22px;font-size:16px}
@media (max-width:600px){.vp-header-cta{display:none}.vp-logo img{width:120px}.vp-topband-mail{display:none}}

/* ---------- Sections & backgrounds ---------- */
.vp-section{padding-block:var(--wp--preset--spacing--70)!important}
.vp-section-tight{padding-block:56px!important}
.vp-bg-parchment{background:var(--vp-parchment)}
.vp-bg-sand{background:var(--vp-sand)}
.vp-bg-card{background:var(--vp-card)}
.vp-bg-dots{background-color:var(--vp-ivory);background-image:radial-gradient(circle,rgba(196,57,29,.10) 1.2px,transparent 1.7px);background-size:22px 22px}
.vp-bg-dots.vp-bg-parchment{background-color:var(--vp-parchment)}
.vp-dark,.vp-bg-peacock{background:var(--vp-peacock);color:#FFF6EA}
.vp-dark :where(h1,h2,h3,h4),.vp-bg-peacock :where(h1,h2,h3,h4){color:#FFF6EA}
.vp-dark p,.vp-bg-peacock p,.vp-dark li,.vp-bg-peacock li{color:var(--vp-peacock-soft)}
.vp-dark a:not(.wp-block-button__link),.vp-bg-peacock a:not(.wp-block-button__link){color:var(--vp-gold-light)}
.vp-dark :where(h1,h2,h3) em,.vp-bg-peacock :where(h1,h2,h3) em{color:var(--vp-gold-light)}
.vp-bg-sindoor{background:var(--vp-sindoor);color:#FFF6EA}
.vp-bg-sindoor :where(h1,h2,h3){color:#FFF6EA}.vp-bg-sindoor p{color:#FFE7D6}.vp-bg-sindoor :where(h1,h2,h3) em{color:#F9D58C}
.vp-scallop{position:relative}
.vp-scallop::before,.vp-scallop::after{content:"";position:absolute;left:0;right:0;height:12px;background-size:24px 12px;background-repeat:repeat-x;z-index:2;pointer-events:none}
.vp-scallop::before{top:-12px;background-image:radial-gradient(circle at 12px 12px,var(--vp-peacock) 11.5px,transparent 12px)}
.vp-scallop::after{bottom:-12px;background-image:radial-gradient(circle at 12px 0,var(--vp-peacock) 11.5px,transparent 12px)}
.vp-watermark{position:relative;overflow:hidden}
.vp-watermark::before{content:"";position:absolute;width:440px;height:340px;left:-90px;bottom:-60px;background:var(--vp-lotus) no-repeat center/contain;opacity:.06;pointer-events:none}
.vp-dark.vp-watermark::before,.vp-bg-sindoor.vp-watermark::before{background-image:var(--vp-lotus-ivory);opacity:.08;left:auto;right:-70px;top:-50px;bottom:auto}
.vp-watermark>*{position:relative}

/* ---------- Typography helpers ---------- */
:where(h1,h2,h3) em{color:var(--vp-sindoor);font-style:italic}
.vp-kicker{font-size:14px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--vp-sindoor);margin-bottom:6px!important}
.vp-dark .vp-kicker,.vp-bg-peacock .vp-kicker{color:var(--vp-gold-light)}
.vp-bg-sindoor .vp-kicker{color:#FFE9B8}
.vp-orn{padding-bottom:44px;position:relative}
.vp-orn::after{content:"";position:absolute;left:0;bottom:0;width:190px;height:30px;background:linear-gradient(var(--vp-gold),var(--vp-gold)) left 15px/62px 1px no-repeat,linear-gradient(var(--vp-gold),var(--vp-gold)) right 15px/62px 1px no-repeat,var(--vp-lotus) center/34px auto no-repeat}
.has-text-align-center.vp-orn::after,.vp-center .vp-orn::after{left:50%;transform:translateX(-50%)}
.vp-dark .vp-orn::after,.vp-bg-peacock .vp-orn::after,.vp-bg-sindoor .vp-orn::after{background:linear-gradient(var(--vp-gold-light),var(--vp-gold-light)) left 15px/62px 1px no-repeat,linear-gradient(var(--vp-gold-light),var(--vp-gold-light)) right 15px/62px 1px no-repeat,var(--vp-lotus-ivory) center/34px auto no-repeat}
.vp-lead{font-size:var(--wp--preset--font-size--large)!important;color:var(--vp-muted)}
.vp-dark .vp-lead,.vp-bg-peacock .vp-lead{color:var(--vp-peacock-soft)}
.vp-center{text-align:center}.vp-center>*{margin-inline:auto}
.vp-narrow{max-width:820px!important;margin-inline:auto!important}
.vp-small{font-size:14px!important;color:var(--vp-muted)}
.vp-dark .vp-small{color:var(--vp-peacock-soft)}
.vp-sanskrit{font-family:var(--wp--preset--font-family--heading);font-style:italic;color:var(--vp-sindoor);font-size:20px}
.vp-dark .vp-sanskrit{color:var(--vp-gold-light)}
.vp-quote-big{font-family:var(--wp--preset--font-family--heading);font-style:italic;font-size:clamp(26px,3.2vw,38px);line-height:1.3}

/* ---------- Buttons ---------- */
.wp-block-button__link{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.wp-block-button__link:hover{transform:translateY(-2px)}
.is-style-outline .wp-block-button__link{background:transparent!important;border:1.5px solid var(--vp-ink)!important;color:var(--vp-ink)!important}
.vp-dark .is-style-outline .wp-block-button__link,.vp-bg-sindoor .is-style-outline .wp-block-button__link,.vp-btn-light .wp-block-button__link{border-color:#FFF6EA!important;color:#FFF6EA!important}
.vp-btn-gold .wp-block-button__link{background:var(--vp-gold-light)!important;color:var(--vp-ink)!important}
.vp-btn-ivory .wp-block-button__link{background:#FFF6EA!important;color:var(--vp-sindoor-dark)!important}
.vp-btn-glow .wp-block-button__link{animation:vp-glow 3.2s ease-in-out infinite}
@keyframes vp-glow{0%,100%{box-shadow:0 0 0 0 rgba(196,57,29,.0)}50%{box-shadow:0 0 0 7px rgba(196,57,29,.12)}}

/* ---------- Cards ---------- */
.vp-card{background:var(--vp-card);border:1px solid var(--vp-line);border-radius:var(--vp-radius);padding:28px!important;box-shadow:inset 0 0 0 6px var(--vp-card),inset 0 0 0 7px #F1DFC0}
.vp-dark .vp-card{background:rgba(255,246,234,.04);border-color:rgba(231,185,90,.45);box-shadow:none}
.vp-arch{border-radius:var(--vp-arch)!important;text-align:center;padding:38px 24px 28px!important}
.vp-lift{transition:transform .3s ease,box-shadow .3s ease}
.vp-lift:hover{transform:translateY(-5px);box-shadow:var(--vp-shadow)}
a.vp-card-link,.vp-card-link a{text-decoration:none}
.vp-card :where(h3){font-size:26px;margin:6px 0}
.vp-card p{margin:6px 0}
.vp-icon{margin:0 auto 6px!important;width:66px;height:66px;border-radius:50%;background:var(--vp-sand);border:1px solid var(--vp-gold);display:grid!important;place-items:center}
.vp-icon img{width:32px!important;height:32px!important}
.vp-more{font-weight:600;font-size:15px}
.vp-more a{text-decoration:none}
.vp-more a::after{content:" →";transition:margin .2s}
.vp-more a:hover::after{margin-left:4px}

/* ---------- Arch image frames ---------- */
.vp-arch-frame{position:relative;max-width:440px;margin-inline:auto!important}
.vp-arch-frame img{border-radius:var(--vp-arch);aspect-ratio:4/5;object-fit:cover;width:100%;background:var(--vp-sand)}
.vp-arch-frame::before{content:"";position:absolute;inset:-14px;border:1px solid var(--vp-gold);border-radius:230px 230px 26px 26px;pointer-events:none}
.vp-arch-frame.is-contain img{object-fit:contain;padding:12%}
.vp-arch-frame figcaption{text-align:center;font-size:14px;color:var(--vp-muted)}

/* ---------- Hero ---------- */
.vp-hero{padding-block:clamp(48px,7vw,88px)!important}
.vp-hero h1{font-size:var(--wp--preset--font-size--huge);line-height:1.02;margin:6px 0 18px}
.vp-hero .wp-block-columns{align-items:center;gap:48px}
.vp-hero-trust{font-size:15px!important;color:var(--vp-muted)}
.vp-credential{display:inline-block;padding:6px 14px;border:1px solid rgba(196,57,29,.35);border-radius:999px;font-size:14px!important;font-weight:600;color:var(--vp-sindoor-dark)}

/* ---------- Direction wheel ---------- */
.vp-compass{position:relative;width:min(500px,100%);margin-inline:auto!important}
.vp-compass-data{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 18px;font-size:14px;padding-left:18px}
.vp-compass.is-ready .vp-compass-data{display:none}
.vp-wheel{position:relative;width:100%;aspect-ratio:1/1}
.vp-wheel-disc{position:absolute;inset:0;border-radius:50%;background:var(--vp-sand)}
.vp-wheel-beads{position:absolute;inset:1.5%;border-radius:50%;border:2px dotted var(--vp-gold)}
.vp-wheel-ring{position:absolute;inset:5%;border-radius:50%;border:1px solid rgba(217,164,65,.55)}
.vp-wheel-grid{position:absolute;inset:27%;border:1.5px solid var(--vp-gold);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}
.vp-wheel-grid span{border:.5px solid rgba(217,164,65,.6)}
.vp-wheel-spin{position:absolute;inset:0;animation:vp-spin 90s linear infinite}
.vp-wheel.is-paused .vp-wheel-spin,.vp-wheel.is-paused .vp-petal-label{animation-play-state:paused}
.vp-petal{position:absolute;width:12.5%;height:15.5%;border-radius:50% 50% 50% 50%/62% 62% 38% 38%;border:1px solid var(--vp-gold);background:#FFF1DC;color:var(--vp-ink);cursor:pointer;padding:0;transition:background-color .45s,color .45s,box-shadow .45s;font:600 12px var(--wp--preset--font-family--body)}
.vp-petal.is-on{background:var(--vp-sindoor);color:#FFF6EA;box-shadow:0 0 0 4px rgba(196,57,29,.18),0 0 22px rgba(242,138,75,.55)}
.vp-petal:hover{background:#FBD9A8}
.vp-petal.is-on:hover{background:var(--vp-sindoor)}
.vp-petal-label{display:inline-block;animation:vp-spin-rev 90s linear infinite}
.vp-wheel-center{position:absolute;inset:29.5%;border-radius:50%;background:var(--vp-ivory);border:1px solid var(--vp-gold);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4%;box-shadow:0 0 0 8px rgba(255,248,238,.6)}
.vp-wheel-code{font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:clamp(28px,5vw,40px);line-height:1;color:var(--vp-sindoor);transition:opacity .3s}
.vp-wheel-dir{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--vp-muted);margin-top:4px}
.vp-wheel-caption{margin-top:18px;padding:16px 20px;border-radius:18px;background:var(--vp-card);border:1px solid var(--vp-line);text-align:center;box-shadow:inset 0 0 0 4px var(--vp-card),inset 0 0 0 5px #F1DFC0;min-height:112px}
.vp-wheel-caption strong{display:block;font-family:var(--wp--preset--font-family--heading);font-size:26px;line-height:1.15}
.vp-wheel-caption span{color:var(--vp-muted);font-size:16px}
.vp-wheel-hint{display:block;font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--vp-muted);margin-bottom:4px}
@keyframes vp-spin{to{transform:rotate(360deg)}}
@keyframes vp-spin-rev{to{transform:rotate(-360deg)}}

/* ---------- Marquee ---------- */
.vp-marquee{background:var(--vp-sindoor);color:#FFF6EA;overflow:hidden;padding-block:14px!important;border-block:3px double var(--vp-gold-light)}
.vp-marquee-track{display:flex;gap:30px;width:max-content;animation:vp-marq 55s linear infinite}
.vp-marquee:hover .vp-marquee-track{animation-play-state:paused}
.vp-marquee p{margin:0!important;white-space:nowrap;font-family:var(--wp--preset--font-family--heading);font-style:italic;font-size:26px;color:#FFF6EA}
.vp-marquee p::after{content:"✦";margin-left:30px;font-style:normal;font-size:16px;color:var(--vp-gold-light);vertical-align:middle}
.vp-marquee:not(.is-ready) .vp-marquee-track{flex-wrap:wrap;width:auto;animation:none;justify-content:center}
@keyframes vp-marq{to{transform:translateX(-50%)}}

/* ---------- Self-check ---------- */
.vp-check-area{margin-bottom:20px}
.vp-check.is-ready .vp-check-area{display:none}
.vp-check-ui{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
.vp-check-left{flex:999 1 560px;min-width:0;background:var(--vp-card);border:1px solid var(--vp-line);border-radius:24px;padding:28px;box-shadow:inset 0 0 0 6px var(--vp-card),inset 0 0 0 7px #F1DFC0}
.vp-check-step{font-weight:700;margin:0 0 12px}
.vp-check-step b{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--vp-sindoor);color:#FFF6EA;font-size:14px;margin-right:8px}
.vp-check-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:22px}
.vp-chip-area{min-height:56px;border-radius:14px;border:1.5px solid var(--vp-line);background:var(--vp-ivory);color:var(--vp-ink);font:600 16px var(--wp--preset--font-family--body);cursor:pointer;transition:all .25s}
.vp-chip-area:hover{border-color:var(--vp-gold)}
.vp-chip-area[aria-pressed=true]{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}
.vp-sign{display:flex;gap:14px;align-items:center;width:100%;min-height:54px;margin-bottom:10px;padding:10px 16px;border-radius:14px;border:1.5px solid var(--vp-line);background:var(--vp-ivory);text-align:left;cursor:pointer;font:500 17px var(--wp--preset--font-family--body);color:var(--vp-ink);transition:all .25s}
.vp-sign:hover{border-color:var(--vp-gold)}
.vp-sign i{flex-shrink:0;width:24px;height:24px;border-radius:6px;border:1.5px solid var(--vp-sindoor);display:grid;place-items:center;font-style:normal;color:#FFF6EA;font-size:15px;transition:background-color .2s}
.vp-sign[aria-pressed=true]{border-color:var(--vp-sindoor);background:#FDF0E6}
.vp-sign[aria-pressed=true] i{background:var(--vp-sindoor)}
.vp-check-result{flex:1 1 320px;min-width:0;background:var(--vp-peacock);color:#FFF6EA;border-radius:160px 160px 24px 24px;padding:44px 30px 30px;display:flex;flex-direction:column;gap:12px;text-align:center}
.vp-check-result .vp-count{font-family:var(--wp--preset--font-family--heading);font-size:64px;line-height:1;color:var(--vp-gold-light)}
.vp-check-result .vp-count small{font-size:28px;color:var(--vp-peacock-soft)}
.vp-check-result h3{color:#FFF6EA;margin:0;font-size:30px}
.vp-check-result p{color:var(--vp-peacock-soft);margin:0}
.vp-check-zones{border:1px solid rgba(231,185,90,.45);border-radius:14px;padding:12px 16px;color:#FFF6EA}
.vp-check-zones span{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--vp-gold-light)}
.vp-check-result .wp-element-button,.vp-check-result .vp-btn{margin-top:auto;display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 22px;border-radius:999px;background:var(--vp-gold-light);color:var(--vp-ink);font-weight:700;text-decoration:none}
.vp-check-result .vp-pulse{animation:vp-pop .5s ease}
@keyframes vp-pop{0%{transform:scale(.92);opacity:.4}100%{transform:scale(1);opacity:1}}

/* ---------- Five elements ---------- */
.vp-elements .wp-block-image img{width:180px;height:180px;margin-inline:auto;display:block;transition:transform .4s}
.vp-elements .wp-block-column:hover .wp-block-image img{transform:scale(1.06) rotate(-3deg)}
.vp-elements h3{margin:10px 0 0!important}
.vp-elements .vp-sanskrit{margin:0!important}

/* ---------- Steps ---------- */
.vp-steps{counter-reset:vp-step}
.vp-step{text-align:center;counter-increment:vp-step;position:relative}
.vp-step::before{content:counter(vp-step);display:grid;place-items:center;width:76px;height:76px;margin:0 auto 12px;border-radius:50%;background:var(--vp-sindoor);color:#FFF6EA;font:600 34px var(--wp--preset--font-family--heading);box-shadow:0 0 0 6px var(--vp-ivory),0 0 0 7px var(--vp-gold)}
.vp-bg-parchment .vp-step::before{box-shadow:0 0 0 6px var(--vp-parchment),0 0 0 7px var(--vp-gold)}
.vp-step h3{font-size:25px;margin:6px 0}
.vp-steps-list .vp-step{text-align:left;display:flex;gap:20px;align-items:flex-start;background:var(--vp-card);border:1px solid var(--vp-line);border-radius:20px;padding:22px 24px!important}
.vp-steps-list .vp-step::before{flex-shrink:0;width:58px;height:58px;margin:0;font-size:26px}

/* ---------- Tabs ---------- */
.vp-tabs-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:26px}
.vp-tab-btn{min-height:48px;padding:0 22px;border-radius:999px;border:1.5px solid var(--vp-gold);background:var(--vp-card);color:var(--vp-ink);font:600 16px var(--wp--preset--font-family--body);cursor:pointer;transition:all .25s}
.vp-tab-btn[aria-selected=true]{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}
.vp-tabs.is-ready .vp-tab[hidden]{display:none!important}
.vp-tab{animation:vp-fade .5s ease}
@keyframes vp-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.vp-tab .wp-block-columns{align-items:center;gap:40px}

/* ---------- Testimonial slider ---------- */
.vp-slider{text-align:center}
.vp-slider .wp-block-quote{border:0;margin:0 auto;padding:0;max-width:880px}
.vp-slider .wp-block-quote p{font-family:var(--wp--preset--font-family--heading);font-style:italic;font-size:clamp(26px,3.3vw,40px);line-height:1.3;color:#FFF6EA}
.vp-slider .wp-block-quote cite{display:block;margin-top:16px;font-style:normal;font-size:17px;color:var(--vp-peacock-soft)}
.vp-slider.is-ready .wp-block-quote{display:none}
.vp-slider.is-ready .wp-block-quote.is-active{display:block;animation:vp-fade .6s ease}
.vp-slider-nav{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:24px}
.vp-slider-nav button{width:48px;height:48px;border-radius:50%;border:1px solid var(--vp-gold-light);background:transparent;color:var(--vp-gold-light);font-size:20px;cursor:pointer}
.vp-slider-dots{display:flex;gap:8px}
.vp-slider-dots span{width:8px;height:8px;border-radius:50%;background:rgba(231,185,90,.35);transition:all .3s}
.vp-slider-dots span.on{background:var(--vp-gold-light);width:22px;border-radius:6px}

/* ---------- Myth flip cards ---------- */
.vp-flip{cursor:pointer;min-height:230px;display:flex!important;flex-direction:column;justify-content:space-between;transition:background-color .45s,color .45s,transform .3s,box-shadow .3s;user-select:none}
.vp-flip:hover{transform:translateY(-4px);box-shadow:var(--vp-shadow)}
.vp-flip .vp-flip-tag{font-size:13px!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--vp-sindoor);margin:0!important}
.vp-flip .vp-myth{font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:24px;line-height:1.3;margin:12px 0!important}
.vp-flip .vp-fact{display:none;font-size:17px;margin:12px 0!important}
.vp-flip .vp-flip-hint{font-size:14px!important;font-weight:600;color:var(--vp-sindoor);margin:0!important}
.vp-flip.is-open{background:var(--vp-peacock)!important;border-color:var(--vp-peacock)!important;box-shadow:none}
.vp-flip.is-open .vp-myth{display:none}
.vp-flip.is-open .vp-fact{display:block;color:#FFF6EA;animation:vp-fade .45s ease}
.vp-flip.is-open .vp-flip-tag,.vp-flip.is-open .vp-flip-hint{color:var(--vp-gold-light)}
.vp-flip-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.vp-flip-controls button{min-height:46px;padding:0 20px;border-radius:999px;border:1.5px solid var(--vp-ink);background:transparent;font:600 16px var(--wp--preset--font-family--body);cursor:pointer}
.vp-flip-controls button:first-child{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}

/* ---------- Zone guide ---------- */
.vp-zone-card .vp-zone-code{font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:44px;line-height:1;color:var(--vp-sindoor);margin:0!important}
.vp-dark .vp-zone-card .vp-zone-code{color:var(--vp-gold-light)}
.vp-zone-card h3{font-size:24px!important}
.vp-zone-card ul{padding-left:18px;font-size:15px;margin:6px 0}
.vp-badge{display:inline-block;padding:3px 12px;border-radius:999px;background:var(--vp-sand);font-size:13px!important;font-weight:600;color:var(--vp-sindoor-dark);margin:0!important}
.vp-toc{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.vp-toc a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--vp-gold);background:var(--vp-card);color:var(--vp-ink);text-decoration:none;font-weight:600;transition:all .2s}
.vp-toc a:hover{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}
.vp-toc p{margin:0!important}
.vp-table-wrap{overflow-x:auto}
.vp-table table{border-collapse:collapse;width:100%;font-size:16px;background:var(--vp-card)}
.vp-table th{background:var(--vp-peacock);color:#FFF6EA;text-align:left;font-weight:600}
.vp-table td,.vp-table th{border:1px solid var(--vp-line)!important;padding:10px 14px}
.vp-table tr:nth-child(even) td{background:#FFF8EE}

/* ---------- Compass section ---------- */
.vp-compass-art img{width:min(340px,100%);margin-inline:auto;display:block;filter:drop-shadow(0 18px 30px rgba(122,74,16,.25))}

/* ---------- FAQ ---------- */
.wp-block-details{border-bottom:1px solid var(--vp-line);padding:18px 0}
.wp-block-details summary{cursor:pointer;font-weight:700;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"+";font-size:24px;line-height:1;color:var(--vp-sindoor);transition:transform .3s}
.wp-block-details[open] summary::after{transform:rotate(45deg)}
.wp-block-details p{color:var(--vp-muted);margin:10px 0 0}
.vp-dark .wp-block-details{border-color:rgba(231,185,90,.3)}

/* ---------- CTA band ---------- */
.vp-cta-band{border-radius:32px;padding:clamp(36px,5vw,60px)!important}
.vp-diya img{width:72px;animation:vp-float 4s ease-in-out infinite}
@keyframes vp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* ---------- Footer ---------- */
.vp-footer{background:var(--vp-peacock);color:var(--vp-peacock-soft);border-top:4px double var(--vp-gold-light);padding-block:60px 28px!important;font-size:15px;margin-top:0!important}
.vp-footer a{color:#FFF6EA;text-decoration:none}
.vp-footer a:hover{color:var(--vp-gold-light)}
.vp-footer-logo img{width:190px;height:auto}
.vp-footer-h{color:#FFF6EA!important;font-size:22px!important}
.vp-footer-list{list-style:none;padding:0;margin:0}
.vp-footer-list li{margin:6px 0}
.vp-footer-mail a{color:var(--vp-gold-light)!important;font-weight:600}
.vp-footer-legal{border-top:1px solid rgba(231,185,90,.3);margin-top:28px;padding-top:18px;font-size:13px}
.vp-footer-legal p{margin:4px 0}

/* ---------- Forms (rendered by vastupeeth-core) ---------- */
.vp-form{display:flex;flex-direction:column;gap:20px}
.vp-form fieldset{margin:0;padding:26px;border-radius:22px;background:var(--vp-card);border:1px solid var(--vp-line);box-shadow:inset 0 0 0 6px var(--vp-card),inset 0 0 0 7px #F1DFC0}
.vp-form legend{padding:0 8px;font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:26px}
.vp-form label{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
.vp-form .vp-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.vp-form input[type=text],.vp-form input[type=email],.vp-form input[type=tel],.vp-form input[type=date],.vp-form input[type=time],.vp-form select,.vp-form textarea{width:100%;min-height:48px;padding:10px 14px;border-radius:12px;border:1px solid #D9C3A0;background:var(--vp-ivory);color:var(--vp-ink);font:16px var(--wp--preset--font-family--body);box-sizing:border-box}
.vp-form textarea{min-height:110px;resize:vertical}
.vp-form input:focus,.vp-form select:focus,.vp-form textarea:focus{outline:2px solid var(--vp-gold);border-color:var(--vp-gold)}
.vp-form .vp-help{font-size:14px;color:var(--vp-muted);margin:0 0 8px}
.vp-chips{display:flex;flex-wrap:wrap;gap:10px}
.vp-chips label{margin:0;font-weight:500}
.vp-chips input{position:absolute;opacity:0;width:1px;height:1px}
.vp-chips span{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--vp-gold);background:var(--vp-ivory);cursor:pointer;transition:all .2s}
.vp-chips input:checked+span{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}
.vp-chips input:focus-visible+span{outline:2px solid var(--vp-sindoor);outline-offset:2px}
.vp-cards-radio{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.vp-cards-radio span{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:96px;padding:12px;border-radius:80px 80px 16px 16px;border:1.5px solid var(--vp-line);background:var(--vp-ivory);font-weight:700}
.vp-cards-radio img{width:28px;height:28px;margin-bottom:6px}
.vp-cards-radio input:checked+span{background:var(--vp-sindoor);border-color:var(--vp-sindoor);color:#FFF6EA}
.vp-cards-radio input:checked+span img{filter:brightness(0) invert(1)}
.vp-consent{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;color:var(--vp-muted)}
.vp-consent input{margin-top:4px;accent-color:var(--vp-sindoor)}
.vp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.vp-submit{align-self:flex-start;min-height:54px;padding:0 32px;border-radius:999px;border:0;background:var(--vp-sindoor);color:#FFF6EA;font:600 18px var(--wp--preset--font-family--body);cursor:pointer;transition:transform .2s,background-color .2s}
.vp-submit:hover{background:var(--vp-sindoor-dark);transform:translateY(-2px)}
.vp-notice{padding:16px 20px;border-radius:14px;font-weight:600}
.vp-notice.ok{background:#E3F1E7;color:#1E5631;border:1px solid #9CCBA9}
.vp-notice.err{background:#FBE4DE;color:#8E2814;border:1px solid #E8A08E}
.vp-aside{position:sticky;top:110px;background:var(--vp-peacock);color:#FFF6EA;border-radius:160px 160px 24px 24px;padding:44px 28px 30px!important;text-align:center}
.vp-aside p,.vp-aside li{color:var(--vp-peacock-soft)}
.vp-aside h3{color:#FFF6EA}
.vp-aside ol{text-align:left;padding-left:20px}

/* ---------- Text pages ---------- */
.vp-page-hero{background:var(--vp-parchment);background-image:radial-gradient(circle,rgba(196,57,29,.10) 1.2px,transparent 1.7px);background-size:22px 22px;padding-block:56px!important}
.vp-prose{padding-block:48px 80px!important;font-size:17px}
.vp-prose h2{font-size:30px;margin-top:44px}
.vp-prose p,.vp-prose li{color:#4A332B}

/* ---------- Scroll reveal (only when JS is on) ---------- */
.js .vp-reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}
.js .vp-reveal.is-in{opacity:1;transform:none}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js .vp-reveal{opacity:1;transform:none}
}

/* ---------- Steps list + Mandal illustration ---------- */
.vp-steps-list{display:flex;flex-direction:column;gap:14px}
.vp-steps-list .vp-step h3{margin-top:0}
.vp-mandal{position:relative;width:min(440px,100%);aspect-ratio:1/1;margin:34px auto}
.vp-mandal-grid{position:absolute;inset:0;background:var(--vp-card);border:2px solid var(--vp-sindoor);box-shadow:0 0 0 8px var(--vp-parchment),0 0 0 9px var(--vp-gold);background-image:linear-gradient(rgba(217,164,65,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(217,164,65,.55) 1px,transparent 1px);background-size:11.111% 11.111%}
.vp-mandal-centre{position:absolute;inset:33.333%;background:var(--vp-sand);border:1.5px solid var(--vp-sindoor);display:grid;place-items:center;font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:20px;color:var(--vp-sindoor-dark);animation:vp-breathe 5s ease-in-out infinite}
.vp-mandal-n{position:absolute;top:-34px;left:50%;transform:translateX(-50%);font-weight:700;color:var(--vp-sindoor-dark)}
@keyframes vp-breathe{0%,100%{box-shadow:0 0 0 0 rgba(242,138,75,0)}50%{box-shadow:0 0 0 10px rgba(242,138,75,.18)}}
.vp-icon.vp-icon-hero{width:min(260px,70vw);height:min(260px,70vw);margin:0 auto!important;box-shadow:0 0 0 12px var(--vp-parchment),0 0 0 13px var(--vp-gold);animation:vp-breathe 5s ease-in-out infinite}
.vp-icon.vp-icon-hero img{width:46%!important;height:46%!important}
.vp-bg-sindoor .vp-form fieldset{background:#FFF8EE}
.vp-bg-sindoor .vp-form legend{color:var(--vp-ink)}
.vp-bg-sindoor .vp-notice{margin-bottom:12px}
.vp-cta-band ul li{color:#FFE7D6}
@media (max-width:781px){.vp-hero .wp-block-columns{gap:28px}.vp-aside{position:static}}

/* contrast fixes */
.vp-aside a{color:var(--wp--preset--color--gold-light,#E7B95A)!important}
.vp-aside a:hover{color:#FFF6EA!important}
.vp-form label+select,.vp-form div>label[for=vp-topic]{margin-top:4px}
.vp-form [for=vp-topic],.vp-form [for=vp-cmsg],.vp-form [for=vp-q]{display:block;margin-top:14px}
/* tables: always dark text on light cells, whatever section they sit in */
.vp-table table{background:#FFFDF8;color:#2A1712}
.vp-table td{background:#FFFDF8;color:#2A1712!important}
.vp-table tr:nth-child(even) td{background:#FBEFD9}
.vp-table td a{color:#8E2814}
.vp-table th{background:#0F3D3E;color:#FFF6EA!important}
.vp-dark .vp-table,.vp-dark .vp-table figcaption{color:#2A1712}
.vp-dark .vp-table td,.vp-dark .vp-table td *{color:#2A1712!important}
.vp-table td strong{color:#2A1712}
/* forms stay dark-on-light even inside dark sections */
.vp-form{color:#2A1712}
.vp-form label,.vp-form legend,.vp-dark .vp-form label,.vp-dark .vp-form legend,.vp-bg-sindoor .vp-form label{color:#2A1712!important}
.vp-form .vp-help,.vp-form .vp-consent,.vp-dark .vp-form p,.vp-dark .vp-form .vp-consent{color:#5E4339!important}
.vp-form .vp-consent a,.vp-dark .vp-form a{color:#8E2814!important}
.vp-bg-sindoor p,.vp-bg-sindoor li,.vp-cta-band ul li{color:#FFF1E4}
.vp-form fieldset>div:not(.vp-row)+div,.vp-form fieldset>.vp-row+div,.vp-form fieldset>div+.vp-consent{margin-top:14px}
.vp-form textarea[rows="2"]{min-height:72px}
.vp-form input:not([type=checkbox]):not([type=radio]),.vp-form select{min-height:50px;box-sizing:border-box}
/* card grids share the full width (no empty columns on the right) */
.wp-block-group.vp-autofit.is-layout-grid{grid-template-columns:repeat(auto-fit,minmax(min(var(--vp-min,14rem),100%),1fr))!important}
/* lotus watermark: keep it away from text (bottom-right corner, hidden on small screens) */
.vp-watermark::before{left:auto;right:-110px;bottom:-90px;width:380px;height:300px;opacity:.05}
@media (max-width:781px){.vp-watermark::before{display:none}}
.vp-wheel{contain:paint}html{overflow-x:clip}
/* form headings sit inside the card, not on its border line */
.vp-form fieldset>legend{float:left;width:100%;padding:0;margin:0 0 14px;line-height:1.2}
.vp-form fieldset>legend+*{clear:both}
/* method steps: number on the left, title above the text */
.vp-steps-list .vp-step{display:grid!important;grid-template-columns:58px 1fr;column-gap:20px;row-gap:4px;align-items:start}
.vp-steps-list .vp-step::before{grid-row:1/span 2;grid-column:1}
.vp-steps-list .vp-step>*{grid-column:2;margin:0!important}
.vp-steps-list .vp-step h3{font-size:22px}
/* space choice cards: all five fit on one row on desktop */
.vp-cards-radio{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}
/* myth cards: rows stay centred, a last odd card sits in the middle */
.wp-block-group.vp-flips.vp-autofit{display:flex!important;flex-wrap:wrap;justify-content:center;gap:24px}
.wp-block-group.vp-flips>*{flex:0 1 calc((100% - 72px)/4);margin:0!important}
@media (max-width:1100px){.wp-block-group.vp-flips>*{flex-basis:calc((100% - 48px)/3)}}
@media (max-width:781px){.wp-block-group.vp-flips>*{flex-basis:calc((100% - 24px)/2)}}
@media (max-width:520px){.wp-block-group.vp-flips>*{flex-basis:100%}}
/* submit button on the red band: light button so it stays visible */
.vp-bg-sindoor .vp-submit{background:#FFF6EA;color:#8E2814}
.vp-bg-sindoor .vp-submit:hover{background:#FFFFFF;color:#8E2814}
.vp-bg-peacock .vp-submit,.vp-dark .vp-submit{background:#E7B95A;color:#2A1712}
/* small phones: keep the logo readable, shrink the header button instead */
.vp-site-header .custom-logo-link{flex-shrink:0;display:block}
.vp-site-header .custom-logo{min-width:104px;height:auto}
@media (max-width:400px){.vp-site-header .wp-block-button__link{padding:10px 14px!important;font-size:14px!important;white-space:nowrap}.vp-site-header .custom-logo{width:104px!important}}
.vp-consent input{width:20px;height:20px;flex:none}
@media (max-width:400px){
 .vp-header-bar{padding-left:12px!important;padding-right:12px!important}
 .vp-header-inner{gap:8px!important}
 .vp-site-header .custom-logo,.vp-header-inner .custom-logo{width:92px!important;min-width:92px}
 .vp-header-cta .wp-block-button__link{padding:9px 12px!important;font-size:13px!important}
}
/* five elements: 3 + 2 on tablets, 2 per row on phones instead of one long column */
@media (max-width:781px){
 .wp-block-columns.vp-elements{display:flex!important;flex-wrap:wrap!important;justify-content:center;gap:28px 16px}
 .wp-block-columns.vp-elements>.wp-block-column{flex:0 1 calc((100% - 32px)/3)!important}
 .vp-elements .wp-block-image img{width:132px;height:132px}
}
@media (max-width:520px){
 .wp-block-columns.vp-elements>.wp-block-column{flex-basis:calc((100% - 16px)/2)!important}
 .vp-elements .wp-block-image img{width:110px;height:110px}
}
.vp-aside .vp-aside-title{color:#FFF6EA;font-size:30px;margin:8px 0 6px}
/* speed: let the browser skip rendering work for sections far below the screen */
.vp-main>.wp-block-post-content>.vp-section:nth-child(n+4){content-visibility:auto;contain-intrinsic-size:auto 900px}
.vp-diya img,.vp-compass-art img{height:auto}
