@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Inter:wght@400;500;600;700&display=swap');
/* ===== Lal Kitab Grand Masters — Premium Landing CSS ===== */
:root{
  --background:hsl(38 55% 92%);
  --foreground:hsl(350 55% 16%);
  --card:hsl(40 60% 95%);
  --muted:hsl(38 45% 88%);
  --muted-fg:hsl(350 18% 35%);
  --border:hsl(38 50% 86%);
  --primary:hsl(350 70% 38%);
  --primary-fg:hsl(40 50% 98%);

  --maroon:hsl(350 70% 35%);
  --maroon-deep:hsl(350 75% 22%);
  --maroon-light:hsl(355 65% 48%);
  --gold:hsl(42 85% 52%);
  --gold-light:hsl(46 95% 65%);
  --gold-dark:hsl(38 75% 42%);
  --orange-glow:hsl(22 95% 55%);
  --yellow-warm:hsl(48 100% 60%);
  --warm-white:hsl(40 50% 98%);

  --grad-gold:linear-gradient(135deg,hsl(38 80% 48%),hsl(46 95% 62%),hsl(48 100% 60%));
  --grad-warm:linear-gradient(135deg,hsl(48 100% 60%),hsl(22 95% 55%));
  --grad-card:linear-gradient(145deg,hsl(40 60% 96%/.95),hsl(38 55% 92%/.95));

  --shadow-gold:0 10px 40px -10px hsl(42 85% 55% / .35);
  --shadow-elegant:0 24px 70px -22px hsl(350 40% 30% / .25);
  --shadow-orange:0 0 60px -10px hsl(22 95% 55% / .4);

  --ease:cubic-bezier(.4,0,.2,1);
}

*{box-sizing:border-box;margin:0;padding:0;border:0 solid var(--border)}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--background);
  color:var(--foreground);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(ellipse at top,hsl(48 95% 80% / .35),transparent 60%),
    radial-gradient(ellipse at bottom right,hsl(22 90% 65% / .12),transparent 60%);
  background-attachment:fixed;
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;background:none}
ul{list-style:none}

.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.container{width:100%;max-width:1536px;margin:0 auto;padding:0 24px}
.container-narrow{max-width:1100px}

/* Typography */
.display,h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;letter-spacing:-.01em;font-weight:500;line-height:1.1}
.italic{font-style:italic}
.bold{font-weight:600}
.muted{color:var(--muted-fg)}
.maroon{color:var(--maroon)}
.gold-text{color:var(--gold)}
.orange-text{color:var(--orange-glow)}
.small{font-size:.875rem}
.micro{font-size:.8rem;text-transform:uppercase;letter-spacing:.18em;color:var(--muted-fg);font-weight:600}
.center{text-align:center}
.left{text-align:left}
.kicker{color:var(--orange-glow);text-transform:uppercase;letter-spacing:.3em;font-size:.72rem;font-weight:700;margin-bottom:14px}
.lead{font-size:1.075rem;color:var(--muted-fg);line-height:1.65}
.strike{text-decoration:line-through;opacity:.6}
.strike.big{font-size:1.4rem}
.block-i{display:block}
.hide-sm{display:inline-block}
.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:28px}.mt-sm{margin-top:10px}

.shimmer-text{
  background:linear-gradient(90deg,var(--gold-dark) 0%,var(--gold-light) 40%,var(--orange-glow) 60%,var(--gold-dark) 100%);
  background-size:200% auto;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:shimmer 5s linear infinite;
}
.gradient-gold-text{
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}
.warm-text{
  background:linear-gradient(90deg,var(--gold-light),var(--orange-glow));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 20px;border-radius:12px;font-weight:600;font-size:.95rem;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
}
.btn:hover{transform:translateY(-1px)}
.btn-sm{padding:9px 16px;font-size:.85rem}
.btn-lg{padding:16px 26px;font-size:1rem;height:56px}
.btn-xl{padding:18px 28px;font-size:1.075rem;height:64px}
.btn-gold{background:var(--gold);color:var(--primary-fg);box-shadow:var(--shadow-gold)}
.btn-gold:hover{background:var(--gold-light)}
.full{width:100%}

.glow-orange{box-shadow:var(--shadow-orange)}
.glow-gold{box-shadow:0 0 60px -10px hsl(42 85% 55% / .45),inset 0 1px 0 0 hsl(46 95% 65% / .25)}

/* ===== HERO ===== */
.hero{position:relative;min-height:100vh;border-bottom:1px solid hsl(42 85% 52% / .2);overflow:hidden}
.hero-glow{position:absolute;inset:0;pointer-events:none;opacity:.7;
  background:radial-gradient(circle at 70% 40%,hsl(22 95% 60% / .25),transparent 65%);
}
.nav{display:flex;align-items:center;justify-content:space-between;padding-top:28px;position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:36px;height:36px;border-radius:999px;background:var(--grad-warm);color:var(--primary-fg);display:grid;place-items:center;box-shadow:var(--shadow-gold);font-size:14px}
.brand-name{font-family:'Cormorant Garamond',serif;font-size:1.25rem;letter-spacing:.02em}
.brand-name .dot{color:var(--gold);margin:0 4px}

.hero-grid{
  display:grid;grid-template-columns:1fr;gap:48px;align-items:center;
  min-height:calc(100vh - 80px);padding:48px 24px;position:relative;z-index:2;
}
@media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;gap:64px}}

