:root{color-scheme:dark;--bg:#090c0d;--panel:#111718;--ink:#f4f0e8;--dim:#b4bab9;--gold:#c7aa75;--line:rgba(229,225,215,.17)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.skip-link{position:absolute;z-index:100;top:-4rem;left:1rem;padding:.65rem 1rem;background:var(--ink);color:var(--bg)}
.skip-link:focus{top:1rem}
.wrap{width:min(100% - 6.5rem,1440px);margin-inline:auto}
.site-header{position:absolute;inset:0 0 auto;z-index:5;min-height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 max(3.25rem,calc((100vw - 1440px)/2));border-bottom:1px solid rgba(255,255,255,.20)}
.brand{display:flex;align-items:center;gap:.85rem;flex:none}
.brand-logo{width:62px;height:62px;object-fit:contain;border-radius:50%;flex:none}
.brand-name{font-family:Georgia,serif;font-size:1rem;font-weight:bold;letter-spacing:.11em;line-height:.94}
nav{display:flex;align-items:center;gap:2.4rem;font-size:.875rem;font-weight:bold;letter-spacing:.1em;text-transform:uppercase}
nav a{display:inline-flex;align-items:center;min-height:44px;transition:color .2s}nav a:hover,.socials a:hover{color:var(--gold)}
.nav-watch{border:1px solid rgba(255,255,255,.48);padding:.9rem 1.25rem;gap:.65rem;line-height:1.4}.watch-arrow{color:var(--gold)}.watch-label-short{display:none}
.hero{min-height:790px;height:min(100svh,1100px);position:relative;display:flex;align-items:center;overflow:hidden;background:#171b20}
.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-image{object-fit:cover;object-position:55% 43%}
.hero-shade{background:linear-gradient(90deg,rgba(4,7,8,.88) 0%,rgba(4,7,8,.60) 38%,rgba(4,7,8,.08) 76%),linear-gradient(0deg,rgba(5,8,8,.72) 0%,transparent 30%,rgba(5,8,8,.25) 100%)}
.hero-content{position:relative;z-index:1;padding-top:8rem}
.eyebrow,.kicker{color:var(--gold);font-weight:bold;font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:1rem;margin:0 0 1.8rem}.eyebrow .rule{width:2rem;height:1px;background:var(--gold)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400}
h1{font-size:clamp(5.25rem,10.3vw,11.7rem);line-height:.78;letter-spacing:-.078em;margin:0 0 2rem -0.09em;text-shadow:0 3px 30px rgba(0,0,0,.12)}
h1 em,h2 em{font-weight:400;font-style:italic;color:var(--gold)}
.hero-tagline{font-family:Georgia,serif;font-size:clamp(1.6rem,2.3vw,2.55rem);line-height:1.2;margin-bottom:1.3rem}
.hero-copy{max-width:30rem;color:#e3e3df;font-size:1.05rem;line-height:1.75;margin-bottom:2.2rem}
.hero-actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:3.3rem;min-height:3.65rem;padding:0 1.35rem;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;font-weight:bold;transition:background .2s,color .2s,transform .2s}
.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gold);color:#171918}.button-primary:hover{background:#e4c690}
.button span{font-size:1.2rem;font-weight:normal}.text-link{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;letter-spacing:.13em;text-transform:uppercase;font-weight:bold;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:.35rem}.text-link span{margin-left:1rem}
.hero-bottom{position:absolute;z-index:1;bottom:2rem;left:0;right:0;display:flex;justify-content:space-between;color:#ddd;font-size:.61rem;letter-spacing:.17em}
.section-pad{padding:clamp(6.5rem,10vw,11rem) 0}
.world{background:#0d1112}.section-heading{display:grid;grid-template-columns:1.35fr .65fr;column-gap:5rem;align-items:end;margin-bottom:4.3rem}.section-heading .kicker{grid-column:1/-1;margin-bottom:2rem}
h2{font-size:clamp(3.7rem,6.4vw,7rem);line-height:.96;letter-spacing:-.065em;margin-bottom:0}.section-heading p:last-child{max-width:26rem;color:var(--dim);line-height:1.8;font-size:1.02rem;margin:0 0 .25rem}
.habitats{display:grid;grid-template-columns:1.07fr .93fr;gap:1.5rem}.habitat{position:relative;overflow:hidden;margin:0;background:#273033;aspect-ratio:1.1}.habitat-ice{aspect-ratio:1.1}.habitat img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.habitat:hover img{transform:scale(1.035)}
.habitat-river img{object-position:50% 22%}.habitat-ice img{object-position:50% 43%}
.habitat:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(3,7,8,.77))}
.habitat figcaption{position:absolute;z-index:1;bottom:2.2rem;left:2.4rem;display:flex;flex-direction:column;gap:.55rem}.habitat figcaption span{color:#f5e2bd;font-size:.8125rem;letter-spacing:.14em;font-weight:bold}.habitat figcaption strong{font-family:Georgia,serif;font-size:2.5rem;font-weight:400}
.seasons{background:#151a1b}.seasons-head{margin-bottom:4.8rem}.seasons-head .kicker{margin-bottom:1.8rem}
.season-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.season{min-width:0;display:flex;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:2rem}
.season-art{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;background:#0d1112;margin-bottom:2rem}
.season-info{margin-bottom:1.6rem}.season-info p{font-size:.75rem;line-height:1.5;color:var(--gold);font-weight:bold;letter-spacing:.16em;margin-bottom:.7rem}.season-info h3{font-size:clamp(1.8rem,3.8vw,3.4rem);line-height:1.1;letter-spacing:-.025em;margin-bottom:.8rem}.season-info>span{display:block;font-size:1rem;line-height:1.6;color:var(--dim);max-width:29rem}
.season>a{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;text-transform:uppercase;font-weight:bold;letter-spacing:.1em;font-size:.875rem;line-height:1.5;border-bottom:1px solid var(--gold);padding-bottom:.5rem}.season>a span{color:var(--gold);margin-left:.8rem}.season>a:hover{color:var(--gold)}
.closing{background:radial-gradient(ellipse at 50% 108%,rgba(119,89,49,.23),transparent 58%),#090c0d;text-align:center;border-bottom:1px solid var(--line)}
.closing-inner{padding:clamp(6rem,10vw,10rem) 0}.closing .kicker{margin-bottom:2.5rem}.closing h2{margin-bottom:2.7rem}.closing .button{gap:4rem}
.footer{background:#090c0d}.footer-inner{display:grid;grid-template-columns:1fr auto 1fr;gap:3rem;align-items:end;padding:3rem 0 3.3rem}
.footer-inner>div:first-child{display:flex;flex-direction:column;gap:.55rem}.footer strong{font-family:Georgia,serif;letter-spacing:.12em;font-size:1rem}.footer span,.footer small{color:#929c9a;font-size:.79rem}.footer small{text-align:right}.socials{display:flex;gap:1.7rem;font-size:.875rem;transition:color .2s}
@media(max-width:900px){.wrap{width:min(100% - 3rem,1440px)}.site-header{padding:0 1.5rem}.site-header nav{gap:1rem}.site-header nav>a:not(.nav-watch){display:none}.section-heading{grid-template-columns:1fr;gap:1.7rem}.section-heading p:last-child{max-width:39rem}.footer-inner{grid-template-columns:1fr auto}.footer small{grid-column:1/-1;text-align:left}}
@media(max-width:600px){.site-header{min-height:82px}.brand-mark{width:30px;height:30px}.brand-mark:before,.brand-mark:after{height:24px}.brand-name{font-size:.81rem}.nav-watch{padding:.65rem .8rem;font-size:.875rem;letter-spacing:.08em;white-space:nowrap}.watch-label-full{display:none}.watch-label-short{display:inline}.site-header{gap:1rem;flex-wrap:wrap;padding-block:1rem}.hero{height:auto;min-height:100svh;align-items:end}.hero-image{object-position:53% 24%}.hero-shade{background:linear-gradient(0deg,rgba(4,7,8,.94) 0%,rgba(4,7,8,.65) 38%,rgba(4,7,8,.04) 85%),linear-gradient(90deg,rgba(4,7,8,.3),transparent 70%)}.hero-content{padding-top:8rem;padding-bottom:8.9rem}.eyebrow{font-size:.75rem;letter-spacing:.12em;line-height:1.6;margin-bottom:1.55rem}.eyebrow .rule{flex-shrink:0}h1{font-size:clamp(4.45rem,17vw,6.9rem);margin-bottom:1.55rem}.hero-tagline{font-size:1.65rem;margin-bottom:.85rem}.hero-copy{font-size:1rem;line-height:1.55;max-width:21rem;margin-bottom:1.55rem}.hero-actions{gap:1.2rem}.button{min-height:3.3rem;padding:0 1.1rem;gap:1.5rem;font-size:.875rem}.text-link{font-size:.875rem}.hero-bottom{bottom:1.2rem}.hero-bottom span:first-child{display:none}.section-pad{padding:6.6rem 0}.section-heading{margin-bottom:2.5rem}.section-heading .kicker{margin-bottom:0}h2{font-size:clamp(3.6rem,13.6vw,5.7rem)}.habitats{grid-template-columns:1fr;gap:1rem}.habitat,.habitat-ice{aspect-ratio:1.06}.habitat figcaption{bottom:1.4rem;left:1.4rem}.habitat figcaption strong{font-size:2rem}.seasons-head{margin-bottom:3.1rem}.closing-inner{padding:6.5rem 0}.footer-inner{grid-template-columns:1fr;gap:2rem;padding:2.6rem 0}.socials{flex-wrap:wrap;gap:.8rem 1.35rem}.footer small{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.habitat img,.button{transition:none}}
@media(max-width:600px){.hero{min-height:760px}.brand-logo{width:48px;height:48px}}

@media(max-width:700px){.season-list{grid-template-columns:1fr;gap:3rem}.season-art{margin-bottom:1.5rem}.season-info h3{font-size:clamp(1.8rem,8vw,3rem)}}

.socials a{display:inline-flex;align-items:center;min-height:44px}
.footer-links{display:flex;flex-direction:column;gap:.6rem;min-width:0}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.25rem;min-height:44px;padding:.4rem 0;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}.footer-contact span{color:var(--gold);font-size:.8125rem}.footer-contact:hover{color:var(--gold)}
@media(max-width:380px){.site-header{padding-inline:1rem;gap:.65rem}.brand{gap:.55rem}.brand-name{font-size:.75rem}.nav-watch{padding-inline:.65rem}}
