:root{--navy:#061f46;--navy2:#03142e;--gold:#c9a745;--gold2:#e2c762;--cream:#f3f0e6;--white:#fff;--ink:#111827;--line:#d8d7d1;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif;background:var(--cream)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:86px;background:var(--navy2);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - var(--max))/2));position:relative;z-index:20;border-bottom:1px solid rgba(255,255,255,.14)}.brand{display:flex;align-items:center;gap:14px}.brand-crest{width:62px;height:62px}.brand-wordmark{width:118px;height:58px;object-fit:cover}.brand .brand-name{display:flex;flex-direction:column;line-height:1}.brand .brand-name strong{font:italic 900 1.45rem/1 Arial,sans-serif;letter-spacing:.07em;transform:skew(-5deg);color:#fff}.brand .brand-name small{font-size:.72rem;letter-spacing:.34em;color:var(--gold);margin-top:10px}.main-nav{display:flex;align-items:center;gap:28px;font-weight:700;text-transform:uppercase;font-size:.82rem;letter-spacing:.08em}.main-nav>a:not(.nav-cta){padding:32px 0;border-bottom:3px solid transparent}.main-nav>a:hover{color:var(--gold)}.nav-cta{background:var(--gold);color:var(--navy2);padding:13px 20px;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}.hero{height:min(760px,calc(100vh - 86px));min-height:620px;position:relative;color:#fff;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(3,20,46,.98) 0%,rgba(3,20,46,.86) 34%,rgba(3,20,46,.18) 72%),linear-gradient(0deg,rgba(3,20,46,.45),transparent 55%)}.hero-content{position:relative;z-index:2;max-width:var(--max);margin:auto;padding:110px 28px 0}.eyebrow{margin:0 0 18px;color:var(--gold2);text-transform:uppercase;font-weight:900;letter-spacing:.18em;font-size:.78rem}.eyebrow.navy{color:var(--navy)}h1,h2,h3{margin:0;line-height:.94;text-transform:uppercase}h1{font:italic 900 clamp(3.5rem,7vw,6.8rem)/1.02 Arial,"Arial Black",sans-serif;letter-spacing:-.012em;max-width:940px}h1 em{font-style:normal;color:var(--gold2)}.hero-copy{max-width:610px;font-size:1.12rem;color:#d9e0ea;margin:28px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 25px;text-transform:uppercase;font-weight:900;font-size:.82rem;letter-spacing:.08em;border:0;cursor:pointer;clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%)}.button.gold{background:var(--gold);color:var(--navy2)}.button.outline{color:#fff;border:1px solid rgba(255,255,255,.65);clip-path:none;background:rgba(6,31,70,.25)}.hero-mark{position:absolute;right:max(24px,calc((100vw - var(--max))/2));bottom:36px;width:160px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28))}.hero-wordmark{width:min(35vw,430px);bottom:38px;color:#fff;display:flex;flex-direction:column;align-items:flex-end;font:italic 900 clamp(2.2rem,4.5vw,4.8rem)/.9 Impact,"Arial Black",sans-serif;letter-spacing:-.018em;text-transform:uppercase;transform:skew(-7deg);filter:drop-shadow(0 7px 16px rgba(0,0,0,.3))}.hero-wordmark span:last-child{font-size:.78em;letter-spacing:-.018em;margin-right:.02em;margin-top:.12em}.score-strip{background:var(--gold);color:var(--navy2);display:grid;grid-template-columns:repeat(3,1fr) 2fr;padding:0 max(28px,calc((100vw - var(--max))/2))}.score-strip>div{padding:22px 24px;border-right:1px solid rgba(6,31,70,.2);display:flex;flex-direction:column}.score-strip strong{font:900 1.35rem/1 Impact,Arial Black,sans-serif;letter-spacing:.04em}.score-strip span{font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;margin-top:6px}.score-strip .next-match{background:var(--navy);color:#fff;justify-content:center}.score-strip .next-match span{color:var(--gold2)}.section{max-width:var(--max);margin:auto;padding:110px 28px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:46px}.section-heading h2,.schedule-intro h2,.story-copy h2,.register-section h2{font:900 clamp(2.8rem,5vw,5rem)/.9 Impact,Arial Black,sans-serif;color:var(--navy);letter-spacing:-.01em}.section-heading>p{max-width:470px;margin:0;color:#56606e}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.program-card{min-height:360px;background:#fff;padding:32px;display:flex;flex-direction:column;border-top:7px solid var(--gold);box-shadow:0 14px 35px rgba(3,20,46,.08)}.program-card.featured{background:var(--gold)}.program-card.dark{background:var(--navy);color:#fff}.card-number{align-self:end;font:900 3rem/1 Impact;color:rgba(6,31,70,.18)}.dark .card-number{color:rgba(255,255,255,.16)}.program-card p{font-size:.74rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;margin:35px 0 14px}.program-card h3{font:900 2.25rem/.95 Impact,Arial Black,sans-serif;color:var(--navy);margin-bottom:15px}.program-card.dark h3{color:var(--gold2)}.program-card>span:not(.card-number){color:#69717c}.program-card.dark>span{color:#bfc7d4}.program-card a{margin-top:auto;font-weight:900;text-transform:uppercase;font-size:.78rem;letter-spacing:.08em}.schedule-section{background:var(--navy);color:#fff;padding:100px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.8fr 1.4fr;gap:90px}.schedule-intro h2{color:#fff}.schedule-intro>p:not(.eyebrow){color:#b8c4d5;max-width:390px;margin:25px 0}.text-link{color:var(--gold2);font-weight:900;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em}.fixture-list{border-top:1px solid rgba(255,255,255,.25)}.fixture-list article{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.18)}.fixture-list time{display:flex;flex-direction:column;align-items:center;border-right:1px solid rgba(255,255,255,.2)}.fixture-list time b{font:900 2.3rem/1 Impact}.fixture-list time span,.fixture small{font-size:.7rem;color:var(--gold2);font-weight:900;letter-spacing:.1em}.fixture{display:flex;flex-direction:column}.fixture strong{font-size:1.08rem;text-transform:uppercase}.fixture strong i{color:var(--gold);font-style:normal;margin:0 7px}.fixture>span{color:#aeb9c8;font-size:.83rem}.badge{font-size:.65rem;border:1px solid var(--gold);padding:6px 8px;color:var(--gold2)}.badge.away{border-color:#8090a6;color:#bec8d5}.badge.event{background:var(--gold);color:var(--navy)}.club-story{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.crest-stage{background:var(--gold);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.crest-stage:before{content:"";position:absolute;width:72%;aspect-ratio:1;border:1px solid rgba(6,31,70,.3);border-radius:50%}.crest-stage img{width:min(70%,460px);position:relative}.crest-stage span{position:absolute;font:900 1rem Impact;letter-spacing:.2em;color:var(--navy)}.crest-stage span:first-child{left:28px;top:28px}.crest-stage span:last-child{right:28px;bottom:28px}.story-copy{background:#fff;padding:90px clamp(40px,8vw,120px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.story-copy p:not(.eyebrow){color:#596271;max-width:570px;margin:28px 0 12px}.story-copy ul{padding:0;list-style:none;margin:8px 0 32px}.story-copy li{padding:8px 0 8px 28px;font-weight:700;position:relative}.story-copy li:before{content:"✓";position:absolute;left:0;color:var(--gold)}.navy-button{background:var(--navy);color:#fff}.section-heading.compact{align-items:center}.dark-link{color:var(--navy)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-grid article{background:#fff;padding:30px;min-height:250px;border-bottom:5px solid var(--navy);display:flex;flex-direction:column}.news-grid span{font-size:.72rem;text-transform:uppercase;color:#7b8490;font-weight:800;letter-spacing:.08em}.news-grid h3{font:900 1.65rem/1.05 Impact,Arial Black,sans-serif;color:var(--navy);margin:35px 0}.news-grid a{margin-top:auto;color:var(--navy);font-weight:900;font-size:.78rem;text-transform:uppercase}.register-section{background:var(--navy2);color:#fff;padding:90px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr 1.25fr;gap:80px;align-items:center}.register-section h2{color:#fff}.register-section>div>p:last-child{color:#bdc7d5;max-width:520px}.register-section form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.register-section label{font-size:.72rem;text-transform:uppercase;font-weight:900;letter-spacing:.08em;color:var(--gold2)}input,select{width:100%;height:48px;margin-top:6px;border:1px solid #78859a;background:#fff;color:#13213a;padding:0 13px;font:inherit}.register-section button{align-self:end}.form-status{grid-column:1/-1;margin:0;color:var(--gold2);min-height:1.5em}footer{background:#020c1c;color:#fff;display:grid;grid-template-columns:1.2fr 1.4fr 1fr auto;align-items:center;gap:30px;padding:38px max(28px,calc((100vw - var(--max))/2));border-top:1px solid rgba(255,255,255,.12)}.footer-brand img{width:54px}.footer-brand strong{font-size:1rem}footer>p{color:#9ba9bc;font-size:.86rem}footer>div{display:flex;gap:18px;font-size:.75rem;text-transform:uppercase;font-weight:800}.menu-toggle{display:none}
@media(max-width:900px){.menu-toggle{display:flex;width:44px;height:40px;background:none;border:0;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span:not(.sr-only){height:2px;background:#fff;width:26px}.main-nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--navy2);padding:24px 28px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta){padding:8px 0}.hero-mark{display:none}.score-strip{grid-template-columns:repeat(3,1fr)}.score-strip .next-match{grid-column:1/-1}.program-grid,.news-grid{grid-template-columns:1fr}.program-card{min-height:290px}.schedule-section,.register-section{grid-template-columns:1fr;gap:50px}.club-story{grid-template-columns:1fr}.crest-stage{min-height:520px}.section-heading{align-items:start;flex-direction:column;gap:18px}footer{grid-template-columns:1fr 1fr}footer>p{display:none}}
@media(max-width:600px){.site-header{height:74px;padding:0 18px}.brand-crest{width:50px;height:50px}.brand .brand-name strong{font-size:1.05rem}.brand .brand-name small{font-size:.52rem;letter-spacing:.26em}.main-nav{top:74px}.hero{min-height:610px}.hero-content{padding:100px 20px 0}h1{font-size:3.25rem;line-height:1.05;letter-spacing:-.008em}.hero-copy{font-size:1rem}.score-strip{grid-template-columns:1fr 1fr;padding:0}.score-strip>div{padding:18px}.score-strip>div:nth-child(3){grid-column:1/-1}.section{padding:76px 20px}.section-heading h2,.schedule-intro h2,.story-copy h2,.register-section h2{font-size:3rem}.schedule-section,.register-section{padding:72px 20px}.fixture-list article{grid-template-columns:60px 1fr}.badge{display:none}.club-story{min-height:0}.crest-stage{min-height:400px}.story-copy{padding:70px 25px}.register-section form{grid-template-columns:1fr}.news-grid h3{font-size:1.5rem}footer{grid-template-columns:1fr;text-align:center;justify-items:center}footer>div{flex-wrap:wrap;justify-content:center}.footer-brand{justify-self:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}








.hero-wordmark{color:#fff!important;font-family:Arial,'Arial Black',sans-serif!important;font-weight:900!important;font-style:italic!important;line-height:1.05!important;letter-spacing:0!important;transform:skew(-5deg)!important;width:min(38vw,470px)!important}.hero-wordmark span{display:block;white-space:nowrap}.hero-wordmark span:last-child{font-size:.72em!important;letter-spacing:.01em!important;margin-top:.22em!important;margin-right:0!important}

/* Local club calendar */
.calendar-panel{grid-column:1/-1;min-width:0;background:#fff;color:var(--navy);padding:24px;border-top:5px solid var(--gold)}
.calendar-note{font-size:.85rem}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.calendar-toolbar h3{font-size:1.4rem;line-height:1.2}.calendar-toolbar button,.event-action,#cancel-event,#undo-event{cursor:pointer;border:1px solid #a8b2c0;background:#f3f0e6;color:var(--navy);padding:10px 14px;font-weight:700;border-radius:4px}
.calendar-scroll{overflow-x:auto}#calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:630px;gap:1px;background:#d8d7d1;border:1px solid #d8d7d1}
.calendar-weekday{background:var(--navy);color:white;padding:10px;text-align:center;font-size:.8rem}.calendar-day,.calendar-empty{background:#fff;min-height:110px;padding:8px}.calendar-empty{background:#f3f0e6}
.calendar-day>span{font-weight:800;display:inline-block;padding:2px 6px}.calendar-today{background:var(--gold);border-radius:50%}.calendar-event{background:#edf1f7;border-left:3px solid var(--gold);margin-top:6px;padding:5px;font-size:.75rem;overflow-wrap:anywhere}
#event-manager{margin-top:24px;border-top:1px solid #d8d7d1;padding-top:20px}#event-manager summary{cursor:pointer;font-size:1.1rem;font-weight:800}#event-manager>p{font-size:.9rem}
#event-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}#event-form label{font-weight:700;font-size:.85rem}.event-wide{grid-column:1/-1}.event-buttons{display:flex;gap:10px;flex-wrap:wrap}
.managed-event{display:flex;gap:12px;align-items:center;border-top:1px solid #d8d7d1;padding:15px 0}.managed-event>div{flex:1;min-width:0;overflow-wrap:anywhere}.managed-event p{margin:4px 0;font-size:.85rem}
.calendar-panel button:focus-visible,#event-manager summary:focus-visible{outline:3px solid #b08113;outline-offset:3px}
@media(max-width:600px){.calendar-panel{padding:15px}.calendar-toolbar{flex-wrap:wrap}#event-form{grid-template-columns:1fr}.managed-event{flex-wrap:wrap}.managed-event>div{flex-basis:100%}}

.next-match strong{font-family:Arial,sans-serif;font-size:1rem;line-height:1.4}.fixture-list time b{font-size:1.3rem}.calendar-event{line-height:1.5}.calendar-event>div{margin-top:5px}.registration-pending h3{line-height:1.2}

.game-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}.game-columns>div{min-width:0}.game-columns h3{font-size:1.35rem;line-height:1.3;color:var(--gold2)}.game-columns p{color:#bdc7d5}.game-columns .fixture-list article{gap:16px;grid-template-columns:60px 1fr}@media(max-width:800px){.game-columns{grid-template-columns:1fr}}

/* Full mobile hero image; content below photo. */
@media(max-width:900px){.hero{height:auto;min-height:0;display:flex;flex-direction:column;background:var(--navy2)}.hero-photo{position:static;inset:auto;display:block;width:100%;height:auto;object-fit:contain;flex:none}.hero-shade{display:none}.hero-content{width:100%;padding:36px 20px 40px;margin:0;max-width:none}.hero h1{font-size:clamp(2rem,7.5vw,4rem);line-height:1.08;overflow-wrap:break-word}.hero-copy{max-width:100%;margin:22px 0 26px}.hero-actions{gap:12px}.hero-actions .button{max-width:100%;text-align:center}}

/* Lightning crest and club shirt */
.brand-crest,.footer-brand img{object-fit:contain;border-radius:50%;flex-shrink:0}.crest-stage img{border-radius:50%;object-fit:contain}.club-kit{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.kit-photo{background:#fff;border-radius:12px;overflow:hidden}.kit-photo img{width:100%;height:auto;max-height:650px;object-fit:contain}.kit-copy h2{font:900 clamp(2.8rem,5vw,5rem)/1 Impact,Arial,sans-serif;color:var(--navy)}.kit-copy>p:not(.eyebrow){color:#596271;margin:24px 0 30px}@media(max-width:800px){.club-kit{grid-template-columns:1fr;gap:30px}.kit-photo img{max-height:520px}}

/* Content-driven hero: do not clip wrapped headings or actions on laptops. */
.hero{height:auto;min-height:0;background:var(--navy2)}
.hero-content{width:100%;padding:32px 28px 64px;min-width:0}
.hero-primary{margin:0 0 28px;position:relative;z-index:3}
.hero h1{font-size:clamp(2.25rem,5.2vw,5rem);line-height:1.05;max-width:940px;overflow-wrap:break-word}
.hero-copy{margin:24px 0;max-width:610px}
.hero-secondary{margin-top:0}
.hero-actions .button{min-height:48px;height:auto;padding:12px 22px;max-width:100%;white-space:normal;text-align:center}
.hero-wordmark{pointer-events:none}
@media(min-width:901px){.hero-content{min-height:560px;padding-bottom:90px}.hero-wordmark{font-size:clamp(2rem,3.5vw,3.5rem);bottom:24px}}
@media(max-width:1100px) and (min-width:901px){.main-nav{gap:15px;font-size:.75rem}.brand .brand-name strong{font-size:1.2rem}.hero-wordmark{display:none}}
@media(max-width:900px){.hero-content{padding:24px 20px 40px}.hero-primary{margin-bottom:24px}.hero h1{font-size:clamp(2rem,7.5vw,4rem)}}

/* SGVLeague winter notice */
.sgv-notice{width:100%;margin:0 0 28px}.sgv-text{display:inline-block;background:var(--gold);color:var(--navy2);font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;line-height:1.4;padding:14px 22px;margin:0 0 18px;clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%)}.sgv-flyer{display:block;width:100%;max-width:560px;height:auto;border:1px solid rgba(255,255,255,.25)}
.sgv-notice .hero-primary{margin:0 0 22px}
.sgv-notice h2.sgv-text{display:block;background:none;clip-path:none;padding:0;margin:0 0 24px;color:#fff;font:italic 900 clamp(2.25rem,5.2vw,5rem)/1.05 Arial,'Arial Black',sans-serif;letter-spacing:-.012em;text-transform:uppercase;max-width:940px;overflow-wrap:break-word}.sgv-notice h2.sgv-text em{font-style:normal;color:var(--gold2)}@media(max-width:900px){.sgv-notice h2.sgv-text{font-size:clamp(2rem,7.5vw,4rem)}}
.sgv-notice h2.sgv-text{font-size:clamp(1.5rem,3vw,2.5rem)}@media(max-width:900px){.sgv-notice h2.sgv-text{font-size:clamp(1.5rem,5.5vw,2.2rem)}}
.sgv-notice .hero-primary{align-items:center}.age-tag{display:inline-flex;align-items:center;min-height:48px;color:#fff;text-transform:uppercase;font:900 .82rem Arial,Helvetica,sans-serif;letter-spacing:.08em}
.sgv-notice.winners{margin:44px 0 0}.winner-photos{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;align-items:start}.winner-photos img{width:100%;height:auto;border:1px solid rgba(255,255,255,.25)}@media(max-width:700px){.winner-photos{grid-template-columns:1fr}}
.winner-photos{grid-template-columns:1fr!important;max-width:900px}.medal{font-style:normal;font-size:.9em}

/* Desktop: keep hero photo at its original size now that the hero content is taller */
@media(min-width:901px){.hero-photo,.hero-shade{height:760px;bottom:auto}.hero-photo{-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}.hero-shade{-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}.hero-wordmark{bottom:auto!important;top:520px}}
.winner-photos{max-width:460px}
