/* CristalVacations: a complete stay, expressed through imagery and useful detail. */
body:has(.cv-property-v4) .header{min-height:86px;padding-top:12px;padding-bottom:12px}
body:has(.cv-property-v4) .header>.brand{width:232px;flex-basis:232px}
body:has(.cv-property-v4) .header .site-logo{width:232px}
.cv-property-v4.wrap{max-width:1240px}
.cv-property-v4 .breadcrumb{padding:17px 0 5px}
.cv-property-v4 .property-heading{margin:9px 0 22px;gap:24px}
.cv-property-v4 .property-heading h1{font-size:clamp(29px,2.7vw,40px);line-height:1.18;letter-spacing:-1px}
.cv-property-v4 .property-heading .eyebrow{margin-bottom:7px}
.cv-property-v4 .property-heading .cv-property-tagline{margin-top:8px;font-size:12px}
.cv-property-v4 .cv-reserve-top{min-width:160px;min-height:48px;padding:14px 20px}
.cv-property-v4 .cv-property-hero,.cv-property-v4 .property-photo-tiles{height:430px}
.cv-property-v4 .property-photo-layout{gap:8px}
.cv-property-v4 .property-photo-layout.has-gallery{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.cv-property-v4 .property-photo-layout.gallery-five{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}
.cv-property-v4 .gallery-five .property-photo-tiles{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}
.cv-property-v4 .property-photo-tiles:has(button:only-child){grid-template-rows:1fr}
.cv-property-v4 .property-photo-tiles button{background:#eef2f4;min-width:0;min-height:0}
.cv-property-v4 .property-photo-tiles img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cv-property-v4 .property-photo-tiles button:hover img{transform:scale(1.035)}
.cv-property-v4 .property-sections{padding:12px 0 5px;gap:25px;background:#fff;overflow-x:auto;white-space:nowrap}
.cv-property-v4 .property-sections a{font-size:12px;min-height:32px;padding:8px 0;flex:0 0 auto}
.cv-property-v4 .property-layout{grid-template-columns:minmax(0,1fr) 312px;gap:40px;padding-top:28px}
.cv-property-v4 .property-body>section{margin:0 0 24px;padding:0 0 24px;scroll-margin-top:78px}
.cv-property-v4 .property-body .eyebrow{margin-bottom:8px;font-size:9px;letter-spacing:1.5px}
.cv-property-v4 .property-body h2{font-size:27px;line-height:1.25;margin:0 0 16px;letter-spacing:-.6px}
.cv-property-v4 .property-description{max-width:none}
.cv-property-v4 .property-description p{font-size:16px;line-height:1.7;margin-bottom:12px;max-width:76ch}
.cv-property-v4 .cv-property-highlights{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 20px}
.cv-property-v4 .cv-property-highlights li{border:1px solid #dce4e8;background:#f7f9fa;padding:8px 11px;font-size:12px;line-height:1.5;font-weight:500;flex:0 1 auto}
.cv-property-v4 .property-practical{gap:20px;margin-top:20px;background:#f8fafb;padding:12px 16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.cv-property-v4 .property-practical>div{padding:0;border:0}
.cv-property-v4 .property-practical dt{font-size:10px;margin:0 0 3px}
.cv-property-v4 .property-practical dd{font-size:16px;line-height:1.5}
.cv-property-v4 .cv-editorial-fit{font-size:16px;line-height:1.65;margin:0 0 17px;max-width:75ch}
.cv-property-v4 .cv-editorial-detail-grid{gap:0 25px;margin-top:15px}
.cv-property-v4 .cv-editorial-detail-grid article{padding:18px 0 17px}
.cv-property-v4 .cv-editorial-detail-grid h3{font-size:18px;margin-bottom:9px;padding-right:0}
.cv-property-v4 .cv-editorial-detail-grid p{font-size:15px;line-height:1.7;margin:0}
.cv-property-v4 .cv-detail-number{display:none}
.cv-property-v4 .cv-before-booking{background:#f5f8fa;padding:20px 23px!important;border:0!important;margin:0 0 24px!important}
.cv-property-v4 .cv-before-booking h2{font-size:23px;margin-bottom:10px}
.cv-property-v4 .cv-before-booking ul{padding-left:17px;margin:12px 0 0;columns:2;column-gap:28px}
.cv-property-v4 .cv-before-booking li{font-size:14px;line-height:1.65;break-inside:avoid;margin:0 0 9px!important}
.cv-property-v4 .property-amenities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 13px;list-style:none}
.cv-property-v4 .property-amenities li{padding:10px 11px!important;min-height:40px;background:#f7f9fa;border:1px solid #e4eaed;font-size:13px;line-height:1.5}
.cv-property-v4 .property-amenities li:before{display:none}
.cv-property-v4 .property-address{gap:15px}
.cv-property-v4 .property-address address{font-size:14px}
.cv-property-v4 .booking-card{padding:23px;top:70px;scroll-margin-top:75px;box-shadow:none;border-top:3px solid #0b253b}
.cv-property-v4 .booking-card h3{font-size:23px;margin-bottom:10px}
.cv-property-v4 .booking-card .cv-booking-intro{margin-bottom:17px;font-size:13px;line-height:1.65}
.cv-property-v4 .cv-channel-row{min-height:73px;padding:17px 0}
.cv-property-v4 .cv-channel-brand img{width:100px}
.cv-property-v4 .cv-channel-action{font-size:11px;gap:7px}
.cv-property-v4 .cv-affiliate-note{font-size:10px!important;margin-top:11px;line-height:1.6!important}
.cv-property-v4 .booking-caption{font-size:10px!important;line-height:1.6!important;margin:12px 0}
.cv-property-v4 .cv-prepare{padding-top:11px;font-size:11px}
.cv-stay-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 26px}
.cv-stay-gallery button{padding:0;border:0;background:#f5f8fa;text-align:left;cursor:pointer;overflow:hidden}
.cv-stay-gallery img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.cv-stay-gallery button>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;font-size:11px;line-height:1.5}
.cv-stay-gallery b{font-size:20px;font-weight:400}
.cv-property-v4 .related-properties{padding:16px 0 48px}
@media(min-width:1500px){.cv-property-v4 .cv-property-hero,.cv-property-v4 .property-photo-tiles{height:450px}}
@media(max-width:1100px){.cv-property-v4 .property-layout{grid-template-columns:minmax(0,1fr) 285px;gap:26px}.cv-property-v4 .booking-card{padding:20px}.cv-property-v4 .property-amenities{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-property-v4 .cv-property-hero,.cv-property-v4 .property-photo-tiles{height:370px}}
@media(max-width:820px){.cv-property-v4 .property-layout{grid-template-columns:minmax(0,1fr) 260px;gap:22px}.cv-property-v4 .booking-card{padding:17px}.cv-property-v4 .cv-editorial-detail-grid{grid-template-columns:1fr}.cv-property-v4 .cv-before-booking ul{columns:1}.cv-property-v4 .cv-channel-brand img{width:85px}.cv-property-v4 .cv-channel-action{font-size:10px}}
@media(max-width:720px){body:has(.cv-property-v4) .header>.brand{flex:1 1 180px;max-width:calc(100% - 100px);width:220px}body:has(.cv-property-v4) .header .site-logo{width:210px}.cv-property-v4 .property-heading{align-items:flex-start;margin-bottom:17px}.cv-property-v4 .property-heading h1{font-size:29px;letter-spacing:-.7px}.cv-property-v4 .property-heading .cv-property-tagline{font-size:11px}.cv-property-v4 .property-photo-layout.has-gallery,.cv-property-v4 .property-photo-layout.gallery-five{grid-template-columns:1fr}.cv-property-v4 .cv-property-hero{height:330px}.cv-property-v4 .property-photo-tiles{display:none}.cv-property-v4 .property-sections{gap:22px;padding-top:8px}.cv-property-v4 .property-layout{grid-template-columns:1fr;padding-top:22px;gap:0}.cv-property-v4 .property-body h2{font-size:25px}.cv-property-v4 .property-description p{font-size:15px}.cv-property-v4 .cv-property-highlights{gap:7px;margin:12px 0 16px}.cv-property-v4 .cv-property-highlights li{font-size:11px;padding:7px 9px}.cv-property-v4 .property-practical{gap:10px;padding:12px;margin-top:16px}.cv-property-v4 .property-practical dt{font-size:9px;line-height:1.5}.cv-property-v4 .property-practical dd{font-size:15px}.cv-property-v4 .cv-editorial-detail-grid{grid-template-columns:1fr;gap:0}.cv-property-v4 .cv-editorial-detail-grid article{padding:16px 0}.cv-property-v4 .cv-editorial-detail-grid p{font-size:15px}.cv-property-v4 .cv-before-booking{padding:18px!important}.cv-property-v4 .cv-before-booking ul{columns:1}.cv-property-v4 .property-amenities{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.cv-property-v4 .property-amenities li{font-size:12px;padding:9px!important}.cv-stay-gallery{gap:8px}.cv-stay-gallery img{aspect-ratio:1}.cv-stay-gallery button>span{font-size:10px;padding:8px}.cv-property-v4 .booking-card{margin:0 0 30px;padding:22px;top:auto}.cv-property-v4 .cv-channel-brand img{width:105px}.cv-property-v4 .cv-channel-action{font-size:12px}.cv-property-v4 .cv-mobile-reserve{padding:10px 20px}.cv-property-v4 .cv-mobile-reserve a{padding:13px 16px}}
.cv-property-v4 .cv-channel-brand .cv-channel-hotel{font-size:11px;line-height:1.45;font-weight:500;color:#243d4e;max-width:100%;white-space:normal;margin-top:6px}
.cv-property-v4 .cv-booking-scope{font-size:12px;line-height:1.6;background:#f3f6f8;padding:11px 12px;margin:0 0 14px;color:#354e60}
