:is(.tenant-shell:has(.property-page)>.tenant-header,.tenant-shell:has(.property-page)>.tenant-footer){display:none}.tenant-shell:has(.property-page){background:0 0}.property-page{--bg:#fafaf8;--bg-card:#fff;--bg-elevated:#f5f4f1;--bg-recessed:#eeedea;--bg-wash:#e5e3df;--ink:#141210;--ink-2:#2e2a27;--ink-3:#524d48;--ink-4:#5e5b56;--ink-5:#a8a39d;--border:#d6d3cd;--border-hover:#b8b4ad;--border-focus:#7a756f;--gold:#c4943d;--gold-dark:#a67c2e;--gold-light:#d9ae5a;--gold-bg:#fef8ee;--gold-glow:#c4943d2e;--gold-aa:#7e5710;--green:#1d7a4a;--green-bg:#eef7f1;--red:#c0392b;--red-bg:#fdf0ee;--blue:#2563eb;--blue-bg:#eff4ff;--serif:var(--font-cormorant,"Cormorant Garamond"), Georgia, "Times New Roman", serif;--sans:var(--brand-font,var(--font-dm-sans,"DM Sans")), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--max:1200px;--gutter:clamp(1rem, 4vw, 2.5rem);--radius:14px;--radius-sm:10px;--shadow-xs:0 1px 2px #1a18160a;--shadow-sm:0 1px 3px #1a18160f, 0 1px 2px #1a181608;--shadow-md:0 4px 16px #1a181612, 0 1px 3px #1a18160a;--shadow-lg:0 8px 32px #1a181617, 0 2px 8px #1a18160a;--shadow-xl:0 16px 48px #1a18161f, 0 4px 12px #1a18160f;--shadow-card:0 2px 10px #1a18160f, 0 0 0 1px #1a18160a;--shadow-gold:0 4px 20px #c4943d40;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.65}.property-page h1,.property-page h2,.property-page h3{margin:0}.property-page a{color:inherit;text-decoration:none}.property-page img{max-width:100%;display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.property-page .main-col section,.property-page .host-row,.property-page .prop-meta{animation:fadeUp .5s var(--ease-out) both}.property-page .trust-banner{background:var(--ink);color:#fffc;text-align:center;letter-spacing:.06em;text-transform:uppercase;padding:.6rem 1rem;font-size:.73rem;font-weight:400}.property-page .trust-banner strong{color:var(--gold-light);font-weight:600}.prop-nav{z-index:200;-webkit-backdrop-filter:blur(24px)saturate(1.2);border-bottom:1px solid var(--border);padding:.65rem var(--gutter);background:#fafaf8e0;justify-content:space-between;align-items:center;gap:.5rem;transition:box-shadow .3s;display:flex;position:sticky;top:0;box-shadow:0 1px #00000008}.nav-back{color:var(--ink-3);flex-shrink:0;align-items:center;gap:.4rem;font-size:.8rem;font-weight:400;text-decoration:none;transition:color .2s;display:flex}.nav-back:hover{color:var(--gold)}.nav-back svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;width:18px;height:18px;transition:transform .2s var(--ease-out)}.nav-back:hover svg{transform:translate(-2px)}.nav-logo{font-family:var(--serif);color:var(--ink);align-items:center;gap:.5rem;min-width:0;font-size:1.08rem;font-weight:600;text-decoration:none;display:flex}.nav-logo span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-logo-img{object-fit:cover;width:30px;height:30px;box-shadow:var(--shadow-xs);border-radius:8px;flex-shrink:0}.nav-actions{flex-shrink:0;align-items:center;gap:.55rem;display:flex}.nav-link{color:var(--ink-3);transition:all .2s var(--ease-out);white-space:nowrap;border-radius:8px;padding:.4rem .7rem;font-size:.78rem;font-weight:400;text-decoration:none}.nav-link:hover{background:var(--bg-elevated);color:var(--ink)}.nav-link.highlight{background:var(--ink);color:#fff;padding:.45rem .9rem;font-weight:500}.nav-link.highlight:hover{background:var(--ink-2)}.nav-phone{color:var(--ink-3);border:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;border-radius:2rem;align-items:center;gap:.4rem;max-width:200px;padding:.38rem .85rem;font-size:.78rem;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s,box-shadow .2s;display:flex;overflow:hidden}.nav-phone:hover{border-color:var(--border-hover);color:var(--ink);box-shadow:var(--shadow-xs)}.nav-phone svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:13px;height:13px}.nav-icon-btn{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;transition:border-color .2s, box-shadow .2s, transform .15s var(--ease-spring);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-icon-btn:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:scale(1.05)}.nav-icon-btn:active{transform:scale(.95)}.nav-icon-btn svg{width:15px;height:15px;stroke:var(--ink-3);fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.nav-icon-btn.active svg{stroke:#d94b4b;fill:#d94b4b}.nav-icon-btn.nav-icon-liked svg{stroke:#e11d48;fill:#e11d48}.like-toast{z-index:9999;width:280px;font-family:var(--body);background:#fff;border:1px solid #0000001a;border-radius:12px;padding:1rem;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 30px #0000001f}.like-toast-title{color:#1c1c1c;margin:0 0 .25rem;font-size:.85rem;font-weight:600}.like-toast-sub{color:#666;margin:0 0 .75rem;font-size:.75rem;line-height:1.4}.like-toast-form{flex-direction:column;gap:.5rem;display:flex}.like-toast-input{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:.45rem .65rem;font-size:.78rem;transition:border-color .15s}.like-toast-input:focus{border-color:#e11d48}.like-toast-cta{color:#fff;cursor:pointer;background:#e11d48;border:none;border-radius:8px;width:100%;padding:.45rem;font-size:.78rem;font-weight:600;transition:opacity .15s}.like-toast-cta:disabled{opacity:.6;cursor:not-allowed}.like-toast-skip{color:#999;cursor:pointer;background:0 0;border:none;width:100%;margin-top:.25rem;padding:0;font-size:.72rem;text-decoration:underline}.like-toast-thanks{color:#16a34a;text-align:center;margin:0;padding:.5rem 0;font-size:.85rem;font-weight:600}.gallery-hero{grid-template-rows:1fr 1fr;grid-template-columns:1.15fr 1fr;gap:5px;height:clamp(380px,48vw,560px);display:grid;overflow:hidden}.gallery-main{cursor:pointer;grid-row:1/3;position:relative;overflow:hidden}.gallery-main img,.gallery-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out)}.gallery-main:hover img{transform:scale(1.025)}.gallery-thumb{cursor:pointer;position:relative;overflow:hidden}.gallery-thumb:hover img{transform:scale(1.04)}.gallery-more{color:#fff;letter-spacing:.03em;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1a18166b;justify-content:center;align-items:center;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .3s;display:flex;position:absolute;inset:0}.gallery-more:hover{background:#1a181694}.gallery-hero-mobile{background:var(--bg-elevated);width:100%;display:none;position:relative}.gallery-carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;width:100%;height:clamp(260px,65vw,420px);display:flex;overflow:auto hidden}.gallery-carousel::-webkit-scrollbar{display:none}.gallery-slide{scroll-snap-align:start;scroll-snap-stop:always;cursor:pointer;flex:0 0 100%;width:100%;height:100%;position:relative}.gallery-slide img{object-fit:cover;width:100%;height:100%}.gallery-arrow{color:#1a1816;cursor:pointer;z-index:5;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s,transform .2s,opacity .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #00000026}.gallery-arrow:hover:not(:disabled){background:#fff;transform:translateY(-50%)scale(1.05)}.gallery-arrow:disabled{opacity:.35;cursor:not-allowed}.gallery-arrow-prev{left:10px}.gallery-arrow-next{right:10px}.gallery-counter{color:#fff;letter-spacing:.02em;z-index:4;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:500;position:absolute;bottom:12px;right:12px}.gallery-dots{z-index:4;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.gallery-dot{cursor:pointer;background:#ffffff8c;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .2s,width .2s;box-shadow:0 1px 3px #00000040}.gallery-dot.active{background:#fff;border-radius:4px;width:22px}.page-wrap{max-width:var(--max);padding:2.75rem var(--gutter) 5rem;grid-template-columns:1fr 375px;align-items:start;gap:3.25rem;margin:0 auto;display:grid;overflow:hidden}.page-wrap>*{min-width:0}.main-col{min-width:0;overflow:hidden}.main-col>section{min-width:0}.prop-header{margin-bottom:1rem}.prop-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold-aa);align-items:center;gap:.5rem;margin-bottom:.65rem;font-size:.64rem;font-weight:600;display:flex}.prop-eyebrow-sep{background:linear-gradient(90deg, var(--gold), var(--gold-light));border-radius:1px;width:28px;height:1.5px}.prop-h1{font-family:var(--serif);color:var(--ink);letter-spacing:-.015em;margin-bottom:.85rem;font-size:clamp(1.85rem,3.2vw,2.75rem);font-weight:400;line-height:1.12}.prop-h1 em{font-style:italic;font-weight:300}.prop-meta{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.prop-meta-item{color:var(--ink-2);align-items:center;gap:.35rem;font-size:.82rem;display:flex}.prop-meta-item svg{width:14px;height:14px;stroke:var(--ink-3);fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.prop-meta-dot{background:var(--ink-5);border-radius:50%;width:3px;height:3px}.divider{background:var(--border);height:1px;margin:2rem 0}.section-title{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;margin-bottom:1.1rem;font-size:1.5rem;font-weight:400}.host-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;display:flex}.host-info{align-items:center;gap:.9rem;display:flex}.host-avatar{background:var(--bg-elevated);border:2.5px solid var(--bg-card);width:52px;height:52px;box-shadow:var(--shadow-md);border-radius:50%;flex-shrink:0;overflow:hidden}.host-avatar img{object-fit:cover;width:100%;height:100%}.host-name{color:var(--ink);font-size:.94rem;font-weight:500}.host-since{color:var(--ink-3);margin-top:.15rem;font-size:.76rem}.host-contact{gap:.45rem;display:flex}.host-contact a{color:var(--ink-2);border:1px solid var(--border);transition:all .2s var(--ease-out);border-radius:2rem;align-items:center;gap:.4rem;padding:.38rem .85rem;font-size:.76rem;text-decoration:none;display:flex}.host-contact a:hover{border-color:var(--gold);color:var(--gold);box-shadow:0 2px 8px var(--gold-glow)}.host-contact a svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.about-content{grid-template-columns:1.2fr 1fr;gap:2rem;margin-top:.75rem;display:grid}.about-text{flex-direction:column;display:flex}.desc-text{color:var(--ink-2);font-size:.93rem;font-weight:400;line-height:1.82}.desc-more{color:var(--gold-dark);cursor:pointer;border:none;border-bottom:1px solid var(--gold);font-size:.8rem;font-weight:500;font-family:var(--sans);background:0 0;align-items:center;gap:.3rem;margin-top:.85rem;padding-bottom:2px;transition:all .2s;display:inline-flex}.desc-more:hover{color:var(--gold);border-color:var(--gold-dark)}.amenities-grid{grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1rem;display:grid}.amenity{color:var(--ink-2);align-items:center;gap:.7rem;padding:.4rem 0;font-size:.86rem;display:flex}.amenity svg{width:17px;height:17px;stroke:var(--ink-3);fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.amenity.muted{color:var(--ink-5);text-decoration:line-through}.amenity.muted svg{stroke:var(--ink-5)}.feature-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all .25s var(--ease-out);align-items:flex-start;gap:.7rem;padding:.8rem .9rem;display:flex;position:relative}.feature-item:hover{border-color:var(--gold);box-shadow:0 2px 12px var(--gold-glow);transform:translateY(-1px)}.feature-icon{background:linear-gradient(135deg, var(--gold-bg), #fff5e0);width:36px;height:36px;color:var(--gold);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;display:flex;box-shadow:inset 0 -1px 2px #c4943d1a}.feature-text{flex:1;min-width:0}.feature-title{color:var(--ink);margin:0;font-size:.85rem;font-weight:500;line-height:1.35}.feature-item p{color:var(--ink-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.2rem 0 0;font-size:.75rem;font-weight:300;line-height:1.5;display:-webkit-box;overflow:hidden}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px;margin-top:.75rem;display:grid}.gallery-item{border-radius:var(--radius-sm);aspect-ratio:4/3;cursor:pointer;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.gallery-item:hover img{transform:scale(1.05)}.gallery-caption{color:#fff;background:linear-gradient(#0000,#0000008c);padding:.5rem .7rem;font-size:.7rem;font-weight:300;position:absolute;bottom:0;left:0;right:0}.gallery-actions{margin-top:.85rem}.booking-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xl);position:sticky;top:80px;overflow:hidden}.booking-card-inner{padding:1.4rem 1.5rem}.bc-price{align-items:baseline;gap:.35rem;margin-bottom:.35rem;display:flex}.bc-amount{font-family:var(--serif);color:var(--ink);font-size:2rem;font-weight:600}.bc-per{color:var(--ink-3);font-size:.78rem;font-weight:400}.bc-price-from{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.15rem;font-size:.68rem;font-weight:500}.booking-widget-pro{border:1px solid #0000001a;border-radius:16px;margin-bottom:30px;padding:24px;box-shadow:0 4px 12px #0000001a}.rounded-xxl{border-radius:16px}.shadow-600{box-shadow:0 4px 12px #0000001a}.booking-widget-header{margin-bottom:20px}.booking-price-container{align-items:baseline;display:flex}.booking-price-prefix{margin-right:5px;font-size:14px}.booking-search-bar{margin-bottom:20px}.booking-message{border:1px solid var(--border,#e0e0e0);background-color:var(--bg-elevated,#f5f5f5);color:var(--ink,#333);border-radius:8px 8px 0 0;margin-bottom:-1px;padding:8px 12px;font-size:14px;font-weight:600;display:flex}.booking-date-container{background-color:#fff;border:1px solid #0003;border-radius:8px;width:100%;margin-bottom:15px;display:flex;overflow:hidden}.booking-date-input{cursor:pointer;flex-direction:column;width:50%;padding:8px 12px;display:flex;position:relative}.booking-date-input:hover{background-color:#f9f9f9}.booking-date-label{color:var(--ink-3,#666);font-size:12px}.booking-date-value{color:var(--ink,#333);font-size:14px;font-weight:600}.booking-date-value.selected{color:var(--gold,#b8860b)}.booking-date-separator{background-color:#0003;width:1px}.booking-guests-container{cursor:pointer;border:1px solid #0003;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:8px 12px;display:flex;position:relative}.booking-guests-container:hover{background-color:#f9f9f9}.booking-guests-content{flex-direction:column;display:flex}.booking-guests-label{color:var(--ink-3,#666);font-size:12px}.booking-guests-value{color:var(--ink,#333);font-size:14px;font-weight:600}.booking-guests-arrow{color:#666;width:24px;height:24px}.booking-button-container{margin-bottom:20px}.booking-button-pro{background-color:var(--gold,#2a5c8b);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:8px;width:100%;padding:14px 24px;font-size:18px;font-weight:700;transition:background-color .3s}.booking-button-pro:hover{background-color:var(--gold-dark,#1e4a75)}.booking-disclaimer{text-align:center;color:var(--ink-3,#666);margin-top:10px;font-size:14px}.booking-features-container{border-top:1px solid var(--border,#eee);margin-top:20px;padding-top:15px}.booking-feature-item{color:var(--gold,#2a5c8b);align-items:center;font-size:14px;font-weight:700;display:flex}.booking-feature-item svg{flex-shrink:0;width:20px;height:20px;margin-right:8px}.calendar-container{background-color:#fff;border-radius:10px;margin-bottom:30px;padding:20px;box-shadow:0 5px 20px #0000001a}.calendar-navigation{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.calendar-nav-btn{cursor:pointer;color:var(--ink,#333);background:0 0;border:none;padding:5px 10px;font-size:24px;transition:all .3s}.calendar-month-title{text-align:center;flex-grow:1;font-size:20px;font-weight:600}.calendar-grid{flex-wrap:wrap;justify-content:space-between;display:flex}.calendar-month{width:48%;margin-bottom:20px}.calendar-month-header{text-align:center;margin-bottom:15px}.calendar-month-name{color:var(--ink,#333);font-size:18px;font-weight:600}.calendar-weekdays{text-align:center;grid-template-columns:repeat(7,1fr);margin-bottom:10px;display:grid}.calendar-weekday{color:var(--ink-3,#666);padding:5px 0;font-size:14px;font-weight:500}.calendar-days{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.calendar-day{cursor:pointer;height:40px;color:inherit;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:14px;font-weight:500;transition:all .3s;display:flex;position:relative}.calendar-day:focus-visible{outline:2px solid var(--gold,#2a5c8b);outline-offset:2px}.calendar-day[aria-disabled=true]{cursor:not-allowed}.calendar-day.empty{cursor:default;background:0 0}.calendar-day.available{border:1px solid var(--gold,#4caf50);color:var(--gold-aa,#7e5710)}.calendar-day.unavailable{background-color:var(--bg-recessed,#f2f4f7);color:var(--ink-3,#524d48);border:1px solid var(--border,#d8dde3);cursor:not-allowed;text-decoration:line-through}.calendar-day.selected{background-color:var(--gold-aa,#7e5710);color:#fff;border:1px solid var(--gold-aa,#7e5710)}.calendar-day.in-range{background-color:var(--gold-bg,#e8f5e9);border:1px solid var(--gold,#4caf50);color:var(--gold-aa,#7e5710)}.calendar-legend{flex-wrap:wrap;justify-content:center;margin-top:20px;display:flex}.legend-item{align-items:center;margin:0 15px 10px;font-size:13px;display:flex}.legend-color{border-radius:4px;width:20px;height:20px;margin-right:8px}.legend-checkout-only{background:linear-gradient(135deg, transparent calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(135deg, #fff 0 50%, var(--bg-recessed,#f2f4f7) 50% 100%);border:1px solid var(--border,#d8dde3)}.calendar-day.checkout-only{background:linear-gradient(135deg, transparent calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(135deg, #fff 0 50%, var(--bg-recessed,#f2f4f7) 50% 100%);cursor:not-allowed;color:var(--ink-3,#524d48);border:1px solid var(--border,#d8dde3);text-decoration:none}.calendar-day.checkout-only:hover{background:linear-gradient(135deg, transparent calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(135deg, #fff 0 50%, var(--bg-recessed,#f2f4f7) 50% 100%)}.calendar-day.checkout-only-active{background:linear-gradient(135deg, transparent calc(50% - 1px), var(--gold,#4caf50) calc(50% - 1px), var(--gold,#4caf50) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(135deg, #fff 0 50%, var(--gold-bg,#e8f5e9) 50% 100%);cursor:pointer;color:var(--gold-aa,#7e5710);border:1px solid var(--gold,#4caf50);text-decoration:none}.calendar-day.checkout-only-active:hover{background:linear-gradient(135deg, transparent calc(50% - 1px), var(--gold,#4caf50) calc(50% - 1px), var(--gold,#4caf50) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(135deg, #fff 0 50%, var(--gold-bg,#e8f5e9) 50% 100%)}.calendar-day.checkin-only{background:linear-gradient(45deg, transparent calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(45deg, var(--bg-recessed,#f2f4f7) 0 50%, #fff 50% 100%);cursor:not-allowed;color:var(--ink-3,#524d48);border:1px solid var(--border,#d8dde3);text-decoration:none}.calendar-day.checkin-only:hover{background:linear-gradient(45deg, transparent calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% - 1px), var(--border-hover,#cfc9c0) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(45deg, var(--bg-recessed,#f2f4f7) 0 50%, #fff 50% 100%)}.calendar-day.checkin-only-active{background:linear-gradient(45deg, transparent calc(50% - 1px), var(--gold,#4caf50) calc(50% - 1px), var(--gold,#4caf50) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(45deg, var(--gold-bg,#e8f5e9) 0 50%, #fff 50% 100%);cursor:pointer;color:var(--gold-aa,#7e5710);border:1px solid var(--gold,#4caf50);text-decoration:none}.calendar-day.checkin-only-active:hover{background:linear-gradient(45deg, transparent calc(50% - 1px), var(--gold,#4caf50) calc(50% - 1px), var(--gold,#4caf50) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(45deg, var(--gold-bg,#e8f5e9) 0 50%, #fff 50% 100%)}.calendar-info{text-align:center;background-color:var(--bg-elevated,#f5f5f5);border-radius:5px;margin-top:20px;padding:15px}.calendar-info p{color:var(--ink-3,#666);margin:5px 0;font-size:14px}.booking-widget-calendar{border:1px solid var(--border,#0000001a);border-radius:8px;margin-top:15px;margin-bottom:15px;overflow:hidden}.booking-widget-calendar .calendar-container{box-shadow:none;border-radius:0;margin-bottom:0;padding:15px}.booking-widget-calendar .calendar-month{width:100%;margin-bottom:15px}.booking-widget-calendar .calendar-navigation{margin-bottom:15px}.booking-widget-calendar .calendar-month-title{font-size:16px}.booking-widget-calendar .calendar-day{height:40px;min-height:40px;font-size:14px}.booking-widget-calendar .calendar-info{margin-top:10px;padding:10px;font-size:13px}.booking-widget-calendar .calendar-nav-btn{padding:3px 8px;font-size:18px}@media (max-width:768px){.calendar-grid{flex-direction:column}.calendar-month{width:100%}.calendar-day{height:44px;min-height:44px;font-size:14px}.booking-widget-calendar .calendar-day{height:44px;min-height:44px;font-size:13px}}.booking-card .booking-widget-pro{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.booking-card .booking-search-bar{border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .2s;overflow:hidden}.booking-card .booking-search-bar:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.booking-card .booking-button-pro{background:var(--gold);border-radius:var(--radius-sm);font-family:var(--sans);cursor:pointer;transition:all .25s var(--ease-out);color:#fff;letter-spacing:.03em;text-transform:none;border:none;width:100%;margin-top:.85rem;padding:.95rem;font-size:.9rem;font-weight:600}.booking-card .booking-button-pro:hover{background:var(--gold-dark);box-shadow:var(--shadow-gold);transform:translateY(-1px)}.booking-card .booking-button-pro:active{transform:translateY(0)}.bc-trust{gap:.45rem;margin-top:.95rem;display:flex}.bc-trust-item{background:var(--bg-elevated);border-radius:var(--radius-sm);text-align:center;color:var(--ink-2);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:.6rem .45rem;font-size:.64rem;line-height:1.35;transition:background .2s;display:flex}.bc-trust-item:hover{background:var(--bg-recessed)}.bc-trust-item svg{width:16px;height:16px;stroke:var(--gold);fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.bc-no-charge{color:var(--green);text-align:center;justify-content:center;align-items:center;gap:.3rem;margin-top:.55rem;font-size:.73rem;font-weight:500;display:flex}.bc-no-charge svg{stroke:currentColor;fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.bc-stripe{color:var(--ink-4);border-top:1px solid var(--border);justify-content:center;align-items:center;gap:.35rem;margin-top:.8rem;padding-top:.8rem;font-size:.66rem;display:flex}.bc-alt{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;margin-top:.85rem;padding:1rem 1.2rem;transition:border-color .2s}.bc-alt:hover{border-color:var(--border-hover)}.bc-alt p{color:var(--ink-4);margin-bottom:.35rem;font-size:.78rem}.bc-alt a{color:var(--ink);align-items:center;gap:.35rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.bc-alt a:hover{color:var(--gold)}.reviews-summary{background:var(--bg-elevated);border-radius:var(--radius);align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.reviews-score{text-align:center;flex-shrink:0}.reviews-score .big{font-family:var(--serif);color:var(--ink);font-size:2.8rem;font-weight:300;line-height:1}.reviews-score .sub{color:var(--ink-4);margin-top:.15rem;font-size:.7rem}.stars{color:var(--gold);font-size:.88rem}.reviews-bars{flex-direction:column;flex:1;gap:.4rem;display:flex}.review-bar{color:var(--ink-3);align-items:center;gap:.6rem;font-size:.74rem;display:flex}.bar-track{background:var(--bg-wash);border-radius:3px;flex:1;height:5px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--gold), var(--gold-light));height:100%;transition:width .6s var(--ease-out);border-radius:3px}.testimonial-grid{flex-direction:column;gap:1rem;display:flex}.testimonial-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all .25s var(--ease-out);padding:1.35rem}.testimonial-item:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover)}.testimonial-top{justify-content:space-between;align-items:center;margin-bottom:.7rem;display:flex}.testimonial-author{align-items:center;gap:.65rem;display:flex}.testimonial-author-avatar{background:linear-gradient(135deg, var(--bg-elevated), var(--bg-wash));width:40px;height:40px;color:var(--ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:500;display:flex;overflow:hidden}.testimonial-author-avatar img{object-fit:cover;width:100%;height:100%}.author-info h3,.author-info h4{color:var(--ink);margin:0;font-size:.86rem;font-weight:500}.author-info p{color:var(--ink-3);margin:.05rem 0 0;font-size:.7rem}.testimonial-content p{color:var(--ink-2);margin:0;font-size:.88rem;font-weight:400;line-height:1.78}.testimonial-stars{color:var(--gold);font-size:.84rem}.review-source{letter-spacing:.02em;border-radius:2rem;align-items:center;gap:.3rem;padding:.18rem .55rem;font-size:.62rem;font-weight:600;display:inline-flex}.review-source.airbnb{color:#e0494d;background:#ff585d14}.review-source.booking{color:#003b95;background:#003b9514}.review-source.google{color:#3b78de;background:#4285f414}.review-source.direct{background:var(--green-bg);color:var(--green)}.review-verified{color:var(--green);align-items:center;gap:.2rem;font-size:.62rem;font-weight:500;display:inline-flex}.review-verified svg{stroke:currentColor;fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:10px;height:10px}.pricing-table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.86rem}.pricing-table th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-bottom:2px solid var(--border);padding:.65rem 1rem;font-size:.6rem;font-weight:600}.pricing-table td{border-bottom:1px solid var(--border);color:var(--ink-2);padding:.8rem 1rem;font-weight:400}.pricing-table tr:last-child td{border-bottom:none}.pricing-table .price-val{color:var(--ink);font-weight:600}.pt-dot{vertical-align:middle;border-radius:3px;width:10px;height:10px;margin-right:.55rem;display:inline-block}.pt-high{background:#fff0e6;outline:1.5px solid #c05a10}.pt-mid{background:#fffbeb;outline:1.5px solid #a07510}.pt-low{background:var(--bg-elevated);outline:1.5px solid var(--ink-5)}.pricing-extras{background:var(--bg-elevated);border-radius:var(--radius-sm);gap:1.5rem;margin-top:1rem;padding:.9rem 1rem;display:flex}.pricing-extra-item{flex-direction:column;gap:.15rem;display:flex}.pricing-extra-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:.62rem;font-weight:600}.pricing-extra-value{color:var(--ink);font-size:.92rem;font-weight:600}.cancel-banner{background:var(--green-bg);border-radius:var(--radius);border:1px solid #1d7a4a26;margin-top:.5rem;padding:1.15rem 1.3rem}.cancel-banner-title{color:var(--green);align-items:center;gap:.4rem;margin-bottom:.55rem;font-size:.84rem;font-weight:600;display:flex}.cancel-banner-title svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.cancel-rows{flex-direction:column;gap:.35rem;display:flex}.cancel-row{color:var(--ink-2);justify-content:space-between;padding:.15rem 0;font-size:.82rem;display:flex}.cancel-row span:last-child{color:var(--ink);font-weight:600}.cancel-note{color:var(--ink-3);margin-top:.65rem;font-size:.74rem;font-weight:400;line-height:1.6}.rules-grid{grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.85rem;display:grid}.rule{color:var(--ink-2);border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid #0000;align-items:center;gap:.65rem;padding:.45rem .65rem;font-size:.85rem;transition:all .2s;display:flex}.rule:hover{border-color:var(--border);background:var(--bg-elevated)}.rule svg{flex-shrink:0}.rule i{color:var(--ink-3);text-align:center;flex-shrink:0;width:18px}.rule-expandable{padding:0;display:block;overflow:hidden}.rule-expandable summary{cursor:pointer;align-items:center;gap:.65rem;padding:.45rem .65rem;list-style:none;display:flex}.rule-expandable summary::-webkit-details-marker{display:none}.rule-expandable summary:after{content:"+";color:var(--ink-4);font-family:var(--sans);margin-left:auto;font-size:1rem;line-height:1}.rule-expandable[open] summary:after{content:"−"}.rule-expandable p{color:var(--ink-3);margin:-.1rem .65rem .65rem calc(18px + 1.3rem);font-size:.78rem;line-height:1.55}.local-grid{grid-template-columns:1fr 1fr;gap:.85rem;margin-top:.85rem;display:grid}.local-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all .25s var(--ease-out);padding:1.1rem 1.2rem}.local-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.local-card h3{color:var(--ink);margin-bottom:.5rem;font-size:.88rem;font-weight:500}.local-card h3 i{color:var(--gold);margin-right:.4rem}.local-card-title{letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;font-size:.7rem;font-weight:600}.local-card ul{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.local-card li{color:var(--ink-2);align-items:baseline;gap:.45rem;font-size:.82rem;font-weight:400;display:flex}.local-card li:before{content:"—";color:var(--ink-5);flex-shrink:0;font-size:.7rem}.services-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:.85rem;display:grid}.service-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all .25s var(--ease-out);overflow:hidden}.service-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.service-card-icon{background:linear-gradient(135deg, var(--bg-card), var(--bg));height:100px;color:var(--gold);justify-content:center;align-items:center;font-size:2rem;display:flex}.service-card-img{width:100%;height:180px;overflow:hidden}.service-card-body{padding:1rem 1.1rem}.service-card-body h3{color:var(--ink);margin:0 0 .35rem;font-size:.9rem;font-weight:600}.service-card-body p{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .6rem;font-size:.8rem;line-height:1.45;display:-webkit-box;overflow:hidden}.service-price{color:var(--gold-aa);background:#daa52014;border-radius:20px;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:inline-block}.location-content{margin-top:.75rem}.map-placeholder{aspect-ratio:16/7;background:var(--bg-elevated);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:.65rem;width:100%;display:flex}.map-placeholder svg{width:28px;height:28px;stroke:var(--ink-4);fill:none;stroke-width:1.5px}.map-placeholder p{color:var(--ink-4);font-size:.78rem}.map-container{border-radius:var(--radius);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.map-container iframe{border:0;width:100%;height:300px}.location-info{margin-top:1rem}.location-info-grid{grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem;display:grid}.location-info-item{flex-direction:column;gap:.15rem;display:flex}.location-info-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-size:.6rem;font-weight:500}.location-info-val{color:var(--ink-2);font-size:.82rem}.contact-grid{grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:.85rem;display:grid}.contact-grid>*{min-width:0}.contact-form{flex-direction:column;gap:.8rem;min-width:0;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.fg{flex-direction:column;gap:.35rem;display:flex}.fg label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);font-size:.62rem;font-weight:600}.fg input,.fg select,.fg textarea{font-family:var(--sans);color:var(--ink);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;width:100%;padding:.65rem .9rem;font-size:.88rem;transition:border-color .2s}.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--gold)}.fg textarea{resize:vertical;min-height:100px;line-height:1.5}.btn-submit{background:var(--ink);color:#fff;font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;border-radius:3rem;align-self:flex-start;padding:.8rem 2rem;font-size:.76rem;font-weight:500;transition:background .2s}.btn-submit:hover{background:var(--ink-2)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.form-group{flex-direction:column;gap:.35rem;display:flex}.form-group label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:.64rem;font-weight:600}.form-group input,.form-group textarea{font-family:var(--sans);color:var(--ink);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-sizing:border-box;outline:none;width:100%;max-width:100%;padding:.65rem .85rem;font-size:.88rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.form-group textarea{resize:vertical;min-height:95px;line-height:1.65}.btn-primary{background:var(--gold);color:#fff;border-radius:var(--radius-sm);font-family:var(--sans);cursor:pointer;transition:all .25s var(--ease-out);letter-spacing:.03em;border:none;padding:.85rem 1.35rem;font-size:.85rem;font-weight:600}.btn-primary:hover{background:var(--gold-dark);box-shadow:var(--shadow-gold);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.contact-details{flex-direction:column;gap:.9rem;min-width:0;display:flex;overflow:hidden}.contact-detail{align-items:flex-start;gap:.7rem;display:flex}.contact-icon{border-radius:var(--radius-sm);background:var(--bg-elevated);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.contact-icon svg,.contact-icon i{width:15px;height:15px;color:var(--ink-4);font-size:.82rem}.contact-detail a{color:var(--ink-2);word-break:break-all;text-decoration:none;transition:color .2s}.contact-detail a:hover{color:var(--gold)}.social-links{gap:.65rem;margin-top:.85rem;display:flex}.social-links a{border:1px solid var(--border);width:38px;height:38px;color:var(--ink-3);transition:all .2s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:.88rem;text-decoration:none;display:flex}.social-links a:hover{border-color:var(--gold);color:var(--gold);box-shadow:0 2px 8px var(--gold-glow)}.prop-footer{background:var(--ink);color:#ffffffc7;padding:3.5rem var(--gutter) 2rem}.footer-inner{max-width:var(--max);grid-template-columns:1.2fr 1fr 1fr;gap:2.5rem;margin:0 auto;display:grid}.footer-inner h3{font-family:var(--serif);color:#ffffffe0;margin-bottom:.75rem;font-size:1.05rem;font-weight:400}.footer-inner p{font-size:.82rem;line-height:1.65}.footer-links{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.footer-links a{color:#ffffffc7;font-size:.82rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-bottom{max-width:var(--max);text-align:center;color:#ffffffb8;border-top:1px solid #ffffff1f;margin:2rem auto 0;padding-top:1.35rem;font-size:.78rem}.footer-bottom a{color:#ffffffc7;text-underline-offset:2px;text-decoration:underline}.footer-bottom a:hover{color:#fff}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000eb;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.modal-img-wrap{width:92%;max-width:1100px;position:relative}.modal-img-wrap img{object-fit:contain;border-radius:var(--radius);width:100%;max-height:85vh}.modal-close{color:#ffffff73;cursor:pointer;background:0 0;border:none;font-size:1.5rem;transition:color .2s;position:absolute;top:-46px;right:0}.modal-close:hover{color:#fff}.modal-nav{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.modal-nav:hover{background:#fff3;transform:translateY(-50%)scale(1.05)}.modal-nav.prev{left:-54px}.modal-nav.next{right:-54px}.modal-nav svg{stroke:#fff;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}@media (max-width:1200px){.modal-nav.prev{left:8px}.modal-nav.next{right:8px}.modal-nav{background:#0000008c;width:42px;height:42px}.modal-nav:hover{background:#000000bf}.modal-close{color:#fffc;font-size:2rem;top:-42px}}@media (max-width:580px){.modal-img-wrap{width:100%}.modal-img-wrap img{border-radius:0;max-height:78vh}.modal-nav{width:40px;height:40px}.modal-nav.prev{left:6px}.modal-nav.next{right:6px}.modal-counter{color:#ffffffeb;background:#0000008c;border-radius:999px;padding:3px 10px;font-size:.72rem;bottom:10px}.modal-close{color:#fff;background:#0000008c;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.5rem;display:flex;top:8px;right:8px}}.modal-counter{color:#ffffff4d;font-size:.74rem;position:absolute;bottom:-34px;left:50%;transform:translate(-50%)}.mobile-cta{z-index:150;background:var(--bg-card);border-top:1px solid var(--border);padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000001a}.mobile-cta-btn{min-height:44px}.mobile-cta-inner{max-width:var(--max);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.mobile-cta-price{font-family:var(--serif);color:var(--ink);font-size:1.2rem;font-weight:600}.mobile-cta-price small{color:var(--ink-4);font-size:.72rem;font-weight:300}.mobile-cta-btn{background:var(--gold);color:#fff;border-radius:var(--radius-sm);font-family:var(--sans);cursor:pointer;letter-spacing:.03em;border:none;padding:.75rem 1.75rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s}.mobile-cta-btn:hover{background:var(--gold-dark)}.booking-description{margin-bottom:1rem}.booking-desc-title:empty{display:none}.booking-desc-title{font-family:var(--serif);color:var(--ink);margin:0 0 .5rem;font-size:1.15rem;font-weight:400}.booking-advantages .amenity span{font-size:.84rem}.booking-advantage{color:var(--ink-2);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.84rem;display:flex}.booking-advantage i{width:18px;color:var(--gold);flex-shrink:0}.booking-features-container:empty{display:none}.booking-feature-item{color:var(--ink-2);align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.82rem;display:flex}.booking-feature-item svg{width:16px;height:16px;color:var(--gold);flex-shrink:0}.booking-rules:empty{display:none}.booking-rules{flex-wrap:wrap;gap:.5rem;display:flex}.booking-rule-chip{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-2);align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.78rem;display:inline-flex}.booking-rule-chip svg{width:14px;height:14px;color:var(--gold);flex-shrink:0}.nav-right{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.nav-hamburger{border:1px solid var(--border);background:var(--bg-card);cursor:pointer;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;padding:0;transition:border-color .2s,box-shadow .2s;display:none}.nav-hamburger:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xs)}.nav-hamburger span{background:var(--ink-3);border-radius:2px;width:16px;height:1.5px;transition:all .2s;display:block}.nav-drawer-close{border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--ink-3);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;margin-bottom:.5rem;transition:background .15s;display:none}.nav-drawer-close:hover{background:var(--bg-elevated)}.nav-lang-wrap{position:relative}.nav-lang-btn{border:1px solid var(--border);color:var(--ink-3);cursor:pointer;font-family:var(--sans);letter-spacing:.05em;white-space:nowrap;background:0 0;border-radius:6px;align-items:center;gap:.35rem;padding:.32rem .6rem;font-size:.72rem;font-weight:500;transition:border-color .2s,color .2s,background .2s;display:flex}.nav-lang-btn:hover{border-color:var(--border-hover);color:var(--ink);background:var(--bg-elevated)}.nav-lang-btn svg{flex-shrink:0}.nav-lang-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:300;min-width:145px;animation:.15s prop-fadeup;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}@keyframes prop-fadeup{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.nav-lang-option{cursor:pointer;width:100%;font-family:var(--sans);color:var(--ink-2);text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.78rem;transition:background .15s;display:flex}.nav-lang-option:hover{background:var(--bg-elevated)}.nav-lang-option.active{color:var(--gold);font-weight:600}.nav-lang-full{color:var(--ink-5);font-weight:400}.nav-overlay{z-index:198;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#14121066;position:fixed;inset:0}@media (max-width:960px){.gallery-hero-desktop{display:none}.gallery-hero-mobile{display:block}.page-wrap{grid-template-columns:1fr;gap:2rem}.booking-card{position:relative;top:auto}.about-content,.contact-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:1.5rem}.reviews-summary{flex-direction:column;align-items:flex-start}.mobile-cta{display:block}.nav-hamburger{display:flex}.nav-link{display:none}.nav-actions{background:var(--bg-card);border-left:1px solid var(--border);width:260px;height:100dvh;box-shadow:var(--shadow-xl);z-index:199;transition:right .28s var(--ease-out);flex-direction:column;align-items:flex-start;gap:.3rem;padding:1.25rem 1.5rem 2rem;position:fixed;top:0;right:-280px;overflow-y:auto}.nav-actions.nav-open{right:0}.nav-actions.nav-open .nav-link,.nav-drawer-close{display:flex}.nav-actions .nav-link{border-radius:var(--radius-sm);width:100%;padding:.65rem .75rem;font-size:.88rem}.nav-actions .nav-link.highlight{text-align:center;width:100%;margin-top:.5rem}.nav-actions .nav-lang-wrap{width:100%;margin:.4rem 0}.nav-actions .nav-lang-btn{justify-content:flex-start;width:100%;padding:.6rem .75rem;font-size:.82rem}.nav-actions .nav-lang-dropdown{box-shadow:none;background:var(--bg-elevated);border:1px solid var(--border);margin-top:.3rem;position:static}.nav-phone{border-radius:50%;justify-content:center;width:36px;min-width:36px;height:36px;padding:0}.nav-phone span{display:none}.nav-phone svg{width:16px;height:16px;stroke:var(--ink-3);flex-shrink:0}.nav-icon-btn{width:36px;height:36px}.amenities-grid{grid-template-columns:1fr 1fr;gap:.5rem}.feature-item{align-items:center;padding:.6rem .7rem}.feature-item p{display:none}.feature-title{font-size:.8rem}.feature-icon{width:32px;height:32px;font-size:.78rem}.rules-grid,.local-grid,.services-grid{grid-template-columns:1fr 1fr}}@media (max-width:580px){.prop-nav{gap:.3rem;padding:.5rem .65rem}.nav-back span{display:none}.nav-back svg{width:20px;height:20px}.nav-logo{gap:.35rem;font-size:.9rem}.nav-logo-img{border-radius:6px;width:24px;height:24px}.nav-actions{gap:.3rem}.nav-phone,.nav-icon-btn{width:33px;min-width:33px;height:33px}.nav-phone svg{width:14px;height:14px}.nav-icon-btn svg{width:13px;height:13px}.gallery-carousel{height:clamp(280px,80vw,420px)}.gallery-arrow{width:38px;height:38px}.prop-h1{margin-bottom:.65rem;font-size:1.6rem}.prop-eyebrow{margin-bottom:.45rem;font-size:.58rem}.section-title{margin-bottom:.8rem;font-size:1.28rem}.page-wrap{padding:1.35rem var(--gutter) 5.5rem}.divider{margin:1.4rem 0}.host-row{flex-direction:column;align-items:flex-start;gap:.65rem;padding:1rem 0}.host-avatar{width:46px;height:46px}.host-name{font-size:.88rem}.host-contact a{padding:.35rem .75rem;font-size:.74rem}.amenities-grid{grid-template-columns:1fr 1fr;gap:.4rem}.feature-item{gap:.4rem;padding:.5rem .55rem}.feature-icon{border-radius:7px;width:28px;height:28px;font-size:.72rem}.feature-title{font-size:.76rem}.rules-grid,.local-grid,.services-grid{grid-template-columns:1fr}.rule{padding:.4rem .55rem;font-size:.82rem}.local-grid{gap:.6rem}.local-card{padding:.9rem 1rem}.pricing-table{font-size:.8rem}.pricing-table th,.pricing-table td{padding:.6rem .65rem}.pricing-extras{flex-direction:column;gap:.65rem;padding:.75rem .85rem}.calendar-legend{gap:.3rem .6rem;padding:.45rem .6rem}.legend-item{font-size:.66rem}.legend-color{width:12px;height:12px}.calendar-month{width:100%}.cancel-banner{padding:.85rem 1rem}.cancel-row{font-size:.78rem}.cancel-note{font-size:.7rem}.testimonial-item{padding:1.05rem}.testimonial-content p{font-size:.84rem}.reviews-summary{padding:1rem}.about-image img{border-radius:var(--radius-sm)!important}.booking-card{border-radius:var(--radius-sm)}.booking-card-inner{padding:1.1rem 1.15rem}.bc-amount{font-size:1.65rem}.bc-trust{gap:.35rem}.bc-trust-item{padding:.5rem .35rem;font-size:.58rem}.contact-grid{gap:1.5rem}.footer-inner{gap:1.25rem}.prop-footer{padding:2rem var(--gutter) 1.5rem}.mobile-cta{padding:.75rem .9rem calc(.75rem + env(safe-area-inset-bottom))}.mobile-cta-btn{padding:.7rem 1.5rem;font-size:.84rem}.mobile-cta-price{font-size:1.1rem}.gallery-grid{grid-template-columns:1fr 1fr;gap:4px}.prop-meta{gap:.5rem}.prop-meta-item{font-size:.78rem}.prop-meta-dot{width:2px;height:2px}}@media (max-width:375px){.property-page{--gutter:.75rem}.prop-h1{font-size:1.4rem}.bc-amount{font-size:1.5rem}.booking-card-inner{padding:1rem}.amenities-grid{gap:.3rem}.feature-item{gap:.3rem;padding:.4rem .45rem}.feature-icon{border-radius:6px;width:24px;height:24px;font-size:.65rem}.feature-title{font-size:.72rem}.nav-logo span{max-width:80px}}.calendar-container{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.calendar-nav-btn{color:var(--ink-3)}.calendar-nav-btn:hover{color:var(--gold)}.calendar-month-title,.calendar-month-name{color:var(--ink);font-family:var(--sans)}.calendar-weekday{color:var(--ink-4);font-size:.72rem;font-weight:500}.calendar-day{border-radius:6px;font-size:.82rem}.calendar-day:hover{background-color:var(--bg-elevated)}.calendar-day.available{border-color:var(--gold);color:var(--gold-aa)}.calendar-day.available:hover{background-color:var(--gold-bg)}.calendar-day.unavailable{background-color:var(--bg-recessed);color:var(--ink-3);border-color:var(--border);text-decoration:line-through}.calendar-day.unavailable:hover{background-color:var(--bg-recessed)}.calendar-day.today{background-color:var(--gold-bg);border:2px solid var(--gold);color:var(--gold-aa);font-weight:700}.calendar-day.selected{background-color:var(--gold-aa);color:#fff;border-color:var(--gold-aa)}.calendar-day.in-range{background-color:var(--gold-bg);border-color:var(--gold-light);color:var(--gold-aa)}.calendar-legend{background:var(--bg-elevated);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:center;gap:.4rem .9rem;margin-top:.85rem;padding:.55rem .75rem;display:flex}.legend-item{color:var(--ink-3);white-space:nowrap;align-items:center;gap:.35rem;margin:0;font-size:.72rem;font-weight:400;display:flex}.legend-color{border-radius:4px;flex-shrink:0;width:14px;height:14px;margin-right:0}.legend-available{border:1.5px solid var(--gold);background-color:#fff}.legend-unavailable{background-color:var(--bg-recessed);border:1.5px solid var(--border)}.legend-selected{background-color:var(--gold);border:1.5px solid var(--gold)}.legend-in-range{background-color:var(--gold-bg);border:1.5px solid var(--gold-light)}.calendar-info{background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border)}.calendar-info p{color:var(--ink-3);font-size:.8rem}.booking-widget-calendar{border-color:var(--border);border-radius:var(--radius-sm)}.booking-widget-calendar .calendar-container{box-shadow:none;border:none}@media (max-width:960px){.property-page .chatbot-bubble:not(.bottom-left){bottom:84px}.property-page .chatbot-container:not(.fullscreen){max-height:calc(100dvh - 104px);bottom:84px}}@media (max-width:480px){.property-page .chatbot-bubble:not(.bottom-left){bottom:80px}.property-page .chatbot-container:not(.fullscreen){max-height:calc(100dvh - 100px);bottom:80px}}@media (max-width:960px){.property-concierge-wrapper{display:none}}@keyframes calendar-flash{0%,to{box-shadow:0 0 #6366f100}20%{box-shadow:0 0 0 6px #6366f173}60%{box-shadow:0 0 0 12px #6366f12e}}.calendar-flash-highlight{border-radius:12px;animation:1.5s ease-out calendar-flash}.property-page .related-properties{background:#fafafa;border-top:1px solid #eee;padding:4rem 1.5rem}.property-page .related-properties-inner{max-width:1200px;margin:0 auto}.property-page .related-properties-title{color:#1a1a1a;text-align:center;margin:0 0 2rem;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:400}.property-page .related-properties-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;display:grid}.property-page .related-card{color:inherit;background:#fff;border:1px solid #eaeaea;border-radius:12px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden}.property-page .related-card:hover{border-color:#c0b697;transform:translateY(-3px);box-shadow:0 6px 20px #0000000f}.property-page .related-card-photo{aspect-ratio:4/3;background:#f5f5f5;overflow:hidden}.property-page .related-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.property-page .related-card-ph{background:linear-gradient(135deg,#e8e8e8,#f5f5f5);width:100%;height:100%}.property-page .related-card-body{padding:.9rem 1rem 1.1rem}.property-page .related-card-name{color:#1a1a1a;margin-bottom:.3rem;font-size:1rem;font-weight:600;line-height:1.3}.property-page .related-card-meta{color:#71717a;font-size:.8rem}.property-page .seo-guides{background:var(--bg-elevated,#f5f4f1);border-top:1px solid var(--border,#d6d3cd);padding:3rem 1.5rem 3.5rem}.property-page .seo-guides-inner{max-width:780px;margin:0 auto}.property-page .seo-guides-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold-aa,#7e5710);margin-bottom:.6rem;font-size:.62rem;font-weight:600}.property-page .seo-guides-title{color:var(--ink,#141210);letter-spacing:-.01em;margin:0 0 1.35rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.5rem;font-weight:400;line-height:1.2}.property-page .seo-guides-list{grid-template-columns:1fr 1fr;gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.property-page .seo-guide-link{background:var(--bg-card,#fff);border:1px solid var(--border,#d6d3cd);color:var(--ink-2,#2e2a27);border-radius:10px;padding:.7rem 1rem;font-size:.86rem;font-weight:500;line-height:1.4;text-decoration:none;transition:border-color .2s,color .2s,box-shadow .15s;display:block}.property-page .seo-guide-link:hover{border-color:var(--gold,#c4943d);color:var(--gold-aa,#7e5710);box-shadow:0 2px 10px #c4943d1f}.property-page .seo-guide-link:focus-visible{outline:2px solid var(--gold-aa,#7e5710);outline-offset:2px}@media (max-width:540px){.property-page .seo-guides-list{grid-template-columns:1fr}.property-page .seo-guides-title{font-size:1.25rem}}@media print{.prop-nav,.mobile-cta,.trust-banner,.bc-alt,.related-properties{display:none}.booking-card{box-shadow:none;position:static}.page-wrap{display:block}.property-page{background:#fff}}