/* Homepage introduction only; shared sections retain their existing styles. */
.hero.hero-refresh{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:0;padding-top:48px;padding-bottom:48px;min-height:0}
.hero-refresh .hero-copy{min-width:0;max-width:800px;text-align:left}
.hero-refresh .hero-copy>.eyebrow{display:block;font-size:12px;line-height:1.6;letter-spacing:1.5px;margin:0 0 20px}
.hero-refresh .hero-copy>h1{display:block;font-size:clamp(34px,3.65vw,56px);line-height:1.15;letter-spacing:-1.5px;font-weight:600;margin:0 0 24px;text-wrap:balance}
.hero-refresh h1 span{color:var(--gold)}
.hero-refresh .hero-desc{display:block;max-width:580px;color:#cbd3df;font-size:18px;line-height:1.7;margin:0}
.hero-refresh .actions{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-refresh .button{min-height:52px;padding:13px 22px;border:1px solid transparent;border-radius:5px;font-size:14px;line-height:1.5;text-align:center;max-width:100%;white-space:normal}
.hero-refresh .hero-secondary{border-color:#8b929e;color:#fff;background:transparent}
.hero-refresh .hero-secondary:hover{border-color:var(--gold);color:var(--gold)}


@media(max-width:1000px) and (min-width:701px){.hero.hero-refresh{gap:0;grid-template-columns:minmax(0,1fr);padding-top:44px;padding-bottom:48px}.hero-refresh .hero-desc{font-size:16px}}
@media(max-width:700px){
.hero.hero-refresh{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:28px 6% 28px}
.hero-refresh .hero-copy>.eyebrow{font-size:11px;letter-spacing:.9px;margin-bottom:16px}
.hero-refresh .hero-copy>h1{font-size:clamp(30px,7.5vw,40px);line-height:1.18;letter-spacing:-.9px;margin-bottom:18px}
.hero-refresh .hero-desc{max-width:none;font-size:16px;line-height:1.65}
.hero-refresh .actions{flex-direction:column;gap:10px;margin-top:22px}
.hero-refresh .hero-copy .button{width:100%;max-width:none;min-height:52px}

}

.hero-refresh .hero-support{max-width:600px;color:#cbd3df;font-size:16px;line-height:1.65;margin:14px 0 0}
.hero-refresh .hero-contact-note{max-width:580px;color:#cbd3df;font-size:13px;line-height:1.6;margin:16px 0 0}

/* Lightweight one-shot villa illustration; content is available immediately. */
.hero.hero-refresh{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;background:radial-gradient(ellipse at 78% 45%,#1c2d44 0%,#101b30 65%)}
.hero-villa{min-width:0;width:100%;align-self:center}
.hero-villa img{display:block;width:100%;height:auto;max-width:640px;margin:0 auto}
.hero-refresh .hero-copy>h1{font-size:clamp(32px,3.1vw,50px)}
@media(max-width:1000px){.hero.hero-refresh{grid-template-columns:minmax(0,1fr);gap:20px}.hero-villa{max-width:500px;margin:0 auto}}
@media(max-width:700px){.hero.hero-refresh{gap:20px}.hero-villa{max-width:400px}.hero-refresh .hero-copy>h1{font-size:clamp(30px,7.5vw,40px)}}
/* Put the villa in the first mobile viewport, before the longer introduction. */
@media(max-width:700px){
  .hero.hero-refresh{padding-top:12px;gap:12px}
  .hero-refresh .hero-villa{order:-1;max-width:280px;width:82%;margin:0 auto}
  .hero-refresh .hero-copy>.eyebrow{margin-bottom:10px}
  .hero-refresh .hero-copy>h1{margin-bottom:14px}
}
