/* Original 846 identity: black type, light surfaces, restrained corners. */
:root{--bg:#f3f3f1;--paper:#fff;--ink:#161616;--muted:#666662;--accent:#303030;--accent-hover:#080808;--brand:#1e1e1e;--line:#dcdcd8}
.header{background:#f8f8f7ed;color:var(--ink);border-bottom:1px solid var(--line)}
.header-inner{gap:22px}
.brand .brand-mark{width:88px;height:76px;object-fit:contain}
.brand-type>strong{font-size:18px;letter-spacing:-.4px}
.brand-type>small{font-size:9px;letter-spacing:2.1px;color:#62625e}
.header-phone{background:#1e1e1e;color:#fff;border-color:#1e1e1e}
.header-phone:hover{color:#fff;background:#393939}
.desktop-nav a:hover,.header-address:hover{color:#000}
.header-address{color:#585854}
.button{color:#fff;background:#1e1e1e}
.button:hover{background:#393939}
.button-light{background:#fff;color:#222;border-color:#d4d4cf}
.button-light:hover{background:#e8e8e4}
.hero-copy{display:block;text-align:center;padding-top:38px;max-width:1000px}
.hero-copy>.eyebrow{color:#5f5f5b;font-size:12px;letter-spacing:3px;margin-bottom:18px}
.hero h1{font-size:clamp(40px,4.3vw,64px);letter-spacing:-2.8px;line-height:1.08}
.hero h1>span{color:#74746f}
.hero-description{margin:20px auto 23px;max-width:53ch;font-size:17px;line-height:1.6}
.hero-buttons{justify-content:center;display:flex}
.hero-contact-links{justify-content:center;margin-top:18px}
.hero-comparison{margin-top:8px}
.comparison-images{mask-image:linear-gradient(to bottom,transparent,#000 9%,#000 92%,transparent)}
.hero-visual:after{background:linear-gradient(90deg,var(--bg),transparent 6%,transparent 94%,var(--bg))}
.hero-visual.comparison-stage{--stage-height:clamp(310px,calc(100dvh - 440px),500px);max-width:min(1120px,calc(var(--stage-height) * 1.9))}
.comparison-divider{background:#444;box-shadow:0 0 0 1px #fff}
.comparison-handle{border-color:#393939;color:#222;background:#fff}
.comparison-divider--ceramic .comparison-handle{background:#1e1e1e;color:#fff}
.comparison-tag{color:#333;border-color:#d5d5cf}
.comparison-caption>span{color:#353535}
.trust-line{grid-template-columns:1fr 1fr 1.2fr;gap:28px}
.trust-route{display:flex;align-items:center;gap:13px;justify-content:flex-end;font-size:13px;color:#666662}
.trust-route svg{width:24px;height:24px;flex-shrink:0}
.trust-route strong{font-weight:600}
.additional-service{border-left-color:#1e1e1e}
.guide-panel{border-top-color:#1e1e1e}
.finish-visual{background:#e9e9e5;justify-content:space-between;min-height:390px}
.finish-visual img{width:100%;margin:0;object-fit:contain;mix-blend-mode:multiply;aspect-ratio:1.5}
.finish-caption{background:#202020;padding:24px 28px;color:#fff}
.finish-caption>span{color:#c7c7c0}
.finish-caption small{color:#d6d6d1}
.contact-section{background:#191919;color:#f6f6f4;--brand:#f4f4ef;--accent:#f4f4ef;--muted:#bfbfb8;--line:#41413c}
.contact-section .button{background:#f4f4ef;color:#191919}
.contact-section .button:hover{background:#d7d7d0}
.contact-section .brand-type>small{color:#c8c8c1}
.contact-section .brand-mark{width:88px;height:76px}
.contact-section h2>span{color:#b5b5ae}
.mobile-contact>a:first-child{background:#1e1e1e;color:#fff}
.legal-page .header .legal-home{color:#333}
.legal-page .brand-type>strong{font-size:18px}
.legal-template-note{border-left-color:#303030}
.field-error{color:#a13b25}
@media(max-width:1100px){.header-actions{gap:12px}.header-inner{gap:18px}.desktop-nav{gap:17px;font-size:13px}.brand-type>strong{font-size:16px}.header-address{font-size:11px}.header-phone{font-size:13px}}
@media(min-width:761px) and (max-height:850px){.header-inner{min-height:78px}.brand .brand-mark{height:62px;width:76px}.hero-copy{padding-top:22px}.hero-copy>.eyebrow{margin-bottom:13px}.hero h1{font-size:42px;letter-spacing:-1.8px}.hero-description{font-size:15px;margin:15px auto 17px;line-height:1.55}.hero-buttons .button{min-height:46px;padding-block:12px}.hero-contact-links{margin-top:13px}.hero-visual.comparison-stage{--stage-height:clamp(270px,calc(100dvh - 395px),450px)}.comparison-caption{padding-block:4px 13px}}
@media(max-width:760px){
 .header-inner{grid-template-columns:1fr auto;gap:5px 12px;min-height:106px;padding-block:8px}
 .header .brand .brand-mark{width:83px;height:69px}
 .header .brand-type{display:none}
 .header-phone{font-size:12px;padding-inline:13px}
 .header-address{grid-column:1/-1;grid-row:2;justify-content:center;min-height:24px;font-size:12px}
 .hero-copy{padding-top:28px;text-align:left}
 .hero-copy>.eyebrow{font-size:10px;margin-bottom:16px;letter-spacing:2px}
 .hero h1{font-size:clamp(33px,8.5vw,49px);letter-spacing:-1.5px}
 .hero-description{margin:18px 0;font-size:16px;max-width:36ch}
 .hero-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .hero-buttons .button{font-size:13px;min-height:52px;padding-inline:12px}
 .hero-contact-links{align-items:flex-start;justify-content:flex-start;gap:10px 14px}
 .hero-visual.comparison-stage{height:250px;max-width:100%}
 .trust-line{grid-template-columns:1fr 1.2fr;gap:18px;padding-block:20px}
 .trust-line>div{display:none}
 .trust-route{font-size:11px;gap:7px}
 .finish-visual{min-height:0;display:block}
 .finish-visual img{display:block}
 .finish-caption{padding:23px}
 .contact-section .brand-type>strong{font-size:17px}
 .contact-section .brand-type>small{font-size:8px}
 .contact-section .brand-mark{width:70px;height:63px}
 .legal-page .header .brand .brand-mark{width:80px;height:67px}
}
@media(max-width:360px){.header-phone{font-size:11px;padding-inline:10px}.hero-copy.shell{padding-inline:22px}.hero h1{font-size:33px}.hero-description{font-size:15px}.hero-buttons .button{font-size:12px}.hero-visual.comparison-stage{height:220px}.hero-contact-links{flex-direction:column}.contact-section footer .brand{gap:9px}.contact-section .brand-type>strong{font-size:15px}}

/* 846 section composition: grouped services, a wide car frame, process below. */
.service-grid{display:block;border-top:0}
.service-family{display:grid;grid-template-columns:.72fr 1.65fr;gap:55px;padding:35px 0;border-top:1px solid var(--line)}
.family-heading .eyebrow{display:block;margin-bottom:17px;font-size:11px;letter-spacing:1.6px}
.family-heading h3{font-size:29px;line-height:1.2;letter-spacing:-.9px;margin:0 0 13px}
.family-heading p{font-size:15px;line-height:1.7;max-width:30ch;color:var(--muted);margin:0}
.service-card{grid-template-columns:28px minmax(0,1fr) minmax(145px,.65fr);gap:10px 18px;padding:23px 0;align-items:start}
.service-card:first-child{padding-top:0}
.service-card:last-child{border-bottom:0;padding-bottom:0}
.service-card h4{grid-column:2;grid-row:1;font-size:22px;line-height:1.3;letter-spacing:-.6px;margin:0}
.service-card p{grid-column:2;grid-row:2;font-size:15px;line-height:1.7;max-width:45ch}
.service-top{grid-column:1;grid-row:1/3;padding-top:3px}
.service-index{font-size:13px}
.service-bottom{grid-column:3;grid-row:1/3;flex-direction:column;align-items:flex-end;text-align:right;gap:13px}
.additional-service{margin-top:15px;padding:30px;background:#e4e4df;grid-template-columns:.8fr 1.6fr auto}
.guide-layout{grid-template-columns:.75fr 1.55fr;gap:45px;align-items:start}
.guide-panel{display:grid;grid-template-columns:120px minmax(0,1fr);gap:26px;padding:30px;min-height:440px;background:#fff;border:1px solid #d8d8d1;border-radius:5px}
.stepper{display:flex;flex-direction:column;gap:21px;margin:0;border:0;align-self:start}
.stepper li{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:65px;border:0;border-left:2px solid var(--line);padding:0 0 0 13px;font-size:12px}
.stepper li.active{border-left-color:#222;border-top:0}
.stepper li.complete{border-left-color:#777;border-top:0}
.stepper li>span{font-size:18px}
.guide-panel form{min-width:0}
.approach-grid{display:block}
.finish-visual{display:block;min-height:0;margin:0;background:#f3f3f1;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.finish-visual img{display:block;width:100%;height:auto;max-width:100%;margin:0;aspect-ratio:3/2;object-fit:contain;object-position:center;mix-blend-mode:normal}
.finish-frame{position:relative;aspect-ratio:1.8;overflow:hidden}
.finish-frame img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:auto}
.finish-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 30px;padding:25px 30px;background:#202020}
.finish-caption>span{font-size:11px;line-height:1.5}
.finish-caption strong{font-size:24px;margin:0}
.finish-caption small{font-size:12px;margin:0;max-width:30ch}
.approach-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:35px;row-gap:25px;margin-top:35px}
.approach-list article,.approach-list article:first-child{display:block;padding:0 0 25px;border-top:0;border-bottom:1px solid var(--line)}
.approach-list article>span{display:block;font-size:25px;letter-spacing:-1px;color:#777;margin-bottom:18px;padding:0}
.approach-list h3{font-size:23px;line-height:1.3;margin:0 0 12px}
.approach-list p{font-size:15px;line-height:1.75;margin:0}
.approach-list>.text-button{grid-column:1/-1;justify-self:start;margin:0}
.reviews-grid{display:block;border:0;padding:0}
.review-card,.review-card+.review-card{display:grid;grid-template-columns:.65fr 1.5fr;column-gap:60px;padding:32px 0;border:0;border-top:1px solid var(--line);border-radius:0}
.review-card>p{grid-column:2;grid-row:1/3;font-size:22px;line-height:1.7;margin:0}
.review-stars{grid-column:1;grid-row:1;font-size:11px;line-height:1.7;letter-spacing:1px;max-width:28ch}
.review-card>div{grid-column:1;grid-row:2;margin-top:25px;align-self:end}
@media(max-width:1000px) and (min-width:761px){.service-family{gap:32px;grid-template-columns:.6fr 1.5fr}.guide-layout{grid-template-columns:minmax(0,1fr);gap:30px}.guide-copy{max-width:620px}.guide-caption{display:none}.guide-panel{grid-template-columns:160px minmax(0,1fr)}.approach-list{gap:25px}.approach-list h3{font-size:21px}.review-card,.review-card+.review-card{column-gap:35px}}
@media(max-width:760px){
 .service-family{grid-template-columns:minmax(0,1fr);gap:27px;padding:28px 0}
 .family-heading h3{font-size:28px}.family-heading p{max-width:40ch;font-size:15px}
 .service-card{grid-template-columns:22px minmax(0,1fr);gap:11px 13px;padding:22px 0}
 .service-card h4{grid-column:2;grid-row:1;font-size:22px}
 .service-card p{grid-column:2;grid-row:2;font-size:15px}
 .service-bottom{grid-column:2;grid-row:3;align-items:flex-start;text-align:left;gap:11px}
 .service-top{grid-column:1;grid-row:1}
 .additional-service{grid-template-columns:minmax(0,1fr);gap:18px;padding:25px 23px}
 .guide-layout{grid-template-columns:minmax(0,1fr);gap:28px}
 .guide-panel{display:block;padding:23px 19px;min-height:440px}
 .stepper{flex-direction:row;gap:9px;margin-bottom:27px}
 .stepper li{flex:1;display:block;border-left:0;border-top:2px solid var(--line);padding:10px 0 0;min-height:0;font-size:10px}
 .stepper li>span{display:block;font-size:15px;margin-bottom:5px}
 .stepper li.active{border-top:2px solid #222}.stepper li.complete{border-top:2px solid #777}
 .finish-visual{min-height:0;display:block}
 .finish-visual img{width:100%;height:auto;aspect-ratio:3/2}
 .finish-caption{display:block;padding:22px}
 .finish-caption strong{font-size:22px;margin-top:9px}
 .finish-caption small{margin-top:12px;max-width:none}
 .approach-list{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:28px}
 .approach-list article,.approach-list article:first-child{display:grid;grid-template-columns:30px minmax(0,1fr);gap:17px;padding-bottom:23px}
 .approach-list article>span{font-size:19px;margin:0;padding-top:3px}
 .approach-list h3{font-size:23px;margin-bottom:9px}
 .review-card,.review-card+.review-card{display:block;padding:27px 0}
 .review-stars{font-size:10px;max-width:none}
 .review-card>p{font-size:19px;margin-top:18px}
 .review-card>div{margin-top:22px}
}
.service-card p,.family-heading p,.approach-list p{font-size:16px}

/* Project-specific composition. */
.brand .brand-mark{width:64px;height:64px;border-radius:5px;object-fit:contain}
.brand-type>strong{font-size:19px;letter-spacing:-.6px}.brand-type>small{font-size:8px}
.header-inner{gap:18px}.desktop-nav{gap:18px;font-size:14px}.header-address{max-width:155px;font-size:12px}.header-phone{font-size:14px}
.hero h1{font-size:clamp(40px,4.3vw,62px);letter-spacing:-2.4px;line-height:1.08}
.hero-description{font-size:17px;line-height:1.65}.hero-visual.comparison-stage{height:auto;aspect-ratio:1.8;max-width:1040px}
.comparison-stage img{mix-blend-mode:normal}.comparison-images{mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 86%,transparent)}
.comparison-caption{font-size:13px}.comparison-caption small{font-size:12px}.comparison-handle{width:48px;height:48px}
.service-card h4{font-size:24px}.service-card p,.family-heading p,.approach-list p{font-size:16px}
.reviews-summary{display:flex;justify-content:space-between;align-items:center;gap:30px;border-block:1px solid var(--line);padding:35px 0}
.reviews-summary p{font-size:25px;line-height:1.4;max-width:30ch;margin:0}
.finish-frame{aspect-ratio:1.8}.finish-caption{background:#242627;color:#fff}.finish-caption strong{font-size:25px}
.contact-section{background:#242627}.contact-section .text-button,.contact-section .contact-phone{color:#f5f5f2}
.contact-section .brand-mark{width:64px;height:64px}.contact-section .brand-type strong{color:#fff}
.button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #897319;outline-offset:4px}
@media(max-width:1250px){.desktop-nav{display:none}.header-address{max-width:none}}
@media(max-width:760px){
 .header-inner{min-height:94px}.header .brand .brand-mark{height:54px;width:54px}.header .brand-type{display:grid}.header .brand-type>strong{font-size:16px}.header .brand-type>small{font-size:7px}
 .header-phone{font-size:11px;padding-inline:10px}.header-address{font-size:12px}
 .hero-copy{padding-top:30px}.hero h1{font-size:clamp(35px,9vw,48px);letter-spacing:-1.6px}.hero-description{font-size:16px}
 .hero-visual.comparison-stage{height:auto;aspect-ratio:1.65;width:100%;max-width:none}.hero-comparison{width:100%}.comparison-handle{width:42px;height:42px}
 .comparison-images{mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 86%,transparent)}.comparison-caption{padding:10px 20px 22px}
 .reviews-summary{display:block;padding:28px 0}.reviews-summary p{font-size:23px;margin-bottom:24px}.reviews-summary .button{font-size:14px}
 .finish-caption strong{font-size:23px}.service-card h4{font-size:23px}.service-family{padding-block:30px}
 .contact-section .brand-type strong{font-size:20px}
}
@media(max-width:380px){.header .brand-type>strong{font-size:13px}.header .brand-type>small{font-size:6px}.header .brand .brand-mark{width:43px;height:43px}.header-phone{font-size:10px;padding:10px 7px}.header-inner{gap:8px}.hero-buttons{grid-template-columns:1fr}.hero h1{font-size:35px}}

:root{--bg:#f0f1f0;--paper:#fff;--ink:#212427;--muted:#646a6d;--accent:#313a41;--brand:#313a41;--line:#d6dbdc}
.header{background:#202326;color:#fff;border-color:#3e4245}.header .brand-type>small,.header-address{color:#c4c9ca}.header-phone{background:#f1f2f1;color:#202326;border-color:#f1f2f1}.header-phone:hover{background:#d9dedf;color:#202326}.desktop-nav a{color:#d8dcdd}.desktop-nav a:hover,.header-address:hover{color:#fff}
.hero{background:#202326;color:#f6f6f4;--bg:#202326;--muted:#c0c5c8;--accent:#d6dfe3;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);align-items:center;padding-top:32px}.hero-copy{width:100%;padding:25px 0 25px max(30px,calc((100vw - 1220px)/2));max-width:none;display:block;text-align:left}.hero h1{font-size:clamp(37px,4vw,59px);letter-spacing:-2px}.hero h1>span{color:#b7c1c7}.hero-copy>.eyebrow{color:#bcc6ca}.hero-description{color:#c0c5c8;margin:24px 0;max-width:35ch}.hero-buttons{justify-content:flex-start;flex-wrap:wrap}.hero-contact-links{justify-content:flex-start;margin-top:22px}.hero-phone,.hero-location{color:#d4dadd}.hero-comparison{min-width:0;width:100%;margin:0;padding:0 22px 0 0}.hero-visual.comparison-stage{aspect-ratio:1.4}.hero-visual:after{background:linear-gradient(90deg,#202326,transparent 8%,transparent 94%,#202326)}.comparison-stage img{mix-blend-mode:normal}.comparison-caption>span{color:#e0e5e7}.comparison-caption small{color:#b1b8bb}.comparison-divider{background:#b7c4cb;box-shadow:0 0 0 1px #202326}.comparison-tag{background:#2b3034;color:#eef1f2;border-color:#555d62}.comparison-handle{background:#edf0f1;color:#202326;border-color:#8f9ea7}.comparison-divider--ceramic .comparison-handle{background:#536774;color:#fff;border-color:#b5c5ce}
.hero>.trust-line{grid-column:1/-1;width:calc(100% - 60px);margin-top:25px;padding-block:23px;border-color:#42494e;color:#c8ced2}.trust-route{color:#c8ced2}.trust-line .rating{color:#f2f4f5}.trust-mark{color:#d7dfe3;border-color:#555e65}
.button{background:#303b43;color:#fff;border-color:#303b43}.button:hover{background:#42535e;color:#fff}.button-light{background:#fff;color:#222;border-color:#d0d7da}.hero .button{background:#f1f3f4;color:#202326;border-color:#f1f3f4}.hero .button-light{background:transparent;color:#eef1f2;border-color:#68737b}
.service-family{display:block}.family-heading{display:grid;grid-template-columns:.5fr 1fr 1fr;gap:28px;margin-bottom:28px;align-items:start}.family-heading h3{font-size:31px}.family-heading .eyebrow{padding-top:8px}.family-heading p{max-width:none}.family-items{margin-left:19%}.service-card{padding:27px 22px;border-bottom-color:#cbd2d6}.service-card:first-child{padding-top:24px}.service-card:nth-child(odd){background:#e5e8e8}.service-card:last-child{padding-bottom:24px}
.guide-layout{grid-template-columns:1fr 1.3fr}.guide-panel{display:block;background:#fff;border-top:4px solid #536774}.stepper{flex-direction:row;gap:15px;margin-bottom:30px}.stepper li{display:block;flex:1;border-left:0;border-top:2px solid #d2d9dc;padding:10px 0;min-height:0}.stepper li>span{display:block;margin-bottom:8px}.stepper li.active{border-top:2px solid #536774}.stepper li.complete{border-top:2px solid #8c9ba4}
.approach-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:35px}.finish-visual{grid-column:2;grid-row:1;background:#202326;border:0}.finish-frame{aspect-ratio:1.55}.finish-caption{display:block}.finish-caption strong{margin-top:12px}.finish-caption small{margin-top:12px;max-width:none}.approach-list{grid-column:1;grid-row:1;display:block;margin:0}.approach-list article{margin-bottom:25px}.approach-list article>span{font-size:16px;margin-bottom:10px;color:#536774}
.reviews-section{background:#e3e7e8}.review-source strong{color:#303b43}.mobile-contact>a:first-child{background:#303b43;color:#fff}.legal-page .header .legal-home{color:#dce4e8}
@media(max-width:1000px){.hero{grid-template-columns:1fr}.hero-copy{padding-inline:30px;max-width:780px;margin-left:0}.hero-comparison{padding:0 25px;max-width:1000px}.hero-visual.comparison-stage{aspect-ratio:1.8}.hero-description{max-width:52ch}.guide-layout{grid-template-columns:1fr}.family-heading{grid-template-columns:.5fr 1fr}.family-heading p{grid-column:2}.approach-grid{grid-template-columns:1fr}.finish-visual{grid-column:1;grid-row:1}.approach-list{grid-column:1;grid-row:2}}
@media(max-width:760px){.hero{padding-top:0}.hero-copy{padding:32px 22px 15px}.hero h1{font-size:clamp(35px,8.5vw,48px)}.hero-comparison{padding:0}.hero-visual.comparison-stage{aspect-ratio:1.6}.hero>.trust-line{width:calc(100% - 44px);margin-top:0}.family-heading{display:block;margin-bottom:22px}.family-heading .eyebrow{margin-bottom:16px}.family-heading h3{font-size:29px}.family-items{margin:0}.service-card{padding:22px 14px;gap:10px}.guide-panel{padding:23px 19px}.stepper li{font-size:10px}.finish-frame{aspect-ratio:1.65}.approach-grid{display:block}.approach-list{margin-top:28px}.hero-buttons{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:380px){.hero-buttons{grid-template-columns:1fr}.hero h1{font-size:35px}}

.hero .rating strong,.hero .trust-line strong{color:#f2f4f5}.hero .rating span,.hero .trust-line>div>span{color:#c8ced2}
