/* Ace / precision, warmth, and the confidence of people who know their craft. */
:root{--red:#ca242b;--ink:#1d2020;--muted:#626766;--header-h:94px}
body{overflow-x:clip}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.eyebrow,.index{font-size:12px;letter-spacing:.14em}.button{border-radius:2px;min-height:54px}.section{padding-block:110px}header{position:sticky;top:0;z-index:50;height:var(--header-h);gap:24px;padding-inline:4%;background:#fffffff5;backdrop-filter:blur(14px)}header .brand{width:94px}header .brand img{height:68px}header nav{gap:22px}header .header-cta{order:4}.motion-toggle{order:3;background:transparent;color:var(--ink);border:1px solid #d4d7d5;border-radius:30px;font-size:12px;white-space:nowrap;padding:9px 12px;cursor:pointer;min-height:42px}.motion-toggle[hidden]{display:none}.motion-toggle:before{content:'';display:inline-block;width:6px;height:6px;border:1px solid currentColor;border-radius:50%;margin-right:7px;vertical-align:1px}.motion-toggle[aria-pressed=true]:before{background:var(--red);border-color:var(--red)}.mobile-contact{display:none}.topline{letter-spacing:.12em;font-size:12px}.skip{z-index:100}.nav-smart small{font-size:9px!important}.textlink{line-height:1.6}html{scroll-padding-top:115px}
.ace-hero{isolation:isolate;position:relative;min-height:calc(100svh - 128px);min-height:max(720px,calc(100svh - 128px));background:#222724;color:#fff;overflow:hidden}.hero-backdrop{position:absolute;inset:0;z-index:-2}.hero-backdrop img{height:100%;width:100%;object-fit:cover;object-position:64% 50%;transform:scale(1.035);will-change:transform}.ace-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101715ec 0%,#101715b8 36%,#10171528 80%),linear-gradient(0deg,#10171599,transparent 45%)}.hero-editorial{padding:64px 6% 92px;position:relative}.hero-editorial>.eyebrow{color:#fff;margin-bottom:28px}.ace-hero h1{font-size:clamp(80px,9.3vw,150px);font-weight:500;line-height:.98;letter-spacing:-.028em;margin-bottom:38px;max-width:900px}.ace-hero h1 em{color:#ff595d}.hero-bottom{display:flex;align-items:flex-end;gap:45px}.hero-bottom p{font-size:18px;line-height:1.55;margin:0;color:#eeefeb;min-width:215px}.hero-bottom .actions{align-items:center;gap:24px}.hero-services{font-size:14px;border-bottom:1px solid #ffffff80;padding-block:12px}.hero-caption{position:absolute;bottom:22px;left:6%;right:6%;display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:15px;gap:20px;font-size:12px;letter-spacing:.12em}.ace-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:34px 6%;gap:24px;border-bottom:1px solid var(--line);background:#fafbf9}.ace-proof>div{border-right:1px solid var(--line);padding-right:20px}.ace-proof>div:last-child{border:0}.ace-proof strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:500;font-size:clamp(24px,2.3vw,36px);line-height:1.15}.ace-proof span{display:block;margin-top:8px;font-size:13px;color:var(--muted)}
.story-intro{padding:130px 7% 100px;display:grid;grid-template-columns:1fr 2fr;gap:5%}.story-intro>.eyebrow{padding-top:10px;color:var(--red)}.story-intro h2{font-size:clamp(54px,6.1vw,94px);font-weight:500}.story-intro h2 em{color:#717877}.story-intro p:not(.eyebrow){max-width:620px;font-size:19px;color:var(--muted);margin-bottom:28px}.service-scroll{position:relative;display:grid;grid-template-columns:52% 48%;padding-inline:4%;gap:0;background:#f3f4f1}.service-visual{position:sticky;top:calc(var(--header-h) + 22px);align-self:start;height:calc(100svh - var(--header-h) - 44px);max-height:900px;min-height:480px;padding-block:22px 66px}.scene-stage{height:100%;position:relative;overflow:hidden;background:#232925;border-radius:3px}.scene-photo{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .85s ease}.scene-photo.is-active{opacity:1}.scene-photo img{height:100%;width:100%;object-fit:cover;transform:scale(var(--scene-scale,1));transition:transform .2s linear}.scene-shade{position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#111b19b8);pointer-events:none}.scene-caption{position:absolute;bottom:30px;left:30px;right:30px;display:flex;justify-content:space-between;color:#fff;font-size:12px;letter-spacing:.12em;gap:20px}.scene-progress{position:absolute;bottom:0;height:3px;width:100%;background:#ffffff44}.scene-progress span{display:block;width:100%;height:100%;background:#ef3d42;transform:scaleX(var(--story-progress,0));transform-origin:left}.scene-nav{display:flex!important;position:static!important;justify-content:space-between;gap:8px!important;padding:14px 0!important;margin:0!important;background:none!important;box-shadow:none!important;border:0!important;font-size:12px!important}.scene-nav a{display:flex;gap:8px;align-items:center;padding:6px 0;border:0;color:#6c726e}.scene-nav a span{font-weight:400}.scene-nav a b{font-weight:500}.scene-nav a[aria-current=true]{color:var(--red)}.service-chapter{min-height:90svh;display:flex;align-items:center;padding:90px 12% 90px 13%;scroll-margin-top:15px}.chapter-mobile-image{display:none}.chapter-copy .eyebrow{color:#59615f}.chapter-copy .eyebrow span{color:var(--red);font-weight:700}.chapter-copy h3{font-size:clamp(46px,4.6vw,76px);font-weight:500;line-height:1.04;margin-bottom:28px}.chapter-copy>p:not(.eyebrow){color:#59615f;font-size:17px}.chapter-copy .chapter-details{border-top:1px solid #cbd0cb;padding-top:20px;margin-top:25px;font-size:14px!important;line-height:1.85}.chapter-copy .button{margin-top:14px;font-size:14px}.more-services{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:7%;padding:85px 7% 105px;border-bottom:1px solid var(--line)}.more-services>.eyebrow{padding-top:8px;color:var(--red)}.more-services>a>span{font-size:12px;color:var(--muted);letter-spacing:.13em}.more-services h3{font-size:46px;margin-top:20px;font-weight:500}.more-services p{color:var(--muted)}.more-services a:hover .textlink{color:var(--red)}
.ace-advice{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;padding:120px 7%;background:#202626;color:white}.advice-statement h2{font-size:clamp(60px,6.8vw,110px);font-weight:500;line-height:1.02}.advice-statement em{color:#f65559}.advice-statement>p:last-child{font-size:20px;color:#c3cdca;max-width:300px}.ace-advice .eyebrow{color:#bfc7c4}.advice-detail>p{font-size:18px;color:#c8d0cd}.advice-detail strong{color:#fff}.commission-mark{display:flex;align-items:center;gap:27px;margin-bottom:28px;padding-bottom:25px;border-bottom:1px solid #ffffff35}.commission-mark>strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:130px;font-weight:500;line-height:1}.commission-mark>strong>span{font-size:58px;vertical-align:top;display:inline-block;margin-top:18px;color:#f65559}.commission-mark p{font-size:12px;letter-spacing:.1em;line-height:1.8;margin:0;color:#dae0dc}.ace-advice .textlink{display:inline-block;margin-top:20px}.ace-family{padding:120px 6%;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.family-photo{position:relative}.family-photo img{aspect-ratio:1.08;object-fit:cover;object-position:center 64%;width:100%}.family-photo>span{display:block;font-size:12px;letter-spacing:.1em;margin-top:15px;color:var(--muted)}.family-story h2{font-size:clamp(46px,4.7vw,76px);font-weight:500}.family-story h2 em{color:#737a76}.family-story>p:not(.eyebrow){font-size:17px;color:var(--muted)}.family-story .button{margin-top:14px}
.ace-reviews{background:#f2f3f0;display:grid;grid-template-columns:1fr 1.15fr;gap:12%;padding:100px 7%}.reviews-heading{position:sticky;top:calc(var(--header-h) + 55px);align-self:start}.reviews-heading h2{font-size:clamp(48px,4.8vw,76px);font-weight:500}.reviews-heading h2 em{color:#777e79}.reviews-heading>p:not(.eyebrow){color:var(--muted);max-width:340px}.reviews-heading small{display:block;font-size:12px;line-height:1.6;color:var(--muted);max-width:280px;margin-top:30px}.customer-quote{padding:20px 0 65px;margin-bottom:55px;border-bottom:1px solid #c7ceca}.customer-quote:last-child{margin-bottom:0;padding-bottom:30px;border-bottom:0}.customer-quote .eyebrow{color:#555f59;letter-spacing:.07em;line-height:1.7}.customer-quote blockquote{font-size:clamp(24px,2.6vw,39px);line-height:1.4;letter-spacing:-.025em;margin:0 0 30px}.quote-person{font-size:14px;font-weight:700}.quote-person span{display:block;font-size:12px;font-weight:400;color:#626b65;margin-top:5px}.ace-gallery{padding:110px 6%}.gallery-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:45px;gap:15px}.gallery-heading>.eyebrow{grid-column:1/-1;margin-bottom:5px}.gallery-heading h2{font-size:clamp(48px,5.5vw,85px);font-weight:500;margin:0}.gallery-heading .textlink{margin-bottom:6px}.ace-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:3%}.ace-gallery figure{margin:0}.ace-gallery figure:nth-child(2){padding-top:100px}.ace-gallery img{width:100%;aspect-ratio:1.12;height:auto;object-fit:cover}.ace-gallery figcaption{font-size:12px;letter-spacing:.12em;margin-top:16px;color:#626b65}.ace-home .smart-division{padding:100px 7%;gap:10%}.ace-home .smart-brand{padding-right:5%}.ace-home .smart-division h2{font-weight:500;font-size:clamp(48px,4.8vw,76px)}.smart-division .smart-tags span{font-size:13px}.smart-division .division-note{font-size:13px}.ace-next{background:var(--red);color:white;padding:95px 7%;display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.ace-next h2{font-size:clamp(60px,6.5vw,100px);font-weight:500;margin:0}.ace-next>div>p:not(.eyebrow){font-size:18px;max-width:460px}.ace-next .button{margin:10px 0 25px}.next-phone{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:40px;line-height:1.4}.ace-next>div>span{font-size:13px;color:#fff}.expanded-footer{padding-block:70px 28px}.expanded-footer .fine{font-size:12px}.expanded-footer .footer-smart .eyebrow{line-height:1.8}
/* Shared detail pages: the same spacing, image treatment, and restrained motion. */
main:not(.ace-home)>.editorial-hero{padding:80px 6%;gap:7%;background:#f3f4f1}main:not(.ace-home)>.editorial-hero h1{font-weight:500;font-size:clamp(64px,6.5vw,104px)}main:not(.ace-home)>.editorial-hero figure{overflow:hidden}main:not(.ace-home)>.editorial-hero img{height:560px;object-fit:cover}main:not(.ace-home) .room-grid{border-top:1px solid var(--line)}main:not(.ace-home) .room-grid article{padding-top:30px}main:not(.ace-home) .room-grid h3{font-weight:500}main:not(.ace-home) .photo-story h2{font-weight:500}main:not(.ace-home) .faq{background:#f5f6f3}.motion-enabled [data-reveal]{transition:opacity .7s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.motion-enabled [data-reveal].awaiting-reveal{opacity:0;transform:translateY(30px)}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off{scroll-behavior:auto!important}.motion-off .hero-backdrop img,.motion-off .scene-photo img{transform:none!important}.motion-off [data-reveal]{opacity:1!important;transform:none!important}
@media(min-width:1600px){.hero-editorial{padding-top:90px}.service-chapter{min-height:800px}.ace-hero{min-height:860px}}
@media(max-width:1250px){header{gap:15px}header nav{gap:16px}header .header-cta{padding-inline:15px}.nav-smart{padding-left:12px!important}.hero-bottom{gap:25px}.hero-bottom .actions{gap:14px}.service-chapter{padding-inline:10% 7%}.ace-advice{gap:7%}.commission-mark{gap:15px}.commission-mark>strong{font-size:105px}.scene-nav a{gap:5px}.scene-nav a b{font-size:12px}.smart-wordmark{font-size:clamp(42px,5.5vw,70px)}}
@media(max-width:1100px){:root{--header-h:82px}header{height:var(--header-h)}header .brand{width:82px}header .header-cta{display:none}header .menu{display:flex;order:4;margin-left:0;align-items:center;gap:10px;background:white;border:1px solid var(--line);padding:9px 14px;font-size:14px;min-height:42px}header .motion-toggle{margin-left:auto}header #navigation{display:none;position:absolute;top:var(--header-h);left:0;right:0;background:#fff;padding:20px 6% 30px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0001;margin:0;max-height:calc(100svh - var(--header-h));overflow:auto}header #navigation.open{display:flex;flex-direction:column;align-items:stretch;gap:6px;font-size:16px}.mobile-contact{display:block}header .nav-dropdown>div{position:static;box-shadow:none;border:0;border-left:2px solid var(--red);margin:5px 0 12px;width:100%;padding:0 15px}header nav .nav-smart{border-left:0;border-top:1px solid var(--line);padding:16px 0 0!important}.hero-bottom{display:block}.hero-bottom .actions{margin-top:25px}.ace-hero{min-height:730px}.story-intro{padding-top:90px;grid-template-columns:1fr 2fr}.service-scroll{grid-template-columns:50% 50%}.chapter-copy h3{font-size:49px}.service-chapter{padding-inline:10% 6%}.more-services{grid-template-columns:1fr 1fr;gap:35px}.more-services>.eyebrow{grid-column:1/-1}.ace-family{gap:6%}.commission-mark{display:block}.commission-mark p{margin-top:15px}.reviews-heading h2{font-size:55px}.ace-home .smart-division{gap:7%}}
@media(max-width:760px){:root{--header-h:76px}html{scroll-padding-top:94px}header{padding-inline:5%;gap:12px}header .brand{width:74px}header .brand img{height:60px}.topline{height:30px;padding-inline:5%;font-size:10px;letter-spacing:.07em}.topline a{font-size:12px}.motion-toggle{font-size:12px;padding:8px 10px}.ace-hero{min-height:740px}.hero-editorial{padding:48px 6% 94px}.ace-hero h1{font-size:clamp(66px,12.6vw,96px);margin-bottom:32px}.hero-editorial>.eyebrow{font-size:11px;letter-spacing:.1em}.ace-hero:after{background:linear-gradient(90deg,#111b18de,#111b1877),linear-gradient(0deg,#111b18c9,transparent)}.hero-backdrop img{object-position:63%}.hero-bottom p{font-size:17px}.hero-bottom .actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-caption{font-size:10px;letter-spacing:.07em;flex-wrap:wrap;gap:6px}.ace-proof{grid-template-columns:1fr 1fr;padding:27px 6%;gap:26px 18px}.ace-proof>div:nth-child(2){border:0}.ace-proof strong{font-size:27px}.ace-proof span{font-size:12px}.story-intro{display:block;padding:70px 6% 55px}.story-intro h2{font-size:57px}.story-intro p:not(.eyebrow){font-size:17px}.service-scroll{display:block;padding:0;background:#f2f3f0}.service-visual{display:none}.service-chapter{display:block;min-height:0;padding:0 0 55px;scroll-margin-top:5px}.chapter-mobile-image{display:block;width:100%;height:auto;aspect-ratio:1.12;object-fit:cover}.chapter-copy{padding:35px 6% 0}.chapter-copy h3{font-size:53px;line-height:1.04}.chapter-copy>p:not(.eyebrow){font-size:16px}.chapter-copy .chapter-details{font-size:14px!important}.chapter-copy .eyebrow{margin-bottom:20px}.more-services{padding:55px 6% 65px;grid-template-columns:1fr;gap:35px}.more-services>.eyebrow{grid-column:auto;margin-bottom:0}.more-services>a{border-top:1px solid var(--line);padding-top:25px}.more-services h3{font-size:43px}.ace-advice{display:block;padding:65px 6%}.advice-statement h2{font-size:68px}.advice-statement>p:last-child{font-size:18px;margin-bottom:35px}.commission-mark{display:flex;gap:24px}.commission-mark>strong{font-size:105px}.commission-mark>strong>span{font-size:45px}.commission-mark p{font-size:11px;margin:0}.advice-detail>p{font-size:17px}.ace-family{display:flex;flex-direction:column;padding:65px 6%;gap:35px}.family-photo img{aspect-ratio:1.3}.family-photo>span{font-size:11px}.family-story h2{font-size:56px}.ace-reviews{display:block;padding:65px 6%}.reviews-heading{position:static;margin-bottom:45px}.reviews-heading h2{font-size:55px}.reviews-heading h2 br:last-child{display:none}.reviews-heading small{max-width:100%;margin-top:20px}.customer-quote{border-top:1px solid #c7ceca;border-bottom:0;padding:30px 0;margin:0}.customer-quote blockquote{font-size:28px}.customer-quote:last-child{padding-bottom:0}.ace-gallery{padding:65px 6%}.gallery-heading{display:block;margin-bottom:30px}.gallery-heading h2{font-size:53px;margin:12px 0 22px}.ace-gallery-grid{display:block}.ace-gallery figure:nth-child(2){padding-top:30px}.ace-gallery figcaption{font-size:11px}.ace-home .smart-division{padding:60px 6%;gap:32px}.ace-home .smart-division h2{font-size:49px}.ace-home .smart-brand{padding:0 0 30px}.smart-wordmark{font-size:56px}.ace-next{display:block;padding:65px 6%}.ace-next h2{font-size:68px;margin-bottom:30px}.ace-next>div>p:not(.eyebrow){font-size:17px}.expanded-footer{padding:55px 6% 24px}.section{padding-block:65px}main:not(.ace-home)>.editorial-hero{padding:45px 6%;gap:35px}main:not(.ace-home)>.editorial-hero h1{font-size:62px}main:not(.ace-home)>.editorial-hero img{height:370px}}
@media(max-width:380px){.ace-hero h1{font-size:62px}.ace-proof strong{font-size:23px}.motion-toggle:before{display:none}.commission-mark{gap:16px}.scene-caption{font-size:10px}.chapter-copy h3{font-size:46px}.smart-wordmark{font-size:48px}.topline>span{max-width:195px;font-size:9px}.ace-hero{min-height:730px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled){scroll-behavior:auto}html:not(.motion-enabled) *{animation:none!important;transition:none!important}}
/* Original route layouts receive the same editorial scale and material palette. */
.pagehero,.about-hero{padding-block:85px;background:#f3f4f1}.pagehero h1,.about-hero h1,.remodel-hero h1{font-weight:500}.service-poster{background:#202626;color:#fff;border-bottom:5px solid var(--red)}.service-list details{border-color:#c9cfcb}.service-list summary{padding-block:28px}.service-list .detail{padding-bottom:32px}.team-wide img{object-position:center 65%}.dark-section{background:#202626}.contact{padding-block:90px}.gallery-intro,.area-hero{padding-block:80px}.gallery-intro h1,.area-hero h1,.contact-hero h1{font-weight:500}.gallery-item h2,.review-grid h2{font-weight:500}.review-grid{padding-block:85px;gap:5%}.review-grid blockquote{font-size:26px}.editorial-hero figure img,.gallery-open img{transition:transform .8s ease}.motion-enabled .gallery-open:hover img{transform:scale(1.035)}
html:not(.motion-enabled):not(.motion-off) .service-visual{display:none}
html:not(.motion-enabled):not(.motion-off) .service-scroll{display:block}
html:not(.motion-enabled):not(.motion-off) .service-chapter{min-height:0;gap:6%;padding:50px 4%}
html:not(.motion-enabled):not(.motion-off) .chapter-mobile-image{display:block;width:45%;height:auto;object-fit:cover}
@media(max-width:760px){.pagehero,.about-hero{padding-block:50px}.gallery-intro,.area-hero{padding-block:45px}.contact{padding-block:55px}.review-grid{padding-block:50px}.review-grid blockquote{font-size:24px}.service-list summary{padding-block:22px}html:not(.motion-enabled):not(.motion-off) .chapter-mobile-image{width:100%}html:not(.motion-enabled):not(.motion-off) .service-chapter{padding:0 0 50px}}

/* Nighttime landscape hero: keep visible fixtures and the lit path on the right. */
.hero-backdrop img{object-position:62% 55%}
.ace-hero:after{background:linear-gradient(90deg,#0c1715e8 0%,#0c1715aa 35%,#0c171512 75%),linear-gradient(0deg,#0c171588,transparent 42%)}
@media(max-width:760px){.hero-backdrop img{object-position:58% 50%}.ace-hero:after{background:linear-gradient(90deg,#0c1715d4,#0c171552),linear-gradient(0deg,#0c1715b0,transparent 50%)}}

.hero-bottom{align-items:flex-start;flex-direction:column;gap:24px}.hero-bottom p{font-size:18px;max-width:580px}.hero-bottom .actions{margin-top:0}.hero-caption>a{text-decoration:underline;text-underline-offset:4px}.hero-backdrop img{object-position:65% 55%}
@media(max-width:760px){.hero-bottom p{font-size:16px}.hero-bottom .actions{margin-top:22px}.hero-backdrop img{object-position:72% 50%}.hero-caption>a{font-size:10px;line-height:1.6}}
