:root{--ink:#122d38;--ink-2:#204350;--orange:#ff6720;--sky:#b9d9eb;--paper:#fafcfb;--white:#fff;--display:'Open Sans','Segoe UI',Arial,sans-serif;--body:'Open Sans','Segoe UI',Arial,sans-serif;--wide:1400px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:20px;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #17485a;outline-offset:4px}::selection{background:#b9d9eb;color:var(--ink)}.skip-link{position:fixed;left:16px;top:-100px;z-index:999;padding:12px 20px;background:#fff;color:var(--ink);font-weight:700}.skip-link:focus{top:12px}h1,h2,h3,p{margin-top:0}
/* One continuous dark masthead, rather than a logo box on white. */
.site-header{background:var(--ink);color:#fff;position:relative;z-index:5}.site-header-inner{width:min(calc(100% - 112px),var(--wide));margin:auto;display:flex;min-height:108px;align-items:center;gap:clamp(26px,4vw,74px)}.brand{display:block;flex:0 1 380px;min-width:250px}.brand img{width:100%;height:auto}.site-nav{display:flex;align-items:center;gap:32px;margin-left:auto;white-space:nowrap}.site-nav a{font-size:16px;line-height:1.5;font-weight:700;text-decoration:none;color:#fff;transition:color .18s ease}.site-nav a:hover{color:var(--sky)}.site-header-date{white-space:nowrap;color:var(--sky);font-size:15px;font-weight:700;letter-spacing:.035em;padding-left:25px;margin:0;border-left:1px solid rgba(185,217,235,.35)}.site-header-date span{color:#fff}
/* The photograph is the composition, never wallpaper hidden behind a box. */
.hero{position:relative;isolation:isolate;min-height:765px;background:#f3f7f8;overflow:hidden}.hero-image{position:absolute;inset:0;margin:0;z-index:-3}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:center 34%}.hero-image figcaption{position:absolute;bottom:26px;right:clamp(25px,4vw,64px);z-index:2;color:#fff;font-size:15px;line-height:1.45;text-shadow:0 1px 8px #000;background:rgba(12,31,40,.72);padding:7px 9px;max-width:300px}.hero-wash{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(248,251,252,.98) 0%,rgba(248,251,252,.98) 26%,rgba(248,251,252,.91) 36%,rgba(248,251,252,.65) 48%,rgba(248,251,252,.15) 67%,transparent 80%)}.hero-inner{width:min(calc(100% - 112px),var(--wide));min-height:765px;margin:auto;display:flex;align-items:center;padding:88px 0 95px}.hero-copy{width:min(650px,53%);padding-right:20px}.eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 22px;font-size:16px;letter-spacing:.075em;text-transform:uppercase;font-weight:700;line-height:1.5;color:var(--ink)}.hero h1{font-family:var(--display);font-size:clamp(54px,5.3vw,88px);font-weight:800;line-height:1.015;letter-spacing:-.065em;margin:0 0 35px;max-width:700px;text-transform:none}.hero h1>span{display:block}.hero-stop{color:var(--orange)}.hero-details{padding-top:17px;position:relative}.hero-details::before{content:"";position:absolute;left:0;top:0;width:100px;height:1px;background:rgba(18,45,56,.4)}.hero-date{font-size:29px;line-height:1.2;letter-spacing:-.025em;font-weight:700;margin:0 0 5px}.hero-location{font-size:19px;font-weight:600;margin:0 0 26px}.hero-intro{font-size:20px;line-height:1.6;max-width:520px;margin-bottom:27px}.hero-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:55px;padding:12px 20px;background:var(--orange);color:#0f2934;border:0;text-decoration:none;font-size:17px;font-weight:700;line-height:1.35;transition:background .2s,transform .2s}.hero-cta:hover{background:var(--orange);transform:translateY(-1px)}.hero-cta .arrow{font-size:23px;font-weight:400}
/* Public, future-compatible countdown: no decorative score cards. */
.countdown-section{background:var(--ink);color:#fff}.countdown-inner{width:min(calc(100% - 112px),var(--wide));min-height:193px;margin:auto;display:grid;grid-template-columns:minmax(235px,.86fr) minmax(420px,1.14fr);gap:54px;align-items:center;padding:31px 0}.countdown-intro .kicker{font-size:14px;font-weight:700;line-height:1.4;color:var(--sky);text-transform:uppercase;letter-spacing:.12em;margin:0 0 9px}.countdown-intro h2{font-family:var(--display);font-size:clamp(24px,2.2vw,32px);line-height:1.23;font-weight:700;letter-spacing:-.04em;margin:0 0 9px}.countdown-static{font-size:16px;color:#d2e6ee;margin:0}.countdown-area{min-width:0}.countdown-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.countdown-item{min-width:0;padding:0 12px 0 22px;border-left:1px solid rgba(185,217,235,.32);display:flex;align-items:flex-start;flex-direction:column}.countdown-item:first-child{border-left:0;padding-left:0}.countdown-value{font-family:var(--display);font-size:clamp(44px,4vw,60px);font-weight:700;line-height:1;letter-spacing:-.055em;color:var(--sky);font-variant-numeric:tabular-nums}.countdown-label{font-size:15px;text-transform:uppercase;font-weight:700;letter-spacing:.015em;color:#fff;padding-top:13px}.countdown-numbers[hidden]{display:none}.countdown-complete{font-size:19px;font-weight:600;margin:0}
/* Editorial journalism, not a card with a colored side panel. */
.announcement{background:#fff}.announcement-inner{width:min(calc(100% - 112px),var(--wide));margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:clamp(54px,7vw,125px);align-items:center;padding:98px 0}.announcement-copy{max-width:750px}.announcement-published{font-size:17px;color:var(--ink-2);margin-bottom:20px}.announcement h2{font-family:var(--display);font-weight:700;font-size:clamp(40px,3.7vw,58px);line-height:1.14;letter-spacing:-.052em;margin:0 0 26px}.announcement h2 em{font-style:normal}.announcement-description{font-size:20px;line-height:1.7;color:#334e5b;max-width:665px;margin-bottom:29px}.news-link{font-weight:700;font-size:17px;display:inline-flex;gap:31px;align-items:center;min-height:48px;text-decoration-thickness:2px;text-underline-offset:5px}.news-link:hover{color:var(--ink);text-decoration-thickness:3px}.news-link span:last-child{font-size:21px;text-decoration:none}.announcement-image{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.announcement-image img{width:100%;height:min(480px,100%);min-height:365px;object-fit:cover;object-position:55% center}.announcement-image figcaption{font-size:16px;color:#476370;margin-top:9px}
/* Archival sequence adds cultural continuity, not decorative hockey UX. */
.heritage{background:#ecf3f5}.heritage-inner{width:min(calc(100% - 112px),var(--wide));margin:auto;padding:80px 0 96px}.heritage-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:34px}.heritage-years{display:flex;gap:12px;align-items:baseline;font-family:var(--display);font-weight:700;font-size:clamp(40px,4vw,59px);line-height:1.1;margin:0;letter-spacing:-.005em;white-space:nowrap}.heritage-sep{color:#72909a}.heritage-current{color:#FF6720}.heritage h2{font-family:var(--body);font-size:clamp(18px,1.5vw,22px);font-weight:600;line-height:1.4;max-width:360px;margin:0}.heritage-images{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}.heritage figure{margin:0;min-width:0}.heritage img{width:100%;height:320px;object-fit:cover}.heritage figure:first-child img{object-position:center 32%}.heritage figcaption{font-size:16px;color:var(--ink-2);margin-top:12px;font-weight:600}
.site-footer{background:var(--ink);color:#dceaf0}.footer-inner{width:min(calc(100% - 112px),var(--wide));margin:auto;padding:51px 0;display:flex;justify-content:space-between;gap:30px}.footer-brand{font-family:var(--display);font-size:24px;font-weight:700;line-height:1.1;color:white;margin:0 0 12px}.footer-brand span{color:var(--sky)}.footer-inner p:not(.footer-brand){font-size:15px;line-height:1.7;margin:0}.footer-review{text-align:right}.footer-review a{font-size:16px;color:var(--sky);font-weight:700;text-underline-offset:4px}.footer-review p{margin-top:8px!important;color:#c9dbe4}.footer-review strong{color:#fff}
@media(max-width:1200px){.site-header-inner,.hero-inner,.countdown-inner,.announcement-inner,.heritage-inner,.footer-inner{width:min(calc(100% - 72px),var(--wide))}.brand{flex-basis:330px}.site-nav{gap:20px}.hero-copy{width:min(610px,59%)}.hero h1{font-size:clamp(55px,6vw,76px)}.hero-wash{background:linear-gradient(90deg,rgba(248,251,252,.99) 0%,rgba(248,251,252,.95) 36%,rgba(248,251,252,.65) 53%,rgba(248,251,252,0) 82%)}}
@media(max-width:850px){.site-header-inner{min-height:84px;gap:20px}.brand{flex-basis:270px;min-width:210px}.site-nav{display:none}.site-header-date{margin-left:auto}.hero{min-height:680px}.hero-inner{min-height:680px}.hero-copy{width:min(570px,67%)}.hero h1{font-size:clamp(51px,7.4vw,64px)}.hero-wash{background:linear-gradient(90deg,rgba(248,251,252,.97) 0%,rgba(248,251,252,.92) 36%,rgba(248,251,252,.6) 61%,rgba(248,251,252,.05) 100%)}.countdown-inner{grid-template-columns:1fr;gap:28px;padding:32px 0}.countdown-numbers{max-width:690px}.announcement-inner{grid-template-columns:1.1fr .9fr;gap:28px}.announcement h2{font-size:44px}.announcement-image img{min-height:320px}.heritage-heading{align-items:flex-start;flex-direction:column;gap:13px}}
@media(max-width:640px){.site-header-inner,.hero-inner,.countdown-inner,.announcement-inner,.heritage-inner,.footer-inner{width:calc(100% - 44px)}.site-header-inner{min-height:80px}.brand{min-width:0;flex:1 1 auto;max-width:320px}.site-header-date{display:none}.hero{min-height:905px;background:var(--ink)}.hero-image{inset:0}.hero-image img{object-position:72% 34%}.hero-wash{background:linear-gradient(180deg,rgba(9,26,34,.02) 0%,rgba(9,26,34,.14) 23%,rgba(9,26,34,.85) 36%,rgba(9,26,34,.97) 62%,rgba(9,26,34,1) 100%)}.hero-inner{min-height:905px;align-items:flex-end;padding:270px 0 80px}.hero-copy{width:100%;padding-right:0;color:#fff}.eyebrow{color:var(--sky);font-size:14px;line-height:1.5;margin-bottom:18px}.hero h1{font-size:clamp(41px,10.8vw,63px);line-height:1.05;letter-spacing:-.055em;margin-bottom:22px}.hero-stop{color:var(--orange)}.hero-details{padding-top:14px}.hero-details::before{background:rgba(255,255,255,.5)}.hero-date{font-size:28px}.hero-location{font-size:18px;margin-bottom:17px}.hero-intro{font-size:19px;margin-bottom:22px;max-width:440px}.hero-cta{font-size:17px;min-height:54px}.hero-image figcaption{bottom:10px;right:22px;font-size:13px;max-width:260px;color:#dceaf0;background:transparent;text-shadow:none;opacity:.8}.countdown-inner{gap:23px}.countdown-intro h2{font-size:30px}.countdown-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}.countdown-item{padding:0 6px 0 12px}.countdown-value{font-size:clamp(35px,10.5vw,54px)}.countdown-label{font-size:14px;letter-spacing:0}.countdown-static{font-size:16px}.announcement-inner{display:flex;flex-direction:column;align-items:stretch;padding:67px 0 82px;gap:39px}.announcement h2{font-size:clamp(35px,8.7vw,49px)}.announcement-description{font-size:18px}.announcement-image img{height:285px;min-height:0}.heritage-inner{padding:58px 0 72px}.heritage-heading{margin-bottom:26px}.heritage-years{font-size:clamp(36px,9.5vw,50px);gap:10px}.heritage-images{grid-template-columns:1fr 1fr;gap:10px}.heritage img{height:200px}.heritage figcaption{font-size:15px;line-height:1.4}.footer-inner{flex-direction:column;gap:27px}.footer-review{text-align:left}}
@media(max-width:370px){.site-header-inner,.hero-inner,.countdown-inner,.announcement-inner,.heritage-inner,.footer-inner{width:calc(100% - 36px)}.site-header-inner{min-height:73px}.brand{max-width:274px}.hero{min-height:950px}.hero-inner{min-height:950px;padding-top:250px;padding-bottom:70px}.hero h1{font-size:clamp(35px,10.2vw,41px);overflow-wrap:normal}.hero-date{font-size:24px}.hero-cta{width:100%;gap:14px}.countdown-item{padding-left:9px}.countdown-value{font-size:clamp(32px,10vw,43px)}.countdown-label{font-size:13px}.announcement h2{font-size:clamp(32px,9.8vw,38px);overflow-wrap:anywhere}.heritage-years{font-size:32px;gap:7px}.countdown-numbers{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:21px}.heritage-images{grid-template-columns:1fr}.heritage img{height:215px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Readability + WCAG 2.2 AA design pass (consolidated after the original art-direction rules). */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header a:focus-visible,.site-footer a:focus-visible{outline-color:#fff;box-shadow:0 0 0 2px var(--ink)}
.hero-cta:focus-visible{outline-color:#17485a;box-shadow:0 0 0 3px #fff}
.site-nav a{display:inline-flex;align-items:center;min-height:44px}

.announcement a:focus-visible{outline-color:#17485a}
.announcement h2,.hero h1{overflow-wrap:break-word}
.announcement h2{hyphens:auto}
.hero-image figcaption{max-width:min(380px,62vw)}
.announcement-image figcaption,.heritage figcaption{line-height:1.5}
#the-event,#official-announcement{scroll-margin-top:1.5rem}
@media(max-width:850px){
 .site-header-inner{flex-wrap:wrap;gap:0 16px;padding:12px 0}
 .site-nav{display:flex;order:3;flex:0 0 100%;gap:24px;margin-left:0;margin-top:8px}
 .site-nav a{font-size:15px;min-height:38px}
}
@media(max-width:640px){
 .site-header-inner{min-height:0}
 .site-nav{gap:22px;justify-content:flex-start}
 .hero-inner{padding-bottom:105px}
 .hero{min-height:990px}
 .hero-inner{min-height:990px}
 .hero-intro{max-width:35rem}
 .hero-image figcaption{font-size:14px;line-height:1.4;right:22px;bottom:16px;max-width:min(310px,calc(100% - 44px))}
 
 .countdown-label{font-size:14px}
 
}
@media(max-width:370px){
 .hero{min-height:1020px}
 .hero-inner{min-height:1020px;padding-top:280px;padding-bottom:120px}
 .hero h1{font-size:clamp(34px,10.5vw,39px)}
 .hero-date{font-size:26px}
 .countdown-label{font-size:14px}
 .site-nav{gap:16px}
 .site-nav a{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.hero-cta:hover{transform:none}}
@media(max-width:640px){
  .heritage-years{font-size:clamp(34px,8.6vw,48px);white-space:normal;flex-wrap:wrap;gap:clamp(4px,1.4vw,9px)}
  .hero-image figcaption{font-size:14px}
  .countdown-label{font-size:14px}
  .heritage figcaption{font-size:14px}
}
@media(max-width:370px){.site-nav a{font-size:15px}.heritage-years{font-size:32px}}
@media(max-width:370px){.site-nav{gap:7px;flex-wrap:wrap}.site-nav a{font-size:14px}}

/* Brand type: the approved PDF uses AXIS ExtraBold for logo artwork and Open Sans Light/Semibold.
   We retain AXIS in the supplied logo graphic and use Open Sans for accessible website copy.
   No AXIS font binary is bundled or redistributed. */
.hero h1, .announcement h2 {hyphens: none; text-wrap: balance;}
.hero-cta {border:0; border-radius:0; box-shadow:none;}
.hero-cta:focus-visible {outline:3px solid #123544;outline-offset:4px;box-shadow:0 0 0 3px #fff;}
.countdown-complete[hidden],.countdown-numbers[hidden] {display:none;}
.countdown-section h2 {text-wrap:balance;}
.announcement-published {line-height:1.5;}
@media (max-width: 640px) {
  .hero h1 {text-wrap:initial; overflow-wrap:normal;}
  .announcement h2 {text-wrap:initial;}
}
@media (max-width: 370px) {
  .hero h1 {font-size:clamp(33px,10vw,36px);letter-spacing:-.055em;}
  .countdown-numbers {grid-template-columns:repeat(3,minmax(0,1fr));}
  .countdown-item {padding-left:9px;}
  .countdown-label {font-size:14px;}
}

/* Preserve all heading text when the visitor increases letter spacing. */
.hero h1 > span { overflow-wrap:normal; }


/* v4 simplification pass */
.hero-intro{margin-bottom:0}

.announcement{position:relative;background-image:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.91)),url('arena-archive.webp');background-size:cover;background-position:center;background-repeat:no-repeat}
.announcement-inner{display:block;padding:88px 0 94px}
.announcement-copy{max-width:760px}
.announcement-description{max-width:680px}
.announcement-image{display:none!important}
@media(max-width:850px){.announcement-inner{padding:72px 0 80px}}
@media(max-width:640px){.announcement-inner{padding:62px 0 70px}.announcement{background-position:58% center}}

.site-footer{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(18,45,56,.98) 0%,rgba(18,45,56,.94) 50%,rgba(32,67,80,.95) 100%)}
.site-footer::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,45,56,.98) 0%,rgba(18,45,56,.96) 40%,rgba(18,45,56,.89) 100%),none;background-repeat:no-repeat,no-repeat;background-position:center center,right -30px bottom -140px;background-size:auto,430px auto;opacity:1;pointer-events:none}
.footer-inner{position:relative;z-index:1;align-items:flex-end;gap:40px}
.footer-branding{display:grid;gap:22px;max-width:1000px}
.footer-logos{display:flex;flex-wrap:wrap;align-items:center;gap:28px 34px}
.footer-logo{display:block;max-height:54px;width:auto;object-fit:contain}
.footer-logo-membertou{max-height:44px}
.footer-logo-nahc{max-height:52px}
.footer-logo-asc{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:18px;font-weight:700;line-height:1.2;color:#fff;letter-spacing:.01em}
.footer-meta{font-size:15px;line-height:1.7;margin:0;color:#dceaf0}
.footer-review a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:850px){.site-footer::before{background-position:center center,right -40px bottom -120px;background-size:auto,340px auto}.footer-inner{align-items:flex-start}}
@media(max-width:640px){.site-footer::before{background-position:center center,right -70px bottom -75px;background-size:auto,250px auto}.footer-logos{gap:18px 22px}.footer-logo{max-height:42px}.footer-logo-membertou{max-height:34px}.footer-logo-nahc{max-height:44px}.footer-logo-asc{font-size:16px}.footer-review a{font-size:15px}}


/* V5: photographic hierarchy, event-first H1, spacious editorial rhythm. */
/* Hero photo is meaningfully described by alt text; no visible overlay caption. */
.hero-image figcaption{display:none}
.hero{min-height:860px}
.hero-inner{min-height:860px;padding-top:130px;padding-bottom:140px}
.hero-copy{width:min(690px,51%)}
.hero h1{font-family:var(--display);font-size:clamp(43px,4.35vw,73px);font-weight:800;line-height:1.12;letter-spacing:-.054em;max-width:680px;margin-bottom:47px;text-wrap:balance;overflow-wrap:normal;word-break:normal}
.hero h1 .hero-heading-year{display:block;color:var(--orange);font-size:.96em;line-height:1.22;margin-bottom:.12em}
.hero-intro{margin-top:27px;max-width:550px}
.hero-details{padding-top:27px}
/* The countdown is information, not a miniature scoreboard. */
.countdown-inner{min-height:330px;padding:102px 0 108px;gap:80px}
.countdown-intro h2{font-size:clamp(30px,2.75vw,40px);max-width:520px}
/* Each story has its own significant breathing space. */
.announcement-inner{min-height:710px;padding:156px 0 174px}
.announcement-copy{max-width:810px}
.announcement h2{max-width:770px;margin-bottom:36px}
.announcement-description{max-width:760px;margin-bottom:44px}
.heritage-inner{padding:154px 0 170px}
.heritage-heading{margin-bottom:62px}
.heritage-images{gap:26px}
.heritage img{height:390px}
.heritage figcaption{margin-top:18px}
/* Photo-led footer with approved, user-provided vertical marks. */
.site-footer{position:relative;isolation:isolate;overflow:hidden;min-height:525px;background:linear-gradient(135deg,#102b36,#17414e);color:#e7f1f4}
.site-footer::before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(16,43,54,.98) 0%,rgba(16,43,54,.94) 58%,rgba(16,43,54,.83) 100%),none;background-repeat:no-repeat,no-repeat;background-size:cover,540px auto;background-position:center center,right -60px bottom -220px;pointer-events:none}
.footer-inner{display:block;width:min(calc(100% - 112px),var(--wide));margin:0 auto;padding:104px 0 40px}
.footer-logo-grid{display:grid;grid-template-columns:1fr 1.55fr 1fr;gap:clamp(30px,5vw,90px);align-items:center;justify-items:center;max-width:1120px;margin:0 auto 88px}
.footer-partner{min-width:0;display:flex;align-items:center;justify-content:center;min-height:196px;width:100%;text-decoration:none}
.footer-partner img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain}
.footer-partner-membertou img{max-height:205px;max-width:170px}
.footer-partner-nahc img{max-height:200px;max-width:330px}
.footer-partner-asc img{max-height:188px;max-width:180px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}
.footer-bottom p{font-size:16px;margin:0;color:#e0edf1;line-height:1.6}
.footer-bottom a{color:#c7e4ef;font-size:16px;font-weight:700;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.footer-bottom a:hover{color:#fff}
.footer-partner:focus-visible,.footer-bottom a:focus-visible{outline:3px solid #fff;outline-offset:6px}
@media(max-width:1200px){
 .hero-copy{width:min(590px,55%)}
 .hero h1{font-size:clamp(41px,4.4vw,64px)}
 .countdown-inner{gap:50px}
 .footer-inner{width:min(calc(100% - 72px),var(--wide))}
}
@media(max-width:850px){
 .hero{min-height:780px}
 .hero-inner{min-height:780px;padding-top:100px;padding-bottom:100px}
 .hero-copy{width:min(530px,62%)}
 .hero h1{font-size:clamp(38px,5.4vw,52px)}
 .countdown-inner{padding:76px 0 83px;min-height:unset;gap:40px}
 .announcement-inner{padding:118px 0 138px;min-height:unset}
 .heritage-inner{padding:112px 0 130px}
 .heritage-images{gap:18px}
 .heritage img{height:330px}
 .footer-inner{padding:85px 0 38px}
 .footer-logo-grid{gap:20px;margin-bottom:68px}
 .footer-partner-membertou img{max-height:160px;max-width:140px}
 .footer-partner-nahc img{max-height:160px;max-width:250px}
 .footer-partner-asc img{max-height:150px;max-width:145px}
}
@media(max-width:640px){
 .hero{min-height:1030px}
 .hero-inner{min-height:1030px;align-items:flex-end;padding-top:325px;padding-bottom:112px}
 .hero-copy{width:100%}
 .hero h1{font-size:clamp(35px,8.8vw,53px);line-height:1.17;letter-spacing:-.046em;margin-bottom:32px;text-wrap:initial;overflow-wrap:break-word}
 .hero h1 .hero-heading-year{font-size:1em;margin-bottom:4px}
 .hero-details{padding-top:19px}
 .hero-intro{font-size:19px;max-width:33rem;margin-top:24px}
 .countdown-inner{padding:78px 0 86px;gap:36px}
 .countdown-intro h2{font-size:clamp(29px,7.4vw,37px)}
 .announcement-inner{padding:116px 0 128px}
 .announcement h2{margin-bottom:25px}
 .announcement-description{margin-bottom:36px}
 .heritage-inner{padding:110px 0 125px}
 .heritage-heading{margin-bottom:43px}
 .heritage-images{gap:12px}
 .heritage img{height:225px}
 .footer-inner{width:calc(100% - 44px);padding:95px 0 42px}
 .footer-logo-grid{grid-template-columns:1fr 1fr;column-gap:18px;row-gap:42px;margin-bottom:74px}
 .footer-partner{min-height:152px}
 .footer-partner-membertou img{max-height:174px;max-width:120px}
 .footer-partner-nahc img{max-height:130px;max-width:195px}
 .footer-partner-asc{grid-column:1/-1}
 .footer-partner-asc img{max-height:140px;max-width:130px}
 .site-footer::before{background-size:cover,350px auto;background-position:center,right -115px bottom -120px}
 .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}
}
@media(max-width:370px){
 .hero{min-height:1120px}
 .hero-inner{min-height:1120px;padding-top:310px;padding-bottom:118px}
 .hero h1{font-size:clamp(32px,9vw,37px);letter-spacing:-.045em}
 .hero h1 .hero-heading-year{margin-bottom:5px}
 .announcement-inner{padding:104px 0 118px}
 .heritage-inner{padding:98px 0 114px}
 .footer-inner{width:calc(100% - 36px)}
}

/* Hide failed third-party logo image cleanly; show text fallback only if necessary. */




/* v5.4: one continuous, photo-led blue footer.
   No Turtle Cup, split white panel, circles, cards, or logo decoration. */
.site-footer {
  position: relative;
  isolation: isolate;
  background: #102b36;
  color: #f4fbfd;
  min-height: 0;
  overflow: hidden;
}
.site-footer::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(180deg, rgba(10,34,46,.96) 0%, rgba(10,34,46,.93) 36%, rgba(10,34,46,.97) 70%, #102b36 92%, #102b36 100%),
    url('footer-nahc-faceoff-2022.webp');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center, center 56%;
  pointer-events: none;
}
.footer-inner {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
.footer-logo-stage {
  position: relative;
  width: 100%;
  padding: clamp(92px,10vw,152px) max(28px,calc((100vw - 1320px)/2)) clamp(78px,9vw,123px);
  overflow: hidden;
  background: transparent;
}
.footer-logo-stage::before {content: none;}
.footer-logo-grid {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .96fr 1.23fr 1fr .93fr;
  gap: clamp(22px,3.6vw,62px);
  align-items: center;
  justify-items: center;
}
.footer-partner,
.footer-partner-nahc,
.footer-partner-asc {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 218px;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-decoration: none;
  overflow: visible;
  aspect-ratio: auto;
}
.footer-partner img,
.footer-partner-nahc img,
.footer-partner-asc img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  filter: drop-shadow(0 2px 13px rgba(0,15,25,.21));
}
.footer-partner-membertou img {max-width: 174px;max-height: 230px;}
.footer-partner-nahc2027 img {max-width: 260px;max-height: 188px;}
.footer-partner-nahc-circle img {max-width: 170px;max-height: 218px;}
.footer-partner-asc img {max-width: 165px;max-height: 205px;}
.footer-bottom {
  width: min(calc(100% - 112px),1320px);
  margin: 0 auto;
  min-height: 122px;
  padding: 35px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: transparent;
}
.footer-bottom p {color: #e6f2f6;font-size: 16px;line-height: 1.65;margin: 0;}
.footer-bottom a {color: #d4ecf7;font-size: 16px;font-weight: 700;min-height: 44px;display: inline-flex;align-items: center;text-underline-offset: 4px;}
.footer-bottom a:hover {color: #fff;}
.footer-partner:focus-visible,
.footer-partner-nahc-circle:focus-visible,
.footer-partner-asc:focus-visible,
.footer-bottom a:focus-visible {outline: 3px solid #ffffff;outline-offset: 6px;box-shadow: none;}
@media (max-width: 1000px) {
  .footer-logo-stage {padding: 96px 32px 84px;}
  .footer-logo-grid {gap: 26px;}
  .footer-partner-membertou img {max-width: 150px;max-height: 196px;}
  .footer-partner-nahc2027 img {max-width: 220px;max-height: 161px;}
  .footer-partner-nahc-circle img {max-width: 145px;max-height: 190px;}
  .footer-partner-asc img {max-width: 145px;max-height: 187px;}
  .footer-bottom {width: calc(100% - 64px);}
}
@media (max-width: 670px) {
  .footer-logo-stage {padding: 84px 24px 82px;}
  .site-footer::before {
    background-image: linear-gradient(180deg, rgba(10,34,46,.90) 0%,rgba(10,34,46,.80) 42%,rgba(10,34,46,.96) 82%,#102b36 100%),url('footer-nahc-faceoff-2022.webp');
    background-position: center, 54% 52%;
  }
  .footer-logo-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: repeat(2,minmax(178px,auto));
    column-gap: 22px;
    row-gap: 48px;
  }
  .footer-partner,
  .footer-partner-asc {width: 100%;height: 100%;min-height: 178px;grid-column: auto;}
  .footer-partner-membertou img {max-width: 132px;max-height: 185px;}
  .footer-partner-nahc2027 img {max-width: 171px;max-height: 143px;}
  .footer-partner-nahc-circle img {max-width: 136px;max-height: 172px;}
  .footer-partner-asc img {max-width: 138px;max-height: 171px;}
  .footer-bottom {width:calc(100% - 48px);padding: 27px 0 36px;min-height: 130px;flex-direction: column;align-items: flex-start;gap: 9px;}
}
@media (max-width: 370px) {
  .footer-logo-stage {padding: 75px 18px 72px;}
  .footer-logo-grid {column-gap: 14px;row-gap: 36px;grid-template-rows: repeat(2,minmax(166px,auto));}
  .footer-partner,.footer-partner-asc {min-height:166px;}
  .footer-partner-membertou img {max-width: 113px;max-height: 162px;}
  .footer-partner-nahc2027 img {max-width: 148px;max-height: 119px;}
  .footer-partner-nahc-circle img {max-width: 122px;max-height: 153px;}
  .footer-partner-asc img {max-width: 119px;max-height: 145px;}
  .footer-bottom {width:calc(100% - 36px);}
}


/* V6 -- the skate photograph is an independent visual layer. The countdown remains
   real accessible text and can reflow independently at every breakpoint. */
:root{--orange:#FF6720}
.hero h1 .hero-heading-year,.heritage-current{color:var(--orange)}
/* Do not use brand orange for small body text on white; maintain AA contrast. */
.countdown-section{
  position:relative;isolation:isolate;overflow:hidden;
  background:linear-gradient(108deg,#0a2c3f 0%,#0b364e 45%,#0a2b3d 100%);
  color:#fff;
}
.countdown-section::before{
  content:'';position:absolute;z-index:-1;inset:0;
  background:radial-gradient(ellipse at 44% 100%,rgba(8,113,161,.38) 0%,transparent 55%),
             linear-gradient(90deg,#092d40 0%,rgba(9,45,64,.14) 35%,rgba(9,45,64,.1) 53%,#092d40 76%);
  pointer-events:none;
}
.countdown-skate{
  position:absolute;z-index:-2;
  width:43%;height:115%;left:27.5%;top:-7%;
  object-fit:cover;object-position:50% 40%;
  opacity:.92;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 79%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 15%,#000 79%,transparent 100%);
  pointer-events:none;
}
.countdown-inner{
  position:relative;z-index:1;min-height:326px;
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.05fr);
  gap:clamp(28px,5vw,78px);align-items:center;
  padding:76px 0 78px;
}
.countdown-intro{max-width:430px;position:relative}
.countdown-intro h2{
  font-size:clamp(29px,2.8vw,43px);line-height:1.12;
  font-style:italic;font-weight:800;letter-spacing:-.048em;
  text-transform:uppercase;color:#fff;max-width:440px;margin:0 0 16px;
  text-shadow:0 2px 12px rgba(4,16,22,.50), 0 1px 2px rgba(4,16,22,.65);
}

.countdown-static{font-size:16px;line-height:1.65;color:#ebf4f7;max-width:410px;text-shadow:0 1px 10px rgba(4,16,22,.38), 0 1px 2px rgba(4,16,22,.48)}
.countdown-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:end}
.countdown-item{padding:2px 11px 0 20px;min-width:0;border-left:1px solid rgba(233,247,253,.44)}
.countdown-item:first-child{padding-left:0;border-left:0}
.countdown-value{
  font-family:var(--display);font-size:clamp(49px,5vw,77px);font-weight:800;
  line-height:.98;letter-spacing:-.06em;color:var(--orange);
  font-variant-numeric:tabular-nums;font-style:italic;display:block;
  text-shadow:0 3px 18px rgba(4,16,22,.58), 0 1px 2px rgba(4,16,22,.72);
}
.countdown-label{display:block;padding-top:10px;font-weight:800;letter-spacing:.055em;font-size:15px;color:#fff;line-height:1.4;text-shadow:0 1px 10px rgba(4,16,22,.42), 0 1px 2px rgba(4,16,22,.58)}
.countdown-complete{font-size:clamp(24px,2vw,32px);font-weight:700;color:#fff;line-height:1.4}
.countdown-numbers[hidden],.countdown-complete[hidden]{display:none}
@media(max-width:1100px){
 .countdown-inner{gap:34px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
 .countdown-skate{width:54%;left:21%;opacity:.68}
 .countdown-value{font-size:clamp(43px,5.3vw,64px)}
 .countdown-item{padding-left:12px;padding-right:7px}
 .countdown-intro h2{font-size:clamp(28px,3.2vw,36px)}
}
@media(max-width:760px){
 .countdown-skate{
   top:0;left:0;width:100%;height:clamp(215px,35vw,282px);
   object-fit:cover;object-position:50% 43%;opacity:.87;
   -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 100%);
   mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 100%);
 }
 .countdown-section::before{
   background:linear-gradient(180deg,rgba(8,31,46,.08) 0%,rgba(9,37,53,.54) 30%,#092d40 58%,#092d40 100%);
 }
 .countdown-inner{
   display:flex;flex-direction:column;align-items:flex-start;gap:32px;
   min-height:unset;padding:clamp(206px,32vw,260px) 0 76px;
 }
 .countdown-intro{max-width:600px}
 .countdown-intro h2{font-size:clamp(32px,5.1vw,40px);max-width:600px}
 .countdown-static{font-size:16px}
 .countdown-area{width:100%}
 .countdown-value{font-size:clamp(50px,8.8vw,68px)}
 .countdown-item{padding-left:clamp(8px,3vw,19px)}
 .countdown-label{font-size:clamp(13px,1.9vw,15px)}
}
@media(max-width:440px){
 .countdown-skate{height:252px;object-position:48% 50%}
 .countdown-inner{padding-top:223px;padding-bottom:72px;gap:26px}
 .countdown-intro h2{font-size:clamp(29px,7.3vw,33px);max-width:340px}
 .countdown-value{font-size:clamp(43px,10.5vw,50px)}
 .countdown-label{font-size:13px;letter-spacing:.025em}
 .countdown-item{padding-right:4px;padding-left:clamp(7px,2.3vw,12px)}
 .countdown-static{font-size:15px;max-width:340px}
}
@media(max-width:340px){
 .countdown-inner{padding-top:214px}
 .countdown-value{font-size:clamp(39px,10.6vw,43px)}
 .countdown-item{padding-left:7px}
}
/* The approved bright orange is an accent, not a low-contrast body-text colour. */
.hero h1 .hero-heading-year {color:#FF6720}
.hero-details::before {background:#FF6720}
.heritage-years .heritage-current {color:#FF6720}
/* Footer remains the approved four-logo photo version with accessible focus. */
@media(prefers-reduced-motion:reduce){.countdown-skate{animation:none}}


/* Final launch QA adjustments: no additional layout gimmicks. */
/* Maintain visible focus on light and dark surfaces. */
a:focus-visible { outline-offset: 5px; }
.site-header a:focus-visible, .site-footer a:focus-visible {outline:3px solid #fff; outline-offset:5px;}
.announcement a:focus-visible, .heritage a:focus-visible {outline:3px solid #17485a; outline-offset:5px;}
/* Full bright orange is brand-approved. A slight dark edge prevents the large 2027
   display characters from washing out on white ice; it is not used on solid navy. */
.hero .hero-heading-year {text-shadow:0 1px 0 rgba(18,45,56,.76), 0 -1px 0 rgba(18,45,56,.40);}
/* The heritage year is accented with orange but remains readable on pale blue. */
.heritage-years .heritage-current {color:#ff6720; text-shadow:0 1px 0 #17343e, 0 -1px 0 rgba(23,52,62,.68);}
/* Comfortable supporting labels and robust narrow-width spacing. */
@media(max-width:440px) { .countdown-label{font-size:14px;letter-spacing:.015em} }
@media(prefers-reduced-motion:reduce) {html:focus-within{scroll-behavior:auto}}
@media(forced-colors:active) { .hero-wash {background:transparent;} .countdown-item{border-color:CanvasText} .news-link{forced-color-adjust:auto} }

/* NAHC 2027 / V7.3 - EDITORIAL ART DIRECTION
   Two raster overlays only, one diagonal, two genuinely distinct editorial
   compositions. All key content is visible even if JavaScript never runs. */
:root { --orange: #FF6720; --navy: #122d38; --surface: #edf4f6; }

/* The hero is already the strongest photograph. No patterns or added marks. */
.hero { isolation:isolate; }
.hero::after { content:none!important; }
.hero-image { overflow:hidden; }
.hero-image img { transform-origin:72% 42%; }
.hero-copy { position:relative; z-index:1; }
.hero h1 .hero-heading-year { color:var(--orange); }

/* COUNTDOWN: one dynamic slash, a real skate photograph, and a whisper of
   repeating ice-film grain. The numbers stay sharp and unobstructed. */
.countdown-section {
  position:relative;
  isolation:isolate;
  z-index:2;
  margin-top:-54px;
  clip-path:polygon(0 54px,100% 0,100% 100%,0 100%);
  background:linear-gradient(111deg,#0a3045,#0c3c55 50%,#092b40);
  overflow:hidden;
}
.countdown-section::after {
  content:'';position:absolute;z-index:0;inset:0;pointer-events:none;
  background-image:url('texture-ice-spray-512.png');
  background-repeat:repeat;
  background-size:512px 512px;
  opacity:.54;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 19%,#000 76%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 19%,#000 76%,transparent 100%);
}
.countdown-inner {
  position:relative;z-index:1;
  padding-top:130px;
  padding-bottom:104px;
  min-height:385px;
}
.countdown-intro h2,.countdown-static,.countdown-value,.countdown-label {
  position:relative;z-index:2;
}
.countdown-intro h2 { text-shadow:0 2px 14px rgba(2,16,25,.40); }
.countdown-static { text-shadow:0 1px 9px rgba(2,16,25,.28); }
.countdown-value { color:var(--orange); text-shadow:0 2px 13px rgba(2,16,25,.55),0 1px 2px rgba(2,16,25,.6); }
.countdown-label { text-shadow:0 1px 8px rgba(2,16,25,.35); }
.countdown-skate { opacity:.90; }

/* OFFICIAL ANNOUNCEMENT: an open journalistic column, with a clipped arena
   photograph beyond it. The white field protects small-copy contrast. */
.announcement {
  position:relative;isolation:isolate;overflow:hidden;
  background:#f8fafb;
  background-image:none!important;
}
.announcement::before {
  content:'';position:absolute;z-index:0;inset:0 0 0 45%;pointer-events:none;
  background-image:
    linear-gradient(90deg,rgba(249,252,253,.91) 0%,rgba(249,252,253,.47) 66%,rgba(249,252,253,.20) 100%),
    url('arena-archive.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center,58% center;
  clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);
}
.announcement::after { content:none!important; }
.announcement-inner {
  display:block;
  position:relative;z-index:1;
  padding:164px 0 177px;
  min-height:745px;
}
.announcement-copy {max-width:690px;}
.announcement h2 {font-size:clamp(38px,3.55vw,59px);max-width:690px;letter-spacing:-.052em;}
.announcement-description {max-width:680px;}
.announcement-published {color:var(--ink-2);}
.news-link {text-decoration-thickness:2px;text-underline-offset:6px;}

/* HISTORY: an archival exhibition, not another horizontal banner. A compact
   editorial intro is paired with two staggered images on a different plane. */
.heritage {
  position:relative;isolation:isolate;
  background-color:#e9f1f3;
  background-image:none!important;
  overflow:hidden;
}
.heritage::before {
  content:'';position:absolute;z-index:0;inset:0;pointer-events:none;
  background-image:url('texture-archive-print-512.png');
  background-repeat:repeat;
  background-size:512px 512px;
  opacity:.29;
}
.heritage::after {content:none!important;}
.heritage-inner {
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:minmax(280px,.66fr) minmax(0,1.65fr);
  column-gap:clamp(44px,5.8vw,96px);
  align-items:start;
  padding:162px 0 184px;
}
.heritage-heading {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:27px;
  padding-top:25px;
  margin:0;
}
.heritage-years {
  font-size:clamp(25px,2vw,31px);
  gap:8px;
  letter-spacing:-.035em;
  white-space:nowrap;
}
.heritage h2 {
  font-family:var(--display);
  font-size:clamp(32px,2.6vw,43px);
  font-weight:750;
  line-height:1.2;
  max-width:390px;
  letter-spacing:-.047em;
}
.heritage-images {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.88fr);
  align-items:start;
  gap:clamp(16px,2.1vw,31px);
}
.heritage-images figure:first-child {transform:translateY(-30px)}
.heritage-images figure:nth-child(2) {transform:translateY(72px)}
.heritage img {height:clamp(255px,27vw,410px);width:100%;object-fit:cover}
.heritage figure:nth-child(2) img {height:clamp(240px,24vw,362px)}
.heritage figcaption {font-size:16px;line-height:1.5;margin-top:18px}
.heritage-years .heritage-current {color:var(--orange);text-shadow:0 1px 0 #17343e,0 -1px 0 rgba(23,52,62,.68)}

/* FOOTER: keep the successful dark archival photograph and four logos clean. */
.site-footer::after {content:none!important}
.site-footer .footer-inner {position:relative;z-index:1}

/* Minor interactive affordances. Decorative motion is never required for use. */
@media (prefers-reduced-motion:no-preference) {
  .hero-image img {animation:nahc73-hero 3200ms cubic-bezier(.2,.72,.22,1) 1 both}
  .countdown-skate {animation:nahc73-skate 2400ms ease-out 1 both}
  .news-link span[aria-hidden=true] {display:inline-block;transition:transform .24s ease}
  .news-link:hover span[aria-hidden=true] {transform:translate(3px,-2px)}
  .footer-partner img {transition:transform .4s cubic-bezier(.2,.8,.2,1)}
  .footer-partner:hover img {transform:translateY(-4px)}
}
@keyframes nahc73-hero {
  from {transform:scale(1.057) translate3d(-.35%,0,0)}
  to {transform:scale(1) translate3d(0,0,0)}
}
@keyframes nahc73-skate {
  from {transform:scale(1.045)} to {transform:scale(1)}
}
@media (max-width:1100px) {
  .countdown-inner {padding-top:118px;padding-bottom:96px}
  .announcement-inner {min-height:690px;padding:134px 0 148px}
  .announcement::before {inset:0 0 0 48%;}
  .heritage-inner {grid-template-columns:minmax(240px,.75fr) minmax(0,1.4fr);gap:38px}
  .heritage-years {font-size:clamp(22px,2.5vw,28px)}
  .heritage h2 {font-size:clamp(29px,3vw,38px)}
  .heritage-images figure:nth-child(2) {transform:translateY(52px)}
}
@media (max-width:850px) {
  .countdown-section {margin-top:-36px;clip-path:polygon(0 36px,100% 0,100% 100%,0 100%)}
  .countdown-inner {padding-top:108px;padding-bottom:94px}
  .announcement::before {inset:0 0 0 40%;opacity:.45}
  .announcement-inner {min-height:unset;padding:124px 0 136px}
  .announcement-copy {max-width:650px}
  .heritage-inner {display:block;padding:118px 0 148px}
  .heritage-heading {gap:16px;padding:0 0 66px}
  .heritage-years {font-size:clamp(30px,3.2vw,39px)}
  .heritage h2 {font-size:clamp(28px,3.4vw,35px);max-width:600px}
  .heritage-images figure:first-child {transform:none}
  .heritage-images figure:nth-child(2) {transform:translateY(34px)}
}
@media (max-width:760px) {
  .countdown-section {margin-top:-31px;clip-path:polygon(0 31px,100% 0,100% 100%,0 100%)}
  .countdown-inner {padding-top:clamp(216px,35vw,272px);padding-bottom:90px}
  .countdown-section::after {opacity:.40;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 43%,transparent 85%);mask-image:linear-gradient(180deg,#000 0%,#000 43%,transparent 85%)}
  .countdown-skate {animation:none!important}
  .announcement::before {
    inset:35% 0 0 0;
    background-image:linear-gradient(180deg,rgba(249,252,253,.93) 0%,rgba(249,252,253,.76) 55%,rgba(249,252,253,.72) 100%),url('arena-archive.webp');
    background-position:center,center;
    clip-path:polygon(0 14%,100% 0,100% 100%,0 100%);
    opacity:.72;
  }
  .announcement-inner {padding:108px 0 124px}
}
@media (max-width:640px) {
  .countdown-section {margin-top:-24px;clip-path:polygon(0 24px,100% 0,100% 100%,0 100%)}
  .countdown-inner {padding-top:236px;padding-bottom:79px}
  .announcement::before {opacity:.48}
  .announcement-inner {padding:106px 0 127px}
  .announcement h2 {font-size:clamp(34px,8.6vw,44px)}
  .heritage-inner {padding:113px 0 142px}
  .heritage-heading {padding-bottom:38px}
  .heritage-years {font-size:clamp(30px,8.8vw,40px)}
  .heritage h2 {font-size:clamp(29px,7vw,36px)}
  .heritage-images {grid-template-columns:1fr;gap:42px}
  .heritage-images figure:first-child,.heritage-images figure:nth-child(2) {transform:none}
  .heritage-images figure:nth-child(2) {margin-left:clamp(18px,6vw,37px)}
  .heritage img,.heritage figure:nth-child(2) img {height:clamp(225px,60vw,315px)}
}
@media (max-width:370px) {
  .countdown-inner {padding-top:218px}
  .announcement-inner {padding:98px 0 116px}
  .heritage-years {font-size:clamp(27px,8vw,32px);gap:6px}
  .heritage h2 {font-size:29px}
  .heritage-images figure:nth-child(2) {margin-left:17px}
}
@media (prefers-reduced-motion:reduce) {
  .hero-image img,.countdown-skate {animation:none!important;transform:none!important;transition:none!important}
  .news-link span[aria-hidden=true],.footer-partner img {transition:none!important}
  html:focus-within {scroll-behavior:auto}
}
@media (prefers-contrast:more) {
  .countdown-section::after,.heritage::before {opacity:.12}
  .announcement::before {opacity:.20}
}
@media (forced-colors:active) {
  .countdown-section::after,.heritage::before,.announcement::before {display:none!important}
  .countdown-section {clip-path:none!important}
}


/* V7.4: asymmetric editorial rhythm. Each section has its own shape.
   No added repeating pattern, no extra raster layers, no change to copy. */


/* The hero has a gently angled photographic edge on large screens.
   Its reading column and athlete remain unobstructed. */
@media(min-width:1101px){
  .hero-wash{
    /* A diagonal light falloff, never a hard edge across a player's face. */
    background:linear-gradient(106deg,rgba(248,251,252,.995) 0%,
      rgba(248,251,252,.985) 39%,rgba(248,251,252,.73) 56%,
      rgba(248,251,252,.15) 75%,transparent 87%);
    clip-path:none;
  }
}

/* Countdown retains its one strong top slash. */
.countdown-section {filter:none}

/* A distinctive arena-photo cut, terminating in a clipped lower corner. */
@media(min-width:851px){
  .announcement::before {
    clip-path:polygon(19% 0,100% 0,100% 86%,85% 100%,0 100%);
  }
}

/* The history reads like an archival exhibition: an angled opening, then
   individually cropped images on staggered planes. */
.heritage {position:relative;isolation:isolate}
.heritage::after{
  content:''!important;position:absolute;top:0;right:0;z-index:0;
  width:min(30%,420px);height:clamp(45px,7vw,104px);
  background:#f8fafb;clip-path:polygon(0 0,100% 0,100% 100%);
  pointer-events:none;
}
.heritage-images figure:first-child img{
  clip-path:polygon(0 0,100% 0,100% calc(100% - 32px),calc(100% - 42px) 100%,0 100%);
}
.heritage-images figure:nth-child(2) img{
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}

/* Footer diagonal overlay removed per v8.4 refinement. */
.site-footer::after{content:none!important;display:none!important;background:none!important;clip-path:none!important;opacity:0!important}
.site-footer .footer-inner{position:relative;z-index:1}

@media(max-width:1100px){
  .site-header::before{inset:0 0 0 72%}
  .announcement::before{clip-path:polygon(12% 0,100% 0,100% 88%,89% 100%,0 100%)}
}
@media(max-width:850px){
  .site-header::before{display:none}
  .announcement::before{clip-path:polygon(0 14%,100% 0,100% 100%,0 100%)}
  .heritage::after{width:31%;height:58px}
}
@media(max-width:640px){
  .heritage::after{width:35%;height:38px}
  .heritage-images figure:first-child img{clip-path:polygon(0 0,100% 0,100% calc(100% - 19px),calc(100% - 26px) 100%,0 100%)}
  .site-footer::after{clip-path:polygon(78% 0,100% 0,100% 100%,55% 100%);opacity:.60}
}
@media (forced-colors:active){
 .site-header::before,.heritage::after,.site-footer::after{display:none!important}
 .hero-wash{clip-path:none!important}
 .announcement::before{clip-path:none!important}
 .heritage-images figure:first-child img{clip-path:none!important}
}


/* v7.5 refinements: intentional image crops rather than decorative section slashes. */
.hero .hero-heading-year,
.heritage-years .heritage-current {text-shadow:none!important;filter:none!important;}
/* Remove the pale diagonal wedge above the archival section. */
.heritage::after {content:none!important;display:none!important;}
/* Matching opposite-corner cuts on both archival photographs. */
.heritage-images figure:first-child img {
  clip-path:polygon(0 34px,44px 0,100% 0,100% calc(100% - 34px),calc(100% - 44px) 100%,0 100%);
}
/* Matching cuts on the adjacent photograph. */
.heritage-images figure:nth-child(2) img {
  clip-path:polygon(0 34px,44px 0,100% 0,100% calc(100% - 34px),calc(100% - 44px) 100%,0 100%);
}
@media(max-width:640px){
  .heritage-images figure:first-child img {clip-path:polygon(0 20px,27px 0,100% 0,100% calc(100% - 20px),calc(100% - 27px) 100%,0 100%);}
  .heritage-images figure:nth-child(2) img {clip-path:polygon(0 20px,27px 0,100% 0,100% calc(100% - 20px),calc(100% - 27px) 100%,0 100%);}
}
@media(forced-colors:active){
  .heritage-images figure:first-child img,.heritage-images figure:nth-child(2) img {clip-path:none!important;}
}

/* v8.2: true photo cutouts with opaque branded colours underneath.
   The first corner is orange, while the second (opposite) corner is light brand blue (#B9D9EB).
   Clipping the IMG, rather than laying triangles over a full rectangular photo,
   prevents the photograph from bleeding through the diagonal corners. */
.heritage-images .heritage-photo {
  --corner-x:44px;
  --corner-y:34px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--sky);
}
.heritage-images .heritage-photo::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:calc(var(--corner-x) + 2px);
  height:calc(var(--corner-y) + 2px);
  background:var(--orange);
  pointer-events:none;
  z-index:0;
}
.heritage-images .heritage-photo::after {content:none!important;display:none!important;}
.heritage-images figure .heritage-photo img {
  display:block;
  width:100%;
  position:relative;
  z-index:1;
  clip-path:polygon(
    0 calc(var(--corner-y) + 1px),
    calc(var(--corner-x) + 1px) 0,
    100% 0,
    100% calc(100% - var(--corner-y) - 1px),
    calc(100% - var(--corner-x) - 1px) 100%,
    0 100%
  )!important;
}
@media(max-width:640px){
  .heritage-images .heritage-photo{--corner-x:27px;--corner-y:20px;}
}
@media(forced-colors:active){
  .heritage-images .heritage-photo{background:transparent;}
  .heritage-images .heritage-photo::before{display:none!important;}
  .heritage-images figure .heritage-photo img{clip-path:none!important;}
}

/* v8.4: try the softer solid ice texture on dark site chrome.
   Keep it extremely subtle so the texture reads as atmosphere, not decoration. */
.site-header,
.site-footer { isolation:isolate; }
.header-ice-texture,
.footer-ice-texture {
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('texture-ice-rink-solid.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  mix-blend-mode:screen;
}
.header-ice-texture { opacity:.06; }
.footer-ice-texture { opacity:.035; }
.site-header-inner,
.site-footer .footer-inner { position:relative; z-index:1; }
@media(max-width:670px){
  .header-ice-texture { opacity:.05; }
  .footer-ice-texture { opacity:.03; }
}
@media(forced-colors:active){
  .header-ice-texture,.footer-ice-texture { display:none!important; }
}


/* v8.6: increase ice visibility while preserving v8.5 background layering in header and footer.
   Order from back to front:
   1) hockey/photo image
   2) dark brand colour wash
   3) very subtle ice texture
   4) logos, navigation, and all content
   Remove any residual diagonal slash treatment from the top chrome and footer. */
.site-header,
.site-footer{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}

/* Header: use a different hockey image from the footer and remove the old slash. */
.site-header{
  background:var(--ink);
}
.site-header::before{
  content:'' !important;
  display:block !important;
  position:absolute;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none;
  background-image:url('countdown-skate-team-atlantic.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center 42%;
  opacity:.24;
  clip-path:none !important;
}
.site-header::after{
  content:'' !important;
  display:block !important;
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(10,30,40,.985) 0%,rgba(12,34,45,.965) 45%,rgba(10,30,40,.975) 100%);
  clip-path:none !important;
}
.header-ice-texture{
  z-index:2;
  background-image:url('texture-ice-rink-solid.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  mix-blend-mode:screen;
  opacity:.12;
}
.site-header-inner{position:relative;z-index:3}

/* Footer: photo sits furthest back, then a dark colour veil, then the ice texture. */
.site-footer{
  background:#102b36;
}
.site-footer::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('footer-nahc-faceoff-2022.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center 56%;
  opacity:.34;
}
.site-footer::after{
  content:'' !important;
  display:block !important;
  position:absolute;
  inset:0;
  z-index:1 !important;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(10,34,46,.90) 0%, rgba(10,34,46,.82) 36%, rgba(10,34,46,.92) 70%, #102b36 92%, #102b36 100%) !important;
  clip-path:none !important;
  opacity:1 !important;
}
.footer-ice-texture{
  z-index:2;
  background-image:url('texture-ice-rink-solid.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  mix-blend-mode:screen;
  opacity:.135;
}
.site-footer .footer-inner{position:relative;z-index:3}

@media(max-width:850px){
  .site-header::before{
    display:block !important;
    inset:0 !important;
    background-position:center 38%;
    opacity:.22;
  }
  .site-header::after{
    display:block !important;
  }
}
@media(max-width:670px){
  .header-ice-texture{opacity:.105;}
  .footer-ice-texture{opacity:.115;}
  .site-header::before{background-position:center 36%;}
}
@media(forced-colors:active){
  .site-header::before,.site-header::after,.site-footer::before,.site-footer::after,.header-ice-texture,.footer-ice-texture{display:none!important;}
}


/* v8.7 editorial announcement redesign: clean, photo-led, no oversized slashes. */
.announcement {
  position:relative;
  isolation:isolate;
  overflow:visible;
  background:#f8fafb;
  background-image:none!important;
}
.announcement::before,
.announcement::after {
  content:none!important;
  display:none!important;
  background:none!important;
  clip-path:none!important;
}
.announcement-inner {
  width:min(calc(100% - 112px),var(--wide));
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  align-items:center;
  gap:clamp(56px,6.2vw,114px);
  min-height:0;
  margin:0 auto;
  padding:clamp(96px,8.5vw,150px) 0;
}
.announcement-copy {
  max-width:670px;
  min-width:0;
}
.announcement-published {
  display:block;
  font-size:15px;
  line-height:1.6;
  color:#395665;
  margin:0 0 25px;
  font-weight:600;
}
.announcement-published::before {
  content:'';
  display:inline-block;
  vertical-align:middle;
  margin-right:11px;
  width:29px;
  height:4px;
  background:var(--orange);
}
.announcement h2 {
  max-width:670px;
  font-size:clamp(37px,3.7vw,59px);
  line-height:1.13;
  letter-spacing:-.047em;
  font-weight:800;
  margin:0 0 28px;
  text-wrap:balance;
  color:var(--ink);
}
.announcement-description {
  max-width:650px;
  margin:0 0 29px;
  color:#2d4a59;
  font-size:clamp(18px,1.5vw,20px);
  line-height:1.73;
}
.announcement .news-link {
  display:inline-flex;
  align-items:center;
  gap:18px;
  min-height:48px;
  padding:1px 0;
  color:#143848;
  font-weight:800;
  font-size:17px;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:6px;
}
.announcement .news-link:hover{color:var(--ink);text-decoration-thickness:3px;}
.announcement-feature {
  display:block;
  position:relative;
  align-self:center;
  margin:22px 0 0;
  min-width:0;
}
.announcement-photo {
  position:relative;
  overflow:hidden;
  background:#dbe7ec;
  aspect-ratio:5 / 6;
}
.announcement-photo img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:57% 53%;
  filter:saturate(.93) contrast(1.035);
}
.announcement-feature figcaption {
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:16px;
  color:#315363;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
}
.announcement-feature figcaption::before {
  content:'';
  flex:0 0 25px;
  height:3px;
  background:var(--orange);
}
@media(max-width:1050px) {
  .announcement-inner {
    width:min(calc(100% - 72px),var(--wide));
    grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
    gap:clamp(30px,4vw,60px);
    padding:95px 0;
  }
  .announcement h2 {font-size:clamp(36px,4.3vw,50px);}
  .announcement-photo{aspect-ratio:4 / 5;}
}
@media(max-width:760px) {
  .announcement-inner {
    width:calc(100% - 44px);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:37px;
    padding:74px 0 78px;
  }
  .announcement-copy {max-width:none;}
  .announcement h2 {font-size:clamp(35px,7.5vw,47px);}
  .announcement-feature {margin:0;}
  .announcement-photo {aspect-ratio:4 / 3;}
  .announcement-photo img{object-position:50% 55%;}
}
@media(max-width:370px) {
  .announcement-inner {width:calc(100% - 36px);gap:28px;padding:63px 0 69px;}
  .announcement h2 {font-size:clamp(32px,8.8vw,38px);}
  .announcement-published {font-size:13px;gap:8px;}
  .announcement-description {font-size:18px;line-height:1.65;}
  .announcement-feature figcaption {font-size:14px;}
}
@media(forced-colors:active) {
  .announcement-published::before,
  .announcement-feature figcaption::before {display:none!important;}
}




/* v8.9: atmospheric arena image is a real visual layer, not a ::before image.
   The previous v8.8 background disappeared because v8.7 declared background:none!important
   on the same pseudo-element. The DOM image eliminates that conflict. */
.announcement{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f5f8fa;
  background-image:none!important;
}
.announcement::before,
.announcement::after{content:none!important;display:none!important;}
.announcement-scene{
  position:absolute;
  z-index:0;
  inset:0 0 0 43%;
  pointer-events:none;
  overflow:hidden;
  opacity:.94;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.10) 10%,rgba(0,0,0,.50) 28%,rgba(0,0,0,.90) 52%,#000 70%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.10) 10%,rgba(0,0,0,.50) 28%,rgba(0,0,0,.90) 52%,#000 70%);
}
.announcement-scene img{
  display:block;
  position:absolute;
  width:100%;
  height:100%;
  inset:0;
  object-fit:cover;
  object-position:52% 54%;
  filter:saturate(.89) contrast(1.03);
}
/* Light wash is below the copy; it keeps the photograph cohesive with the section. */
.announcement-scene::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(245,248,250,.10),rgba(245,248,250,.03) 64%,rgba(245,248,250,.13));
  pointer-events:none;
}
.announcement-inner{
  position:relative;
  z-index:1;
  display:block;
  width:min(calc(100% - 112px),var(--wide));
  max-width:var(--wide);
  margin:0 auto;
  padding:clamp(112px,9vw,156px) 0;
  min-height:660px;
}
.announcement-copy{position:relative;max-width:670px;}
.announcement h2{
  max-width:660px;
  margin:0 0 27px;
  font-weight:800;
}
.announcement h2 .announcement-year{
  color:#FF6720;
}
.announcement-published::before{width:47px;height:5px;background:#ff6720;}
.announcement-description{max-width:620px;margin-bottom:31px;}
.announcement-feature{display:none!important;}
@media(max-width:1100px){
  .announcement-inner{width:min(calc(100% - 72px),var(--wide));min-height:625px;padding:106px 0 125px;}
  .announcement-scene{inset:0 0 0 41%;}
  .announcement-copy{max-width:620px;}
}
@media(min-width:761px) and (max-width:1100px){
  .announcement-scene{
    inset:auto 0 0 0;
    height:390px;
    opacity:.94;
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.16) 18%,rgba(0,0,0,.88) 49%,#000 75%);
    mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.16) 18%,rgba(0,0,0,.88) 49%,#000 75%);
  }
  .announcement-scene img{object-position:55% 54%;}
  .announcement-inner{width:min(calc(100% - 72px),var(--wide));min-height:0;padding:93px 0 352px;}
  .announcement-copy,.announcement h2,.announcement-description{max-width:820px;}
}
@media(max-width:760px){
  .announcement-scene{
    inset:auto 0 0 0;
    height:345px;
    opacity:.95;
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 14%,rgba(0,0,0,.8) 44%,#000 72%);
    mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 14%,rgba(0,0,0,.8) 44%,#000 72%);
  }
  .announcement-scene img{object-position:55% 57%;}
  .announcement-inner{
    width:calc(100% - 44px);
    padding:71px 0 280px;
    min-height:0;
  }
  .announcement-copy{max-width:none;}
  .announcement h2{max-width:none;}
  .announcement-description{max-width:none;}
}
@media(max-width:370px){
  .announcement-inner{width:calc(100% - 36px);padding:62px 0 250px;}
  .announcement-scene{height:305px;}
}
@media(forced-colors:active){
  .announcement-scene{display:none!important;}
  .announcement h2 .announcement-year{color:CanvasText;}
}


/* v8.10: make the brand emblem the recurring accent, not a decorative dash.
   The source of this icon is the approved Membertou vertical logo already on the site. */
:root {}

/* HERO: remove the thin orange rule under the Championships heading. */
.hero-details{padding-top:0!important;}
.hero-details::before{content:none!important;display:none!important;}
/* Date is legible brand orange on pale desktop and bright brand orange on navy mobile. */
.hero-date{color:var(--orange);}
@media(max-width:640px){.hero-date{color:var(--orange);}}

/* OFFICIAL ANNOUNCEMENT: brand orange for the year, real Membertou icon for the label. */
.announcement h2 .announcement-year{color:var(--orange);}
.announcement-published::before{
  content:'';
  display:inline-block;
  width:33px;
  height:33px;
  margin:0 12px 0 0;
  vertical-align:-10px;
  background:transparent url('membertou-circle-emblem-orange.png') center / contain no-repeat;
  transform:none;
}

/* Future-proof the archival photo caption accent in case this element is shown later. */
.announcement-feature figcaption::before{
  content:'';
  display:block;
  flex:0 0 28px;
  width:28px;
  height:28px;
  background:transparent url('membertou-circle-emblem-orange.png') center / contain no-repeat;
}
@media(max-width:640px){
  .announcement-published::before{width:29px;height:29px;margin-right:9px;vertical-align:-9px;}
}
@media(forced-colors:active){
  .announcement-published::before,
  .announcement-feature figcaption::before{display:none!important;}
}


/* v8.11: one approved orange only, clean countdown, darker original-navy header. */
:root{--orange:#FF6720;}
.hero-date, .announcement h2 .announcement-year, .heritage-years .heritage-current{color:var(--orange)!important;}
.countdown-intro h2::after{content:none!important;display:none!important;}


/* NAHC v8.12.1: restore the approved unboxed date treatment.
   The only approved orange is #FF6720. No navy date panels. */
:root { --orange:#FF6720; }
.hero .hero-heading-year,
.hero-date,
.announcement h2 .announcement-year,
.heritage-years .heritage-current {
  color:var(--orange)!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  text-shadow:none!important;
  filter:none!important;
}
/* Restore the original typographic flow, including the desktop hero. */
.hero h1 > .hero-heading-year {
  display:block;
  width:auto;
  max-width:100%;
  margin-left:0;
}
.hero-date {
  display:block;
  width:auto;
  margin-left:0;
}
.announcement h2 .announcement-year {
  -webkit-box-decoration-break:slice;
  box-decoration-break:slice;
}
.heritage-years .heritage-current {display:inline;}
/* Retain the existing emblem-free countdown and plain header background. */
.countdown-intro h2::after {content:none!important;display:none!important;}
.site-header::before,.site-header::after {clip-path:none!important;}
@media (forced-colors:active) {
  .hero .hero-heading-year,.hero-date,
  .announcement h2 .announcement-year,
  .heritage-years .heritage-current {
    background:transparent!important;
    color:CanvasText!important;
  }
}

/* NAHC v8.12.3: consistent text links with independent icons.
   The underline belongs exclusively to the readable link label. The arrow is
   an unlined, crisp SVG visual element, not a separate focus target or link.
   Reuse .icon-link/.icon-link-label/.icon-link-icon for future icon links. */
a.icon-link,
.announcement a.news-link.icon-link {
  text-decoration: none !important;
  gap: 11px;
}
a.icon-link > .icon-link-label {
  text-decoration-line: underline;
  text-decoration-color: currentColor;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
  text-decoration-skip-ink: auto;
}
a.icon-link:hover > .icon-link-label,
a.icon-link:focus-visible > .icon-link-label {
  text-decoration-thickness: 3px;
}
a.icon-link > .icon-link-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  line-height: 1;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  text-decoration: none !important;
}
a.icon-link > .icon-link-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  stroke: currentColor;
}
@media (prefers-reduced-motion: no-preference) {
  a.icon-link > .icon-link-icon { transition: transform .24s ease; }
  a.icon-link:hover > .icon-link-icon { transform: translate(2px,-2px); }
}
@media (prefers-reduced-motion: reduce) {
  a.icon-link > .icon-link-icon { transition: none !important; transform: none !important; }
}


/* NAHC v8.12.4: visible live seconds + very subtle, continuous photographic motion.
   Only background imagery moves. No motion is applied to copy, logos, or controls.
   Keep the motion nearly imperceptible and avoid any exposed image edges. */
.countdown-numbers {
  grid-template-columns: minmax(0,1.2fr) repeat(3,minmax(0,1fr));
}
.countdown-value {
  font-size:clamp(43px,4.4vw,69px);
}
.countdown-label {
  white-space:nowrap;
}
@media(max-width:1100px) {
  .countdown-value {font-size:clamp(43px,4.6vw,62px);}
  .countdown-item {padding-left:10px;padding-right:4px;}
}
@media(max-width:760px) {
  .countdown-numbers {grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));}
  .countdown-value {font-size:clamp(44px,7.7vw,66px);}
}
@media(max-width:540px) {
  .countdown-numbers {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 18px;
    align-items:end;
  }
  .countdown-item {min-width:0;padding:0 0 0 17px;}
  .countdown-item:nth-child(odd) {border-left:0;padding-left:0;}
  .countdown-item:nth-child(even) {border-left:1px solid rgba(233,247,253,.44);}
  .countdown-value {font-size:clamp(50px,12.4vw,67px);}
  .countdown-label {padding-top:8px;}
}
@media(max-width:340px) {
  .countdown-numbers {column-gap:12px;}
  .countdown-value {font-size:clamp(43px,13.8vw,50px);}
  .countdown-item:nth-child(even) {padding-left:14px;}
}
@keyframes nahc8124-hero-drift {
  from {transform:translate3d(-.45%,0,0) scale(1.038);}
  to {transform:translate3d(.45%,-.30%,0) scale(1.075);}
}
/* NAHC v8.12.5: Four visibly moving photographic backgrounds.
   Purpose: the v8.12.4 movement was practically invisible behind overlays and
   took nearly two minutes to traverse under a pixel. This is constant, gentle,
   linear pan/zoom in only the photo layers. Interface, typography, texture,
   logos and hero remain stationary / unchanged. No images need replacing. */

/* Preserve the original navy palette while letting enough light through to
   make movement in these *background photographs* visible. */
.site-header::before {opacity:.58;}
.site-header::after {
  background:linear-gradient(90deg,rgba(10,30,40,.87) 0%,rgba(12,34,45,.83) 45%,rgba(10,30,40,.88) 100%);
}
.site-footer::before {opacity:.58;}
.site-footer::after {
  background:linear-gradient(180deg,
    rgba(10,34,46,.79) 0%,rgba(10,34,46,.76) 36%,
    rgba(10,34,46,.84) 70%,#102b36 93%,#102b36 100%) !important;
}

/* All motion is transform-based, so content never reflows, and the oversized
   photo layers never expose their edges. Linear alternate avoids long pauses. */
@keyframes nahc8125-header-photo {
  from {transform:scale(1.16) translate3d(-3.2%,-1.1%,0);}
  to   {transform:scale(1.20) translate3d(3.2%,1.1%,0);}
}
@keyframes nahc8125-countdown-photo {
  from {transform:scale(1.13) translate3d(-3.1%,.9%,0);}
  to   {transform:scale(1.18) translate3d(3.1%,-.9%,0);}
}
@keyframes nahc8125-announcement-photo {
  from {transform:scale(1.14) translate3d(-3.2%,-.9%,0);}
  to   {transform:scale(1.19) translate3d(3.2%,.9%,0);}
}
@keyframes nahc8125-footer-photo {
  from {transform:scale(1.15) translate3d(3.1%,-1.0%,0);}
  to   {transform:scale(1.20) translate3d(-3.1%,1.0%,0);}
}
@media (prefers-reduced-motion:no-preference) {
  /* Previously approved hero animation is intentionally unchanged. */
  .hero-image img {
    animation:nahc8124-hero-drift 94s ease-in-out infinite alternate;
    transform-origin:70% 43%;backface-visibility:hidden;
  }
  .site-header::before {
    animation:nahc8125-header-photo 38s linear infinite alternate !important;
    transform-origin:center;will-change:transform;
  }
  .countdown-skate {
    animation:nahc8125-countdown-photo 38s linear infinite alternate !important;
    transform-origin:center;will-change:transform;
  }
  .announcement-scene img {
    animation:nahc8125-announcement-photo 44s linear infinite alternate !important;
    transform-origin:center;will-change:transform;
  }
  .site-footer::before {
    animation:nahc8125-footer-photo 46s linear infinite alternate !important;
    transform-origin:center;will-change:transform;
  }
}
@media (prefers-reduced-motion:reduce) {
  .hero-image img,.site-header::before,.countdown-skate,
  .announcement-scene img,.site-footer::before {
    animation:none!important;transform:none!important;will-change:auto;
  }
}
@media (forced-colors:active) {
  .hero-image img,.site-header::before,.countdown-skate,
  .announcement-scene img,.site-footer::before {
    animation:none!important;transform:none!important;will-change:auto;
  }
}
