
:root{
  --black:#060606;
  --ink:#111114;
  --panel:#17171b;
  --red:#d71920;
  --red2:#f02b31;
  --white:#fff;
  --paper:#f3f2ef;
  --muted:#a5a5ac;
  --line:rgba(255,255,255,.12);
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.6}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:16px;top:16px;z-index:999;background:white;color:black;padding:10px}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(5,5,6,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.header-inner{height:80px;width:min(var(--max),calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;color:white;font:900 1.3rem "Barlow Condensed",sans-serif;letter-spacing:.08em}
.brand img{width:54px;height:54px;border-radius:50%}
.nav{display:flex;align-items:center;gap:28px;color:white;font-size:.9rem;font-weight:700}
.nav a:hover{color:#ff4b51}
.nav-cta{background:var(--red);padding:13px 18px;text-transform:uppercase;letter-spacing:.05em}
.menu-btn{display:none;background:transparent;border:0}
.menu-btn span{display:block;width:28px;height:2px;background:white;margin:6px}
.hero{min-height:940px;position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:150px max(24px,calc((100vw - var(--max))/2)) 100px;background:radial-gradient(circle at 78% 48%,rgba(215,25,32,.24),transparent 28%),linear-gradient(120deg,#050505,#111114 58%,#060606);color:white}
.noise{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 92%)}
.hero-bg-mark{position:absolute;right:-.02em;bottom:-.15em;font:900 48vw "Barlow Condensed";line-height:1;color:rgba(255,255,255,.025);user-select:none}
.hero-copy,.hero-emblem{position:relative;z-index:2}
.kicker,.eyebrow{margin:0 0 18px;color:var(--red2);font-weight:800;font-size:.75rem;letter-spacing:.2em}
.eyebrow.light{color:#ff8c90}
.hero h1,.section h2,.trial h2{font-family:"Barlow Condensed",Impact,sans-serif;text-transform:uppercase;line-height:.92;letter-spacing:-.03em}
.hero h1{font-size:clamp(4.5rem,7.5vw,8rem);margin:0}
.hero h1 span{color:transparent;-webkit-text-stroke:2px white}
.lede{font-size:1.12rem;color:#d0d0d4;max-width:650px;margin:28px 0 34px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 26px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:.84rem;border:1px solid transparent;transition:.2s}
.btn:hover{transform:translateY(-2px)}
.primary{background:var(--red);color:white;border-color:var(--red)}
.primary:hover{background:var(--red2)}
.ghost{border-color:rgba(255,255,255,.45);color:white}
.micro-trust{display:flex;gap:20px;flex-wrap:wrap;margin-top:34px;color:#bdbdc2;font-size:.82rem}
.hero-emblem{display:grid;place-items:center;min-height:560px}
.hero-emblem img{width:min(520px,90%);border-radius:50%;filter:drop-shadow(0 35px 70px rgba(0,0,0,.75))}
.rings{position:absolute;width:82%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 38px rgba(255,255,255,.015),0 0 110px rgba(215,25,32,.2)}
.statement{background:var(--red);color:white}
.statement .wrap{padding:28px 0}
.statement p{margin:0;text-align:center;font:800 1.1rem "Barlow Condensed";letter-spacing:.08em}
.section{padding:110px 0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.section h2,.trial h2{margin:0;font-size:clamp(3.2rem,5vw,5.4rem)}
.rich-copy{font-size:1.08rem;color:#53535a}
.inline-link{color:var(--red);font-weight:800}
.section-head{text-align:center;max-width:760px;margin:0 auto 55px}
.section-head p:last-child{color:#66666d}
.programs,.reviews{background:white}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{min-height:390px;padding:34px;position:relative;overflow:hidden;background:#f2f1ee;border:1px solid #e1dfda}
.card.dark{background:#111114;color:white;border-color:#111114}
.card.red{background:var(--red);color:white;border-color:var(--red)}
.card-top{display:flex;justify-content:space-between;font-size:.72rem;letter-spacing:.08em}
.icon-mark{margin-top:58px;color:var(--red);font-size:2rem}
.card.red .icon-mark{color:white}
.card h3{font:800 2.5rem "Barlow Condensed";text-transform:uppercase;margin:20px 0 14px}
.card p{color:#5e5e64}
.card.dark p{color:#c0c0c5}.card.red p{color:#ffe7e8}
.schedule{background:linear-gradient(125deg,#080809,#17171b);color:white}
.schedule-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.schedule-intro p:not(.eyebrow){color:#b6b6bc;max-width:520px;margin:22px 0 30px}
.schedule-table{border:1px solid rgba(255,255,255,.12)}
.schedule-row{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;padding:25px 28px;border-bottom:1px solid rgba(255,255,255,.1)}
.schedule-row:last-child{border-bottom:0}
.schedule-row>div:first-child{display:flex;align-items:center;gap:18px}
.schedule-row span{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.22);color:#ff5c62;font:800 .8rem "Barlow Condensed"}
.schedule-row>div:last-child{text-align:right}
.schedule-row strong{display:block;font:800 1.25rem "Barlow Condensed";text-transform:uppercase}
.schedule-row small{color:#9f9fa5}
.featured-row{background:var(--red)}
.featured-row span{color:white}
.featured-row small{color:#ffe6e7}
.getting-started{background:linear-gradient(rgba(8,8,9,.95),rgba(8,8,9,.95)),repeating-linear-gradient(135deg,#18181b 0 2px,#0b0b0d 2px 18px);color:white}
.section-head.light p{color:#c1c1c6}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.1)}
.steps article{padding:40px;background:#111114}
.steps article>span{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--red);color:#ff5f65;font-weight:900}
.steps h3{font:800 2rem "Barlow Condensed";text-transform:uppercase;margin:26px 0 12px}
.steps p{color:#aaaab0}
.instructor-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.photo-frame{padding:24px;background:var(--red);transform:rotate(-1deg)}
.photo-placeholder{min-height:560px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.05),transparent),#111114;color:#75757b;text-align:center;font:800 2.4rem "Barlow Condensed"}
.instructor h3{font:800 2.2rem "Barlow Condensed";text-transform:uppercase;margin:32px 0 4px}
.meta{color:var(--red);font-weight:800;text-transform:uppercase;font-size:.82rem;letter-spacing:.07em}
blockquote{margin:32px 0 0;padding-left:24px;border-left:4px solid var(--red);font:700 1.45rem "Barlow Condensed";line-height:1.25}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.review-grid article{padding:34px;border:1px solid #dfddd8}
.stars{color:var(--red);letter-spacing:.14em}
.review-grid p{color:#4e4e54;min-height:120px}
.review-grid strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.trial{padding:100px 0;background:var(--red);color:white}
.trial-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.trial p{color:#ffe2e3}
.contact-mini{display:flex;flex-direction:column;gap:7px;margin-top:30px;font-weight:700}
.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#0b0b0d;padding:28px}
.lead-form label span{display:block;color:#aaaab0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:1px solid #303036;background:#17171b;color:white;padding:13px 14px;outline:none}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--red)}
.full{grid-column:1/-1}
.form-note{margin:0;font-size:.75rem!important;color:#9999a0!important}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
.contact-cards{display:grid;gap:14px;margin-top:35px}
.contact-cards a{display:block;padding:22px;background:white;border:1px solid #e1dfdb}
.contact-cards span{display:block;color:var(--red);font-size:.7rem;font-weight:800;letter-spacing:.09em}
.contact-cards strong{display:block;margin-top:8px;font:800 1.3rem "Barlow Condensed"}
.map-wrap{min-height:520px;border:10px solid white;box-shadow:0 18px 50px rgba(0,0,0,.12)}
.map-wrap iframe{width:100%;height:100%;border:0;min-height:500px}
.footer{background:#050505;color:white;padding:45px 0 20px}
.footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:center}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand img{width:64px;height:64px;border-radius:50%}
.footer-brand strong,.footer-brand span{display:block}
.footer-brand strong{font:900 1.2rem "Barlow Condensed";letter-spacing:.08em}
.footer-brand span{color:#85858b;font-size:.76rem}
.footer nav{display:flex;gap:20px;font-size:.86rem;font-weight:700}
.footer-contact{display:flex;flex-direction:column;font-size:.82rem;color:#b0b0b5}
.copyright{border-top:1px solid rgba(255,255,255,.08);margin-top:30px;padding-top:18px;color:#727278;font-size:.75rem}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){
 .menu-btn{display:block}.nav{display:none;position:absolute;top:80px;left:0;width:100%;padding:18px 24px 24px;background:#080809;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.brand span{display:none}
 .hero{grid-template-columns:1fr;padding-top:125px}.hero-emblem{order:-1;min-height:360px}.hero-emblem img{width:min(350px,80vw)}
 .two-col,.schedule-grid,.instructor-grid,.trial-grid,.contact-grid{grid-template-columns:1fr;gap:48px}
 .cards,.steps,.review-grid{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr;text-align:center}.footer-brand,.footer nav{justify-content:center}
}
@media(max-width:620px){
 .wrap{width:min(100% - 30px,var(--max))}.header-inner{width:calc(100% - 30px);height:72px}.nav{top:72px}
 .hero{min-height:auto;padding:112px 15px 75px}.hero h1{font-size:4rem}.hero h1 span{-webkit-text-stroke:1px white}
 .micro-trust{flex-direction:column;gap:8px}.section{padding:78px 0}
 .schedule-row{grid-template-columns:1fr;gap:12px}.schedule-row>div:last-child{text-align:left;padding-left:64px}
 .lead-form{grid-template-columns:1fr}.lead-form label,.full{grid-column:1}
 .photo-placeholder{min-height:420px}.footer nav{flex-wrap:wrap}
}
.instructor-photo {
  width: 100%;
  min-height: 560px;
  object-fit: cover;
  display: block;
}