/* Service pages use the existing type, colours and layout rhythm. */
.service-detail-title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.service-reading{display:flex;align-items:baseline;gap:24px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--rule-subtle);max-width:1120px;font-size:14px}
.service-reading>span{color:var(--muted);flex-shrink:0}
.service-reading>div{display:flex;flex-wrap:wrap;gap:8px 28px}
.service-reading a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--blue)}
.service-reading a:hover{text-decoration:underline;text-underline-offset:4px}
.service-article{padding:40px 0 96px}
.service-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--muted);margin-bottom:40px}
.service-breadcrumb a{display:inline-flex;align-items:center;min-height:32px}
.service-breadcrumb a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.service-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:center}
.service-hero h1{font-size:clamp(40px,4.5vw,64px);hyphens:auto;overflow-wrap:break-word;max-width:17ch}
.service-lead{font-size:18px;line-height:1.7;max-width:52ch;margin:24px 0 32px;color:var(--muted)}
.service-hero figure img{aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.service-hero figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.service-body{display:grid;grid-template-columns:1fr 1.8fr;gap:96px;margin-top:80px;padding-top:48px;border-top:1px solid var(--rule-subtle)}
.service-scope h2{font-size:25px;line-height:1.2}
.service-scope ul{padding:0;list-style:none;margin:18px 0 24px}
.service-scope li{padding:12px 0;border-bottom:1px solid var(--rule-subtle);color:var(--muted)}
.service-phone{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--blue)}
.service-copy{max-width:70ch}
.service-copy section+section{margin-top:36px}
.service-copy h2{font-size:28px;line-height:1.2;letter-spacing:-.02em;text-wrap:pretty}
.service-copy p{margin-top:14px;line-height:1.8;color:var(--muted)}
.service-copy>.link{margin-top:32px}
.service-faq{border-top:1px solid var(--rule-subtle)}
.faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:96px}
.faq-layout h2{font-size:clamp(32px,3vw,44px);max-width:12ch}
.service-faq details{border-bottom:1px solid var(--rule-subtle)}
.service-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:22px 0;font-size:19px;font-weight:500;line-height:1.4}
.service-faq summary::-webkit-details-marker{display:none}
.service-faq summary .icon{transition:transform 180ms var(--ease)}
.service-faq details[open] summary .icon{transform:rotate(90deg)}
.service-faq details p{margin:0 40px 24px 0;color:var(--muted);max-width:65ch;line-height:1.8}
.service-fallback>li{margin-bottom:32px}
.service-fallback p{margin-block:12px;max-width:65ch}
.service-fallback>li>a{display:inline-flex;margin-right:24px;min-height:44px;align-items:center}
@media(max-width:959px){.service-hero{gap:36px}.service-body,.faq-layout{gap:48px}.service-hero h1{font-size:44px}}
@media(max-width:639px){.service-article{padding:24px 0 64px}.service-breadcrumb{margin-bottom:28px;gap:2px 8px;font-size:12px}.service-hero{grid-template-columns:1fr;gap:32px}.service-hero h1{font-size:clamp(34px,9vw,42px);max-width:18ch}.service-lead{font-size:16px;margin:20px 0 24px}.service-hero .btn{max-width:100%;padding-inline:20px;gap:16px;font-size:14px}.service-hero figure img{aspect-ratio:16/10}.service-body{grid-template-columns:1fr;gap:36px;margin-top:40px;padding-top:32px}.service-copy h2{font-size:26px}.service-copy p{font-size:16px}.service-reading{display:block;margin-top:36px}.service-reading>div{display:grid;gap:0;margin-top:12px}.faq-layout{grid-template-columns:1fr;gap:24px}.service-faq summary{font-size:17px}.service-faq details p{margin-right:0;font-size:15px}}
@media(prefers-reduced-motion:reduce){.service-faq summary .icon{transition:none}}
