/* Booking pages inherit Vida Coral's typography, navigation and palette. */
.vcr-booking{max-width:1240px;margin:auto;padding:48px 28px 80px;color:var(--ink,#282d32)}
.vcr-booking-intro{max-width:760px;margin:0 0 34px}
.vcr-booking-intro .vcr-eyebrow{color:var(--navy,#0b2d45);font-size:13px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin:0 0 12px}
.vcr-booking-intro h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4.2vw,56px);font-weight:500;line-height:1.14;color:var(--navy,#0b2d45);margin:0 0 18px}
.vcr-booking-intro p{font-size:18px;line-height:1.65;max-width:660px}
.vcr-booking-back{display:inline-flex;align-items:center;gap:8px;color:var(--navy,#0b2d45);margin-bottom:28px;text-decoration:none;font-size:15px}
.vcr-booking-back:hover{text-decoration:underline}
.vcr-booking .hfy-wrap{font-family:Urbanist,Arial,sans-serif;color:var(--ink,#282d32);font-size:16px;line-height:1.55}
.vcr-booking .hfy-wrap h1,.vcr-booking .hfy-wrap h2,.vcr-booking .hfy-wrap h3{font-family:'Playfair Display',Georgia,serif;color:var(--navy,#0b2d45);font-weight:500}
.vcr-booking .hfy-search-form-wrap{background:var(--ivory,#fbf8f2);border:1px solid var(--line,#dedfd9);border-radius:16px;padding:24px;margin-bottom:32px}
.vcr-booking .hfy-wrap .btn-primary,.vcr-booking .hfy-wrap .bg-primary{background:var(--navy,#0b2d45)!important;border-color:var(--navy,#0b2d45)!important;color:white!important}
.vcr-booking .hfy-wrap .btn-primary:hover{background:#164866!important;border-color:#164866!important}
.vcr-booking .hfy-wrap .text-primary{color:var(--navy,#0b2d45)!important}
.vcr-booking .hfy-wrap .btn{border-radius:8px;min-height:44px;font-family:Urbanist,Arial,sans-serif;font-weight:600}
.vcr-booking .hfy-wrap .form-control{font-family:Urbanist,Arial,sans-serif;font-size:16px;border-radius:8px;min-height:46px;border-color:#ccd3d5;background:#fff;color:var(--ink,#282d32)}
.vcr-booking .hfy-wrap :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--turquoise,#22c1bd);outline-offset:3px}
.vcr-booking .hfy-wrap .listings .container{max-width:none;width:100%;padding:0}
.vcr-booking .hfy-wrap .listing-block{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0}
.vcr-booking .hfy-wrap .listing-block>div{width:100%;max-width:none;flex:none;padding:0}
.vcr-booking .hfy-wrap .list-card{height:100%;border:1px solid var(--line,#dedfd9);border-radius:14px;overflow:hidden;background:#fff;box-shadow:none;margin:0}
.vcr-booking .hfy-wrap .list-card .img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.vcr-booking .hfy-wrap .list-card .info{padding:20px}
.vcr-booking .hfy-wrap .list-card .description{font-size:19px;font-weight:600;line-height:1.35;color:var(--navy,#0b2d45)}
.vcr-booking .hfy-wrap .list-card .title{font-size:22px;font-weight:700;color:var(--navy,#0b2d45);margin-top:14px}
.vcr-booking-support{border-top:1px solid var(--line,#dedfd9);margin-top:48px;padding-top:28px;font-size:16px;line-height:1.65}
.vcr-booking-support a{color:var(--navy,#0b2d45);text-underline-offset:3px}
@media(max-width:1000px){.vcr-booking .hfy-wrap .listing-block{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:640px){.vcr-booking{padding:30px 20px 50px}.vcr-booking-intro p{font-size:17px}.vcr-booking .hfy-search-form-wrap{padding:16px}.vcr-booking .hfy-wrap .listing-block{grid-template-columns:1fr}.vcr-booking-back{margin-bottom:22px}.vcr-booking .hfy-wrap .list-card .info{padding:18px}}

.vcr-property-gallery{margin-bottom:32px;border-radius:16px;overflow:hidden}
.vcr-property-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:40px;align-items:start}
.vcr-property-details,.vcr-property-booking{min-width:0}
.vcr-property-booking{position:sticky;top:110px;border:1px solid #dedfd9;border-radius:14px;background:#fff;padding:22px}
.vcr-property-layout .container{width:100%;max-width:100%;padding:0}
.vcr-property-booking .hfy-wrap{width:100%;margin:0}
@media(max-width:1000px){.vcr-property-layout{grid-template-columns:minmax(0,1fr) 330px;gap:24px}}
@media(max-width:760px){.vcr-property-layout{display:flex;flex-direction:column}.vcr-property-booking{position:static;width:100%;order:-1}.vcr-property-gallery{margin-bottom:24px}}

/* Availability-only release. Server-side checkout is also disabled. */
.vcr-booking .book-now,.vcr-booking .book-on-airbnb,.vcr-booking .payment-schedule,.vcr-booking .payment-schedule-description,.vcr-booking .hint-text,.vcr-booking .direct-inquiry-modal-open{display:none!important}
.vcr-availability-note{font-size:14px;color:#52616b;margin:24px 0}.vcr-property-details h1{font-family:Playfair Display,serif;font-size:clamp(28px,4vw,42px)}

.vcr-location-map{width:100%;height:360px;border:0;border-radius:14px;display:block}.vcr-map-caption{font-size:14px;line-height:1.6;margin:12px 0}.vcr-map-caption a{text-decoration:underline}.vcr-property-booking .listing-description-notes{display:none}
