*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Arial Black","Helvetica Neue",Arial,sans-serif;font-weight:400;color:#111;line-height:1.6;background:#fff}
p,li,small,.card p,figcaption{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
h1,h2,h3,.brand,.btn,.stickycall,.badges b{font-family:Impact,"Arial Black","Helvetica Neue",Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.02em}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}.narrow{max-width:720px}.center{text-align:center}
.nav{background:#000;border-bottom:3px solid #e10600;position:sticky;top:0;z-index:5}.nav .wrap{display:flex;justify-content:space-between;align-items:center;height:62px}
.brand{color:#fff;font-size:1.5rem;text-decoration:none;font-style:italic}.brand b{color:#e10600;font-size:1.25em}
.nav nav a{color:#fff;margin-left:18px;text-decoration:none;font-size:.9rem;font-family:system-ui,Arial,sans-serif;font-weight:700;text-transform:uppercase}.nav nav a:hover{color:#e10600}
.nav nav .navcall{background:#e10600;padding:8px 14px;border-radius:6px}
.hero{background:radial-gradient(circle at 80% 30%,#2a0000,#000 65%);color:#fff;padding:60px 0}
.herogrid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}
.herologo{width:100%;height:auto;border-radius:18px}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#ff4a42;font-family:system-ui,Arial,sans-serif;font-weight:700}
h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.08;margin:.3em 0}h1 em{color:#e10600;font-style:normal;display:block}
.lead{font-size:1.1rem;color:#eee}
.btn{display:inline-block;background:#e10600;color:#fff;padding:14px 26px;border-radius:10px;font-size:1.1rem;text-decoration:none;margin:12px 8px 0 0;border:3px solid #e10600}.btn:hover{background:#b80500}
.btn.ghost{background:transparent;border-color:#fff}.btn.big{font-size:1.4rem;padding:18px 32px}
.small{font-size:.9rem;color:#555}.small.light,.light{color:#ddd}.hero .small a,.dark a{color:#fff}
.badges{background:#fff;padding:36px 0;border-bottom:4px solid #000}.badges ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;text-align:center}
.badge{display:flex;width:84px;height:84px;margin:0 auto 10px;border:4px solid #e10600;border-radius:50%;background:#000;color:#fff;font-size:2rem;align-items:center;justify-content:center}
.badges b{display:block;font-size:1.05rem}.badges small{color:#444;font-size:.9rem}
section{padding:64px 0}h2{font-size:2.2rem;margin-top:0;color:#000}h2::after{content:"";display:block;width:70px;height:6px;background:#e10600;margin-top:8px}.center h2::after{margin-left:auto;margin-right:auto}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.card{border:3px solid #000;border-top:8px solid #e10600;border-radius:12px;padding:22px;background:#fff}.card h3{margin-top:0;font-size:1.25rem}
.dark{background:#000;color:#fff}.dark h2{color:#fff}.dark p{color:#eee}
.about{display:grid;grid-template-columns:240px 1fr 260px;gap:32px;align-items:center}.portrait{width:100%;height:auto;border-radius:50%/40%;border:5px solid #e10600}
.mascot{width:100%;height:auto;border-radius:14px}
.gal{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.gal figure{margin:0}.gal img{width:100%;height:220px;object-fit:cover;border-radius:12px;display:block;border:3px solid #000}.gal figcaption{font-size:.85rem;color:#444;margin-top:6px}
.cta{background:#e10600;color:#fff}.cta h2{color:#fff}.cta h2::after{background:#000}.cta .btn{background:#000;border-color:#000}.cta .btn:hover{background:#222}.cta a{color:#fff}.office{font-size:1.05rem}
footer{background:#000;color:#ddd;padding:30px 0 90px;font-size:.95rem;border-top:4px solid #e10600}footer .small,footer .credits a,footer a{color:#bbb}
.stickycall{display:none}
@media(max-width:820px){.herogrid{grid-template-columns:1fr}.about{grid-template-columns:1fr}.portrait{max-width:240px}.mascot{max-width:300px}.nav nav a:not(.navcall){display:none}.nav nav .navcall{margin:0}
.stickycall{display:block;position:fixed;left:12px;right:12px;bottom:12px;z-index:9;background:#e10600;color:#fff;text-align:center;padding:15px;border-radius:12px;font-size:1.2rem;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.5);border:2px solid #fff}}
