@font-face{font-family:Manrope;src:url('/fonts/manrope-variable-latin-ext.woff2')}@font-face{font-family:Cormorant;src:url('/fonts/cormorant-garamond-500-latin-ext.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f2ea;color:#1d1b17;font-family:Manrope,Arial,sans-serif}button,input,select{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}.hotel-header{height:82px;padding:0 clamp(24px,5vw,76px);position:absolute;z-index:10;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff2b}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border:1px solid #b9965a;display:grid;place-items:center;border-radius:50%;font-family:Cormorant;font-size:27px;color:#d8b978}.brand>span:last-child{display:grid;line-height:1}.brand strong{font-family:Cormorant;font-size:24px;font-weight:500;letter-spacing:.04em}.brand small{text-transform:uppercase;font-size:8px;letter-spacing:.28em;margin-top:4px}.hotel-header nav{display:flex;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.hotel-header nav a{opacity:.82}.header-cta,.gold-button{padding:13px 20px;border:1px solid #c5a56b;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.hero{height:min(860px,92vh);min-height:680px;position:relative;color:#fff;overflow:hidden}.hero-bg{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(.62) contrast(1.08)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,10,.84) 0%,rgba(9,12,10,.38) 55%,rgba(9,12,10,.2)),linear-gradient(0deg,rgba(10,12,10,.46),transparent 50%)}.hero-copy{position:absolute;left:clamp(28px,8vw,128px);top:50%;transform:translateY(-43%);max-width:750px}.kicker{color:#a47f43;text-transform:uppercase;letter-spacing:.22em;font-size:10px;font-weight:700;margin:0 0 18px}.hero .kicker{color:#d1af72}.hero h1{font-family:Cormorant;font-size:clamp(68px,8.5vw,126px);font-weight:500;line-height:.78;letter-spacing:-.035em;margin:0}.hero h1 em{color:#d5b77c;font-weight:500}.hero-copy>p:not(.kicker){max-width:520px;font-family:Cormorant;font-size:23px;line-height:1.45;color:#eee8dc;margin:34px 0}.gold-button{display:inline-flex;gap:35px;align-items:center;background:#b08a4d;color:#fff;border:none;padding:18px 25px}.hero-note{position:absolute;right:6vw;bottom:48px;display:grid;text-align:right}.hero-note span{color:#d5b77c;letter-spacing:.25em}.hero-note small{text-transform:uppercase;font-size:9px;letter-spacing:.16em;margin-top:8px}.booking-shell{padding:76px clamp(24px,7vw,112px);background:#f6f2ea}.booking-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:30px}.booking-intro .kicker{grid-column:1/-1}.booking-intro h2,.section-head h2,.hotel-story h2{font:500 clamp(42px,5vw,72px)/.95 Cormorant;margin:0}.booking-intro>p:last-child{max-width:470px;justify-self:end;color:#716c62;line-height:1.7;font-size:13px}.booking-bar{display:grid;grid-template-columns:1fr 1fr .8fr auto;background:#fff;box-shadow:0 20px 60px #453d3020;border:1px solid #ded5c6}.booking-bar label{padding:21px 26px;border-right:1px solid #e5ddd1;display:grid;gap:9px}.booking-bar label span{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:#8a7c65}.booking-bar input,.booking-bar select{border:0;background:transparent;color:#2c2923;font-size:14px;outline:none}.booking-bar>button,.reserve-button{border:0;background:#17251f;color:#fff;padding:0 34px;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.steps{max-width:560px;margin:38px auto 0;display:flex;align-items:center}.steps div{display:flex;align-items:center;gap:9px;color:#aaa296}.steps b{border:1px solid #bbb3a6;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:10px}.steps .active{color:#9c773b}.steps .active b{color:#fff;background:#a68145;border-color:#a68145}.steps i{height:1px;flex:1;background:#d8d0c3;margin:0 12px}.steps span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.hotel-story{background:#18231e;color:#fff;padding:100px clamp(24px,7vw,112px);display:grid;grid-template-columns:1.1fr .8fr;gap:50px;align-items:center}.hotel-story .kicker{color:#c7a66d}.hotel-story>p{font-family:Cormorant;font-size:22px;line-height:1.6;color:#d5d6cf}.story-stats{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:34px;display:grid;grid-template-columns:repeat(3,1fr)}.story-stats span{display:flex;gap:15px;align-items:baseline;color:#aaa99f;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.story-stats strong{font:500 38px Cormorant;color:#d4b270}.selection{padding:105px clamp(18px,5vw,78px);background:#f7f4ed}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 auto 45px;max-width:1500px}.section-head>p{font-size:12px;color:#777165;max-width:380px}.selector-grid{max-width:1500px;margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(350px,.65fr);gap:22px}.model-column,.rooms-column{background:#fff;border:1px solid #dfd9cf}.model-copy{padding:23px 25px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e6e0d7}.model-copy div{display:grid;gap:5px}.model-copy span,.model-copy small{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#998b73}.model-copy strong{font:500 20px Cormorant}.floor-pills{padding:13px 20px;display:flex;gap:7px;border-bottom:1px solid #e6e0d7}.floor-pills button,.model-toolbar button{border:1px solid #d8d0c3;background:#fff;padding:8px 11px;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.floor-pills button.active,.model-toolbar button.active{background:#9b7944;color:#fff;border-color:#9b7944}.model-viewer{height:640px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 30%,#f3f0e8,#dcd9d0)}.model-viewer canvas{width:100%;height:100%;display:block;touch-action:none}.model-viewer-status{position:absolute;inset:0;display:grid;place-content:center;gap:12px;text-align:center;background:#ede9df;color:#70695d;font-size:12px}.model-viewer-status.is-hidden{display:none}.spinner{width:30px;height:30px;border:2px solid #c9bfad;border-top-color:#9b7944;border-radius:50%;animation:spin 1s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.model-reset{position:absolute;left:17px;bottom:17px;border:0;background:#17251ee8;color:#fff;padding:10px 14px;font-size:9px;text-transform:uppercase}.model-controls-drawer{position:absolute;top:15px;right:15px}.model-toolbar-toggle{border:1px solid #ffffff55;background:#17251ee8;color:#fff;padding:10px 14px}.model-toolbar{display:none;background:#ffffffed;padding:8px;margin-top:5px;box-shadow:0 10px 35px #0002}.model-controls-drawer.is-open .model-toolbar{display:flex;gap:8px}.model-filter-group,.model-scene-group{display:flex;gap:5px}.model-flat-tooltip{position:absolute;transform:translate(-50%,-115%);background:#17251f;color:#fff;padding:10px 13px;display:grid;pointer-events:none}.model-flat-tooltip[hidden]{display:none}.model-selected-label{position:absolute;background:#b48d51;color:#fff;padding:5px 8px;font-size:10px}.rooms-toolbar{height:58px;padding:0 18px;border-bottom:1px solid #e6e0d7;display:flex;justify-content:space-between;align-items:center}.rooms-toolbar span{font-size:11px;color:#6f695f}.rooms-toolbar select{border:0;background:transparent;font-size:10px;text-transform:uppercase}.room-list{height:676px;overflow:auto;padding:12px}.room-card{display:grid;grid-template-columns:145px 1fr;border:1px solid #e2ddd4;margin-bottom:11px;background:#fff;transition:.2s}.room-card:hover,.room-card.selected{border-color:#a98752;box-shadow:0 8px 24px #57472d16}.room-card.unavailable{opacity:.58}.room-card img{width:100%;height:100%;min-height:160px;object-fit:cover}.room-body{padding:14px;display:grid;align-content:start}.room-top{display:flex;justify-content:space-between;gap:8px}.room-top h3{font:500 21px Cormorant;margin:0}.availability{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#3f7d61}.availability.no{color:#996257}.room-meta{font-size:10px;color:#766f64;margin:7px 0 10px}.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{font-size:8px;background:#f1ede6;padding:5px 7px}.room-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:15px}.room-price small{display:block;font-size:8px;color:#898176}.room-price strong{font:500 20px Cormorant}.room-bottom button{border:0;background:transparent;color:#99743a;text-transform:uppercase;font-size:8px;letter-spacing:.1em;padding:8px 0}.amenities{padding:75px clamp(24px,7vw,112px);background:#eee8dc;text-align:center}.amenities>div{display:grid;grid-template-columns:repeat(4,1fr);max-width:1100px;margin:35px auto 0}.amenities span{display:grid;gap:8px;color:#a37f45;font-size:25px;border-right:1px solid #d4cab9}.amenities span:last-child{border:0}.amenities strong{font:500 18px Cormorant;color:#27241f}.amenities small{font-size:9px;color:#81796e}.room-modal,.summary-modal{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:20px}.room-modal[hidden],.summary-modal[hidden]{display:none}.modal-backdrop{position:absolute;inset:0;background:#0b100ddd;backdrop-filter:blur(8px)}.room-modal article{position:relative;display:grid;grid-template-columns:1.1fr .9fr;background:#f9f6f0;width:min(1050px,95vw);max-height:92vh;overflow:auto}.modal-close{position:absolute;right:14px;top:12px;z-index:2;border:0;background:#fff;border-radius:50%;width:35px;height:35px;font-size:20px}.modal-gallery{position:relative;min-height:580px;background:#171b18}.modal-gallery img{width:100%;height:100%;object-fit:cover;position:absolute}.modal-gallery button{position:absolute;z-index:2;top:50%;border:0;border-radius:50%;width:40px;height:40px;font-size:26px}.modal-gallery #galleryPrev{left:15px}.modal-gallery #galleryNext{right:15px}.modal-gallery span{position:absolute;z-index:2;bottom:15px;right:15px;background:#111b;color:#fff;padding:6px 9px;font-size:10px}.modal-content{padding:60px 45px 35px}.modal-content h2{font:500 45px/1 Cormorant;margin:0 0 15px}.modal-content>p:not(.kicker){font:17px/1.55 Cormorant;color:#6e675c}.modal-specs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ddd5c8;margin:25px 0}.modal-specs span{background:#f9f6f0;padding:13px;display:grid}.modal-specs small{font-size:8px;text-transform:uppercase;color:#8c8375}.modal-content h3{font:500 18px Cormorant}.modal-content ul{columns:2;padding-left:18px;font-size:11px;color:#655f56;line-height:2}.modal-price{border-top:1px solid #ddd5c8;margin-top:25px;padding-top:20px;display:flex;justify-content:space-between}.modal-price span{display:grid}.modal-price small{font-size:8px;text-transform:uppercase}.modal-price strong{font:500 27px Cormorant}.modal-price button{border:0;background:#17251f;color:#fff;padding:14px 18px;font-size:9px;text-transform:uppercase}.summary-modal article{position:relative;background:#f9f6f0;width:min(560px,94vw);padding:55px}.summary-modal h2{font:500 46px Cormorant;margin:0 0 25px}.summary-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e1d9cd;font-size:12px}.summary-row span{color:#80786d}.summary-total{display:flex;justify-content:space-between;margin:25px 0;font:500 24px Cormorant}.reserve-button{width:100%;padding:18px}.demo-disclaimer{text-align:center;font-size:9px;color:#91897e;line-height:1.5}.toast{position:fixed;z-index:100;right:25px;bottom:25px;background:#17251f;color:#fff;padding:18px 22px;display:grid;gap:5px;box-shadow:0 15px 50px #0005}.toast[hidden]{display:none}.toast span{font-size:11px;color:#c9c8c0}footer{background:#101713;color:#fff;padding:38px clamp(24px,7vw,112px);display:flex;justify-content:space-between;align-items:center;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#aaa}.sunlight-panel{position:absolute;z-index:9;background:#fff;left:20px;top:20px;padding:15px}
.booking-bar{grid-template-columns:1.15fr 1.15fr .8fr .8fr auto}.selector-grid,.model-column,.rooms-column{min-width:0}.floor-pills{max-width:100%}.summary-modal article{max-height:94vh;overflow:auto}.guest-form{border-top:1px solid #ddd5c8;padding-top:20px}.guest-form h3{font:500 25px Cormorant;margin:0 0 15px}.guest-form>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guest-form label{display:grid;gap:6px}.guest-form label span{font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:#81786b}.guest-form input{width:100%;border:1px solid #d8d0c3;background:#fff;padding:12px;outline:none}.guest-form input:focus{border-color:#a68145;box-shadow:0 0 0 2px #a6814526}.guest-form .reserve-button{margin-top:18px}.booking-error{padding:11px;background:#f3ded9;color:#813d34;font-size:11px;line-height:1.5}.confirmation-modal{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:20px}.confirmation-modal[hidden]{display:none}.confirmation-modal article{position:relative;width:min(600px,94vw);max-height:94vh;overflow:auto;background:#f9f6f0;padding:60px;text-align:center;box-shadow:0 30px 100px #0007}.confirmation-mark{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 25px;border:1px solid #b38c50;border-radius:50%;color:#b38c50;font-size:27px}.confirmation-modal h2{font:500 50px/1 Cormorant;margin:0 0 18px}.confirmation-modal article>p:not(.kicker):not(.demo-disclaimer){font:18px/1.5 Cormorant;color:#635d53}.reservation-number{display:grid;gap:7px;margin:27px 0;padding:22px;border:1px solid #d9cfbf;background:#f1ece3}.reservation-number small{font-size:8px;text-transform:uppercase;letter-spacing:.17em;color:#847968}.reservation-number strong{font:500 28px Cormorant;letter-spacing:.08em;color:#8d6a35}.confirmation-modal #confirmationDetails{margin-bottom:25px;text-align:left}.confirmation-modal .reserve-button{padding:17px 28px}
@media(max-width:1100px){.booking-bar{grid-template-columns:1fr 1fr}.booking-bar>button{min-height:62px}}
@media(max-width:900px){.hotel-header nav{display:none}.hero{min-height:650px}.booking-intro{grid-template-columns:1fr}.booking-intro>p:last-child{justify-self:start}.hotel-story{grid-template-columns:1fr}.story-stats{grid-column:auto}.selector-grid{grid-template-columns:1fr}.rooms-column{order:-1}.room-list{height:auto;max-height:600px}.model-viewer{height:520px}.room-modal article{grid-template-columns:1fr}.modal-gallery{min-height:360px}.amenities>div{grid-template-columns:1fr 1fr;gap:25px}.amenities span:nth-child(2){border:0}}
@media(max-width:560px){.hotel-header{height:70px}.header-cta{display:none}.hero-copy{top:48%}.hero h1{font-size:61px}.booking-shell,.selection{padding-left:15px;padding-right:15px}.booking-bar{grid-template-columns:1fr}.booking-bar label{border-right:0;border-bottom:1px solid #e5ddd1}.booking-bar>button{padding:20px}.steps span{display:none}.steps i{margin:0 5px}.hotel-story{padding:70px 24px}.story-stats{grid-template-columns:1fr;gap:20px}.section-head{display:block}.model-copy{display:block}.model-copy small{display:none}.floor-pills{overflow:auto}.model-viewer{height:430px}.room-card{grid-template-columns:110px 1fr}.room-card img{min-height:180px}.amenities>div{grid-template-columns:1fr}.amenities span{border:0;border-bottom:1px solid #d4cab9;padding-bottom:20px}.room-modal{padding:0}.room-modal article{width:100vw;max-height:100vh}.modal-content{padding:35px 24px}.summary-modal,.confirmation-modal{padding:0}.summary-modal article,.confirmation-modal article{width:100vw;max-height:100vh;padding:45px 24px}.guest-form>div{grid-template-columns:1fr}.confirmation-modal h2{font-size:42px}footer{display:grid;gap:20px}}
