﻿.ves-why{background:#fff}
.ves-why__grid{display:grid;gap:2.5rem}
.ves-value{padding-top:1.5rem;border-top:1px solid var(--ves-border)}
.ves-value>span{color:var(--ves-gold);font-family:var(--ves-serif);font-size:1.2rem}
.ves-value h3,.ves-review h3{margin:1.4rem 0 .7rem;color:var(--ves-navy);font-family:var(--ves-serif);font-size:2rem;font-weight:500}
.ves-value p,.ves-review p{margin:0;color:var(--ves-muted);font-size:.92rem;font-weight:300}
.ves-villas{background:var(--ves-grey)}
.ves-villas__grid{display:grid;gap:clamp(2rem,4vw,4rem)}
.ves-villa-card{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--ves-radius);background:#fff;box-shadow:var(--ves-shadow)}
.ves-villa-card__media{display:block;overflow:hidden;aspect-ratio:3/2;background:#e8e8e5}
.ves-villa-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.ves-villa-card:hover img{transform:scale(1.025)}
.ves-villa-card__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:clamp(1.75rem,4vw,3rem)}
.ves-villa-card h3{margin:0;color:var(--ves-navy);font-family:var(--ves-serif);font-size:clamp(2.3rem,4vw,3.4rem);font-weight:500}
.ves-villa-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;width:100%;margin:1.4rem 0 2rem;padding:1.4rem 0;border-block:1px solid var(--ves-border);list-style:none}
.ves-villa-card li{color:var(--ves-muted);font-size:.8rem}
.ves-villa-card li:before{content:"Â·";margin-right:.55rem;color:var(--ves-gold)}
.ves-region{background:var(--ves-ivory)}
.ves-region__grid{display:grid;gap:clamp(3rem,7vw,8rem);align-items:center}
.ves-region__media{overflow:hidden;border-radius:var(--ves-radius);aspect-ratio:4/5}
.ves-region__media img{width:100%;height:100%;object-fit:cover}
.ves-region__content h2{margin:0;color:var(--ves-navy);font:500 clamp(2.75rem,6vw,5rem)/1.06 var(--ves-serif)}
.ves-region__content>p:not(.ves-eyebrow){margin:1.5rem 0;color:var(--ves-muted);font-weight:300}
.ves-region__content ul{margin:2rem 0 0;padding:0;list-style:none}
.ves-region__content li{padding:.8rem 0;border-bottom:1px solid var(--ves-border);font-size:.85rem}
.ves-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.ves-gallery__item{overflow:hidden;aspect-ratio:1;border:0;background:#eee;padding:0;cursor:zoom-in}
.ves-gallery__item:first-child{grid-column:1/-1;aspect-ratio:16/9}
.ves-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ves-gallery__item:hover img{transform:scale(1.025)}
.ves-reviews{background:var(--ves-navy);color:#fff}
.ves-reviews .ves-section-heading h2{color:#fff}
.ves-reviews__grid{display:grid;gap:1px;background:rgba(255,255,255,.14)}
.ves-review{padding:clamp(2rem,4vw,3.5rem);background:var(--ves-navy)}
.ves-review h3{color:#fff}
.ves-review p{color:rgba(255,255,255,.68)}
.ves-faq__layout{display:grid;gap:2rem}
.ves-faq details{border-bottom:1px solid var(--ves-border)}
.ves-faq summary{padding:1.4rem 2rem 1.4rem 0;color:var(--ves-navy);font-weight:500;cursor:pointer}
.ves-faq details p{margin:0;padding:0 0 1.5rem;color:var(--ves-muted);font-size:.9rem}
.ves-faq__answer{padding-bottom:1.5rem;color:var(--ves-muted);font-size:.9rem}.ves-faq__answer p{margin:0 0 .75rem;padding:0}.ves-faq__answer>:last-child{margin-bottom:0}
.ves-faq summary::marker{color:var(--ves-gold)}

.ves-villas .ves-section-heading{max-width:850px}
.ves-villas .ves-section-heading h2{font-size:clamp(2.4rem,4.2vw,3.8rem)}
.ves-villa-card__body{padding:1.35rem 1.5rem 1.5rem}
.ves-villa-card h3{font-family:var(--ves-sans);font-size:.9rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.ves-villa-card__details{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end;width:100%}
.ves-villa-card__details ul{display:flex;flex-wrap:wrap;gap:.55rem 1rem;margin:.9rem 0 0;padding:0;border:0}
.ves-villa-card__details li{font-size:.65rem;white-space:nowrap}
.ves-villa-card__button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.65rem 1rem;color:#fff;border-radius:6px;background:var(--ves-gold);font-size:.62rem;font-weight:500;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.ves-villa-card__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:flex-end}.ves-villa-card__airbnb{color:var(--ves-navy);font-size:.64rem;font-weight:500;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.ves-villa-card__airbnb:hover,.ves-villa-card__airbnb:focus-visible{color:var(--ves-gold);text-decoration:underline;text-underline-offset:4px}
.ves-region__activities{display:grid;gap:1rem;margin-top:clamp(3rem,6vw,6rem)}
.ves-activity{display:grid;grid-template-columns:5rem minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;color:var(--ves-navy);border:1px solid var(--ves-border);border-radius:var(--ves-radius);background:#fff;text-decoration:none;cursor:pointer!important;transition:transform .25s ease,box-shadow .25s ease}
.ves-villa-card__airbnb,.ves-villa-card__button{cursor:pointer!important}
.ves-activity:hover{transform:translateY(-2px);box-shadow:var(--ves-shadow)}
.ves-activity__media{overflow:hidden;width:5rem;height:4rem;border-radius:6px}
.ves-activity__media img{width:100%;height:100%;object-fit:cover}
.ves-activity__title{font-family:var(--ves-serif);font-size:1.2rem;font-weight:500}
