/* Vrindagni, Healing Yagyas. Cream version. Colours come from the Vrindagni logo (cream ground, maroon wordmark, bronze subtitle, the flame); type follows the live healingyagyas.com theme. */
:root{--cream:#FAF1DA;--cream2:#FFFBF0;--paper:#F3E6CB;--text:#241A14;--muted:#6B5A4C;--maroon:#7A1A1A;--maroon2:#5E1212;--bronze:#7A5A38;--flame:#D9541E;--flame2:#F07A2A;--gold:#E2B65B;--line:rgba(122,26,26,.14);--gline:rgba(184,138,46,.38);--surface:#FFFCF4;--r-sm:5px;--r-md:10px;--r-lg:20px;--shadow-soft:0 14px 40px rgba(90,40,10,.12);--shadow-hover:0 20px 50px rgba(90,40,10,.18);--shadow-gold:0 0 48px rgba(226,182,91,.35);--grad:linear-gradient(135deg,#7A1A1A,#9A2A22);--font-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-head:"Cinzel Decorative",Georgia,serif;--font-cinzel:"Cinzel",Georgia,serif;--font-serif:"Cormorant Garamond",Georgia,serif}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{color-scheme:light;scroll-behavior:smooth}
body{background-color:var(--cream);background-image:radial-gradient(circle at 12% 0,rgba(240,122,42,.12),transparent 30%),radial-gradient(circle at 92% 12%,rgba(226,182,91,.22),transparent 26%);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.7;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:var(--maroon)}
h1,h2{font-family:var(--font-head);font-weight:700;text-transform:uppercase;line-height:1.12;text-wrap:balance;color:var(--maroon);letter-spacing:.01em}
h1{font-size:clamp(1.8rem,5vw,3.3rem)}
h2{font-size:clamp(1.35rem,3vw,2.1rem);margin-bottom:.9rem}
h1 span,h2 span{color:var(--flame)}
h3{font-family:var(--font-cinzel);font-weight:700;font-size:1.12rem;line-height:1.3;color:var(--text);margin-bottom:.5rem}
p{max-width:66ch}
.wrap{width:min(1180px,100% - 32px);margin-inline:auto}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;padding:12px 16px 0}
header.top .bar{max-width:1180px;margin:0 auto;padding:9px 14px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;background:rgba(250,241,218,.86);border:1px solid var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(90,40,10,.10)}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--maroon)}
.brand img{width:42px;height:42px;border-radius:50%;border:2px solid var(--maroon);background:var(--cream)}
.brand b{display:block;font-family:var(--font-cinzel);font-weight:700;font-size:1.05rem;line-height:1.1;letter-spacing:.02em;color:var(--maroon)}
.brand small{display:block;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze)}
nav.main{display:flex;gap:.5rem 1.1rem;flex-wrap:wrap;align-items:center}
nav.main a{text-decoration:none;color:var(--muted);font-weight:600;font-size:.88rem;letter-spacing:.02em}
nav.main a:hover,nav.main a[aria-current]{color:var(--maroon)}
nav.main a.btn{color:#fff;padding:0 16px;min-height:38px;font-size:.8rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:var(--r-sm);text-decoration:none;border:0;font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:.24s ease;background:var(--grad);color:#FFF6E6;box-shadow:0 12px 28px rgba(122,26,26,.22);text-align:center}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(122,26,26,.3)}
.btn.ghost{background:transparent;color:var(--maroon);border:1.5px solid rgba(122,26,26,.45);box-shadow:none}
.btn.wide{display:flex;width:100%}
.btn:focus-visible,a:focus-visible{outline:2px solid var(--flame);outline-offset:3px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:999px;background:rgba(226,182,91,.18);border:1px solid rgba(184,138,46,.55);color:var(--bronze);font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.lead{font-family:var(--font-serif);font-size:1.38rem;line-height:1.5;color:var(--text);margin:1rem 0 1.3rem}
.fine{font-size:.84rem;color:var(--muted)}
.muted{color:var(--muted)}
section{padding:3.2rem 0;position:relative}
section.tint{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hero{padding:2.6rem 0 2.2rem}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem 3rem;align-items:center}
.hero p.copy{max-width:610px;color:var(--text);font-size:1rem;line-height:1.85;margin-top:1.2rem}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:1.8rem}
.hero-visual{display:grid;gap:1rem}
.hero-photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-lg);border:1px solid var(--gline);box-shadow:var(--shadow-soft)}
.hero-note{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:16px 18px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--gline);box-shadow:var(--shadow-soft)}
.hero-note img{width:64px;height:64px;border-radius:50%;border:2px solid var(--maroon);background:var(--cream)}
.hero-note strong{display:block;color:var(--maroon);font-family:var(--font-cinzel);font-size:.8rem;line-height:1.4;text-transform:uppercase;letter-spacing:.04em}
.hero-note span{display:block;margin-top:5px;color:var(--muted);font-size:.82rem;line-height:1.5}
.chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:2.2rem}
.chip{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}
.chip .ico{flex:0 0 38px;width:38px;height:38px;border-radius:9px;background:rgba(240,122,42,.12);border:1px solid rgba(240,122,42,.3);display:grid;place-items:center;color:var(--flame)}
.chip b{display:block;font-family:var(--font-cinzel);font-size:.78rem;letter-spacing:.03em;color:var(--maroon)}
.chip span{font-size:.82rem;color:var(--muted);line-height:1.45;display:block}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.4rem;margin-top:1.4rem}
.card{border-radius:var(--r-lg);padding:1.6rem;display:flex;flex-direction:column;gap:.55rem;position:relative;overflow:hidden;border:1px solid var(--line);background:var(--surface);transition:.25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.card.feature{background:linear-gradient(180deg,#FFF8E6,#FFF3D6);border:1.5px solid var(--maroon);box-shadow:var(--shadow-gold)}
.kicker{color:var(--flame);font-size:.66rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}
.card h3{margin-top:.25rem;color:var(--maroon)}
.price{display:flex;align-items:baseline;gap:6px;margin:.1rem 0 .3rem}
.price strong{font-size:1.9rem;font-weight:700;color:var(--text)}
.price span{color:var(--muted);font-size:.78rem}
.save{color:var(--bronze);font-size:.86rem;font-weight:600;padding-bottom:.6rem;border-bottom:1px solid var(--gline)}
.card p{color:var(--muted);font-size:.9rem;line-height:1.6}
.card ul,.y ul{list-style:none;display:grid;gap:8px;margin:.4rem 0 1.2rem;color:var(--text);font-size:.86rem;line-height:1.5}
.card li,.y li{display:flex;gap:9px;align-items:flex-start}
.card li::before,.y li::before{content:"";flex:0 0 14px;width:14px;height:14px;margin-top:5px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23D9541E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M2.5 8.5l3.5 3.5 7.5-8'/%3E%3C/svg%3E") no-repeat center/contain}
.card .btn{margin-top:auto}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;margin-top:1.2rem;counter-reset:s}
.step{padding:1.4rem;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line)}
.step h3{display:flex;align-items:center;gap:10px;color:var(--maroon)}
.step h3::before{counter-increment:s;content:counter(s);display:inline-grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:var(--maroon);color:#FFF6E6;font-size:.85rem;font-family:var(--font-body)}
.step p{color:var(--muted);font-size:.9rem}
.band{position:relative;overflow:hidden;border-radius:var(--r-lg);min-height:340px;display:grid;align-items:end;padding:2rem;border:1px solid var(--gline);background:#1a0c08}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,12,8,.05),rgba(26,12,8,.9))}
.band blockquote{position:relative;z-index:1;font-family:var(--font-serif);font-size:clamp(1.3rem,2.6vw,1.9rem);line-height:1.35;color:var(--gold);max-width:34ch}
.band cite{display:block;margin-top:.6rem;font-style:normal;font-family:var(--font-cinzel);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#E9D9BE}
.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem;margin-top:1.2rem}
.person{border-radius:var(--r-md);overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.person img{aspect-ratio:1;width:100%;object-fit:cover;object-position:center top}
.person .txt{padding:1rem 1.1rem 1.2rem}
.person h3{font-size:1rem;margin:.3rem 0 .4rem;color:var(--maroon)}
.person p{font-size:.85rem;color:var(--muted);line-height:1.55}
.split{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;align-items:center}
.split img{border-radius:var(--r-lg);border:1px solid var(--gline);width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:var(--shadow-soft)}
.split img.square{aspect-ratio:1}
.quote{padding:1.6rem 1.7rem;border-radius:var(--r-md);background:var(--maroon);border:1px solid var(--maroon2)}
.quote p{font-family:var(--font-serif);font-size:1.3rem;line-height:1.35;color:#FFE9B8;max-width:none}
.quote cite{display:block;margin-top:.6rem;font-style:normal;font-family:var(--font-cinzel);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#E9C9A0}
.grid-yagyas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1.4rem}
.y{border-radius:var(--r-md);padding:1.2rem 1.25rem;display:flex;flex-direction:column;gap:.45rem;background:var(--surface);border:1px solid var(--line);transition:.22s}
.y:hover{border-color:rgba(122,26,26,.4);box-shadow:var(--shadow-soft)}
.y .when{font-family:var(--font-cinzel);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--flame)}
.y h3{font-size:1.05rem;color:var(--maroon)}
.y ul{margin:.2rem 0 .9rem}
.y .btn{margin-top:auto}
.y .fine{margin-top:.5rem}
.special{display:grid;grid-template-columns:.85fr 1.15fr;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--gline);background:var(--surface);margin-top:1.4rem;box-shadow:var(--shadow-soft)}
.special img{width:100%;height:100%;object-fit:cover;min-height:260px}
.special .txt{padding:2rem}
.special h2{font-size:clamp(1.5rem,3vw,2.3rem)}
.special .sub{font-family:var(--font-cinzel);color:var(--bronze);font-size:.85rem;letter-spacing:.06em;margin-bottom:.8rem}
.facts{display:flex;gap:1.8rem;flex-wrap:wrap;margin:1rem 0 1.3rem;font-size:.9rem}
.facts span{display:block;color:var(--muted);font-size:.72rem;letter-spacing:.04em}
.facts b{color:var(--maroon)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem;margin-top:1.2rem}
.gallery img{aspect-ratio:1;object-fit:cover;border-radius:var(--r-md);width:100%;border:1px solid var(--line)}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;margin-top:1.2rem}
.contact-grid .card p{margin:0;color:var(--text);font-size:1rem}
figure.wide img{border-radius:var(--r-lg);width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--gline)}
figcaption{font-size:.82rem;color:var(--muted);margin-top:.5rem}
footer{margin-top:2.5rem;padding:2.6rem 0 1.6rem;background:var(--maroon2);color:#EAD8BE;font-size:.88rem}
footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.6rem}
footer h4{font-family:var(--font-cinzel);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem}
footer a{color:#FFF1D6;text-decoration:none}
footer a:hover{color:var(--gold)}
footer p{max-width:none;line-height:1.8}
footer .brand b,footer .brand{color:#FFF1D6}
footer .brand small{color:var(--gold)}
footer .brand img{border-color:var(--gold)}
footer .legal{margin-top:1.8rem;padding-top:1rem;border-top:1px solid rgba(255,241,214,.18);display:flex;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap;font-size:.78rem}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr}.split,.special{grid-template-columns:1fr}.special img{max-height:300px}}
@media (max-width:640px){header.top{padding:8px 10px 0}nav.main a.btn{display:none}nav.main{gap:.4rem .9rem}.hero{padding-top:1.8rem}.band{min-height:280px;padding:1.4rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
