.booking-shell{max-width:1100px;margin:auto;padding:24px clamp(16px,4vw,48px) 50px;color:#172b29}.booking-footer,.booking-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-header{border-bottom:1px solid #dce6e1;padding-bottom:16px}.booking-footer a,.booking-header a,.booking-home-card>a:last-child{color:#17675b}.booking-brand{font-size:1.45rem;font-weight:800;letter-spacing:-.05em;text-decoration:none;color:#123b35!important}.booking-brand span{color:#29967e}.booking-intro{padding:36px 0 20px}.booking-home h1,.booking-intro h1,.confirmation-card h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.05;letter-spacing:-.045em;margin:.2em 0}.booking-intro p{color:#566c66}.booking-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.13em;color:#22836f;margin:0 0 8px}.booking-home-form,.booking-search{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) auto;gap:12px;padding:18px;background:#f2f7f4;border:1px solid #dce9e1;border-radius:18px;align-items:end}.booking-fields label,.booking-home-form label,.booking-search label,.promo-form label{display:grid;gap:7px;font-size:.84rem;font-weight:650}.booking-fields input,.booking-home-form input,.booking-search input,.promo-form input{width:100%;min-height:46px;border:1px solid #bccdc5;border-radius:10px;background:white;padding:10px 12px;color:#172b29;font:inherit}.booking-primary,.booking-search button,.promo-form button{min-height:46px;border:0;border-radius:10px;background:#17675b;color:white;padding:11px 16px;font:inherit;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.booking-primary:disabled,.booking-search button:disabled{opacity:.55;cursor:wait}.booking-alert,.booking-notice{border-radius:10px;padding:12px 14px}.booking-alert{background:#fff0ed;color:#8b2d20}.booking-notice{background:#eaf6ef;color:#215d44}.booking-section-title{margin:34px 0 14px}.booking-section-title h2{margin:0;font-size:1.7rem}.booking-offers{display:grid;gap:14px}.booking-room{display:grid;grid-template-columns:minmax(200px,1fr) minmax(300px,1.1fr);gap:20px;border:1px solid #dce6e1;border-radius:16px;padding:20px;background:#fff}.booking-room h3{margin:0 0 8px;font-size:1.35rem}.booking-room p{color:#566c66}.booking-rates{display:grid;gap:9px}.booking-rate{display:grid;grid-template-columns:1fr auto;gap:5px 12px;text-align:left;border:1px solid #cfddd6;border-radius:12px;padding:12px;background:#fbfdfb;color:#172b29;cursor:pointer;font:inherit}.booking-rate.selected{border:2px solid #21816d;background:#f0faf5}.booking-rate strong{font-size:1.05rem}.booking-rate small{grid-column:1/-1;color:#60756d}.booking-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.8fr);gap:24px}.booking-review h3{margin:0 0 8px}.promo-form{display:flex;align-items:end;gap:10px;margin:18px 0 26px}.promo-form label{flex:1}.guest-details{border-top:1px solid #dce6e1;padding-top:22px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.guest-details h4{margin:20px 0 8px}.booking-fineprint,.price-card p{font-size:.84rem;color:#60756d;line-height:1.5}.price-card{height:max-content;position:sticky;top:16px;padding:18px;border:1px solid #dce6e1;border-radius:16px;background:#f7faf8}.price-card h3{margin-bottom:18px}.price-line,.price-total{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #e3ebe6;font-size:.92rem}.price-line span:first-child{max-width:65%}.price-total{font-size:1.08rem;border-bottom:0;padding-top:16px}.booking-footer{border-top:1px solid #dce6e1;margin-top:42px;padding-top:16px;color:#60756d;font-size:.84rem}.booking-home{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(150deg,#e7f4ee,#f8fbf8 55%,#e5f1ed)}.booking-home-card{width:min(100%,560px);padding:clamp(24px,5vw,48px);border:1px solid #d7e5dc;border-radius:22px;background:white;box-shadow:0 24px 70px #234b3412}.booking-home-card h1{margin-top:28px}.booking-home-form{grid-template-columns:1fr 1fr;margin:24px 0}.booking-home-form .booking-primary{grid-column:1/-1}.confirmation-card{margin:8vh auto;padding:clamp(22px,5vw,48px);border:1px solid #dce6e1;border-radius:22px;background:white}.booking-shell.booking-premium{--ink:#0b1f2a;--navy:#16313d;--gold:#c79a45;--gold-dark:#9b7130;--muted:#66747b;--line:#e4e8e8;--paper:#f7f7f5;--white:#fff}.booking-premium .booking-header{min-height:62px;padding-bottom:14px;border-color:#e4e8e8}.booking-premium .booking-footer a,.booking-premium .booking-header a:last-child{color:#526169;font-size:12px;font-weight:600;text-decoration:none}.booking-premium .booking-intro .booking-eyebrow,.booking-premium .booking-section-title .booking-eyebrow{color:#9b7130;font:700 10px Arial,sans-serif;letter-spacing:.13em}.booking-premium .booking-intro h1{font-size:clamp(34px,4vw,47px);font-weight:650;line-height:1.1}.booking-premium .booking-intro>p:last-child{color:#66747b;font-size:13px}.booking-premium .booking-step-list{max-width:780px;margin:22px 0 0}.booking-premium .booking-step-list li{color:#8a969a;font:600 10px Arial,sans-serif;letter-spacing:.01em;text-transform:none}.booking-premium .booking-step-list li[aria-current=step]{color:#0b1f2a}.booking-premium .booking-step-list span{width:29px;height:29px;border:1px solid #cbd4d4;background:white;font:600 11px Arial,sans-serif}.booking-premium .booking-step-list li[aria-current=step] span{border-color:#c79a45;color:#0b1f2a;background:#f8f0df}.booking-premium .booking-primary,.booking-premium .booking-search button,.booking-premium .promo-form button{transition:background .18s ease,transform .18s ease}.booking-premium .booking-primary:hover,.booking-premium .booking-search button:hover,.booking-premium .promo-form button:hover{background:#16313d;transform:translateY(-1px)}.booking-premium .booking-section-title h2{font:650 clamp(24px,3vw,33px)/1.2 Arial,sans-serif}.booking-premium .booking-section-title>p:last-child:not(.booking-eyebrow){margin:8px 0 0;color:#68767c;font-size:13px}.booking-premium .booking-offers{gap:16px}.booking-premium .booking-room h3{margin:0 0 8px;font-size:19px;letter-spacing:-.025em}.booking-premium .booking-room p{color:#69777d;font-size:12px;line-height:1.6}.booking-premium .booking-room .booking-eyebrow{color:#3f7756;font-size:9px;letter-spacing:.03em}.booking-premium .booking-room-detail-link{margin-top:12px;color:#9b7130;font:700 11px Arial,sans-serif;letter-spacing:0;text-transform:none}.booking-premium .booking-rate{transition:border-color .18s ease,background .18s ease}.booking-premium .booking-rate:hover{border-color:#c79a45}.booking-premium .booking-rate small{color:#728087;font-size:10px}.booking-premium .booking-alert,.booking-premium .booking-notice{margin:14px 0;padding:13px 15px;border-radius:9px;font-size:12px;line-height:1.55}.booking-premium .booking-review{margin-top:36px;padding-top:2px}.booking-premium .booking-review h3,.booking-premium .price-card h3{margin:0 0 14px;color:#0b1f2a;font-size:18px;font-weight:650}.booking-premium .booking-review>div>div>p{color:#64737a;font-size:12px;line-height:1.6}.booking-premium .guest-details{margin-top:23px;border-color:#e7ebea}.booking-premium .guest-details>h3{margin:18px 0 12px}.booking-premium .booking-fields{gap:13px}.booking-premium .booking-fields label,.booking-premium .promo-form label{color:#4f6067;font:600 11px Arial,sans-serif}.booking-premium .booking-fields input,.booking-premium .promo-form input{min-height:44px;padding:10px 12px;border:1px solid #dce3e2;border-radius:8px;color:#0b1f2a;font:13px Arial,sans-serif}.booking-premium .booking-fineprint,.booking-premium .price-card p{color:#718087;font:11px/1.65 Arial,sans-serif}.booking-premium .price-line,.booking-premium .price-total{border-color:#edf0ef;color:#526168;font:12px Arial,sans-serif}.booking-premium .price-total strong{color:#0b1f2a;font-size:15px}.booking-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.booking-preview-photo{height:190px;position:relative;background-position:50%;background-size:cover}.booking-preview-photo>span{position:absolute;top:12px;left:12px;padding:6px 8px;border-radius:5px;color:#614a1e;background:#fff7e5;font-size:8px;font-weight:800;letter-spacing:.08em}.booking-preview-body{padding:16px}.booking-preview-bottom,.booking-preview-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.booking-preview-title h3{margin:0;font-size:16px}.booking-preview-title>span{color:#68767c;font-size:9px}.booking-preview-body>p{min-height:38px;color:#68767c;font-size:11px;line-height:1.55}.booking-preview-tags{display:flex;flex-wrap:wrap;gap:5px}.booking-preview-tags span{padding:5px 7px;border-radius:5px;background:#f4f6f5;color:#53636a;font-size:9px}.booking-preview-bottom{margin-top:14px;padding-top:12px;border-top:1px solid #edf0ef}.booking-preview-bottom strong{font-size:14px}.booking-preview-bottom small{color:#68767c;font-size:9px;font-weight:400}.booking-preview-bottom a{color:#9b7130;font-size:10px;font-weight:700;text-decoration:none}.preview-only-note{display:block;margin-top:10px;color:#8b754d;font-size:9px}.booking-empty-state{margin-top:25px;padding:45px 20px;border:1px dashed #d5dddb;border-radius:13px;background:white;text-align:center}.booking-empty-state>span{color:#c79a45;font-size:28px}.booking-empty-state h2{margin:9px 0;font-size:20px}.booking-empty-state p{margin:0;color:#68767c;font-size:12px}.booking-premium .booking-footer{margin-top:38px;padding-top:15px;border-color:#e4e8e8;color:#728087;font-size:11px}.confirmation-card .booking-eyebrow{color:#3f7756}.confirmation-card h1{color:#0b1f2a;font-size:clamp(31px,5vw,45px);font-weight:650;letter-spacing:-.045em}.confirmation-card>p{color:#66747b;font-size:13px}.confirmation-reference{padding:18px;border:1px solid #e5e9e7;border-radius:10px;background:#f8f9f8}.confirmation-reference strong{color:#0b1f2a;font-size:19px;letter-spacing:.04em}.confirmation-card dl div{border-color:#edf0ef}.confirmation-card dt{color:#77848a;font-size:10px}.confirmation-card dd{color:#0b1f2a;font-size:13px}.confirmation-actions{flex-wrap:wrap;gap:12px}.confirmation-actions a:last-child{color:#526169;font-size:12px;font-weight:600}@media (max-width:1000px){.booking-premium .booking-search{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:minmax(190px,.8fr) 1.2fr}.booking-premium .booking-rates{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:760px){.booking-shell.booking-premium{padding:15px 18px 40px}.booking-premium .booking-step-list{gap:3px}.booking-premium .booking-step-list li{font-size:9px}.booking-premium .booking-step-list li:after{margin-inline:5px}.booking-premium .booking-columns{grid-template-columns:1fr}.booking-premium .price-card{position:static;grid-row:auto}.booking-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.booking-shell.booking-premium{padding:12px 13px 30px}.booking-premium .booking-header{min-height:52px}.booking-premium .booking-intro{padding:23px 0 14px}.booking-premium .booking-step-list li{flex-direction:column;align-items:flex-start;gap:5px;font-size:8px}.booking-premium .booking-step-list li:after{align-self:center;width:100%;flex:none;margin:-16px 0 0 31px}.booking-premium .booking-search{grid-template-columns:1fr 1fr;gap:9px;padding:11px}.booking-premium .booking-search label{min-width:0}.booking-premium .booking-search input{min-height:42px;font-size:11px}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:1fr}.booking-premium .booking-room-photo{min-height:220px}.booking-premium .booking-room-content{padding:18px}.booking-premium .booking-rates{grid-template-columns:1fr}.booking-premium .booking-columns>div:first-child{padding:17px}.booking-premium .booking-fields{grid-template-columns:1fr}.booking-premium .promo-form{align-items:stretch;flex-direction:column}.booking-preview-grid{grid-template-columns:1fr}.booking-preview-photo{height:210px}.booking-premium .confirmation-card{margin:26px 0;padding:21px}}.confirmation-card dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.confirmation-card dl div{padding:14px 0;border-bottom:1px solid #e4ece7}.confirmation-card dt{font-size:.8rem;color:#60756d}.confirmation-card dd{margin:5px 0 0;font-weight:700}.confirmation-reference{display:grid;gap:6px;padding:16px;border-radius:12px;background:#f2f7f4;margin:20px 0}.confirmation-reference span{color:#60756d;font-size:.8rem}.confirmation-actions{display:flex;gap:18px;align-items:center;margin-top:24px}.confirmation-actions a:last-child{color:#17675b}.booking-home-card>a:last-child{display:inline-block;margin-top:10px}.booking-home a:focus-visible,.booking-home button:focus-visible,.booking-shell a:focus-visible,.booking-shell button:focus-visible,.booking-shell input:focus-visible{outline:3px solid #f0ad4e;outline-offset:2px}@media (max-width:800px){.booking-search{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-search button{grid-column:1/-1}.booking-columns{grid-template-columns:1fr}.price-card{position:static;grid-row:1}.booking-room{grid-template-columns:1fr}.booking-rates{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:520px){.booking-shell{padding:16px 15px 34px}.booking-search{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.booking-search label:first-child,.booking-search label:nth-child(2){grid-column:span 1}.booking-search input{min-height:44px}.booking-room{padding:16px}.booking-fields,.booking-rates{grid-template-columns:1fr}.promo-form{align-items:stretch}.promo-form button{padding-inline:10px}.confirmation-card dl{grid-template-columns:1fr}.confirmation-actions{align-items:stretch;flex-direction:column}.booking-footer{align-items:flex-start;flex-direction:column}.booking-home-form{grid-template-columns:1fr}.booking-home-form .booking-primary{grid-column:auto}}.booking-premium{max-width:1260px;padding:24px clamp(20px,5vw,72px) 55px;color:#202a31;font-family:Georgia,Times New Roman,serif}.booking-premium .booking-header{min-height:54px;border-color:#e7e4dc}.booking-premium .booking-header a:first-child{color:#202a31!important;font:600 16px Georgia,serif;letter-spacing:.01em}.booking-premium .booking-intro{padding:49px 0 25px}.booking-step-list{display:flex;align-items:center;gap:0;max-width:630px;padding:0;margin:27px 0 0;list-style:none}.booking-step-list li{display:flex;align-items:center;gap:10px;flex:1;color:#9a9e9b;font:9px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.booking-step-list li:after{content:"";height:1px;flex:1;margin:0 11px;background:#e2dfd7}.booking-step-list li:last-child:after{display:none}.booking-step-list li[aria-current=step]{color:#8c6d37}.booking-step-list span{display:grid;width:24px;height:24px;place-items:center;border:1px solid;border-radius:50%;font:10px Georgia,serif}.booking-premium .booking-intro .booking-eyebrow,.booking-premium .booking-section-title .booking-eyebrow{color:#8c6d37;font:9px Arial,sans-serif;letter-spacing:.19em}.booking-premium .booking-intro h1{font-size:clamp(43px,6vw,72px);font-weight:400;letter-spacing:-.055em}.booking-premium .booking-intro>p:last-child{color:#727a7c;font:12px/1.7 Arial,sans-serif}.booking-premium .booking-search{grid-template-columns:repeat(5,minmax(0,1fr)) auto;padding:16px;border:0;border-radius:3px;box-shadow:0 12px 38px rgb(34 39 37/8%)}.booking-premium .booking-search label{color:#727a7c;font:9px Arial,sans-serif;letter-spacing:.1em}.booking-premium .booking-fields input,.booking-premium .booking-search input,.booking-premium .promo-form input{border-color:#e1ded6;border-radius:3px;color:#202a31;font:12px Arial,sans-serif}.booking-premium .booking-primary,.booking-premium .booking-search button,.booking-premium .promo-form button{min-height:48px;border-radius:3px;background:#b69455;font:10px Arial,sans-serif;letter-spacing:.1em}.booking-premium .booking-section-title{margin:50px 0 19px}.booking-premium .booking-section-title h2{font:400 clamp(28px,3vw,38px) Georgia,serif;letter-spacing:-.04em}.booking-premium .booking-room{grid-template-columns:minmax(190px,.9fr) minmax(230px,1fr) minmax(250px,1fr);gap:20px;border:0;border-radius:3px;box-shadow:0 12px 38px rgb(34 39 37/6%)}.booking-premium .booking-room-photo{min-height:245px}.booking-premium .booking-room-content{padding:22px 0}.booking-premium .booking-room h3{color:#202a31;font:400 25px Georgia,serif}.booking-premium .booking-room p{color:#727a7c;font:11px/1.65 Arial,sans-serif}.booking-premium .booking-room .booking-eyebrow{color:#8c6d37}.booking-room-detail-link{display:inline-block;margin-top:17px;color:#8c6d37;font:9px Arial,sans-serif;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.booking-room-detail-link span{margin-left:9px;font-size:14px}.booking-premium .booking-rate{border-color:#e7e4dc;border-radius:3px;background:#fffefa;color:#202a31}.booking-premium .booking-rate.selected{border:1px solid #b69455;background:#fbf7ee}.booking-premium .booking-rate strong{color:#202a31;font:18px Georgia,serif}.booking-premium .booking-rate small{color:#727a7c;font:9px Arial,sans-serif}.booking-premium .booking-notice{background:#eef1ec;color:#45524c}.booking-premium .booking-alert,.booking-premium .booking-notice{border-radius:3px;font:12px Arial,sans-serif}.booking-premium .booking-review{padding-top:5px}.booking-premium .booking-review h3,.booking-premium .price-card h3{color:#202a31;font:400 22px Georgia,serif}.booking-premium .booking-review>div>div>p{color:#727a7c;font:11px/1.6 Arial,sans-serif}.booking-premium .guest-details{border-color:#e7e4dc}.booking-premium .guest-details>h3{margin-bottom:17px}.booking-premium .booking-fields label{color:#535d61;font:10px Arial,sans-serif}.booking-premium .booking-fineprint,.booking-premium .price-card p{color:#777f80;font:10px/1.7 Arial,sans-serif}.booking-premium .price-card{border:0;border-radius:3px;box-shadow:0 12px 38px rgb(34 39 37/7%)}.booking-premium .price-line,.booking-premium .price-total{border-color:#e7e4dc;color:#4d575a}.booking-premium .price-total strong{color:#202a31;font:15px Georgia,serif}.booking-premium .booking-footer{border-color:#e7e4dc;color:#727a7c;font:10px Arial,sans-serif}.booking-premium .booking-footer a{color:#8c6d37}.confirmation-card{max-width:790px;border:0;border-radius:3px;box-shadow:0 15px 50px rgb(34 39 37/7%)}.confirmation-card .booking-eyebrow{color:#8c6d37;font:9px Arial,sans-serif;letter-spacing:.18em}.confirmation-card h1{color:#202a31;font-weight:400}.confirmation-card>p:not(.booking-eyebrow){color:#6d7779;font:12px/1.7 Arial,sans-serif}.confirmation-card .confirmation-reference{border-radius:3px;background:#f2efe7}.confirmation-card .confirmation-reference strong{font:18px Georgia,serif}.confirmation-card dl div{border-color:#e7e4dc}.confirmation-card dt{color:#7b8384;font:9px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.confirmation-card dd{color:#27343a;font:13px Georgia,serif}.confirmation-card .confirmation-actions .booking-primary{background:#b69455}.confirmation-card .confirmation-actions>a:last-child{color:#8c6d37}@media (max-width:900px){.booking-premium .booking-room{grid-template-columns:minmax(180px,.8fr) 1fr}.booking-premium .booking-room-photo{grid-row:span 2}.booking-premium .booking-room-content{padding:20px 18px 0 0}.booking-premium .booking-rates{padding:0 18px 20px 0}}@media (max-width:650px){.booking-premium .booking-intro{padding-top:35px}.booking-step-list{max-width:100%;gap:3px;margin-top:21px}.booking-step-list li{gap:5px;font-size:7px;letter-spacing:.04em}.booking-step-list li:after{margin:0 5px}.booking-step-list span{width:20px;height:20px;font-size:9px}.booking-premium .booking-search{grid-template-columns:1fr 1fr;padding:13px}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:1fr}.booking-premium .booking-room-photo{min-height:220px;grid-row:auto}.booking-premium .booking-room-content{padding:17px 18px 0}.booking-premium .booking-rates{padding:0 18px 18px}.booking-premium .booking-columns{gap:20px}.booking-premium .price-card{grid-row:auto}}.booking-shell.booking-premium{--booking-ink:#292a26}.booking-premium .booking-intro,.booking-premium .booking-step-list,.booking-premium>.booking-alert,.booking-premium>.booking-empty-state,.booking-premium>.booking-footer,.booking-premium>.booking-notice,.booking-premium>.booking-preview-results,.booking-premium>.booking-property-info,.booking-premium>.booking-results,.booking-premium>.booking-review,.booking-premium>.booking-search{width:min(100% - 64px,1210px)}.booking-premium .booking-step-list{margin-top:35px}.booking-premium .booking-step-list li{color:#99958c;font:9px Arial,sans-serif;letter-spacing:.14em}.booking-premium .booking-step-list li[aria-current=step]{color:#705d3f}.booking-premium .booking-step-list span{border-radius:50%}.booking-premium .booking-intro{padding:52px 0 31px}.booking-premium .booking-intro .booking-eyebrow,.booking-premium .booking-section-title .booking-eyebrow{color:#806d4d;font:600 9px Arial,sans-serif;letter-spacing:.2em}.booking-premium .booking-intro h1{max-width:800px;margin:14px 0 12px;font:400 clamp(46px,6vw,74px)/1.04 Georgia,serif}.booking-premium .booking-intro>p:last-child{font:11px Arial,sans-serif;letter-spacing:.1em}.booking-premium .booking-property-info{margin-bottom:25px;padding:17px 20px;border:1px solid #e3ddd2;background:#f1eee7}.booking-premium .booking-property-info p{margin:5px 0;color:#67665e;font:11px/1.65 Arial,sans-serif}.booking-premium .booking-search{padding:14px 17px}.booking-premium .booking-search label{padding:4px 13px;letter-spacing:.14em}.booking-premium .booking-search input{min-height:34px;padding:6px 0}.booking-premium .booking-primary,.booking-premium .booking-search button,.booking-premium .promo-form button{min-height:47px;padding-inline:21px;font:600 9px Arial,sans-serif}.booking-premium .booking-section-title{margin:60px 0 24px}.booking-premium .booking-section-title h2{font:400 clamp(34px,4vw,50px)/1.08 Georgia,serif}.booking-premium .booking-section-title>p:last-child{color:#77746c;font:12px/1.7 Arial,sans-serif}.booking-premium .booking-offers{gap:25px}.booking-premium .booking-room{grid-template-columns:minmax(250px,.9fr) minmax(240px,1fr) minmax(310px,1fr);gap:25px;padding:18px}.booking-premium .booking-room-photo{min-height:280px}.booking-premium .booking-room-content{padding:10px 0}.booking-premium .booking-room .booking-eyebrow{color:#806d4d;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.booking-premium .booking-room h3{margin:8px 0 10px;font:400 28px/1.15 Georgia,serif}.booking-premium .booking-room p{font:11px/1.7 Arial,sans-serif}.booking-premium .booking-room-detail-link{color:#54564f;font:600 9px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-underline-offset:5px}.booking-premium .booking-rate{grid-template-columns:1fr auto;gap:7px 15px}.booking-premium .booking-rate.selected{border:1px solid #806d4d}.booking-premium .booking-rate strong{font:500 15px Arial,sans-serif}.booking-premium .booking-rate small{font-size:9px}.booking-premium .booking-review{margin-top:58px}.booking-premium .booking-columns{grid-template-columns:minmax(0,1.2fr) minmax(310px,.72fr);gap:42px}.booking-premium .booking-review h3,.booking-premium .price-card h3{color:#31322d}.booking-premium .booking-review>div>div>p{color:#77746c;font:11px/1.65 Arial,sans-serif}.booking-premium .guest-details{border-color:#e3ddd2}.booking-premium .guest-details>h3{margin-bottom:20px;font-size:30px}.booking-premium .booking-fields{gap:18px 14px}.booking-premium .booking-fields label,.booking-premium .promo-form label{letter-spacing:.06em}.booking-premium .booking-fields input,.booking-premium .promo-form input{min-height:47px;padding:11px 12px}.booking-premium .booking-fields input:focus{border-color:#8c7853;box-shadow:0 0 0 2px rgb(177 146 92/14%)}.booking-premium .booking-fineprint,.booking-premium .price-card p{color:#77746c;font:10px/1.75 Arial,sans-serif}.booking-premium .price-card{position:sticky;top:96px;padding:24px;box-shadow:0 12px 34px rgb(38 38 32/5%)}.booking-premium .price-line,.booking-premium .price-total{padding:13px 0}.booking-premium .price-total strong{font:500 18px Arial,sans-serif}.booking-premium .booking-footer{padding-top:20px}.booking-premium .booking-footer a{color:#635638}.booking-premium .booking-alert,.booking-premium .booking-notice{border-radius:0;padding:13px 16px;font:11px/1.6 Arial,sans-serif}.booking-premium .booking-alert{border-left:2px solid #9a594d;background:#f5eae6;color:#74443b}.booking-premium .booking-notice{border-left:2px solid #73866e;background:#edf0e9;color:#3d5940}.booking-premium .booking-empty-state{margin-top:32px;border:1px solid #e5dfd4;border-radius:0;background:#fffefa}.booking-premium .booking-preview-message{border-radius:0;background:#f1eee7;color:#5f5b50;font:11px/1.6 Arial,sans-serif}.booking-premium .confirmation-card{margin:50px auto;padding:clamp(25px,5vw,55px)}.booking-premium .confirmation-card h1{font:400 clamp(43px,6vw,67px)/1.04 Georgia,serif}.booking-premium .confirmation-reference{border:1px solid #e4ded3;border-radius:0;background:#f1eee7}.booking-premium .confirmation-card dl div{border-color:#e4ded3}.booking-premium .confirmation-card dt{color:#817c71;font:600 8px Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.booking-premium .confirmation-card dd{color:#34352f;font:12px/1.55 Arial,sans-serif}.booking-premium .confirmation-pending-mark,.booking-premium .confirmation-success-mark{border-radius:50%;background:#e7ede3;color:#48604a}.booking-premium .confirmation-pending-mark{background:#eee8dc;color:#806d4d}@media (max-width:1000px){.booking-premium .booking-search{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-premium .booking-search label:nth-child(4){border-left:0}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:minmax(210px,.8fr) 1fr}.booking-premium .booking-room-photo{grid-row:span 2}.booking-premium .booking-rates{grid-column:2;grid-template-columns:1fr}}@media (max-width:760px){.booking-premium .booking-intro,.booking-premium .booking-step-list,.booking-premium>.booking-alert,.booking-premium>.booking-empty-state,.booking-premium>.booking-footer,.booking-premium>.booking-notice,.booking-premium>.booking-preview-results,.booking-premium>.booking-property-info,.booking-premium>.booking-results,.booking-premium>.booking-review,.booking-premium>.booking-search{width:calc(100% - 40px)}.booking-premium .booking-columns{grid-template-columns:1fr;gap:22px}.booking-premium .price-card{position:static;grid-row:auto}.booking-premium .booking-room{grid-template-columns:minmax(190px,.8fr) 1.2fr}.booking-premium .booking-rates{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:650px){.booking-shell.booking-premium{padding-bottom:36px}.booking-premium .booking-intro,.booking-premium .booking-step-list,.booking-premium>.booking-alert,.booking-premium>.booking-empty-state,.booking-premium>.booking-footer,.booking-premium>.booking-notice,.booking-premium>.booking-preview-results,.booking-premium>.booking-property-info,.booking-premium>.booking-results,.booking-premium>.booking-review,.booking-premium>.booking-search{width:calc(100% - 30px)}.booking-premium .booking-step-list{margin-top:23px}.booking-premium .booking-step-list li{gap:5px;font-size:7px;letter-spacing:.07em}.booking-premium .booking-step-list li:after{margin-inline:5px}.booking-premium .booking-step-list span{width:21px;height:21px;flex:none}.booking-premium .booking-intro{padding:30px 0 21px}.booking-premium .booking-intro h1{font-size:45px}.booking-premium .booking-property-info{padding:13px}.booking-premium .booking-search{grid-template-columns:1fr 1fr;gap:7px;padding:9px}.booking-premium .booking-search label{padding:8px;border:0!important;background:#f7f5f0}.booking-premium .booking-search button,.booking-premium .booking-search label:nth-child(5){grid-column:1/-1}.booking-premium .booking-section-title{margin-top:42px}.booking-premium .booking-room{grid-template-columns:1fr;gap:0;padding:0}.booking-premium .booking-room-photo{min-height:235px;grid-row:auto}.booking-premium .booking-room-content{padding:20px 18px 5px}.booking-premium .booking-room h3{font-size:27px}.booking-premium .booking-rates{grid-column:auto;grid-template-columns:1fr;padding:8px 18px 18px}.booking-premium .booking-review{margin-top:38px}.booking-premium .booking-fields{grid-template-columns:1fr}.booking-premium .promo-form{align-items:stretch;flex-direction:column}.booking-premium .confirmation-card{margin:28px auto;padding:22px 18px}}.booking-shell.booking-premium{min-height:100vh;padding:22px max(22px,calc((100vw - 1230px) / 2)) 58px;background:#f7f7f5;color:#0b1f2a}.booking-premium .booking-header a:first-child{color:#0b1f2a!important;font:700 16px Arial,sans-serif;letter-spacing:-.03em}.booking-premium .booking-intro{padding:30px 0 21px}.booking-premium .booking-intro h1{margin:5px 0 8px;color:#0b1f2a;font:650 clamp(34px,4vw,47px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.045em}.booking-premium .booking-section-title{margin:35px 0 17px}.booking-premium .booking-section-title h2{margin:0;color:#0b1f2a;font:650 clamp(24px,3vw,33px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.035em}.booking-premium .booking-search{grid-template-columns:repeat(5,minmax(110px,1fr)) auto;gap:10px;padding:15px;border:1px solid #e4e8e8;border-radius:13px;background:white;box-shadow:0 8px 25px rgb(11 31 42/5%)}.booking-premium .booking-search label{gap:7px;color:#69777d;font:700 10px Arial,sans-serif;letter-spacing:.02em;text-transform:none}.booking-premium .booking-search input{min-height:41px;padding:8px 9px;border:1px solid #e0e5e4;border-radius:8px;color:#0b1f2a;font:12px Arial,sans-serif}.booking-premium .booking-primary,.booking-premium .booking-search button,.booking-premium .promo-form button{border-radius:8px;background:#0b1f2a;color:white;font:700 11px Arial,sans-serif;letter-spacing:.01em;text-transform:none}.booking-premium .booking-room{grid-template-columns:minmax(210px,.85fr) minmax(250px,1fr) minmax(240px,.9fr);gap:0;min-width:0;overflow:hidden;border:1px solid #e3e8e7;border-radius:14px;padding:0;background:white;box-shadow:0 8px 24px rgb(11 31 42/4%)}.booking-premium .booking-room-photo{grid-row:auto;background-color:#dfe3e0}.booking-premium .booking-room-content{padding:24px 20px}.booking-premium .booking-room h3{color:#0b1f2a;font:650 19px/1.3 Arial,sans-serif}.booking-premium .booking-rates{grid-column:auto;grid-template-columns:1fr;padding:16px;background:#fbfcfb}.booking-premium .booking-rate{padding:14px;border:1px solid #e1e6e5;border-radius:9px;background:white;color:#0b1f2a;font:11px Arial,sans-serif}.booking-premium .booking-rate.selected{border:1.5px solid #c79a45;background:#fffbf3}.booking-premium .booking-rate strong{font-size:16px}.booking-premium .booking-columns{grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:20px;align-items:start}.booking-premium .booking-columns>div:first-child{padding:23px;border:1px solid #e4e8e8;border-radius:13px;background:white}.booking-premium .price-card{top:20px;padding:22px;border:1px solid #e4e8e8;border-radius:13px;background:white;box-shadow:0 8px 24px rgb(11 31 42/4%)}.booking-premium .booking-alert{border:1px solid #f1d6cf;border-radius:9px;color:#7c3c30;background:#fff7f4;font:12px/1.55 Arial,sans-serif}.booking-premium .booking-notice{border:1px solid #d6e7da;border-radius:9px;color:#315f41;background:#f2f8f3;font:12px/1.55 Arial,sans-serif}.booking-preview-message{margin:12px 0;padding:11px 13px;border:1px solid #e8dfcb;border-radius:8px;color:#685b42;background:#fbf8f1;font:11px/1.5 Arial,sans-serif}.booking-preview-results{padding-top:8px}.booking-preview-card{overflow:hidden;border:1px solid #e3e8e7;border-radius:13px;background:white;box-shadow:0 8px 24px rgb(11 31 42/4%)}.booking-preview-title h3{font:650 16px Arial,sans-serif}.booking-premium .confirmation-card{max-width:830px;margin:48px auto;padding:36px;border:1px solid #e4e8e8;border-radius:16px;background:white;box-shadow:0 12px 40px rgb(11 31 42/7%)}.confirmation-pending-mark,.confirmation-success-mark{width:52px;height:52px;display:grid;place-items:center;margin-bottom:20px;border-radius:50%;color:#2e6a48;background:#eaf4ed;font-size:25px;font-weight:700}.confirmation-pending-mark{color:#8a682c;background:#f8f0df}@media (max-width:1000px){.booking-premium .booking-search{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:minmax(190px,.8fr) 1.2fr}.booking-premium .booking-room-photo{grid-row:span 2}.booking-premium .booking-rates{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:760px){.booking-shell.booking-premium{padding:15px 18px 40px}.booking-premium .booking-columns{grid-template-columns:1fr}.booking-premium .price-card{position:static;grid-row:auto}.booking-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.booking-shell.booking-premium{padding:12px 13px 30px}.booking-premium .booking-intro{padding:23px 0 14px}.booking-premium .booking-search{grid-template-columns:1fr 1fr;gap:9px;padding:11px}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:1fr}.booking-premium .booking-room-photo{min-height:220px;grid-row:auto}.booking-premium .booking-room-content{padding:18px}.booking-premium .booking-rates{grid-template-columns:1fr;padding:0 18px 18px}.booking-premium .booking-columns>div:first-child{padding:17px}.booking-premium .booking-fields{grid-template-columns:1fr}.booking-premium .promo-form{align-items:stretch;flex-direction:column}.booking-preview-grid{grid-template-columns:1fr}.booking-premium .confirmation-card{margin:26px 0;padding:21px}}.booking-shell.booking-premium{max-width:none;margin:0;padding:0 0 70px;background:#f7f5f0;color:#292a26;font-family:Avenir Next,Helvetica Neue,Arial,sans-serif}.booking-premium>.site-header{position:sticky;top:0;width:100%}.booking-premium .booking-intro,.booking-premium .booking-step-list,.booking-premium>.booking-alert,.booking-premium>.booking-empty-state,.booking-premium>.booking-footer,.booking-premium>.booking-notice,.booking-premium>.booking-preview-results,.booking-premium>.booking-property-info,.booking-premium>.booking-results,.booking-premium>.booking-review,.booking-premium>.booking-search{width:min(calc(100% - 56px),1210px);margin-right:auto;margin-left:auto}.booking-premium .booking-step-list{max-width:760px;margin-top:30px}.booking-premium .booking-intro{padding:39px 0 24px}.booking-premium .booking-intro h1{margin:9px 0;color:#30312d;font:400 clamp(43px,5.7vw,68px)/1.04 Georgia,serif;letter-spacing:-.05em}.booking-premium .booking-intro>p:last-child{color:#77746c;font:10px Arial,sans-serif;letter-spacing:.12em}.booking-premium .booking-property-info{padding:0;border:0;border-left:2px solid #b1925c;border-radius:0;background:transparent;box-shadow:none}.booking-premium .booking-property-info>p:first-child{margin:0;padding:13px 17px;background:#eeece5;color:#68665e;font:11px/1.65 Arial,sans-serif}.booking-premium .booking-property-info details{margin-top:1px;padding:0 17px;background:#eeece5}.booking-premium .booking-property-info summary{padding:10px 0 13px;color:#514f48;cursor:pointer;font:600 8px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.booking-premium .booking-property-info-copy{padding:0 0 10px}.booking-premium .booking-property-info-copy p{margin:6px 0;color:#68665e;font:10px/1.6 Arial,sans-serif}.booking-premium .booking-search{grid-template-columns:repeat(5,minmax(90px,1fr)) auto;gap:0;padding:12px 14px;border:1px solid #e5dfd4;border-radius:0;background:#fffefa;box-shadow:0 12px 36px rgb(38 38 32/6%)}.booking-premium .booking-search label{padding:4px 12px;color:#817c71;font:600 8px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.booking-premium .booking-search label+label{border-left:1px solid #e5dfd4}.booking-premium .booking-search input{min-height:36px;padding:5px 0;border:0;border-radius:0;color:#34352f;background:transparent;font:11px Arial,sans-serif}.booking-premium .booking-primary,.booking-premium .booking-search button,.booking-premium .promo-form button{min-height:45px;border:0;border-radius:0;background:#29352f;color:#fffefa;font:600 8px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.booking-premium .booking-section-title{margin:47px 0 20px}.booking-premium .booking-section-title h2{color:#30312d;font:400 clamp(34px,4vw,48px)/1.08 Georgia,serif;letter-spacing:-.045em}.booking-premium .booking-room{grid-template-columns:minmax(220px,.84fr) minmax(230px,1fr) minmax(280px,1fr);gap:22px;padding:16px;border:1px solid #e5dfd4;border-radius:0;background:#fffefa;box-shadow:0 8px 24px rgb(38 38 32/4%)}.booking-premium .booking-room-photo{min-height:250px}.booking-premium .booking-room-content{padding:11px 0}.booking-premium .booking-room h3{color:#30312d;font:400 27px/1.15 Georgia,serif}.booking-premium .booking-room p{color:#77746c;font:10px/1.7 Arial,sans-serif}.booking-premium .booking-rates{gap:8px;align-content:center}.booking-premium .booking-rate{padding:12px;border:1px solid #e5dfd4;border-radius:0;background:#fbfaf6;color:#393a34;font:10px Arial,sans-serif}.booking-premium .booking-rate.selected{border-color:#806d4d;background:#f2eee5;box-shadow:inset 3px 0 #806d4d}.booking-premium .booking-rate strong{color:#30312d;font:500 14px Arial,sans-serif}.booking-premium .booking-rate small{color:#77746c;font-size:8px}.booking-premium .booking-columns{grid-template-columns:minmax(0,1.2fr) minmax(290px,.72fr);gap:38px}.booking-premium .booking-columns>div:first-child{padding:0}.booking-premium .booking-review h3,.booking-premium .price-card h3{color:#30312d;font:400 25px Georgia,serif}.booking-premium .booking-fields label,.booking-premium .promo-form label{color:#625f57;font:600 9px Arial,sans-serif;letter-spacing:.05em}.booking-premium .booking-fields input,.booking-premium .promo-form input{min-height:46px;border:1px solid #dcd6ca;border-radius:0;background:#fffefa;color:#292a26;font:12px Arial,sans-serif}.booking-premium .price-card{top:94px;padding:23px;border:1px solid #e5dfd4;border-radius:0;background:#fffefa;box-shadow:0 10px 30px rgb(38 38 32/5%)}.booking-premium .price-line,.booking-premium .price-total{border-color:#e7e2d9;color:#5f6058;font:11px Arial,sans-serif}.booking-premium .price-total strong{color:#30312d;font:500 17px Arial,sans-serif}.booking-premium .confirmation-card{border:1px solid #e5dfd4;border-radius:0;background:#fffefa;box-shadow:0 15px 45px rgb(38 38 32/6%)}.booking-premium .confirmation-card h1{color:#30312d;font:400 clamp(42px,5.5vw,64px)/1.04 Georgia,serif}.booking-premium .booking-footer{border-color:#e3ddd2;color:#77746c;font:9px Arial,sans-serif}@media (max-width:1000px){.booking-premium .booking-search{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-premium .booking-search label:nth-child(4){border-left:0}.booking-premium .booking-search button{grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:minmax(190px,.8fr) 1.2fr}.booking-premium .booking-room-photo{grid-row:span 2}.booking-premium .booking-rates{grid-column:2}}@media (max-width:760px){.booking-premium .booking-room{grid-template-columns:minmax(180px,.8fr) 1.2fr}.booking-premium .booking-rates{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.booking-premium .booking-columns{grid-template-columns:1fr}.booking-premium .price-card{position:static}}@media (max-width:650px){.booking-premium .booking-intro,.booking-premium .booking-step-list,.booking-premium>.booking-alert,.booking-premium>.booking-empty-state,.booking-premium>.booking-footer,.booking-premium>.booking-notice,.booking-premium>.booking-preview-results,.booking-premium>.booking-property-info,.booking-premium>.booking-results,.booking-premium>.booking-review,.booking-premium>.booking-search{width:calc(100% - 30px)}.booking-premium .booking-intro{padding:26px 0 20px}.booking-premium .booking-intro h1{font-size:44px}.booking-premium .booking-step-list li{gap:5px;font-size:7px;letter-spacing:.06em}.booking-premium .booking-step-list span{width:21px;height:21px;flex:none}.booking-premium .booking-search{grid-template-columns:1fr 1fr;gap:7px;padding:9px}.booking-premium .booking-search label{padding:8px;border:0!important;background:#f7f5f0}.booking-premium .booking-search button,.booking-premium .booking-search label:nth-child(5){grid-column:1/-1}.booking-premium .booking-room{grid-template-columns:1fr;gap:0;padding:0}.booking-premium .booking-room-photo{min-height:225px;grid-row:auto}.booking-premium .booking-room-content{padding:19px 17px 4px}.booking-premium .booking-rates{grid-column:auto;grid-template-columns:1fr;padding:8px 17px 17px}.booking-premium .booking-fields{grid-template-columns:1fr}.booking-premium .promo-form{align-items:stretch;flex-direction:column}}.booking-shell.booking-premium{--booking-ink:var(--brand-charcoal,#282a26);--booking-forest:var(--brand-forest,#234438);--booking-paper:#f7f5ef;background:var(--booking-paper);color:var(--booking-ink);font-family:Arial,Helvetica,sans-serif}.booking-premium .booking-intro h1,.booking-premium .booking-intro h2,.booking-premium .price-card h2{color:var(--booking-ink);font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.035em}.booking-premium .booking-primary,.booking-premium .booking-search button{border-color:var(--booking-forest);border-radius:3px;background:var(--booking-forest);color:#fff;letter-spacing:.075em;text-transform:uppercase}.booking-premium .booking-primary:hover,.booking-premium .booking-search button:hover{background:#18362c}.booking-premium .booking-fields>section,.booking-premium .booking-review,.booking-premium .booking-room,.booking-premium .price-card{border-color:#e4ded2;border-radius:8px;background:#fff;box-shadow:0 10px 32px rgb(40 42 38/5%)}.booking-premium .booking-room-photo{background-position:50%;background-size:cover}.booking-premium .booking-room h3,.booking-premium .booking-total,.booking-premium .price-card strong{color:var(--booking-ink)}.booking-premium .booking-mobile-summary{display:none}.booking-premium a:focus-visible,.booking-premium button:focus-visible,.booking-premium input:focus-visible,.booking-premium select:focus-visible{outline:3px solid var(--brand-terracotta,#a9604c);outline-offset:3px}@media (max-width:650px){.booking-premium .price-card{display:none}.booking-premium .booking-mobile-summary{display:block;margin:18px 15px;padding:15px 17px;border:1px solid #e4ded2;border-radius:8px;background:#fff}.booking-premium .booking-mobile-summary summary{color:var(--brand-forest,#234438);cursor:pointer;font-weight:700}.booking-premium .booking-mobile-summary>div{display:grid;gap:9px;padding-top:15px}}.booking-premium .booking-change-selection{min-height:38px;margin-top:8px;padding:0 14px;border:1px solid #c9c1b2;border-radius:2px;background:transparent;color:var(--booking-forest,#234438);font:600 9px Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.booking-step-context{color:#625f57;font-size:.95rem}.booking-promo-details{margin:24px 0;padding:16px 0;border-top:1px solid #e4ded2;border-bottom:1px solid #e4ded2}.booking-promo-details summary{color:var(--booking-forest,#234438);cursor:pointer;font-weight:650}.booking-step-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:22px}.booking-back{min-height:48px;padding:0 16px;border:1px solid #c9c1b2;border-radius:3px;background:transparent;color:var(--booking-forest,#234438);cursor:pointer}@media (max-width:650px){.booking-step-actions{position:sticky;z-index:2;bottom:0;margin:20px -16px -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom, 0px));background:#f8f6f0;box-shadow:0 -8px 24px rgb(32 40 34/8%)}.booking-step-actions>button{flex:1 1 100%;min-height:52px}}