/* Shared details for the three residential services. */
.residential-service h3{font-family:var(--display);font-weight:500;letter-spacing:-.025em;font-size:22px;line-height:1.3;margin:0 0 10px}
.residential-service .hero{padding-bottom:42px;gap:6%}
.residential-service .hero h1{font-size:clamp(54px,6.2vw,86px)}
.residential-service .intro{max-width:500px}
.residential-service .hero-photo{max-height:650px}
.residential-service .promise{font-size:16px;max-width:420px;color:var(--ink)}
.service-warranty{font-size:15px;color:var(--muted);margin-top:10px}
.explore-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;margin-top:20px;font-size:15px;text-decoration:underline;text-underline-offset:5px}
.service-measurement .venpro-measurement-inline{margin:0 0 30px;padding:16px 20px}
.service-measurement summary{min-height:36px;padding-block:5px}
.service-scope,.service-faq{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;padding-block:75px}
.service-scope{border-top:1px solid var(--line)}
.section-intro>.eyebrow,.work-heading .eyebrow{margin-bottom:20px}
.section-intro>p:not(.eyebrow){font-size:18px;color:var(--muted);max-width:460px;margin-top:22px}
.scope-list{list-style:none;padding:0;margin:0}
.scope-list li{padding:22px 0;border-bottom:1px solid var(--line)}
.scope-list li:first-child{padding-top:0}
.scope-list p,.process-grid p{color:var(--muted);font-size:17px;line-height:1.65}
.residential-service .work{padding-block:68px}
.residential-service .project-grid{gap:32px;max-width:1040px;margin-inline:auto}
.residential-service .project-grid figure:nth-child(2){margin-top:42px}
.residential-service .project-grid img{max-height:620px;object-fit:cover}
.residential-service .project-grid figcaption{font-size:16px;line-height:1.6;max-width:460px}
.residential-service .cabinet-prep-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1280px}
.residential-service .cabinet-prep-grid figure:nth-child(2){margin-top:0}
.residential-service .cabinet-prep-grid img{max-height:none;object-fit:contain}
@media(max-width:740px){.residential-service .cabinet-prep-grid{grid-template-columns:1fr;gap:30px}}
.service-process{padding-block:80px}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;list-style:none;padding:0;margin:38px 0 0}
.process-grid.four-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.process-grid li{border-top:1px solid var(--line);padding-top:22px}
.step-number{display:block;font-family:var(--display);color:var(--blue);font-size:16px;margin-bottom:18px}
.timing-note{margin-top:34px;padding:24px 28px;border-left:3px solid var(--blue);background:var(--pale);font-size:17px;line-height:1.65;color:var(--muted)}
.timing-note strong{display:block;color:var(--ink);margin-bottom:5px}
.service-faq{padding-top:60px;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{padding:22px 36px 22px 0;cursor:pointer;font-size:19px;font-weight:600;line-height:1.5;position:relative;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:4px;top:21px;font-size:24px;color:var(--blue);font-weight:400}
.faq-list details[open] summary::after{content:'−'}
.faq-list summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.faq-list details>p{padding:0 25px 24px 0;font-size:17px;line-height:1.7;color:var(--muted)}
.service-next{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:56px;background:var(--pale);border-radius:26px;margin-block:12px 72px}
.next-intro>p:not(.eyebrow){color:var(--muted);margin:22px 0;max-width:480px}
.next-intro .button{display:flex;width:fit-content;max-width:100%;font-size:16px}
.next-intro .call-link{display:inline-flex;min-height:44px;align-items:center;margin-top:10px}
.next-expectations{padding-top:8px}
.next-expectations ol{padding-left:22px;margin:20px 0}
.next-expectations li{padding-left:6px;margin-bottom:14px}
.next-expectations>p{font-size:15px;color:var(--muted)}
.next-expectations .next-payment{border-top:1px solid #cbd7ed;padding-top:20px;margin-top:22px;font-size:16px;color:var(--ink)}
@media(min-width:1001px){.service-measurement .venpro-measurement-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 26px}.service-measurement .venpro-measurement-inline>p{margin:0}.service-measurement .venpro-measurement-inline>details{grid-column:1/-1;margin-top:4px}}
@media(max-width:1000px){.residential-service .hero h1{font-size:clamp(48px,6.6vw,68px)}.process-grid.four-steps{grid-template-columns:1fr 1fr}.service-next{padding:36px;gap:6%}.service-scope,.service-faq{gap:6%}.residential-service h3{font-size:21px}}
@media(max-width:740px){.residential-service .service-nav{gap:8px;font-size:13px}.residential-service .hero{gap:24px}.residential-service .hero h1{font-size:clamp(50px,11.8vw,80px)}.residential-service .hero-copy{padding-bottom:0}.residential-service .intro{font-size:18px;margin-top:20px}.residential-service .hero-actions{gap:10px 18px}.residential-service .hero-actions .call-link{display:inline-flex;align-items:center;min-height:44px}.residential-service .promise{margin-top:18px}.explore-link{margin-top:10px}.service-scope,.service-faq{grid-template-columns:1fr;gap:30px;padding-block:46px}.section-intro>.eyebrow,.work-heading .eyebrow{margin-bottom:16px}.section-intro>p:not(.eyebrow){font-size:17px}.residential-service .work{padding-block:46px}.residential-service .work-heading>div>p{margin-top:0}.residential-service .project-grid{gap:30px}.residential-service .project-grid figure:nth-child(2){margin-top:0}.residential-service .project-grid img{max-height:none}.service-process{padding-block:48px}.process-grid,.process-grid.four-steps{grid-template-columns:1fr;gap:26px;margin-top:28px}.step-number{margin-bottom:10px}.timing-note{padding:20px;font-size:16px}.faq-list summary{font-size:18px;padding-block:20px}.service-next{grid-template-columns:1fr;padding:28px 24px;gap:30px;border-radius:22px;margin-block:4px 42px}.next-intro .eyebrow{margin-bottom:18px}.next-intro .button{width:100%}.service-measurement .venpro-measurement-inline{padding:14px}}
@media print{.explore-link,.service-measurement{display:none}.service-scope,.service-process,.service-faq{padding-block:25px}.service-next{padding:25px;margin-bottom:25px}.process-grid{gap:18px}.faq-list details>p{display:block}.service-next,.process-grid li{break-inside:avoid}}
