:root{--pine:#006039;--pine2:#07352a;--dark:#081a15;--ink:#172b22;--gold:#a37e2c;--lightgold:#efce68;--paper:#f6f3ec;--warm:#ede8dc;--line:#d9d2c1;--white:#fff;--serif:Baskerville,"Libre Baskerville",Georgia,serif;--sans:"Josefin Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}body.lock{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.18;letter-spacing:-.045em}h2{font-size:clamp(2.2rem,4.5vw,4.8rem)}em{font-style:italic;font-weight:400}p{line-height:1.73}.skip{position:absolute;left:-999px;z-index:100}.skip:focus{left:12px;top:12px;background:white;padding:12px}.topline{height:27px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,24px);background:var(--dark);color:#d8d3c2;letter-spacing:.16em;font-size:9px;font-weight:600}.header{height:84px;padding:0 max(4vw,24px);background:rgba(250,248,243,.98);display:flex;align-items:center;justify-content:space-between;gap:30px;position:sticky;top:0;z-index:30;border-bottom:1px solid #eae4d9;box-shadow:0 5px 25px #071c1609}.brand{display:flex;align-items:center;gap:12px;min-width:217px;color:#1d352b;line-height:1.2}.brand img{width:38px;height:50px;object-fit:contain}.brand b{display:block;letter-spacing:.092em;font-size:14px;font-weight:600;white-space:nowrap}.brand small{display:block;letter-spacing:.54em;font-size:11px;margin-top:6px}.nav{display:flex;align-items:center;gap:clamp(12px,2.5vw,38px)}.nav a,.language,.btn,.topline,.eyebrow,.inline-link,.rate-sub,.footer-label{font-family:var(--sans);letter-spacing:.11em;font-weight:600}.nav a{font-size:10px;color:#34473e;white-space:nowrap}.nav a:hover,.footer a:hover,.inline-link:hover{color:#ad842d}.nav-right{display:flex;align-items:center;gap:16px}.language{background:none;border:0;font-size:11px;padding:10px;color:var(--pine)}.language span{color:var(--gold);font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:12px;border:1px solid transparent;padding:16px 26px;font-size:10px;min-height:50px;transition:.25s ease;line-height:1.4}.btn:hover{transform:translateY(-2px);filter:brightness(1.05)}.btn-small{min-height:37px;padding:12px 18px;font-size:10px}.btn-outline{border-color:#908062;color:#394a3f}.btn-green{background:var(--pine);color:white}.btn-gold{background:var(--lightgold);color:#142820}.btn-dark{background:#0b2a20;color:white}.btn-glass{border-color:#d3cbb2a8;color:white;background:#ffffff0c}.btn-text{background:none;color:#645c4e;text-decoration:underline}.hamburger{display:none;width:38px;height:35px;background:transparent;border:0;padding:8px}.hamburger span{display:block;width:22px;height:1px;background:var(--ink);margin:5px 0}.hero{min-height:700px;height:min(82svh,850px);position:relative;overflow:hidden;color:white;background:#0c211b}.hero-photo{position:absolute;inset:0;background:url("assets/photo-d683c042f264.webp") center 42%/cover no-repeat;transform:scale(1.03)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#061b16eb 0%,#0b2317c6 37%,#05171a73 73%,#0619119c 100%),linear-gradient(0deg,#031f17cb,transparent 32%)}.hero-frame{position:absolute;inset:28px;border:1px solid #eee7d44f;pointer-events:none}.hero-body{position:absolute;left:max(9.5vw,40px);top:50%;transform:translateY(-50%);width:min(830px,80%)}.eyebrow{font-size:11px;letter-spacing:.24em;font-weight:600;color:var(--gold);margin-bottom:24px}.eyebrow.pale{color:#e5d3a8}.eyebrow.light{color:#edcf7c}.hero h1{font-size:clamp(3.2rem,6.8vw,7.5rem);line-height:1.09;margin-bottom:24px;max-width:1000px}.hero h1 em{color:#dfbd72}.hero-desc{font-size:clamp(15px,1.4vw,19px);line-height:1.7;color:#ebe9e2;max-width:560px;font-weight:300}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.hero-foot{position:absolute;bottom:55px;left:max(9.5vw,40px);right:max(9vw,40px);display:flex;justify-content:space-between;align-items:center;color:#ece2ce;font-size:10px;letter-spacing:.15em}.down-arrow{font-size:26px;font-weight:300}.announcement{min-height:55px;background:var(--pine2);display:flex;gap:18px;align-items:center;justify-content:center;padding:12px 20px;color:#efe8d4;font-size:10px;letter-spacing:.1em;flex-wrap:wrap}.announcement b{color:var(--lightgold);font-weight:700;letter-spacing:.13em}.announcement a{border-bottom:1px solid #d7c491;padding-bottom:2px}.blink{width:6px;height:6px;background:#ebc96a;border-radius:100%;box-shadow:0 0 0 5px #ebc96a20}.section{padding:clamp(70px,8.6vw,135px) max(6vw,22px)}.section-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:10vw;align-items:start}.intro h2{max-width:760px}.body-lead{max-width:550px;padding-top:38px;color:#4d5c51}.body-lead p:first-child{font-size:18px}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:85px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pillars>div{padding:30px 25px 25px 0;border-right:1px solid var(--line);padding-left:18px}.pillars>div:first-child{padding-left:0}.pillars>div:last-child{border-right:0}.pillars span{display:block;color:var(--gold);font-family:var(--serif);font-size:21px;margin-bottom:25px}.pillars b{font-size:11px;letter-spacing:.11em}.pillars p{color:#666e63;font-size:13px;margin:6px 0 0}.featured{display:grid;grid-template-columns:1fr 1fr;background:#0b2a21;color:#f2ece1;min-height:650px}.featured-img{min-height:550px;overflow:hidden}.featured-img img{width:100%;height:100%;object-fit:cover}.featured-body{padding:clamp(45px,6vw,100px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hotel-wordmark{font-family:var(--serif);font-size:24px;letter-spacing:.28em;margin-bottom:16px;color:#ebddbd}.hotel-wordmark small{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.6em;margin-top:7px}.featured h2{font-size:clamp(2.1rem,3.8vw,4.6rem)}.featured p:not(.eyebrow){max-width:510px;color:#dadfd6;font-size:15px}.featured-meta{display:flex;gap:35px;margin:25px 0 40px}.featured-meta span{font-family:var(--serif);font-size:28px;color:#e8d3a0}.featured-meta small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.09em;color:#c2c9bc}.inline-link{font-size:11px;letter-spacing:.1em;border-bottom:1px solid var(--gold);padding:0 0 10px}.inline-link.light{color:#f2dfa7}.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:47px}.section-head h2{margin-bottom:16px}.section-summary{max-width:430px;font-size:16px;color:#667067;margin-bottom:14px}.price-legend{max-width:275px;text-align:right;font-size:11px;color:var(--pine);letter-spacing:.1em}.price-legend small{display:block;font-size:12px;letter-spacing:0;color:#828578;margin-top:6px}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.room-card{background:#fff;border:1px solid #e5e0d5;min-width:0;transition:transform .2s}.room-card:hover{transform:translateY(-4px)}.room-img{width:100%;height:260px;object-fit:cover}.room-copy{padding:23px 24px 26px}.room-index{font-size:10px;color:var(--gold);letter-spacing:.16em}.room-copy h3{font:400 25px var(--serif);margin:8px 0}.room-copy p{font-size:13px;color:#626b62;min-height:54px;margin-bottom:18px}.room-price{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;align-items:center}.room-price strong{font:400 23px var(--serif);color:var(--pine)}.room-price small{display:block;font-size:10px;color:#797c71;letter-spacing:.08em}.room-price button{background:none;border:0;padding:6px 0;font-size:10px;letter-spacing:.1em;color:var(--pine);font-weight:600}.note{font-size:12px;color:#788078;line-height:1.6}.undergrid{margin:22px 0 0}.experience{background:#ede8df}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.exp-card{position:relative;height:420px;overflow:hidden;color:white}.exp-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.exp-card:hover img{transform:scale(1.07)}.exp-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#07190de6,transparent 70%)}.exp-card .exp-copy{position:absolute;bottom:25px;left:23px;right:20px;z-index:1}.exp-copy span{font-size:10px;letter-spacing:.17em;color:#f4d48f}.exp-copy h3{font:400 25px var(--serif);margin:8px 0 0}.exp-copy p{font-size:12px;color:#e3eadf;margin:7px 0 0}.experience>.note{margin-top:20px}.rates{background:var(--dark);color:#f3f3e9;padding:100px max(7vw,25px)}.rates-inner{max-width:1300px;margin:auto}.rates-head{max-width:740px;margin-bottom:52px}.rates h2{font-size:clamp(2.2rem,5vw,5.3rem)}.rates-head p:last-child{max-width:800px;color:#bccdc2}.rates-cols{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.rate-sub{font-size:12px;color:var(--lightgold);margin-bottom:15px}.line-list{display:grid;gap:0}.line{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e4dfd72c;padding:12px 0;font-size:15px}.line b{font-family:var(--serif);font-size:19px;font-weight:400;color:#ebdbac;white-space:nowrap}.rates-small{color:#d2d5cb;font-size:12px;margin-top:19px}.rates-bottom{border-top:1px solid #ffffff31;margin-top:60px;padding-top:32px;display:flex;justify-content:space-between;align-items:center;gap:50px}.rates-bottom p{color:#bec8bf;font-size:12px;max-width:650px;margin:0}.event-top{display:grid;grid-template-columns:1.1fr .85fr;gap:7vw;align-items:center}.event-title{font-size:clamp(3.8rem,8vw,9rem);line-height:1;margin-bottom:24px}.event-title em{color:var(--gold)}.event-date{font-size:11px;letter-spacing:.14em;color:#826526}.event-top>div:first-child>p:nth-last-child(2){max-width:580px;color:#536156}.event-visual{height:500px;position:relative;overflow:hidden}.event-visual img{width:100%;height:100%;object-fit:cover}.event-ribbon,.event-visual span{position:absolute;right:0;bottom:24px;background:var(--lightgold);font-size:10px;padding:12px 25px;letter-spacing:.12em}.tagline{font:italic 17px var(--serif);color:#3b6147;margin-top:32px}.event-pricing{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:65px}.event-price-card{background:white;border:1px solid var(--line);padding:30px 33px}.event-price-card h3{font-size:14px;letter-spacing:.1em;font-weight:600}.event-price-card .line{border-bottom-color:#dbd4c5}.event-price-card .line b{color:#265944}.event-price-card p{min-height:44px}.event-extras{margin-top:25px;display:grid;gap:25px}details{border:1px solid var(--line);background:#fff}details summary{padding:20px 27px;list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:12px;letter-spacing:.09em;font-weight:700}details summary::-webkit-details-marker{display:none}details[open] summary span{transform:rotate(45deg)}.menu-details{padding:14px 28px 30px;border-top:1px solid var(--line)}.menu-details h4{font-size:12px;letter-spacing:.1em;margin:22px 0 7px;color:#815f20}.menu-details p,.menu-details li{font-size:13px;color:#546356;line-height:1.7}.menu-details ul{padding-left:20px}.event-payments{background:#e7e1d3;padding:24px 30px;display:flex;justify-content:space-between;align-items:center;gap:30px}.event-payments p{font-size:13px;margin:0;max-width:780px}.buyout{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:#0a291f;color:white}.buyout-photo img{width:100%;height:100%;object-fit:cover}.buyout-body{padding:clamp(35px,6.2vw,100px);display:flex;flex-direction:column;align-items:start;justify-content:center}.buyout h2{font-size:clamp(2.5rem,4.5vw,5rem)}.buyout-body>p:not(.eyebrow){color:#d5ded5;font-size:15px}.buyout-price{font:400 40px var(--serif);color:#e5c06b;margin:20px 0 6px}.buyout-price small{font-size:16px}.buyout-price span{font:600 10px var(--sans);letter-spacing:.15em;display:block;color:#eee2ca}.buyout .note-white{font-size:12px;color:#b9c9ba}.assurance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.assurance-grid>div{border-top:1px solid var(--line);padding-top:21px}.assurance-grid span{font-size:30px;color:var(--gold)}.assurance-grid h3{font:400 21px var(--serif);margin:18px 0 7px}.assurance-grid p{font-size:13px;color:#636c62}.contact{background:#e8e7dd;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.contact-aside>p:not(.eyebrow){font-size:15px;color:#5e685e;max-width:430px}.contact-links{display:flex;flex-direction:column;gap:18px;margin-top:40px}.contact-links a{display:flex;align-items:center;gap:10px;font-size:13px;overflow-wrap:anywhere}.contact-links a span:first-child{width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #b5b3a1;border-radius:50%;flex:none}.contact-aside .note{margin-top:35px;font-size:12px}.contact-form-wrap{background:#fff;padding:clamp(26px,4vw,55px);border:1px solid #e2ded3}.contact-form-head h3{font-size:13px;letter-spacing:.14em}.contact-form-head p{color:#697268;font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact form{margin-top:24px;display:grid;gap:22px}label>span:not(.checkline span){display:block;font-size:10px;letter-spacing:.08em;font-weight:700;margin-bottom:9px}.contact input:not([type=checkbox]),.contact select,.contact textarea{width:100%;border:0;border-bottom:1px solid #bfc7bd;background:#fff;padding:12px 0;font-size:14px;outline-offset:3px;color:#1f372a;border-radius:0}.contact textarea{resize:vertical}.checkline{display:flex;gap:12px;align-items:start}.checkline input{width:17px;height:17px;accent-color:var(--pine);margin-top:2px;flex:none}.checkline span{font-size:12px;color:#667066;line-height:1.6}.form-status{font-size:13px;margin:0;color:#985121}.form-buttons{display:flex;gap:10px;flex-wrap:wrap}.btn-copy{background:#f5f2ec;color:#315342;border:1px solid #ddd5c3}.faqs{max-width:1060px;margin:auto}.faq-list{border-top:1px solid var(--line);margin-top:45px}.faq{border-bottom:1px solid var(--line)}.faq button{width:100%;text-align:left;background:none;border:0;display:flex;align-items:center;justify-content:space-between;font:400 19px var(--serif);padding:23px 0;gap:25px}.faq button span{color:#8b6e35;font-size:24px;font-family:var(--sans)}.faq p{padding:0 38px 18px 0;font-size:14px;color:#68716a;margin:0;max-width:800px}.footer{background:#071a15;color:#e4e9df;padding:80px max(6vw,24px) 0}.footer-top{display:grid;grid-template-columns:1.35fr .6fr .65fr 1fr;gap:55px;padding-bottom:70px}.footer-brand img{width:60px;height:80px;object-fit:contain;margin-bottom:15px}.footer-brand h3{font-size:18px;letter-spacing:.18em;line-height:1.3}.footer-brand p{font:italic 14px var(--serif);color:#dbc78c}.footer-brand span{font-size:10px;letter-spacing:.1em}.footer-label{font-size:11px;color:#d8b76b;margin-bottom:20px}.footer-top>div:not(:first-child)>a{display:block;font-size:11px;letter-spacing:.08em;margin-bottom:15px}.footer-disclaimer p:not(.footer-label){font-size:12px;color:#a5b6a9}.footer-bottom{border-top:1px solid #314037;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#a4b4a5;font-size:10px;letter-spacing:.06em;flex-wrap:wrap}.footer-bottom>div{display:flex;gap:22px}.footer-bottom button{background:none;border:0;color:#c8d2c8;letter-spacing:.06em;font-size:10px;padding:5px}.overlay[hidden],.modal[hidden]{display:none!important}.overlay,.modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:18px;background:#061811d9;overflow:auto}.age-panel{background:var(--paper);padding:clamp(25px,5vw,55px);max-width:540px;width:100%;text-align:center;box-shadow:0 30px 100px #0006;position:relative}.age-panel>img{margin:0 auto 8px;width:50px;height:64px;object-fit:contain}.separator{width:44px;height:1px;background:var(--gold);margin:18px auto 23px}.age-panel h2{font-size:clamp(1.9rem,4.1vw,3rem);margin-bottom:20px}.age-panel p:not(.eyebrow){font-size:14px;color:#6a756a}.age-panel .btn{display:flex;width:100%;margin:13px auto 0}.age-panel .btn-text{width:auto}.age-bottom{display:block;font-size:10px;letter-spacing:.18em;color:#8b877a;margin-top:22px}.modal{z-index:110}.modal-shade{position:absolute;inset:0}.modal-box{background:var(--paper);padding:35px;position:relative;z-index:1;width:min(850px,100%);max-height:92vh;overflow:auto}.modal-close{position:absolute;right:13px;top:6px;border:0;background:none;font-size:32px;z-index:3;color:#223a2b}.modal-hero{height:320px;object-fit:cover;width:100%}.modal-header{margin-top:22px}.modal-header h2{font-size:clamp(2rem,4vw,3.3rem);margin-bottom:7px}.modal-header p{color:#687467;font-size:14px}.modal-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.modal-photos img{width:100%;height:185px;object-fit:cover}.modal-photos.single{display:flex;justify-content:center}.modal-photos.single img{width:min(100%,320px);height:185px}.modal-photos img:only-child{grid-column:1/-1;height:240px}.modal-prices{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0}.modal-prices strong{font:400 25px var(--serif);color:var(--pine)}.modal-prices small{display:block;color:#6e786f}.policy-box{max-width:750px}.policy-box h2{font-size:34px}.policy-box h3{font:600 15px var(--sans);margin:25px 0 8px;color:var(--pine)}.policy-box p,.policy-box li{font-size:14px;color:#48594d}.policy-box ul{padding-left:23px}.modal-box .eyebrow{margin:5px 0 0}@media(max-width:1080px){.header{gap:15px}.nav{gap:14px}.nav a{font-size:9px}.brand{min-width:175px}.brand b{font-size:12px}.room-grid{gap:16px}.experience-grid{grid-template-columns:repeat(2,1fr)}.exp-card{height:360px}.footer-top{gap:28px}}@media(max-width:850px){.header{height:68px}.brand img{height:44px;width:34px}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:22px 8%;flex-direction:column;align-items:start;box-shadow:0 12px 15px #0019}.nav.open{display:flex}.nav a{font-size:13px;padding:9px}.hamburger{display:block}.nav-right .btn-small{display:none}.hero{min-height:680px}.hero-body{left:6vw;width:88vw}.hero-frame{inset:12px}.hero-foot{left:6vw;right:6vw}.section-grid,.featured,.event-top,.buyout,.contact{grid-template-columns:1fr}.section-grid{gap:15px}.body-lead{padding-top:0}.pillars,.assurance-grid{grid-template-columns:repeat(2,1fr)}.pillars>div:nth-child(2){border-right:0}.featured-img{min-height:380px;height:430px}.featured-body{padding:70px 7vw}.section-head{align-items:start}.room-grid{grid-template-columns:repeat(2,1fr)}.event-visual{height:340px}.buyout-photo{height:360px}.rates-cols{gap:6vw}.footer-top{grid-template-columns:1fr 1fr}.contact{gap:40px}}@media(max-width:550px){.topline{font-size:8px;justify-content:center}.topline-right{display:none}.section{padding:70px 22px}.hero{height:740px;min-height:660px}.hero-body{left:7vw;top:49%;width:86vw}.hero h1{font-size:clamp(3rem,11vw,4.4rem)}.hero-foot span:nth-child(2){display:none}.hero-actions .btn{width:100%}.announcement{gap:8px;justify-content:start;font-size:9px}.announcement a{width:100%;margin-left:17px}.section-head{display:block}.price-legend{text-align:left;margin-top:15px}.pillars{margin-top:42px}.pillars>div{padding:22px 14px 18px 0!important}.pillars b{font-size:10px}.pillars p{font-size:11px}.room-grid,.rates-cols,.event-pricing,.form-row{grid-template-columns:1fr}.room-img{height:240px}.exp-card{height:320px}.experience-grid{gap:12px}.exp-copy h3{font-size:20px}.featured-meta{gap:20px}.rates{padding:72px 22px}.rates-bottom{display:block}.rates-bottom .btn{margin-top:22px;width:100%}.event-title{font-size:clamp(3rem,13vw,6rem)}.event-price-card{padding:25px 22px}.event-payments{display:block}.event-payments .btn{width:100%;margin-top:22px}.assurance-grid{gap:15px}.footer{padding-top:60px}.footer-top{gap:35px 15px}.footer-bottom{display:grid}.contact-form-wrap{padding:26px 22px}.contact-links a{font-size:12px}.form-buttons .btn{width:100%}.modal-box{padding:24px 20px}.modal-hero{height:230px}.modal-photos img{height:125px}.modal-prices{display:block}.modal-prices .btn{margin-top:15px;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Visual revision 02: legibility, responsive typographic hierarchy and fine alignment. */
.buyout-price.buyout-quote{font-family:var(--sans);font-size:clamp(19px,2.5vw,31px);font-weight:600;line-height:1.35;letter-spacing:.11em;max-width:100%;text-wrap:balance;overflow-wrap:anywhere;margin:22px 0 8px;color:var(--lightgold)}
.buyout-min-nights{margin:0 0 18px!important;font-family:var(--sans);font-size:11px!important;font-weight:600;letter-spacing:.17em;color:#e7dac1!important}
.rates-small{font-size:clamp(13px,1.05vw,14px);line-height:1.8;max-width:520px}
.price-legend small{line-height:1.5}
.exp-copy h3{line-height:1.26;text-wrap:balance}
.exp-copy p{line-height:1.55}
.room-price small{line-height:1.5;letter-spacing:.045em}
.room-price{gap:14px}
.room-price button{flex-shrink:0}
@media(max-width:550px){
 .buyout-price.buyout-quote{font-size:clamp(20px,5.2vw,26px)}
 .buyout-min-nights{margin-bottom:18px!important}
 .rates-small{font-size:13px;line-height:1.75}
 .room-price{align-items:flex-end}
 .exp-card .exp-copy{bottom:20px;left:16px;right:11px}
 .exp-copy h3{font-size:clamp(19px,5vw,23px)}
 .exp-copy p{font-size:11.5px}
 .price-legend{max-width:100%}
}
@media(min-width:551px) and (max-width:1050px){.buyout-price.buyout-quote{font-size:clamp(23px,3.2vw,29px)}}

/* FORBIDDEN DESIRE | DETAILED EVENT GUIDE | REVISION 04 */
.fd-details{background:#f5f2e9;color:#152e24;scroll-margin-top:90px}
.fd-details .fd-heading{max-width:1000px;margin:0 auto 47px;text-align:center}
.fd-details .fd-heading h2{font-size:clamp(2.5rem,5vw,5.4rem);margin-bottom:19px}
.fd-details .fd-lede{max-width:770px;margin:0 auto;color:#627269;font-size:clamp(16px,1.4vw,19px);line-height:1.8}
.fd-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:26px auto 0}.fd-tags span{border:1px solid #bdbca9;border-radius:28px;padding:9px 13px;color:#52685b;font-size:10px;letter-spacing:.08em;font-weight:700}
.fd-features{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:1370px;margin:0 auto 95px}.fd-features article{background:#fff;border:1px solid #e5dfd3;padding:28px 23px 29px;min-width:0}.fd-features .fd-num{font-family:var(--serif);font-size:37px;color:#b39550;line-height:1}.fd-features h3{font-size:21px;line-height:1.3;margin:19px 0 8px;font-family:var(--serif);font-weight:400}.fd-features p{margin:0;color:#64756a;font-size:14px;line-height:1.65}
.fd-subhead{max-width:930px;margin:0 auto 32px;text-align:center}.fd-subhead h3{font-family:var(--serif);font-size:clamp(2rem,4vw,3.6rem);font-weight:400;margin:0 0 10px;line-height:1.25}.fd-subhead p:last-child{color:#66766c;margin:0 auto;max-width:735px;font-size:14px;line-height:1.75}
.fd-program{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-width:1370px;margin:0 auto 100px}.fd-day{background:#fff;border:1px solid #e6dfd3;min-width:0;padding:28px 25px 23px;box-shadow:0 10px 28px #0e2b1c06}.fd-day-top{display:flex;gap:16px;align-items:flex-start;min-height:88px;border-bottom:1px solid #e6e0d4;margin-bottom:17px;padding-bottom:17px}.fd-day-top>span{font-family:var(--serif);font-size:40px;color:#bc9b53;line-height:1}.fd-day-top b{font-size:12px;letter-spacing:.09em;color:#173b2e}.fd-day-top small{display:block;color:#738074;font-size:10px;letter-spacing:.1em;margin-top:9px}.fd-time{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px;padding:9px 0;border-bottom:1px solid #eeebe2}.fd-time:last-child{border-bottom:0}.fd-time time{font-size:11px;color:#8b6e37;font-weight:700;line-height:1.5}.fd-time p{font-size:13px;line-height:1.55;color:#4e5f56;margin:0}
.fd-menus-title{margin-top:0}.fd-accordions{max-width:1120px;margin:38px auto 42px;display:grid;gap:10px}.fd-accordions details{background:white;border:1px solid #e0dbce}.fd-accordions summary{padding:19px 21px;cursor:pointer;font-size:12px;letter-spacing:.08em;font-weight:700;list-style-position:inside;color:#254235}.fd-accordions summary:hover{background:#f0ece2}.fd-accordion-body{padding:0 22px 20px 31px;border-top:1px solid #f0ece4}.fd-accordion-body p{padding-top:15px;margin:0;line-height:1.85;font-size:15px;color:#5d6d62}
.fd-bar-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1120px;margin:0 auto 75px}.fd-dark-card,.fd-light-card{padding:38px 37px;min-width:0}.fd-dark-card{background:#08281d;color:#f4eee4}.fd-light-card{background:#ece5d8;color:#213a2d}.fd-bar-grid h3{font-family:var(--serif);font-size:clamp(25px,3vw,39px);font-weight:400;line-height:1.3;margin:0 0 24px}.fd-bar-line{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #ffffff37;padding:15px 0}.fd-bar-line b{font-size:11px;letter-spacing:.08em}.fd-bar-line span{font-family:var(--serif);font-size:17px;color:#e8d08b;white-space:nowrap}.fd-dark-card>p:last-child,.fd-light-card>p{font-size:14px;line-height:1.75}.fd-dark-card>p:last-child{margin-top:24px;color:#d5ded7}.fd-light-card>p{color:#546659}.fd-light-card h3{color:#173a2b}
.fd-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;max-width:1120px;margin:0 auto 38px}.fd-notes article{background:#fff;border:1px solid #e5ded0;padding:27px 28px}.fd-notes h4{font-size:19px;font-weight:400;font-family:var(--serif);line-height:1.4;margin:0 0 10px}.fd-notes p{color:#627267;font-size:14px;line-height:1.85;margin:0}.fd-notes .fd-wide-note{grid-column:span 2;border-left:4px solid #c5a45b;background:#fdfaf2}
.fd-disclaimer{max-width:1120px;margin:0 auto 40px;border-top:1px solid #d8d0bf;border-bottom:1px solid #d8d0bf;padding:15px 0}.fd-disclaimer p{font-size:13px;color:#69756c;line-height:1.8;margin:0}
.fd-cta{max-width:1120px;background:#0a2b1f;padding:38px 45px;display:flex;align-items:center;justify-content:space-between;gap:34px;margin:0 auto}.fd-cta h3{color:#fff;font-family:var(--serif);font-size:clamp(25px,3vw,40px);font-weight:400;margin:0 0 8px}.fd-cta p:last-child{color:#d7ded5;font-size:14px;max-width:565px;line-height:1.7;margin:0}.fd-cta a{flex-shrink:0}
.fd-event-link{display:inline-block;margin-top:19px;font-size:11px;letter-spacing:.07em;text-decoration:underline;text-underline-offset:7px;color:#936d2b;font-weight:700}
@media(max-width:1100px){.fd-features{grid-template-columns:repeat(2,1fr);margin-bottom:70px}.fd-program{gap:10px}.fd-day{padding:21px 17px}.fd-time{grid-template-columns:83px minmax(0,1fr)}.fd-day-top{gap:9px}}
@media(max-width:750px){.fd-details{padding:70px 20px}.fd-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:70px}.fd-features article{padding:22px 15px}.fd-features h3{font-size:17px}.fd-features p{font-size:12px}.fd-program{grid-template-columns:1fr;gap:12px;margin-bottom:75px}.fd-day{padding:27px 22px}.fd-day-top{min-height:unset}.fd-bar-grid{grid-template-columns:1fr;gap:12px}.fd-dark-card,.fd-light-card{padding:28px 25px}.fd-notes{grid-template-columns:1fr}.fd-notes .fd-wide-note{grid-column:span 1}.fd-notes article{padding:24px}.fd-cta{display:block;padding:30px 25px}.fd-cta a{margin-top:23px;width:100%}.fd-bar-line b{font-size:10px}.fd-tags{gap:6px}.fd-tags span{font-size:9px;padding:8px 10px}}
@media(max-width:400px){.fd-features{grid-template-columns:1fr}.fd-time{grid-template-columns:88px minmax(0,1fr)}.fd-details{padding-inline:16px}.fd-accordions summary{font-size:11px;padding:16px}}

/* Production polish — clearer focus, stable image ratios and gentler motion */
:focus-visible{outline:3px solid #a37e2c;outline-offset:4px}
.modal-photos.single{display:flex;justify-content:center;align-items:center}
.modal-photos.single img{display:block;width:min(100%,400px);height:auto;max-height:260px;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:2px}
.room-card .room-img{object-position:center;aspect-ratio:4/3}
.modal-box{overscroll-behavior:contain}
@media (max-width:550px){
  .modal-photos.single img{width:min(100%,360px);max-height:240px}
  .modal-header p{overflow-wrap:break-word}
  .modal-prices{gap:14px;flex-wrap:wrap}
  .modal-prices>.btn{max-width:100%;white-space:normal}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
