/* ============ Divya Shakti Poojas — shared stylesheet ============ */
:root{
  --maroon:#7a1f2b;
  --maroon-dark:#5a1420;
  --gold:#c9a227;
  --gold-light:#e8c96a;
  --saffron:#e07a1f;
  --cream:#fdf6ea;
  --cream-2:#faefd9;
  --ink:#3a1f14;
  --green:#1e7a4a;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:'Georgia','Palatino Linotype',serif;
  background:var(--cream);
  color:var(--ink);
  line-height:1.65;
}
a{color:inherit;}
img{max-width:100%;}
.container{max-width:1080px;margin:0 auto;padding:0 24px;}

/* Topbar */
.topbar{background:var(--maroon-dark);color:#f0dbb8;font-size:.8rem;padding:7px 0;}
.topbar .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.topbar-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center;}
.topbar-links a{color:var(--gold-light);text-decoration:none;font-weight:700;}

/* Header / Nav */
header.site-header{
  background:linear-gradient(120deg,var(--maroon) 0%,var(--maroon-dark) 100%);
  color:var(--cream);
  padding:16px 0;
  position:sticky;top:0;z-index:50;
  box-shadow:0 2px 12px rgba(0,0,0,.25);
}
.nav-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.brand h1{font-family:'Yatra One',cursive;font-size:1.5rem;letter-spacing:.5px;color:var(--gold-light);font-weight:400;text-shadow:0 0 12px rgba(232,201,106,.5);}
.brand span{display:block;font-size:.72rem;color:var(--cream);opacity:.85;font-style:italic;}
.om-icon{width:36px;height:36px;flex:0 0 36px;}
nav.links{display:flex;gap:20px;flex-wrap:wrap;font-size:.92rem;align-items:center;}
nav.links a{text-decoration:none;color:var(--cream);padding:6px 4px;border-bottom:2px solid transparent;transition:.2s;}
nav.links a:hover,nav.links a.active{border-color:var(--gold);color:var(--gold-light);}
nav.links a.btn-gold{border:none;}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;}
.nav-toggle span{width:24px;height:2px;background:var(--gold-light);display:block;}
@media(max-width:820px){
  nav.links{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:4px;background:var(--maroon-dark);padding:14px;border-radius:10px;margin-top:10px;}
  nav.links.mobile-open{display:flex;}
  .nav-toggle{display:flex;}
}

