
/* ==========================================================
   EFFECTIVE HOMEPAGE 2026
   Clearer hierarchy, shorter journey, faster participant access
   ========================================================== */
.home-effective{
  --home-navy:#101938;
  --home-blue:#1e5671;
  --home-gold:#d2a447;
  --home-saffron:#d86b36;
  --home-paper:#fffdf8;
  --home-cream:#faf6ec;
}
.home-effective .site-header{z-index:80}
.home-effective main{overflow:hidden}

/* Hero */
.home-effective .effective-hero{
  min-height:auto;
  overflow:visible;
  color:#fff;
  background:
    radial-gradient(circle at 82% 14%,rgba(241,220,152,.21),transparent 25%),
    radial-gradient(circle at 8% 90%,rgba(189,63,103,.18),transparent 26%),
    linear-gradient(112deg,#101938 0%,#153957 56%,#176078 100%);
}
.home-effective .effective-hero::before{opacity:.11}
.effective-hero-grid{
  min-height:650px;
  display:grid;
  grid-template-columns:1.04fr .96fr;
  align-items:center;
  gap:38px;
  padding:70px 0 88px;
}
.effective-hero-copy{position:relative;z-index:5}
.effective-hero h1{
  max-width:760px;
  margin:18px 0 12px;
  font:500 clamp(3.6rem,6.4vw,6.7rem)/.9 Georgia,serif;
  letter-spacing:-.06em;
}
.effective-hero h1 span{
  display:block;
  margin-top:15px;
  color:var(--gold2);
  font-size:.48em;
  letter-spacing:-.025em;
}
.effective-hero h2{
  max-width:680px;
  margin:0 0 16px;
  color:#fff;
  font:500 clamp(1.18rem,2vw,1.75rem)/1.3 Georgia,serif;
}
.effective-hero .lead{
  max-width:690px;
  margin:0;
  color:rgba(255,255,255,.73);
  font-size:.98rem;
}
.effective-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-top:28px;
}
.effective-status-link{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:17px;
  color:#efd993;
  font-size:.7rem;
  font-weight:850;
}
.effective-status-link svg{font-size:1.05rem}
.effective-event-facts{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:12px;
  max-width:780px;
  margin-top:31px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.15);
}
.effective-event-facts>div{
  display:grid;
  grid-template-columns:31px 1fr;
  gap:9px;
  align-items:center;
}
.effective-event-facts svg{color:#efd993;font-size:1.2rem}
.effective-event-facts small,.effective-event-facts strong{display:block}
.effective-event-facts small{color:rgba(255,255,255,.47);font-size:.51rem;text-transform:uppercase;letter-spacing:.13em}
.effective-event-facts strong{margin-top:2px;font:500 .82rem Georgia,serif}

.effective-hero-art{
  min-height:530px;
  position:relative;
  display:grid;
  place-items:center;
}
.effective-arch{
  position:absolute;
  width:min(475px,88%);
  height:510px;
  border:1px solid rgba(241,220,152,.18);
  border-radius:240px 240px 34px 34px;
  background:
    radial-gradient(circle at 50% 36%,rgba(241,220,152,.09),transparent 40%),
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
  box-shadow:inset 0 0 70px rgba(241,220,152,.045),0 0 0 20px rgba(241,220,152,.02);
}
.effective-arch::before,.effective-arch::after{
  content:"";
  position:absolute;
  inset:25px;
  border-radius:220px 220px 24px 24px;
  border:1px dashed rgba(241,220,152,.17);
}
.effective-arch::after{
  inset:64px;
  border-style:solid;
  opacity:.65;
}
.effective-halo{
  position:absolute;
  width:430px;
  aspect-ratio:1;
  border-radius:50%;
  animation:homeHalo 9s ease-in-out infinite;
}
.effective-halo::before,.effective-halo::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(241,220,152,.19);
}
.effective-halo::after{
  inset:42px;
  border-style:dashed;
  animation:spin 45s linear infinite;
}
.effective-halo span{
  position:absolute;
  width:8px;height:8px;border-radius:50%;
  background:#efd993;box-shadow:0 0 18px rgba(239,217,147,.65);
}
.effective-halo span:nth-child(1){left:8%;top:45%}
.effective-halo span:nth-child(2){right:14%;top:16%;width:6px;height:6px}
.effective-halo span:nth-child(3){right:3%;bottom:28%;width:5px;height:5px}
@keyframes homeHalo{50%{transform:scale(1.025);filter:drop-shadow(0 0 24px rgba(241,220,152,.12))}}
.effective-book{
  width:min(330px,66%);
  z-index:4;
  transform:rotate(2deg);
}
.hero-program-card{
  position:absolute;
  z-index:6;
  width:195px;
  padding:13px 15px;
  border:1px solid rgba(241,220,152,.29);
  border-radius:16px;
  background:rgba(10,19,48,.76);
  backdrop-filter:blur(14px);
  box-shadow:0 15px 35px rgba(0,0,0,.18);
}
.hero-program-card span,.hero-program-card strong,.hero-program-card small{display:block}
.hero-program-card span{color:#efd993;font-size:.5rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900}
.hero-program-card strong{margin-top:3px;font:500 .84rem Georgia,serif}
.hero-program-card small{margin-top:2px;color:rgba(255,255,255,.58);font-size:.54rem}
.hero-program-one{left:1%;top:13%;animation:chipFloat 6.5s ease-in-out infinite}
.hero-program-two{right:0;bottom:12%;animation:chipFloat 6.5s ease-in-out -3.25s infinite}
.effective-book-shadow{
  position:absolute;
  bottom:8%;
  width:300px;height:40px;border-radius:50%;
  background:rgba(0,0,0,.28);filter:blur(14px);
}
.effective-countdown-wrap{position:relative;z-index:7;margin-top:-31px}
.effective-countdown{
  display:grid;
  grid-template-columns:1.35fr repeat(4,.52fr);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.55);
  border-radius:20px;
  color:var(--ink);
  background:rgba(255,253,248,.97);
  box-shadow:0 20px 55px rgba(0,0,0,.18);
}
.effective-countdown>div{padding:17px 15px;text-align:center;border-right:1px solid var(--line)}
.effective-countdown>div:last-child{border-right:0}
.effective-countdown .countdown-label{text-align:left;padding-left:24px}
.effective-countdown small,.effective-countdown span{display:block}
.effective-countdown small{color:var(--saffron);font-size:.52rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900}
.effective-countdown .countdown-label strong{font:500 1.02rem Georgia,serif}
.effective-countdown>div:not(.countdown-label)>strong{display:block;color:var(--navy);font:500 1.55rem/1 Georgia,serif}
.effective-countdown span{margin-top:3px;color:#8b91a2;font-size:.49rem;text-transform:uppercase;letter-spacing:.12em}

/* Quick access */
.home-quick-access{position:relative;z-index:8;padding:34px 0 76px}
.home-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.home-quick-card{
  position:relative;
  overflow:hidden;
  min-height:122px;
  display:grid;
  grid-template-columns:43px 1fr;
  gap:12px;
  align-items:center;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 13px 38px rgba(16,25,56,.055);
  transition:.25s;
}
.home-quick-card::after{
  content:"";
  position:absolute;right:-40px;bottom:-65px;width:130px;height:130px;border-radius:50%;
  border:1px solid rgba(210,164,71,.13);
}
.home-quick-card:hover{transform:translateY(-5px);border-color:rgba(210,164,71,.38);box-shadow:0 20px 45px rgba(16,25,56,.09)}
.home-quick-icon{
  width:43px;height:43px;border-radius:14px;display:grid;place-items:center;
  color:var(--saffron);background:#fff0e5;font-size:1.12rem;
}
.home-quick-card small,.home-quick-card strong,.home-quick-card em{display:block}
.home-quick-card small{color:#9399a7;font-size:.49rem;text-transform:uppercase;letter-spacing:.11em}
.home-quick-card strong{margin-top:3px;font:500 .9rem Georgia,serif}
.home-quick-card em{margin-top:7px;color:var(--saffron);font-size:.56rem;font-style:normal;font-weight:850}
.home-quick-card em svg{vertical-align:-.13em}

/* Shared heading */
.home-section-heading{
  display:flex;justify-content:space-between;align-items:end;gap:42px;margin-bottom:35px;
}
.home-section-heading .display{max-width:760px;font-size:clamp(2.5rem,4.6vw,4.45rem)}
.home-section-heading>p{max-width:475px;margin:0 0 8px;color:var(--muted);font-size:.79rem}

/* Program cards */
.home-programs{padding:78px 0 92px;background:#fff;border-block:1px solid var(--line)}
.home-bhadra{background:linear-gradient(145deg,#4c1f43,#833958 58%,#b55c65)}
.home-sammelan{background:linear-gradient(145deg,#10224b,#1c5470 58%,#2f7891)}
/* Process and stay */
.home-process{padding:82px 0;background:var(--cream)}
.home-process-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}
.home-process-card,.home-stay-card{border-radius:27px;overflow:hidden;box-shadow:0 16px 48px rgba(16,25,56,.07)}
.home-process-card{
  padding:29px;color:#fff;background:
  radial-gradient(circle at 90% 10%,rgba(241,220,152,.16),transparent 28%),
  linear-gradient(145deg,#101938,#1c526d);
}
.home-stay-card{padding:29px;background:#fff;border:1px solid var(--line)}
.home-card-heading h2{margin:7px 0 8px;font:500 clamp(1.85rem,3vw,2.7rem)/1.05 Georgia,serif}
.home-card-heading p:not(.eyebrow){margin:0;color:inherit;opacity:.66;font-size:.7rem}
.home-process-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:22px 0}
.home-process-steps article{
  min-height:116px;display:grid;grid-template-columns:37px 1fr;gap:11px;padding:14px;
  border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.055);
}
.home-process-steps article>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:#efd993;background:rgba(255,255,255,.08);font:500 .75rem Georgia,serif}
.home-process-steps strong,.home-process-steps small{display:block}
.home-process-steps strong{font:500 .85rem Georgia,serif}
.home-process-steps small{margin-top:4px;color:rgba(255,255,255,.56);font-size:.55rem}
.home-rate-list{display:grid;gap:7px;margin-top:20px}
.home-rate-list>div{
  display:grid;grid-template-columns:1fr auto auto;gap:13px;align-items:center;
  padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;
}
.home-rate-list>div.featured{background:#fff8ea;border-color:rgba(210,164,71,.3)}
.home-rate-list span{font:500 .82rem Georgia,serif}
.home-rate-list small{color:#8d93a2;font-size:.55rem}
.home-rate-list strong{color:var(--saffron);font-size:.7rem}
.home-stay-notes{display:grid;gap:8px;margin-top:14px}
.home-stay-notes p{margin:0;padding:10px 12px;border-left:3px solid var(--gold);border-radius:4px 11px 11px 4px;color:#6d6555;background:#faf6ea;font-size:.58rem}

/* Experience */
.home-experience{padding:86px 0;background:#fff;border-block:1px solid var(--line)}
.home-bento{
  display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(180px,auto);gap:12px;
}
.home-bento-card{
  position:relative;overflow:hidden;padding:21px;border:1px solid var(--line);border-radius:21px;background:linear-gradient(145deg,#fff,#fbf8f1);box-shadow:0 12px 35px rgba(16,25,56,.045);
}
.home-bento-card::after{content:"";position:absolute;right:-45px;bottom:-65px;width:140px;height:140px;border-radius:50%;border:1px solid rgba(210,164,71,.12)}
.home-bento-main{grid-column:span 2;grid-row:span 2;color:#fff;background:
  radial-gradient(circle at 85% 12%,rgba(241,220,152,.18),transparent 30%),
  linear-gradient(145deg,#17264c,#24637d);
}
.home-bento-wide{grid-column:span 2}
.home-bento-icon{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;color:var(--saffron);background:#fff0e5;font-size:1.05rem}
.home-bento-main .home-bento-icon{color:#efd993;background:rgba(255,255,255,.09)}
.home-bento-card>small{display:block;margin-top:31px;color:#efd993;font-size:.5rem;text-transform:uppercase;letter-spacing:.12em}
.home-bento-card h3{position:relative;z-index:2;margin:18px 0 8px;font:500 1.05rem Georgia,serif}
.home-bento-main h3{font-size:clamp(1.8rem,3vw,2.7rem);max-width:500px}
.home-bento-card p{position:relative;z-index:2;margin:0;color:var(--muted);font-size:.64rem}
.home-bento-main p{max-width:500px;color:rgba(255,255,255,.66);font-size:.72rem}

/* Gallery */
.home-gallery{padding:82px 0 88px}
.home-gallery-heading{
  position:relative;z-index:3;display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:30px;
}
.home-gallery-heading .display{max-width:740px;font-size:clamp(2.5rem,4.6vw,4.35rem)}
.home-gallery-heading>div:last-child{max-width:390px}
.home-gallery-heading p:not(.eyebrow){color:rgba(255,255,255,.62);font-size:.72rem}
.home-gallery-row{position:relative;z-index:3}
.home-gallery-track{animation-duration:95s}
.home-memory-card{flex-basis:305px;height:195px}
.home-memory-card:nth-child(4n+1){flex-basis:385px}
.home-memory-card:nth-child(4n+3){flex-basis:255px}

/* Legacy */
.home-legacy{padding:80px 0;background:#f2ede2}
.home-legacy-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:20px}
.home-prabhupada,.home-legacy-copy{min-height:390px;border-radius:27px;overflow:hidden;box-shadow:0 17px 48px rgba(16,25,56,.07)}
.home-prabhupada{position:relative;background:linear-gradient(145deg,#d9dde5,#f7f3e9)}
.home-prabhupada::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(16,25,56,.9))}
.home-prabhupada img{width:100%;height:100%;object-fit:cover;object-position:center 22%;filter:saturate(.84)}
.home-prabhupada div{position:absolute;z-index:2;left:25px;right:25px;bottom:23px;color:#fff}
.home-prabhupada span,.home-prabhupada strong{display:block}
.home-prabhupada span{color:#efd993;font-size:.51rem;text-transform:uppercase;letter-spacing:.12em}
.home-prabhupada strong{margin-top:5px;font:500 1.05rem Georgia,serif}
.home-legacy-copy{
  padding:34px;color:#fff;background:
  radial-gradient(circle at 90% 10%,rgba(241,220,152,.17),transparent 30%),
  linear-gradient(145deg,#101938,#225b74);
}
.home-quote-mark{display:block;color:#efd993;font:500 5rem/.6 Georgia,serif}
.home-legacy-copy blockquote{margin:20px 0 12px;font:500 clamp(2.1rem,4vw,3.5rem)/1 Georgia,serif}
.home-legacy-copy>p{max-width:650px;margin:0;color:rgba(255,255,255,.67);font-size:.73rem}
.home-legacy-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:28px}
.home-legacy-stats div{padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.05)}
.home-legacy-stats strong,.home-legacy-stats span{display:block}
.home-legacy-stats strong{color:#efd993;font:500 1.7rem Georgia,serif}
.home-legacy-stats span{color:rgba(255,255,255,.52);font-size:.52rem;text-transform:uppercase;letter-spacing:.1em}

/* Support */
.home-support{padding:86px 0 100px;background:#fff}
.home-support-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px;align-items:start}
.home-faq{padding:28px;border:1px solid var(--line);border-radius:27px;background:#fff}
.home-faq .display{font-size:clamp(2.1rem,3.8vw,3.35rem)}
.home-faq .faq-list{margin-top:22px}
.home-help-card{
  position:sticky;top:100px;padding:30px;border-radius:27px;color:#fff;
  background:
  radial-gradient(circle at 90% 10%,rgba(241,220,152,.17),transparent 28%),
  linear-gradient(145deg,#101938,#225c74);
  box-shadow:0 18px 52px rgba(16,25,56,.13);
}
.home-help-card h2{margin:7px 0 10px;font:500 clamp(1.9rem,3vw,2.65rem)/1.05 Georgia,serif}
.home-help-card>p:not(.eyebrow){margin:0;color:rgba(255,255,255,.65);font-size:.68rem}
.home-contact-list{display:grid;gap:8px;margin-top:20px}
.home-contact-list>a,.home-contact-list>div{
  display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;
  padding:11px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.05);
}
.home-contact-list svg{color:#efd993;font-size:1.05rem}
.home-contact-list small,.home-contact-list strong{display:block}
.home-contact-list small{color:rgba(255,255,255,.42);font-size:.47rem;text-transform:uppercase;letter-spacing:.1em}
.home-contact-list strong{margin-top:2px;font-size:.62rem;overflow-wrap:anywhere}
.home-help-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}
.home-help-actions .btn{min-height:44px;font-size:.63rem}

/* Mobile dock */
.home-mobile-dock{display:none}

/* Main.js compatibility enhancements */
.home-effective .programs{position:relative}
.home-effective .refined-program-card.motion-tilt{transform:perspective(1100px) translate3d(0,var(--tilt-z),0) rotateX(var(--tilt-x)) rotateY(var(--tilt-y))}
.home-effective .home-bento-card.motion-tilt{transform:perspective(1100px) translate3d(0,var(--tilt-z),0) rotateX(var(--tilt-x)) rotateY(var(--tilt-y))}

/* Responsive */
@media(max-width:1040px){
  .effective-hero-grid{grid-template-columns:1fr 1fr}
  .home-quick-grid{grid-template-columns:repeat(2,1fr)}
  .home-bento{grid-template-columns:repeat(3,1fr)}
  .home-bento-main{grid-column:span 2}
  .home-bento-wide{grid-column:span 2}
}
@media(max-width:860px){
  .effective-hero-grid{grid-template-columns:1fr;padding-top:62px}
  .effective-hero-art{min-height:470px}
  .effective-event-facts{grid-template-columns:1fr}
  .home-section-heading{align-items:flex-start;flex-direction:column;gap:12px}
  .home-process-grid,.home-legacy-grid,.home-support-grid{grid-template-columns:1fr}
  .home-bento{grid-template-columns:repeat(2,1fr)}
  .home-help-card{position:relative;top:auto}
  .home-gallery-heading{align-items:flex-start;flex-direction:column;gap:8px}
}
@media(max-width:640px){
  body.home-effective{padding-bottom:69px}
  .effective-hero-grid{min-height:auto;padding:53px 0 70px}
  .effective-hero h1{font-size:3.25rem}
  .effective-hero-actions{display:grid}
  .effective-hero-actions .btn{width:100%}
  .effective-hero-art{min-height:410px}
  .effective-arch{height:400px;width:330px}
  .effective-halo{width:335px}
  .effective-book{width:235px}
  .hero-program-card{width:155px;padding:10px}
  .hero-program-one{left:0;top:8%}.hero-program-two{right:0;bottom:8%}
  .effective-countdown{grid-template-columns:1fr repeat(4,.55fr)}
  .effective-countdown .countdown-label{grid-column:1/-1;text-align:center;border-bottom:1px solid var(--line);padding-left:15px}
  .effective-countdown>div:nth-child(2){border-left:0}
  .home-quick-grid{grid-template-columns:1fr}
  .home-process-steps{grid-template-columns:1fr}
  .home-bento{grid-template-columns:1fr}
  .home-bento-main,.home-bento-wide{grid-column:auto;grid-row:auto}
  .home-gallery-row{mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
  .home-memory-card,.home-memory-card:nth-child(4n+1),.home-memory-card:nth-child(4n+3){flex-basis:265px;height:175px}
  .home-legacy-stats{grid-template-columns:1fr}
  .home-mobile-dock{
    position:fixed;z-index:95;left:10px;right:10px;bottom:9px;
    display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:7px;
    border:1px solid rgba(255,255,255,.5);border-radius:18px;
    background:rgba(16,25,56,.93);backdrop-filter:blur(14px);box-shadow:0 14px 35px rgba(0,0,0,.25);
  }
  .home-mobile-dock a{
    min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;
    border-radius:12px;color:#fff;background:rgba(255,255,255,.07);font-size:.62rem;font-weight:850;
  }
  .home-mobile-dock a:first-child{color:var(--navy);background:#efd993}
}
@media(prefers-reduced-motion:reduce){
  .effective-halo,.hero-program-card{animation:none!important}
}


/* ==========================================================
   FINAL HOMEPAGE REFINEMENTS
   Golden chakra · double gallery · Amazon store promotion
   ========================================================== */

/* Ornate low-transparency chakra behind the Bhagavatam */
.effective-chakra{
  position:absolute;
  z-index:2;
  width:490px;
  aspect-ratio:1;
  border-radius:50%;
  opacity:.24;
  animation:homeChakraRotate 62s linear infinite;
  background:
    radial-gradient(circle,
      transparent 0 7%,
      rgba(239,217,147,.82) 7.4% 8.1%,
      transparent 8.5% 18%,
      rgba(239,217,147,.58) 18.4% 19.2%,
      transparent 19.7% 37%,
      rgba(239,217,147,.48) 37.4% 38.2%,
      transparent 38.7% 48%,
      rgba(239,217,147,.72) 48.4% 49.2%,
      transparent 49.7% 100%),
    repeating-conic-gradient(
      from 0deg,
      rgba(239,217,147,.76) 0deg 1.2deg,
      transparent 1.2deg 7.5deg
    );
  -webkit-mask:radial-gradient(circle,#000 0 51%,transparent 51.7% 55%,#000 55.6% 100%);
  mask:radial-gradient(circle,#000 0 51%,transparent 51.7% 55%,#000 55.6% 100%);
  filter:drop-shadow(0 0 18px rgba(239,217,147,.16));
}
.effective-chakra::before{
  content:"";
  position:absolute;
  inset:31px;
  border-radius:50%;
  border:1px solid rgba(239,217,147,.74);
  background:
    repeating-conic-gradient(
      from 3.75deg,
      transparent 0 5deg,
      rgba(239,217,147,.65) 5deg 6deg,
      transparent 6deg 15deg
    );
  -webkit-mask:radial-gradient(circle,transparent 0 64%,#000 64.5% 66%,transparent 66.5%);
  mask:radial-gradient(circle,transparent 0 64%,#000 64.5% 66%,transparent 66.5%);
}
.effective-chakra::after{
  content:"✦";
  position:absolute;
  inset:50%;
  width:82px;
  height:82px;
  margin:-41px;
  border:1px solid rgba(239,217,147,.76);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:rgba(239,217,147,.9);
  font:500 2rem Georgia,serif;
  box-shadow:
    0 0 0 15px rgba(239,217,147,.055),
    0 0 0 31px rgba(239,217,147,.028);
}
.chakra-centre,
.chakra-ring{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.chakra-centre{
  inset:44%;
  border:1px dashed rgba(239,217,147,.68);
}
.chakra-ring-one{
  inset:13%;
  border:1px solid rgba(239,217,147,.44);
}
.chakra-ring-two{
  inset:25%;
  border:1px dashed rgba(239,217,147,.58);
}
@keyframes homeChakraRotate{
  to{transform:rotate(360deg)}
}
.effective-book{z-index:4}
.effective-halo{z-index:3}

/* Official Amazon Store advertisement */
.home-store-promo{
  padding:0 0 72px;
  background:var(--cream);
}
.home-store-banner{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:190px;
  display:grid;
  grid-template-columns:125px minmax(0,1fr) 180px auto;
  gap:24px;
  align-items:center;
  padding:27px 30px;
  border:1px solid rgba(210,164,71,.29);
  border-radius:27px;
  color:#fff;
  background:
    radial-gradient(circle at 89% 10%,rgba(255,189,74,.22),transparent 27%),
    radial-gradient(circle at 10% 100%,rgba(191,66,103,.15),transparent 31%),
    linear-gradient(120deg,#101938,#1b405c 57%,#2b6578);
  box-shadow:0 20px 56px rgba(16,25,56,.13);
  transition:transform .25s ease,box-shadow .25s ease;
}
.home-store-banner:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 65px rgba(16,25,56,.18);
}
.home-store-banner::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    repeating-linear-gradient(
      120deg,
      transparent 0 36px,
      rgba(255,255,255,.025) 36px 37px
    );
}
.home-store-banner::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-90px;
  bottom:-145px;
  width:360px;
  height:360px;
  border-radius:50%;
  border:1px solid rgba(239,217,147,.16);
  box-shadow:0 0 0 38px rgba(239,217,147,.025);
}
.home-store-emblem{
  width:112px;
  height:112px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.07);
  backdrop-filter:blur(9px);
}
.home-store-emblem img{
  max-width:88px;
  max-height:82px;
  object-fit:contain;
}
.home-store-label{
  display:block;
  color:#efd993;
  font-size:.51rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.15em;
}
.home-store-copy h2{
  margin:6px 0 7px;
  font:500 clamp(1.75rem,3.1vw,2.75rem)/1.04 Georgia,serif;
}
.home-store-copy p{
  max-width:610px;
  margin:0;
  color:rgba(255,255,255,.66);
  font-size:.68rem;
}
.home-store-amazon{
  text-align:center;
  padding:16px 15px;
  border-left:1px solid rgba(255,255,255,.13);
  border-right:1px solid rgba(255,255,255,.13);
}
.home-store-amazon small,
.home-store-amazon strong{
  display:block;
}
.home-store-amazon small{
  color:rgba(255,255,255,.47);
  font-size:.49rem;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.home-store-amazon strong{
  margin-top:3px;
  color:#fff;
  font:700 1.32rem Arial,sans-serif;
}
.home-store-amazon span{
  position:relative;
  display:block;
  width:78px;
  height:18px;
  margin:3px auto 0;
  border-bottom:3px solid #ffb642;
  border-radius:0 0 60% 60%;
  transform:rotate(-4deg);
}
.home-store-amazon span::after{
  content:"";
  position:absolute;
  right:-2px;
  bottom:-5px;
  border:5px solid transparent;
  border-left-color:#ffb642;
  transform:rotate(28deg);
}
.home-store-cta{
  min-height:47px;
  padding:0 17px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#19213a;
  background:#ffbd57;
  font-size:.63rem;
  font-weight:900;
  white-space:nowrap;
}
.home-store-cta svg{font-size:.88rem}

/* Restored two-row memory gallery */
.home-gallery-row-two{
  margin-top:16px;
}
.home-gallery-track-one{
  animation-duration:86s;
}
.home-gallery-track-two{
  animation-name:galleryScrollReverse;
  animation-duration:96s;
}
.home-gallery-row-two .home-memory-card{
  height:175px;
  flex-basis:275px;
}
.home-gallery-row-two .home-memory-card:nth-child(3n+1){
  flex-basis:345px;
}
.home-gallery-row-two .home-memory-card:nth-child(3n+2){
  flex-basis:235px;
}

@media(max-width:960px){
  .effective-chakra{width:425px}
  .home-store-banner{
    grid-template-columns:100px minmax(0,1fr) auto;
  }
  .home-store-amazon{display:none}
  .home-store-emblem{width:96px;height:96px}
}
@media(max-width:700px){
  .effective-chakra{
    width:350px;
    opacity:.2;
  }
  .home-store-promo{padding-bottom:58px}
  .home-store-banner{
    min-height:auto;
    grid-template-columns:72px 1fr;
    gap:14px;
    padding:21px;
  }
  .home-store-emblem{
    width:72px;
    height:72px;
    border-radius:18px;
  }
  .home-store-emblem img{max-width:58px;max-height:55px}
  .home-store-cta{
    grid-column:1/-1;
    width:100%;
  }
  .home-gallery-row-two{margin-top:11px}
  .home-gallery-row-two .home-memory-card,
  .home-gallery-row-two .home-memory-card:nth-child(3n+1),
  .home-gallery-row-two .home-memory-card:nth-child(3n+2){
    flex-basis:245px;
    height:160px;
  }
}
@media(prefers-reduced-motion:reduce){
  .effective-chakra{animation:none!important}
}


/* ==========================================================
   COMPACT EXPERIENCE + ROTATING PRABHUPADA QUOTATIONS
   ========================================================== */

/* Replace the large bento area with one efficient box */
.home-experience-compact{
  padding:52px 0;
  background:#fff;
  border-block:1px solid var(--line);
}
.experience-compact-box{
  position:relative;
  overflow:hidden;
  padding:25px;
  border:1px solid rgba(16,25,56,.13);
  border-radius:26px;
  color:#fff;
  background:
    radial-gradient(circle at 94% 8%,rgba(239,217,147,.16),transparent 28%),
    linear-gradient(135deg,#101938,#1d526c 68%,#276f83);
  box-shadow:0 18px 48px rgba(16,25,56,.10);
}
.experience-compact-box::after{
  content:"";
  position:absolute;
  right:-125px;
  bottom:-175px;
  width:420px;
  height:420px;
  border-radius:50%;
  border:1px solid rgba(239,217,147,.12);
  box-shadow:0 0 0 35px rgba(239,217,147,.022);
}
.experience-compact-intro{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr minmax(280px,440px);
  gap:38px;
  align-items:end;
  padding-bottom:18px;
  margin-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.experience-compact-intro h2{
  max-width:670px;
  margin:6px 0 0;
  font:500 clamp(1.7rem,3vw,2.65rem)/1.04 Georgia,serif;
}
.experience-compact-intro>p{
  margin:0;
  color:rgba(255,255,255,.61);
  font-size:.66rem;
}
.experience-compact-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.45fr repeat(3,1fr);
  gap:8px;
}
.experience-compact-item{
  min-height:78px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 13px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:15px;
  background:rgba(255,255,255,.055);
  transition:background .2s ease,transform .2s ease,border-color .2s ease;
}
.experience-compact-item:hover{
  transform:translateY(-2px);
  border-color:rgba(239,217,147,.31);
  background:rgba(255,255,255,.085);
}
.experience-primary{
  grid-row:span 2;
  min-height:164px;
  align-items:flex-start;
  flex-direction:column;
  justify-content:flex-end;
  background:rgba(239,217,147,.095);
}
.experience-compact-icon{
  flex:0 0 auto;
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  color:#efd993;
  background:rgba(255,255,255,.08);
  font-size:.95rem;
}
.experience-primary .experience-compact-icon{
  width:43px;
  height:43px;
  font-size:1.1rem;
}
.experience-compact-item strong,
.experience-compact-item small{
  display:block;
}
.experience-compact-item strong{
  font:500 .72rem/1.3 Georgia,serif;
}
.experience-primary strong{
  margin-top:4px;
  font-size:1.05rem;
}
.experience-compact-item small{
  color:#efd993;
  font-size:.45rem;
  text-transform:uppercase;
  letter-spacing:.11em;
}

/* Replace the three number cards with an animated quote stage */
.home-legacy-copy{
  min-height:390px;
  display:flex;
  flex-direction:column;
}
.home-legacy-copy>p{
  max-width:690px;
}
.prabhupada-quote-carousel{
  position:relative;
  min-height:178px;
  margin-top:auto;
  padding-top:22px;
}
.prabhupada-quote-stage{
  position:relative;
  min-height:126px;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.13);
}
.prabhupada-quote-slide{
  position:absolute;
  inset:20px 0 auto;
  opacity:0;
  visibility:hidden;
  transform:translateY(22px);
  transition:
    opacity .72s cubic-bezier(.2,.7,.25,1),
    transform .72s cubic-bezier(.2,.7,.25,1),
    visibility .72s;
  pointer-events:none;
}
.prabhupada-quote-slide.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.prabhupada-quote-slide.is-leaving{
  opacity:0;
  visibility:visible;
  transform:translateY(-16px);
}
.prabhupada-quote-slide p{
  max-width:740px;
  margin:0;
  color:#fff;
  font:500 clamp(1.02rem,1.8vw,1.38rem)/1.42 Georgia,serif;
}
.prabhupada-quote-slide cite{
  display:block;
  margin-top:10px;
  color:#efd993;
  font-size:.51rem;
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.prabhupada-quote-footer{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:10px;
}
.prabhupada-quote-progress{
  position:relative;
  flex:1;
  height:2px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.prabhupada-quote-progress span{
  position:absolute;
  inset:0 auto 0 0;
  width:0;
  border-radius:999px;
  background:linear-gradient(90deg,#efd993,#fff0ba);
}
.prabhupada-quote-carousel.is-running .prabhupada-quote-progress span{
  animation:prabhupadaQuoteProgress 6s linear forwards;
}
.prabhupada-quote-dots{
  display:flex;
  gap:6px;
}
.prabhupada-quote-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;
  background:transparent;
  cursor:pointer;
  transition:.2s;
}
.prabhupada-quote-dots button.is-active{
  width:23px;
  border-radius:999px;
  border-color:#efd993;
  background:#efd993;
}
@keyframes prabhupadaQuoteProgress{
  from{width:0}
  to{width:100%}
}

@media(max-width:960px){
  .experience-compact-grid{
    grid-template-columns:repeat(3,1fr);
  }
  .experience-primary{
    grid-column:span 3;
    grid-row:auto;
    min-height:100px;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
  }
}
@media(max-width:700px){
  .home-experience-compact{padding:35px 0}
  .experience-compact-box{padding:19px}
  .experience-compact-intro{
    grid-template-columns:1fr;
    gap:8px;
    align-items:start;
  }
  .experience-compact-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .experience-primary{
    grid-column:span 2;
  }
  .experience-compact-item{
    min-height:69px;
    padding:10px;
  }
  .experience-compact-item strong{
    font-size:.63rem;
  }
  .experience-primary strong{
    font-size:.84rem;
  }
  .home-legacy-copy{
    min-height:420px;
  }
  .prabhupada-quote-carousel{
    min-height:205px;
    padding-top:18px;
  }
  .prabhupada-quote-stage{
    min-height:155px;
  }
  .prabhupada-quote-slide{
    inset:17px 0 auto;
  }
  .prabhupada-quote-slide p{
    font-size:1rem;
    line-height:1.48;
  }
}
@media(max-width:430px){
  .experience-compact-grid{
    grid-template-columns:1fr;
  }
  .experience-primary{
    grid-column:auto;
  }
}
@media(prefers-reduced-motion:reduce){
  .prabhupada-quote-slide{
    transition:none;
  }
  .prabhupada-quote-carousel.is-running .prabhupada-quote-progress span{
    animation:none;
    width:100%;
  }
}

/* ============================================================
   PROGRAM DETAIL MODAL — compact popup instead of a separate page
   ============================================================ */
.program-modal-backdrop{position:fixed;inset:0;background:rgba(8,12,28,.72);backdrop-filter:blur(6px);z-index:200;display:none}
.program-modal-backdrop.open{display:block}
.program-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-46%);width:min(480px,92vw);max-height:88vh;overflow-y:auto;background:#fff;border-radius:24px;z-index:201;display:none;padding:34px 30px 28px;box-shadow:0 40px 100px rgba(0,0,0,.4)}
.program-modal.open{display:block;animation:modalPop .3s ease}
@keyframes modalPop{from{opacity:0;transform:translate(-50%,-42%) scale(.96)}to{opacity:1;transform:translate(-50%,-46%) scale(1)}}
.modal-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:1px solid #e7e0d0;background:#fff;font-size:1.3rem;line-height:1;cursor:pointer;color:#101938}
.modal-close:hover{background:#f4ecd8}
.modal-date-badge{display:inline-flex;flex-direction:column;align-items:center;padding:8px 18px;border-radius:14px;margin-bottom:14px}
.modal-date-badge strong{font-family:Georgia,serif;font-size:1.3rem;line-height:1}
.modal-date-badge span{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.modal-kicker{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 4px}
.program-modal h3{font-family:Georgia,serif;font-size:1.55rem;margin:0 0 10px;color:#101938}
.modal-desc{font-size:.87rem;color:#5c5648;line-height:1.6;margin-bottom:18px}
.modal-highlights{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.modal-highlights div{display:flex;align-items:center;gap:8px;padding:9px 10px;background:#f8f4ea;border-radius:10px;font-size:.74rem;font-weight:600;color:#3d3626}
.modal-highlights svg{width:18px;height:18px;flex-shrink:0;stroke:#c98a1f;fill:none;stroke-width:2}
.modal-pricing{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}
.modal-pricing div{text-align:center;padding:10px 4px;border:1px solid #ecdfc0;border-radius:10px}
.modal-pricing span{display:block;font-size:.62rem;color:#8a8270;text-transform:uppercase;letter-spacing:.04em}
.modal-pricing strong{display:block;font-family:Georgia,serif;font-size:1rem;color:#101938;margin-top:2px}
.modal-note{font-size:.68rem;color:#9a9384;margin-bottom:18px}
.modal-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border-radius:14px;background:linear-gradient(135deg,#e2b66d,#c98a1f);color:#101938;font-weight:700;font-size:.92rem;text-decoration:none;margin-bottom:10px}
.modal-cta:hover{filter:brightness(1.05)}
.modal-secondary{display:block;text-align:center;font-size:.76rem;color:#8a8270;text-decoration:underline}
.program-modal.theme-bhadra .modal-date-badge{background:#f3e2ea;color:#5c2740}
.program-modal.theme-bhadra .modal-kicker{color:#8a3f63}
.program-modal.theme-sammelan .modal-date-badge{background:#e0eef3;color:#123449}
.program-modal.theme-sammelan .modal-kicker{color:#1d5670}
@media(max-width:560px){.program-modal{padding:26px 20px 22px;width:94vw}.modal-highlights{grid-template-columns:1fr}}

/* Registration button below both cards — centered, with a bit more
   breathing room above it. */
.home-programs-cta{text-align:center;margin-top:34px!important}
.home-register-main-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 34px;font-size:.9rem!important}

/* A matching "choose your program" trigger sitting just above the two
   cards, opening the same programs chooser popup. */
.home-programs-top-cta{text-align:center;margin-bottom:18px}
.home-programs-top-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 26px;font-size:.78rem!important;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.2);color:inherit;text-decoration:none;font-weight:700}
.home-programs-top-btn:hover{background:rgba(255,255,255,.12)}

/* Status & DRN chooser dialog — reuses the same modal pattern as the
   program-detail popups, just with two plain link buttons instead of
   rich content. */
.program-modal.theme-status .modal-kicker{color:#c98a1f}

/* Programs chooser popup — numbered 1/2 buttons side-by-side (col-6/col-6),
   opened from the top "Programs" nav link instead of scrolling down. */
.programs-picker-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:12px!important}
.programs-picker-btn{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:6px!important;padding:20px 16px!important;border-radius:14px!important;background:linear-gradient(135deg,#8a3f63,#5c2740)!important;color:#fff!important;text-decoration:none!important;border:none!important;transition:transform .2s ease,box-shadow .2s ease!important;box-shadow:0 8px 20px rgba(92,39,64,.4)!important;cursor:pointer!important}
.programs-picker-btn:hover{transform:translateY(-3px)!important;box-shadow:0 12px 26px rgba(92,39,64,.5)!important}
.programs-picker-btn.theme-sammelan-btn{background:linear-gradient(135deg,#2d8fae,#123449)!important;box-shadow:0 8px 20px rgba(18,52,73,.4)!important}
.programs-picker-btn.theme-sammelan-btn:hover{box-shadow:0 12px 26px rgba(18,52,73,.5)!important}
.ppb-name{font-weight:800!important;font-size:.95rem!important;line-height:1.25!important;color:#fff!important}
.ppb-date{font-size:.7rem!important;opacity:.9!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:#fff!important}
@media(min-width:576px){
  .programs-picker-grid{grid-template-columns:1fr 1fr!important}
}

/* Check-in/check-out row inside the program detail modal (moved here
   from the on-page card). */
.modal-stay-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}
.modal-stay-row div{background:#f8f4ea;border-radius:10px;padding:8px 10px;text-align:center}
.modal-stay-row small{display:block;font-size:.6rem;color:#8a8270;text-transform:uppercase;letter-spacing:.04em}
.modal-stay-row strong{display:block;font-size:.72rem;color:#101938;margin-top:2px}
