.service-page { letter-spacing: 0; }
.service-page > .section { padding: 48px 0; }
.service-page h2 { color: #203f4c; font-size: 1.65rem; line-height: 1.3; }
.service-page h3 { color: #203f4c; font-size: 1.15rem; line-height: 1.4; }
.service-page p { line-height: 1.7; }
.service-page a:focus-visible, .service-page summary:focus-visible { outline: 2px solid #0083a2; outline-offset: 4px; }
.service-catalog { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; }
.service-tile { grid-column: span 2; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #dce4e7; border-radius: 8px; background: #fff; }
.service-tile:nth-last-child(2):nth-child(3n+1), .service-tile:last-child:nth-child(3n+2) { grid-column: span 3; }
.service-tile:hover, .service-tile:focus-within { border-color: #8dabb6; box-shadow: 0 5px 18px #193e4e0d; }
.service-tile > img { width: 100%; height: 200px; object-fit: cover; display: block; }
.service-tile-body { display: flex; flex-direction: column; flex: 1; padding: 24px; }
.service-tile h2 { margin: 0 0 12px; font-size: 1.25rem; }
.service-tile p { margin: 0 0 22px; font-size: .95rem; color: #53636b; }
.service-tile a { align-self: flex-start; margin-top: auto; padding: 8px 0; font-weight: 700; color: #006d88; text-underline-offset: 5px; }
.services-page .service-hub { margin-top: 48px; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.services-page .service-hub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
.services-page .service-hub-link { display: block; padding: 22px 0; border: 0; border-bottom: 1px solid #dce4e7; border-radius: 0; background: none; box-shadow: none; transform: none; }
.services-page .service-hub-link strong { color: #006d88; font-size: 1rem; }
.services-page .service-hub-link span { display: block; margin-top: 6px; font-size: .925rem; line-height: 1.6; color: #53636b; }
.services-page .service-hub-link:hover strong { text-decoration: underline; text-underline-offset: 4px; }
.service-tools { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin-top: 36px; padding: 28px 0; border-top: 1px solid #d4dfe3; }
.service-tools h2 { grid-column: 1 / -1; margin: 0 0 8px; color: #203f4c; font-size: 1.2rem; }
.service-tools a { padding: 8px 0; color: #006d88; font-weight: 600; }
.service-tools span { margin-left: 10px; }
.service-tools a.btn-primary { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; min-height: 76px; margin: 0; padding: 14px 16px; border-radius: 6px; background: linear-gradient(135deg, var(--cyan, #01a7c2), #0b7fa8); color: var(--white); font-size: .95rem; font-weight: 800; line-height: 1.45; text-align: center; white-space: normal; box-shadow: none; text-decoration: none; transition: transform .2s ease; }
.service-tools a.btn-primary:hover { transform: translateY(-2px); }
.service-tools a.btn-primary span { margin-left: 0; }
.service-page .service-faq { padding: 40px 0 0; }
.service-questions { border-top: 1px solid #d4dfe3; }
.service-questions details { border-bottom: 1px solid #d4dfe3; padding: 0 4px; }
.service-questions summary { padding: 20px 0; cursor: pointer; font-size: 1.05rem; font-weight: 600; color: #203f4c; }
.service-questions summary::marker { color: #007e99; }
.service-questions details p { margin: 0; padding: 0 0 22px; max-width: 85ch; color: #53636b; }
.service-lead { display: grid; grid-template-columns: 1.2fr 1fr; gap: 36px; align-items: center; }
.service-lead h2 { margin-top: 0; }
.service-photo { margin: 0; min-width: 0; }
.service-photo img { display: block; width: 100%; height: auto; border-radius: 6px; }
.service-photo figcaption { margin-top: 10px; font-size: .825rem; color: #53636b; }
.service-page .hero-actions .btn { display: inline-flex; margin: 0; width: auto; max-width: 100%; padding: .95rem 1.5rem; border-radius: 6px; box-shadow: none; }
.service-page .hero-actions .btn-primary { background: linear-gradient(135deg, var(--cyan, #01a7c2), #0b7fa8); color: #fff; }
.service-page .hero-actions .btn-secondary { background: #fff; color: #006d88; border-color: #9cbac5; }
.service-page .hero-actions .btn-secondary:hover { background: #edf5f7; }
.cold-room-page > .section:nth-of-type(3) { background: #f3f7f8; }
.service-symptoms { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px; }
.service-symptoms article { padding-top: 8px; border-top: 2px solid #8eb9c1; }
.service-symptoms p, .service-audiences p { color: #53636b; font-size: .95rem; }
.service-audiences { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.service-checklist { border-left: 3px solid #68a4b0; padding: 4px 20px; margin: 24px 0; }
.service-checklist ul { padding-left: 20px; margin: 0; }
.service-checklist li { padding: 6px 0; line-height: 1.6; }
.service-page .final-cta h2 { color: #fff; }

                                                 
.service-detail-page .breadcrumb a { text-decoration: underline; text-underline-offset: 3px; }
.service-detail-page > .section + .section { border-top: 1px solid #e1e9ed; }
.service-detail-page .section h2 { margin: 0 0 24px; max-width: 40ch; }
.service-detail-page .section-intro { max-width: 80ch; margin: 0 0 24px; color: #465b66; font-size: 1rem; }
.service-detail-page .hero-actions { justify-content: flex-start; gap: 12px; margin-top: 24px; }
.service-detail-page .hero-actions .btn { min-height: 48px; line-height: 1.4; white-space: normal; text-align: center; }
.service-detail-page .hero-actions .btn-primary { background: linear-gradient(135deg, #007c98, #0b6f91); }
.service-detail-page .hero-actions .btn-primary:hover { filter: brightness(.92); }
.service-detail-page .service-lead { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 40px; }
.service-detail-page .service-lead > * { min-width: 0; }
.service-detail-page .service-photo img { max-height: 360px; object-fit: contain; background: #f3f6f7; }
.service-detail-page .service-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 28px; margin: 24px 0; }
.service-detail-page .service-item { min-width: 0; padding: 18px 0 0; border-top: 2px solid #83b8c2; }
.service-detail-page .service-item h3 { margin: 0 0 12px; }
.service-detail-page .service-item p { margin: 0 0 16px; color: #465b66; font-size: .95rem; }
.service-detail-page .service-item-links { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.service-detail-page .service-copy { max-width: 80ch; color: #465b66; }
.service-detail-page .service-copy ul { padding-left: 22px; }
.service-detail-page .service-copy li { padding: 5px 0; line-height: 1.65; }
.service-detail-page .section a:not(.btn), .service-detail-page .service-item a { color: #006c85; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.service-detail-page .section a:not(.btn):hover { color: #034e63; text-decoration-thickness: 2px; }
.service-detail-page .service-questions { max-width: 960px; }
.service-detail-page .service-questions summary { line-height: 1.5; }
.service-detail-page .service-questions details[open] { background: #f4f8f9; }
.service-detail-page .service-questions details { padding: 0 16px; }
.service-detail-page .service-questions details p { padding-bottom: 20px; }

@media (max-width: 1000px) {
    .service-catalog { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
    .service-tile, .service-tile:nth-last-child(2):nth-child(3n+1), .service-tile:last-child:nth-child(3n+2) { grid-column: auto; }
    .service-symptoms { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .service-lead { grid-template-columns: 1fr; }
    .service-photo { max-width: 640px; }
    .service-detail-page .service-lead { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .service-detail-page .service-photo { max-width: 560px; }
}
@media (max-width: 600px) {
    .service-page > .section { padding: 32px 0; }
    .service-page h2 { font-size: 1.4rem; }
    .service-tile h2 { font-size: 1.25rem; }
    .service-catalog, .service-symptoms, .service-audiences, .services-page .service-hub-grid { grid-template-columns: minmax(0, 1fr); }
    .service-tile > img { height: 170px; }
    .service-tile-body { padding: 20px; }
    .service-page .hero-actions .btn { width: 100%; }
    .service-questions summary { font-size: 1rem; }
    .service-detail-page .service-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .service-detail-page .service-photo { max-width: 100%; }
    .service-detail-page .service-photo img { max-height: 300px; }
    .service-detail-page .service-questions details { padding: 0 8px; }
}
@media (max-width: 1100px) {
    .service-tools { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .service-tools a.btn-primary { grid-column: span 2; }
    .service-tools a.btn-primary:nth-last-child(-n+2) { grid-column: span 3; }
}
@media (max-width: 600px) {
    .service-tools { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 24px 0; }
    .service-tools a.btn-primary, .service-tools a.btn-primary:nth-last-child(-n+2) { grid-column: 1; min-height: 52px; }
}
@media (prefers-reduced-motion: reduce) {
    .service-tools a.btn-primary { transition: none; }
    .service-tools a.btn-primary:hover { transform: none; }
}
