:root{--font-main: "Be Vietnam Pro", "Helvetica Neue", "Helvetica", "Arial", sans-serif;--color-bg: #f7f7f7;--color-text: #1a1a1a;--color-accent: #1a1a1a;font-family:var(--font-main);line-height:1.2;font-weight:550;font-size:32px;letter-spacing:-.035em;color-scheme:light;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;width:100%;min-height:100vh;overflow-x:hidden;overflow-y:auto}#root{width:100%;min-height:100%}a{font-weight:550;color:inherit;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{font-weight:550;line-height:1.1;text-transform:uppercase;letter-spacing:-.02em}.absolute-full{position:absolute;top:0;left:0;width:100%;height:100%}.fixed-background{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0}.scroll-container{position:relative;width:100%;min-height:100vh}.scrolling-text-container{position:fixed;top:0;left:0;width:100%;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;pointer-events:none;z-index:10;-webkit-mask-image:linear-gradient(to right,transparent 8%,black 25%,black 75%,transparent 92%);mask-image:linear-gradient(to right,transparent 8%,black 25%,black 75%,transparent 92%)}.bio-section{position:relative;z-index:60;margin-top:110vh;margin-left:1%;margin-right:51%;margin-bottom:30vh;pointer-events:auto;scroll-margin-top:10vh}.bio-paragraph{font-size:32px;line-height:1.15;font-weight:400;margin-bottom:1.5rem;text-transform:none;letter-spacing:-.03em}.archive-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:4rem;padding:4rem;padding-top:0;margin-top:0;width:100%;max-width:1800px;margin-left:auto;margin-right:auto;pointer-events:none;align-items:flex-start;justify-content:center;position:relative;z-index:50}.archive-item{width:calc(35% - 2rem);max-width:320px;pointer-events:auto;transition:transform .3s ease;position:relative;z-index:50;aspect-ratio:3/4}.archive-item:hover{transform:scale(1.12)}.archive-item img{width:100%;height:auto;display:block}.archive-wrapper{width:100%}.archive-section{width:100%;padding-top:5vh;padding-bottom:20vh;scroll-margin-top:10vh;min-height:50vh}.overlay-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:.5rem;pointer-events:none;z-index:100!important;mix-blend-mode:difference}.overlay-header{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:200!important;color:#fff}.overlay-header h1{font-size:42px;font-weight:400;letter-spacing:-.05em;padding-left:0;margin-top:-.12em}.header-year{position:absolute;right:10%;font-size:27px;font-weight:550}.overlay-header p{font-size:.875rem;opacity:.7;margin-top:.25rem}.overlay-header nav{position:absolute;left:50%;top:0;pointer-events:auto}.overlay-header ul{list-style:none;display:flex;flex-direction:column;gap:0;line-height:.95}.overlay-header ul a{font-size:42px;font-weight:400;transition:text-decoration .2s ease}.overlay-header ul a.active{text-decoration:none}.overlay-header ul li{display:flex;align-items:center;gap:1rem;position:relative}.menu-arrow{width:32px;height:auto;opacity:0;margin-left:-40px;margin-bottom:.15em}.menu-arrow.visible{opacity:1}.mobile-hidden{opacity:0!important}.overlay-main{flex:1;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden;position:relative;z-index:10}.scrolling-text{position:absolute;white-space:nowrap;font-size:6.5rem;font-weight:750;text-transform:uppercase;opacity:.1;animation:scroll 30s linear infinite;will-change:transform}.scrolling-text-bottom{position:relative;width:100%;height:20vh;display:flex;align-items:center;overflow:hidden;margin-top:10vh;pointer-events:none}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.loading-text{font-size:1.5rem;font-weight:550;letter-spacing:.1em;opacity:.5;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.8}}.overlay-footer{display:flex;justify-content:space-between;align-items:flex-end;padding-left:50%;padding-right:2%;padding-bottom:.5rem;font-size:39px;font-weight:400;position:relative;z-index:200!important;color:#fff}.footer-text{margin-bottom:.15rem}.footer-text-short,.footer-text-mobile{display:none}.location-button{position:fixed;bottom:1rem;right:2%;border:1.5px solid #ffffff;border-radius:50px;padding:.35em .75em .3em;line-height:1;display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;font-size:30px;font-weight:400;background:transparent;color:#fff;transition:background .3s ease,color .3s ease,border-color .3s ease;cursor:pointer;z-index:200;mix-blend-mode:difference}.location-button:hover{text-decoration:none;background:#fff;color:#000;border-color:#fff}.footer-info{max-width:300px}.footer-copy{text-align:right}@media(min-width:1900px){:root{font-size:42px}.archive-container{max-width:2400px;gap:6rem}.archive-item{max-width:450px}.bio-paragraph{font-size:42px}}@media(max-width:1150px){.footer-text-full{display:none}.footer-text-short{display:inline}.overlay-footer{padding-left:50%}.overlay-header nav{left:50%}.archive-container{gap:3rem;padding:20vh 3rem 10vh}.archive-item{width:calc(40% - 2rem);max-width:280px}}@media(max-width:1190px){.overlay-container{padding:2%;z-index:100!important}.overlay-header{flex-direction:row;justify-content:space-between;align-items:flex-start;z-index:200!important}.overlay-header h1{font-size:19px;padding:0;margin:0;margin-top:.3rem;line-height:1}.overlay-header nav{position:relative;left:auto;padding-top:0}.overlay-header ul{align-items:flex-end;margin:0;padding:0}.overlay-header ul a{font-size:19px;line-height:1}.overlay-header ul li:first-child a{margin-top:0;display:inline-block}.footer-text-short{display:none}.footer-text-mobile{display:inline}.scrolling-text{font-size:3rem}.overlay-footer{position:fixed;bottom:2%;left:2%;padding:0;font-size:17px}.location-button{font-size:15px;bottom:2%;right:2%}.bio-section{margin-top:100vh;margin-left:5%;margin-right:5%;margin-bottom:10vh}@media(min-width:690px){.bio-section{margin-left:15%;margin-right:15%}}.bio-paragraph{font-size:18px}.archive-container{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:2rem;padding:10vh 1.5rem 10vh;align-items:flex-start}.archive-item{width:calc(45% - 1.5rem);max-width:400px;min-width:unset}@media(max-width:890px){.archive-container{flex-direction:column;align-items:center;gap:4rem}.archive-item{width:85%}}.archive-item:hover{transform:none}}.booking-section{position:relative;z-index:60;padding:5vh 1% 10vh;width:100%;max-width:1800px;margin:0 50% 0 auto;box-sizing:border-box;scroll-margin-top:10vh}.booking-title{font-size:24px;font-weight:550;margin-bottom:2vh;margin-left:.5rem;letter-spacing:-.02em}.booking-form{display:flex;flex-direction:column;gap:1.5rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.4rem;position:relative}.form-group label{font-size:16px;text-transform:uppercase;font-weight:550;letter-spacing:.05em;color:var(--color-text);opacity:1;margin-left:.5rem}.booking-input{background:transparent;border:none;background-image:linear-gradient(to right,#1a1a1a99,#1a1a1a00 50%);background-size:100% 2px;background-repeat:no-repeat;background-position:bottom;padding:.9rem .5rem;font-family:var(--font-main);font-size:28px;color:var(--color-text);outline:none;border-radius:0;transition:background-image .3s ease;font-weight:400;letter-spacing:-.02em}.booking-input:focus{background-image:linear-gradient(to right,#1a1a1a,#1a1a1a00 50%)}.booking-input::placeholder{opacity:.4;color:var(--color-text)}.booking-textarea{min-height:auto;resize:none;overflow:hidden;padding:.9rem .5rem}.custom-arrow-svg{width:25px;height:25px;display:block}.submit-button{background:transparent;color:var(--color-text);border:2px solid var(--color-text);padding:.85rem 2.8rem;font-size:18px;text-transform:uppercase;font-weight:550;cursor:pointer;align-self:flex-start;transition:all .3s ease;margin-top:.5rem;margin-left:.5rem;border-radius:50px}.submit-button:hover{background:var(--color-text);color:var(--color-bg)}.status-message{padding:2rem .5rem}.status-text{font-size:24px;line-height:1.3;font-weight:400;max-width:600px;letter-spacing:-.02em}.status-error{font-size:14px;color:#f44;font-weight:550;letter-spacing:.05em}.legal-footer{padding:2.5rem 0 4rem;background:#000;color:#fff;position:relative;z-index:60;margin-top:10vh}.legal-footer .container{max-width:1800px;margin:0 auto;padding:0 4rem}.footer-content{display:flex;flex-direction:column;gap:2rem}.footer-brand .logo-text{font-size:.75rem;font-weight:400;margin-bottom:.5rem;display:block;letter-spacing:-.02em}.footer-brand p{opacity:.6;max-width:200px;font-size:.6rem;line-height:1.6;font-weight:400}.footer-bottom{display:flex;justify-content:space-between;padding-top:1rem;border-top:2px solid rgba(255,255,255,.1);font-size:.58rem;opacity:.6;font-weight:400}.footer-links{display:flex;gap:2rem;list-style:none}.footer-links a{color:#fff;text-decoration:none;font-weight:400}.footer-links a:hover{text-decoration:underline}@media(max-width:1190px){.booking-section{margin-right:0;margin-left:0;padding:2vh 5% 5vh;width:100%;scroll-margin-top:2vh}.booking-form{gap:1.5rem}.booking-textarea{min-height:3em;border-bottom:2px solid rgba(26,26,26,.2);background-image:none}@media(max-width:485px){.booking-textarea{padding:1.5rem .5rem}}.booking-title{margin-bottom:2vh}.form-group{gap:.5rem}.archive-container{padding:80px 1.5rem;gap:1rem}.bio-section{margin-bottom:15vh}.archive-section{padding-bottom:10vh}.bio-section{margin-bottom:15vh;scroll-margin-top:25vh}.booking-input{font-size:20px;background-image:none;border-bottom:2px solid rgba(26,26,26,.2)}.booking-input:focus{background-image:none;border-bottom-color:#1a1a1a}.legal-footer{padding:2rem 0}.legal-footer .container{padding:0 1.5rem}.footer-brand{text-align:center;display:flex;flex-direction:column;align-items:center}.footer-bottom{flex-direction:column;gap:1.5rem;align-items:center;text-align:center;padding-top:1.5rem}.footer-links{flex-direction:column;gap:.75rem;align-items:center;padding:0}.submit-button{width:auto;margin-left:.5rem;text-align:center;font-size:14px;padding:.6rem 1.8rem}.overlay-container.booking-focus,.location-button.booking-focus{opacity:0;pointer-events:none;transition:opacity .3s ease}.back-to-top{display:block!important;position:fixed;background:transparent;border:none;font-family:var(--font-main);color:var(--color-text);padding:.5rem;line-height:1;cursor:pointer;z-index:10000;transition:all .8s cubic-bezier(.16,1,.3,1)}.back-to-top.booking-focus{opacity:1;pointer-events:auto;text-shadow:0 0 10px rgba(255,255,255,.5)}.menu-arrow{width:22px;margin-left:-30px}}.back-to-top{display:none}.legal-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.legal-modal-content{background:#f7f7f7;color:#1a1a1a;width:100%;max-width:800px;max-height:85vh;position:relative;padding:4rem;overflow-y:auto;box-shadow:0 50px 100px #00000080;border:1px solid rgba(0,0,0,.1)}.legal-modal-close{position:absolute;top:2rem;right:2rem;background:transparent;border:none;font-family:var(--font-main);font-size:14px;font-weight:550;cursor:pointer;padding:.5rem;transition:opacity .2s ease}.legal-modal-close:hover{opacity:.5}.legal-modal-header{margin-bottom:4rem;border-bottom:2px solid #1a1a1a;padding-bottom:1rem}.legal-modal-header h2{font-size:32px;margin:0;letter-spacing:-.05em}.legal-modal-body{display:flex;flex-direction:column;gap:2.5rem}.legal-modal-section p{font-size:18px;line-height:1.6;font-weight:400;white-space:pre-wrap}@media(max-width:1190px){.legal-modal-overlay{padding:1rem}.legal-modal-content{padding:2.5rem 1.5rem;max-height:90vh}.legal-modal-header{margin-bottom:2rem}.legal-modal-header h2{font-size:24px}.legal-modal-section p{font-size:16px}.legal-modal-close{top:.5rem;right:.5rem}}
