.hero-film-space{display:none}
/* The villa film is the only hero visual; the existing copy stays in place. */
.hero-with-video .hero-villa-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0d1510;pointer-events:none;transition:opacity .35s ease}
.hero-villa-media picture,.hero-villa-media img,.hero-villa-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center}
.hero-villa-media video{opacity:0;transition:opacity .45s ease}.hero-villa-media.has-video video{opacity:1}
.hero-with-video .hero-villa-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,9,7,.87) 0%,rgba(5,9,7,.74) 35%,rgba(5,9,7,.2) 72%,rgba(5,9,7,.12) 100%),linear-gradient(0deg,#090a09 0%,rgba(9,10,9,.85) 17%,rgba(9,10,9,.13) 60%,rgba(9,10,9,.3) 100%)}
.hero-with-video .hero-signature,.hero-with-video .hero-introduction{color:#d3d4ca}
.hero-with-video .hero-kicker,.hero-with-video .hero-heading{z-index:2}.hero-with-video .hero-base{border-top-color:rgba(237,237,225,.2)}
@media(max-width:700px){.hero-with-video .hero-villa-media{max-height:860px}.hero-villa-media img,.hero-villa-media video{object-position:63% center}.hero-with-video .hero-villa-media:after{background:linear-gradient(180deg,rgba(5,9,7,.55) 0%,rgba(5,9,7,.65) 36%,rgba(5,9,7,.18) 58%,rgba(9,10,9,.8) 83%,#090a09 100%),linear-gradient(90deg,rgba(5,9,7,.5),rgba(5,9,7,.05))}}
@media(max-width:560px){.hero-with-video .hero-film-space{display:block;height:260px}.hero-with-video .hero-copy{margin-top:12px}.hero-with-video .hero-villa-media{max-height:790px}}
@media(prefers-reduced-motion:reduce){.hero-villa-media,.hero-villa-media video{transition:none}}

/* Focused opening: one promise, one explanation, one next step. */
.hero.hero-focused{display:flex;flex-direction:column;min-height:max(620px,calc(100svh - 96px));max-height:none;padding-top:0}
.hero-focused .hero-content{position:relative;z-index:2;width:100%;max-width:850px;margin:auto 0;padding:64px 0 56px}
.hero.hero-focused .hero-heading{width:100%;max-width:none;margin:0}
.hero.hero-focused #hero-title{width:100%;max-width:none;margin:0;font:270 clamp(42px,5vw,76px)/1.13 var(--display);letter-spacing:-.05em;text-transform:none}
.hero.hero-focused #hero-title>span{display:block;white-space:normal;color:#eeeee6}
.hero.hero-focused #hero-title>strong{display:block;white-space:normal;font-weight:400;margin-top:4px;color:var(--gold)}
.hero.hero-focused .hero-copy{position:relative;left:auto;right:auto;bottom:auto;display:block;width:100%;max-width:550px;margin:26px 0 0;padding:0;border:0}
.hero.hero-focused .hero-introduction{font:400 17px/1.7 var(--sans);color:#d3d7d1;margin:0;max-width:550px;text-wrap:pretty}
.hero-services-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:54px;padding:15px 22px;margin-top:30px;background:var(--gold);color:#151911;font:500 14px/1.4 var(--sans);text-decoration:none;border:1px solid var(--gold);transition:background .2s,color .2s}
.hero-services-cta>span{font-size:22px;line-height:1}
.hero-services-cta:hover{background:#e5c86f;border-color:#e5c86f;color:#10150f}
.hero-services-cta:focus-visible{outline:2px solid #fff;outline-offset:5px}
.hero.hero-focused .hero-base{border:0;min-height:64px;margin-top:auto;padding:0 0 28px;flex-direction:column;align-items:flex-start;justify-content:flex-end}
.hero.hero-focused .hero-signature{font:300 16px/1.5 var(--sans);color:#b8c0b8;letter-spacing:-.01em;margin:0}
.hero.hero-focused .hero-villa-media{max-height:none}
.hero.hero-focused .hero-villa-media:after{background:linear-gradient(90deg,rgba(5,9,7,.80) 0%,rgba(5,9,7,.58) 38%,rgba(5,9,7,.13) 76%,rgba(5,9,7,.12) 100%),linear-gradient(0deg,rgba(9,10,9,.88) 0%,rgba(9,10,9,.18) 40%,rgba(9,10,9,.16) 100%)}
@media(max-width:1000px){
 .hero-focused .hero-content{max-width:760px}
 .hero.hero-focused #hero-title{font-size:clamp(38px,5.4vw,60px)}
 .hero.hero-focused .hero-copy{max-width:490px}
 .hero.hero-focused .hero-introduction{font-size:16px}
}
@media(max-width:560px){
 .hero.hero-focused{min-height:max(600px,calc(100svh - 76px));padding-top:0}
 .hero-focused .hero-content{margin:0;padding:54px 0 58px}
 .hero.hero-focused #hero-title{font-size:clamp(28px,7.7vw,43px);line-height:1.18;letter-spacing:-.05em}
 .hero.hero-focused #hero-title>strong{margin-top:7px}
 .hero.hero-focused .hero-copy{margin-top:24px;max-width:360px}
 .hero.hero-focused .hero-introduction{font-size:15px;line-height:1.75}
 .hero-services-cta{margin-top:28px;min-height:52px;padding:14px 20px;font-size:13px;gap:32px}
 .hero.hero-focused .hero-base{min-height:60px;padding:0 0 28px}
 .hero.hero-focused .hero-signature{font-size:14px}
 .hero.hero-focused .hero-villa-media:after{background:linear-gradient(180deg,rgba(5,9,7,.72),rgba(5,9,7,.60) 40%,rgba(5,9,7,.18) 68%,rgba(9,10,9,.86)),linear-gradient(90deg,rgba(5,9,7,.32),rgba(5,9,7,.07))}
}
@media(prefers-reduced-motion:reduce){.hero-services-cta{transition:none}}
