:root { --blue:#48658f; --blue-dark:#263b59; --red:#f04437; --ink:#111411; --paper:#f2f1ec; --line:#c9cbc5; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px, calc(100% - 48px)); margin:0 auto; }

.hero { min-height:760px; height:100svh; max-height:900px; color:white; position:relative; background:url('assets/hero-training.jpg') center 30%/cover no-repeat; overflow:hidden; }
.heroShade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(25,44,72,.95) 0%,rgba(44,68,102,.76) 45%,rgba(36,54,78,.14) 75%),linear-gradient(0deg,rgba(16,31,50,.58),transparent 48%); }
.header { position:relative; z-index:2; height:102px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.26); }
.brand { display:flex; gap:12px; align-items:center; }
.brandMark { display:grid; place-items:center; width:44px; height:50px; border:1px solid currentColor; border-radius:50% 50% 45% 45%; font:800 25px/1 Arial; }
.brand b,.brand small { display:block; letter-spacing:.05em; }.brand b { font-size:11px; }.brand small { font-size:15px; margin-top:4px; }
nav { display:flex; gap:34px; font-size:14px; } nav a { opacity:.85; transition:.2s; } nav a:hover { opacity:1; }
.phoneTop { background:var(--red); padding:16px 22px; border-radius:2px; font-weight:700; font-size:14px; }
.heroContent { position:relative; z-index:1; padding-top:64px; display:grid; grid-template-columns:minmax(0,1.25fr) 390px; gap:70px; align-items:center; }
.eyebrow,.sectionKicker { font-size:12px; letter-spacing:.17em; font-weight:700; }.eyebrow { margin-bottom:26px; opacity:.74; }
.hero h1 { font-size:clamp(64px,7.5vw,108px); line-height:.82; letter-spacing:-.07em; margin:0; max-width:760px; font-weight:900; }.hero h1 em { font-style:normal; color:var(--red); }
.heroStatement { font-size:17px; line-height:1.45; max-width:640px; margin:30px 0; color:rgba(255,255,255,.88); font-weight:700; }
.heroActions { display:flex; gap:12px; flex-wrap:wrap; }.button { min-height:62px; padding:0 28px; display:flex; align-items:center; justify-content:space-between; gap:34px; font-weight:700; font-size:13px; border:1px solid rgba(255,255,255,.6); }.button.primary { background:var(--red); border-color:var(--red); min-width:330px; }.button span,.submit span { font-size:22px; }
.heroRail { position:absolute; z-index:1; right:0; bottom:0; left:0; height:48px; display:flex; justify-content:space-between; align-items:center; padding:0 40px; background:rgba(12,24,38,.68); font-size:11px; letter-spacing:.18em; }
.heroForm { min-height:0; padding:28px; box-shadow:0 22px 60px rgba(7,19,34,.28); }.heroForm .formTitle { font-size:21px; font-weight:900; line-height:1.1; margin-bottom:24px; }.heroForm label { margin-bottom:18px; }.heroForm .agree { margin-bottom:18px; }

