@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed-bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-variable.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--charcoal:#111315;--charcoal-2:#1b1e21;--orange:#f05a28;--silver:#8d969f;--white:#f3f0e8;--paper:#f7f4ed;--ink:#17191b;--line:#d8d4cb;--max:1180px;--pad:clamp(1.2rem,4vw,3rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65}body:has(.site-nav.open){overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea{font:inherit}button{color:inherit}.container{width:min(var(--max),calc(100% - var(--pad)*2));margin-inline:auto}.narrow{max-width:900px;margin-left:max(var(--pad),calc((100vw - var(--max))/2))}.skip-link{background:var(--white);color:var(--ink);z-index:1000;padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.eyebrow{color:var(--orange);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1rem;font-size:.76rem;font-weight:800}.display-title{letter-spacing:-.025em;text-transform:uppercase;margin:.2rem 0 1.5rem;font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(2.7rem,6vw,5.4rem);line-height:.93}.lead{color:#4e5357;max-width:730px;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65}.section{content-visibility:auto;contain-intrinsic-size:auto 850px;padding:clamp(5rem,9vw,8.5rem) 0}.muted-section{background:#ebe8e0}.site-header{background:var(--charcoal);height:82px;color:var(--white);z-index:100;border-bottom:1px solid #2d3033;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.brand-link img{width:205px}.site-nav{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:2rem;font-size:.86rem;font-weight:700;display:flex}.site-nav>a:not(.nav-cta){color:#c7c8c5;border-bottom:2px solid #0000;padding:1.9rem 0}.site-nav>a:hover,.site-nav>a.active{color:var(--white);border-color:var(--orange)}.nav-cta{background:var(--orange);color:#fff;padding:.8rem 1.1rem}.menu-toggle{text-transform:uppercase;letter-spacing:.12em;background:0 0;border:0;font-size:.75rem;display:none}.hero{background:var(--charcoal);color:var(--white);align-items:center;min-height:calc(100svh - 82px);display:flex;position:relative;overflow:hidden}.hero-grid{background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 85%);mask-image:linear-gradient(90deg,#000,#0000 85%)}.hero:after{content:"";border:2px solid var(--orange);border-radius:50%;width:45vw;height:45vw;position:absolute;bottom:-22vw;right:-14vw;box-shadow:0 0 0 5vw #f05a280a,0 0 0 10vw #f05a2806}.hero-content{z-index:2;padding-top:4rem;padding-bottom:4rem;position:relative}.hero h1,.page-hero h1,.project-hero h1,.not-found h1{text-transform:uppercase;letter-spacing:-.025em;margin:.5rem 0 1.8rem;font-family:Barlow Condensed,Impact,sans-serif;line-height:.88}.hero h1{max-width:1000px;font-size:clamp(4rem,10vw,8.4rem)}.hero h1 span,.project-hero h1 span{color:var(--orange)}.hero-copy{color:#c4c6c7;max-width:700px;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.7}.hero-word{color:#ffffff05;z-index:1;font-family:Barlow Condensed;font-size:28vw;line-height:1;position:absolute;top:46%;right:-.02em;transform:translateY(-50%)}.action-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2.2rem;display:flex}.action-row.compact{margin-top:1.5rem}.button{letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;min-height:50px;padding:.8rem 1.2rem;font-size:.78rem;font-weight:800;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--orange);color:#fff}.button-primary:hover{background:#d94c1d}.button-secondary{color:var(--white);border-color:#65696c}.button-ghost{color:#b8bbbd}.button-light{background:var(--white);color:var(--ink)}.button-dark{background:var(--charcoal);color:var(--white);margin-top:2rem}.hero-proof{border-top:1px solid #3a3d40;grid-template-columns:repeat(3,1fr);max-width:740px;margin-top:4.2rem;display:grid}.hero-proof>div{padding:1rem 1rem 0 0}.hero-proof strong{color:var(--orange);text-transform:uppercase;font-family:Barlow Condensed;font-size:1.5rem;display:block}.hero-proof span{color:#9ca0a3;font-size:.8rem}.section-heading{max-width:700px;margin-bottom:3rem}.section-heading h2{text-transform:uppercase;margin:.2rem 0 1rem;font-family:Barlow Condensed;font-size:clamp(3rem,6vw,5.4rem);line-height:.93}.section-heading>p:last-child{color:#5e6366;max-width:620px}.service-grid{border-top:1px solid var(--line);grid-template-columns:repeat(12,1fr);display:grid}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-column:span 4;min-height:330px;padding:2rem;transition:all .25s;position:relative}.service-card:nth-child(3){border-right:0}.service-card:nth-child(4){grid-column:span 6}.service-card:nth-child(5){border-right:0;grid-column:span 6}.service-card:hover{background:var(--charcoal);color:var(--white);transform:translateY(-4px)}.service-number{color:var(--orange);font-family:Barlow Condensed;font-size:1.4rem}.service-card h2{text-transform:uppercase;margin:2.8rem 0 1rem;font-family:Barlow Condensed;font-size:2.4rem;line-height:1}.service-card p{color:#61666a;max-width:340px}.service-card:hover p{color:#b8bbbd}.text-link{color:var(--orange);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.5rem;font-size:.76rem;font-weight:800;display:inline-flex}.service-card .text-link{position:absolute;bottom:2rem;left:2rem}.dark-panel{background:var(--charcoal);color:var(--white);position:relative;overflow:hidden}.split{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(3rem,8vw,8rem);display:grid}.dark-panel .lead{color:#b9bcbe}.project-frame{background:linear-gradient(140deg,#f05a281f,#0000 35%),repeating-linear-gradient(135deg,#ffffff06 0 1px,#0000 1px 12px);border:1px solid #45494c;flex-direction:column;justify-content:flex-end;min-height:450px;padding:clamp(1.5rem,4vw,3rem);display:flex}.frame-label{text-transform:uppercase;letter-spacing:.08em;color:#c5c7c8;border:1px solid #6c7073;align-self:flex-start;padding:.4rem .6rem;font-size:.67rem}.project-specs{grid-template-columns:repeat(3,1fr);gap:1rem;margin:3rem 0 1rem;display:grid}.project-specs small,.project-meta small{color:var(--silver);text-transform:uppercase;font-size:.68rem;display:block}.project-specs strong,.project-meta strong{text-transform:uppercase;font-family:Barlow Condensed;font-size:1.3rem;display:block}.project-frame p{color:#aeb1b3;font-size:.85rem}.process-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.process-list li{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;align-items:start;padding:2rem 0;display:grid}.process-list>li>span{color:var(--orange);font-family:Barlow Condensed;font-size:2rem}.process-list h3{text-transform:uppercase;margin:0;font-family:Barlow Condensed;font-size:2rem}.process-list p{color:#666b6e;margin:.3rem 0 0}.gallery-preview{background:#e7e3db}.section-heading-row{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.proof-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.proof-slot{aspect-ratio:4/3;background:var(--charcoal);color:var(--white);flex-direction:column;justify-content:flex-end;padding:1.5rem;display:flex;position:relative;overflow:hidden}.proof-slot:before{content:"";background:#45484a;width:150%;height:1px;position:absolute;top:45%;left:-30%;transform:rotate(-35deg)}.proof-slot.has-image:before{z-index:1;background:linear-gradient(#0708090d 30%,#070809eb);width:auto;height:auto;inset:0;transform:none}.proof-slot img{object-fit:cover;width:100%;height:100%;transition:all .35s;position:absolute;inset:0}.proof-slot:hover img{transform:scale(1.04)}.proof-slot span{color:var(--orange);z-index:2;font-family:Barlow Condensed;font-size:1.5rem;position:absolute;top:1.2rem;left:1.2rem}.proof-slot strong{text-transform:uppercase;z-index:2;font-family:Barlow Condensed;font-size:1.8rem}.proof-slot small{color:#c2c5c7;z-index:2}.latest-project-section{background:var(--paper)}.latest-project-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.latest-project-media{background:var(--charcoal);border-bottom:6px solid var(--orange);grid-template-columns:1fr 1fr;gap:.8rem;padding:.8rem;display:grid}.latest-project-media a{min-width:0;display:block}.latest-project-media figure{background:#08090a;margin:0;position:relative;overflow:hidden}.latest-project-media img{aspect-ratio:4/3;object-fit:cover;width:100%;height:100%;transition:all .35s;display:block}.latest-project-media a:hover img{transform:scale(1.03)}.latest-project-media figcaption{color:#fff;text-transform:uppercase;letter-spacing:.06em;background:#111315e0;padding:.4rem .55rem;font-size:.65rem;font-weight:800;position:absolute;bottom:.7rem;left:.7rem}.owner-grid{grid-template-columns:250px 1fr 280px;align-items:center;gap:4rem;display:grid}.owner-portrait{background:var(--charcoal);border-bottom:6px solid var(--orange);margin:0;position:relative;overflow:hidden;box-shadow:0 18px 45px #11131524}.owner-portrait picture,.owner-portrait img{width:100%;height:100%;display:block}.owner-portrait img{object-fit:cover}.owner-portrait-home,.owner-portrait-about{aspect-ratio:4/5}.owner-portrait figcaption{color:#fff;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(#0000,#0a0c0de0);padding:2.5rem 1rem 1rem;font-size:.7rem;font-weight:750;position:absolute;bottom:0;left:0;right:0}.rating-card{border-left:3px solid var(--orange);padding-left:1.5rem}.rating{font-family:Barlow Condensed;font-size:5rem;line-height:1}.rating-card p{color:#666b6e;font-size:.85rem}.rating-card a{color:var(--orange);text-transform:uppercase;font-size:.75rem;font-weight:800}.location-section{background:var(--white)}.address-card{background:var(--orange);color:#fff;flex-direction:column;gap:.4rem;padding:3rem;font-style:normal;display:flex}.address-card span{text-transform:uppercase;letter-spacing:.12em;margin-bottom:1rem;font-size:.68rem}.address-card strong{text-transform:uppercase;font-family:Barlow Condensed;font-size:1.8rem}.address-card a{text-transform:uppercase;margin-top:2rem;font-size:.75rem;font-weight:800}.location-section .button-secondary{color:var(--ink);border-color:#6f7477}.location-section .button-ghost{color:var(--ink);border-color:#0000}.location-section .button-secondary:hover,.location-section .button-ghost:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--white)}.site-footer{color:#b8bbbd;background:#0c0e0f;padding:5rem 0 2rem}.footer-grid{grid-template-columns:1.6fr repeat(3,1fr);gap:3rem;display:grid}.footer-grid img{width:210px;margin-bottom:1rem}.footer-grid h2{color:var(--white);text-transform:uppercase;font-family:Barlow Condensed;font-size:1.4rem}.footer-grid a,.footer-grid address{margin:.5rem 0;font-size:.85rem;font-style:normal;display:block}.footer-grid a:hover{color:var(--orange)}.footer-bottom{text-transform:uppercase;letter-spacing:.08em;border-top:1px solid #292c2f;justify-content:space-between;margin-top:4rem;padding-top:1.5rem;font-size:.72rem;display:flex}.mobile-contact{display:none}.page-hero{background:var(--charcoal);color:var(--white);padding:clamp(6rem,11vw,10rem) 0;position:relative;overflow:hidden}.page-hero:after{content:"";border:1px solid #3f4346;width:40vw;height:40vw;position:absolute;top:-15vw;right:-8vw;transform:rotate(45deg)}.page-hero .narrow{z-index:1;position:relative}.page-hero h1{max-width:950px;font-size:clamp(3.8rem,9vw,7rem)}.page-hero .narrow>p:not(.eyebrow){color:#b9bcbe;max-width:730px;font-size:clamp(1rem,2vw,1.25rem)}.compact-hero{padding:5rem 0}.compact-hero h1{font-size:clamp(3.4rem,8vw,6.4rem)}.services-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr 60px;align-items:center;padding:2.5rem 1rem;transition:all .2s;display:grid}.service-row:hover{background:var(--charcoal);color:var(--white);padding-left:2rem}.service-row>span{color:var(--orange);font-family:Barlow Condensed;font-size:1.8rem}.service-row small{color:var(--orange);letter-spacing:.14em;font-size:.65rem}.service-row h2{text-transform:uppercase;margin:.3rem 0;font-family:Barlow Condensed;font-size:2.8rem;line-height:1}.service-row p{color:#666b6e;margin:0}.service-row:hover p{color:#b2b5b7}.service-row>b{color:var(--orange);font-size:2rem}.content-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.check-list{margin:2rem 0;padding:0;list-style:none}.check-list li{border-top:1px solid var(--line);padding:1rem 0 1rem 2rem;position:relative}.check-list li:last-child{border-bottom:1px solid var(--line)}.check-list li:before{content:"+";color:var(--orange);font-weight:800;position:absolute;left:0}.inspection-note{background:var(--charcoal);color:var(--white);border-top:5px solid var(--orange);padding:2rem}.inspection-note span{color:var(--orange);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:800}.inspection-note p{color:#c3c5c6}.step-grid{grid-template-columns:repeat(4,1fr);margin-top:3rem;display:grid}.step-card{border:1px solid #cbc7be;border-right:0;min-height:300px;padding:2rem}.step-card:last-child{border-right:1px solid #cbc7be}.step-card>span{color:var(--orange);font-family:Barlow Condensed;font-size:2rem}.step-card h3{text-transform:uppercase;margin:4rem 0 1rem;font-family:Barlow Condensed;font-size:2rem;line-height:1}.step-card p{color:#62676a;font-size:.9rem}.faq-grid{grid-template-columns:.8fr 1.2fr;gap:6rem;display:grid}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:1.4rem 0}summary{cursor:pointer;padding-right:2rem;font-weight:750;list-style:none;position:relative}summary:after{content:"+";color:var(--orange);font-size:1.5rem;position:absolute;right:0}details[open] summary:after{content:"−"}details p{color:#606568;max-width:700px}.cta-band{background:var(--orange);color:#fff;padding:4rem 0}.cta-band>.container{justify-content:space-between;align-items:center;gap:3rem;display:flex}.cta-band .eyebrow{color:var(--charcoal)}.cta-band h2{text-transform:uppercase;max-width:700px;margin:0;font-family:Barlow Condensed;font-size:clamp(2.5rem,5vw,4rem);line-height:.95}.cta-band .button-primary{background:var(--charcoal)}.cta-band .button-secondary{border-color:#fff}.cta-band .button-ghost{color:#fff}.gallery-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem;display:flex}.gallery-filters button{text-transform:capitalize;cursor:pointer;background:0 0;border:1px solid #c5c1b8;padding:.65rem .9rem}.gallery-filters button.active,.gallery-filters button:hover{background:var(--charcoal);color:#fff;border-color:var(--charcoal)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.gallery-card{background:var(--charcoal);text-align:left;cursor:pointer;border:0;padding:0;overflow:hidden}.gallery-media{position:relative;overflow:hidden;padding:0!important;display:block!important}.gallery-card img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:all .3s}.gallery-card:hover img{transform:scale(1.03)}.gallery-copy{color:#fff;flex-direction:column;min-height:170px;padding:1.2rem;display:flex}.gallery-card small{color:var(--orange);text-transform:uppercase}.gallery-card strong{text-transform:uppercase;font-family:Barlow Condensed;font-size:1.8rem}.gallery-card em{color:#aeb1b3;font-size:.82rem;font-style:normal}.video-badge,.stage-badge{z-index:2;background:var(--orange);color:#fff;text-transform:uppercase;letter-spacing:.08em;padding:.35rem .55rem;font-size:.65rem;font-style:normal;position:absolute;bottom:.7rem}.video-badge{right:.7rem}.stage-badge{background:var(--charcoal);left:.7rem}.stage-badge.after{background:var(--orange)}.gallery-empty{border-left:6px solid var(--orange);background:#e9e5dc;max-width:780px;margin:2rem auto;padding:clamp(2rem,6vw,5rem)}.gallery-empty>span{color:var(--orange);text-transform:uppercase;font-size:.7rem;font-weight:800}.gallery-empty h2{text-transform:uppercase;font-family:Barlow Condensed;font-size:clamp(2.5rem,5vw,4rem);line-height:1}.gallery-empty p{color:#5d6265}.lightbox{z-index:500;color:#fff;background:#050607f5;grid-template-columns:60px 1fr 60px;align-items:center;padding:3rem;display:grid;position:fixed;inset:0}.lightbox figure{text-align:center;max-height:90vh;margin:0}.lightbox img,.lightbox video{max-width:100%;max-height:75vh;margin:auto}.lightbox figcaption{justify-content:space-between;gap:1rem;margin-top:1rem;display:flex}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:1px solid #575b5e;padding:.7rem}.lightbox-close{position:absolute;top:1.5rem;right:1.5rem}.before-after{margin:2rem 0}.comparison-frame{aspect-ratio:4/3;background:#090a0b;position:relative;overflow:hidden}.comparison-frame>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.comparison-after{z-index:2}.comparison-label{z-index:4;background:var(--charcoal);color:#fff;text-transform:uppercase;letter-spacing:.08em;padding:.35rem .55rem;font-size:.66rem;font-weight:800;position:absolute;top:1rem}.comparison-label.before{left:1rem}.comparison-label.after{background:var(--orange);right:1rem}.comparison-line{z-index:3;background:#fff;width:3px;position:absolute;top:0;bottom:0;transform:translate(-50%);box-shadow:0 0 0 1px #0003}.before-after label{background:var(--charcoal);color:#fff;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:1rem;padding:.8rem 1rem;font-size:.7rem;display:flex}.before-after input{accent-color:var(--orange);flex:1}.media-pending{border-left:5px solid var(--orange);background:#e5e1d8;margin:3rem 0;padding:2rem}.media-pending>span{color:var(--orange);text-transform:uppercase;font-size:.7rem;font-weight:800}.media-pending h3{text-transform:uppercase;margin:.5rem 0;font-family:Barlow Condensed;font-size:2rem}.project-sidebar>a:last-child{color:var(--orange);margin-top:2rem;font-size:.75rem;font-weight:800;display:block}.project-hero{background:var(--charcoal);color:#fff;padding:8rem 0 4rem}.project-hero h1{font-size:clamp(4rem,10vw,8rem)}.project-meta{border-top:1px solid #45494c;grid-template-columns:repeat(3,1fr);max-width:700px;padding-top:1.5rem;display:grid}.article-grid{grid-template-columns:1fr 350px;align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.article-grid article{max-width:760px}.article-grid article h2{text-transform:uppercase;margin-top:3rem;font-family:Barlow Condensed;font-size:2.7rem;line-height:1}.article-grid article li{margin:.6rem 0}.case-study-grid{grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0;display:grid}.case-study-grid figure{background:var(--charcoal);color:#fff;margin:0}.case-study-grid img{aspect-ratio:4/3;object-fit:cover;width:100%}.case-study-grid figcaption{text-transform:uppercase;letter-spacing:.06em;padding:.8rem 1rem;font-size:.75rem}.project-sidebar{background:var(--charcoal);color:#fff;padding:2rem;position:sticky;top:110px}.project-sidebar>span{color:var(--orange);font-size:.7rem}.project-sidebar h2{text-transform:uppercase;font-family:Barlow Condensed;font-size:2.6rem;line-height:1}.project-sidebar p{color:#b8bbbd}.project-sidebar>a{color:var(--orange);margin-top:1.3rem;font-size:.75rem;font-weight:800;display:block}.story-hero h1{max-width:1100px}.story-hero h1 span{max-width:980px;display:inline-block}.story-hero .project-meta{gap:2rem;max-width:1000px}.story-date-note{color:#696e71;border-left:3px solid var(--orange);margin:1.5rem 0;padding-left:1rem;font-size:.82rem}.story-intro .inspection-note{font-size:.86rem;line-height:1.6}.story-container{max-width:1050px}.story-timeline{margin:0;padding:0;list-style:none;position:relative}.story-timeline:before{content:"";background:#c8c3b9;width:2px;position:absolute;top:15px;bottom:0;left:31px}.story-timeline>li{grid-template-columns:64px 1fr;gap:2rem;padding-bottom:clamp(4rem,8vw,7rem);display:grid;position:relative}.story-marker{z-index:2;background:var(--charcoal);color:#fff;border:5px solid var(--paper);border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:relative}.story-marker span{color:var(--orange);font-family:Barlow Condensed;font-size:1.25rem}.story-stage{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(2rem,6vw,5rem);display:grid}.story-stage-copy h2{text-transform:uppercase;margin:.25rem 0 1rem;font-family:Barlow Condensed;font-size:clamp(2.5rem,5vw,4rem);line-height:.95}.story-stage-copy>p:last-child{color:#5d6265}.story-stage figure{background:var(--charcoal);color:#fff;border-bottom:5px solid var(--orange);margin:0;overflow:hidden}.story-stage img,.story-stage video{aspect-ratio:4/3;object-fit:cover;background:#08090a;width:100%;max-height:620px;display:block}.story-stage figcaption{text-transform:uppercase;letter-spacing:.08em;color:#c2c5c7;padding:.75rem 1rem;font-size:.68rem}.story-next{background:var(--charcoal);color:#fff;padding:1.5rem 0}.story-next>.container{justify-content:space-between;gap:2rem;display:flex}.story-next a{color:var(--orange);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:800}.project-story-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.project-story-card{background:var(--charcoal);color:#fff;border-bottom:6px solid var(--orange);grid-template-columns:.9fr 1.1fr;min-height:380px;display:grid;overflow:hidden}.project-story-card img{object-fit:cover;width:100%;height:100%}.project-story-card>div{flex-direction:column;align-items:flex-start;padding:clamp(1.5rem,4vw,3rem);display:flex}.project-story-card h2{text-transform:uppercase;margin:.2rem 0;font-family:Barlow Condensed;font-size:clamp(2.3rem,4vw,3.5rem);line-height:.95}.project-story-card strong{color:#c0c3c4;font-size:.9rem;line-height:1.5}.project-story-card span{color:var(--orange);text-transform:uppercase;margin-top:auto;padding-top:2rem;font-size:.72rem;font-weight:800}.story-library-note{border-left:4px solid var(--orange);color:#62676a;max-width:780px;margin:3rem 0 0;padding-left:1rem}.owner-story{grid-template-columns:350px 1fr;align-items:center;gap:6rem;display:grid}.value-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.value-grid>div{border-top:4px solid var(--orange);background:var(--paper);padding:2rem}.value-grid span{color:var(--orange);font-family:Barlow Condensed;font-size:2rem}.value-grid h2{text-transform:uppercase;font-family:Barlow Condensed;font-size:2.3rem;line-height:1}.value-grid p{color:#62676a}.contact-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.estimate-form{flex-direction:column;gap:1.2rem;display:flex}.field-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.estimate-form label{text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:750}.estimate-form input,.estimate-form textarea{background:#fff;border:1px solid #c7c3ba;border-radius:0;width:100%;margin-top:.45rem;padding:.9rem;display:block}.estimate-form input:focus,.estimate-form textarea:focus{border-color:var(--orange);outline:3px solid #f05a2840}.estimate-form .button{align-self:flex-start}.form-note{color:#686d70;font-size:.76rem}.form-error{color:#a72d0b;font-weight:700}.contact-details{background:var(--charcoal);color:#fff;padding:2.5rem}.contact-details>div{border-bottom:1px solid #393d40;flex-direction:column;padding:1.5rem 0;display:flex}.contact-details small{color:var(--orange);text-transform:uppercase;letter-spacing:.12em}.contact-details a,.contact-details address{margin-top:.5rem;font-style:normal}.contact-details>div:first-child>a:first-of-type{font-family:Barlow Condensed;font-size:2.2rem}.hours-note{color:#9ca0a3;font-size:.8rem}.map-section iframe{filter:grayscale()contrast(1.05);border:0;width:100%;height:480px;display:block}.legal-copy{max-width:800px}.legal-copy h2{text-transform:uppercase;margin-top:2.5rem;font-family:Barlow Condensed;font-size:2.2rem}.legal-copy p{color:#555a5d}.legal-copy a{color:var(--orange);font-weight:700}.not-found{background:var(--charcoal);color:#fff;place-items:center;min-height:70vh;padding:5rem 0;display:grid}.not-found span{color:var(--orange);text-transform:uppercase;font-size:.75rem}.not-found h1{max-width:900px;font-size:clamp(4rem,10vw,8rem)}.not-found p{color:#b8bbbd}@media (width<=900px){.site-header{height:72px}.brand-link img{width:175px}.menu-toggle{color:#fff;align-items:center;gap:.5rem;display:flex}.menu-toggle i{background:var(--orange);width:25px;height:1px;display:block}.site-nav{background:var(--charcoal);padding:2rem var(--pad);flex-direction:column;align-items:stretch;gap:0;display:none;position:fixed;inset:72px 0 0}.site-nav.open{display:flex}.site-nav>a:not(.nav-cta){border-bottom:1px solid #33373a;padding:1.2rem 0}.nav-cta{text-align:center;margin-top:1rem}.hero{min-height:calc(100svh - 72px)}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 6}.service-card:nth-child(3){border-right:1px solid var(--line)}.service-card:nth-child(2n){border-right:0}.split,.content-grid,.faq-grid,.contact-grid,.article-grid,.latest-project-grid{grid-template-columns:1fr}.owner-grid{grid-template-columns:180px 1fr}.rating-card{grid-column:2}.owner-story{grid-template-columns:240px 1fr;gap:3rem}.step-grid{grid-template-columns:repeat(2,1fr)}.step-card:nth-child(2){border-right:1px solid #cbc7be}.footer-grid,.proof-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.proof-slot:last-child{grid-column:span 2}.cta-band>.container{display:block}.project-sidebar{position:static}.value-grid{grid-template-columns:1fr}.project-meta{max-width:100%}.story-stage,.project-story-grid{grid-template-columns:1fr}}@media (width<=620px){body{padding-bottom:58px}.container{width:min(var(--max),calc(100% - 2rem))}.narrow{margin-left:1rem;margin-right:1rem}.hero h1{font-size:3.6rem}.hero-copy{font-size:.95rem}.hero-proof{grid-template-columns:1fr;margin-top:2.5rem}.hero-proof>div{border-bottom:1px solid #323639;padding:1rem 0}.action-row{align-items:stretch}.action-row .button{flex:100%}.button-ghost{border:1px solid #65696c}.service-grid{display:block}.service-card{min-height:300px;display:block;border-right:0!important}.section-heading-row{display:block}.section-heading-row>.text-link{margin-bottom:2rem}.proof-grid,.gallery-grid,.case-study-grid,.latest-project-media{grid-template-columns:1fr}.proof-slot:last-child{grid-column:auto}.owner-grid,.owner-story{grid-template-columns:1fr}.owner-portrait-home{width:min(250px,72vw)}.owner-portrait-about{width:min(350px,100%)}.rating-card{grid-column:auto}.project-specs,.project-meta{grid-template-columns:1fr}.process-list li{grid-template-columns:55px 1fr}.step-grid{grid-template-columns:1fr}.step-card{border-right:1px solid #cbc7be}.service-row{grid-template-columns:45px 1fr 25px;padding:2rem 0}.service-row h2{font-size:2.1rem}.service-row p{font-size:.85rem}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{margin:.3rem 0;display:block}.mobile-contact{z-index:200;grid-template-columns:.7fr 1.3fr;height:58px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-contact a{background:var(--charcoal);color:#fff;text-transform:uppercase;place-items:center;font-size:.72rem;font-weight:800;display:grid}.mobile-contact a:last-child{background:var(--orange)}.field-grid{grid-template-columns:1fr}.page-hero{padding:5rem 0}.page-hero h1{font-size:3.5rem}.lightbox{grid-template-columns:40px 1fr 40px;padding:1rem}.lightbox figcaption{display:block}.project-hero{padding:5rem 0 3rem}.project-hero h1{font-size:3.5rem}.gallery-filters{flex-wrap:nowrap;padding-bottom:.5rem;overflow-x:auto}.gallery-filters button{white-space:nowrap}.story-timeline:before{left:21px}.story-timeline>li{grid-template-columns:44px 1fr;gap:1rem}.story-marker{border-width:4px;width:44px;height:44px}.story-marker span{font-size:1rem}.story-stage-copy h2{font-size:2.5rem}.project-story-card{grid-template-columns:1fr}.project-story-card img{aspect-ratio:4/3}.story-next>.container{gap:.75rem;display:grid}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
