:root{--ink: #222222;--muted: #717171;--line: #ebebeb;--paper: #ffffff;--sand: #f7f7f7;--sea: #1e34e6;--sea-dark: #162e8f;--coral: #2a3e8e;--primary: var(--sea-dark);--brand-gradient: linear-gradient(to right, #1e34e6, #080db5, #2a3e8e);--brand-gradient-hover: linear-gradient(to right, #162e8f, #080db5, #1e34e6);--brand-focus: rgba(30, 52, 230, .24);--brand-focus-strong: rgba(30, 52, 230, .42);--olive: #717171;--sun: #ffb400;--white: #ffffff;--shadow: 0 6px 16px rgba(0, 0, 0, .12);--radius: 12px;color-scheme:light}*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{line-height:1.05;letter-spacing:0}h1{max-width:780px;font-size:clamp(2.7rem,4.6rem,4.6rem)}h2{font-size:2.25rem}h3{font-size:1.2rem}p{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.8rem;color:var(--sea-dark);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}@keyframes live-config-shimmer{to{background-position:-200% 0}}@keyframes live-config-sweep{to{transform:translate(100%)}}html.js[data-public-config=loading]{--skeleton-base: #eef2ff;--skeleton-soft: #f7f8ff;--skeleton-chip: #f8f9ff;--skeleton-highlight: rgba(255, 255, 255, .86);--skeleton-gradient: linear-gradient(90deg, transparent 0%, var(--skeleton-highlight) 46%, transparent 92%)}html.js[data-public-config=loading] a[data-live-room],html.js[data-public-config=loading] [data-live-room] [data-search-room-link]{pointer-events:none}html.js[data-public-config=loading] [data-live-name],html.js[data-public-config=loading] [data-live-short],html.js[data-public-config=loading] [data-live-description],html.js[data-public-config=loading] [data-live-location],html.js[data-public-config=loading] [data-live-location-eyebrow],html.js[data-public-config=loading] [data-live-price],html.js[data-public-config=loading] [data-live-price-meta],html.js[data-public-config=loading] [data-live-stat],html.js[data-public-config=loading] [data-live-min-stay],html.js[data-public-config=loading] [data-live-sleeping-summary],html.js[data-public-config=loading] .room-card__stats,html.js[data-public-config=loading] .search-result-card__amenities span,html.js[data-public-config=loading] .amenity-grid>div,html.js[data-public-config=loading] [data-search-count],html.js[data-public-config=loading] [data-search-location-title]{position:relative;max-width:100%;min-height:1em;overflow:hidden;border-radius:.46em;background-color:var(--skeleton-base)!important;background-image:var(--skeleton-gradient)!important;background-repeat:no-repeat!important;background-size:220% 100%!important;animation:live-config-shimmer 1.18s ease-in-out infinite;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:transparent!important;text-decoration:none!important;text-shadow:none!important;-webkit-text-fill-color:transparent;user-select:none}html.js[data-public-config=loading] .room-hero [data-live-name]{width:fit-content;max-width:100%;border-radius:.24em;background-color:transparent!important;background-image:linear-gradient(90deg,var(--skeleton-base),var(--skeleton-highlight),var(--skeleton-base)),linear-gradient(90deg,var(--skeleton-base),var(--skeleton-highlight),var(--skeleton-base))!important;background-position:0 .1em,0 calc(1.12em + .1em)!important;background-repeat:no-repeat!important;background-size:100% .82em,68% .82em!important;animation:none}html.js[data-public-config=loading] .room-hero [data-live-description]{border-radius:.7rem}html.js[data-public-config=loading] .room-hero [data-live-description],html.js[data-public-config=loading] .room-hero [data-live-location],html.js[data-public-config=loading] .location-section [data-live-location],html.js[data-public-config=loading] .room-card [data-live-short],html.js[data-public-config=loading] .search-result-card [data-live-short],html.js[data-public-config=loading] [data-live-sleeping-summary],html.js[data-public-config=loading] [data-search-location-title]{width:fit-content;max-width:100%}html.js[data-public-config=loading] .room-card__stats,html.js[data-public-config=loading] .search-result-card__amenities span,html.js[data-public-config=loading] .amenity-grid>div{background-color:var(--skeleton-chip)!important;border-color:#e5e9fb!important}html.js[data-public-config=loading] .search-result-card__amenities span,html.js[data-public-config=loading] .amenity-grid>div{min-height:inherit}html.js[data-public-config=loading] .search-result-card__amenities span>*,html.js[data-public-config=loading] .amenity-grid>div>*{opacity:0}html.js[data-public-config=loading] .room-card__media,html.js[data-public-config=loading] .search-result-card__image,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile,html.js[data-public-config=loading] .search-map-preview{position:relative;overflow:hidden;background-color:var(--skeleton-base)!important}html.js[data-public-config=loading] .search-map-preview{background-image:linear-gradient(34deg,transparent 0 42%,rgba(255,255,255,.92) 42% 43%,transparent 43% 100%),linear-gradient(120deg,transparent 0 56%,rgba(255,255,255,.72) 56% 57%,transparent 57% 100%),linear-gradient(90deg,#1e34e60a,#162e8f12)!important;background-size:100% 100%,100% 100%,100% 100%!important}html.js[data-public-config=loading] .room-card__media:before,html.js[data-public-config=loading] .search-result-card__image:before,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile:before,html.js[data-public-config=loading] .search-map-preview:before{position:absolute;inset:0;z-index:2;content:"";background:var(--skeleton-gradient);transform:translate(-100%);animation:live-config-sweep 1.18s ease-in-out infinite;pointer-events:none}html.js[data-public-config=loading] .room-card__media img,html.js[data-public-config=loading] .search-result-card__image img,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile img,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile span,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile strong,html.js[data-public-config=loading] .search-map-preview>*{opacity:0}html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile:after{opacity:0}[data-live-media].is-media-loading,.room-photo-tour__tile.is-media-loading,.room-photo-tour__tile--skeleton{position:relative;overflow:hidden;background-color:var(--skeleton-base)!important}[data-live-media].is-media-loading:before,.room-photo-tour__tile.is-media-loading:before,.room-photo-tour__tile--skeleton:before{position:absolute;z-index:3;inset:0;content:"";background:var(--skeleton-gradient);transform:translate(-100%);animation:live-config-sweep 1.18s ease-in-out infinite;pointer-events:none}[data-live-media].is-media-loading>img,.room-photo-tour__tile.is-media-loading>img{opacity:0!important}.room-photo-tour__tile.is-media-loading>span,.room-photo-tour__tile.is-media-loading>strong,.room-photo-tour__tile--skeleton:after{opacity:0}[data-live-media].is-media-error,.room-photo-tour__tile.is-media-error{background:#eef1f7!important}[data-live-media].is-media-error>img,.room-photo-tour__tile.is-media-error>img{display:none}@media(prefers-reduced-motion:reduce){html.js[data-public-config=loading] [data-live-name]:after,html.js[data-public-config=loading] [data-live-short]:after,html.js[data-public-config=loading] [data-live-description]:after,html.js[data-public-config=loading] [data-live-location]:after,html.js[data-public-config=loading] [data-live-location-eyebrow]:after,html.js[data-public-config=loading] [data-live-price]:after,html.js[data-public-config=loading] [data-live-price-meta]:after,html.js[data-public-config=loading] [data-live-stat]:after,html.js[data-public-config=loading] [data-live-min-stay]:after,html.js[data-public-config=loading] [data-live-sleeping-summary]:after,html.js[data-public-config=loading] .room-card__stats:after,html.js[data-public-config=loading] .search-result-card__amenities span:after,html.js[data-public-config=loading] .amenity-grid>div:after,html.js[data-public-config=loading] [data-search-count]:after,html.js[data-public-config=loading] [data-search-location-title]:after,html.js[data-public-config=loading] .room-card__media:before,html.js[data-public-config=loading] .search-result-card__image:before,html.js[data-public-config=loading] [data-live-photo-tour] .room-photo-tour__tile:before,html.js[data-public-config=loading] .search-map-preview:before{animation:none;transform:none}html.js[data-public-config=loading] [data-live-name],html.js[data-public-config=loading] [data-live-short],html.js[data-public-config=loading] [data-live-description],html.js[data-public-config=loading] [data-live-location],html.js[data-public-config=loading] [data-live-location-eyebrow],html.js[data-public-config=loading] [data-live-price],html.js[data-public-config=loading] [data-live-price-meta],html.js[data-public-config=loading] [data-live-stat],html.js[data-public-config=loading] [data-live-min-stay],html.js[data-public-config=loading] [data-live-sleeping-summary],html.js[data-public-config=loading] .room-card__stats,html.js[data-public-config=loading] .search-result-card__amenities span,html.js[data-public-config=loading] .amenity-grid>div,html.js[data-public-config=loading] [data-search-count],html.js[data-public-config=loading] [data-search-location-title]{animation:none;background-position:0 0!important}}.button,.icon-link,button.button{min-height:48px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.75rem 1.5rem;font-weight:600;font-size:1rem;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.button:hover,.icon-link:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--sea) 55%,var(--line))}.button--primary{border-color:var(--sea);background:var(--brand-gradient);color:var(--white)}.button--primary:hover{background:var(--brand-gradient-hover)}.button--light{background:#ffffffeb}.button--compact{padding-inline:.85rem}.text-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--sea-dark);font-weight:850}.site-header{position:sticky;top:0;z-index:1000;display:grid;align-items:center;gap:1rem;min-height:72px;padding:.78rem clamp(1rem,4vw,5rem);border-bottom:1px solid var(--line);background:#fffffff2}.site-header:before{content:"";position:absolute;inset:0;z-index:-1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none}.site-header--with-search{grid-template-columns:minmax(120px,1fr) minmax(320px,760px) minmax(88px,1fr)}.site-header--simple:not(.site-header--with-search){grid-template-columns:minmax(0,1fr) auto}.site-header__search,.site-header-search{min-width:0}.site-header__search{justify-self:center;width:min(760px,100%)}.site-header__search .landing-search--compact{width:100%}.brand{display:inline-flex;align-items:center;gap:.65rem;font-weight:900;min-width:0}.brand__logo{display:block;width:auto;max-width:min(160px,42vw);max-height:40px;object-fit:contain}.brand__mark{width:38px;height:38px;border-radius:var(--radius);display:grid;place-items:center;background:var(--ink);color:var(--sun);font-size:.82rem}.brand__text{white-space:nowrap}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(.75rem,2vw,1.5rem);color:var(--muted);font-size:.95rem;font-weight:750}.site-nav a:hover{color:var(--ink)}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;justify-self:end}.icon-link{width:44px;padding:0}.language-switcher{position:relative;z-index:40}.language-switcher__button{min-height:44px;display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .5rem .42rem .78rem;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);cursor:pointer;list-style:none;box-shadow:0 1px 2px #0f172a0a;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.language-switcher__button::-webkit-details-marker{display:none}.language-switcher__button:hover,.language-switcher[open] .language-switcher__button{border-color:#ddd;box-shadow:0 6px 18px #0f172a1a}.language-switcher__button:focus-visible{outline:2px solid rgba(30,52,230,.34);outline-offset:3px}.language-switcher__button span{max-width:86px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:800}.language-switcher__button strong{min-width:34px;display:inline-flex;align-items:center;justify-content:center;padding:.24rem .42rem;border-radius:999px;background:var(--sand);color:var(--ink);font-size:.72rem;font-weight:950}.language-switcher__chevron{color:var(--muted);transition:transform .16s ease}.language-switcher[open] .language-switcher__chevron{transform:rotate(180deg)}.language-switcher__menu{position:absolute;top:calc(100% + .55rem);right:0;width:min(248px,calc(100vw - 1.5rem));display:grid;gap:.25rem;padding:.45rem;border:1px solid var(--line);border-radius:18px;background:#fffffffa;box-shadow:0 18px 44px #0f172a29;backdrop-filter:blur(18px)}.language-switcher__option{display:flex;align-items:center;justify-content:space-between;gap:.85rem;min-height:54px;padding:.72rem .8rem;border-radius:13px;color:var(--ink)}.language-switcher__option:hover,.language-switcher__option:focus-visible{background:var(--sand);outline:none}.language-switcher__option.is-active{background:#eef2ff;color:var(--sea-dark)}.language-switcher__option span{min-width:0;display:grid;gap:.08rem}.language-switcher__option strong{font-size:.92rem;font-weight:880}.language-switcher__option small{color:var(--muted);font-size:.74rem;font-weight:850;letter-spacing:0}.hero{min-height:clamp(430px,68svh,690px);display:grid;align-items:center;background-image:var(--hero-image);background-size:cover;background-position:center;color:var(--white);padding:clamp(3rem,7vw,6rem) clamp(1rem,4vw,5rem);position:relative}.hero:before{content:"";position:absolute;inset:0;background:#0000004d}.hero>*{position:relative;z-index:1}.hero--booking{grid-template-columns:minmax(0,1fr) minmax(360px,470px);gap:clamp(1.2rem,4vw,4rem);align-items:center}.hero .eyebrow,.hero p{color:#ffffffe0}.hero h1{margin-bottom:1.1rem;color:var(--white)}.hero__content{max-width:820px;min-width:0}.hero__booking{width:100%}.hero__booking .booking-panel{border-color:transparent;background:var(--white);box-shadow:0 16px 40px #0000001f}.hero__booking .booking-grid,.hero__booking .booking-grid--contact{grid-template-columns:1fr 1fr}.hero__content>p:not(.eyebrow){max-width:670px;font-size:1.16rem}.hero__actions,.guide-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.55rem}.hero__proof{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem}.hero__proof span{display:inline-flex;align-items:center;gap:.4rem;min-height:38px;padding:.48rem .66rem;border:1px solid rgba(255,255,255,.28);border-radius:var(--radius);background:#ffffff24;color:var(--white);font-size:.9rem;font-weight:760}.booking-band{padding:clamp(1rem,3vw,2rem);background:var(--sand)}.booking-panel{width:min(1180px,100%);margin:0 auto;padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:0 6px 16px #0000001f}.booking-panel--compact{box-shadow:none}.booking-panel__heading{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.booking-panel__heading h2{margin:0;font-size:1.3rem}.booking-grid{display:grid;grid-template-columns:1.4fr repeat(3,minmax(130px,1fr));gap:.8rem}.booking-date-range{position:relative;display:grid;gap:.35rem;grid-column:span 2}.booking-date-range__buttons{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.date-trigger{min-height:58px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--ink);display:grid;gap:.15rem;justify-items:start;padding:.72rem 1rem;cursor:pointer;transition:border-color .2s}.date-trigger span{color:var(--ink);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.date-trigger strong{font-size:.95rem;font-weight:400;color:var(--muted)}.date-trigger.has-value strong{color:var(--ink);font-weight:600}.date-trigger.is-active,.date-trigger.has-value:hover{border-color:var(--ink);background:var(--white)}.zr-calendar-popover{position:absolute;top:calc(100% + .75rem);left:0;z-index:2000;width:min(720px,calc(100vw - 2rem));border:1px solid rgba(20,24,21,.12);border-radius:var(--radius);background:var(--white);color:var(--ink);box-shadow:0 28px 80px #14181538;padding:1rem}.zr-calendar__top,.zr-calendar__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.zr-calendar__top{padding-bottom:.8rem;border-bottom:1px solid var(--line)}.zr-calendar__top span,.zr-calendar__footer span{display:block;color:var(--muted);font-size:.8rem;font-weight:850}.zr-calendar__top strong{display:block;margin-top:.1rem}.zr-calendar__close,.zr-calendar__footer button{border:0;background:transparent;color:var(--sea-dark);font-weight:900;cursor:pointer}.zr-calendar__nav{display:flex;justify-content:flex-end;gap:.45rem;margin:.8rem 0}.zr-calendar__nav button{width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);font-size:1.4rem;cursor:pointer}.zr-calendar__months{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.zr-calendar__month h3{margin:0 0 .7rem;text-align:center;font-size:1rem}.zr-calendar__weekdays,.zr-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem}.zr-calendar__weekdays{margin-bottom:.32rem}.zr-calendar__weekdays span{color:var(--muted);text-align:center;font-size:.72rem;font-weight:850}.zr-calendar__blank,.zr-calendar__day{aspect-ratio:1 / 1}.zr-calendar__day{display:grid;align-content:center;justify-items:center;gap:.02rem;border:0;border-radius:999px;background:transparent;color:var(--ink);font-weight:800;cursor:pointer}.zr-calendar__day span{line-height:1}.zr-calendar__price{color:var(--muted);font-size:.58rem;font-weight:850;line-height:1}.zr-calendar__source{max-width:92%;color:#a13d35;font-size:.52rem;font-weight:900;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zr-calendar__day:hover{background:var(--sand)}.zr-calendar__day.is-range{border-radius:0;background:#e7f3f1}.zr-calendar__day.is-start,.zr-calendar__day.is-end{background:var(--ink);color:var(--white)}.zr-calendar__day.is-start .zr-calendar__price,.zr-calendar__day.is-end .zr-calendar__price{color:#ffffffc2}.zr-calendar__day.is-disabled{color:#c4bbb0;cursor:not-allowed}.zr-calendar__day.is-unavailable{border-radius:10px;background:#fff4f2;color:#a13d35;opacity:1}.zr-calendar__day.is-unavailable>span{text-decoration:line-through}.zr-calendar__footer{margin-top:.95rem;padding-top:.8rem;border-top:1px solid var(--line)}.booking-grid--contact{grid-template-columns:repeat(3,minmax(150px,1fr));margin-top:.8rem}.booking-grid__wide{grid-column:1 / -1}.booking-panel label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:800}.booking-panel input,.booking-panel select,.booking-panel textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);padding:.78rem .82rem}.booking-panel textarea{resize:vertical}.booking-panel input:focus,.booking-panel select:focus,.booking-panel textarea:focus{outline:3px solid color-mix(in srgb,var(--sea) 20%,transparent);border-color:var(--sea)}.booking-panel__bottom{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;margin-top:1rem}.room-booking .booking-grid,.room-booking .booking-panel__bottom{grid-template-columns:1fr}.room-booking .booking-date-range{grid-column:auto}.room-booking .zr-calendar-popover{left:auto;right:0;width:min(640px,calc(100vw - 2rem));max-height:calc(100svh - 2rem);overflow-y:auto;z-index:9999!important}.room-booking .booking-panel__bottom .button{width:100%}.booking-result{min-height:1.5rem;margin:0}.booking-quote{display:grid;grid-template-columns:1fr auto;gap:.12rem .8rem;align-items:end;max-width:430px;margin-top:.5rem;border:1px solid color-mix(in srgb,var(--sea) 32%,var(--line));border-radius:var(--radius);background:#eef8f6;padding:.72rem .85rem}.booking-quote span{color:var(--sea-dark);font-size:.8rem;font-weight:900}.booking-quote strong{grid-row:span 2;color:var(--ink);font-size:1.35rem}.booking-quote small{color:var(--muted);font-weight:750}.booking-result.is-ok{color:var(--sea-dark)}.booking-result.is-warn{color:#9d4f23}.booking-result-wrap{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;font-size:14px}.booking-result{font-weight:400}.booking-result.is-error,.booking-result.is-warn{color:#c13515}.booking-result-wrap:has(.booking-result:empty){display:none}.booking-result-icon{flex-shrink:0;display:none}.booking-result-wrap:has(.booking-result.is-error) .booking-result-icon,.booking-result-wrap:has(.booking-result.is-warn) .booking-result-icon{display:block}.booking-result-wrap:has(.booking-result.is-error) .booking-result-icon,.booking-result-wrap:has(.booking-result.is-warn) .booking-result-icon{fill:#c13515!important}.booking-date-range.has-error{border:1px solid #c13515;background-color:#fff8f6;border-radius:8px 8px 0 0;margin:-1px -1px 0}.booking-date-range.has-error .booking-input-cell{background-color:transparent}.booking-date-range.has-error .booking-input-cell:not(:last-child){border-right-color:#c13515}.reservation-float{position:fixed;left:0;right:0;bottom:0;z-index:5000;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.9rem;align-items:center;border:none;border-top:1px solid #ebebeb;border-radius:0;background:#fff;box-shadow:0 -4px 20px #00000014;padding:.85rem 1.25rem max(.85rem,env(safe-area-inset-bottom)) 1.25rem;transform:none;backdrop-filter:none}.reservation-float[hidden],.reservation-modal[hidden]{display:none}.reservation-float__main,.reservation-float__price,.reservation-modal__summary>div{display:grid;gap:.08rem}.reservation-float span,.reservation-float small{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.reservation-modal__summary span,.reservation-modal__summary small,.reservation-modal__heading span{color:var(--muted);font-size:.78rem;font-weight:850}.reservation-float strong,.reservation-modal__summary strong{color:var(--ink);font-size:1rem}.reservation-float strong[data-float-dates]{text-decoration:underline;cursor:pointer}.reservation-float__price{min-width:130px;text-align:right}.reservation-float__price strong{font-size:1.28rem}.reservation-weekly-upsell{position:fixed;left:1rem;right:1rem;bottom:calc(92px + env(safe-area-inset-bottom));z-index:4999;display:flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #c7d2fe;border-radius:16px;background:#f5f7ff;color:var(--sea-dark);padding:.65rem .95rem;box-shadow:0 10px 28px #11182714;font-size:.9rem;font-weight:600;line-height:1.3;text-align:center}.reservation-weekly-upsell[hidden]{display:none}.reservation-modal-open{overflow:hidden}.reservation-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem}.reservation-modal__overlay{position:absolute;inset:0;background:#0f172a8a;backdrop-filter:blur(8px)}.reservation-modal__panel{position:relative;width:min(640px,100%);max-height:min(90svh,calc(100svh - 2rem));overflow:hidden;border-radius:18px;background:var(--white);box-shadow:0 24px 80px #0f172a47;padding:0;display:flex;flex-direction:column}.reservation-modal__close{width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease;flex-shrink:0}.reservation-modal__close:hover{background:#f7f7f7}.reservation-modal__close:focus-visible,.reservation-modal__form input:focus-visible,.reservation-modal__form textarea:focus-visible,.reservation-modal__form button:focus-visible{outline:3px solid color-mix(in srgb,var(--sea) 48%,transparent);outline-offset:3px}.reservation-modal__heading{max-width:100%;padding-right:0;margin-bottom:1.25rem}.reservation-modal__heading h2{margin:0 0 .25rem;font-size:clamp(1.3rem,4vw,1.7rem)}.reservation-modal__heading p{margin:0;font-size:.9rem;color:#717171}.reservation-modal__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0}.reservation-modal__steps span{min-height:36px;display:grid;place-items:center;border:none;border-bottom:2px solid var(--line);border-radius:0;background:transparent;color:var(--muted);font-size:.85rem;font-weight:600}.reservation-modal__summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;margin:1.5rem 0 1rem;border:none;background:transparent;padding:0 0 1rem;border-bottom:1px solid var(--line)}.reservation-modal__summary>div:last-child{text-align:right}.reservation-modal__summary>div:last-child strong{font-size:1.45rem}.reservation-modal__breakdown{display:grid;gap:.58rem;margin:1rem 0;border:none;border-radius:0;background:transparent;padding:0}.reservation-modal__breakdown>div{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.reservation-modal__breakdown span{color:var(--muted);font-size:.88rem;font-weight:760}.reservation-modal__breakdown strong{color:var(--ink);white-space:nowrap}.reservation-modal__breakdown>div:last-child{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--line)}.reservation-modal__breakdown>div:last-child span,.reservation-modal__breakdown>div:last-child strong{color:var(--ink);font-weight:950}.reservation-modal__payment,.reservation-modal__confirmation{grid-column:1 / -1;border:1px solid color-mix(in srgb,var(--coral) 28%,var(--line));border-radius:var(--radius);background:#fff8f5;padding:.85rem .9rem}.reservation-modal__payment span{display:block;color:var(--muted);font-size:.8rem;font-weight:900}.reservation-modal__payment strong,.reservation-modal__confirmation strong{display:block;color:var(--ink);font-size:1rem}.reservation-modal__payment p,.reservation-modal__confirmation p{margin:.18rem 0 0;color:var(--muted);font-size:.9rem}.reservation-modal__confirmation{border-color:color-mix(in srgb,var(--sea) 32%,var(--line));background:#eef8f6}.reservation-modal__confirmation[hidden]{display:none}.reservation-modal__form{display:grid;grid-template-columns:1fr;gap:.8rem}.reservation-modal__form[aria-busy=true]{opacity:.82}.reservation-modal__form[data-sent=true] label{display:none}.reservation-modal__form[data-sent=true]~.reservation-modal__footer [data-modal-submit]{display:none}.reservation-modal__success[hidden]{display:none}.reservation-modal__form label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:800}.reservation-modal__form input,.reservation-modal__form textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font-size:16px;padding:.78rem .82rem}.reservation-modal__wide,.reservation-modal__form .booking-result,.reservation-modal__form>button[type=submit],.reservation-modal__footer{grid-column:1 / -1}.reservation-modal__form button:disabled{cursor:wait;opacity:.72}.hp-field{position:absolute;left:-9999px;opacity:0}.section{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,7vw,5rem) 0}.section__heading{max-width:720px;margin-bottom:1.6rem}.section__heading h2{margin-bottom:.6rem}.landing-page{background:#fff}.landing-hero{display:grid;gap:clamp(1.4rem,3vw,2.2rem);width:min(1280px,calc(100% - 2rem));margin:0 auto;padding:clamp(2.5rem,6vw,4.8rem) 0 clamp(2.4rem,5vw,4rem)}.landing-hero__copy{width:min(820px,100%);margin:0 auto;text-align:center}.landing-hero__copy .eyebrow{margin-bottom:.72rem}.landing-hero h1{margin:0 auto 1rem;color:var(--ink);font-size:clamp(2.25rem,5vw,4.25rem);line-height:1.05;letter-spacing:0}.landing-hero__subtitle{width:min(680px,100%);margin:0 auto;color:var(--muted);font-size:clamp(1.06rem,2vw,1.24rem)}.landing-hero__proof{display:flex;flex-wrap:wrap;justify-content:center;gap:.62rem 1rem;margin-top:1.35rem;color:var(--ink);font-size:.95rem;font-weight:760}.landing-hero__proof span{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.landing-hero__proof svg{flex:0 0 auto;color:var(--sea-dark)}.landing-hero__booking{position:relative;z-index:3;width:min(960px,100%);margin:0 auto -3.4rem;padding-inline:1rem}.landing-hero__media{aspect-ratio:16 / 7;overflow:hidden;border-radius:16px;background:var(--sand)}.landing-hero__media img,.landing-location__media img,.landing-guide__image img{width:100%;height:100%;object-fit:cover}.landing-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.45rem}.landing-section-heading>div{max-width:720px}.landing-section-heading h2,.landing-values h2,.landing-location h2,.landing-guide h2{margin-bottom:.55rem}.landing-values{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.landing-values__intro{max-width:430px}.landing-values__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.landing-values__grid article{display:grid;align-content:start;gap:.65rem;min-width:0}.landing-values__grid svg{color:var(--sea-dark)}.landing-values__grid h3{margin:0;color:var(--ink);font-size:1.02rem}.landing-values__grid p{margin:0;color:var(--muted);font-size:.96rem}.landing-location,.landing-guide{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:clamp(1.4rem,4vw,3rem);align-items:center}.landing-location__media,.landing-guide__image{aspect-ratio:1.25 / 1;overflow:hidden;border-radius:16px;background:var(--sand)}.landing-location__content p:not(.eyebrow),.landing-guide p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.landing-location .eyebrow,.landing-guide .eyebrow{display:inline-flex;align-items:center;gap:.38rem}.landing-guide{padding-top:clamp(2.5rem,5vw,4rem);border-top:1px solid var(--line)}.landing-guide__image{order:-1}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.room-grid>*{min-width:0;width:100%}.room-card,.room-card__body,.room-card__header{min-width:0}.room-card h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-section img,.image-section__media img,.guide-room__header img{width:100%;height:100%;object-fit:cover}.room-hero__stats{display:flex;flex-wrap:wrap;gap:.55rem}.room-hero__stats span{display:inline-flex;align-items:center;gap:.35rem;min-height:34px;padding:.35rem .52rem;border-radius:6px;background:var(--sand);color:var(--ink);font-weight:760}.room-hero__stats b{font:inherit}.search-page{--search-filter-top: 118px;background:#f7f7f7}.search-topbar{position:sticky;top:80px;z-index:28;padding:.72rem clamp(1rem,4vw,5rem);border-bottom:1px solid var(--line);background:#fffffff0;backdrop-filter:blur(18px)}.search-hero{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:clamp(1.25rem,4vw,4rem);align-items:center;min-height:clamp(430px,46vw,560px);padding:clamp(2rem,6vw,4.8rem) clamp(1rem,5vw,4rem);background:linear-gradient(90deg,#222222b8,#2222223d 58%,#22222214),url(https://images.unsplash.com/photo-1533105079780-92b9be482077?auto=format&fit=crop&w=2200&q=82) center/cover;color:var(--white)}.search-hero h1{margin-bottom:1rem;color:var(--white);max-width:620px;overflow-wrap:anywhere;font-size:clamp(2.45rem,5vw,4.6rem)}.search-hero p,.search-hero .eyebrow{color:#ffffffe0}.search-hero>*{min-width:0}.search-box{display:grid;grid-template-columns:minmax(190px,1.2fr) repeat(3,minmax(118px,.8fr));gap:.55rem;align-items:end;min-width:0;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:#fffffff5;padding:.75rem;box-shadow:0 18px 44px #0000002e}.search-box label,.search-filters label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:850}.search-box input,.search-filters input,.search-filters select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--ink);padding:.68rem .75rem}.search-box button{grid-column:1 / -1;min-width:124px;height:44px;padding-inline:1rem}.search-shell{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:clamp(1rem,2vw,1.4rem);width:min(1480px,calc(100% - clamp(1.5rem,5vw,8rem)));margin:0 auto;padding:clamp(1rem,4vw,2rem) 0 clamp(2.5rem,5vw,4rem)}.search-filter-toggle,button.search-filter-toggle,.search-filters__close{display:none}.search-drawer-backdrop{position:fixed;inset:0;z-index:78;background:#1118276b;backdrop-filter:blur(3px)}body.has-search-drawer{overflow:hidden}.search-filters,.search-map-preview,.search-result-card{border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:0 10px 34px #272a2614}.search-filters{position:sticky;top:var(--search-filter-top, 88px);display:grid;align-content:start;gap:1.05rem;max-height:calc(100svh - var(--search-filter-top, 88px) - 22px);overflow:auto;padding:1rem}.search-filters__heading,.search-results__toolbar,.search-results__actions,.search-sort,.search-result-card__top,.search-result-card__stats,.search-result-card__amenities,.search-result-card__footer{display:flex;align-items:center;gap:.65rem}.search-filters__heading strong{font-size:1.05rem}.search-filters__heading{justify-content:space-between}.search-filters fieldset{display:grid;gap:.55rem;min-width:0;margin:0;border:0;padding:0}.search-filters legend{margin-bottom:.45rem;color:var(--muted);font-size:.82rem;font-weight:950}.search-filters fieldset label{display:grid;grid-template-columns:18px 18px minmax(0,1fr);align-items:center;gap:.6rem;min-height:38px;border:1px solid transparent;border-radius:10px;color:var(--ink);padding:.38rem .45rem;cursor:pointer}.search-filters fieldset label:hover,.search-filters fieldset label:has(input:checked){border-color:#c7d2fe;background:#f5f7ff}.search-filters input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--sea);padding:0}.search-filters input[type=range]{min-height:28px;padding:0;accent-color:var(--sea)}.search-filters fieldset svg{color:var(--muted)}.search-filters fieldset span{min-width:0;overflow-wrap:anywhere;font-weight:820}.search-results{display:grid;gap:1rem}.search-results__toolbar{justify-content:space-between;flex-wrap:wrap;border:1px solid var(--line);border-radius:16px;background:var(--white);padding:1rem;box-shadow:0 10px 30px #272a260f}.search-results__toolbar span,.search-result-card__top span,.search-result-card__footer span{display:inline-flex;align-items:center;gap:.3rem;color:var(--muted);font-size:.82rem;font-weight:850}.search-results__toolbar strong{display:block;margin-top:.1rem;font-size:1.35rem}.search-results__actions{flex-wrap:wrap}.search-sort{min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--ink);padding:.45rem .55rem;font-size:.86rem;font-weight:900}.search-sort select{border:0;background:transparent;color:inherit;font:inherit;outline:none}.search-map-preview{position:relative;min-height:clamp(280px,31vw,390px);overflow:hidden;isolation:isolate;background:#edf6f6}.search-map-preview__canvas{position:absolute;inset:0;z-index:0}.search-map-preview__badge{position:absolute;top:1rem;left:1rem;z-index:2;display:flex;align-items:flex-start;gap:.65rem;max-width:min(390px,calc(100% - 2rem));border:1px solid var(--line);border-radius:13px;background:#fffffff0;padding:.72rem .85rem;box-shadow:0 10px 28px #22222224;backdrop-filter:blur(10px)}.search-map-preview__badge>div{display:grid;gap:.1rem}.search-map-preview__badge strong{line-height:1.15}.search-map-preview__badge span{max-width:340px;color:var(--muted);font-size:.78rem;font-weight:760}.search-map-preview .leaflet-container{min-height:inherit;font:inherit}.search-map-preview .leaflet-control-attribution{border-radius:10px 0 0;background:#ffffffe6;color:var(--muted);font-size:.68rem}.search-map-preview .leaflet-control-zoom{overflow:hidden;border:1px solid var(--line)!important;border-radius:12px;box-shadow:0 8px 22px #22222221!important}.search-map-preview .leaflet-control-zoom a{border-color:var(--line)!important;color:var(--ink)!important}.search-map-marker{border:0;background:transparent}.search-map-pin{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;min-width:62px;min-height:34px;border:1px solid rgba(34,34,34,.14);border-radius:999px;background:var(--white);color:var(--ink);padding:.38rem .65rem;box-shadow:0 8px 18px #2222222e;font-size:.84rem;font-weight:950;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.search-map-pin--cluster{border-color:#1e34e64d}.search-map-pin small{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:var(--sea);color:var(--white);padding:0 .3rem;font-size:.68rem;line-height:1}.search-map-marker:hover .search-map-pin,.search-map-marker.is-active .search-map-pin{border-color:var(--sea);box-shadow:0 0 0 3px #1e34e629,0 10px 22px #2222222e;transform:translateY(-1px)}.search-map-preview .leaflet-popup-content-wrapper{overflow:hidden;border-radius:16px;box-shadow:0 18px 48px #2223}.search-map-preview .leaflet-popup-content{margin:0}.search-map-preview .leaflet-popup-tip{box-shadow:0 8px 18px #2222221f}.search-map-popup{display:grid;grid-template-columns:86px minmax(0,1fr);gap:.65rem;width:260px;padding:.52rem}.search-map-popup-list{display:grid;gap:.2rem;width:292px;max-height:310px;overflow:auto;padding:.32rem}.search-map-popup-list .search-map-popup{width:100%;border-radius:13px}.search-map-popup-list .search-map-popup:hover{background:#f7f7f7}.search-map-popup img{width:86px;height:72px;border-radius:11px;object-fit:cover}.search-map-popup span{display:grid;align-content:center;gap:.2rem;min-width:0}.search-map-popup strong{overflow-wrap:anywhere;line-height:1.15}.search-map-popup small{color:var(--muted);font-size:.78rem;font-weight:850}.search-result-card.is-map-active{outline:2px solid rgba(30,52,230,.75);outline-offset:2px}.search-card-list{display:grid;gap:.85rem}.search-result-card[hidden]{display:none}.search-result-card{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);overflow:hidden}.search-result-card__image{position:relative;display:block;min-width:0}.search-result-card__image img{width:100%;height:100%;min-height:260px;object-fit:cover}.search-result-card__image-offer{position:absolute;top:.8rem;left:.8rem;max-width:calc(100% - 1.6rem);border:1px solid rgba(255,255,255,.78);border-radius:999px;background:#fffffff5;color:#162e8f;box-shadow:0 12px 30px #0f172a2e;padding:.36rem .62rem;font-size:.78rem;font-weight:900;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-card__image-offer[hidden]{display:none}.search-result-card__body{display:grid;gap:.85rem;padding:1rem}.search-result-card__top{align-items:flex-start;justify-content:space-between;min-width:0}.search-result-card h2{margin:.2rem 0 .35rem;font-size:1.3rem;overflow-wrap:anywhere}.search-result-card p{margin:0;max-width:62ch}.search-result-card__offer{display:inline-grid;grid-template-columns:auto minmax(0,1fr);gap:.18rem .45rem;align-items:center;width:fit-content;max-width:100%;margin-top:.5rem;border:1px solid rgba(30,52,230,.16);border-radius:8px;background:#f6f8ff;color:#162e8f;padding:.42rem .55rem}.search-result-card__offer[hidden]{display:none}.search-result-card__offer strong{font-size:.82rem;font-weight:900;line-height:1.1}.search-result-card__offer small{color:#334155;font-size:.76rem;font-weight:760;line-height:1.15}.search-result-card__price{min-width:max-content;text-align:right}.search-result-card__strike{display:block;color:var(--muted);font-size:.85rem;font-weight:760;text-decoration:line-through;text-decoration-thickness:1.5px}.search-result-card__strike[hidden]{display:none}.search-result-card__price strong{display:block;font-size:1.25rem}.search-result-card__price span{color:var(--muted);font-size:.78rem;font-weight:850}.search-result-card__stats,.search-result-card__amenities{flex-wrap:wrap}.search-result-card__stats span,.search-result-card__amenities span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line);border-radius:999px;background:#fffbf4;padding:.36rem .55rem;color:var(--ink);font-size:.8rem;font-weight:820}.search-result-card__stats b{font:inherit}.search-result-card__footer{justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:.85rem}.search-empty{display:grid;justify-items:start;gap:.55rem;border:1px dashed color-mix(in srgb,var(--coral) 42%,var(--line));border-radius:16px;background:#fff8f5;padding:1.2rem}.search-empty[hidden]{display:none}.search-empty strong{font-size:1.15rem}.search-empty p{margin:0;color:var(--muted)}.split-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:clamp(1.2rem,4vw,3rem);align-items:start}.feature-list{display:grid;gap:.8rem;margin-top:1.4rem}.feature-list div{display:flex;gap:.8rem;align-items:flex-start;padding:1rem;border-left:4px solid var(--coral);background:var(--white)}.stats-strip{display:grid;gap:.7rem}.stats-strip a{display:grid;gap:.1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.stats-strip strong{font-size:1.45rem}.stats-strip span{color:var(--muted)}.image-section,.guide-promo{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.2rem,4vw,3rem);align-items:center}.image-section__media{aspect-ratio:1.25 / 1;overflow:hidden;border-radius:var(--radius)}.image-section__content p:not(.eyebrow),.guide-promo p{font-size:1.05rem}.guide-promo{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.guide-preview{width:min(330px,100%);justify-self:center;padding:.8rem;border:1px solid var(--line);border-radius:28px;background:var(--ink);box-shadow:var(--shadow)}.guide-preview__top{display:flex;justify-content:center;gap:.35rem;padding:.5rem}.guide-preview__top span{width:7px;height:7px;border-radius:999px;background:#ffffff61}.guide-preview__screen{min-height:320px;display:grid;align-content:center;gap:.7rem;border-radius:22px;background:var(--paper);padding:1.25rem}.guide-preview__screen strong{font-size:1.3rem}.guide-preview__screen p{margin:0;padding:.75rem;border-radius:var(--radius);background:var(--white)}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.review-grid figure{margin:0;padding:1.2rem}.review-grid blockquote{margin:0 0 1rem;font-size:1.06rem;font-weight:760}.review-grid figcaption{color:var(--muted)}.site-footer{display:block;border-top:1px solid var(--line);background:#f7f7f7;color:var(--ink)}.site-footer__inner{display:grid;grid-template-columns:minmax(220px,1.15fr) repeat(3,minmax(150px,1fr));gap:clamp(1.5rem,4vw,3rem);width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(2.4rem,5vw,3.8rem) 0}.site-footer p,.site-footer a,.site-footer address,.site-footer span{color:var(--muted)}.site-footer__brand{display:grid;align-content:start;gap:.85rem}.site-footer__brand p{max-width:320px;margin:0}.brand--footer .brand__logo{max-width:180px;max-height:45px}.footer-group{display:grid;align-content:start;gap:.58rem;min-width:0}.footer-group h2{margin:0 0 .25rem;color:var(--ink);font-size:.88rem;font-weight:850}.footer-group a{width:fit-content;font-size:.92rem;text-decoration:none}.footer-group a:hover{color:var(--ink);text-decoration:underline}.footer-contact address{max-width:240px;font-style:normal;line-height:1.55}.site-footer__bottom{display:flex;flex-wrap:wrap;gap:.45rem 1rem;justify-content:space-between;width:min(1180px,calc(100% - 2rem));margin:0;margin-inline:auto;padding:1rem 0 max(1rem,env(safe-area-inset-bottom));border-top:1px solid var(--line);font-size:.86rem}.legal-page{background:#faf8f4;color:var(--ink);min-height:70vh}.legal-hero{max-width:1120px;margin:0 auto;padding:clamp(3rem,8vw,5rem) clamp(1rem,5vw,2rem) clamp(1.5rem,4vw,2.5rem)}.legal-hero h1{max-width:760px;margin:0;font-size:clamp(2.15rem,5vw,4.4rem);letter-spacing:0}.legal-hero p{max-width:760px;margin:1rem 0 0;color:var(--muted);font-size:clamp(1rem,2vw,1.18rem)}.legal-hero span{display:inline-flex;margin-top:1.25rem;color:var(--muted);font-size:.9rem}.legal-shell{display:grid;grid-template-columns:minmax(190px,250px) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,2rem) clamp(3rem,8vw,5rem)}.legal-nav{position:sticky;top:92px;align-self:start;display:grid;gap:.25rem;padding:.4rem;border:1px solid var(--line);border-radius:8px;background:#ffffffbf}.legal-nav a{padding:.7rem .8rem;border-radius:6px;color:var(--muted);font-size:.92rem;text-decoration:none}.legal-nav a:first-child{color:var(--ink);font-weight:760}.legal-nav a:hover,.legal-nav a.is-active{background:#fff;color:var(--ink)}.legal-document{border:1px solid var(--line);border-radius:8px;background:#fff}.legal-section{padding:clamp(1.25rem,3vw,2rem);border-bottom:1px solid var(--line)}.legal-section:last-child{border-bottom:0}.legal-section h2{margin:0 0 .9rem;font-size:clamp(1.25rem,2vw,1.7rem);letter-spacing:0}.legal-section p,.legal-section li{color:var(--muted);line-height:1.7}.legal-section p{margin:.75rem 0 0}.legal-section ul{display:grid;gap:.65rem;margin:.9rem 0 0;padding-left:1.2rem}.legal-section a{color:var(--ink);text-decoration:underline}.legal-table-wrap{width:100%;overflow-x:auto;margin-top:1rem;border:1px solid var(--line);border-radius:8px}.legal-table{width:100%;min-width:680px;border-collapse:collapse}.legal-table th,.legal-table td{padding:.9rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.legal-table th{background:#f7f3ec;color:var(--ink);font-size:.82rem;text-transform:uppercase}.legal-table td{color:var(--muted);line-height:1.55}.legal-table tr:last-child td{border-bottom:0}.legal-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,2rem) clamp(3rem,8vw,5rem)}.legal-index a{display:grid;gap:.55rem;min-height:180px;padding:1.25rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-decoration:none}.legal-index a:hover{border-color:#1e34e673}.legal-index span{color:var(--accent);font-size:.78rem;font-weight:820;text-transform:uppercase}.legal-index strong{font-size:1.15rem}.legal-index p{margin:0;color:var(--muted);line-height:1.5}.not-found{min-height:62vh;display:grid;place-content:center;justify-items:center;padding:2rem;text-align:center}.room-hero{width:min(1180px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:end;padding:clamp(2rem,6vw,4rem) 0 1.5rem}.room-hero h1{margin-bottom:.85rem}.room-hero__offer{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;width:fit-content;max-width:100%;margin:-.25rem 0 .85rem;border:1px solid rgba(30,52,230,.16);border-radius:8px;background:#f6f8ff;color:#162e8f;padding:.48rem .62rem}.room-hero__offer[hidden]{display:none}.room-hero__offer span{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;background:#162e8f;color:#fff;padding:.22rem .48rem;font-size:.76rem;font-weight:900;line-height:1}.room-hero__offer strong{color:#111827;font-size:.9rem;font-weight:900}.room-hero__offer small{color:#475569;font-size:.84rem;font-weight:760}.room-hero__copy>p:not(.eyebrow){max-width:760px;font-size:1.08rem}.room-hero__badges,.room-hero__price{display:grid}.room-hero__badges{grid-template-columns:repeat(3,fit-content(240px));gap:.5rem;margin:1rem 0}.room-hero__badges span{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:.48rem .62rem;color:var(--ink);font-size:.86rem;font-weight:850}.room-hero__price{min-width:190px;gap:.1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.room-hero__price span{color:var(--muted);font-weight:750}.room-hero__price strong{font-size:2rem}.gallery-section{width:min(1180px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:minmax(190px,240px);gap:.6rem}.room-photo-tour__tile{position:relative;min-width:0;overflow:hidden;border:0;border-radius:var(--radius);background:var(--surface);color:var(--white);cursor:pointer;padding:0;text-align:left}.room-photo-tour__tile:after{position:absolute;inset:auto 0 0;height:48%;content:"";background:linear-gradient(180deg,#0000,#00000075);pointer-events:none}.gallery-section img,.room-photo-tour__tile img{width:100%;height:100%;border-radius:inherit;display:block;object-fit:cover;transition:transform .22s ease,filter .22s ease}.room-photo-tour__tile:hover img{filter:brightness(.92);transform:scale(1.025)}.room-photo-tour__tile span,.room-photo-tour__tile strong{position:absolute;z-index:1;left:.9rem;right:.9rem}.room-photo-tour__tile span{bottom:.85rem;font-size:.86rem;font-weight:850}.room-photo-tour__tile strong{right:.7rem;bottom:.7rem;left:auto;display:inline-flex;align-items:center;min-height:38px;border-radius:999px;background:#fffffff2;color:var(--ink);padding:.55rem .8rem;font-size:.84rem;font-weight:900;box-shadow:0 10px 24px #0003}.gallery-section img:first-child,.room-photo-tour__tile.is-cover{grid-row:span 2}.things-modal__panel--photos{max-width:min(1120px,calc(100vw - 2rem))}.room-photo-modal{display:grid;gap:clamp(1.4rem,3vw,2.2rem)}.room-photo-modal__header{display:grid;gap:.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.room-photo-modal__header span{color:var(--muted);font-size:.82rem;font-weight:850;text-transform:uppercase}.things-modal .room-photo-modal__header p{margin:0;color:var(--muted);font-size:.95rem}.room-photo-modal__space{display:grid;gap:.85rem}.room-photo-modal__space h3{margin:0;font-size:1.25rem}.room-photo-modal__space>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.room-photo-modal figure{display:grid;gap:.45rem;margin:0}.room-photo-modal img{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius);background:var(--surface);object-fit:cover}.room-photo-modal figcaption{color:var(--muted);font-size:.9rem;font-weight:650}.room-overview{padding-bottom:clamp(1.5rem,4vw,3rem)}.room-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.room-feature-grid article,.policy-grid div,.room-host-card,.room-review-panel,.room-booking__trust{border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.room-feature-grid article{display:grid;align-content:start;gap:.45rem;padding:1rem}.room-feature-grid svg,.policy-grid svg,.room-host-card svg,.room-booking__trust svg{color:var(--sea-dark)}.room-feature-grid strong{font-size:1rem}.room-feature-grid p{margin:0;font-size:.92rem}.room-sleeping-section{padding-top:clamp(1rem,3vw,2.2rem);padding-bottom:clamp(1.8rem,4vw,3.2rem)}.room-sleeping-section__head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.room-sleeping-section__head h2,.room-sleeping-section__head p{margin:0}.room-sleeping-section__head h2{font-size:clamp(1.55rem,3vw,2.2rem)}.room-sleeping-section__head p{max-width:680px;margin-top:.35rem;color:var(--muted);font-size:1rem}.room-sleeping-section__head>span{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:var(--white);padding:.58rem .78rem;color:var(--ink);font-size:.9rem;font-weight:780}.room-sleeping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem}.room-sleeping-card{min-height:156px;display:grid;grid-template-rows:auto 1fr auto;gap:.8rem;border:1px solid var(--line);border-radius:14px;background:var(--white);padding:1rem}.room-sleeping-card__icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f7f7f7;color:var(--ink)}.room-sleeping-card__copy{display:grid;align-content:start;gap:.24rem}.room-sleeping-card strong,.room-sleeping-card p,.room-sleeping-card small{margin:0}.room-sleeping-card strong{color:var(--ink);font-size:1.05rem}.room-sleeping-card p{color:var(--ink);font-size:.98rem;font-weight:560}.room-sleeping-card small{color:var(--muted);font-size:.88rem;line-height:1.45}.room-sleeping-card>span{width:fit-content;border-radius:999px;background:#f5f5f5;color:var(--muted);padding:.34rem .52rem;font-size:.78rem;font-weight:760}.room-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,440px);gap:clamp(1.2rem,4vw,2rem);align-items:start}.room-detail h2{font-size:1.55rem;margin:0 0 1rem}.amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem .8rem;margin-bottom:2.5rem}.rate-table div,.guide-inline{border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.amenity-grid div{display:flex;align-items:center;gap:.85rem;font-weight:500;font-size:1.05rem;color:var(--ink)}.amenity-grid div svg{color:var(--ink);opacity:.85}.rate-table{display:grid;gap:.65rem;margin-bottom:2rem}.rate-table div{display:grid;grid-template-columns:1fr 1.3fr auto;gap:.8rem;align-items:center;padding:.9rem}.rate-table span:nth-child(2){color:var(--muted)}.policy-grid{display:grid;gap:.65rem;margin-bottom:2rem}.policy-grid div{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;padding:.9rem;color:var(--muted);font-weight:740}.guide-inline{display:grid;grid-template-columns:auto 1fr auto;gap:.9rem;align-items:center;padding:1rem;margin-bottom:1rem}.guide-inline h2,.guide-inline p{margin:0}.room-host-card{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start;padding:1rem;margin-bottom:1rem}.room-host-card__avatar{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:var(--sea-dark);color:var(--white);font-weight:950}.room-host-card h2,.room-host-card p,.room-review-panel h2,.room-review-panel p{margin:0}.room-host-card__meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.room-host-card__meta span{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;background:#eef8f6;color:var(--sea-dark);padding:.38rem .58rem;font-size:.82rem;font-weight:850}.room-review-panel{display:grid;gap:.9rem;padding:1rem}.room-review-panel__head{display:flex;align-items:start;justify-content:space-between;gap:1rem}.room-review-panel__head>div:first-child{min-width:0}.room-review-panel__head p{color:var(--muted);font-size:.86rem;font-weight:720}.room-review-summary{display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:58px;border-radius:12px;background:#f1f4ff;color:var(--sea-dark);font-size:1.25rem;font-weight:900}.room-review-summary small{display:block;margin-left:.3rem;color:var(--muted);font-size:.78rem;font-weight:760}.room-review-score-skeleton,.room-review-list--skeleton div{position:relative;overflow:hidden;border-radius:8px;background:#edf0f5}.room-review-score-skeleton{width:82px;height:58px}.room-review-list--skeleton div{min-height:76px}.room-review-score-skeleton:after,.room-review-list--skeleton div:after{position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.7) 50%,transparent 80%);content:"";transform:translate(-100%);animation:public-skeleton 1.4s infinite}.room-review-list--live{gap:0}.room-review-list--live figure:first-child{border-top:0;padding-top:0}.room-review-list blockquote{white-space:pre-wrap}.room-review-meta{display:flex;flex-wrap:wrap;gap:.38rem;color:var(--muted);font-size:.78rem;font-weight:760}.room-review-empty{color:var(--muted);font-weight:700}@keyframes public-skeleton{to{transform:translate(100%)}}.room-review-list{display:grid;gap:.65rem}.room-review-list figure{display:grid;gap:.38rem;margin:0;border-top:1px solid var(--line);padding-top:.72rem}.room-review-list blockquote{margin:0;color:var(--ink);font-weight:760}.room-review-list figcaption{display:inline-flex;align-items:center;gap:.3rem;color:var(--coral);font-weight:900}.things-to-know{margin-top:0;padding-top:clamp(2rem,5vw,3.25rem);border-top:1px solid var(--line)}.things-to-know h2{margin-bottom:clamp(1.4rem,4vw,2.4rem);font-size:clamp(1.85rem,3vw,2.3rem)}.things-to-know__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,5vw,4rem)}.things-to-know__item{min-width:0}.things-to-know__item svg{margin-bottom:1.35rem;color:var(--ink);stroke-width:2.1}.things-to-know__item h3{margin:0 0 .45rem;font-size:1.05rem;line-height:1.2}.things-to-know__item p{max-width:30ch;margin:0;color:var(--muted);font-size:1rem;line-height:1.35}.things-to-know__item button{margin-top:.35rem;border:0;border-radius:0;background:transparent;color:var(--ink);padding:0;font-weight:760;text-decoration:underline;text-underline-offset:.16em;cursor:pointer}.things-to-know__item button:hover{color:var(--sea-dark)}.things-modal-open{overflow:hidden}.things-modal{width:min(760px,calc(100% - 2rem));max-height:min(850px,calc(100svh - 2rem));margin:auto;padding:0;border:0;border-radius:28px;background:transparent;color:var(--ink)}.things-modal::backdrop{background:#2222226b;backdrop-filter:blur(2px)}.things-modal__panel{position:relative;max-height:min(850px,calc(100svh - 2rem));overflow:auto;border:1px solid rgba(255,255,255,.72);border-radius:28px;background:var(--white);box-shadow:0 28px 90px #0f172a47}.things-modal__content{display:grid;gap:clamp(1.6rem,4vw,2.2rem);padding:clamp(4.8rem,8vw,5.8rem) clamp(1.4rem,5vw,3rem) clamp(2rem,5vw,3rem)}.things-modal__close{position:absolute;top:1.1rem;left:1.1rem;z-index:1;width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--ink);font-size:1.9rem;line-height:1;cursor:pointer}.things-modal__close:hover,.things-modal__close:focus-visible{background:var(--sand);outline:none}.things-modal h2{margin:0;font-size:clamp(2rem,4vw,2.8rem)}.things-modal p{max-width:62ch;margin:-1.25rem 0 0;color:var(--ink);font-size:clamp(1.02rem,2vw,1.16rem)}.things-modal__group{display:grid;gap:.9rem}.things-modal__group h3{margin:0;font-size:1.25rem}.things-modal__list{display:grid;margin:0;padding:0;list-style:none}.things-modal__list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.9rem;align-items:center;min-height:68px;border-bottom:1px solid var(--line);padding:1rem 0;color:var(--ink);font-size:1.04rem}.things-modal__list li:last-child{border-bottom:0}.things-modal__list svg{color:var(--ink);stroke-width:1.9}.room-booking{position:sticky;top:92px;display:grid;gap:.75rem;z-index:600}.room-booking__label{display:inline-flex;align-items:center;gap:.45rem;color:var(--sea-dark);font-weight:850}.room-booking__trust{display:grid;gap:.55rem;padding:1rem}.room-booking__trust strong{font-size:1rem}.room-booking__trust span{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.88rem;font-weight:760}.guide-page{min-height:100svh;background:linear-gradient(180deg,#fffbf4eb,#f3ece0eb),var(--sand)}.guide-hero{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:clamp(2rem,6vw,4rem) 0 1.2rem}.guide-app-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:1rem;align-items:end}.guide-hero h1{margin-bottom:.65rem}.guide-hero-card,.guide-app-card{border:1px solid color-mix(in srgb,var(--line) 82%,var(--white));border-radius:var(--radius);background:#ffffffeb;box-shadow:0 14px 38px #1f242214}.guide-hero-card{display:grid;gap:.55rem;padding:1rem}.guide-hero-card span,.guide-card-heading span,.guide-secret-row>span{color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}.guide-hero-card strong{font-size:1.2rem}.guide-hero-card__actions{display:grid;grid-template-columns:repeat(3,44px);gap:.5rem}.guide-hero-card__actions a{display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--sea-dark)}.guide-shell{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:0 0 clamp(3rem,8vw,5rem)}.guide-tabs{position:sticky;top:72px;z-index:20;display:flex;gap:.5rem;overflow-x:auto;padding:.7rem 0;background:color-mix(in srgb,var(--sand) 88%,transparent);backdrop-filter:blur(14px);flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.guide-tabs::-webkit-scrollbar{display:none}.guide-tabs button{min-width:max-content;min-height:44px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--muted);display:inline-flex;align-items:center;gap:.45rem;padding:.65rem .9rem;font-weight:850;cursor:pointer}.guide-tabs button.is-active{border-color:color-mix(in srgb,var(--sea) 45%,var(--line));background:#eef8f6;color:var(--sea-dark);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--sea) 20%,transparent)}.guide-room{display:none}.guide-room.is-active{display:block}.guide-room__header{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(0,1.05fr);gap:1rem;align-items:stretch;margin:.7rem 0 1rem;padding:.75rem}.guide-room__header img{width:100%;height:100%;min-height:270px;aspect-ratio:1.35 / 1;border-radius:var(--radius)}.guide-room__summary{display:grid;align-content:center;gap:.55rem;padding:clamp(.2rem,2vw,1rem)}.guide-room__summary h2,.guide-room__summary p{margin-bottom:0}.guide-status-strip{display:flex;flex-wrap:wrap;gap:.55rem}.guide-status-strip span{display:inline-flex;align-items:center;gap:.4rem;min-height:38px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);padding:.45rem .7rem;font-size:.88rem;font-weight:800}.guide-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:1rem}.guide-action-card{min-height:66px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--sea-dark);display:grid;place-items:center;gap:.25rem;padding:.65rem;font-size:.86rem;font-weight:850;text-align:center;cursor:pointer}.guide-action-card--muted{color:var(--muted);cursor:default}.guide-action-card.is-active{border-color:color-mix(in srgb,var(--sea) 45%,var(--line));background:#eef8f6}.guide-main-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.guide-app-card{display:grid;align-content:start;gap:.85rem;padding:1rem}.guide-card--wide{grid-column:span 2}.guide-card-heading{display:flex;gap:.65rem;align-items:center}.guide-card-heading svg{color:var(--sea-dark)}.guide-card-heading h3,.guide-app-card p{margin-bottom:0}.guide-wifi-card{border-color:color-mix(in srgb,var(--sea) 28%,var(--line));background:#f4fbfa}.guide-secret-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .7rem;align-items:center;padding:.7rem;border:1px solid color-mix(in srgb,var(--sea) 18%,var(--line));border-radius:var(--radius);background:var(--white)}.guide-secret-row>span{grid-column:1 / -1}.guide-secret-row strong{min-width:0;overflow-wrap:anywhere}.guide-secret-row button,.guide-mini-link,.local-list a{min-height:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);color:var(--sea-dark);display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .65rem;font-size:.82rem;font-weight:850;cursor:pointer}.guide-step-list{display:grid;gap:.65rem;margin:0;padding:0;list-style:none;counter-reset:guide-step}.guide-step-list li{counter-increment:guide-step;display:grid;grid-template-columns:34px 1fr;gap:.65rem;align-items:start}.guide-step-list li>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--sea);color:var(--white);font-weight:900}.guide-step-list li>span:before{content:counter(guide-step)}.guide-step-list p{padding:.45rem 0 0}.emergency-list,.local-list{display:grid;gap:.6rem}.emergency-list{grid-template-columns:repeat(3,minmax(0,1fr))}.emergency-list a,.emergency-list__item,.local-list article{display:grid;gap:.15rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.emergency-list span,.emergency-list small,.local-list span{color:var(--muted);font-size:.82rem;font-weight:750}.emergency-list strong{font-size:1.25rem}.emergency-list__item{color:var(--ink)}.local-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem}.local-list strong{display:block;margin:.1rem 0}.local-list p{margin-bottom:0}.guide-qr-row{display:grid;grid-template-columns:150px 1fr;gap:1rem;align-items:center}.guide-qr-row img{width:150px;height:150px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}@media(max-width:1050px){.site-nav{display:none}.site-header--with-search{grid-template-columns:minmax(120px,1fr) auto;align-items:center}.site-header--with-search .site-header__search{grid-column:1 / -1;grid-row:2;width:min(760px,100%)}.site-footer__inner,.room-grid,.review-grid,.guide-card-grid,.guide-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-card--wide{grid-column:span 2}.search-shell,.search-result-card{grid-template-columns:1fr}.search-shell{position:relative;width:min(100% - 2rem,760px)}.search-hero{grid-template-columns:1fr;align-items:start}.search-box{grid-template-columns:repeat(2,minmax(0,1fr))}.search-box button{grid-column:1 / -1;width:100%}.search-filter-toggle,button.search-filter-toggle{width:fit-content;display:inline-flex}.search-filters{position:fixed;inset:auto .75rem 0;z-index:80;max-height:min(82svh,720px);overflow:auto;border-radius:20px 20px 0 0;background:var(--white);box-shadow:0 -22px 60px #11182738;transform:translateY(105%);transition:transform .18s ease}.search-filters.is-open{transform:translateY(0)}.search-filters__close{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink);font-size:1.3rem;line-height:1;cursor:pointer}}@media(max-width:860px){h1{font-size:2.55rem}h2{font-size:1.8rem}.site-header{align-items:flex-start;min-height:auto}.site-header--with-search{align-items:center}.header-actions{flex-wrap:wrap}.header-actions .button span{display:none}.booking-grid,.booking-grid--contact,.hero--booking,.search-hero,.landing-values,.landing-location,.landing-guide,.split-section,.image-section,.guide-promo,.guide-app-hero,.room-hero,.room-sleeping-section__head,.room-feature-grid,.room-detail-layout,.guide-room__header{grid-template-columns:1fr}.room-sleeping-section__head{display:grid;align-items:start}.room-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-hero__badges,.search-box{grid-template-columns:1fr}.search-box button{grid-column:auto}.search-result-card__top{display:grid}.search-result-card__price{text-align:left}.booking-date-range{grid-column:auto}.hero__booking .booking-grid,.hero__booking .booking-grid--contact,.booking-panel__bottom{grid-template-columns:1fr}.booking-panel__bottom .button{width:100%}.room-booking{position:static}.gallery-section{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.gallery-section img:first-child,.room-photo-tour__tile.is-cover{grid-column:1 / -1;grid-row:auto}.guide-room__header img{min-height:230px}.emergency-list,.site-footer,.landing-values__grid{grid-template-columns:1fr}.landing-guide__image{order:0}.landing-hero__booking{margin-bottom:0}.landing-hero__media,.landing-location__media,.landing-guide__image{aspect-ratio:4 / 3;border-radius:12px}.landing-section-heading{display:grid;align-items:start}.legal-shell{grid-template-columns:1fr}.legal-nav{position:static;display:flex;overflow-x:auto;padding:.35rem}.legal-nav a{white-space:nowrap}.legal-index{grid-template-columns:1fr}}@media(max-width:620px){.search-page{overflow-x:clip}.site-header{gap:.65rem;padding:.7rem .85rem}.brand__logo{max-width:136px;max-height:36px}.site-header__search .landing-search--compact{max-width:100%!important}.site-header__search .landing-search--compact .landing-search__guests{display:none!important}.site-header__search .landing-search--compact .landing-search__dates:after{display:none!important}.brand__text{display:none}.language-switcher__button{min-height:40px;gap:.35rem;padding:.38rem .44rem .38rem .62rem}.language-switcher__button span{display:none}.language-switcher__button strong{min-width:32px;padding-inline:.36rem}.language-switcher__menu{right:-.2rem;width:min(228px,calc(100vw - 1rem))}.icon-link{display:none}.hero{min-height:500px;padding:2.5rem 1rem;background-position:center}.search-hero{min-height:auto;padding:2rem 1rem;overflow:hidden}.search-hero>div,.search-box{width:100%;max-width:calc(100vw - 2rem)}.search-hero h1{max-width:11ch;font-size:clamp(2.05rem,10vw,2.45rem)}.search-hero p{max-width:calc(100vw - 2rem)}.landing-hero{width:min(100% - 1rem,720px);padding-top:1.85rem}.landing-hero h1{font-size:clamp(2rem,10vw,2.7rem)}.landing-hero__proof{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem}.landing-hero__proof span{min-width:max-content}.landing-hero__booking{width:100%;margin-bottom:0;padding-inline:0}.landing-hero__media,.landing-location__media,.landing-guide__image{aspect-ratio:4 / 3;border-radius:12px}.landing-section-heading{display:grid;align-items:start}.site-footer__inner{grid-template-columns:1fr}.site-footer__bottom{display:grid}.search-shell{width:calc(100% - 1rem)}.search-results,.search-map-preview,.search-card-list,.search-result-card{min-width:0}.search-map-preview{min-height:310px}.search-map-preview__badge{top:.75rem;right:.75rem;left:.75rem;max-width:none}.hero--booking{align-items:start;padding-top:2rem}.hero__booking .booking-panel{padding:.85rem}.hero__booking .booking-grid{grid-template-columns:1fr 1fr}.hero__booking .booking-grid label:first-child{grid-column:1 / -1}.hero__booking .booking-panel__bottom{grid-template-columns:1fr}.booking-date-range__buttons{grid-template-columns:1fr 1fr}.reservation-float{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;width:100%;padding:.75rem 1rem max(.75rem,env(safe-area-inset-bottom)) 1rem}.reservation-float__price{min-width:auto}.reservation-float>.button{grid-column:1 / -1;width:100%}.booking-card--quick .booking-card__submit{display:none}.reservation-float>button.button--gradient{border:none!important;background:var(--brand-gradient)!important;color:#fff!important;box-shadow:none}.reservation-modal{display:flex;align-items:stretch;justify-content:flex-start;padding:0}.reservation-modal__overlay{display:none}.reservation-modal__panel{width:100%;height:100svh;max-height:100svh;border-radius:0;box-shadow:none}.reservation-modal__form{grid-template-columns:1fr}.zr-calendar-popover{position:fixed;inset:0;width:100%;max-height:none;border-radius:0;overflow-y:auto;z-index:2000;background:#fff;padding-bottom:max(24px,env(safe-area-inset-bottom));animation:slideUp .3s cubic-bezier(.4,0,.2,1)}.booking-guest-popover{position:fixed;inset:0;width:100%;max-height:none;border-radius:0;overflow-y:auto;z-index:2000;background:#fff;padding:0 16px max(24px,env(safe-area-inset-bottom));animation:slideUp .3s cubic-bezier(.4,0,.2,1);margin-top:0}.booking-drawer-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:16px;margin:0 -16px 16px;border-bottom:1px solid #ebebeb;background:#fff;position:sticky;top:0;z-index:10}.zr-calendar-popover .booking-drawer-mobile-header{margin:0 0 16px}.booking-drawer-mobile-header span{font-weight:600;font-size:16px}.booking-drawer-mobile-close{background:transparent;border:none;font-size:20px;color:#222;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.booking-drawer-mobile-clear{background:transparent;border:none;font-size:14px;font-weight:600;color:#222;text-decoration:underline;cursor:pointer;padding:4px}.zr-calendar__months{grid-template-columns:1fr}.hero__proof{display:flex;flex-wrap:nowrap;max-width:100%;min-width:0;overflow-x:auto;padding-bottom:.15rem}.hero__proof span{min-width:max-content}.room-grid,.review-grid,.guide-card-grid,.guide-main-grid,.guide-card--wide,.search-results__toolbar,.search-results__actions,.amenity-grid,.room-sleeping-grid,.room-feature-grid,.room-host-card,.policy-grid div,.rate-table div,.guide-inline{grid-template-columns:1fr}.guide-card--wide{grid-column:auto}.guide-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.guide-action-card{min-height:64px;padding:.5rem .35rem;font-size:.76rem}.guide-secret-row,.local-list article,.guide-qr-row{grid-template-columns:1fr}.guide-qr-row img{width:138px;height:138px}.search-results__toolbar,.search-results__actions{display:grid;justify-content:stretch}.search-results__actions .button{width:100%}.search-result-card__image img{min-height:220px}.room-card__footer{align-items:start;flex-direction:column}.things-to-know{margin-top:0;padding-top:2rem}.things-to-know__grid{grid-template-columns:1fr;gap:1.7rem}.things-to-know__item{border-bottom:1px solid var(--line);padding-bottom:1.65rem}.things-to-know__item:last-child{border-bottom:0;padding-bottom:0}.things-to-know__item svg{margin-bottom:.85rem}.things-to-know__item p{max-width:none}.things-modal{width:100%;max-height:92svh;margin:auto 0 0;border-radius:24px 24px 0 0}.things-modal__panel{max-height:92svh;border-radius:24px 24px 0 0}.things-modal__content{padding:4.4rem 1.35rem max(1.5rem,env(safe-area-inset-bottom))}.things-modal__close{top:.9rem;left:.9rem}.things-modal__list li{min-height:64px;grid-template-columns:32px minmax(0,1fr);gap:.75rem;font-size:.98rem}.gallery-section{grid-template-columns:1fr}.room-photo-tour__tile{min-height:220px}.room-photo-tour__tile strong{left:.7rem;right:auto;max-width:calc(100% - 1.4rem)}.room-photo-modal__space>div{grid-template-columns:1fr}.guide-tabs{top:62px}}.map-container{height:480px;width:100%;border-radius:12px;background:var(--surface);margin-top:1.5rem;position:relative;z-index:1;isolation:isolate}.map-container .leaflet-control-zoom{border:none!important;box-shadow:0 4px 12px #0000001a!important}.map-container .leaflet-control-zoom a{color:var(--ink)!important}.custom-map-pin{display:flex;align-items:center;justify-content:center}.custom-map-pin__circle{position:relative;width:56px;height:56px;display:flex;align-items:center;justify-content:center}.custom-map-pin__pulse{position:absolute;inset:0;background-color:#222;border-radius:50%;opacity:.25;animation:map-pulse 2.5s infinite ease-out}.custom-map-pin__inner{position:relative;width:44px;height:44px;background-color:#222;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff,0 4px 12px #00000040;color:#fff;z-index:2}@keyframes map-pulse{0%{transform:scale(.8);opacity:.5}to{transform:scale(1.6);opacity:0}}.booking-card-wrapper{position:relative;z-index:500}.booking-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;box-shadow:0 6px 16px #0000001f;display:flex;flex-direction:column;gap:16px}.booking-drawer-header{display:none}.booking-card__header{margin-bottom:8px}.booking-card__price-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.booking-card__total-price{font-size:22px;font-weight:600;color:#222;border-bottom:2px solid transparent;cursor:default}.booking-card__price-wrap[data-quote-card]:hover .booking-card__total-price{border-bottom-color:#222}.booking-card__total-label{font-size:16px;color:#222;margin-left:4px;font-weight:600}.booking-input-grid{border:1px solid #b0b0b0;border-radius:8px;display:flex;flex-direction:column}.booking-input-row{display:flex;border-bottom:1px solid #b0b0b0}.booking-input-row:last-child{border-bottom:none}.booking-input-cell{flex:1;display:flex;flex-direction:column;padding:10px 12px;background:transparent;border:none;text-align:left;cursor:pointer;position:relative}.booking-input-cell:not(:last-child){border-right:1px solid #b0b0b0}.booking-input-cell--full{width:100%;border-right:none}.booking-input-cell span{font-size:10px;font-weight:700;color:#222;margin-bottom:2px}.booking-input-cell strong{font-size:14px;color:#717171;font-weight:400}.booking-guest-select{display:flex;align-items:center;justify-content:space-between}.booking-guest-select input{border:none;background:transparent;font-size:14px;color:#222;padding:0;margin:0;outline:none;width:100%}.booking-card__meta{text-align:center}.booking-pill{display:inline-block;background:#f3f4f6;border-radius:100px;padding:8px 16px;font-size:14px;color:#222;font-weight:500}.booking-pill[hidden]{display:none!important}.booking-card__cancellation{display:grid;gap:.16rem;margin:0 0 1rem;padding:.72rem .8rem;border:1px solid #dde3ff;border-radius:8px;background:#f7f8ff;color:#29315d;font-size:.82rem;line-height:1.4}.booking-card__cancellation strong{color:#162e8f;font-size:.85rem}.booking-card__cancellation[hidden]{display:none!important}.booking-rate-plans{display:grid;gap:.55rem;margin:0 0 1rem}.booking-rate-plans__label{color:#4b5563;font-size:.82rem;font-weight:760}.booking-rate-plans__options{display:grid;gap:.5rem}.booking-rate-plan{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid #d7dbe7;border-radius:8px;background:#fff;color:var(--ink);padding:.75rem .8rem;text-align:left;cursor:pointer}.booking-rate-plan:hover{border-color:#8d9be6}.booking-rate-plan.is-selected{border-color:#162e8f;background:#f6f7ff;box-shadow:inset 0 0 0 1px #162e8f}.booking-rate-plan>span{display:grid;gap:.12rem}.booking-rate-plan>span strong{font-size:.88rem;font-weight:800}.booking-rate-plan>span small{color:#596273;font-size:.76rem;line-height:1.35}.booking-rate-plan__price{display:grid;justify-items:end;gap:.1rem;font-size:.95rem;font-weight:850;white-space:nowrap}.booking-rate-plan__price strong{color:var(--ink);font-size:inherit;font-weight:inherit}.booking-rate-plan__price s{color:#71798a;font-size:.75rem;font-weight:650}.booking-rate-plan--non-refundable.is-selected{border-color:#a64a12;background:#fff8f1;box-shadow:inset 0 0 0 1px #a64a12}.booking-card__contact{display:flex;flex-direction:column;gap:12px}.booking-card__contact input,.booking-card__contact textarea{width:100%;padding:12px 16px;border:1px solid #b0b0b0;border-radius:8px;font-size:16px}.booking-card__submit{display:flex;flex-direction:column;gap:8px;align-items:center}button.button--gradient{background:var(--brand-gradient);color:#fff;border:none;width:100%;padding:14px 24px;border-radius:100px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}button.button--gradient:hover{opacity:.9}.booking-card__disclaimer{font-size:13px;color:#717171;margin-top:8px}.booking-mobile-bar{display:none}@media(max-width:768px){.hero__booking .booking-card-wrapper{position:static}.booking-mobile-bar{display:flex;justify-content:space-between;align-items:center;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e2e8f0;padding:16px 24px;z-index:5000}.booking-card-wrapper.has-selected-stay .booking-mobile-bar,.booking-card-wrapper.is-drawer-open .booking-mobile-bar{display:none}.booking-mobile-bar__price{display:flex;flex-direction:column}.booking-mobile-bar__price strong{font-size:16px;font-weight:600;color:#222}.booking-mobile-bar__price span{font-size:14px;color:#717171;text-decoration:underline}.booking-mobile-bar button.button--gradient{width:auto;padding:12px 24px}.booking-card{position:fixed;top:100vh;left:0;right:0;height:calc(100svh - 60px);background:#fff;z-index:1001;border-radius:12px 12px 0 0;box-shadow:0 -4px 16px #0000001a;transition:top .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding:24px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.booking-card.is-drawer-open{top:60px}.booking-drawer-header{display:flex;justify-content:flex-start;margin-bottom:24px}.booking-drawer-close{background:transparent;border:none;font-size:24px;color:#222;cursor:pointer}body.is-booking-drawer-open{overflow:hidden}.booking-drawer-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;opacity:0;pointer-events:none;transition:opacity .3s ease}.booking-drawer-overlay.is-active{opacity:1;pointer-events:auto}}.booking-input-row[data-guest-picker]{position:relative}.booking-guest-display{display:flex;align-items:center;justify-content:space-between;width:100%}.booking-guest-display strong{font-size:14px;color:#222;font-weight:400}.booking-guest-popover{position:absolute;top:100%;right:0;width:320px;background:#fff;border-radius:16px;box-shadow:0 8px 28px #00000026;padding:16px;z-index:100;margin-top:8px;border:1px solid #ebebeb}@media(min-width:769px){.booking-drawer-mobile-header{display:none!important}}.booking-guest-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #ebebeb}.booking-guest-row:last-of-type{border-bottom:none}.booking-guest-info{display:flex;flex-direction:column;gap:4px}.booking-guest-info strong{font-size:16px;color:#222;font-weight:600}.booking-guest-info span{font-size:14px;color:#717171}.booking-guest-link{font-size:14px;color:#222;text-decoration:underline;font-weight:600}.booking-guest-controls{display:flex;align-items:center;gap:16px}.booking-guest-controls span{font-size:16px;color:#222;width:12px;text-align:center}.booking-guest-btn{width:32px;height:32px;border-radius:50%;border:1px solid #b0b0b0;background:transparent;display:flex;align-items:center;justify-content:center;color:#717171;cursor:pointer}.booking-guest-btn svg{display:block;width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:4;overflow:visible}.booking-guest-btn:hover:not(:disabled){border-color:#222;color:#222}.booking-guest-btn:disabled{opacity:.3;cursor:not-allowed}.booking-guest-notice{font-size:12px;color:#717171;margin-top:16px;line-height:1.4}.booking-guest-footer{display:flex;justify-content:flex-end;margin-top:16px}.booking-guest-footer button{background:transparent;border:none;font-size:16px;font-weight:600;text-decoration:underline;color:#222;cursor:pointer}.zr-calendar-popover{width:min(800px,calc(100vw - 2rem));border-radius:16px;padding:24px}.zr-calendar__top{display:none!important}.zr-calendar__premium-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.zr-calendar__premium-header h2{font-size:26px;font-weight:600;color:#222;margin:0 0 4px}.zr-calendar__premium-header p{font-size:14px;color:#717171;margin:0}.zr-calendar__premium-nav{display:flex;align-items:center;gap:16px}.zr-calendar__months{display:flex;gap:32px}@media(max-width:768px){.zr-calendar__months{flex-direction:column}}.zr-calendar__month h3{text-align:center;font-size:16px;font-weight:600;margin-bottom:16px}.zr-calendar__day.is-start,.zr-calendar__day.is-end{background:#222!important;color:#fff!important;border-radius:50%!important}.zr-calendar__day.is-range{background:#f7f7f7!important;border-radius:0!important}.zr-calendar__day.is-start.is-range{border-radius:50% 0 0 50%!important}.zr-calendar__day.is-end.is-range{border-radius:0 50% 50% 0!important}.zr-calendar__footer{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;border-top:none}.zr-calendar__footer button[data-calendar-clear]{text-decoration:underline;color:#222;font-weight:600;background:transparent;border:none;font-size:14px;cursor:pointer}.zr-calendar__footer .button--dark{background:#222;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer}[data-quote-card][hidden],[data-quote-empty][hidden],[data-quote-breakdown][hidden]{display:none!important}.guide-page--premium{background:#f7f7f7}.guide-hero--premium{width:min(1180px,calc(100% - 2rem));display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:clamp(1rem,4vw,2rem);align-items:end;padding:clamp(2.2rem,6vw,4.8rem) 0 clamp(1rem,3vw,1.8rem)}.guide-hero--premium h1{margin-bottom:.8rem;font-size:clamp(2.35rem,6vw,4.4rem)}.guide-hero--premium .guide-hero__copy>p:not(.eyebrow){max-width:700px;font-size:clamp(1.03rem,2vw,1.22rem)}.guide-hero__proof{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.guide-hero__proof span{display:inline-flex;align-items:center;gap:.4rem;min-height:38px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);padding:.42rem .65rem;font-size:.86rem;font-weight:820}.guide-hero-card--support{border-radius:22px;padding:1.1rem;background:var(--white);box-shadow:0 14px 34px #0f172a14}.guide-hero-card--support p{margin:0;font-size:.92rem}.guide-shell--premium{width:min(1180px,calc(100% - 2rem))}.guide-room-switcher{position:sticky;top:72px;z-index:22;display:flex;align-items:center;gap:.65rem;overflow-x:auto;padding:.65rem 0;background:#f7f7f7eb;backdrop-filter:blur(18px);scroll-padding-inline:1rem;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.guide-room-switcher::-webkit-scrollbar{display:none}.guide-room-switcher__heading{min-width:max-content;display:grid;gap:.08rem;padding-right:.35rem}.guide-room-switcher__heading span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.guide-room-switcher__heading strong{font-size:.95rem}.guide-room-pill{min-width:min(260px,76vw);display:grid;grid-template-columns:54px minmax(0,1fr);gap:.65rem;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);padding:.35rem .8rem .35rem .35rem;cursor:pointer;text-align:left}.guide-room-pill img{width:54px;height:54px;border-radius:999px}.guide-room-pill span{min-width:0;display:grid;gap:.05rem}.guide-room-pill strong,.guide-room-pill small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-room-pill strong{font-size:.92rem}.guide-room-pill small{color:var(--muted);font-size:.76rem;font-weight:760}.guide-room-pill.is-active{border-color:#1e34e68c;box-shadow:inset 0 0 0 1px #1e34e63d,0 8px 22px #0f172a14}.guide-room--premium{padding-top:.85rem}.guide-room-hero{display:grid;grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);gap:clamp(1rem,4vw,2rem);align-items:stretch;margin-bottom:1rem;border:1px solid var(--line);border-radius:24px;background:var(--white);padding:.75rem;box-shadow:0 10px 28px #0f172a0f}.guide-room-hero__media img{width:100%;height:100%;min-height:300px;border-radius:18px}.guide-room-hero__copy{display:grid;align-content:center;gap:.55rem;padding:clamp(.4rem,3vw,1.5rem)}.guide-room-hero__copy h2,.guide-room-hero__copy p{margin:0}.guide-pass-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:1rem;margin-bottom:1rem}.guide-pass-card,.guide-unlock-card,.guide-quick-card,.guide-app-card{border:1px solid var(--line);border-radius:22px;background:var(--white);box-shadow:0 10px 30px #0f172a0f}.guide-pass-card,.guide-unlock-card,.guide-quick-card{display:grid;align-content:start;gap:1rem;padding:1rem}.guide-pass-card{border-color:#1e34e638}.guide-unlock-card{border-color:#22c55e40}.guide-quick-card{grid-column:1 / -1}.guide-unlock-card p,.guide-unlock-card small{margin:0;color:var(--muted)}.guide-otp-field,.guide-pin-field{display:grid;gap:.38rem}.guide-pin-field[hidden],.guide-otp-field[hidden],.guide-otp-field input[type=hidden]{display:none}.guide-otp-field span,.guide-pin-field span{color:var(--ink);font-size:.82rem;font-weight:900}.guide-otp-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.42rem}.guide-otp-field input,.guide-pin-field input{min-height:52px;width:100%;border:1px solid var(--line);border-radius:16px;background:#fbfbfb;color:var(--ink);font:inherit;font-weight:850;outline:none;padding:.8rem .95rem}.guide-otp-boxes input{aspect-ratio:1;min-height:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:clamp(1.12rem,5vw,1.45rem);text-align:center}.guide-otp-field input:focus,.guide-pin-field input:focus{border-color:#1e34e699;box-shadow:0 0 0 4px #1e34e61f;background:var(--white)}.guide-mode-link{width:max-content;border:0;background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-size:.88rem;font-weight:850;padding:.15rem 0;text-decoration:underline;text-underline-offset:.18em}.guide-mode-link:hover{color:var(--sea-dark)}.guide-unlock-card .button{width:100%}.guide-unlock-card .button:disabled{cursor:not-allowed;opacity:.64}.guide-unlock-card__status{min-height:1.25rem;font-weight:850}.guide-unlock-card__status[data-tone=success]{color:#047857}.guide-unlock-card__status[data-tone=error]{color:#b42318}.guide-unlock-card__status[data-tone=loading]{color:var(--sea-dark)}.guide-room.is-unlocked .guide-unlock-card{border-color:#04785752;background:linear-gradient(180deg,#fff,#f2fbf7)}.guide-unlock-card.is-rate-limited{border-color:#b4231847;background:linear-gradient(180deg,#fff,#fff7f7)}.guide-pass-card__body{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1rem;align-items:center}.guide-pass-card__body img{width:190px;height:190px;border:1px solid var(--line);border-radius:18px;background:var(--white);padding:.65rem;object-fit:contain}.guide-pass-card__body p{margin-bottom:.85rem}.guide-pass-card__actions{display:flex;flex-wrap:wrap;gap:.55rem}.guide-pass-card__actions .button{min-height:44px;padding:.62rem .9rem}.guide-action-grid--premium{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.guide-action-grid--premium .guide-action-card{min-height:76px;border-radius:18px;box-shadow:none}.guide-action-card--accent{border-color:#1e34e647;background:#f5f7ff}.guide-jump-list{position:sticky;top:72px;z-index:18;display:flex;gap:.45rem;overflow-x:auto;margin:0 0 1rem;padding:.55rem 0;background:#f7f7f7e6;backdrop-filter:blur(18px);flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.guide-jump-list::-webkit-scrollbar{display:none}.guide-jump-list span,.guide-jump-list a{min-width:max-content;min-height:40px;display:inline-flex;align-items:center;gap:.38rem;border:1px solid var(--line);border-radius:999px;background:var(--white);padding:.5rem .72rem;font-size:.83rem;font-weight:850}.guide-jump-list span{color:var(--muted)}.guide-jump-list a:hover{border-color:#1e34e673;color:var(--sea-dark)}.guide-main-grid .guide-app-card{padding:1.05rem}.guide-wifi-card,.guide-key-card,.guide-arrival-card{border-color:#1e34e62e}.guide-card-heading{align-items:flex-start}.guide-card-heading h3{font-size:1.1rem}.guide-secret-row{border-radius:16px}.guide-secret-row button,.guide-mini-link,.local-list a{border-radius:999px}.guide-emergency-card{border-color:#080db538}.guide-faq-card{border-color:#0e74902e}.guide-faq-list{display:grid;gap:.55rem}.guide-faq-item{border-bottom:1px solid var(--line);padding:.2rem 0}.guide-faq-item:last-child{border-bottom:0}.guide-faq-item summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--ink);cursor:pointer;font-size:1rem;font-weight:900;list-style:none}.guide-faq-item summary::-webkit-details-marker{display:none}.guide-faq-item summary:after{content:"+";width:28px;height:28px;display:inline-grid;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:1.05rem;font-weight:900}.guide-faq-item[open] summary:after{content:"-";border-color:#1e34e659;color:var(--sea-dark)}.guide-faq-item p{margin:0 0 .85rem;color:var(--muted);font-size:.96rem;line-height:1.65}.guide-emergency-card .guide-card-heading svg{color:var(--sea-dark)}@media(max-width:900px){.guide-hero--premium,.guide-room-hero,.guide-pass-grid{grid-template-columns:1fr}.guide-hero-card--support{order:-1}.guide-room-switcher{top:64px}.guide-room-switcher__heading{display:none}.guide-jump-list{top:64px}}@media(max-width:620px){.guide-page--premium{background:var(--white)}.guide-hero--premium,.guide-shell--premium{width:min(100% - 1rem,1180px)}.guide-hero--premium{padding-top:1.1rem;gap:.75rem}.guide-hero--premium h1{font-size:clamp(2.05rem,11vw,3rem)}.guide-hero__proof{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.15rem}.guide-hero__proof span{min-width:max-content}.guide-hero-card--support,.guide-room-hero,.guide-pass-card,.guide-unlock-card,.guide-quick-card,.guide-app-card{border-radius:18px}.guide-room-switcher{top:58px;margin-inline:-.5rem;padding-inline:.5rem}.guide-room-pill{min-width:82vw}.guide-room-hero{padding:.55rem}.guide-room-hero__media img{min-height:230px}.guide-room-hero__copy{padding:.55rem .45rem .75rem}.guide-pass-card__body{grid-template-columns:1fr}.guide-pass-card__body img{width:min(230px,76vw);height:min(230px,76vw);justify-self:center}.guide-pass-card__actions,.guide-pass-card__actions .button{width:100%}.guide-action-grid--premium{grid-template-columns:1fr 1fr}.guide-otp-boxes{gap:.34rem}.guide-action-grid--premium .guide-action-card{min-height:72px;padding-inline:.45rem}.guide-jump-list{top:58px;margin-inline:-.5rem;padding-inline:.5rem}.guide-main-grid{grid-template-columns:1fr}.guide-card--wide{grid-column:auto}}.booking-card__submit button.button--gradient{background:var(--brand-gradient);color:#fff!important;border:none!important;width:100%;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.booking-card__submit button.button--gradient:hover{opacity:.9}[data-calendar-popover][hidden],[data-guest-popover][hidden]{display:none!important}.booking-input-grid .date-trigger{border:none!important;border-radius:0!important;min-height:58px!important}.booking-input-grid .date-trigger:first-child{border-right:1px solid #b0b0b0!important}.landing-search{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem;width:min(1120px,100%);margin:0 auto;padding:.45rem;border:1px solid rgba(255,255,255,.76);border-radius:999px;background:#fffffffa;color:var(--ink);box-shadow:0 24px 70px #14181533;text-align:left}.landing-search__fields{display:grid;grid-template-columns:minmax(210px,1.05fr) minmax(330px,1.45fr) minmax(200px,.9fr);align-items:stretch;min-width:0}.landing-search .booking-input-row{position:relative;display:flex;min-width:0;border:0}.landing-search .booking-input-row:not(:last-of-type):after{content:"";position:absolute;top:18px;right:0;bottom:18px;width:1px;background:#ddd}.landing-search__dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-column:auto;gap:0}.landing-search .booking-input-cell{justify-content:center;min-width:0;min-height:72px!important;padding:.82rem 1.25rem;border:0!important;border-radius:999px!important;background:transparent;color:var(--ink);transition:background .16s ease}.landing-search .booking-input-cell:hover,.landing-search .date-trigger.is-active{background:#f7f7f7}.landing-search .booking-input-cell span{margin:0 0 .16rem;color:#222;font-size:.78rem;font-weight:850;letter-spacing:0;text-transform:none}.landing-search .date-trigger span{text-transform:uppercase;font-size:.68rem}.landing-search .booking-input-cell strong,.landing-search .booking-guest-display strong{min-width:0;color:#5f5f5f;font-size:1.02rem;font-weight:520;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-search .date-trigger.has-value strong{color:#222;font-weight:650}.landing-search .date-trigger:first-of-type:after{content:"";position:absolute;top:18px;right:0;bottom:18px;width:1px;background:#ddd}.landing-search .booking-guest-display{min-width:0;gap:.7rem}.landing-search .booking-guest-display svg{flex:0 0 auto;width:16px;height:16px}.landing-search__submit{display:grid;place-items:center;width:68px;min-width:68px;height:68px;border:0;border-radius:999px;background:var(--brand-gradient);color:#fff;cursor:pointer}.landing-search__submit svg{width:24px;height:24px;stroke-width:3}.landing-search__result{grid-column:1 / -1;position:absolute;left:50%;top:calc(100% + .55rem);transform:translate(-50%);min-width:min(420px,calc(100vw - 2rem));margin:0;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.65rem 1rem;box-shadow:0 12px 34px #14181529}.landing-search .zr-calendar__day{gap:0;font-size:1rem}.landing-search--compact{width:min(860px,100%);padding:.32rem;border-color:var(--line);box-shadow:0 10px 30px #1418151c}.landing-search--compact .landing-search__fields{grid-template-columns:minmax(150px,.95fr) minmax(250px,1.35fr) minmax(145px,.75fr)}.landing-search--compact .booking-input-row:not(:last-of-type):after,.landing-search--compact .date-trigger:first-of-type:after{top:12px;bottom:12px}.landing-search--compact .booking-input-cell{flex-direction:row!important;min-height:54px!important;padding:.52rem .95rem}.landing-search--compact .booking-input-cell span{font-size:.66rem}.landing-search--compact .date-trigger span{font-size:.62rem}.landing-search--compact .booking-input-cell strong,.landing-search--compact .booking-guest-display strong{font-size:.92rem}.landing-search--compact .landing-search__submit{width:54px;min-width:54px;height:54px}.landing-search--compact .landing-search__submit svg{width:21px;height:21px}@media(min-width:861px){.hero--booking{grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;gap:clamp(1.35rem,3vw,2.4rem);text-align:center}.hero--booking .hero__content{max-width:min(940px,100%)}.hero--booking .hero__content>p:not(.eyebrow){margin-inline:auto;max-width:760px}.hero--booking .hero__actions,.hero--booking .hero__proof{justify-content:center}.hero__booking{width:min(1120px,100%);margin-top:clamp(.4rem,1.4vw,1.15rem)}}@media(min-width:769px){.landing-search .zr-calendar-popover{position:absolute;top:calc(100% + .9rem);left:50%;right:auto;z-index:2000;width:min(860px,calc(100vw - 2rem));max-height:min(710px,calc(100svh - 8rem));overflow:auto;text-align:left;transform:translate(calc(-50% + var(--booking-popover-shift-x, 0px)))}.landing-search .booking-guest-popover{top:calc(100% + .9rem);right:0;z-index:2000;width:min(390px,calc(100vw - 2rem));text-align:left}.landing-search .zr-calendar__months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}@media(min-width:769px)and (max-width:980px){.landing-search{border-radius:28px}.landing-search__fields{grid-template-columns:1fr 1fr}.landing-search__destination{grid-column:1 / -1}.landing-search .booking-input-row:not(:last-of-type):after{display:none}}@media(max-width:768px){.search-page{--search-filter-top: 122px}.search-topbar{top:64px;padding:.52rem .75rem}.landing-search{grid-template-columns:1fr;gap:.7rem;width:min(520px,100%);border-radius:22px;padding:.7rem}.landing-search__fields{grid-template-columns:1fr;border:1px solid #dddddd;border-radius:16px;overflow:hidden}.landing-search .booking-input-row{border-bottom:1px solid #dddddd}.landing-search .booking-input-row:last-child{border-bottom:0}.landing-search .booking-input-row:after,.landing-search .date-trigger:first-of-type:after{display:none}.landing-search .booking-input-cell{min-height:62px!important;border-radius:0!important}.landing-search__submit{width:100%;height:52px;border-radius:14px}.landing-search__result{position:static;transform:none;min-width:0;border-radius:14px}.landing-search--compact{grid-template-columns:minmax(0,1fr) auto;gap:.3rem;width:100%;padding:.3rem;border-radius:999px}.landing-search--compact .landing-search__fields{grid-template-columns:minmax(0,1fr) minmax(88px,.72fr);border:0;border-radius:999px;overflow:visible}.landing-search--compact .landing-search__destination{display:none}.landing-search--compact .landing-search__dates{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.landing-search--compact .booking-input-row{border-bottom:0}.landing-search--compact .booking-input-row:not(:last-of-type):after,.landing-search--compact .date-trigger:first-of-type:after{display:block;top:10px;bottom:10px}.landing-search--compact .booking-input-cell{min-height:46px!important;padding:.42rem .62rem;border-radius:999px!important}.landing-search--compact .booking-input-cell span{font-size:.56rem}.landing-search--compact .booking-input-cell strong,.landing-search--compact .booking-guest-display strong{font-size:.76rem}.landing-search--compact .booking-guest-display svg{display:none}.landing-search--compact .landing-search__submit{width:46px;min-width:46px;height:46px;border-radius:999px}.landing-search--compact .landing-search__result{grid-column:1 / -1}.landing-search .zr-calendar-popover,.landing-search .booking-guest-popover{position:fixed!important;inset:0!important;width:100vw!important;max-height:none!important;border-radius:0!important;overflow-y:auto!important;z-index:20000!important;background:#fff!important;transform:none!important;margin:0!important;box-shadow:none!important}.landing-search .zr-calendar-popover{padding-bottom:max(24px,env(safe-area-inset-bottom))!important}.landing-search .booking-guest-popover{padding:0 16px max(24px,env(safe-area-inset-bottom))!important}.landing-search .booking-drawer-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:16px;margin:0 -16px 16px;border-bottom:1px solid #ebebeb;background:#fff;position:sticky;top:0;z-index:10}.landing-search .zr-calendar-popover .booking-drawer-mobile-header{margin:0 0 16px}}@media(max-width:620px){.site-header,.site-header--with-search{grid-template-columns:minmax(0,1fr) auto;width:100%}.site-header--with-search .site-header__search{grid-column:1 / -1;min-width:0;width:100%}.site-header__search .landing-search--compact{width:calc(100vw - 1.7rem)!important;max-width:calc(100vw - 1.7rem)!important;min-width:0!important;overflow:hidden;padding:0 .35rem 0 .7rem!important}.site-header__search .landing-search--compact .landing-search__fields{flex:1 1 auto!important;min-width:0!important;width:auto!important}.site-header__search .landing-search--compact .landing-search__destination{display:flex!important;min-width:0!important;flex:0 1 128px!important;max-width:128px}.site-header__search .landing-search--compact .landing-search__dates{flex:0 1 96px!important;min-width:0!important;max-width:96px}.site-header__search .landing-search--compact .landing-search__dates:after,.site-header__search .landing-search--compact .landing-search__guests{display:none!important}.site-header__search .landing-search--compact .booking-input-cell{padding:0 .55rem!important}.site-header__search .landing-search--compact .destination-select{max-width:104px;min-width:0;padding-right:.85rem}.site-header__search .landing-search--compact .landing-search__submit{display:flex!important;flex:0 0 34px;margin-left:.25rem!important}.landing-page,.landing-hero,.landing-hero__copy,.landing-hero__booking,.landing-hero__booking .landing-search,.landing-hero__booking .landing-search__fields{min-width:0;max-width:100%}.landing-hero{width:100%;padding-inline:.75rem}.landing-hero h1,.landing-hero__subtitle{width:100%!important;max-width:100%}.landing-hero__proof{flex-wrap:wrap;justify-content:center;overflow:visible}.landing-hero__proof span{flex:1 1 100%;justify-content:center;min-width:0;text-align:center}.landing-hero__booking .landing-search{width:calc(100vw - 1.5rem)!important;max-width:calc(100vw - 1.5rem)!important}}.zr-calendar__premium-nav button{width:32px;height:32px;border-radius:50%;border:1px solid #b0b0b0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;color:#222;transition:all .2s}.zr-calendar__premium-nav button:hover{background:#f7f7f7;border-color:#222}.booking-card__total-price[data-quote-total-btn]{background:transparent;border:none;padding:0;font-size:1.5rem;font-weight:700;color:#222;cursor:pointer;display:block}.booking-price-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:30000;display:flex;align-items:flex-end;justify-content:center}[data-quote-modal][hidden]{display:none!important}.booking-price-modal{background:#fff;width:100%;max-width:480px;border-radius:16px 16px 0 0;padding:24px;box-shadow:0 8px 28px #00000026;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.booking-price-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.booking-price-modal__header h3{font-size:1.25rem;font-weight:700;margin:0}.booking-price-modal__close{background:transparent;border:none;font-size:24px;cursor:pointer;padding:8px;line-height:1}.booking-price-breakdown{display:flex;flex-direction:column;gap:16px}.booking-price-breakdown__row{display:flex;justify-content:space-between;font-size:1rem;color:#222}.booking-price-breakdown__row[hidden]{display:none!important}.booking-price-breakdown__row--total{font-weight:700;font-size:1.15rem}.booking-price-modal__footer{margin-top:24px;font-size:.9rem;color:#717171}@media(min-width:768px){.booking-price-modal-overlay{align-items:center}.booking-price-modal{border-radius:16px;animation:scaleUp .2s ease-out}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}}.booking-input-cell.date-trigger{position:relative!important;z-index:50!important;pointer-events:auto!important}.landing-search--compact{max-width:fit-content!important;margin:0 auto!important;border:1px solid #dddddd!important;box-shadow:0 1px 2px #00000014,0 4px 12px #0000000d!important;padding:0 .5rem 0 1rem!important;border-radius:40px!important;background:#fff!important;height:52px!important;display:grid!important;align-items:center!important;grid-template-columns:1fr auto!important;gap:0!important}.landing-search--compact .landing-search__fields{display:flex!important;align-items:center!important;height:100%!important;width:100%!important;border:none!important}.landing-search--compact .booking-input-row{display:flex!important;align-items:center!important;height:100%!important;border:none!important}.landing-search--compact .booking-input-cell{background:transparent!important;border:none!important;padding:0 16px!important;height:100%!important;min-height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important}.landing-search--compact .booking-input-cell span,.landing-search--compact .booking-guest-display svg{display:none!important}.landing-search--compact .booking-input-cell strong,.landing-search--compact .booking-guest-display strong{font-size:.9rem!important;font-weight:500!important;color:#222!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important}.landing-search--compact .landing-search__destination:after,.landing-search--compact .landing-search__dates:after{content:""!important;display:block!important;width:1px!important;height:24px!important;background-color:#ddd!important;position:static!important;margin:0 8px!important}.landing-search--compact .landing-search__dates{display:flex!important;align-items:center!important;justify-content:center!important}.landing-search--compact .date-trigger:first-of-type:after{content:"-"!important;display:inline-block!important;margin:0 4px!important;color:#222!important;font-weight:500!important;position:static!important;width:auto!important;background:transparent!important}.landing-search--compact .date-trigger:first-of-type:after{display:none!important}.landing-search--compact .date-trigger:first-of-type~.date-trigger{display:none!important}.landing-search--compact .landing-search__submit{background:var(--brand-gradient)!important;width:34px!important;min-width:34px!important;height:34px!important;border-radius:50%!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-left:8px!important}.landing-search--compact .landing-search__submit svg{width:14px!important;height:14px!important;stroke:#fff!important;stroke-width:3!important}@media(max-width:768px){.landing-search--compact .landing-search__destination{display:flex!important}.landing-search--compact{padding:0 .4rem 0 .8rem!important;height:48px!important}.landing-search--compact .booking-input-cell{padding:0 10px!important}.landing-search--compact .booking-input-cell strong,.landing-search--compact .booking-guest-display strong{font-size:.85rem!important}}.landing-search--compact .booking-input-cell:hover,.landing-search--compact .date-trigger.is-active{background:transparent!important}.landing-search--compact .date-trigger:first-of-type{padding-right:4px!important}.landing-search--compact .date-trigger:last-of-type{padding-left:4px!important}.destination-select{appearance:none;background-color:transparent;border:none;color:#222;font-size:.9rem;font-weight:500;padding:0 16px 0 0;cursor:pointer;outline:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23222222%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 2px center;background-size:10px auto}.destination-select:hover{color:#000}@media(max-width:768px){body:has(main.room-page-main) .site-header{display:none!important}main.room-page-main{display:flex;flex-direction:column;padding-top:0!important}main.room-page-main .room-photo-tour{order:-1;width:100vw!important;max-width:100vw!important;margin-left:calc(-50vw + 50%)!important;margin-top:0!important;margin-bottom:1.5rem!important;border-radius:0!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;height:65vh!important;gap:0!important}main.room-page-main .room-photo-tour::-webkit-scrollbar{display:none}main.room-page-main .room-photo-tour .room-photo-tour__tile{border-radius:0!important;flex:0 0 100vw!important;width:100vw!important;min-width:100vw!important;height:100%!important;scroll-snap-align:center;position:relative;border:none!important;padding:0!important;margin:0!important}main.room-page-main .room-photo-tour .room-photo-tour__tile img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important}main.room-page-main .room-photo-tour .room-photo-tour__tile span,main.room-page-main .room-photo-tour .room-photo-tour__tile strong{display:none!important}.room-photo-counter{display:block;order:-1;align-self:flex-end;margin-top:-3.5rem!important;margin-right:1.5rem!important;margin-bottom:2rem!important;background:#000000a6;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500;z-index:10;pointer-events:none;letter-spacing:.05em}.room-mobile-header{position:absolute;top:0;left:50%;transform:translate(-50%);width:100vw;max-width:100vw;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,4vw,5rem);pointer-events:none}.room-mobile-header__back,.room-mobile-header__btn{pointer-events:auto;background:#fffffff2;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#222;box-shadow:0 1px 3px #0000001a;cursor:pointer;text-decoration:none;transition:transform .2s}.room-mobile-header__back:active,.room-mobile-header__btn:active{transform:scale(.95)}.room-mobile-header__actions{display:flex;gap:.75rem}.room-hero{margin-top:0!important;padding-top:0!important}.room-hero__copy h1{font-size:1.75rem!important;margin-bottom:.5rem!important;line-height:1.2!important}.room-hero__copy .eyebrow{display:none!important}.zr-calendar-popover,.booking-guest-popover{position:fixed!important;inset:0!important;width:100vw!important;max-width:100vw!important;height:100svh!important;max-height:100svh!important;margin:0!important;padding:0!important;border-radius:0!important;box-shadow:none!important;border:none!important;overflow-y:auto!important}.booking-guest-popover{padding:0 16px max(24px,env(safe-area-inset-bottom))!important}.zr-calendar-popover{padding-bottom:max(24px,env(safe-area-inset-bottom))!important}.zr-calendar-popover .zr-calendar__premium-header,.zr-calendar-popover .zr-calendar__months,.zr-calendar-popover .zr-calendar__footer{padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right))}.zr-calendar-popover .zr-calendar__premium-header{gap:1rem}.zr-calendar-popover .zr-calendar__premium-nav{flex-shrink:0}}@media(min-width:769px){.room-mobile-header,.room-photo-counter{display:none!important}}#gallery-modal.things-modal{width:100vw!important;max-width:100vw!important;height:100svh!important;max-height:100svh!important;margin:0!important;border-radius:0!important}#gallery-modal .things-modal__panel{width:100vw!important;max-width:100vw!important;border-radius:0!important;height:100svh!important;max-height:100svh!important;border:none!important;background:#fff}#gallery-modal .things-modal__content{width:min(1180px,calc(100vw - 2rem));padding:clamp(4.25rem,6vw,5rem) clamp(1rem,4vw,2.5rem) 3rem!important;max-width:none;margin:0 auto;gap:clamp(1rem,2vw,1.6rem)!important}#gallery-modal .things-modal__close{position:fixed;top:max(.85rem,env(safe-area-inset-top));left:max(.85rem,env(safe-area-inset-left));z-index:20;background:#ffffffeb;box-shadow:0 10px 28px #0f172a1f}#gallery-modal .room-photo-modal__header{gap:.3rem;padding-bottom:clamp(.9rem,2vw,1.25rem)}#gallery-modal .room-photo-modal__header h2{font-size:clamp(2.25rem,6vw,3.45rem);line-height:.98}#gallery-modal .room-photo-modal__header p{font-size:1rem}#gallery-modal .room-photo-modal__space{gap:.75rem}#gallery-modal .room-photo-modal__space h3{font-size:clamp(1.15rem,2vw,1.55rem)}#gallery-modal .room-photo-modal__space>div,#gallery-modal .room-photo-modal__grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-auto-flow:dense;gap:.65rem!important;align-items:stretch}#gallery-modal .room-photo-modal figure{position:relative;grid-column:span 2;isolation:isolate;overflow:hidden;margin:0!important;width:100%;aspect-ratio:4 / 3;border-radius:16px;background:#f4f4f2}#gallery-modal .room-photo-modal figure:first-child,#gallery-modal .room-photo-modal .room-photo-modal__figure.is-featured{grid-column:span 3;aspect-ratio:16 / 10}#gallery-modal .room-photo-modal figure:nth-child(7n+5){grid-column:span 3;aspect-ratio:16 / 10}#gallery-modal .room-photo-modal figure:after{position:absolute;inset:auto 0 0;z-index:0;height:48%;content:"";background:linear-gradient(180deg,#0000,#00000061);pointer-events:none}#gallery-modal .room-photo-modal figure.is-photo-missing{display:grid;place-items:center;border:1px dashed var(--line)}#gallery-modal .room-photo-modal figure.is-photo-missing:before{content:attr(data-missing-label);max-width:16ch;color:var(--muted);font-size:.84rem;font-weight:760;line-height:1.25;text-align:center}#gallery-modal .room-photo-modal figure.is-photo-missing:after,#gallery-modal .room-photo-modal figure.is-photo-missing img{display:none}#gallery-modal .room-photo-modal img{display:block;border-radius:inherit!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .18s ease,filter .18s ease}#gallery-modal .room-photo-modal img:hover{filter:brightness(.92);transform:scale(1.025)}#gallery-modal .room-photo-modal figcaption{position:absolute;inset:auto 0 0;z-index:1;padding:1.6rem .75rem .65rem;color:#fff;font-size:.82rem;font-weight:760;line-height:1.2;text-shadow:0 1px 8px rgba(0,0,0,.45)}@media(max-width:768px){#gallery-modal .things-modal__content{width:100%;padding:4.15rem .85rem 2rem!important}#gallery-modal .room-photo-modal{gap:1.15rem}#gallery-modal .room-photo-modal__header{padding-bottom:.95rem}#gallery-modal .room-photo-modal__header h2{font-size:clamp(2.3rem,12vw,3.1rem)}#gallery-modal .room-photo-modal__space{gap:.6rem}#gallery-modal .room-photo-modal__space>div,#gallery-modal .room-photo-modal__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem!important}#gallery-modal .room-photo-modal figure,#gallery-modal .room-photo-modal figure:nth-child(7n+5){grid-column:span 1;aspect-ratio:1 / 1;border-radius:14px}#gallery-modal .room-photo-modal figure:first-child,#gallery-modal .room-photo-modal .room-photo-modal__figure.is-featured{grid-column:1 / -1;aspect-ratio:16 / 10}#gallery-modal .room-photo-modal img{height:100%!important;max-height:none!important}#gallery-modal .room-photo-modal figcaption{padding:1.25rem .55rem .5rem;font-size:.76rem}}@media(max-width:380px){#gallery-modal .things-modal__content{padding-inline:.65rem!important}#gallery-modal .room-photo-modal__space>div,#gallery-modal .room-photo-modal__grid{gap:.45rem!important}}body.lightbox-open{overflow:hidden!important}.lightbox-modal{width:100vw!important;max-width:100vw!important;height:100svh!important;max-height:100svh!important;margin:0!important;padding:0;border:none!important;background:transparent!important;z-index:9999;outline:none}.lightbox-modal::backdrop{background:#fffffff2;backdrop-filter:blur(8px)}.lightbox-modal__overlay{position:absolute;inset:0;background:#fffffff2}.lightbox-modal__container{position:relative;display:flex;flex-direction:column;height:100%;width:100%;z-index:1}.lightbox-modal__header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;z-index:10;pointer-events:none}.lightbox-modal__counter{color:var(--foreground);font-size:1rem;font-weight:500;letter-spacing:.05em;pointer-events:auto}.lightbox-modal__close{background:#0000000d;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--foreground);cursor:pointer;pointer-events:auto;transition:background .2s,transform .2s}.lightbox-modal__close:hover{background:#0000001a;transform:scale(1.05)}.lightbox-modal__nav{position:absolute;top:50%;transform:translateY(-50%);background:#0000000d;border:none;border-radius:50%;width:52px;height:52px;display:flex;align-items:center;justify-content:center;color:var(--foreground);cursor:pointer;z-index:10;transition:background .2s,transform .2s}.lightbox-modal__nav:hover{background:#0000001a;transform:translateY(-50%) scale(1.05)}.lightbox-modal__nav--prev{left:1.5rem}.lightbox-modal__nav--next{right:1.5rem}.lightbox-modal__content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4rem 4rem 2rem;width:100%;height:100%}.lightbox-modal__content img{max-width:100%;max-height:calc(100vh - 120px);object-fit:contain;border-radius:8px;box-shadow:0 4px 30px #0000001a;transition:opacity .3s ease}.lightbox-modal__caption{color:var(--muted);margin-top:1.5rem;font-size:1rem;font-weight:500;text-align:center}@media(max-width:768px){.lightbox-modal__nav{display:none}.lightbox-modal__content{padding:4rem 1rem 1rem}.lightbox-modal__content img{max-height:calc(100vh - 100px)}.lightbox-modal__header{padding:1rem}}.reservation-modal__header-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #ebebeb;position:sticky;top:0;background:var(--white);z-index:2}.reservation-modal__back,.reservation-modal__close{background:transparent;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease;flex-shrink:0}.reservation-modal__back:hover,.reservation-modal__close:hover{background:#f5f5f5}.reservation-modal__back[hidden],.reservation-modal__close[hidden],.reservation-modal__step[hidden]{display:none!important}.reservation-modal__step{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.reservation-modal__step-scroll{flex:1;padding:1.25rem 1.25rem 0;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.reservation-modal__room-card{display:flex;gap:1rem;padding:1.25rem;background:#f7f7f7;border-radius:12px;border:1px solid #ebebeb;margin-bottom:1.25rem}.reservation-modal__room-card img{width:88px;height:72px;border-radius:8px;object-fit:cover;flex-shrink:0}.reservation-modal__room-info{display:flex;flex-direction:column;justify-content:center;gap:.3rem;min-width:0}.reservation-modal__room-info strong{font-size:1rem;color:#222;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reservation-modal__room-rating{display:flex;align-items:center;gap:4px;font-size:.85rem;color:#222;font-weight:600}.reservation-modal__summary-row{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;border-bottom:1px solid #ebebeb}.reservation-modal__summary-col{display:flex;flex-direction:column;gap:.2rem}.reservation-modal__summary-col>span{font-size:.88rem;font-weight:700;color:#717171;text-transform:uppercase;letter-spacing:.04em}.reservation-modal__summary-col>strong{font-size:1rem;color:#222;font-weight:600}.button--change{background:#f7f7f7;border:1px solid #dddddd;border-radius:8px;padding:.4rem .85rem;font-weight:600;color:#222;cursor:pointer;font-size:.875rem;transition:background .15s ease;white-space:nowrap}.button--change:hover{background:#ebebeb}.reservation-modal__breakdown[data-modal-breakdown]{background:#f7f7f7;border-radius:10px;padding:1rem;margin-top:-.25rem;margin-bottom:.25rem}.reservation-modal__cancellation{padding:1.25rem 0;border-bottom:1px solid #ebebeb}.reservation-modal__cancellation strong{display:block;font-size:.95rem;font-weight:700;color:#222;margin-bottom:.2rem}.reservation-modal__cancellation p{font-size:.9rem;color:#717171;line-height:1.5;margin:0}.reservation-modal__footer{flex-shrink:0;background:var(--white);border-top:1px solid #ebebeb;padding:.85rem 1.25rem max(1rem,calc(.85rem + env(safe-area-inset-bottom)));display:flex;flex-direction:column;align-items:center;gap:.6rem;z-index:2}.reservation-modal__footer .button,.reservation-modal__footer .button--primary{width:100%;max-width:420px;padding:1rem 1.5rem;font-size:1rem;text-align:center;justify-content:center}.reservation-modal__steps-bar{display:flex;gap:6px;width:100%;max-width:420px;margin-bottom:.75rem}.reservation-modal__step-indicator{flex:1;height:4px;border-radius:2px;background:#e0e0e0;transition:background .3s ease}.reservation-modal__step-indicator.is-active{background:var(--brand-gradient)}.reservation-modal__step-indicator.is-done{background:#222}.reservation-modal__footer{flex-direction:column;align-items:center;gap:0}.reservation-modal__footer button.button--gradient{width:100%;max-width:420px;padding:1rem 1.5rem;font-size:1rem;border-radius:12px}.reservation-modal__step.is-confirmed .reservation-modal__footer{display:none}.reservation-modal__step.is-confirmed .reservation-modal__step-scroll{display:grid;align-items:center;padding:1.5rem}.reservation-modal__success{width:min(100%,520px);margin:0 auto;padding:clamp(1rem,3vw,1.5rem) 0 0}.reservation-modal__success-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#f7f7f7;color:#008a05;margin-bottom:1.25rem}.reservation-modal__success-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.reservation-modal__success-eyebrow{margin:0 0 .45rem;color:#717171;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.reservation-modal__success h2{margin:0;color:#222;font-size:clamp(1.75rem,5vw,2.35rem);line-height:1.04;letter-spacing:0}.reservation-modal__success>p:not(.reservation-modal__success-eyebrow),.reservation-modal__success-next p{margin:.65rem 0 0;color:#5f5f5f;font-size:1rem;line-height:1.5}.reservation-modal__success-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:1.5rem;border:1px solid #dddddd;border-radius:18px;overflow:hidden;background:#fff}.reservation-modal__success-summary>div{min-width:0;padding:1rem;border-bottom:1px solid #ebebeb}.reservation-modal__success-summary>div:nth-child(odd){border-right:1px solid #ebebeb}.reservation-modal__success-summary>div:nth-last-child(-n+2){border-bottom:0}.reservation-modal__success-summary>div[hidden]{display:none}.reservation-modal__success-summary span{display:block;color:#717171;font-size:.72rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.reservation-modal__success-summary strong{display:block;margin-top:.24rem;color:#222;font-size:.98rem;font-weight:700;overflow-wrap:anywhere}.reservation-modal__success-next{margin-top:1rem;border:1px solid #ebebeb;border-radius:16px;background:#f7f7f7;padding:1rem}.reservation-modal__success-next strong{display:block;color:#222;font-size:1rem;font-weight:750}.reservation-modal__success-close{width:100%;min-height:52px;margin-top:1.25rem;border:1px solid #222;border-radius:12px;background:#222;color:#fff;font-size:1rem;font-weight:750;cursor:pointer}.reservation-modal__success-close:hover{background:#000}@media(max-width:520px){.reservation-modal__step.is-confirmed .reservation-modal__step-scroll{align-items:start;padding:1.25rem}.reservation-modal__success{padding-top:.5rem}.reservation-modal__success-summary{grid-template-columns:1fr}.reservation-modal__success-summary>div,.reservation-modal__success-summary>div:nth-child(odd){border-right:0}.reservation-modal__success-summary>div:last-child{border-bottom:0}}.price-breakdown-drawer{position:fixed;inset:0;z-index:30000;pointer-events:none;visibility:hidden}.price-breakdown-drawer.is-open{pointer-events:auto;visibility:visible}.price-breakdown-drawer__overlay{position:absolute;inset:0;background:#0006;opacity:0;transition:opacity .3s ease}.price-breakdown-drawer.is-open .price-breakdown-drawer__overlay{opacity:1}.price-breakdown-drawer__sheet{position:absolute;bottom:0;left:0;right:0;background:#fff;border-radius:20px 20px 0 0;padding:1.5rem 1.5rem max(1.5rem,env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);max-width:560px;margin:0 auto}.price-breakdown-drawer.is-open .price-breakdown-drawer__sheet{transform:translateY(0)}.price-breakdown-drawer__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.price-breakdown-drawer__header strong{font-size:1.1rem;font-weight:700;color:#222}.price-breakdown-drawer__close{background:transparent;border:none;font-size:1.1rem;cursor:pointer;color:#222;padding:.35rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.price-breakdown-drawer__close:hover{background:#f5f5f5}.price-breakdown-drawer__body{display:flex;flex-direction:column;gap:0}.price-breakdown-drawer__row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid #ebebeb;font-size:.95rem;color:#222}.price-breakdown-drawer__row span{color:#717171}.price-breakdown-drawer__row strong{font-weight:600;color:#222}.price-breakdown-drawer__row--total{border-bottom:none;padding-top:1rem;font-weight:700}.price-breakdown-drawer__row--total span,.price-breakdown-drawer__row--total strong{color:#222;font-weight:700;font-size:1rem}body:has(.reservation-float:not([hidden])){padding-bottom:90px}body:has(.reservation-weekly-upsell:not([hidden])){padding-bottom:145px}@media(max-width:640px){.reservation-float{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:.5rem .9rem}.reservation-weekly-upsell{left:1rem;right:1rem;bottom:calc(150px + env(safe-area-inset-bottom))}.reservation-float__main{grid-column:1;grid-row:1}.reservation-float__price{grid-column:2;grid-row:1;text-align:right}.reservation-float>button.button--gradient{grid-column:1 / -1;grid-row:2;width:100%}}@media(min-width:769px){.reservation-float{left:50%;right:auto;bottom:24px;width:max-content;min-width:600px;border-radius:100px;border:1px solid #dddddd;box-shadow:0 10px 40px #00000026;transform:translate(-50%);padding:12px 24px}.reservation-float__main{justify-self:start}body:has(.reservation-float:not([hidden])){padding-bottom:0}.reservation-float .button{border-radius:100px}.reservation-weekly-upsell{left:50%;right:auto;bottom:108px;width:max-content;min-width:500px;border-radius:100px;transform:translate(-50%)}}