.hero-text{order:2;display:flex;flex-direction:column;gap:24px;animation:fadeUp .8s var(--ease) both}
@media(min-width:1024px){.hero-text{order:1}}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:999px;
  border:1px solid hsl(42 85% 52% / .4);background:hsl(42 85% 52% / .06);
  color:var(--gold);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;width:fit-content;
}
.pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--orange-glow);animation:pulse 1.6s ease-in-out infinite}

.hero-title{font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.05}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-top:4px}
.cta-meta{font-size:.9rem;color:var(--muted-fg)}

.trust-strip{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding-top:8px;font-size:.78rem;color:var(--muted-fg)}
.stars{color:var(--gold);letter-spacing:1px}
.stars span{color:var(--muted-fg);margin-left:6px}

.slide-controls{display:flex;align-items:center;gap:14px;padding-top:16px}
.slide-arrow{
  width:42px;height:42px;border-radius:999px;border:1px solid hsl(42 85% 52% / .4);
  color:var(--gold);display:grid;place-items:center;font-size:22px;line-height:1;
  transition:background .25s;
}
.slide-arrow:hover{background:hsl(42 85% 52% / .1)}
.slide-dots{display:flex;gap:8px}
.slide-dots button{height:4px;border-radius:999px;background:hsl(42 85% 52% / .3);transition:all .35s var(--ease);width:16px}
.slide-dots button.active{background:var(--gold);width:40px}
.slide-count{font-size:.72rem;color:var(--muted-fg);font-variant-numeric:tabular-nums;margin-left:8px}
.slide-count .muted{color:hsl(42 85% 52% / .5)}

/* Hero visual */
.hero-visual{order:1;position:relative;width:100%}
@media(min-width:1024px){.hero-visual{order:2}}
.hero-image-wrap{
  position:relative;aspect-ratio:16/9;width:100%;border-radius:28px;overflow:hidden;
  border:1px solid hsl(42 85% 52% / .3);box-shadow:var(--shadow-elegant);
}
.hero-images{position:absolute;inset:0}
.hero-images img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transform:scale(1.05);transition:opacity 1s var(--ease),transform 1s var(--ease);
}
.hero-images img.active{opacity:1;transform:scale(1)}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(to top right,hsl(38 55% 92% / .55),transparent 50%,hsl(350 70% 35% / .3))}

/* Full screen hero */
.hero-full-bg { padding: 0; display: flex; align-items: center; justify-content: center; }
.hero-images-full { position: absolute; inset: 0; z-index: 0; }
.hero-images-full img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transform: scale(1.05); transition: opacity 1.5s var(--ease), transform 1.5s var(--ease); }
.hero-images-full img.active { opacity: 1; transform: scale(1); }
.hero-overlay-full { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to right, hsl(350 55% 16% / 0.95) 0%, hsl(350 55% 16% / 0.7) 40%, transparent 100%); }

.hero-grid-full {
  display: grid; grid-template-columns: 1fr; align-items: center;
  min-height: 100vh; padding: 120px 24px 60px; position: relative; z-index: 2; width: 100%;
}
@media(min-width:1024px){.hero-grid-full{grid-template-columns: 1.2fr 1fr; gap: 64px;}}
.hero-text-overlay {
  display: flex; flex-direction: column; gap: 24px; animation: fadeUp .8s var(--ease) both;
}

.hero-visual-overlay {
  position: relative; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-end; padding-bottom: 2rem;
}
.hero-chips { position: relative; display: flex; gap: 12px; margin-bottom: 24px; inset: auto; }
.chip{padding:6px 14px;border-radius:999px;background:var(--card);border:1px solid hsl(42 85% 52% / .4);color:var(--gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;box-shadow:var(--shadow-gold)}
.chip-gold{background:var(--gold);color:var(--primary-fg);font-weight:700}

.float-badge{
  position:absolute;padding:10px 16px;border-radius:18px;background:var(--card);
  border:1px solid hsl(42 85% 52% / .4);box-shadow:var(--shadow-gold);
  animation:float 6s ease-in-out infinite; z-index: 10;
}
.hero-visual-overlay .float-badge { position: relative; margin-top: 1rem; right: auto; top: auto; bottom: auto; left: auto; }

.float-badge.float-tr{top:-20px;right:-12px}
.float-badge.float-bl{bottom:-20px;left:-12px}
.badge-num{font-size:1.35rem;line-height:1;margin-top:2px}
.gold{color:var(--gold)}

.warm-white { color: var(--warm-white) !important; }
.warm-white-muted { color: hsl(40 50% 98% / 0.7) !important; }
.scroll-hint{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted-fg); z-index: 5;}

/* ===== Sections ===== */
.section{padding:96px 0;position:relative;overflow:hidden}
@media(min-width:768px){.section{padding:128px 0}}
.section-tinted{background:linear-gradient(to bottom,var(--background),hsl(42 85% 92% / .5),var(--background))}
.section-head{max-width:960px;margin-bottom:56px}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.section-head .lead{margin-top:16px}
.section-title{font-size:clamp(2rem,4.5vw,3.6rem);line-height:1.1}

