/* CTPL corrosion-resistant lining page — overview and selection readability v39
   Enlarges the two review sections and uses their available space without
   changing the approved content, interactions or overall visual language. */

.service-subnav-inner {
  min-height: 64px;
  gap: clamp(9px, 0.8vw, 15px);
}

.service-subnav a {
  padding: 10px clamp(14px, 1vw, 19px);
  font-size: clamp(16px, 0.88vw, 17.5px) !important;
  line-height: 1.25;
}

.service-intro.section {
  padding-top: clamp(62px, 4.1vw, 76px) !important;
  padding-bottom: clamp(62px, 4.1vw, 76px) !important;
}

.service-intro .intro-grid {
  grid-template-columns: minmax(610px, 0.9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(42px, 4vw, 74px);
}

.service-intro .intro-title {
  position: static;
}

.service-intro .intro-title .section-kicker {
  font-size: clamp(15.5px, 0.84vw, 17.5px) !important;
}

.service-intro .intro-title h2 {
  max-width: 850px;
  font-size: clamp(3.45rem, 3.75vw, 4.5rem) !important;
  line-height: 1.02 !important;
}

.service-intro .intro-copy {
  color: #405c57;
}

.service-intro .intro-copy p {
  margin: 0 0 22px;
  font-size: clamp(21px, 1.16vw, 23px) !important;
  line-height: 1.55;
}

.service-intro .intro-copy p:first-child {
  color: #173431;
  font-size: clamp(22px, 1.24vw, 24px) !important;
  line-height: 1.52;
}

.service-intro .intro-copy p:last-of-type {
  margin-bottom: 0;
}

.service-intro .intro-callout {
  margin-top: 27px;
  padding: 24px 28px;
  border-left-width: 4px;
}

.service-intro .intro-callout span {
  font-size: clamp(14.5px, 0.78vw, 16px) !important;
  line-height: 1.3;
}

.service-intro .intro-callout strong {
  margin-top: 8px;
  font-size: clamp(18.5px, 1vw, 20.5px) !important;
  line-height: 1.45;
}

.selection.section {
  padding-top: clamp(64px, 4.4vw, 82px) !important;
  padding-bottom: clamp(64px, 4.4vw, 82px) !important;
}

.selection .selection-grid {
  grid-template-columns: minmax(470px, 0.7fr) minmax(0, 1.3fr);
  align-items: start;
  gap: clamp(42px, 4vw, 76px);
}

.selection .selection-copy .section-kicker {
  font-size: clamp(15.5px, 0.84vw, 17.5px) !important;
}

.selection .selection-copy h2 {
  max-width: 700px;
  font-size: clamp(3.25rem, 3.45vw, 4.15rem) !important;
  line-height: 1.03 !important;
}

.selection .selection-copy > p:last-child {
  max-width: 690px;
  margin-top: 24px;
  font-size: clamp(20px, 1.08vw, 22px) !important;
  line-height: 1.58;
}

.selection .selection-matrix {
  border-top-color: rgba(28, 86, 81, 0.22);
}

.selection .selection-matrix article {
  grid-template-columns: minmax(160px, 0.24fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 2.1vw, 40px);
  min-height: 86px;
  padding: 20px clamp(18px, 1.4vw, 28px);
  border-bottom-color: rgba(28, 86, 81, 0.22);
}

.selection .selection-matrix article:hover {
  padding-left: clamp(26px, 2vw, 38px);
}

.selection .selection-matrix span {
  font-size: clamp(15.5px, 0.86vw, 17px) !important;
  line-height: 1.35;
}

.selection .selection-matrix strong {
  color: #183b37;
  font-size: clamp(19px, 1.05vw, 21px) !important;
  line-height: 1.45;
}

@media (max-width: 1300px) {
  .service-intro .intro-grid,
  .selection .selection-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .service-intro .intro-title h2,
  .selection .selection-copy h2 {
    max-width: 980px;
  }

  .service-intro .intro-copy,
  .selection .selection-copy > p:last-child {
    max-width: none;
  }

  .selection .selection-copy {
    position: static;
  }

  .selection .selection-matrix article {
    grid-template-columns: minmax(170px, 0.22fr) minmax(0, 1fr);
  }
}

@media (max-width: 700px) {
  .service-subnav-inner {
    min-height: 58px;
  }

  .service-subnav a {
    padding: 9px 12px;
    font-size: 15px !important;
  }

  .service-intro.section,
  .selection.section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }

  .service-intro .intro-grid,
  .selection .selection-grid {
    gap: 25px;
  }

  .service-intro .intro-title .section-kicker,
  .selection .selection-copy .section-kicker {
    font-size: 14.5px !important;
  }

  .service-intro .intro-title h2,
  .selection .selection-copy h2 {
    font-size: clamp(2.35rem, 10.8vw, 3rem) !important;
  }

  .service-intro .intro-copy p,
  .service-intro .intro-copy p:first-child,
  .selection .selection-copy > p:last-child {
    font-size: 18px !important;
    line-height: 1.58;
  }

  .service-intro .intro-callout {
    margin-top: 22px;
    padding: 20px;
  }

  .service-intro .intro-callout span {
    font-size: 13.5px !important;
  }

  .service-intro .intro-callout strong {
    font-size: 17px !important;
  }

  .selection .selection-matrix article {
    grid-template-columns: 1fr;
    gap: 7px;
    min-height: 0;
    padding: 18px 14px;
  }

  .selection .selection-matrix article:hover {
    padding-left: 18px;
  }

  .selection .selection-matrix span {
    font-size: 14px !important;
  }

  .selection .selection-matrix strong {
    font-size: 18px !important;
  }
}

