:root{--ice:#f0f4f9;--ice-bright:#fff;--ice-dim:#b8c4d4;--black:#050608;--black-soft:#0d1014;--black-card:#14181f;--steel:#2a313c;--steel-mid:#4a5260;--steel-soft:#7b8696;--red:#ed1e2c;--red-deep:#b8141f;--blue:#2d8ddb;--line:#f0f4f91a;--line-strong:#f0f4f940;--display:"Big Shoulders Display", "Oswald", "Impact", sans-serif;--body:"Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--maxw:1480px;--gutter:32px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--body);color:var(--ice);background:var(--black);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"tnum";font-size:15px;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto;position:relative}.eyebrow{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ice-dim);align-items:center;gap:12px;font-size:11px;font-weight:500;display:inline-flex}.eyebrow .bar{background:var(--red);width:28px;height:2px;display:inline-block}.eyebrow.red{color:var(--red);font-weight:700}.placeholder-fill{background:linear-gradient(135deg, var(--red) 0%, var(--red-deep) 55%, var(--black) 100%)}.live-dot{background:var(--red);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.4s ease-in-out infinite gameday-pulse;display:inline-block}@keyframes gameday-pulse{0%,to{box-shadow:0 0 #ed1e2cb3}50%{box-shadow:0 0 0 6px #ed1e2c00}}.display{font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;font-weight:900;line-height:.85}.display-md{font-weight:800}.led-ribbon{background:var(--red);color:var(--ice-bright);border-bottom:1px solid #0003;overflow:hidden}.led-ribbon .track{white-space:nowrap;width:max-content;font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;padding:11px 0;font-size:12px;font-weight:600;animation:45s linear infinite ribbon-scroll;display:flex}.led-ribbon .track a{align-items:center;gap:12px;margin-right:56px;display:inline-flex}.led-ribbon .track a:after{content:"●";opacity:.7;margin-left:56px;font-size:10px}@keyframes ribbon-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.site-header{background:var(--black);border-bottom:1px solid var(--line-strong);z-index:50;position:sticky;top:0}.site-header .row{justify-content:space-between;align-items:center;gap:24px;height:72px;display:flex}.brand{flex-shrink:0;align-items:center;gap:14px;min-width:0;display:flex}.brand .brand-logo{object-fit:contain;flex-shrink:0;width:48px;height:48px;display:block}.footer-grid .brand-col .footer-logo{object-fit:contain;width:72px;height:72px;margin:0 0 16px;display:block}.brand .wordmark{font-family:var(--display);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;font-size:24px;font-weight:900;line-height:1}.brand .wordmark .tag{font-family:var(--mono);letter-spacing:.28em;color:var(--steel-soft);margin-top:4px;font-size:9px;font-weight:500;display:block}.nav{flex-shrink:1;align-items:center;gap:0;display:flex}.nav a{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;color:var(--ice-dim);padding:12px 16px;font-size:11px;font-weight:600;transition:color .15s;position:relative}.nav a:hover,.nav a.active{color:var(--ice-bright)}.nav a.active:before{content:"";background:var(--red);height:3px;position:absolute;top:0;left:0;right:0}.header-cta{white-space:nowrap;flex-shrink:0;align-items:center;gap:10px;display:flex}.btn{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);border:0;border-radius:0;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:800;transition:transform .12s,background .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-red{background:var(--red);color:var(--ice-bright)}.btn-red:hover{background:var(--red-deep)}.btn-ice{background:var(--ice);color:var(--black)}.btn-ice:hover{background:var(--ice-bright)}.btn-ghost{color:var(--ice);border:1px solid var(--line-strong);clip-path:none;background:0 0;padding:13px 22px}.btn-ghost:hover{background:var(--black-card);border-color:var(--ice-dim)}.btn .arrow{font-family:var(--display);font-size:18px;line-height:1}.hero{background:var(--black);min-height:760px;position:relative;overflow:hidden}.hero .bg-image{z-index:0;position:absolute;inset:0}.hero .hero-img{width:100%;height:100%}.hero .bg-image:after{content:"";pointer-events:none;background:linear-gradient(#0506088c 0%,#05060840 30%,#050608f2 95%),linear-gradient(90deg,#050608eb 0%,#05060826 55%);position:absolute;inset:0}.hero .faceoff{border:2px solid var(--red);opacity:.18;z-index:1;pointer-events:none;border-radius:50%;width:760px;height:760px;position:absolute;top:50%;right:-120px;transform:translateY(-50%)}.hero .faceoff:before{content:"";border:1px solid var(--red);opacity:.5;border-radius:50%;position:absolute;inset:60px}.hero .faceoff:after{content:"";background:var(--red);opacity:.5;height:1px;position:absolute;top:50%;left:0;right:0}.hero .faceoff-cross{background:var(--red);opacity:.5;width:1px;position:absolute;top:0;bottom:0;left:50%}.hero .content{z-index:2;flex-direction:column;justify-content:space-between;gap:48px;min-height:760px;padding:56px 0 64px;display:flex;position:relative}.scorebug{background:var(--black-card);border:1px solid var(--line-strong);width:fit-content;font-family:var(--mono);align-items:stretch;gap:0;display:flex}.scorebug>div{border-right:1px solid var(--line-strong);flex-direction:column;gap:4px;padding:10px 18px;display:flex}.scorebug>div:last-child{border-right:0}.scorebug .label{letter-spacing:.24em;text-transform:uppercase;color:var(--steel-soft);font-size:9px}.scorebug .value{letter-spacing:.08em;text-transform:uppercase;color:var(--ice-bright);font-size:13px;font-weight:600}.scorebug .live{color:var(--red);align-items:center;gap:8px;display:inline-flex}.hero .title-block{grid-template-columns:1fr;align-items:end;display:grid}.hero h1{font-family:var(--display);letter-spacing:-.02em;text-transform:uppercase;color:var(--ice-bright);margin:0;font-size:clamp(96px,14vw,232px);font-weight:900;line-height:.78}.hero h1 .row1{display:block}.hero h1 .row2{color:var(--red);display:block;position:relative}.hero h1 .row2 .slash{background:var(--ice-bright);width:.08em;height:.7em;margin:0 .05em -.05em;display:inline-block;transform:skew(-12deg)}.hero .sub{font-family:var(--mono);letter-spacing:.32em;text-transform:uppercase;color:var(--ice-dim);margin-top:18px;font-size:12px}.hero .sub strong{color:var(--ice-bright);font-weight:600}.hero .actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero .actions .legend{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);margin-left:8px;font-size:10px}.rink-line{background:linear-gradient(180deg, transparent 0, transparent 5px, var(--red) 5px, var(--red) 9px, transparent 9px), var(--black);height:14px;position:relative}.rink-line:before,.rink-line:after{content:"";background:var(--black);width:50%;position:absolute;top:0;bottom:0}.rink-line:before{border-right:1px solid var(--line-strong);left:0}.rink-line:after{border-left:1px solid var(--line-strong);right:0}.rink-line .red{background:var(--red);z-index:1;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.lower-third{background:var(--black-soft);border-bottom:1px solid var(--line-strong)}.lower-third .row{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.lower-third .cell{border-right:1px solid var(--line-strong);align-items:center;gap:18px;padding:28px;display:flex}.lower-third .cell:last-child{border-right:0}.lower-third .cell .num{font-family:var(--display);color:var(--ice-bright);letter-spacing:-.02em;font-size:64px;font-weight:900;line-height:.82}.lower-third .cell .num em{color:var(--red);vertical-align:super;font-size:.5em;font-style:normal}.lower-third .cell .info{flex-direction:column;gap:4px;display:flex}.lower-third .cell .label{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--steel-soft);font-size:10px}.lower-third .cell .sub{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--ice);font-size:14px;font-weight:700}.block{padding:112px 0;position:relative}.block.dark{background:var(--black)}.block.darker{background:var(--black-soft)}.section-head{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;gap:48px;margin-bottom:64px;padding-bottom:24px;display:grid;position:relative}.section-head:after{content:"";background:var(--red);width:80px;height:3px;position:absolute;bottom:-1px;left:0}.section-head .left .eyebrow{margin-bottom:18px;display:inline-flex}.section-head h2{font-family:var(--display);letter-spacing:-.018em;text-transform:uppercase;color:var(--ice-bright);margin:0;font-size:clamp(56px,7vw,124px);font-weight:900;line-height:.84}.section-head h2 em{color:var(--red);font-style:normal}.section-head .right{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--steel-soft);white-space:nowrap;text-align:right;flex-direction:column;align-items:flex-end;gap:8px;font-size:10px;display:flex}.section-head .right strong{color:var(--ice-bright);font-weight:600}.teams-teaser{max-width:640px}.teams-teaser .lede{opacity:.95;margin:0 0 32px;font-size:17px;line-height:1.55}.scoreboard{background:var(--black-card);border:1px solid var(--line-strong)}.scoreboard .header{background:var(--black);border-bottom:1px solid var(--line-strong);font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--steel-soft);grid-template-columns:110px 1fr 130px 220px 100px;gap:24px;padding:16px 24px;font-size:10px;display:grid}.scoreboard .game{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr 130px 220px 100px;align-items:center;gap:24px;padding:22px 24px;transition:background .15s;display:grid}.scoreboard .game:hover{background:var(--steel)}.scoreboard .game:last-child{border-bottom:0}.scoreboard .practice-row{opacity:.72}.scoreboard .practice-row:hover{opacity:1}.scoreboard .practice-label{color:var(--steel-mid,#7a8a9a);letter-spacing:.04em;font-style:italic}.scoreboard .practice-link{text-align:right;color:var(--steel-mid,#7a8a9a);letter-spacing:.08em;text-transform:uppercase;cursor:default;font-size:11px}.scoreboard .date{align-items:baseline;gap:10px;display:flex}.scoreboard .date .day{font-family:var(--display);color:var(--ice-bright);letter-spacing:-.02em;font-size:40px;font-weight:900;line-height:.8}.scoreboard .date .month{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--red);font-size:11px;font-weight:600}.scoreboard .matchup{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ice-bright);align-items:center;gap:18px;font-size:19px;font-weight:800;display:flex}.scoreboard .matchup .vs{font-family:var(--mono);color:var(--red);letter-spacing:.22em;font-size:10px;font-weight:600}.scoreboard .time{font-family:var(--display);letter-spacing:.04em;font-size:22px;font-weight:800}.scoreboard .venue{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ice-dim);font-size:11px}.scoreboard .venue .tag{margin-right:8px;padding:3px 7px;font-size:9px;font-weight:700;display:inline-block}.scoreboard .venue .tag.home{background:var(--red);color:var(--ice-bright)}.scoreboard .venue .tag.away{border:1px solid var(--line-strong);color:var(--ice-dim);background:0 0}.scoreboard .link{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ice);text-align:right;border-bottom:1px solid var(--red);justify-self:end;padding-bottom:3px;font-size:10px;font-weight:600}.scoreboard-foot{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);justify-content:space-between;align-items:center;margin-top:24px;padding-top:18px;font-size:10px;display:flex}.programs-grid{background:var(--line-strong);border:1px solid var(--line-strong);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.program{background:var(--black-card);flex-direction:column;gap:16px;min-height:380px;padding:32px 28px 36px;transition:background .2s;display:flex;position:relative;overflow:hidden}.program:hover{background:var(--steel)}.program .head{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.program .head .ico{border:2px solid var(--red);width:28px;height:28px;font-family:var(--mono);color:var(--red);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.program .head .num{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);font-size:10px}.program h3{font-family:var(--display);letter-spacing:-.005em;text-transform:uppercase;color:var(--ice-bright);margin:0;font-size:33px;font-weight:900;line-height:.92}.program p{font-family:var(--body);color:var(--ice-dim);flex:1;margin:0;font-size:14px;line-height:1.6}.program .specs{border-top:1px solid var(--line);gap:18px;padding-top:14px;display:flex}.program .specs .spec{flex-direction:column;gap:2px;display:flex}.program .specs .spec .k{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);font-size:9px}.program .specs .spec .v{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--ice-bright);font-size:14px;font-weight:800}.program .link{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--red);align-items:center;gap:8px;font-size:11px;font-weight:600;display:inline-flex}.program .link .arrow{font-family:var(--display);font-size:16px}.north-shore{background:var(--black-soft);position:relative;overflow:hidden}.north-shore:before{content:"NORTH SHORE";font-family:var(--display);color:#f0f4f906;letter-spacing:-.04em;text-transform:uppercase;white-space:nowrap;pointer-events:none;font-size:30vw;font-weight:900;line-height:.8;position:absolute;bottom:-6vw;left:-2vw}.north-shore-grid{z-index:2;grid-template-columns:1.55fr 1fr;align-items:stretch;gap:72px;display:grid;position:relative}.north-shore .img-wrap{min-height:720px;position:relative}.north-shore .ns-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.north-shore .img-wrap .badge{background:var(--red);color:var(--ice-bright);z-index:2;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);font-family:var(--display);align-items:baseline;gap:10px;padding:18px 22px;display:flex;position:absolute;bottom:24px;left:24px}.north-shore .img-wrap .badge .big{letter-spacing:-.01em;font-size:36px;font-weight:900;line-height:1}.north-shore .img-wrap .badge .lbl{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;font-size:10px;font-weight:600}.north-shore .text{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.north-shore .text h2{font-family:var(--display);letter-spacing:-.018em;text-transform:uppercase;color:var(--ice-bright);margin:0 0 28px;font-size:clamp(56px,7vw,104px);font-weight:900;line-height:.84}.north-shore .text h2 em{color:var(--red);font-style:normal}.north-shore .text p{color:var(--ice-dim);max-width:540px;margin:0 0 18px;font-size:16px;line-height:1.65}.north-shore .rinks{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;margin:32px 0 36px;padding-top:24px;display:grid}.north-shore .rink{background:var(--black-card);border-left:2px solid var(--red);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.north-shore .rink .k{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);font-size:9px}.north-shore .rink .v{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ice-bright);font-size:16px;font-weight:800}.tryouts{background:var(--red);color:var(--ice-bright);position:relative;overflow:hidden}.tryouts:before{content:"TRYOUTS";font-family:var(--display);color:#ffffff0f;letter-spacing:-.03em;pointer-events:none;font-size:28vw;font-weight:900;line-height:.8;position:absolute;bottom:-6vw;right:-3vw}.tryouts .row{z-index:2;grid-template-columns:1.3fr 1fr;align-items:center;gap:64px;padding:112px 0;display:grid;position:relative}.tryouts .eyebrow{font-family:var(--mono);letter-spacing:.32em;text-transform:uppercase;align-items:center;gap:14px;margin-bottom:24px;font-size:12px;font-weight:700;display:inline-flex}.tryouts .eyebrow:before{content:"";background:var(--ice-bright);width:36px;height:2px}.tryouts h2{font-family:var(--display);letter-spacing:-.022em;text-transform:uppercase;margin:0 0 28px;font-size:clamp(72px,9vw,168px);font-weight:900;line-height:.82}.tryouts h2 em{-webkit-text-stroke:2px var(--ice-bright);color:#0000;font-style:normal;display:inline-block}.tryouts .lede{opacity:.95;max-width:560px;margin:0 0 36px;font-size:17px;line-height:1.55}.tryouts .ctas{flex-wrap:wrap;gap:12px;display:flex}.tryouts .info-panel{background:var(--black);border:1px solid #0006;padding:32px}.tryouts .info-panel .head{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:baseline;margin-bottom:18px;padding-bottom:16px;display:flex}.tryouts .info-panel .head .title{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;font-size:24px;font-weight:800}.tryouts .info-panel .head .ssn{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ice-dim);font-size:10px}.tryouts .info-panel .row-item{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;justify-content:space-between;padding:12px 0;font-size:11px;display:flex}.tryouts .info-panel .row-item:last-child{border-bottom:0}.tryouts .info-panel .row-item .k{color:var(--steel-soft)}.tryouts .info-panel .row-item .v{font-weight:700}.tryouts .info-panel .row-item .v.red{color:var(--red)}.site-footer{background:var(--black);border-top:4px solid var(--red);padding:72px 0 28px}.footer-grid{border-bottom:1px solid var(--line);grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;display:grid}.footer-grid .brand-col .wordmark{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ice-bright);margin-bottom:16px;font-size:36px;font-weight:900}.footer-grid .brand-col p{color:var(--ice-dim);max-width:320px;margin:0 0 24px;font-size:14px;line-height:1.6}.footer-grid .brand-col .addr{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);font-size:10px;line-height:1.8}.footer-grid h4{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--red);margin:0 0 22px;font-size:10px;font-weight:700}.footer-grid ul{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-grid ul a{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--ice);font-size:17px;font-weight:700;transition:color .15s}.footer-grid ul a:hover{color:var(--red)}.footer-bottom{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--steel-soft);justify-content:space-between;align-items:center;padding-top:24px;font-size:10px;display:flex}.footer-bottom .socials{gap:16px;display:flex}@media (width<=1200px){.brand .wordmark .tag{display:none}.nav a{letter-spacing:.16em;padding:12px 10px}.header-cta .btn-ghost{display:none}}@media (width<=1100px){.nav{display:none}.north-shore-grid{grid-template-columns:1.35fr 1fr;gap:40px}.north-shore .img-wrap{min-height:560px}.programs-grid,.lower-third .row{grid-template-columns:repeat(2,1fr)}.lower-third .cell:nth-child(2){border-right:0}.tryouts .row{grid-template-columns:1fr;padding:80px 0}.footer-grid{grid-template-columns:1fr 1fr}.scoreboard .header,.scoreboard .game{grid-template-columns:100px 1fr 90px 160px}.scoreboard .link,.scoreboard .header span:last-child{display:none}}@media (width<=920px){.programs-grid{grid-template-columns:1fr}.north-shore-grid{grid-template-columns:1fr;gap:48px}}@media (width<=720px){:root{--gutter:20px}.lower-third .row{grid-template-columns:1fr}.lower-third .cell{border-right:0;border-bottom:1px solid var(--line-strong)}.footer-grid{grid-template-columns:1fr}.block{padding:72px 0}.section-head{grid-template-columns:1fr;gap:18px}.section-head .right{text-align:left;white-space:normal;align-items:flex-start}.scoreboard .header,.scoreboard .game{grid-template-columns:80px 1fr}.scoreboard .header span:nth-child(n+3),.scoreboard .time,.scoreboard .venue{display:none}.hero{min-height:620px}.hero .content{min-height:620px;padding:40px 0}}