/* Buttons */
.btn{display:inline-block;padding:13px 30px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.95rem;letter-spacing:.3px;transition:.2s;border:2px solid transparent;cursor:pointer;font-family:inherit;}
.btn-gold{background:var(--gold);color:var(--maroon-dark);}
.btn-gold:hover{background:var(--gold-light);}
.btn-outline{border-color:var(--gold-light);color:var(--gold-light);background:transparent;}
.btn-outline:hover{background:rgba(232,201,106,.12);}
.btn-sm{padding:8px 18px;font-size:.82rem;}
.btn-green{background:var(--green);color:#fff;}
.btn-green:hover{background:#26925b;}

section{padding:60px 0;}
.section-title{text-align:center;margin-bottom:12px;}
.section-title h3,.section-title h2{font-family:'Cinzel',serif;font-size:1.85rem;color:var(--maroon);font-weight:700;letter-spacing:.5px;}
.section-title p{color:#8a6a4c;font-size:1rem;max-width:640px;margin:10px auto 0;}
.gold-rule{width:60px;height:3px;background:var(--gold);margin:14px auto 40px;border-radius:2px;}
.eyebrow{display:inline-block;background:rgba(255,255,255,.15);color:var(--gold-light);padding:5px 16px;border-radius:20px;font-size:.78rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;margin-bottom:14px;}

/* Page hero (inner pages) */
.pagehero{background:radial-gradient(circle at 20% 20%,#8a2632,var(--maroon-dark) 70%);color:var(--cream);padding:56px 0;position:relative;overflow:hidden;}
.pagehero .breadcrumb{font-size:.82rem;color:#e8c9a0;margin-bottom:12px;}
.pagehero .breadcrumb a{color:var(--gold-light);text-decoration:none;}
.pagehero h1{font-family:'Yatra One',cursive;font-size:2.3rem;color:var(--gold-light);font-weight:400;text-shadow:0 0 16px rgba(232,201,106,.5);margin-bottom:10px;}
.pagehero .lede{max-width:640px;color:#f4e6cf;font-size:1.05rem;}

/* Hero (home) */
.hero{background:radial-gradient(circle at 20% 20%,#8a2632,var(--maroon-dark) 70%);color:var(--cream);text-align:center;padding:70px 20px 90px;position:relative;overflow:hidden;}
.hero .mandala{position:absolute;opacity:.08;top:-60px;right:-60px;width:340px;height:340px;}
.hero .mandala.left{left:-80px;right:auto;top:auto;bottom:-90px;}
.hero h2{font-family:'Yatra One',cursive;font-size:2.6rem;color:var(--gold-light);margin-bottom:14px;font-weight:400;text-shadow:0 0 20px rgba(232,201,106,.55),0 2px 4px rgba(0,0,0,.4);}
.hero p.tagline{font-size:1.15rem;max-width:640px;margin:0 auto 26px;color:#f4e6cf;}
.hero .divider{width:70px;height:3px;background:var(--gold);margin:22px auto;border-radius:2px;}
.cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:20px;}

/* Deity image wraps with graceful fallback */
.img-wrap{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,var(--gold-light),var(--saffron));display:flex;align-items:center;justify-content:center;}
.img-wrap img{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:2;}
.img-wrap .fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1;}
.img-wrap .fallback svg{width:40%;height:40%;}
.pooja-image{height:340px;margin-bottom:20px;box-shadow:0 8px 24px rgba(122,31,43,.2);padding:18px;box-sizing:border-box;}
.pooja-image img{object-fit:contain;}
.pooja-image .caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.6),transparent);color:#fff;font-size:.78rem;padding:10px 16px;z-index:3;}
.shakti-img{height:210px;border-radius:12px;margin-bottom:12px;padding:12px;box-sizing:border-box;}
.shakti-img img{object-fit:contain;}
.hero-roundels{display:flex;gap:22px;justify-content:center;margin:28px 0 6px;flex-wrap:wrap;position:relative;z-index:2;}
.hero-roundel{width:88px;height:88px;border-radius:50%;border:3px solid var(--gold-light);box-shadow:0 4px 14px rgba(0,0,0,.3);padding:5px;box-sizing:border-box;}
.hero-roundel img{object-fit:contain;border-radius:50%;}
.hero-roundel .fallback svg{width:50%;height:50%;}

/* About */
.about-wrap{display:flex;gap:40px;align-items:center;flex-wrap:wrap;}
.about-photo{flex:0 0 220px;height:220px;border-radius:50%;background:linear-gradient(145deg,var(--gold-light),var(--saffron));display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(122,31,43,.25);border:5px solid var(--cream);overflow:hidden;}
.about-photo svg{width:110px;height:110px;}
.about-text{flex:1;min-width:280px;}
.about-text h2,.about-text h4{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.4rem;margin-bottom:8px;font-weight:700;}
.about-text .role{color:var(--saffron);font-weight:700;font-size:.95rem;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase;}

.copriest-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px;margin-top:42px;}
.copriest-card{background:var(--cream-2);border:1px solid #ecd9b0;border-radius:14px;padding:24px;text-align:center;}
.copriest-card .avatar{width:64px;height:64px;border-radius:50%;background:var(--maroon);margin:0 auto 14px;display:flex;align-items:center;justify-content:center;}
.copriest-card .avatar svg{width:32px;height:32px;}
.copriest-card h5{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.05rem;margin-bottom:4px;font-weight:700;}
.copriest-card .placeholder{color:#a97e3f;font-size:.82rem;font-style:italic;}
.copriest-card p{font-size:.88rem;color:#6b4a30;margin-top:6px;}

/* Foundation card */
.foundation-card{background:linear-gradient(135deg,#fff7e6,#ffe9c2);border:2px solid var(--gold);border-radius:20px;padding:36px;margin-top:30px;display:flex;gap:28px;flex-wrap:wrap;align-items:center;}
.foundation-card .fmark{flex:0 0 90px;width:90px;height:90px;border-radius:50%;background:var(--maroon);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(122,31,43,.3);}
.foundation-card .fmark svg{width:48px;height:48px;}
.foundation-card h3{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.35rem;margin-bottom:8px;}
.foundation-card p{color:#5a3d26;font-size:.95rem;}
.foundation-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:22px;}
.foundation-facts div{background:#fff;border-radius:10px;padding:14px 16px;font-size:.85rem;color:#5a3d26;border:1px solid #ecd9b0;}
.foundation-facts b{color:var(--maroon);display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px;}

/* Pooja sections */
.pooja-block{background:var(--cream-2);border-radius:20px;padding:40px;margin-bottom:36px;border:1px solid #ecd9b0;position:relative;overflow:hidden;}
.pooja-block .num{position:absolute;top:-18px;right:10px;font-size:7rem;color:rgba(122,31,43,.06);font-weight:900;line-height:1;}

.satya-block{
  background:linear-gradient(135deg,#ff9a3c 0%,#ff5e3a 35%,#e8351f 60%,#ffb703 100%);
  border:3px solid var(--gold-light);
  box-shadow:0 12px 34px rgba(190,60,20,.35), inset 0 0 0 6px rgba(255,255,255,.08);
}
.satya-block::before{content:"";position:absolute;inset:10px;border:1.5px dashed rgba(255,255,255,.55);border-radius:14px;pointer-events:none;}
.satya-block .num{color:rgba(255,255,255,.14);}
.satya-block .pooja-head h4{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35);}
.satya-block .pooja-meta{color:#fff4d6;font-weight:700;}
.satya-block .pooja-desc,.satya-block .subhead,.satya-block .materials-grid div,.satya-block .lang-note{color:#fff !important;}
.satya-block .subhead{border-bottom-color:rgba(255,255,255,.6);}
.satya-block .materials-grid div::before{color:#fff2c2;}
.satya-block .katha-card{background:rgba(255,255,255,.94);}
.satya-block .pooja-icon{background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.25);}
.satya-block .fee-tag{background:#fff;color:#c9410c;}

.pooja-head{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap;}
.pooja-icon{width:56px;height:56px;flex:0 0 56px;background:var(--maroon);border-radius:14px;display:flex;align-items:center;justify-content:center;}
.pooja-icon svg{width:30px;height:30px;}
.pooja-head h4{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.55rem;font-weight:700;letter-spacing:.3px;}
.pooja-meta{font-size:.85rem;color:var(--saffron);font-weight:700;}
.pooja-desc{margin:16px 0;color:#5a3d26;}
.fee-tag{display:inline-block;background:var(--maroon);color:var(--gold-light);padding:6px 16px;border-radius:20px;font-weight:700;font-size:.85rem;margin-top:8px;}
.subhead{color:var(--maroon);font-size:1.05rem;margin:22px 0 10px;font-weight:700;border-bottom:2px solid var(--gold-light);padding-bottom:6px;display:inline-block;}
.materials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 18px;margin-top:8px;}
.materials-grid div{font-size:.9rem;color:#5a3d26;padding-left:18px;position:relative;}
.materials-grid div::before{content:"❖";position:absolute;left:0;color:var(--saffron);font-size:.75rem;top:3px;}
.katha-list{display:grid;gap:14px;margin-top:10px;}
.katha-card{background:#fff;border-left:4px solid var(--gold);padding:14px 18px;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.05);}
.katha-card b{color:var(--maroon);}
.katha-card p{font-size:.9rem;color:#5a3d26;margin-top:4px;}
.lang-note{margin-top:16px;font-size:.88rem;color:#8a6a4c;font-style:italic;}
.shakti-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:10px;}
.shakti-card{background:#fff;border-radius:12px;padding:18px;border:1px solid #ecd9b0;}
.shakti-card h6{font-family:'Cinzel',serif;color:var(--maroon);margin-bottom:6px;font-size:1.05rem;font-weight:700;}
.shakti-card p{font-size:.88rem;color:#5a3d26;}
.caution-note{margin-top:20px;background:#fff7e6;border:1px dashed var(--gold);border-radius:10px;padding:14px 18px;font-size:.85rem;color:#7a5a2a;}
.book-btn-row{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;}

/* Quick pooja cards (home) */
.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:10px;}
.quick-card{background:var(--cream-2);border:1px solid #ecd9b0;border-radius:16px;padding:26px;text-align:center;transition:.2s;}
.quick-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(122,31,43,.15);}
.quick-card .qimg{height:150px;border-radius:12px;margin-bottom:14px;padding:10px;box-sizing:border-box;}
.quick-card .qimg img{object-fit:contain;}
.quick-card h4{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.1rem;margin-bottom:8px;}
.quick-card p{font-size:.87rem;color:#5a3d26;margin-bottom:12px;}

/* Forms */
.form-card{background:var(--cream-2);border-radius:20px;padding:44px;border:1px solid #ecd9b0;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.form-grid .full{grid-column:1/-1;}
label{display:block;font-size:.85rem;color:var(--maroon);font-weight:700;margin-bottom:6px;}
input,select,textarea{width:100%;padding:11px 14px;border-radius:8px;border:1px solid #d9c48f;background:#fff;font-family:inherit;font-size:.95rem;color:var(--ink);}
textarea{resize:vertical;min-height:80px;}
@media(max-width:640px){.form-grid{grid-template-columns:1fr;}}
.submit-row{margin-top:26px;text-align:center;}

/* Payment */
.payment-wrap{display:flex;gap:30px;flex-wrap:wrap;align-items:stretch;}
.fee-table{flex:1;min-width:280px;background:#fff;border-radius:16px;padding:26px;border:1px solid #ecd9b0;}
.fee-table table{width:100%;border-collapse:collapse;}
.fee-table td{padding:12px 6px;border-bottom:1px solid #f0e2c0;font-size:.92rem;}
.fee-table td:last-child{text-align:right;font-weight:700;color:var(--maroon);}
.pay-box{flex:1;min-width:260px;background:linear-gradient(135deg,var(--maroon),var(--maroon-dark));color:var(--cream);border-radius:16px;padding:30px;text-align:center;display:flex;flex-direction:column;justify-content:center;}
.pay-box h5{color:var(--gold-light);margin-bottom:10px;font-size:1.15rem;font-family:'Cinzel',serif;}
.pay-box p{font-size:.85rem;opacity:.9;margin-bottom:18px;}
.dakshina-note{background:#fff7e6;border:1px dashed var(--gold);border-radius:10px;padding:16px 20px;font-size:.86rem;color:#7a5a2a;margin-top:20px;}

/* Contact page specifics */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}
@media(max-width:800px){.contact-grid{grid-template-columns:1fr;}}
.contact-info-card{background:#fff;border:1px solid #ecd9b0;border-radius:16px;padding:26px;margin-bottom:18px;display:flex;gap:16px;align-items:flex-start;}
.contact-info-card .ic{flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--maroon);display:flex;align-items:center;justify-content:center;color:var(--gold-light);font-size:1.2rem;}
.contact-info-card h5{font-family:'Cinzel',serif;color:var(--maroon);margin-bottom:4px;}
.contact-info-card p,.contact-info-card a{font-size:.9rem;color:#5a3d26;text-decoration:none;}
.whatsapp-cta{background:linear-gradient(135deg,#25D366,#128C7E);border-radius:16px;padding:28px;text-align:center;color:#fff;}
.whatsapp-cta h5{font-family:'Cinzel',serif;font-size:1.2rem;margin-bottom:8px;}
.whatsapp-cta p{font-size:.9rem;opacity:.95;margin-bottom:16px;}
.whatsapp-cta .btn{background:#fff;color:#128C7E;}
.wa-float{position:fixed;bottom:24px;right:24px;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.7rem;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.3);z-index:80;animation:wa-pulse 2.4s infinite;}
@keyframes wa-pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5);}70%{box-shadow:0 0 0 14px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}

/* Modal popup */
.modal-overlay{position:fixed;inset:0;background:rgba(58,31,20,.65);display:none;align-items:center;justify-content:center;z-index:100;padding:20px;}
.modal-overlay.active{display:flex;}
.modal-box{background:var(--cream);border-radius:20px;max-width:420px;width:100%;padding:36px;text-align:center;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.4);border:3px solid var(--gold);}
.modal-box .micon{width:70px;height:70px;border-radius:50%;background:linear-gradient(145deg,var(--gold-light),var(--saffron));margin:0 auto 18px;display:flex;align-items:center;justify-content:center;font-size:2rem;}
.modal-box h4{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.3rem;margin-bottom:10px;}
.modal-box p{font-size:.92rem;color:#5a3d26;margin-bottom:22px;}
.modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.modal-close{position:absolute;top:14px;right:18px;background:none;border:none;font-size:1.3rem;color:var(--maroon);cursor:pointer;}

/* Footer */
footer.site-footer{background:var(--maroon-dark);color:#f0dbb8;padding-top:50px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.12);}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;}}
.footer-brand h4{font-family:'Yatra One',cursive;color:var(--gold-light);font-size:1.3rem;margin-bottom:10px;font-weight:400;}
.footer-brand p{font-size:.85rem;line-height:1.6;color:#e0c9a6;}
.footer-col h4{font-family:'Cinzel',serif;color:var(--gold-light);font-size:.95rem;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:9px;}
.footer-col a{color:#e0c9a6;text-decoration:none;font-size:.87rem;}
.footer-col a:hover{color:var(--gold-light);}
.social-row{display:flex;gap:10px;margin-top:16px;}
.social-row a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--gold-light);font-size:1rem;}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:20px 0;font-size:.78rem;color:#c9ab84;}
.footer-legal-links{display:flex;gap:16px;flex-wrap:wrap;padding-bottom:24px;font-size:.78rem;}
.footer-legal-links a{color:#e0c9a6;text-decoration:none;}
.footer-legal-links a:hover{color:var(--gold-light);}

/* Legal content pages */
.legal-content{max-width:820px;margin:0 auto;}
.legal-content .updated{color:var(--saffron);font-weight:700;font-size:.85rem;margin-bottom:20px;}
.legal-content h2{font-family:'Cinzel',serif;color:var(--maroon);font-size:1.3rem;margin:30px 0 12px;}
.legal-content h3{color:var(--maroon);font-size:1.05rem;margin:18px 0 8px;}
.legal-content p{margin-bottom:12px;color:#4a2f1c;}
.legal-content ul{margin:0 0 14px 22px;color:#4a2f1c;}
.legal-content li{margin-bottom:6px;}
.legal-content a{color:var(--maroon);font-weight:700;}
.callout-box{background:#fff7e6;border:1px dashed var(--gold);border-radius:10px;padding:16px 20px;font-size:.9rem;color:#7a5a2a;margin:18px 0;}

.cta-banner{background:linear-gradient(135deg,var(--maroon),var(--maroon-dark));border-radius:20px;padding:44px;text-align:center;color:#fff;}
.cta-banner h2{font-family:'Cinzel',serif;font-size:1.6rem;margin-bottom:10px;color:var(--gold-light);}
.cta-banner p{margin-bottom:20px;color:#f4e6cf;}
.bg-mist{background:var(--cream-2);}
