
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:#0e0e0f;background:#fff}
a{color:#1f3d8a;text-decoration:none}
a:hover{text-decoration:underline}
header.site{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:10}
.nav{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:10px 16px}
.nav .logo{width:40px;height:40px;border-radius:50%;object-fit:cover}
.nav .brand{font-weight:800;letter-spacing:.2px}
.nav .spacer{flex:1}
.nav .links a{margin-left:14px;font-weight:700;color:#d42228}
main{max-width:1200px;margin:0 auto;padding:18px 16px}
.hero{position:relative;min-height:36vh;display:grid;place-items:center;margin-bottom:10px;overflow:hidden;border-radius:12px}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,26,58,.75),rgba(15,26,58,.35)),url('https://images.unsplash.com/photo-1530549387789-4c101726663e?q=80&w=1600&auto=format&fit=crop') center/cover no-repeat}
.hero .wrap{position:relative;text-align:center;color:#fff;padding:32px 16px;max-width:820px}
.hero img{width:126px;height:126px;border-radius:50%;margin-bottom:10px}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;font-weight:800}
.btn.primary{background:#d42228;color:#fff}
.btn.secondary{border:1px solid rgba(0,0,0,.15);color:#0e0e0f;background:#fff}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.card{grid-column:span 12;padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
@media(min-width:720px){.card.sm-6{grid-column:span 6}}
figure{margin:0}
figure img, iframe{width:100%;height:auto;border-radius:12px;border:1px solid #e5e7eb}
footer{background:#0b1026;color:#d1d5db;margin-top:24px}
.footer-inner{max-width:1200px;margin:0 auto;padding:22px 16px}
/* hamburger */
.menu-toggle{display:none}.hamburger{display:none;cursor:pointer;padding:6px;border:1px solid #e5e7eb;border-radius:10px}
.hamburger span{display:block;width:24px;height:2px;background:#0e0e0f;margin:5px 0}
@media(max-width:640px){.spacer{display:none}.hamburger{display:block}.links{display:none;flex-direction:column;gap:10px;padding:10px 0}.menu-toggle:checked~.links{display:flex}}
.section-title{display:flex;align-items:center;gap:10px;margin:6px 0 14px}
.section-title .bar{width:8px;height:28px;background:#d42228;border-radius:4px}
.prose p{margin:0 0 10px}
.kpis{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:6px}
.kpis .tile{grid-column:span 12;padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
.kpis .tile h3{margin:0 0 6px}
@media(min-width:720px){.kpis .tile.sm-6{grid-column:span 6}}
/* --- Training gallery --- */
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:10px;margin-top:10px}
.gallery a{grid-column:span 12}
.gallery img{width:100%;height:auto;border:1px solid #e5e7eb;border-radius:10px}
@media(min-width:720px){.gallery a{grid-column:span 6}}
@media(min-width:1040px){.gallery a{grid-column:span 4}}
.section-title{display:flex;align-items:center;gap:10px;margin:6px 0 14px}
.section-title .bar{width:8px;height:28px;background:#d42228;border-radius:4px}
.card{padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;margin-bottom:12px}
.prose p{margin:0 0 10px}

/* modal */
.modal{position:fixed;inset:0;z-index:1000}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.modal-dialog{position:relative;margin:10vh auto 0;max-width:520px;background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:16px}
.modal [role="document"]:focus{outline:2px solid #d42228;outline-offset:2px}
.modal fieldset{border:none;padding:0}
.modal legend{font-weight:700;margin-bottom:6px}
