/* The same identity tokens are shared with styles.css and the editable style tile. */
.hero.story{display:block;min-height:0;overflow:visible;isolation:auto;background:var(--ink)}
.story-stage{position:relative;min-height:820px;height:100svh;overflow:hidden;isolation:isolate}
.story-image-window{position:absolute;inset:20% 5.15% 15% 60%;z-index:-1;overflow:hidden}
.story-image{width:100%;height:100%;object-fit:cover;object-position:64% center;transform:scale(1.12)}
.story-image-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,13,10,.67),transparent 75%),linear-gradient(0deg,rgba(9,13,10,.65),transparent 45%)}
.story-opening{position:relative;padding:clamp(180px,25vh,290px) var(--gutter) 130px;max-width:1250px}
.story-kicker{color:var(--bronze);margin-bottom:30px}
.story-opening h1{font-size:clamp(70px,8.5vw,145px);line-height:.98;letter-spacing:-.04em;max-width:none}
.story-opening h1 em{color:var(--bronze)}
.story-intro{margin-top:32px;color:var(--muted);line-height:1.65;font-size:16px}
.story-opening .text-link{margin-top:20px;gap:35px}
.story-footer{position:absolute;bottom:35px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.story-scroll{display:flex;gap:25px;align-items:center}.story-scroll span{font-size:24px;color:var(--bronze)}
.story-skip{min-height:44px;display:flex;align-items:center;font-size:13px;text-transform:none;letter-spacing:0;border-bottom:1px solid var(--line)}
.story-caption{position:absolute;right:6.5%;bottom:18%;font-size:12px;color:var(--muted)}
.story-track{position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--line)}
.story-track span{display:block;height:100%;background:var(--bronze);transform-origin:left;transform:scaleX(var(--story-progress,0))}
.story-resolution{position:absolute;left:var(--gutter);top:34%;max-width:700px;pointer-events:none}
.story-resolution .eyebrow{color:var(--bronze);margin-bottom:28px}.story-resolution h2{font-size:clamp(60px,7vw,110px)}.story-resolution>p:last-child{margin-top:28px;line-height:1.8;color:var(--paper)}
.story.is-motion{height:340svh}.is-motion .story-stage{position:sticky;top:0;min-height:660px;height:100svh}
.story-opening,.story-resolution{will-change:opacity,transform}
@media(min-width:1600px){.story-opening{max-width:1500px}}
@media(max-width:700px){.story-stage{min-height:780px}.story-image-window{inset:22% 0 0 22%}.story-image-shade{background:linear-gradient(90deg,rgba(9,13,10,.78),rgba(9,13,10,.25)),linear-gradient(0deg,#111512 2%,transparent 65%)}.story-opening{padding:175px var(--gutter) 140px}.story-opening h1{font-size:clamp(52px,11vw,76px)}.story-kicker{font-size:12px;margin-bottom:26px}.story-intro{margin-top:28px;max-width:230px}.story-footer{bottom:25px;flex-wrap:wrap;gap:12px}.story-chapter{width:100%}.story-caption{right:var(--gutter);bottom:140px}.story-resolution{top:31%;right:var(--gutter)}.story-resolution h2{font-size:clamp(48px,12vw,78px)}.is-motion .story-stage{min-height:600px}.story.is-motion{height:300svh}}
@media(prefers-reduced-motion:reduce){.story.is-motion{height:auto}.is-motion .story-stage{position:relative;min-height:780px}.story-opening,.story-resolution{will-change:auto}}

/* Quiet, spacious chapters following the opening. */
.section-pad{padding-top:clamp(64px,6vw,96px);padding-bottom:clamp(64px,6vw,96px)}
.section-heading{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:44px}
.section-number{font:14px var(--sans);letter-spacing:.08em}
.philosophy{background:var(--ink);border-top:0}
.philosophy-grid{grid-template-columns:1.4fr 1fr;gap:8vw}
.philosophy h2{font-size:clamp(56px,6.1vw,96px)}
.philosophy-copy{padding-top:8px}
.philosophy-copy .lead{font-family:var(--serif);font-size:30px;line-height:1.35;margin-bottom:30px}
.possibilities{margin-top:48px;padding-top:24px}
.collection{background:#eae6dc}
.collection .section-heading{border-color:#24291f33}
.collection-grid{display:block}
.collection-intro,.collection-intro.can-stick{position:static;display:grid;grid-template-columns:1.3fr 1fr;gap:35px 8vw;align-items:end}
.collection h2{font-size:clamp(56px,6vw,92px)}
.collection-intro>p{margin:0;max-width:420px;padding-bottom:4px}
.collection-intro>*{min-width:0}
.collection-image{grid-column:1/-1;margin-top:28px}
.collection-image-frame{width:100%;aspect-ratio:auto;height:clamp(300px,42vw,650px)}
.collection-image-frame img{object-position:center 58%}
.experience-list{display:grid;grid-template-columns:1fr 1fr;gap:0 7vw;margin-top:40px}
.experience-entry,.experience-entry:first-child,.experience-entry:last-child{padding:36px 0 42px;grid-template-columns:32px 1fr;gap:20px}
.experience-number{font-size:28px}.experience-entry h3{font-size:clamp(32px,3.2vw,48px)}
.experience-entry h3+p{max-width:470px}
.inside{background:#171d18}
.inside-heading{margin-bottom:48px}.inside-heading h2{font-size:clamp(48px,5.5vw,84px)}
.tour-figure{background:#111512;padding:18px 18px 12px;border:1px solid var(--line)}
.diagram-scroll{border:0}.tour-figure figcaption{padding:0 4px;font-size:13px}
.tour-stops{margin-top:32px}.tour-stop{padding:20px 14px}
.tour-detail{padding-top:28px;grid-template-columns:1fr 1fr;min-height:0;align-items:start}
.engineering{background:var(--ink)}
.engineering-grid{display:block}
.engineering-intro{display:grid;grid-template-columns:1.35fr 1fr;column-gap:8vw;align-items:start}
.engineering-intro h2{grid-row:1/4;font-size:clamp(48px,5vw,76px)}
.engineering-intro>p{margin-top:0;max-width:460px}.engineering-intro>p+p{margin-top:20px}
.engineering-intro .text-link{justify-self:start}
.engineering-principles{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:48px}
.engineering-principles article{padding-top:24px}.engineering-principles h3{font-size:29px}
.approach{background:#1c231d}.approach-heading h2{font-size:clamp(48px,5vw,76px)}
.journey{gap:35px}.journey-number{font-size:60px;color:#9f886b}
.enquiry{display:block;text-align:center;padding-top:88px;padding-bottom:88px;background:#eae6dc;color:var(--ink)}
.enquiry .eyebrow{color:#695334}.enquiry h2{font-size:clamp(60px,7.5vw,116px)}.enquiry h2 em{color:#77613f}
.enquiry-copy{max-width:600px;margin:40px auto 0}.enquiry-copy p{color:#53594e;font-size:17px}
.enquiry-copy .enquiry-prompt{color:#53594e;font-size:15px;margin-top:18px}
.contact-link{color:var(--ink);font-size:clamp(19px,2.5vw,32px);gap:50px;margin-top:30px;border-color:#77613f}.contact-link span{color:#77613f}
.enquiry a:focus-visible{outline-color:#665033}
.site-footer{padding-top:45px;padding-bottom:45px}.site-footer .wordmark>span:first-child{font-size:18px}
@media(max-width:1000px){.engineering-principles{grid-template-columns:1fr 1fr}.philosophy-grid{gap:40px}.collection-intro{gap:30px}.engineering-intro{gap:30px}.inside-heading{gap:24px}}
@media(max-width:700px){.section-pad{padding-top:48px;padding-bottom:48px}.section-heading{margin-bottom:36px;padding-bottom:18px}.philosophy-grid{grid-template-columns:1fr;gap:36px}.philosophy h2,.collection h2{font-size:clamp(44px,11vw,68px)}.philosophy-copy .lead{font-size:27px}.possibilities{margin-top:32px}.collection-intro{grid-template-columns:minmax(0,1fr);gap:25px}.collection-image{margin-top:8px}.collection-image-frame{height:310px}.experience-list{grid-template-columns:1fr;margin-top:36px}.experience-entry,.experience-entry:first-child,.experience-entry:last-child{padding:28px 0;gap:12px;grid-template-columns:26px 1fr}.experience-entry h3{font-size:34px}.inside-heading h2,.engineering-intro h2,.approach-heading h2{font-size:clamp(42px,10vw,64px)}.tour-figure{padding:8px}.tour-stop{padding:16px 8px}.tour-detail{grid-template-columns:1fr;gap:20px}.engineering-intro{display:block}.engineering-intro>p{margin-top:25px}.engineering-principles{grid-template-columns:1fr;margin-top:42px;gap:28px}.journey{gap:30px}.journey-number{font-size:42px}.enquiry{padding-top:56px;padding-bottom:56px}.enquiry h2{font-size:clamp(45px,12vw,70px)}.enquiry-copy{margin-top:30px}.contact-link{gap:25px}.site-footer{padding-top:36px;padding-bottom:36px}}
