/* Service-only responsive corrections. Desktop tokens and copy stay inherited. */
@media (max-width:1023px) {
  body.rubro-page[data-solution] main,
  body.rubro-page[data-solution] .container,
  body.rubro-page[data-solution] .c-detail-content,
  body.rubro-page[data-solution] .cp-equipment,
  body.rubro-page[data-solution] .cp-overview > * { min-width:0; }
  body.rubro-page[data-solution] .cp-overview { grid-template-columns:minmax(0,1fr); }
  body.rubro-page[data-solution] .cp-carousel { --cp-visible:2; }
  body.rubro-page[data-solution] .c-breadcrumb { flex-wrap:wrap; }
}
@media (max-width:767px) {
  body.rubro-page[data-solution] { --cp-detail-icon:48px; }
  body.rubro-page[data-solution] .container { width:calc(100% - 32px); max-width:100%; }
  body.rubro-page[data-solution] main :is(h1,h2,h3,p,summary,.cp-model,.c-point-label) { overflow-wrap:break-word; }
  body.rubro-page[data-solution] .c-heading { display:flex; flex-direction:column; align-items:stretch; gap:16px; }
  body.rubro-page[data-solution] .c-heading > * { min-width:0; max-width:100%; }
  body.rubro-page[data-solution] .c-heading .c-action { margin-top:0; align-self:flex-start; }
  body.rubro-page[data-solution] .c-scene > img { width:100%; height:auto; }
  body.rubro-page[data-solution] .c-points { display:grid; grid-template-columns:minmax(0,1fr); padding:12px; gap:8px; }
  body.rubro-page[data-solution] .c-point { position:static; transform:none; max-width:none; min-width:0; }
  body.rubro-page[data-solution] .c-point button { width:100%; min-height:44px; text-align:left; }
  body.rubro-page[data-solution] .c-point-label { display:block; white-space:normal; }
  body.rubro-page[data-solution] .c-point:nth-child(n) .c-tooltip { position:static; inset:auto; transform:none; width:100%; max-width:100%; box-sizing:border-box; height:auto; min-height:0; margin-top:8px; padding:12px; }
  body.rubro-page[data-solution] .c-tooltip .od-field { min-width:0; flex:1; }
  body.rubro-page[data-solution] .c-scene-help { flex-direction:column; gap:8px; }
  body.rubro-page[data-solution] .cp-heading-row { grid-template-columns:minmax(0,1fr); gap:16px; }
  body.rubro-page[data-solution] .cp-heading-row .c-equipment-header { min-width:0; max-width:100%; box-sizing:border-box; }
  body.rubro-page[data-solution] .cp-carousel-row { grid-template-columns:1fr 1fr; gap:8px; }
  body.rubro-page[data-solution] .cp-carousel .cp-grid { grid-column:1 / -1; grid-row:1; min-width:0; width:100%; scroll-padding-inline:0; }
  body.rubro-page[data-solution] .cp-prev { grid-column:1; grid-row:2; justify-self:start; }
  body.rubro-page[data-solution] .cp-next { grid-column:2; grid-row:2; justify-self:end; }
  body.rubro-page[data-solution] .cp-card { min-width:0; }
  body.rubro-page[data-solution] .cp-caption,
  body.rubro-page[data-solution] .cp-copy { min-width:0; }
  body.rubro-page[data-solution] .cp-direct { padding-inline:8px; }
  body.rubro-page[data-solution] .cp-summary { width:100%; max-width:100%; box-sizing:border-box; }
  body.rubro-page[data-solution] .cp-overview .c-application-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  body.rubro-page[data-solution] .cp-overview .c-application { grid-template-columns:var(--cp-detail-icon) minmax(0,1fr); gap:16px; }
  body.rubro-page[data-solution] .c-detail-content .c-benefits { padding:24px 16px; }
  body.rubro-page[data-solution] .c-detail-content .c-benefits ul { grid-template-columns:minmax(0,1fr); gap:24px; }
  body.rubro-page[data-solution] .c-detail-content .c-benefits li { flex-direction:row; align-items:flex-start; text-align:left; padding:0; border:0; }
  body.rubro-page[data-solution] .c-detail-content .c-benefits li + li { border-top:1px solid var(--cp-benefit-divider); padding-top:24px; }
  body.rubro-page[data-solution] .c-detail-content .c-benefits .od-field { max-width:none; min-width:0; flex:1; }
  body.rubro-page[data-solution] .cp-service-detail ul { grid-template-columns:minmax(0,1fr); }
  body.rubro-page[data-solution] .cp-service-detail summary { padding:16px; gap:12px; }
  body.rubro-page[data-solution] .cp-service-body { padding:0 16px 24px; }
  body.rubro-page[data-solution] .cp-panel { padding:20px 16px; }
  body.rubro-page[data-solution] .cp-panel-heading { flex-direction:column; }
  body.rubro-page[data-solution] .cp-panel-copy a,
  body.rubro-page[data-solution] .c-contact .c-action { max-width:100%; box-sizing:border-box; }
}
@media (max-width:599px) {
  body.rubro-page[data-solution] .cp-carousel { --cp-visible:1; }
}
