.home-hero{padding:80px 0 30px;background:#141c19;overflow:hidden}.home-hero .eyebrow{color:#b9e3cb;margin-bottom:30px}.home-hero h1{font-size:clamp(62px,8.4vw,122px);line-height:.99;letter-spacing:-.065em;font-weight:500;margin:0;max-width:12ch}.home-hero h1 span{color:#b9e3cb}.home-hero-copy{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:end;margin-bottom:55px}.home-hero-intro{padding-bottom:8px}.home-hero-intro p{max-width:36ch;font-size:20px;line-height:1.6;color:#c4d1c7;margin-bottom:30px}.home-hero-image{border-radius:26px;position:relative;overflow:hidden;background:#28372f}.home-hero-image>img{display:block;width:100%;height:clamp(320px,44vw,620px);object-fit:cover;object-position:50% 62%}.home-hero-image figcaption{position:absolute;bottom:20px;right:24px;color:white;background:#14231bbc;padding:7px 12px;border-radius:20px;font-size:11px}.home-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0;font-size:14px;color:#c4d1c7}.home-hero-foot a{color:#b9e3cb}.directions-intro{max-width:810px;margin-bottom:50px}.directions-intro .eyebrow{margin-bottom:25px}.directions-intro p:not(.eyebrow){max-width:54ch;margin-top:25px;font-size:18px;color:#526158}.direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.direction-card{background:#e6ede5;border:1px solid #cdd9cd;border-radius:24px;padding:34px;min-height:280px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background-color .3s,transform .4s var(--ease)}.direction-card:first-child{background:#175944;color:#f4f6f2}.direction-card:hover{transform:translateY(-5px);background:#d5e4d7}.direction-card:first-child:hover{background:#216c53}.direction-number{font-size:12px;letter-spacing:.1em;opacity:.7}.direction-card h3{font-size:clamp(30px,3.5vw,48px);line-height:1.06;letter-spacing:-.04em;margin:30px 0 16px;max-width:12ch}.direction-card p{max-width:37ch;line-height:1.6;font-size:16px;margin-bottom:32px}.direction-card a{margin-top:auto;align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;gap:24px;font-weight:600;border-bottom:1px solid currentColor}.direction-card a span{transition:transform .3s}.direction-card a:hover span{transform:translate(4px,-4px)}.home-works .projects-grid{margin-top:45px}.home-work .project-image{display:block;width:100%}.home-work .project-image img{width:100%;display:block}.home-work .project-info>a{display:inline-flex;min-height:44px;align-items:center}.home-work .project-info p{max-width:35ch}.section-end{margin-top:40px;display:flex;justify-content:center}.wp-content{background:#f4f6f2;color:#1c2923;min-height:65vh}.wp-content .legal-page{padding-top:80px;padding-bottom:80px}.wp-content .entry-content{font-size:18px;line-height:1.75;max-width:900px}.wp-content .entry-content p{margin-bottom:1.3em}.wp-content .entry-content h2{font-size:32px;margin:1.5em 0 .6em}.generic-catalog{padding:50px 0}.generic-catalog h2{font-size:36px;margin-bottom:30px}.catalog-placeholder{display:grid;place-items:center;aspect-ratio:1.6;background:#dce7dc;color:#175944;font-size:24px;letter-spacing:.12em}.admin-bar .site-header{top:32px}
@media(max-width:900px){.home-hero-copy{grid-template-columns:1fr;gap:30px}.home-hero-intro p{max-width:50ch}.home-hero{padding-top:55px}.home-hero h1{font-size:clamp(58px,10vw,92px)}}
@media(max-width:600px){.home-hero{padding-top:35px}.home-hero .eyebrow{font-size:11px;letter-spacing:.12em}.home-hero h1{font-size:clamp(50px,12.6vw,72px)}.home-hero-intro p{font-size:17px}.home-hero-copy{margin-bottom:32px}.home-hero-image{border-radius:18px}.home-hero-image>img{height:330px}.home-hero-foot{align-items:flex-start;flex-direction:column;gap:12px}.direction-grid{grid-template-columns:1fr;gap:16px}.direction-card{padding:26px;min-height:260px}.direction-card h3{max-width:none;font-size:36px;margin-top:24px}.directions-intro p:not(.eyebrow){font-size:17px}.admin-bar .site-header{top:46px}}
@media(prefers-reduced-motion:reduce){.direction-card,.direction-card a span{transition:none}.direction-card:hover,.direction-card a:hover span{transform:none}}
.service-photo{margin:35px 0;overflow:hidden;border-radius:24px}.service-photo img{display:block;width:100%;max-height:620px;object-fit:cover;height:auto}
@media(min-width:1101px) and (max-width:1280px){.desktop-nav{font-size:16px;gap:0}.desktop-nav a{padding-inline:8px;gap:4px}.site-header{gap:16px}.header-cta{font-size:15px;padding-inline:14px}}
