
  :root{
    /* Palette drawn from the logo & hero artwork */
    --night:#0A1238;       /* midnight navy sky */
    --night-2:#101C52;
    --royal:#1B2F8F;       /* Krishna's royal blue silks */
    --gold:#D9A441;        /* temple gold */
    --gold-light:#F6DB8F;
    --lotus:#F27AAE;       /* lotus pink */
    --lotus-deep:#D93A82;  /* Radha's rose */
    --peacock:#0E8A73;     /* peacock green */
    --cream:#FFF6E6;
    --text:#E9E4F5;
    --grad-gold:linear-gradient(135deg,#F6DB8F,#D9A441 55%,#B97F22);
    --grad-lotus:linear-gradient(135deg,#F7A1C6,#D93A82);
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif;
    color:var(--text);
    background:var(--night);
    background-image:radial-gradient(ellipse at 20% 0%,rgba(27,47,143,.35),transparent 55%),radial-gradient(ellipse at 90% 40%,rgba(217,58,130,.10),transparent 50%);
    font-size:21px;line-height:1.7;
    overflow-x:hidden;
  }
  img{width:100%;height:auto;display:block;object-fit:cover;border:none;}
  a{text-decoration:none;color:inherit;}
  .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
  .accent{color:var(--lotus);}
  .gold{background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent;}

  /* falling petals */
  .petals{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;}
  .petals i{position:absolute;top:-30px;width:14px;height:20px;border-radius:80% 0 80% 0;background:linear-gradient(135deg,#F7A1C6,#D93A82);opacity:.0;animation:fall linear infinite;}
  @keyframes fall{0%{transform:translateY(-30px) rotate(0) translateX(0);opacity:0}10%{opacity:.55}90%{opacity:.35}100%{transform:translateY(105vh) rotate(540deg) translateX(60px);opacity:0}}
  header,section,footer,.bottom-bar{position:relative;z-index:1;}

  /* ===== Header ===== */
  header{
    position:sticky;top:0;z-index:50;
    display:flex;align-items:center;justify-content:space-between;
    padding:8px 30px;flex-wrap:wrap;gap:16px;
    background:rgba(10,18,56,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid rgba(217,164,65,.35);
  }
  .logo img{height:80px;width:80px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(217,164,65,.45));}
  nav ul{list-style:none;display:flex;gap:34px;flex-wrap:wrap;}
  nav ul li a{
    font-family:'Cinzel',Georgia,serif;font-size:16px;font-weight:500;letter-spacing:.08em;
    color:var(--gold-light);position:relative;padding:6px 0;transition:color .3s;
  }
  nav ul li a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--lotus);transform:scaleX(0);transition:transform .35s;}
  nav ul li a:hover{color:#fff;}
  nav ul li a:hover::after,nav ul li a.active::after{transform:scaleX(1);}
  .donate-btn{
    background:var(--grad-lotus);color:#fff;padding:13px 32px;border-radius:30px;
    font-family:'Cinzel',Georgia,serif;font-size:15px;font-weight:600;letter-spacing:.1em;white-space:nowrap;
    box-shadow:0 0 0 1px rgba(246,219,143,.6),0 6px 22px rgba(217,58,130,.4);transition:transform .3s,box-shadow .3s;
  }
  .donate-btn:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--gold-light),0 10px 30px rgba(217,58,130,.6);}

  /* ===== Hero ===== */
  .hero{width:100%;overflow:hidden;position:relative;}
  .hero img{width:100%;height:auto;display:block;}
  .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:22%;background:linear-gradient(to bottom,transparent,var(--night));}

  /* ===== Welcome ===== */
  .welcome{text-align:center;padding:40px 20px 80px;}
  .eyebrow{font-family:'Cinzel',serif;font-size:18px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);}
  .tagline{font-style:italic;font-weight:400;font-size:clamp(30px,4.6vw,56px);line-height:1.25;color:var(--cream);margin:22px auto 26px;max-width:900px;}
  .welcome p.lead{max-width:860px;margin:0 auto 38px;font-size:23px;color:var(--text);}
  .btn-row{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
  .btn{display:inline-block;padding:16px 40px;border-radius:40px;font-family:'Cinzel',serif;font-size:16px;font-weight:600;letter-spacing:.1em;transition:transform .3s,box-shadow .3s,background .3s;}
  .btn-primary{background:var(--grad-gold);color:var(--night);box-shadow:0 8px 28px rgba(217,164,65,.4);}
  .btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(217,164,65,.6);}
  .btn-secondary{color:var(--gold-light);border:1.5px solid var(--gold);background:rgba(255,255,255,.03);}
  .btn-secondary:hover{background:rgba(217,164,65,.15);transform:translateY(-3px);}

  .divider{display:flex;align-items:center;justify-content:center;gap:16px;max-width:520px;margin:0 auto 34px;color:var(--lotus);font-size:26px;}
  .divider::before,.divider::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}

  /* ===== Introduction ===== */
  .awaken{text-align:center;padding:40px 20px 90px;}
  .awaken h2,.begin h2{font-weight:500;font-size:clamp(38px,5.2vw,60px);line-height:1.15;color:var(--cream);margin-bottom:22px;}
  .awaken p.intro{max-width:880px;margin:0 auto 22px;font-size:23px;}
  .whispers{margin:34px auto 0;max-width:700px;}
  .whispers p{font-style:italic;font-size:26px;line-height:1.9;color:var(--gold-light);}
  .whispers p:last-child{color:var(--lotus);font-size:30px;margin-top:6px;}

  .circle-row{display:flex;justify-content:center;gap:60px;flex-wrap:wrap;margin-top:80px;}
  .circle-item{text-align:center;width:360px;max-width:100%;}
  /* IMAGE PLACEHOLDER — circle 360×360 (replace .ph with <img> keeping class "circle-img") */
  .circle-img{width:360px;height:360px;max-width:100%;border-radius:50%;}
  .ph{
    position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;
    background:radial-gradient(circle at 50% 35%,rgba(242,122,174,.35),transparent 60%),linear-gradient(160deg,var(--night-2),var(--royal));
    border:2px solid var(--gold);box-shadow:0 0 0 7px rgba(217,164,65,.12),0 0 50px rgba(27,47,143,.6);
    color:var(--gold-light);font-size:54px;
  }
  .circle-img.ph{aspect-ratio:1/1;}
  .circle-item h3{margin-top:28px;font-family:'Pinyon Script',cursive;font-weight:400;font-size:52px;line-height:1;color:var(--lotus);}
  .circle-item p{margin-top:14px;font-size:21px;line-height:1.55;}

  /* ===== Contemplation ===== */
  .contemplation{position:relative;background:linear-gradient(180deg,var(--night),#0D1A6B 50%,var(--night));padding:110px 20px;overflow:hidden;text-align:center;}
  .contemplation::before{content:"";position:absolute;top:50%;left:50%;width:640px;height:640px;max-width:120%;transform:translate(-50%,-50%);border-radius:50%;
    background:radial-gradient(circle,rgba(246,219,143,.28) 0%,rgba(242,122,174,.16) 40%,transparent 70%);filter:blur(8px);pointer-events:none;}
  .contemplation::after{content:"";position:absolute;inset:34px 5%;border:1px solid rgba(217,164,65,.35);border-radius:24px;pointer-events:none;}
  .contemplation blockquote{position:relative;max-width:900px;margin:0 auto;font-style:italic;font-size:clamp(34px,5.4vw,68px);line-height:1.25;font-weight:500;}
  .contemplation .label{position:relative;margin-top:34px;font-family:'Cinzel',serif;font-size:14px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);}
  .contemplation .mark{position:relative;font-size:40px;color:var(--lotus);margin-bottom:18px;}

  /* ===== Photo grid (image placeholders preserved) ===== */
  .photo-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:320px 400px;gap:20px;padding:90px 20px 40px;box-sizing:content-box;}
  .photo-grid > *{width:100%;height:100%;border-radius:12px;}
  .photo-grid .ph{font-size:40px;border-width:1px;box-shadow:0 0 30px rgba(27,47,143,.5);}
  .photo-grid .block{display:flex;align-items:center;justify-content:center;font-size:44px;color:rgba(255,255,255,.85);}
  .b1{background:var(--grad-lotus);} .b2{background:linear-gradient(160deg,var(--royal),var(--night-2));border:1px solid var(--gold);} .b3{background:linear-gradient(160deg,#F6DB8F,#D9A441);color:var(--night)!important;}

  /* ===== Closing ===== */
  .begin{text-align:center;padding:100px 20px 110px;background:linear-gradient(160deg,var(--royal),#5B1F7A 55%,var(--lotus-deep));position:relative;overflow:hidden;margin-top:50px;}
  .begin::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(246,219,143,.28),transparent 60%);}
  .begin > *{position:relative;}
  .begin h2{color:#fff;}
  .begin .lines p{font-size:26px;line-height:1.85;color:var(--cream);}
  .begin .lines p.first{max-width:640px;margin:0 auto 18px;font-size:23px;}
  .begin .whisper{font-family:'Pinyon Script',cursive;font-size:clamp(52px,8vw,92px);line-height:1.2;margin:34px 0 40px;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .begin .btn-primary{background:#fff;color:var(--lotus-deep);box-shadow:0 8px 30px rgba(0,0,0,.3);}

  /* ===== Footer ===== */
  footer{text-align:center;padding:60px 20px 0;background:var(--night);border-top:1px solid rgba(217,164,65,.4);}
  footer img.f-logo{width:90px;height:90px;object-fit:contain;margin:0 auto 22px;}
  footer nav ul{justify-content:center;gap:28px;margin-bottom:26px;}
  footer .copyright{font-size:19px;padding-bottom:40px;color:var(--gold-light);}
  .bottom-bar{background:#050A24;color:#A9A6C4;display:flex;justify-content:space-between;align-items:center;padding:14px 30px;font-size:15px;flex-wrap:wrap;gap:10px;}
  .bottom-bar a{margin-right:20px;} .bottom-bar a:hover{color:var(--gold-light);}
  .bottom-bar .tag{font-style:italic;}

  /* reveal */
  .js .rv{opacity:0;transform:translateY(28px);transition:opacity 1s ease,transform 1s ease;}
  .js .rv.in{opacity:1;transform:none;}
  @media (prefers-reduced-motion:reduce){.petals{display:none}.js .rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

  @media (max-width:900px){
    header{justify-content:center;text-align:center;}
    nav ul{justify-content:center;gap:18px 24px;}
    .photo-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,220px);}
    .circle-row{gap:50px;}
    body{font-size:19px;}
  }

/* ===== Shared components for inner pages ===== */
.sec{padding:80px 20px;text-align:center;}
.sec.soft{background:linear-gradient(180deg,var(--night),#0D1A6B 50%,var(--night));}
.sec h2{font-weight:500;font-size:clamp(36px,5vw,58px);line-height:1.15;color:var(--cream);margin-bottom:22px;}
.sec h2 small{display:block;font-size:.42em;font-style:italic;color:var(--gold-light);margin-top:10px;font-weight:400;}
.wrap{max-width:860px;margin:0 auto;}
.lines p{font-size:24px;margin-bottom:14px;}
.lines p.em{font-style:italic;color:var(--gold-light);}
.lines p.q,.q{font-style:italic;font-size:clamp(26px,3.4vw,38px);line-height:1.35;color:var(--gold-light);margin:22px 0;}
.note{font-style:italic;font-size:19px;color:var(--lotus);margin-top:18px;}
.split{max-width:1100px;margin:0 auto;display:flex;gap:60px;align-items:center;flex-wrap:wrap;text-align:left;}
.split > *{flex:1 1 380px;}
.split h2{text-align:left;}
.split.rev{flex-direction:row-reverse;}
.wide-img{aspect-ratio:4/3;width:100%;border-radius:24px;}
.wide-img.ph{font-size:70px;}
.video-img{aspect-ratio:16/9;max-width:900px;margin:40px auto 0;border-radius:24px;font-size:70px;}
.circle-row.four .circle-item{width:250px;}
.circle-row.four .circle-img{width:250px;height:250px;}
.circle-row.tight{margin-top:50px;}
.cards{max-width:1200px;margin:50px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;text-align:center;}
.card{background:linear-gradient(160deg,rgba(27,47,143,.4),rgba(16,28,82,.7));border:1px solid rgba(217,164,65,.4);border-radius:22px;padding:36px 28px;box-shadow:0 10px 40px rgba(0,0,0,.25);transition:transform .4s,border-color .4s;}
.card:hover{transform:translateY(-5px);border-color:var(--gold);}
.card .n{font-family:'Pinyon Script',cursive;font-size:44px;color:var(--lotus);line-height:1;}
.card h3{font-family:'Cinzel',serif;font-weight:500;font-size:19px;letter-spacing:.06em;color:var(--gold-light);margin:10px 0 12px;}
.card p{font-size:20px;line-height:1.6;}
.card p.q{font-size:22px;margin:12px 0 0;}
.pills{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0 26px;}
.pills span{border:1px solid var(--gold);border-radius:30px;padding:6px 20px;color:var(--gold-light);font-size:20px;background:rgba(217,164,65,.08);}
.vs{max-width:1000px;margin:40px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.flow{display:flex;flex-direction:column;align-items:center;gap:6px;margin:30px 0;}
.flow b{font-family:'Cinzel',serif;font-weight:500;letter-spacing:.14em;font-size:20px;padding:12px 44px;border-radius:40px;border:1px solid var(--gold);background:rgba(217,164,65,.08);color:var(--gold-light);min-width:260px;}
.flow i{font-style:normal;color:var(--lotus);font-size:24px;line-height:1;}
.flow b:last-of-type{background:var(--grad-lotus);color:#fff;border-color:transparent;}
.verse{max-width:820px;margin:34px auto;padding:44px 34px;border:1px solid var(--gold);border-radius:24px;background:radial-gradient(circle at 50% 0%,rgba(246,219,143,.14),transparent 70%),rgba(16,28,82,.6);}
.verse .sk{font-size:25px;line-height:1.8;font-style:italic;color:var(--gold-light);margin-bottom:22px;}
.verse .ref{font-family:'Cinzel',serif;letter-spacing:.14em;font-size:15px;color:var(--lotus);text-transform:uppercase;}
.verse .tr{font-size:26px;color:var(--cream);margin:14px 0;}
.btn-row.mt{margin-top:36px;}
.begin .btn-row{margin-top:10px;}
/* Contact */
.mail{display:inline-block;margin:10px 0 40px;font-size:clamp(22px,3.4vw,34px);color:var(--gold-light);border-bottom:1px solid var(--lotus);padding-bottom:4px;word-break:break-all;}
.mail:hover{color:#fff;}
.connect-grid{max-width:760px;margin:30px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.connect-btn{display:flex;align-items:center;justify-content:center;padding:20px;border-radius:34px;font-family:'Cinzel',serif;letter-spacing:.1em;font-size:16px;color:var(--gold-light);border:1px solid var(--gold);background:rgba(217,164,65,.07);transition:.3s;}
.connect-btn:hover{background:var(--grad-lotus);color:#fff;border-color:transparent;transform:translateY(-3px);}
/* Footer extras */
footer .f-title{font-size:34px;font-weight:500;}
footer .f-desc{max-width:620px;margin:10px auto 26px;font-size:20px;}
.f-cols{display:flex;justify-content:center;gap:70px;flex-wrap:wrap;margin:10px 0 30px;}
.f-cols h4{font-family:'Cinzel',serif;font-weight:500;letter-spacing:.2em;font-size:14px;color:var(--gold);text-transform:uppercase;margin-bottom:10px;}
.f-cols a{display:block;color:var(--text);font-size:19px;} .f-cols a:hover{color:var(--lotus);}
/* Practice journey */
.days{display:grid;grid-template-columns:repeat(10,1fr);gap:10px;max-width:860px;margin:36px auto 40px;}
.day-btn{position:relative;aspect-ratio:1;border-radius:50%;border:1px solid var(--gold);background:rgba(217,164,65,.06);color:var(--gold-light);font-family:'Cinzel',serif;font-size:17px;cursor:pointer;transition:.3s;}
.day-btn:hover{background:rgba(217,164,65,.22);transform:translateY(-2px);}
.day-btn.done::after{content:"";position:absolute;bottom:5px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--lotus);}
.day-btn.on{background:var(--grad-gold);color:var(--night);font-weight:600;box-shadow:0 0 24px rgba(217,164,65,.55);}
.day-panel{max-width:820px;margin:0 auto;padding:54px 44px;border:1px solid var(--gold);border-radius:28px;background:radial-gradient(circle at 50% 0%,rgba(242,122,174,.16),transparent 65%),linear-gradient(160deg,rgba(27,47,143,.45),rgba(10,18,56,.85));box-shadow:0 20px 60px rgba(0,0,0,.4);text-align:center;}
.day-panel .num{font-family:'Pinyon Script',cursive;font-size:56px;line-height:1;color:var(--lotus);}
.day-panel h3{font-family:'Cinzel',serif;font-weight:500;letter-spacing:.1em;font-size:clamp(22px,3vw,30px);margin:10px 0 28px;}
.day-panel .body p{font-size:23px;margin-bottom:12px;}
.day-panel .body p.b{font-style:italic;color:var(--gold-light);font-size:25px;margin:14px 0;}
.refl{margin-top:30px;padding-top:24px;border-top:1px solid rgba(217,164,65,.4);}
.refl span{font-family:'Cinzel',serif;letter-spacing:.2em;font-size:13px;text-transform:uppercase;color:var(--gold);}
.refl p{font-style:italic;font-size:25px;color:var(--cream);margin-top:8px;}
.pager{display:flex;justify-content:space-between;gap:14px;max-width:820px;margin:26px auto 0;}
.pager button{background:none;border:1px solid var(--gold);color:var(--gold-light);border-radius:30px;padding:12px 28px;font-family:'Cinzel',serif;letter-spacing:.1em;font-size:14px;cursor:pointer;transition:.3s;}
.pager button:hover:not(:disabled){background:var(--grad-gold);color:var(--night);}
.pager button:disabled{opacity:.3;cursor:default;}
@media (max-width:900px){.vs{grid-template-columns:1fr}.days{grid-template-columns:repeat(6,1fr)}.day-panel{padding:40px 22px}.split,.split h2{text-align:center}.connect-grid{grid-template-columns:1fr}}

img.circle-img{box-shadow:0 0 50px rgba(27,47,143,.6);}
.photo-grid img{box-shadow:0 0 30px rgba(27,47,143,.5);}
img.wide-img{box-shadow:0 0 40px rgba(27,47,143,.5);}
img.video-img{box-shadow:0 0 40px rgba(27,47,143,.5);height:auto;}
.day-panel .qual{font-family:'Cinzel',serif;letter-spacing:.14em;font-size:14px;text-transform:uppercase;color:var(--lotus);margin:-12px 0 26px;}
.day-panel .qual b{font-weight:600;color:var(--gold-light);}
.day-panel h4{font-family:'Cinzel',serif;font-weight:500;letter-spacing:.12em;font-size:16px;color:var(--gold);margin:42px 0 16px;text-transform:uppercase;}
.day-panel h4::before{content:"❀  ";color:var(--lotus);}
.refl p.n{font-style:normal;font-size:21px;color:var(--text);}
.refl p.b{color:var(--gold-light);}
ul.each{list-style:none;margin:16px 0 0;padding:0;}
ul.each li{padding:5px 0 5px 30px;position:relative;font-size:21px;line-height:1.5;}
ul.each li::before{content:"❀";position:absolute;left:0;color:var(--lotus);}
.day-panel .sub{font-style:italic;font-size:26px;color:var(--gold-light);margin:-14px 0 22px;}
.day-panel .qual span{color:var(--text);}
.day-panel .sub + .qual{margin-top:0;}

/* Footer social buttons */
.f-social{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:680px;margin:6px auto 34px;padding:0 10px;}
.f-social a{padding:11px 26px;border:1px solid var(--gold);border-radius:30px;font-family:'Cinzel',serif;font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light);background:rgba(217,164,65,.06);transition:.3s;}
.f-social a:hover{background:var(--grad-lotus);color:#fff;border-color:transparent;transform:translateY(-2px);}
.f-social a.f-mail{background:var(--grad-gold);color:var(--night);border-color:transparent;font-weight:600;box-shadow:0 6px 20px rgba(217,164,65,.3);}
.f-social a.f-mail:hover{background:var(--grad-lotus);color:#fff;}
footer .eyebrow{margin-bottom:22px;}
@media (max-width:600px){.f-social{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:360px;}.f-social a{text-align:center;padding:12px 8px;}.f-social a.f-mail{grid-column:1/-1;}}

/* Footer layout polish */
.f-donate{margin:0 auto 38px;}
.f-donate .donate-btn{display:inline-block;padding:15px 52px;font-size:16px;}
footer nav{max-width:780px;margin:0 auto 26px;padding-top:28px;border-top:1px solid rgba(217,164,65,.28);}
footer nav ul{margin-bottom:0;}
@media (max-width:600px){footer nav ul{gap:12px 22px;}.f-donate .donate-btn{display:block;max-width:360px;margin:0 auto;text-align:center;}}

.f-social{max-width:900px;}
@media (max-width:600px){.f-social a:last-child{grid-column:1/-1;}}

.sec h1{font-weight:500;font-size:clamp(38px,5.4vw,62px);line-height:1.15;color:var(--cream);margin-bottom:12px;}
.legal{text-align:left;}
.legal h2{font-family:'Cinzel',serif;font-weight:500;font-size:clamp(18px,2.4vw,22px);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);text-align:left;margin:44px 0 12px;line-height:1.3;}
.legal p{font-size:21px;margin-bottom:14px;}
.legal strong{color:var(--gold-light);font-weight:600;}
.legal a.mail{display:inline-block;}

.qr{display:inline-block;background:#fff;padding:18px;border-radius:26px;border:3px solid var(--gold);box-shadow:0 0 60px rgba(217,164,65,.35);}
.qr img{width:240px;height:240px;max-width:100%;display:block;image-rendering:pixelated;}
@media (max-width:600px){.f-social a:last-child{grid-column:auto;}}
