@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap");:root{--ink:#17302d;--muted:#71807b;--forest:#234b43;--sage:#dce8df;--cream:#f7f4ed;--paper:#fffdf8;--line:#dedfd8;--terracotta:#c66a4a;--on-primary:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:DM Sans,Arial,sans-serif}button,input,select{font:inherit}button{color:inherit}.nav{height:82px;display:flex;justify-content:space-between;padding:0 clamp(24px,6vw,96px);border-bottom:1px solid rgba(23,48,45,.1)}.brand,.nav{align-items:center}.brand{display:inline-flex;gap:12px;color:var(--ink);font-size:12px;letter-spacing:.2em;font-weight:600;text-decoration:none}.brand i{font-weight:400}.brand i,.brandMark{font-family:"Instrument Serif"}.brandMark{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--ink);border-radius:50% 50% 45% 45%;font-size:20px;letter-spacing:0}.navLink{color:var(--ink);font-size:13px;text-underline-offset:5px}.navChat{padding:0;border:0;background:none;font-family:inherit;cursor:pointer}@media (hover:hover) and (pointer:fine){.navChat:hover{text-decoration:underline}}.navActions{gap:28px}.languageSwitch,.navActions{display:flex;align-items:center}.languageSwitch{gap:3px;border:1px solid rgba(23,48,45,.14);border-radius:30px}.languageSwitch button{height:27px;padding:0 8px;color:var(--muted);background:transparent;border:0;border-radius:20px;cursor:pointer;font-size:9px;font-weight:600;letter-spacing:.08em}.languageSwitch button.active{color:var(--on-primary,#fff);background:var(--forest)}.hero{min-height:450px;padding:90px 24px 150px;text-align:center;background:radial-gradient(circle at 12% 30%,rgba(149,176,153,.2),transparent 22%),radial-gradient(circle at 88% 70%,rgba(198,106,74,.09),transparent 20%)}.eyebrow,.fieldLabel{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:600}.eyebrow{margin-bottom:18px;color:var(--terracotta)}h1,h2,h3{margin:0;font-family:"Instrument Serif",Georgia,serif;font-weight:400}h1{font-size:clamp(54px,7vw,88px);line-height:.9;letter-spacing:-.03em}h1 em{color:var(--forest);font-weight:400}.intro{max-width:520px;margin:28px auto 0;color:var(--muted);font-size:15px;line-height:1.8}.bookingCard{width:min(1160px,calc(100% - 32px));margin:-95px auto 80px;background:var(--paper);border:1px solid rgba(23,48,45,.08);box-shadow:0 25px 70px rgba(27,51,46,.1)}.guestBar{min-height:92px;display:grid;grid-template-columns:1fr 1fr .8fr auto;align-items:center;grid-gap:36px;gap:36px;padding:18px 32px;border-bottom:1px solid var(--line)}.fieldLabel{margin-bottom:9px;color:var(--muted)}.stepper{display:flex;align-items:center;gap:16px}.stepper button{width:28px;height:28px;border:1px solid var(--line);background:transparent;border-radius:50%;cursor:pointer}.stepper span{min-width:70px;font-size:14px}.childrenField input,.nightsField select{width:100%;padding:5px 0 8px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);outline:none}.nightsField select{cursor:pointer}.signal{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.signal>span{width:8px;height:8px;background:#6e9c77;border-radius:50%}.pulse{animation:pulse 1.3s infinite}@keyframes pulse{50%{opacity:.25}}.sectionHeading{display:flex;justify-content:space-between;align-items:flex-end;padding:38px 42px 26px}.sectionHeading h2{font-size:34px}.legend{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.calendarActions{display:flex;flex-direction:column;align-items:flex-end;gap:14px}.weekNavigation{display:flex;align-items:center;gap:12px}.weekNavigation button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;transition:color .2s,background .2s,border-color .2s}@media (hover:hover) and (pointer:fine){.weekNavigation button:hover:not(:disabled){color:var(--on-primary,#fff);background:var(--forest);border-color:var(--forest)}}.weekNavigation button:disabled{opacity:.25;cursor:default}.weekNavigation>span{min-width:118px;color:var(--muted);font-size:10px;text-align:center}.weeks{border-top:1px solid var(--line)}.week{display:grid;grid-template-columns:150px 1fr;min-height:110px;border-bottom:1px solid var(--line)}.weekLabel{display:flex;flex-direction:column;justify-content:center;padding:20px 24px 20px 42px;border-right:1px solid var(--line)}.weekLabel span{margin-bottom:7px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.weekLabel small{color:var(--muted);font-size:10px}.weekDays{display:grid;grid-template-columns:repeat(7,1fr)}.day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;background:transparent;border:0;border-right:1px solid var(--line);opacity:.27}.day:last-child{border-right:0}.day span{font-size:9px;text-transform:uppercase;letter-spacing:.1em}.day strong{font-family:"Instrument Serif";font-weight:400}.day i{width:5px;height:5px;margin-top:3px;background:#6e9c77;border-radius:50%}.day.open{opacity:1;cursor:pointer;transition:background .2s,color .2s}@media (hover:hover) and (pointer:fine){.day.open:hover{background:var(--sage)}}.day.open.selected,.day.selected{color:var(--on-primary,#fff);background:var(--forest)}.day.selected i{background:white}.stayPicker{display:grid;grid-template-columns:1.5fr .8fr 1fr;grid-gap:34px;gap:34px;align-items:end;padding:30px 42px;background:#f0eee7}.stayDate strong{display:block;margin-bottom:5px;font-family:"Instrument Serif";font-size:24px;font-weight:400}.stayDate small{color:var(--muted)}.confirmedStay strong{display:block;margin-bottom:5px;font-size:15px}.confirmedStay small{color:var(--muted);font-size:11px}.primaryButton,.roomBody button{border:0;color:var(--on-primary,#fff);background:var(--forest);cursor:pointer}.primaryButton{display:flex;min-height:55px;align-items:center;justify-content:space-between;padding:0 22px}.primaryButton:disabled{opacity:.6}.notice{margin:24px 42px;padding:14px 18px;color:#7b3e2a;background:#f7e7df;font-size:13px}.results{width:min(1160px,calc(100% - 32px));margin:0 auto 100px}.resultsIntro{max-width:580px;margin-bottom:36px}.empty h2,.resultsIntro h2{font-size:clamp(38px,5vw,56px)}.empty p,.resultsIntro p{color:var(--muted);line-height:1.7}.roomGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;align-items:start}.roomCard{background:var(--paper);border:1px solid var(--line)}.roomVisual{position:relative;display:grid;height:180px;place-items:center;background:linear-gradient(145deg,#d9e3db,#b9cabc)}.categoryPreselection{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:20px;padding:12px 42px;background:var(--sage);border-bottom:1px solid rgba(23,48,45,.1)}.categoryPreselection>div{display:flex;align-items:baseline;gap:12px}.categoryPreselection>div span{color:var(--muted);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.categoryPreselection>div strong{font-family:"Instrument Serif";font-size:21px;font-weight:400}.categoryPreselection button{display:flex;align-items:center;gap:8px;padding:9px 12px;color:var(--ink);background:rgba(255,253,248,.7);border:1px solid rgba(23,48,45,.12);cursor:pointer;font-size:10px}.categoryPreselection button>span{font-size:18px;line-height:.7}.roomVisual>span{position:absolute;top:14px;left:14px;padding:7px 10px;background:rgba(255,253,248,.9);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.roomMonogram{color:rgba(255,255,255,.65);font-family:"Instrument Serif";font-size:100px}.roomBody{padding:24px}.roomBody small{color:var(--muted)}.roomBody h3{margin:7px 0 24px;font-size:30px}.price{display:flex;align-items:baseline;gap:7px}.price span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.price strong{font-family:"Instrument Serif";font-size:30px;font-weight:400}.saving{color:#60816b;font-size:11px}.roomBody button{display:flex;width:100%;justify-content:space-between;margin-top:22px;padding:14px 16px}.roomDetails{grid-column:1/-1;width:100%;margin:12px 0 28px;background:var(--paper);border:1px solid var(--line);box-shadow:0 22px 50px rgba(27,51,46,.1);scroll-margin-top:20px}.detailTopbar{display:flex;align-items:center;justify-content:space-between;min-height:62px;padding:0 28px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.backToRoom,.detailTopbar button{padding:0;color:var(--ink);background:transparent;border:0;cursor:pointer}.gallery{display:grid;grid-template-columns:1fr 160px;grid-gap:10px;gap:10px;padding:10px;background:#e7e4dc}.gallery.single{grid-template-columns:1fr}.galleryMain{position:relative;height:510px;overflow:hidden}.galleryMain>img{width:100%;height:100%;object-fit:cover}.galleryMain>span{position:absolute;right:16px;bottom:16px;padding:7px 10px;color:white;background:rgba(23,48,45,.78);font-size:10px}.galleryThumbs{display:grid;grid-template-rows:repeat(3,1fr);grid-gap:10px;gap:10px}.galleryThumbs button{overflow:hidden;padding:0;background:none;border:2px solid transparent;cursor:pointer;opacity:.62}.galleryThumbs button.active{border-color:var(--forest);opacity:1}.galleryThumbs img{width:100%;height:100%;object-fit:cover}.detailContent{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:clamp(45px,8vw,100px);gap:clamp(45px,8vw,100px);padding:64px clamp(28px,6vw,74px)}.detailCopy h2{font-size:clamp(45px,6vw,68px);line-height:1}.leadDescription{max-width:610px;margin:24px 0 34px;color:var(--muted);font-family:"Instrument Serif";font-size:22px;line-height:1.45}.roomFacts{display:grid;grid-template-columns:repeat(4,1fr);padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.roomFacts div{padding:0 15px;border-right:1px solid var(--line)}.roomFacts div:first-child{padding-left:0}.roomFacts div:last-child{border-right:0}.periodBlock span,.roomFacts span{display:block;margin-bottom:7px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.roomFacts strong{font-size:11px}.amenities{margin-top:38px}.amenities h3{margin-bottom:18px;font-size:26px}.amenities ul{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px 24px;gap:12px 24px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:12px}.amenities li:before{content:"✓";margin-right:9px;color:#6e9c77}.planCard{align-self:start;padding:22px;background:var(--cream);border:1px solid var(--line)}.planHeader{display:flex;justify-content:space-between;align-items:flex-start}.planHeader strong{display:block;font-family:"Instrument Serif";font-size:22px;font-weight:400}.planHeader>span{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.12em}.planCard>img{width:100%;margin:24px 0 14px}.planCard>p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.detailSummary{margin:0 clamp(20px,4vw,44px) 34px;background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden}.summaryStay{display:flex;align-items:center;gap:12px 26px;padding:18px 24px;background:var(--cream);border-bottom:1px solid var(--line)}.periodBlock strong{font-family:"Instrument Serif",Georgia,serif;font-size:18px;font-weight:400}.periodArrow{color:var(--muted)}.nightCount{display:flex;align-items:baseline;gap:7px;margin-left:auto}.nightCount strong{font-family:"Instrument Serif",Georgia,serif;font-size:26px;font-weight:400}.nightCount span{color:var(--muted);font-size:10px}.detailSummary .priceBlock{border:0;border-radius:0}.summaryCta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:4px 24px 22px}.summaryCta .paymentNote{margin:0}.summaryCta button{display:inline-flex;min-height:58px;align-items:center;gap:16px;padding:0 26px;color:var(--on-primary,#fff);background:var(--forest);border:0;border-radius:12px;cursor:pointer;font-size:13px;font-weight:600}.bookingSection{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:clamp(40px,8vw,110px);gap:clamp(40px,8vw,110px);width:min(1160px,calc(100% - 32px));margin:0 auto 100px;padding:70px clamp(26px,5vw,70px);background:var(--paper);border:1px solid var(--line);scroll-margin-top:30px}.bookingSuccess h2,.bookingSummary h2{font-size:clamp(40px,5vw,58px);line-height:1}.backToRoom{margin-bottom:32px;font-size:11px}.bookingRoomImage{position:relative;height:220px;margin-bottom:30px;overflow:hidden;background:#d6d0c4}.bookingRoomImage img{width:100%;height:100%;object-fit:cover}.bookingRoomImage.withoutImage{background:linear-gradient(145deg,#d9e3db,#b9cabc)}.bookingRoomImage:after{position:absolute;inset:45% 0 0;content:"";background:linear-gradient(transparent,rgba(23,48,45,.7))}.bookingRoomImage span{position:absolute;z-index:1;right:18px;bottom:15px;left:18px;color:white;font-family:"Instrument Serif";font-size:24px}.summaryCard{margin-top:34px;border-top:1px solid var(--line)}.summaryCard,.summaryCard>div{border-bottom:1px solid var(--line)}.summaryCard>div{display:flex;justify-content:space-between;gap:14px;padding:18px 0}.summaryCard>div:last-child{border-bottom:0}.summaryCard div>small,.summaryCard div>span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.summaryCard div>strong{font-size:14px}.summaryCard>div:first-child{flex-direction:column;gap:5px}.summaryDates{align-items:center}.summaryDates i{color:var(--muted);font-style:normal}.summaryTotal{align-items:baseline}.summaryTotal strong{font-family:"Instrument Serif";font-size:25px!important;font-weight:400}.summaryNote{margin-top:24px;color:var(--muted);font-size:12px;line-height:1.7}.bookingForm{padding-top:4px}.formGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:25px 20px;gap:25px 20px}.formGrid label>span{display:block;margin-bottom:9px;color:var(--muted);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.formGrid input,.formGrid textarea{width:100%;padding:10px 0;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #bcc4be;border-radius:0;outline:none}.formGrid input:focus,.formGrid textarea:focus{border-color:var(--forest)}.formGrid textarea{min-height:80px;resize:vertical}.wideField{grid-column:1/-1}.formSectionTitle{display:flex;align-items:baseline;justify-content:space-between;margin-top:10px;padding-bottom:11px;border-bottom:1px solid var(--line)}.formSectionTitle>span{color:var(--ink)!important;font-family:"Instrument Serif";font-size:24px!important;font-weight:400!important;text-transform:none!important;letter-spacing:0!important}.formSectionTitle small{color:var(--muted);font-size:9px}.checkField{display:flex;gap:10px;margin-top:20px;color:var(--muted);font-size:11px;line-height:1.5}.checkField input{width:15px;height:15px;accent-color:var(--forest)}.formError{margin-top:20px;padding:12px 14px;color:#7b3e2a;background:#f7e7df;font-size:12px}.confirmButton{display:flex;width:100%;min-height:62px;align-items:center;justify-content:center;margin-top:10px;padding:0 22px;color:var(--on-primary,#fff);background:var(--forest);border:0;font-weight:600;cursor:pointer}.confirmButton:disabled{opacity:.6}.paymentNote{margin:24px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.secureNote{color:var(--muted);font-size:10px;text-align:center}.bookingSuccess{grid-column:1/-1;max-width:650px;margin:0 auto;text-align:center}.successMark{display:grid;width:58px;height:58px;margin:0 auto 24px;place-items:center;color:var(--on-primary,#fff);background:var(--forest);border-radius:50%;font-size:22px}.bookingSuccess>p{color:var(--muted);line-height:1.7}.reference{margin:30px 0;padding:20px;background:var(--cream)}.reference span{display:block;margin-bottom:7px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.14em}.reference strong{font-size:15px;letter-spacing:.05em}.finePrint{font-size:11px}.empty{max-width:600px;margin:0 auto 100px;padding:0 24px;text-align:center}.checkoutPage{position:relative;min-height:100vh;min-height:100dvh;background:var(--paper)}.checkoutNav{position:absolute;z-index:5;top:0;right:0;display:flex;width:59%;min-height:94px;align-items:center;padding:0 clamp(28px,8vw,110px);background:var(--paper)}.checkoutShell{grid-template-columns:minmax(330px,.82fr) minmax(520px,1.18fr)}.checkoutShell,.checkoutSummary{min-height:100vh;min-height:100dvh}.checkoutSummary{top:0;align-self:start;background:var(--forest);color:var(--on-primary,#fff)}.checkoutBack{display:inline-block;margin:28px 36px;padding:0;color:#dbe4df;background:transparent;border:0;cursor:pointer;font-size:11px}.checkoutSummary>img{display:block;width:100%;height:min(33vh,330px);object-fit:cover}.checkoutSummaryBody{padding:clamp(32px,5vw,64px)}.checkoutSummaryBody .eyebrow{color:#d2a28f}.checkoutSummaryBody h1{margin-bottom:32px;font-size:clamp(38px,4vw,56px);line-height:.95}.checkoutSummaryBody h2{font-size:28px}.checkoutSummaryBody>p{margin:7px 0 28px;color:#b8c7c2;font-size:11px}.checkoutDates{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:16px;gap:16px;align-items:center;padding:20px 0;border-top:1px solid #49605b;border-bottom:1px solid #49605b}.checkoutDates div:last-child{text-align:right}.checkoutDates span,.checkoutTotal span{display:block;margin-bottom:6px;color:#a5b4af;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.checkoutDates strong{font-family:"Instrument Serif";font-size:18px;font-weight:400}.checkoutDates i{color:#91a29c;font-style:normal}.checkoutTotal{display:grid;grid-template-columns:1fr auto;align-items:baseline;margin-top:24px}.checkoutTotal strong{font-family:"Instrument Serif";font-size:34px;font-weight:400}.checkoutTotal small{grid-column:1/-1;margin-top:3px;color:#a5b4af;text-align:right}.checkoutFormPanel{padding:126px clamp(28px,8vw,110px) clamp(52px,7vw,90px);background:var(--paper)}.checkoutFormPanel .bookingForm{max-width:720px;margin:0 auto}.checkoutFormPanel .formGrid input{min-height:44px;font-size:16px}.checkoutFormPanel .formGrid textarea{min-height:100px;font-size:16px}.checkoutSubmit>div,.mobileCheckoutTitle{display:none}.checkoutEmpty,.checkoutSuccess{display:flex;min-height:100vh;min-height:100dvh;flex-direction:column;align-items:center;justify-content:center;max-width:none;padding:40px 24px;text-align:center}.checkoutEmpty .brand{margin-bottom:70px}.checkoutEmpty h1,.checkoutSuccess h1{max-width:700px;font-size:clamp(44px,7vw,76px);line-height:.95}.checkoutEmpty p,.checkoutSuccess p{max-width:560px;color:var(--muted);line-height:1.7}.checkoutEmpty>a,.checkoutSuccess>a{margin-top:24px;color:var(--ink);text-underline-offset:5px}.checkoutLoading{min-height:100vh;min-height:100dvh;background:var(--cream)}footer{display:flex;min-height:130px;align-items:center;justify-content:space-between;padding:32px clamp(24px,6vw,96px);color:#dbe4df;background:var(--ink)}footer .brand{color:white}footer .brandMark{border-color:white}.powered,footer p{color:#91a29c;font-size:11px}.powered strong{color:white;font-size:15px}@media (max-width:800px){.legend,.navLink,.signal{display:none}.nav{height:64px;gap:12px;padding:0 16px}.nav .brand{min-width:0;letter-spacing:.12em}.nav .brand>span{overflow:hidden;text-overflow:ellipsis}.navActions{flex-shrink:0;gap:12px}.hero{min-height:0;padding:26px 22px 58px}.hero .eyebrow{margin-bottom:10px}.hero h1{font-size:30px;line-height:1.05}.hero h1 br{display:none}.hero h1 em:before{content:" "}.hero .intro{display:none}.bookingCard{margin-top:-28px}.guestBar{grid-template-columns:1fr 1fr;align-items:start;min-height:0;gap:14px 18px;padding:14px 18px}.guestBar .fieldLabel{margin-bottom:4px}.stepper{gap:12px}.stepper span{white-space:nowrap}.stepper button{width:44px;height:44px}.stepper span{min-width:0}.categoryPreselection{padding:12px 22px}.sectionHeading{align-items:center;padding:14px 18px 10px}.sectionHeading .fieldLabel{display:none}.sectionHeading h2{font-size:17px;line-height:1.25}.calendarActions{flex-shrink:0}.weekNavigation>span{display:none}.weekNavigation button{width:44px;height:44px}.week{grid-template-columns:1fr}.weekLabel{flex-direction:row;align-items:baseline;justify-content:space-between;min-height:0;padding:6px 18px;border-right:0;border-bottom:1px solid var(--line)}.weekLabel span{margin-bottom:0;font-size:10px}.weekDays{min-height:0}.languageSwitch button{min-width:44px;height:40px;font-size:10px}.stayPicker{grid-template-columns:1fr 1fr;align-items:start;gap:12px 18px;padding:16px 18px}.stayPicker .primaryButton{display:none}.stayDate strong{font-size:19px}.resultsIntro{margin-bottom:20px}.empty h2,.resultsIntro h2{font-size:26px;line-height:1.15}.resultsIntro p{font-size:13px;line-height:1.6}.resultsIntro .eyebrow{margin-bottom:10px}.roomGrid{grid-template-columns:1fr}.roomVisual{height:150px}.roomBody{padding:20px}.roomBody h3{margin:6px 0 18px;font-size:26px}.gallery{grid-template-columns:1fr}.galleryMain{height:240px}.galleryThumbs{grid-template-columns:repeat(3,1fr);grid-template-rows:70px}.detailContent{grid-template-columns:1fr;padding-top:34px}.roomDetails{display:flex;flex-direction:column}.roomDetails>.detailTopbar{order:1}.roomDetails>.detailSummary{order:2;margin-top:0}.roomDetails>.gallery{order:3}.roomDetails>.detailContent{order:4}.roomDetails>.detailRates{order:5}.detailTopbar{min-height:54px}.backToRoom,.checkoutBack,.detailTopbar button{min-height:44px;padding:12px 0}.brand,.childrenField input,.nightsField select{min-height:44px}.leadDescription{margin:18px 0 26px;font-size:17px;line-height:1.5}.summaryStay{gap:10px 18px;padding:16px 18px}.nightCount{margin-left:0}.summaryCta{flex-direction:column;align-items:stretch;padding:4px 18px 18px}.summaryCta button{display:none}.bookingSection{grid-template-columns:1fr;padding:45px 24px}.hotelLegal{gap:2px}.hotelLegal a{display:inline-block;padding:9px 0}.checkoutPage{background:var(--cream)}.checkoutNav{position:static;width:100%;min-height:72px;padding:0 20px;background:var(--paper);border-bottom:1px solid var(--line)}.checkoutNav .brandMark{width:30px;height:30px}.checkoutShell{display:block;min-height:auto}.checkoutSummary{position:static;min-height:0}.checkoutBack{margin:20px}.checkoutSummary>img{height:190px}.checkoutSummaryBody{padding:24px 20px 28px}.checkoutSummaryBody>.eyebrow,.checkoutSummaryBody>h1{display:none}.checkoutSummaryBody h2{font-size:27px}.checkoutSummaryBody>p{margin-bottom:18px}.checkoutDates{padding:15px 0}.checkoutTotal{margin-top:17px}.checkoutTotal strong{font-size:29px}.checkoutFormPanel{padding:38px 20px 130px}.mobileCheckoutTitle{display:block;margin-bottom:35px}.mobileCheckoutTitle h1{font-size:42px;line-height:.95}.checkoutSubmit{position:fixed;z-index:4;right:0;bottom:0;left:0;display:grid;grid-template-columns:auto 1fr;grid-gap:6px 16px;gap:6px 16px;align-items:center;padding:10px 16px max(12px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -12px 35px rgba(23,48,45,.1)}.checkoutSubmit .paymentNote{grid-column:1/-1;grid-row:1;margin:0;font-size:11px}.checkoutSubmit .confirmButton,.checkoutSubmit>div{grid-row:2}.checkoutSubmit>div{display:block;min-width:90px}.checkoutSubmit>div span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.checkoutSubmit>div strong{font-family:"Instrument Serif";font-size:24px;font-weight:400}.checkoutSubmit .confirmButton{min-height:56px;margin:0}.checkoutFormPanel .secureNote{display:none}footer{flex-direction:column;gap:20px;text-align:center}}@media (max-width:480px){.categoryPreselection{align-items:flex-start;padding:15px 18px}.categoryPreselection>div{flex-direction:column;gap:3px}.categoryPreselection button{flex-shrink:0}.categoryPreselection button:not(:focus){font-size:0}.bookingCard{width:calc(100% - 18px)}.weekDays{overflow-x:auto;grid-template-columns:repeat(7,minmax(46px,1fr))}.formGrid{grid-template-columns:1fr}.wideField{grid-column:auto}.summaryTotal{flex-wrap:wrap}.detailTopbar>span:nth-child(2){display:none}.galleryMain{height:260px}.detailContent{padding:42px 22px}.roomFacts{grid-template-columns:1fr 1fr;gap:18px 0}.roomFacts div:nth-child(2){border-right:0}.amenities ul{grid-template-columns:1fr}.summaryStay{gap:8px 16px}.checkoutNav>span,.summaryStay .periodArrow{display:none}.checkoutSummary>img{height:150px}.checkoutDates{gap:9px}.checkoutDates strong{font-size:16px}.checkoutFormPanel .formGrid{gap:22px}.checkoutFormPanel .formSectionTitle{align-items:flex-start;flex-direction:column;gap:4px}.checkoutSubmit{gap:10px;padding-right:10px;padding-left:12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.priceBlock{display:grid;grid-gap:14px;gap:14px;padding:22px 24px;color:var(--ink);text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.priceLines{display:grid;margin:0}.priceLine{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line)}.priceLine dt{margin:0;font-size:14px}.priceLine dt small{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.4}.priceLine dd{margin:0;font-size:14px;white-space:nowrap}.priceLine.minus dd{color:var(--forest)}.priceLine.tax{background:var(--sage);margin:0 -24px;padding:9px 24px;border-bottom-color:transparent}.priceTotal{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px 16px;gap:2px 16px;align-items:baseline;padding-top:4px}.priceTotal span{font-size:14px;font-weight:600}.priceTotal strong{font-family:"Instrument Serif",Georgia,serif;font-size:32px;font-weight:400;line-height:1}.priceTotal small{grid-column:1/-1;justify-self:end;color:var(--muted);font-size:12px}.priceExtras{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.priceExtras span{color:var(--ink)}.termsList{display:flex;flex-wrap:wrap;gap:6px 8px;margin:0;padding:0;list-style:none}.termsList li{padding:6px 11px;border:1px solid rgba(35,75,67,.28);border-radius:30px;color:var(--forest);font-size:12px;line-height:1.3}.termsList li.warn{border-color:rgba(198,106,74,.45);color:var(--terracotta)}.termsList.compact{margin-top:10px}.termsList.compact li{padding:4px 9px;font-size:11px}.termsMissing{margin:0;color:var(--muted);font-size:13px}.roomBody .priceNote{display:block;margin-top:2px;color:var(--muted);font-size:12px}.priceNotice{display:grid;grid-gap:10px;gap:10px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);font-size:14px;line-height:1.5}.priceNotice.changed,.priceNotice.gone{border-color:rgba(198,106,74,.5);background:#fbf1ec}.priceNotice a,.priceNotice button{justify-self:start;padding:9px 14px;border:0;border-radius:30px;background:var(--forest);color:var(--on-primary,#fff);font-size:13px;text-decoration:none;cursor:pointer}.checkoutSummary .priceBlock{margin-top:18px}.checkoutSuccess .priceBlock{max-width:560px;margin:24px auto 0;text-align:left}@media (max-width:800px){.priceBlock{padding:18px}.priceLine.tax{margin:0 -18px;padding:9px 18px}.priceTotal strong{font-size:28px}}.day .dayPrice{font-style:normal;font-size:10px;letter-spacing:.02em;color:var(--forest);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.day.selected .dayPrice{color:white}.day.cheapest{box-shadow:inset 0 -3px 0 #6e9c77}.day.cheapest .dayPrice{font-weight:600}.priceLegend{max-width:320px;text-align:right}.resultsToolbar{display:grid;grid-gap:12px;gap:12px;margin:-12px 0 26px}.toolbarRow{align-items:center;justify-content:space-between}.filterGroup,.toolbarRow{display:flex;flex-wrap:wrap}.filterGroup{gap:8px}.filterChip{padding:8px 14px;border:1px solid var(--line);border-radius:30px;background:var(--paper);color:var(--ink);font-size:12px;cursor:pointer}.filterChip[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:var(--on-primary,#fff)}.sortSelect{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.sortSelect select{padding:7px 10px;border:1px solid var(--line);color:var(--ink)}.sortRule{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.sortRule button{padding:0;border:0;background:none;color:var(--forest);font-size:12px;text-decoration:underline;cursor:pointer}.noMatch{grid-column:1/-1;color:var(--muted)}.bestMatch{display:inline-block;margin:0 0 10px;padding:4px 9px;background:var(--sage);color:var(--forest);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.roomBody .roomSize{display:block;margin:-18px 0 18px}.compareToggle{display:inline-flex;align-items:center;gap:7px;margin-top:12px;color:var(--muted);font-size:12px;cursor:pointer}.compareToggle input{accent-color:var(--forest)}.compareToggle.disabled{opacity:.5;cursor:not-allowed}.detailRates{padding:0 clamp(20px,4vw,44px) 24px}.rateList h3{margin:0 0 12px;font-size:24px}.rateList ul{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.rateRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:18px;gap:18px;align-items:center;padding:14px 16px;border:1px solid var(--line);background:var(--paper)}.rateRow.selected{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest)}.rateInfo strong{display:block;font-size:14px}.rateInfo>span{color:var(--muted);font-size:12px}.ratePrice{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ratePrice strong{display:block;font-family:"Instrument Serif",Georgia,serif;font-size:24px;font-weight:400}.ratePrice small{color:var(--muted);font-size:11px}.rateActions{display:grid;justify-items:end;grid-gap:4px;gap:4px}.rateActions button{padding:10px 14px;border:0;background:var(--forest);color:var(--on-primary,#fff);font-size:12px;cursor:pointer}.rateActions button:disabled{background:var(--sage);color:var(--forest);cursor:default}.rateActions .compareToggle{margin-top:0}.compareTray{position:fixed;left:16px;bottom:16px;z-index:30;display:flex;align-items:center;gap:12px;max-width:calc(100% - 120px);padding:10px 12px 10px 16px;background:var(--forest);color:var(--on-primary,#fff);box-shadow:0 12px 30px rgba(23,48,45,.25);font-size:13px}.compareTray small{opacity:.7}.compareTray button{padding:8px 12px;border:1px solid rgba(255,255,255,.4);background:transparent;color:white;font-size:12px;cursor:pointer}.compareTray .compareOpen{background:white;border-color:white;color:var(--forest)}.compareTray .compareOpen:disabled{opacity:.6;cursor:not-allowed}.compareView{margin-top:28px;padding:24px;background:var(--paper);border:1px solid var(--line);scroll-margin-top:20px}.compareHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.compareHeader h2{font-size:30px}.compareHeader button{padding:8px 12px;border:1px solid var(--line);background:transparent;cursor:pointer}.compareScroll{overflow-x:auto}.compareView table{width:100%;min-width:560px;border-collapse:collapse;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.compareView td,.compareView th{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.compareView thead th{position:relative;padding-right:40px;font-weight:400}.compareView thead th strong{display:block;font-family:"Instrument Serif",Georgia,serif;font-size:20px;font-weight:400}.compareView td small,.compareView thead th small{display:block;color:var(--muted);font-size:11px}.compareView tbody th{width:160px;color:var(--muted);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em}.compareView td strong{font-family:"Instrument Serif",Georgia,serif;font-size:24px;font-weight:400}.compareView td>button{width:100%;padding:12px;border:0;background:var(--forest);color:var(--on-primary,#fff);cursor:pointer}.compareRemove{position:absolute;top:10px;right:8px;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer}@media (max-width:800px){.rateRow{grid-template-columns:minmax(0,1fr) auto}.rateActions{grid-column:1/-1;grid-template-columns:auto auto;justify-content:space-between;align-items:center}.compareTray{right:16px;bottom:88px;max-width:none;flex-wrap:wrap}.priceLegend{text-align:left}.day{gap:1px;min-height:76px;padding:8px 2px}.day span{font-size:8px}.day strong{font-size:17px;line-height:1.1}.day .dayPrice{margin-top:2px;font-size:12px;font-weight:600}.day.cheapest .dayPrice{font-weight:700}}@media (max-width:360px){.day .dayPrice{font-size:11px}}.askRoom{display:inline-flex;align-items:center;gap:9px;margin-top:26px;padding:9px 16px 9px 10px;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--forest);font:inherit;font-size:13px;cursor:pointer}.askRoom:before{content:"?";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--forest);color:var(--on-primary,#fff);font-size:12px;font-weight:600}@media (hover:hover) and (pointer:fine){.askRoom:hover{border-color:var(--forest)}}.askRoom:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.termsList li.reception{border-style:dashed}.termsMissingBlock{display:grid;grid-gap:6px;gap:6px}.termsReception{margin:0;color:var(--forest);font-size:13px}.checkoutSuccess .receptionNote{padding:12px 16px;border:1px dashed rgba(35,75,67,.35);border-radius:12px;color:var(--forest)}.brandLogo{max-height:38px;max-width:170px;width:auto;object-fit:contain}.hotelLegal{display:grid;grid-gap:4px;gap:4px;font-size:12px;line-height:1.6;color:var(--muted)}.hotelLegal a{color:inherit;text-underline-offset:4px}@media (hover:hover) and (pointer:fine){.hotelLegal a:hover{color:var(--ink)}}.hotelCompany,.hotelContact,.hotelLinks{margin:0}.checkoutFormPanel .hotelLegal{margin-top:18px}.consentLinks{margin-left:4px;white-space:nowrap}.consentLinks a{color:var(--ink);text-underline-offset:4px}.footerInfo{display:grid;grid-gap:8px;gap:8px;justify-items:center;text-align:center}.footerInfo p{margin:0}.childrenToggle,.descriptionToggle,.mobileLegend,.priceAnatomyToggle,.stayBar{display:none}@media (max-width:800px){main{padding-bottom:92px}.stayBar{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:center;padding:9px 14px max(10px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -12px 35px rgba(23,48,45,.1)}.stayBarInfo{min-width:0}.stayBarInfo>span{margin-bottom:2px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.stayBarInfo>span,.stayBarInfo>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stayBarInfo>strong{font-family:"Instrument Serif",Georgia,serif;font-size:18px;font-weight:400;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stayBarInfo>small{display:block;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.stayBar button{display:inline-flex;min-height:50px;white-space:nowrap;align-items:center;gap:10px;padding:0 18px;color:var(--on-primary,#fff);background:var(--forest);border:0;cursor:pointer;font-size:13px;font-weight:600}.stayBar button:disabled{opacity:.6}.mobileLegend{display:block;margin:0;padding:10px 18px;color:var(--muted);border-top:1px solid var(--line);font-size:11px;line-height:1.45}.guestBar>div:first-child{order:1;grid-column:1/-1}.guestBar .nightsField{order:2}.guestBar .childrenField,.guestBar .childrenToggle{order:3}.guestBar .childrenField.collapsed{display:none}.childrenToggle{display:inline-flex;min-height:44px;align-items:center;gap:8px;padding:0;color:var(--forest);background:transparent;border:0;cursor:pointer;font-size:13px;text-align:left}.childrenToggle:before{display:inline-grid;width:22px;height:22px;flex:0 0 22px;align-items:center;place-items:center;border:1px solid var(--line);border-radius:50%;content:"+";font-size:15px}.priceAnatomyToggle{display:flex;width:100%;min-height:52px;align-items:baseline;justify-content:space-between;gap:16px;margin-top:18px;padding:0;color:inherit;background:transparent;border:0;border-top:1px solid #49605b;cursor:pointer;text-align:left}.priceAnatomyToggle>span{font-size:12px;text-decoration:underline;text-underline-offset:4px}.priceAnatomyToggle>strong{font-family:"Instrument Serif",Georgia,serif;font-size:26px;font-weight:400}.checkoutPriceAnatomy:not(.open){display:none}.checkoutSummary .checkoutPriceAnatomy .priceBlock{margin-top:4px}.leadDescription.clamped{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:5}.descriptionToggle{display:inline-block;min-height:44px;margin:-14px 0 22px;padding:0;color:var(--forest);background:transparent;border:0;cursor:pointer;font-size:13px;text-decoration:underline;text-underline-offset:4px}}:root{--cream:#f5f4ef;--paper:#fffefa;--ink:#233a32;--forest:#314e41;--muted:#667269;--line:#dedfd5;--terracotta:#88664a}body{-webkit-font-smoothing:antialiased}[hidden]{display:none!important}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--forest);outline-offset:4px}::selection{background:#d9e3d5;color:#233a32}.skipBooking{position:absolute;top:-100px;left:20px;z-index:100;background:var(--paper);padding:15px;color:var(--ink)}.skipBooking:focus{top:20px}.bookingExperience .nav{height:84px;padding:0 max(28px,calc((100% - 1260px)/2));background:var(--paper);border:0}.brand{letter-spacing:.12em}.brandMark{height:42px;width:38px;border-radius:20px 20px 3px 3px}.navLink{text-decoration:none}.languageSwitch{border-radius:7px;padding:3px}.languageSwitch button{min-height:34px;min-width:34px;border-radius:4px}.bookingExperience .hero{position:relative;display:flex;align-items:center;min-height:350px;padding:54px max(28px,calc((100% - 1260px)/2)) 95px;isolation:isolate;text-align:left;background:#314e41}.heroCopy{max-width:720px;position:relative;z-index:2}.hero .eyebrow{color:#f3e9cf;font-size:10px;letter-spacing:.2em}.hero h1{font-size:clamp(46px,5.5vw,76px);line-height:1.08;color:#fffef7;letter-spacing:-.025em;text-wrap:balance}.hero .intro{margin:18px 0 22px;color:#f6f3e8;max-width:510px;font-size:15px;line-height:1.7}.heroDirect{display:flex;gap:8px;align-items:center;font-size:11px;color:#f6f3e8}.heroDirect span{display:grid;place-items:center;border:1px solid #ffffff6b;border-radius:50%;width:20px;height:20px}.heroImage{position:absolute;z-index:-2;inset:0;margin:0;overflow:hidden}.heroImage img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.heroImage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#132b24db,#132b247a 55%,#132b241c)}.hasResults .hero{min-height:210px;padding-top:28px;padding-bottom:75px}.hasResults .hero h1{font-size:46px}.hasResults .hero .intro,.hasResults .heroDirect{display:none}.searchDock{position:relative;z-index:8;max-width:1260px;margin:-43px auto 22px;padding:0;scroll-margin-top:24px}.staySearch{display:grid;grid-template-columns:1fr 1fr .85fr 1.05fr;grid-gap:0;gap:0;border-radius:10px;border:1px solid #e2e3d7;padding:10px;background:var(--paper);box-shadow:0 10px 32px #1d372512}.searchDate{padding:11px 22px;border-right:1px solid var(--line);min-width:0}.guestPopover summary>span,.searchDate>span{display:block;margin-bottom:8px;font-size:10px;color:var(--muted);letter-spacing:.11em;text-transform:uppercase}.searchDate input{display:block;color:var(--ink);width:100%;min-height:27px;font-size:16px;font-weight:500;padding:0}.dateTrigger,.searchDate input{border:0;background:transparent}.dateTrigger{border-right:1px solid var(--line);text-align:left;cursor:pointer}.dateTrigger strong{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:27px;font-size:16px;font-weight:500}.dateTrigger i{font-style:normal;color:var(--muted)}.dateTrigger[aria-expanded=true]{background:#edf1e8;border-radius:5px}.bookingExperience:has(.dateAvailability)>.stayBar{display:none}.bookingExperience:has(.dateAvailability)>.results{display:none}.dateAvailability{margin-top:18px;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:26px;box-shadow:0 12px 32px #233a3210}.datePanelHeader{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)}.datePanelHeader h2{font-size:29px}.datePanelHeader label{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.datePanelHeader select{padding:10px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink)}.datePanelBody{display:grid;grid-template-columns:minmax(0,1fr) 290px;grid-gap:32px;gap:32px;padding-top:20px}.monthNavigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.monthNavigation strong{font-weight:500;text-transform:capitalize}.monthNavigation button{width:38px;height:38px;border:1px solid var(--line);border-radius:6px;background:var(--paper);cursor:pointer}.monthNavigation button:disabled{opacity:.3}.pricedDays,.pricedWeekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:5px;gap:5px}.pricedWeekdays{text-align:center;color:var(--muted);font-size:10px;margin-bottom:10px}.pricedDays button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:72px;min-width:0;border:1px solid transparent;border-radius:7px;background:#f5f5f0;color:#91988d}.pricedDays button.possible{background:#edf1e6;border-color:#e0e7d7;color:var(--ink);cursor:pointer}.pricedDays button strong{font-size:19px;font-weight:500}.pricedDays button small{font-size:10px;white-space:nowrap}.pricedDays button.inStay{box-shadow:inset 0 -3px #94a98b}.pricedDays button.chosen{background:var(--forest);color:var(--on-primary)}.pricedDays button i{width:4px;height:4px;border-radius:50%;background:currentColor;position:absolute;bottom:4px}.dateExplanation{border-left:1px solid var(--line);padding-left:28px}.dateExplanation>p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:0}.dateExplanation label{display:block;font-size:11px;color:var(--muted);margin:14px 0}.dateExplanation input{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);font-size:15px}.dateLiveStatus{font-size:12px;line-height:1.7}.dateLiveStatus p{margin:10px 0}.validStay{color:var(--forest)}.invalidStay{color:#945438}.selectedStayPrice{display:block;font:32px "Instrument Serif",Georgia,serif;margin:15px 0}.dateExplanation .calendarTotalLegend{margin:15px 0;font-size:10px}.dateExplanation .primaryButton{width:100%;font-size:12px}@media(max-width:800px){.dateAvailability{padding:16px 12px}.datePanelHeader{flex-direction:column;align-items:stretch;gap:16px;padding-bottom:16px}.datePanelHeader h2{font-size:27px}.datePanelHeader label{justify-content:space-between}.datePanelBody{grid-template-columns:1fr;gap:20px}.pricedDays button{min-height:64px;gap:5px}.pricedDays button strong{font-size:17px}.pricedDays button small{font-size:8px;letter-spacing:-.04em}.dateExplanation{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.dateTrigger strong{font-size:14px}}.guestPopover{position:relative;min-width:0}.guestPopover summary{cursor:pointer;padding:11px 22px;list-style:none}.guestPopover summary::-webkit-details-marker{display:none}.guestPopover summary strong{display:flex;justify-content:space-between;gap:8px;min-height:27px;align-items:center;font-size:15px;font-weight:500}.guestPopover summary i{font-style:normal}.guestPopoverPanel{position:absolute;right:0;top:calc(100% + 16px);width:300px;padding:22px;border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 40px #233a3220;background:var(--paper)}.guestPopoverPanel>label{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px}.guestPopoverPanel select{border:1px solid var(--line);border-radius:5px;padding:8px;min-width:65px;background:var(--paper);color:var(--ink)}.childAgeGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.childAgeGrid label{display:flex;flex-direction:column;gap:6px;font-size:12px}.guestPopoverPanel>button{width:100%;margin-top:16px;padding:12px;border:0;border-radius:5px}.guestPopoverPanel>button,.searchSubmit{background:var(--forest);color:var(--on-primary);cursor:pointer}.searchSubmit{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 24px;border:0;border-radius:6px;font-size:14px}.searchSubmit>span{font-size:22px}.flexibleDates{display:flex;align-items:center;gap:15px;margin:14px 0 0 auto;min-height:32px;padding:0;background:none;border:0;color:var(--ink);cursor:pointer;font-size:12px}.flexibleDates span{font-size:20px}.searchError{background:#f6e7df;padding:12px;border-radius:6px;font-size:13px}.bookingJourney{display:flex;justify-content:center;list-style:none;gap:0;padding:0;margin:24px auto 32px}.bookingJourney li{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.bookingJourney li+li:before{content:"";width:50px;height:1px;background:var(--line);margin:0 22px}.bookingJourney li>button>span{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:10px}.bookingJourney .reached{color:var(--forest);font-weight:600}.bookingJourney .reached>button>span{background:var(--forest);border-color:var(--forest);color:var(--on-primary)}.bookingCard{width:min(1260px,calc(100% - 48px));margin:0 auto 30px;border-radius:10px;overflow:hidden;box-shadow:0 5px 20px #233a3206}.guestBar{background:#edf0e7;padding:20px 30px}.stepper button{width:36px;height:36px;background:var(--paper)}.childrenField input,.nightsField select{min-height:36px}.sectionHeading{padding:26px 30px}.sectionHeading h2{font-size:30px}.calendarHint{color:var(--muted);font-size:12px}.calendarJump{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.calendarJump input{padding:7px;max-width:160px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink)}.weeks{margin:0 18px 18px;border:0}.week{min-height:90px;grid-template-columns:135px 1fr;border:0}.weekLabel{border:0;padding:15px}.weekDays{gap:6px;padding-block:4px}.day{border:1px solid transparent;border-radius:8px}.day.open{background:#edf1e8;border-color:#e1e7d9}.day.open.selected{background:var(--forest);border-color:var(--forest)}.day strong{font-size:27px}.day .dayPrice{font-size:11px}.stayPicker{padding:22px 30px;background:#edf0e7}.confirmButton,.primaryButton,.roomBody>button,.stayBar button,.summaryCta button{border-radius:6px;min-height:48px}.searchStatus{width:min(1260px,calc(100% - 48px));margin:24px auto}.notice{display:flex;justify-content:space-between;align-items:center;gap:18px;line-height:1.6;border-radius:7px}.notice button{border:1px solid;background:transparent;color:inherit;border-radius:5px;padding:10px 16px;cursor:pointer}.searchSkeleton>div{height:130px;margin-top:15px;border-radius:10px;background:linear-gradient(100deg,#e8eae1 30%,#fafbf7 50%,#e8eae1 70%);background-size:200% 100%;animation:shimmer 1.8s infinite}@keyframes shimmer{to{background-position:-200% 0}}.searchWelcome{max-width:680px;text-align:center;margin:60px auto;padding:0 24px}.searchWelcome h2{font-size:40px;text-wrap:balance}.searchWelcome p{color:var(--muted);font-size:14px;line-height:1.9}.bookingPromises{display:flex;justify-content:center;flex-wrap:wrap;gap:30px;margin:0 auto 38px;padding:0 24px;color:var(--muted);font-size:11px}.bookingPromises span{display:flex;align-items:center;gap:9px}.bookingPromises i{font-style:normal}.results{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;grid-gap:34px;gap:34px;width:min(1260px,calc(100% - 48px));margin:0 auto 80px;scroll-margin-top:25px}.resultsMain{min-width:0}.resultsIntro{max-width:none;margin-bottom:24px}.resultsIntro .eyebrow{margin-bottom:10px;font-size:10px}.resultsIntro h2{font-size:44px}.resultsIntro p{font-size:13px;margin-bottom:0}.resultsToolbar{margin-bottom:20px}.toolbarRow{gap:12px}.sortSelect select{padding:10px;border-radius:5px;background:var(--paper)}.filterChip{min-height:36px}.sortRule{line-height:1.7}.roomGrid{display:flex;flex-direction:column;gap:22px}.roomCard{display:grid;grid-template-columns:44% minmax(0,1fr);width:100%;border-radius:10px;overflow:hidden;box-shadow:0 3px 12px #233a3203}.roomCard.active{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest)}.roomCard:has(.noPhotos){grid-template-columns:110px minmax(0,1fr)}.roomVisual.noPhotos{min-height:200px;background:linear-gradient(160deg,#e2e6dc,#b6c6b5)}.noPhotos .roomAvailability{display:none}.noPhotos .roomMonogram{font-size:65px}.roomVisual{height:100%;min-height:330px;overflow:hidden;background:#d6ded2}.roomVisual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.roomVisual>.roomAvailability{bottom:auto;right:auto;letter-spacing:.06em}.roomFeatured,.roomVisual>.roomAvailability{top:16px;left:16px;border-radius:4px;font-size:9px}.roomFeatured{position:absolute;z-index:2;padding:7px 10px;background:var(--paper);color:var(--forest);font-weight:600;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 2px 8px #233a3214}.roomFeatured+.roomAvailability{top:52px}.roomPhotoControls{position:absolute;bottom:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between}.roomPhotoControls button{display:grid;place-items:center;width:36px;height:36px;background:#fffefae8;color:#233a32;border:0;border-radius:50%;cursor:pointer}.roomPhotoControls span{color:white;background:#233a3280;padding:6px 10px;border-radius:20px;font-size:10px}.roomBody{min-width:0;max-width:100%;padding:25px;display:flex;flex-direction:column;align-items:flex-start}.roomBody>small{font-size:11px}.roomBody h3{font-size:31px;line-height:1.1;margin:10px 0 12px}.bestMatch{margin:0 0 12px;font-size:9px;letter-spacing:.08em}.cardRoomFacts{display:flex;gap:15px;color:var(--muted);font-size:11px}.cardDescription{min-width:0;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.7;color:var(--muted);margin:13px 0 17px}.roomBody .price{margin-top:auto;flex-wrap:wrap;gap:7px;padding-top:14px}.roomBody .price strong{font-size:33px}.roomBody .price>span{font-size:9px}.roomBody>button{margin-top:16px;font-size:12px}.roomDetails{margin:0;border-radius:10px;overflow:hidden;box-shadow:none}.gallery{grid-template-columns:1fr;padding:0;gap:0;background:var(--paper)}.galleryMain{height:390px}.galleryThumbs{display:flex;padding:10px;overflow-x:auto;gap:8px}.galleryThumbs button{width:90px;height:62px;flex-shrink:0}.detailContent{padding:28px;gap:25px}.detailCopy h2{font-size:35px}.leadDescription{font-size:14px}.detailSummary{padding:25px}.detailTopbar{padding:0 22px}.detailTopbar>span:last-child{display:none}.summaryStay{gap:16px;flex-wrap:wrap}.reservationRail{position:-webkit-sticky;position:sticky;top:24px}.reservationCard{padding:26px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.reservationCard .eyebrow{font-size:9px;margin-bottom:13px}.reservationCard h2{font-size:33px}.railDates{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:25px}.railDates div>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.railDates strong{font-size:16px;font-weight:500}.railGuests{font-size:12px;color:var(--muted);margin:15px 0}.railEdit{background:none;color:var(--forest);padding:0 0 4px;border:0;border-bottom:1px solid var(--line);font-size:11px;cursor:pointer}.railSelection{margin-top:25px;border-top:1px solid var(--line);padding-top:23px}.railSelection .fieldLabel{font-size:9px;line-height:1.7}.railSelection h3{font-size:25px;margin-top:12px}.railSelection>p{font-size:11px;color:var(--muted);line-height:1.7}.railPlaceholder{text-align:center;color:#a4b3a4;font-size:55px;padding:20px}.railTotal{padding:20px 0 12px}.railTotal>span{display:block;font-size:11px;color:var(--muted)}.railTotal strong{display:block;margin-top:8px;font:36px "Instrument Serif",Georgia,serif}.railSelection .primaryButton{width:100%;margin-top:18px;padding:14px;gap:10px;font-size:12px}.railSelection .railFinePrint{font-size:10px}.reservationHelp{text-align:center;padding:25px 10px}.reservationHelp h3{font-size:23px;margin-bottom:12px}.reservationHelp a{display:block;color:var(--muted);margin-top:8px;font-size:12px;overflow-wrap:anywhere;text-underline-offset:4px}.results>.compareView{grid-column:1/-1}.bookingExperience footer{padding:36px max(24px,calc((100% - 1260px)/2))}.checkoutPage{background:var(--cream);padding-bottom:50px}.checkoutPage .checkoutNav{position:static;width:100%;padding:22px max(28px,calc((100% - 1120px)/2));min-height:85px;border-bottom:1px solid var(--line)}.checkoutPage .bookingJourney{margin:28px auto}.checkoutShell{max-width:1120px;margin:35px auto;display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:45px;gap:45px;min-height:0;align-items:start}.checkoutSummary{grid-column:2;grid-row:1;position:-webkit-sticky;position:sticky;top:24px;min-height:0;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:10px;overflow:hidden}.checkoutBack{color:var(--ink);margin:18px 24px;min-height:25px}.checkoutSummary>img{height:210px}.checkoutSummaryBody{padding:25px}.checkoutSummaryBody .eyebrow{color:var(--terracotta);font-size:9px}.checkoutSummaryBody h2{font-size:30px}.checkoutSummaryBody>p{color:var(--muted);margin-bottom:20px}.checkoutDates{border-color:var(--line);gap:10px}.checkoutDates span{color:var(--muted)}.checkoutDates strong{font-family:inherit;font-size:12px}.checkoutFormPanel{grid-column:1;grid-row:1;padding:0;background:transparent;min-width:0}.checkoutTitle{margin-bottom:30px}.checkoutTitle .eyebrow{font-size:10px}.checkoutTitle h1{font-size:48px;line-height:1.1}.checkoutTitle p{color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:10px}.checkoutTitle small{color:var(--muted);font-size:11px}.checkoutFormPanel .bookingForm{padding:0;border:0;background:transparent}.checkoutGroup{min-width:0;margin:0 0 24px;padding:24px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.checkoutGroup legend{font-size:15px;font-weight:500;padding:0 8px}.checkoutGroup legend>span{font-size:10px;color:var(--terracotta);margin-right:10px}.checkoutFormPanel .formGrid{gap:20px}.checkoutFormPanel .formGrid label>span{font-size:11px;text-transform:none;letter-spacing:0}.checkoutFormPanel .formGrid input,.checkoutFormPanel .formGrid textarea{background:#fff;border:1px solid #d1d7ca;border-radius:5px;padding:12px;min-height:46px;font-size:15px}.specialRequests{margin-bottom:26px;border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:18px 24px}.specialRequests summary{cursor:pointer;font-size:13px}.specialRequests summary small{display:block;color:var(--muted);font-size:11px;margin:8px 0 0 16px}.specialRequests[open] .formGrid{margin-top:20px}.checkoutFormPanel .checkField{font-size:12px;line-height:1.75}.checkoutFormPanel .checkField input{flex-shrink:0;width:18px;height:18px;accent-color:var(--forest)}.checkoutSubmit{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.checkoutSubmit>div{display:flex;justify-content:space-between;align-items:baseline}.checkoutSubmit>div span{font-size:12px;color:var(--muted)}.checkoutSubmit>div strong{font:35px "Instrument Serif",Georgia,serif}.checkoutSubmit .confirmButton{margin-top:15px;width:100%;min-height:54px}.checkoutPage .checkoutSubmit{position:static!important;inset:auto!important;display:block!important;width:100%;margin-top:28px;padding:24px 0 0!important;background:transparent;border-top:1px solid var(--line);box-shadow:none}.checkoutPage .checkoutSubmit>div{display:flex!important}.checkoutPage .checkoutSubmit .paymentNote{margin:12px 0 0}.checkoutPage .checkoutSubmit .confirmButton{margin-top:16px}.checkoutSummary .priceBlock{color:var(--ink)}.checkoutSummary .priceBlock p,.checkoutSummary .priceBlock small{color:var(--muted)}@media (hover:hover){.primaryButton:hover:not(:disabled),.roomBody>button:hover,.searchSubmit:hover{filter:brightness(1.12)}.roomCard:hover{border-color:#a9b4a4}}@media (max-width:1320px){.searchDock{margin-inline:24px}.checkoutShell{margin-inline:28px}}@media (max-width:1050px){.results{grid-template-columns:minmax(0,1fr) 270px;gap:22px}.roomCard{grid-template-columns:minmax(0,1fr)}.roomVisual{height:280px;min-height:0}.reservationCard{padding:22px}.checkoutShell{gap:28px;grid-template-columns:minmax(0,1fr) 310px}.searchDate{padding-inline:14px}.searchSubmit{padding-inline:15px}}@media (max-width:800px){.bookingExperience .nav{height:72px;padding:0 20px}.navActions{gap:15px}.bookingExperience .hero{min-height:280px;padding:36px 24px 85px}.hero h1{font-size:48px}.hero .intro{font-size:13px}.hasResults .hero{min-height:190px;padding:25px 24px 75px}.hasResults .hero h1{font-size:36px}.searchDock{margin:-45px 16px 20px}.staySearch{grid-template-columns:1fr 1fr;padding:7px}.searchDate{padding:12px}.searchDate:nth-child(2){border-right:0}.searchDate input{font-size:16px}.guestPopover{border-top:1px solid var(--line)}.guestPopover summary{padding:13px 12px}.guestPopoverPanel{left:0;right:auto;max-width:calc(100vw - 48px)}.searchSubmit{margin-top:7px;min-height:65px;padding:12px 16px;font-size:13px}.flexibleDates{font-size:11px;text-align:left;margin-left:8px;gap:10px}.bookingJourney{margin:24px auto}.bookingJourney li{font-size:10px;gap:6px}.bookingJourney li+li:before{width:20px;margin-inline:12px}.bookingCard{width:calc(100% - 32px)}.guestBar{padding:18px;gap:15px}.sectionHeading{flex-direction:column;align-items:flex-start;padding:22px 18px 14px;gap:14px}.sectionHeading h2{font-size:27px}.calendarActions{width:100%;align-items:stretch}.calendarJump,.weekNavigation{justify-content:space-between}.weekNavigation>span{display:block}.weeks{margin:0 10px 14px}.week{grid-template-columns:1fr}.weekLabel{flex-direction:row;justify-content:space-between;align-items:center;padding:14px 4px 5px}.weekLabel span{margin:0;font-size:9px}.weekDays{gap:4px;min-height:80px}.day strong{font-size:26px}.day .dayPrice{font-size:9px;letter-spacing:-.03em}.stayPicker{padding:20px 18px}.searchWelcome{margin:40px auto}.searchWelcome h2{font-size:33px}.bookingPromises{gap:15px;font-size:10px;margin-bottom:30px}.results{display:block;width:calc(100% - 32px);margin-bottom:45px}.resultsIntro h2{font-size:36px}.resultsIntro p{font-size:12px}.roomCard{grid-template-columns:minmax(0,1fr)}.roomVisual{height:260px}.roomBody{padding:23px}.roomBody h3{font-size:32px}.roomBody .price strong{font-size:36px}.roomBody>button{min-height:50px;font-size:14px}.reservationRail{display:none}.galleryMain{height:270px}.detailContent,.detailSummary{padding:20px}.detailTopbar{padding:0 18px}.stayBar{border-radius:12px 12px 0 0;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.checkoutPage{padding-bottom:35px}.checkoutPage .checkoutNav{padding:20px}.checkoutShell{display:flex;flex-direction:column;gap:25px;margin:20px 18px}.checkoutSummary{position:static;width:100%}.checkoutSummary>img{height:165px}.checkoutSummaryBody{padding:20px}.checkoutSummaryBody>.eyebrow{display:block}.checkoutSummaryBody h2{font-size:28px;font-size:23px;line-height:1.15}.checkoutSummaryBody>p{margin:8px 0 12px}.checkoutSummaryBody .eyebrow{margin-bottom:10px}.checkoutDates{padding:12px 0}.checkoutTitle{margin-bottom:20px}.checkoutTitle .eyebrow{margin-bottom:10px}.checkoutTitle p{margin:12px 0 6px}.roomCard:has(.noPhotos){grid-template-columns:minmax(0,1fr)}.roomVisual.noPhotos{height:90px;min-height:90px}.noPhotos .roomMonogram{font-size:52px}.checkoutBack{margin:12px 20px;padding:0;min-height:30px}.checkoutFormPanel{width:100%;padding:0}.checkoutTitle h1{font-size:39px}.checkoutGroup{padding:20px 16px}.checkoutFormPanel .formGrid{gap:17px}.checkoutFormPanel .formGrid input{font-size:16px}.checkoutPage .checkoutSubmit{margin-top:24px;padding:20px 0 0!important}.checkoutPage .checkoutSubmit>div{display:flex!important;align-items:baseline}.checkoutPage .checkoutSubmit>div strong{font-size:30px}.checkoutPage .checkoutSubmit>div span{font-size:10px}.checkoutPage .checkoutSubmit .confirmButton{margin-top:14px;font-size:14px;padding:14px}.checkoutPage .checkoutSubmit .paymentNote{font-size:11px}.specialRequests{padding:18px}}@media (max-width:380px){.bookingJourney li+li:before{width:8px;margin-inline:8px}.hero h1{font-size:40px}.searchSubmit{font-size:12px;padding:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}.inlineHotelChat{width:min(720px,calc(100% - 32px));margin:0 auto 45px}.inlineHotelChat:empty,.inlineHotelChat:has(plato-chat-inline[hidden]){display:none}.bookingExperience:has(.dateAvailability)>.inlineHotelChat{display:none}@media (max-width:800px){.roomVisual,.roomVisual.noPhotos{height:clamp(180px,27svh,300px);min-height:0}.noPhotos .roomMonogram{font-size:80px}.roomBody{padding:18px 20px}.roomBody h3{margin:8px 0 10px;font-size:30px}.roomBody .bestMatch{margin-bottom:8px}.cardRoomFacts:empty{display:none}.roomBody .cardDescription{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:10px 0;line-height:1.6}.roomBody .price{padding-top:8px}.roomBody .price strong{font-size:32px}.roomBody>button{margin-top:12px}.roomDetails>.detailTopbar{order:0}.roomDetails>.gallery{order:1}.roomDetails>.detailContent{order:2;padding:24px 20px 16px}.roomDetails>.detailRates{order:3}.roomDetails>.detailSummary{order:4;margin:12px 16px 20px;padding:22px 16px 16px}.roomDetails .galleryMain{height:clamp(180px,28svh,300px)}.roomDetails .leadDescription{font-family:inherit;font-size:14px;line-height:1.65;margin:14px 0 8px}.roomDetails .leadDescription.clamped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.roomDetails .descriptionToggle{display:inline-block;min-height:44px;margin:0 0 12px;text-align:left}.roomDetails .roomFacts{margin-block:12px;padding-block:16px}.roomDetails .askRoom{margin-top:14px}.roomDetails .amenities{margin-top:20px}.hasResults>.bookingPromises{display:none}.hasResults>.bookingJourney{margin-block:18px}.resultsIntro{margin-bottom:18px}.resultsIntro h2{font-size:32px}.resultsIntro p{margin-top:10px}}@media (max-width:800px) and (max-height:740px){.roomVisual,.roomVisual.noPhotos{height:clamp(150px,25svh,185px)}.roomBody{padding:14px 18px}.roomBody h3{font-size:27px}.roomBody .price strong{font-size:29px}.roomDetails .leadDescription.clamped{-webkit-line-clamp:2}}.bookingJourney li>button{display:flex;align-items:center;gap:9px;min-height:44px;padding:4px 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:5px}.bookingJourney li>button:disabled{cursor:default}.bookingJourney li>button:not(:disabled):hover{text-decoration:underline;text-underline-offset:4px}.roomDetails .summaryCta button{display:flex;align-items:center;justify-content:space-between;gap:16px}.checkoutGuestBreakdown{margin:16px 0;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:12px}.checkoutGuestBreakdown>div{display:flex;justify-content:space-between;gap:16px;padding:5px 0}.checkoutGuestBreakdown dt{color:var(--muted)}.checkoutGuestBreakdown dd{margin:0;font-weight:500;text-align:right;overflow-wrap:anywhere}.checkoutDates>div{min-width:0}.checkoutDates strong{display:block;line-height:1.6}@media(max-width:800px){.roomDetails .summaryCta{padding:18px 0 0;gap:16px}.roomDetails .summaryCta button{width:100%;min-height:52px;padding:16px 18px;text-align:left}.bookingExperience:has(#room-details):not(.checkoutPage){padding-bottom:0}}@media(max-width:800px){.bookingJourney li>button{gap:6px}}