.grid-12{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
@media(min-width:1024px){
  .grid-12{grid-template-columns:repeat(12,1fr);gap:40px}
  .col-5{grid-column:span 5}
  .col-7{grid-column:span 7}
  .sticky-top{position:sticky;top:96px}
}

/* ===== Benefits ===== */
.benefits-list{display:flex;flex-direction:column;gap:12px}
.benefit-item{
  width:100%;text-align:left;border-radius:18px;border:1px solid var(--border);
  background:hsl(40 60% 95% / .4);overflow:hidden;
  transition:border-color .35s,background .35s,box-shadow .35s,transform .25s;
}
.benefit-item:hover{border-color:hsl(42 85% 52% / .35);background:hsl(40 60% 95% / .8)}
.benefit-item.active{
  border-color:hsl(42 85% 52% / .6);background:var(--grad-card);box-shadow:var(--shadow-gold);
}
.benefit-row{display:flex;align-items:flex-start;gap:16px;padding:18px}
.benefit-icon{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;
  background:hsl(42 85% 52% / .12);color:var(--gold);font-size:20px;
  transition:background .35s,color .35s,box-shadow .35s;
}
.benefit-item.active .benefit-icon{
  background:var(--grad-warm);color:var(--primary-fg);box-shadow:var(--shadow-gold);
}
.benefit-body h3{font-size:1.4rem;line-height:1.15;color:var(--foreground);transition:color .25s}
.benefit-item.active .benefit-body h3{color:var(--gold)}
.benefit-body p{font-size:.85rem;color:var(--muted-fg);margin-top:4px}
.benefit-underline{height:2px;background:linear-gradient(90deg,var(--gold),var(--orange-glow),transparent);width:0;transition:width .5s var(--ease)}
.benefit-item.active .benefit-underline{width:100%}

.benefits-panel,.tree-panel,.module-panel{animation:fadeUp .5s var(--ease) both}
.panel-image{
  position:relative;border-radius:24px;overflow:hidden;border:1px solid hsl(42 85% 52% / .3);
  aspect-ratio:4/3;box-shadow:var(--shadow-elegant);
}
.panel-image img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:brightness(.9);
  image-rendering:auto;
}
.panel-image .overlay{position:absolute;inset:0;background:linear-gradient(to top,hsl(0 0% 0% / .55) 0%,hsl(0 0% 0% / .25) 40%,transparent 100%)}
.panel-chip{
  position:absolute;top:18px;left:18px;padding:6px 14px;border-radius:999px;
  background:var(--card);border:1px solid hsl(42 85% 52% / .4);color:var(--gold);
  font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;box-shadow:var(--shadow-gold);
}
.panel-caption{position:absolute;left:0;right:0;bottom:0;padding:28px}
.panel-caption h3{font-size:1.85rem;color:var(--warm-white);margin-bottom:10px;text-shadow:0 2px 8px hsl(0 0% 0% / .6)}
.panel-caption p{color:hsl(40 50% 95% / .9);max-width:540px;text-shadow:0 1px 4px hsl(0 0% 0% / .5)}

.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.mini-stat{border:1px solid hsl(42 85% 52% / .3);background:var(--card);padding:14px;border-radius:18px;text-align:center;box-shadow:var(--shadow-gold)}
.mini-stat .display{font-size:1.6rem;line-height:1}
.mini-stat .micro{margin-top:4px}

/* ===== Tree ===== */
.tree-rail{position:relative}
.tree-spine{position:absolute;left:27px;top:8px;bottom:8px;width:1px;background:linear-gradient(to bottom,hsl(42 85% 52% / .6),hsl(22 95% 55% / .4),hsl(42 85% 52% / .1))}
.tree-spine.warm{background:linear-gradient(to bottom,var(--yellow-warm),var(--orange-glow),var(--maroon));opacity:.4}
#treeList{display:flex;flex-direction:column;gap:8px;position:relative}
.tree-item{
  width:100%;display:flex;align-items:center;gap:16px;padding:12px 16px 12px 0;
  border-radius:18px;text-align:left;transition:background .3s;
}
.tree-item:hover{background:hsl(40 60% 95% / .5)}
.tree-item.active{background:hsl(42 85% 52% / .08)}
.tree-node{
  position:relative;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;
  border:2px solid hsl(42 85% 52% / .3);background:var(--card);color:var(--gold);font-size:18px;z-index:2;
  transition:transform .35s,border-color .35s,background .35s,color .35s,box-shadow .35s;
}
.tree-item.active .tree-node{
  border-color:var(--gold);background:var(--grad-warm);color:var(--primary-fg);
  box-shadow:var(--shadow-gold);transform:scale(1.1);
}
.tree-text{flex:1;min-width:0;transition:transform .35s}
.tree-item.active .tree-text{transform:translateX(8px)}
.tree-text h4{font-size:1.2rem;color:var(--foreground);transition:color .25s}
.tree-item.active .tree-text h4{color:var(--gold)}
.tree-text p{font-size:.85rem;color:var(--muted-fg);margin-top:2px}
.tree-num{font-size:.85rem;color:var(--muted-fg);opacity:.3;font-variant-numeric:tabular-nums}
.tree-item.active .tree-num{opacity:1;color:var(--gold)}
.tree-panel .panel-image{aspect-ratio:1/1;background:linear-gradient(135deg,hsl(40 60% 96%),hsl(38 55% 92%))}
.tree-panel .panel-image img{object-fit:cover;filter:none;padding:0}
.tree-panel .panel-image .overlay{background:none}
.tree-panel .panel-caption{display:none}

/* ===== Modules ===== */
.stat-strip{
  display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:1100px;margin:0 auto 56px;
}
@media(min-width:768px){.stat-strip{grid-template-columns:repeat(4,1fr)}}
.stat{border:1px solid hsl(42 85% 52% / .3);background:var(--grad-card);padding:18px;border-radius:18px;text-align:center;transition:transform .35s,box-shadow .35s,border-color .35s}
.stat:hover{transform:translateY(-4px);box-shadow:var(--shadow-gold);border-color:hsl(42 85% 52% / .5)}
.stat .display{font-size:1.85rem;line-height:1}
.stat .micro{margin-top:8px}

