/* Service pages extend the existing Gall palette and type system. */
.skip-link{position:absolute;top:-100px;left:16px;background:#fff;color:#111;padding:12px;z-index:100}
.skip-link:focus{top:12px}
.service-header{border-bottom:1px solid var(--line2);background:var(--bg)}
.service-header .wrap,.service-header nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
.service-header .wrap{min-height:100px}
.service-header nav>a:not(.btn){font-size:14px;color:var(--ink2)}
.service-hero{padding:32px 0 64px;background:linear-gradient(125deg,var(--bg2),var(--bg))}
.breadcrumbs{font-size:13px;color:var(--ink2);margin-bottom:48px;display:flex;flex-wrap:wrap;gap:8px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.service-hero h1{font-size:clamp(42px,6.5vw,86px);max-width:1000px;margin-bottom:24px}
.service-hero .lead{max-width:820px}
.service-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.service-proof{margin-top:24px;font-size:13px;color:var(--ink2)}
.service-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:72px;padding-top:64px}
.service-copy section{margin-bottom:40px}
.service-copy h2,.service-aside h2{font-size:clamp(30px,3vw,40px);margin-bottom:18px}
.service-copy p,.service-aside p{color:var(--ink2);line-height:1.8}
.service-aside{background:var(--bg2);border:1px solid var(--line2);border-radius:var(--r);padding:28px;height:fit-content}
.service-aside .btn{margin:24px 0}
.service-aside p{font-size:14px}
.service-aside>a:not(.btn){display:block;margin-top:20px;color:var(--ink);font-size:14px;text-decoration:underline;text-underline-offset:4px}
.service-aside p a{color:var(--ink);text-decoration:underline}
.service-faq details{border-bottom:1px solid var(--line2);padding:18px 0}
.service-faq summary{cursor:pointer;font-weight:600;padding-right:10px}
.service-faq details p{margin-top:16px}
.service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.service-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:var(--bg2);border:1px solid var(--line2);border-radius:var(--r-sm);font-weight:600}
.service-links a:hover{border-color:var(--red2);background:var(--bg3)}
.service-links span{color:var(--red2)}
.service-directory h2,.service-related h2{font-size:clamp(34px,4vw,54px);max-width:860px;margin-bottom:24px}
.service-models{justify-content:flex-start;margin:22px 0 0}
.service-siblings{margin-top:40px}
.makes__grid li.has-page{padding:0;border-color:var(--line2)}
.makes__grid li.has-page a{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:62px;padding:12px 10px;color:inherit}
.makes__grid li.has-page a::after{content:"→";color:var(--red2);font-family:var(--body);font-size:14px;letter-spacing:0}
.makes__links{text-align:center;margin-top:18px;color:var(--muted);font-size:14px}
.makes__links a{color:var(--ink2);border-bottom:1px solid var(--line2);margin:0 4px;transition:var(--fast)}
.makes__links a:hover{color:#fff;border-bottom-color:var(--red2)}
@media(max-width:640px){.makes__grid li.has-page a{min-height:52px;padding:10px 6px}}
.service-directory .lead{max-width:780px}
.service-footer{padding:36px 0 48px;border-top:1px solid var(--line2);color:var(--ink2);font-size:14px}
.service-footer p{margin:12px 0;overflow-wrap:anywhere}
.service-footer .wrap>a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.service-page a:focus-visible,.service-directory a:focus-visible,.service-page summary:focus-visible{outline:2px solid var(--red2);outline-offset:5px}
@media(max-width:800px){.service-body{grid-template-columns:1fr;gap:24px}.service-aside{max-width:none}.service-hero{padding-bottom:40px}.breadcrumbs{margin-bottom:32px}.service-links{grid-template-columns:1fr}.service-page .topbar__in{font-size:11px;gap:10px}.service-header .wrap{min-height:88px;gap:12px}.service-header nav{gap:12px}.service-header nav>a:not(.btn){display:none}.service-header .btn{padding:11px 16px;font-size:13px}.service-header .brand__logo{height:54px}.service-actions .btn{padding:13px 18px;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
