.story-page{background:var(--paper)}
.story-header{height:88px;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);color:var(--ink)}
.story-header nav{display:flex;gap:34px;font-size:14px}
.story-header nav a{padding-bottom:5px;border-bottom:1px solid transparent}
.story-header nav a.active{border-color:currentColor}
.story-header .back-link{font-size:14px}.story-actions{justify-self:end;display:flex;gap:24px;font-size:14px}
.story-hero{min-height:690px;padding:90px 7vw 70px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--deep);color:white;position:relative;overflow:hidden}
.story-storefront{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.story-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,31,24,.88) 0%,rgba(8,31,24,.58) 42%,rgba(8,31,24,.18) 72%,rgba(8,31,24,.1) 100%),linear-gradient(0deg,rgba(4,21,16,.55),transparent 55%);z-index:0}
.story-hero>*:not(.story-storefront){position:relative;z-index:1}
.story-kicker,.story-number,.season-story-head{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600}
.story-hero h1{font:400 clamp(4.5rem,9vw,9.5rem)/.85 "Manrope";letter-spacing:-.07em;margin:30px 0}
.story-hero>p{font-size:18px;line-height:1.6;max-width:600px;margin-left:auto}
.story-scroll{margin-top:60px;font-size:12px;text-transform:uppercase;letter-spacing:.14em}
.story-intro,.community-story{padding:125px 7vw;display:grid;grid-template-columns:1fr 2.2fr;border-bottom:1px solid var(--line)}
.story-intro h2,.community-story h2{font:400 clamp(3rem,5vw,5.5rem)/.98 "Manrope";letter-spacing:-.055em;margin:0}
.story-intro>div>p,.community-story>div>p{max-width:650px;margin:45px 0 0 auto;font-size:18px;line-height:1.75;color:#4d5952}
.story-image{height:720px;position:relative;background:var(--deep);overflow:hidden}
.story-image img{width:100%;height:100%;object-fit:cover}
.image-caption{position:absolute;left:0;right:0;bottom:0;padding:24px 3vw;display:flex;justify-content:space-between;color:white;background:linear-gradient(transparent,rgba(0,0,0,.55));font-size:11px;text-transform:uppercase;letter-spacing:.14em}
.season-stories{display:grid;grid-template-columns:1fr 1fr}
.season-story{min-height:720px;padding:35px 3.5vw 55px;display:flex;flex-direction:column;justify-content:space-between}
.golf-story{background:var(--green);color:white}
.ski-story{background:#cad4d1;color:var(--ink)}
.season-story-head{display:flex;justify-content:space-between}
.season-word{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600}
.season-story h2{font:400 clamp(2.8rem,4.5vw,5rem)/.95 "Manrope";letter-spacing:-.055em;margin:18px 0 34px}
.season-story-copy>p:not(.season-word){line-height:1.65;max-width:520px}
.golf-story .season-story-copy>p:not(.season-word){color:#d8e3dc}
.season-story ul{list-style:none;padding:22px 0 0;margin:34px 0 0;border-top:1px solid currentColor}
.season-story li{padding:8px 0;font-size:14px}
.community-story{background:var(--paper)}
.community-story a{display:inline-block;margin-top:45px;padding-bottom:7px;border-bottom:1px solid currentColor;font-size:14px}
.community-story a span{margin-left:40px}
.story-footer{grid-template-columns:1fr 1fr}
.story-footer-message{justify-self:end;text-align:right}
.story-footer-message p{font:400 clamp(2rem,4vw,4rem)/1 "Manrope";letter-spacing:-.05em;margin:0 0 14px}
.story-footer-message span{color:#839087;font-size:12px;text-transform:uppercase;letter-spacing:.14em}
@media(max-width:820px){
  .story-header{height:70px;padding:0 20px;grid-template-columns:1fr 1fr}
  .story-header nav{display:none}.story-actions{justify-self:end;gap:16px}
  .story-hero{min-height:650px;padding:70px 24px 55px}
  .story-storefront{object-position:62% center}
  .story-hero:after{background:linear-gradient(90deg,rgba(8,31,24,.88),rgba(8,31,24,.48)),linear-gradient(0deg,rgba(4,21,16,.6),transparent 55%)}
  .story-hero h1{font-size:4.4rem}.story-hero>p{font-size:16px;margin:20px 0 0}
  .story-intro,.community-story{display:block;padding:80px 24px}
  .story-intro>div,.community-story>div{margin-top:45px}
  .story-intro>div>p,.community-story>div>p{margin:30px 0 0;font-size:16px}
  .story-image{height:520px}.image-caption{padding:20px 24px}
  .season-stories{grid-template-columns:1fr}.season-story{min-height:650px;padding:28px 24px 42px}
  .story-footer{grid-template-columns:1fr}.story-footer-message{justify-self:start;text-align:left;margin-top:30px}
}