.module-rail{position:relative; max-height: 80vh; overflow-y: auto; padding-right: 16px; scrollbar-width: thin; scrollbar-color: var(--gold) transparent;}
.module-rail::-webkit-scrollbar { width: 4px; }
.module-rail::-webkit-scrollbar-track { background: transparent; }
.module-rail::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 4px; }

#moduleList{display:flex;flex-direction:column;gap:12px}
.module-item{
  width:100%;display:flex;align-items:center;gap:16px;padding:16px;
  border-radius:18px;border:1px solid hsl(38 50% 86% / .8);background:hsl(40 60% 95% / .6);
  text-align:left;transition:all .3s;position:relative;
}
.module-item:hover{border-color:hsl(42 85% 52% / .4);background:var(--card)}
.module-item.active{
  border-color:hsl(22 95% 55% / .6);
  background:linear-gradient(to right,hsl(48 100% 60% / .15),hsl(22 95% 55% / .1),transparent);
  box-shadow:var(--shadow-gold);
}
.module-icon{
  position:relative;width:56px;height:56px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;
  background:hsl(42 85% 92%);color:var(--maroon);border:1px solid hsl(42 85% 52% / .3);
  font-size:22px;transition:transform .25s,background .25s,color .25s,box-shadow .25s;
}
.module-item:hover .module-icon{transform:scale(1.05)}
.module-item.active .module-icon{
  background:var(--grad-warm);color:var(--warm-white);box-shadow:var(--shadow-orange);transform:scale(1.05);
}
.module-num{
  position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;
  font-size:10px;font-weight:700;background:var(--gold);color:var(--maroon);
}
.module-item.active .module-num{background:var(--maroon);color:var(--warm-white)}
.module-info{flex:1;min-width:0}
.module-info .micro{color:var(--muted-fg);font-size:.62rem;letter-spacing:.2em}
.module-item.active .module-info .micro{color:var(--orange-glow)}
.module-info h4{font-size:1.2rem;margin-top:2px;color:var(--foreground)}
.module-item.active .module-info h4{color:var(--maroon)}
.module-arrow{font-size:14px;color:hsl(350 18% 35% / .5);transition:color .25s,transform .25s;flex:0 0 auto}
.module-item.active .module-arrow{color:var(--orange-glow);transform:translate(2px,-2px)}

.module-panel{
  position:relative;border-radius:24px;border:1px solid hsl(42 85% 52% / .4);
  background:var(--grad-card);box-shadow:var(--shadow-elegant);overflow:hidden;
}
.module-header{height:128px;position:relative;background:var(--grad-warm)}
.module-header::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,white,transparent 60%);opacity:.3; border-top-left-radius: 24px; border-top-right-radius: 24px;}
.module-tag{
  position:absolute;top:18px;right:18px;font-size:.62rem;text-transform:uppercase;letter-spacing:.25em;font-weight:700;
  color:var(--warm-white);background:var(--maroon);padding:6px 14px;border-radius:999px;z-index:2;
}
.module-emblem{
  position:absolute;bottom:-32px;left:24px;width:80px;height:80px;border-radius:18px;
  background:var(--warm-white);border:4px solid var(--warm-white);box-shadow:var(--shadow-elegant);
  display:grid;place-items:center;font-size:32px;color:var(--maroon);z-index:2;
}
.module-content{padding:64px 28px 32px}
@media(min-width:768px){.module-content{padding:64px 36px 36px}}
.module-weeks{color:var(--orange-glow);font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.module-content h3{font-size:clamp(1.6rem,3vw,2.2rem);color:var(--maroon);line-height:1.15}
.module-summary{color:var(--muted-fg);margin-top:12px;line-height:1.65}
.points-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.25em;color:var(--gold-dark);font-weight:700;margin:28px 0 16px}
.points-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:640px){.points-grid{grid-template-columns:1fr 1fr}}
.point{
  display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:12px;
  background:hsl(42 85% 92% / .6);border:1px solid hsl(42 85% 52% / .2);
  transition:background .25s,border-color .25s;
}
.point:hover{background:hsl(42 85% 92%);border-color:hsl(22 95% 55% / .5)}
.point-num{
  width:24px;height:24px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;
  background:var(--grad-warm);color:var(--maroon);font-size:10px;font-weight:700;
}
.point span:last-child{font-size:.875rem;line-height:1.4}
.module-tags{margin-top:28px;padding-top:24px;border-top:1px solid hsl(42 85% 52% / .2);display:flex;flex-wrap:wrap;gap:8px}
.tag{font-size:.68rem;padding:6px 12px;border-radius:999px;font-weight:500}
.tag-maroon{background:var(--maroon);color:var(--warm-white)}
.tag-gold{background:hsl(42 85% 52% / .2);color:var(--maroon);border:1px solid hsl(42 85% 52% / .3)}
.tag-orange{background:hsl(22 95% 55% / .15);color:var(--orange-glow);border:1px solid hsl(22 95% 55% / .3)}
.tag-yellow{background:hsl(48 100% 60% / .2);color:var(--gold-dark);border:1px solid hsl(48 100% 60% / .4)}

