.service-detail-page { padding: 100px 0; }
.service-detail-layout { row-gap: 40px; }
.service-sidebar { position: sticky; top: 130px; }
.service-nav-card,
.service-help-card,
.service-overview,
.service-feature,
.service-process-step,
.service-faqs { border: 1px solid var(--divider-color); border-radius: 18px; background: var(--white-color); }
.service-nav-card { padding: 28px; margin-bottom: 24px; }
.service-nav-card h3 { font-size: 22px; margin-bottom: 18px; }
.service-nav-card ul { margin: 0; padding: 0; list-style: none; }
.service-nav-card li + li { border-top: 1px solid var(--divider-color); }
.service-nav-card a { display: flex; justify-content: space-between; align-items: center; padding: 14px 0; color: var(--primary-color); font-size: 15px; font-weight: 700; }
.service-nav-card a:hover,
.service-nav-card a.active { color: var(--accent-color); }
.service-help-card { padding: 30px; color: var(--white-color); background: var(--primary-color); overflow: hidden; }
.service-help-card h3 { color: var(--white-color); font-size: 24px; margin-bottom: 12px; }
.service-help-card p { color: rgba(255,255,255,.75); margin-bottom: 22px; }
.service-help-card a { color: var(--white-color); font-weight: 700; }
.service-main-image { margin-bottom: 38px; overflow: hidden; border-radius: 20px; }
.service-main-image img { width: 100%; height: 480px; object-fit: cover; }
.pet-service-image { background: #fff; border: 1px solid var(--divider-color); }
.pet-service-image img { object-fit: contain; }
.service-overview { padding: 38px; margin-bottom: 38px; }
.service-kicker { color: var(--accent-color); font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 10px; }
.service-overview h1 { font-size: 42px; margin-bottom: 20px; }
.service-overview p + p { margin-top: 14px; }
.service-section-title { font-size: 32px; margin-bottom: 24px; }
.service-features { margin-bottom: 48px; }
.service-feature { height: 100%; padding: 28px; }
.service-feature i { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; color: var(--white-color); background: var(--accent-color); margin-bottom: 18px; }
.service-feature h3 { font-size: 19px; margin-bottom: 10px; }
.service-process { margin-bottom: 48px; }
.service-process-step { height: 100%; padding: 28px; position: relative; }
.service-process-number { color: var(--accent-color); font-size: 38px; font-weight: 800; line-height: 1; opacity: .3; margin-bottom: 14px; }
.service-process-step h3 { font-size: 19px; margin-bottom: 10px; }
.service-faqs { padding: 34px; margin-bottom: 46px; }
.service-faqs .accordion-item { border: 0; border-bottom: 1px solid var(--divider-color); }
.service-faqs .accordion-item:last-child { border-bottom: 0; }
.service-faqs .accordion-button { padding: 20px 0; font-size: 17px; font-weight: 700; box-shadow: none; }
.service-faqs .accordion-button:not(.collapsed) { color: var(--accent-color); background: transparent; }
.service-faqs .accordion-body { padding: 0 0 20px; }
.service-cta { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 40px; border-radius: 20px; color: var(--white-color); background: var(--accent-color); }
.service-cta h2 { color: var(--white-color); font-size: 30px; margin-bottom: 8px; }
.service-cta p { color: rgba(255,255,255,.82); }
.service-cta .btn-default { flex: 0 0 auto; background: var(--white-color); color: var(--primary-color); }
.footer-quote-link { display: inline-block; margin-top: 22px; }
.footer-contact-info a { color: inherit; }
@media (max-width: 991px) { .service-sidebar { position: static; } .service-main-image img { height: 380px; } }
@media (max-width: 767px) {
    .service-detail-page { padding: 60px 0; }
    .service-main-image img { height: 280px; }
    .service-overview, .service-faqs { padding: 25px; }
    .service-overview h1 { font-size: 32px; }
    .service-section-title { font-size: 27px; }
    .service-cta { align-items: flex-start; flex-direction: column; padding: 30px; }
}
