body.accom-page{background:#030303;color:#fff;font-family:var(--font-body, "Segoe UI", system-ui, sans-serif);--accent: #ddb58a;--accent-15: rgba(221, 181, 138, .15);--accent-25: rgba(221, 181, 138, .25);--glass: rgba(0, 0, 0, .5);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .16);--text-muted: rgba(255, 255, 255, .65);--text-dim: rgba(255, 255, 255, .5);--radius-lg: 24px;--radius-md: 18px;--radius-sm: 12px;--radius-full: 999px}.accom-header{padding:2.25rem 1rem 0}.accom-header__top{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.85fr);gap:1.75rem 2.5rem;align-items:end;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.accom-header__eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:var(--accent);margin-bottom:.65rem}.accom-header__title{font-size:var(--heading-hero, clamp(2.1rem, 4.2vw, 3.85rem));margin:0 0 .65rem;font-family:var(--font-display, "Playfair Display", Georgia, serif);font-style:italic;font-weight:500;line-height:1.12}.accom-header__meta{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;margin:0;color:#ffffffb8;font-weight:500;font-size:.92rem}.accom-header__meta ion-icon{margin-right:.35rem;color:var(--accent);vertical-align:middle}.accom-header__rating{color:inherit;text-decoration:none;display:inline-flex;align-items:center}.accom-header__rating:hover{color:#fff}.accom-header__rating span{color:var(--text-dim);font-weight:400;margin-left:.2rem}.accom-header__aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;gap:.65rem;text-align:right}.accom-header__price{margin:0;line-height:1.05}.accom-header__price strong{display:block;font-size:clamp(1.7rem,3vw,2.15rem);color:var(--accent);font-weight:700;letter-spacing:-.02em}.accom-header__price span{display:block;margin-top:.3rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.accom-header__photos{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:0;border:none;background:transparent;color:#ffffffb8;font-size:.86rem;font-weight:500;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#ddb58a73;transition:color .2s}.accom-header__photos ion-icon{font-size:1rem;color:var(--accent)}.accom-header__photos:hover{color:#fff}.accom-tabs{display:flex;gap:.2rem;overflow-x:auto;margin:0 -.25rem;padding:.85rem .25rem 0;scrollbar-width:none;-ms-overflow-style:none;position:sticky;top:0;z-index:40;background:linear-gradient(180deg,#030303fa 65%,#030303e0);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}.accom-tabs::-webkit-scrollbar{display:none}.accom-tabs__btn{flex:0 0 auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:.7rem 1rem .85rem;color:#ffffff8c;font-size:.9rem;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit}.accom-tabs__btn:hover{color:#ffffffe6}.accom-tabs__btn.is-active{color:#fff;border-bottom-color:var(--accent)}.accom-tabs__btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.accom-panel[hidden]{display:none!important}.accom-panel.is-active{display:block;margin-bottom:0;animation:accomPanelIn .28s ease}@keyframes accomPanelIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}#accomTabs,#book,#panel-about,#panel-rooms,#panel-amenities,#panel-location,#panel-reviews{scroll-margin-top:5.5rem}.card__count{font-size:.78rem;color:var(--text-dim);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.accom-panel.detail-reviews{padding-top:1.75rem;padding-bottom:1.75rem;border-top:none}.accom-panel.detail-reviews>*{max-width:none;margin-left:0;margin-right:0}.accom-photos{margin:0;position:relative;z-index:3}.accom-photos__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,260px);gap:.35rem;overflow:hidden;position:relative}.accom-photos__item{overflow:hidden;cursor:pointer}.accom-photos__item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform 2.8s cubic-bezier(.4,0,.2,1);will-change:transform;transform-origin:center center}.accom-photos__item:hover img{transform:scale(1.04)}.accom-photos__item--0{grid-column:1 / 3;grid-row:1 / 3}.accom-photos__more{position:absolute;bottom:1rem;right:1rem;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:var(--radius-full);background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s}.accom-photos__more:hover{background:#000000e6}.accom-highlights{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.highlight-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:var(--radius-full);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-size:.85rem;color:#fffc}.highlight-chip ion-icon{color:var(--accent);font-size:.95rem}.btn-text-toggle{background:none;border:none;padding:0;color:var(--accent);font-size:.9rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.btn-text-toggle:hover{color:#fff}.amenities-chips{display:flex;flex-wrap:wrap;gap:.45rem}.amenity-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;border-radius:var(--radius-full);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-size:.85rem;color:#fffc}.amenity-chip ion-icon{color:var(--accent);font-size:.85rem}.amenity-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.25rem}.amenity-grid__item{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.7rem .85rem;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:#ffffff06}.amenity-grid__icon{flex-shrink:0;width:2.35rem;height:2.35rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#ddb58a1a;border:1px solid rgba(221,181,138,.2);color:var(--accent)}.amenity-grid__icon ion-icon{font-size:1.15rem}.amenity-grid__label{font-size:.92rem;color:#ffffffe0;line-height:1.35;word-break:break-word}@media (max-width: 560px){.amenity-grid{grid-template-columns:1fr}}.location-address{display:flex;align-items:flex-start;gap:.5rem;font-size:.95rem;line-height:1.6;color:#ffffffd9;margin-bottom:1rem}.location-address ion-icon{color:var(--accent);font-size:1.15rem;flex-shrink:0;margin-top:.2em}.location-nearby{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.reviews-rating-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .8rem;border-radius:var(--radius-full);background:var(--accent-15);color:var(--accent);font-size:.95rem;font-weight:600}.reviews-rating-badge small{font-weight:400;color:var(--text-muted);font-size:.82em}.card__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.accom-layout{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(360px,1fr);gap:2.25rem;margin-bottom:4.5rem;align-items:start}.accom-layout__primary{min-width:0}.accom-layout__aside{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:2rem}.accom-layout__aside>*{width:100%}.card.surface{background:var(--glass);border:1px solid var(--glass-border);padding:2rem;border-radius:var(--radius-lg);margin-bottom:2rem;box-shadow:0 24px 54px #00000047}.accom-layout__primary>.card.surface{margin-bottom:0}.accom-layout__primary>.card.surface:last-child{margin-bottom:0}.card__head p{color:var(--text-muted);margin-top:.25rem}.card__head h2{margin:0;font-size:1.8rem;font-family:var(--font-heading, "Playfair Display", serif);color:#fff}.card__head{padding-bottom:.95rem;border-bottom:1px solid rgba(255,255,255,.06)}.accom-overview-text{line-height:1.85;color:#ffffffd1;margin-bottom:1.25rem}.accom-overview-text--more{margin-top:-.55rem;color:#ffffffb8}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.rooms-list{display:flex;flex-direction:column;gap:.85rem}.room-row{display:grid;grid-template-columns:168px minmax(0,1fr);gap:1.1rem;align-items:stretch;padding:.75rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.07);background:#ffffff06;cursor:pointer;transition:border-color .25s,background .25s,transform .25s}.room-row:hover{border-color:#ddb58a59;background:#ffffff0a;transform:translateY(-1px)}.room-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.room-row__media{position:relative;border-radius:14px;overflow:hidden;min-height:118px;background:#111}.room-row__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .55s ease}.room-row:hover .room-row__media img{transform:scale(1.04)}.room-row__photo-count{position:absolute;bottom:.5rem;right:.5rem;display:inline-flex;align-items:center;gap:.25rem;padding:.22rem .55rem;border-radius:var(--radius-full);background:#000000b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.72rem}.room-row__body{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0;padding:.15rem .35rem .15rem 0}.room-row__main{min-width:0}.room-row__main h3{margin:0 0 .55rem;font-size:1.15rem;font-family:var(--font-heading, "Playfair Display", serif);font-weight:600;color:#fff}.room-row__meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;list-style:none;margin:0;padding:0;color:#ffffff9e;font-size:.84rem}.room-row__meta li{display:inline-flex;align-items:center;gap:.3rem}.room-row__meta ion-icon{color:var(--accent);font-size:.95rem}.room-row__aside{display:flex;flex-direction:column;align-items:flex-end;gap:.55rem;flex-shrink:0}.room-row__price{text-align:right;line-height:1.15}.room-row__original{display:block;text-decoration:line-through;color:var(--text-dim);font-size:.78rem;margin-bottom:.1rem}.room-row__price strong{font-size:1.2rem;color:var(--accent)}.room-row__price small{color:var(--text-dim);font-size:.78rem}.room-row__cta{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;font-weight:600;color:#ffffffc7}.room-row:hover .room-row__cta{color:var(--accent)}.room-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:border-color .3s,box-shadow .3s,transform .3s}.room-card:hover{border-color:var(--glass-border-hover);box-shadow:0 20px 50px #0006;transform:translateY(-4px)}.room-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.room-card__media{position:relative;overflow:hidden;height:200px}.room-card__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s ease}.room-card:hover .room-card__media img{transform:scale(1.05)}.room-card__photo-count{position:absolute;bottom:.75rem;right:.75rem;display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .75rem;border-radius:var(--radius-full);background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.8rem;font-weight:500}.room-card__body{padding:1.25rem;display:flex;flex-direction:column;gap:.6rem}.room-card__body h3{margin:0;font-size:1.15rem;color:#fff}.room-card__quick-meta{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.6rem;font-size:.85rem;color:var(--text-muted)}.room-card__quick-meta li{display:inline-flex;align-items:center;gap:.25rem}.room-card__quick-meta ion-icon{color:var(--accent);font-size:.95rem}.room-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.06)}.room-card__price strong{font-size:1.2rem;color:var(--accent)}.room-card__price small{font-size:.78rem;color:var(--text-dim)}.room-card__original-price{font-size:.85rem;color:var(--text-dim);text-decoration:line-through;margin-right:.35rem}.room-price-original{font-size:.82rem;color:var(--text-dim);text-decoration:line-through;margin-right:.4rem}.room-card__cta{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--accent);font-weight:500;transition:gap .2s}.room-card:hover .room-card__cta{gap:.6rem}.room-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;align-items:center;justify-content:center;padding:1.25rem}.room-modal.is-open{display:flex}.room-modal.is-open .room-modal__container{animation:roomModalIn .38s cubic-bezier(.22,1,.36,1)}@keyframes roomModalIn{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.room-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#030303c7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.room-modal__container{position:relative;z-index:1;width:min(760px,100%);max-height:min(90vh,calc(100dvh - 2rem));background:radial-gradient(ellipse 90% 50% at 50% 0%,rgba(221,181,138,.08),transparent 55%),linear-gradient(180deg,#161616,#0e0e0e);border:1px solid rgba(221,181,138,.18);border-radius:24px;box-shadow:0 0 0 1px #ffffff08 inset,0 30px 80px #0000008c;overflow:hidden}.room-modal__close{position:absolute;top:1rem;right:1rem;z-index:5;background:#0808088c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:1.35rem;line-height:1;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .2s}.room-modal__close:hover{background:#181818e6;border-color:#ddb58a66;transform:scale(1.04)}.room-modal__body{max-height:min(90vh,calc(100dvh - 2rem));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(221,181,138,.35) transparent}.room-modal__body::-webkit-scrollbar{width:8px}.room-modal__body::-webkit-scrollbar-thumb{background:#ddb58a59;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.room-modal__body::-webkit-scrollbar-track{background:transparent}.room-modal__gallery{padding:0}.room-modal__gallery-main{position:relative;width:100%;aspect-ratio:16 / 9;max-height:380px;overflow:hidden;background:#050505}.room-modal__main-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block;transition:transform .55s ease}.room-modal.is-open .room-modal__main-img{animation:roomImgIn .55s ease}@keyframes roomImgIn{0%{transform:scale(1.04);opacity:.75}to{transform:scale(1);opacity:1}}.room-modal__gallery-fade{position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(to top,#0e0e0e 0%,transparent 100%);pointer-events:none;z-index:1}.room-modal__gallery-prev,.room-modal__gallery-next{position:absolute;top:50%;transform:translateY(-50%);background:#08080873;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);color:#fff;border-radius:50%;width:42px;height:42px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .2s;z-index:3}.room-modal__gallery-prev{left:1rem}.room-modal__gallery-next{right:1rem}.room-modal__gallery-prev:hover,.room-modal__gallery-next:hover{background:#141414d9;border-color:#ddb58a73;transform:translateY(-50%) scale(1.05)}.room-modal__gallery-counter{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);background:#08080899;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);padding:.3rem .75rem;border-radius:999px;font-size:.74rem;letter-spacing:.06em;color:#ffffffe0;z-index:2}.room-modal__gallery-thumbs{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:.5rem;padding:.95rem 1.15rem .15rem;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;width:100%;box-sizing:border-box}.room-modal__gallery-thumbs::-webkit-scrollbar{display:none}.room-modal__thumb{width:68px;height:50px;-o-object-fit:cover;object-fit:cover;border-radius:10px;cursor:pointer;opacity:.45;border:1.5px solid transparent;transition:opacity .2s,border-color .2s,transform .2s;flex-shrink:0}.room-modal__thumb.is-active,.room-modal__thumb:hover{opacity:1;border-color:var(--accent);transform:translateY(-2px)}.room-modal__info{padding:1.15rem 1.5rem 1.75rem;display:flex;flex-direction:column;gap:1rem}.room-modal__eyebrow{margin:0;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.room-modal__header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.65rem 1.25rem;padding-right:1.5rem}.room-modal__name{margin:0;flex:1 1 240px;font-size:clamp(1.55rem,2.6vw,2.05rem);font-family:var(--font-heading, "Playfair Display", serif);font-style:italic;font-weight:500;color:#fff;line-height:1.15}.room-modal__pricing{display:inline-flex;align-items:baseline;gap:.4rem;padding:.55rem .85rem;border-radius:999px;background:#ddb58a1f;border:1px solid rgba(221,181,138,.28);color:var(--accent);white-space:nowrap}.room-modal__pricing strong{font-size:1.15rem;font-weight:600}.room-modal__price-unit{font-size:.78rem;color:#ffffff8c;font-weight:400}.room-modal__pricing .room-price-original{font-size:.82rem;color:#ffffff61;text-decoration:line-through}.room-modal__meta{list-style:none;padding:.85rem 0 0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .85rem;border-top:1px solid rgba(255,255,255,.07)}.room-modal__meta li{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#ffffffd1;line-height:1.35;min-width:0}.room-modal__meta ion-icon{color:var(--accent);font-size:1.05rem;flex-shrink:0}.room-modal__meta span{overflow-wrap:anywhere}.room-modal__section-label{margin:0 0 .55rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#ddb58ae6;font-weight:500}.room-modal__desc-wrap,.room-modal__amenities,.room-modal__specials{padding-top:.85rem;border-top:1px solid rgba(255,255,255,.07)}.room-modal__desc{color:#ffffffb8;font-size:.96rem;line-height:1.75;margin:0}.room-modal__amenity-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .85rem}.room-modal__amenity-list li{display:flex;align-items:flex-start;gap:.45rem;font-size:.88rem;color:#ffffffc7;line-height:1.4}.room-modal__amenity-list ion-icon{color:var(--accent);font-size:.95rem;margin-top:.12rem;flex-shrink:0}.room-modal__specials-text{color:#ffffffb3;font-size:.92rem;line-height:1.65;margin:0}.room-price-tier{display:flex;flex-direction:column;align-items:flex-start;padding:.6rem .85rem;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.05)}.room-price-tier--primary{background:#ddb58a24;border-color:#ddb58a38}.room-price-tier strong{font-size:1.18rem;color:var(--accent)}.room-price-tier small{font-size:.74rem;color:#ffffff9e}.room-amenity-chip{padding:.2rem .65rem;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#ffffffbf;font-size:.78rem}.map-embed{margin:1.25rem 0 .75rem;border-radius:18px;overflow:hidden;position:relative;background:#080808;border:1px solid rgba(255,255,255,.06);min-height:280px}.map-embed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 28px 28px -20px #000000d1,inset 0 -28px 28px -20px #000000e6;border-radius:inherit;z-index:1}.map-embed__loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;background:#080808;color:#ffffff8c;font-size:.84rem;letter-spacing:.04em}.map-embed:not(.is-loading) .map-embed__loader{display:none}.map-embed__spinner{width:2rem;height:2rem;border-radius:50%;border:2px solid rgba(221,181,138,.18);border-top-color:var(--accent, #ddb58a);animation:mapSpin .75s linear infinite}@keyframes mapSpin{to{transform:rotate(360deg)}}.map-embed__canvas{display:block;width:100%;min-height:280px;height:280px;background:#080808;opacity:0;transition:opacity .35s ease}.map-embed.map-embed--ready .map-embed__canvas{opacity:1}.map-embed .leaflet-control-attribution{background:transparent!important;color:#ffffff2e!important;font-size:.52rem!important}.map-embed .leaflet-control-attribution a{color:#ddb58a52!important}.accom-map-marker{background:none!important;border:none!important}.accom-map-marker__ring{position:relative;width:28px;height:28px;border-radius:50%;border:2px solid rgba(221,181,138,.9);background:#ddb58a1f;box-shadow:0 0 14px #ddb58a47;display:flex;align-items:center;justify-content:center}.accom-map-marker__ring:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1.5px solid rgba(221,181,138,.42);animation:accomMarkerPulse 2.4s ease-out infinite}.accom-map-marker__dot{width:8px;height:8px;border-radius:50%;background:#ddb58a}@keyframes accomMarkerPulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(2.1);opacity:0}to{transform:scale(2.1);opacity:0}}.nearby-text{color:var(--text-muted);line-height:1.7;margin-bottom:1rem}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.testimonial-card{padding:1.75rem;border-radius:var(--radius-md);background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid rgba(221,181,138,.15);transition:all .25s ease}.testimonial-card:hover{background:linear-gradient(135deg,#ffffff14,#ffffff0a);border-color:#ddb58a40;transform:translateY(-2px)}.testimonial-rating{display:flex;align-items:center;gap:.15rem;margin-bottom:.85rem;color:var(--accent);font-size:1rem}.testimonial-rating span{margin-left:.5rem;color:var(--text-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.02em}.testimonial-card p{margin:0 0 1.2rem;font-style:normal;line-height:1.8;color:#ffffffe0;font-size:.98rem}.testimonial-meta{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.82rem}.testimonial-meta strong{color:#ffffffb3;font-weight:600}.booking-card.surface{position:relative;overflow:hidden;background:linear-gradient(165deg,#141414d9,#080808f2);border:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:2rem 1.75rem;box-shadow:0 28px 56px #00000052}.booking-card__eyebrow{margin:0 0 .85rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.booking-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}.booking-card__amount{font-size:1.5rem;font-weight:700;color:var(--accent)}.booking-card__unit{font-size:.82rem;color:var(--text-dim)}.booking-card__rating{display:inline-flex;align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;color:var(--accent)}.booking-card__note{margin:.7rem 0 0;padding:.55rem .7rem;border-radius:8px;border:1px solid rgba(221,181,138,.18);background:#ddb58a12;font-size:.68rem;line-height:1.45;color:#ddb58ac7;letter-spacing:.01em}.booking-card__note[hidden]{display:none!important}.booking-form{display:grid;gap:.85rem;margin-top:1rem}.booking-form__dates-wrap{display:grid;gap:.55rem}.booking-form__dates{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.booking-form__nights{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-width:2.75rem;padding:.32rem .75rem;border-radius:999px;border:1px solid rgba(221,181,138,.22);background:#ddb58a14;font-size:.72rem;font-weight:600;letter-spacing:.03em;color:#ddb58af2;white-space:nowrap}.booking-form__nights[hidden]{display:none!important}.booking-form__footnote{margin:.15rem 0 0;padding:.5rem .65rem;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;font-size:.66rem;line-height:1.45;color:#ffffff85}.booking-form__footnote[hidden]{display:none!important}@media (max-width: 480px){.booking-form__dates{grid-template-columns:1fr}}.booking-form label{display:grid;gap:.25rem}.booking-form label span{font-size:.78rem;color:#ffffff8c;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;padding:.65rem .85rem;color:#fff;font:inherit;font-size:.9rem;transition:border-color .25s,background .25s}.booking-form input:hover,.booking-form select:hover,.booking-form textarea:hover{border-color:#ffffff24;background:#ffffff0f}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{outline:none;border-color:var(--accent);background:#ddb58a0f}.booking-form input::-moz-placeholder,.booking-form textarea::-moz-placeholder{color:#ffffff4d}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#ffffff4d}.booking-form select option{background:#111;color:#fff;padding:.5rem}.booking-form .flatpickr-input{cursor:pointer}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon-wrap ion-icon{position:absolute;left:.75rem;color:var(--accent);font-size:1rem;pointer-events:none;z-index:1}.input-icon-wrap input{padding-left:2.25rem;cursor:pointer}.input-icon-wrap input.flatpickr-input[readonly]{padding-left:2.25rem;background:#ffffff0a}.select-wrap{position:relative;display:flex;align-items:center}.select-wrap select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:2.25rem;cursor:pointer}.select-wrap__arrow{position:absolute;right:.75rem;color:var(--accent);font-size:.9rem;pointer-events:none}.confirm-crosssell{margin:2.75rem 0 0;padding:1.75rem 1.5rem 1.5rem;background:#ffffff06;border:1px solid rgba(255,255,255,.07);border-radius:20px;text-align:left}.confirm-crosssell__title{display:flex;align-items:center;gap:.55rem;font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:clamp(1.2rem,2.4vw,1.45rem);font-weight:600;color:#fff;margin:0;line-height:1.25}.confirm-crosssell__title ion-icon{color:var(--accent, #ddb58a);font-size:1.25rem;flex-shrink:0}.confirm-crosssell__subtitle{font-size:.9rem;color:#ffffff85;margin:.4rem 0 1.35rem;line-height:1.5}.confirm-crosssell__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.crosssell-card{display:flex;flex-direction:column;background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;text-decoration:none;color:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}.crosssell-card:hover{transform:translateY(-3px);border-color:#ddb58a59;box-shadow:0 14px 36px #00000059}.crosssell-card__img{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:#ffffff0a}.crosssell-card__img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .45s ease}.crosssell-card:hover .crosssell-card__img img{transform:scale(1.05)}.crosssell-card__body{padding:.9rem 1rem 1.05rem;display:flex;flex-direction:column;gap:.3rem}.crosssell-card__body h4{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:1.02rem;font-weight:600;margin:0;line-height:1.3}.crosssell-card__meta{display:flex;align-items:center;gap:.3rem;font-size:.76rem;color:#ffffff80}.crosssell-card__meta ion-icon{font-size:.9rem;color:var(--accent, #ddb58a)}.crosssell-card__price{margin-top:.25rem;font-size:.95rem;font-weight:700;color:var(--accent, #ddb58a)}.crosssell-card__price small{font-weight:500;font-size:.75rem;color:#ffffff73;margin-left:.15rem}@media (max-width: 768px){.confirm-crosssell__grid{grid-template-columns:1fr;max-width:360px;margin:0 auto}.confirm-crosssell{padding:1.25rem 1rem}}@media (min-width: 769px) and (max-width: 1024px){.confirm-crosssell__grid{grid-template-columns:repeat(2,1fr)}}.flatpickr-calendar{background:#111!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:14px!important;box-shadow:0 24px 60px #0009!important;font-family:var(--font-body, "Segoe UI", system-ui, sans-serif)!important}.flatpickr-months .flatpickr-month,.flatpickr-current-month .flatpickr-monthDropdown-months{background:transparent!important;color:#fff!important}.flatpickr-current-month input.cur-year{color:#fff!important}.flatpickr-day{color:#fffc!important;border-radius:8px!important}.flatpickr-day:hover{background:#ddb58a33!important;border-color:transparent!important}.flatpickr-day.selected,.flatpickr-day.selected:hover{background:#ddb58a!important;border-color:#ddb58a!important;color:#000!important}.flatpickr-day.today{border-color:#ddb58a80!important}.flatpickr-day.flatpickr-disabled{color:#ffffff26!important;text-decoration:line-through;cursor:not-allowed;opacity:.4}.flatpickr-day.flatpickr-disabled:hover{background:transparent!important;color:#ffffff26!important}span.flatpickr-weekday{color:#ddb58ab3!important;font-weight:600!important;font-size:.78rem!important}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{fill:#fff!important;color:#fff!important}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:var(--accent)!important}.btn--full{width:100%;justify-content:center}.contact-card h4{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.contact-card ul{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.5rem}.contact-card a{color:#ffffffd9;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:color .2s}.contact-card a:hover{color:var(--accent)}.contact-card ion-icon{color:var(--accent);font-size:1.15rem}.lightbox{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;align-items:center;justify-content:center}.lightbox.is-open{display:flex}.lightbox__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox__stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:min(92vw,1100px);width:100%;padding:1.5rem}.lightbox__viewer{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.lightbox__img{max-width:100%;max-height:72vh;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm)}.lightbox__close{position:absolute;top:-.5rem;right:0;background:none;border:none;color:#fff;font-size:2.5rem;line-height:1;cursor:pointer;opacity:.8;transition:opacity .2s}.lightbox__close:hover{opacity:1}.lightbox__prev,.lightbox__next{position:absolute;top:50%;transform:translateY(-50%);background:#0000008c;border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:50%;width:48px;height:48px;font-size:2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:2}.lightbox__prev{left:.75rem}.lightbox__next{right:.75rem}.lightbox__prev:hover,.lightbox__next:hover{background:#fff3}.lightbox__counter{color:var(--text-dim);font-size:.9rem}.lightbox__thumbstrip{display:flex;gap:.5rem;overflow-x:auto;overflow-y:hidden;max-width:min(100%,36rem);max-height:3.25rem;padding:.15rem 0;scrollbar-width:none;-ms-overflow-style:none}.lightbox__thumbstrip::-webkit-scrollbar{display:none;width:0;height:0}.lightbox__thumb{width:60px;height:44px;padding:0;margin:0;-o-object-fit:cover;object-fit:cover;border-radius:6px;cursor:pointer;opacity:.45;border:2px solid transparent;background:transparent;transition:opacity .2s,border-color .2s;flex-shrink:0;overflow:hidden}.lightbox__thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.lightbox__thumb.is-active,.lightbox__thumb:hover{opacity:1;border-color:var(--accent)}@media (max-width: 1024px){.accom-layout{grid-template-columns:1fr}.accom-layout__aside{position:static}}@media (max-width: 768px){.room-card{grid-template-columns:1fr}.room-card__media{min-height:200px;max-height:260px}.booking-form__dates{grid-template-columns:1fr}.lightbox__prev{left:.5rem}.lightbox__next{right:.5rem}.room-modal{padding:.5rem;align-items:flex-end}.room-modal__container,.room-modal__body{max-height:min(94vh,calc(100dvh - 1rem))}.room-modal__container{border-radius:20px 20px 12px 12px}.room-modal__gallery-main{max-height:260px;aspect-ratio:16 / 11}.room-modal__gallery-thumbs{padding:.75rem .9rem .1rem;justify-content:center}.room-modal__info{padding:1rem 1.05rem 1.4rem}.room-modal__name{font-size:1.4rem}.room-modal__meta,.room-modal__amenity-list{grid-template-columns:1fr}.room-modal__thumb{width:58px;height:44px}}#checkAvailBtn{width:100%;margin-top:.35rem;display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 1rem;font-size:.92rem;font-weight:600;letter-spacing:.02em;border-radius:10px;transition:opacity .25s,transform .2s}#checkAvailBtn:disabled{opacity:.35;cursor:not-allowed;transform:none}.booking-success-msg{display:flex;align-items:flex-start;gap:.65rem;padding:1rem 1.1rem;border-radius:var(--radius-sm);font-size:.9rem;line-height:1.5;background:#38b2601f;border:1px solid rgba(56,178,96,.35);color:#6ddfa0}.booking-success-msg ion-icon{font-size:1.35rem;flex-shrink:0;margin-top:.1em}.avail-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9997;align-items:center;justify-content:center;padding:1.5rem}.avail-modal.is-open{display:flex}.avail-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.avail-modal__panel{position:relative;z-index:1;width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;background:#0a0a0a;border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.avail-modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.avail-modal__header h2{margin:0;font-size:1.35rem;font-family:var(--font-heading, "Playfair Display", serif)}.avail-modal__close{background:none;border:none;color:#fff;font-size:2rem;line-height:1;cursor:pointer;opacity:.7;transition:opacity .2s}.avail-modal__close:hover{opacity:1}.avail-modal__dates{display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem 1.5rem;font-size:.88rem;color:var(--text-muted);border-bottom:1px solid rgba(255,255,255,.04)}.avail-modal__dates span{display:inline-flex;align-items:center;gap:.3rem}.avail-modal__dates ion-icon{color:var(--accent);font-size:.95rem}.avail-modal__body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1}.avail-modal__error,.avail-modal__empty{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.92rem}.avail-modal__error{color:#f08080}.avail-room{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.1rem;border-radius:var(--radius-md);background:#ffffff08;border:1px solid rgba(255,255,255,.06);margin-bottom:.75rem;transition:border-color .25s,background .25s}.avail-room:hover{border-color:#ddb58a33;background:#ddb58a0a}.avail-room--unavail{opacity:.45}.avail-room--unavail:hover{border-color:#ffffff0f;background:#ffffff08}.avail-room__info{flex:1;min-width:0}.avail-room__info h3{margin:0 0 .3rem;font-size:1.05rem;color:#fff}.avail-room__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.82rem;color:var(--text-muted)}.avail-room__meta span{display:inline-flex;align-items:center;gap:.25rem}.avail-room__meta ion-icon{color:var(--accent);font-size:.9rem}.avail-room__left{color:#6ddfa0;font-weight:600}.avail-room__note{display:flex;align-items:flex-start;gap:.35rem;margin:.6rem 0 0;font-size:.82rem;color:#ffffffb3;line-height:1.5;padding:.5rem .7rem;border-radius:8px;background:#ddb58a14;border:1px solid rgba(221,181,138,.15)}.avail-room__note ion-icon{color:var(--accent);font-size:1rem;flex-shrink:0;margin-top:.1em}.avail-room__pricing{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-shrink:0}.avail-room__total{font-size:1.25rem;font-weight:700;color:var(--accent)}.avail-room__breakdown{font-size:.75rem;color:var(--text-dim)}.avail-room__book-btn{margin-top:.25rem}.avail-room__sold{font-size:.78rem;color:#f08080;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.booking-page{background:#030303;color:#fff;min-height:100vh;font-family:var(--font-body, "Segoe UI", system-ui, sans-serif);--accent: #ddb58a;--accent-15: rgba(221, 181, 138, .15);--accent-25: rgba(221, 181, 138, .25);--glass: rgba(0, 0, 0, .5);--glass-border: rgba(255, 255, 255, .08);--radius-lg: 24px;--radius-md: 18px;--radius-sm: 12px;--radius-full: 999px;--text-muted: rgba(255, 255, 255, .65);--text-dim: rgba(255, 255, 255, .5)}.booking-page__container{max-width:1080px;margin:0 auto;padding:4.5rem 1.5rem 3rem}.booking-page__header{margin-bottom:2rem}.booking-page__back{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent);text-decoration:none;font-size:.88rem;font-weight:500;margin-bottom:1.25rem;transition:gap .2s,color .2s}.booking-page__back:hover{gap:.65rem;color:#f0d4b4}.booking-page__eyebrow{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:clamp(1.45rem,3vw,2rem);color:#ddb58af5;margin:0 0 .25rem;line-height:1.15}.booking-page__title{font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(1.85rem,4vw,2.5rem);color:#fff;margin:0 0 .45rem;line-height:1.15}.booking-page__lead{margin:0;max-width:34rem;color:#ffffff9e;font-size:1rem;line-height:1.6}.booking-page__pay-note{display:flex;align-items:flex-start;gap:.75rem;margin:0 0 1rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid rgba(221,181,138,.24);background:linear-gradient(135deg,#ddb58a1f,#ddb58a0a);font-size:.92rem;line-height:1.55;color:#ffffffd1}.booking-page__pay-note ion-icon{flex-shrink:0;margin-top:.1rem;font-size:1.2rem;color:var(--accent, #ddb58a)}.booking-page__pay-note p{margin:0}.booking-page__pay-note em{font-family:Playfair Display,Georgia,serif;font-style:italic;color:#ddb58afa}.booking-page__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:2rem;align-items:start}.booking-page__form-col{display:flex;flex-direction:column;gap:1.5rem}.bform-section{background:#ffffff06;border:1px solid rgba(255,255,255,.08);padding:1.5rem 1.6rem;border-radius:18px}.bform-section h3,.bform-section__title{margin:0 0 1.15rem;font-size:1.05rem;font-family:Playfair Display,serif;font-weight:600;color:#fff}.bform-section__title span,.bform-section h3 span,.bform-section h3 small{font-family:var(--font-body, "Segoe UI", system-ui, sans-serif);font-size:.78rem;font-weight:500;color:#ffffff59;margin-left:.35rem}.bform-section--policy{background:transparent;border-style:dashed;padding:1.1rem 1.25rem}.bform-section--policy p{margin:0;font-size:.84rem;line-height:1.55;color:#ffffff85}.bform-section--policy a{color:#ddb58ae6}.booking-page__submit{margin-top:.25rem;min-height:52px;font-size:.92rem;letter-spacing:.04em}.bform-row{display:grid;gap:.3rem;margin-bottom:1rem}.bform-row:last-child{margin-bottom:0}.bform-row--2col{grid-template-columns:1fr 1fr;gap:1rem}.bform-row label{display:grid;gap:.25rem}.bform-row label span{font-size:.78rem;color:#ffffff8c;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.bform-row input,.bform-row textarea{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;padding:.7rem .9rem;color:#fff;font:inherit;font-size:.92rem;transition:border-color .25s,background .25s}.bform-row input:hover,.bform-row textarea:hover{border-color:#ffffff24;background:#ffffff0f}.bform-row input:focus,.bform-row textarea:focus{outline:none;border-color:var(--accent);background:#ddb58a0f}.bform-row input::-moz-placeholder,.bform-row textarea::-moz-placeholder{color:#ffffff4d}.bform-row input::placeholder,.bform-row textarea::placeholder{color:#ffffff4d}.bform-policy{display:flex;align-items:flex-start;gap:.6rem;font-size:.85rem;color:var(--text-muted);line-height:1.5;margin:1rem 0;cursor:pointer}.bform-policy input[type=checkbox]{width:auto;margin-top:.15em;accent-color:var(--accent)}.booking-page__submit{width:100%;justify-content:center;padding:.85rem 1.5rem;font-size:1rem;font-weight:600;border-radius:12px}.booking-page__submit:disabled{opacity:.35;cursor:not-allowed}.booking-page__summary-col{position:sticky;top:2rem}.bsummary{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden;box-shadow:0 24px 60px #00000059}.bsummary__media{position:relative;overflow:hidden}.bsummary__img{width:100%;height:220px;-o-object-fit:cover;object-fit:cover;display:block}.bsummary__body{padding:1.35rem 1.45rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.bsummary__property{margin:0;font-size:.72rem;color:#ffffff7a;text-transform:uppercase;letter-spacing:.14em;font-weight:600}.bsummary__room{margin:0;font-size:clamp(1.25rem,2.2vw,1.5rem);font-family:Playfair Display,serif;font-style:italic;font-weight:600;color:#fff;line-height:1.2}.bsummary__host{margin:0;font-size:.9rem;color:#ffffff94}.bsummary__details{display:grid;gap:.55rem;margin:.35rem 0 0;padding:1rem 0 0;border-top:1px solid rgba(255,255,255,.08)}.bsummary__row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:.88rem}.bsummary__row dt{margin:0;color:#ffffff7a;font-weight:500}.bsummary__row dd{margin:0;color:#fff;font-weight:600;text-align:right}.bsummary__total{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.85rem;padding:.95rem 1rem;border-radius:14px;background:linear-gradient(135deg,#ddb58a2e,#ddb58a14);border:1px solid rgba(221,181,138,.22)}.bsummary__total span{font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:#ffffff9e;font-weight:600}.bsummary__total strong{color:#fff;font-size:1.35rem;font-weight:700}.bsummary__total--grand{margin-top:.55rem}.bsummary__addon{margin-top:.65rem;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.08)}.bsummary__addon .bsummary__row{margin:0}.bform-section--addon{border:1px solid rgba(221,181,138,.22);background:linear-gradient(160deg,#ddb58a14,#ffffff05);border-radius:16px;padding:1.15rem 1.1rem 1.25rem}.bform-addon__intro{margin:-.15rem 0 1rem;font-size:.9rem;color:var(--text-muted);line-height:1.5}.bform-addon__list{display:grid;gap:.65rem}.bform-addon__card{display:grid;grid-template-columns:72px 1fr;gap:.75rem;align-items:center;padding:.55rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0000002e;cursor:pointer;transition:border-color .2s ease,background .2s ease;position:relative}.bform-addon__card:hover,.bform-addon__card.is-selected{border-color:#ddb58a8c;background:#ddb58a1a}.bform-addon__radio{position:absolute;opacity:0;pointer-events:none}.bform-addon__media{display:block;width:72px;height:72px;border-radius:10px;overflow:hidden}.bform-addon__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.bform-addon__body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.bform-addon__name{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:1.05rem;color:#fff;line-height:1.25}.bform-addon__meta{display:flex;flex-wrap:wrap;gap:.55rem;font-size:.78rem;color:var(--text-dim)}.bform-addon__price{font-size:.92rem;color:var(--accent);font-weight:600}.bform-addon__price small{font-weight:500;color:var(--text-dim)}.bform-addon__clear{margin-top:.75rem;background:none;border:none;color:var(--accent);font-size:.86rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}.bform-addon__details{margin-top:1rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.08)}.bform-addon__avail{margin:.35rem 0 0;font-size:.84rem;color:var(--text-muted);min-height:1.25em}.bform-addon__avail.is-ok{color:#9dcfb0}.bform-addon__avail.is-bad{color:#e8a0a0}@media (min-width: 640px){.bform-addon__list{grid-template-columns:repeat(2,minmax(0,1fr))}}.bsummary__note{font-size:.78rem;color:var(--text-dim);text-align:center;line-height:1.4;display:flex;align-items:flex-start;gap:.35rem;margin-top:.5rem;padding:.5rem .7rem;border-radius:8px;background:#ddb58a14;border:1px solid rgba(221,181,138,.15);text-align:left}.bsummary__note ion-icon{color:var(--accent);font-size:1rem;flex-shrink:0}.bform-locked{background:#ffffff0a!important;border-color:#ffffff14!important;color:#ffffff80!important;cursor:not-allowed}.bform-guest-note{display:flex;align-items:flex-start;gap:.5rem;font-size:.88rem;color:var(--text-muted);line-height:1.55;margin:-.25rem 0 .5rem;padding:.65rem .85rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:.5rem}.bform-guest-note ion-icon{font-size:1.15rem;flex-shrink:0;margin-top:.1rem;color:var(--accent)}.bform-guest-note a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.bform-feedback{font-size:.78rem;margin-top:.25rem;min-height:1.1rem;transition:color .15s}.bform-feedback--error{color:#f87171}.bform-feedback--ok{color:#34d399}.bform-feedback--muted{color:#ffffff59}.bform-feedback--taken{color:#fbbf24}.bform-feedback--taken a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;font-weight:500}@media (max-width: 768px){.booking-page__grid{grid-template-columns:1fr}.booking-page__summary-col{position:static;order:-1}.bform-row--2col{grid-template-columns:1fr}.avail-modal{padding:.75rem}.avail-modal__panel{max-height:95vh}.avail-room{flex-direction:column;gap:.75rem}.avail-room__pricing{align-items:flex-start;text-align:left;flex-direction:row;gap:.75rem;align-items:center;flex-wrap:wrap}}@media (max-width: 600px){.accom-photos__grid{grid-template-columns:1fr 1fr;grid-template-rows:180px 120px}.accom-photos__item--0{grid-column:1 / -1;grid-row:1 / 2}.accom-photos__item:nth-child(n+4){display:none}}.confirm-page{max-width:640px;margin:2.5rem auto 4rem;text-align:center}.confirm-page__eyebrow{margin:0 0 .4rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent, #ddb58a);font-weight:600}.confirm-page__icon{font-size:3.75rem;margin-bottom:.85rem;line-height:1}.confirm-page__icon--success{color:#6ddfa0}.confirm-page__icon--fail{color:#f08080}.confirm-page__title{font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(1.85rem,4vw,2.45rem);margin:0 0 .55rem;color:#fff;line-height:1.15}.confirm-page__subtitle{color:#ffffff9e;font-size:1rem;line-height:1.6;margin:0 auto 1.25rem;max-width:36rem}.confirm-welcome{display:flex;align-items:flex-start;gap:.65rem;text-align:left;margin:0 auto 1.35rem;max-width:36rem;padding:.95rem 1.05rem;border-radius:14px;background:linear-gradient(145deg,#ddb58a24,#ffffff08);border:1px solid rgba(221,181,138,.22)}.confirm-welcome ion-icon{flex-shrink:0;margin-top:.1rem;font-size:1.2rem;color:var(--accent, #ddb58a)}.confirm-welcome p{margin:0;color:#ffffffc7;font-size:.95rem;line-height:1.55}.confirm-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden;text-align:left;margin-bottom:2rem}.confirm-card--fail{border-color:#f0808033;background:#f080800a}.confirm-card__ref{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.05rem 1.4rem;background:linear-gradient(135deg,#ddb58a1f,#ddb58a0a);border-bottom:1px solid rgba(255,255,255,.06)}.confirm-card__ref span{font-size:.72rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.confirm-card__ref strong{font-size:1.05rem;color:var(--accent, #ddb58a);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em}.confirm-card__details{padding:.35rem 1.4rem .85rem}.confirm-card__row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.confirm-card__row:last-child{border-bottom:none}.confirm-card__row span{font-size:.88rem;color:#ffffff7a}.confirm-card__row strong{font-size:.92rem;color:#fff;font-weight:600;text-align:right}.confirm-card__addon{margin:.85rem 1.15rem 0;padding:.85rem .9rem;border-radius:12px;background:#ddb58a14;border:1px solid rgba(221,181,138,.18)}.confirm-card__addon-label{display:flex;align-items:center;gap:.4rem;margin:0 0 .55rem;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600}.confirm-card__addon-label ion-icon{font-size:1rem}.confirm-card__total{display:flex;justify-content:space-between;align-items:center;margin:0 1.15rem 1rem;padding:.95rem 1.05rem;border-radius:14px;background:linear-gradient(135deg,#ddb58a29,#ddb58a0f);border:1px solid rgba(221,181,138,.22)}.confirm-card__total span{font-size:.78rem;color:#ffffff8c;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.confirm-card__total strong{font-size:1.45rem;color:#fff;font-weight:700}.confirm-page__next{text-align:left;margin-bottom:.5rem}.confirm-page__next h3{font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:600;font-size:clamp(1.25rem,2.5vw,1.5rem);margin:0 0 1.1rem;color:#fff}.confirm-steps{list-style:none;padding:0;margin:0;display:grid;gap:.85rem}.confirm-steps li{display:flex;gap:.85rem;align-items:flex-start;padding:1rem 1.1rem;border-radius:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.confirm-step__icon{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ddb58a1f;border:1px solid rgba(221,181,138,.22);color:var(--accent, #ddb58a);font-size:1.15rem;flex-shrink:0}.confirm-steps li strong{display:block;font-size:.95rem;color:#fff;margin-bottom:.2rem}.confirm-steps li p{margin:0;font-size:.86rem;color:#ffffff85;line-height:1.5}.confirm-page__actions{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.confirm-pay-banner{display:flex;flex-direction:column;align-items:center;gap:.85rem;margin:0 0 1.5rem;padding:1.25rem 1.5rem;border-radius:var(--radius-md);background:#ddb58a1f;border:1px solid rgba(221,181,138,.35);text-align:center}.confirm-pay-banner p{margin:0;font-size:.92rem;color:var(--text-muted);line-height:1.5}.confirm-pay-banner--success{background:#4ade801a;border-color:#4ade804d}.confirm-pay-banner--success p{color:#bbf7d0f2}.confirm-pay-banner__cta{display:inline-flex;align-items:center;gap:.45rem;padding:.75rem 1.35rem;background:var(--accent, #ddb58a);color:#1a0f05;border-radius:var(--radius-sm);font-weight:700;font-size:.9rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.confirm-pay-banner__cta:hover{transform:translateY(-1px);box-shadow:0 12px 28px #ddb58a38}.confirm-card__payment-row{border-top:1px solid rgba(255,255,255,.08);padding-top:.75rem;margin-top:.5rem}.confirm-card__payment-row strong.is-paid{color:#4ade80}.confirm-card__payment-row strong.is-unpaid{color:#facc15}.payment-page,.cancel-page{min-height:80vh;padding:4.5rem 0 3rem}.payment-shell,.cancel-shell{max-width:520px;margin:0 auto}.payment-card,.cancel-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:1.25rem;padding:2rem 1.75rem}.payment-card__eyebrow,.cancel-card__eyebrow{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:clamp(1.15rem,2.5vw,1.45rem);letter-spacing:.01em;text-transform:none;color:#ddb58af2;margin-bottom:.35rem}.payment-card__title{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:clamp(1.35rem,2.8vw,1.75rem);font-weight:600;margin:0 0 1.25rem;color:#fff}.payment-card__notice{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1.25rem;padding:.85rem 1rem;border-radius:.75rem;border:1px solid rgba(221,181,138,.22);background:#ddb58a14;color:#ffffffc7;font-size:.88rem;line-height:1.5}.payment-card__notice ion-icon{flex-shrink:0;margin-top:.1rem;font-size:1.15rem;color:var(--accent, #ddb58a)}.payment-card__notice em{font-style:italic;color:#ddb58af2}.payment-card__status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding:.65rem .85rem;border-radius:.65rem;background:#facc1514;border:1px solid rgba(250,204,21,.18)}.payment-card__status-label{font-size:.78rem;color:#ffffff8c;text-transform:uppercase;letter-spacing:.08em}.payment-card__status-badge{font-size:.78rem;font-weight:700;color:#facc15;text-transform:uppercase;letter-spacing:.06em}.payment-summary{list-style:none;padding:0;margin:0 0 1.25rem}.payment-summary li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;font-size:.92rem;color:#ffffffb8;border-bottom:1px solid rgba(255,255,255,.06)}.payment-summary li:last-child{border-bottom:none}.payment-summary li strong{color:#fff;font-weight:600;text-align:right}.payment-total{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:1rem 0 0;margin-top:.35rem;border-top:1px solid rgba(255,255,255,.12)}.payment-total__label{font-size:.85rem;color:#ffffff9e}.payment-total__amount{font-size:1.55rem;font-weight:700;color:#fff}.payment-note{margin-top:1rem;text-align:center;font-size:.78rem;color:#ffffff8c}.payment-note a{color:#ddb58ad9;text-decoration:underline}.payment-secure{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.75rem;font-size:.78rem;color:#ffffff80}.payment-page__alert{margin-bottom:1.5rem}.payment-placeholder{background:#ddb58a1a;border:1px solid rgba(221,181,138,.28);border-radius:.75rem;padding:1.25rem 1.5rem;margin-bottom:1.25rem;font-size:.87rem;color:#ffffffb8;line-height:1.55}.payment-placeholder strong{color:#f59e0b;display:block;margin-bottom:.35rem}.pay-btn--link{text-decoration:none}.back-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:#ffffff8c;text-decoration:none;margin-bottom:1.25rem;transition:color .2s}.back-link:hover{color:#ffffffd9}.pay-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.85rem 1.25rem;background:var(--accent, #ddb58a);color:#1a0f05;border:none;border-radius:.65rem;font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.pay-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px #ddb58a38}.confirm-page__suggestions{text-align:left;margin-bottom:2rem;padding:1.25rem 1.5rem;border-radius:var(--radius-md);background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.confirm-page__suggestions h3{display:flex;align-items:center;gap:.4rem;font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:600;font-size:1.2rem;margin:0 0 .75rem}.confirm-page__suggestions h3 ion-icon{color:var(--accent)}.confirm-page__suggestions ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.confirm-page__suggestions li{position:relative;padding-left:1.25rem;font-size:.9rem;color:var(--text-muted);line-height:1.5}.confirm-page__suggestions li:before{content:"•";position:absolute;left:0;color:var(--accent)}.avail-modal__no-avail{text-align:center;padding:2rem 1.5rem}.avail-modal__no-avail-icon{font-size:3rem;color:#f08080;margin-bottom:.75rem}.avail-modal__no-avail h3{margin:0 0 .5rem;font-size:1.1rem}.avail-modal__no-avail p{color:var(--text-muted);font-size:.9rem;line-height:1.6;margin:0 0 1.25rem}.avail-modal__no-avail .btn{font-size:.88rem}.avail-room--unavail{opacity:1;border-color:#f0808026;background:#f080800a}.avail-room--unavail:hover{border-color:#f0808026;background:#f080800a}.avail-room__sold-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .75rem;border-radius:999px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#f080801f;color:#f08080;border:1px solid rgba(240,128,128,.2)}.avail-room__sold-badge ion-icon{font-size:.85rem}.detail-reviews{padding-top:1.75rem;padding-bottom:1.75rem;border-top:none}.detail-reviews>*{max-width:none;margin-left:0;margin-right:0}@media (max-width: 768px){.accom-header{padding-top:1.75rem}.accom-header__top{grid-template-columns:1fr;gap:1.25rem;align-items:start}.accom-header__aside{align-items:flex-start;text-align:left}.accom-header__photos{margin-left:0}.accom-tabs{top:0;padding-top:.55rem}.accom-tabs__btn{padding:.6rem .85rem .75rem;font-size:.84rem}.room-row{grid-template-columns:112px minmax(0,1fr);gap:.75rem;padding:.55rem}.room-row__body{flex-direction:column;align-items:flex-start;gap:.65rem;padding-right:.15rem}.room-row__aside{width:100%;flex-direction:row;align-items:center;justify-content:space-between}.room-row__price{text-align:left}.card.surface{padding:1.35rem;margin-bottom:0}.detail-reviews{padding-top:1.35rem;padding-bottom:1.35rem}}@media (max-width: 480px){.room-row{grid-template-columns:1fr}.room-row__media{min-height:160px}}.accom-dock{display:none}@media (max-width: 980px){.accom-dock{display:flex;align-items:center;justify-content:space-between;gap:1rem;position:fixed;left:0;right:0;bottom:0;z-index:80;padding:.85rem 1.15rem calc(.85rem + env(safe-area-inset-bottom,0px));background:#080808eb;border-top:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -16px 40px #00000059}.accom-dock__price strong{color:var(--accent);font-size:1.15rem}.accom-dock__price span{color:var(--text-dim);font-size:.8rem;margin-left:.15rem}.accom-dock__btn{flex:0 0 auto;padding:.7rem 1.15rem;white-space:nowrap}body.accom-page{padding-bottom:5rem}}.detail-reviews__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.detail-reviews__heading{font-family:var(--font-heading, "Playfair Display", serif);font-size:clamp(22px,2.5vw,30px);color:#fff;font-weight:700;margin:0}.detail-reviews__summary{margin:0}.detail-reviews__list{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.detail-review{padding:24px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:14px}.detail-review__header{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.detail-review__avatar{width:40px;height:40px;border-radius:50%;background:#ddb58a26;color:var(--accent, #ddb58a);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0}.detail-review__name{color:#fff;font-size:.95rem;display:block}.detail-review__date{color:#ffffff4d;font-size:.75rem;display:block}.detail-review__stars{margin-left:auto;display:flex;gap:2px;color:var(--accent, #ddb58a);font-size:.95rem}.detail-review__comment{color:#fff9;font-size:.9rem;line-height:1.7;margin:0}.detail-reviews__empty{color:#ffffff4d;font-style:normal;font-size:.9rem}.detail-reviews__form-wrap{margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.05)}.detail-reviews__form-wrap h3{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.2rem;color:#fff;margin-bottom:20px}.detail-reviews__form{max-width:520px}.detail-reviews__form .form-group{display:grid;gap:.45rem;margin-bottom:.9rem}.detail-reviews__form .form-group label{font-size:.82rem;color:#ffffffe0;font-weight:600}.detail-reviews__form select,.detail-reviews__form textarea{width:100%;padding:.78rem .9rem;background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.98rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.detail-reviews__form textarea{min-height:122px;resize:vertical;line-height:1.55}.detail-reviews__form select:focus,.detail-reviews__form textarea:focus{outline:none;border-color:#ddb58a8c;box-shadow:0 0 0 3px #ddb58a1f;background:#ffffff0a}.detail-reviews__form select option{color:#111;background:#fff}.detail-reviews__submit{margin-top:.25rem;min-width:190px}.detail-reviews__already{margin-top:24px;color:#ffffff59;font-size:.85rem}.detail-reviews__login-cta{margin-top:24px;color:#ffffff73;font-size:.9rem}.detail-reviews__login-cta a{color:var(--accent, #ddb58a);text-decoration:underline;text-underline-offset:2px}@media (max-width: 600px){.detail-review__stars{margin-left:0;width:100%}}
