.villa-detail-module__IZAUGW__page{--d-gold:#c9a96e;--d-gold-light:#e8d5a3;--d-navy:#0a1628;--d-navy-mid:#132035;--d-navy-light:#1e3a5f;--d-text:#1a2535;--d-text-muted:#ffffff8c;--d-border:#00000014;font-family:var(--font-body), sans-serif;color:var(--d-text);background:#fff}.villa-detail-module__IZAUGW__nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1628f2;border-bottom:.5px solid #c9a96e26;justify-content:space-between;align-items:center;padding:1.25rem 3rem;display:flex;position:fixed;top:0;left:0;right:0}.villa-detail-module__IZAUGW__logo{font-family:var(--font-display), serif;letter-spacing:.12em;color:var(--d-gold-light);font-size:20px;font-weight:400;text-decoration:none}.villa-detail-module__IZAUGW__logo span{color:#fff}.villa-detail-module__IZAUGW__navBack{letter-spacing:.1em;color:#ffffff80;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:300;text-decoration:none;transition:color .2s;display:flex}.villa-detail-module__IZAUGW__navBack:hover{color:var(--d-gold-light)}.villa-detail-module__IZAUGW__navBack:before{content:"←"}.villa-detail-module__IZAUGW__navCtaWrap{align-items:center;gap:1rem;display:flex}.villa-detail-module__IZAUGW__navPrice{font-family:var(--font-display), serif;color:var(--d-gold-light);font-size:26px;font-weight:300}.villa-detail-module__IZAUGW__navPrice span{color:#ffffff80;font-size:14px;font-weight:300;font-family:var(--font-body), sans-serif}.villa-detail-module__IZAUGW__navBook{letter-spacing:.12em;text-transform:uppercase;color:var(--d-navy);background:var(--d-gold);cursor:pointer;border:none;padding:10px 24px;font-size:11px;font-weight:400;text-decoration:none;transition:background .2s;display:inline-block}.villa-detail-module__IZAUGW__navBook:hover{background:var(--d-gold-light)}.villa-detail-module__IZAUGW__gallery{grid-template-rows:320px 320px;grid-template-columns:2fr 1fr 1fr;gap:4px;margin-top:72px;display:grid}.villa-detail-module__IZAUGW__galleryItem{position:relative;overflow:hidden}.villa-detail-module__IZAUGW__galleryItem img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.villa-detail-module__IZAUGW__galleryItem:hover img{transform:scale(1.04)}.villa-detail-module__IZAUGW__galleryMain{grid-row:1/3}.villa-detail-module__IZAUGW__galleryBtn{color:#fff;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a1628cc;border:.5px solid #fff3;padding:8px 18px;font-size:11px;font-weight:400;transition:background .2s;position:absolute;bottom:1.25rem;right:1.25rem}.villa-detail-module__IZAUGW__galleryBtn:hover{background:#0a1628f2}.villa-detail-module__IZAUGW__container{max-width:1200px;margin:0 auto;padding:0 3rem}.villa-detail-module__IZAUGW__layout{grid-template-columns:1fr 360px;align-items:start;gap:4rem;padding:3.5rem 0 5rem;display:grid}.villa-detail-module__IZAUGW__breadcrumb{color:#aaa;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:1.25rem;font-size:11px;font-weight:300;display:flex}.villa-detail-module__IZAUGW__breadcrumb a{color:inherit;text-decoration:none}.villa-detail-module__IZAUGW__breadcrumb a:hover{color:var(--d-gold)}.villa-detail-module__IZAUGW__breadcrumb span{color:#ccc}.villa-detail-module__IZAUGW__propEyebrow{letter-spacing:.25em;text-transform:uppercase;color:var(--d-gold);align-items:center;gap:10px;margin-bottom:.75rem;font-size:10px;font-weight:400;display:flex}.villa-detail-module__IZAUGW__propEyebrow:before{content:"";background:#c9a96e80;width:20px;height:.5px;display:block}.villa-detail-module__IZAUGW__propTitle{font-family:var(--font-display), serif;color:var(--d-navy);margin-bottom:.5rem;font-size:clamp(32px,4vw,52px);font-weight:300;line-height:1.1}.villa-detail-module__IZAUGW__propLoc{color:#888;align-items:center;gap:6px;margin-bottom:1.5rem;font-size:13px;font-weight:300;display:flex}.villa-detail-module__IZAUGW__propLoc:before{content:"📍";font-size:12px}.villa-detail-module__IZAUGW__propTags{flex-wrap:wrap;gap:8px;margin-bottom:2rem;display:flex}.villa-detail-module__IZAUGW__tag{letter-spacing:.08em;color:var(--d-navy);border:.5px solid #0a162833;padding:5px 14px;font-size:11px;font-weight:300}.villa-detail-module__IZAUGW__propStars{color:var(--d-gold);letter-spacing:3px;align-items:center;gap:10px;margin-bottom:2rem;font-size:14px;display:flex}.villa-detail-module__IZAUGW__propStars span{color:#888;letter-spacing:.05em;font-size:12px;font-weight:300;font-family:var(--font-body), sans-serif}.villa-detail-module__IZAUGW__specs{background:#0a162814;border:.5px solid #0a162814;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:2.5rem;display:grid}.villa-detail-module__IZAUGW__spec{text-align:center;background:#fff;padding:1.25rem 1rem}.villa-detail-module__IZAUGW__specIcon{margin-bottom:6px;font-size:20px;display:block}.villa-detail-module__IZAUGW__specVal{font-family:var(--font-display), serif;color:var(--d-navy);font-size:22px;font-weight:400;display:block}.villa-detail-module__IZAUGW__specLbl{letter-spacing:.12em;text-transform:uppercase;color:#aaa;margin-top:3px;font-size:10px;font-weight:300;display:block}.villa-detail-module__IZAUGW__sectionLabel{letter-spacing:.25em;text-transform:uppercase;color:var(--d-gold);align-items:center;gap:10px;margin-bottom:1.25rem;font-size:10px;font-weight:400;display:flex}.villa-detail-module__IZAUGW__sectionLabel:before{content:"";background:#c9a96e80;width:20px;height:.5px;display:block}.villa-detail-module__IZAUGW__propDesc{color:#555;margin-bottom:2.5rem;font-size:15px;font-weight:300;line-height:1.85}.villa-detail-module__IZAUGW__propDesc p+p{margin-top:1rem}.villa-detail-module__IZAUGW__amenities{margin-bottom:2.5rem}.villa-detail-module__IZAUGW__amenityGrid{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.villa-detail-module__IZAUGW__amenity{color:#444;border-bottom:.5px solid #0000000f;align-items:center;gap:10px;padding:10px 0;font-size:13px;font-weight:300;display:flex}.villa-detail-module__IZAUGW__amenityIcon{text-align:center;flex-shrink:0;width:24px;font-size:16px}.villa-detail-module__IZAUGW__locationSection{margin-bottom:2.5rem}.villa-detail-module__IZAUGW__locationNote{color:#777;margin-bottom:1.25rem;font-size:13px;font-weight:300;line-height:1.7}.villa-detail-module__IZAUGW__mapEmbed{border:.5px solid var(--d-border);width:100%;height:300px;overflow:hidden}.villa-detail-module__IZAUGW__mapEmbed iframe{border:none;width:100%;height:100%}.villa-detail-module__IZAUGW__bookingCard{background:#fff;border:.5px solid #0a16281f;padding:2rem;position:sticky;top:96px;box-shadow:0 4px 40px #00000012}.villa-detail-module__IZAUGW__bookingPrice{font-family:var(--font-display), serif;color:var(--d-navy);margin-bottom:4px;font-size:38px;font-weight:300;line-height:1}.villa-detail-module__IZAUGW__bookingPriceUnit{color:#aaa;font-size:16px;font-family:var(--font-body), sans-serif;font-weight:300}.villa-detail-module__IZAUGW__bookingPriceSub{color:#aaa;margin-bottom:1.75rem;font-size:12px;font-weight:300}.villa-detail-module__IZAUGW__bookingPriceSub em{color:var(--d-gold);font-style:normal}.villa-detail-module__IZAUGW__formRow{margin-bottom:1rem}.villa-detail-module__IZAUGW__formRow label{letter-spacing:.18em;text-transform:uppercase;color:#aaa;margin-bottom:6px;font-size:10px;font-weight:400;display:block}.villa-detail-module__IZAUGW__formRow input,.villa-detail-module__IZAUGW__formRow select{width:100%;font-family:var(--font-body), sans-serif;color:var(--d-navy);appearance:none;background:#f7f4ef;border:.5px solid #0a16281f;outline:none;padding:11px 14px;font-size:13px;font-weight:300;transition:border-color .2s}.villa-detail-module__IZAUGW__formRow input:focus,.villa-detail-module__IZAUGW__formRow select:focus{border-color:var(--d-gold)}.villa-detail-module__IZAUGW__bookingDivider{background:#0a162814;height:.5px;margin:1.25rem 0}.villa-detail-module__IZAUGW__priceBreakdown{margin-bottom:1.5rem}.villa-detail-module__IZAUGW__priceRow{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.villa-detail-module__IZAUGW__priceRowLabel{color:#777;font-size:13px;font-weight:300}.villa-detail-module__IZAUGW__priceRowVal{color:var(--d-navy);font-size:13px;font-weight:400}.villa-detail-module__IZAUGW__priceRowTotal .villa-detail-module__IZAUGW__priceRowLabel{font-family:var(--font-display), serif;color:var(--d-navy);font-size:16px;font-weight:400}.villa-detail-module__IZAUGW__priceRowTotal .villa-detail-module__IZAUGW__priceRowVal{font-family:var(--font-display), serif;color:var(--d-navy);font-size:20px;font-weight:400}.villa-detail-module__IZAUGW__bookBtn{background:var(--d-navy);width:100%;color:var(--d-gold-light);font-family:var(--font-body), sans-serif;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border:none;margin-bottom:1rem;padding:15px;font-size:12px;font-weight:400;transition:background .2s}.villa-detail-module__IZAUGW__bookBtn:hover{background:var(--d-navy-light)}.villa-detail-module__IZAUGW__bookBtn:disabled{opacity:.55;cursor:not-allowed}.villa-detail-module__IZAUGW__bookNote{color:#aaa;text-align:center;font-size:11px;font-weight:300;line-height:1.6}.villa-detail-module__IZAUGW__formError{color:#b3402f;margin-bottom:1rem;font-size:12px;font-weight:400}.villa-detail-module__IZAUGW__formSuccess{text-align:center;padding:1rem 0}.villa-detail-module__IZAUGW__formSuccessTitle{font-family:var(--font-display), serif;color:var(--d-navy);margin-bottom:.5rem;font-size:20px;font-weight:400}.villa-detail-module__IZAUGW__formSuccessBody{color:#777;font-size:13px;font-weight:300;line-height:1.6}.villa-detail-module__IZAUGW__formRow textarea{width:100%;font-family:var(--font-body), sans-serif;color:var(--d-navy);resize:vertical;background:#f7f4ef;border:.5px solid #0a16281f;outline:none;min-height:90px;padding:11px 14px;font-size:13px;font-weight:300;transition:border-color .2s}.villa-detail-module__IZAUGW__formRow textarea:focus{border-color:var(--d-gold)}.villa-detail-module__IZAUGW__bookingFeatures{border-top:.5px solid #0a162814;flex-direction:column;gap:8px;margin-top:1.5rem;padding-top:1.5rem;display:flex}.villa-detail-module__IZAUGW__bookingFeat{color:#666;align-items:center;gap:8px;font-size:12px;font-weight:300;display:flex}.villa-detail-module__IZAUGW__bookingFeat:before{content:"✓";color:var(--d-gold);font-size:12px}.villa-detail-module__IZAUGW__calWrap{margin-bottom:1rem;position:relative}.villa-detail-module__IZAUGW__calInputs{cursor:pointer;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.villa-detail-module__IZAUGW__calInputBox{background:#f7f4ef;border:.5px solid #0a16281f;padding:10px 14px;transition:border-color .2s}.villa-detail-module__IZAUGW__calInputBoxActive{border-color:var(--d-gold)}.villa-detail-module__IZAUGW__calInputLabel{letter-spacing:.18em;text-transform:uppercase;color:#aaa;margin-bottom:4px;font-size:10px;font-weight:400}.villa-detail-module__IZAUGW__calInputVal{color:var(--d-navy);font-size:13px;font-weight:300}.villa-detail-module__IZAUGW__calInputValPlaceholder{color:#bbb}.villa-detail-module__IZAUGW__calInputSep{color:#ccc;text-align:center;font-size:14px}.villa-detail-module__IZAUGW__calPopup{z-index:50;background:#fff;border:.5px solid #0a162824;padding:1.25rem;display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 8px 32px #0000001f}.villa-detail-module__IZAUGW__calPopupOpen{display:block}.villa-detail-module__IZAUGW__calNav{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.villa-detail-module__IZAUGW__calNavBtn{color:var(--d-navy);cursor:pointer;background:0 0;border:.5px solid #0a16281f;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;line-height:1;transition:border-color .2s;display:flex}.villa-detail-module__IZAUGW__calNavBtn:hover{border-color:var(--d-gold);color:var(--d-gold)}.villa-detail-module__IZAUGW__calMonthTitle{font-family:var(--font-display), serif;color:var(--d-navy);font-size:16px;font-weight:400}.villa-detail-module__IZAUGW__calDow{letter-spacing:.1em;text-transform:uppercase;color:#bbb;text-align:center;padding:4px 0 8px;font-size:10px;font-weight:400}.villa-detail-module__IZAUGW__calDows{grid-template-columns:repeat(7,1fr);display:grid}.villa-detail-module__IZAUGW__calDays{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.villa-detail-module__IZAUGW__calDay{color:var(--d-navy);text-align:center;cursor:pointer;font-size:12px;font-weight:300;font-family:var(--font-body), sans-serif;background:0 0;border:none;padding:7px 4px;transition:background .15s;position:relative}.villa-detail-module__IZAUGW__calDay:hover:not(.villa-detail-module__IZAUGW__calDayBooked):not(.villa-detail-module__IZAUGW__calDayPast){color:var(--d-gold);background:#c9a96e1f}.villa-detail-module__IZAUGW__calDayEmpty{cursor:default}.villa-detail-module__IZAUGW__calDayPast{color:#ddd;cursor:not-allowed}.villa-detail-module__IZAUGW__calDayBooked{color:#ccc;cursor:not-allowed;background:#00000008;text-decoration:line-through}.villa-detail-module__IZAUGW__calDaySelected{background:var(--d-navy);color:var(--d-gold-light);font-weight:400}.villa-detail-module__IZAUGW__calDayInRange{color:var(--d-navy);background:#c9a96e1a}.villa-detail-module__IZAUGW__calDayRangeStart{background:var(--d-navy);color:var(--d-gold-light);border-radius:2px 0 0 2px}.villa-detail-module__IZAUGW__calDayRangeEnd{background:var(--d-navy);color:var(--d-gold-light);border-radius:0 2px 2px 0}.villa-detail-module__IZAUGW__calLegend{color:#aaa;border-top:.5px solid #00000012;align-items:center;gap:1.25rem;margin-top:1rem;padding-top:.75rem;font-size:11px;font-weight:300;display:flex}.villa-detail-module__IZAUGW__calLeg{border-radius:1px;width:12px;height:12px;display:inline-block}.villa-detail-module__IZAUGW__calLegBooked{background:#00000012;border:.5px solid #ddd}.villa-detail-module__IZAUGW__calLegSel{background:var(--d-navy)}.villa-detail-module__IZAUGW__concierge{background:var(--d-navy);text-align:center;border-top:.5px solid #c9a96e1f;padding:3rem}.villa-detail-module__IZAUGW__concierge2Eyebrow{letter-spacing:.25em;text-transform:uppercase;color:var(--d-gold);margin-bottom:.75rem;font-size:10px}.villa-detail-module__IZAUGW__concierge2Title{font-family:var(--font-display), serif;color:#fff;margin-bottom:.5rem;font-size:28px;font-weight:300}.villa-detail-module__IZAUGW__concierge2Sub{color:var(--d-text-muted);margin-bottom:1.75rem;font-size:13px;font-weight:300}.villa-detail-module__IZAUGW__concierge2Btns{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.villa-detail-module__IZAUGW__concierge2Btn{letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:11px 28px;font-size:11px;font-weight:400;text-decoration:none;transition:all .2s}.villa-detail-module__IZAUGW__concierge2BtnPrimary{background:var(--d-gold);color:var(--d-navy);border:none}.villa-detail-module__IZAUGW__concierge2BtnPrimary:hover{background:var(--d-gold-light)}.villa-detail-module__IZAUGW__concierge2BtnOutline{color:var(--d-gold);background:0 0;border:.5px solid #c9a96e66}.villa-detail-module__IZAUGW__concierge2BtnOutline:hover{border-color:var(--d-gold);background:#c9a96e0f}.villa-detail-module__IZAUGW__footer{background:#060e1a;border-top:.5px solid #c9a96e1a;justify-content:space-between;align-items:center;padding:2rem 3rem;display:flex}.villa-detail-module__IZAUGW__footerLogo{font-family:var(--font-display), serif;letter-spacing:.12em;color:var(--d-gold-light);font-size:16px;text-decoration:none}.villa-detail-module__IZAUGW__footerCopy{color:#fff3;font-size:11px;font-weight:300}@media (max-width:1024px){.villa-detail-module__IZAUGW__layout{grid-template-columns:1fr}.villa-detail-module__IZAUGW__bookingCard{position:static}}@media (max-width:768px){.villa-detail-module__IZAUGW__nav{padding:1rem 1.5rem}.villa-detail-module__IZAUGW__navPrice{display:none}.villa-detail-module__IZAUGW__gallery{grid-template-rows:240px 180px;grid-template-columns:1fr 1fr}.villa-detail-module__IZAUGW__galleryMain{grid-area:1/1/2/3}.villa-detail-module__IZAUGW__container{padding:0 1.5rem}.villa-detail-module__IZAUGW__layout{gap:2rem}.villa-detail-module__IZAUGW__specs,.villa-detail-module__IZAUGW__amenityGrid{grid-template-columns:repeat(2,1fr)}.villa-detail-module__IZAUGW__footer{text-align:center;flex-direction:column;gap:1rem}}
