:root{--ink:#18191c;--deep:#101114;--red:#cc1834;--red-dark:#96152a;--paper:#f5f5f3;--white:#fff;--muted:#6b6d72;--line:#e2e2df;--gold:#d6b977;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit}button{cursor:pointer}.skip-link{position:absolute;left:-9999px;top:10px;z-index:30;background:#fff;padding:10px}.skip-link:focus{left:10px}.eyebrow{color:var(--red);font-size:10px;font-weight:900;letter-spacing:.16em}.eyebrow-light{color:#ffbec8}
.score-ribbon{position:relative;z-index:8;background:#101114;color:#fff;border-bottom:2px solid var(--red)}.score-ribbon-inner{max-width:var(--max);min-height:48px;margin:auto;padding:0 22px;display:flex;align-items:center;gap:20px}.ticker-brand{display:flex;align-items:center;gap:8px;flex:0 0 auto;color:#fff;font-size:9px;font-weight:900;letter-spacing:.14em}.ticker-puck{display:grid;place-items:center;width:20px;height:20px;border:1px solid #777;border-radius:50%;color:var(--red);font-size:11px}.ticker-week{flex:0 0 auto;color:#aaa;font-size:10px;font-weight:700}.ticker-window{min-width:0;flex:1;overflow:hidden}.ticker-track{display:flex;align-items:center;gap:10px;min-height:46px;white-space:nowrap}.ticker-empty{color:#c9c9ca;font-size:11px}.ticker-game{display:inline-flex;align-items:center;gap:8px;padding:0 15px;border-left:1px solid #34353a;font-size:10px}.ticker-game time{color:#f4a6b2;font-size:9px;font-weight:900}.ticker-game b{font-weight:700}.ticker-game strong{padding:2px 7px;border-radius:4px;background:#28292d;font-size:11px}.ticker-game .upcoming{color:#d0d0d1;font-size:10px}.ticker-all{flex:0 0 auto;color:#ffb6c2;font-size:10px;font-weight:800}.ticker-all span{padding-left:4px}
.ticker-track.is-scrolling{width:max-content;animation:league-ticker-scroll 42s linear infinite}.ticker-window:hover .ticker-track.is-scrolling,.ticker-window:focus-within .ticker-track.is-scrolling{animation-play-state:paused}@keyframes league-ticker-scroll{to{transform:translateX(-50%)}}
.league-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{width:min(var(--max),100%);min-height:170px;margin:auto;padding:20px 30px;display:grid;grid-template-columns:180px minmax(0,1fr) 180px;align-items:center;gap:26px}.league-logo{height:126px;display:flex;align-items:center;justify-content:center}.league-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}.district-logo img{width:142px;height:142px}.lcmhl-logo img{width:176px;height:134px}.league-heading{text-align:center}.league-heading .eyebrow{font-size:9px}.league-heading h1{max-width:620px;margin:4px auto 0;font:800 clamp(29px,4.1vw,47px)/.98 'Barlow Condensed',sans-serif;letter-spacing:-.015em}.league-heading p{margin:8px 0 0;color:#77797d;font-size:12px}
.main-nav{position:sticky;top:0;z-index:7;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 5px 14px #10111408}.nav-inner{position:relative;width:min(var(--max),100%);min-height:54px;margin:auto;padding:0 22px;display:flex;align-items:stretch;justify-content:center;gap:3px}.nav-link{height:54px;padding:0 16px;display:flex;align-items:center;gap:8px;border:0;border-bottom:3px solid transparent;background:none;color:#393a3d;font-size:11px;font-weight:800;white-space:nowrap}.nav-link:hover,.nav-link:focus-visible{color:var(--red)}.nav-link.is-current{border-bottom-color:var(--red);color:var(--red)}.nav-group{position:relative;display:flex}.nav-dropdown span:not([aria-hidden="true"]){font:inherit;color:inherit}.nav-dropdown span[aria-hidden="true"]{color:#9a9a9b;font-size:15px}.nav-menu{position:absolute;top:calc(100% - 2px);left:0;min-width:215px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:0 0 9px 9px;box-shadow:0 14px 28px #1011141b;display:none}.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu,.nav-group.is-open .nav-menu{display:grid}.nav-menu a{padding:10px 11px;border-radius:5px;color:#4d4e51;font-size:11px;font-weight:700}.nav-menu a:hover,.nav-menu a:focus-visible{background:#f9edef;color:var(--red-dark)}.nav-admin{position:absolute;right:22px;top:50%;margin:0;transform:translateY(-50%);padding:9px 14px;border-radius:5px;background:var(--red);color:#fff;font-size:10px;font-weight:900;white-space:nowrap}.nav-admin:hover{background:var(--red-dark)}.nav-toggle{display:none}
.welcome-hero{position:relative;overflow:hidden;min-height:405px;padding:64px max(calc((100vw - var(--max))/2 + 34px),34px) 66px;background:#151619 url('media/leagues/lcmhl/images/league/kids-hockey-hero.png') center 12%/cover no-repeat;color:#fff}.welcome-hero:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#111114e8 0%,#111114c9 38%,#11111470 66%,#11111426 100%);pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:580px}.hero-copy h2{margin:11px 0 13px;font:900 clamp(54px,8vw,88px)/.84 'Barlow Condensed',sans-serif;letter-spacing:-.02em;text-transform:uppercase}.hero-copy h2 em{color:var(--red);font-style:normal}.hero-copy p{max-width:480px;margin:18px 0 23px;color:#d6d6d8;font-size:13px}.hero-cta{display:inline-flex;align-items:center;gap:22px;padding:11px 15px;border:1px solid #ffffff65;border-radius:5px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.05em}.hero-cta:hover{background:#ffffff12;border-color:#fff}.hero-cta span{color:#ff7184;font-size:16px}.hero-bottomline{position:absolute;left:max(calc((100vw - var(--max))/2 + 34px),34px);right:max(calc((100vw - var(--max))/2 + 34px),34px);bottom:20px;display:flex;align-items:center;gap:12px;color:#b7b7ba;font-size:8px;font-weight:900;letter-spacing:.16em}.hero-bottomline i{width:4px;height:4px;border-radius:50%;background:#ed4a61}
.page-section{width:min(var(--max),100%);margin:0 auto;padding:64px 26px}.section-heading{margin-bottom:25px;display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.section-heading h2{margin:4px 0;color:#202125;font:800 38px/1 'Barlow Condensed',sans-serif}.section-heading p{margin:8px 0 0;color:var(--muted);font-size:12px}.team-filters{display:flex;gap:9px}.team-filters label{display:grid;gap:4px;color:#77797d;font-size:9px;font-weight:800}.team-filters select{min-width:125px;padding:9px 28px 9px 10px;border:1px solid #d8d8d6;border-radius:5px;background:#fff;color:#343538;font-size:10px;font-weight:700}.team-grid{display:flex;align-items:center;justify-content:space-between;gap:20px;overflow-x:auto;overflow-y:hidden;padding:10px 4px 16px;scrollbar-width:thin}.team-card{flex:1 0 142px;min-width:136px;max-width:180px;height:174px;padding:8px;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;align-items:center;gap:4px;border:0;border-radius:0;background:transparent}.team-card:hover{transform:translateY(-2px)}.team-card-logo{display:block;width:100%;max-width:140px;height:112px;object-fit:contain}.team-card-name{align-self:start;width:100%;min-height:2.2em;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink);font-size:13px;line-height:1.1;font-weight:800;text-align:center;letter-spacing:-.02em}.team-card-name>span,.team-card-name>strong{display:block;max-width:100%;white-space:nowrap}.team-card-name>strong{font-weight:900}.team-card-copy{min-width:0;align-self:center}.team-card-copy small{color:var(--red);font-size:8px;font-weight:900;letter-spacing:.08em}.team-card-copy h3{margin:3px 0;color:#222327;font:800 22px/.98 'Barlow Condensed',sans-serif;overflow-wrap:anywhere}.team-card-copy p{margin:5px 0 0;color:#7a7b80;font-size:9px}.team-card-link{grid-column:2;justify-self:start;margin-top:10px;color:#9d1c31;font-size:9px;font-weight:900}.team-card-link span{padding-left:3px}.team-card.placeholder{grid-column:1/-1;min-height:70px;display:block;color:#777;font-size:12px}.team-loading{grid-column:1/-1;padding:30px;border:1px dashed #cececc;border-radius:8px;background:#fff;color:#777;text-align:center;font-size:12px}
.league-info-grid{padding-top:0;display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px}.info-feature,.info-stat{min-height:216px;padding:25px;border-radius:8px;background:#fff;border:1px solid var(--line)}.info-feature{background:#f0e6e8;border-color:#ebdadd}.info-feature h2{margin:8px 0;font:800 35px/1 'Barlow Condensed',sans-serif}.info-feature p,.info-stat p{max-width:420px;color:#66686d;font-size:11px}.info-feature>a{display:inline-block;margin-top:10px;color:#941b30;font-size:10px;font-weight:900}.info-feature>a span{margin-left:8px}.stat-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#f7e9ec;color:var(--red);font-size:16px}.info-stat strong{display:block;margin:20px 0 0;font:800 24px 'Barlow Condensed',sans-serif}.info-stat p{margin:5px 0}.info-stat-red .stat-icon{background:#24191b;color:#fff}
.game-center{padding-top:55px;padding-bottom:58px;border-top:1px solid var(--line)}.outline-link{padding:9px 13px;border:1px solid #d8c8cb;border-radius:5px;color:#842032;font-size:10px;font-weight:900}.outline-link span{margin-left:9px}.weekly-games{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.week-game{min-height:68px;padding:12px 18px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:14px;border-bottom:1px solid #ededeb}.week-game:last-child{border-bottom:0}.week-game-date{color:#961b31;font-size:9px;font-weight:900;line-height:1.25;text-transform:uppercase}.week-game-date strong{display:block;color:#333438;font:800 22px 'Barlow Condensed',sans-serif}.week-game-match{min-width:0;display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800}.week-game-match span{color:#b0b0b0;font:900 9px 'Barlow Condensed',sans-serif}.week-game-info{color:#77797d;font-size:9px;text-align:right}.week-game-score{padding:4px 8px;border-radius:4px;background:#202125;color:#fff;font-size:11px;font-weight:900}.empty-games{margin:0;padding:25px;color:#77797d;text-align:center;font-size:11px}.game-center-links{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.game-center-links>a{min-height:84px;padding:16px;border:1px solid var(--line);border-radius:7px;background:#fff}.game-center-links>a>span{display:block;color:#9b2034;font-size:8px;font-weight:900;letter-spacing:.12em}.game-center-links strong{display:block;margin-top:8px;font:800 20px/1 'Barlow Condensed',sans-serif}.game-center-links strong b{float:right;color:var(--red);font:800 15px 'DM Sans',sans-serif}.anchor-alias{position:relative;top:-85px;display:block;visibility:hidden}
.resources-section{padding-top:58px}.resource-groups{display:grid;gap:12px}.resource-card{position:relative;min-height:128px;padding:20px;display:grid;grid-template-columns:44px minmax(0,1fr) 190px;align-items:center;gap:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.resource-index{align-self:start;color:#c7c7c6;font:800 21px 'Barlow Condensed',sans-serif}.resource-card h3{margin:3px 0;font:800 24px/1 'Barlow Condensed',sans-serif}.resource-card p{max-width:650px;margin:6px 0 0;color:#73757a;font-size:10px}.resource-card>a{justify-self:end;padding:10px 12px;border-radius:5px;background:#242529;color:#fff;font-size:9px;font-weight:900}.resource-card>a b{padding-left:8px;color:#ff8798}.officials-card{background:#f2f0ef}.officials-card>a{background:var(--red)}.league-footer{min-height:86px;padding:18px max(calc((100vw - var(--max))/2 + 26px),26px);display:flex;align-items:center;gap:14px;background:#151619;color:#dadadc;font-size:10px}.footer-crest img{width:52px;height:46px;object-fit:contain}.league-footer>span{font-weight:800}.league-footer>a:not(.footer-crest){margin-left:auto;color:#ffb8c2;font-weight:800}.league-footer .back-top{margin-left:15px!important;color:#d0d0d1!important}
@media(max-width:980px){.nav-inner{gap:0;padding:0 12px}.nav-link{padding:0 10px;font-size:10px}.hero-mark{right:7%;width:230px;height:230px}.hero-star{width:95px;height:95px}.header-inner{grid-template-columns:135px minmax(0,1fr) 145px;gap:14px}.league-logo{height:112px}.district-logo img{width:120px;height:120px}.lcmhl-logo img{width:140px;height:112px}}
@media(max-width:700px){.score-ribbon-inner{min-height:42px;padding:0 13px;gap:9px}.ticker-brand{font-size:8px}.ticker-puck{width:17px;height:17px}.ticker-week{display:none}.ticker-track{min-height:41px}.ticker-game{gap:5px;padding:0 9px;font-size:9px}.ticker-all{font-size:9px}.header-inner{min-height:130px;padding:14px 13px;grid-template-columns:82px minmax(0,1fr) 82px;gap:8px}.league-logo{height:84px}.district-logo img{width:80px;height:80px}.lcmhl-logo img{width:82px;height:78px}.league-heading .eyebrow{font-size:7px;letter-spacing:.1em}.league-heading h1{font-size:clamp(23px,6vw,35px)}.league-heading p{font-size:9px;margin-top:5px}.main-nav{min-height:47px}.nav-toggle{width:100%;min-height:47px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border:0;background:#fff;color:#292a2d;font-size:11px;font-weight:900}.nav-toggle-icon{color:var(--red);font-size:17px}.nav-inner{position:absolute;top:100%;left:0;right:0;padding:5px 12px 12px;display:none;align-items:stretch;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #1112}.nav-inner.is-open{display:flex}.nav-link{width:100%;height:auto;min-height:42px;padding:0 9px;justify-content:space-between;border-bottom:1px solid #f0eeee}.nav-group{display:block}.nav-menu{position:static;min-width:0;padding:2px 0 5px 12px;border:0;border-radius:0;box-shadow:none}.nav-group .nav-menu{display:none}.nav-group.is-open .nav-menu,.nav-group:focus-within .nav-menu{display:grid}.nav-menu a{padding:8px}.nav-admin{position:static;right:auto;top:auto;align-self:stretch;margin:9px 0 0;transform:none;padding:11px}.welcome-hero{min-height:355px;padding:52px 22px 62px}.hero-copy{max-width:480px}.hero-copy h2{font-size:62px}.hero-copy p{max-width:360px;font-size:11px}.hero-mark{right:-68px;top:53%;width:220px;height:220px;opacity:.3}.hero-bottomline{left:22px;right:22px;gap:7px;font-size:7px;letter-spacing:.1em}.page-section{padding:48px 18px}.section-heading{align-items:flex-start;flex-direction:column;gap:14px}.section-heading h2{font-size:33px}.team-filters{width:100%}.team-filters label{flex:1}.team-filters select{width:100%;min-width:0}.team-grid{gap:12px}.team-card{flex-basis:132px;min-width:124px;height:162px;padding:6px}.team-card-logo{height:104px}.team-card-name{font-size:11.5px}.team-card-copy h3{font-size:19px}.league-info-grid{padding-top:0;grid-template-columns:1fr 1fr;gap:9px}.info-feature{grid-column:1/-1;min-height:180px}.info-stat{min-height:150px;padding:17px}.info-stat strong{margin-top:13px;font-size:21px}.game-center-links{grid-template-columns:1fr}.game-center-links>a{min-height:70px}.week-game{grid-template-columns:54px minmax(0,1fr);gap:9px;padding:12px}.week-game-match{flex-wrap:wrap;font-size:10px}.week-game-info{grid-column:2;text-align:left}.week-game-score{grid-column:2;justify-self:start}.resource-card{grid-template-columns:28px minmax(0,1fr);gap:8px;padding:16px}.resource-card>a{grid-column:2;justify-self:start}.resource-index{font-size:17px}.league-footer{padding:17px;flex-wrap:wrap;gap:8px}.league-footer>span{flex:1}.league-footer>a:not(.footer-crest){margin-left:0}.league-footer .back-top{margin-left:auto!important}}
@media(max-width:400px){.header-inner{grid-template-columns:65px minmax(0,1fr) 65px;gap:4px}.district-logo img,.lcmhl-logo img{max-width:64px}.league-heading h1{font-size:22px}.league-heading .eyebrow{font-size:6px}.league-heading p{font-size:8px}.ticker-brand span:last-child{display:none}.team-card{flex-basis:118px;min-width:114px;height:158px}.team-card-logo{height:100px}.team-card-name{font-size:10.5px}.hero-copy h2{font-size:53px}.hero-bottomline{font-size:6px}.week-game-match{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.ticker-track.is-scrolling{animation:none}}

/* Keep every league navigation label the same size as Home. */
.main-nav{--nav-label-size:11px}
.main-nav .nav-link,.main-nav .nav-menu a,.main-nav .nav-admin,.main-nav .nav-toggle{font-family:'DM Sans',Arial,sans-serif;font-size:var(--nav-label-size);line-height:1.55}
@media(max-width:980px){.main-nav{--nav-label-size:10px}}

/* Keep the complete masthead and navigation together during section navigation. */
html{scrollbar-gutter:stable;scroll-padding-top:calc(var(--league-header-height,280px) + 16px)}
.league-site-header{position:sticky;top:0;z-index:20;background:#fff}
.league-site-header .main-nav{position:relative;top:auto}
@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}}

/* Reserve the masthead before first paint; keep it independent of page scrolling. */
:root{--league-header-height:276px}
html{scroll-behavior:auto;overflow-anchor:none}
body:has(>.league-site-header){padding-top:var(--league-header-height)}
.league-site-header{position:fixed;inset:0 0 auto;height:var(--league-header-height);width:auto}
.league-site-header .score-ribbon{height:50px}
.league-site-header .league-header{height:171px}
.league-site-header .header-inner{height:170px;min-height:0}
.league-site-header .main-nav{height:55px;min-height:0}
@media(max-width:700px){
 :root{--league-header-height:223px}
 .league-site-header .score-ribbon{height:44px}
 .league-site-header .league-header{height:131px}
 .league-site-header .header-inner{height:130px}
 .league-site-header .main-nav{height:48px}
}

/* The masthead uses installed fonts so loading web fonts cannot resize it. */
.league-site-header,.league-site-header .main-nav .nav-link,.league-site-header .main-nav .nav-menu a,.league-site-header .main-nav .nav-toggle{font-family:Arial,Helvetica,sans-serif}
.league-site-header .league-heading h1{font-family:'Arial Narrow',Arial,Helvetica,sans-serif;font-size:clamp(25px,3.2vw,38px);font-weight:800;line-height:1.05}
.league-site-header .league-heading{min-width:0}
.league-site-header .league-logo img{flex:none}
.league-site-header .district-logo img{width:142px;height:126px}
.league-site-header .lcmhl-logo img{width:176px;height:126px}
@media(max-width:980px){.league-site-header .district-logo img{width:120px;height:112px}.league-site-header .lcmhl-logo img{width:140px;height:112px}}
@media(max-width:700px){.league-site-header .league-heading h1{font-size:clamp(20px,4.5vw,29px)}.league-site-header .district-logo img{width:80px;height:80px}.league-site-header .lcmhl-logo img{width:82px;height:78px}}
@media(max-width:400px){.league-site-header .league-heading h1{font-size:20px}.league-site-header .district-logo img,.league-site-header .lcmhl-logo img{width:64px;height:64px}}

/* Stronger masthead lettering without changing its dimensions. */
.league-site-header .league-heading h1{font-weight:900;text-shadow:.35px 0 currentColor,-.35px 0 currentColor}
.league-site-header .league-heading .eyebrow,.league-site-header .league-heading p,.league-site-header .main-nav .nav-link,.league-site-header .main-nav .nav-menu a{font-weight:900}


/* Match the welcome heading's typeface. */
.league-site-header .league-heading h1,.league-site-header .main-nav .nav-link,.league-site-header .main-nav .nav-menu a,.league-site-header .main-nav .nav-toggle{font-family:'Barlow Condensed',sans-serif;font-weight:900;text-shadow:none}


/* Larger Barlow header lettering within the existing fixed masthead. */
.league-site-header .league-heading h1{font-size:clamp(29px,3.8vw,46px)}
.league-site-header .main-nav{--nav-label-size:14px}
@media(max-width:980px){.league-site-header .main-nav{--nav-label-size:13px}}
@media(max-width:700px){.league-site-header .league-heading h1{font-size:clamp(23px,5vw,32px)}}
@media(max-width:400px){.league-site-header .league-heading h1{font-size:23px}}


/* Explicit two-line league title. */
.league-site-header .league-heading h1{font-size:clamp(32px,4.3vw,54px);line-height:.94}
.league-site-header .league-heading h1>span{display:block;white-space:nowrap}
@media(max-width:980px){.league-site-header .league-heading h1{font-size:clamp(32px,4.5vw,44px)}}
@media(max-width:700px){.league-site-header .league-heading h1{font-size:clamp(20px,4.8vw,32px)}}
@media(max-width:400px){.league-site-header .league-heading h1{font-size:clamp(16px,4.8vw,20px)}}


/* Match navigation to the association name above the title. */
.league-site-header .main-nav .nav-link,.league-site-header .main-nav .nav-menu a,.league-site-header .main-nav .nav-toggle,.league-site-header .main-nav .nav-admin{font-family:Arial,Helvetica,sans-serif;font-weight:900}


/* Match the association name's responsive text size. */
.league-site-header .main-nav{--nav-label-size:9px}
@media(max-width:700px){.league-site-header .main-nav{--nav-label-size:7px}}
@media(max-width:400px){.league-site-header .main-nav{--nav-label-size:6px}}


.league-site-header .main-nav .nav-link,.league-site-header .main-nav .nav-menu a,.league-site-header .main-nav .nav-toggle,.league-site-header .main-nav .nav-admin{text-transform:uppercase}


/* Center the complete text block with equal space above and below. */
.league-site-header .header-inner{align-items:center}
.league-site-header .league-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:center;gap:8px;margin:0;padding:0}
.league-site-header .league-heading .eyebrow{display:block;margin:0;line-height:1.2}
.league-site-header .league-heading h1{margin:0}
.league-site-header .league-heading p{margin:0;line-height:1.4}
@media(max-width:700px){.league-site-header .league-heading{gap:6px}}


/* Add breathing room below the tagline while keeping masthead height stable. */
.league-site-header .league-heading{padding-bottom:16px}


/* Extend the masthead below its existing contents by 32px. */
:root{--league-header-height:308px}
.league-site-header .league-header{height:203px}
.league-site-header .league-heading{padding-bottom:0}
@media(max-width:700px){:root{--league-header-height:255px}.league-site-header .league-header{height:163px}}


/* Center within the full masthead, balancing space above and below the text. */
.league-site-header .header-inner{height:202px;padding-top:20px;padding-bottom:20px;align-items:center}
.league-site-header .league-heading{padding:0;margin:0;align-self:center}
@media(max-width:700px){.league-site-header .header-inner{height:162px;padding-top:14px;padding-bottom:14px}}


/* Reveal the title only in its final font; preserve both lines while it loads. */
.league-site-header .league-heading h1{height:1.88em;flex-shrink:0;visibility:hidden}
.header-font-ready .league-site-header .league-heading h1{visibility:visible}
.header-font-fallback .league-site-header .league-heading h1{font-family:'Arial Narrow',Arial,sans-serif;visibility:visible}

.member-section-heading p{max-width:960px;line-height:1.7}.member-section-heading p strong{font-weight:700}.d4-members-section{padding-top:12px}.d4-member-card .team-card-name{margin:0;font-family:'DM Sans',Arial,sans-serif}.d4-member-grid{align-items:stretch}.d4-member-card:hover{transform:none}

/* Soft outlined cards for both member directories. */
.teams-section .team-card,.d4-members-section .team-card{border:1px solid #dededb;border-radius:12px;background:#fff;box-shadow:0 3px 10px #18191c0c}


/* Let member descriptions fill the available section width before wrapping. */
.member-section-heading>div{width:100%;min-width:0}
.member-section-heading p{max-width:none;width:100%}


/* Single-line member descriptions on desktop; natural wrapping on smaller screens. */
@media(min-width:1100px){.member-section-heading p{font-size:clamp(8.5px,.78vw,10px);white-space:nowrap;letter-spacing:-.015em}}


@media(min-width:1100px){.member-section-heading p{font-size:12px;white-space:nowrap;letter-spacing:normal}}

/* Bring the two member sections closer together. */
.teams-section.page-section{padding-bottom:20px}
.d4-members-section.page-section{padding-top:8px}


.d4-member-card:focus-visible{outline:3px solid var(--red);outline-offset:4px}.d4-members-section a.d4-member-card:hover{border-color:#c7a0a6;box-shadow:0 5px 14px #18191c14}

/* Animate section navigation while keeping the fixed header in place. */
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


.nav-menu{max-height:calc(100dvh - var(--league-header-height) - 18px);overflow-y:auto}.nav-group:last-child .nav-menu{left:auto;right:0;min-width:285px}.nav-subgroup summary{padding:10px 11px;border-radius:5px;color:#4d4e51;cursor:pointer;font:900 var(--nav-label-size)/1.55 Arial,Helvetica,sans-serif;text-transform:uppercase}.nav-subgroup summary:hover,.nav-subgroup summary:focus-visible{background:#f9edef;color:var(--red-dark)}.nav-submenu{padding-left:12px;display:grid;border-left:2px solid #e2e2df;margin-left:12px}.nav-subgroup summary:focus-visible{outline:2px solid var(--red);outline-offset:-2px}@media(max-width:700px){.nav-group:last-child .nav-menu{min-width:0}.nav-submenu{margin-left:6px}.nav-inner.is-open{max-height:calc(100dvh - var(--league-header-height));overflow-y:auto}.nav-menu{max-height:none;overflow:visible}}

.member-associations-page{padding-bottom:40px}.member-associations-page>.who-page-title{width:min(1180px,100%);margin:0 auto;padding:42px 26px 20px}.member-associations-page .teams-section{padding-top:20px}.nav-group:nth-last-child(-n+2) .nav-menu{left:auto;right:0;min-width:300px}.nav-menu a{overflow-wrap:anywhere}.nav-subgroup{min-width:0}@media(max-width:700px){.nav-group:nth-last-child(-n+2) .nav-menu{min-width:0}.member-associations-page>.who-page-title{padding:30px 18px 16px}}
