.cal{border:1px solid var(--color-stone);border-radius:var(--radius-md);padding:16px;background:var(--color-white)}.cal__inputs{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--color-stone-dark);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:16px}.cal__input{padding:8px 12px;cursor:pointer;transition:background .15s}.cal__input+.cal__input{border-left:1px solid var(--color-stone-dark)}.cal__input--active{background:var(--color-linen-dark);outline:2px solid var(--color-text);outline-offset:-2px;border-radius:3px;z-index:1}.cal__input--filled .cal__value{color:var(--color-text);font-weight:600}.cal__label{display:block;font-size:.5625rem;font-weight:700;letter-spacing:.1em;color:var(--color-text)}.cal__value{display:block;font-size:.8125rem;color:var(--color-text-muted);margin-top:1px}.cal__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal__month-title{font-weight:600;font-size:.875rem}.cal__arrow{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:4px 8px;border-radius:50%;color:var(--color-text);line-height:1}.cal__arrow:hover{background:var(--color-linen-dark)}.cal__arrow:disabled{color:var(--color-stone-dark);cursor:default;background:none}.cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0}.cal__dow{text-align:center;font-size:.625rem;font-weight:600;color:var(--color-text-muted);padding:4px 0}.cal__day{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2px 0;min-height:46px;cursor:pointer;font-size:.8125rem;font-weight:500;border-radius:0;transition:background .1s;position:relative;gap:1px}.cal__day:hover:not(.cal__day--off){background:var(--color-linen-dark)}.cal__day--empty{cursor:default}.cal__day--past{color:var(--color-stone-dark);cursor:default}.cal__day--booked{color:var(--color-stone-dark);cursor:not-allowed;text-decoration:line-through}.cal__day--booked,.cal__day--past,.cal__day--empty,.cal__day--off{pointer-events:none}.cal__day--today .cal__num{font-weight:800;text-decoration:underline}.cal__day--sel{background:var(--color-text)!important;color:var(--color-white)!important;border-radius:50%}.cal__day--sel .cal__price{color:#ffffffb3}.cal__day--in{background:var(--color-linen-dark)}.cal__day--range-s{background:var(--color-linen-dark);border-radius:50% 0 0 50%}.cal__day--range-e{background:var(--color-linen-dark);border-radius:0 50% 50% 0}.cal__num{line-height:1.2;display:block}.cal__price{font-size:.5625rem;color:var(--color-text-muted);line-height:1;white-space:nowrap;display:block}.cal__day--booked .cal__price{display:none}.cal__loading{text-align:center;padding:24px;color:var(--color-text-muted);font-size:.8125rem}.cal__loading--hide{display:none}.cal__summary{margin-top:12px;display:none}.cal__summary--show{display:block}.cal__summary-box{background:var(--color-linen-dark);border-radius:var(--radius-sm);padding:12px}.cal__row{display:flex;justify-content:space-between;padding:3px 0;font-size:.8125rem}.cal__row--total{border-top:1px solid var(--color-stone);margin-top:6px;padding-top:8px;font-weight:700;font-size:.9375rem}.cal__row--save{color:var(--color-success);font-weight:600}.cal__foot{margin-top:12px;display:flex;flex-direction:column;gap:8px}.cal__clear{background:none;border:none;font-size:.8125rem;font-weight:600;text-decoration:underline;cursor:pointer;color:var(--color-text);padding:0;text-align:left}.gallery-trigger{position:absolute;bottom:16px;right:16px;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--color-white);border:1px solid var(--color-text);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;z-index:2;transition:background .15s}.gallery-trigger:hover{background:var(--color-linen-dark)}.lightbox{display:none;position:fixed;inset:0;z-index:1000;background:#000000f2;flex-direction:column;align-items:center}.lightbox--open{display:flex}.lightbox__header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 24px;color:#fff}.lightbox__count{font-size:.875rem;font-weight:500}.lightbox__close{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0 8px;line-height:1}.lightbox__close:hover{opacity:.7}.lightbox__stage{flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;padding:0 60px;position:relative}.lightbox__img-wrap{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.lightbox__img{max-width:90vw;max-height:65vh;object-fit:contain;border-radius:4px;transition:opacity .2s}.lightbox__arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;font-size:2.5rem;cursor:pointer;padding:8px 16px;border-radius:50%;line-height:1;transition:background .15s}.lightbox__arrow:hover{background:#fff3}.lightbox__arrow--prev{left:12px}.lightbox__arrow--next{right:12px}.lightbox__caption{color:#ffffffb3;font-size:.8125rem;padding:8px 24px;text-align:center}.lightbox__thumbs{display:flex;gap:6px;padding:12px 24px 20px;overflow-x:auto;max-width:100%;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}.lightbox__thumb{width:64px;height:48px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.4;transition:opacity .15s;flex-shrink:0}.lightbox__thumb:hover{opacity:.7}.lightbox__thumb--active{opacity:1;outline:2px solid white;outline-offset:2px}.prop-gallery[data-astro-cid-vbtvpcm5]{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-sm);border-radius:var(--radius-lg);overflow:hidden;max-height:480px}.prop-gallery__main[data-astro-cid-vbtvpcm5] img[data-astro-cid-vbtvpcm5]{width:100%;height:100%;object-fit:cover}.prop-gallery__grid[data-astro-cid-vbtvpcm5]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.prop-gallery__grid[data-astro-cid-vbtvpcm5] img[data-astro-cid-vbtvpcm5]{width:100%;height:100%;object-fit:cover}.prop-layout[data-astro-cid-vbtvpcm5]{display:grid;grid-template-columns:1fr 420px;gap:var(--space-3xl);align-items:start}.booking-card[data-astro-cid-vbtvpcm5]{background:var(--color-white);border:1px solid var(--color-stone);border-radius:var(--radius-md);padding:var(--space-xl);box-shadow:var(--shadow-md)}.float-bar[data-astro-cid-vbtvpcm5]{position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--color-white);border-top:1px solid var(--color-stone);box-shadow:0 -4px 12px #00000014;transform:translateY(100%);transition:transform .3s ease;padding:12px 0}.float-bar--visible[data-astro-cid-vbtvpcm5]{transform:translateY(0)}.float-bar__inner[data-astro-cid-vbtvpcm5]{max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-lg);display:flex;align-items:center;justify-content:space-between}.float-bar__price[data-astro-cid-vbtvpcm5]{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.float-bar__rate[data-astro-cid-vbtvpcm5]{font-family:var(--font-heading);font-size:1.25rem}.float-bar__label[data-astro-cid-vbtvpcm5]{color:var(--color-text-muted);font-size:.875rem}.float-bar__total[data-astro-cid-vbtvpcm5]{font-size:.8125rem;color:var(--color-text-muted)}@media(max-width:900px){.prop-gallery[data-astro-cid-vbtvpcm5]{grid-template-columns:1fr;max-height:none}.prop-gallery__grid[data-astro-cid-vbtvpcm5]{display:none}.prop-layout[data-astro-cid-vbtvpcm5]{grid-template-columns:1fr}.booking-sidebar[data-astro-cid-vbtvpcm5]{position:static;order:-1}}
