/* 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:#f2f1eb;--paper:#fffefa;--ink:#262726;--muted:#656660;--accent:#4a471e;--brand:#55501d;--line:#d8d7cc}
.header{background:#f2f1ebf5}.button{background:#e5d84a;color:#242627;border:1px solid #d6ca40}.button:hover{background:#d9cb32;color:#242627}.button-light{background:#fffefa;border-color:var(--line);color:#262726}.button-light:hover{background:#e8e6d8}
.hero-copy{display:grid;grid-template-columns:1.1fr 1fr;gap:0 65px;text-align:left;max-width:1280px;padding-top:50px}.hero h1{grid-column:1;grid-row:2/5}.hero-copy>.eyebrow{grid-column:1/-1;color:#6a5c16}.hero-description{grid-column:2;grid-row:2;margin:0 0 22px}.hero-buttons{grid-column:2;grid-row:3;justify-content:flex-start}.hero-contact-links{grid-column:2;grid-row:4;justify-content:flex-start;margin-top:20px}
.hero-comparison{margin-top:15px}.comparison-divider{background:#9d8c1e}.comparison-handle{border-color:#9d8c1e;background:#fffef8;color:#454019}.comparison-divider--ceramic .comparison-handle{background:#e5d84a;color:#262726}.comparison-tag{background:#fffdf2;color:#343326;border-color:#d4cfb0}
.service-family{grid-template-columns:.7fr 1.7fr;gap:60px}.family-heading{border-left:4px solid #d8c934;padding-left:22px}.family-heading .eyebrow{color:#746317}.service-card{padding-block:25px}.service-bottom{min-width:0}
.guide-section{background:#e9e7da}.guide-panel{background:#fffefa;border-top:4px solid #d8c934}.stepper li.active{border-color:#998518}.guide-caption .line-number{color:#8e7c20}
.approach-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:40px;align-items:start}.approach-list{display:block;margin:0}.approach-list article{display:grid;grid-template-columns:38px 1fr;gap:20px;margin-bottom:25px}.approach-list article>span{font-size:20px;color:#8e7c20}.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}
.trust-line{border-top:1px solid #d6d3bd}.contact-section .button{background:#e5d84a;color:#242627}.mobile-contact>a:first-child{background:#e5d84a;color:#242627}
@media(max-width:1000px){.hero-copy{gap:0 25px}.hero-buttons{flex-wrap:wrap}.approach-grid{grid-template-columns:1fr}.service-family{gap:25px}}
@media(max-width:760px){.hero-copy{display:block;padding-top:30px}.hero-description{margin:20px 0}.hero-buttons{display:grid}.hero-contact-links{margin-top:18px}.service-family{grid-template-columns:1fr}.family-heading{padding-left:15px}.approach-grid{display:block}.approach-list{margin-top:28px}.finish-frame{aspect-ratio:1.65}.stepper li.active{border-color:#998518}}
