/* Shared by the front end and block editor. No external assets or framework. */
:root{--dkt-forest:#173f2b;--dkt-cream:#f1f5ef;--dkt-gap:clamp(3.5rem,7vw,6.5rem)}
html{scroll-behavior:smooth}body{margin:0}*{box-sizing:border-box}img{max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b77c18;outline-offset:5px}p{margin-top:0}h1,h2,h3{text-wrap:balance}h2{font-size:clamp(2rem,3.7vw,3rem)}h3{font-size:1.5rem}.wp-site-blocks{padding-top:0;padding-bottom:0}.wp-site-blocks>header,.wp-site-blocks>footer,.wp-site-blocks>main{margin-block-start:0}.site-header{min-height:104px;padding-block:22px;gap:32px}.site-header .wp-block-site-logo img{width:254px;height:auto}.site-header .wp-block-navigation{font-size:15px;font-weight:600;gap:28px}.site-header .wp-block-navigation-item__content{text-decoration:none}.site-header .current-menu-item>.wp-block-navigation-item__content{color:#067735;text-decoration:underline;text-underline-offset:7px}.header-actions{gap:28px}.header-phone .wp-block-button__link{padding:11px 18px;font-size:14px}.site-main{margin-top:0}.hero{position:relative;min-height:640px;display:flex;align-items:center;overflow:hidden;background:#173f2b}.hero>.hero-photo{position:absolute!important;inset:0;margin:0!important;max-width:none!important;width:100%;height:100%;z-index:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:60% center;border-radius:0!important}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,36,22,.88),rgba(9,36,22,.65) 45%,rgba(9,36,22,.12))}.hero-content{position:relative;z-index:1;width:100%;padding-block:90px}.hero-content h1{color:white;font-size:clamp(3.4rem,7vw,6.5rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:24px;max-width:650px}.hero-content p{color:#f4f7f3;max-width:490px;font-size:1.2rem}.eyebrow{font-size:.76rem!important;font-weight:750;letter-spacing:.18em;text-transform:uppercase;color:#067735;margin-bottom:16px}.hero .eyebrow{color:#d5edcc}.hero .wp-block-button__link{background:#fff;color:#173f2b}.hero .hero-note{font-size:.9rem;margin-top:18px;color:#e2eadd}.section{padding-block:var(--dkt-gap);margin-block-start:0!important}.section-soft{background:var(--dkt-cream)}.section-heading{max-width:680px;margin-bottom:36px!important}.section-heading p{color:#526459}.wp-block-columns{gap:clamp(24px,4vw,64px)}.service-card{height:100%}.service-card figure{margin:0 0 24px}.service-card img{width:100%;aspect-ratio:1.5;object-fit:cover}.service-card p{color:#526459;font-size:1rem}.portrait-col{align-self:stretch;display:flex;align-items:end;justify-content:center;background:#e7eee3;border-radius:10px;overflow:hidden;min-height:420px}.portrait-col figure{margin:24px 16px 0!important;line-height:0}.portrait-col img{max-height:470px;width:auto;object-fit:contain;border-radius:0}.intro-columns{align-items:center!important}.intro-copy{padding-block:20px}.text-link{font-weight:650;text-underline-offset:6px}.project-preview,.project-grid{gap:18px!important}.project-preview img,.project-grid img{border-radius:7px;aspect-ratio:1;object-fit:cover}.project-preview{margin-top:36px!important;margin-bottom:32px!important}.project-grid{padding-bottom:var(--dkt-gap)}.project-grid .wp-block-image{flex-grow:0!important}.review{max-width:800px;text-align:center;padding-block:10px}.review .wp-block-quote{border:0;margin:0;padding:0}.review blockquote p{font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.55;color:#173f2b;letter-spacing:-.02em}.review cite{font-style:normal;font-size:.9rem;font-weight:650}.contact-band{background:#e5eddf}.contact-band .wp-block-columns{align-items:center}.contact-band h2{max-width:640px}.contact-band p{max-width:650px}.is-style-outline .wp-block-button__link{background:transparent;color:#173f2b;border:1px solid #173f2b;padding:13px 23px}.wp-block-button__link:hover{filter:brightness(.91)}.page-heading{padding-top:64px;padding-bottom:36px;margin-block:0!important}.page-intro{margin-top:0!important;padding-top:0}.contact-details{border-top:1px solid #d8e1d4;padding-top:24px}.contact-details h2{font-size:1.4rem}.contact-details a{text-underline-offset:5px}.footer-shell{background:#14291e;color:#d8e3d8;padding-top:64px;padding-bottom:28px}.footer-shell h2,.footer-shell h3,.footer-shell a{color:#fff}.footer-shell .wp-block-image{margin:0 0 22px}.footer-shell img{border-radius:0;width:235px}.footer-shell p{font-size:.95rem;max-width:370px}.footer-shell .wp-block-columns{margin-bottom:36px}.footer-bottom{border-top:1px solid #405345;padding-top:24px;gap:20px}.footer-bottom p{font-size:.8rem;margin:0}.footer-bottom a{text-decoration:none}.footer-nav{gap:20px;font-size:.9rem}.wp-block-navigation__responsive-container.is-menu-open{padding:32px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:26px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{font-size:1.4rem}.wp-block-gallery.has-nested-images figure.wp-block-image img{cursor:zoom-in}@media(min-width:782px){.intro-copy{padding-left:32px}.project-preview figure{width:calc(25% - 14px)!important}.project-grid figure{width:calc(33.333% - 12px)!important}}@media(max-width:1000px){.site-header .wp-block-navigation{gap:18px}.header-actions{gap:18px}.site-header .wp-block-site-logo img{width:220px}.header-phone{display:none}}@media(max-width:781px){.site-header{min-height:85px;padding-block:18px}.hero{min-height:560px}.hero-content{padding-block:64px}.hero:after{background:linear-gradient(90deg,rgba(9,36,22,.88),rgba(9,36,22,.48))}.hero-content h1{font-size:clamp(3.3rem,12vw,5rem)}.hero-content p{font-size:1.05rem}.section{padding-block:52px}.portrait-col{min-height:340px}.portrait-col img{max-height:360px}.page-heading{padding-top:40px;padding-bottom:26px}.project-grid,.project-preview{gap:12px!important}.project-grid figure,.project-preview figure{width:calc(50% - 6px)!important}.contact-band .wp-block-buttons{margin-top:12px}.footer-shell{padding-top:48px}.footer-bottom{align-items:flex-start!important}.footer-nav{gap:14px}}@media(max-width:599px){.header-actions{margin-left:auto}.site-header .wp-block-site-logo img{width:220px}.hero{min-height:560px}.hero-photo img{object-position:66% center}.footer-nav{flex-wrap:wrap}.wp-block-buttons{gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Align the header and hero text to one shared content edge. */
.site-header{max-width:1160px!important;margin-inline:auto!important;width:calc(100% - 48px)}
.hero-content>*{margin-left:0!important;margin-right:0!important}
.hero-content .wp-block-buttons{max-width:none}
@media(max-width:781px){.hero-content{padding-inline:0!important}}
.section>.alignwide>.wp-block-columns,.section>.alignwide>.wp-block-gallery,.section>.alignwide>.wp-block-buttons,.footer-shell>.alignwide>*,.project-grid{max-width:none!important}
.section-heading{margin-left:0!important;margin-right:0!important}
@media(max-width:1000px){.site-header .header-phone{display:none!important}}
.page-intro{padding-top:0!important}

/* Contact: keep the portrait panel at its natural height, aligned with the text. */
body.page-id-48 .portrait-col{align-self:flex-start;min-height:0}
.footer-bottom{flex-wrap:wrap;justify-content:space-between}
.footer-bottom .webzuiver-credit{font-size:.8rem;color:#d8e3d8}
.footer-bottom .webzuiver-credit a{color:inherit;text-decoration:underline;text-underline-offset:3px}