.facts { display:grid; grid-template-columns:repeat(4,1fr); padding:42px 0; border-bottom:1px solid var(--line); }.fact { padding:0 30px; border-left:1px solid var(--line); }.fact:first-child { padding-left:0; border-left:0; }.fact strong { display:block; font-size:44px; line-height:1; letter-spacing:-.06em; }.fact span { display:block; margin-top:8px; color:#676b65; font-size:13px; }
.sectionKicker { color:#70746d; margin-bottom:40px; }.sectionKicker.light { color:rgba(255,255,255,.55); }
.payouts { padding:105px 0 120px; }.payoutHead { display:grid; grid-template-columns:1.25fr .75fr; gap:100px; align-items:end; margin-bottom:54px; }.payoutHead h2 { margin:0; font-size:clamp(54px,7vw,95px); line-height:.88; letter-spacing:-.065em; }.payoutHead h2 span { color:var(--red); }.payoutHead p { color:#62665f; line-height:1.55; margin:0; }.payoutGrid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }.payoutGrid article { padding:36px; min-height:150px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); position:relative; }.payoutGrid article::before { content:'✓'; display:grid; place-items:center; width:34px; height:40px; color:white; background:var(--red); border-radius:50% 50% 42% 42%; margin-bottom:18px; }.payoutGrid b { display:block; font-size:clamp(28px,4vw,50px); letter-spacing:-.045em; }.payoutGrid span { display:block; color:#62665f; margin-top:8px; line-height:1.45; }.payoutCall { display:flex; justify-content:space-between; align-items:center; width:min(580px,100%); min-height:68px; margin:36px auto 0; padding:0 28px; color:white; background:var(--red); font-size:13px; font-weight:800; }.payoutCall span { font-size:23px; }
.about { padding:112px 0 126px; }.aboutGrid { display:grid; grid-template-columns:1.35fr .65fr; gap:100px; align-items:start; }.about h2,.programHead h2,.route h2,.faq h2,.contact h2 { margin:0; font-size:clamp(54px,7vw,95px); line-height:.9; letter-spacing:-.065em; }.about h2 span,.contact h2 span { color:var(--red); }.aboutCopy { padding-top:6px; }.aboutCopy p { font-size:18px; line-height:1.6; margin:0 0 20px; color:#50534d; }.aboutCopy a { display:inline-flex; gap:34px; border-bottom:1px solid; padding:16px 0 10px; font-size:13px; font-weight:800; }

.programSection { padding:108px 0 120px; background:var(--blue-dark); color:white; }.programHead { display:flex; justify-content:space-between; align-items:end; margin-bottom:58px; }.programHead p { max-width:340px; line-height:1.5; color:rgba(255,255,255,.63); }.programGrid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.23); border-left:1px solid rgba(255,255,255,.23); }.programCard { min-height:430px; padding:24px; border-right:1px solid rgba(255,255,255,.23); border-bottom:1px solid rgba(255,255,255,.23); display:flex; flex-direction:column; }.programNum { font-size:12px; color:rgba(255,255,255,.5); }.cardSymbol { width:112px; height:112px; margin:48px auto 42px; position:relative; border:2px solid var(--red); transform:rotate(45deg); }.symbol02 { border-radius:50%; }.symbol03 { border:0; background:repeating-linear-gradient(45deg,var(--red) 0 5px,transparent 5px 14px); }.symbol04 { border-radius:50% 0 50% 0; }.programCard h3 { font-size:20px; margin:0 0 14px; }.programCard p { color:rgba(255,255,255,.58); line-height:1.5; font-size:14px; flex:1; margin:0 0 22px; }.programCard a { color:var(--red); font-weight:700; font-size:12px; }

.route { padding:110px 0 130px; }.route>h2 { margin-bottom:65px; }.steps { display:grid; grid-template-columns:repeat(4,1fr); }.step { padding:24px 28px 0; min-height:210px; border-left:1px solid var(--line); }.step:first-child { padding-left:0; border-left:0; }.step b { color:var(--red); font-size:12px; }.step h3 { font-size:21px; margin:52px 0 12px; }.step p { color:#666a64; font-size:14px; line-height:1.5; max-width:210px; }
.quoteBand { overflow:hidden; background:var(--red); color:white; padding:23px 0; transform:rotate(-1deg) scale(1.02); }.quoteTrack { white-space:nowrap; font-size:28px; font-weight:900; letter-spacing:-.02em; }

.faq { padding:138px 0 120px; display:grid; grid-template-columns:.7fr 1.3fr; gap:100px; }.faq h2 { font-size:68px; }.faqList { border-top:1px solid #9da099; }.faq details { border-bottom:1px solid #9da099; padding:0 2px; }.faq summary { list-style:none; cursor:pointer; padding:24px 0; font-size:20px; font-weight:700; display:flex; justify-content:space-between; }.faq summary::-webkit-details-marker { display:none; }.faq summary span { color:var(--red); font-size:28px; transition:.2s; }.faq details[open] summary span { transform:rotate(45deg); }.faq details p { margin:0; padding:0 80px 24px 0; color:#646761; line-height:1.6; }

.contact { background:var(--blue); color:white; padding:110px 0; }.contactGrid { display:grid; grid-template-columns:1fr .8fr; gap:110px; }.contact h2 { font-size:76px; }.contact>div>div>p { max-width:520px; color:rgba(255,255,255,.7); font-size:17px; line-height:1.5; }.contactForm { background:white; color:var(--ink); padding:36px; min-height:360px; }.contactForm label { display:block; font-size:10px; letter-spacing:.12em; font-weight:800; margin-bottom:24px; }.contactForm input:not([type="checkbox"]) { width:100%; border:0; border-bottom:1px solid #b5b7b1; padding:13px 0; font:17px Arial; outline:none; }.contactForm input:focus { border-color:var(--red); }.contactForm .agree { display:flex; gap:10px; align-items:start; font-weight:400; color:#676b65; letter-spacing:0; font-size:12px; }.contactForm .agree a { text-decoration:underline; }.contactForm .hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }.formError { color:#bd2d24; font-size:12px; line-height:1.4; margin:-8px 0 16px; }.submit { border:0; width:100%; height:62px; background:var(--red); color:white; font-weight:800; padding:0 20px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; }.submit:disabled { opacity:.65; cursor:wait; }.success { display:grid; align-content:center; min-height:285px; }.success b { color:var(--red); font-size:30px; }.success p { color:#555; line-height:1.5; }.success button { width:max-content; border:0; border-bottom:1px solid; background:none; padding:8px 0; cursor:pointer; font-weight:700; }
footer { background:#101410; color:white; padding:56px 0; }.footerGrid { display:grid; grid-template-columns:1.2fr 1.55fr .85fr .8fr; gap:30px; align-items:center; }.footerGrid>div small { display:block; color:#7f857d; font-size:10px; letter-spacing:.13em; margin-bottom:8px; }.footerGrid>div a { font-size:14px; }.requisites strong,.requisites span { display:block; font-size:12px; line-height:1.6; }.requisites strong { margin-bottom:3px; font-weight:700; }.requisites span { color:#a4aaa2; }.footerLegal { color:#777d75; font-size:11px; line-height:1.6; }
.policyPage { min-height:100vh; background:var(--paper); }.policyHeader { width:min(1080px,calc(100% - 48px)); margin:0 auto; min-height:104px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }.policyHeader>a:last-child { font-size:13px; font-weight:700; }.policyArticle { width:min(920px,calc(100% - 48px)); margin:0 auto; padding:90px 0 120px; }.policyArticle h1 { font-size:clamp(48px,7vw,84px); line-height:.92; letter-spacing:-.055em; margin:0 0 62px; }.policyArticle h1 span { display:block; max-width:720px; margin-top:18px; color:var(--red); font-size:.44em; line-height:1.05; letter-spacing:-.025em; }.policyArticle h2 { margin:48px 0 14px; font-size:25px; }.policyArticle p,.policyArticle li { color:#4f534d; font-size:16px; line-height:1.72; }.policyArticle ul { padding-left:22px; }.policyArticle li { margin:7px 0; }.policyArticle .sectionKicker { margin-bottom:28px; }

@media (max-width:900px) {
  .shell { width:min(100% - 32px, 720px); }.header nav { display:none; }.hero { height:auto; min-height:1020px; }.heroContent { padding-top:70px; grid-template-columns:1fr; gap:38px; }.heroCopy { max-width:650px; }.heroForm { max-width:520px; }.facts,.programGrid,.steps { grid-template-columns:repeat(2,1fr); }.fact:nth-child(3) { border-left:0; }.fact { margin:14px 0; }.payoutHead,.aboutGrid,.faq,.contactGrid { grid-template-columns:1fr; gap:48px; }.programHead { align-items:start; gap:40px; }.footerGrid { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .header { height:82px; }.phoneTop { font-size:0; width:48px; height:48px; padding:0; border-radius:50%; position:relative; }.phoneTop::after { content:'☎'; font-size:18px; position:absolute; inset:0; display:grid; place-items:center; }.brand b { max-width:160px; }.hero { height:auto; min-height:1050px; }.heroShade { background:linear-gradient(90deg,rgba(27,45,70,.94),rgba(36,54,78,.52)),linear-gradient(0deg,rgba(16,31,50,.72),transparent 50%); }.heroContent { padding-top:72px; gap:34px; }.hero h1 { font-size:55px; }.heroStatement { font-size:14px; }.button,.button.primary { min-width:100%; }.heroRail { padding:0 16px; }.heroRail span:last-child { text-align:right; max-width:230px; }.facts { grid-template-columns:1fr 1fr; }.fact { padding:0 12px; }.fact strong { font-size:30px; }.payouts { padding:78px 0 88px; }.payoutHead h2 { font-size:50px; }.payoutGrid { grid-template-columns:1fr; }.payoutGrid article { padding:26px; }.about,.route { padding:78px 0 88px; }.about h2,.programHead h2,.route h2,.contact h2 { font-size:50px; }.programSection { padding:78px 0; }.programHead { display:block; }.programHead p { margin-top:22px; }.programGrid,.steps { grid-template-columns:1fr; }.programCard { min-height:370px; }.step,.step:first-child { border-left:0; border-top:1px solid var(--line); padding:24px 0; min-height:170px; }.step h3 { margin-top:30px; }.faq { padding:98px 0 80px; }.faq h2 { font-size:51px; }.contact { padding:80px 0; }.contactForm { padding:24px; }.footerGrid { grid-template-columns:1fr; }.footerGrid>div { margin-top:15px; }
}
