/* Strike Three public design layer — loaded after legacy styles. */
:root{--s3-red:#d71920;--s3-ink:#11151c;--s3-muted:#526071}
body{background:#f3f5f8!important;color:#17202b!important;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important}
a{transition:color .15s ease,background-color .15s ease}
.site-header,.nav{background:#101318!important;color:#fff!important;border-bottom:3px solid var(--s3-red)!important}
.site-header a,.nav a,.nav .logo,.site-header .brand-name{color:#fff!important}
.site-header a:hover,.nav a:hover{color:#ffb8bb!important}
.hero{background:linear-gradient(120deg,#0d1017,#26232a)!important;color:#fff!important}
.event-hero-inner{gap:32px!important;align-items:center!important;padding-top:38px!important;padding-bottom:38px!important}
.event-title{font-size:clamp(30px,4vw,52px)!important;line-height:1.08!important;color:#fff!important;letter-spacing:-.035em!important}
.event-kicker{color:#ff777c!important;font-weight:800!important;letter-spacing:.14em!important}
.event-meta,.hero-text,.hero .event-meta span{color:#e6e9ef!important}
.event-hero-image img{width:100%!important;min-height:240px!important;max-height:360px!important;object-fit:cover!important;border-radius:16px!important;border:1px solid #ffffff30!important}
.btn-primary,button[type=submit],.container form button{background:var(--s3-red)!important;border-color:var(--s3-red)!important;color:#fff!important;font-weight:800!important}
.btn-primary:hover,button[type=submit]:hover{background:#ac1017!important}
.btn-secondary{background:#fff!important;color:#15191f!important;border-radius:10px!important}
.event-card,.card{background:#fff!important;color:#17202b!important;border:1px solid #e0e5ec!important;border-radius:16px!important;box-shadow:0 8px 30px #121c2b0b!important}
.event-card h2,.event-card h3,.card h1,.card h2,.section-title,.division-title,.team-name{color:#141a22!important}
.event-card p,.card p,.division-meta,.team-coach,.section-subtitle,.small{color:#4c5b6d!important}
.event-card a:not(.btn):not(.btn-primary),.card a:not(.btn):not(button){color:#a80d17}
.event-card a:hover,.card a:hover{text-decoration:underline}
.schedule-table{width:100%;border-collapse:collapse}
.schedule-table th{background:#19202a!important;color:#fff!important;padding:12px!important}
.schedule-table td{padding:12px!important;color:#202a37!important;border-bottom:1px solid #e6eaf0!important}
.schedule-card{overflow-x:auto}
.site-footer{background:#101318!important;color:#c4cbd5!important}
.site-footer a{color:#fff!important}
.container{max-width:940px!important;padding:24px 16px 60px!important}
.container .card{padding:clamp(18px,3vw,32px)!important;margin-top:20px!important}
.container h1{font-size:clamp(26px,3.4vw,38px)!important;letter-spacing:-.03em!important}
.container h2{font-size:22px!important}
.container label{font-size:15px!important;font-weight:650!important;color:#243142!important}
.container input,.container select,.container textarea{font-size:16px!important;min-height:44px!important;padding:11px 13px!important;border:1px solid #bbc6d4!important;border-radius:9px!important;background:#fff!important;color:#141c27!important}
.container input:focus,.container select:focus,.container textarea:focus{outline:3px solid #d7192033!important;border-color:#c81922!important}
.container button{min-height:46px!important;padding:12px 22px!important;font-size:16px!important;border-radius:9px!important}
.s3-register-banner{background:linear-gradient(90deg,#101318e8,#10131888),url('/assets/hero.jpg') center 47%/cover;border-radius:16px;color:#fff;padding:clamp(25px,5vw,48px);margin:22px 0 8px}
.s3-register-banner .eyebrow{font-size:12px;font-weight:900;letter-spacing:.17em;color:#ff858b;text-transform:uppercase}
.s3-register-banner h1{color:#fff!important;margin:8px 0!important}
.s3-register-banner p{color:#e6e9ee!important;font-size:15px}
@media(max-width:768px){.event-hero-inner{padding:26px 16px!important}.event-hero-image img{min-height:180px!important}.schedule-table{min-width:630px}.hero-cta{display:flex;flex-wrap:wrap;gap:10px}.container{padding:16px 12px 40px!important}}
