@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:400;src:url(/fonts/manrope-400.ttf)format("truetype")}@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:500;src:url(/fonts/manrope-500.ttf)format("truetype")}@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:600;src:url(/fonts/manrope-600.ttf)format("truetype")}@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:700;src:url(/fonts/manrope-700.ttf)format("truetype")}@font-face{font-display:swap;font-family:Manrope;font-style:normal;font-weight:800;src:url(/fonts/manrope-800.ttf)format("truetype")}@font-face{font-display:swap;font-family:Barlow Condensed;font-style:normal;font-weight:500;src:url(/fonts/barlow-condensed-500.ttf)format("truetype")}@font-face{font-display:swap;font-family:Barlow Condensed;font-style:normal;font-weight:600;src:url(/fonts/barlow-condensed-600.ttf)format("truetype")}@font-face{font-display:swap;font-family:Barlow Condensed;font-style:normal;font-weight:700;src:url(/fonts/barlow-condensed-700.ttf)format("truetype")}:root{--brand-red:#b32224;--brand-red-dark:#8e1d1f;--ink:#151716;--ink-soft:#2f322f;--muted:#666a65;--stone:#efeee9;--ivory:#f7f6f2;--paper:#fffefa;--line:#d9d7cf;--line-dark:#3c3e3a;--white:#fff;--content:1340px;--header-height:88px;--font-body:"Manrope";--font-heading:"Barlow Condensed";--ease-out:cubic-bezier(.16, 1, .3, 1);--scroll-progress:0}*{box-sizing:border-box}.skip-link{background:var(--ink);color:var(--white);z-index:1000;padding:.75rem 1rem;font-size:.8rem;font-weight:800;transition:transform .16s;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}html{scroll-behavior:smooth}[id]{scroll-margin-top:calc(var(--header-height) + 1.5rem)}body{background:var(--ivory);color:var(--ink);font-family:var(--font-body), Arial, sans-serif;margin:0;overflow-x:hidden}.scroll-progress{background:var(--brand-red);pointer-events:none;height:3px;transform:scaleX(var(--scroll-progress));transform-origin:0;z-index:120;width:100%;position:fixed;top:0;left:0;right:0}body,button,input,select,textarea{font-family:var(--font-body), Arial, sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img{display:block}h1,h2,h3,p,figure,blockquote{margin-top:0}h1,h2,h3{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;text-wrap:balance;font-weight:600}h2{letter-spacing:-.025em;margin-bottom:0;font-size:clamp(3.25rem,5.6vw,5.8rem);line-height:.88}h3{letter-spacing:-.015em;font-size:clamp(1.65rem,2.5vw,2.1rem);line-height:.95}p{line-height:1.7}:focus-visible{outline:2px solid var(--brand-red);outline-offset:4px}.section-shell{max-width:var(--content);margin-inline:auto;padding-inline:clamp(1.4rem,4.2vw,4.5rem)}.eyebrow{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:1.5rem;font-size:.66rem;font-weight:800;line-height:1.3;display:flex}.eyebrow:before{background:var(--brand-red);content:"";transform-origin:0;width:24px;height:3px}.utility-bar{background:var(--ink);color:#dadbd6;letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;min-height:30px;padding-inline:clamp(1.4rem,4.2vw,4.5rem);font-size:.64rem;font-weight:600;display:flex}.utility-bar p{margin:0;line-height:1}.utility-bar a{color:var(--white);text-decoration:none}.site-header{border-bottom:1px solid var(--line);color:var(--ink);height:var(--header-height);transition:background-color .32s ease, box-shadow .32s ease, height .42s var(--ease-out);z-index:50;background:#fffefaf7;justify-content:space-between;align-items:center;padding:0 clamp(1.4rem,4.2vw,4.5rem);display:flex;position:sticky;top:0}.has-scrolled .site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffefaf0;height:74px;box-shadow:0 12px 34px #14161414}.brand{flex-shrink:0;align-items:center;gap:.8rem;text-decoration:none;display:flex}.brand img{object-fit:contain;height:59px;transition:height .42s var(--ease-out), width .42s var(--ease-out), transform .42s var(--ease-out);width:74px}.brand:hover img{transform:rotate(-3deg)scale(1.04)}.has-scrolled .brand img{width:60px;height:48px}.brand span{flex-direction:column;display:flex}.brand strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.015em;text-transform:uppercase;font-size:1.6rem;font-weight:700;line-height:.9}.brand small{color:var(--muted);letter-spacing:.19em;text-transform:uppercase;margin-top:.38rem;font-size:.57rem;font-weight:700}.site-nav{align-items:center;gap:clamp(1.1rem,2vw,2.25rem);display:flex}.site-nav>a:not(.button),.nav-dropdown-trigger{color:var(--ink-soft);cursor:pointer;letter-spacing:.09em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:.45rem;min-height:44px;padding:0;font-size:.71rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;position:relative}.site-nav>a:not(.button):after,.nav-dropdown-trigger:after{background:var(--brand-red);content:"";transform-origin:100%;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:3px;left:0;transform:scaleX(0)}.site-nav>a:not(.button):hover:after,.site-nav>a:not(.button):focus-visible:after,.nav-dropdown-trigger:hover:after,.nav-dropdown-trigger:focus-visible:after,.nav-dropdown-shell.is-open .nav-dropdown-trigger:after{transform-origin:0;transform:scaleX(1)}.site-nav>a:not(.button):focus-visible,.nav-dropdown-trigger:focus-visible{outline:none}.nav-dropdown-shell{position:relative}.nav-dropdown-menu{background:var(--paper);border:1px solid var(--line);opacity:0;pointer-events:none;transition:opacity .24s ease, transform .42s var(--ease-out), visibility .24s ease;visibility:hidden;z-index:90;width:min(620px,82vw);padding:1.8rem;position:absolute;top:calc(100% + .75rem);left:50%;transform:translate(-50%,-12px);box-shadow:0 28px 70px #13151329}.nav-dropdown-menu:after{content:"";height:.8rem;position:absolute;bottom:100%;left:0;right:0}.nav-dropdown-menu:before{background:var(--brand-red);content:"";height:3px;position:absolute;top:-1px;left:-1px;right:-1px}.nav-dropdown-shell.is-open .nav-dropdown-menu{opacity:1;pointer-events:auto;visibility:visible;transform:translate(-50%)}.nav-dropdown-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;margin-bottom:.8rem;padding-bottom:1.35rem;display:flex}.nav-dropdown-heading>span{color:var(--brand-red);letter-spacing:.18em;text-transform:uppercase;font-size:.6rem;font-weight:800}.nav-dropdown-heading strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:1.55rem;font-weight:600;line-height:.9}.nav-dropdown-list{grid-template-columns:1fr 1fr;display:grid}.nav-dropdown-list a{border-bottom:1px solid var(--line);min-height:58px;transition:background-color .24s ease, color .24s ease, padding .35s var(--ease-out);grid-template-columns:24px 1fr auto;align-items:center;gap:.75rem;padding:.2rem .8rem;text-decoration:none;display:grid;position:relative}.nav-dropdown-list a:nth-child(odd){border-right:1px solid var(--line);padding-left:0}.nav-dropdown-list a>span{color:var(--brand-red);letter-spacing:.1em;font-size:.56rem;font-weight:800}.nav-dropdown-list a strong{letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:750}.nav-dropdown-list a i{color:var(--brand-red);opacity:0;transition:opacity .24s ease, transform .35s var(--ease-out);font-size:.9rem;font-style:normal;transform:translate(-7px)}.nav-dropdown-list a:hover,.nav-dropdown-list a:focus-visible{background:var(--stone);padding-left:1rem}.nav-dropdown-list a:hover i,.nav-dropdown-list a:focus-visible i{opacity:1;transform:translate(0)}.nav-dropdown-footer{letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:1.2rem;font-size:.62rem;font-weight:800;text-decoration:none;display:flex}.nav-dropdown-footer span{color:var(--brand-red);transition:transform .28s var(--ease-out);font-size:1rem}.nav-dropdown-footer:hover span{transform:translate(6px)}.header-actions{align-items:center;gap:1.3rem;display:flex}.header-phone{letter-spacing:.08em;font-size:.72rem;font-weight:700;text-decoration:none}.button{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;border:2px solid #0000;justify-content:center;align-items:center;min-height:50px;padding:.1rem 1.45rem 0;font-size:.69rem;font-weight:700;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex;position:relative;overflow:hidden}.button:after{content:"";pointer-events:none;transition:transform .65s var(--ease-out);background:linear-gradient(100deg,#0000 10%,#ffffff61 50%,#0000 90%);position:absolute;inset:0;transform:translate(-145%)skew(-18deg)}.button:hover{transform:translateY(-2px)}.button:hover:after{transform:translate(145%)skew(-18deg)}.button-primary{background:var(--brand-red);border-color:var(--brand-red);color:var(--white)}.button-primary:hover{background:var(--brand-red-dark);border-color:var(--brand-red-dark)}.button-ghost{border-color:var(--line);color:var(--ink)}.button-ghost:hover{border-color:var(--ink)}.nav-cta,.site-nav>a.mobile-phone,.menu-toggle,.menu-backdrop{display:none}.hero{background:var(--stone);grid-template-columns:minmax(400px,.82fr) minmax(540px,1.18fr);min-height:min(790px,100vh - 118px);display:grid}.hero-copy{align-self:center;padding:clamp(5rem,9vw,9.5rem) clamp(2rem,6vw,7.5rem)}.hero h1{letter-spacing:-.025em;max-width:8.7ch;margin-bottom:2.2rem;font-size:clamp(4.4rem,7vw,7.75rem);font-weight:700;line-height:.78}.hero h1 .hero-title-wrap{display:block;overflow:hidden}.hero h1 .hero-title-line{color:var(--ink);letter-spacing:inherit;font-size:1em;font-weight:700;line-height:inherit;display:block}.hero h1 .hero-tagline{color:var(--brand-red);letter-spacing:.045em;max-width:15ch;margin-top:1.5rem;font-size:.38em;font-weight:600;line-height:1;display:block}.hero-lead{color:var(--muted);max-width:37rem;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.85}.button-row{flex-wrap:wrap;gap:.8rem;margin-top:2.2rem;display:flex}.hero-proof{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:0;margin-top:3.7rem;padding-top:1.25rem;font-size:.65rem;font-weight:700;display:flex}.hero-proof span{align-items:center;display:flex}.hero-proof span:not(:last-child):after{color:#b2b2ad;content:"/";margin-inline:.75rem}.hero-image{--parallax-y:0px;min-height:630px;position:relative;overflow:hidden}.hero-image:before{animation:hero-curtain 1.2s .14s var(--ease-out) both;background:var(--ink);content:"";pointer-events:none;transform-origin:100%;z-index:4;position:absolute;inset:0}.hero-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 52%,#0d0f0d99);position:absolute;inset:0}.hero-image>img,.service-image>img,.statement-photo>img,.project-grid figure>img,.quote-image>img,.legacy-hero-image>img,.location-project-grid figure>div>img,.gallery-page-grid figure>img,.fence-type-hero-image>img,.fence-type-project-grid figure>img{width:100%;height:100%;position:absolute;inset:0}.hero-image>img{animation:hero-photo-in 1.8s .18s var(--ease-out) backwards;object-fit:cover;object-position:center 58%;transform:translate3d(0, var(--parallax-y), 0) scale(1.07);transition:transform .9s var(--ease-out);will-change:transform}.hero:hover .hero-image>img{transform:translate3d(0, var(--parallax-y), 0) scale(1.095)}.hero-image-caption{color:var(--white);z-index:2;display:grid;position:absolute;bottom:clamp(1.8rem,4vw,3.7rem);left:clamp(1.8rem,4vw,3.7rem)}.hero-image-caption span{letter-spacing:.18em;text-transform:uppercase;margin-bottom:.65rem;font-size:.63rem;font-weight:700}.hero-image-caption strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:-.01em;text-transform:uppercase;font-size:clamp(2rem,3vw,2.8rem);font-weight:600;line-height:.95}.hero-image-caption small{color:#e0e2dd;letter-spacing:.12em;text-transform:uppercase;margin-top:.75rem;font-size:.67rem}.hero-slideshow{cursor:grab;isolation:isolate;touch-action:pan-y;-webkit-user-select:none;user-select:none;outline:none}.hero-slideshow:active{cursor:grabbing}.hero-slideshow:focus-visible{box-shadow:inset 0 0 0 3px var(--brand-red)}.hero-slideshow>img{animation-name:hero-slide-in}.hero-slideshow-toolbar{color:var(--white);z-index:3;background:#121412d6;border:1px solid #fff3;align-items:stretch;display:flex;position:absolute;top:clamp(1.2rem,2.4vw,2.4rem);right:clamp(1.2rem,2.4vw,2.4rem)}.hero-slideshow-toolbar button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;min-width:50px;min-height:48px;transition:background-color .18s,color .18s}.hero-slideshow-toolbar button:hover,.hero-slideshow-toolbar button:focus-visible{background:var(--brand-red);color:var(--white)}.hero-slideshow-toolbar>span{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.08em;border-inline:1px solid #fff3;justify-content:center;align-items:center;gap:.42rem;min-width:72px;font-size:.88rem;font-weight:600;display:flex}.hero-slideshow-toolbar>span i{color:#afb2ac;font-style:normal}.hero-slideshow-toolbar .hero-slideshow-play{font-family:var(--font-body), Arial, sans-serif;letter-spacing:.11em;text-transform:uppercase;border-left:1px solid #fff3;min-width:78px;padding-inline:.85rem;font-size:.57rem;font-weight:800}.hero-slideshow-progress{z-index:3;background:#ffffff3d;height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.hero-slideshow-progress span{background:var(--brand-red);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.hero-slideshow-progress span.is-running{animation:5.6s linear both hero-slide-progress}.service-rail{background:var(--paper);border-bottom:1px solid var(--line);border-top:1px solid var(--line);color:var(--ink-soft);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;align-items:center;min-height:74px;font-size:.64rem;font-weight:700;display:block;overflow:hidden}.service-rail-track{will-change:transform;width:max-content;min-height:74px;animation:28s linear infinite material-rail;display:flex}.service-rail-group{flex:none;align-items:center;gap:clamp(2.5rem,5vw,6rem);padding-right:clamp(2.5rem,5vw,6rem);display:flex}.service-rail-item{align-items:center;gap:clamp(2.5rem,5vw,6rem);display:flex}.service-rail i{background:var(--brand-red);flex:none;width:3px;height:3px;display:block;transform:rotate(45deg)}.service-rail:hover .service-rail-track{animation-play-state:paused}.intro{grid-template-columns:70px minmax(300px,1.35fr) minmax(280px,.65fr);align-items:start;gap:clamp(2rem,5vw,6rem);padding-top:clamp(8rem,12vw,13rem);padding-bottom:clamp(8rem,12vw,13rem);display:grid}.section-number{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.14em;padding-top:.8rem;font-size:.64rem;font-weight:700}.intro-copy h2{max-width:7ch}.intro-detail{border-left:1px solid var(--line);margin-top:3.2rem;padding-left:clamp(1.5rem,3vw,3rem)}.intro-detail p{color:var(--muted);margin-bottom:2rem;font-size:1rem}.text-link{border:0;border-bottom:1px solid var(--ink);color:var(--ink);cursor:pointer;letter-spacing:.13em;text-transform:uppercase;background:0 0;align-items:center;gap:.7rem;padding:0 0 .45rem;font-size:.68rem;font-weight:700;text-decoration:none;transition:border-color .22s,color .22s;display:inline-flex}.text-link span{color:var(--brand-red);transition:transform .28s var(--ease-out);display:inline-block}.text-link:hover{border-color:var(--brand-red);color:var(--brand-red)}.text-link:hover span{transform:translate(6px)}.services{padding-bottom:clamp(8rem,12vw,13rem)}.section-heading{border-top:1px solid var(--line);grid-template-columns:minmax(300px,1.35fr) minmax(260px,.65fr);align-items:end;gap:3rem;padding-top:2.2rem;display:grid}.section-heading h2{max-width:9ch}.section-heading>p{color:var(--muted);max-width:34rem;margin-bottom:.5rem;font-size:.96rem}.service-grid{grid-template-columns:repeat(3,1fr);gap:1px;margin-top:clamp(4rem,7vw,7rem);display:grid}.service-card{background:var(--paper);transition:box-shadow .5s var(--ease-out), transform .5s var(--ease-out);scroll-margin-top:110px;position:relative;overflow:hidden}.service-card:hover{z-index:2;transform:translateY(-10px);box-shadow:0 22px 52px #17191721}.service-image{aspect-ratio:1/.9;position:relative;overflow:hidden}.service-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 65%,#0c0d0c1f);position:absolute;inset:0}.service-image img{object-fit:cover;transition:transform .8s var(--ease-out)}.service-card:hover .service-image img{transform:scale(1.07)}.service-card-copy{border-bottom:1px solid var(--line);border-inline:1px solid var(--line);border-top:4px solid var(--ink);min-height:240px;padding:clamp(1.5rem,3vw,2.8rem);position:relative}.service-card-copy:before{background:var(--brand-red);content:"";transform-origin:0;height:4px;transition:transform .65s var(--ease-out);position:absolute;top:-4px;left:0;right:0;transform:scaleX(0)}.service-card:hover .service-card-copy:before{transform:scaleX(1)}.service-card-copy>span{color:var(--brand-red);letter-spacing:.12em;margin-bottom:2rem;font-size:.65rem;font-weight:800;display:block}.service-card h3{margin-bottom:.8rem}.service-card p{color:var(--muted);max-width:29rem;margin:0 0 1.6rem;font-size:.86rem}.service-card-copy>a{color:var(--ink);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.6rem;font-size:.62rem;font-weight:800;text-decoration:none;display:inline-flex}.service-card-copy>a span{color:var(--brand-red);transition:transform .3s var(--ease-out)}.service-card-copy>a:hover span{transform:translate(5px)}.statement{background:var(--ink);color:var(--white);min-height:min(800px,88vh);position:relative;overflow:hidden}.statement-photo{--parallax-y:0px;opacity:.52;position:absolute;inset:0}.statement-photo:after{content:"";background:linear-gradient(90deg,#0f110fd9,#0f110f40),linear-gradient(#0000 40%,#0f110f66);position:absolute;inset:0}.statement-photo img{object-fit:cover;transform:translate3d(0, var(--parallax-y), 0) scale(1.12);will-change:transform}.statement-copy{z-index:2;flex-direction:column;justify-content:flex-end;min-height:min(800px,88vh);padding-top:clamp(6rem,10vw,10rem);padding-bottom:clamp(5rem,8vw,9rem);display:flex;position:relative}.statement .eyebrow{color:#e4e4df;margin-bottom:2.5rem}.display-line{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:-.025em;text-transform:uppercase;max-width:11ch;margin:0;font-size:clamp(4.3rem,8.5vw,9rem);font-weight:700;line-height:.76}.display-line.accent{color:#f3f0e9;letter-spacing:.005em;max-width:14ch;margin-top:1.4rem;font-size:clamp(2.8rem,5vw,5.3rem);font-weight:500;line-height:.88}.process{grid-template-columns:minmax(300px,.9fr) minmax(430px,1.1fr);gap:clamp(4rem,8vw,10rem);padding-top:clamp(8rem,12vw,13rem);padding-bottom:clamp(8rem,12vw,13rem);display:grid}.process-intro{position:sticky;top:3rem}.process-intro h2{max-width:8ch}.process-intro>p:last-child{color:var(--muted);max-width:28rem;margin-top:2rem}.process-list{margin:0;padding:0;list-style:none}.process-list li{border-top:1px solid var(--line);grid-template-columns:45px 1fr;gap:2rem;padding:2.6rem 0 3.2rem;display:grid;position:relative}.process-list li:after{background:var(--brand-red);content:"";transform-origin:0;height:2px;transition:transform .9s var(--ease-out);width:100%;position:absolute;top:-1px;left:0;transform:scaleX(0)}.process-list li.is-visible:after{transform:scaleX(1)}.process-list li:last-child{border-bottom:1px solid var(--line)}.process-list>li>span{color:var(--brand-red);letter-spacing:.12em;padding-top:.45rem;font-size:.62rem;font-weight:700}.process-list h3{margin-bottom:.8rem}.process-list p{color:var(--muted);max-width:32rem;margin:0;font-size:.88rem}.projects{padding-bottom:clamp(8rem,12vw,13rem)}.projects .section-heading{align-items:end}.projects .text-link{justify-self:end;margin-bottom:.5rem}.project-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:clamp(4rem,7vw,7rem);display:grid}.project-grid figure{aspect-ratio:.92;background:var(--ink);transition:box-shadow .5s var(--ease-out), transform .5s var(--ease-out);margin:0;position:relative;overflow:hidden}.project-grid .project-wide{aspect-ratio:2/1.12;grid-column:span 2}.project-grid figure:after{content:"";background:linear-gradient(#0000 56%,#0b0d0bad);position:absolute;inset:0}.project-grid img{object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}.project-grid figure:hover img{transform:scale(1.065)}.project-grid figure:hover{z-index:2;transform:translateY(-8px);box-shadow:0 24px 55px #1315132e}.project-grid figcaption{color:var(--white);font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;transition:transform .45s var(--ease-out);z-index:2;font-size:clamp(1.5rem,2.3vw,2.4rem);font-weight:600;position:absolute;bottom:1.6rem;left:1.7rem;transform:translateY(0)}.project-grid figure:hover figcaption{transform:translateY(-8px)}.project-archive-intro{border-top:1px solid var(--line);grid-template-columns:minmax(300px,1.2fr) minmax(260px,.8fr);align-items:end;gap:clamp(2rem,6vw,7rem);margin-top:clamp(7rem,11vw,12rem);padding-top:clamp(2.2rem,4vw,3.5rem);display:grid}.project-archive-intro h3{max-width:8ch;margin:0;font-size:clamp(2.8rem,5vw,5.4rem)}.project-archive-intro>p{color:var(--muted);max-width:34rem;margin:0 0 .5rem}.project-slideshow{background:var(--ink);color:var(--white);outline:none;margin-top:clamp(3rem,6vw,6rem)}.project-slideshow:focus-visible{box-shadow:0 0 0 3px var(--brand-red)}.slideshow-viewport{aspect-ratio:16/8.4;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;min-height:510px;position:relative;overflow:hidden}.slideshow-viewport:active{cursor:grabbing}.slideshow-slide{animation:slideshow-forward .85s var(--ease-out) both;position:absolute;inset:0}.slideshow-slide[data-direction=backward]{animation-name:slideshow-backward}.slideshow-backdrop{filter:blur(28px)brightness(.54)saturate(.82);object-fit:cover;opacity:.92;width:100%;height:100%;animation:6s linear both slideshow-image-drift;position:absolute;inset:0;transform:scale(1.12)}.slideshow-photo-frame{position:absolute;inset:clamp(.7rem,1.5vw,1.35rem);overflow:hidden}.slideshow-photo-frame:after{content:"";pointer-events:none;border:1px solid #ffffff1f;position:absolute;inset:0;box-shadow:inset 0 0 55px #0000002e}.slideshow-photo{filter:drop-shadow(0 18px 40px #00000042);object-fit:contain;object-position:center;width:100%;height:100%;position:absolute;inset:0}.slideshow-shade{pointer-events:none;background:linear-gradient(#0a0c0a1a 30%,#0a0c0acc),linear-gradient(90deg,#0a0c0a73,#0000 55%);position:absolute;inset:0}.slideshow-caption{animation:slideshow-caption-in .8s .16s var(--ease-out) both;z-index:2;max-width:min(78%,900px);position:absolute;bottom:clamp(2.2rem,5vw,5rem);left:clamp(1.5rem,4vw,4.5rem)}.slideshow-caption>span{color:#e4e5df;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:1.3rem;font-size:.62rem;font-weight:800;display:flex}.slideshow-caption>span:before{background:var(--brand-red);content:"";width:25px;height:3px}.slideshow-caption h3{text-shadow:0 8px 30px #00000038;max-width:14ch;margin:0;font-size:clamp(2.7rem,5vw,5.6rem);line-height:.84}.slideshow-caption p{color:#e6e7e2;text-shadow:0 5px 18px #0000004d;max-width:62ch;margin:1.25rem 0 0;font-size:clamp(.72rem,1vw,.88rem);line-height:1.65}.slideshow-count{letter-spacing:.08em;z-index:2;align-items:baseline;gap:.45rem;font-size:.64rem;display:flex;position:absolute;top:clamp(1.5rem,4vw,3.5rem);right:clamp(1.5rem,4vw,4.5rem)}.slideshow-count strong{font-family:var(--font-heading), Arial, sans-serif;font-size:2.1rem;font-weight:600}.slideshow-count span{color:#b9bbb5}.slideshow-controls{border-top:1px solid var(--line-dark);grid-template-columns:auto minmax(180px,1fr) minmax(120px,.35fr) auto;align-items:center;min-height:74px;display:grid}.slideshow-buttons{align-self:stretch;display:flex}.slideshow-buttons button,.slideshow-play{border:0;border-right:1px solid var(--line-dark);color:var(--white);cursor:pointer;background:0 0;min-width:72px;transition:background-color .25s,color .25s}.slideshow-buttons button{font-size:1.2rem}.slideshow-buttons button:hover,.slideshow-buttons button:focus-visible,.slideshow-play:hover,.slideshow-play:focus-visible{background:var(--brand-red);color:var(--white)}.slideshow-scrubber{align-items:center;padding-inline:clamp(1.3rem,3vw,3rem);display:flex}.slideshow-scrubber input{accent-color:var(--brand-red);cursor:pointer;width:100%;height:3px;margin:0}.slideshow-timer{background:#454842;height:2px;margin-inline:clamp(1rem,2.5vw,2.5rem);overflow:hidden}.slideshow-timer span{background:var(--brand-red);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.slideshow-timer span.is-running{animation:5.2s linear both slideshow-timer}.slideshow-play{border-left:1px solid var(--line-dark);letter-spacing:.13em;text-transform:uppercase;border-right:0;align-self:stretch;padding-inline:1.8rem;font-size:.61rem;font-weight:800}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes slideshow-forward{0%{clip-path:inset(0 0 0 100%);transform:scale(1.035)}to{clip-path:inset(0);transform:scale(1)}}@keyframes slideshow-backward{0%{clip-path:inset(0 100% 0 0);transform:scale(1.035)}to{clip-path:inset(0);transform:scale(1)}}@keyframes slideshow-image-drift{0%{transform:scale(1.12)}to{transform:scale(1.18)}}@keyframes slideshow-caption-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes slideshow-timer{to{transform:scaleX(1)}}.service-areas{isolation:isolate;padding-top:clamp(7rem,11vw,11rem);padding-bottom:clamp(8rem,12vw,13rem);position:relative}.service-areas:before{background:var(--stone);content:"";z-index:-1;margin-inline:-50vw;position:absolute;inset:0 50%}.service-area-heading{grid-template-columns:minmax(420px,1.2fr) minmax(320px,.8fr);align-items:end;gap:clamp(3rem,8vw,9rem);display:grid}.service-area-heading h2{max-width:10ch}.service-area-heading>div:last-child{padding-bottom:.45rem}.service-area-heading>div:last-child>p{color:var(--muted);max-width:42rem;margin-bottom:1.8rem}.featured-city-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(4rem,7vw,7rem);display:grid}.featured-city-card{border-bottom:1px solid var(--line);min-height:420px;transition:background-color .45s var(--ease-out), box-shadow .45s var(--ease-out), transform .45s var(--ease-out);padding:clamp(2rem,4vw,3.5rem);position:relative}.featured-city-card:nth-child(odd){border-right:1px solid var(--line)}.featured-city-card:before{background:var(--brand-red);content:"";transform-origin:0;height:3px;transition:transform .5s var(--ease-out);width:100%;position:absolute;top:-1px;left:0;transform:scaleX(0)}.featured-city-card:hover{background:var(--paper);z-index:2;transform:translateY(-5px);box-shadow:0 24px 52px #14161414}.featured-city-card:hover:before{transform:scaleX(1)}.featured-city-meta{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:clamp(3.5rem,6vw,6.5rem);font-size:.6rem;font-weight:800;display:flex}.featured-city-meta span:first-child{color:var(--brand-red)}.featured-city-card h3{max-width:12ch;margin-bottom:1.35rem;font-size:clamp(2.2rem,3.4vw,3.9rem)}.featured-city-card>p{color:var(--muted);max-width:54rem;margin-bottom:1.5rem;font-size:.9rem}.featured-city-card ul{flex-wrap:wrap;gap:.45rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.featured-city-card li{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;border-radius:999px;padding:.55rem .75rem;font-size:.58rem;font-weight:800}.featured-city-card>a{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.65rem;font-size:.66rem;font-weight:800;text-decoration:none;display:inline-flex}.featured-city-card>a span{color:var(--brand-red);transition:transform .32s var(--ease-out)}.featured-city-card>a:hover span{transform:translate(5px)}.complete-area-directory{background:var(--ink);color:var(--white);margin-top:clamp(4rem,7vw,7rem)}.complete-area-directory summary{cursor:pointer;justify-content:space-between;align-items:center;padding:clamp(1.7rem,3.5vw,2.8rem);list-style:none;display:flex}.complete-area-directory summary::-webkit-details-marker{display:none}.complete-area-directory summary>span{flex-direction:column;gap:.45rem;display:flex}.complete-area-directory summary strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:clamp(1.7rem,3vw,3rem);line-height:1}.complete-area-directory summary small{color:#aeb1aa;letter-spacing:.09em;text-transform:uppercase;font-size:.65rem;font-weight:700}.complete-area-directory summary i{color:var(--brand-red);transition:transform .45s var(--ease-out);font-size:2.5rem;font-style:normal;font-weight:300}.complete-area-directory[open] summary i{transform:rotate(45deg)}.area-distance-groups{border-top:1px solid var(--line-dark);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.area-distance-group{border-right:1px solid var(--line-dark);padding:clamp(1.8rem,3vw,2.7rem)}.area-distance-group:last-child{border-right:0}.area-distance-group h3{color:var(--white);margin-bottom:1.5rem;font-size:1.25rem}.area-distance-group ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.area-distance-group li{border-top:1px solid #ffffff17}.area-distance-group a{transition:padding .3s var(--ease-out);flex-direction:column;gap:.25rem;padding:.75rem 0;text-decoration:none;display:flex}.area-distance-group a:hover{padding-left:.45rem}.area-distance-group a strong{letter-spacing:.02em;font-size:.72rem}.area-distance-group a span{color:#979b94;letter-spacing:.08em;text-transform:uppercase;font-size:.56rem}.area-methodology{border-top:1px solid var(--line-dark);color:#979b94;margin:0;padding:1.4rem clamp(1.8rem,3vw,2.7rem);font-size:.67rem}.reviews{border-top:1px solid var(--line);grid-template-columns:minmax(270px,.7fr) minmax(500px,1.3fr);gap:clamp(3rem,7vw,8rem);padding-top:clamp(5rem,8vw,8rem);padding-bottom:clamp(8rem,12vw,13rem);display:grid}.review-title h2{max-width:7.5ch}.review-grid{gap:0;display:grid}.review-grid blockquote{border-top:1px solid var(--line);transition:padding .45s var(--ease-out);grid-template-columns:42px 1fr auto;gap:clamp(1.5rem,3vw,3rem);margin:0;padding:2.8rem 0;display:grid;position:relative}.review-grid blockquote:before{background:var(--brand-red);content:"";transform-origin:bottom;transition:transform .45s var(--ease-out);width:3px;position:absolute;top:0;bottom:0;left:-1.5rem;transform:scaleY(0)}.review-grid blockquote:hover{padding-left:1.25rem}.review-grid blockquote:hover:before{transform:scaleY(1)}.review-grid blockquote:last-child{border-bottom:1px solid var(--line)}.quote-mark{color:var(--brand-red);font-family:var(--font-heading), Arial, sans-serif;font-size:3.5rem;line-height:.7}.review-grid blockquote>p{font-family:var(--font-body), Arial, sans-serif;letter-spacing:-.01em;max-width:28ch;margin:0;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:600;line-height:1.55}.review-grid footer{flex-direction:column;align-self:end;min-width:130px;padding-bottom:.25rem;display:flex}.review-grid footer strong{letter-spacing:.08em;text-transform:uppercase;font-size:.67rem}.review-grid footer span{color:var(--muted);margin-top:.35rem;font-size:.66rem}.quote-section{background:var(--stone);border-top:1px solid var(--line);grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);display:grid}.quote-image{--parallax-y:0px;min-height:940px;position:relative;overflow:hidden}.quote-image:after{content:"";background:linear-gradient(#0000 60%,#0c0e0c33);position:absolute;inset:0}.quote-image img{object-fit:cover;transform:translate3d(0, var(--parallax-y), 0) scale(1.12);will-change:transform}.quote-copy{align-self:center;max-width:750px;padding:clamp(5rem,8vw,9rem)}.quote-copy h2{max-width:8ch}.quote-copy>p:not(.eyebrow){color:var(--muted);max-width:35rem;margin:2rem 0 2.8rem}.quote-copy>p a{color:var(--ink);font-weight:700}.quote-form{background:var(--paper);border:1px solid var(--line);transition:box-shadow .45s var(--ease-out), transform .45s var(--ease-out);padding:clamp(1.5rem,3vw,2.8rem);position:relative}.quote-form:focus-within{transform:translateY(-4px);box-shadow:0 24px 60px #181a181a}.field-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.quote-form label{color:var(--ink-soft);letter-spacing:.11em;text-transform:uppercase;margin-bottom:1rem;font-size:.62rem;font-weight:700;display:block}.quote-form input,.quote-form select,.quote-form textarea{appearance:none;color:var(--ink);letter-spacing:0;text-transform:none;background:0 0;border:0;border-bottom:1px solid #c8c7c0;border-radius:0;outline:none;width:100%;min-height:45px;margin-top:.55rem;padding:.4rem 0;font-size:.92rem;transition:border-color .16s;display:block}.quote-form label{transition:color .22s}.quote-form label:focus-within{color:var(--brand-red)}.quote-form textarea{resize:vertical;min-height:90px;padding-top:.8rem}.quote-form select{background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 6px) 52%,100% 52%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:1.5rem}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--brand-red)}.button-block{width:100%;margin-top:.8rem}.button-block:disabled{cursor:wait;opacity:.72}.quote-form .consent-check{color:var(--muted);letter-spacing:0;text-transform:none;grid-template-columns:20px 1fr;align-items:start;gap:.75rem;margin:1.25rem 0 .6rem;font-size:.72rem;font-weight:500;line-height:1.65;display:grid}.quote-form .consent-check input{accent-color:var(--brand-red);appearance:auto;border:1px solid var(--line);cursor:pointer;width:20px;height:20px;min-height:20px;margin:.1rem 0 0;padding:0}.quote-form .consent-check a{color:var(--ink);text-underline-offset:.15em;font-weight:800;text-decoration:underline}.quote-form .consent-check:focus-within{color:var(--ink)}.estimate-page{background:linear-gradient(120deg, #b722270b, transparent 34%), var(--stone);border-bottom:1px solid var(--line)}.estimate-page-shell{grid-template-columns:minmax(300px,.72fr) minmax(540px,1.28fr);grid-template-areas:"intro form""contact form";gap:2rem clamp(3rem,7vw,8rem);padding-block:clamp(2.25rem,5vw,5rem);display:grid}.estimate-page-intro{grid-area:intro;align-self:start;padding-top:.3rem}.estimate-page-intro .breadcrumb{margin-bottom:clamp(2rem,4vw,3.75rem)}.estimate-page-intro h1{max-width:8ch;font-size:clamp(3.4rem,5.4vw,6.9rem);line-height:.86}.estimate-page-intro>p:last-child{color:var(--muted);max-width:34rem;margin-top:2rem;font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.75}.estimate-page-form{grid-area:form;align-self:start}.estimate-form-heading{background:var(--ink);color:var(--white);padding:clamp(1.5rem,3vw,2.6rem)}.estimate-form-heading .eyebrow{color:#c8c9c4;margin-bottom:1rem}.estimate-form-heading h2{color:var(--white);max-width:12ch;font-size:clamp(2rem,3.6vw,3.6rem);line-height:.95}.estimate-form-heading>p:last-child{color:#c8c9c4;max-width:38rem;margin-top:1rem;line-height:1.65}.estimate-page-form .quote-form{border-top:0}.estimate-contact-panel{border-top:1px solid var(--line);grid-area:contact;align-self:start;padding-top:1.5rem}.estimate-contact-panel>a{border-bottom:1px solid var(--line);color:var(--ink);flex-direction:column;align-items:start;gap:.35rem;padding:1rem 0;text-decoration:none;display:flex}.estimate-contact-panel>a span{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.62rem;font-weight:800}.estimate-contact-panel>a strong{overflow-wrap:anywhere;font-size:clamp(1rem,1.5vw,1.25rem)}.estimate-contact-panel>a:hover strong,.estimate-contact-panel>a:focus-visible strong{color:var(--brand-red)}.estimate-assurance{flex-wrap:wrap;gap:.55rem;padding-top:1.5rem;display:flex}.estimate-assurance span{border:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:.55rem .65rem;font-size:.58rem;font-weight:800}.form-honeypot{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.photo-upload{cursor:pointer}.photo-upload-control{border:1px dashed #aaa9a1;grid-template-columns:auto 1fr auto;align-items:center;gap:.2rem .75rem;margin-top:.65rem;padding:1rem;transition:background-color .18s,border-color .18s;display:grid}.photo-upload:hover .photo-upload-control,.photo-upload:focus-within .photo-upload-control{border-color:var(--brand-red);background:#f4f2ed}.photo-upload-control>span{background:var(--ink);color:var(--white);grid-row:1/3;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.photo-upload-control strong,.photo-upload-control small{letter-spacing:0;text-transform:none;display:block}.photo-upload-control strong{color:var(--ink);font-size:.78rem}.photo-upload-control small{color:var(--muted);font-size:.64rem;font-weight:500}.photo-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.photo-file-list{color:var(--muted);margin:-.35rem 0 1rem;padding:0;font-size:.68rem;line-height:1.55;list-style:none}.photo-file-list li{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.photo-file-list li:before{color:var(--brand-red);content:"✓";margin-right:.5rem;font-weight:800}.form-error{border-left:3px solid var(--brand-red);color:var(--ink-soft);background:#fff4f2;gap:.3rem;margin:0 0 1rem;padding:.9rem 1rem;font-size:.72rem;line-height:1.5;display:grid}.form-error strong{color:var(--ink)}.form-error a,.form-note a{color:inherit;font-weight:700}.form-note{color:var(--muted);text-align:center;margin:1rem 0 0;font-size:.65rem}.form-success{background:var(--paper);border:1px solid var(--line);padding:clamp(2.5rem,5vw,4rem)}.form-success-mark{background:var(--brand-red);color:var(--white);justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:1.25rem;font-size:1.15rem;display:flex}.form-success strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:2rem;font-weight:600;display:block}.form-success p{color:var(--muted);margin:1rem 0 1.5rem}.form-success .form-reference{border-bottom:1px solid var(--line);border-top:1px solid var(--line);padding-block:.85rem;font-size:.72rem}.form-success .form-reference b{color:var(--ink);font-family:var(--font-body), Arial, sans-serif;font-weight:800}.privacy-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.privacy-content article{background:var(--paper);border:1px solid var(--line);margin:-1px 0 0 -1px;padding:clamp(1.7rem,4vw,3.25rem)}.privacy-content article>span{color:var(--brand-red);letter-spacing:.13em;font-size:.62rem;font-weight:800}.privacy-content h2{margin:1rem 0;font-size:clamp(1.65rem,3vw,2.5rem)}.privacy-content p{color:var(--muted);margin:0;line-height:1.8}.privacy-content a{color:var(--ink);font-weight:700}.policy-updated{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:1.4rem;font-size:.72rem;font-weight:800}.site-footer{background:var(--ink);color:var(--white);padding-top:clamp(5rem,8vw,8rem)}.footer-main{grid-template-columns:minmax(210px,1.1fr) minmax(120px,.62fr) minmax(270px,1.25fr) minmax(220px,.95fr);grid-template-areas:"brand explore planning contact";gap:clamp(2.5rem,4vw,5rem);padding-bottom:clamp(3.5rem,5vw,5rem);display:grid}.footer-brand{grid-area:brand}.footer-brand img{filter:grayscale()brightness(0)invert();opacity:.92;width:120px;height:auto;margin-bottom:1.5rem}.footer-brand p{color:#aeb0aa;max-width:24rem;font-size:.8rem}.footer-brand-proof{color:#7f827b;letter-spacing:.12em;text-transform:uppercase;margin-top:1.15rem;font-size:.61rem;font-weight:700;display:block}.footer-explore{grid-area:explore}.footer-planning{grid-area:planning}.footer-contact{grid-area:contact}.footer-main>:not(.footer-brand){flex-direction:column;gap:.8rem;display:flex}.footer-label{color:#7f827b;letter-spacing:.17em;text-transform:uppercase;margin-bottom:.7rem;font-size:.61rem;font-weight:700}.footer-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.4rem;display:grid}.footer-main a,.footer-main span{color:#d5d6d1;font-size:.74rem;line-height:1.5;text-decoration:none}.footer-main a:hover{color:var(--white)}.footer-main .footer-phone{color:var(--white);font-family:var(--font-heading), Arial, sans-serif;margin-bottom:.4rem;font-size:1.45rem;font-weight:600}.footer-main .footer-estimate-link{letter-spacing:.11em;text-transform:uppercase;border:1px solid #ffffff29;justify-content:space-between;align-items:center;max-width:230px;margin-block:.55rem .25rem;padding:.75rem .85rem;font-size:.62rem;font-weight:800;transition:background-color .18s,border-color .18s;display:flex}.footer-main .footer-estimate-link:hover{background:var(--red);border-color:var(--red)}.footer-main .footer-estimate-link span{color:inherit;font-size:.85rem}.footer-contact-meta{flex-direction:column;gap:.45rem;display:flex}.footer-contact-meta span{color:#858881;font-size:.67rem}.footer-legal{border-top:1px solid var(--line-dark);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.25rem 2.5rem;padding-top:1.35rem;padding-bottom:1.35rem;display:grid}.footer-legal .footer-label{margin:0}.footer-legal-links{flex-wrap:wrap;gap:.65rem 1.6rem;display:flex}.footer-legal a{color:#999c95;font-size:.66rem;line-height:1.5;text-decoration:none}.footer-legal a:hover{color:var(--white)}.footer-bottom{color:#83867f;letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #fff1;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:2rem;padding-top:1.7rem;padding-bottom:1.7rem;font-size:.59rem;display:grid}.footer-bottom-copy{flex-wrap:wrap;grid-column:1;gap:.65rem 1.5rem;display:flex}.footer-powered-by{opacity:.82;background:#8b5cf60e;border:1px solid #b084ff29;border-radius:.45rem;flex:none;grid-column:2;justify-self:center;align-items:center;padding:.22rem .38rem;transition:border-color .18s,box-shadow .18s,opacity .18s;display:inline-flex;box-shadow:0 0 17px #8f56ff2e,inset 0 0 12px #8f56ff0b}.footer-powered-by img{mix-blend-mode:screen;width:clamp(168px,15vw,198px);height:auto;display:block}.footer-powered-by:hover{opacity:.96;border-color:#be97ff4d;box-shadow:0 0 20px #975eff40,inset 0 0 12px #975eff12}.footer-powered-by:focus-visible{outline-offset:4px;outline:2px solid #b982ff}.fence-type-page{background:linear-gradient(#f7f6f2f4, #f7f6f2f4), var(--fence-type-background) center / cover fixed;overflow:hidden}.fence-type-hero{background:var(--ink);color:var(--white);isolation:isolate;min-height:calc(100vh - var(--header-height) - 30px);position:relative}.fence-type-hero-copy{min-height:calc(100vh - var(--header-height) - 30px);z-index:3;flex-direction:column;justify-content:center;width:min(100%,1180px);padding:clamp(4.5rem,8vw,8rem) clamp(2rem,6vw,7rem);display:flex;position:relative}.breadcrumb{color:#ffffffad;letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:clamp(3rem,6vw,6rem);font-size:.59rem;font-weight:800;display:flex}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{color:var(--white)}.breadcrumb span[aria-hidden=true]{color:var(--brand-red)}.fence-type-hero h1{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:-.035em;text-transform:uppercase;text-shadow:0 12px 45px #00000061;text-wrap:balance;max-width:8.5ch;margin:0;font-size:clamp(4.3rem,7.6vw,8.5rem);font-weight:600;line-height:.82}.fence-type-hero .eyebrow{color:#ffffffc7}.fence-type-lead{color:#ffffffd1;max-width:43rem;margin:2.2rem 0 2.5rem;font-size:clamp(.9rem,1.3vw,1.05rem)}.fence-type-hero .button-ghost{color:var(--white);border-color:#ffffff85}.fence-type-hero .button-ghost:hover{border-color:var(--white)}.fence-type-hero-image{z-index:-1;position:absolute;inset:0;overflow:hidden}.fence-type-hero-image:after{content:"";pointer-events:none;background:linear-gradient(90deg,#090b09e6 0%,#090b09b8 42%,#090b0947 78%,#090b0929 100%),linear-gradient(#090b091f,#090b099e);position:absolute;inset:0}.fence-type-hero-image img{object-fit:cover;transform:scale(1.025)}.fence-type-image-label{color:var(--white);text-align:right;z-index:2;flex-direction:column;display:flex;position:absolute;bottom:clamp(2rem,4vw,4rem);left:auto;right:clamp(2rem,4vw,4rem)}.fence-type-image-label span,.fence-type-image-label small{letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;font-weight:800}.fence-type-image-label strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;margin:.45rem 0 .6rem;font-size:clamp(2.6rem,4.6vw,5rem);font-weight:600;line-height:.9}.fence-type-image-label small{color:#d6d8d2}.fence-type-overview{grid-template-columns:minmax(380px,1fr) minmax(380px,.85fr);gap:clamp(4rem,9vw,10rem);padding-top:clamp(8rem,12vw,13rem);padding-bottom:clamp(8rem,12vw,13rem);display:grid}.fence-type-overview h2{max-width:9ch}.best-for-list{border-top:1px solid var(--line)}.best-for-list>div{border-bottom:1px solid var(--line);transition:padding .35s var(--ease-out);grid-template-columns:42px 1fr;align-items:center;gap:1.25rem;padding:1.65rem 0;display:grid}.best-for-list>div:hover{padding-left:.8rem}.best-for-list span{color:var(--brand-red);letter-spacing:.12em;font-size:.62rem;font-weight:800}.best-for-list strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:clamp(1.55rem,2.5vw,2.35rem);font-weight:600}.fence-type-benefits{background:var(--ink);color:var(--white);padding-top:clamp(6rem,9vw,9rem);padding-bottom:clamp(7rem,11vw,11rem)}.fence-type-benefits .section-heading{border-color:var(--line-dark)}.fence-type-benefits .section-heading>p{color:#aeb1aa}.fence-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(4rem,7vw,7rem);display:grid}.fence-benefit-grid article{border-left:1px solid var(--line-dark);min-height:330px;padding:clamp(2rem,4vw,3.5rem)}.fence-benefit-grid article:last-child{border-right:1px solid var(--line-dark)}.fence-benefit-grid article>span{color:var(--brand-red);letter-spacing:.12em;margin-bottom:clamp(4rem,7vw,7rem);font-size:.62rem;font-weight:800;display:block}.fence-benefit-grid h3{color:var(--white);margin-bottom:1rem;font-size:clamp(2rem,3.2vw,3.4rem)}.fence-benefit-grid p{color:#aeb1aa;margin:0;font-size:.84rem}.fence-type-planning{grid-template-columns:minmax(350px,.75fr) minmax(480px,1.25fr);gap:clamp(4rem,10vw,11rem);padding-top:clamp(8rem,12vw,13rem);padding-bottom:clamp(8rem,12vw,13rem);display:grid}.fence-planning-intro{top:calc(var(--header-height) + 3rem);align-self:start;position:sticky}.fence-planning-intro h2{max-width:8ch}.fence-planning-intro>p:not(.eyebrow){color:var(--muted);max-width:31rem;margin-top:2rem}.fence-planning-list{margin:0;padding:0;list-style:none}.fence-planning-list li{border-top:1px solid var(--line);grid-template-columns:46px 1fr;align-items:start;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;display:grid}.fence-planning-list li:last-child{border-bottom:1px solid var(--line)}.fence-planning-list span{color:var(--brand-red);letter-spacing:.12em;padding-top:.35rem;font-size:.62rem;font-weight:800}.fence-planning-list p{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;max-width:24ch;margin:0;font-size:clamp(1.6rem,2.8vw,2.65rem);font-weight:600;line-height:1.08}.fence-process-video{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:minmax(340px,.85fr) minmax(380px,1.15fr);align-items:center;gap:clamp(3rem,8vw,9rem);max-width:none;padding-block:clamp(6rem,10vw,10rem);display:grid}.fence-process-copy{padding-left:clamp(0rem,4vw,4rem)}.fence-process-copy h2{max-width:8ch;font-size:clamp(3.8rem,6.5vw,7rem)}.fence-process-copy>p:not(.eyebrow){color:var(--muted);max-width:560px;margin-block:2rem;line-height:1.75}.fence-process-facts{border-top:1px solid var(--line);margin-bottom:2rem;display:grid}.fence-process-facts span{border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;padding-block:1rem;font-size:.65rem;font-weight:800}.fence-process-media{background:var(--ink);margin:0;position:relative;overflow:hidden}.fence-process-media video{aspect-ratio:1;object-fit:cover;background:#111412;width:100%;display:block}.fence-process-media figcaption{color:var(--white);font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;justify-content:space-between;align-items:center;padding:1.5rem;font-size:clamp(1.6rem,2.5vw,2.7rem);font-weight:600;line-height:.95;display:flex}.fence-process-media figcaption span{color:#b6b9b2;font-family:var(--font-body), Arial, sans-serif;letter-spacing:.13em;text-align:right;font-size:.55rem;font-weight:800}.fence-type-projects{padding-bottom:clamp(8rem,12vw,13rem)}.fence-type-projects .section-heading{align-items:end}.fence-type-projects .text-link{justify-self:end;margin-bottom:.5rem}.fence-type-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(4rem,7vw,7rem);display:grid}.fence-type-project-grid figure{aspect-ratio:1;background:var(--ink);margin:0;position:relative;overflow:hidden}.fence-type-project-grid figure:after{content:"";pointer-events:none;background:linear-gradient(#0000 45%,#090b09d1);position:absolute;inset:0}.fence-type-project-grid img{object-fit:cover;transition:transform .7s var(--ease-out)}.fence-type-project-grid figure:hover img{transform:scale(1.06)}.fence-type-project-grid figcaption{color:var(--white);z-index:2;flex-direction:column;max-width:calc(100% - 3.2rem);display:flex;position:absolute;bottom:1.6rem;left:1.6rem}.fence-type-project-grid figcaption span{color:#d4d6d0;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.55rem;font-size:.56rem;font-weight:800}.fence-type-project-grid figcaption strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:clamp(1.4rem,2.3vw,2.25rem);line-height:.98}.related-fence-types{padding-bottom:clamp(8rem,12vw,13rem)}.related-fence-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(4rem,7vw,7rem);display:grid}.related-fence-grid>a{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:330px;transition:background-color .4s var(--ease-out), transform .4s var(--ease-out);padding:clamp(2rem,4vw,3.5rem);text-decoration:none;display:block;position:relative}.related-fence-grid>a:first-child{border-left:1px solid var(--line)}.related-fence-grid>a:hover{background:var(--paper);transform:translateY(-5px)}.related-fence-grid>a>span{color:var(--brand-red);letter-spacing:.12em;margin-bottom:clamp(4rem,7vw,7rem);font-size:.62rem;font-weight:800;display:block}.related-fence-grid h3{margin-bottom:1rem;font-size:clamp(2rem,3vw,3.2rem)}.related-fence-grid p{color:var(--muted);margin:0;font-size:.82rem}.related-fence-grid i{color:var(--brand-red);transition:transform .3s var(--ease-out);font-size:1.3rem;font-style:normal;position:absolute;bottom:2rem;right:2rem}.related-fence-grid>a:hover i{transform:translate(6px)}.fence-type-cta{background:var(--stone);border-top:1px solid var(--line);text-align:center;padding-top:clamp(7rem,11vw,11rem);padding-bottom:clamp(7rem,11vw,11rem)}.fence-type-cta .eyebrow{justify-content:center}.fence-type-cta h2{max-width:12ch;margin-inline:auto}.fence-type-cta>div>p:not(.eyebrow){color:var(--muted);max-width:44rem;margin:2rem auto 2.5rem}.fence-type-cta .button-row{justify-content:center}.reveal-delay-1{--reveal-delay:.1s}.reveal-delay-2{--reveal-delay:.2s}.reveal-delay-3{--reveal-delay:.3s}.motion-ready [data-reveal]{filter:blur(7px);opacity:0;transition:opacity .85s var(--ease-out) var(--reveal-delay,0s), translate .85s var(--ease-out) var(--reveal-delay,0s), filter .85s var(--ease-out) var(--reveal-delay,0s), box-shadow .5s var(--ease-out), transform .5s var(--ease-out), padding .45s var(--ease-out);translate:0 48px}.motion-ready [data-reveal=clip]{clip-path:inset(0 0 100%);filter:none;opacity:1;transition:clip-path 1s var(--ease-out) var(--reveal-delay,0s), translate 1s var(--ease-out) var(--reveal-delay,0s), box-shadow .5s var(--ease-out), transform .5s var(--ease-out);translate:0 30px}.motion-ready [data-reveal].is-visible{clip-path:inset(0);filter:blur();opacity:1;translate:0}.motion-ready .hero .eyebrow{animation:hero-copy-in .7s .12s var(--ease-out) both}.motion-ready .hero-title-line{animation:hero-title-in .95s var(--ease-out) both}.motion-ready .hero-tagline{animation:hero-copy-in .75s .48s var(--ease-out) both}.motion-ready .hero-lead{animation:hero-copy-in .75s .56s var(--ease-out) both}.motion-ready .hero .button-row{animation:hero-copy-in .75s .64s var(--ease-out) both}.motion-ready .hero-proof{animation:hero-copy-in .75s .72s var(--ease-out) both}.motion-ready .hero-image-caption{animation:hero-caption-in .8s .88s var(--ease-out) both}@keyframes hero-title-in{0%{opacity:0;transform:translateY(115%)}to{opacity:1;transform:translateY(0)}}@keyframes hero-copy-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-caption-in{0%{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-curtain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes hero-photo-in{0%{filter:saturate(.75);transform:translate3d(0, var(--parallax-y), 0) scale(1.18)}to{filter:saturate();transform:translate3d(0, var(--parallax-y), 0) scale(1.07)}}@keyframes hero-slide-in{0%{filter:saturate(.78);opacity:.35;transform:translate3d(0, var(--parallax-y), 0) scale(1.15)}to{filter:saturate();opacity:1;transform:translate3d(0, var(--parallax-y), 0) scale(1.07)}}@keyframes hero-slide-progress{to{transform:scaleX(1)}}@keyframes material-rail{to{transform:translate(-50%)}}@media (max-width:1180px){.site-nav{gap:1rem}.header-phone{display:none}.hero{grid-template-columns:minmax(390px,.95fr) minmax(460px,1.05fr)}.hero-copy{padding-inline:clamp(2.2rem,5vw,4.5rem)}.intro{grid-template-columns:50px 1fr .75fr}.review-grid blockquote{grid-template-columns:35px 1fr}.review-grid footer{grid-column:2}.quote-copy{padding-inline:clamp(3rem,6vw,6rem)}}@media (max-width:940px){:root{--header-height:78px}.site-header{position:sticky;top:0}.brand img{width:64px;height:52px}.site-nav{background:var(--paper);border-left:1px solid var(--line);z-index:70;flex-direction:column;align-items:stretch;gap:0;width:min(86vw,420px);max-width:420px;padding:7rem 2rem 2rem;transition:transform .26s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(105%)}.site-nav.is-open{transform:translate(0)}.site-nav>a:not(.button),.nav-dropdown-trigger{border-bottom:1px solid var(--line);color:var(--ink);font-family:var(--font-heading), Arial, sans-serif;letter-spacing:-.01em;text-transform:uppercase;padding:1rem 0;font-size:2rem;font-weight:600}.site-nav>a:not(.button):after,.nav-dropdown-trigger:after{display:none}.nav-dropdown-shell{width:100%}.nav-dropdown-trigger{text-align:left;justify-content:space-between;width:100%}.nav-dropdown-menu{box-shadow:none;opacity:0;max-height:0;transition:max-height .65s var(--ease-out), opacity .26s ease, padding .45s var(--ease-out), visibility .26s ease;border:0;width:100%;padding:0;position:static;top:auto;left:auto;overflow:hidden;transform:none}.nav-dropdown-menu:before,.nav-dropdown-menu:after{display:none}.nav-dropdown-shell.is-open .nav-dropdown-menu{opacity:1;max-height:760px;padding:1rem 0 1.5rem;transform:none}.nav-dropdown-heading{display:none}.nav-dropdown-list{grid-template-columns:1fr}.nav-dropdown-list a,.nav-dropdown-list a:nth-child(odd){border-bottom:1px solid var(--line);border-right:0;min-height:49px;padding-inline:.2rem}.nav-dropdown-list a strong{font-size:.66rem}.nav-dropdown-list a i{opacity:1;transform:none}.nav-dropdown-list a:hover,.nav-dropdown-list a:focus-visible{padding-left:.7rem}.nav-dropdown-footer{margin-top:1.2rem}.site-nav>a.mobile-phone{color:var(--muted);font-family:var(--font-body), Arial, sans-serif;letter-spacing:.08em;margin-top:2rem;font-size:.72rem;font-weight:700;text-decoration:none;display:block}.nav-cta{margin-top:1rem;display:inline-flex}.header-actions{display:none}.menu-toggle{cursor:pointer;z-index:80;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:48px;height:48px;padding:0;display:flex;position:relative}.menu-toggle span{background:var(--ink);width:25px;height:1px;transition:transform .18s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.menu-backdrop{z-index:60;background:#1112118c;border:0;display:block;position:fixed;inset:0}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:clamp(5rem,11vw,7rem) clamp(1.4rem,7vw,4rem)}.hero h1{max-width:9ch;font-size:clamp(4rem,13vw,7.5rem)}.hero-image{min-height:68vw}.service-rail{justify-content:flex-start}.intro{grid-template-columns:45px 1fr;gap:2rem}.intro-detail{grid-column:2;max-width:37rem;margin-top:1rem}.service-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:1fr}.process-intro{position:static}.project-archive-intro{grid-template-columns:1fr}.project-archive-intro>p{max-width:40rem}.slideshow-viewport{min-height:480px}.service-area-heading{grid-template-columns:1fr;align-items:start;gap:2.5rem}.service-area-heading h2{max-width:12ch}.featured-city-card{min-height:390px}.area-distance-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.area-distance-group:nth-child(2){border-right:0}.area-distance-group:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}.reviews{grid-template-columns:1fr}.review-title h2{max-width:10ch}.quote-section{grid-template-columns:1fr}.quote-image{min-height:62vw}.quote-copy{justify-self:center;width:100%;max-width:780px;padding:clamp(5rem,10vw,8rem) clamp(1.4rem,7vw,4rem)}.footer-main{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-areas:"brand contact""explore planning";gap:3.5rem clamp(2.5rem,8vw,5rem)}}@media (max-width:680px){.utility-bar{justify-content:center}.utility-bar p{display:none}.site-header{padding-inline:1.15rem}.brand strong{font-size:1.25rem}.hero-copy{padding-block:4.8rem}.hero h1{font-size:clamp(3.65rem,17.5vw,5.4rem)}.hero h1 .hero-tagline{font-size:.48em}.hero-image{min-height:92vw}.hero-proof{row-gap:.6rem}.service-rail,.service-rail-track{min-height:62px}.intro{display:block}.section-number{width:45px;margin-bottom:3rem}.intro-detail{border-left:0;border-top:1px solid var(--line);margin-top:3rem;padding-top:2rem;padding-left:0}.section-heading{grid-template-columns:1fr}.section-heading>p{margin:0}.service-grid{grid-template-columns:1fr}.service-image{aspect-ratio:1.2}.service-card-copy{min-height:auto}.statement,.statement-copy{min-height:78vh}.display-line{font-size:clamp(3.7rem,17vw,6rem)}.display-line.accent{font-size:clamp(2.4rem,10vw,4.4rem)}.process-list li{grid-template-columns:36px 1fr;gap:1rem}.projects .text-link{justify-self:start}.project-grid{grid-template-columns:1fr}.project-grid .project-wide{aspect-ratio:1/.8;grid-column:auto}.project-grid figure{aspect-ratio:1/.9}.project-archive-intro{margin-top:6rem}.project-archive-intro h3{font-size:clamp(3rem,14vw,4.8rem)}.slideshow-viewport{aspect-ratio:4/5;min-height:520px}.slideshow-caption{max-width:90%}.slideshow-caption h3{font-size:clamp(2.55rem,11vw,4.35rem)}.slideshow-controls{grid-template-columns:auto minmax(90px,1fr) auto}.slideshow-buttons button{min-width:52px}.slideshow-scrubber{padding-inline:1rem}.slideshow-timer{display:none}.slideshow-play{min-width:70px;padding-inline:1rem}.featured-city-grid{grid-template-columns:1fr}.featured-city-card,.featured-city-card:nth-child(odd){border-right:0}.featured-city-card{min-height:auto;padding:2.2rem 0}.featured-city-meta{margin-bottom:3.5rem}.featured-city-card:hover{box-shadow:none;transform:none}.complete-area-directory{margin-inline:calc(-1*clamp(1.4rem,4.2vw,4.5rem))}.complete-area-directory summary{align-items:flex-start;gap:1rem}.area-distance-groups{grid-template-columns:1fr}.area-distance-group,.area-distance-group:nth-child(2){border-bottom:1px solid var(--line-dark);border-right:0}.area-distance-group:last-child{border-bottom:0}.review-grid blockquote{grid-template-columns:28px 1fr;gap:1rem;padding-block:2rem}.review-grid footer{grid-column:2}.field-grid,.privacy-content{grid-template-columns:1fr}.quote-image{min-height:86vw}.footer-main{grid-template-columns:1fr;grid-template-areas:"brand""contact""explore""planning";gap:3rem}.footer-brand{margin-bottom:0}.footer-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-legal{grid-template-columns:1fr;align-items:flex-start}.footer-legal-links{gap:.75rem 1.25rem}.footer-bottom{grid-template-columns:1fr;align-items:flex-start;gap:.75rem}.footer-bottom-copy{flex-direction:column;grid-column:1;gap:.55rem}.footer-powered-by{grid-column:1;justify-self:center;margin-top:.35rem}.footer-powered-by img{width:176px}}@media (max-width:940px){.fence-type-hero{min-height:calc(100svh - var(--header-height))}.fence-type-hero-copy{min-height:calc(100svh - var(--header-height));padding:clamp(5rem,11vw,7rem) clamp(1.4rem,7vw,4rem)}.fence-type-hero h1{max-width:9ch;font-size:clamp(4rem,13vw,7.5rem)}.fence-type-hero-image{min-height:0}.fence-type-overview,.fence-type-planning,.fence-process-video{grid-template-columns:1fr}.fence-process-copy{padding-left:0}.fence-planning-intro{position:static}.fence-benefit-grid{grid-template-columns:1fr}.fence-benefit-grid article,.fence-benefit-grid article:last-child{border-bottom:1px solid var(--line-dark);border-right:1px solid var(--line-dark);min-height:auto}.fence-benefit-grid article>span,.related-fence-grid>a>span{margin-bottom:3.5rem}.fence-type-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.fence-type-hero .button-row{flex-direction:column;align-items:stretch}.fence-type-hero .button{justify-content:center}.fence-type-hero-image{min-height:0}.fence-type-overview{gap:3rem}.fence-type-projects .text-link{justify-self:start}.fence-type-project-grid,.related-fence-grid{grid-template-columns:1fr}.fence-process-video{padding-inline:1.25rem}.fence-process-media figcaption{flex-direction:column;align-items:flex-start;gap:.75rem}.fence-process-media figcaption span{text-align:left}.related-fence-grid>a,.related-fence-grid>a:first-child{border-left:1px solid var(--line);min-height:280px}.fence-planning-list li{grid-template-columns:36px 1fr;gap:1rem}}.lead-dashboard{background:var(--paper);min-height:100vh}.lead-dashboard-hero{color:var(--white);background:linear-gradient(115deg,#101210fa,#232622f5),url(/images/gallery/2024-commercial-chain-link-fence-installation-utah-county.webp) 50%/cover;padding:clamp(4rem,8vw,7.5rem) 0 4rem}.lead-dashboard-hero .section-shell{justify-content:space-between;align-items:end;gap:2rem;display:flex}.lead-dashboard-hero h1{margin:.4rem 0 1rem;font-size:clamp(3.5rem,8vw,7.5rem)}.lead-dashboard-hero p:not(.eyebrow){color:#ffffffb8;max-width:680px;margin:0}.lead-dashboard-actions{flex-wrap:wrap;flex:none;gap:.8rem;display:flex}.lead-dashboard-summary{z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:-1.75rem;display:grid;position:relative}.lead-dashboard-summary article{background:var(--white);border:1px solid var(--line);gap:.35rem;padding:1.4rem;display:grid;box-shadow:0 16px 40px #17181712}.lead-dashboard-summary strong{font-family:var(--font-display);font-size:2.7rem;line-height:1}.lead-dashboard-summary span,.owner-verification article>span,.lead-project-details>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.lead-dashboard-summary .has-warning{border-color:#b5232880}.lead-dashboard-summary .has-warning strong{color:var(--red)}.owner-verification{border-bottom:1px solid var(--line);padding-top:clamp(3.5rem,7vw,6rem);padding-bottom:clamp(3rem,6vw,5.5rem)}.owner-verification-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);align-items:end;gap:2rem;margin-bottom:2rem;display:grid}.owner-verification-heading h2{margin:.35rem 0 0;font-size:clamp(3rem,6vw,5.2rem)}.owner-verification-heading>p{color:var(--muted);margin:0}.owner-verification-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.owner-verification article{background:var(--white);padding:1.5rem}.owner-verification article strong{margin:.7rem 0;font-size:1.05rem;display:block}.owner-verification article p{color:var(--muted);margin:0;font-size:.9rem}.owner-verification article a{color:var(--red);font-weight:800}.lead-dashboard-list{gap:1.25rem;padding-top:clamp(3rem,6vw,5.5rem);padding-bottom:clamp(4rem,8vw,8rem);display:grid}.lead-card,.lead-dashboard-empty,.lead-dashboard-loading{background:var(--white);border:1px solid var(--line)}.lead-card{padding:clamp(1.25rem,3vw,2rem)}.lead-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:1.5rem;padding-bottom:1.25rem;display:flex}.lead-card>header span{color:var(--red);letter-spacing:.12em;font-size:.72rem;font-weight:900}.lead-card>header h2{margin:.2rem 0;font-size:clamp(2rem,4vw,3.25rem)}.lead-card>header p{color:var(--muted);margin:0;font-size:.85rem}.lead-status-control{flex:none;align-items:center;gap:.5rem;display:flex}.lead-status-control select,.lead-status-control button{border:1px solid var(--line);font:inherit;min-height:44px;padding:.6rem .75rem}.lead-status-control select{background:var(--paper)}.lead-status-control button{background:var(--ink);color:var(--white);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.lead-status-control button:disabled{cursor:wait;opacity:.6}.lead-status-control small{color:var(--muted);min-width:3.6rem}.lead-card-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(1.5rem,4vw,3rem);padding:1.5rem 0;display:grid}.lead-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.25rem;margin:0;display:grid}.lead-card dl div{min-width:0}.lead-card dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800}.lead-card dd{overflow-wrap:anywhere;margin:.25rem 0 0}.lead-project-details{border-left:3px solid var(--red);padding-left:1.25rem}.lead-project-details p{white-space:pre-wrap}.lead-photo-links{flex-wrap:wrap;gap:.55rem;display:flex}.lead-photo-links a{background:var(--paper);border:1px solid var(--line);color:var(--ink);padding:.6rem .75rem;font-size:.78rem;font-weight:800}.lead-delivery-status{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.6rem;padding-top:1rem;display:flex}.lead-delivery-status span{background:var(--paper);border:1px solid var(--line);padding:.45rem .6rem;font-size:.72rem}.lead-delivery-status .is-failed,.lead-delivery-status .is-not-configured{color:var(--red);background:#b5232814;border-color:#b5232859}.lead-delivery-status .is-sent{color:#276744;background:#2f6c4c14;border-color:#2f6c4c59}.lead-dashboard-empty,.lead-dashboard-loading{text-align:center;padding:clamp(2rem,6vw,5rem)}@media (max-width:940px){.lead-dashboard-hero .section-shell,.owner-verification-heading{grid-template-columns:1fr;align-items:start}.lead-dashboard-hero .section-shell{display:grid}.lead-dashboard-summary,.owner-verification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-card-grid{grid-template-columns:1fr}}@media (max-width:680px){.lead-dashboard-hero{padding:3.5rem 0 3.25rem}.lead-dashboard-hero h1{font-size:clamp(3.6rem,18vw,5rem)}.lead-dashboard-actions,.lead-dashboard-actions .button{width:100%}.lead-dashboard-actions .button{justify-content:center}.lead-dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-dashboard-summary article{padding:1rem}.owner-verification-grid{grid-template-columns:1fr}.lead-card{padding:1rem}.lead-card>header{display:grid}.lead-status-control{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;width:100%;display:grid}.lead-status-control small{grid-column:1/-1}.lead-card dl{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.service-rail-track{animation:none!important}.motion-ready [data-reveal]{clip-path:none!important;filter:none!important;opacity:1!important;translate:0!important}.hero-image:before{transform:scaleX(0)!important}}.fency-shell{z-index:110;position:relative}.fency-backdrop{cursor:default;z-index:108;background:#0e100e2e;border:0;padding:0;position:fixed;inset:0}.fency-launcher{background:var(--ink);cursor:pointer;text-align:left;min-height:58px;transition:box-shadow .22s ease, transform .22s var(--ease-out);z-index:110;border:1px solid #3d3f3b;align-items:center;padding:.38rem .85rem .38rem .38rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 18px 42px #0f110f42}.fency-launcher:hover{transform:translateY(-3px);box-shadow:0 22px 48px #0f110f57}.fency-launcher>.fency-avatar{background:var(--brand-red);flex:0 0 45px;justify-content:center;align-items:center;width:45px;height:45px;padding:2px;display:flex;overflow:hidden}.fency-avatar img,.fency-mark img{object-fit:cover;object-position:center 24%;width:100%;height:100%;display:block}.fency-greeting{color:var(--white);flex-direction:column;margin-left:.7rem;display:flex}.fency-greeting strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.035em;text-transform:uppercase;font-size:1.08rem;font-weight:600;line-height:1}.fency-greeting small{color:#c5c7c1;letter-spacing:.16em;text-transform:uppercase;margin-top:.26rem;font-size:.48rem;font-weight:700}.fency-dialog{animation:fency-enter .32s var(--ease-out) both;background:var(--paper);border:1px solid var(--line-dark);z-index:111;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(430px,100vw - 3rem);height:min(720px,100dvh - 3rem);max-height:720px;display:grid;position:fixed;bottom:1.5rem;right:1.5rem;overflow:hidden;box-shadow:0 30px 90px #0f110f52}@keyframes fency-enter{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.fency-header{background:var(--ink);color:var(--white);grid-template-columns:52px 1fr auto auto;align-items:center;gap:.7rem;min-height:76px;padding:.8rem;display:grid}.fency-mark{background:var(--brand-red);justify-content:center;align-items:center;width:52px;height:52px;padding:2px;display:flex;position:relative;overflow:hidden}.fency-header>div{flex-direction:column;display:flex}.fency-header>div>strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.025em;text-transform:uppercase;font-size:1.4rem;font-weight:600;line-height:1}.fency-header>div>small{color:#c6c8c2;letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:.35rem;margin-top:.35rem;font-size:.48rem;font-weight:700;display:flex}.fency-header>div>small i{background:#5ecb79;border-radius:50%;width:6px;height:6px}.fency-header>button{color:#d4d6d0;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;padding:.65rem .35rem;font-size:.55rem;font-weight:700}.fency-header>button:hover{color:var(--white)}.fency-header>.fency-close{color:var(--white);border-left:1px solid #41433f;min-width:40px;min-height:44px;font-size:1.6rem;font-weight:400;line-height:1}.fency-messages{overscroll-behavior:contain;scroll-behavior:smooth;background:linear-gradient(#efeee9c2,#efeee9c2),radial-gradient(circle at 100% 0,#b322241f,#0000 45%);padding:1rem;overflow-y:auto}.fency-disclosure{border-bottom:1px solid var(--line);color:var(--muted);text-align:center;margin:0 0 1rem;padding:0 0 .85rem;font-size:.59rem;line-height:1.5}.fency-message{flex-direction:column;max-width:92%;margin-bottom:1rem;display:flex}.fency-message>span{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.35rem;font-size:.5rem;font-weight:800}.fency-message>p{background:var(--paper);border:1px solid var(--line);margin:0;padding:.85rem .95rem;font-size:.82rem;line-height:1.55}.fency-message.is-visitor{align-self:flex-end;align-items:flex-end;margin-left:auto}.fency-message.is-visitor>p{background:var(--ink);border-color:var(--ink);color:var(--white)}.fency-actions{flex-wrap:wrap;gap:.45rem;margin-top:.55rem;display:flex}.fency-actions button,.fency-actions a{background:var(--paper);color:var(--ink);cursor:pointer;border:1px solid #c5c3bb;justify-content:center;align-items:center;gap:.35rem;min-height:36px;padding:.55rem .7rem;font-size:.62rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.fency-actions button:hover,.fency-actions a:hover{background:var(--brand-red);border-color:var(--brand-red);color:var(--white)}.fency-input-row{background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr 48px;padding:.75rem;display:grid}.fency-input-row input{background:var(--ivory);border:1px solid var(--line);color:var(--ink);border-radius:0;outline:none;width:100%;min-height:48px;padding:0 .85rem;font-size:.78rem}.fency-input-row input:focus{border-color:var(--brand-red)}.fency-input-row>button{background:var(--brand-red);color:var(--white);cursor:pointer;border:0;min-height:48px;font-size:1.25rem}.fency-input-row>button:hover{background:var(--brand-red-dark)}.fency-footer{background:var(--paper);border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:38px;padding:.45rem .8rem;display:flex}.fency-footer a,.fency-footer span{color:var(--muted);font-size:.51rem;font-weight:700;line-height:1.3}.fency-footer a{color:var(--ink);text-decoration:none}.fency-prefill-note{background:var(--ink);color:var(--white);flex-direction:column;margin-bottom:1.5rem;padding:.9rem 1rem;display:flex}.fency-prefill-note strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.02em;text-transform:uppercase;font-size:1.1rem;font-weight:600}.fency-prefill-note span{color:#c7c9c3;margin-top:.2rem;font-size:.67rem;line-height:1.45}@media (max-width:680px){.fency-launcher{bottom:calc(75px + env(safe-area-inset-bottom));min-height:50px;padding:.3rem .65rem .3rem .3rem;right:.75rem}.fency-launcher>.fency-avatar{flex-basis:39px;width:39px;height:39px}.fency-greeting{margin-left:.55rem}.fency-greeting strong{font-size:.94rem}.fency-greeting small{font-size:.43rem}.fency-dialog{bottom:calc(72px + env(safe-area-inset-bottom));height:calc(100dvh - 84px - env(safe-area-inset-bottom));width:calc(100vw - 1rem);max-height:none;right:.5rem}.fency-header{grid-template-columns:46px 1fr auto auto;min-height:70px;padding:.7rem}.fency-mark{width:46px;height:46px}.fency-header>button{font-size:.5rem}.fency-messages{padding:.85rem}.fency-message{max-width:96%}.fency-message>p{font-size:.84rem}.fency-actions button,.fency-actions a{min-height:42px;padding:.65rem .75rem}.fency-input-row input{font-size:1rem}}@media (prefers-reduced-motion:reduce){.fency-dialog{animation:none}.fency-messages{scroll-behavior:auto}}.legacy-page{background:var(--ivory)}.legacy-hero{min-height:min(820px, calc(100svh - var(--header-height)));grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);display:grid}.legacy-hero-copy{background:linear-gradient(#f7f6f2f2,#f7f6f2f2),repeating-linear-gradient(90deg,#0000 0 calc(25% - 1px),#1517160d 25%);flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(5rem,8vw,9rem) clamp(1.4rem,6vw,7rem);display:flex}.legacy-hero-copy .breadcrumb{margin-bottom:clamp(3rem,7vw,6rem)}.legacy-hero h1,.gallery-page-hero h1{letter-spacing:-.035em;max-width:9ch;margin-bottom:2rem;font-size:clamp(4.5rem,7.1vw,8rem);line-height:.82}.legacy-lead{color:var(--ink-soft);max-width:620px;margin-bottom:2.4rem;font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.75}.legacy-hero-image{min-height:680px;position:relative;overflow:hidden}.legacy-hero-image:after{content:"";z-index:1;background:linear-gradient(#15171605 45%,#151716c2 100%);position:absolute;inset:0}.legacy-hero-image img{object-fit:cover;transition:transform 1.4s var(--ease-out)}.legacy-hero:hover .legacy-hero-image img{transform:scale(1.025)}.legacy-image-label{color:var(--white);z-index:2;display:grid;position:absolute;bottom:clamp(1.5rem,4vw,4rem);left:clamp(1.5rem,4vw,4rem)}.legacy-image-label span,.legacy-image-label small{letter-spacing:.15em;text-transform:uppercase;font-size:.66rem;font-weight:700}.legacy-image-label strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;margin-block:.5rem;font-size:clamp(2.6rem,4vw,4.8rem);font-weight:600;line-height:.95}.legacy-callout{background:var(--brand-red);color:var(--white);grid-template-columns:minmax(170px,.6fr) auto minmax(260px,1fr);align-items:center;gap:1.5rem;max-width:none;padding-block:clamp(2rem,4vw,3.5rem);display:grid}.legacy-callout p,.legacy-callout span{margin:0}.legacy-callout p{letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;font-weight:800}.legacy-callout strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:clamp(4rem,7vw,7rem);font-weight:600;line-height:.75}.legacy-callout span{border-left:1px solid #ffffff6b;padding-left:clamp(1.5rem,4vw,4rem);font-size:1rem;line-height:1.7}.legacy-content-section{padding-block:clamp(6rem,11vw,11rem)}.legacy-content-section.is-dark{background:var(--ink);color:var(--white)}.legacy-content-section.is-dark .eyebrow,.legacy-content-section.is-dark .legacy-section-heading>p{color:#b7bab5}.legacy-section-heading{grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr);gap:2rem;display:grid}.legacy-section-heading .eyebrow{grid-column:1/-1;margin-bottom:-.5rem}.legacy-section-heading h2{max-width:10ch}.legacy-section-heading>p{color:var(--muted);align-self:end;max-width:620px;margin-bottom:.35rem;font-size:clamp(1rem,1.25vw,1.15rem)}.legacy-card-grid{border-left:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(4rem,8vw,8rem);display:grid}.is-dark .legacy-card-grid{border-color:var(--line-dark)}.legacy-card-grid article{border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-top:1px solid var(--line);flex-direction:column;min-height:390px;padding:clamp(1.8rem,3vw,3.2rem);display:flex}.is-dark .legacy-card-grid article{border-color:var(--line-dark)}.legacy-card-grid article>span{color:var(--brand-red);letter-spacing:.15em;margin-bottom:auto;font-size:.68rem;font-weight:800}.legacy-card-grid h3{margin-bottom:1.25rem;font-size:clamp(2.2rem,3.4vw,3.6rem)}.legacy-card-grid p{color:var(--muted);margin-bottom:0}.is-dark .legacy-card-grid p{color:#b7bab5}.legal-pending{border-left:8px solid var(--brand-red);background:#efe2d8;margin-block:clamp(5rem,9vw,9rem);padding-block:clamp(3rem,6vw,5rem)}.legal-pending>span{color:var(--brand-red);letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;font-weight:800}.legal-pending h2{max-width:13ch;margin-block:1.4rem;font-size:clamp(3rem,5vw,5.5rem)}.legal-pending p{color:var(--ink-soft);max-width:760px;margin-bottom:0}.legal-document{grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);align-items:start;gap:clamp(2.5rem,6vw,7rem);max-width:none;padding-block:clamp(5rem,9vw,9rem);display:grid}.legal-document-intro{top:calc(var(--header-height) + 2rem);position:sticky}.legal-document-intro h2{max-width:9ch;margin-bottom:1.5rem;font-size:clamp(3.4rem,5vw,5.8rem)}.legal-document-intro>p:not(.eyebrow){color:var(--muted);max-width:520px;line-height:1.75}.legal-document-intro .button-row{flex-direction:column;align-items:stretch;max-width:340px;margin-top:2.2rem}.legal-document-preview{border:1px solid var(--line);background:#e6e4de;min-height:min(82vw,1020px);position:relative;overflow:hidden}.legal-document-preview:before{background:var(--brand-red);content:"";z-index:2;height:4px;position:absolute;top:-1px;left:-1px;right:-1px}.legal-document-preview iframe{border:0;width:100%;height:min(82vw,1020px);display:block}.legacy-page-cta{background:var(--stone);border-top:1px solid var(--line);padding-block:clamp(6rem,11vw,11rem)}.legacy-page-cta h2{max-width:11ch;font-size:clamp(4rem,7vw,7.5rem)}.legacy-page-cta p{color:var(--muted);max-width:660px;margin-block:2rem;font-size:clamp(1rem,1.25vw,1.15rem)}.location-proof{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;display:grid}.location-proof>div{border-right:1px solid var(--line);align-items:baseline;gap:1.25rem;padding-block:clamp(2.5rem,5vw,4rem);display:flex}.location-proof>div:not(:first-child){padding-left:clamp(1.5rem,4vw,4rem)}.location-proof>div:last-child{border-right:0}.location-proof strong{color:var(--brand-red);font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;font-size:clamp(2.7rem,4.5vw,5rem);font-weight:600;line-height:.8}.location-proof span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800}.location-services,.location-projects,.location-faq{padding-block:clamp(7rem,12vw,12rem)}.location-projects{border-bottom:1px solid var(--line)}.location-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block:clamp(3.5rem,7vw,7rem) 2rem;display:grid}.location-project-grid figure{background:var(--paper);border:1px solid var(--line);margin:0}.location-project-grid figure>div{aspect-ratio:1/.84;position:relative;overflow:hidden}.location-project-grid img{object-fit:cover;transition:transform .8s var(--ease-out)}.location-project-grid figure:hover img{transform:scale(1.035)}.location-project-grid figcaption{min-height:150px;padding:1.25rem 1.35rem 1.4rem;display:grid}.location-project-grid figcaption span,.location-project-grid figcaption small{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;font-size:.62rem;font-weight:800}.location-project-grid figcaption strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;margin-block:.7rem;font-size:clamp(1.7rem,2.5vw,2.7rem);font-weight:600;line-height:.95}.location-review{background:var(--brand-red);color:var(--white);max-width:none;padding-block:clamp(5rem,9vw,9rem)}.location-review .eyebrow{color:#ffffffb8}.location-review blockquote{max-width:980px;margin:clamp(2rem,4vw,4rem) 0 0;position:relative}.location-review blockquote>span{color:#ffffff47;font-family:Georgia,serif;font-size:clamp(6rem,13vw,13rem);line-height:.65;position:absolute;top:0;left:-.08em}.location-review blockquote>p{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;z-index:1;margin:0;font-size:clamp(3rem,6vw,6.8rem);font-weight:600;line-height:.9;position:relative}.location-review footer{gap:.3rem;margin-top:2rem;display:grid}.location-review footer strong,.location-review footer small{letter-spacing:.14em;text-transform:uppercase;font-size:.68rem}.location-review footer small{color:#ffffffb3}.location-faq{border-top:1px solid var(--line)}.location-faq-list{border-top:1px solid var(--line);margin-top:clamp(3.5rem,7vw,7rem)}.location-faq-list details{border-bottom:1px solid var(--line)}.location-faq-list summary{cursor:pointer;font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;grid-template-columns:auto 1fr;align-items:center;gap:clamp(1rem,3vw,3rem);padding-block:clamp(1.5rem,3vw,2.5rem);font-size:clamp(1.9rem,3.4vw,3.8rem);font-weight:600;line-height:.95;list-style:none;display:grid}.location-faq-list summary::-webkit-details-marker{display:none}.location-faq-list summary:after{color:var(--brand-red);content:"+";font-family:var(--font-body), Arial, sans-serif;grid-column:3;font-size:1.4rem}.location-faq-list details[open] summary:after{content:"−"}.location-faq-list summary>span{color:var(--brand-red);font-family:var(--font-body), Arial, sans-serif;letter-spacing:.14em;font-size:.66rem;font-weight:800}.location-faq-list details>p{color:var(--muted);max-width:760px;margin:0;padding:0 0 clamp(2rem,4vw,3.5rem) calc(clamp(1rem,3vw,3rem) + 2.4rem);line-height:1.75}.legacy-content-section,.location-services,.location-projects,.location-review,.location-faq,.project-planning,.gallery-page-grid{contain-intrinsic-size:auto 900px;content-visibility:auto}.location-service-grid{border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(4rem,8vw,8rem);display:grid}.location-service-grid>a{border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-top:1px solid var(--line);min-height:320px;transition:background-color .3s ease, color .3s ease, transform .42s var(--ease-out);flex-direction:column;padding:clamp(1.5rem,2.5vw,2.6rem);text-decoration:none;display:flex}.location-service-grid>a:nth-child(n+5){border-top:0}.location-service-grid>a:hover{background:var(--brand-red);color:var(--white);transform:translateY(-7px)}.location-service-grid>a>span{color:var(--brand-red);letter-spacing:.15em;margin-bottom:auto;font-size:.68rem;font-weight:800}.location-service-grid>a:hover>span,.location-service-grid>a:hover p{color:var(--white)}.location-service-grid h3{margin-bottom:.9rem;font-size:clamp(1.9rem,2.5vw,2.7rem)}.location-service-grid p{color:var(--muted);margin-bottom:1.4rem;font-size:.87rem;line-height:1.6}.location-service-grid i{font-size:1.5rem;font-style:normal}.gallery-page-hero{padding-block:clamp(7rem,13vw,13rem) clamp(5rem,9vw,9rem)}.gallery-page-hero .breadcrumb{margin-bottom:clamp(4rem,8vw,8rem)}.gallery-page-hero h1{max-width:10ch}.gallery-page-hero>p:last-child{color:var(--muted);max-width:700px;font-size:clamp(1rem,1.3vw,1.2rem)}.project-video-showcase{background:var(--ink);color:var(--white);padding-block:clamp(4.5rem,8vw,8rem)}.project-video-heading{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end;gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(3rem,6vw,5.5rem);display:grid}.project-video-heading .eyebrow{color:#b9bbb7}.project-video-heading h2{color:var(--white);max-width:9ch;margin:0;font-size:clamp(3.1rem,6.5vw,7rem);line-height:.9}.project-video-heading>p{color:#bfc1bc;max-width:560px;margin:0;font-size:clamp(.95rem,1.2vw,1.12rem);line-height:1.75}.project-video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.project-video-card{background:#1a1c1b;border:1px solid #303330;flex-direction:column;min-width:0;display:flex;overflow:hidden}.project-video-frame{aspect-ratio:4/3;background:#090a09;position:relative;overflow:hidden}.project-video-frame video{object-fit:cover;height:100%;transition:transform .8s var(--ease-out);width:100%;display:block}.project-video-card:not(.is-playing):hover video{transform:scale(1.035)}.project-video-card.is-playing video{object-fit:contain}.project-video-play{color:var(--white);cursor:pointer;z-index:1;background:linear-gradient(#0809080a,#0809089e);border:0;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:1rem;display:flex;position:absolute;inset:0}.project-video-play>span{background:var(--brand-red);height:66px;transition:background-color .26s ease, transform .35s var(--ease-out);border:1px solid #ffffffb3;border-radius:50%;justify-content:center;align-items:center;width:66px;display:flex;box-shadow:0 18px 40px #00000047}.project-video-play>span:after{border-bottom:8px solid #0000;border-left:12px solid var(--white);content:"";border-top:8px solid #0000;margin-left:4px}.project-video-play:hover>span,.project-video-play:focus-visible>span{background:#e03535;transform:scale(1.08)}.project-video-play small{letter-spacing:.16em;text-transform:uppercase;font-size:.62rem;font-weight:800}.project-video-category{background:var(--paper);color:var(--ink);letter-spacing:.14em;text-transform:uppercase;z-index:2;padding:.75rem .9rem;font-size:.58rem;font-weight:800;position:absolute;top:0;left:0}.project-video-copy{grid-template-columns:auto 1fr;gap:1rem;padding:1.4rem;display:grid}.project-video-copy>span{color:var(--brand-red);letter-spacing:.12em;padding-top:.3rem;font-size:.65rem;font-weight:900}.project-video-copy h3{color:var(--white);margin:0 0 .65rem;font-size:clamp(1.45rem,2vw,2rem);line-height:1}.project-video-copy p{color:#aeb1ac;margin:0;font-size:.78rem;line-height:1.55}.gallery-still-heading{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:1rem;padding-block:clamp(6rem,11vw,10rem) clamp(3rem,6vw,5rem);display:grid}.gallery-still-heading .eyebrow{grid-column:1/-1;margin-bottom:.5rem}.gallery-still-heading h2{max-width:10ch;margin:0;font-size:clamp(3rem,5vw,5.5rem);line-height:.94}.gallery-still-heading>p{color:var(--muted);align-self:end;max-width:520px;margin:0;line-height:1.7}.gallery-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-bottom:clamp(7rem,12vw,12rem);display:grid}.gallery-page-grid figure{aspect-ratio:1/1.05;margin:0;position:relative;overflow:hidden}.gallery-page-grid figure:first-child,.gallery-page-grid figure:nth-child(6){grid-column:span 2}.gallery-page-grid img{object-fit:cover;transition:transform .9s var(--ease-out)}.gallery-page-grid figure:hover img{transform:scale(1.045)}.gallery-page-grid figcaption{background:var(--paper);letter-spacing:.13em;text-transform:uppercase;z-index:2;padding:1rem 1.2rem;font-size:.7rem;font-weight:800;position:absolute;bottom:0;left:0}.project-planning{border-top:1px solid var(--line);padding-block:clamp(7rem,12vw,12rem)}.project-planning-grid{border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(4rem,8vw,8rem);display:grid}.project-planning-grid>a{border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-top:1px solid var(--line);min-height:390px;transition:background-color .3s ease, color .3s ease, transform .42s var(--ease-out);flex-direction:column;padding:clamp(1.6rem,2.6vw,2.8rem);text-decoration:none;display:flex}.project-planning-grid>a:hover{background:var(--ink);color:var(--white);transform:translateY(-7px)}.project-planning-grid>a>span{color:var(--brand-red);letter-spacing:.15em;margin-bottom:auto;font-size:.68rem;font-weight:800}.project-planning-grid small{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.8rem;font-size:.62rem;font-weight:800}.project-planning-grid h3{margin-bottom:1rem;font-size:clamp(2.2rem,3vw,3.25rem)}.project-planning-grid p{color:var(--muted);font-size:.88rem;line-height:1.65}.project-planning-grid i{color:var(--brand-red);margin-top:1rem;font-size:1.5rem;font-style:normal}.project-planning-grid>a:hover small,.project-planning-grid>a:hover p{color:#c5c7c2}@media (max-width:1050px){.location-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-service-grid>a:nth-child(n+3){border-top:0}.gallery-page-grid,.project-video-grid,.project-planning-grid,.location-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-planning-grid>a:nth-child(n+3){border-top:0}}@media (max-width:940px){.legacy-hero,.legal-document{grid-template-columns:1fr}.legal-document-intro{position:static}.legal-document-intro .button-row{max-width:520px}.legal-document-preview,.legal-document-preview iframe{height:118vw;min-height:760px}.legacy-hero-copy{min-height:calc(100svh - var(--header-height));padding:clamp(5rem,11vw,7rem) clamp(1.4rem,7vw,4rem)}.legacy-hero h1{font-size:clamp(4.2rem,13vw,7.3rem)}.legacy-hero-image{min-height:66vw}.legacy-callout{grid-template-columns:minmax(140px,.5fr) auto minmax(220px,1fr)}.legacy-section-heading{grid-template-columns:1fr}.legacy-section-heading .eyebrow{grid-column:auto}.legacy-card-grid{grid-template-columns:1fr}.legacy-card-grid article{border-top:0;min-height:300px}.legacy-card-grid article:first-child{border-top:1px solid var(--line)}.is-dark .legacy-card-grid article:first-child{border-color:var(--line-dark)}.location-proof{grid-template-columns:1fr}.location-proof>div,.location-proof>div:not(:first-child){border-bottom:1px solid var(--line);border-right:0;padding-left:0}.location-proof>div:last-child{border-bottom:0}}@media (max-width:680px){.legacy-hero-copy .breadcrumb{margin-bottom:3rem}.legacy-hero h1,.gallery-page-hero h1{font-size:clamp(3.8rem,17vw,5.8rem)}.legacy-hero-image{min-height:105vw}.legacy-hero .button-row,.legacy-page-cta .button-row{flex-direction:column;align-items:stretch}.legacy-hero .button,.legacy-page-cta .button{justify-content:center}.legacy-callout{grid-template-columns:1fr;align-items:flex-start}.legacy-callout span{border-top:1px solid #ffffff6b;border-left:0;padding-top:1.5rem;padding-left:0}.legacy-card-grid article{min-height:280px}.location-proof>div{flex-direction:column;align-items:flex-start;gap:.8rem}.location-service-grid,.location-project-grid,.gallery-page-grid,.project-video-grid,.project-planning-grid,.project-video-heading,.gallery-still-heading{grid-template-columns:1fr}.project-video-heading>p,.gallery-still-heading>p{align-self:auto}.project-video-copy{padding:1.2rem}.location-project-grid figcaption{min-height:132px}.location-faq-list details>p{padding-left:0}.location-service-grid>a,.location-service-grid>a:nth-child(n+3){border-top:0;min-height:270px}.location-service-grid>a:first-child{border-top:1px solid var(--line)}.gallery-page-grid figure:first-child,.gallery-page-grid figure:nth-child(6){grid-column:auto}.project-planning-grid>a,.project-planning-grid>a:nth-child(n+3){border-top:0;min-height:300px}.project-planning-grid>a:first-child{border-top:1px solid var(--line)}}.mobile-nav-intro,.nav-toggle-mark,.mobile-action-bar,.mobile-rail-hint{display:none}.optional-label{color:var(--muted);float:right;letter-spacing:.08em;font-size:.54rem;font-weight:600}.form-success-actions{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.form-success-fallback{border-top:1px solid var(--line);padding-top:1.25rem;font-size:.72rem;margin-top:1.8rem!important;margin-bottom:0!important}.form-success-fallback a{color:var(--ink);font-weight:700}.hero-image:before{animation-duration:.72s;animation-delay:40ms}.hero-image>img{animation-duration:1s;animation-delay:60ms}.motion-ready [data-reveal]{filter:blur(4px);transition:opacity .62s var(--ease-out) var(--reveal-delay,0s), translate .62s var(--ease-out) var(--reveal-delay,0s), filter .62s var(--ease-out) var(--reveal-delay,0s), box-shadow .4s var(--ease-out), transform .4s var(--ease-out), padding .4s var(--ease-out);translate:0 30px}.motion-ready [data-reveal=left]{translate:-30px}.motion-ready [data-reveal=right]{translate:30px}.motion-ready [data-reveal=clip]{transition:clip-path .68s var(--ease-out) var(--reveal-delay,0s), translate .68s var(--ease-out) var(--reveal-delay,0s), box-shadow .4s var(--ease-out), transform .4s var(--ease-out);translate:0 22px}.motion-ready .hero .eyebrow{animation-duration:.48s;animation-delay:40ms}.motion-ready .hero-title-line{animation-duration:.65s}.motion-ready .hero-title-wrap:first-child .hero-title-line{animation-delay:60ms}.motion-ready .hero-title-wrap:nth-child(2) .hero-title-line{animation-delay:.1s}.motion-ready .hero-title-wrap:nth-child(3) .hero-title-line{animation-delay:.14s}.motion-ready .hero-tagline{animation-duration:.52s;animation-delay:.18s}.motion-ready .hero-lead{animation-duration:.52s;animation-delay:.22s}.motion-ready .hero .button-row{animation-duration:.52s;animation-delay:.26s}.motion-ready .hero-proof{animation-duration:.52s;animation-delay:.3s}.motion-ready .hero-image-caption{animation-duration:.56s;animation-delay:.3s}@media (max-width:940px){html.navigation-open,html.navigation-open body{overscroll-behavior:none;overflow:hidden}.navigation-open .site-header{z-index:90}.navigation-open .fency-shell{display:none}.has-scrolled .site-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffefafa}.site-nav{clip-path:inset(0 0 0 100%);bottom:auto;opacity:0;overscroll-behavior:contain;pointer-events:none;visibility:hidden;height:100dvh;max-height:none;transition:clip-path .26s,opacity .18s,visibility 0s linear .26s;inset:0 0 auto auto;transform:none}.site-nav.is-open{clip-path:inset(0);opacity:1;pointer-events:auto;visibility:visible;transition:clip-path .26s,opacity .18s,visibility linear;transform:none}.mobile-nav-intro{border-bottom:1px solid var(--line);flex-direction:column;margin-bottom:.4rem;padding-bottom:1.2rem;display:flex}.mobile-nav-intro span{color:var(--muted);letter-spacing:.17em;text-transform:uppercase;font-size:.58rem;font-weight:800}.mobile-nav-intro strong{font-family:var(--font-heading), Arial, sans-serif;text-transform:uppercase;margin-top:.35rem;font-size:2.65rem;font-weight:600;line-height:.95}.nav-toggle-mark{color:var(--brand-red);font-family:var(--font-body), Arial, sans-serif;font-size:1.45rem;font-style:normal;font-weight:400;line-height:1;display:inline}.site-nav>a:not(.button),.nav-dropdown-trigger{min-height:58px}.hero h1{max-width:none}.slideshow-viewport{aspect-ratio:4/3;min-height:0}.motion-ready [data-reveal=left],.motion-ready [data-reveal=right]{translate:0 24px}.nav-dropdown-list a{min-height:52px}.menu-backdrop{z-index:60}}@media (max-width:680px){:root{--header-height:74px}[id]{scroll-margin-top:calc(var(--header-height) + .75rem)}h2{font-size:clamp(3rem,14.5vw,4.3rem)}.section-shell{padding-inline:1.25rem}.site-header{height:var(--header-height);padding-inline:1rem}.has-scrolled .site-header{height:68px}.brand{gap:.55rem}.brand img{width:57px;height:46px}.has-scrolled .brand img{width:52px;height:42px}.brand strong{font-size:1.18rem}.brand small{margin-top:.25rem;font-size:.5rem}.site-nav{max-width:none;padding:5.7rem 1.25rem calc(6.5rem + env(safe-area-inset-bottom));border-left:0;width:100vw}.site-nav>a:not(.button),.nav-dropdown-trigger{padding-block:.75rem;font-size:clamp(1.85rem,8.5vw,2.5rem)}.site-nav>a.mobile-phone{align-items:center;margin-top:1.5rem;font-size:.72rem;display:flex}.nav-dropdown-shell.is-open .nav-dropdown-menu{padding-bottom:1rem}.nav-dropdown-list a strong{font-size:.7rem}.nav-cta{min-height:52px}.mobile-action-bar{background:var(--ink);padding:7px 8px calc(7px + env(safe-area-inset-bottom));z-index:95;grid-template-columns:1fr 1fr;transition:transform .22s;display:grid;position:fixed;bottom:0;left:0;right:0;transform:translateY(0);box-shadow:0 -12px 34px #0e100e33}.navigation-open .mobile-action-bar{transform:translateY(115%)}.mobile-action-bar a{color:var(--white);flex-direction:column;justify-content:center;align-items:center;min-height:50px;text-decoration:none;display:flex}.mobile-action-bar a+a{background:var(--brand-red)}.mobile-action-bar span{color:#aeb1aa;letter-spacing:.13em;text-transform:uppercase;font-size:.5rem;font-weight:700;line-height:1}.mobile-action-bar a+a span{color:#f2d9d6}.mobile-action-bar strong{font-family:var(--font-heading), Arial, sans-serif;letter-spacing:.025em;text-transform:uppercase;margin-top:.25rem;font-size:1.05rem;font-weight:600}.site-footer{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}.hero-copy{padding:2.8rem 1.25rem 2.4rem}.hero .eyebrow{margin-bottom:1rem}.hero h1{max-width:none;margin-bottom:1.35rem;font-size:clamp(3.15rem,14vw,4.25rem);line-height:.79}.hero h1 .hero-tagline{margin-top:1rem;font-size:.43em}.hero-lead{font-size:.94rem;line-height:1.62}.hero .button-row{grid-template-columns:1.18fr .82fr;gap:.65rem;margin-top:1.45rem;display:grid}.hero .button{text-align:center;justify-content:center;min-height:50px;padding-inline:.65rem;font-size:.56rem}.hero-proof{grid-template-columns:auto 1fr;gap:.55rem 1rem;margin-top:1.7rem;padding-top:.95rem;font-size:.53rem;display:grid}.hero-proof span:not(:last-child):after{display:none}.hero-proof span:last-child{grid-column:1/-1}.hero-image{min-height:76vw}.hero-image:before{animation-duration:.36s;animation-delay:0s}.hero-image>img{will-change:auto;animation-duration:.56s;animation-delay:0s;transform:scale(1.035)}.hero:hover .hero-image>img{transform:scale(1.035)}.hero-image-caption{bottom:1.25rem;left:1.25rem}.hero-image-caption strong{font-size:1.8rem}.hero-slideshow-toolbar{top:1rem;right:1rem}.hero-slideshow-toolbar button{min-width:44px;min-height:44px}.hero-slideshow-toolbar>span{min-width:64px}.hero-slideshow-toolbar .hero-slideshow-play{min-width:68px;padding-inline:.6rem}.motion-ready [data-reveal]{filter:none;transition:opacity .42s var(--ease-out) var(--reveal-delay,0s), translate .42s var(--ease-out) var(--reveal-delay,0s);translate:0 18px}.motion-ready [data-reveal=left],.motion-ready [data-reveal=right]{translate:0 18px}.motion-ready [data-reveal=clip]{transition:clip-path .5s var(--ease-out) var(--reveal-delay,0s), translate .5s var(--ease-out) var(--reveal-delay,0s);translate:0 14px}.motion-ready .hero .eyebrow,.motion-ready .hero-title-line,.motion-ready .hero-tagline,.motion-ready .hero-lead,.motion-ready .hero .button-row,.motion-ready .hero-proof,.motion-ready .hero-image-caption{animation-duration:.42s}.intro{padding-top:5.5rem;padding-bottom:5.5rem}.section-number{margin-bottom:2rem}.intro-detail{margin-top:2.25rem}.services,.projects{padding-bottom:5.5rem}.section-heading{gap:1.6rem;padding-top:1.5rem}.mobile-rail-hint{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:2.4rem 0 1rem;font-size:.58rem;font-weight:800;display:flex}.mobile-rail-hint span{color:var(--brand-red);font-size:1rem}.service-grid,.project-grid,.featured-city-grid,.project-planning-grid{margin-inline:-1.25rem;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;border-left:0;grid-template-columns:none;grid-auto-columns:82vw;grid-auto-flow:column;gap:.9rem;margin-top:0;padding:0 1.25rem 1rem;scroll-padding-inline:1.25rem;display:grid;overflow-x:auto}.service-grid::-webkit-scrollbar{display:none}.project-grid::-webkit-scrollbar{display:none}.featured-city-grid::-webkit-scrollbar{display:none}.project-planning-grid::-webkit-scrollbar{display:none}.service-card,.project-grid figure,.featured-city-card,.project-planning-grid>a{scroll-snap-align:start;scroll-snap-stop:always}.service-card-copy{min-height:235px;padding:1.5rem}.service-card-copy>span{margin-bottom:1.25rem}.service-card:hover,.project-grid figure:hover,.featured-city-card:hover,.project-planning-grid>a:hover{box-shadow:none;transform:none}.statement,.statement-copy{min-height:66svh}.statement-copy{padding-top:5rem;padding-bottom:4rem}.process{gap:3.5rem;padding-top:5.5rem;padding-bottom:5.5rem}.process-intro>p:last-child{margin-top:1.4rem}.process-list li{padding:2rem 0 2.25rem}.project-archive-intro{margin-top:4.5rem}.project-grid figure,.project-grid .project-wide{aspect-ratio:.9;grid-column:auto}.project-grid figcaption{font-size:1.8rem;bottom:1.25rem;left:1.25rem}.slideshow-viewport{aspect-ratio:4/4.6;min-height:0}.slideshow-caption{bottom:2rem}.slideshow-caption h3{font-size:clamp(2.35rem,10.5vw,3.45rem)}.slideshow-caption p{display:none}.slideshow-controls{min-height:64px}.slideshow-play{min-width:68px}.service-areas{padding-top:5.5rem;padding-bottom:5.5rem}.featured-city-grid{border-top:0}.featured-city-card,.featured-city-card:nth-child(odd){border:1px solid var(--line);background:#fffefac2;min-height:340px;padding:1.5rem}.featured-city-meta{margin-bottom:1.8rem}.featured-city-card h3{font-size:clamp(2rem,9vw,2.7rem)}.featured-city-card>p,.featured-city-card ul,.featured-city-card:nth-child(n+7){display:none}.complete-area-directory{margin-inline:-1.25rem;margin-top:3.25rem}.project-planning{padding-block:5.5rem}.project-planning-grid>a,.project-planning-grid>a:nth-child(n+3),.project-planning-grid>a:first-child{background:var(--paper);border:1px solid var(--line);min-height:250px;padding:1.5rem}.project-planning-grid>a p,.project-planning-grid>a:nth-child(n+5){display:none}.reviews{gap:2.5rem;padding-top:4.5rem;padding-bottom:5.5rem}.review-grid blockquote{padding-block:1.8rem}.quote-image{min-height:68vw}.quote-image img{object-position:center 58%;will-change:auto;transform:scale(1.045)}.quote-copy{padding:4.25rem 1.25rem 5rem}.quote-copy>p:not(.eyebrow){margin:1.4rem 0 2rem}.quote-form{padding:1.25rem}.quote-form:focus-within{transform:none;box-shadow:0 14px 34px #181a1814}.quote-form label{margin-bottom:.85rem}.quote-form input,.quote-form select{min-height:52px;font-size:1rem}.quote-form textarea{min-height:112px;font-size:1rem}.estimate-page-shell{grid-template-columns:1fr;grid-template-areas:"intro""form""contact";gap:1.5rem;padding-block:1.5rem 5rem}.estimate-page-intro .breadcrumb{margin-bottom:1.5rem}.estimate-page-intro .eyebrow{margin-bottom:1rem}.estimate-page-intro h1{max-width:9ch;font-size:clamp(3rem,14vw,4.75rem)}.estimate-page-intro>p:last-child{margin-top:1.1rem;font-size:.96rem;line-height:1.6}.estimate-form-heading{padding:1.4rem 1.25rem}.estimate-form-heading h2{font-size:clamp(2rem,10vw,3rem)}.estimate-form-heading>p:last-child{font-size:.78rem}.estimate-contact-panel{margin-top:1rem}.button-block{min-height:54px}.form-note{line-height:1.55}.form-success{padding:1.6rem}.form-success-actions{flex-direction:column;align-items:stretch}.form-success-actions .button,.form-success-actions .text-link{justify-content:center;width:100%}.footer-main{gap:2.5rem 1.5rem}.footer-brand{margin-bottom:.5rem}.legacy-hero-copy{min-height:auto;padding:3.75rem 1.25rem}.legacy-hero h1,.gallery-page-hero h1{font-size:clamp(3.45rem,15vw,4.9rem)}.legacy-hero-image{min-height:76vw}.legal-document-preview,.legal-document-preview iframe{height:135vw;min-height:520px}}@media (prefers-reduced-motion:reduce){.hero-image:before,.hero-image>img,.hero-slideshow-progress span,.motion-ready .hero .eyebrow,.motion-ready .hero-title-line,.motion-ready .hero-tagline,.motion-ready .hero-lead,.motion-ready .hero .button-row,.motion-ready .hero-proof,.motion-ready .hero-image-caption{animation:none!important}.motion-ready [data-reveal],.motion-ready [data-reveal=left],.motion-ready [data-reveal=right],.motion-ready [data-reveal=clip]{clip-path:none;filter:none;opacity:1;transition:none;translate:none}.service-grid,.project-grid,.featured-city-grid,.project-planning-grid{scroll-behavior:auto}}
