@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Oswald:wght@500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{color-scheme:dark light;--ink:#1a1c19;--asphalt:#202420;--coal:#131512;--paper:#e8e5db;--mist:#b9bdb2;--road:#747a70;--signal:#c4d553;--line:rgba(232,229,219,.18);--font-body:Manrope,Arial,sans-serif;--font-display:Oswald,Arial Narrow,sans-serif;--font-editorial:"Playfair Display",Georgia,serif;--shadow:0 20px 60px rgba(0,0,0,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;color:var(--paper);background:var(--coal);font-family:var(--font-body);font-size:16px;line-height:1.55}a{color:inherit}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}::selection{background:var(--signal);color:var(--ink)}
.skip-link{position:fixed;z-index:20;top:10px;left:10px;transform:translateY(-160%);padding:12px 16px;color:var(--ink);background:var(--signal);transition:transform .15s ease}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--signal);outline-offset:4px}
.site-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1280px;margin:0 auto;padding:12px clamp(20px,2vw,32px);border-bottom:1px solid rgba(232,229,219,.12);background:var(--coal)}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--paper);font:700 13px/1 var(--font-display);letter-spacing:.045em;text-decoration:none}
.brand-mark{display:grid;width:26px;height:26px;place-items:center;color:var(--ink);background:var(--signal);border-radius:50%;font:700 14px/1 var(--font-display)}
.site-nav{display:flex;gap:20px;font-size:13px;color:var(--mist)}.site-nav a{text-decoration:none}.site-nav a:hover{color:var(--paper)}
.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid rgba(232,229,219,.14);background:transparent}
.nav-toggle span{width:18px;height:2px;background:var(--paper);display:block;transition:transform .2s ease,opacity .2s ease}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.is-open span:nth-child(2){opacity:0}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hero{position:relative;display:block;min-height:calc(100svh - 56px);overflow:hidden;background:#0f1110}
.hero--photo .hero-media{position:absolute;inset:0;min-height:0;border-left:0}
.hero--photo .hero-media img{width:100%;height:100%;object-fit:cover;object-position:52% 42%}
.hero--photo .hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,11,9,.61) 0 42%,rgba(9,11,9,.40) 60%,rgba(9,11,9,.14) 84%,rgba(9,11,9,.05) 100%),linear-gradient(180deg,rgba(9,11,9,.12) 0 22%,rgba(9,11,9,.49) 100%)}
.hero--photo .hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:480px;min-height:calc(100svh - 56px);margin-left:max(24px,calc((100vw - 1280px)/2));padding:clamp(20px,4vh,36px) 0;background:none}
.hero--photo h1{max-width:440px;margin-bottom:12px;font-size:clamp(34px,3.2vw,46px);line-height:.96;letter-spacing:-.02em;text-shadow:0 2px 18px rgba(0,0,0,.42)}
.hero-line--muted{color:#e8e5db}.hero-line--accent{color:var(--signal)}
.hero--photo .hero-lead{max-width:480px;margin-bottom:14px;color:#d9ddd3;font-size:15px;line-height:1.45;text-shadow:0 1px 10px rgba(0,0,0,.35)}
.hero--photo .button-primary{min-height:44px;padding:11px 14px;box-shadow:0 8px 24px rgba(0,0,0,.28)}
.hero--photo .hero-note{margin-top:8px;color:#c2c7bb;font-size:12px}
.hero--photo .hero-bullets{display:flex;flex-wrap:wrap;gap:18px 24px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(232,229,219,.22)}
.hero--photo .hero-bullets li{display:flex;align-items:baseline;gap:6px}
.hero--photo .hero-bullets strong{color:#fff;font-size:13px;white-space:nowrap}.hero--photo .hero-bullets span{color:#c2c7bb;font-size:11px;white-space:nowrap}
.hero--photo .hero-caption{right:24px;bottom:16px;padding:10px 12px;background:rgba(232,229,219,.94);backdrop-filter:blur(6px);position:absolute;max-width:220px;box-shadow:var(--shadow)}
.hero--photo .hero-caption span{display:block;margin-bottom:6px;color:#6a6f66;font-size:10px;font-weight:800;letter-spacing:.13em}
.hero--photo .hero-caption strong{font:600 18px/1 var(--font-display);text-transform:uppercase;color:var(--ink)}
.section-shell{padding:clamp(56px,8vw,96px) clamp(24px,4.2vw,72px)}
.fit-section{background:#efede6;color:var(--ink)}.fit-section .section-index{color:#2f3a12}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.js .reveal.is-visible{opacity:1;transform:none}
.fit-card,.team-card,.review-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.fit-card:hover,.team-card:hover,.review-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.16)}
.button{transition:transform .16s ease,background-color .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(0,0,0,.16)}
.to-top{position:fixed;right:22px;bottom:22px;z-index:12;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(232,229,219,.18);background:rgba(19,21,18,.92);color:var(--paper);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,background-color .18s ease}.to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.to-top:hover{background:rgba(19,21,18,1)}
.fit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.fit-card{min-height:260px;padding:22px;background:#fff;border:1px solid rgba(26,28,25,.10);border-top:3px solid var(--ink);box-shadow:0 12px 28px rgba(0,0,0,.07);display:flex;flex-direction:column}
.fit-card--offset{margin-top:0;background:var(--ink);color:var(--paper);border-color:rgba(232,229,219,.14);border-top-color:var(--signal)}
.fit-card span{display:inline-grid;place-items:center;width:38px;height:38px;background:var(--ink);color:var(--signal);border-radius:50%;font:800 13px/1 var(--font-display);letter-spacing:.02em;flex-shrink:0}
.fit-card--offset span{background:var(--signal);color:var(--ink)}
.fit-card h3{max-width:280px;margin:28px 0 10px;font:600 clamp(22px,2.1vw,30px)/1.22 var(--font-display);text-transform:uppercase;color:var(--ink)}
.fit-card--offset h3{color:var(--paper)}.fit-card p{max-width:280px;margin:0;font-size:14px;line-height:1.5;color:#3a3d38}.fit-card--offset p{color:#c9cec2}
.path-section{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(40px,10vw,150px);padding:clamp(56px,8vw,96px) clamp(24px,4.2vw,72px);background:var(--asphalt)}
.path-intro>p{margin:28px 0 0;color:var(--mist);font-size:15px}
.path-figure{display:block;width:100%;max-width:420px;height:auto;margin:18px auto 0;border:1px solid rgba(232,229,219,.14);background:#efede6;object-fit:contain;aspect-ratio:1;border-radius:8px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.figure-caption{margin-top:8px;color:var(--road);font-size:11px;text-align:center}
.path-list{margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.path-list li{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}
.path-num{color:var(--signal);font:600 20px/1 var(--font-display)}
.path-list h3{margin:0 0 6px;font:600 22px/1.22 var(--font-display);text-transform:uppercase}
.path-list p{max-width:450px;margin:0;color:var(--mist);font-size:13px;line-height:1.5}
.ground-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,72px);background:#354038;align-items:start}
.ground-list{margin:28px 0 0;padding-left:18px;color:#d2d5ca;font-size:14px;line-height:1.7}
.ground-list li+li{margin-top:8px}.ground-media{display:grid;gap:18px;align-content:start}
.ground-media img{width:100%;height:240px;object-fit:cover;object-position:center;border:1px solid var(--line);border-radius:8px}
.team-section{background:var(--paper);color:var(--ink)}.team-section .section-index{color:#65702e}
.team-lead{margin:18px 0 0;color:#6a6f66;font-size:13px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px;align-items:start}
.team-card{padding:16px;border-top:3px solid var(--ink);background:#d9d8d0}
.team-card img{width:100%;height:180px;object-fit:cover;object-position:center 18%;margin-bottom:12px;border:1px solid rgba(26,28,25,.12);background:#f2f0e8;border-radius:8px}
.team-card h3{margin:0 0 6px;font:600 18px/1.18 var(--font-display);text-transform:uppercase}
.team-card p{margin:0;font-size:12px;line-height:1.45;color:#4f5350}
.team-card--license{background:var(--signal);display:flex;flex-direction:column;min-height:220px}
.team-card--license p{flex:1}.team-link{display:inline-block;margin-top:12px;font-weight:800;font-size:13px;text-decoration:none;border-bottom:1px solid currentColor}
.team-cta{margin-top:20px;align-self:start;background:var(--ink);color:var(--paper);border-color:var(--ink)}.team-cta:hover{background:#2a2e28}
.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.review-card{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;padding:18px;border:1px solid var(--line);background:rgba(255,255,255,.04)}
.review-card img{width:72px;height:72px;aspect-ratio:1;object-fit:cover;object-position:center top;border-radius:50%;border:1px solid var(--line);flex-shrink:0}
.review-card blockquote{margin:0 0 10px;color:var(--paper);font-size:15px;line-height:1.45}
.review-card cite{color:var(--mist);font-style:normal;font-size:12px}
.signup-section{position:relative;overflow:hidden;color:var(--ink);background:var(--signal)}
.signup-rail{overflow:hidden;padding:13px 0;color:rgba(26,28,25,.68);border-bottom:1px solid rgba(26,28,25,.25);white-space:nowrap;font:600 16px/1 var(--font-display);letter-spacing:.15em}
.signup-rail span{display:inline-block;min-width:100%;padding-left:100%;animation:rail 18s linear infinite}
@keyframes rail{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}
.signup-content{display:grid;grid-template-columns:1fr minmax(340px,.75fr);gap:clamp(45px,10vw,160px);padding:clamp(74px,10vw,135px) clamp(24px,4.2vw,72px)}
.kicker--light{color:#59611e}.signup-content h2 em{color:var(--ink);font-family:var(--font-editorial);font-style:italic;text-transform:none}
.signup-content>div>p{max-width:480px;margin:32px 0 0;color:#404733}.signup-contacts{margin-top:14px!important;color:#404733;font-size:13px}
.signup-form{align-self:center;padding:25px;background:var(--paper);box-shadow:var(--shadow)}
.field{display:grid;gap:7px;margin-bottom:17px}.field label{color:#4d504a;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.field input{width:100%;min-height:50px;padding:12px 14px;border:1px solid #91948c;border-radius:0;color:var(--ink);background:#f9f7ef}
.field input::placeholder{color:#7e817a}.field input:focus{border-color:var(--ink);outline:3px solid rgba(196,213,83,.55)}
.form-error,.form-success{margin:0 0 14px;font-size:13px}.form-error{color:#b22020;min-height:0}.form-success{padding:12px;color:#23300c;background:#d9e786}
@media(max-width:940px){.site-header{flex-wrap:wrap;min-height:56px}.nav-toggle{display:flex}.site-nav{display:none;width:100%;flex-direction:column;gap:0;padding:10px 0 14px;border-top:1px solid rgba(232,229,219,.12)}.site-nav.is-open{display:flex}.site-nav a{padding:12px 0;font-size:15px}.header-action{display:none}.hero{min-height:calc(100svh - 56px)}.hero--photo .hero-copy{min-height:calc(100svh - 56px);padding-top:28px;padding-bottom:20px;margin-left:24px}.hero--photo .hero-media img{object-position:56% 38%}.section-heading,.path-section,.ground-section,.signup-content,.seo-section{grid-template-columns:1fr}.section-heading{gap:7px;margin-bottom:45px}.fit-grid,.team-grid,.reviews-grid{gap:14px;grid-template-columns:1fr}.fit-card,.fit-card--offset{min-height:0;margin-top:0}.fit-card h3{margin-top:25px}.path-section{gap:50px}.seo-section h2,.seo-section>p:last-child{grid-column:auto}.site-footer{flex-wrap:wrap}.review-card{grid-template-columns:72px 1fr}.review-card img{width:72px;height:72px}.ground-media img{height:200px}.team-card img{height:190px}}
.site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:20px clamp(24px,4.2vw,72px);border-top:1px solid var(--line);color:var(--mist);background:var(--coal);font-size:11px}
.footer-brand{display:inline-flex;align-items:center;gap:8px;color:var(--paper);font:600 13px var(--font-display);letter-spacing:.04em}
@media(max-width:940px){.site-header{min-height:68px}.site-nav{display:none}.hero{min-height:calc(100svh - 68px)}.hero--photo .hero-copy{min-height:calc(100svh - 68px);padding-top:28px;padding-bottom:20px;margin-left:24px}.hero--photo .hero-media img{object-position:56% 38%}.section-heading,.path-section,.ground-section,.signup-content,.seo-section{grid-template-columns:1fr}.section-heading{gap:7px;margin-bottom:45px}.fit-grid,.team-grid,.reviews-grid{gap:14px;grid-template-columns:1fr}.fit-card,.fit-card--offset{min-height:0;margin-top:0}.fit-card h3{margin-top:25px}.path-section{gap:50px}.seo-section h2,.seo-section>p:last-child{grid-column:auto}.site-footer{grid-template-columns:1fr;align-items:start}.review-card{grid-template-columns:72px 1fr}.review-card img{width:72px;height:72px}.ground-media img{height:200px}.team-card img{height:190px}}
@media(max-width:600px){body{padding-bottom:76px}.site-header{padding-top:13px;padding-bottom:13px}.brand{font-size:13px}.header-action{display:none}h1{font-size:clamp(46px,12.5vw,62px)}h2{font-size:clamp(39px,12vw,59px)}.hero{min-height:calc(100svh - 68px)}.hero--photo .hero-copy{min-height:calc(100svh - 68px);padding-top:22px;padding-bottom:16px}.hero--photo h1{font-size:clamp(42px,11vw,56px);margin-bottom:10px}.hero--photo .hero-lead{margin-bottom:12px}.hero--photo .hero-media img{object-position:58% 34%}.hero--photo .hero-caption{right:16px;bottom:16px;max-width:185px;padding:12px}.section-shell,.path-section{padding-top:56px;padding-bottom:56px}.path-list li{grid-template-columns:48px 1fr}.signup-content{padding-top:70px;padding-bottom:70px}.signup-form{padding:18px}.mobile-cta{position:fixed;z-index:10;right:0;bottom:0;left:0;display:block;padding:10px 14px;border-top:1px solid rgba(232,229,219,.13);background:rgba(19,21,18,.97)}.mobile-cta .button{width:100%;min-height:50px}}
@media(prefers-color-scheme:light){body{background:#f7f6f0}.site-header,.seo-section,.site-footer{background:#f7f6f0;color:var(--ink)}.site-header{border-color:rgba(26,28,25,.15)}.brand,.footer-brand{color:var(--ink)}.site-nav,.site-footer{color:#5a5e57}.header-action{color:var(--ink)}.seo-section{color:var(--ink)}.seo-section>p:last-child{color:#5a5e57}.site-footer{border-color:rgba(26,28,25,.15)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1!important;transform:none!important}}
@media(max-width:600px){
  .hero--photo .hero-media img{object-position:56% 42%}
  .hero--photo h1{font-size:clamp(38px,10.5vw,48px);line-height:.98}
  .hero--photo .hero-lead{max-width:335px;font-size:13px;line-height:1.42}
  .hero--photo .hero-bullets{gap:9px 12px}
  .hero--photo .hero-bullets li{gap:4px}
  .hero--photo .hero-bullets strong{font-size:11px}
  .hero--photo .hero-bullets span{font-size:9px}
}
