/* Original service imagery and readable article layouts. */
.service-article #content { font-size: 16px; line-height: 1.8; color: #384657; }
.service-article #content p { margin-bottom: 1.25em; text-align: left !important; }
.service-article #content h4, .service-article #content h5 { line-height: 1.45; }
.service-article #content > h4, .service-article #content > h5 { clear: both; margin-top: 32px; }
.service-article #content img { max-width: 100%; height: auto; }
.service-article .article-image { float: right; width: 360px; margin: 0 0 24px 32px; border-radius: 12px; }
.service-article .team { display: flex; gap: 20px; align-items: flex-start; padding: 22px; border: 1px solid #e3e9ef; border-radius: 12px; background: #f7f9fc; height: 100%; }
.service-article .team .team-avatar { flex: 0 0 64px; float: none; width: 64px; height: 64px; margin: 0; border: 0; border-radius: 16px; }
.service-article .team-info { margin: 0; padding: 0; min-width: 0; }
.service-article .team-info p { margin-bottom: 0 !important; }
.service-article .topic-symbol { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 16px; background: #e8eef5; color: #495d7f; font-size: 30px; }
.service-article .pricing-details > .topic-symbol { margin: 20px auto; }
.service-article .pricing-title h4 { overflow-wrap: anywhere; }
.service-article .pricing-details { line-height: 1.6; }
.service-article .callout { border-radius: 12px; }
.service-article .system-flow { display: flex; align-items: stretch; gap: 16px; padding: 24px; margin: 24px 0; background: #f4f7fb; border: 1px solid #e1e8f1; border-radius: 12px; }
.service-article .system-flow span { flex: 1; align-content: center; text-align: center; font-size: 15px; font-weight: 600; padding: 18px 12px; background: #fff; border-radius: 8px; }
.service-article .system-flow b { align-self: center; color: #60789a; }
.service-catalog .portfolio-item { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e0e6ef; border-radius: 12px; background: #fff; margin-bottom: 24px; }
.service-catalog .portfolio-item > img { order: -1; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.service-catalog .portfolio-item .portfolio-info { position: static; opacity: 1; visibility: visible; transform: none; background: #fff; padding: 18px; color: #495d7f; }
.service-catalog .portfolio-item .portfolio-info .portfolio-short-content { position: static; padding: 0; margin: 0; background: transparent; }
.service-catalog .portfolio-item .portfolio-info .portfolio-short-content:before { display: none; }
.service-catalog .portfolio-item .portfolio-info h5, .service-catalog .portfolio-item .portfolio-info a { color: #334967; }
.service-catalog .portfolio-item.active .portfolio-info .portfolio-short-content,
.service-catalog .portfolio-item.active .portfolio-info .portfolio-short-content h5,
.service-catalog .portfolio-item.active .portfolio-info .portfolio-short-content a { color: #334967; }
.service-catalog .portfolio-item .portfolio-info h5 { min-height: 42px; margin: 0 0 8px; font-size: 16px; line-height: 1.35; }
.service-catalog .portfolio-categories { display: block; min-height: 44px; font-size: 13px; line-height: 1.6; }
.service-catalog .portfolio-item:hover { box-shadow: 0 8px 24px #263c5414; }
.service-catalog .portfolio-item:hover img { opacity: 1; }
.service-slide-image { width: 530px; height: 354px; object-fit: cover; border-radius: 12px; }
#rev_slider > ul > li { background: #edf2f7; }
/* Equal-width equipment cards, independent of the legacy Bootstrap columns. */
.service-article .equipment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; clear: both; margin: 24px 0; }
.service-article .equipment-grid > .pricing-alternative { display: flex; flex-direction: column; width: 100%; min-width: 0; float: none; margin: 0; padding: 0; border: 1px solid #e1e7ef; border-radius: 12px; overflow: hidden; }
.service-article .equipment-grid > .pricing-alternative:after { display: none; }
.service-article .equipment-grid .pricing-title { display: flex; align-items: center; justify-content: center; min-height: 96px; padding: 20px 16px; }
.service-article .equipment-grid .pricing-title h4 { margin: 0; overflow-wrap: normal; }
.service-article .equipment-grid .price { padding: 24px 12px 12px; font-size: clamp(32px, 3.5vw, 44px); line-height: 1.15; }
.service-article .equipment-grid .price > span { white-space: nowrap; }
.service-article .equipment-grid .price .currency { position: static; vertical-align: baseline; margin-right: 8px; }
.service-article .equipment-grid .pricing-alternative > br { display: none; }
.service-article .equipment-grid .pricing-details { display: flex; flex-direction: column; flex: 1; }
.service-article .equipment-grid .pricing-details > .topic-symbol { flex: 0 0 64px; margin: 24px auto; }
.service-article .equipment-grid .pricing-details ul { display: flex; flex: 1; }
.service-article .equipment-grid .pricing-details li { flex: 1; margin: 0; padding: 20px 16px; }
.service-article .system-tabs { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 24px; clear: both; }
.service-article .system-tabs:before, .service-article .system-tabs:after { display: none; }
.service-article .system-tabs > .tabNavigation { grid-column: 1; grid-row: 1; float: none; min-width: 0; border: 0; }
.service-article .system-tabs > .tabNavigation li { text-align: left; }
.service-article .system-tabs > .tabNavigation a { margin: 0; padding: 14px 18px; border: 0; border-radius: 8px; }
.service-article .system-tabs > .tabs-container { grid-column: 2; grid-row: 1; min-width: 0; padding: 0; margin: 0; }
.service-article .system-tabs .equipment-grid { margin-top: 0; }
.service-article .system-tabs .callout { margin: 0; padding: 24px; }
.service-article .system-tabs .system-flow { padding: 16px; gap: 12px; }
.service-article .system-tabs .system-flow span { min-width: 0; overflow-wrap: break-word; }
@media (min-width: 1200px) {
  .service-article .equipment-grid-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .service-article .system-tabs { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .service-article .system-tabs > .tabs-container { grid-column: 1; grid-row: 2; }
  .service-article .system-tabs > .tabNavigation { display: flex; flex-wrap: wrap; gap: 8px; }
  .service-article .system-tabs > .tabNavigation:before, .service-article .system-tabs > .tabNavigation:after { display: none; }
  .service-article .system-tabs > .tabNavigation li { flex: 1 1 220px; width: auto; margin: 0; }
}
@media (max-width: 767px) {
  .service-article .equipment-grid { grid-template-columns: minmax(0, 1fr); }
  #header .logo { max-width: 100%; height: auto; }
  #header .logo img { max-width: 100%; height: auto; }
  #header .logo-area > table { max-width: 100%; }
  #header .logo-area > table font { font-size: clamp(16px, 5.4vw, 24px); }
  .service-article .article-image { float: none; display: block; width: 100%; margin: 0 0 24px; }
  .service-article #content { font-size: 15px; line-height: 1.75; }
  .service-article .pricing-alternative { width: 100%; float: none; margin-bottom: 24px; }
  .service-article .team { gap: 16px; padding: 18px; }
  .service-article .system-flow { flex-direction: column; }
  .service-article .system-flow b { transform: rotate(90deg); }
  .service-catalog .portfolio-page > .row > .element { width: 50%; }
}
@media (max-width: 480px) {
  .service-catalog .portfolio-page > .row > .element { width: 100%; }
  .service-catalog .portfolio-item .portfolio-info h5, .service-catalog .portfolio-categories { min-height: 0; }
}
