/* Shared refinement of the existing Matt Pro Renove visual identity. */
:root{--ink:#142b35;--rust:#a93f29;--rust-dark:#89301e;--muted:#526168;--paper:#f4f5f2}
.header{box-shadow:0 4px 20px #142b3505}
.nav-inner{min-height:90px}
.brand-text{font-size:1.02rem;letter-spacing:.01em}
nav#navigation{gap:25px}
nav#navigation>a:not(.button){position:relative;padding:8px 0}
nav#navigation>a:not(.button):after{content:'';position:absolute;bottom:2px;left:0;width:0;height:2px;background:var(--rust);transition:width .2s}
nav#navigation>a:not(.button):hover:after{width:100%}
.button{border-radius:3px;box-shadow:0 6px 18px #a93f2910;font-size:.875rem}
.button-small{padding-inline:22px;gap:20px}
.hero{grid-template-columns:1fr 1.08fr;min-height:685px;max-width:1920px;margin-inline:auto}
.hero-content{padding-top:80px;padding-bottom:55px;padding-right:42px}
.hero-content .eyebrow{font-size:.75rem;letter-spacing:.105em;line-height:1.8}
.hero h1{font-size:clamp(3.5rem,5.1vw,5.5rem);line-height:1.06;letter-spacing:-.055em;margin-bottom:30px}
.hero h1 em{font-size:1.1em}
.hero-content>p{font-size:1rem;line-height:1.8;max-width:420px}
.hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:20px 24px;margin-top:30px}
.hero-actions .button{gap:17px;padding-inline:22px}
.hero-secondary{font-size:.875rem;gap:8px;white-space:nowrap}
.hero-note{margin-top:20px;font-size:.75rem;gap:8px}
.hero-img{object-position:58% center}
.hero-visual:after{background:linear-gradient(0deg,#102c36b3,transparent 66%)}
.hero-image-caption{left:44px;bottom:141px}
.hero-image-caption span{font-size:.75rem;letter-spacing:.065em}
.hero-image-caption strong{font-size:1.65rem;line-height:1.3;max-width:390px;margin-top:14px}
.hero-project-link{position:absolute;bottom:32px;left:36px;right:36px;z-index:2;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 26px;box-shadow:0 12px 24px #142b351a;border-left:3px solid var(--rust)}
.hero-project-link>span{font-size:1rem;font-weight:700;line-height:1.4}
.hero-project-link small{display:block;font-size:.875rem;font-weight:400;color:var(--muted);margin-top:5px}
.hero-project-link svg{color:var(--rust);transition:transform .2s}
.hero-project-link:hover svg{transform:translate(3px,-3px)}
.rating-link{display:flex;align-items:center;gap:16px;width:fit-content;max-width:100%;border-top:1px solid #cdd6d0;margin-top:29px;padding-top:22px}
.rating-link-value{font-size:2rem;font-weight:800;letter-spacing:-.06em;line-height:1}
.rating-link-value small{font-size:.875rem;letter-spacing:0;margin-left:4px;font-weight:500;color:var(--muted)}
.rating-link>span:nth-child(2){display:block;font-size:.875rem;line-height:1.5}
.rating-link b{display:block;font-weight:700}
.rating-link>span:nth-child(2)>small{display:block;color:var(--muted);font-size:.75rem}
.rating-link>svg{margin-left:8px;color:var(--rust)}
.assurance{background:#fff}
.assurance>.wrap{padding-block:29px}
.assurance .wrap>div>svg{color:var(--rust)}
.section{padding-block:90px}
.eyebrow{font-size:.75rem;letter-spacing:.11em}
.section-heading{gap:50px}
.section-heading h2{font-size:clamp(2.35rem,3.1vw,3.25rem)}
.service-image{border-radius:4px;height:265px}
.service-image img{filter:saturate(.91)}
.service-card h3{font-size:1.35rem;line-height:1.3;letter-spacing:-.03em}
.service-card p{font-size:1rem;line-height:1.6}
.image-num{background:#142b3577;padding:5px 9px;border-radius:2px;font-size:.75rem}
.more-services{gap:0 35px}
.more-services>a{font-size:.9375rem;min-height:68px;transition:color .2s}
.service-number{font-size:.75rem}
.more-services>a svg{transition:transform .2s}
.more-services>a:hover svg{transform:translate(2px,-2px)}
.reviews{background:#142b35;color:#fff;position:relative}
.reviews .eyebrow{color:#f0b595}
.reviews h2 em{color:#f0b595}
.reviews-heading{align-items:center;margin-bottom:42px}
.reviews-rating{border-left:1px solid #ffffff35;padding-left:36px;min-width:270px}
.reviews-rating>div{display:flex;align-items:baseline;gap:11px;line-height:1.1;margin-bottom:12px}
.reviews-rating strong{font-size:4rem;letter-spacing:-.06em;font-weight:700}
.reviews-rating>div>span{font-size:1.25rem;color:#b6c9cb}
.reviews-rating>p{font-size:.875rem;line-height:1.65;color:#d2dedd}
.reviews-rating>a{font-size:.75rem;display:inline-flex;align-items:center;gap:10px;margin-top:12px;text-decoration:underline;text-underline-offset:4px;color:#f0b595}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.review-card{display:flex;flex-direction:column;min-width:0;background:#fff;color:var(--ink);border-radius:4px;padding:30px 28px;position:relative}
.review-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px;flex-wrap:wrap}
.review-stars{color:#a56616;font-size:1.125rem;letter-spacing:.1em;line-height:1.2}
.review-origin{font-size:.75rem;color:var(--muted)}
.review-topic{font-size:.75rem;font-weight:650;color:var(--rust);margin-bottom:15px;line-height:1.6}
.review-card blockquote{margin:0 0 20px;font:500 1.4rem/1.45 Manrope,Arial,sans-serif;letter-spacing:-.04em;min-height:101px}
.review-summary{font-size:.875rem;line-height:1.8;margin-bottom:28px}
.review-summary>span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.075em;font-weight:750;margin-bottom:5px;color:var(--ink)}
.review-author{display:flex;align-items:center;gap:12px;margin-top:auto;border-top:1px solid var(--line);padding-top:22px}
.review-avatar{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:50%;background:#e9efec;color:#344b49;font-size:.875rem;font-weight:750}
.review-card:nth-child(2) .review-avatar{background:#f5e8df;color:#875238}
.review-card:nth-child(3) .review-avatar{background:#e5eaf1;color:#405878}
.review-author h3{font-size:.9375rem;letter-spacing:-.015em;line-height:1.5;font-weight:750}
.review-author time{font-size:.75rem;color:var(--muted);display:block;margin-top:2px}
.review-source{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.75rem;font-weight:650;color:var(--rust);margin-top:20px;text-decoration:underline;text-underline-offset:3px}
.review-source:hover{color:var(--ink)}
.reviews-footnote{display:flex;justify-content:space-between;gap:45px;align-items:center;margin-top:30px}
.reviews-footnote>p{font-size:.75rem;color:#c7d6d4;line-height:1.75;max-width:600px}
.reviews-footnote .text-link{color:white;border-color:#ffffff55;font-size:.875rem;flex-shrink:0}
.reviews-footnote .text-link:hover{color:#f0b595;border-color:#f0b595}
.craft{background:#fff}
.craft-visual img{border-radius:4px}
.craft-caption{border-radius:0 4px 0 4px;font-size:.75rem}
.craft-content h2{font-size:clamp(2.35rem,3.1vw,3.25rem)}
.craft-content>p:not(.eyebrow){font-size:1rem;line-height:1.8}
.check-list li{font-size:.9375rem;line-height:1.7}
.emergency{background:var(--paper);color:var(--ink);border-block:1px solid var(--line);padding-block:48px}
.emergency .eyebrow{color:var(--rust);font-size:.75rem}
.emergency h2 em{color:var(--rust)}
.emergency p:not(.eyebrow){color:var(--muted);font-size:1rem}
.emergency-call{background:var(--ink);padding:24px;border-radius:4px;color:white;gap:16px}
.emergency-call small{font-size:.75rem;color:#d5dfdb}
.emergency-call strong{font-size:1.7rem}
.emergency-call>svg:last-child{margin-left:10px}
.steps h3{font-size:1.3rem}
.steps p{font-size:1rem}
.steps article>span{color:var(--rust);font-size:2.5rem}
.city-panel{border-radius:4px;box-shadow:0 12px 40px #142b3505}
.city-panel li{font-size:.875rem}
.city-panel>p{font-size:.875rem!important}
.contact-grid{grid-template-columns:1fr 1.25fr;gap:80px}
.contact h2{font-size:clamp(2.5rem,3.1vw,3.5rem);line-height:1.13;max-width:440px}
.contact h2 em{display:inline}
.contact-grid>div>p:not(.eyebrow){font-size:1rem;max-width:370px}
.contact-note{font-size:.875rem!important}
form{border:1px solid #dce1da;border-radius:4px;box-shadow:0 14px 40px #142b3505;padding:36px}
input,textarea,select{border-radius:3px}
.field label{font-size:.875rem;margin-bottom:8px}
.form-intro{font-size:.875rem}
.form-help{font-size:.75rem}
.footer{padding-top:68px}
.footer-main>div>a:not(.brand){font-size:.9375rem}
.footer-main h3{font-size:.9375rem}
.footer-main>div>p{font-size:1rem;line-height:1.75}
.footer-bottom{font-size:.75rem}
.service-hero{padding-top:32px}
.service-hero-grid>img{border-radius:4px}
.service-body aside{border-radius:4px}
.aside-reviews{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.875rem;margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid var(--line);color:var(--rust)}
.aside-reviews:hover{text-decoration:underline}
@media(min-width:1600px){.hero-content{padding-left:max(56px,calc((100vw - 1280px)/2))}.hero h1{font-size:5.5rem}}
@media(max-width:1150px){nav#navigation{gap:18px}.hero{grid-template-columns:1fr 1fr;min-height:660px}.hero-content{padding-top:65px;padding-right:32px}.hero h1{font-size:4rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-image-caption{left:30px}.hero-project-link{left:25px;right:25px;padding:20px}.hero-image-caption strong{font-size:1.5rem}.rating-link{gap:12px}.rating-link>span:nth-child(2)>small{max-width:190px}.review-card{padding:27px 23px}.review-top{gap:9px}.review-card blockquote{font-size:1.3rem}.contact-grid{gap:45px}.emergency-call{padding:22px;gap:12px}.emergency-call strong{font-size:1.5rem}.emergency-inner{gap:35px}.emergency h2{font-size:2.25rem}.reviews-rating{min-width:245px}}
@media(max-width:1000px){.review-top{flex-direction:column;align-items:flex-start}.review-card blockquote{font-size:1.2rem;min-height:110px}.review-card{padding:25px 21px}.reviews-grid{gap:16px}}
@media(max-width:900px){.nav-inner{min-height:78px}.hero h1{font-size:3.45rem}.hero-content{padding-top:55px;padding-bottom:45px}.hero-content .eyebrow{font-size:.75rem}.hero{min-height:690px}.hero-project-link{padding:20px;left:20px;right:20px}.hero-project-link>span{font-size:.9375rem}.hero-image-caption{left:24px;bottom:150px;right:20px}.hero-image-caption span{display:none}.hero-image-caption strong{font-size:1.5rem}.rating-link-value{font-size:1.8rem}.rating-link>svg{display:none}.rating-link>span:nth-child(2)>small{max-width:155px}.section{padding-block:70px}.reviews-grid{grid-template-columns:1fr}.review-card{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:28px}.review-top{grid-column:1/-1;flex-direction:row;align-items:center;margin-bottom:18px}.review-topic{grid-column:1;margin-bottom:8px}.review-card blockquote{grid-column:1;font-size:1.5rem;min-height:0;margin-bottom:20px}.review-summary{grid-column:2;grid-row:2/4;margin:0 0 20px;align-self:center;font-size:1rem}.review-author{grid-column:1;padding-top:17px}.review-source{grid-column:2;align-self:center}.reviews-footnote{align-items:flex-start;gap:25px}.reviews-footnote>p{max-width:420px}.reviews-rating{min-width:210px;padding-left:26px}.reviews-rating strong{font-size:3.5rem}.emergency-call strong{font-size:1.7rem}.contact-grid{gap:35px}.craft-caption{padding:20px;font-size:.75rem}form{padding:28px}}
@media(max-width:640px){.nav-inner{min-height:75px}.brand-text{font-size:.9rem}.hero{min-height:0;display:flex}.hero-content{padding:45px 24px 32px}.hero h1{font-size:clamp(3.25rem,11vw,4.7rem);margin-bottom:24px}.hero h1 em{font-size:1.06em}.hero-content .eyebrow{font-size:.75rem;letter-spacing:.04em;margin-bottom:22px;gap:9px}.hero-content .short-line{width:16px}.hero-content>p{font-size:1rem;line-height:1.8}.hero-actions{margin-top:25px;gap:18px}.hero-actions .button{font-size:.875rem;min-height:56px;gap:20px;padding-inline:21px}.hero-secondary{font-size:1rem}.hero-note{font-size:.75rem;margin-top:18px}.rating-link{padding-top:20px;margin-top:24px;width:100%;max-width:380px;gap:17px}.rating-link>span:nth-child(2)>small{max-width:none}.rating-link>svg{display:block;margin-left:auto}.hero-visual{height:390px;margin-left:0}.hero-img{object-position:center 55%}.hero-image-caption{left:24px;bottom:133px;right:24px}.hero-image-caption strong{font-size:1.6rem;max-width:330px}.hero-project-link{left:20px;right:20px;bottom:22px;padding:18px 21px}.hero-project-link>span{font-size:1rem}.hero-project-link small{font-size:.875rem}.vertical-label{top:22px;right:13px;font-size:.75rem}.assurance>.wrap{padding-block:27px}.assurance .wrap{grid-template-columns:1fr 1fr;gap:23px 17px}.assurance b{font-size:.875rem}.assurance small{font-size:.75rem}.section{padding-block:60px}.section-heading h2{font-size:2.45rem}.section-heading>p{margin-top:21px}.service-image{height:270px}.service-card h3{font-size:1.4rem}.service-card p{font-size:1rem}.more-services>a{font-size:.9375rem;padding-block:18px}.reviews-heading{margin-bottom:30px}.reviews-heading h2{font-size:2.6rem}.reviews-rating{display:grid;grid-template-columns:auto 1fr;gap:0 20px;margin-top:27px;border-left:0;border-top:1px solid #ffffff35;padding:22px 0 0;min-width:0}.reviews-rating>div{grid-row:1/3;margin:0;align-self:center}.reviews-rating strong{font-size:3.4rem}.reviews-rating>div>span{font-size:1rem}.reviews-rating>p{font-size:.875rem}.reviews-rating>a{font-size:.75rem;margin-top:7px;line-height:1.5}.reviews-grid{gap:18px}.review-card{display:flex;padding:27px}.review-top{flex-direction:row;margin-bottom:24px;gap:8px;align-items:center}.review-origin{font-size:.75rem}.review-topic{margin-bottom:12px}.review-card blockquote{font-size:1.45rem;min-height:0;line-height:1.45;margin-bottom:18px}.review-summary{font-size:.9375rem;margin-bottom:23px;line-height:1.8;align-self:auto}.review-author{margin-top:0;padding-top:20px}.review-source{margin-top:18px;align-self:stretch;font-size:.75rem}.review-author time{font-size:.75rem}.review-author h3{font-size:1rem}.reviews-footnote{flex-direction:column;gap:19px;margin-top:26px}.reviews-footnote>p{font-size:.75rem}.reviews-footnote .text-link{font-size:.875rem}.craft-caption{font-size:.75rem;padding:19px 21px}.craft-content h2{font-size:2.55rem}.check-list li{font-size:.9375rem}.emergency{padding-block:44px}.emergency-inner{gap:26px}.emergency h2{font-size:2.3rem}.emergency-call{width:100%;padding:20px;justify-content:space-between;gap:12px}.emergency-call>svg:last-child{margin-left:0}.emergency-call strong{font-size:1.5rem}.emergency-call small{font-size:.75rem}.steps h3{font-size:1.2rem;line-height:1.4}.contact-grid{grid-template-columns:1fr;gap:31px}.contact h2{font-size:2.6rem;max-width:350px}.contact-grid>div>p:not(.eyebrow){font-size:1rem}.contact-note{font-size:.875rem!important}form{padding:26px 21px}.footer{padding-top:48px}.footer-bottom{font-size:.75rem}.service-hero h1{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){.hero-project-link svg,.more-services>a svg,nav#navigation>a:not(.button):after{transition:none}}
