@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Italiana&display=swap');
:root{color:#292b28;background:#f4f1ea;font-family:'DM Sans',sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid #8e6541;outline-offset:6px}header{height:96px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;top:0;left:0;right:0}.brand{font-size:19px;letter-spacing:.16em;font-weight:500}.brand span{display:block;font-size:10px;letter-spacing:.26em;margin-top:7px}nav{display:flex;gap:28px;align-items:center;font-size:14px}.contact-link{border-bottom:1px solid;padding-bottom:8px}#menu{display:none}.journey{height:100vh}.stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#e4e1d8}.fallback{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.55}#scene{position:absolute;inset:0}#scene canvas{display:block;width:100%;height:100%}.hero-copy{position:absolute;top:17%;left:0;width:100%;text-align:center;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:500}.hero-copy h1{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(70px,9vw,150px);line-height:1;margin:20px 0 15px}.hero-copy>p:last-child{font-size:16px}.scene-footer{position:absolute;bottom:32px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:12px}.scroll-label{letter-spacing:.1em}#portal-action{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);background:#f8f6efed;border:1px solid #99998f;padding:14px 20px;font-size:13px;opacity:0;pointer-events:none;z-index:3}.whiteout{position:absolute;inset:0;background:white;opacity:0;pointer-events:none}.section{padding:110px 7%}h2{font-family:'Italiana',Georgia,serif;font-size:clamp(48px,6vw,90px);line-height:1.03;font-weight:400;margin:30px 0}h2 em{font-style:normal;color:#858272}p{line-height:1.7}figure{margin:0}img{max-width:100%;display:block}figcaption{font-size:13px;line-height:1.5;margin-top:15px;color:#65675e;display:flex;justify-content:space-between}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.intro p{max-width:390px}.intro figure{padding-top:30px}.intro img{width:100%;height:auto}.facts{display:flex;border-top:1px solid #c7c6ba;margin-top:52px;padding-top:24px;gap:38px}.facts strong{font-family:'Italiana',serif;display:block;font-size:50px;font-weight:400}.facts span{display:block;font-size:12px;max-width:105px}.section-heading{display:grid;grid-template-columns:1fr 1.7fr 1fr;align-items:end;margin-bottom:64px}.section-heading h2{margin:0}.section-heading>p:last-child{font-size:14px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:100px 10%;align-items:center}.editorial .small{width:80%;justify-self:center}.editorial img{width:100%;height:auto}.gallery-section{background:#e8e5dc}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery button{border:0;background:none;padding:0;text-align:left;color:inherit}.gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:filter .3s}.gallery button:hover img{filter:brightness(.9)}.gallery span{display:block;font-size:13px;padding:12px 0}.location{display:grid;grid-template-columns:1fr 1.7fr 1fr;align-items:center;padding-top:150px;padding-bottom:150px}.location h2{margin:0}.location a{display:inline-block;border-bottom:1px solid;padding-bottom:9px;margin:22px 0}.location small{display:block;font-size:12px;color:#686a61;line-height:1.6}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:center;background:#252923;color:#f4f1e8}.contact img{width:100%;height:auto}.contact h2{font-size:clamp(45px,5vw,76px)}#contact-button{padding:18px 26px;border:1px solid #dedfcd;background:transparent;color:inherit}#contact-button:disabled{cursor:default;opacity:.6}.muted{font-size:12px;color:#c3c4b7}footer{display:flex;justify-content:space-between;align-items:center;padding:45px 4%;font-size:12px}dialog{width:100vw;max-width:none;height:100svh;max-height:none;border:0;background:#1e211efa;color:#fff;padding:70px 80px}dialog::backdrop{background:#1e211e}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{height:100%;display:flex;flex-direction:column;align-items:center}dialog img{height:calc(100% - 35px);width:100%;object-fit:contain}dialog figcaption{color:#fff}dialog button{position:absolute;background:transparent;color:white;border:0;font-size:24px;padding:15px}.close{top:12px;right:20px;font-size:16px}.prev{left:10px}.next{right:10px}@media(max-width:800px){header{height:85px}.brand{font-size:16px}#menu{display:block;border:0;background:none;font-size:14px}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:30px;background:#f4f1ea;flex-direction:column}nav.open{display:flex}.hero-copy{top:18%}.hero-copy h1{font-size:65px}.hero-copy .eyebrow{font-size:10px}.hero-copy>p:last-child{font-size:14px}.scene-footer{font-size:10px;bottom:25px}.scene-footer .scroll-label{display:none}.section{padding:75px 6%}.intro{grid-template-columns:1fr;gap:35px}.intro p{max-width:none}.facts{justify-content:space-between;gap:15px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:35px}.section-heading h2{font-size:60px}.section-heading p{margin:0}.editorial{gap:45px 15px}.editorial .small{width:100%}.editorial figcaption{font-size:11px;display:block}.editorial figcaption span:last-child{display:none}.gallery{grid-template-columns:repeat(2,1fr);gap:16px}.location{grid-template-columns:1fr;gap:25px}.contact{grid-template-columns:1fr;gap:30px}.contact img{max-height:380px;object-fit:cover}footer{gap:25px;flex-direction:column;align-items:flex-start;padding:35px 6%}dialog{padding:70px 45px}.prev{left:0}.next{right:0}#portal-action{max-width:90%;width:max-content}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.reveal{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;opacity:0;pointer-events:none} .fallback{object-position:center 45%} @media(prefers-reduced-motion:reduce){.hero-copy{background:#f4f1eade;padding:20px 0}}
