:root{color-scheme:dark;--black:#101011;--panel:#19191b;--soft:#222225;--white:#f6f5f2;--muted:#a5a3a0;--red:#ed2027;--line:#38383b;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);-webkit-font-smoothing:antialiased}
a{color:inherit}
button,input,select,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #fff;outline-offset:3px}
.wrap{width:min(100% - 48px,1220px);margin-inline:auto}
.skip-link{position:absolute;left:-9999px;z-index:30;background:var(--white);color:var(--black);padding:12px}
.skip-link:focus{left:12px;top:12px}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1220px)/2));background:#111113;position:relative;z-index:3;border-bottom:1px solid #29292b}
.wordmark{font-family:Arial Black,Arial,sans-serif;font-size:31px;font-weight:900;line-height:1;letter-spacing:-2.8px;text-decoration:none}
.mark-red,.red-period{color:var(--red)}
.header-location,.header-contact,.eyebrow,.hero-kicker,.hero-bottom,.hero-note,.benefit-number,.step-number,.tag-list,.form-heading,.site-footer,.button{font-size:11px;font-weight:800;letter-spacing:1.6px}
.header-location{color:#bbb;letter-spacing:1.2px}
.header-location span{color:var(--red);padding-inline:8px}
.header-contact{text-decoration:none;border-bottom:1px solid var(--red);padding-bottom:6px}
.header-contact span{color:var(--red);font-size:15px}
.hero{min-height:670px;height:calc(100svh - 84px);max-height:850px;position:relative;overflow:hidden;display:flex;align-items:center}
.hero-image{position:absolute;inset:0;background:url('assets/training-hero-alex.jpg') center right 33%/cover no-repeat}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,8,.95) 0%,rgba(7,7,8,.82) 34%,rgba(7,7,8,.24) 76%),linear-gradient(0deg,rgba(7,7,8,.8),transparent 25%)}
.hero-content{position:relative;z-index:1;padding-bottom:40px}
.eyebrow{color:var(--red);margin:0 0 24px}
.red-line{display:inline-block;width:25px;height:2px;background:var(--red);vertical-align:middle;margin-right:12px}
.hero-kicker{color:#e4e2e0;margin:0 0 14px}
.hero h1,h2,h3,.form-heading{font-family:Impact,Arial Narrow,Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.02em}
.hero h1{font-size:clamp(56px,7vw,112px);line-height:.96;margin:0 0 27px;max-width:880px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero-copy{font-size:19px;line-height:1.55;color:#dedbd8;max-width:490px;margin:0 0 32px}
.button{min-height:58px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 23px;text-decoration:none;border:0;cursor:pointer;transition:background .2s ease,transform .2s ease}
.button:hover{transform:translateY(-2px)}
.button-red{background:#d71920;color:white}
.button-red:hover{background:#c51018}
.button span{font-size:18px;font-weight:400;line-height:1}
.hero-note{color:#a8a4a1;letter-spacing:.6px;margin:17px 0 0}
.hero-bottom{position:absolute;bottom:26px;left:0;right:0;display:flex;justify-content:space-between;color:#9a9998;z-index:1}
.section-pad{padding-block:116px}
.section-heading{margin-bottom:48px}
h2{font-size:clamp(40px,5vw,72px);line-height:1.02;margin:0}
h2 span:not(.red-period){color:#878584}
.benefits{background:#151516}
.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.benefit-grid article{padding:35px 40px 12px 0;border-right:1px solid var(--line);min-height:190px}
.benefit-grid article+article{padding-left:40px}
.benefit-grid article:last-child{border-right:0}
.benefit-number,.step-number{color:var(--red)}
h3{font-size:27px;line-height:1.1;margin:28px 0 12px}
.benefit-grid p,.steps-list p{color:#b5b1ae;line-height:1.6;margin:0;max-width:295px}
.approach{background:var(--black)}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}
.approach-copy{padding-top:37px}
.approach-copy>p{color:#aba8a5;line-height:1.7;font-size:17px;margin:0 0 28px;max-width:520px}
.approach-copy .large-copy{font-size:29px;line-height:1.3;font-weight:700;letter-spacing:-.03em;color:var(--white)}
.tag-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:35px;font-size:10px;letter-spacing:1.1px}
.tag-list span{border:1px solid #515052;padding:12px 14px}
.testimonial{background:#1b1b1d;color:white;border-top:1px solid #353538;border-bottom:1px solid #353538}
.quote-grid{display:grid;grid-template-columns:1fr 2fr;gap:5%}
.testimonial .eyebrow{color:var(--red);padding-top:20px}
.testimonial blockquote{margin:0;position:relative;border-left:4px solid var(--red);padding-left:34px}
.quote-mark{position:absolute;top:-80px;left:-50px;opacity:.28;color:var(--red);font:220px Georgia,serif}
.testimonial blockquote p{position:relative;font-size:clamp(29px,3.6vw,47px);font-weight:700;line-height:1.22;letter-spacing:-.04em;margin:0 0 30px}
.testimonial blockquote footer{font-size:16px;font-weight:700}
.steps{background:#151516}
.steps-list{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.steps-list li{display:flex;gap:24px;padding:32px 24px 0 0;border-right:1px solid var(--line)}
.steps-list li+li{padding-left:28px}
.steps-list li:last-child{border-right:0}
.steps-list h3{font-size:22px;margin:0 0 12px}
.intake{background:#101011;scroll-margin-top:20px}
.intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
.intake-intro h2{font-size:clamp(52px,6vw,92px)}
.intake-intro>p:not(.eyebrow){font-size:19px;line-height:1.6;color:#b8b4b0;max-width:440px}
.intake-aside{margin-top:55px;border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column;align-items:start;gap:12px}
.small-red-line{width:36px;height:3px;background:var(--red)}
.intake-aside strong{font-size:15px}
.intake-aside a{font-size:12px;font-weight:800;letter-spacing:1px;color:var(--red);text-underline-offset:5px}
.form-panel{background:var(--panel);border:1px solid #343437;padding:40px}
.form-heading{font-size:23px;letter-spacing:-.03em;margin:0 0 26px}
.form-row{margin-bottom:17px}
.form-row label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}
.form-row label span{color:var(--red)}
.form-row input,.form-row select,.form-row textarea{width:100%;border:1px solid #505052;border-radius:0;background:#111112;color:white;min-height:48px;padding:13px 14px;font-size:15px;outline:none}
.form-row textarea{resize:vertical;min-height:88px}
.form-row input::placeholder,.form-row textarea::placeholder{color:#858386}
.form-row select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='m1 1 6 6 6-6' fill='none' stroke='%23ddd' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--red);outline:1px solid var(--red)}
.honey{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.submit-button{width:100%;margin-top:9px}
.submit-button:disabled{opacity:.65;cursor:wait}
.consent{font-size:11px;line-height:1.5;color:#a4a0a0;margin:18px 0 0}
.form-error{background:#451b1d;border:1px solid var(--red);padding:12px;color:white;font-size:13px;line-height:1.45}
.form-success{padding:32px 0}
.success-icon{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--red);font-size:27px}
.form-success h3{margin:20px 0 10px;font-size:35px}
.form-success p{font-size:17px;line-height:1.5;color:#d7d4d1}
.site-footer{background:#080809;border-top:1px solid #272729}
.footer-top{display:flex;justify-content:space-between;align-items:center;padding-block:50px 35px}
.footer-top p{color:#999;margin:0}
.footer-bottom{display:flex;gap:32px;align-items:center;border-top:1px solid #29292b;padding-block:22px;color:#aaa;font-size:10px}
.footer-bottom a{text-decoration:none}
.footer-bottom a:hover,.privacy a:hover{color:var(--red)}
.privacy{padding:18px 0 42px;border-top:1px solid #29292b;color:#89898a;font-size:11px;font-weight:400;letter-spacing:0;line-height:1.6}
.privacy h2{font:800 11px Arial,sans-serif;letter-spacing:1.6px;color:#aaa}
.privacy p{max-width:760px;margin-bottom:0}
.privacy a{text-underline-offset:2px}

@media(max-width:800px){.site-header{height:66px}
.wordmark{font-size:27px}
.header-location{display:none}
.hero{min-height:680px;height:calc(100svh - 66px);max-height:850px;align-items:end}
.hero-image{background-position:65% center}
.hero-shade{background:linear-gradient(0deg,#0b0b0c 0%,rgba(11,11,12,.97) 11%,rgba(11,11,12,.7) 47%,rgba(11,11,12,.05) 82%),linear-gradient(90deg,rgba(0,0,0,.38),transparent)}
.hero-content{padding-bottom:92px}
.hero h1{font-size:clamp(50px,9vw,75px)}
.hero-copy{font-size:17px}
.hero-bottom{bottom:23px}
.section-pad{padding-block:75px}
.approach-grid,.intake-grid{grid-template-columns:1fr;gap:34px}
.approach-copy{padding-top:0}
.quote-grid{grid-template-columns:1fr;gap:10px}
.testimonial blockquote p{font-size:34px}
.quote-mark{left:auto;right:0}
.benefit-grid,.steps-list{grid-template-columns:1fr}
.benefit-grid article,.benefit-grid article+article,.steps-list li,.steps-list li+li{border-right:0;border-bottom:1px solid var(--line);padding:25px 0}
.benefit-grid article{min-height:0}
.benefit-grid article:last-child,.steps-list li:last-child{border-bottom:0}
.benefit-grid h3{margin-top:14px}
.steps-list li{gap:30px}
.intake-aside{margin-top:30px}
.form-panel{padding:28px}
}

@media(max-width:520px){.wrap{width:min(100% - 36px,1220px)}
.site-header{padding-inline:18px}
.header-contact{font-size:10px}
.hero{min-height:650px}
.hero-image{background-position:64% top}
.hero-content{padding-bottom:86px}
.hero-kicker{font-size:10px}
.hero h1{font-size:clamp(46px,11.6vw,62px);letter-spacing:-.065em}
.hero-copy{font-size:16px;max-width:340px}
.hero-cta{width:100%;max-width:350px}
.hero-bottom{font-size:9px}
.section-pad{padding-block:65px}
h2{font-size:clamp(38px,10vw,52px)}
.section-heading{margin-bottom:34px}
.approach-copy .large-copy{font-size:24px}
.testimonial blockquote p{font-size:30px}
.intake-intro h2{font-size:clamp(52px,12vw,70px)}
.form-panel{padding:22px}
.form-heading{font-size:20px}
.footer-top{align-items:start;gap:20px;flex-direction:column}
.footer-bottom{flex-wrap:wrap;gap:16px 26px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.button{transition:none}
.button:hover{transform:none}
}
