:root{color-scheme:light;--black: #080c09;--ink: #121a14;--muted: #5a665f;--green: #2d6b3d;--green-bright: #8fd14f;--green-deep: #123820;--sage: #eaf2e4;--paper: #f7f7f0;--white: #ffffff;--line: rgba(18, 26, 20, .14);--shadow: 0 24px 80px rgba(8, 12, 9, .24);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.5}img,svg{display:block}img{max-width:100%}a{color:inherit}.site-header{position:fixed;z-index:30;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem clamp(1rem,4vw,3.25rem);color:var(--white);background:linear-gradient(180deg,#080c09d1,#080c0900)}.brand{display:inline-flex;align-items:center;gap:.78rem;min-width:0;text-decoration:none}.brand-mark{width:3.3rem;height:3.3rem;overflow:hidden;border:1px solid rgba(255,255,255,.62);background:var(--green-deep);border-radius:.75rem;box-shadow:0 14px 40px #00000052}.brand-mark img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}.brand strong,.brand small{display:block}.brand strong{font-size:1.18rem;line-height:1;letter-spacing:-.01em}.brand small{margin-top:.12rem;color:#ffffffbf;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}nav{display:none;align-items:center;gap:1rem;font-size:.88rem;font-weight:900}nav a{text-decoration:none}.nav-cta{padding:.55rem .9rem;background:var(--white);color:var(--black);border-radius:999px;white-space:nowrap}.hero{position:relative;min-height:100svh;overflow:hidden;color:var(--white);--mx: 0;--my: 0}.hero picture,.hero img,.hero-shade{position:absolute;inset:0}.hero img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .7s ease}.hero-shade{background:radial-gradient(circle at calc(70% + (var(--mx) * 7%)) calc(18% + (var(--my) * 5%)),rgba(143,209,79,.2),transparent 24rem),linear-gradient(180deg,#080c092e,#080c09bd 62%,#080c09f0),linear-gradient(90deg,#080c09e0,#080c092e)}.motion-ok .hero:hover img{transform:translate3d(calc(var(--mx) * -14px),calc(var(--my) * -10px),0) scale(1.045)}.hero-grid{position:relative;z-index:2;width:min(82rem,calc(100% - 2rem));min-height:100svh;margin:0 auto;display:grid;align-items:end;gap:2rem;padding:7rem 0 1.2rem}.hero-copy{max-width:46rem;padding-bottom:.6rem}.eyebrow{margin:0 0 .85rem;color:var(--green-bright);font-size:.76rem;font-weight:950;letter-spacing:.14em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin:0;line-height:.96;letter-spacing:0}h1{max-width:9ch;font-size:clamp(4.2rem,16vw,9.6rem)}h2{font-size:clamp(2.35rem,9vw,6.2rem)}h3{font-size:1.12rem}.hero-copy p:not(.eyebrow){max-width:39rem;margin:1.2rem 0 0;color:#ffffffd1;font-size:clamp(1.05rem,3.8vw,1.32rem)}.hero-actions{display:flex;gap:.72rem;flex-wrap:wrap;margin-top:1.6rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.1rem;padding:.85rem 1.12rem;border:1px solid transparent;border-radius:999px;font-weight:950;text-decoration:none;text-align:center;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--white);color:var(--black)}.button-secondary{border-color:#ffffff52;background:#ffffff1a;color:var(--white);backdrop-filter:blur(12px)}.quote-panel{display:grid;gap:.85rem;padding:1rem;border:1px solid rgba(255,255,255,.18);background:#080c099e;border-radius:.85rem;backdrop-filter:blur(18px);box-shadow:var(--shadow);transition:transform .26s ease,border-color .26s ease,background-color .26s ease}.quote-panel:hover{transform:translateY(-4px);border-color:#8fd14f61;background:#080c09b8}.panel-logo{display:grid;align-items:center;justify-self:start;width:min(17rem,100%);max-width:100%;overflow:hidden;padding:.78rem 1rem;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;border-radius:.78rem}.panel-logo span,.panel-logo strong,.panel-logo small{display:block}.panel-logo strong{color:var(--white);font-size:clamp(1.55rem,6vw,2.5rem);font-weight:950;line-height:.88;text-transform:uppercase}.panel-logo small{margin-top:.2rem;color:var(--green-bright);font-size:.72rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}.quote-panel p,.quote-panel small{margin:0;color:#ffffffb8;font-weight:900}.quote-panel strong{display:block;max-width:16rem;font-size:clamp(1.7rem,7vw,3rem);line-height:.95}.quote-meter{display:grid;grid-template-columns:1.8fr 1fr .65fr;gap:.35rem}.quote-meter span{height:.72rem;background:var(--green-bright);border-radius:999px}.quote-meter span:nth-child(2){background:var(--green)}.quote-meter span:nth-child(3){background:var(--white)}.statement{background:var(--black);color:var(--white)}.statement-inner,.section{width:min(82rem,calc(100% - 2rem));margin:0 auto}.statement-inner{padding:4rem 0}.statement h2{max-width:15ch}.service-band{background:var(--paper)}.section{padding:4.5rem 0}.section-heading{display:grid;gap:1rem;margin-bottom:2rem}.section-heading .eyebrow,.work-copy .eyebrow,.areas .eyebrow,.contact .eyebrow{color:var(--green)}.service-grid{display:grid;gap:.72rem}.service-card{display:grid;grid-template-columns:3rem minmax(0,1fr);align-items:start;gap:.95rem;min-height:8.2rem;padding:1rem;background:var(--white);border:1px solid var(--line);border-radius:.55rem;box-shadow:0 8px 30px #121a140f;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.service-card:hover{transform:translateY(-4px);border-color:#2d6b3d47;box-shadow:0 18px 45px #121a141f}.service-card h3{margin-top:.08rem}.service-icon{display:grid;place-items:center;width:3rem;height:3rem;color:var(--green-deep);background:var(--sage);border:1px solid rgba(45,107,61,.18);border-radius:.55rem}.service-icon svg,.contact-card svg,.trust-row svg{flex:0 0 auto}.service-card p,.work-copy p,.contact-card p,footer p{margin:0;color:var(--muted)}.service-card p{margin-top:.62rem}.work{display:grid;gap:2rem;position:relative}.work-copy p:not(.eyebrow){margin-top:1.2rem;font-size:1.05rem}.work-gallery{display:grid;gap:.75rem}.work-gallery figure{position:relative;min-height:18rem;margin:0;overflow:hidden;border-radius:.7rem;background:var(--black);box-shadow:0 14px 50px #121a1429;transition:transform .26s ease,box-shadow .26s ease}.work-gallery figure:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 20px 60px #121a1438}.work-gallery figure:nth-child(2),.work-gallery figure:nth-child(3){min-height:15rem}.work-gallery img{width:100%;height:100%;min-height:inherit;object-fit:cover}.work-gallery figcaption{position:absolute;left:.8rem;right:.8rem;bottom:.8rem;display:grid;gap:.25rem;padding:.85rem;color:var(--white);background:#080c09a3;border:1px solid rgba(255,255,255,.16);border-radius:.5rem;backdrop-filter:blur(12px)}.work-gallery span{color:var(--green-bright);font-size:.72rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.areas{background:var(--black);color:var(--white)}.areas-inner{display:grid;gap:2rem}.areas-copy p:not(.eyebrow),.contact-copy p:not(.eyebrow){max-width:34rem;margin:1rem 0 0;color:#ffffffb8;font-size:1.05rem}.area-panel{display:grid;gap:1rem;padding:clamp(1rem,3vw,1.55rem);border:1px solid rgba(255,255,255,.14);background:radial-gradient(circle at top right,rgba(143,209,79,.18),transparent 14rem),#ffffff0f;border-radius:.8rem;transition:transform .24s ease,border-color .24s ease}.area-panel:hover,.contact-card:hover{transform:translateY(-3px);border-color:#8fd14f52}.area-panel-head{display:flex;align-items:center;gap:.8rem}.area-panel-head span{display:grid;place-items:center;width:3.2rem;height:3.2rem;color:var(--black);background:var(--green-bright);border-radius:.65rem}.area-panel-head strong{font-size:clamp(1.5rem,6vw,2.35rem);line-height:.95}.area-list{display:flex;flex-wrap:wrap;gap:.65rem}.area-list span{flex:1 1 8.5rem;padding:.88rem;border:1px solid rgba(255,255,255,.14);background:#ffffff14;border-radius:999px;color:var(--white);text-align:center;font-weight:950}.contact{background:var(--green-deep);color:var(--white)}.contact-inner{display:grid;gap:2rem}.contact h2{max-width:14ch}.contact-card{display:grid;gap:1.1rem;align-self:center;padding:clamp(1.2rem,3vw,1.8rem);border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at top right,rgba(143,209,79,.18),transparent 15rem),#ffffff14;border-radius:.7rem;transition:transform .24s ease,border-color .24s ease}.contact-card-head{display:flex;align-items:center;gap:.85rem}.contact-card-head strong{font-size:clamp(1.45rem,6vw,2.4rem);line-height:.95}.contact-icon{display:grid;place-items:center;width:3.25rem;height:3.25rem;color:var(--black);background:var(--green-bright);border-radius:.65rem}.estimate-list{display:grid;grid-template-columns:1fr;gap:.55rem;padding:0;margin:0;list-style:none}.estimate-list li,.trust-row span{display:flex;align-items:center;gap:.55rem;min-height:2.8rem;padding:.72rem .8rem;color:var(--white);background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:.5rem;font-weight:900}.estimate-list svg,.trust-row svg{color:var(--green-bright)}.contact-card .button{gap:.48rem;font-size:clamp(.9rem,4vw,1rem)}.contact-actions{display:grid;gap:.65rem}.contact-actions .button-secondary{border-color:#ffffff2e;background:#ffffff1a;color:var(--white)}.contact-card p{color:#ffffffc2}.contact-instructions{max-width:38rem;font-size:1rem}.trust-row{display:grid;gap:.55rem}.trust-row span{min-height:2.4rem;padding:.6rem .72rem;color:#ffffffd6;font-size:.86rem}footer{padding:2rem 1rem 5rem;background:var(--black);color:var(--white)}.footer-inner{width:min(82rem,100%);margin:0 auto;display:grid;gap:1.15rem}.footer-links{display:grid;gap:.55rem}footer p{color:#ffffff9e}footer p:first-child,footer a,.site-credit a{color:var(--white);font-weight:950}footer a{text-decoration-color:#8fd14fa6;text-underline-offset:.18em}.site-credit{color:#ffffff9e}.motion-ok .reveal{transform:translateY(.9rem);transition:transform .65s ease,box-shadow .22s ease,border-color .22s ease}.motion-ok .reveal.is-visible{transform:translateY(0)}.motion-ok section.reveal{transform:none}.motion-ok section.reveal>.statement-inner,.motion-ok section.reveal>.section,.motion-ok section.reveal.work>.work-copy,.motion-ok section.reveal.work>.work-gallery{transform:translateY(.9rem);transition:transform .65s ease}.motion-ok section.reveal.is-visible>.statement-inner,.motion-ok section.reveal.is-visible>.section,.motion-ok section.reveal.work.is-visible>.work-copy,.motion-ok section.reveal.work.is-visible>.work-gallery{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media(min-width:720px){nav{display:flex}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);align-items:end;padding-bottom:2rem}.quote-panel{margin-bottom:1.2rem}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:8.8rem}.estimate-list{grid-template-columns:repeat(3,minmax(0,1fr))}.trust-row{grid-template-columns:repeat(2,minmax(0,1fr))}.work{grid-template-columns:.82fr 1.18fr;align-items:center}.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.work-gallery figure:first-child{grid-row:span 2}.areas-inner,.contact-inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center}.contact-actions{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.footer-inner{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media(min-width:1040px){.section{padding:6.5rem 0}.statement-inner{padding:5.5rem 0}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.service-card{grid-template-columns:2.8rem minmax(0,1fr);min-height:10.25rem}.areas-inner{grid-template-columns:minmax(0,.9fr) minmax(30rem,1.1fr)}.contact-inner{grid-template-columns:minmax(0,.95fr) minmax(34rem,1.05fr)}.contact h2{max-width:17ch}.area-panel-head strong{white-space:nowrap}.contact-card{min-height:28rem;align-content:center}}
