:root{--paper:#f6f3ed;--white:#fffdf9;--ink:#292d28;--muted:#6d7067;--line:#dcdcd1;--accent:#9c5143;--sage:#dddccf;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.6}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}img{max-width:100%;display:block}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button,input,select{border-radius:0}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.03}em{font-weight:400}::selection{background:#dcc6b6}.skip-link{position:absolute;left:20px;top:-100px;z-index:100;padding:10px;background:var(--paper)}.skip-link:focus{top:10px}.site-header{height:94px;display:flex;align-items:center;gap:38px;margin:auto;padding:0 4.2%;background:var(--paper);position:relative;z-index:20}.brand{flex-shrink:0;width:155px}.brand img{filter:brightness(0);height:auto;width:100%}.header-location{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted);white-space:nowrap}.location-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.site-header nav{margin-left:auto;display:flex;gap:28px;font-size:12px}.site-header nav a:hover{color:var(--accent)}.header-phone{font-size:12px;font-weight:600;white-space:nowrap}.menu-toggle{display:none;background:none;width:44px;height:44px;padding:12px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:6px 0}.hero{margin:0 24px;position:relative;height:570px;color:#fffdf6;overflow:hidden;background:#39352f}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 57%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,21,18,.66),rgba(20,21,18,.06) 76%),linear-gradient(0deg,rgba(20,21,18,.3),transparent 50%)}.hero-copy{position:relative;z-index:1;padding:70px 5% 60px;max-width:780px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:600;line-height:1.5}.hero .eyebrow{color:#ebe6d9;margin-bottom:28px}.hero h1{font-size:clamp(60px,6.7vw,98px);letter-spacing:-.04em;line-height:.96}.hero h1 em{color:#e8d2bc}.hero-description{max-width:340px;font-size:13px;line-height:1.8;color:#eee8dd;margin-top:27px}.hero-cta{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid #ded8cb;padding:0 0 8px;margin-top:33px;font-size:12px}.hero-cta span{font-size:24px;line-height:1}.hero-caption{position:absolute;z-index:1;right:44px;bottom:35px;display:flex;align-items:center;gap:18px;font-size:11px}.hero-caption .caption-number{border:1px solid #ffffff70;border-radius:50%;width:46px;height:46px;display:grid;place-items:center}.hero-caption strong{display:block;font-weight:500;font-size:15px}.availability-wrap{max-width:1290px;margin:0 auto;padding:0 4%}.availability-form{display:grid;grid-template-columns:1.2fr 1fr .7fr .7fr 1.1fr;align-items:end;gap:0;padding:28px 0;border-bottom:1px solid var(--line)}.field{padding:0 25px;border-right:1px solid var(--line);min-width:0;display:flex;flex-direction:column;gap:8px}.field:first-child{padding-left:0}.field label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.field input,.field select{background:transparent;color:var(--ink);font-size:14px;width:100%;min-height:32px;border:0;padding:0 4px 0 0;outline-offset:2px}.field select option:disabled{color:#9d9e95;background:#e3e2db}.field input[type=date]{min-width:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:53px;padding:16px 23px;background:var(--ink);color:var(--white);font-size:11px;font-weight:500;transition:background .2s}.button:hover{background:#414638}.button span{font-size:22px;line-height:1}.availability-form>.button{margin-left:25px;white-space:nowrap}.availability-status{font-size:12px;line-height:1.65;color:var(--muted);margin-top:12px;min-height:20px}.availability-status:empty{display:none}.section{padding:96px 6%;max-width:1536px;margin:auto}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:35px}.section .eyebrow{color:var(--accent);margin-bottom:18px}.section h2{font-size:64px;letter-spacing:-.035em}.section-intro{max-width:310px;color:var(--muted);font-size:13px;line-height:1.8;padding-bottom:5px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:36px 0 38px;border-bottom:1px solid var(--line);padding-bottom:18px}.filters{display:flex;gap:9px;flex-wrap:wrap}.filter{background:transparent;border:1px solid var(--line);padding:9px 17px;border-radius:30px;font-size:11px;min-height:40px;transition:all .2s}.filter[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--white)}.filter:hover{border-color:var(--ink)}.results-count{font-size:11px;color:var(--muted);white-space:nowrap}.room-card{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(250px,1fr);gap:38px;align-items:stretch;padding:0 0 48px;margin:0 0 48px;border-bottom:1px solid var(--line)}.room-card:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}.room-card[hidden]{display:none}.room-photo{position:relative;min-height:375px;overflow:hidden;background:#e4dfd4}.room-photo>a{display:block;height:100%}.room-photo img{width:100%;height:100%;aspect-ratio:1.75;object-fit:cover;transition:transform .6s}.room-photo>a:hover img{transform:scale(1.025)}.photo-count{position:absolute;bottom:18px;left:20px;color:white;font-size:10px;letter-spacing:.08em;text-shadow:0 1px 8px #000;pointer-events:none}.gallery-button{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;background:#fffdf3eb;font-size:10px;padding:10px 14px;min-height:40px}.grid-icon{display:inline-grid;grid-template-columns:repeat(2,4px);gap:2px}.grid-icon i{width:4px;height:4px;background:currentColor}.room-details{padding:21px 0 13px;display:flex;align-items:flex-start;flex-direction:column}.room-kicker{display:flex;width:100%;justify-content:space-between;gap:12px;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--muted)}.room-details h3{font-size:54px;letter-spacing:-.025em;margin:21px 0 15px}.room-description{color:var(--muted);font-size:12px;line-height:1.8;max-width:285px}.room-facts{display:flex;gap:30px;margin:27px 0 30px}.room-facts strong{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.1;display:block}.room-facts small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.text-link{display:flex;gap:38px;align-items:center;font-size:11px;font-weight:600;padding:9px 0;border-bottom:1px solid var(--ink);margin-top:auto}.text-link span{font-size:23px;font-weight:400;line-height:1}.text-link:hover{color:var(--accent);border-color:var(--accent)}.about{background:#e9e8df;padding:72px 6%;display:grid;grid-template-columns:1fr 1.1fr;gap:90px;align-items:center}.about .eyebrow{color:var(--accent);margin-bottom:20px}.about h2{font-size:60px;letter-spacing:-.035em}.about-copy{font-size:14px;line-height:1.9;max-width:465px;color:#62665c}.about-facts{display:flex;gap:52px;margin-top:32px;padding-top:25px;border-top:1px solid #caccc1}.about-facts strong{font-family:var(--serif);font-weight:500;font-size:42px;display:block;line-height:1.2}.about-facts span{font-size:10px;color:var(--muted)}.site-footer{background:#2b302a;color:#eeeade;padding:65px 6% 25px}.footer-top{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;padding-bottom:70px}.site-footer .eyebrow{color:#bbbfae;margin-bottom:22px}.site-footer h2{font-size:64px;letter-spacing:-.025em}.footer-contact p{font-size:12px;color:#c0c3b7;line-height:1.9;margin:22px 0}.footer-tel{display:flex;justify-content:space-between;font-size:25px;letter-spacing:-.025em;gap:20px}.footer-tel span{font-size:27px}.light{color:#eeeade;border-color:#767c6e;width:fit-content}.footer-bottom{border-top:1px solid #51564b;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:#b4b9aa}.footer-brand{width:130px}.footer-brand img{filter:none}.preview-label{font-size:9px}.hall-main{padding:25px 4.2% 90px}.breadcrumb{font-size:10px;color:var(--muted);display:flex;gap:15px;margin:10px 0 34px}.breadcrumb a:hover{color:var(--accent)}.hall-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.hall-heading .eyebrow{color:var(--accent);margin-bottom:13px}.hall-heading h1{font-size:82px;letter-spacing:-.04em}.hall-subtitle{max-width:355px;color:var(--muted);font-size:12px;line-height:1.8;text-align:right}.hall-gallery{display:grid;grid-template-columns:2.8fr 1fr;gap:10px;height:520px;position:relative}.hall-main-photo,.hall-side-photo{border:0;padding:0;background:#d9d5ca;overflow:hidden}.hall-main-photo img,.hall-side-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.hall-main-photo:hover img,.hall-side-photo:hover img{transform:scale(1.018)}.hall-side{display:grid;grid-template-rows:1fr 1fr;gap:10px;min-height:0}.hall-side-photo{min-height:0}.hall-gallery>.gallery-button{right:26px;bottom:22px;z-index:2}.hall-strip{display:flex;gap:10px;padding:14px 0 0;align-items:center;overflow-x:auto}.thumb{width:84px;height:57px;flex-shrink:0;border:1px solid transparent;padding:2px;background:none}.thumb[aria-pressed=true]{border-color:var(--accent)}.thumb img{width:100%;height:100%;object-fit:cover}.hall-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:90px;align-items:start;margin:64px auto 0;max-width:1200px}.hall-story h2{font-size:48px;margin-bottom:23px;letter-spacing:-.03em}.hall-story>p{color:var(--muted);font-size:14px;line-height:1.9;max-width:590px}.hall-story .room-facts{padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:55px;margin:30px 0}.hall-story .room-facts strong{font-size:40px}.hall-story details{border-bottom:1px solid var(--line);padding:20px 0}.hall-story summary{cursor:pointer;font-size:13px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.hall-story summary:after{content:'+';font-size:22px;font-weight:400}.hall-story details[open] summary:after{content:'−'}.hall-story details p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:18px}.booking-panel{background:#eae9df;padding:30px;position:sticky;top:25px}.booking-panel>.eyebrow{color:var(--accent);margin-bottom:12px}.booking-panel h2{font-size:38px;margin-bottom:13px}.booking-panel>p{font-size:11px;color:var(--muted)}.booking-panel .availability-form{grid-template-columns:1fr 1fr;gap:22px 15px;border:0;padding:26px 0 0}.booking-panel .field{padding:0;border:0;border-bottom:1px solid #cacdbf;padding-bottom:8px}.booking-panel .field-wide{grid-column:1/-1}.booking-panel .availability-form>.button{grid-column:1/-1;margin:0;justify-content:space-between}.booking-panel .field input,.booking-panel .field select{font-size:15px}.booking-panel .availability-status{font-size:11px}.booking-contact{border-top:1px solid #cdd0c2;padding-top:20px;margin-top:22px;font-size:11px;display:block;text-align:center}.back-to-halls{display:inline-flex;margin-top:50px}.more-halls{padding-top:0}.more-halls .section-head{margin-bottom:30px}dialog{border:0;background:#171b17;color:#f6f3ed;position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:18px 28px;margin:0}dialog::backdrop{background:#171b17ed}.lightbox-top,.lightbox-bottom{height:55px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.lightbox-stage{height:calc(100% - 110px);display:grid;grid-template-columns:50px minmax(0,1fr) 50px;align-items:center;gap:20px;overflow:auto}.lightbox-stage img{width:100%;height:100%;min-height:0;object-fit:contain}.lightbox-stage.zoomed{display:block;position:relative}.lightbox-stage.zoomed img{width:auto;max-width:none;height:auto;min-width:100%;min-height:100%;object-fit:initial}.lightbox-stage.zoomed>.icon-button{display:none}.icon-button{width:48px;height:48px;display:grid;place-items:center;background:transparent;color:#eeeade;font-size:26px;border:1px solid #ffffff40;border-radius:50%}.lightbox-close{font-size:31px;border:0}.zoom-button{background:none;color:#eeeade;font-size:11px;border-bottom:1px solid #8e9487;padding:8px}.empty-result{padding:40px 0;font-size:15px;color:var(--muted)}
@media(min-width:1600px){.hero{height:650px;max-width:1680px;margin:auto}.hero-copy{padding-top:95px}.site-header{max-width:1730px}.hall-main{max-width:1536px;margin:auto}.hall-gallery{height:580px}}
@media(max-width:1190px){.site-header{gap:26px}.header-location{display:none}.hero{height:545px}.hero-copy{padding-top:66px}.hero h1{font-size:80px}.section{padding:76px 5%}.room-card{gap:28px;grid-template-columns:2fr 1fr}.room-photo{min-height:335px}.room-details h3{font-size:46px}.room-facts{gap:23px}.hall-gallery{height:440px}.hall-content{gap:50px}.footer-top{gap:60px}.footer-tel{font-size:22px}}
@media(max-width:850px){.site-header{height:80px}.site-header nav{gap:20px;font-size:11px}.header-phone{display:none}.hero{margin:0 16px;height:525px}.hero h1{font-size:73px}.hero-description{max-width:300px}.hero-caption{right:26px;bottom:28px}.hero-caption .caption-number{display:none}.availability-wrap{padding:0 5%}.availability-form{grid-template-columns:1fr 1fr 1fr 1fr;gap:18px 0}.availability-form .field:first-child{grid-column:span 2}.availability-form .field:nth-child(2){grid-column:span 2;border:0}.availability-form .field:nth-child(3){padding-left:0}.availability-form .field:nth-child(4){border:0}.availability-form>.button{grid-column:span 2}.section h2{font-size:52px}.section-intro{max-width:230px;font-size:12px}.room-card{grid-template-columns:1.8fr 1fr;gap:25px}.room-photo{min-height:335px}.room-details{padding:5px 0}.room-details h3{font-size:41px;margin:20px 0 14px}.room-description{font-size:11px}.room-facts{gap:22px;margin:23px 0}.room-kicker{font-size:8px}.about{gap:38px}.about h2{font-size:48px}.about-copy{font-size:12px}.about-facts{gap:28px}.footer-top{gap:35px}.site-footer h2{font-size:52px}.footer-tel{font-size:19px}.hall-heading h1{font-size:70px}.hall-subtitle{max-width:300px}.hall-gallery{height:380px;grid-template-columns:2.4fr 1fr}.hall-content{gap:35px;grid-template-columns:1.1fr 1fr}.booking-panel{padding:23px}.hall-story h2{font-size:40px}.hall-story .room-facts{gap:30px}.hall-story>p{font-size:12px}}
@media(max-width:620px){html{scroll-padding-top:25px}.site-header{height:73px;padding:0 22px;justify-content:space-between;gap:10px}.brand{width:141px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--paper);padding:23px;box-shadow:0 9px 10px #0001;font-size:15px;flex-direction:column;gap:20px}.site-header nav.is-open{display:flex}.hero{height:540px;margin:0 10px}.hero-image{object-position:58% 50%}.hero:after{background:linear-gradient(0deg,rgba(19,21,18,.73),rgba(19,21,18,.1) 88%)}.hero-copy{padding:47px 24px 30px;height:100%;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:auto}.hero h1{font-size:61px;letter-spacing:-.035em;line-height:.97}.hero-description{font-size:11px;max-width:265px;margin-top:23px;line-height:1.8}.hero-cta{margin-top:24px;font-size:11px;gap:28px;padding-bottom:5px}.hero-caption{display:none}.availability-wrap{padding:0 24px}.availability-form{grid-template-columns:1fr 1fr;gap:24px 18px;padding:29px 0 25px}.availability-form .field:first-child,.availability-form .field:nth-child(2){grid-column:auto}.field,.availability-form .field:nth-child(3){padding:0;border:0}.field label{font-size:8px;letter-spacing:.1em}.field input,.field select{font-size:14px;min-height:32px}.availability-form>.button{margin:0;grid-column:1/-1;justify-content:space-between;width:100%;font-size:12px}.section{padding:62px 24px}.section-head{display:block;margin-bottom:26px}.section .eyebrow{font-size:9px;margin-bottom:17px}.section h2{font-size:48px;letter-spacing:-.035em}.section-intro{font-size:12px;margin-top:23px;max-width:310px;line-height:1.8}.catalog-toolbar{display:block;margin:24px 0 27px;padding-bottom:20px}.filters{gap:7px}.filter{padding:9px 12px;font-size:10px;min-height:38px}.results-count{display:block;margin-top:14px;font-size:10px}.room-card{display:block;margin-bottom:32px;padding-bottom:32px}.room-photo{height:280px;min-height:0;margin:0 -9px}.room-photo img{aspect-ratio:auto;height:100%;object-position:center}.gallery-button{right:12px;bottom:12px;font-size:9px;min-height:38px;padding:9px 11px}.photo-count{left:14px;bottom:23px;font-size:9px}.room-details{padding:22px 0 0;position:relative}.room-kicker{font-size:8px}.room-details h3{font-size:46px;margin:15px 0 12px}.room-description{font-size:12px;max-width:325px;line-height:1.8}.room-facts{gap:36px;margin:24px 0}.room-facts strong{font-size:32px}.room-facts small{font-size:10px}.text-link{font-size:11px;gap:32px}.about{display:block;padding:55px 24px}.about .eyebrow{font-size:9px}.about h2{font-size:47px}.about-copy{margin-top:27px;font-size:12px;line-height:1.9}.about-facts{gap:45px;margin-top:25px}.site-footer{padding:48px 24px 22px}.footer-top{display:block;padding-bottom:45px}.site-footer .eyebrow{font-size:9px}.site-footer h2{font-size:51px}.footer-contact{margin-top:40px}.footer-tel{font-size:23px}.footer-contact p{font-size:12px;margin:20px 0}.footer-bottom{display:flex;flex-wrap:wrap;row-gap:21px;font-size:9px}.footer-bottom>span:nth-child(2){width:150px;text-align:right}.preview-label{width:100%;font-size:8px}.footer-brand{width:120px}.hall-main{padding:14px 24px 55px}.breadcrumb{font-size:9px;margin:6px 0 26px}.hall-heading{display:block;margin-bottom:24px}.hall-heading .eyebrow{font-size:9px;margin-bottom:12px}.hall-heading h1{font-size:65px}.hall-subtitle{text-align:left;max-width:330px;font-size:11px;line-height:1.8;margin-top:19px}.hall-gallery{margin:0 -14px;height:300px;display:block}.hall-main-photo{width:100%;height:100%}.hall-side{display:none}.hall-gallery>.gallery-button{right:16px;bottom:16px}.hall-strip{margin:0 -14px;padding:12px 1px 5px;gap:7px}.thumb{width:70px;height:50px}.hall-content{display:flex;flex-direction:column;gap:36px;margin-top:42px}.hall-story h2{font-size:42px;margin-bottom:20px}.hall-story>p{font-size:13px}.hall-story .room-facts{gap:47px;padding:25px 0;margin:25px 0}.hall-story .room-facts strong{font-size:38px}.hall-story details{padding:18px 0}.booking-panel{position:static;width:100%;padding:27px 23px}.booking-panel h2{font-size:38px}.booking-panel .availability-form .field:first-child{grid-column:1/-1}.booking-panel .availability-form .field-wide{grid-column:1/-1}.back-to-halls{margin-top:35px}.more-halls{padding-top:0}dialog{padding:12px 13px}.lightbox-stage{grid-template-columns:1fr;position:relative;gap:0;height:calc(100% - 105px)}.lightbox-stage>.icon-button{position:absolute;bottom:0;z-index:1;background:#252c24cc}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-top{height:45px}.lightbox-bottom{height:60px;font-size:10px}.lightbox-bottom>span:last-child{display:none}.lightbox-stage img{width:100%;height:100%;object-fit:contain}.icon-button{width:44px;height:44px}.zoom-button{font-size:10px}}
@media(max-width:620px){.hero:after{background:linear-gradient(0deg,rgba(19,21,18,.73),rgba(19,21,18,.08) 82%),linear-gradient(180deg,rgba(19,21,18,.37),transparent 36%)}.hero .eyebrow{text-shadow:0 1px 4px #181c18}}
.hall-strip{scrollbar-width:none}.hall-strip::-webkit-scrollbar{display:none}.hall-side.single-photo{grid-template-rows:1fr}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
