@font-face{font-family:Barlow;src:url('assets/fonts/barlow-condensed-extrabold.woff2');font-weight:800;font-display:swap}@font-face{font-family:Roboto;src:url('assets/fonts/roboto-regular.ttf');font-weight:400;font-display:swap}@font-face{font-family:Roboto;src:url('assets/fonts/roboto-bold.ttf');font-weight:700;font-display:swap}@font-face{font-family:Condensed;src:url('assets/fonts/roboto-condensed-bold.ttf');font-weight:700;font-display:swap}@font-face{font-family:Anton;src:url('assets/fonts/anton.ttf');font-display:swap}@font-face{font-family:Signature;src:url('assets/fonts/mrs-saint-delafield.ttf');font-display:swap}
:root{--ink:#102024;--dark:#102c30;--paper:#f5f3ed;--accent:#d8a56b;--muted:#57666a;--line:#c7c9c0;--unit:calc(100vw / 941)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.5 Roboto,Arial,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Barlow,'Arial Narrow',sans-serif;font-weight:800;line-height:1.05}img{display:block;width:100%;max-width:100%;object-fit:cover}svg{width:24px;height:24px;flex:none}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip-link{position:fixed;top:-80px;left:20px;background:var(--dark);color:white;padding:12px 20px;z-index:100}.skip-link:focus{top:12px}.page-shell{max-width:1440px;margin:auto}.section-surface,.page-section{background:radial-gradient(ellipse at 60% 40%,#fffdfa,var(--paper))}
.site-header{min-height:112px;display:grid;grid-template-columns:1fr auto;gap:12px 24px;padding:16px 28px;background:var(--paper);position:relative}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:56px;height:44px;object-fit:contain}.brand-type{display:flex;flex-direction:column;min-width:0}.brand-name{font-family:Barlow,sans-serif;font-size:30px;line-height:1.05;font-weight:800;white-space:nowrap}.brand-tagline{font-size:15px;letter-spacing:.2px;line-height:1.5;max-width:290px}.primary-navigation{grid-row:2;grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:32px}.primary-navigation a{font-family:Condensed,sans-serif;font-size:15px;text-transform:uppercase;padding:8px 0;position:relative}.primary-navigation a:after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--accent);transition:width .18s,left .18s}.primary-navigation a:hover:after,.primary-navigation a.is-active:after{width:14px;left:calc(50% - 7px)}.header-contact{grid-column:2;grid-row:1;text-align:right}.header-contact>span{display:block;font-size:15px;letter-spacing:.3px;margin-bottom:6px}.header-phone{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--dark);color:white;width:184px;height:38px;margin-left:auto;font:700 18px Condensed,sans-serif}.header-phone svg{width:18px;height:18px}.menu-toggle{display:none}.nav-services{display:flex;align-items:center;gap:4px;position:relative}.services-toggle{border:0;background:transparent;width:32px;height:36px;display:grid;place-items:center}.services-toggle svg{width:20px;height:20px;transition:transform .2s}.services-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.services-submenu{display:none;position:absolute;top:100%;left:-18px;z-index:40;min-width:280px;padding:12px 18px;background:var(--paper);border:1px solid var(--accent);box-shadow:0 10px 24px #0002}.services-submenu a{display:block;padding:12px 0;text-transform:none;border-bottom:1px solid var(--line)}.services-submenu a:last-child{border:0}.nav-services.is-expanded .services-submenu{display:block}
.hero{display:grid;grid-template-columns:469fr 472fr;min-height:550px}.hero-copy{position:relative;overflow:hidden;padding:48px clamp(24px,5.1vw,74px);color:#faf8f2;background:radial-gradient(ellipse at 65% 50%,#31565b55,transparent 70%),var(--dark);min-width:0}.blueprint,.page-blueprint{position:absolute;right:0;top:0;width:110px;height:100%;opacity:.4;pointer-events:none}.eyebrow{font-size:15px;line-height:1.4;letter-spacing:1.4px;font-weight:700}.hero-eyebrow,.page-hero-copy .eyebrow{color:#ebc99f;letter-spacing:1.6px;font-weight:400}.hero h1{font-size:calc(64 * var(--unit));line-height:calc(54 * var(--unit));letter-spacing:calc(1.25 * var(--unit));margin-top:calc(5 * var(--unit));position:relative}.hero h1 span{display:block;white-space:nowrap}.hero h1 span:nth-child(2){letter-spacing:calc(2.7 * var(--unit))}.hero h1 span:nth-child(3){letter-spacing:calc(.15 * var(--unit))}.gold-text{color:var(--accent);background:linear-gradient(110deg,#f0d9bb,var(--accent));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-rule{height:2px;width:calc(50 * var(--unit));background:var(--accent);margin:calc(16 * var(--unit)) 0 calc(19 * var(--unit))}.hero-description{font-size:max(15px,calc(13 * var(--unit)));line-height:1.5;max-width:520px;position:relative}.quote-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:210px;min-height:46px;width:calc(190 * var(--unit));height:calc(42 * var(--unit));font:700 15px Condensed,sans-serif;letter-spacing:1px;color:var(--ink);background:linear-gradient(110deg,#d5a26a,#e7bf91);border:1px solid #c99861;transition:filter .18s,transform .18s}.quote-button svg{width:22px;height:22px;transition:transform .18s}.quote-button:hover{filter:brightness(1.07)}.quote-button:hover svg{transform:translateX(3px)}.hero .quote-button{margin-top:calc(15 * var(--unit));position:relative}.hero-values{display:flex;flex-wrap:wrap;align-items:center;gap:15px;font-size:15px;letter-spacing:1px;margin-top:calc(23 * var(--unit))}.hero-values i{height:15px;width:1px;background:var(--accent)}.blueprint-note{font-size:15px;letter-spacing:1px;line-height:1.4;margin-top:24px;color:#e6bb89;position:relative}.hero-visual{position:relative;min-width:0;overflow:hidden;background:var(--dark)}.hero-visual>img{position:absolute;inset:0;height:100%}
.services{padding:calc(19 * var(--unit)) calc(28 * var(--unit)) calc(23 * var(--unit))}.section-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;min-height:130px;margin-bottom:22px}.section-heading h2{font-size:calc(44 * var(--unit));line-height:.9;letter-spacing:calc(-.3 * var(--unit));margin-top:calc(7 * var(--unit))}.heading-aside{border-left:1px solid var(--line);padding-left:calc(15 * var(--unit));margin-top:calc(17 * var(--unit));text-align:right;align-self:start;min-height:calc(78 * var(--unit))}.location-label{font-size:15px;line-height:1.4;font-weight:700;letter-spacing:1.4px}.fine-rule{height:1px;background:#8c9894;margin-top:calc(7 * var(--unit))}.section-intro{font-size:15px;line-height:1.5;margin-top:calc(20 * var(--unit))}.services-heading .heading-aside{margin-top:1px;border:0;position:relative}.services-heading .heading-aside:before{content:'';position:absolute;left:0;top:26px;height:120px;border-left:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:286fr 298fr 286fr;grid-template-rows:minmax(225px,auto) minmax(215px,auto);gap:calc(7 * var(--unit)) calc(8 * var(--unit))}.service-card{position:relative;overflow:hidden;min-width:0;color:white}.service-card img{height:100%;transition:transform .45s}.service-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#082528dc)}.service-card:hover img{transform:scale(1.025)}.service-finish{grid-row:1/3}.service-remodel{grid-column:2}.service-handyman{grid-column:3}.service-caption{position:absolute;left:calc(16 * var(--unit));right:38px;bottom:18px;z-index:1}.service-finish .service-caption{left:calc(19 * var(--unit))}.service-caption h3{font-size:max(23px,calc(23 * var(--unit)));line-height:.98}.service-caption p{font-size:15px;line-height:1.4;margin-top:calc(5 * var(--unit));max-width:310px}.card-arrow{position:absolute;right:calc(13 * var(--unit));bottom:calc(13 * var(--unit));width:calc(24 * var(--unit));height:calc(24 * var(--unit));z-index:1;transition:transform .18s}.service-card:hover .card-arrow{transform:translateX(3px)}.projects{padding:calc(10 * var(--unit)) calc(28 * var(--unit)) calc(24 * var(--unit))}.projects-heading h2,.faq-heading h2{font-size:calc(36 * var(--unit));line-height:1.05;letter-spacing:calc(-.55 * var(--unit))}.projects-heading .heading-aside,.faq-heading .heading-aside{margin-top:0;min-height:85px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(9 * var(--unit))}.project-grid img{height:calc(169 * var(--unit))}.project-grid figcaption{margin-top:10px}.project-grid h3{font:700 15px/1.4 Roboto,sans-serif}.project-grid figcaption p{font-size:15px;line-height:1.4;color:var(--muted);margin-top:3px}
.customer-projects{padding:44px 28px;background:var(--paper)}.project-album-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:30px}.project-album-heading h2,.authentic-reviews h2{font:400 clamp(36px,4vw,54px)/1.06 Anton,sans-serif;margin-top:10px}.project-album-heading .quote-button{width:auto;padding:14px 22px;flex:none}.carousel-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-bottom:20px}.carousel-controls button,.lightbox-toolbar button,.lightbox-close{min-width:44px;min-height:44px;padding:10px 16px;background:transparent;border:1px solid #b78755;color:inherit;font-size:15px}.carousel-controls button:hover{background:#e7d6bf}.carousel-position{font-size:15px;min-width:48px;text-align:center}.carousel-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding-bottom:4px}.carousel-track::-webkit-scrollbar{display:none}.project-slide{min-width:0;margin:0 0 26px;break-inside:avoid}.carousel-track .project-slide{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start;margin:0}.project-photo{display:block;width:100%;position:relative;padding:0;border:0;background:var(--dark);cursor:zoom-in;overflow:hidden}.project-photo img{width:100%;transition:filter .2s}.carousel-track .project-photo img{aspect-ratio:3/4;object-fit:cover}.project-photo:hover img{filter:brightness(.92)}.photo-expand{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:40px;height:40px;background:var(--accent);color:var(--dark);font-size:24px}.project-slide figcaption{padding:13px 2px;border-bottom:1px solid var(--accent);font-size:17px;line-height:1.5}.gallery-masonry{column-count:3;column-gap:24px}.project-lightbox{padding:0;border:1px solid var(--accent);width:min(1100px,94vw);max-width:94vw;max-height:94dvh;color:white;background:var(--dark)}.project-lightbox::backdrop{background:#071517e8}.lightbox-content{position:relative;padding:52px 24px 20px}.lightbox-image{width:auto;height:auto;max-width:100%;max-height:70dvh;margin:auto;object-fit:contain}.lightbox-close{position:absolute;right:8px;top:6px;font-size:25px;padding:3px 12px}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px}.lightbox-caption,.lightbox-counter{text-align:center;font-size:17px}.lightbox-counter{font-size:15px;margin-top:10px}.lightbox-open{overflow:hidden}
.faq{padding:calc(24 * var(--unit)) calc(28 * var(--unit)) calc(32 * var(--unit));border-top:1px solid var(--line)}.faq-list{border-top:1px solid #aeb7b1}.faq details,.page-faq details{border-bottom:1px solid var(--line)}.faq summary{padding:calc(17 * var(--unit)) 0;font-size:max(15px,calc(14 * var(--unit)));font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer}.faq summary::-webkit-details-marker,.page-faq summary::-webkit-details-marker{display:none}.faq summary>span{width:18px;height:18px;position:relative;flex:none}.faq summary>span:before,.faq summary>span:after{content:'';position:absolute;width:14px;height:1px;left:2px;top:8px;background:#8f6132;transition:transform .2s}.faq summary>span:after{transform:rotate(90deg)}.faq details[open] summary>span:after{transform:rotate(0)}.faq summary:hover{color:#8f6132}.faq-answer{padding:0 calc(38 * var(--unit)) calc(18 * var(--unit)) 0;font-size:max(15px,calc(14 * var(--unit)));line-height:1.65;color:var(--muted);max-width:1100px}.content-link,.faq-answer a{text-decoration:underline;text-underline-offset:3px;color:#85572b}.cta-band{min-height:145px;display:flex;align-items:center;justify-content:space-between;padding:28px calc(31 * var(--unit)) 28px calc(230 * var(--unit));gap:24px;color:white;background:linear-gradient(#17303170,#17303170),url('assets/cta.webp') center/cover}.cta-copy p{font-size:15px;letter-spacing:1.2px;margin-bottom:7px}.cta-copy h2{font-size:calc(35 * var(--unit));line-height:1}.cta-band .quote-button{flex:none;min-width:210px}.footer-main{display:grid;grid-template-columns:1.1fr 1.1fr .85fr;gap:20px;padding:32px 28px;align-items:start}.footer-about{padding-top:6px;padding-right:18px}.footer-about .brand-name{font-size:26px;white-space:normal}.footer-about .brand-mark{width:40px;height:40px}.footer-about>p{font-size:15px;line-height:1.5;color:var(--muted);margin-top:18px}.footer-about>.business-since{margin-top:12px}.footer-contact{font-style:normal;border-inline:1px solid #aeb7b1;padding:8px 18px;min-width:0;font-size:15px}.footer-contact a,.footer-location,.footer-hours{display:flex;align-items:center;gap:18px;margin-bottom:12px}.footer-contact svg{width:20px;height:20px}.footer-phone{font:700 20px Condensed,sans-serif}.footer-location{align-items:flex-start}.footer-location span{display:block;color:var(--muted)}.footer-email{overflow-wrap:anywhere}.footer-hours{color:var(--muted);align-items:flex-start;margin-bottom:0}.footer-art{align-self:center;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}.footer-art img{width:160px;height:153px;object-fit:contain}.footer-art p{text-align:center;line-height:1.5;font-size:15px;letter-spacing:.8px}.footer-bottom{min-height:72px;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;background:var(--dark);color:white;font-size:15px}.footer-bottom nav{display:flex;gap:20px;flex-wrap:wrap}.footer-bottom a{text-transform:uppercase}.footer-bottom a:hover{text-decoration:underline}
.page-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);min-height:535px}.page-hero-copy{position:relative;overflow:hidden;padding:64px 48px;color:#faf8f2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.page-hero-copy>*:not(.page-blueprint){position:relative}.page-hero h1{font-size:clamp(46px,4.8vw,72px);line-height:.99;letter-spacing:.1px;margin-top:14px}.page-hero .hero-rule{margin:22px 0;width:50px}.page-lead{font-size:17px;line-height:1.65;max-width:500px}.page-hero .quote-button{margin-top:26px}.page-hero-location{font-size:15px;letter-spacing:1.3px;margin-top:24px}.page-hero-visual{position:relative;overflow:hidden;min-width:0}.page-hero-visual>img{position:absolute;inset:0;height:100%}.page-hero-visual:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#09262980)}.page-signature{position:absolute;left:7%;right:7%;bottom:30px;font:400 50px/1.1 Signature,Georgia,serif;color:white;text-align:center;transform:rotate(-7deg);text-shadow:0 2px 14px #000c;z-index:1}.page-section{padding:64px 48px}.page-section-heading{max-width:1050px;margin-bottom:28px}.page-section-heading h2{font-size:44px;margin-top:10px}.page-section p{font-size:17px;line-height:1.75}.section-description{max-width:850px;margin-bottom:30px}.editorial-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px}.editorial-columns p+p{margin-top:18px}.editorial-columns .large-copy{font:28px/1.45 Georgia,serif;color:#88623a}.text-link{display:inline-flex;align-items:center;gap:12px;font:700 15px Condensed,sans-serif;letter-spacing:.7px;text-decoration:underline;text-underline-offset:6px;margin-top:26px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.detail-card{min-width:0;border-top:1px solid #b59570;padding-top:22px}.detail-number{display:block;font:15px Condensed,sans-serif;letter-spacing:1.5px;color:#946433;margin-bottom:15px}.detail-card h3,.contact-card h3,.feedback-panel h3{font-size:30px;margin-bottom:14px}.dark-section{background:radial-gradient(ellipse at 60% 20%,#2b4b4f,var(--dark));color:#faf8f2}.dark-section .eyebrow,.dark-section .detail-number{color:#e3ba8a}.dark-section p{color:#e3e8e7}.process-section{border-block:1px solid var(--line)}.page-faq{border-top:1px solid var(--line)}.page-faq summary{display:flex;align-items:center;justify-content:space-between;padding:21px 0;gap:20px;font-size:17px;font-weight:700;list-style:none;cursor:pointer}.page-faq summary span{color:#946433;font-size:24px}.page-faq details[open] summary span{transform:rotate(45deg)}.page-faq details p{padding:0 32px 24px 0;max-width:950px}.related-section{background:#e7ece7}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.related-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hub-card{position:relative;padding:32px;border:1px solid var(--line);background:#fff8;transition:background .18s,border-color .18s}.hub-card:hover{background:#fff;border-color:#ac7946}.hub-card>svg{width:48px;height:48px;color:#946433;margin-bottom:18px}.hub-card .detail-number{position:absolute;top:36px;right:32px}.hub-card h2{font-size:34px;margin-bottom:14px}.hub-card:last-child{grid-column:1/-1}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.contact-card{border:1px solid var(--line);padding:28px;min-width:0;overflow-wrap:anywhere}.contact-card>svg{width:32px;height:32px;color:#946433;margin-bottom:20px}.contact-card>span{font-size:18px;display:block;margin-bottom:14px}.contact-card:hover{border-color:#ac7946}.area-section{border-top:1px solid var(--line)}.area-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.area-list li{font-size:15px;border-bottom:1px solid var(--line);padding-bottom:8px}.feedback-panel{padding:32px;border:1px solid #b59570;background:#fff8}.feedback-panel>svg{width:48px;height:48px;color:#946433;margin-bottom:22px}.feedback-panel .quote-button{margin-top:24px;width:auto;padding:0 20px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}.review-card{padding:30px;border:1px solid #b59570;background:#fff8}.review-card svg{color:#946433;width:32px;height:32px;margin-bottom:20px}.review-card h3{font-size:28px;margin-bottom:16px}.review-card .text-link{margin-top:18px}.inner-page .cta-band{padding-left:clamp(48px,16vw,230px)}
@media(min-width:1200px){.site-header{grid-template-columns:auto 1fr auto;min-height:100px;gap:20px}.site-header .primary-navigation{grid-row:1;grid-column:2;gap:22px}.header-contact{grid-column:3}.site-header .brand-name{font-size:34px}}@media(min-width:1440px){:root{--unit:1.530287px}}@media(min-width:1401px){.site-header,.hero,.page-hero,.cta-band,.customer-projects,.footer-main,.footer-bottom,.page-section{width:calc(100vw - 15px);margin-left:calc(50% - (100vw - 15px)/2)}.hero-copy{padding-left:max(74px,calc((100vw - 1440px)/2 + 74px));padding-right:74px}.page-section,.page-hero-copy{padding-inline:max(48px,calc((100vw - 1440px)/2 + 48px))}}
@media(max-width:1023px){.footer-main{grid-template-columns:1fr 1fr}.footer-art{grid-column:1/-1;flex-wrap:nowrap;gap:24px}.footer-art img{width:110px}.footer-art p{text-align:left}.page-hero-copy{padding:42px 30px}.page-section{padding:48px 30px}.detail-grid,.contact-grid{grid-template-columns:1fr 1fr}.contact-card:last-child{grid-column:1/-1}.editorial-columns{gap:28px}.cta-band{padding-left:180px}.heading-aside{border-left:0}.services-heading .heading-aside:before{display:none}.carousel-track .project-slide{flex-basis:calc((100% - 24px)/2)}.gallery-masonry{column-count:2}.review-grid{grid-template-columns:1fr 1fr}.review-card:last-child{grid-column:1/-1}}
@media(max-width:767px){:root{--unit:1px}.site-header{display:flex;min-height:100px;padding:18px 20px;gap:12px}.site-header .brand{flex:1;min-width:0;gap:5px}.site-header .brand-name{font-size:26px;white-space:normal}.brand-tagline{max-width:230px;line-height:1.3}.site-header .brand-mark{width:45px;height:40px}.header-contact{display:none}.menu-toggle{display:flex;flex:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:transparent;border:1px solid #b78755}.menu-toggle span{height:1.5px;width:20px;background:var(--dark);transition:transform .18s,opacity .18s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.site-header .primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--accent);padding:12px 20px 20px;max-height:calc(100dvh - 100px);overflow:auto;gap:0;justify-content:flex-start;flex-direction:column;align-items:stretch}.site-header .primary-navigation.is-open{display:flex}.primary-navigation>a,.nav-services>a{padding:13px 0}.nav-services{justify-content:space-between;flex-wrap:wrap}.nav-services>a{flex:1}.services-toggle{width:44px;height:44px}.services-submenu{position:static;min-width:0;width:100%;box-shadow:none;padding:0 0 0 18px;border:0;border-left:2px solid var(--accent)}.services-submenu a{padding:12px 0}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 24px}.hero h1{font-size:clamp(38px,10.8vw,70px);line-height:1.02;letter-spacing:0}.hero h1 span:nth-child(2),.hero h1 span:nth-child(3){letter-spacing:0}.hero-eyebrow{font-size:15px;line-height:1.5}.hero-rule{margin:18px 0 16px;width:50px}.hero-description{font-size:15px;line-height:22px}.hero .quote-button{margin-top:22px}.quote-button{height:46px;width:202px;min-width:202px}.hero-values{margin-top:25px;gap:12px}.blueprint-note{margin-top:24px}.hero-visual{min-height:390px;aspect-ratio:472/477;max-height:620px}.services,.projects,.faq{padding:30px 20px}.section-heading{display:block;min-height:0;margin-bottom:22px}.section-heading h2{font-size:36px;line-height:1.05;letter-spacing:-.2px;margin-top:8px}.heading-aside,.services-heading .heading-aside{border:0;min-height:0;margin-top:20px;padding:0;text-align:left}.location-label{font-size:15px;line-height:1.5}.section-intro{margin-top:13px;font-size:15px;line-height:22px}.service-grid{grid-template-columns:1fr;grid-template-rows:none;gap:12px;margin-top:22px}.service-card,.service-finish,.service-remodel,.service-handyman{grid-row:auto;grid-column:auto;min-height:260px;aspect-ratio:1.4}.service-finish{min-height:380px;aspect-ratio:1.2}.service-caption,.service-finish .service-caption{left:20px;right:40px;bottom:18px}.service-caption h3{font-size:27px;line-height:1.04}.service-caption p{font-size:15px;line-height:1.5;margin-top:7px}.card-arrow{width:24px;height:24px;bottom:19px;right:17px}.project-grid{grid-template-columns:1fr 1fr;gap:22px 12px;margin-top:22px}.project-grid img{height:auto;aspect-ratio:215/169}.faq summary{padding:17px 0;font-size:15px;gap:12px}.faq-answer{font-size:15px;padding:0 0 18px}.customer-projects{padding:40px 24px}.project-album-heading{flex-direction:column;align-items:flex-start;gap:20px}.project-album-heading h2,.authentic-reviews h2{font-size:36px}.cta-band,.inner-page .cta-band{padding:30px 24px;display:flex;flex-direction:column;align-items:flex-start;min-height:190px;gap:22px}.cta-copy h2{font-size:36px}.cta-copy p{font-size:15px}.footer-main{display:grid;grid-template-columns:1fr;padding:32px 24px;gap:28px}.footer-about{padding:0}.footer-about .brand-name{font-size:28px}.footer-contact{border:0;border-block:1px solid var(--line);padding:24px 0}.footer-art{grid-column:auto;justify-content:flex-start}.footer-bottom{padding:24px;align-items:flex-start}.footer-bottom nav{gap:18px}.footer-bottom a{min-height:44px;display:flex;align-items:center}.page-hero{grid-template-columns:1fr;min-height:0}.page-hero-copy{padding:42px 24px}.page-hero h1{font-size:50px;line-height:1.02}.page-hero-visual{height:360px}.page-signature{font-size:46px;bottom:28px}.page-section{padding:40px 24px}.page-section-heading h2{font-size:36px}.editorial-columns,.detail-grid,.hub-grid,.contact-grid,.related-links{grid-template-columns:1fr;gap:26px}.hub-card:last-child,.contact-card:last-child{grid-column:auto}.editorial-columns .large-copy{font-size:25px}.contact-card,.hub-card,.feedback-panel{padding:26px}.area-list{gap:12px}.review-grid{grid-template-columns:1fr}.review-card:last-child{grid-column:auto}.review-card{padding:26px}.gallery-masonry{column-gap:18px}.lightbox-content{padding:52px 14px 18px}}
@media(min-width:600px) and (max-width:767px){.hero{grid-template-columns:469fr 472fr;min-height:550px}.hero h1{font-size:36px;line-height:1.04}.hero-visual{min-height:0;aspect-ratio:auto;max-height:none}.hero-values{gap:10px;letter-spacing:0}}@media(max-width:479px){.project-grid{grid-template-columns:1fr}.gallery-masonry{column-count:1}.carousel-track .project-slide{flex-basis:100%}.carousel-controls{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){html,.carousel-track{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
img{height:auto}.project-photo img{height:auto}.service-card img{position:absolute;inset:0;height:100%}.hero-values{line-height:normal}.service-grid{grid-template-rows:calc(170 * var(--unit)) calc(155 * var(--unit))}.projects .heading-aside,.faq .heading-aside{min-height:calc(56 * var(--unit));padding-top:calc(3 * var(--unit))}.footer-about>p{margin-top:calc(14 * var(--unit))}.footer-about>.business-since{margin-top:calc(8 * var(--unit))}
@media(min-width:768px){.services,.projects{padding-right:calc(27 * var(--unit))}.service-grid{grid-template-rows:calc(170 * (min(100vw,1440px) - 55 * var(--unit)) / 886) calc(155 * (min(100vw,1440px) - 55 * var(--unit)) / 886)}}
@media(min-width:1401px){.carousel-track .project-slide{flex-basis:calc((100% - 72px)/4)}}
@media(max-width:767px){.service-grid{grid-template-rows:none}.projects .heading-aside,.faq .heading-aside{min-height:0;padding-top:0}.service-card img{height:100%}.footer-about>p{margin-top:18px}.footer-about>.business-since{margin-top:12px}}
@media(min-width:768px){:root{--card-unit:calc((min(100vw,1440px) - 15px) / 941)}.service-grid{grid-template-rows:calc(170 * var(--card-unit)) calc(155 * var(--card-unit))}.footer-main{min-height:calc(185 * var(--unit))}}
@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero h1,.page-hero h1{animation:enter .55s ease-out both}.hero .hero-description,.page-lead{animation:enter .65s .08s ease-out both}
.hero-visual,.service-card{width:100%}
@media(min-width:768px){.service-grid{grid-template-rows:max(225px,calc(170 * var(--card-unit))) max(215px,calc(155 * var(--card-unit)))}}
@media(max-width:767px){.site-header .primary-navigation{max-height:calc(100dvh - 112px)}}
