/* A four-part, scroll-led story. The browser keeps control of ordinary scrolling. */
.story-journey{padding-block:112px 96px;position:relative}
.journey-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:88px;align-items:end;margin-bottom:56px}
.journey-heading h2{font-size:clamp(46px,5.2vw,76px);line-height:1.07;margin-top:24px;letter-spacing:-1.2px}
.journey-introduction{max-width:410px;font-size:15px;line-height:1.85}
.journey-introduction>span{display:block;font-size:12px;color:var(--muted);margin-top:24px}
.journey-follow{display:inline-flex;align-items:center;gap:32px;font-size:13px;margin-top:24px;padding-bottom:8px;border-bottom:1px solid var(--line);min-height:44px}
.journey-layout{display:block}.journey-sticky{display:none}
.journey-step{padding-block:56px;scroll-margin-top:64px;display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center;border-top:1px solid var(--line)}
.journey-step-copy{max-width:410px}
.journey-step-label{display:flex;gap:20px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:24px}
.journey-step-label>span{font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--line);padding-bottom:8px}
.journey-step h3{font:400 clamp(39px,4.1vw,60px)/1.08 var(--serif);letter-spacing:-.8px;margin-bottom:28px}
.journey-lead{font-size:16px;line-height:1.8;margin:0;max-width:390px}
.journey-detail{font-size:14px;line-height:1.9;color:var(--secondary,var(--muted));margin-top:22px;max-width:360px}
.journey-inline-photo{margin:0;min-width:0}.journey-inline-photo img{width:100%;height:auto;object-fit:contain}
.journey-inline-photo figcaption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:16px}
.journey-enquire{display:inline-flex;align-items:center;gap:32px;justify-content:space-between;background:#303f35;color:var(--paper);border:1px solid #303f35;min-height:52px;padding:14px 22px;margin-top:28px;font-size:13px}
.journey-enquire>span{font-size:19px}.journey-enquire:hover{background:#415344}
.journey-close{display:grid;grid-template-columns:1fr 1fr;gap:88px;border-top:1px solid var(--line);padding-top:56px;margin-top:40px}
.journey-close h3{font:400 37px/1.15 var(--serif);letter-spacing:-.4px;margin:24px 0 20px;max-width:500px}
.journey-close .text-link{border:0;border-bottom:1px solid var(--line);background:none;padding-inline:0}
.journey-close figure{margin:0;align-self:center}.journey-close blockquote{font:400 31px/1.35 var(--serif);letter-spacing:-.2px;margin:0}
.journey-close figcaption{font-size:12px;color:var(--muted);line-height:1.8;margin-top:24px}
.journey-close figcaption>a{display:inline-block;color:var(--ink);border-bottom:1px solid var(--line);margin-top:12px}
@media(min-width:900px){
 .story-journey.is-enhanced .journey-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:start}
 .story-journey.is-enhanced .journey-step{min-height:88svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;border:0;padding:72px 0}
 .story-journey.is-enhanced .journey-inline-photo{display:none}
 .story-journey.is-enhanced .journey-sticky{display:block;position:sticky;top:max(64px,calc((100svh - 580px)/2));padding-top:0;align-self:start;margin-top:80px}
 .journey-stage{position:relative;aspect-ratio:3/2;background:#e8e7df;overflow:hidden;isolation:isolate}
 .journey-frame{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transform:translateY(32px) scale(.985);transition:opacity .75s ease,transform 1s cubic-bezier(.22,.68,.24,1),visibility .75s ease}
 .journey-frame.is-current{opacity:1;visibility:visible;transform:none;z-index:2}
 .journey-frame>button{display:block;position:absolute;inset:0;width:100%;height:100%;background:none;border:0;padding:0;overflow:hidden;pointer-events:none}
 .journey-frame.is-current>button{pointer-events:auto}
 .journey-frame img{width:100%;height:100%;object-fit:contain;transform:translateY(var(--journey-shift,0px)) scale(var(--journey-scale,1));transition:opacity .4s ease;transform-origin:50% 50%}
 .journey-frame figcaption{position:absolute;left:0;bottom:0;background:var(--paper);max-width:92%;font-size:11px;line-height:1.5;padding:10px 16px;z-index:3;pointer-events:none}
 .journey-position{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font-size:12px;color:var(--muted)}
 .journey-position>span:first-child{color:var(--ink);font-variant-numeric:tabular-nums}
 .journey-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:12px}
 .journey-progress>button{position:relative;min-height:44px;padding:0;background:none;border:0;text-align:left;font-size:11px;color:var(--muted)}
 .journey-progress>button>span{display:inline-block;margin-bottom:12px}
 .journey-progress>button>i{display:block;height:2px;width:100%;background:var(--line);position:relative;overflow:hidden}
 .journey-progress>button>i::after{content:'';position:absolute;inset:0;background:#4e5f4b;transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
 .journey-progress>button[aria-current="step"]{color:var(--ink)}
 .journey-progress>button.is-past>i::after{transform:scaleX(1)}
 .journey-progress>button[aria-current="step"]>i::after{transform:scaleX(var(--journey-progress,.15))}
 .story-journey.is-enhanced .journey-step.is-active .journey-step-label>span{border-color:#4e5f4b}
}
/* A visual change of pace as the visitor reaches Nic's approach. */
.approach{background:#1c2823;color:var(--paper)}.approach-copy>p:not(.eyebrow){color:#d6dacf}.approach-copy .text-link{border-color:#7e8a7b;color:var(--paper)}
@media(max-width:1050px) and (min-width:900px){.journey-heading{gap:48px}.story-journey.is-enhanced .journey-layout{gap:48px}.journey-step h3{font-size:44px}.journey-close{gap:48px}.journey-close h3{font-size:32px}.journey-close blockquote{font-size:28px}}
@media(max-width:899px){
 .story-journey{padding-block:72px}.journey-heading{grid-template-columns:1fr;gap:28px;margin-bottom:48px}.journey-heading h2{font-size:clamp(44px,7.5vw,64px);margin-top:20px}.journey-introduction{max-width:560px;font-size:15px}.journey-introduction>span{margin-top:20px}.journey-follow{margin-top:20px}
 .journey-step{display:flex;flex-direction:column;gap:28px;align-items:stretch;padding:40px 0 56px;scroll-margin-top:32px}.journey-step-copy{max-width:560px}.journey-step h3{font-size:clamp(40px,7vw,56px);margin-bottom:24px}.journey-step-label{font-size:11px;margin-bottom:20px}.journey-lead{font-size:15px;max-width:520px}.journey-detail{font-size:14px;max-width:520px;margin-top:20px}.journey-inline-photo figcaption{font-size:11px;margin-top:12px}.journey-enquire{min-height:48px;margin-top:24px;font-size:12px;padding:12px 18px}.journey-close{grid-template-columns:1fr;gap:36px;padding-top:40px;margin-top:0}.journey-close h3{font-size:34px}.journey-close blockquote{font-size:29px}.journey-close figcaption{font-size:11px;margin-top:20px}
 .motion-ready .journey-inline-photo{overflow:hidden}.motion-ready .journey-inline-photo img{transform:scale(1.03);opacity:.7;transition:transform 1.3s cubic-bezier(.22,.68,.24,1),opacity 1s ease}.motion-ready .journey-inline-photo.is-visible img{transform:none;opacity:1}
}
@media(prefers-reduced-motion:reduce){.journey-frame,.journey-frame img,.journey-progress>button>i::after{transition:none}.motion-ready .journey-inline-photo img{transform:none;opacity:1;transition:none}}
