:root{--black:#0c0c0c;--panel:#151515;--white:#f4f1e9;--muted:#b5b3ad;--gold:#b39450;--line:#30302d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:106px}body{margin:0;background:var(--black);color:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:1.08;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(58px,6.1vw,92px)}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:35px}h4{font-size:17px}em{font-style:normal;color:var(--gold)}.wrap{width:calc(100% - 112px);max-width:1280px;margin:auto}.section{padding-top:105px;padding-bottom:105px}.eyebrow{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.18em;margin-bottom:24px}.gold{color:var(--gold)}.topbar{font-size:10px;font-weight:600;letter-spacing:.1em;background:#1a1916;border-bottom:1px solid var(--line)}.top-inner{display:flex;justify-content:space-between;padding:9px 0}.top-inner a{font-size:11px;letter-spacing:.03em}header{position:sticky;top:0;z-index:20;background:#0c0c0cf7;border-bottom:1px solid #ffffff14;backdrop-filter:blur(12px)}.nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{width:143px;display:block;flex-shrink:0}.brand img{width:100%;height:auto}.nav nav{display:flex;gap:27px;font-size:12px;color:#d4d2cc}.nav nav a:hover{color:var(--gold)}.button{background:var(--gold);color:#0c0c0c;border:1px solid var(--gold);padding:17px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-weight:700;font-size:13px;transition:background .2s}.button:hover{background:#c6aa6d}.button span{font-size:20px;line-height:1}.nav-quote{padding:13px 19px;gap:24px}.menu{display:none;background:transparent;border:0;color:var(--white);font-size:25px}.hero{position:relative;min-height:690px;height:calc(100svh - 133px);max-height:920px;isolation:isolate;display:flex;align-items:center}.hero-media{position:absolute;inset:0;z-index:-2;background:#151515}.hero video{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000d 0%,#0008 38%,#0002 70%),linear-gradient(0deg,#000a,transparent 25%)}.hero-content{padding-top:20px;padding-bottom:100px}.hero .eyebrow{color:#dfc58b}.hero-copy{max-width:380px;color:#e0dfda;font-size:16px;line-height:1.7;margin:27px 0 30px}.hero-phone{font-size:14px;margin-left:23px;white-space:nowrap}.hero-bottom{position:absolute;left:0;right:0;bottom:24px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.13em;color:#deded7}.video-control{background:#0006;border:1px solid #ffffff50;color:white;font-size:11px;padding:8px 12px;letter-spacing:0}.trust{border-bottom:1px solid var(--line);background:#131310}.trust-inner{display:grid;grid-template-columns:repeat(4,1fr);padding:29px 0}.trust span{font-size:11px;color:var(--muted);padding-left:30px;border-left:1px solid var(--line)}.trust span:first-child{padding-left:0;border:0}.trust b{display:block;font-size:13px;color:var(--white);font-weight:500;margin-bottom:3px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}.section-heading>p{max-width:340px;color:var(--muted);font-size:14px;line-height:1.8}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px}.service-photo{position:relative;min-height:480px}.service-photo img{width:100%;height:100%;object-fit:cover;object-position:42% center}.photo-note{position:absolute;bottom:0;left:0;right:0;padding:18px 22px;background:#12120fe8;color:#d7c69f;font-size:9px;letter-spacing:.16em}.service-list details,.faq details{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;position:relative;padding:24px 0;font-size:18px;line-height:1.4}summary::-webkit-details-marker{display:none}.service-no{font-size:10px;color:var(--gold);min-width:18px}.plus{margin-left:auto;color:var(--gold);font-size:23px;font-weight:300}details[open]>.plus,details[open]>summary>.plus{transform:rotate(45deg)}details p{color:var(--muted);font-size:14px;line-height:1.85;padding:0 25px 24px 34px}.commercial{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:12px}.text-link{border:0;padding:0;background:transparent;color:var(--gold);font-size:inherit;cursor:pointer}.text-link:hover{text-decoration:underline}.safety{background:#191914;border-top:1px solid #b3945029;border-bottom:1px solid #b3945029}.safety-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.safety h2{font-size:clamp(45px,5.3vw,76px);margin-bottom:38px}.inspection{border:1px solid #4b4638;padding:32px 38px;background:#121310}.inspection-label{font-size:9px;color:var(--gold);letter-spacing:.15em}.inspection h3{margin:27px 0 17px;font-size:34px}.inspection>p{color:var(--muted);font-size:14px}.inspection-row{display:flex;gap:20px;border-top:1px solid var(--line);padding:21px 0}.inspection-row:first-of-type{margin-top:28px}.inspection-row>span{font-size:10px;color:var(--gold);padding-top:5px}.inspection-row h4{font-size:15px;font-weight:500;margin-bottom:5px}.inspection-row p{color:var(--muted);font-size:12px;line-height:1.8}.inspection-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #4b4638;padding-top:20px;font-size:9px;color:var(--gold);letter-spacing:.07em}.inspection-footer b{font-size:30px;font-weight:400;letter-spacing:-.04em}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.family-photo{position:relative}.family-photo img{height:570px;width:100%;object-fit:cover;object-position:62% center}.family-caption{font-size:9px;letter-spacing:.15em;color:var(--gold);padding:19px 0;border-bottom:1px solid var(--line)}.about-copy h2{margin-bottom:29px}.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:18px}.signature{font-family:Georgia,serif;font-style:italic;font-size:34px;margin-top:28px;color:#d8c292}.signature span{display:block;font-family:Arial,sans-serif;font-style:normal;letter-spacing:.12em;font-size:9px;color:var(--muted);margin-top:7px}.reviews{background:#f0ede5;color:#151512}.reviews .eyebrow{color:#80672e}.outline-link{border-bottom:1px solid #908674;padding-bottom:9px;font-size:12px;white-space:nowrap}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.review-grid figure{margin:0;padding-top:24px;border-top:1px solid #cfc9ba;display:flex;flex-direction:column}.quote-mark{font-family:Georgia,serif;font-size:61px;line-height:1;color:#94773b}.review-grid blockquote{margin:9px 0 35px;font-size:17px;line-height:1.75;letter-spacing:-.02em;flex:1}.review-grid figcaption{display:flex;gap:12px;align-items:center;font-size:12px}.initial{width:37px;height:37px;border:1px solid #c1b8a4;border-radius:50%;display:grid;place-items:center;color:#82682f}.review-grid small{display:block;color:#6c6960;font-size:10px;margin-top:2px}.area{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.area h2{font-size:46px}.area p:not(.eyebrow){color:var(--muted);font-size:14px;margin-top:23px;max-width:370px}.cities{display:flex;flex-wrap:wrap;gap:10px 22px;margin:27px 0;font-size:12px;color:#ded7c6}.cities span:before{content:'·';color:var(--gold);margin-right:8px}.area>.text-link{font-size:13px}.area img{height:350px;width:100%;object-fit:cover}.faq{border-top:1px solid var(--line);padding-top:75px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.faq h2{font-size:44px}.faq summary{font-size:15px;padding:20px 0}.faq details p{padding-left:0;font-size:13px}.contact{background:#191914;border-top:1px solid #b3945033}.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:100px}.contact h2{margin-bottom:35px}.contact-phone{display:block;font-size:29px;letter-spacing:-.03em;margin-top:30px}.email{color:var(--muted);font-size:14px}.hours>div{border-top:1px solid #484335;padding:18px 0}.hours span{font-size:9px;letter-spacing:.15em;color:var(--gold)}.hours p{font-size:15px;margin-top:9px;line-height:1.7}.hours b{font-weight:500}.hours small{display:block;max-width:290px;font-size:11px;color:var(--muted);line-height:1.8;margin-top:7px}footer{padding:40px 0 20px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:30px}.footer-main p{font-size:12px;color:var(--muted)}.footer-main>a:last-child{font-size:12px;color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;color:#95958c;font-size:10px}dialog{background:#161612;color:var(--white);border:1px solid #57503e;max-width:520px;width:calc(100% - 34px);padding:45px;box-shadow:0 20px 100px #000a}dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}dialog h2{font-size:38px;margin-bottom:15px}dialog>p:not(.eyebrow){font-size:13px;color:var(--muted)}.close-dialog{position:absolute;top:8px;right:15px;background:none;color:white;border:0;font-size:29px}.contact-options{margin:28px 0}.contact-options a{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:20px 0}.contact-options a:hover{color:var(--gold)}.contact-options a>span{font-size:11px;color:var(--gold)}.contact-options a>span:last-child{margin-left:auto;font-size:24px}.contact-options b{font-weight:500;font-size:18px}.contact-options small{display:block;font-size:12px;color:var(--muted)}.dialog-hours{font-size:10px!important;line-height:1.8}.skip{position:fixed;top:-100px;left:10px;z-index:99;background:var(--gold);color:black;padding:10px}.skip:focus{top:10px}
@media(min-width:1600px){.hero-content{padding-top:0}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.nav nav{gap:16px}.nav{gap:20px}.brand{width:120px}.nav-quote{gap:15px;padding:13px}.service-layout{gap:35px}.safety-grid,.about-grid,.faq-grid,.contact-grid{gap:45px}.area{gap:35px}.area h2{font-size:38px}.trust span{padding-left:17px}.family-photo img{height:530px}}
@media(max-width:780px){html{scroll-padding-top:78px}.wrap{width:calc(100% - 40px)}.top-inner{justify-content:center}.top-inner>span{display:none}.nav{height:77px;gap:15px}.brand{width:105px}.nav-quote{margin-left:auto;font-size:11px;padding:10px 13px;gap:15px}.nav-quote span{font-size:17px}.menu{display:block}.nav nav{display:none;position:absolute;top:77px;left:0;right:0;background:#11110f;padding:20px;flex-direction:column;border-bottom:1px solid var(--line);gap:0}.nav nav.open{display:flex}.nav nav a{font-size:16px;padding:12px 0}.hero{height:740px;min-height:600px;max-height:calc(100svh - 112px)}.hero-content{padding-bottom:90px}.hero h1{font-size:59px}.hero-copy{max-width:300px;font-size:14px}.hero-shade{background:linear-gradient(90deg,#000b,#0004),linear-gradient(0deg,#000c,transparent 40%)}.hero-bottom{font-size:8px;gap:20px}.hero-bottom>span{max-width:180px}.hero-phone{display:block;margin:19px 0 0;font-size:15px}.trust-inner{grid-template-columns:1fr 1fr;gap:22px;padding:25px 0}.trust span:nth-child(3){padding-left:0;border:0}.trust b{font-size:12px}.trust span{font-size:10px}.section{padding-top:66px;padding-bottom:66px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:25px;max-width:none;font-size:14px}h2{font-size:39px}.eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:18px}.service-layout,.safety-grid,.about-grid,.faq-grid,.contact-grid,.area{grid-template-columns:1fr;gap:35px}.service-photo{min-height:0;height:350px}.service-photo img{object-position:center}.service-list summary{font-size:16px}.safety h2{font-size:52px}.inspection{padding:26px}.inspection h3{font-size:31px}.family-photo img{height:auto;max-height:520px;object-position:center}.about-copy h2{margin-bottom:23px}.review-grid{grid-template-columns:1fr;gap:32px}.review-grid blockquote{font-size:18px;margin-bottom:24px}.review-grid figure{padding-top:20px}.reviews .outline-link{display:inline-block;margin-top:25px}.area h2{font-size:38px}.area img{height:250px}.faq h2{font-size:37px}.contact h2{font-size:43px}.contact-grid{gap:43px}.footer-main{flex-wrap:wrap;gap:25px}.footer-main p{margin-left:auto}.footer-main>a:last-child{width:100%}.footer-bottom{gap:15px;flex-direction:column;font-size:9px}dialog{padding:36px 25px}.hero video{object-position:55% center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:780px){.hero h1{font-size:52px}.hero-content{padding-top:0}}

/* Preserve original logo artwork while blending its black into the site. */
.brand img{mix-blend-mode:screen}.service-no{font-size:18px;line-height:1}.contact-options a>span:first-child{font-size:20px}
/* Standalone service pages and universal service navigation */
.nav{position:relative}.nav-quote{margin-left:auto}.menu{display:flex;align-items:center;gap:15px;border:1px solid #4e4530;padding:12px 16px;color:var(--white);font-size:12px;white-space:nowrap}.menu-symbol{font-size:22px;line-height:1}.nav nav{display:none!important;position:absolute;top:100%;left:auto;right:0;width:580px;max-width:calc(100vw - 40px);padding:26px;background:#11110f;box-shadow:0 20px 50px #0009;border:1px solid #4e4530;max-height:calc(100svh - 130px);overflow:auto;z-index:30}.nav nav.open{display:block!important}.nav-title{font-size:9px;letter-spacing:.16em;color:var(--gold);padding-bottom:15px}.nav nav>a{display:flex;justify-content:space-between;gap:16px;font-size:15px;line-height:1.5;padding:13px 0;border-top:1px solid var(--line)}.nav nav>a span{color:var(--gold)}.nav-sub{display:grid;grid-template-columns:1fr;gap:10px;padding-top:17px;border-top:1px solid var(--line)}.nav-sub a{font-size:12px;color:var(--muted);padding:3px 0}.brand{background:transparent}.brand img{mix-blend-mode:screen}.page-service-links>a{display:flex;gap:17px;border-top:1px solid var(--line);align-items:center;padding:24px 0}.page-service-links h3{font-size:19px;line-height:1.4;letter-spacing:-.02em}.page-service-links>a>span{color:var(--gold)}.page-service-links>a>span:last-child{margin-left:auto}.page-service-links>a:hover h3{color:var(--gold)}.page-hero{padding-top:55px;padding-bottom:65px;border-bottom:1px solid var(--line)}.breadcrumb{display:inline-block;font-size:11px;color:var(--muted);margin-bottom:35px}.page-hero h1{font-size:clamp(40px,5.4vw,74px);max-width:1000px}.page-intro{max-width:680px;font-size:18px;color:var(--muted);line-height:1.8;margin:25px 0 30px}.page-location{margin-left:22px;font-size:11px;color:var(--muted)}.article-body{max-width:1050px;padding-bottom:65px}.article-section{padding-top:52px}.article-section h2{font-size:32px;line-height:1.2;letter-spacing:-.025em;margin-bottom:20px}.article-section p{font-size:16px;color:#c4c2bb;line-height:1.9;max-width:850px;margin-bottom:18px}.article-section strong{color:var(--white);font-weight:600}.gold-list{list-style:none;padding:0;max-width:850px;margin:23px 0}.gold-list li{position:relative;padding:10px 0 10px 22px;color:var(--muted);font-size:15px;border-bottom:1px solid #ffffff0e}.gold-list li:before{content:'•';color:var(--gold);position:absolute;left:0}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:38px}.article-photo{margin:35px 0 0;min-width:0}.project-gallery .article-photo{margin-top:0}.article-photo img{width:100%;max-height:650px;object-fit:contain;background:#181815}.project-gallery img{height:470px;object-fit:contain}.article-photo figcaption{font-size:11px;color:var(--muted);line-height:1.7;margin-top:12px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.product img{height:330px;background:#fff;object-fit:contain;padding:20px}.subservice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:35px}.subservice-grid>a{display:block;padding:25px;border:1px solid #464030;background:#171713}.subservice-grid h3{font-size:23px;line-height:1.25;margin-bottom:14px}.subservice-grid p{font-size:13px;color:var(--muted);line-height:1.8}.subservice-grid span{display:block;margin-top:22px;font-size:11px;color:var(--gold)}.article-sources{margin-top:48px;padding-top:25px;border-top:1px solid var(--line)}.article-sources h2{font-size:17px;letter-spacing:0}.source-links{padding-left:18px;color:var(--gold);font-size:12px;line-height:1.9}.source-links a:hover{text-decoration:underline}.page-cta{background:#191914;padding:60px 0}.page-cta h2{font-size:42px}.page-cta p:not(.eyebrow){color:var(--muted);font-size:14px;margin:20px 0 25px}.related{padding:45px 0;display:flex;flex-wrap:wrap;gap:15px 28px}.related .eyebrow{width:100%;margin-bottom:6px}.related a{font-size:12px;color:var(--muted)}.related a:hover{color:var(--gold)}.footer-services{display:flex;flex-wrap:wrap;gap:12px 25px;padding-top:23px;font-size:10px;color:var(--muted)}.maintenance-video{max-width:430px}.service-video{width:100%;max-height:520px;object-fit:contain;background:#181815}.maintenance-video p{font-size:12px;margin-top:12px}.nav>a.brand{margin-right:auto}
@media(max-width:780px){.nav{gap:10px}.menu{font-size:10px;padding:10px;gap:10px}.menu-symbol{font-size:19px}.nav-quote{padding:10px;font-size:10px;gap:10px}.nav nav{top:77px;right:0;left:auto;padding:22px}.nav nav>a{font-size:14px}.page-hero{padding-top:35px;padding-bottom:45px}.page-hero h1{font-size:43px}.page-intro{font-size:15px}.page-location{display:block;margin:18px 0 0}.article-section{padding-top:37px}.article-section h2{font-size:28px}.article-section p{font-size:14px}.project-gallery,.subservice-grid,.product-grid{grid-template-columns:1fr}.project-gallery img{height:auto;max-height:620px}.product img{height:280px}.page-cta h2{font-size:35px}.article-body{padding-bottom:45px}.gold-list li{font-size:14px}.footer-services{font-size:10px}.page-service-links h3{font-size:18px}}
@media(max-width:780px){.nav .brand{width:90px}.nav{gap:8px}.nav-quote{gap:8px;padding:10px}.menu{gap:8px;padding:10px}}

.grounding-photo{max-width:600px;margin:28px auto 0}.grounding-photo img{width:100%;height:auto;max-height:none;object-fit:contain}

.service-project-photo{max-width:650px;margin:25px auto 0}.service-project-photo img{width:100%;height:auto;object-fit:contain}

/* Preserve the supplied portrait and its natural proportions. */
.service-photo.original-portrait{height:auto;min-height:0;align-self:start}.service-photo.original-portrait img{width:100%;height:auto;object-fit:contain}.service-photo.original-portrait .photo-note{position:static}