.progress-row{display:flex;align-items:center;gap:16px;font-size:.78rem;color:var(--muted-fg);padding:16px 8px 0}
.progress-track{flex:1;height:4px;background:hsl(42 85% 92%);border-radius:999px;overflow:hidden}
.progress-bar{height:100%;background:linear-gradient(to right,var(--yellow-warm),var(--orange-glow),var(--maroon));transition:width .5s var(--ease);width:16%}

/* ===== Pricing ===== */
.pricing{position:relative}
.pricing-glow{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at center,hsl(42 85% 60% / .25),transparent 65%),
             radial-gradient(circle at 30% 80%,hsl(22 95% 60% / .2),transparent 60%);
}
.flame-pill{
  display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;
  border:1px solid hsl(22 95% 55% / .4);background:hsl(22 95% 55% / .1);color:var(--orange-glow);
  font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:20px;
}

.pricing-card{
  max-width:1300px;margin:0 auto;border-radius:28px;border:1px solid hsl(42 85% 52% / .4);
  background:var(--grad-card);box-shadow:var(--shadow-elegant);overflow:hidden;
  display:grid;grid-template-columns:1fr;
}
@media(min-width:768px){.pricing-card{grid-template-columns:3fr 2fr}}
.price-main{padding:40px 32px;border-bottom:1px solid hsl(42 85% 52% / .2)}
@media(min-width:768px){.price-main{padding:56px;border-bottom:0;border-right:1px solid hsl(42 85% 52% / .2)}}
.price-title{font-size:2rem;margin:8px 0 24px}
.price-row{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:6px}
.price-big{font-size:clamp(3rem,7vw,4.6rem);font-weight:500;line-height:1}
.check-list{display:flex;flex-direction:column;gap:12px;margin-bottom:36px}
.check-list li{display:flex;align-items:flex-start;gap:12px;color:hsl(350 55% 16% / .9)}
.check{width:22px;height:22px;border-radius:999px;background:hsl(42 85% 52% / .2);color:var(--gold);display:grid;place-items:center;font-size:11px;font-weight:700;flex:0 0 auto;margin-top:2px}

.price-bonus{padding:40px 32px;background:linear-gradient(to bottom right,hsl(42 85% 52% / .12),transparent)}
@media(min-width:768px){.price-bonus{padding:48px}}
.bonus-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--gold);color:var(--primary-fg);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}
.bonus-title{font-size:1.85rem;margin-bottom:4px}
.bonus-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.bonus-list li{display:flex;align-items:flex-start;gap:12px;font-size:.9rem}
.bonus-list .num{font-family:'Cormorant Garamond',serif;color:var(--gold);font-size:1.15rem;line-height:1;margin-top:2px}

/* ===== FAQ ===== */
.faq{display:flex;flex-direction:column;gap:12px}
.faq-item{border:1px solid var(--border);border-radius:18px;background:var(--grad-card);transition:border-color .3s;overflow:hidden}
.faq-item.open{border-color:hsl(42 85% 52% / .5)}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:20px 24px;font-family:'Cormorant Garamond',serif;font-size:1.25rem;text-align:left;
  color:var(--foreground);transition:color .25s;
}
.faq-q:hover{color:var(--gold)}
.faq-q .arrow{font-size:18px;transition:transform .35s;color:var(--gold)}
.faq-item.open .faq-q .arrow{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease),padding .35s}
.faq-a-inner{padding:0 24px 22px;color:var(--muted-fg);line-height:1.7;font-size:.95rem}
.faq-item.open .faq-a{max-height:600px}

/* ===== Footer ===== */
.footer{border-top:1px solid hsl(42 85% 52% / .2);padding:40px 24px;text-align:center;font-size:.85rem;color:var(--muted-fg)}
.footer-brand{font-size:1.1rem;margin-bottom:4px}

/* ===== Sticky CTA ===== */
.sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:50;transform:translateY(100%);
  transition:transform .5s var(--ease);
  background:var(--card);border-top:2px solid hsl(42 85% 52% / .4);box-shadow:var(--shadow-elegant);
}
.sticky-cta.show{transform:translateY(0)}
.sticky-cta.hide{transform:translateY(100%) !important}
.sticky-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px}
.sticky-left{display:flex;align-items:center;gap:12px;min-width:0}
.sticky-mark{
  width:40px;height:40px;border-radius:999px;background:hsl(42 85% 52% / .15);
  border:1px solid hsl(42 85% 52% / .4);color:var(--gold);display:grid;place-items:center;flex:0 0 auto;
}
.sticky-title{font-family:'Cormorant Garamond',serif;font-size:1.05rem;line-height:1.1}

