.story-page{background:#f8f5ef;color:#292221}
.story-bar{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;min-height:86px;padding:12px clamp(22px,4vw,70px);background:#171211;color:#efe9dc}
.story-bar a{text-decoration:none}
.story-back,.story-enquire{font-size:12px;font-weight:600;letter-spacing:.08em;white-space:nowrap}
.story-back span{color:var(--gold);font-size:20px;margin-right:10px;vertical-align:-1px}
.story-back:hover,.story-enquire:hover{color:var(--gold)}
.story-enquire{justify-self:end;color:var(--gold);border-bottom:1px solid currentColor;padding-bottom:5px}
.story-enquire span{margin-left:10px;font-size:17px}
.story-brand{display:flex;align-items:center;gap:10px;font:25px/.9 var(--serif)}
.story-brand img{width:43px;height:43px;object-fit:contain;border-radius:50%;flex:none}
.story-brand small{display:block;margin-top:5px;font:600 8px/1.3 var(--sans);letter-spacing:.26em}
.story-hero{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);min-height:min(740px,calc(100svh - 86px));background:#47151e;color:#f7f1e9}
.story-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:clamp(55px,7vw,120px) clamp(30px,5.5vw,100px)}
.story-overline{color:#b88f6c;font-size:11px;font-weight:600;letter-spacing:.18em;line-height:1.5}
.story-hero-copy h1{font:clamp(70px,8vw,134px)/.79 var(--serif);letter-spacing:-.055em;margin:35px 0 28px}
.story-hero-copy h1 em{font-weight:400;font-style:italic;color:#dbc298}
.story-hero-copy p{max-width:420px;color:#e0d1c6;font-size:16px;line-height:1.8;margin:0 0 31px}
.story-hero-copy>a{color:#e8d0a7;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.06em;border-bottom:1px solid #bf9b66;padding-bottom:7px}
.story-hero-copy>a span{margin-left:35px;font-size:17px}
.story-hero-copy>a:hover{color:white}
.story-hero-count{margin-top:70px;color:#bb9f91;font-size:10px;letter-spacing:.18em}
.story-hero-image{min-width:0;min-height:0;overflow:hidden}
.story-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#301a1b}
.story-editorial{width:min(100% - 80px,1170px);margin-inline:auto}
.story-opening{display:grid;grid-template-columns:.9fr 1.1fr;gap:11%;padding:clamp(95px,9vw,145px) 0 104px;border-bottom:1px solid #d8cbb9}
.story-opening h2{font:clamp(64px,6.6vw,100px)/.9 var(--serif);letter-spacing:-.05em;margin:18px 0 0}
.story-opening h2 em{font-style:italic;color:var(--wine)}
.story-opening-copy{padding-top:24px}
.story-opening-copy p{font-size:17px;line-height:1.9;color:#665e58;margin:0 0 20px}
.story-chapter{padding:100px 0 55px}
.story-chapter-head{display:grid;grid-template-columns:1fr 2fr;gap:45px;margin-bottom:46px}
.story-chapter-eyebrow{color:var(--wine);font-size:11px;font-weight:600;letter-spacing:.18em;padding-top:15px}
.story-chapter-head h2{font:clamp(55px,5vw,80px)/.97 var(--serif);letter-spacing:-.035em;margin:0 0 15px}
.story-chapter-head p{max-width:550px;color:#6c635d;font-size:16px;line-height:1.8;margin:0}
.story-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 24px;align-items:start}
.story-frame{margin:0;min-width:0}
.story-frame.wide{grid-column:1/-1}
.story-image-button{display:block;overflow:hidden;width:100%;padding:0;border:0;background:#e8e0d6;text-align:left;cursor:zoom-in}
.story-image-button img{display:block;width:100%;height:auto;transition:transform .5s ease}
.story-image-button:hover img{transform:scale(1.018)}
.story-image-button:focus-visible{outline:3px solid var(--wine);outline-offset:4px}
.story-frame figcaption{padding-top:9px;color:#8c7c70;font-size:10px;font-weight:600;letter-spacing:.16em;text-align:right}
.story-end{text-align:center;border-top:1px solid #d8cbb9;padding:115px 0 130px}
.story-end p{font:italic clamp(64px,7vw,106px)/.95 var(--serif);color:var(--wine);margin:18px 0 33px}
.story-end>div{display:flex;justify-content:center;gap:30px}
.story-end a{color:var(--ink);font-size:13px;font-weight:600;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px}
.story-end a:hover{color:var(--wine)}
.story-end a span{margin-left:13px}
.story-footer{display:flex;justify-content:space-between;gap:20px;padding:36px clamp(22px,4vw,70px);background:#171211;color:#f0e6d8;font-size:11px;font-weight:600;letter-spacing:.16em}
.story-footer a{text-decoration:none;color:#d7b991}
.story-footer a:hover{color:white}
@media(max-width:850px){.story-hero{grid-template-columns:45% 55%;min-height:620px}.story-hero-copy{padding:60px 35px}.story-hero-copy h1{font-size:clamp(64px,8vw,86px)}.story-editorial{width:min(100% - 50px,1170px)}.story-opening{gap:7%}}
@media(max-width:680px){.story-bar{min-height:72px;padding:10px 16px;gap:9px}.story-brand{font-size:20px;gap:6px}.story-brand img{width:33px;height:33px}.story-brand small{font-size:7px}.story-back,.story-enquire{font-size:10px}.story-back span{margin-right:3px}.story-enquire span{margin-left:3px}.story-hero{display:flex;flex-direction:column;min-height:0}.story-hero-copy{padding:80px 24px 55px}.story-hero-copy h1{font-size:clamp(75px,13vw,95px)}.story-hero-count{margin-top:55px}.story-hero-image{height:clamp(380px,65vw,600px)}.story-editorial{width:calc(100% - 36px)}.story-opening{display:block;padding:78px 0 60px}.story-opening h2{font-size:clamp(64px,11vw,85px)}.story-opening-copy{padding-top:27px}.story-opening-copy p{font-size:16px}.story-chapter{padding:75px 0 30px}.story-chapter-head{display:block;margin-bottom:30px}.story-chapter-eyebrow{display:block;margin-bottom:13px}.story-chapter-head h2{font-size:clamp(55px,9vw,72px)}.story-photos{gap:28px 14px}.story-end{padding:85px 0 100px}.story-end p{font-size:72px}}
@media(max-width:500px){.story-hero-image{height:390px}.story-photos{grid-template-columns:1fr;gap:30px}.story-frame.wide{grid-column:auto}.story-chapter-head h2{font-size:61px}.story-end p{font-size:68px}.story-end>div{gap:18px}.story-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:390px){.story-brand{font-size:17px}.story-brand img{width:28px;height:28px}.story-back{font-size:0}.story-back span{font-size:23px}.story-enquire{font-size:9px}.story-hero-copy h1{font-size:70px}}
@media(prefers-reduced-motion:reduce){.story-image-button img{transition:none}}

/* The iPhone header keeps one back arrow and gives the brand room to breathe. */
@media(max-width:680px){
  html.ios-phone .story-bar{grid-template-columns:35px minmax(0,1fr) auto;gap:8px;padding-inline:14px}
  html.ios-phone .story-back{display:inline-flex;align-items:center;justify-self:start;width:35px;min-height:44px;font-size:0}
  html.ios-phone .story-back span{font-size:25px;margin:0}
  html.ios-phone .story-brand{justify-self:center;min-width:0;gap:6px;font-size:clamp(17px,4.1vw,20px)}
  html.ios-phone .story-brand img{width:31px;height:31px}
  html.ios-phone .story-enquire{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;font-size:10px;letter-spacing:.04em}
}
