
:root{--pine:#153b2c;--deep:#0d281f;--gold:#dab673;--paper:#faf9f4;--ink:#18382c;--gray:#526359;--line:#d5ddd3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,.display{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.03;letter-spacing:-.025em}h1{font-size:clamp(3.4rem,7.1vw,7.2rem)}h2{font-size:clamp(2.8rem,4.4vw,4.6rem)}h3{font-size:1.45rem;line-height:1.25;font-weight:500}.wrap{width:min(1280px,88%);margin:auto}.eyebrow{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:22px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 27px;background:var(--gold);color:var(--deep);border:1px solid var(--gold);font-weight:600;font-size:.95rem;transition:background .2s,transform .2s}.button:hover{background:#eccb8c;transform:translateY(-2px)}.button.dark{background:var(--pine);border-color:var(--pine);color:white}.button.outline{background:transparent;color:inherit;border-color:currentColor}.utility{background:var(--deep);color:#e8eee8;text-align:center;padding:7px 16px;font-size:.76rem;letter-spacing:.08em}.header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:108px}.brand{display:flex;align-items:center;gap:12px}.brand-img{width:175px;height:80px;object-fit:contain}.brand-fallback{font-family:Georgia,serif;font-size:1.55rem;line-height:1;letter-spacing:.015em;display:none}.brand-fallback small{display:block;font-family:'DM Sans',sans-serif;font-size:.65rem;letter-spacing:.2em;margin-top:9px}.nav{display:flex;align-items:center;gap:36px}.nav>a:not(.button){padding:12px 0;font-size:.95rem}.nav>a[aria-current=page]:not(.button){border-bottom:2px solid var(--pine)}.menu{display:none;background:none;border:1px solid var(--line);padding:8px 14px;color:var(--pine)}.hero{position:relative;background:var(--deep);color:white;min-height:675px;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,33,23,.91),rgba(8,33,23,.64) 47%,rgba(8,33,23,.12))}.hero-content{position:relative;z-index:1;padding:72px 0 95px}.hero h1{max-width:850px;margin-bottom:26px}.hero h1 em{color:var(--gold);font-weight:400}.hero p{max-width:460px;color:#e3e9df;font-size:1.08rem;line-height:1.7;margin-bottom:32px}.hero-actions{display:flex;gap:18px;flex-wrap:wrap}.hero-foot{position:absolute;bottom:24px;left:6%;right:6%;z-index:2;display:flex;justify-content:space-between;color:#e5e9e0;font-size:.75rem;letter-spacing:.11em;text-transform:uppercase}.services-strip{background:var(--pine);color:white}.strip-inner{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.strip-inner div{border-left:1px solid #577164;text-align:center;padding:4px 20px;font-size:.9rem}.strip-inner div:first-child{border:0}.section{padding:95px 0}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.intro h2{margin-bottom:0}.intro p{color:var(--gray);max-width:490px}.underlink{font-weight:600;border-bottom:1px solid var(--pine);padding-bottom:7px;display:inline-block;font-size:.93rem}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:42px}.section-head h2{margin-bottom:0;max-width:680px}.section-head .underlink{white-space:nowrap}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-card{border-top:1px solid var(--line);padding:28px 0 0}.service-card .num{font-family:Georgia,serif;color:#7d927e;font-size:1.35rem;display:block;margin-bottom:45px}.service-card h3{font-size:1.7rem;margin-bottom:16px}.service-card p{color:var(--gray);margin-bottom:24px}.light-section{background:#eef1e8}.feature{display:grid;grid-template-columns:1fr 1fr}.feature-image{position:relative;min-height:530px}.feature-image img{width:100%;height:100%;position:absolute;object-fit:cover}.feature-copy{padding:70px clamp(30px,5.5vw,95px);background:var(--pine);color:white}.feature-copy h2{font-size:clamp(2.8rem,4vw,4.4rem)}.feature-copy p{color:#d4e0d3}.steps{margin-top:36px}.step{display:grid;grid-template-columns:38px 1fr;gap:16px;border-top:1px solid #526f5e;padding:19px 0}.step strong{font-weight:500;display:block}.step p{font-size:.9rem;margin:3px 0 0}.step span{color:var(--gold)}.cta{background:var(--gold);padding:62px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font-size:clamp(2.7rem,4.2vw,4.2rem);margin:0;max-width:800px}.footer{background:var(--deep);color:#dce5da;padding:50px 0 24px}.footer-top{display:flex;justify-content:space-between;gap:40px}.footer-brand{font-family:Georgia,serif;font-size:1.8rem;color:white}.footer p{font-size:.9rem}.footer-links{display:flex;gap:30px}.footer-bottom{border-top:1px solid #3c5848;padding-top:20px;margin-top:38px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#b1c0b4}.footer-bottom a{text-decoration:underline}.page[hidden]{display:none}.page-hero{background:var(--pine);color:white;padding:78px 0}.page-hero h1{max-width:940px;margin-bottom:25px}.page-hero p{max-width:600px;color:#d9e3d7;margin:0}.breadcrumb{font-size:.8rem;margin-bottom:32px;color:#d3dcd2}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:20px 65px}.service-detail{padding:34px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;gap:20px}.service-detail .num{font-family:Georgia,serif;font-size:1.4rem;color:#6e826e}.service-detail p{color:var(--gray)}.service-detail ul{padding-left:18px;font-size:.95rem;color:var(--gray)}.service-detail h3{font-size:1.8rem}.service-image{width:100%;height:350px;object-fit:cover}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:1.1rem;font-weight:500}details p{margin:16px 0 0;color:var(--gray)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-grid h2{font-size:3.1rem}.contact-info{margin-top:30px;border-top:1px solid var(--line);padding-top:25px}.contact-info p{color:var(--gray)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:.9rem;font-weight:500}input,select,textarea{width:100%;background:white;border:1px solid #b6c3b6;border-radius:0;padding:13px 14px;color:var(--ink);min-width:0}textarea{min-height:140px;resize:vertical}.form-note{font-size:.83rem;color:var(--gray);margin:18px 0}.notice{padding:18px 22px;border-left:3px solid var(--gold);background:#edf1e7;font-size:.9rem}.preview-label{padding:9px 16px;background:#e7e7df;color:#47584c;text-align:center;font-size:.75rem}.credit{font-size:.7rem;color:var(--gray);text-align:right;margin-top:12px}html{scroll-behavior:smooth}.skip{position:absolute;left:16px;top:-100px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}
/* Cool grey accents balance the forest green and warm gold. */
:root{--gray:#58616a;--line:#ced2d5;--silver:#929ba2;--mist:#edf0f2;--charcoal:#3f4951}
.light-section{background:var(--mist)}
.service-card .num,.service-detail .num{color:#687681}
.service-card{border-top:2px solid var(--silver)}
.eyebrow{color:#616c75}
.hero .eyebrow,.page-hero .eyebrow,.feature-copy .eyebrow{color:#ced4d8}
.strip-inner div{border-color:#89959b}
.step{border-color:#81918f}
.header{border-bottom:2px solid var(--line)}
input,select,textarea{border-color:#abb3b9}
.notice{background:var(--mist);border-left-color:var(--silver)}
.preview-label{background:#dce0e3;color:var(--charcoal)}
.footer-bottom{border-top-color:#75828a;color:#c4cbcf}
@media(max-width:950px){.header-inner{min-height:95px}.nav{gap:22px}.nav .button{padding:12px 18px}.intro{gap:45px}.hero{min-height:600px}.feature-copy{padding:45px 35px}.contact-grid{gap:45px}.hero h1{max-width:690px}.section{padding:70px 0}}
@media(max-width:650px){.wrap{width:88%}.header-inner{min-height:90px;position:relative}.brand-img{width:150px;height:68px}.menu{display:block}.nav{display:none;position:absolute;top:90px;left:-6.8%;right:-6.8%;background:var(--paper);padding:22px 6%;z-index:8;align-items:stretch;flex-direction:column;gap:8px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav>a{min-height:44px}.hero{min-height:610px}.hero-content{padding:58px 0 90px}.hero h1{font-size:3.7rem}.hero p{font-size:1rem}.hero:after{background:linear-gradient(90deg,rgba(8,33,23,.9),rgba(8,33,23,.5))}.hero-foot{font-size:.65rem;gap:20px}.strip-inner{grid-template-columns:1fr 1fr;padding:15px 0;gap:12px}.strip-inner div{font-size:.8rem;padding:5px 8px}.strip-inner div:nth-child(3){border:0}.intro,.feature,.faq,.contact-grid{grid-template-columns:1fr;gap:30px}.section{padding:58px 0}.intro h2{font-size:2.9rem}.section-head{align-items:start;flex-direction:column}.service-cards{grid-template-columns:1fr}.service-card .num{margin-bottom:15px}.service-card{padding:20px 0}.feature{gap:0}.feature-image{min-height:320px}.feature-copy{padding:42px 6%}.cta-inner{align-items:start;flex-direction:column;gap:28px}.footer-top,.footer-bottom{flex-direction:column;gap:20px}.footer-links{flex-wrap:wrap;gap:25px}.service-list{grid-template-columns:1fr;gap:0}.page-hero{padding:50px 0}.page-hero h1{font-size:3.6rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.service-image{height:240px}.eyebrow{font-size:.73rem}.utility{font-size:.65rem}.hero-actions .button{padding:12px 20px}.preview-label{font-size:.7rem}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.65,.3,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.page:not([hidden]) .hero-copy>*,.page:not([hidden]) .hero-content>.ca-certification--home,.page:not([hidden]) .page-hero .wrap>*{animation:soft-enter .7s cubic-bezier(.2,.65,.3,1) both}
.page:not([hidden]) .hero-content h1,.page:not([hidden]) .page-hero h1{animation-delay:80ms}
.page:not([hidden]) .hero-content p,.page:not([hidden]) .page-hero p{animation-delay:160ms}
.page:not([hidden]) .hero-actions{animation-delay:240ms}
.service-card{transition:transform .3s ease,border-color .3s ease}
.underlink{transition:color .25s ease,border-color .25s ease}
.underlink:hover{color:#677680;border-color:#677680}
.nav.open{animation:soft-enter .25s ease both}
details[open] p{animation:soft-enter .3s ease both}
#main{view-transition-name:page-content}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-old(page-content){animation:soft-exit .16s ease both}
::view-transition-new(page-content){animation:soft-enter .32s ease both;animation-delay:.08s}
@keyframes soft-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes soft-exit{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}
@media(hover:hover) and (pointer:fine){.service-card.is-visible:hover{transform:translateY(-4px);border-color:var(--pine)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}::view-transition-old(page-content),::view-transition-new(page-content){animation:none!important}}

/* WordPress integration: match the original markup and preserve editor content. */
.brand .custom-logo-link{display:flex}.brand .custom-logo{width:175px;height:80px;object-fit:contain}
.brand-fallback.has-no-logo{display:block}
.service-detail img{width:100%;height:220px;object-fit:cover;margin:0 0 24px}
.service-card img{width:100%;height:220px;object-fit:cover;margin:0 0 24px}
.ca-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ca-form-error{color:#8b2635}.ca-form-error:empty{display:none}
button:disabled{cursor:wait;opacity:.65}.form-status:empty{display:none}
.entry-content{max-width:850px}.entry-content a{text-decoration:underline}
.entry-content img{height:auto}.entry-content h2{font-size:clamp(2rem,4vw,3rem)}
.entry-content h3{font-size:1.6rem}.entry-content ul,.entry-content ol{padding-left:1.3rem}
@media(max-width:650px){.brand .custom-logo{width:150px;height:68px}}
/* Cross-document transitions progressively enhance native WordPress navigation. */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