/* ===== Animations ===== */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(2deg)}}
@keyframes pulse{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes pulseGlow{0%,100%{box-shadow:0 0 20px hsl(42 85% 52% / .35),0 0 40px hsl(22 95% 55% / .2)}50%{box-shadow:0 0 40px hsl(42 85% 52% / .65),0 0 80px hsl(22 95% 55% / .35)}}
.pulse-glow{animation:pulseGlow 2.8s ease-in-out infinite}

/* Responsive helpers */
@media(max-width:640px){
  .hide-sm{display:none !important}
  .float-badge.float-tr{right:8px;top:-12px}
  .float-badge.float-bl{left:8px;bottom:-12px}
  .nav{padding-top:20px}
  .section{padding:72px 0}
  .section-head{margin-bottom:40px}
  .price-main,.price-bonus{padding:28px 22px}
}

/* ============ Grand Entry ============ */
.grand-entry { position: fixed; inset: 0; z-index: 9999; pointer-events: none; }
.grand-entry.done { display: none; }
.curtain { position: absolute; left: 0; right: 0; height: 50%; transition: transform 1.5s cubic-bezier(0.77,0,0.18,1); }
.curtain-top { top: 0; background: linear-gradient(180deg, hsl(350 70% 8%) 0%, hsl(350 65% 14%) 100%); }
.curtain-bottom { bottom: 0; background: linear-gradient(0deg, hsl(350 70% 8%) 0%, hsl(350 65% 14%) 100%); }
.grand-entry.opening .curtain-top { transform: translateY(-100%); }
.grand-entry.opening .curtain-bottom { transform: translateY(100%); }
.curtain-edge { position: absolute; left: 0; right: 0; height: 1px; background: linear-gradient(to right, transparent, var(--gold), transparent); }
.curtain-top .curtain-edge { bottom: 0; } .curtain-bottom .curtain-edge { top: 0; }
.curtain-glow { position: absolute; left: 0; right: 0; height: 32px; bottom: 0; background: linear-gradient(to top, hsl(42 85% 52% / 0.3), transparent); filter: blur(8px); }
.curtain-glow-down { top: 0; bottom: auto; background: linear-gradient(to bottom, hsl(42 85% 52% / 0.3), transparent); }

.entry-center { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; transition: opacity .7s; }
.grand-entry.opening .entry-center { opacity: 0; }
.entry-radial-glow { position: absolute; width: 700px; height: 700px; max-width: 90vw; max-height: 90vw; border-radius: 50%; background: radial-gradient(circle at 50% 50%, hsl(46 95% 65% / 0.35), transparent 70%); opacity: .5; filter: blur(40px); animation: entry-glow-pulse 3.5s infinite; }
.entry-mandala { position: absolute; width: 500px; height: 500px; max-width: 80vw; max-height: 80vw; color: hsl(42 85% 52% / 0.4); animation: entry-mandala-spin 2.4s cubic-bezier(.4,0,.2,1) forwards; }
.entry-mandala .mandala-svg { width: 100%; height: 100%; }
.entry-ring { position: absolute; width: 128px; height: 128px; border-radius: 50%; border: 1px solid hsl(42 85% 52% / 0.6); animation: entry-ring-pulse 2.4s ease-out infinite; }
.entry-ring-1 { animation-delay: .2s; }
.entry-ring-2 { border-color: hsl(42 85% 52% / 0.4); animation-delay: .8s; }
.entry-ring-3 { border-color: hsl(42 85% 52% / 0.3); animation-delay: 1.4s; }

.entry-crest { position: relative; display: flex; flex-direction: column; align-items: center; animation: entry-crest-float 1.4s cubic-bezier(.4,0,.2,1) both; }
.entry-om { width: 112px; height: 112px; border-radius: 50%; background: linear-gradient(135deg, hsl(46 95% 65%), hsl(42 85% 45%)); box-shadow: 0 10px 40px -10px hsl(46 95% 55% / 0.45); display: flex; align-items: center; justify-content: center; font-family: 'Cormorant Garamond', serif; font-size: 3rem; color: hsl(350 65% 22%); border: 2px solid hsl(42 85% 52% / 0.6); animation: entry-om-bloom 1.6s cubic-bezier(.4,0,.2,1) .3s both; }
.entry-text { margin-top: 2rem; animation: entry-text-reveal 1.6s cubic-bezier(.4,0,.2,1) 1s both; text-align: center; }
.entry-eyebrow { font-family: 'Inter', serif; font-size: 12px; letter-spacing: .6em; text-transform: uppercase; color: var(--gold); margin-bottom: .75rem; }
.entry-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.8rem, 4vw, 3rem); color: var(--warm-white); letter-spacing: .1em; text-shadow: 0 0 30px hsl(42 85% 60% / 0.35), 0 2px 4px hsl(350 70% 8% / 0.5); }
.entry-sub { margin-top: 1rem; display: flex; align-items: center; justify-content: center; gap: .75rem; color: hsl(42 85% 52% / 0.7); }
.entry-sub .line { display: block; height: 1px; width: 40px; background: hsl(42 85% 52% / 0.6); }
.entry-cohort { font-size: 10px; letter-spacing: .5em; text-transform: uppercase; font-family: 'Inter', sans-serif;}

@keyframes entry-glow-pulse { 0%,100% { opacity: .6; transform: scale(1);} 50% { opacity: 1; transform: scale(1.05);} }
@keyframes entry-ring-pulse { 0% { transform: scale(.2); opacity: 0;} 20% { opacity: .9;} 100% { transform: scale(6); opacity: 0;} }
@keyframes entry-mandala-spin { 0% { transform: rotate(-90deg) scale(.4); opacity: 0;} 60% { opacity: 1;} 100% { transform: rotate(0deg) scale(1); opacity: 1;} }
@keyframes entry-om-bloom { 0% { transform: scale(0); opacity: 0; filter: blur(8px);} 60% { transform: scale(1.15); opacity: 1; filter: blur(0);} 100% { transform: scale(1); opacity: 1;} }
@keyframes entry-text-reveal { 0%,30% { opacity: 0; transform: translateY(14px); letter-spacing: .5em;} 100% { opacity: 1; transform: translateY(0);} }
@keyframes entry-crest-float { 0% { transform: translateY(20px); opacity: 0;} 40% { opacity: 1;} 100% { transform: translateY(0); opacity: 1;} }

