:root{
  --bg:#050607;
  --bg-soft:#0a0b0e;
  --text:#f6f6f2;
  --muted:#a8a9b0;
  --line:rgba(255,255,255,.10);
  --gold-1:#fff1a6;
  --gold-2:#f4c94f;
  --gold-3:#b77912;
  --gold:#e7bd46;
  --shadow:0 25px 80px rgba(0,0,0,.55);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 10% 15%, rgba(226,174,53,.11), transparent 26rem),
    radial-gradient(circle at 88% 35%, rgba(255,218,111,.07), transparent 30rem),
    linear-gradient(135deg,#040506,#08090b 48%,#040506);
  color:var(--text);
  font-family:"DM Sans",system-ui,sans-serif;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.20;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:70px 70px;
  mask-image:linear-gradient(to bottom,black,transparent 85%);
}
a{color:inherit;text-decoration:none}
button{font:inherit}
.page-glow{position:fixed;width:420px;height:420px;border-radius:50%;filter:blur(100px);opacity:.10;pointer-events:none;z-index:-1}
.page-glow-one{background:#e8b83f;top:12%;left:-220px}
.page-glow-two{background:#fff0a0;right:-260px;top:55%}

.site-header{
  width:min(1200px,calc(100% - 28px));
  min-height:78px;
  margin:16px auto 0;
  padding:10px 12px 10px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  position:sticky;
  top:10px;
  z-index:50;
  background:rgba(7,8,10,.78);
  border:1px solid rgba(255,255,255,.11);
  border-radius:22px;
  backdrop-filter:blur(20px);
  box-shadow:0 16px 50px rgba(0,0,0,.38);
}
.header-left{display:flex;align-items:center;min-width:0}
.header-brand{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.header-logo{
  width:60px !important;
  height:60px !important;
  max-width:none !important;
  max-height:none !important;
  flex:0 0 20px !important;
  object-fit:contain;
  display:block;
}
.header-wordmark{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  line-height:.88;
  white-space:nowrap;
  font-family:"DM Sans",system-ui,sans-serif;
  font-weight:800;
}
.wordmark-top{
  color:#f0c74f !important;
  font-size:9px !important;
  font-family: 'Times New Roman', Times, serif;
  line-height:1 !important;
  letter-spacing:.04em;
}
.wordmark-bottom{
  color:#ffffff !important;
  font-size:15px !important;
  font-family: 'Times New Roman', Times, serif;
  line-height:1 !important;
  letter-spacing:.01em;
  margin-top:5px;
}
.header-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex:0 0 auto;
}
.gold-button,.outline-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-radius:999px;
  padding:17px 29px;
  font-size:18px;
  font-family: 'Times New Roman', Times, serif;
  font-weight:800;
  letter-spacing:.08em;
  transition:transform .2s,box-shadow .2s,filter .2s;
  cursor:pointer;
}
.header-start-button {
  min-width: 110px !important;
  width: 117px !important;
  height: 37px !important;
  padding: 0 11px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  font-family: 'Times New Roman', Times, serif;
  border-radius: 27px;
}

.gold-button{
  color:#17130a;
  background:linear-gradient(110deg,var(--gold-1),var(--gold-2) 48%,var(--gold-3));
  box-shadow:0 12px 35px rgba(226,178,47,.20),inset 0 1px 0 rgba(255,255,255,.75);
}
.gold-button:hover{transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 18px 45px rgba(226,178,47,.30)}
.outline-button{
  color:#eee;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.035);
}
.outline-button:hover{transform:translateY(-2px);border-color:rgba(236,198,91,.55)}
.menu-button{
  display:block !important;
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.15);
  background:#0d0e11;
  color:white;
  cursor:pointer;
}
.menu-button span{
  display:block;
  width:18px;
  height:2px;
  background:#fff;
  margin:4px auto;
  border-radius:5px;
}

.menu-button.active span:nth-child(1) {
  transform: translateY(6px) rotate(45deg);
}

.menu-button.active span:nth-child(2) {
  opacity: 0;
}

.menu-button.active span:nth-child(3) {
  transform: translateY(-6px) rotate(-45deg);
}

