:root{--black:#0a0a0a;--dark:#171717;--yellow:#ffd21f;--white:#fff;--gray:#f3f3f3;--muted:#b7b7b7;--line:#292929;--max:1180px}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}

.nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(10,10,10,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.logo{font-weight:950;letter-spacing:1px;font-size:24px}
.logo span{color:var(--yellow)}
.navlinks{display:flex;gap:22px;align-items:center;font-size:13px;font-weight:800;text-transform:uppercase}
.navlinks a:hover{color:var(--yellow)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border:2px solid var(--yellow);background:var(--yellow);color:#000;font-weight:950;text-transform:uppercase;letter-spacing:.4px;transition:.25s;cursor:pointer}
.btn:hover{transform:translateY(-2px);background:#fff;border-color:#fff}
.btn.outline{background:transparent;color:#fff}
.btn.outline:hover{color:#000 !important;background:#fff !important;border-color:#fff !important}
.mobile-toggle{display:none;background:none;border:0;color:#fff;font-size:26px}

.hero{min-height:92vh;padding-top:78px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.55)),url('https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=2200&q=85') center/cover}
.hero:after{content:"";position:absolute;right:-80px;bottom:-100px;width:45vw;height:45vw;border:70px solid rgba(255,210,31,.12);border-radius:50%}

.hero-content{position:relative;z-index:2;max-width:780px;padding:90px 0;margin-left:calc((100% - min(var(--max),calc(100% - 40px))) / 2);margin-right:0;text-align:left}

.eyebrow{color:var(--yellow);font-size:13px;font-weight:900;letter-spacing:2px;text-transform:uppercase}

.hero h1{
  font-family:Impact,'Arial Narrow',Arial,sans-serif;
  font-size:clamp(60px,9vw,128px);
  font-weight:400;
  line-height:.88;
  margin:18px 0 26px;
  letter-spacing:-2px
}

.hero h1 span{color:var(--yellow)}
.hero p{max-width:650px;font-size:18px;color:#ddd}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.rating{display:flex;gap:12px;align-items:center;margin-top:25px;font-weight:800}
.stars{color:var(--yellow);letter-spacing:3px}

.section{padding:100px 0}
.section.light{background:var(--gray);color:#111}
.section.dark{background:var(--dark)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}
.kicker{color:var(--yellow);font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.section h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(40px,5vw,72px);line-height:.95;margin:8px 0 0;letter-spacing:-1px}
.section-head p{max-width:520px;color:#aaa;margin:0}
.light .section-head p{color:#555}

.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.feature,.card{background:var(--dark);border:1px solid var(--line);padding:28px;transition:.25s}
.feature:hover,.card:hover{transform:translateY(-6px);border-color:var(--yellow)}
.icon{font-size:30px;color:var(--yellow);margin-bottom:18px}
.feature h3,.card h3{margin:0 0 8px;font-size:20px}
.feature p,.card p{color:#aaa;margin:0}
.image{min-height:420px;background:center/cover;border-radius:2px}
.split-copy h2{margin-bottom:20px}
.split-copy p{color:#aaa}
.checklist{padding:0;margin:25px 0;list-style:none}
.checklist li{margin:10px 0}
.checklist li:before{content:'✓';color:var(--yellow);font-weight:900;margin-right:10px}

.program-img{height:240px;background:center/cover;margin:-28px -28px 22px}
.program-card{overflow:hidden}
.program-card .arrow{display:inline-block;margin-top:20px;color:var(--yellow);font-weight:900}
.price-card{position:relative}
.price-card.featured{border:2px solid var(--yellow);transform:translateY(-8px)}
.tag{position:absolute;right:18px;top:18px;background:var(--yellow);color:#000;padding:5px 9px;font-size:10px;font-weight:900}
.price{font-size:18px;color:var(--yellow);font-weight:900;margin:20px 0}
.price-card ul{padding-left:20px;color:#aaa}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat{padding:25px;border-left:3px solid var(--yellow)}
.stat strong{display:block;font-size:42px;font-family:Impact,'Arial Black',sans-serif}
.stat span{color:#aaa}

.testimonial{background:#111;border:1px solid #2c2c2c;padding:28px}
.quote{font-size:40px;color:var(--yellow);line-height:1}
.testimonial p{color:#ddd}
.person{font-weight:900}

.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gallery a{display:block;overflow:hidden}
.gallery img{width:100%;height:250px;object-fit:cover;transition:.4s}
.gallery a:hover img{transform:scale(1.06)}

.cta{background:var(--yellow);color:#000;padding:75px 0}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.cta h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(40px,6vw,76px);line-height:.9;margin:0}
.cta p{max-width:600px}
.cta .btn{background:#000;color:#fff;border-color:#000}
.cta .btn:hover{background:#fff;color:#000;border-color:#fff}

.page-hero{padding:165px 0 85px;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.55)),url('https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=2000&q=85') center/cover}
.page-hero h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(55px,8vw,100px);line-height:.9;margin:15px 0}
.page-hero p{max-width:650px;color:#ccc}

.form{display:grid;gap:14px}
.form input,.form select,.form textarea{width:100%;background:#111;border:1px solid #333;color:#fff;padding:14px 15px;outline:none}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--yellow)}
.form textarea{min-height:140px;resize:vertical}
.contact-box{padding:30px;background:#111;border:1px solid #2d2d2d}
.faq{border-bottom:1px solid #333}
.faq summary{cursor:pointer;padding:20px 0;font-weight:900}
.faq p{color:#aaa;padding:0 0 20px;margin:0}

.footer{padding:65px 0 20px;background:#050505;border-top:1px solid #222}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}
.footer h3{color:var(--yellow)}
.footer p,.footer a{color:#aaa}
.footer a:hover{color:#fff}
.copyright{border-top:1px solid #222;margin-top:45px;padding-top:18px;color:#777;font-size:13px}

.reveal{animation:up .7s both}
.delay{animation-delay:.15s}

@keyframes up{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:none}
}

@media(max-width:900px){
  .navlinks{display:none}
  .mobile-toggle{display:block}
  .nav .btn{display:none}
  .grid4{grid-template-columns:repeat(2,1fr)}
  .grid3,.grid2{grid-template-columns:1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .cta-inner{flex-direction:column;align-items:flex-start}
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:560px){
  .container{width:min(100% - 28px,var(--max))}
  .nav-inner{height:68px}
  .logo{font-size:20px}
  .hero{padding-top:68px;min-height:88vh}
  .hero h1{font-size:62px}
  .hero p{font-size:16px}
  .section{padding:70px 0}
  .section-head{display:block}
  .section-head p{margin-top:18px}
  .grid4,.stats,.gallery,.footer-grid{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .feature,.card{padding:22px}
  .program-img{margin:-22px -22px 18px}
  .price-card.featured{transform:none}
  .image{min-height:300px}
  .actions .btn{width:100%}
  .page-hero{padding:135px 0 65px}
  .gallery img{height:220px}
  .cta{padding:60px 0}
}