@font-face{font-family:Cormorant;src:url('./assets/cormorant.woff2') format('woff2');font-display:swap}
@font-face{font-family:Cormorant;src:url('./assets/cormorant-italic.woff2') format('woff2');font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('./assets/manrope.woff2') format('woff2');font-display:swap}
:root{--pad:clamp(24px,5.7vw,108px);--white:#fff8eb;--sand:#f5ead7;--copper:#e8b47f;--ink:#252c25;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#242923;color:var(--white);font-family:var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--copper);outline-offset:4px}
.skip{position:fixed;left:14px;top:12px;z-index:8;padding:12px 20px;background:var(--ink);transform:translateY(-140%)}.skip:focus{transform:none}
.mast{position:absolute;inset:0 0 auto;z-index:4;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);background:linear-gradient(#172018a8,transparent);border-bottom:1px solid #fff7e62b}
.brand{display:flex;gap:12px;align-items:center;font:500 clamp(24px,3vw,35px)/1 var(--serif);letter-spacing:-.03em}.brand i{font-weight:400}.brand svg{width:34px;fill:none;stroke:var(--copper);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.mast-link{font-size:12px;border:1px solid #f8efd159;padding:11px 15px;display:flex;gap:18px;align-items:center}.mast-link span,.text-link span{color:var(--copper)}
.journey{height:990svh}.stage{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate;background:#2a2b20}
.poster,.room,.shade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.poster img{width:100%;height:100%;object-fit:cover;display:block}.room{opacity:0;transition:opacity .2s}.room.ready{opacity:1}
.shade{background:linear-gradient(0deg,#151a13f1,transparent 43%),linear-gradient(90deg,#171c15ab,transparent 58%);z-index:1}
.chapters{position:absolute;z-index:2;left:var(--pad);bottom:clamp(102px,13svh,148px);width:min(600px,calc(100% - 2*var(--pad)));pointer-events:none}
.chapter{position:absolute;inset:auto 0 0;opacity:0;visibility:hidden;transform:translateY(9px);transition:opacity .22s,transform .22s,visibility .22s}.chapter.current{opacity:1;visibility:visible;transform:none}
.eyebrow{margin:0;text-transform:uppercase;font-size:10px;line-height:1.4;letter-spacing:.16em;font-weight:700;display:flex;align-items:center;gap:9px;color:#eadac1}.eyebrow i{width:14px;height:1px;background:var(--copper)}
.chapter h1,.chapter h2,.services h2{font:400 clamp(55px,7.8vw,126px)/.83 var(--serif);letter-spacing:-.055em;margin:16px 0 18px}.chapter h2{font-size:clamp(50px,6.4vw,100px)}.chapter em,.services em{font-weight:400}.chapter em{color:#efd2ab}.chapter p:last-child:not(.eyebrow){margin:0;max-width:43ch;font-size:clamp(13px,1.15vw,16px);line-height:1.55;color:#fff5e7}.text-link{display:inline-flex;pointer-events:auto;gap:14px;align-items:center;font-size:13px;padding:7px 0;border-bottom:1px solid #f0cf9e82}
.bottom{z-index:3;position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(20px,4svh,39px);display:flex;align-items:center;gap:12px}.scroll-hint{display:flex;align-items:center;gap:10px;color:#eadac1;font-size:10px;text-transform:uppercase;letter-spacing:.10em}.scroll-hint span:first-child{color:var(--copper);font-size:17px}
.stops{margin-left:auto;display:grid;grid-template-columns:repeat(8,42px);gap:6px}.stops button,.motion{border:1px solid #fff2d760;background:#22241bc2;font-size:11px;height:41px;letter-spacing:.05em}.motion{width:40px;font-size:16px}.stops button:hover,.stops button[aria-current=step],.motion:hover{background:#ecd7b8;color:#252921}
.meter{z-index:3;position:absolute;bottom:0;height:2px;inset-inline:0;background:#fff2d44d}.meter i{display:block;background:#e6b884;height:100%;transform:scaleX(var(--progress,0));transform-origin:left}
.services{background:var(--sand);color:var(--ink);padding:clamp(76px,9vw,136px) var(--pad)}.services .eyebrow{color:#74583f}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:48px}.section-top h2{margin-bottom:0;font-size:clamp(54px,6.8vw,101px)}.section-top>p{font-size:15px;line-height:1.55;max-width:32ch;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 26px}.service-grid article{border-top:1px solid #bca484;padding-top:15px}.service-grid article>span{font-size:11px;color:#815e3d}.service-grid h3{font:500 31px/1 var(--serif);letter-spacing:-.025em;margin:14px 0 9px}.service-grid p{font-size:13px;line-height:1.55;margin:0 0 14px}.service-grid button{font-size:11px;border:0;border-bottom:1px solid #937553;background:transparent;padding:5px 0}.service-grid button:disabled{display:none}
footer{padding:25px var(--pad);display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;color:#e7d6bb;font-size:11px}footer a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:761px){
  .chapters{width:min(770px,calc(100% - 2*var(--pad)))}
  .chapter:not(:first-child):not(.final){bottom:-22px}
  .chapter:not(:first-child):not(.final) h2{font-size:clamp(39px,4.25vw,67px);line-height:.95;margin:9px 0 9px}
  .chapter:not(:first-child):not(.final) h2 br{display:none}
  .chapter:not(:first-child):not(.final) h2 em::before{content:' '}
  .chapter:not(:first-child):not(.final) p:last-child{max-width:58ch;font-size:clamp(12px,.98vw,14px)}
}
.static .journey{height:100svh}.static .stops,.static .scroll-hint,.static .motion,.static .meter{display:none}
.static .room{visibility:hidden}
@media(max-width:760px){.mast{height:66px}.brand{gap:7px}.brand svg{width:27px}.mast-link{font-size:10px;padding:9px 10px;gap:7px}.journey{height:920svh}.poster,.room{height:81%}.shade{background:linear-gradient(0deg,#25291f 19%,#25291fe8 24%,#25291f3a 37%,transparent 51%)}.chapters{bottom:126px}.chapter h1{font-size:clamp(48px,12.5vw,72px)}.chapter h2{font-size:clamp(43px,11.3vw,68px)}.chapter h1,.chapter h2{margin:10px 0 12px}.chapter p:last-child:not(.eyebrow){font-size:12px}.bottom{gap:9px;justify-content:flex-end;bottom:20px}.scroll-hint{margin-right:auto}.scroll-hint span:nth-child(2){display:none}.stops{grid-template-columns:repeat(4,38px);gap:4px}.stops button,.motion{height:35px}.motion{width:35px;align-self:end}.section-top{display:block;margin-bottom:37px}.section-top>p{margin-top:22px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 17px}.service-grid h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.journey{height:100svh}*,*::before,*::after{transition-duration:0s!important}}
