/* Shared header, hero and action-link refinements. */
@font-face{font-family:Jakarta;src:url(PlusJakartaSans-500.woff2);font-weight:500;font-display:swap}
:root{--header:124px;--brand-copper:#AD7846}
.site-header .nav-row{gap:24px;align-items:center}
.site-header .nav-row>a:first-child{display:flex;align-items:center;justify-content:center;flex:0 1 420px;min-width:0}
.site-header .brand-logo{width:420px;height:auto;max-width:100%;object-fit:contain}
.nav-row nav{gap:21px;font-size:14px;font-weight:500}
.nav-row nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;border-bottom:2px solid transparent;padding:8px 0;transition:border-color .18s,color .18s}
.nav-row nav a:hover,.nav-row nav a[aria-current=page]{text-decoration:none;border-bottom-color:var(--brand-copper)}
.nav-row nav a[aria-current=page]{font-weight:600}
.header-cta{white-space:nowrap;font-size:13px;padding:14px 18px;flex-shrink:0}
.nav-row nav .compact-nav-contact{display:none}
.location-bar{font-size:13px;letter-spacing:.055em;line-height:1.6;padding-top:16px;padding-bottom:16px}
.hero.hero-focused{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:56px;align-items:center;padding-top:64px;padding-bottom:72px}
.hero.hero-focused h1{font-size:clamp(48px,4.5vw,78px);line-height:1.08;max-width:780px}
.hero-copy{min-width:0}
.hero-focused .hero-services{max-width:none;gap:0 24px}
.hero-focused .trust-line{display:block;margin-top:25px;padding-top:21px;font-size:14px;line-height:1.65}
.hero-focused .trust-line p{font-size:14px;max-width:560px;margin:0}
.hero-visual{min-width:0}
.hero-visual .hero-image{height:620px;border-radius:160px 160px 22px 22px;background:var(--stone)}
.hero-visual .hero-image:after{inset:45% 0 0;background:linear-gradient(transparent,rgba(35,43,29,.88))}
.hero-visual .hero-image>img{width:100%;height:100%;object-fit:cover}
.hero-site-preview{position:absolute;z-index:2;width:76%;max-width:350px;height:360px;top:90px;left:50%;transform:translateX(-50%) rotate(-3deg);overflow:hidden;border:8px solid var(--paper);border-radius:12px;box-shadow:0 24px 55px #15201755;background:var(--paper)}
.hero-site-preview img{width:100%;height:100%;object-fit:cover;object-position:top}
.hero-project-note{position:absolute;z-index:3;left:30px;right:25px;bottom:30px;color:var(--paper)}
.hero-project-note .eyebrow{display:block;font-size:11px;margin-bottom:5px}
.hero-project-note p{font:400 32px/1.2 Marcellus,Georgia,serif;margin:0 0 8px}
.action-link,.text-link,.hero-services a{font-weight:500;font-size:15px;line-height:1.45}
.action-link{display:inline-flex;align-items:center;gap:18px;min-height:44px;border-bottom:1px solid var(--border);padding:8px 0;text-decoration:none}
.action-link:after{content:'\2197';font-size:20px;line-height:1;color:var(--brand-copper);flex-shrink:0}
.action-link:hover{border-bottom-color:var(--brand-copper)}
.hero-services a:after{color:var(--brand-copper)}
.hero-project-note .action-link,.site-footer .action-link{border-bottom-color:#E9E4DA40}
.hero-project-note .action-link:after,.site-footer .action-link:after{color:#D8A16A}
.hero-project-note .action-link:hover,.site-footer .action-link:hover{border-bottom-color:#D8A16A}
.site-footer nav .action-link{width:fit-content}
.detail-links>a>span,.service-route>span:last-child{font-weight:500}
.detail-links>a>span:after,.service-route>span:last-child:after{content:'\2197';color:var(--brand-copper);margin-left:18px;text-decoration:none}
@media(max-width:1279px){
 :root{--header:110px}
 .site-header .nav-row>a:first-child{flex-basis:360px}.site-header .brand-logo{width:360px}
 .menu-toggle{display:block;margin-left:auto;border:0;background:transparent;padding:12px;min-height:44px;min-width:44px}
 .nav-row nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100svh - var(--header));overflow:auto;background:var(--paper);padding:20px 35px;border-bottom:1px solid var(--border);flex-direction:column;gap:0;white-space:normal}
 .nav-row nav.open,.nav-row nav .compact-nav-contact{display:flex}
 .nav-row nav a{font-size:16px;padding:13px 0;border-bottom:1px solid #BCAE9960}
 .header-cta{display:none}
 .hero.hero-focused{gap:36px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 .hero.hero-focused h1{font-size:clamp(46px,5vw,67px)}
 .hero-visual .hero-image{height:580px}.hero-site-preview{height:310px;top:85px}
}
@media(max-width:900px){
 .hero.hero-focused{grid-template-columns:1fr;gap:40px}
 .hero-visual{width:100%;max-width:580px;margin:0 auto}
 .hero-visual .hero-image{height:560px}
 .hero-site-preview{height:330px;top:65px}
 .location-bar{font-size:13px;flex-wrap:wrap;gap:5px 20px}
 .location-bar span:last-child{display:none}
}
@media(max-width:650px){
 :root{--header:100px}
 .site-header .nav-row{padding-inline:22px;gap:12px}
 .site-header .nav-row>a:first-child{flex:0 1 300px}.site-header .brand-logo{width:300px}
 .location-bar{font-size:12px;display:flex;flex-direction:column;align-items:flex-start;padding-top:14px;padding-bottom:14px}
 .location-bar span+span{border-left:0;padding-left:0}
 .hero.hero-focused{padding-top:38px;padding-bottom:48px}
 .hero.hero-focused h1{font-size:clamp(43px,10.7vw,58px)}
 .hero-focused .actions{gap:14px}
 .hero-focused .hero-services{max-width:none}
 .hero-visual .hero-image{height:490px;border-radius:110px 110px 18px 18px}
 .hero-site-preview{width:77%;height:285px;top:60px;border-width:6px}
 .hero-project-note{left:23px;bottom:22px}
 .hero-project-note p{font-size:29px}
 .hero-project-note .action-link{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.nav-row nav a{transition:none}}

h1 em.statement-accent,h2 em.statement-accent{color:var(--brand-copper,#AD7846)}
