main.nm-home{max-width:none;margin:0;padding:0;min-height:0}
.nm-hero{position:relative;isolation:isolate;overflow:hidden;min-height:720px;min-height:max(720px,calc(100svh - 130px));display:flex;flex-direction:column;justify-content:center;background:#040c18;color:#e4f2f8;text-align:center;padding:70px 24px 150px}
.nm-hero-background,.nm-hero-shade,.nm-glass-stage{position:absolute;inset:0;width:100%;height:100%;z-index:-3}
.nm-hero-background{object-fit:cover;object-position:center 48%}
.nm-hero-shade{z-index:-2;background:linear-gradient(180deg,rgba(4,12,24,.28),rgba(4,12,24,.38) 50%,rgba(4,12,24,.72)),radial-gradient(ellipse at center,transparent,rgba(4,12,24,.18))}
.nm-glass-stage{z-index:-1;pointer-events:none;opacity:.85}
.nm-glass-stage canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .5s}
.nm-glass-stage.ready canvas{opacity:1}.nm-glass-stage.animating .nm-glass-fallback,.nm-glass-stage.ready .nm-glass-fallback{display:none}
.nm-glass-fallback{position:absolute;width:min(1000px,105%);height:auto;left:50%;top:45%;transform:translate(-50%,-50%);transition:none}
.nm-hero-content{width:100%;max-width:1040px;margin:auto;position:relative;text-shadow:0 2px 24px #040c18}
.nm-hero-badge{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 0 26px;color:#e0c070;text-transform:uppercase;letter-spacing:.28em;font-size:11px;font-weight:600}
.nm-hero-badge span{width:48px;height:1px;background:#c8a240}
.nm-hero h1{font-family:Montserrat,Arial,sans-serif;font-weight:900;font-size:clamp(32px,5.3vw,76px);line-height:1.05;letter-spacing:.035em;margin:0}
.nm-hero h1>span:not(.nm-hero-canada){color:#6db8d8}.nm-hero-canada{display:block;letter-spacing:.32em;font-size:.54em;margin-top:14px;padding-left:.32em}
.nm-hero-heritage{font-family:Georgia,serif;color:#e0c070;font-size:clamp(16px,2vw,24px);margin:28px 0 18px}
.nm-hero h2{font-size:clamp(18px,2.15vw,28px);font-weight:500;line-height:1.4;margin:0 auto 12px;max-width:740px}
.nm-hero-intro{font-size:15px;line-height:1.8;color:#c7dce9;max-width:640px;margin:0 auto}
.nm-hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:30px}
.nm-hero-actions a{min-height:50px;display:flex;align-items:center;justify-content:center;gap:22px;padding:14px 25px;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.025em;border-radius:3px;text-shadow:none}
.nm-hero-primary{color:#040c18;background:#c8a240;border:1px solid #c8a240}.nm-hero-primary:hover{background:#e0c070}.nm-hero-secondary{color:#e4f2f8;border:1px solid #6a90b0;background:#040c1866}.nm-hero-secondary:hover{background:#182840}
.nm-hero a:focus-visible,.nm-motion:focus-visible{outline:3px solid #e0c070;outline-offset:5px}
.nm-hero-bottom{position:absolute;left:max(24px,calc((100% - 1100px)/2));right:max(24px,calc((100% - 1100px)/2));bottom:35px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #4878a066;padding-top:22px;gap:20px}
.nm-hero-bottom strong{display:block;font-size:24px;line-height:1.4;color:#b8dff0;font-weight:600}.nm-hero-bottom span{display:block;color:#a9c3d7;font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-top:4px}
.nm-motion{position:absolute;right:16px;bottom:8px;background:transparent;border:0;color:#a9c3d7;font-size:10px;padding:6px;cursor:pointer}.nm-motion[hidden]{display:none}
@media(max-width:600px){.nm-hero{min-height:800px;padding:55px 20px 205px}.nm-hero-badge{font-size:10px;letter-spacing:.16em;gap:10px}.nm-hero-badge span{width:24px}.nm-hero-intro{font-size:14px}.nm-hero-heritage{margin-top:24px}.nm-hero-bottom{grid-template-columns:1fr 1fr;bottom:38px;gap:16px;padding-top:16px}.nm-hero-bottom>div:last-child{grid-column:1/-1}.nm-hero-bottom strong{font-size:20px}.nm-hero-bottom span{font-size:9px}.nm-hero-actions{gap:10px}.nm-hero-actions a{width:100%;max-width:330px}.nm-glass-fallback{width:150%}}
@media(prefers-reduced-motion:reduce){.nm-glass-stage canvas{display:none!important}.nm-glass-fallback{opacity:1!important}.nm-motion{display:none!important}}

/* v0.3.2: the preferred SVG is the only glass, scaled uniformly. */
.nm-glass-stage{opacity:1}
.nm-glass-stage canvas{display:none}
.nm-glass-fallback{display:block;width:min(1180px,115vw);height:auto;left:50%;top:46%;transform:translate(-50%,-50%);overflow:visible;transition:none}
.js .nm-glass-fallback{visibility:hidden}
.nm-glass-stage.svg-active .nm-glass-fallback{visibility:visible;display:block;opacity:1}
@media(max-width:600px){.nm-glass-fallback{width:145vw;top:40%}}
@media(prefers-reduced-motion:reduce){.js .nm-glass-fallback{visibility:visible}}

/* v0.4: user-supplied video, one play, with WebP poster. */
.nm-hero-video,.nm-hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.nm-hero-poster{display:block}
.nm-hero.video-playing .nm-hero-poster{display:none}
@media(prefers-reduced-motion:reduce){.nm-hero-video{display:none}.nm-hero.video-playing .nm-hero-poster{display:block}}
