/* American Skill — shared styles. Change colors/fonts in :root only. */
:root{--navy:#0a2463;--navy-deep:#061a4a;--red:#b22234;--red-ink:#c8102e;--ink:#0a1f44;--muted:#4a5a78;--bg:#fff;--alt:#f2f5fa;--line:#d9e0ee;--serif:Fraunces,Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--sans)}
h1,h2,h3{font-family:var(--serif);line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(34px,5.4vw,56px)}h2{font-size:clamp(28px,3.6vw,38px)}h3{font-size:21px}
p{margin:0 0 1em}a{color:var(--navy)}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}
:focus-visible{outline:3px solid var(--red-ink);outline-offset:2px}
.stripe{height:12px;background:repeating-linear-gradient(#b22234 0 3px,#fff 3px 6px)}
header.site{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 24px;padding:12px 24px;max-width:1080px;margin:0 auto}
.logo{font:700 21px var(--serif);text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}
.logo svg{width:30px;height:30px}
nav ul{display:flex;gap:24px;align-items:center;list-style:none;margin:0;padding:0;font-size:15px;font-weight:500}
nav a{text-decoration:none;color:var(--muted)}nav a:hover,nav a[aria-current]{color:var(--ink)}
nav a[aria-current]{border-bottom:2px solid var(--red-ink);padding-bottom:3px}
.btn{display:inline-block;background:var(--red-ink);color:#fff!important;padding:13px 26px;border:0;border-radius:6px;font:600 15px var(--sans);text-decoration:none;cursor:pointer}
.btn:hover{background:#a50e27}.btn.ghost{background:transparent;border:2px solid #fff}
nav .btn{padding:9px 18px}
.hero{position:relative;background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath fill='white' fill-opacity='.09' d='M28 9l4.1 12.6h13.2l-10.7 7.8 4.1 12.6L28 34.2l-10.7 7.8 4.1-12.6-10.7-7.8h13.2z'/%3E%3C/svg%3E");color:#fff;padding:92px 0 116px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:24px;background:repeating-linear-gradient(#b22234 0 3px,#fff 3px 6px)}
.hero.short{padding:64px 0 88px}
.hero p{font-size:20px;max-width:34em;opacity:.88;margin-bottom:30px}.hero h1{max-width:15em}
.hero .row{display:flex;gap:14px;flex-wrap:wrap}
.eyebrow{font:600 14px var(--sans);color:#ff8a98;margin-bottom:12px}
section{padding:76px 0}section.alt{background:var(--alt)}
.lead{color:var(--muted);font-size:18px;max-width:40em}
.stats{background:var(--alt);border-bottom:1px solid var(--line)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:34px;padding-bottom:34px;text-align:center}
.stats b{display:block;font:700 36px var(--serif);color:var(--red-ink)}.stats span{font-size:14px;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}
.card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red-ink);border-radius:8px;padding:28px}
.card h3{margin-bottom:.4em}.card p{margin:0;color:var(--muted);font-size:16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.steps{counter-reset:s;list-style:none;margin:0;padding:0}
.steps li{counter-increment:s;position:relative;padding:0 0 22px 52px}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--navy);color:#fff;font:700 16px/36px var(--serif);text-align:center}
.steps b{display:block}.steps span{color:var(--muted);font-size:16px}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.badges span{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 15px;font-size:14px;font-weight:500}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:36px}
.person{text-align:center}.person b{display:block}.person span{font-size:14px;color:var(--muted)}
.av{width:92px;height:92px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font:700 27px var(--serif);margin:0 auto 12px;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--red-ink)}
.cta{background:var(--navy);color:#fff;text-align:center}.cta p{margin-left:auto;margin-right:auto;opacity:.85;max-width:34em}
/* Forms */
form.panel{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red-ink);border-radius:8px;padding:30px}
.f{margin-bottom:18px}.f2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
label{display:block;font-weight:600;font-size:15px;margin-bottom:6px}label small{font-weight:400;color:var(--muted)}
input,select,textarea{width:100%;font:400 16px var(--sans);color:var(--ink);padding:12px 14px;border:1px solid #b9c4d8;border-radius:6px;background:#fff}
input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:3px solid rgba(10,36,99,.25)}
input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--red-ink)}
textarea{min-height:120px;resize:vertical}
.hp{position:absolute;left:-9999px}.note{font-size:14px;color:var(--muted);margin-top:14px}
.side p{color:var(--muted);font-size:16px}.side dt{font-weight:600}.side dd{margin:0 0 16px;color:var(--muted)}
.ok{text-align:center;max-width:620px;margin:0 auto}.ok .tick{width:72px;height:72px;border-radius:50%;background:var(--navy);color:#fff;font-size:38px;line-height:72px;margin:0 auto 20px;box-shadow:0 0 0 5px #fff,0 0 0 8px var(--red-ink)}
footer.site{background:var(--navy-deep);color:#fff;font-size:14px}
footer.site .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;padding-top:30px;padding-bottom:36px}
footer.site a{color:#fff;opacity:.8;margin-right:18px;text-decoration:none}footer.site p{margin:0;opacity:.85}
@media(max-width:820px){nav ul{gap:16px;font-size:14px;flex-wrap:wrap}.stats .wrap{grid-template-columns:repeat(2,1fr)}.grid,.two,.f2{grid-template-columns:1fr}.team{grid-template-columns:repeat(2,1fr)}.two{gap:30px}.hero{padding:60px 0 84px}section{padding:56px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
