:root{--ink:#142c27;--muted:#53625d;--forest:#173c32;--green:#275c47;--cream:#f6f5ef;--surface:#eceee5;--line:#d8ddd4;--white:#fff;--accent:#d0df98;--radius:5px;--wrap:1240px} *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--white);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}body:has(.home-hero){background:var(--cream)}main{overflow:clip}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,blockquote{margin:0}p+p{margin-top:18px}ul,ol{padding-left:22px}h1,h2,h3{font-weight:600;letter-spacing:-.05em;line-height:1.12;text-wrap:balance}h1{font-size:clamp(2.5rem,4.5vw,4.1875rem)}h2{font-size:clamp(1.9375rem,3.1vw,2.875rem)}h3{font-size:1.4375rem;letter-spacing:-.035em}p{color:var(--muted)}a,button,summary{touch-action:manipulation}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:3px solid #36744e;outline-offset:5px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px}button{color:inherit}a:hover{text-decoration:none}main a:not(.button):hover{color:var(--green)}.wrap{width:min(calc(100% - 96px),var(--wrap));margin-inline:auto}.section{padding:104px 0;background:var(--white)}.surface{background:var(--cream)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:46px}.section-head>div{max-width:740px}.section-head>p{max-width:380px;flex:0 1 380px}.eyebrow{font-size:0.8125rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--green);margin-bottom:19px}.lead{font-size:1.0625rem;line-height:1.8;max-width:610px}.small-print,.section-note{font-size:0.9375rem;line-height:1.7;color:var(--muted)}.section-note{margin-top:24px;max-width:840px}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:0.9375rem;line-height:1.5;font-weight:600;padding:12px 0;min-height:44px}.text-link span{font-size:1.125rem;transition:transform .18s ease}.text-link:hover span{transform:translateX(3px)}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:14px 22px;border:1px solid transparent;border-radius:var(--radius);font-size:0.9375rem;font-weight:600;line-height:1.4;cursor:pointer;transition:background .18s,box-shadow .18s}.button span{font-size:1.25rem;font-weight:400;line-height:1}.button.solid{background:var(--forest);color:white}.button.solid:hover{background:#295943;box-shadow:0 3px 8px #183b311a}.button.outline{color:white;border-color:#a0b6ac;background:transparent}.button.outline:hover{background:#ffffff12}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.skip-link{position:absolute;top:-100px;left:16px;background:var(--white);color:var(--ink);padding:14px;z-index:200}.skip-link:focus{top:8px} .topline{background:var(--forest);color:#fff;font-size:0.8125rem;letter-spacing:.045em}.topline .wrap{display:flex;justify-content:space-between;align-items:center;min-height:32px;gap:16px}.topline a{padding:4px 0}.site-header{position:sticky;top:0;z-index:50;background:#fbfbf7;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:34px;height:92px}.brand{margin-right:auto;flex-shrink:0}.brand img{width:200px;height:50px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a,.nav-group>summary{font-size:0.9375rem;font-weight:500;line-height:1.5;padding:20px 0;white-space:nowrap}.nav-group{position:relative}.nav-group>summary{list-style:none;display:flex;align-items:center;gap:8px}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary:after{content:"";width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin-top:-4px}.nav-group[open]>summary:after{transform:rotate(225deg);margin-top:2px}.nav-dropdown{position:absolute;top:100%;left:-22px;min-width:250px;padding:14px;background:var(--white);border:1px solid var(--line);box-shadow:0 16px 32px #142c2714;border-radius:var(--radius)}.nav-dropdown a{display:block;padding:11px 12px;font-size:0.9375rem;border-radius:3px}.nav-dropdown a:hover{background:var(--cream)}.header-cta{min-height:44px;font-size:0.8125rem;padding:11px 15px;gap:16px}.menu-toggle{display:none}.mobile-contact{display:none} .home-hero{background:var(--cream);padding:62px 0 0}.home-hero-grid{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:64px}.home-hero h1{font-size:clamp(3rem,5.4vw,4.9375rem);font-weight:600;line-height:1.02;letter-spacing:-.068em;margin-bottom:27px}.home-hero h1 span{color:var(--green)}.home-hero .lead{max-width:485px;font-size:1rem;line-height:1.85}.home-hero .eyebrow{font-size:0.8125rem;letter-spacing:.065em;display:flex;align-items:center;gap:9px}.status-dot{flex-shrink:0;width:6px;height:6px;display:inline-block;background:var(--green);border-radius:50%}.hero-note{font-size:0.8125rem;margin-top:23px!important;letter-spacing:.025em}.hero-visual{align-self:stretch;min-width:0;display:flex;flex-direction:column;padding-top:2px}.fence-photo{background:var(--surface);overflow:hidden;min-width:0;border-radius:var(--radius)}.fence-photo>img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.12}.fence-photo figcaption{background:var(--forest);color:white;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:0.8125rem;line-height:1.4;letter-spacing:.02em;padding:16px 20px}.fence-photo figcaption>span{color:#cfdbd3}.hero-visual>.fence-photo{flex:1;display:flex;flex-direction:column}.hero-visual .fence-photo img{height:0;min-height:470px;flex:1;object-position:55% 50%}.hero-signoff{display:flex;justify-content:space-between;gap:15px;font-size:0.8125rem;padding:15px 0 0;color:var(--muted)}.business-strip{border-top:1px solid #cad3c8;display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;padding:25px 0}.business-strip>div{display:flex;align-items:baseline;gap:12px;padding:0 24px;border-left:1px solid #cad3c8}.business-strip>div:first-child{border:0;padding-left:0}.business-strip>div:last-child{padding-right:0}.business-strip strong{font-size:0.8125rem;white-space:normal;font-weight:600}.business-strip span{font-size:0.8125rem;color:var(--muted);line-height:1.6}.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.material-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;display:flex;flex-direction:column}.material-card .fence-photo{border-radius:0;height:246px}.material-card .fence-photo img{aspect-ratio:auto;height:100%}.material-card:nth-child(2) .fence-photo img{object-position:40% center}.material-card-copy{padding:27px 26px 21px;display:flex;flex-direction:column;flex:1}.material-card h3{font-size:1.625rem;margin-bottom:13px}.material-benefit{font-size:0.9375rem;font-weight:600;color:var(--ink);margin:0 0 10px}.material-card-copy>p:not(.material-benefit){font-size:0.9375rem;line-height:1.8;margin-top:0;margin-bottom:18px}.material-card-copy .text-link{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;justify-content:space-between;width:100%}.pvc-panel{background:#e8ecdf;min-height:246px;padding:24px 27px;display:flex;flex-direction:column;justify-content:space-between;color:var(--forest)}.pvc-panel>span{font-size:0.8125rem}.pvc-panel>span:first-child{text-transform:uppercase;letter-spacing:.1em}.pvc-panel strong{font-size:2.125rem;line-height:1.13;letter-spacing:-.045em;font-weight:500}.gate-band{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding:35px 0 27px}.gate-band .eyebrow{margin-bottom:8px}.gate-band h3{font-size:1.5625rem;margin-bottom:8px}.gate-band p:not(.eyebrow){font-size:0.9375rem}.gate-band .text-link{white-space:nowrap}.process-section{background:var(--surface)}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.process-grid>.process-list{margin:0}.process-grid .lead{font-size:1rem;margin-top:25px;max-width:420px}.process-grid .text-link{margin-top:15px}.process-list{list-style:none;padding:0}.process-list li{display:grid;grid-template-columns:38px 1fr;gap:25px;padding:27px 0;border-top:1px solid #c7d0c4}.process-list li:first-child{padding-top:4px;border-top:0}.process-list li:last-child{padding-bottom:0}.process-list li>span{font-size:0.9375rem;font-weight:500;color:var(--green);padding-top:2px}.process-list h3{font-size:1.3125rem;margin-bottom:12px}.process-list p{font-size:0.9375rem}.owner-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.owner-statement{border:1px solid #cdd7c5;background:var(--cream);padding:47px;min-height:412px;display:flex;flex-direction:column;justify-content:space-between}.brand-statement{font-size:clamp(2.5rem,4.2vw,3.8125rem);color:var(--forest);line-height:1.05;letter-spacing:-.058em;font-weight:500;margin:10px 0 35px}.owner-signature{display:flex;flex-direction:column;border-top:1px solid #cdd7c5;padding-top:23px;gap:3px}.owner-signature strong{font-size:0.9375rem}.owner-signature span{font-size:0.8125rem;color:var(--muted)}.owner-copy>p:not(.eyebrow){font-size:1rem}.owner-copy h2{margin-bottom:24px}.owner-copy>.text-link{margin-top:14px}.review-reference{margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.review-reference>span{display:block;color:var(--muted);font-size:0.8125rem}.commercial-banner{background:var(--forest);color:white;padding:65px 0}.commercial-banner .wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.commercial-banner .eyebrow{color:#d2e0b1}.commercial-banner p:not(.eyebrow){color:#d2ded7;margin-top:21px;font-size:1rem;max-width:550px}.commercial-banner h2{font-size:2.625rem}.commercial-banner .button{flex-shrink:0}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.faq-grid>.text-link,.faq-grid>div>.text-link{margin-top:19px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;list-style:none;padding:24px 0;font-weight:500;font-size:1rem;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:1.3125rem;font-weight:400;flex-shrink:0}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>div{padding:0 36px 24px 0;font-size:0.9375rem} .main-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px} .page-hero{background:var(--cream);padding:28px 0 62px}.crumb{display:flex;gap:12px;align-items:center;font-size:0.8125rem;line-height:1.7;color:var(--muted);margin-bottom:52px;flex-wrap:wrap}.crumb a{padding:7px 0}.crumb a:hover{text-decoration:underline}.crumb [aria-current]{color:var(--ink)}.page-hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:65px;align-items:center}.page-hero h1{margin-bottom:25px}.page-hero .lead{font-size:1rem;max-width:590px}.page-hero.text-only .page-hero-grid{display:block}.page-hero.text-only .hero-copy{max-width:930px;padding-bottom:10px}.page-hero.text-only .lead{max-width:640px}.page-hero .fence-photo{min-height:380px}.page-hero .fence-photo>img{height:350px;aspect-ratio:auto}.page-hero .eyebrow{font-size:0.8125rem}.material-feature{background:#e5ebd9;min-height:420px;padding:35px 42px}.feature-type{font-size:3.1875rem;line-height:1.08;letter-spacing:-.05em;font-weight:500;color:var(--forest)}.feature-type span{color:#53704b}.material-feature>p:last-child{font-size:0.8125rem;margin-top:26px;color:#445440}.material-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-bottom:1px solid var(--line);padding:30px 0;gap:35px}.material-facts>div{border-left:1px solid var(--line);padding-left:30px}.material-facts>div:first-child{border:0;padding-left:0}.material-facts dt{font-size:0.8125rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:7px}.material-facts dd{margin:0;font-size:0.9375rem;font-weight:500;line-height:1.7}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.info-grid>article{border-top:1px solid #bac9bc;padding:23px 0 0}.info-grid>article:only-child{grid-column:1/-1}.info-grid>article:first-child:nth-last-child(2),.info-grid>article:first-child:nth-last-child(2)~article{grid-column:span 1}.info-grid:has(>article:first-child:nth-last-child(2)){grid-template-columns:1fr 1fr}.item-index{font-size:0.8125rem;font-weight:500;color:var(--green);display:block;margin-bottom:25px}.info-grid h3{font-size:1.4375rem;margin-bottom:16px}.info-grid p{font-size:0.9375rem}.planning-band{background:var(--surface);padding:64px 0}.planning-band .wrap{display:grid;grid-template-columns:1fr 1fr;column-gap:100px;align-items:start}.planning-band .eyebrow{grid-column:1;grid-row:1;margin-bottom:12px}.planning-band h2{grid-column:1;grid-row:2;font-size:2.3125rem}.planning-band p:not(.eyebrow){grid-column:2;grid-row:1 / 3;max-width:540px;font-size:1rem}.planning-band .text-link{grid-column:2;grid-row:3;margin-top:10px}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.related-card{border:1px solid var(--line);padding:27px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:1.0625rem;font-weight:500;min-height:100px}.related-card:hover{background:var(--cream)}.related-card span{font-size:1.5625rem}.related-grid:has(>a:first-child:nth-last-child(2)){grid-template-columns:1fr 1fr}.service-steps{list-style:none;padding:0;margin:0}.service-steps li{display:grid;grid-template-columns:120px 1fr;gap:35px;border-top:1px solid var(--line);padding:35px 0}.service-steps li:last-child{border-bottom:1px solid var(--line)}.service-steps li>span{font-size:2.5rem;line-height:1;color:#6b826a;font-weight:400;letter-spacing:-.05em}.service-steps li>div{display:grid;grid-template-columns:1fr 1.2fr;gap:45px}.service-steps li p{font-size:1rem}.service-steps h3{font-size:1.5625rem}.reading-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px}.reading-columns p{font-size:1.0625rem;line-height:1.9}.reading-columns p+p{margin-top:0}.family-brand{background:#e8eddf;border-radius:var(--radius);min-height:395px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:34px}.family-brand img{width:min(100%,270px);height:auto}.family-brand p{font-size:0.9375rem;font-weight:500;color:var(--forest);margin-top:15px}.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-cards article{background:var(--cream);padding:36px}.contact-cards h3{font-size:1.625rem;margin-bottom:14px}.contact-cards p:not(.eyebrow){font-size:0.9375rem;margin-bottom:20px}.contact-cards a{display:block;overflow-wrap:anywhere;font-size:0.9375rem;line-height:1.8;margin:5px 0}.contact-cards a:hover{text-decoration:underline}.contact-cards .text-link{display:inline-flex;padding-bottom:0}.community-groups ul{font-size:0.9375rem;line-height:1.9;margin:0;padding-left:18px}.community-groups li{padding-bottom:8px}.community-groups article{padding-top:25px}.google-review-panel{background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:45px;padding:56px}.google-review-panel p:not(.eyebrow){margin-top:22px;max-width:600px;font-size:1rem}.google-review-panel .button{flex-shrink:0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px}.review-grid figure{margin:0;padding:28px 0;border:0;border-top:1px solid #bac8bc;display:flex;flex-direction:column;align-items:flex-start}.review-grid blockquote{font-size:1.25rem;line-height:1.65;letter-spacing:-.025em;margin:16px 0 25px;flex:1}.review-grid figcaption{font-size:.9375rem;line-height:1.8}.review-grid figcaption a{display:block;text-decoration:underline;text-underline-offset:4px}.review-stars{color:#52672f;letter-spacing:.16em}.commercial-contact{display:flex;align-items:center;justify-content:space-between;gap:65px}.commercial-contact p{max-width:580px;margin:18px 0;font-size:1rem}.commercial-contact>div:last-child{flex-shrink:0}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.area-grid article{border-top:1px solid var(--line);padding-top:25px}.area-grid h3{margin-bottom:25px}.area-grid ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;gap:0 35px}.area-grid li{border-top:1px solid var(--line);padding:14px 0;font-size:0.9375rem}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}table{border-collapse:collapse;width:100%;background:white;text-align:left;min-width:700px;font-size:0.9375rem}caption{font-size:0.8125rem;padding:18px 23px;text-align:left;color:var(--muted);background:var(--white);border-bottom:1px solid var(--line)}th,td{padding:25px 23px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:var(--surface);font-size:0.8125rem}tbody tr:last-child>*{border-bottom:0}tbody td{color:var(--muted)}tbody th{font-weight:600}td .text-link{min-height:0;padding:0;gap:20px;color:var(--ink)} .planning-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.planning-layout>div:first-child>p:not(.eyebrow){margin-top:22px;max-width:380px}.planning-checklist{border:1px solid var(--line);border-radius:var(--radius);padding:30px}.checklist-top{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:10px}.checklist-top h3{font-size:1.25rem}.checklist-top>span{font-size:0.8125rem;white-space:nowrap;color:var(--green)}.checklist-hint{font-size:0.9375rem;margin-bottom:24px}.planning-check{display:flex;gap:18px;padding:19px 0;border-top:1px solid var(--line);cursor:pointer}.planning-check input{width:19px;height:19px;flex-shrink:0;margin:3px 0 0;accent-color:var(--forest)}.planning-check strong{display:block;font-weight:500;font-size:0.9375rem;margin-bottom:3px}.planning-check>span>span{font-size:0.8125rem;line-height:1.7;color:var(--muted);display:block}.estimate-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:95px;align-items:start}.estimate-section{padding-top:65px}.estimate-panel h2{font-size:2.125rem;margin-bottom:30px}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:0.9375rem;font-weight:500}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:49px;border:1px solid #a7b5aa;border-radius:4px;background:#fff;color:var(--ink);padding:12px 13px;font-size:1rem;line-height:1.5}.field textarea{resize:vertical;min-height:126px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--green)}.full{grid-column:1/-1}.consent{display:flex;align-items:flex-start;gap:12px;font-size:0.8125rem;color:var(--muted);line-height:1.8;cursor:pointer}.consent input{width:17px;height:17px;margin:3px 0 0;accent-color:var(--forest);flex-shrink:0}.consent a{text-decoration:underline}.form-help{font-size:0.8125rem;line-height:1.8;margin:0}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;opacity:0}.preview-form-note{font-size:0.8125rem;line-height:1.7;border-left:2px solid #6e895a;background:var(--cream);padding:12px 14px;margin-bottom:24px}.form-status{padding:18px 20px;background:var(--surface);border:1px solid #8da580;border-radius:4px;margin-bottom:24px;font-size:0.9375rem}.form-status.error{background:#fff2ec;border-color:#b47655}.quote-form button:disabled{opacity:.65;cursor:wait}.estimate-sidebar{background:var(--cream);padding:33px}.estimate-sidebar h2{font-size:1.75rem}.estimate-sidebar .contact-cards{grid-template-columns:1fr;gap:0}.estimate-sidebar .contact-cards article{padding:28px 0;border-bottom:1px solid var(--line);background:transparent}.estimate-sidebar .contact-cards h3{font-size:1.25rem;margin-bottom:7px}.estimate-sidebar .contact-cards .eyebrow{margin-bottom:9px;font-size:0.8125rem}.estimate-sidebar .contact-cards p:not(.eyebrow){margin-bottom:10px;font-size:0.8125rem}.estimate-sidebar .contact-cards .text-link{font-size:0.8125rem;gap:12px}.estimate-sidebar .next-step{padding:25px 0}.next-step h3{font-size:1.125rem;margin-bottom:12px}.next-step p{font-size:0.9375rem}.estimate-sidebar>.small-print{font-size:0.8125rem} .inspiration-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 28px}.inspiration-item:first-child{grid-column:1/-1}.inspiration-item figure{position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line)}.inspiration-item figure img{width:100%;height:330px;object-fit:cover}.inspiration-item:first-child figure img{height:520px;object-position:center 46%}.inspiration-item figcaption{padding:23px 25px;background:var(--cream);display:flex;flex-direction:column;gap:8px}.inspiration-item figcaption>span{font-size:0.8125rem;text-transform:uppercase;letter-spacing:.075em;color:var(--muted)}.inspiration-item figcaption>strong{font-size:1.1875rem;font-weight:500;line-height:1.5}.inspiration-item figcaption>b{font-size:0.8125rem;font-weight:500;margin-top:7px;color:var(--green)}.inspiration-item>.text-link{margin-top:8px}.gallery-modal{border:0;border-radius:5px;padding:18px;background:white;color:var(--ink);max-width:min(95vw,1150px);max-height:92vh}.gallery-modal::backdrop{background:#12261ddd}.gallery-modal button{display:block;margin-left:auto;margin-bottom:15px;border:1px solid var(--line);background:white;border-radius:3px;min-height:42px;padding:8px 16px;font-size:0.9375rem}.gallery-modal img{max-height:70vh;width:100%;object-fit:contain}.gallery-modal p{margin-top:14px;font-size:0.9375rem}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.resource-grid>a{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--cream);padding:32px;min-height:310px}.resource-grid h2{font-size:1.8125rem;margin-bottom:20px}.resource-grid p{font-size:0.9375rem;margin-bottom:26px}.resource-grid .text-link{margin-top:auto;justify-content:space-between}.resource-grid>a:hover{background:var(--surface)}.legal-copy{max-width:800px}.legal-copy h2{font-size:1.75rem;margin:35px 0 17px}.legal-copy h2:first-child{margin-top:0}.legal-copy p{font-size:1rem}.legal-copy a{text-decoration:underline}.legal-copy .privacy-copy{max-width:100%}.article-body{max-width:860px;overflow-wrap:anywhere}.article-body h1{margin-bottom:28px}.article-body h2{font-size:2.125rem;margin:40px 0 18px}.article-body h3{margin:30px 0 15px}.article-body p{margin:18px 0}.article-body a{text-decoration:underline}.article-body img{height:auto}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.blog-card{border-top:1px solid var(--line);padding-top:20px}.blog-card h2{font-size:1.5rem;margin:14px 0}.blog-card p{font-size:0.9375rem}.blog-card img{aspect-ratio:1.5;width:100%;object-fit:cover}.post-date{font-size:0.8125rem!important;text-transform:uppercase;letter-spacing:.08em;margin-top:20px}.journal-posts>div>h2{margin-bottom:40px}.navigation.pagination{margin-top:35px}.page-numbers{padding:8px 12px}.page-numbers.current{background:var(--surface)}.story{max-width:800px}.story p{margin-top:22px}.text-hero{padding:72px 0;background:var(--cream)}.text-hero .lead{margin-top:25px} .closing{background:#e8eddc;padding:76px 0}.closing-grid{display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center}.closing h2{font-size:3.4375rem;letter-spacing:-.055em}.closing p:not(.eyebrow):not(.small-print){font-size:1rem;max-width:455px;margin-top:23px}.closing .eyebrow{margin-bottom:17px}.closing-grid>div:last-child{min-width:260px}.closing-grid .button{width:100%}.closing-phone{display:block;text-align:center;font-size:0.9375rem;padding:18px 0 6px}.closing-grid .small-print{text-align:center;font-size:0.8125rem;margin-top:3px}.site-footer{background:var(--cream);padding:70px 0 0;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.25fr .8fr 1fr 1.1fr;gap:38px;padding-bottom:55px}.footer-brand{display:block;margin:0 0 19px}.footer-brand img{width:188px;height:47px;object-fit:contain}.footer-grid>div>p{font-size:0.8125rem;line-height:1.9;max-width:255px;margin-top:18px}.footer-grid h2{font-size:0.8125rem;letter-spacing:.015em;line-height:1.5;margin:10px 0 20px;font-weight:600}.footer-grid ul{list-style:none;padding:0;margin:0}.footer-grid li{margin-bottom:5px}.footer-grid li a{font-size:0.8125rem;line-height:1.8;display:inline-block;padding:5px 0;overflow-wrap:anywhere}.footer-grid a:hover{text-decoration:underline}.footer-bottom{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:0.8125rem;color:var(--muted)}.footer-bottom>a{padding:5px}.footer-bottom>span:last-child{color:var(--ink)} @media(min-width:1500px){.home-hero{padding-top:76px}.home-hero-grid{gap:75px}.hero-visual .fence-photo img{min-height:495px}} @media(max-width:1190px){.wrap{width:calc(100% - 64px)}.header-inner{gap:23px}.brand img{width:172px;height:43px}.main-nav{gap:19px}.main-nav>a,.nav-group>summary{font-size:0.8125rem}.header-cta{font-size:0.8125rem;padding:12px}.home-hero-grid,.page-hero-grid{gap:38px}.home-hero h1{font-size:4.0625rem}.home-hero .lead{font-size:1rem}.hero-visual .fence-photo img{min-height:440px}.business-strip>div{flex-direction:column;gap:2px}.process-grid,.owner-grid,.faq-grid,.planning-layout{gap:60px}.material-card-copy{padding:24px 21px}.material-card h3{font-size:1.4375rem}.material-card .fence-photo,.pvc-panel{height:218px;min-height:218px}.pvc-panel strong{font-size:1.9375rem}.owner-statement{padding:35px}.estimate-layout{gap:50px}.footer-grid{gap:26px;grid-template-columns:1.05fr .85fr 1fr 1.1fr}.service-steps li{grid-template-columns:75px 1fr}.page-hero h1{font-size:3.25rem}.page-hero .lead{font-size:1rem}.material-feature{padding:33px;min-height:385px}.feature-type{font-size:2.8125rem}.google-review-panel{padding:42px}} @media(max-width:980px){.header-inner{height:82px;gap:20px}.menu-toggle{display:block;order:3;border:1px solid var(--line);border-radius:4px;background:transparent;min-width:78px;min-height:44px;font-size:0.9375rem;font-weight:500;padding:10px}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:16px 32px 25px;border-bottom:1px solid var(--line);max-height:calc(100dvh - 130px);overflow-y:auto}.main-nav.is-open{display:block}.main-nav>a,.nav-group>summary{font-size:1rem;padding:15px 0;display:flex;border-bottom:1px solid var(--line);justify-content:space-between}.nav-dropdown{position:static;box-shadow:none;background:var(--white);border:0;border-radius:0;padding:8px 15px}.nav-dropdown a{font-size:0.9375rem;padding:12px 0}.header-cta{margin-left:auto}.brand{margin-right:0}.home-hero h1{font-size:3.4375rem}.home-hero-grid{gap:28px}.home-hero .eyebrow{font-size:0.8125rem}.home-hero .actions{gap:12px}.home-hero .actions .button{font-size:0.8125rem;padding-inline:15px}.home-hero .actions .text-link{font-size:0.8125rem;gap:10px}.hero-visual .fence-photo img{min-height:400px}.hero-signoff{font-size:0.8125rem}.fence-photo figcaption{padding:14px;font-size:0.8125rem}.fence-photo figcaption>span{display:none}.material-grid{gap:17px}.material-card-copy{padding:21px 17px}.material-card h3{font-size:1.375rem}.material-card-copy>p:not(.material-benefit){font-size:0.9375rem}.material-benefit{font-size:0.8125rem}.material-card .text-link{font-size:0.8125rem;gap:12px}.material-card .fence-photo,.pvc-panel{height:200px;min-height:200px}.pvc-panel{padding:21px}.pvc-panel strong{font-size:1.6875rem}.pvc-panel>span{font-size:0.8125rem}.section{padding:80px 0}.section-head{gap:30px}.section-head>p{font-size:0.9375rem;flex-basis:290px}.process-grid,.owner-grid,.faq-grid,.planning-layout{gap:40px}.process-list li{gap:15px}.process-list h3{font-size:1.1875rem}.process-list p{font-size:0.9375rem}.owner-statement{padding:26px;min-height:380px}.brand-statement{font-size:2.75rem}.owner-copy>p:not(.eyebrow){font-size:0.9375rem}.commercial-banner h2{font-size:2.1875rem}.commercial-banner .button{font-size:0.8125rem}.page-hero h1{font-size:2.8125rem}.page-hero-grid{gap:30px}.page-hero .fence-photo>img{height:355px}.info-grid{gap:25px}.info-grid h3{font-size:1.3125rem}.planning-band .wrap{gap:0 40px}.service-steps li>div{grid-template-columns:1fr;gap:15px}.reading-columns{gap:40px}.reading-columns p{font-size:1rem}.google-review-panel{align-items:flex-start;flex-direction:column;gap:28px}.commercial-contact{gap:35px}.commercial-contact>div:last-child{flex-shrink:1}.estimate-layout{grid-template-columns:1.2fr .8fr;gap:30px}.estimate-sidebar{padding:24px}.estimate-panel h2{font-size:1.875rem}.contact-cards article{padding:28px}.contact-cards h3{font-size:1.4375rem}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 60px}.footer-grid>div>p{max-width:310px}.footer-grid li a{font-size:0.9375rem}.footer-grid h2{font-size:0.9375rem}.resource-grid{gap:18px}.resource-grid>a{padding:25px}.resource-grid h2{font-size:1.5625rem}.closing h2{font-size:3rem}} @media(max-width:760px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}.topline .wrap{min-height:29px;font-size:0.8125rem;letter-spacing:0}.header-inner{height:74px;gap:12px}.brand img{width:158px;height:40px}.header-cta{min-height:40px;font-size:0.8125rem;padding:10px 12px;gap:8px}.header-cta span{font-size:1rem}.menu-toggle{min-width:66px;min-height:40px;font-size:0.8125rem;padding:9px}.main-nav{padding:12px 20px 22px}.home-hero{padding:40px 0 0}.home-hero-grid{grid-template-columns:1fr;gap:32px}.home-hero h1{font-size:clamp(3.0625rem,10vw,4.3125rem);line-height:1.02;max-width:640px}.home-hero h1 br:nth-of-type(2){display:none}.home-hero h1 span:before{content:" "}.home-hero .eyebrow{font-size:0.8125rem;letter-spacing:.03em;margin-bottom:22px}.home-hero .lead{font-size:1rem;max-width:560px}.home-hero .actions{gap:25px;margin-top:25px}.home-hero .actions .button{font-size:0.9375rem;padding:14px 18px}.home-hero .actions .text-link{font-size:0.9375rem}.hero-note{font-size:0.8125rem;margin-top:19px!important}.hero-visual .fence-photo img{height:auto;min-height:0;aspect-ratio:1.45;flex:initial}.hero-visual .fence-photo{flex:initial}.hero-signoff{font-size:0.8125rem;padding-top:10px}.fence-photo figcaption{font-size:0.8125rem}.fence-photo figcaption>span{display:inline}.business-strip{margin-top:27px;padding:22px 0;gap:20px;grid-template-columns:1fr 1fr 1fr}.business-strip>div{padding:0;border:0;gap:5px}.business-strip strong{font-size:0.8125rem}.business-strip span{font-size:0.8125rem}.section{padding:64px 0}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:20px;max-width:550px;font-size:1rem}.eyebrow{font-size:0.8125rem;margin-bottom:15px}h2{font-size:2.1875rem}.material-grid{grid-template-columns:1fr;gap:25px}.material-card .fence-photo{height:255px}.material-card-copy{padding:24px}.material-card h3{font-size:1.6875rem}.material-benefit{font-size:0.9375rem}.material-card-copy>p:not(.material-benefit){font-size:0.9375rem}.material-card .text-link{font-size:0.9375rem}.pvc-panel{min-height:245px;height:auto;padding:26px}.pvc-panel strong{font-size:2.25rem}.pvc-panel>span{font-size:0.8125rem}.gate-band{display:block;padding:28px 0}.gate-band .text-link{margin-top:12px}.gate-band h3{font-size:1.5rem}.process-grid,.owner-grid,.faq-grid,.planning-layout{grid-template-columns:1fr;gap:36px}.process-grid .lead{max-width:580px;font-size:1rem}.process-list h3{font-size:1.3125rem}.process-list p{font-size:0.9375rem}.process-list li{grid-template-columns:26px 1fr;padding:24px 0;gap:18px}.owner-statement{min-height:365px;padding:32px}.brand-statement{font-size:3.4375rem;margin-bottom:30px}.owner-copy>p:not(.eyebrow){font-size:1rem}.commercial-banner{padding:53px 0}.commercial-banner .wrap{display:block}.commercial-banner h2{font-size:2.1875rem}.commercial-banner .button{margin-top:28px;font-size:0.9375rem}.faq-list summary{font-size:0.9375rem;padding:22px 0}.faq-list details>div{font-size:0.9375rem;padding-right:18px}.page-hero{padding:19px 0 42px}.crumb{font-size:0.8125rem;margin-bottom:35px;gap:9px}.page-hero-grid{grid-template-columns:1fr;gap:30px}.page-hero h1{font-size:clamp(2.375rem,7.4vw,3.4375rem)}.page-hero .lead{font-size:1rem}.page-hero .actions{gap:18px;margin-top:25px}.page-hero .fence-photo{min-height:0}.page-hero .fence-photo>img{height:auto;aspect-ratio:1.42}.material-feature{min-height:370px}.feature-type{font-size:3rem}.material-facts{grid-template-columns:1fr;padding:25px 0;gap:15px}.material-facts>div,.material-facts>div:first-child{padding:0 0 14px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:80px 1fr;gap:15px}.material-facts>div:last-child{border-bottom:0;padding-bottom:0}.material-facts dt{margin:3px 0 0;font-size:0.8125rem}.material-facts dd{font-size:0.9375rem}.info-grid,.info-grid:has(>article:first-child:nth-last-child(2)){grid-template-columns:1fr;gap:30px}.item-index{margin-bottom:19px}.info-grid h3{font-size:1.5rem;margin-bottom:13px}.info-grid p{font-size:1rem}.planning-band{padding:48px 0}.planning-band .wrap{display:block}.planning-band h2{font-size:1.9375rem;margin-bottom:22px}.planning-band p:not(.eyebrow){font-size:1rem}.related-grid,.related-grid:has(>a:first-child:nth-last-child(2)){grid-template-columns:1fr;gap:12px}.related-card{min-height:78px;font-size:1.0625rem;padding:21px}.service-steps li{grid-template-columns:40px 1fr;gap:22px;padding:28px 0}.service-steps li>span{font-size:1.8125rem}.service-steps h3{font-size:1.4375rem}.service-steps li p{font-size:0.9375rem}.reading-columns{grid-template-columns:1fr;gap:23px}.reading-columns p{font-size:1rem}.family-brand{min-height:340px}.family-brand img{width:245px}.contact-cards{grid-template-columns:1fr;gap:20px}.contact-cards article{padding:28px}.contact-cards h3{font-size:1.5rem}.community-groups ul{font-size:0.9375rem}.google-review-panel{padding:31px 25px}.google-review-panel h2{font-size:2rem}.google-review-panel .button{font-size:0.9375rem;padding-inline:15px;gap:15px}.review-grid{grid-template-columns:1fr}.commercial-contact{display:block}.commercial-contact>div:last-child{margin-top:25px}.area-grid{grid-template-columns:1fr;gap:35px}.area-grid h3{font-size:1.4375rem}.area-grid ul{gap:0 22px}.area-grid li{font-size:0.9375rem}.planning-layout>div:first-child>p:not(.eyebrow){max-width:100%}.planning-checklist{padding:23px 20px}.checklist-top{display:block}.checklist-top>span{display:block;margin-top:10px}.checklist-hint{font-size:0.8125rem}.estimate-layout{grid-template-columns:1fr;gap:40px}.estimate-panel h2{font-size:1.9375rem}.estimate-sidebar{padding:28px}.estimate-sidebar h2{font-size:1.8125rem}.estimate-sidebar .contact-cards article{padding:25px 0}.inspiration-grid{grid-template-columns:1fr;gap:28px}.inspiration-item:first-child{grid-column:auto}.inspiration-item:first-child figure img,.inspiration-item figure img{height:300px}.inspiration-item figcaption{padding:21px}.inspiration-item figcaption>strong{font-size:1.125rem}.resource-grid,.blog-grid{grid-template-columns:1fr}.resource-grid>a{min-height:260px;padding:30px}.resource-grid h2{font-size:1.875rem}.legal-copy h2{font-size:1.625rem}.closing{padding:58px 0}.closing-grid{grid-template-columns:1fr;gap:32px}.closing h2{font-size:2.9375rem}.closing-grid>div:last-child{max-width:340px;min-width:0}.closing-grid .button{font-size:0.9375rem}.site-footer{padding-top:45px;padding-bottom:64px}.footer-grid{gap:30px 24px;grid-template-columns:1fr 1fr;padding-bottom:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div>p{max-width:400px}.footer-grid h2{font-size:0.8125rem;margin-bottom:13px}.footer-grid li a{font-size:0.8125rem;padding:7px 0}.footer-brand img{width:182px;height:46px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:8px 22px;font-size:0.8125rem;padding:20px 0}.footer-bottom>span:first-child{width:100%}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:45;display:grid;grid-template-columns:1fr 1.2fr;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);background:var(--forest);min-height:55px}.mobile-contact a{display:flex;align-items:center;justify-content:center;font-size:0.8125rem;padding:17px 9px;line-height:1.4;color:white}.mobile-contact a:first-child{background:var(--cream);color:var(--ink)}.text-hero{padding:45px 0}.article-body h1{font-size:2.4375rem}} @media(max-width:390px){.wrap{width:calc(100% - 32px)}.brand img{width:142px}.header-inner{gap:9px}.header-cta{font-size:0.8125rem;padding:10px}.header-cta span{display:none}.menu-toggle{min-width:59px}.topline .wrap>span{font-size:0.8125rem}.home-hero h1{font-size:3rem}.home-hero .eyebrow{font-size:0.8125rem}.home-hero .actions{gap:17px}.home-hero .actions .button{font-size:0.8125rem;padding:13px 14px;gap:17px}.home-hero .actions .text-link{font-size:0.8125rem;gap:10px}.business-strip{gap:12px}.business-strip strong,.business-strip span{font-size:0.8125rem}.quote-form{grid-template-columns:1fr}.quote-form .field{grid-column:1/-1}.hero-signoff{font-size:0.8125rem}.fence-photo figcaption{font-size:0.8125rem}} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}} @media(max-width:760px){.header-cta{display:none}.menu-toggle{margin-left:auto;min-width:82px;min-height:44px}.topline .wrap{padding-block:6px;gap:12px;line-height:1.4}.topline .wrap>span{max-width:58%}.topline a{white-space:nowrap}.hero-signoff{gap:24px;line-height:1.5}.hero-signoff>span{flex:1}.business-strip{grid-template-columns:1fr;gap:15px;padding:24px 0}.business-strip>div{display:grid;grid-template-columns:112px 1fr;gap:15px;align-items:start}.business-strip strong,.business-strip span{font-size:0.8125rem;white-space:normal}.fence-photo figcaption{display:block;line-height:1.5}.fence-photo figcaption>span{display:block;margin-top:5px}.mobile-contact a{font-size:0.875rem}.site-footer{padding-bottom:80px}} @media print{.topline,.site-header,.site-footer,.mobile-contact,.closing,.skip-link,.preview-form-note{display:none}.wrap{width:100%}.section,.page-hero{padding:25px 0}body{font-size:11pt;background:white}.page-hero h1{font-size:30pt}.faq-list details>div{display:block}a{text-decoration:underline}.fence-photo img{max-height:280px}.planning-checklist{break-inside:avoid}} .photo-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:610px;min-height:clamp(560px,70svh,760px);padding:80px 0 85px;background:var(--forest);color:white} .photo-hero>.fence-photo{position:absolute;inset:0;z-index:-2;border-radius:0;background:var(--forest)} .photo-hero>.fence-photo>img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:63% 49%} .photo-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,28,22,.88) 0%,rgba(10,28,22,.76) 36%,rgba(10,28,22,.18) 72%,rgba(10,28,22,.10) 100%)} .photo-hero .hero-copy{max-width:680px} .photo-hero .eyebrow{color:#f2f2e7;letter-spacing:.085em;margin-bottom:27px} .photo-hero h1{font-size:clamp(3rem,5.05vw,4.75rem);font-weight:500;line-height:1.06;letter-spacing:-.052em;margin-bottom:28px;text-wrap:initial} .photo-hero .lead{color:#f5f6ef;font-size:1.0625rem;line-height:1.85;max-width:490px} .photo-hero .actions{margin-top:31px;gap:25px} .photo-hero .button.solid{background:var(--cream);color:var(--ink);border-color:var(--cream)} .photo-hero .button.solid:hover{background:white} .photo-hero .text-link,.photo-hero .text-link:hover{color:white} .photo-hero .text-link:hover{text-decoration:underline;text-underline-offset:5px} .photo-hero :focus-visible{outline-color:#f1e4af} .photo-hero .hero-note{color:#f1f3eb;font-size:.875rem;letter-spacing:0;margin-top:29px!important} .home-facts{background:var(--cream);border-bottom:1px solid var(--line)} .home-facts .business-strip{margin-top:0;border-top:0;padding-block:29px} .scenic-photo{position:relative;margin:0;min-width:0;border-radius:var(--radius);overflow:hidden;background:var(--surface)} .scenic-photo>img{width:100%;height:100%;aspect-ratio:1.03;object-fit:cover} .scenic-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 24px 20px;background:linear-gradient(transparent,rgba(10,28,22,.78));font-size:.8125rem;color:white;line-height:1.5} .local-story{background:var(--cream)} .local-story-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center} .local-story-grid .scenic-photo{align-self:stretch;min-height:490px} .local-story-grid .scenic-photo>img{min-height:100%;position:absolute;inset:0;aspect-ratio:auto} .local-story-grid .owner-copy{padding:24px 0} .local-story-grid h2{margin-bottom:27px} .local-story-grid .owner-copy>p:not(.eyebrow):not(.source-note):not(.story-signature){font-size:1.0625rem;line-height:1.9} .story-links{display:flex;align-items:flex-start;flex-direction:column;margin-top:18px;gap:1px} .story-links .text-link{gap:18px} .story-signature{border-top:1px solid #c7d1c4;padding-top:21px;margin-top:25px!important;color:var(--forest);font-weight:500;font-size:1.125rem;letter-spacing:-.02em} .page-hero .scenic-photo{height:460px} .page-hero .scenic-photo>img{aspect-ratio:auto} .owner-bios{display:grid;grid-template-columns:1fr 1fr;gap:75px} .owner-bios article{border-top:1px solid var(--line);padding-top:30px} .owner-bios h3{font-size:2rem;margin-bottom:23px} .owner-bios .eyebrow{margin-bottom:17px} .owner-bios p:not(.eyebrow){font-size:1.0625rem;line-height:1.85} .owner-bios .text-link{margin-top:18px} .source-note{font-size:.875rem;line-height:1.75;margin-top:27px!important;color:var(--muted)} .source-note a,.photo-credits a{text-decoration:underline;text-underline-offset:3px} .vinyl-photo>img,.material-card .vinyl-photo>img{object-position:50% 18%} .home-reviews{background:var(--cream);padding:80px 0} .home-reviews .google-review-panel{max-width:none;margin:0;display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center;background:transparent;border:0;padding:0} .home-reviews .google-review-panel h2{font-size:clamp(2rem,3.1vw,2.875rem)} .home-reviews .google-review-panel p:not(.eyebrow){max-width:520px;font-size:1rem} .home-reviews .google-review-panel>.button{justify-self:end;margin:0} .home-reviews .review-grid{margin-top:42px} .footer-brand img{mix-blend-mode:multiply} .photo-credits{max-width:880px;padding-bottom:18px;font-size:.8125rem;color:var(--muted)} .photo-credits summary{min-height:44px;display:list-item;padding:10px 0;cursor:pointer;width:fit-content} .photo-credits p{font-size:.8125rem;line-height:1.8;padding-bottom:12px} @media(max-width:1100px){.photo-hero .hero-copy{max-width:600px}.local-story-grid{gap:45px}.local-story-grid .scenic-photo{min-height:470px}.owner-bios{gap:45px}.home-reviews .google-review-panel{gap:35px}} @media(max-width:760px){ .photo-hero{padding:56px 0 48px;min-height:560px;align-items:center} .photo-hero>.fence-photo>img{object-position:64% 48%} .photo-hero:after{background:linear-gradient(0deg,rgba(10,28,22,.89) 0%,rgba(10,28,22,.74) 60%,rgba(10,28,22,.34) 100%)} .photo-hero .hero-copy{max-width:590px} .photo-hero h1{font-size:clamp(2.4rem,8vw,3.65rem);line-height:1.09;letter-spacing:-.05em;margin-bottom:24px} .photo-hero .eyebrow{font-size:.8125rem;line-height:1.7;max-width:300px;margin-bottom:23px} .photo-hero .lead{font-size:1rem;line-height:1.85;max-width:480px} .photo-hero .actions{gap:9px 23px;margin-top:25px} .photo-hero .hero-note{font-size:.8125rem;line-height:1.8;margin-top:23px!important;max-width:300px} .home-facts .business-strip{padding-block:25px} .home-facts .business-strip>div{padding:0;border:0} .local-story-grid,.owner-bios{grid-template-columns:1fr;gap:35px} .local-story-grid .scenic-photo{min-height:0;aspect-ratio:1.12} .local-story-grid .owner-copy{padding:0} .local-story-grid .owner-copy>p:not(.eyebrow):not(.source-note):not(.story-signature){font-size:1rem} .local-story-grid h2{margin-bottom:22px} .page-hero .scenic-photo{height:330px} .scenic-photo figcaption{padding:42px 20px 17px} .owner-bios{gap:35px} .owner-bios h3{font-size:1.75rem} .owner-bios p:not(.eyebrow){font-size:1rem} .home-reviews{padding:55px 0} .home-reviews .google-review-panel{grid-template-columns:1fr;gap:24px} .home-reviews .google-review-panel>.button{justify-self:start} .photo-credits{padding-bottom:5px} } @media print{.photo-hero{min-height:0;padding:35px 0;background:white;color:var(--ink)}.photo-hero>.fence-photo,.photo-hero:after{display:none}.photo-hero .eyebrow,.photo-hero .lead,.photo-hero .hero-note,.photo-hero .text-link{color:var(--ink)}.photo-hero h1{font-size:30pt}.local-story-grid .scenic-photo{min-height:280px}.local-story-grid{gap:30px}} .photo-slot{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;min-width:0;margin:0;background:#e9eae2;border:1px solid #d4d9cd;border-radius:var(--radius);overflow:hidden} .photo-slot--portrait{aspect-ratio:4/5} .photo-slot-label{max-width:350px;padding:32px 25px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px} .photo-slot-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #a3b2a0;border-radius:50%;font-size:1.75rem;font-weight:400;line-height:1;color:#4b654f} .slot-status{font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;color:#53654f} .photo-slot-label strong{font-size:1.0625rem;font-weight:500;line-height:1.5;color:var(--ink)} .slot-brief{font-size:.875rem;line-height:1.7;color:#53604f} .photo-slot.is-filled{border:0;background:var(--surface)} .photo-slot.is-filled img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover} .page-hero .photo-slot{width:100%;min-height:380px} .owner-bios .photo-slot{max-width:380px;margin-bottom:29px} .local-story-grid>.photo-slot{align-self:stretch;aspect-ratio:auto;min-height:430px} .project-showcase{background:var(--cream)} .draft-note{font-size:.9375rem;line-height:1.8} .project-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px} .project-preview{min-width:0} .project-preview .photo-slot{aspect-ratio:1.35} .project-preview .photo-slot-label{padding:25px 20px;gap:10px} .project-preview .slot-brief{display:none} .project-preview>div{padding:25px 0 0} .project-preview h3{font-size:1.5rem;margin-bottom:12px} .project-preview .eyebrow{margin-bottom:13px} .project-preview p:not(.eyebrow){font-size:.9375rem} .project-preview .text-link{margin-top:12px} .project-stories{display:grid;gap:95px} .project-story{scroll-margin-top:120px} .story-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:30px} .story-heading .eyebrow{margin-bottom:14px} .draft-badge{border:1px solid var(--line);padding:9px 14px;font-size:.8125rem;line-height:1.5;color:var(--muted);white-space:nowrap;border-radius:3px} .before-after{display:grid;grid-template-columns:1fr 1fr;gap:22px} .image-label{font-size:.9375rem;font-weight:600;color:var(--ink);margin-bottom:12px} .project-story-detail{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;align-items:center;margin-top:35px} .project-story-detail>.photo-slot{aspect-ratio:1.55} .story-fields dl{margin:0} .story-fields dl>div{display:grid;grid-template-columns:1fr 1.25fr;gap:25px;padding:17px 0;border-top:1px solid var(--line);font-size:.9375rem} .story-fields dt{font-weight:500;color:var(--ink)} .story-fields dd{margin:0;color:var(--muted)} .fence-finder-section{background:var(--white)} .fence-finder{border:1px solid var(--line);background:#f8f9f3;padding:45px 48px;border-radius:var(--radius)} .fence-finder [hidden]{display:none!important} .finder-progress{font-size:.875rem;color:var(--green);letter-spacing:.025em;margin-bottom:22px;font-weight:500} .finder-form fieldset{border:0;padding:0;margin:0 0 30px;min-width:0} .finder-form legend{padding:0;margin-bottom:26px;font-weight:500;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.3;letter-spacing:-.035em;max-width:100%} .finder-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px} .finder-choice{position:relative;display:flex;gap:15px;align-items:flex-start;padding:23px 24px;background:white;border:1px solid #cbd3c6;border-radius:3px;cursor:pointer;line-height:1.6;min-height:103px} .finder-choice:hover{border-color:#56734f;background:#f3f6ed} .finder-choice:has(input:checked){border-color:var(--forest);background:#e5edda;box-shadow:inset 0 0 0 1px var(--forest)} .finder-choice:focus-within{outline:3px solid #36744e;outline-offset:3px} .finder-choice input{width:19px;height:19px;flex-shrink:0;margin:4px 0 0;accent-color:var(--forest)} .finder-choice strong{display:block;font-size:1.0625rem;font-weight:600;color:var(--ink);margin-bottom:5px} .finder-choice>span>span{display:block;font-size:.9375rem;color:var(--muted)} .finder-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:25px;padding-top:23px;border-top:1px solid var(--line)} .finder-back{margin-right:auto;min-height:46px;border:0;background:transparent;padding:10px 0;font-size:.9375rem;font-weight:500} .finder-error{color:#8d2923;background:#fff0e7;padding:12px 15px;margin:0 0 20px;font-size:.9375rem} .finder-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:30px} .finder-result-head h3{font-size:2.125rem;margin-bottom:14px} .finder-result-head .text-link{white-space:normal;text-align:left;border:0;background:transparent;flex-shrink:0} .finder-result-head .eyebrow{margin-bottom:12px} .finder-context{font-size:1rem;max-width:870px;margin-top:24px;line-height:1.85} .finder-matches{display:grid;grid-template-columns:1fr 1fr;gap:27px;margin-top:35px} .finder-match{min-width:0;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column} .finder-match .fence-photo{height:210px;flex-shrink:0;border-radius:0} .finder-match .fence-photo>img{height:100%;aspect-ratio:auto} .finder-match>div{padding:26px;display:flex;flex-direction:column;align-items:flex-start;flex:1} .finder-match h3{font-size:1.625rem;margin-bottom:18px} .finder-match .eyebrow{margin-bottom:12px} .finder-match p:not(.eyebrow){font-size:.9375rem;line-height:1.8} .finder-match .match-reason{color:var(--ink);border-top:1px solid var(--line);padding-top:16px;margin-top:20px} .finder-match .button{width:100%;margin-top:auto} .finder-match .text-link{margin:15px 0 20px} .finder-transfer-note{grid-column:1/-1;padding:17px 20px;background:#e6eddc;color:var(--forest);font-size:.9375rem;line-height:1.75} .estimate-guide{background:#e9ede1} .estimate-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start} .estimate-guide h2{margin-bottom:25px} .estimate-guide-grid>div>p:not(.eyebrow){font-size:1.0625rem;max-width:470px;line-height:1.9} .estimate-guide .text-link{margin-top:15px} .estimate-details{margin:0} .estimate-details>div{padding:21px 0;border-top:1px solid #bfccbb} .estimate-details>div:first-child{padding-top:0;border:0} .estimate-details dt{font-size:1.125rem;font-weight:600;margin-bottom:8px;letter-spacing:-.02em} .estimate-details dd{margin:0;font-size:1rem;line-height:1.8;color:var(--muted)} @media(max-width:1100px){.project-preview-grid{gap:20px}.project-preview .photo-slot{aspect-ratio:1.1}.project-story-detail{gap:38px}.fence-finder{padding:35px}.estimate-guide-grid{gap:50px}} @media(max-width:760px){ .project-preview-grid,.before-after,.project-story-detail,.finder-matches,.estimate-guide-grid{grid-template-columns:1fr;gap:28px} .project-preview .photo-slot{aspect-ratio:1.4} .project-preview>div{padding-top:21px} .project-preview .text-link{margin-top:8px} .project-preview-grid{gap:42px} .photo-slot-label{padding:26px 23px;gap:10px} .photo-slot-mark{width:38px;height:38px;font-size:1.5rem} .page-hero .photo-slot{min-height:0;aspect-ratio:4/3} .local-story-grid>.photo-slot{min-height:0;aspect-ratio:4/3} .owner-bios .photo-slot{max-width:350px} .story-heading{display:block;margin-bottom:26px} .draft-badge{display:inline-block;margin-top:19px;white-space:normal} .before-after{gap:22px} .project-story-detail{margin-top:27px} .project-story-detail>.photo-slot{aspect-ratio:1.35} .story-fields dl>div{grid-template-columns:1fr;gap:6px;font-size:.9375rem} .project-stories{gap:66px} .fence-finder{padding:26px 20px} .finder-form legend{font-size:1.625rem;margin-bottom:23px} .finder-choices{grid-template-columns:1fr;gap:12px} .finder-choice{padding:18px 17px;gap:13px;min-height:95px} .finder-choice strong{font-size:1rem} .finder-choice>span>span{font-size:.9375rem} .finder-actions{gap:15px} .finder-actions .button{padding:14px 17px;font-size:.9375rem} .finder-result-head{display:block} .finder-result-head h3{font-size:1.75rem} .finder-result-head .text-link{margin-top:16px} .finder-match>div{padding:23px} .finder-match .fence-photo{height:200px} .finder-matches{gap:24px} .estimate-guide-grid>div>p:not(.eyebrow){font-size:1rem} .estimate-guide-grid{gap:30px} } .journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 30px} .journal-card{min-width:0;display:flex;flex-direction:column;border-bottom:1px solid var(--line);padding-bottom:28px} .journal-card>a{display:block;overflow:hidden;border-radius:var(--radius)} .journal-card .fence-photo{margin:0;background:var(--surface)} .journal-card .fence-photo img{width:100%;height:auto;aspect-ratio:1.55;object-fit:cover;transition:transform .25s ease} .journal-card>a:hover img{transform:scale(1.025)} .journal-card>div{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding-top:25px} .journal-card .eyebrow{font-size:.8125rem;letter-spacing:.06em;margin:0 0 14px} .journal-card h2,.journal-card h3{font-size:1.5rem;letter-spacing:-.035em;line-height:1.3;text-wrap:pretty;margin-bottom:16px} .journal-card h2 a:hover,.journal-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px} .journal-card p:not(.eyebrow){font-size:1rem;line-height:1.75;margin-bottom:17px} .journal-card .text-link{margin-top:auto} .journal-teaser .wrap>.text-link{margin-top:32px} .guide-header{background:var(--cream);padding:30px 0 66px;border-bottom:1px solid var(--line)} .guide-header .crumb{flex-wrap:wrap} .guide-heading-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:64px;align-items:center} .guide-header h1{font-size:clamp(2.2rem,3.65vw,3.5rem);line-height:1.1;max-width:20ch;text-wrap:pretty} .guide-header .lead{margin-top:25px;font-size:1.0625rem} .guide-header .eyebrow{margin-bottom:20px} .guide-header .fence-photo img{aspect-ratio:1.25;object-fit:cover;width:100%;height:auto;border-radius:var(--radius)} .guide-header .fence-photo figcaption{font-size:.8125rem;line-height:1.5;gap:8px;flex-wrap:wrap} .guide-byline{font-size:.875rem;line-height:1.8;margin-top:25px;color:var(--muted)} .guide-layout{display:grid;grid-template-columns:260px minmax(0,750px);gap:clamp(48px,6vw,104px);justify-content:space-between;align-items:start;padding-block:70px 100px} .guide-toc{position:sticky;top:120px;border-top:2px solid var(--forest);padding-top:22px} .guide-toc .eyebrow{margin-bottom:12px} .guide-toc ol{list-style:none;padding:0;margin:0 0 18px} .guide-toc li{margin:0;border-bottom:1px solid var(--line)} .guide-toc li a{display:block;font-size:.9375rem;line-height:1.5;padding:13px 0} .guide-toc li a:hover{text-decoration:underline;text-underline-offset:4px} .guide-toc>.text-link{font-size:.875rem;gap:12px} .guide-copy{min-width:0;overflow-wrap:break-word} .guide-copy p,.guide-copy li{font-size:1.0625rem;line-height:1.9} .guide-copy p+p{margin-top:20px} .guide-copy li+li{margin-top:10px} .guide-copy ul,.guide-copy ol{margin-block:23px;padding-left:25px} .guide-copy h2{font-size:clamp(1.75rem,2.5vw,2.125rem);line-height:1.25;letter-spacing:-.035em;margin-bottom:23px;text-wrap:pretty} .guide-copy h3{font-size:1.25rem;line-height:1.4;letter-spacing:-.025em;margin:30px 0 12px} .guide-copy>section{margin-top:48px;padding-top:35px;border-top:1px solid var(--line);scroll-margin-top:120px} .guide-copy p a,.guide-copy li a{color:var(--forest);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px} .guide-copy p a:hover,.guide-copy li a:hover{text-decoration-thickness:2px} .guide-answer{background:#edf1e5;border-left:3px solid var(--green);padding:28px 32px;margin-bottom:30px} .guide-answer .eyebrow{font-size:.8125rem;line-height:1.5;margin:0 0 12px} .guide-answer p:last-child{color:var(--ink);margin:0} .guide-copy .guide-intro{font-size:1.125rem;line-height:1.85;color:var(--ink)} .guide-copy .table-scroll{margin:26px 0;max-width:100%;border:1px solid var(--line);border-radius:var(--radius)} .guide-copy table{min-width:560px;margin:0;font-size:.9375rem;line-height:1.7} .guide-copy caption{padding:18px 20px;font-size:.9375rem;color:var(--ink);font-weight:600;margin:0} .guide-copy th,.guide-copy td{padding:16px 20px;vertical-align:top} .guide-copy thead th{font-size:.8125rem;background:var(--cream)} .guide-copy tbody th{min-width:125px} .guide-copy tbody tr:last-child>*{border-bottom:0} .guide-contact{margin-top:58px;background:var(--forest);padding:35px;border-radius:var(--radius)} .guide-contact h2,.guide-contact p,.guide-contact .text-link{color:#fff} .guide-contact p{font-size:1rem;line-height:1.8} .guide-contact .button{background:#d0df98;color:var(--ink);margin-top:25px;max-width:100%} .guide-contact .button:hover{background:#e1eac2} .guide-contact .text-link{margin:12px 0 0 22px} .guide-contact .text-link:hover{color:#d0df98!important} .guide-related{background:var(--cream);border-top:1px solid var(--line);padding-block:68px} .guide-related>.wrap>h2{margin-bottom:30px} .related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px} .related-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))} .related-card{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 0;border-top:1px solid #a4b1a4;font-size:1.125rem;font-weight:500;line-height:1.6} .related-card span{font-size:1.5rem;line-height:1.15} .related-card:hover{border-color:var(--forest)} @media(max-width:1060px){.guide-heading-grid{gap:35px;grid-template-columns:1.3fr 1fr}.guide-layout{grid-template-columns:220px minmax(0,1fr);gap:40px}.journal-grid{gap:40px 22px}.journal-card h2,.journal-card h3{font-size:1.3125rem}.guide-contact .text-link{display:flex;margin-left:0}} @media(max-width:850px){.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-layout{grid-template-columns:1fr;gap:35px;padding-block:40px 65px;max-width:750px}.guide-toc{position:static;display:grid;grid-template-columns:1fr auto;gap:20px}.guide-toc>.text-link{align-self:start}.guide-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.guide-heading-grid{grid-template-columns:1fr}.guide-header h1{max-width:24ch}.guide-header .fence-photo img{aspect-ratio:2.2;max-height:350px}.guide-header .lead{max-width:650px}.guide-byline br{display:none}.guide-byline time{white-space:nowrap}.related-grid{gap:18px}.related-card{font-size:1rem;gap:15px}} @media(max-width:600px){.journal-grid{grid-template-columns:1fr;gap:36px}.journal-card h2,.journal-card h3{font-size:1.5rem}.guide-header{padding-bottom:36px}.guide-header h1{font-size:2.3rem;line-height:1.14}.guide-header .fence-photo img{aspect-ratio:1.55}.guide-byline br{display:block}.guide-toc{display:block}.guide-toc ol{display:block}.guide-toc>.text-link{margin-top:0}.guide-copy p,.guide-copy li{font-size:1rem;line-height:1.85}.guide-copy .guide-intro{font-size:1.0625rem}.guide-answer{padding:23px}.guide-copy>section{margin-top:36px;padding-top:28px}.guide-contact{padding:27px 23px}.guide-contact .button{width:100%}.guide-contact .text-link{margin-left:0}.guide-related{padding-block:48px}.related-grid,.related-grid.two-up{grid-template-columns:1fr;gap:0}.related-card{font-size:1.0625rem}.guide-header .eyebrow{font-size:.8125rem}.guide-header .crumb{font-size:.8125rem}} @media(prefers-reduced-motion:reduce){.journal-card .fence-photo img{transition:none}.journal-card>a:hover img{transform:none}} .page-hero-grid:not(:has(>figure)){grid-template-columns:1fr;max-width:860px} .local-story-grid:not(:has(>figure)){grid-template-columns:1fr;max-width:820px;margin-inline:auto} .local-story-grid:not(:has(>figure)) .owner-copy{padding:0} .home-reviews .review-grid{gap:40px} .home-reviews .review-stars{font-size:1rem} @media(max-width:760px){ .home-reviews .review-grid{gap:4px;margin-top:30px} .review-grid figure{padding:24px 0} .review-grid blockquote{font-size:1.2rem;margin-bottom:18px} }