.condition-main .service-sidebar { max-height: calc(100dvh - 140px); overflow-y: auto; scrollbar-width: thin; }
.condition-introduction { margin-bottom: 30px; }
.condition-introduction p { margin-bottom: 16px; }
.condition-main .service-hero-photo { height: auto; min-height: 0; max-height: none; object-fit: contain; }
.condition-main .service-detail-hero h1 { font-size: clamp(30px,3vw,42px); }
@media (max-width:760px) {
  .condition-main .service-sidebar { max-height: 280px; }
}
.conditions-overview-layout { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 40px; align-items: start; margin-top: 35px; }
.conditions-navigation { max-height: calc(100dvh - 140px); overflow-y: auto; scrollbar-width: thin; }
.conditions-overview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 0; }
.conditions-overview-grid .services-overview-card { scroll-margin-top: 115px; }
.conditions-overview-grid h3 { font: 500 23px/1.3 "IBM Plex Serif",Georgia,serif; margin: 0 0 10px; color: #18251a; }
.condition-main .content-table-wrap table { min-width: 450px; }
@media (max-width:1050px) { .conditions-overview-layout { grid-template-columns: 220px minmax(0,1fr); gap: 25px; } }
@media (max-width:760px) {
  .conditions-overview-layout { grid-template-columns: 1fr; gap: 30px; }
  .conditions-navigation { max-height: 280px; }
}
@media (max-width:600px) { .conditions-overview-grid { grid-template-columns: 1fr; } }
