/* Service & Condition Page Styles */
.tpt-service-layout { display: grid; grid-template-columns: 1fr 340px; gap: 48px; align-items: start; }
.tpt-service-content { font-size: 16px; line-height: 1.8; }
.tpt-service-content h2 { margin: 32px 0 16px; font-size: 1.6rem; }
.tpt-service-content h3 { margin: 24px 0 12px; font-size: 1.3rem; }
.tpt-service-content p { margin-bottom: 16px; color: var(--tpt-charcoal); }
.tpt-service-content ul, .tpt-service-content ol { margin: 16px 0; padding-left: 24px; }
.tpt-service-content li { margin-bottom: 8px; }
.tpt-service-content img { border-radius: var(--radius-lg); margin: 24px 0; }
.tpt-service-cta { margin-top: 48px; padding: 32px; background: var(--tpt-gray-100); border-radius: var(--radius-xl); }
.tpt-service-cta h3 { margin: 0 0 8px; }
.tpt-service-cta p { margin: 0; color: var(--tpt-charcoal-light); }

/* Sidebar */
.tpt-service-sidebar { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 20px; }
.tpt-sidebar-card { background: var(--tpt-white); border: 1px solid var(--tpt-gray-200); border-radius: var(--radius-xl); padding: 24px; }
.tpt-sidebar-card h4 { font-family: var(--font-body); font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 16px; color: var(--tpt-near-black); }
.tpt-sidebar-card--cta { background: var(--tpt-near-black); color: rgba(255,255,255,0.8); }
.tpt-sidebar-card--cta h4 { color: var(--tpt-white); }
.tpt-sidebar-card--cta p { font-size: 14px; margin-bottom: 16px; }
.tpt-sidebar-nav { list-style: none; }
.tpt-sidebar-nav li { border-bottom: 1px solid var(--tpt-gray-100); }
.tpt-sidebar-nav li a { display: block; padding: 10px 0; font-size: 14px; color: var(--tpt-charcoal); }
.tpt-sidebar-nav li a:hover { color: var(--tpt-orange); padding-left: 8px; }
.tpt-sidebar-nav li.active a { color: var(--tpt-orange); font-weight: 600; }
.tpt-sidebar-location { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--tpt-gray-100); font-size: 14px; color: var(--tpt-charcoal); }
.tpt-sidebar-location:hover { color: var(--tpt-orange); }
.tpt-sidebar-location strong { font-weight: 600; }
.tpt-sidebar-location span { color: var(--tpt-charcoal-light); font-size: 13px; }
.tpt-small { font-size: 13px; color: var(--tpt-charcoal-light); margin-top: 4px; }

@media (max-width: 1080px) {
    .tpt-service-layout { grid-template-columns: 1fr; }
    .tpt-service-sidebar { position: static; }
}
