@font-face{font-family:EstateCormorant;src:url('/assets/fonts/cormorant-garamond-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
.estate-hero.hero{display:block;position:relative;isolation:isolate;max-width:none;width:100%;height:clamp(760px,62vw,1100px);min-height:0;padding:0;margin:0;background:#03070a;overflow:hidden}
.estate-hero-photo{position:absolute;inset:0;margin:0;z-index:-2}
.estate-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 65%}
.estate-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#03070a 0%,rgba(3,7,10,.94) 13%,rgba(3,7,10,.75) 28%,rgba(3,7,10,.12) 49%,transparent 65%,rgba(9,20,33,.2) 90%,#091421 100%)}
.estate-hero-photo figcaption{position:absolute;z-index:1;bottom:18px;right:var(--gutter);font:11px/1.4 var(--body);color:#c1c8cc}
.estate-hero-content{position:relative;text-align:center;padding:45px 28px 0;margin:auto;max-width:1700px}
.estate-hero-eyebrow{color:#e2b553;text-transform:uppercase;font-size:13px;letter-spacing:.28em;line-height:1.6;margin:0 0 12px}
.estate-hero-eyebrow strong{font-weight:650}
.estate-hero h1{font-family:EstateCormorant,Georgia,serif;font-size:clamp(58px,6.7vw,112px);font-weight:500;letter-spacing:-.055em;line-height:1.02;margin:0;color:#f7f4ea;text-wrap:balance}
.estate-hero-description{font-size:clamp(18px,1.6vw,25px);line-height:1.45;color:#e3e1de;margin:18px auto 28px;max-width:850px}
.estate-hero .button{min-width:270px;gap:30px;font-size:16px}
.estate-hero .quiet-link{margin:17px auto 0;border-color:#c89b3f;font-size:15px;padding-bottom:7px}
@media(min-width:1100px){body:has(.estate-hero)>.header{background:#03070a;border-bottom-color:transparent}}
@media(max-width:700px){.estate-hero.hero{height:790px}.estate-hero-content{padding:36px 20px 0}.estate-hero-eyebrow{font-size:10px;letter-spacing:.19em;max-width:310px;margin:0 auto 17px}.estate-hero h1{font-size:clamp(47px,12.8vw,76px);line-height:.98;letter-spacing:-.045em;max-width:530px;margin:auto}.estate-hero-description{font-size:17px;max-width:350px;margin:20px auto 24px}.estate-hero-photo img{object-position:48% bottom;height:66%;position:absolute;bottom:0}.estate-hero-photo:after{background:linear-gradient(180deg,#03070a 0%,#03070a 28%,rgba(3,7,10,.8) 39%,rgba(3,7,10,.05) 61%,transparent 85%,#091421 100%)}.estate-hero-photo figcaption{font-size:10px;bottom:15px}.estate-hero .button{min-height:52px;min-width:245px}.estate-hero .quiet-link{margin-top:14px}}
@media(max-width:360px){.estate-hero.hero{height:760px}.estate-hero-content{padding-inline:16px}.estate-hero h1{font-size:45px}.estate-hero-description{font-size:16px}}
@media(min-width:701px){.estate-hero-photo img{position:absolute;bottom:0;height:85%;object-position:center 65%}.estate-hero-photo:after{background:linear-gradient(180deg,#03070a 0%,#03070a 15%,rgba(3,7,10,.86) 26%,rgba(3,7,10,.25) 42%,transparent 59%,rgba(9,20,33,.2) 90%,#091421 100%)}}
@media(max-width:700px){.estate-hero-photo:after{background:linear-gradient(180deg,#03070a 0%,#03070a 34%,rgba(3,7,10,.94) 40%,rgba(3,7,10,.1) 61%,transparent 85%,#091421 100%)}}
.estate-hero-description{font-weight:400}
/* Video hero: left-aligned reference composition with four service stages. */
.video-hero.hero{height:auto;min-height:780px;background:#091421}
.hero-video-backdrop{position:absolute;inset:0;z-index:-2}
.hero-video-backdrop img,.hero-video-backdrop video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}
.hero-video-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,20,.88),rgba(3,12,20,.55) 58%,rgba(3,12,20,.2)),linear-gradient(0deg,rgba(9,20,33,.7),transparent 45%)}
.video-hero .estate-hero-content{text-align:left;max-width:1600px;padding:44px var(--gutter) 30px}
.video-hero h1{font-size:clamp(52px,5.8vw,96px);max-width:1200px;line-height:1.01;letter-spacing:-.035em;margin:18px 0}
.video-hero .estate-hero-description{margin:16px 0 24px;max-width:900px;font-size:clamp(18px,1.65vw,24px)}
.video-hero .quiet-link{margin:18px 0 28px}
.hero-service-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;margin:0;padding:0;list-style:none}
.hero-service-cards li{position:relative;padding:22px 14px 20px;text-align:center;background:rgba(14,23,30,.62);border:1px solid #8c9191;border-radius:12px;backdrop-filter:blur(9px)}
.hero-service-cards h2{font-family:EstateCormorant,Georgia,serif;font-size:28px;line-height:1.15;margin:7px 0}
.hero-service-cards p{font-size:17px;line-height:1.4;color:#e0e3e5}
.service-number{position:absolute;left:20px;top:24px;color:#e3ba63;font-size:17px}
.service-symbol{display:block;color:#e3ba63;font:44px/1 Georgia,serif}
.hero-video-toggle{display:block;margin-top:18px;border:1px solid #abb2b7;background:#091421c9;color:#f7f4ea;min-height:44px;padding:8px 14px;font-size:14px}
@media(max-width:700px){.video-hero.hero{min-height:0}.video-hero .estate-hero-content{padding:34px 20px 28px}.video-hero h1{font-size:clamp(44px,11vw,70px);text-wrap:balance;margin:18px 0;max-width:none}.video-hero h1 br{display:none}.video-hero .estate-hero-eyebrow{margin:0;max-width:none}.video-hero .estate-hero-description{font-size:17px;max-width:none}.desktop-break{display:none}.hero-service-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hero-service-cards li{padding:18px 10px}.hero-service-cards h2{font-size:25px}.hero-service-cards p{font-size:15px}.service-number{left:12px;top:15px;font-size:14px}.service-symbol{font-size:34px}.hero-video-backdrop:after{background:linear-gradient(90deg,#03101de8,#03101d70),linear-gradient(0deg,#091421d9,transparent)}.hero-video-toggle{margin-bottom:45px}}

.video-hero .estate-hero-content>.button{margin-bottom:28px}