/* ============ FINAL IMAGE & FOOTER CTA ============ */
.bg-pattern {
  position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image:
    radial-gradient(circle at 20% 20%, hsl(42 85% 52% / 0.08) 0, transparent 40%),
    radial-gradient(circle at 80% 60%, hsl(350 70% 35% / 0.08) 0, transparent 40%);
}
.bg-noise {
  position: absolute; inset: 0; pointer-events: none; opacity: .3;
  background-image:
    radial-gradient(hsl(42 85% 52% / 0.06) 1px, transparent 1px),
    radial-gradient(hsl(350 70% 35% / 0.05) 1px, transparent 1px);
  background-size: 28px 28px, 36px 36px;
  background-position: 0 0, 14px 14px;
}
.eyebrow-row { display: inline-flex; align-items: center; gap: .75rem; margin-bottom: 1.5rem; }
.eyebrow-row.center { display: flex; justify-content: center; }
.eyebrow-line { display: block; height: 1px; width: 40px; background: var(--gold); }
.eyebrow-text { font-family: 'Inter', serif; font-size: 11px; letter-spacing: .45em; text-transform: uppercase; color: var(--gold); font-weight: 600; }
.hero-h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.4rem, 5vw, 4.2rem); line-height: 1.05; color: var(--warm-white); margin: 0 0 1.25rem; text-shadow: 0 0 30px hsl(42 85% 60% / 0.35), 0 2px 4px hsl(350 70% 8% / 0.5); }
.muted-light { color: hsl(38 60% 92% / 0.75); }
.max-narrow { max-width: 640px; margin-left: auto; margin-right: auto; }
.btn-hero { background: linear-gradient(135deg, hsl(46 95% 65%), hsl(42 85% 45%)); color: hsl(350 65% 18%); box-shadow: 0 10px 40px -10px hsl(42 85% 55% / 0.45); }
.btn-hero:hover { transform: translateY(-2px); box-shadow: 0 14px 50px -10px hsl(42 85% 55% / 0.6); }
.btn-outline-gold { background: transparent; color: hsl(46 95% 65%); border: 1px solid hsl(42 85% 60% / 0.5); }
.btn-outline-gold:hover { background: hsl(42 85% 60% / 0.12); border-color: var(--gold); color: var(--gold); }

/* ===== Final image ===== */
.section-final { position: relative; height: 70vh; overflow: hidden; }
.final-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.1); animation: ken-burns 20s ease-in-out infinite alternate; }
.final-overlay { position: absolute; inset: 0; background: linear-gradient(to top, var(--maroon-deep), hsl(350 75% 22% / 0.5), transparent); }
.final-content { position: relative; z-index: 10; height: 100%; display: flex; align-items: center; justify-content: center; text-align: center; padding: 0 1.5rem; flex-direction: column; }
.final-flower { font-size: 3rem; color: var(--gold); margin-bottom: 1.5rem; animation: pulse 3.5s infinite; }
.final-quote { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.5rem, 3.5vw, 3rem); color: var(--warm-white); max-width: 800px; line-height: 1.3; margin: 0; }

/* ===== Footer CTA ===== */
.section-footer-cta { background: linear-gradient(135deg, var(--maroon-deep), hsl(350 70% 12%)); color: var(--warm-white); padding: 7rem 0; position: relative; overflow: hidden; }
.footer-radial { position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 600px; height: 600px; background: radial-gradient(circle at 50% 50%, hsl(46 95% 65% / 0.35), transparent 70%); opacity: .5; pointer-events: none; }
.footer-inner { position: relative; max-width: 800px; text-align: center; margin: 0 auto; z-index: 2; }
.cta-row.center { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin-top: 2rem; }
.trust-row { margin-top: 2.5rem; display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem 2rem; font-size: 11px; letter-spacing: .3em; text-transform: uppercase; color: hsl(38 60% 92% / 0.6); }
.footer-sign { margin-top: 3rem; font-family: 'Inter', serif; font-size: 13px; color: hsl(38 60% 92% / 0.5); letter-spacing: .4em; text-transform: uppercase; }

@keyframes ken-burns { 0% { transform: scale(1) translate(0,0);} 100% { transform: scale(1.12) translate(-1%,-1%);} }

/* ===== Stairs ===== */
.section-stairs { background: transparent; position: relative; overflow: hidden; }
.section-stairs::before, .section-stairs::after { content: ''; position: absolute; border-radius: 50%; filter: blur(100px); z-index: 0; pointer-events: none; opacity: 0.3; }
.section-stairs::before { top: -100px; left: -100px; width: 500px; height: 500px; background: hsl(46 95% 65% / 0.4); }
.section-stairs::after { bottom: -100px; right: -100px; width: 600px; height: 600px; background: hsl(350 70% 35% / 0.2); }

.timeline-container { position: relative; width: 100%; max-width: 1200px; margin: 0 auto; padding: 4rem 0; z-index: 1; }

.timeline-row { position: relative; margin-bottom: 3rem; width: 100%; display: flex; opacity: 0; transform: translateY(40px); transition: all 1.2s cubic-bezier(0.2, 0.8, 0.2, 1); }
.timeline-row.in-view { opacity: 1; transform: translateY(0); }

@media (min-width: 900px) {
  .timeline-row { width: 85%; }
  .timeline-row.timeline-left { justify-content: flex-start; margin-right: auto; margin-left: 0; transform: translateX(-60px) translateY(30px); }
  .timeline-row.timeline-left.in-view { opacity: 1; transform: translateX(0) translateY(0); }
  .timeline-row.timeline-right { justify-content: flex-end; margin-left: auto; margin-right: 0; transform: translateX(60px) translateY(30px); }
  .timeline-row.timeline-right.in-view { opacity: 1; transform: translateX(0) translateY(0); }
}

