/* =========================================================
   Project Shree Ram — shared stylesheet
   Warm-heritage system: saffron/gold + Israel-indigo,
   lotus + Star-of-David motifs. Latin / Devanagari / Hebrew.
   ========================================================= */
:root{
  --saffron:#E5912F;
  --saffron-deep:#C4691A;
  --gold:#C9A24B;
  --gold-soft:#e6cd8f;
  --maroon:#8A2B2B;
  --indigo:#213A8F;
  --indigo-deep:#152657;
  --cream:#FBF5E9;
  --cream-2:#F4E9D2;
  --cream-3:#EADFC4;
  --ink:#2A2016;
  --ink-soft:#5b4f3f;
  --muted:#867a64;
  --line:#d8c9a6;
  --maxw:1080px;
  --maxw-prose:760px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--cream); color:var(--ink);
  font-family:'Mukta',system-ui,sans-serif; font-weight:400; line-height:1.7;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
h1,h2,h3{font-family:'Marcellus',serif; color:var(--indigo-deep); line-height:1.18; margin:0 0 .5em; font-weight:400;}
.display{letter-spacing:.005em;}
[lang="hi"] h1,[lang="hi"] h2,[lang="hi"] h3,.lang-hi h1,.lang-hi h2,.lang-hi h3{font-family:'Tiro Devanagari Hindi','Mukta',serif;}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3{font-family:'Frank Ruhl Libre',serif; font-weight:700;}
[dir="rtl"] body,[dir="rtl"]{font-family:'Heebo','Frank Ruhl Libre',sans-serif;}
p{margin:0 0 1.1rem;}
img{max-width:100%; height:auto; display:block;}
a{color:var(--indigo);}
:focus-visible{outline:2px solid var(--saffron-deep); outline-offset:2px;}
.skip-link{position:fixed; left:0; top:0; transform:translateY(-200%); background:var(--saffron); color:#fff; padding:.6rem 1rem; z-index:200; transition:transform .15s;}
.skip-link:focus{transform:translateY(0);}

.wrap{max-width:var(--maxw); margin:0 auto; padding:0 1.5rem;}
section{padding:4rem 0;}
.prose{max-width:var(--maxw-prose); margin:0 auto;}
.eyebrow{font-family:'Mukta',sans-serif; text-transform:uppercase; font-size:.76rem; letter-spacing:.16em; color:var(--saffron-deep); font-weight:700; margin-bottom:.7rem; display:block;}
[dir="rtl"] .eyebrow{letter-spacing:.06em;}

/* ---------- TOP NAV ---------- */
.topnav{position:sticky; top:0; z-index:60; background:rgba(21,38,87,0.96); border-bottom:2px solid var(--saffron);}
.topnav .bar{max-width:var(--maxw); margin:0 auto; padding:.55rem 1.5rem; display:flex; align-items:center; gap:1rem;}
.brand{display:flex; align-items:center; gap:.55rem; text-decoration:none; margin-inline-end:auto;}
.brand .emblem{width:34px; height:34px; flex:none;}
.brand .wm{font-family:'Marcellus',serif; color:var(--cream); font-size:1.02rem; letter-spacing:.02em;}
.brand .wm b{color:var(--gold-soft); font-weight:400;}
.nav-links{display:flex; align-items:center; gap:.15rem; flex-wrap:wrap;}
.nav-links a{color:var(--cream); text-decoration:none; font-family:'Mukta',sans-serif; font-size:.82rem; font-weight:600; letter-spacing:.03em; padding:.5rem .7rem; border-radius:5px; transition:background .15s,color .15s;}
.nav-links a:hover,.nav-links a[aria-current="page"]{background:var(--saffron); color:#fff;}
.nav-toggle{display:none; background:transparent; border:1px solid rgba(233,206,143,.5); color:var(--cream); font-size:1.2rem; line-height:1; padding:.3rem .55rem; border-radius:5px; cursor:pointer;}
@media (max-width:820px){
  .nav-toggle{display:block;}
  .nav-links{display:none; position:absolute; left:0; right:0; top:100%; flex-direction:column; align-items:stretch; gap:0; background:var(--indigo-deep); border-bottom:2px solid var(--saffron); padding:.4rem 1rem .8rem;}
  .nav-links.open{display:flex;}
  .nav-links a{padding:.7rem .5rem;}
}

/* ---------- LANGUAGE DROPDOWN (globe) ---------- */
.langpick{position:relative; display:inline-flex;}
.langpick-btn{display:inline-flex; align-items:center; gap:.35rem; cursor:pointer; background:transparent; border:1px solid rgba(233,206,143,.5); border-radius:8px; padding:.32rem .55rem; color:var(--cream); font-family:'Mukta',sans-serif; line-height:1;}
.langpick-btn:hover{border-color:var(--gold-soft);}
.langpick-btn .globe{color:var(--gold-soft); flex:0 0 auto;}
.langpick-cur{font-size:.76rem; font-weight:700; letter-spacing:.03em;}
.langpick-caret{font-size:.55rem; opacity:.7; transition:transform .15s ease;}
.langpick.open .langpick-caret{transform:rotate(180deg);}
.langpick-menu{display:none; position:absolute; top:calc(100% + 6px); inset-inline-end:0; z-index:80; flex-direction:column; min-width:150px; background:var(--indigo-deep); border:1px solid var(--gold); border-radius:8px; padding:.3rem; box-shadow:0 12px 30px rgba(0,0,0,.4);}
.langpick.open .langpick-menu{display:flex;}
.langpick-menu a{display:block; margin:0; padding:.55rem .7rem; border-radius:5px; color:var(--cream); text-decoration:none; font-size:.85rem; font-weight:600; opacity:.85; white-space:nowrap; text-align:start;}
.langpick-menu a:hover{opacity:1; background:rgba(255,255,255,.08);}
.langpick-menu a.active,.langpick-menu a[aria-current]{opacity:1; background:var(--saffron); color:#fff;}

/* ---------- HERO ---------- */
.hero{position:relative; overflow:hidden; text-align:center; padding:4rem 1.5rem 3.4rem;
  background:
    radial-gradient(circle at 18% 15%, rgba(229,145,47,.16), transparent 55%),
    radial-gradient(circle at 85% 80%, rgba(33,58,143,.14), transparent 52%),
    linear-gradient(165deg,#FCF7EC 0%, #F4E9D2 55%, #EADFC4 100%);
  border-bottom:3px solid var(--indigo-deep);}
.hero .logo-mark{margin:0 auto .3rem; width:92px; height:92px;}
.hero .logo-mark svg{filter:drop-shadow(0 6px 14px rgba(21,38,87,.18));}
.flags-row{display:flex; justify-content:center; gap:.4rem; margin:.4rem 0 .6rem;}
.flag-chip{width:34px; height:22px; border-radius:3px; box-shadow:0 1px 4px rgba(0,0,0,.15);}
.flag-india{background:linear-gradient(#FF9933 0 33%, #fff 33% 66%, #138808 66% 100%);}
.flag-israel{background:linear-gradient(#fff,#fff); position:relative; border:1px solid #d6ddef;}
.flag-israel::before,.flag-israel::after{content:""; position:absolute; left:0; right:0; height:3px; background:#0038B8;}
.flag-israel::before{top:3px;} .flag-israel::after{bottom:3px;}
.tagline{font-family:'Mukta',sans-serif; font-weight:700; letter-spacing:.06em; font-size:.82rem; color:var(--maroon); text-transform:uppercase; margin:.2rem 0 1rem;}
.hero h1.display{font-size:clamp(2rem,5.2vw,3.15rem); margin-bottom:1rem;}
.hero .lead{font-size:1.14rem; max-width:620px; margin:0 auto 1.8rem; color:var(--ink-soft);}
.cta-btn{display:inline-block; background:var(--saffron); color:#fff; text-decoration:none; font-family:'Mukta',sans-serif; font-weight:700; letter-spacing:.03em; padding:.95rem 2rem; border-radius:6px; font-size:.98rem; border:1px solid var(--saffron-deep); transition:background .15s,transform .15s,box-shadow .15s;}
.cta-btn:hover{background:var(--saffron-deep); transform:translateY(-2px); box-shadow:0 10px 24px rgba(196,105,26,.28);}

/* woven divider band */
.weave{height:12px; background:
  repeating-linear-gradient(45deg, var(--saffron) 0 10px, var(--gold) 10px 20px, var(--indigo) 20px 30px, var(--indigo-deep) 30px 40px);
  opacity:.9;}

/* ---------- SECTIONS / CARDS ---------- */
section .wrap,.quote-feature{max-width:var(--maxw-prose); margin-inline:auto;}
section{padding:3.6rem 1.5rem;}
section > *{max-width:var(--maxw-prose); margin-inline:auto;}
.hero > *{max-width:none;}
h2.display{font-size:clamp(1.5rem,3.6vw,2.2rem);}
section p{font-size:1.06rem; color:var(--ink-soft);}
section em{color:var(--maroon); font-style:italic;}
.card{background:#fff; border:1px solid var(--line); border-top:3px solid var(--saffron); border-radius:8px; padding:1.5rem 1.6rem; margin:1.4rem auto 0; box-shadow:0 6px 20px rgba(42,32,22,.06);}
.card h3{font-size:1.15rem; color:var(--maroon); margin-bottom:.7rem;}
.link-list{list-style:none; padding:0; margin:0 0 .3rem;}
.link-list li{padding:.35rem 0; border-bottom:1px dashed var(--cream-3);}
.link-list li:last-child{border-bottom:0;}
.link-list a{color:var(--indigo); font-weight:600; text-decoration:none;}
.link-list a:hover{text-decoration:underline;}
.notice{font-size:.92rem; border-radius:6px; padding:.85rem 1rem; margin-top:1rem; background:var(--cream-2); color:var(--ink-soft);}
.notice.strong{border-inline-start:4px solid var(--saffron); background:#fbeede;}

/* alternating section tint */
section:nth-of-type(even){background:var(--cream-2);}

/* ---------- QUOTE FEATURE ---------- */
.quote-feature{text-align:center; padding:1rem 0 0;}
.quote-feature .qphoto{width:100%; max-width:560px; margin:0 auto 1rem; border-radius:8px; border:1px solid var(--line); box-shadow:0 10px 26px rgba(21,38,87,.16);}
.qcredit{font-size:.76rem; color:var(--muted); margin:0 0 1rem;}
.qcredit a{color:var(--muted);}
.qtext{font-family:'Marcellus',serif; font-size:1.28rem; line-height:1.5; color:var(--indigo-deep); max-width:600px; margin:0 auto .6rem;}
[dir="rtl"] .qtext{font-family:'Frank Ruhl Libre',serif;}
.qattr{font-size:.9rem; font-weight:700; color:var(--maroon);}

/* ---------- FORMS ---------- */
form.interest{background:#fff; border:1px solid var(--line); border-radius:10px; padding:1.6rem; margin-top:1.4rem; box-shadow:0 6px 20px rgba(42,32,22,.06);}
form.interest label{display:block; font-family:'Mukta',sans-serif; font-weight:600; font-size:.82rem; letter-spacing:.02em; color:var(--ink); margin:.85rem 0 .3rem;}
form.interest input,form.interest select,form.interest textarea{width:100%; padding:.7rem .8rem; border:1px solid var(--line); border-radius:6px; font:inherit; background:var(--cream); color:var(--ink);}
form.interest textarea{min-height:90px; resize:vertical;}
form.interest button[type=submit]{margin-top:1.2rem; background:var(--indigo); color:#fff; border:1px solid var(--indigo-deep); font-family:'Mukta',sans-serif; font-weight:700; letter-spacing:.03em; padding:.85rem 1.8rem; border-radius:6px; font-size:.95rem; cursor:pointer; transition:background .15s,transform .15s;}
form.interest button[type=submit]:hover{background:var(--indigo-deep); transform:translateY(-1px);}
.form-note{font-size:.82rem; color:var(--muted); margin-top:.9rem;}

/* ---------- SCRIPT TOGGLE (Devanagari / Roman on Hindi page) ---------- */
.script-toggle{display:inline-flex; gap:.2rem; margin:0 auto 1.4rem; border:1px solid var(--line); border-radius:20px; padding:.2rem; background:#fff;}
.script-toggle button{background:transparent; border:0; font:inherit; font-weight:600; font-size:.8rem; padding:.3rem .8rem; border-radius:16px; cursor:pointer; color:var(--ink-soft);}
.script-toggle button.active{background:var(--saffron); color:#fff;}

/* ---------- PAGE HERO (inner pages) ---------- */
.page-hero{text-align:center; padding:3rem 1.5rem 2.4rem; background:linear-gradient(165deg,#FCF7EC,#EADFC4); border-bottom:3px solid var(--indigo-deep);}
.page-hero h1{font-size:clamp(1.8rem,4.2vw,2.6rem); margin-bottom:.4rem;}
.page-hero p{max-width:600px; margin:0 auto; color:var(--ink-soft);}
.breadcrumb{font-family:'Mukta',sans-serif; font-size:.74rem; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); margin-bottom:.8rem;}
.breadcrumb a{color:var(--saffron-deep); text-decoration:none;}

/* ---------- FAQ accordion ---------- */
.faq-list{margin-top:1.2rem;}
.faq-item{background:#fff; border:1px solid var(--line); border-radius:8px; margin-bottom:.7rem; overflow:hidden;}
.faq-item summary{cursor:pointer; list-style:none; padding:1rem 1.2rem; font-family:'Marcellus',serif; font-size:1.05rem; color:var(--indigo-deep); position:relative; padding-inline-end:2.4rem;}
[dir="rtl"] .faq-item summary{font-family:'Frank Ruhl Libre',serif;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+"; position:absolute; inset-inline-end:1.1rem; top:50%; transform:translateY(-50%); font-size:1.4rem; color:var(--saffron-deep); transition:transform .2s;}
.faq-item[open] summary::after{content:"\2013";}
.faq-item summary:hover{background:var(--cream-2);}
.faq-a{padding:0 1.2rem 1.15rem; color:var(--ink-soft); font-size:1.02rem;}
.faq-a a{color:var(--indigo); font-weight:600;}

/* ---------- FOOTER ---------- */
footer.site{background:var(--indigo-deep); color:var(--cream); padding:2.4rem 1.5rem 2rem; border-top:3px solid var(--saffron);}
footer.site .wrap{max-width:var(--maxw); display:flex; flex-direction:column; gap:1rem; align-items:center; text-align:center;}
footer.site .foot-links{display:flex; flex-wrap:wrap; gap:.2rem .3rem; justify-content:center;}
footer.site .foot-links a{color:var(--gold-soft); text-decoration:none; font-size:.85rem; font-weight:600; padding:.2rem .55rem;}
footer.site .foot-links a:hover{color:#fff; text-decoration:underline;}
footer.site .fine{font-size:.8rem; color:#c7cbdb; max-width:640px; line-height:1.6;}
footer.site .disclaimer{font-size:.78rem; color:#aab0c6; max-width:680px; border-top:1px solid rgba(233,206,143,.25); padding-top:1rem;}

/* keep off-viewport reveal transforms from creating horizontal overflow (RTL stripe) */
main{overflow-x:hidden;}

/* ---------- SYMBOL BACKGROUND (Hindu + Jewish motifs) — slow drift ---------- */
.hero, section, footer.site{position:relative;}
.hero::before, section:nth-of-type(even)::before, footer.site::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:url('/assets/img/pattern.svg'); background-size:170px 170px; background-position:0 0; opacity:.06;
  animation:bgdrift 70s linear infinite;}
.hero::before{opacity:.08; animation-duration:90s;}
section:nth-of-type(4n)::before{animation-direction:reverse; animation-duration:85s;}
footer.site::before{background-image:url('/assets/img/pattern-light.svg'); opacity:.09; animation-duration:100s;}
.hero > *, section > *, footer.site > *{position:relative; z-index:1;}
@keyframes bgdrift{from{background-position:0 0;} to{background-position:170px 340px;}}
@media (prefers-reduced-motion:reduce){
  .hero::before, section::before, footer.site::before{animation:none !important;}
}

/* ---------- LOGO / EMBLEM ANIMATION ---------- */
.hero .logo-mark{animation:emblemIn 1s cubic-bezier(.16,.8,.24,1) both;}
.hero .logo-mark svg{animation:floaty 5.5s ease-in-out infinite; transition:transform 1.1s cubic-bezier(.16,.8,.24,1), filter .4s ease;}
.hero .logo-mark:hover svg{transform:rotate(360deg) scale(1.05); filter:drop-shadow(0 0 13px rgba(229,145,47,.55)); animation-play-state:paused;}
.brand .emblem{transition:transform .5s cubic-bezier(.16,.8,.24,1);}
.brand:hover .emblem{transform:rotate(180deg);}
@keyframes emblemIn{from{opacity:0; transform:scale(.55) rotate(-30deg);} to{opacity:1; transform:none;}}
@keyframes floaty{0%,100%{translate:0 0;} 50%{translate:0 -8px;}}

/* ---------- FLAGS BLOWING IN THE WIND ---------- */
.flag-chip{transform-origin:left center; animation:wave 3s ease-in-out infinite; will-change:transform;}
.flag-chip.flag-israel{animation-delay:.45s;}
@keyframes wave{
  0%,100%{transform:perspective(140px) rotateY(0deg) skewY(0deg);}
  25%{transform:perspective(140px) rotateY(-15deg) skewY(1.6deg);}
  50%{transform:perspective(140px) rotateY(0deg) skewY(0deg);}
  75%{transform:perspective(140px) rotateY(15deg) skewY(-1.6deg);}
}

/* ---------- HERO ENTRANCE (staggered) ---------- */
.js .hero .tagline,.js .hero h1,.js .hero .lead,.js .hero .cta-btn,.js .hero .flags-row{
  opacity:0; animation:riseIn .9s cubic-bezier(.16,.8,.24,1) forwards;}
.js .hero .flags-row{animation-delay:.15s;} .js .hero .tagline{animation-delay:.25s;}
.js .hero h1{animation-delay:.38s;} .js .hero .lead{animation-delay:.52s;} .js .hero .cta-btn{animation-delay:.66s;}
@keyframes riseIn{from{opacity:0; transform:translateY(22px);} to{opacity:1; transform:none;}}

/* ---------- HIGH-LEVEL SCROLL REVEALS ---------- */
.js .reveal{opacity:0; transform:translateY(34px); filter:blur(7px);
  transition:opacity .85s cubic-bezier(.16,.8,.24,1), transform .85s cubic-bezier(.16,.8,.24,1), filter .85s ease;}
.js .reveal[data-rv="left"]{transform:translateX(-46px);}
.js .reveal[data-rv="right"]{transform:translateX(46px);}
.js .reveal[data-rv="scale"]{transform:scale(.93);}
.reveal.in{opacity:1 !important; transform:none !important; filter:blur(0) !important;}
/* stagger a container's children */
.js .stagger > *{opacity:0; transform:translateY(26px); filter:blur(6px);
  transition:opacity .75s cubic-bezier(.16,.8,.24,1), transform .75s cubic-bezier(.16,.8,.24,1), filter .75s ease;}
.stagger.in > *{opacity:1; transform:none; filter:blur(0);}
.stagger.in > *:nth-child(1){transition-delay:.06s} .stagger.in > *:nth-child(2){transition-delay:.16s}
.stagger.in > *:nth-child(3){transition-delay:.26s} .stagger.in > *:nth-child(4){transition-delay:.36s}
.stagger.in > *:nth-child(5){transition-delay:.46s} .stagger.in > *:nth-child(6){transition-delay:.56s}

@media (prefers-reduced-motion:reduce){
  .js .reveal,.js .stagger > *{opacity:1 !important; transform:none !important; filter:none !important; transition:none !important;}
  .hero .logo-mark,.hero .logo-mark svg,.flag-chip,.js .hero .tagline,.js .hero h1,.js .hero .lead,.js .hero .cta-btn,.js .hero .flags-row{animation:none !important; opacity:1 !important;}
  .cta-btn:hover,form.interest button:hover{transform:none;}
}

/* related-sites network band */
.network{background:var(--cream-2); border-top:1px solid var(--line); padding:2.6rem 1.5rem;}
.network .wrap{max-width:var(--maxw); margin:0 auto; text-align:center;}
.network h2{font-family:'Mukta',sans-serif; text-transform:uppercase; letter-spacing:.1em; font-size:.9rem; color:var(--indigo-deep); margin:0 0 1.1rem;}
.network-links{display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem 1.4rem;}
.network-links a{color:var(--saffron-deep); font-weight:700; text-decoration:none; font-size:.98rem;}
.network-links a:hover{text-decoration:underline;}
[dir="rtl"] .network h2,[lang="hi"] .network h2{letter-spacing:0;}

/* share buttons */
.share{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin:.4rem 0}
.share .sh{width:38px;height:38px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(233,206,143,.4);color:var(--cream);background:transparent;cursor:pointer;padding:0;transition:background .15s,color .15s,border-color .15s,transform .15s}
.share .sh svg{width:17px;height:17px;fill:currentColor}
.share .sh:hover{background:var(--saffron);color:#fff;border-color:var(--saffron);transform:translateY(-2px)}
.share .sh.copied{background:var(--saffron);color:#fff;border-color:var(--saffron)}

/* WhatsApp group CTA */
.wa-cta-wrap{text-align:center;margin-top:1.2rem}
.wa-cta{display:inline-flex;align-items:center;gap:.55rem;background:#25D366;color:#fff;text-decoration:none;font-family:'Mukta',sans-serif;font-weight:700;font-size:.98rem;padding:.85rem 1.6rem;border-radius:6px;border:1px solid #1da851;transition:background .15s,transform .15s,box-shadow .15s}
.wa-cta:hover{background:#1da851;transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,211,102,.28)}
.wa-cta svg{width:20px;height:20px;fill:currentColor;flex:0 0 auto}
