/* Service pages: compact opening, clear reading order, quiet navigation. */
.service-page .service-hero,
.contact-page .service-hero {
  min-height: 0;
  margin-bottom: 0;
  padding: 30px 0 38px;
}
.service-hero h1 {
  max-width: 880px;
  margin: 12px 0 14px;
  font-size: clamp(28px, 3.4vw, 44px);
  line-height: 1.14;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.service-hero__subtitle { max-width: 640px; margin: 0 0 22px; font-size: 18px; line-height: 1.55; }
.service-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.service-price-button { color: #fff; border: 1px solid #a5c1ba; background: transparent; }
.service-price-button:hover { color: #14252d; background: #fff; }
.service-back { display: none; color: #d6e7e3; font-size: 14px; text-decoration: none; }
.contact-page .service-back { display: inline-block; }
.service-breadcrumbs .breadcrumbs { padding: 0; margin: 0 0 18px; font-size: 14px; gap: 8px; }
.service-breadcrumbs .breadcrumbs a { color: #d6e7e3; }
.service-breadcrumbs .breadcrumbs span { color: #a5c1ba; margin: 0; }
.service-content { padding-top: 32px; padding-bottom: 56px; }
.service-content .service-grid { margin-top: 0; }
.service-main > .lead { margin-top: 0; }
.service-main .price-jump { display: none; }
.service-main p { line-height: 1.7; max-width: 72ch; }
.service-main h2 { margin: 30px 0 14px; line-height: 1.25; }
.service-main h3 { line-height: 1.3; }
.service-main li { margin-bottom: 10px; line-height: 1.65; max-width: 72ch; }
.service-main .service-illustration { margin: 32px 0; max-width: 680px; }
.service-content .sidebar-widget { padding: 24px; }
.service-content .sidebar-widget h2 { margin-top: 0; }
.contact-page .contact-grid { padding: 36px 24px 56px; }
@media (max-width: 992px) {
  .service-content .service-grid { gap: 28px; }
  .service-sidebar { border-top: 1px solid #dce3df; padding-top: 28px; }
}
@media (max-width: 768px) {
  .service-page .service-hero,
  .contact-page .service-hero { padding: 22px 0 28px; }
  .service-breadcrumbs { display: none; }
  .service-back { display: inline-block; margin-bottom: 8px; min-height: 24px; }
  .service-hero h1 { font-size: 28px; margin: 8px 0 14px; }
  .service-hero__subtitle { font-size: 16px; margin-bottom: 20px; }
  .service-hero__actions .btn { padding: 12px 16px; font-size: 15px; }
  .service-content { padding-top: 24px; padding-bottom: 36px; }
  .service-main .lead { font-size: 17px; line-height: 1.65; }
  .service-main h2 { font-size: 23px; }
  .service-main h3 { font-size: 20px; }
  .service-sidebar { padding-top: 24px; }
  .contact-page .contact-grid {
    padding: 28px max(20px, env(safe-area-inset-right)) 36px max(20px, env(safe-area-inset-left));
  }
}

.service-request { margin-top: 36px; padding: 0; scroll-margin-top: 90px; }
.service-main .service-request h2 { margin-top: 0; }
@media (max-width: 768px) { .service-request { margin-top: 28px; } }

.request-status { margin-top: 18px; padding: 16px; border: 1px solid #b6d5c8; border-radius: 6px; background: #e2f3ea; }
.request-status.error { border-color: #d78e8e; background: #fcecec; }
.request-status[hidden] { display: none; }
.contact-form-wrapper button:disabled { opacity: .7; cursor: default; }

/* Complete subjects stay visible in cards and service illustrations. */
.equipment-card img { height: auto; aspect-ratio: 3 / 2; object-fit: contain; background: #edf1ef; }
.service-illustration img, .feature-photo { display: block; width: 100%; height: auto; max-height: none; object-fit: contain; }
.hero { background-image: none; background-color: #111c20; overflow: hidden; }
.hero__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: right center; opacity: .78; }
.hero__content { position: relative; z-index: 1; }
@media (max-width: 992px) {
 .hero { display: flex; flex-direction: column; min-height: 0; }
 .hero__content { padding: 32px 20px 24px; }
 .hero__photo { position: static; width: 100%; height: auto; opacity: 1; }
 .hero-facts { margin-top: 24px; }
}
