:root{color-scheme:dark;--bg:#101614;--ink:#f4efe4;--muted:#c2c4b9;--accent:#d8b67e;--line:#f4efe42e}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:fixed;top:10px;left:15px;z-index:20;padding:14px;background:var(--bg);transform:translateY(-160%)}.skip:focus{transform:none}
header{position:absolute;inset:0 0 auto;z-index:5;height:110px;padding:0 5vw;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#0008,transparent)}.brand{font:28px/1 Georgia,serif;letter-spacing:.09em}.brand span{font:10px/1.4 Arial,sans-serif;display:block;letter-spacing:.32em;margin-top:9px;text-align:center}.location{font-size:12px;letter-spacing:.2em;color:var(--muted)}.enquire{min-height:44px;padding:13px 21px;border:1px solid #f4efe461;background:#10161433;font-size:14px}.enquire span{margin-left:25px}
.story{height:550svh}.stage{height:100svh;min-height:500px;position:sticky;top:0;overflow:hidden;background:#171915}#film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#030806af,transparent 80%),linear-gradient(0deg,#050907dd,transparent 56%,#0002);pointer-events:none}.scene-copy{position:absolute;left:7vw;bottom:20%;width:min(580px,65vw);z-index:2;text-shadow:0 2px 24px #0005}.eyebrow{font-size:12px;line-height:1.4;letter-spacing:.18em;color:var(--accent);display:flex;align-items:center;gap:16px;margin:0 0 23px}.rule{height:1px;width:34px;background:var(--accent)}h1,h2,p{margin:0}h1{font:clamp(60px,7.6vw,112px)/.99 Georgia,serif;letter-spacing:-.045em;font-weight:normal}em{color:var(--accent);font-weight:normal}#description{font-size:16px;line-height:1.8;color:#eeeadde0;max-width:35ch;margin-top:26px}.scene-cta{display:inline-block;margin-top:24px;padding-bottom:10px;border-bottom:1px solid var(--accent);font-size:15px}.scene-cta[hidden]{display:none}.scene-cta span{margin-left:15px}.chapters{position:absolute;right:3vw;top:45%;z-index:3;display:flex;flex-direction:column}.chapters button{background:none;border:0;width:44px;height:44px;display:grid;place-items:center}.chapters button span{width:6px;height:6px;border:1px solid #fff9;border-radius:50%}.chapters button[aria-current] span{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px #d8b67e18}.bottom{position:absolute;bottom:max(27px,env(safe-area-inset-bottom));left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;z-index:3;font-size:12px;letter-spacing:.12em}#mode{min-height:44px;background:none;border:0;padding:10px 0;color:#efeade;font-size:13px;letter-spacing:0}#mode span{margin-left:12px}#scroll-hint{font-size:11px;letter-spacing:.13em}#scroll-hint span{margin-left:15px}#counter{color:#efeadeb3;font-size:12px}.progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff15;z-index:3}.progress span{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.load-status{position:absolute;top:115px;left:5vw;z-index:3;font-size:13px;color:var(--ink)}.load-status:empty{display:none}.bespoke{padding:115px 7vw 110px;display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;border-bottom:1px solid var(--line);background:#13211d}.bespoke h2{font:clamp(50px,6vw,88px)/1.08 Georgia,serif;letter-spacing:-.035em}.bespoke-copy{align-self:center}.bespoke-copy p{font-size:18px;line-height:1.8;color:var(--muted);max-width:39ch}.bespoke-copy p+p{margin-top:24px}.text-link{display:inline-block;margin-top:30px;padding:10px 0;border-bottom:1px solid var(--accent);font-size:16px}.text-link span{margin-left:20px}footer{padding:55px 7vw;display:flex;align-items:center;justify-content:space-between;gap:28px}footer p,footer>a:not(.brand){font-size:14px;line-height:1.8;color:var(--muted)}body.playback .story{height:100svh}body.playback #scroll-hint{visibility:hidden}body.playback .scene-copy,body.playback .chapters,body.playback .shade{pointer-events:none;opacity:0}body.playback .bottom{bottom:70px}body.playback #film{z-index:1}body.playback .progress{display:none}
@media(max-width:700px){header{height:88px;padding:0 6vw}.brand{font-size:23px}.brand span{font-size:9px;margin-top:7px}.location{display:none}.enquire{padding:11px 14px;font-size:13px}.enquire span{margin-left:14px}.story{height:475svh}.stage{min-height:0}.shade{background:linear-gradient(0deg,#050806f5, #050806b8 20%,#03060418 58%,#0001 75%,#0006)}.scene-copy{left:6vw;bottom:16%;width:82vw}.eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:18px;gap:12px}.rule{width:25px}h1{font-size:clamp(47px,12vw,69px);line-height:1.01;letter-spacing:-.035em}#description{font-size:15px;line-height:1.65;margin-top:19px;max-width:29ch}.scene-cta{font-size:14px;margin-top:15px}.chapters{right:1vw;top:39%}.bottom{left:6vw;right:6vw;bottom:max(18px,env(safe-area-inset-bottom));flex-wrap:wrap;gap:1px}#mode{font-size:12px}#scroll-hint{font-size:9px;letter-spacing:.06em}#scroll-hint span{margin-left:7px}#counter{display:none}.bespoke{display:block;padding:70px 6vw}.bespoke h2{font-size:57px}.bespoke-copy{margin-top:30px}.bespoke-copy p{font-size:16px}.bespoke-copy p+p{margin-top:17px}footer{padding:40px 6vw;display:grid;grid-template-columns:1fr 1fr;align-items:start}footer .brand{font-size:21px}footer p,footer>a:not(.brand){font-size:13px}}
@media(max-height:650px) and (max-width:700px){.scene-copy{bottom:17%}h1{font-size:44px}.eyebrow{margin-bottom:12px}#description{font-size:14px;margin-top:13px}.scene-cta{margin-top:12px}}@media(max-height:480px){.scene-copy{bottom:21%;width:70vw}h1{font-size:42px}.eyebrow{margin-bottom:12px}#description{display:none}header{height:70px}.bottom{bottom:12px}}
/* Short scene-triggered animations remain visible after a quick swipe. */
.scene-copy{will-change:opacity,transform}
#headline em{display:inline-block}
/* Keep every mobile chapter's copy above the bench work and ring. */
@media(max-width:700px){
  .scene-copy{top:max(28px,6svh);bottom:auto;width:88vw}
  .stage:has([data-chapter="0"][aria-current]) .scene-copy{top:max(108px,12svh)}
  .shade{background:linear-gradient(180deg,#030806d9 0%,#030806a6 25%,#03080600 52%),linear-gradient(0deg,#050806d9,transparent 25%)}
  .scene-copy .eyebrow{margin-bottom:14px}
  .scene-copy #description{margin-top:14px}
  .scene-cta{margin-top:12px;min-height:44px;display:inline-flex;align-items:center;padding:10px 0}
}
@media(max-width:700px) and (max-height:650px){
  .scene-copy{top:max(18px,4svh)}
  .scene-copy h1{font-size:36px}
  .scene-copy .eyebrow{margin-bottom:10px}
  .scene-copy #description{margin-top:10px;line-height:1.5}
  .scene-cta{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){body:not(.scroll-opt-in) .story{height:100svh}}
