/* Public service pages and their links use the established storefront palette. */
body.isecurit-vitrine .service-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
body.isecurit-vitrine .service-actions .button { white-space: normal; text-align: center; min-height: 48px; }
body.isecurit-vitrine .service-hours { color: var(--muted); font-size: .9375rem; }
body.isecurit-vitrine .service-detail h2:first-child { margin-top: 0; }
body.isecurit-vitrine .service-directory { margin-block: 32px; padding-block: 22px; border-block: 1px solid var(--border); }
body.isecurit-vitrine .service-directory p { margin: 0 0 12px; font-weight: 700; }
body.isecurit-vitrine .service-directory ul { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 0; margin: 0; list-style: none; }
body.isecurit-vitrine .service-directory li { margin: 0; min-width: 0; max-width: 100%; }
body.isecurit-vitrine .service-directory a { text-decoration: underline; text-underline-offset: 4px; }
body.isecurit-vitrine .service-directory [aria-current="page"] { color: var(--red-dark); font-weight: 700; }
body.isecurit-vitrine .service-faq details { border-bottom: 1px solid var(--border); padding-block: 16px; }
body.isecurit-vitrine .service-faq details:last-child { border: 0; }
body.isecurit-vitrine .service-faq summary { cursor: pointer; font-weight: 700; }
body.isecurit-vitrine .service-contact-bar { display: none; }
body.isecurit-vitrine .measurement-preferences { padding-block: 24px; font-size: .9375rem; }
body.isecurit-vitrine .measurement-preferences summary { cursor: pointer; font-weight: 700; }
body.isecurit-vitrine .measurement-choices { display: flex; gap: 12px; flex-wrap: wrap; }
body.isecurit-vitrine .measurement-choices [aria-pressed="true"] { border-color: var(--red); box-shadow: inset 0 0 0 1px var(--red); }
@media (max-width: 600px) {
    body.isecurit-vitrine:has(.service-contact-bar) { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
    body.isecurit-vitrine .service-actions { flex-direction: column; }
    body.isecurit-vitrine .service-contact-bar { position: fixed; z-index: 40; inset: auto 0 0; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 8px; background: var(--paper); padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); border-top: 1px solid var(--border); }
    body.isecurit-vitrine .service-contact-bar a { display: grid; place-items: center; min-height: 48px; border-radius: 8px; font-size: .875rem; font-weight: 700; text-align: center; line-height: 1.4; }
    body.isecurit-vitrine .service-contact-bar a:first-child { background: var(--red); color: #fff; }
    body.isecurit-vitrine .service-contact-bar a:last-child { border: 1px solid #92998a; }
    body.isecurit-vitrine:has(#contact-form:focus-within) .service-contact-bar { display: none; }
}
