/* Service-page layouts share the homepage palette and typography. */
.service-page .header-inner{flex-wrap:wrap}
.service-page .service-nav{display:flex;
gap:24px;
flex-wrap:wrap;
margin-left:auto}
.service-nav a{padding:10px 0}
.service-page .service-nav a[aria-current=page]{text-decoration:underline}
.service-page main{max-width:1440px;
margin:auto}
.service-lead{padding:48px var(--gutter) 56px}
.breadcrumbs{font-size:14px;
color:var(--muted);
margin-bottom:36px}
.service-lead h1{font-size:clamp(40px,5.5vw,82px);
max-width:1000px}
.service-lead .lead{font-size:clamp(18px,2vw,23px);
max-width:840px;
margin:26px 0}
.service-body{padding:0 var(--gutter) 64px}
.service-body h2,.service-questions h2{font-size:clamp(32px,3.5vw,50px);
margin:0 0 24px}
.service-body>p{max-width:850px;
margin-bottom:24px}
.service-body li{margin:8px 0}
.service-photos{display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:24px;
margin-top:36px}
.service-photos figure{min-width:0}
.service-photos img{width:100%;
height:350px;
object-fit:contain;
background:#e5e0d5}
.service-photos figcaption{padding-top:12px}
.service-questions{padding:48px var(--gutter);
border-top:1px solid var(--line)}
.service-questions details{border-bottom:1px solid var(--line);
padding:18px 0;
max-width:950px}
.service-questions summary{font-size:18px;
cursor:pointer}
.service-questions details p{max-width:800px;
padding:16px 0 0}
.service-questions summary:focus-visible{outline:3px solid #a47a31;
outline-offset:5px}
.service-enquiry{padding:48px var(--gutter);
background:var(--ink);
color:var(--paper)}
.service-enquiry h2{font-size:clamp(32px,4vw,54px);
margin-bottom:20px}
.service-enquiry p{max-width:800px;
margin:12px 0}
.service-enquiry a{display:inline-block;
padding:10px 0;
margin-right:28px;
overflow-wrap:anywhere}
.related-services{padding:32px var(--gutter);
display:flex;
gap:24px;
flex-wrap:wrap}
.service-page .site-footer{padding:24px var(--gutter)}
.service-page .brand{flex-shrink:0}
.service-page .header-inner{min-height:110px}
.service-page .service-nav{color:var(--paper)}
@media(max-width:760px){.service-page .header-inner{gap:18px}
.service-page .service-nav{gap:14px;
margin-left:0;
font-size:14px}
.service-photos{grid-template-columns:1fr}
.service-photos img{height:auto;
max-height:480px}
.service-lead{padding-top:28px}
.breadcrumbs{margin-bottom:24px}
}


.service-lead .button{background:var(--ink);
color:var(--paper)}

.service-photos{margin-bottom:24px}