.menu-button span {
  transition: transform .25s ease, opacity .2s ease;
}

.desktop-nav{display:none}


section{position:relative}
.hero{
  min-height:760px;width:min(1180px,calc(100% - 36px));margin:0 auto;
  padding:115px 20px 90px;text-align:center;display:flex;align-items:center;flex-direction:column;
}
.hero:before{
  content:"";position:absolute;top:110px;left:50%;transform:translateX(-50%);
  width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(229,188,70,.16),transparent 65%);
  filter:blur(20px);z-index:-1;
}
.hero-kicker,.section-label{
  color:#d6b653;font-size:10px;font-weight:800;letter-spacing:.25em;margin-top: -50px;
}
.hero-kicker{display:flex;gap:10px;align-items:center}
.hero-kicker span{width:32px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.hero h1{
  font-family:"Playfair Display",serif;font-size:clamp(52px,7vw,109px);
  line-height:.91;letter-spacing:-.055em;margin:30px 0 28px;max-width:900px;
}.hero h1 {
  font-size: 56px !important;
}
.hero h1 span,h2 span{background:linear-gradient(105deg,var(--gold-1),var(--gold-2) 48%,var(--gold-3));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{max-width:720px;color:#b9bbc2;font-size:18px;line-height:1.8;margin:0; margin-bottom: 20px;}
.hero-pills{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin:27px 0}
.hero-pills span{padding:8px 13px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#aeb0b7;font-size:11px;background:rgba(255,255,255,.025)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.hero-note{
  margin-top:45px;
  color:#bfc0c5;
  font-size:18px;
  font-family: 'Times New Roman', Times, serif;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.02em;
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:center;
  margin-bottom: -60px;
}
.hero-note strong{
  color:#f0c74f;
  font-weight:800;
}
.note-line{width:38px;height:1px;background:var(--gold)}

.section-shell{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:105px 20px}
.section-label{margin-bottom:22px}
h2{font-family:"Playfair Display",serif;font-size:clamp(38px,5vw,68px);line-height:1.03;letter-spacing:-.045em;margin:0}
p{color:var(--muted);line-height:1.8}
.video-card{
  margin-top:35px;padding:6px;border-radius:34px;
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.10);box-shadow:var(--shadow);
  height: 400px;margin-bottom: -40px;
}
.video-player-wrap{
  height: 386px;border-radius:27px;position:relative;overflow:hidden;
  
  background:#08090b;
}
.founder-intro-video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;background:#08090b;
}

.video-play-overlay span{font-size:22px}
.video-play-overlay:hover{transform:translate(-50%,-50%) scale(1.06)}
.video-label{position:absolute;bottom:28px;left:30px;font-size:10px;letter-spacing:.2em;color:#fff;z-index:4;text-shadow:0 2px 10px #000}
.about{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.about-copy p{max-width:680px}
.text-link{display:inline-flex;gap:10px;color:var(--gold-2);font-weight:700;font-size:13px;margin-top:10px}
.about-card{
  min-height:420px;border-radius:35px;border:1px solid rgba(230,190,75,.18);
  background:radial-gradient(circle at 50% 45%,rgba(224,177,49,.13),transparent 42%),rgba(255,255,255,.025);
  position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:1px;padding:20px;
}
.card-orbit{position:absolute;inset:15%;border:1px solid rgba(232,190,74,.22);border-radius:50%;box-shadow:0 0 70px rgba(226,179,45,.10)}
.about-stat{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;border-top:1px solid rgba(255,255,255,.08)}
.about-stat strong{font-family:"Playfair Display";font-size:40px;color:var(--gold-2)}
.about-stat span{color:#96979e;font-size:12px;text-transform:uppercase;letter-spacing:.16em}
.founder-card{display:grid;grid-template-columns:.95fr 1.05fr;gap:35px;margin-top: -80px;padding:10px;border-radius:35px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.025)}
.founder-image-placeholder{min-height:430px;border-radius:27px;overflow:hidden;display:grid;place-items:center;color:#9d9ea5;font-size:11px;letter-spacing:.18em;background:radial-gradient(circle at 50% 40%,rgba(232,188,64,.18),transparent 35%),linear-gradient(135deg,#17181a,#0a0b0d)}
.founder-image-placeholder img{width:100%;height:100%;min-height:430px;object-fit:cover;display:block}
.founder-copy{padding:55px 45px 45px 10px}.founder-copy p{max-width:500px;margin:25px 0 30px}
.classes-heading,.reviews-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}
.classes-heading p,.reviews-heading p{max-width:560px}
.class-count{font-family:"Playfair Display";font-size:65px;color:var(--gold-2);line-height:.7;text-align:right}
.class-count small{display:block;font-family:"DM Sans";font-size:9px;color:#8e8f95;letter-spacing:.2em;margin-top:15px}
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.course-card{min-height:255px;padding:25px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012));transition:.25s;position:relative;overflow:hidden}
.course-card:after{content:"";position:absolute;width:130px;height:130px;right:-60px;bottom:-70px;border-radius:50%;background:rgba(229,186,62,.12);filter:blur(25px)}
.course-card:hover{transform:translateY(-5px);border-color:rgba(230,190,75,.28)}
.course-icon{
  width:52px;height:52px;border-radius:16px;margin-bottom:20px;
  display:grid;place-items:center;
  background:linear-gradient(145deg,rgba(255,241,166,.16),rgba(183,121,18,.08));
  border:1px solid rgba(235,194,75,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 35px rgba(0,0,0,.20);
}
.course-icon svg{width:25px;height:25px;fill:none;stroke:var(--gold-2);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.course-card>span{font-size:10px;color:var(--gold-2);letter-spacing:.15em}
.course-card h3{font-family:"Playfair Display";font-size:23px;margin:35px 0 12px}
.course-card p{font-size:13px;line-height:1.65;margin:0}
.benefits-panel{padding:65px;margin-top: -60px;margin-bottom: -60px;border-radius:35px;border:1px solid rgba(230,190,75,.20);background:radial-gradient(circle at 20% 50%,rgba(226,178,46,.13),transparent 45%),rgba(255,255,255,.025)}
.benefits-panel h2{max-width:650px}
.benefit-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin:40px 0}
.benefit-list div{display:flex;gap:18px;padding:20px 0;border-top:1px solid rgba(255,255,255,.08)}
.benefit-list b{color:var(--gold-2);font-size:11px}.benefit-list span{color:#b5b6bc;font-size:13px;line-height:1.6}
.benefits{display:grid;grid-template-columns:1fr 350px;gap:18px;align-items:stretch}
.price-card{padding:45px;border-radius:35px;background:linear-gradient(150deg,#e8c964,#9d680e);color:#16120a;display:flex;flex-direction:column;justify-content:center}
.price-eyebrow{font-size:10px;font-weight:900;letter-spacing:.2em}.price-card h3{font-family:"Playfair Display";font-size:35px;margin:18px 0 5px}.price-card p{color:#2d281c;font-size:13px}.price-placeholder{font-family:"Playfair Display";font-size:36px;margin:20px 0}.price-placeholder small{font-family:"DM Sans";font-size:8px;letter-spacing:.18em}
.price-card .gold-button{background:#17130a;color:#f2d36d;box-shadow:none}
.review-track{overflow:hidden;cursor:grab}
.review-track:active{cursor:grabbing}
.review-track-inner{display:flex;gap:15px;width:max-content;will-change:transform}
.review-card{width:min(365px,calc((100vw - 80px)/3));min-width:280px;padding:30px;border-radius:27px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.025)}
.stars{color:var(--gold-2);letter-spacing:4px;font-size:12px}.review-card p{font-size:14px;min-height:105px}.review-person{display:flex;gap:12px;align-items:center}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:900;color:#17130a;background:linear-gradient(145deg,var(--gold-1),var(--gold-3))}.review-person strong{display:block;font-size:13px}.review-person small{display:block;color:#777980;margin-top:4px}
.slider-controls{display:flex;gap:8px}.slider-btn{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.13);background:#0c0d10;color:white;cursor:pointer}.slider-btn:hover{border-color:var(--gold)}
.final-cta{text-align:center;margin-top: -40px;padding-bottom:130px}.final-cta-inner{padding:85px 30px;border-radius:38px;background:radial-gradient(circle at 50% 0,rgba(232,190,70,.16),transparent 55%),rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.09)}.final-cta h2{margin-bottom:18px}.final-cta p{margin:0 auto 30px;max-width:500px}
footer{border-top:1px solid rgba(255,255,255,.08);background:#040506}
.footer-top{width:min(1180px,calc(100% - 36px));margin:auto;padding:70px 20px;display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:60px}
.footer-brand p{max-width:380px;font-size:13px}.footer-column{display:flex;flex-direction:column;gap:15px}.footer-column h4{font-size:10px;letter-spacing:.2em;color:var(--gold-2);margin:0 0 7px}.footer-column a,.footer-column span{font-size:12px;color:#92939a;line-height:1.6}.footer-column a:hover{color:#fff}
.footer-bottom{width:min(1180px,calc(100% - 36px));margin:auto;padding:22px 20px 30px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;gap:20px;color:#64666d;font-size:9px;letter-spacing:.1em}
footer .brand-logo {
  width: 100px !important;
  height: 80px !important;
  object-fit: contain !important;
}

@media(max-width:900px){
  .header-start-button{display:inline-flex !important}
  .header-actions{gap:7px}
  .mobile-menu{position:fixed;top:102px;left:18px;right:18px;z-index:49;padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(7,8,10,.95);backdrop-filter:blur(18px);display:none;flex-direction:column;gap:8px}
  .mobile-menu.open{display:flex}
  .mobile-menu a:not(.gold-button){padding:13px;color:#c8c9ce}
  .about,.founder-card,.benefits{grid-template-columns:1fr}
  .founder-copy{padding:25px}
  .course-grid{grid-template-columns:1fr 1fr}
  .benefits-panel{padding:40px}
  .price-card{min-height:300px}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .site-header{width:calc(100% - 16px);margin-top:9px;top:7px;min-height:66px;border-radius:19px;padding:8px 9px 8px 11px}
  .header-brand{gap:7px}
  .header-logo{width:39px;height:39px;flex-basis:39px}
  .wordmark-top{font-size:9px;letter-spacing:.045em}
  .wordmark-bottom{font-size:18px;letter-spacing:.005em;margin-top:4px}
  .header-start-button{padding:10px 12px;font-size:8px;gap:5px}
  .menu-button{width:40px;height:40px;flex-basis:40px}
  .hero{min-height:auto;padding:95px 8px 75px}.hero h1{font-size:57px}.hero-lead{font-size:15px}.hero-note{line-height:1.7}
  .section-shell{padding:75px 8px}.video-player-wrap{min-height:330px}.about-card{min-height:330px}.founder-image-placeholder{min-height:300px}
  .classes-heading,.reviews-heading{align-items:start;flex-direction:column}.class-count{text-align:left}.course-grid{grid-template-columns:1fr}.course-card{min-height:200px}.benefit-list{grid-template-columns:1fr}.benefits-panel{padding:30px}.price-card{padding:35px}.review-track{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.review-card{min-width:88%;scroll-snap-align:start}.footer-top{grid-template-columns:1fr;gap:35px}.footer-bottom{flex-direction:column}
  .hero-actions{width:100%}.hero-actions .gold-button,.hero-actions .outline-button{width:100%}
}

.footer-bottom a{color:#777980}
.footer-bottom a:hover{color:var(--gold-2)}


/* Desktop menu fix */
@media(min-width:901px){
  .mobile-menu{
    display:none !important;
    position:fixed;
    top:105px;
    right:28px;
    left:auto;
    width:280px;
    z-index:9999;
    padding:18px;
    border:1px solid var(--line);
    border-radius:22px;
    background:rgba(7,8,10,.96);
    backdrop-filter:blur(18px);
    flex-direction:column;
    gap:8px;
    box-shadow:0 20px 60px rgba(0,0,0,.5);
  }

  .mobile-menu.open{
    display:flex !important;
  }

  .mobile-menu a:not(.gold-button){
    padding:13px;
    color:#c8c9ce;
  }
}