.premium-strip { border-radius: 1.5rem; background: linear-gradient(135deg, hsl(40 60% 98% / 0.95) 0%, hsl(40 60% 95% / 0.8) 100%); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); box-shadow: 0 10px 40px -10px hsl(350 65% 15% / 0.1), inset 0 0 0 1px hsl(46 95% 65% / 0.4); overflow: hidden; transition: all .6s cubic-bezier(0.2, 0.8, 0.2, 1); width: 100%; position: relative; display: flex; flex-direction: column; z-index: 1; }
@media (min-width: 900px) { 
  .premium-strip { flex-direction: row; align-items: stretch; height: 240px; } 
  .timeline-right .premium-strip { flex-direction: row-reverse; }
}
.premium-strip:hover { box-shadow: 0 30px 60px -15px hsl(46 95% 55% / 0.25), inset 0 0 0 1px hsl(46 95% 65% / 0.8); transform: translateY(-6px) scale(1.01); }

.timeline-img { position: relative; width: 100%; height: auto; aspect-ratio: 16/9; overflow: hidden; flex-shrink: 0; }
@media (min-width: 900px) { .timeline-img { width: 40%; height: auto; aspect-ratio: auto; } }
.timeline-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s var(--ease); }
.premium-strip:hover .timeline-img img { transform: scale(1.05); }

/* Removed fade mask to allow clean graphic display */
.timeline-img::after { display: none; }

.premium-strip::before { content: ''; position: absolute; top: 0; left: -100%; width: 50%; height: 100%; background: linear-gradient(to right, transparent, hsl(0 0% 100% / 0.6), transparent); transform: skewX(-20deg); transition: left 0.8s ease; z-index: 10; pointer-events: none; }
.premium-strip:hover::before { left: 200%; }

.timeline-img-overlay { display: none; }

/* Premium Tag */
.premium-tag { position: absolute; top: 20px; left: 20px; display: flex; align-items: center; gap: .5rem; z-index: 3; }
.premium-tag-num { font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 700; color: var(--gold); text-shadow: 0 2px 10px rgba(0,0,0,0.5); }
.premium-tag-text { font-size: 10px; letter-spacing: .4em; text-transform: uppercase; color: #fff; font-weight: 600; padding: .2rem .6rem; border-radius: 999px; background: hsl(0 0% 0% / 0.4); backdrop-filter: blur(4px); border: 1px solid hsl(46 95% 65% / 0.3); }
.timeline-right .premium-tag { left: auto; right: 20px; flex-direction: row-reverse; }

.timeline-info { padding: 2rem; position: relative; z-index: 2; flex: 1; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
@media (min-width: 900px) { .timeline-info { padding: 2rem 3rem; } }

/* Giant Watermark */
.watermark-number { position: absolute; top: 50%; right: 5%; transform: translateY(-50%); font-family: 'Cormorant Garamond', serif; font-size: clamp(6rem, 15vw, 14rem); font-weight: 800; color: var(--gold); opacity: 0.04; pointer-events: none; user-select: none; z-index: -1; line-height: 1; transition: all 1s var(--ease); }
.premium-strip:hover .watermark-number { transform: translateY(-50%) scale(1.1); opacity: 0.08; color: var(--orange-glow); }
.timeline-right .watermark-number { right: auto; left: 5%; }

.timeline-icon-title { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; position: relative; }
.timeline-icon { width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(135deg, var(--orange-glow) 0%, var(--gold) 100%); display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 20px var(--orange-glow); color: var(--maroon); font-size: 1.25rem; flex-shrink: 0; transition: transform 0.6s var(--ease); border: 2px solid #fff; }
.premium-strip:hover .timeline-icon { transform: scale(1.15) rotate(15deg); box-shadow: 0 8px 25px var(--gold); }

.premium-text-gold { background: linear-gradient(to right, var(--maroon) 20%, var(--orange-glow) 40%, var(--orange-glow) 60%, var(--maroon) 80%); background-size: 200% auto; -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-family: 'Cormorant Garamond', serif; font-size: clamp(1.6rem, 2.5vw, 2.2rem); margin: 0; font-weight: 700; animation: shimmer 6s linear infinite; }

.timeline-points { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: .75rem 1rem; position: relative; }
@media (min-width: 640px) { .timeline-points { grid-template-columns: 1fr 1fr; } }
.timeline-points li { display: flex; align-items: center; gap: .6rem; color: var(--maroon); font-weight: 600; font-size: .95rem; opacity: 0; transform: translateX(20px); transition: all 0.5s var(--ease); }
.timeline-row.in-view .timeline-points li { opacity: 1; transform: translateX(0); }
.timeline-right .timeline-points li { transform: translateX(-20px); }
.timeline-right.in-view .timeline-points li { transform: translateX(0); }
.timeline-row.in-view .timeline-points li:nth-child(1) { transition-delay: 0.2s; }
.timeline-row.in-view .timeline-points li:nth-child(2) { transition-delay: 0.3s; }
.timeline-row.in-view .timeline-points li:nth-child(3) { transition-delay: 0.4s; }
.timeline-row.in-view .timeline-points li:nth-child(4) { transition-delay: 0.5s; }
.timeline-row.in-view .timeline-points li:nth-child(5) { transition-delay: 0.6s; }
.timeline-points li::before { content: "✦"; color: var(--gold); font-size: 1.1rem; filter: drop-shadow(0 0 5px var(--orange-glow)); }
