/* Regole circoscritte alle pagine servizio. */
.service-page{background:var(--white);overflow-wrap:anywhere}
.service-page .service-wrap{width:min(1200px,calc(100% - 40px));margin-inline:auto}
.service-header{background:var(--deep);color:#fff;border-bottom:1px solid #353535}
.service-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:20px}
.service-logo{width:170px;height:auto}
.service-navigation nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}
.service-navigation nav a{display:flex;align-items:center;min-height:44px}
.service-contact-link{gap:16px;border-bottom:2px solid var(--red)}
.service-heading{background:var(--deep);color:#fff;padding:24px 0 58px;border-bottom:5px solid var(--red)}
.service-breadcrumb{display:flex;gap:12px;align-items:center;color:#bbb;font-size:12px;margin-bottom:38px}
.service-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.service-eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--red);margin:0 0 18px}
.service-heading .service-eyebrow{color:#c7c7c7}
.service-page h1{font-size:clamp(36px,6vw,76px);line-height:1.08;letter-spacing:-.045em;max-width:1000px;margin:0;font-weight:800}
.service-subtitle{font-size:clamp(17px,2vw,22px);color:#ccc;line-height:1.6;max-width:760px;margin:26px 0 0;white-space:pre-line}
.service-page .service-cover{padding-top:38px}
.service-cover img{width:100%;max-height:580px;object-fit:cover;aspect-ratio:16/8}
.service-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:80px;padding-block:64px}
.service-page h2{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}
.service-description-text{white-space:pre-line;line-height:1.85;color:#555}
.service-enquiry{align-self:start;border-top:3px solid var(--red);padding:25px;background:var(--gray)}
.service-enquiry p:not(.service-eyebrow){font-size:14px;color:#666}
.service-button{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--red);color:#fff;padding:15px 18px;font-size:14px;font-weight:600;min-height:48px}
.service-back{display:inline-flex;align-items:center;font-size:13px;min-height:44px;margin-top:12px}
.service-gallery{background:var(--gray);padding:56px 0}
.service-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px;margin-top:32px}
.service-photo-grid figure{margin:0;min-width:0}
.service-photo-grid a{display:block}
.service-photo-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.service-photo-grid figcaption{font-size:13px;color:#666;padding-top:10px;white-space:pre-line}
.service-pagination{display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:36px;font-size:14px}
.service-pagination a{padding:10px 16px;border:1px solid #999;min-height:44px}
.service-footer{background:var(--deep);color:#ccc;padding:25px 0;font-size:13px}
.service-footer .service-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.service-footer a{display:inline-flex;align-items:center;gap:20px;min-height:44px}
.service-missing{padding-block:60px;min-height:40vh}
.service-missing .service-button{max-width:320px}
.service-page a:focus-visible,.service-page button:focus-visible{outline:3px solid #e66d43;outline-offset:4px}
@media(hover:hover){.service-button:hover{background:#961212}.service-back:hover,.service-pagination a:hover,.service-navigation a:hover,.service-footer a:hover{text-decoration:underline}}
@media(max-width:760px){.service-logo{width:135px}.service-navigation{gap:12px}.service-navigation nav{font-size:12px;gap:12px}.service-heading{padding-bottom:36px}.service-breadcrumb{margin-bottom:24px}.service-body{grid-template-columns:1fr;gap:35px;padding-block:36px}.service-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.service-cover img{aspect-ratio:4/3}.service-gallery{padding-block:36px}}
@media(max-width:390px){.service-navigation{align-items:flex-start}.service-navigation nav{flex-direction:column;align-items:flex-end;gap:0}.service-photo-grid{grid-template-columns:1fr}}
