:root{--ink:#222724;--muted:#626961;--paper:#fff;--soft:#f2f4f0;--line:#dce1d9;--lime:#d1ed79;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;font-weight:500}h2{font-size:clamp(2rem,3.6vw,3.55rem);letter-spacing:-.045em}h3{font-size:1.4rem;letter-spacing:-.025em}a,button{transition:background .2s,color .2s,box-shadow .2s}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #688a26;outline-offset:5px}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:600;margin-bottom:24px;line-height:1.6}.header{height:94px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{height:100%;width:calc(100% - 96px);max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:block;width:285px;flex:0 1 285px;min-width:0}.brand-logo{display:block;width:100%;height:auto}.nav{display:flex;gap:28px;font-size:.875rem}.nav a:hover,.text-link:hover{color:#5c7527}.header-phone{font-size:.95rem;font-weight:600;white-space:nowrap}.menu-button{display:none;border:0;background:transparent;font-size:1.5rem;padding:8px}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff;min-height:650px}.hero-copy{padding:64px 40px 52px max(48px,calc((100vw - 1280px) / 2));display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{font-size:.6875rem;color:#d5dcd2;display:flex;align-items:center;gap:12px}.mini-line{width:25px;height:1px;background:var(--lime);flex-shrink:0}h1{font-size:clamp(3.3rem,5.4vw,5.6rem);letter-spacing:-.055em;line-height:1.01;margin-bottom:28px}h1 span{color:var(--lime)}.hero-description{color:#d1d6d0;font-size:1.0625rem;line-height:1.7}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;border:0;border-radius:4px;padding:17px 23px;font-size:.9375rem;font-weight:600;min-height:56px;line-height:1.4}.button span{font-size:1.3rem;line-height:1}.lime{background:var(--lime);color:var(--ink)}.lime:hover{background:#e1f8a4}.dark{background:var(--ink);color:#fff}.dark:hover{background:#3a453b}.text-link{font-size:.875rem;display:inline-flex;gap:18px;align-items:center;border-bottom:1px solid #6e756f;padding-block:8px}.hero-note{font-size:.8125rem;color:#b9c1b7;margin-top:auto;padding-top:37px;display:flex;gap:10px}.check{color:var(--lime)}.hero-visual{position:relative;min-height:650px;overflow:hidden}.hero-visual>img{object-fit:cover;object-position:center}.hero-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(15,23,18,.68));pointer-events:none}.image-label{bottom:30px;left:30px;display:flex;justify-content:space-between;font-size:.6875rem;letter-spacing:.1em;z-index:1;color:white}.image-label,.visual-link{position:absolute;right:30px}.visual-link{top:30px;border:1px solid #ffffff90;border-radius:50%;width:50px;height:50px;display:grid;place-items:center;background:#22272433;font-size:1.5rem}.benefit-strip{display:grid;grid-template-columns:repeat(4,1fr);padding-block:30px;border-bottom:1px solid var(--line)}.benefit-strip>div{display:flex;align-items:flex-start;gap:24px;border-right:1px solid var(--line);padding-inline:25px}.benefit-strip>div:first-child{padding-left:0}.benefit-strip>div:last-child{border:0}.benefit-strip span{font-size:.75rem;color:#8b9487;padding-top:4px}.benefit-strip p{font-size:.875rem;color:var(--muted);line-height:1.7}.benefit-strip strong{color:var(--ink);font-weight:500}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:44px}.section-intro{max-width:370px;color:var(--muted);line-height:1.8}.types-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.type-card{padding:25px 24px 23px;background:var(--soft);border:1px solid transparent;border-radius:var(--radius);display:flex;flex-direction:column;min-height:275px}.type-card:hover{border-color:#bac6ae}.type-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:38px;font-size:.75rem;color:var(--muted)}.small-tag{font-size:.6875rem;padding:4px 8px;background:#e6eae1;border-radius:20px;color:#4c5846}.type-card h3{font-size:1.7rem;margin-bottom:16px}.type-card p{color:var(--muted);font-size:.875rem;line-height:1.6;margin-bottom:25px}.card-link{display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;margin-top:auto;border-top:1px solid var(--line);padding-top:18px}.card-link:hover{color:#537023}.type-note{margin-top:24px;display:flex;gap:10px;flex-wrap:wrap;font-size:.875rem;color:var(--muted)}.type-note strong{font-weight:500;color:var(--ink)}.type-note a{margin-left:auto;color:var(--ink);text-decoration:underline;text-underline-offset:5px}.projects{background:var(--soft)}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:42px 20px}.project{grid-column:span 4;text-align:left;padding:0;background:transparent;border:none;color:var(--ink)}.project-image{position:relative;aspect-ratio:.94;overflow:hidden;border-radius:6px}.project-image img{object-fit:cover;transition:transform .4s}.project:hover img{transform:scale(1.035)}.zoom{position:absolute;right:16px;bottom:16px;border-radius:50%;background:#fff;width:40px;height:40px;display:grid;place-items:center;font-size:1.35rem}.project-count{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:999px;background:#222724d9;color:white;font-size:.6875rem;letter-spacing:.04em}.project-caption{padding:20px 0 0}.project-caption>span{font-size:.6875rem;letter-spacing:.11em;color:var(--muted)}.project-caption h3{margin-top:9px;font-size:1.5rem}.project-caption p{margin-top:12px;color:var(--muted);font-size:.8125rem;line-height:1.65;max-width:36rem}.project:first-child,.project:nth-child(6){grid-column:span 8}.project:first-child .project-image,.project:nth-child(6) .project-image{aspect-ratio:1.95}.finish{display:grid;grid-template-columns:1fr 1fr;gap:90px}.finish .section-intro{margin-block:25px 30px}.finish-row{display:flex;gap:26px;padding:24px 0;border-bottom:1px solid var(--line)}.finish-row:first-child{padding-top:4px}.finish-row>span{font-size:.75rem;color:var(--muted);padding-top:4px}.finish-row h3{font-size:1.7rem;margin-bottom:10px}.finish-row p{font-size:.9375rem;color:var(--muted)}.railing{font-size:.8125rem;color:var(--muted);padding-top:22px}.process{background:var(--ink);color:#fff}.process .eyebrow{color:var(--lime)}.process .section-intro{color:#b9c2b7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:0;list-style:none;margin:55px 0 0}.steps li{border-top:1px solid #53604f;padding-top:23px}.step-number{font-size:.8125rem;color:var(--lime);display:inline-block;margin-bottom:38px}.steps h3{font-size:1.25rem;margin-bottom:18px}.steps p{font-size:.875rem;color:#b9c2b7;line-height:1.75}.estimate{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.estimate-copy{padding-top:20px}.estimate h2 span{color:#77876a}.estimate-copy>p:not(.eyebrow){color:var(--muted);max-width:390px;margin-top:28px;line-height:1.85}.cost-list{list-style:none;padding:0;margin:30px 0}.cost-list li{border-bottom:1px solid var(--line);padding:14px 0;font-size:.9375rem}.cost-list li:before{content:"✓";margin-right:13px;color:#6a7d59}.help-box{background:var(--soft);border-radius:6px;padding:24px;margin-top:35px;max-width:410px}.help-box strong{font-weight:500}.help-box p{font-size:.875rem;color:var(--muted);margin-top:9px}.help-box a{text-decoration:underline;text-underline-offset:3px}.lead-card{background:var(--soft);border:1px solid var(--line);padding:32px;border-radius:10px}.form-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:28px}.form-head h3{font-size:1.5rem}.form-head>span{font-size:.75rem;color:var(--muted);white-space:nowrap}fieldset{border:0;margin:0 0 22px;padding:0}legend{font-size:.875rem;margin-bottom:12px}.choices{flex-wrap:wrap}.choice,.choices{display:flex;gap:8px}.choice{cursor:pointer;align-items:center;padding:10px 12px;border:1px solid #cdd4c6;background:#fff;border-radius:4px;font-size:.8125rem}.choice.selected{border-color:#637347;background:#e7efda}.choice input{accent-color:#4e6334;margin:0;width:14px;height:14px}.field{display:flex;flex-direction:column;gap:8px;font-size:.875rem;margin-bottom:18px}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #d5dbcf;border-radius:4px;background:#fff;padding:12px;color:var(--ink);font-size:1rem}.field input::placeholder,.field textarea::placeholder{font-size:.875rem;color:#737b6e}.field textarea{resize:vertical}.upload-field input[type=file]{padding:10px;cursor:pointer}.upload-field input[type=file]::file-selector-button{border:0;border-radius:3px;background:var(--ink);color:#fff;padding:9px 13px;margin-right:12px;cursor:pointer}.upload-hint,.upload-selected{display:block;margin-top:7px;color:var(--muted);font-size:.75rem;line-height:1.45}.upload-selected{overflow-wrap:anywhere;color:var(--ink)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:.8125rem;color:var(--muted);cursor:pointer}.consent input{accent-color:#546c2d;width:17px;height:17px;margin:3px 0 0;flex-shrink:0}.privacy-note{font-size:.75rem;color:var(--muted);margin-top:10px}.privacy-note a{text-decoration:underline}.submit{width:100%;margin-top:22px}.form-note{font-size:.75rem;color:var(--muted);text-align:center;margin-top:12px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-error{font-size:.875rem;color:#a52a20;padding:15px 0 0}.form-error a{text-decoration:underline}.email-ready{padding-top:24px;border-top:1px solid var(--line);margin-top:25px}.email-ready p{font-size:.875rem;margin-block:10px 18px;color:var(--muted)}.email-ready a:not(.button){text-decoration:underline}.success-mark{font-size:2rem;color:#52652c}.success h3{margin-block:16px}.success p{margin-bottom:28px}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.45fr;gap:80px}.faq .section-intro{margin-top:24px;max-width:230px}details{border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{padding:24px 0;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:1rem;line-height:1.5}summary::-webkit-details-marker{display:none}summary span{font-size:1.4rem;font-weight:400;flex-shrink:0}details[open] summary span{transform:rotate(45deg)}details>p{padding:0 35px 26px 0;color:var(--muted);font-size:.9375rem;line-height:1.8}.contact-section{background:var(--lime);padding:65px 0 75px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.contact-grid h2{font-size:clamp(2rem,3.8vw,3.75rem)}.contact-grid h2 span{color:#54683b}.contact-details{display:flex;flex-direction:column;align-items:flex-start;padding-top:5px;gap:8px}.contact-details>a{font-size:clamp(1.2rem,2.15vw,2.1rem);letter-spacing:-.03em;white-space:nowrap}.contact-details>a:hover{text-decoration:underline;text-underline-offset:6px}.contact-details .email{font-size:1rem;margin-top:10px;letter-spacing:0;border-bottom:1px solid #7c925b;padding-bottom:5px}.contact-details p{font-size:.875rem;color:#4f6242;margin-top:17px}.footer{padding-block:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer .brand{width:250px;flex-basis:250px}.footer p,.footer>a:last-child{font-size:.75rem;color:var(--muted)}.mobile-cta{display:none}.lightbox{border:0;border-radius:8px;padding:24px;background:#222724;color:#fff;width:min(960px,95vw);max-height:95dvh}.lightbox::backdrop{background:#111b16df}.lightbox-image{position:relative;height:65dvh;margin-top:30px}.lightbox img{object-fit:contain}.lightbox p{text-align:center;margin-top:18px;font-size:.875rem}.close{position:absolute;right:15px;top:10px;width:40px;height:40px;border:0;background:transparent;color:white;font-size:1.3rem}.lightbox-controls{display:flex;gap:24px;align-items:center;justify-content:center;margin-top:15px}.lightbox-controls button{border:1px solid #657261;background:transparent;color:white;width:44px;height:44px;border-radius:50%;font-size:1.2rem}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:var(--lime);padding:14px}.skip:focus{top:10px}@media (min-width:1600px){.hero-copy{padding-left:max(48px,calc((100vw - 1440px) / 2))}.hero,.hero-visual{min-height:760px}.hero-copy{padding-top:85px}}@media (max-width:1100px){.header-inner,.wrap{width:calc(100% - 64px)}.header-inner,.nav{gap:18px}.header-phone{font-size:.8125rem}.hero-copy{padding:48px 30px 40px 32px}.hero,.hero-visual{min-height:610px}.hero-actions{gap:18px}.types-grid{grid-template-columns:repeat(2,1fr)}.type-card{min-height:250px}.section-heading{gap:40px}.section-intro{max-width:320px}.estimate,.finish{gap:45px}.lead-card{padding:24px}.benefit-strip>div{padding-inline:16px;gap:14px}.steps{gap:24px}.faq{gap:45px}.form-grid{grid-template-columns:1fr;gap:0}}@media (max-width:850px){.header{height:78px}.header-inner{width:calc(100% - 40px)}.header-phone{margin-left:auto;font-size:.875rem}.menu-button{display:block}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:20px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #0000000d}.nav.open{display:flex;flex-direction:column;gap:0}.nav a{padding:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 32px}.hero-visual{min-height:440px}.hero h1{font-size:clamp(3.5rem,8.8vw,5.7rem)}.hero-note{padding-top:25px}.hero-description{font-size:1.0625rem}.hero-actions{gap:25px}.section{padding-block:70px}.section-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:35px}.section-intro{max-width:540px}.benefit-strip{grid-template-columns:repeat(2,1fr);row-gap:24px}.benefit-strip>div:nth-child(2){border:0}.benefit-strip>div:nth-child(3){padding-left:0}.gallery{gap:16px}.project-image{aspect-ratio:.78}.project-caption h3{font-size:1.2rem}.finish{gap:35px}.finish-row{gap:15px}.steps{grid-template-columns:1fr 1fr;gap:36px}.step-number{margin-bottom:22px}.estimate{grid-template-columns:1fr;gap:35px}.estimate-copy>p:not(.eyebrow){max-width:600px}.help-box{max-width:none}.form-grid{grid-template-columns:1fr 1fr;gap:15px}.lead-card{padding:32px}.faq{grid-template-columns:1fr;gap:30px}.faq .section-intro{max-width:none}.contact-grid{gap:30px}.contact-details>a{font-size:1.25rem}.footer{flex-wrap:wrap}.footer p{margin-left:auto}}@media (max-width:560px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.header-inner{gap:10px}.brand{width:190px;flex-basis:190px}.header-phone{font-size:.75rem}.menu-button{font-size:1.25rem;flex-shrink:0}.hero-copy{padding:40px 20px}.hero .eyebrow{font-size:.625rem;letter-spacing:.07em}.hero h1{font-size:clamp(2.9rem,12.6vw,4.2rem)}.hero-description{font-size:1rem}.desktop-break{display:none}.hero-actions{gap:14px;width:100%;align-items:flex-start;flex-direction:column}.hero-actions .button{width:100%}.hero-note{font-size:.75rem}.hero-visual{min-height:350px}.image-label{left:20px;right:20px;bottom:20px;font-size:.625rem}.visual-link{top:20px;right:20px}.benefit-strip{padding-block:24px}.benefit-strip>div{gap:10px;padding-inline:12px}.benefit-strip p{font-size:.75rem}.benefit-strip span{font-size:.625rem}.section{padding-block:55px}.eyebrow{margin-bottom:18px;font-size:.6875rem}h2{font-size:2.2rem}.section-intro{font-size:.9375rem;line-height:1.75}.types-grid{gap:12px}.type-card{padding:18px 16px;min-height:290px}.type-top{flex-wrap:wrap;gap:10px;margin-bottom:25px}.type-card h3{font-size:1.35rem}.type-card p{font-size:.8125rem}.small-tag{font-size:.625rem;padding-inline:6px}.card-link{font-size:.75rem;gap:8px}.type-note{font-size:.8125rem;gap:5px}.type-note a{margin-left:0;margin-top:8px;width:100%}.gallery{grid-template-columns:1fr;gap:28px}.project-image{aspect-ratio:1.25}.project-caption{padding-top:14px}.project-caption h3{font-size:1.4rem}.finish{grid-template-columns:1fr;gap:35px}.finish .button{width:100%}.steps{gap:30px 22px}.steps h3{font-size:1.1rem}.steps p{font-size:.8125rem}.estimate-copy{padding:0}.estimate-copy>p:not(.eyebrow){margin-top:22px;font-size:.9375rem}.help-box{padding:20px}.lead-card{padding:22px 18px}.form-head{align-items:flex-start}.form-head h3{font-size:1.3rem}.form-head>span{font-size:.6875rem}.form-grid{grid-template-columns:1fr;gap:0}.choice{padding:10px}.choice,.consent,.privacy-note{font-size:.75rem}.contact-section{padding-block:45px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-grid h2{font-size:2.4rem}.contact-details>a{font-size:1.6rem}.footer{padding-bottom:105px;gap:22px}.footer p{margin-left:0}.footer>a:last-child{width:100%}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:25;display:grid;grid-template-columns:1fr 1.4fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -4px 20px #00000008}.mobile-cta a{display:grid;place-items:center;min-height:46px;background:var(--lime);border-radius:4px;font-size:.875rem;font-weight:600}.mobile-cta a:first-child{background:var(--ink);color:#fff}.lightbox{padding:15px}.lightbox-image{height:55dvh}summary{font-size:.9375rem;padding-block:20px}}.work-page{overflow:clip}.breadcrumbs{display:flex;gap:10px;align-items:center;padding-block:24px;color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden}.breadcrumbs a:hover{color:var(--ink)}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis}.work-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,.95fr);min-height:620px;padding-bottom:80px}.work-hero-copy{display:flex;flex-direction:column;align-items:flex-start;padding:55px 8vw 32px 0}.work-hero h1{font-size:clamp(3.4rem,6.2vw,6.8rem);max-width:820px;text-wrap:balance}.work-lead{max-width:590px;color:var(--muted);font-size:1.0625rem;line-height:1.8}.work-facts{display:grid;grid-template-columns:repeat(3,auto);gap:35px;margin-top:auto;padding-top:45px}.work-facts div{display:flex;flex-direction:column}.work-facts strong{font-size:1.8rem;font-weight:500;letter-spacing:-.04em}.work-facts span{color:var(--muted);font-size:.75rem}.work-hero-image{position:relative;min-height:580px;border-radius:var(--radius);overflow:hidden;background:var(--soft)}.work-hero-image img{object-fit:cover}.work-hero-image>span{position:absolute;left:20px;bottom:20px;color:white;background:#222724d9;border-radius:999px;padding:8px 12px;font-size:.6875rem;letter-spacing:.1em}.work-gallery-section{background:var(--soft)}.work-gallery-heading{align-items:flex-start}.work-photo-grid{columns:300px 3;column-gap:16px}.work-photo{position:relative;display:block;width:100%;min-height:320px;margin:0 0 16px;padding:0;overflow:hidden;page-break-inside:avoid;break-inside:avoid;border:0;border-radius:6px;background:#dfe3dc}.work-photo:nth-child(3n+1){aspect-ratio:.8}.work-photo:nth-child(3n+2){aspect-ratio:1.05}.work-photo:nth-child(3n){aspect-ratio:.92}.work-photo img{object-fit:cover;transition:transform .45s ease}.work-photo:hover img{transform:scale(1.025)}.work-photo-number{position:absolute;top:14px;left:14px;display:grid;place-items:center;width:34px;height:34px;color:white;border:1px solid #ffffffa8;border-radius:50%;background:#22272466;font-size:.6875rem}.work-cta{background:var(--lime);padding-block:72px}.work-cta-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.work-cta h2 span{color:#52643e}.work-cta-actions{display:flex;flex-direction:column;align-items:flex-end;gap:15px}.work-cta-actions>a:last-child{font-size:1.1rem;text-decoration:underline;text-underline-offset:5px}.next-work{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;padding-block:34px}.next-work>span:first-child{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.next-work strong{font-size:1.25rem;font-weight:500}.next-work>span:last-child{font-size:1.6rem}@media (max-width:850px){.gallery{grid-template-columns:repeat(2,1fr)}.project,.project:first-child,.project:nth-child(6){grid-column:span 1}.project-image,.project:first-child .project-image,.project:nth-child(6) .project-image{aspect-ratio:.9}.work-hero{grid-template-columns:1fr;padding-bottom:60px}.work-hero-copy{padding:36px 0 45px}.work-hero h1{font-size:clamp(3.3rem,10vw,5.4rem)}.work-lead{max-width:650px}.work-facts{margin-top:45px}.work-hero-image{min-height:520px}}@media (max-width:560px){.gallery{grid-template-columns:1fr;gap:34px}.project-image,.project:first-child .project-image,.project:nth-child(6) .project-image{aspect-ratio:1.12}.project-caption p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.breadcrumbs{padding-block:16px}.work-hero{width:100%;padding-bottom:0}.work-hero-copy{width:calc(100% - 40px);margin-inline:auto;padding:28px 0 38px}.work-hero h1{font-size:clamp(2.75rem,13vw,4rem);margin-bottom:22px}.work-lead{font-size:.9375rem}.work-facts{width:100%;gap:12px;margin-top:32px;padding-top:22px;border-top:1px solid var(--line)}.work-facts strong{font-size:1.45rem}.work-facts span{max-width:90px;line-height:1.4}.work-hero-image{min-height:430px;border-radius:0}.work-photo-grid{column-count:1}.work-photo,.work-photo:nth-child(n){min-height:0;aspect-ratio:.9;margin-bottom:12px}.work-gallery-section .section-heading{margin-bottom:28px}.work-cta{padding-block:52px}.work-cta-inner{flex-direction:column;gap:30px}.work-cta-actions,.work-cta-inner{align-items:stretch}.work-cta-actions .button{width:100%}.work-cta-actions>a:last-child{text-align:center}.next-work{grid-template-columns:1fr auto;padding-bottom:105px}.next-work>span:first-child{grid-column:1/-1}.lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:16px}.lightbox-image{height:70dvh;margin-top:35px}}@media (max-width:420px){.header-inner{width:calc(100% - 24px)}.header-phone{display:none}.brand{width:205px;flex-basis:205px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}@media print{.button,.footer,.header,.lead-card,.mobile-cta,.visual-link{display:none}.hero{background:white}.hero,.hero h1 span,.hero-description{color:black}.section{padding-block:24px}.contact-section,.process{background:white;color:black}.process p,.steps p{color:black}}.cookie-banner{position:fixed;right:24px;bottom:24px;z-index:60;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;width:min(760px,calc(100% - 48px));padding:24px;color:#fff;background:var(--ink);border:1px solid #4c554f;border-radius:var(--radius);box-shadow:0 20px 55px #111b1638}.cookie-banner h2,.cookie-dialog h2{font-size:1.35rem;letter-spacing:-.025em}.cookie-banner p{max-width:510px;margin-top:10px;color:#d5dcd2;font-size:.875rem;line-height:1.65}.cookie-banner p a,.policy-content a{text-decoration:underline;text-decoration-color:#8da64b;text-underline-offset:4px}.cookie-banner-actions{display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:8px}.cookie-banner .button,.cookie-dialog .button{min-width:118px;min-height:44px;padding:11px 16px;border-radius:4px}.cookie-reject{border:1px solid #7c8780;color:#fff;background:transparent}.cookie-configure{grid-column:1/-1;border:0;padding:6px;color:#d5dcd2;background:transparent;font-size:.8125rem;text-decoration:underline;text-underline-offset:4px}.cookie-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:var(--radius);color:var(--ink);background:var(--paper);box-shadow:0 24px 80px #111b165c}.cookie-dialog::backdrop{background:#111b16a8}.cookie-dialog-card{padding:30px}.cookie-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px}.cookie-dialog-head .eyebrow{margin-bottom:9px;color:var(--muted);font-size:.625rem}.cookie-dialog-close{display:grid;flex:0 0 42px;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:transparent}.cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.cookie-category h3{font-size:1rem}.cookie-category p{max-width:440px;margin-top:6px;color:var(--muted);font-size:.8125rem;line-height:1.6}.cookie-always-on{color:#4f6622;font-size:.6875rem;font-weight:600;white-space:nowrap}.cookie-category-toggle{cursor:pointer}.cookie-category-toggle input{width:24px;height:24px;accent-color:#688a26}.cookie-dialog-actions{display:flex;gap:10px;padding-top:8px}.cookie-dialog .cookie-reject{color:var(--ink);border-color:var(--ink)}.footer-links{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:.75rem}.footer-links button{border:0;padding:0;color:inherit;background:transparent}.footer-links a:hover,.footer-links button:hover{color:var(--ink)}.policy-page{background:var(--soft);padding:72px 0 110px}.policy-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1fr);gap:clamp(55px,8vw,130px);align-items:start}.policy-heading{position:sticky;top:142px}.policy-heading h1{max-width:570px;font-size:clamp(2.8rem,5vw,5.2rem);letter-spacing:-.055em}.policy-heading>p:last-child{max-width:520px;margin-top:30px;color:var(--muted);line-height:1.75}.policy-content{max-width:720px;padding:12px 0 0}.policy-content section{padding:34px 0;border-top:1px solid #cfd5cc}.policy-content section:first-child{padding-top:0;border-top:0}.policy-content h2{display:flex;gap:14px;margin-bottom:20px;font-size:1.65rem;letter-spacing:-.035em}.policy-content h2 span{padding-top:5px;color:#6b772f;font-size:.6875rem;letter-spacing:.08em}.policy-content h3{margin:26px 0 10px;font-size:1.05rem}.policy-content p{color:#4f5650;line-height:1.8}.policy-content code{padding:2px 5px;border-radius:3px;background:#e4e8e1;font-size:.9em}.policy-cookie-button{margin-top:22px;border:0}.policy-updated{padding-top:28px;border-top:1px solid #cfd5cc;font-size:.8125rem}@media (max-width:850px){.policy-layout{grid-template-columns:1fr;gap:55px}.policy-heading{position:static}.policy-content{max-width:680px}.footer-links{width:100%}}@media (max-width:560px){.cookie-banner{right:12px;bottom:calc(76px + env(safe-area-inset-bottom));grid-template-columns:1fr;gap:18px;width:calc(100% - 24px);padding:20px}.cookie-dialog-card{padding:22px 18px}.cookie-category{gap:12px}.cookie-always-on{max-width:75px;text-align:right;white-space:normal}.cookie-dialog-actions{align-items:stretch;flex-direction:column}.policy-page{padding:48px 0 80px}.policy-layout{gap:42px}.policy-heading h1{font-size:clamp(2.7rem,13vw,4rem)}.policy-heading>p:last-child{margin-top:22px;font-size:.9375rem}.policy-content section{padding:28px 0}.policy-content h2{font-size:1.4rem}.footer-links{align-items:flex-start;flex-direction:column;gap:10px}}