/* Only layout helpers for the new service content. The official style.css is unchanged. */
.service-detail-page .service-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-muted);font-size:.8rem;margin-bottom:30px}
.service-detail-page .service-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.service-detail-page .service-page-links{margin-bottom:35px}
.service-detail-page .service-page-links a{display:flex;align-items:center;justify-content:center;text-align:center}
.service-detail-page .service-detail-title{font-family:var(--font-serif);font-size:2rem;font-weight:500;color:var(--green-deep);margin-bottom:10px}
.service-detail-page .service-card-title,.service-catalogue .service-card-title{font-family:var(--font-serif);font-size:1.4rem;font-weight:600;color:var(--green-deep);margin-bottom:10px}
.service-detail-page .service-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-detail-page .service-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px;list-style:none;padding:0;margin:32px 0 0}
.service-detail-page .service-steps li{display:flex;gap:20px;border-top:1px solid var(--border-subtle);padding-top:22px}
.service-detail-page .service-step-number{font-family:var(--font-serif);font-size:2rem;line-height:1;color:var(--violet-primary)}
.service-detail-page .service-steps h3{font-size:1.25rem;margin-bottom:10px}
.service-detail-page .service-steps p{font-size:.94rem;line-height:1.8;margin:0}
.service-detail-page .service-questions{background:var(--bg-card);border-block:1px solid var(--border-subtle)}
.service-detail-page .service-next-step{padding:65px 0;text-align:center;border-bottom:1px solid var(--border-subtle)}
.service-detail-page .service-next-step .container{max-width:820px}
.service-detail-page .service-next-step h2{font-family:var(--font-serif);font-size:clamp(2rem,3.5vw,2.8rem);margin:14px 0 20px;font-weight:500}
.service-detail-page .service-next-step p{color:var(--text-muted);margin:20px 0;line-height:1.8}
.service-detail-page .service-location{font-size:.82rem}
.service-detail-page .service-related{display:flex;flex-wrap:wrap;gap:15px 30px;margin:25px 0}
.service-catalogue .events-clean-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:800px){.service-detail-page .service-detail-grid{grid-template-columns:1fr}.service-detail-page .service-page-links{gap:8px}.service-detail-page .service-page-links a{font-size:.8rem;padding:10px 14px}.service-detail-page .service-steps{grid-template-columns:1fr}.service-catalogue .events-clean-grid{grid-template-columns:1fr}}

/* Smaller photographs: preserve their aspect ratio and avoid enlargement. */
.service-detail-page .typology-overview{grid-template-columns:minmax(0,1.5fr) minmax(0,.9fr)}
.service-detail-page .service-photo-grid[style*="--photo-count:1"]{max-width:320px;padding-bottom:10px}
.service-detail-page .service-photo img{max-width:100%;width:auto;max-height:280px;height:auto;object-fit:contain;margin-inline:auto}
@media(max-width:1000px){.service-detail-page .typology-overview{grid-template-columns:1fr}.service-detail-page .service-photo-grid[style*="--photo-count:1"]{max-width:min(300px,100%)}}
