/* ==========================================================
   LAI PULO HOMEPAGE — STRUCTURED SECTION STYLESHEET
   Purpose: section-scoped CSS only, with clear edit blocks.
   Note: Tailwind utility classes remain in the HTML; this file
   handles custom backgrounds, animations, cards and section polish.
========================================================== */

/* ==========================================================
   01. DESIGN TOKENS / ROOT VARIABLES
========================================================== */
:root {
  --lp-navy: #061b33;
  --lp-navy-2: #0b2c4d;
  --lp-teal: #049a9a;
  --lp-cyan: #38cfd0;
  --lp-gold: #d6ad45;
  --lp-mist: #eef6f8;
  --lp-ink: #102033;
  --lp-muted: #607083;
  --lp-line: rgba(7,31,58,.10);
  --lp-shadow-soft: 0 18px 50px rgba(6,27,51,.08);
  --lp-shadow-premium: 0 30px 90px rgba(6,27,51,.16);
  --lp-radius-xl: 28px;
  --lp-radius-xxl: 34px;
}

/* ==========================================================
   02. BASE / SAFE GLOBAL HELPERS
   These are intentionally minimal and non-destructive.
========================================================== */
html { scroll-behavior: smooth; }
body { font-family: Manrope, Arial, sans-serif; }
img { max-width: 100%; }
a { text-decoration: none; }

/* Background utility retained for Tailwind sections, without a shared image. */
.bg-mist { background-color: var(--lp-mist); }

/* Image fallback used when assets fail to load. */
.image-fallback {
  background: linear-gradient(135deg, var(--lp-navy-2), var(--lp-teal));
  min-height: 280px;
}

/* ==========================================================
   03. UNIFIED ANIMATION SYSTEM
   Applied only to elements with the .reveal class.
========================================================== */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .75s ease, transform .75s ease;
  will-change: opacity, transform;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .reveal,
  .reveal.visible {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================
   04. HERO SECTION
   HTML: <section class="hero-bg grid-bg ...">
========================================================== */
.hero-bg {
  background:
    linear-gradient(90deg, rgba(6,27,51,.97) 0%, rgba(6,27,51,.88) 42%, rgba(6,27,51,.55) 100%);
}

.grid-bg {
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6,27,51,.97) 0%, rgba(6,27,51,.88) 42%, rgba(6,27,51,.55) 100%);
  background-size: 44px 44px, 44px 44px, cover, cover;
  background-position: center, center, center, center;
  background-repeat: repeat, repeat, no-repeat, no-repeat;
}

.hero-bg .rounded-\[2rem\] img,
.hero-bg .image-fallback {
  transition: transform .6s ease;
}

.hero-bg .rounded-\[2rem\]:hover img {
  transform: scale(1.025);
}

/* ==========================================================
   05. PERFORMANCE SNAPSHOT / METRICS STRIP
   HTML: second dark section after hero.
========================================================== */
main > section.bg-navy.py-8 .rounded-2xl {
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

main > section.bg-navy.py-8 .rounded-2xl:hover {
  transform: translateY(-5px);
  border-color: rgba(56,207,208,.35);
  background: rgba(255,255,255,.08);
}

/* ==========================================================
   06. ABOUT SECTION
   HTML: #about
========================================================== */
#about {
  background: #ffffff;
}

#about h2 {
  text-wrap: balance;
}

/* ==========================================================
   07. CHALLENGE / SOLUTIONS SECTION
   HTML: #solutions.lp-challenge-section
   Background image reveals only when scrolled into view.
========================================================== */
.lp-challenge-section {
  position: relative;
  overflow: hidden;
  padding: 120px 0;
  background:#fff;
}

.lp-challenge-bg {
  position:absolute;
  inset: 34px 6.8%;
  border-radius: 0;
  background:
    linear-gradient(90deg, rgba(247,251,252,.95) 0%, rgba(247,251,252,.80) 42%, rgba(247,251,252,.92) 100%);
  opacity: 0;
  transform: scale(1.045);
  filter: saturate(.95) contrast(.95);
  transition: opacity 1.05s ease, transform 1.35s ease;
  pointer-events: none;
}

.lp-challenge-section.is-visible .lp-challenge-bg {
  opacity: 1;
  transform: scale(1);
}

.lp-challenge-container {
  position: relative;
  z-index: 2;
  width: min(1320px, 92%);
  margin: 0 auto;
}

.lp-challenge-content {
  max-width: 820px;
}

.lp-challenge-eyebrow {
  margin: 0;
  color: var(--lp-teal);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.lp-challenge-content h2 {
  margin: 20px 0 0;
  color: var(--lp-navy);
  font-size: clamp(42px, 5.2vw, 68px);
  line-height: .98;
  font-weight: 900;
  letter-spacing: -0.055em;
  text-wrap: balance;
}

.lp-challenge-lead {
  max-width: 760px;
  margin: 30px 0 0;
  color: var(--lp-muted);
  font-size: 20px;
  line-height: 1.75;
}

.lp-challenge-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  margin-top: 70px;
}

.lp-challenge-card {
  min-height: 260px;
  padding: 34px;
  border-radius: var(--lp-radius-xl);
  background: rgba(255,255,255,.94);
  border: 1px solid var(--lp-line);
  box-shadow: var(--lp-shadow-soft);
  backdrop-filter: blur(10px);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.lp-challenge-card:hover {
  transform: translateY(-8px);
  border-color: rgba(56,207,208,.45);
  box-shadow: 0 32px 80px rgba(7,31,58,.14);
}

.lp-challenge-icon {
  width: 52px;
  height: 52px;
  margin-bottom: 24px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(56,207,208,.12);
  color: var(--lp-teal);
}

.lp-challenge-icon svg {
  width: 27px;
  height: 27px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.lp-challenge-card span {
  display: block;
  margin-bottom: 18px;
  color: var(--lp-teal);
  font-size: 14px;
  font-weight: 900;
}

.lp-challenge-card h3 {
  margin: 0;
  color: var(--lp-navy);
  font-size: 23px;
  line-height: 1.2;
  font-weight: 900;
}

.lp-challenge-card p {
  margin: 18px 0 0;
  color: var(--lp-muted);
  font-size: 16px;
  line-height: 1.85;
}

.lp-challenge-section.is-visible .lp-challenge-card:nth-child(1) { transition-delay: .08s; }
.lp-challenge-section.is-visible .lp-challenge-card:nth-child(2) { transition-delay: .16s; }
.lp-challenge-section.is-visible .lp-challenge-card:nth-child(3) { transition-delay: .24s; }
.lp-challenge-section.is-visible .lp-challenge-card:nth-child(4) { transition-delay: .32s; }

/* ==========================================================
   08. TECHNOLOGY SECTION
   HTML: #technology
========================================================== */
#technology {
  background: #ffffff;
}

#technology article {
  transition: transform .35s ease, box-shadow .35s ease;
}

#technology article:hover {
  transform: translateY(-7px);
}

#technology img {
  transition: transform .55s ease;
}

#technology .rounded-\[2rem\]:hover img {
  transform: scale(1.025);
}

/* ==========================================================
   09. PILOT PROJECT SECTION
   HTML: #pilot
========================================================== */
#pilot {
  background:
    radial-gradient(circle at 12% 0%, rgba(56,207,208,.10), transparent 32%),
    var(--lp-navy);
}

#pilot img {
  transition: transform .55s ease, filter .55s ease;
}

#pilot img:hover {
  transform: scale(1.035);
  filter: saturate(1.05);
}

#pilot .rounded-2xl {
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

#pilot .rounded-2xl:hover {
  transform: translateY(-5px);
  border-color: rgba(56,207,208,.35);
  background: rgba(255,255,255,.08);
}

/* ==========================================================
   10. VALIDATION SECTION
   HTML: #validation
========================================================== */
#validation {
  background: #ffffff;
}

#validation .rounded-3xl {
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

#validation .rounded-3xl:hover {
  transform: translateY(-6px);
  border-color: rgba(56,207,208,.35);
  box-shadow: 0 24px 60px rgba(6,27,51,.10);
}

#validation img {
  transition: transform .65s ease;
}

#validation .overflow-hidden:hover img {
  transform: scale(1.035);
}

/* ==========================================================
   11. BUSINESS & STRATEGIC VALUE SECTION
   HTML: #value
   Uses a different image treatment from Challenge.
========================================================== */
#value {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(rgba(238,246,248,.92), rgba(238,246,248,.96));
}

#value::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 0% 100%, rgba(56,207,208,.12), transparent 38%);
  pointer-events: none;
}

#value > div {
  position: relative;
  z-index: 2;
}

#value article {
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
}

#value article:hover {
  transform: translateY(-8px);
  border-color: rgba(56,207,208,.38);
  box-shadow: 0 28px 72px rgba(6,27,51,.13);
}

/* ==========================================================
   12. ENGINEERING INSIGHTS SECTION
   HTML: .lp-insights-section
========================================================== */
.lp-insights-section {
  padding: 110px 0;
  background: #f7fafc;
}

.lp-insights-container {
  width: min(1320px, 92%);
  margin: auto;
}

.lp-insights-heading {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 70px;
}

.lp-section-tag {
  display: inline-block;
  margin-bottom: 18px;
  padding: 10px 18px;
  border-radius: 50px;
  background: #dff7f7;
  color: var(--lp-teal);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.lp-insights-heading h2 {
  font-size: clamp(34px,4vw,54px);
  line-height: 1.1;
  color: var(--lp-navy);
  margin-bottom: 24px;
}

.lp-insights-heading p {
  font-size: 18px;
  line-height: 1.8;
  color: #64748b;
}

.lp-insights-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 40px;
  align-items: stretch;
}

.lp-featured-insight,
.lp-insight-card {
  background: #ffffff;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.08);
  transition: transform .35s ease, box-shadow .35s ease;
}

.lp-featured-insight { border-radius: 26px; }
.lp-insight-card { border-radius: 24px; }

.lp-featured-insight:hover,
.lp-insight-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 35px 80px rgba(0,0,0,.12);
}

.lp-featured-image,
.lp-card-image { overflow: hidden; }

.lp-featured-image img,
.lp-card-image img {
  width: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.lp-featured-image img { height: 420px; }
.lp-card-image img { height: 210px; }

.lp-featured-insight:hover img,
.lp-insight-card:hover img { transform: scale(1.05); }

.lp-featured-content { padding: 40px; }
.lp-card-content { padding: 30px; }

.lp-category,
.lp-card-content span {
  display: inline-block;
  color: var(--lp-teal);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 15px;
}

.lp-featured-content h3,
.lp-card-content h3 {
  color: var(--lp-navy);
  line-height: 1.25;
  margin-bottom: 18px;
}

.lp-featured-content h3 { font-size: 34px; }
.lp-card-content h3 { font-size: 25px; }

.lp-featured-content p,
.lp-card-content p {
  color: #64748b;
  line-height: 1.8;
}

.lp-insight-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 35px;
}

.lp-insight-footer span {
  color: #94a3b8;
  font-size: 14px;
}

.lp-insight-footer a,
.lp-card-content a {
  color: var(--lp-teal);
  font-weight: 700;
}

.lp-insight-footer a:hover,
.lp-card-content a:hover { color: var(--lp-navy); }

.lp-insight-cards {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.lp-insights-button {
  text-align: center;
  margin-top: 65px;
}

.lp-outline-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 17px 34px;
  border: 2px solid var(--lp-teal);
  border-radius: 60px;
  color: var(--lp-teal);
  font-weight: 700;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}

.lp-outline-btn:hover {
  background: var(--lp-teal);
  color: #fff;
  transform: translateY(-3px);
}

/* ==========================================================
   13. NEWSLETTER SECTION
   HTML: .lp-newsletter
   Purpose: compact executive subscription block
========================================================== */
.lp-newsletter {
  position: relative;
  overflow: hidden;
  padding: 72px 0;
  background: #071f3a;
  color: #ffffff;
}

.lp-newsletter::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(56,207,208,.055), transparent 28%, transparent 72%, rgba(56,207,208,.045)),
    radial-gradient(circle at 12% 20%, rgba(56,207,208,.11), transparent 28%);
  pointer-events: none;
}

.lp-newsletter-wrapper {
  width: min(1180px, 92%);
  margin: 0 auto;
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 470px);
  gap: 64px;
  align-items: center;
}

.lp-newsletter-left {
  max-width: 690px;
}

.lp-newsletter-label {
  display: inline-block;
  margin-bottom: 16px;
  color: #38cfd0;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.lp-newsletter h2 {
  margin: 0;
  max-width: 620px;
  color: #ffffff;
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.045em;
}

.lp-newsletter p {
  margin: 18px 0 0;
  max-width: 680px;
  color: rgba(255,255,255,.72);
  font-size: 16px;
  line-height: 1.85;
}

.lp-newsletter-right {
  width: 100%;
}

.lp-newsletter-form {
  display: flex;
  width: 100%;
  min-height: 58px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 18px 50px rgba(0,0,0,.20);
}

.lp-newsletter-form input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  padding: 0 24px;
  background: transparent;
  color: #071f3a;
  font: inherit;
  font-size: 15px;
}

.lp-newsletter-form input::placeholder {
  color: #94a3b8;
}

.lp-newsletter-form button {
  border: 0;
  padding: 0 30px;
  background: #38cfd0;
  color: #071f3a;
  font: inherit;
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
  transition: background .28s ease, color .28s ease;
}

.lp-newsletter-form button:hover {
  background: #ffffff;
  color: #071f3a;
  box-shadow: inset 0 0 0 2px #38cfd0;
}

.lp-newsletter small {
  display: block;
  margin-top: 13px;
  color: rgba(255,255,255,.55);
  font-size: 13px;
  line-height: 1.6;
}

@media (max-width: 900px) {
  .lp-newsletter {
    padding: 64px 0;
  }

  .lp-newsletter-wrapper {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .lp-newsletter h2 {
    font-size: 32px;
  }
}

@media (max-width: 540px) {
  .lp-newsletter {
    padding: 54px 0;
  }

  .lp-newsletter-form {
    flex-direction: column;
    min-height: 0;
    border-radius: 22px;
  }

  .lp-newsletter-form input {
    min-height: 56px;
    padding: 0 20px;
  }

  .lp-newsletter-form button {
    min-height: 54px;
    width: 100%;
  }
}

/* ==========================================================
   14. FINAL CTA SECTION
   HTML: section before footer with #contact
========================================================== */
#contact {
  position: relative;
  z-index: 2;
}

/* ==========================================================
   15. FOOTER SECTION
   HTML: footer
========================================================== */
footer img {
  max-height: 40px;
}

/* ==========================================================
   16. RESPONSIVE CONTROL
========================================================== */
@media (max-width: 1100px) {
  .lp-challenge-grid,
  #value .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lp-insights-grid {
    grid-template-columns: 1fr;
  }

  .lp-featured-image img { height: 430px; }
}

@media (max-width: 768px) {
  .lp-challenge-section,
  .lp-insights-section,
  .lp-newsletter-section {
    padding: 84px 0;
  }

  .lp-challenge-bg {
    inset: 16px 0;
    opacity: .85;
  }

  .lp-challenge-content h2,
  #value h2 {
    font-size: 40px;
  }

  .lp-challenge-lead,
  .lp-insights-heading p,
  .lp-newsletter-content p {
    font-size: 16px;
  }

  .lp-challenge-grid,
  #value .grid {
    grid-template-columns: 1fr;
    margin-top: 46px;
  }

  .lp-challenge-card {
    min-height: auto;
    padding: 28px;
  }

  .lp-featured-content,
  .lp-card-content { padding: 26px; }
  .lp-featured-content h3 { font-size: 28px; }
  .lp-card-content h3 { font-size: 22px; }
  .lp-featured-image img { height: 260px; }
  .lp-card-image img { height: 200px; }

  .lp-insight-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .lp-newsletter-input {
    flex-direction: column;
    border-radius: 24px;
  }

  .lp-newsletter-input input { padding: 18px 22px; }
  .lp-newsletter-input button { width: 100%; padding: 18px; }
}

@media (max-width: 480px) {
  .lp-challenge-content h2,
  .lp-insights-heading h2,
  .lp-newsletter-content h2,
  #value h2 {
    font-size: 34px;
  }

  .lp-featured-image img { height: 220px; }
  .lp-card-image img { height: 180px; }
  .lp-outline-btn { width: 100%; }
}


/* ==========================================================
   NEWSLETTER INLINE SAFEGUARD
   Current newsletter uses inline styles for reliable rendering.
========================================================== */
#newsletter, #newsletter * { box-sizing: border-box; }


/* ==========================================================
   09B. BUSINESS VALUE PREMIUM OVERRIDES
========================================================== */
.lp-value-section{
background:linear-gradient(90deg,#f7fafc 0 42%,#eef7f9 42% 100%);
position:relative;overflow:hidden}
.lp-value-section::before{
content:"";position:absolute;inset:0;
background:radial-gradient(circle at 80% 20%,rgba(56,207,208,.08),transparent 30%);
pointer-events:none}
.lp-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.lp-value-card{
background:rgba(255,255,255,.92)!important;
backdrop-filter:blur(6px);
border:1px solid rgba(7,31,58,.08);
transition:transform .28s ease,box-shadow .28s ease;
}
.lp-value-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(7,31,58,.12)}
@keyframes lpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.lp-value-icon{animation:lpFloat 3.5s ease-in-out infinite}
@media(max-width:768px){
.lp-value-section{background:#f7fafc}
.lp-value-grid{grid-template-columns:1fr;gap:14px}
.lp-value-card{padding:18px!important;border-radius:18px}
.lp-value-card-header{margin-bottom:8px}
.lp-value-card h3{font-size:18px}
.lp-value-card p{font-size:14px;line-height:1.6}
}


/* VALIDATION PREMIUM */
.lp-validation-image{width:100%;height:auto;max-height:520px;object-fit:contain;background:#eef4f7;border-radius:1.5rem;transition:transform .35s ease;user-select:none;-webkit-user-drag:none}
.lp-validation-controls{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem}
.lp-validation-controls button{width:36px;height:36px;border-radius:50%;border:1px solid #d6e3ea;background:#fff;cursor:pointer}
@media(max-width:768px){.lp-validation-image{max-height:none}}



/* ==========================================================
   CHALLENGE SECTION — EDITORIAL PREMIUM (ISOLATED)
   HTML: #solutions.lp-challenge-editorial
   Purpose: minimal executive challenge narrative with subtle title image.
========================================================== */

.lp-challenge-editorial {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 88px 0 72px;
  background:
    linear-gradient(90deg, #ffffff 0%, #ffffff 54%, #f3f8fb 54%, #eef6f8 100%);
}

.lp-challenge-editorial::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(64vw, 860px);
  height: 430px;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(6, 27, 51, .70), rgba(6, 27, 51, .36)),
    url('../images/produced-water.png') center center / cover no-repeat;
  border-bottom-right-radius: 46px;
}

.lp-challenge-editorial::after {
  content: "";
  position: absolute;
  right: -180px;
  top: 140px;
  width: 420px;
  height: 420px;
  border-radius: 999px;
  z-index: -1;
  background: radial-gradient(circle, rgba(56, 207, 208, .10), transparent 70%);
  pointer-events: none;
}

.lp-challenge-container {
  width: min(1240px, 92%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
  gap: clamp(48px, 6vw, 84px);
  align-items: start;
}

.lp-challenge-left {
  padding-top: 18px;
}

.lp-challenge-eyebrow {
  margin: 0 0 20px;
  color: #38cfd0;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .26em;
  text-transform: uppercase;
}

.lp-challenge-left > h2 {
  max-width: 760px;
  margin: 0 0 42px;
  color: #ffffff;
  font-size: clamp(42px, 4.8vw, 64px);
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.06em;
  text-wrap: balance;
}

.lp-challenge-list {
  width: 100%;
  padding: 4px 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.lp-challenge-row {
  position: relative;
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 18px;
  align-items: start;
  padding: 24px 0 24px 18px;
  border-bottom: 1px solid rgba(7, 31, 58, .11);
  transition: transform .28s ease, border-color .28s ease, background .28s ease;
}

.lp-challenge-row::before {
  content: "";
  position: absolute;
  left: 0;
  top: 24px;
  bottom: 24px;
  width: 2px;
  border-radius: 20px;
  background: transparent;
  transition: background .28s ease, transform .28s ease;
}

.lp-challenge-row:last-child {
  border-bottom: 0;
}

.lp-challenge-row:hover {
  transform: translateX(6px);
  border-color: rgba(56, 207, 208, .30);
}

.lp-challenge-row:hover::before {
  background: #38cfd0;
  transform: scaleY(1.08);
}

.lp-challenge-row .lp-icon {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: -2px;
  border-radius: 14px;
  background: rgba(56, 207, 208, .10);
  color: #0b2c4d;
  font-size: 22px;
  line-height: 1;
  transition: background .28s ease, color .28s ease, transform .28s ease;
}

.lp-challenge-row:hover .lp-icon {
  background: rgba(56, 207, 208, .18);
  color: #049a9a;
  transform: translateY(-1px);
}

.lp-challenge-row h3 {
  margin: 0;
  color: #071f3a;
  font-size: clamp(20px, 1.5vw, 25px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -.025em;
  transition: color .28s ease;
}

.lp-challenge-row:hover h3 {
  color: #067f83;
}

.lp-challenge-row p {
  max-width: 620px;
  margin: 8px 0 0;
  color: #64748b;
  font-size: 16px;
  line-height: 1.75;
}

.lp-challenge-answer {
  margin-top: 86px;
  padding: clamp(34px, 4vw, 52px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 92% 10%, rgba(56, 207, 208, .18), transparent 38%),
    linear-gradient(145deg, #061b33, #092b4c);
  color: #ffffff;
  box-shadow: 0 28px 90px rgba(6, 27, 51, .20);
  border: 1px solid rgba(255, 255, 255, .10);
}

.lp-challenge-answer > span {
  display: inline-block;
  color: #38cfd0;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .26em;
  text-transform: uppercase;
}

.lp-challenge-answer h3 {
  margin: 22px 0 20px;
  color: #ffffff;
  font-size: clamp(30px, 3vw, 44px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.lp-challenge-answer h3 em {
  color: #38cfd0;
  font-style: normal;
}

.lp-challenge-answer p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: 17px;
  line-height: 1.85;
}

@media (max-width: 980px) {
  .lp-challenge-editorial {
    padding: 0 0 76px;
    background: #ffffff;
  }

  .lp-challenge-editorial::before {
    position: relative;
    display: block;
    width: 100%;
    height: 300px;
    border-radius: 0;
    background:
      linear-gradient(90deg, rgba(6, 27, 51, .74), rgba(6, 27, 51, .30)),
      url('../images/produced-water.png') center center / cover no-repeat;
  }

  .lp-challenge-editorial::after {
    display: none;
  }

  .lp-challenge-container {
    width: min(100% - 40px, 760px);
    display: block;
    margin-top: -230px;
  }

  .lp-challenge-left {
    padding-top: 0;
  }

  .lp-challenge-left > h2 {
    max-width: 620px;
    margin-bottom: 190px;
    font-size: clamp(38px, 9.5vw, 54px);
    line-height: 1.02;
    letter-spacing: -.05em;
  }

  .lp-challenge-list {
    padding-top: 8px;
  }

  .lp-challenge-row {
    grid-template-columns: 40px 1fr;
    gap: 14px;
    padding: 18px 0 18px 12px;
  }

  .lp-challenge-row::before {
    top: 18px;
    bottom: 18px;
  }

  .lp-challenge-row .lp-icon {
    width: 36px;
    height: 36px;
    border-radius: 12px;
    font-size: 19px;
  }

  .lp-challenge-row h3 {
    font-size: 19px;
  }

  .lp-challenge-row p {
    font-size: 15px;
    line-height: 1.68;
  }

  .lp-challenge-answer {
    margin-top: 30px;
    padding: 30px;
    border-radius: 24px;
  }

  .lp-challenge-answer h3 {
    font-size: 30px;
  }

  .lp-challenge-answer p {
    font-size: 15px;
  }
}

@media (max-width: 520px) {
  .lp-challenge-editorial::before {
    height: 285px;
    background-position: center top;
  }

  .lp-challenge-container {
    width: min(100% - 30px, 760px);
    margin-top: -220px;
  }

  .lp-challenge-eyebrow {
    font-size: 11px;
    letter-spacing: .20em;
  }

  .lp-challenge-left > h2 {
    margin-bottom: 178px;
    font-size: 36px;
  }

  .lp-challenge-row {
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px 0 16px 10px;
  }

  .lp-challenge-row .lp-icon {
    width: 31px;
    height: 31px;
    font-size: 17px;
    border-radius: 10px;
  }

  .lp-challenge-row h3 {
    font-size: 17px;
  }

  .lp-challenge-row p {
    font-size: 14px;
  }

  .lp-challenge-answer {
    margin-top: 24px;
    padding: 24px;
  }

  .lp-challenge-answer h3 {
    font-size: 25px;
  }
}


@media (max-width:1024px){
.lp-challenge-editorial::before{width:100%;height:300px;border-bottom-right-radius:28px;}
.lp-challenge-container{grid-template-columns:1fr;gap:32px;}
}
@media (max-width:768px){
.lp-challenge-editorial{padding:64px 0 48px;}
.lp-challenge-editorial::before{width:100%;height:250px;}
.lp-challenge-left>h2{font-size:clamp(34px,9vw,46px);max-width:none;margin-bottom:28px;}
.lp-challenge-row{padding:16px 0 16px 12px;gap:14px;}
.lp-challenge-answer{padding:28px;}
}

/* ==========================================================
   FINAL CHALLENGE SECTION COMPACTNESS FIX
   Scope: #solutions.lp-challenge-editorial only
   Purpose: compact desktop rows and balanced mobile spacing.
========================================================== */
#solutions.lp-challenge-editorial{
  padding-top:72px;
  padding-bottom:58px;
}

#solutions.lp-challenge-editorial .lp-challenge-container{
  align-items:start;
  gap:clamp(34px,4.5vw,64px);
}

#solutions.lp-challenge-editorial .lp-challenge-left > h2{
  margin-bottom:34px;
}

#solutions.lp-challenge-editorial .lp-challenge-list{
  margin-top:0;
}

#solutions.lp-challenge-editorial .lp-challenge-row{
  grid-template-columns:38px 1fr;
  gap:15px;
  padding:16px 0 16px 12px;
  border-bottom-color:rgba(7,31,58,.09);
}

#solutions.lp-challenge-editorial .lp-challenge-row::before{
  top:16px;
  bottom:16px;
}

#solutions.lp-challenge-editorial .lp-challenge-row .lp-icon{
  width:34px;
  height:34px;
  border-radius:11px;
  font-size:18px;
  background:rgba(56,207,208,.10);
}

#solutions.lp-challenge-editorial .lp-challenge-row h3{
  font-size:clamp(18px,1.22vw,21px);
  line-height:1.18;
  letter-spacing:-.02em;
}

#solutions.lp-challenge-editorial .lp-challenge-row p{
  max-width:560px;
  margin-top:5px;
  font-size:14.5px;
  line-height:1.62;
}

#solutions.lp-challenge-editorial .lp-challenge-answer{
  margin-top:60px;
  padding:clamp(30px,3.3vw,44px);
  border-radius:28px;
}

#solutions.lp-challenge-editorial .lp-challenge-answer h3{
  font-size:clamp(30px,2.6vw,40px);
}

#solutions.lp-challenge-editorial .lp-challenge-answer p{
  font-size:15.5px;
  line-height:1.75;
}

@media(max-width:980px){
  #solutions.lp-challenge-editorial{
    padding:0 0 58px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-container{
    margin-top:-222px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-left > h2{
    margin-bottom:188px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-list{
    margin-top:14px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row{
    grid-template-columns:34px 1fr;
    gap:12px;
    padding:14px 0 14px 10px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row::before{
    top:14px;
    bottom:14px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row .lp-icon{
    width:30px;
    height:30px;
    border-radius:10px;
    font-size:16px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row h3{
    font-size:17px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row p{
    font-size:13.8px;
    line-height:1.58;
    margin-top:4px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-answer{
    margin-top:24px;
    padding:24px;
  }
}

@media(max-width:520px){
  #solutions.lp-challenge-editorial{
    padding-bottom:48px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-container{
    margin-top:-214px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-left > h2{
    margin-bottom:176px;
    font-size:35px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-list{
    margin-top:16px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-row{
    padding:13px 0 13px 9px;
  }

  #solutions.lp-challenge-editorial .lp-challenge-answer h3{
    font-size:25px;
  }
}


/* ===== Challenge cross-browser fix override ===== */
.lp-challenge-editorial{padding:72px 0 80px;background:#fff;}
.lp-challenge-container{max-width:1200px;width:92%;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start!important;}
.lp-challenge-left{display:block;}
.lp-challenge-left h2{margin-top:14px;margin-bottom:28px!important;font-size:clamp(2.5rem,4vw,4.4rem);line-height:1.02;font-weight:800;color:#0b2340;}
.lp-challenge-list{margin-top:18px!important;padding-top:18px;border-top:0;}
.lp-challenge-row{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid #e8eef2;background:transparent;box-shadow:none;transition:.25s ease;}
.lp-challenge-row:hover{transform:translateX(6px);}
.lp-icon{font-size:30px;line-height:1;flex:0 0 52px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#eefbfb;border-radius:14px}
.lp-challenge-row h3{margin:0 0 6px;font-size:1.7rem;font-weight:700;color:#0b2340}
.lp-challenge-row p{margin:0;font-size:1.05rem;line-height:1.7;color:#5d6c7d}
@media (max-width:980px){
.lp-challenge-container{grid-template-columns:1fr;gap:28px}
.lp-challenge-left h2{margin-bottom:20px!important;font-size:clamp(2.2rem,9vw,3.6rem)}
.lp-challenge-list{margin-top:32px!important;padding-top:8px}
.lp-challenge-row{padding:18px 0}
.lp-icon{width:46px;height:46px;font-size:26px}
.lp-challenge-row h3{font-size:1.35rem}
.lp-challenge-row p{font-size:1rem}
}


/* ==========================================================
   CHALLENGE SECTION V4 — SPLIT IMAGE / ANSWER PANEL
   HTML: #solutions.lp-challenge-v4
   Purpose: cross-browser stable, compact, minimalist challenge section.
========================================================== */
.lp-challenge-v4{
  position:relative;
  overflow:hidden;
  background:#ffffff;
  padding:clamp(72px,8vw,108px) 0;
  isolation:isolate;
}
.lp-challenge-v4-container{
  width:min(1220px,92%);
  margin:0 auto;
}
.lp-challenge-v4-top{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:clamp(24px,3.4vw,44px);
  align-items:stretch;
}
.lp-challenge-v4-visual{
  position:relative;
  min-height:clamp(380px,34vw,480px);
  border-radius:34px;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(6,27,51,.82), rgba(6,27,51,.42)),
    url('../images/produced-water.png') center center / cover no-repeat;
  box-shadow:0 26px 80px rgba(6,27,51,.14);
}
.lp-challenge-v4-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 14% 18%, rgba(56,207,208,.20), transparent 34%);
  pointer-events:none;
}
.lp-challenge-v4-visual-inner{
  position:relative;
  z-index:1;
  min-height:inherit;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:clamp(34px,4vw,58px);
  max-width:820px;
}
.lp-challenge-v4-eyebrow{
  margin:0 0 16px;
  color:#38cfd0 !important;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.lp-challenge-v4-visual h2{
  margin:0;
  max-width:760px;
  color:#ffffff !important;
  font-size:clamp(42px,5.2vw,66px);
  line-height:.98;
  letter-spacing:-.06em;
  font-weight:900;
  text-wrap:balance;
}
.lp-challenge-v4-visual p{
  margin:22px 0 0;
  max-width:680px;
  color:rgba(255,255,255,.84) !important;
  font-size:clamp(15px,1.35vw,18px);
  line-height:1.75;
}
.lp-challenge-v4-answer{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  padding:clamp(34px,4.4vw,58px);
  background:
    radial-gradient(circle at 94% 8%, rgba(56,207,208,.18), transparent 38%),
    linear-gradient(145deg,#061b33,#092b4c);
  color:#ffffff;
  box-shadow:0 26px 80px rgba(6,27,51,.17);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.lp-challenge-v4-answer span{
  color:#38cfd0 !important;
  font-size:12px;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.lp-challenge-v4-answer h3{
  margin:22px 0 18px;
  color:#ffffff !important;
  font-size:clamp(28px,3vw,42px);
  line-height:1.1;
  letter-spacing:-.045em;
  font-weight:850;
  text-wrap:balance;
}
.lp-challenge-v4-answer p{
  margin:0;
  color:rgba(255,255,255,.76) !important;
  font-size:16px;
  line-height:1.8;
}
.lp-challenge-v4-list{
  margin-top:clamp(24px,3vw,38px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 36px;
  padding:8px 0 0;
}
.lp-challenge-v4-row{
  position:relative;
  display:grid;
  grid-template-columns:42px 1fr;
  gap:16px;
  align-items:start;
  padding:20px 0 20px 10px;
  border-bottom:1px solid rgba(7,31,58,.10);
  background:transparent;
  transition:transform .24s ease, border-color .24s ease;
}
.lp-challenge-v4-row::before{
  content:"";
  position:absolute;
  left:0;
  top:20px;
  bottom:20px;
  width:2px;
  border-radius:999px;
  background:transparent;
  transition:background .24s ease;
}
.lp-challenge-v4-row:hover{
  transform:translateX(5px);
  border-color:rgba(56,207,208,.34);
}
.lp-challenge-v4-row:hover::before{background:#38cfd0;}
.lp-challenge-v4-mark{
  width:34px;
  height:34px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(56,207,208,.10);
  color:#049a9a;
  font-size:16px;
  font-weight:900;
  line-height:1;
  margin-top:1px;
  transition:background .24s ease, color .24s ease;
}
.lp-challenge-v4-row:hover .lp-challenge-v4-mark{
  background:#38cfd0;
  color:#061b33;
}
.lp-challenge-v4-row h3{
  margin:0;
  color:#061b33;
  font-size:clamp(18px,1.45vw,22px);
  line-height:1.22;
  letter-spacing:-.026em;
  font-weight:850;
}
.lp-challenge-v4-row p{
  margin:6px 0 0;
  color:#64748b;
  max-width:560px;
  font-size:15px;
  line-height:1.62;
}
@media(max-width:980px){
  .lp-challenge-v4{padding:72px 0;}
  .lp-challenge-v4-top{grid-template-columns:1fr;gap:22px;}
  .lp-challenge-v4-visual{min-height:360px;border-radius:28px;background-position:center center;}
  .lp-challenge-v4-visual-inner{padding:34px;justify-content:flex-end;}
  .lp-challenge-v4-visual h2{font-size:clamp(34px,8vw,50px);line-height:1.02;}
  .lp-challenge-v4-visual p{font-size:15px;line-height:1.65;margin-top:16px;}
  .lp-challenge-v4-answer{border-radius:28px;padding:30px;}
  .lp-challenge-v4-answer h3{font-size:30px;}
  .lp-challenge-v4-list{grid-template-columns:1fr;margin-top:28px;gap:0;}
  .lp-challenge-v4-row{grid-template-columns:36px 1fr;gap:13px;padding:15px 0 15px 8px;}
  .lp-challenge-v4-row::before{top:15px;bottom:15px;}
  .lp-challenge-v4-mark{width:30px;height:30px;border-radius:10px;font-size:14px;}
  .lp-challenge-v4-row h3{font-size:17px;}
  .lp-challenge-v4-row p{font-size:13.8px;line-height:1.58;}
}
@media(max-width:560px){
  .lp-challenge-v4{padding:58px 0;}
  .lp-challenge-v4-container{width:min(100% - 30px,1220px);}
  .lp-challenge-v4-visual{min-height:390px;border-radius:24px;}
  .lp-challenge-v4-visual-inner{padding:28px;}
  .lp-challenge-v4-eyebrow,.lp-challenge-v4-answer span{font-size:10.5px;letter-spacing:.20em;}
  .lp-challenge-v4-visual h2{font-size:34px;}
  .lp-challenge-v4-answer{padding:26px;border-radius:24px;}
  .lp-challenge-v4-answer h3{font-size:25px;}
  .lp-challenge-v4-list{margin-top:22px;}
}


/* HERO V3 */
.lp-hero-slider{position:relative;min-height:100svh;overflow:hidden}
.lp-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease}
.lp-slide.active{opacity:1;z-index:1}
.lp-slide-content{position:absolute;left:8%;bottom:14%;max-width:700px;color:#fff}
.lp-slide h1{font-size:clamp(2.5rem,5vw,5rem);font-weight:800;line-height:1.05;margin:0 0 24px}
.lp-slide .cta{display:inline-block;padding:16px 30px;border-radius:999px;background:#38cfd0;color:#061b33;text-decoration:none;font-weight:800}
.lp-dots{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:5}
.lp-dots button{width:10px;height:10px;border-radius:50%;border:none;background:#ffffff80}
.lp-dots button.active{background:#fff}
@media(max-width:768px){
.lp-hero-slider{min-height:100svh}
.lp-slide-content{left:24px;right:24px;bottom:90px;max-width:none}
.lp-slide h1{font-size:2.3rem}
}


/* ==========================================================
   PHASE 4 — INTERNAL PAGE CONTENT SYSTEM
   Scoped classes only: .lp-page-*
========================================================== */
.lp-page-hero{position:relative;min-height:390px;display:flex;align-items:flex-end;overflow:hidden;background:#061b33;margin-top:0}
.lp-page-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.92);transform:scale(1.02)}
.lp-page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,27,51,.86),rgba(6,27,51,.56) 52%,rgba(6,27,51,.28));pointer-events:none}
.lp-page-hero__content{position:relative;z-index:2;width:min(1180px,92%);margin:0 auto;padding:148px 0 64px;color:#fff}
.lp-page-eyebrow{display:inline-block;margin:0 0 18px;color:#38cfd0;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.22em}
.lp-page-hero h1{max-width:850px;margin:0;color:#fff;font-size:clamp(38px,5vw,68px);line-height:1.02;letter-spacing:-.055em;font-weight:900}
.lp-page-hero p{max-width:760px;margin:24px 0 0;color:rgba(255,255,255,.82);font-size:18px;line-height:1.75}
.lp-breadcrumb{width:min(1180px,92%);margin:0 auto;padding:18px 0;color:#64748b;font-size:14px}
.lp-breadcrumb a{color:#049a9a;font-weight:800;text-decoration:none}.lp-breadcrumb span{color:#94a3b8;margin:0 8px}
.lp-page-section{padding:86px 0;background:#fff}.lp-page-section.soft{background:#f7fbfc}.lp-page-container{width:min(1180px,92%);margin:0 auto}
.lp-page-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:start}.lp-page-copy h2{margin:0 0 20px;color:#061b33;font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.04em;font-weight:900}.lp-page-copy p{margin:0 0 22px;color:#5b6b7d;font-size:17px;line-height:1.85}.lp-page-copy h3{margin:32px 0 12px;color:#061b33;font-size:24px;line-height:1.2}.lp-page-copy ul{margin:28px 0 0;padding:0;list-style:none;display:grid;gap:14px}.lp-page-copy li{display:flex;gap:12px;align-items:flex-start;color:#334155;font-weight:700}.lp-page-copy li::before{content:"";width:9px;height:9px;margin-top:9px;border-radius:999px;background:#38cfd0;flex:0 0 auto}
.lp-page-panel{border:1px solid rgba(6,27,51,.08);background:#fff;border-radius:28px;padding:34px;box-shadow:0 22px 70px rgba(6,27,51,.08)}.lp-page-panel h2{margin:0 0 22px;color:#061b33;font-size:30px}.lp-page-panel p{color:#64748b;line-height:1.8}.lp-page-image{border-radius:28px;overflow:hidden;box-shadow:0 26px 80px rgba(6,27,51,.13);background:#eef6f8}.lp-page-image img{width:100%;height:420px;object-fit:cover;display:block}.lp-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.lp-mini-card{border:1px solid rgba(6,27,51,.08);background:#fff;border-radius:18px;padding:18px}.lp-mini-card strong{display:block;color:#061b33;font-size:16px}.lp-mini-card span{display:block;margin-top:6px;color:#64748b;font-size:13px;line-height:1.55}.lp-page-cta{padding:72px 0;background:#061b33;color:#fff}.lp-page-cta__inner{width:min(1180px,92%);margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.lp-page-cta h2{margin:0;color:#fff;font-size:clamp(30px,3.2vw,46px);line-height:1.1}.lp-page-cta p{margin:14px 0 0;color:rgba(255,255,255,.74);line-height:1.75}.lp-page-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border-radius:999px;background:#38cfd0;color:#061b33;font-weight:900;text-decoration:none;white-space:nowrap}.lp-page-btn:hover{background:#fff}
.lp-faq-list{display:grid;gap:16px}.lp-faq-list details{border:1px solid rgba(6,27,51,.10);border-radius:20px;background:#fff;padding:20px 24px;box-shadow:0 14px 45px rgba(6,27,51,.05)}.lp-faq-list summary{cursor:pointer;color:#061b33;font-weight:900;font-size:18px}.lp-faq-list p{margin:14px 0 0;color:#64748b;line-height:1.8}.lp-contact-box{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.lp-contact-item{border:1px solid rgba(6,27,51,.08);border-radius:20px;padding:24px;background:#fff}.lp-contact-item strong{display:block;color:#061b33;margin-bottom:8px}.lp-contact-item span{color:#64748b}.lp-form{display:grid;gap:14px}.lp-form input,.lp-form textarea{width:100%;border:1px solid rgba(6,27,51,.12);border-radius:16px;padding:15px 16px;font:inherit;color:#061b33}.lp-form textarea{min-height:140px;resize:vertical}.lp-form button{border:0;border-radius:999px;background:#38cfd0;color:#061b33;font-weight:900;padding:16px 24px;cursor:pointer}.lp-legal-content{max-width:900px}.lp-legal-content h2{margin-top:42px}.lp-article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.lp-article-card{display:block;text-decoration:none;border:1px solid rgba(6,27,51,.08);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 16px 50px rgba(6,27,51,.06);transition:transform .25s ease,box-shadow .25s ease}.lp-article-card:hover{transform:translateY(-4px);box-shadow:0 24px 70px rgba(6,27,51,.10)}.lp-article-card img{width:100%;height:190px;object-fit:cover}.lp-article-card div{padding:22px}.lp-article-card span{font-size:12px;color:#049a9a;text-transform:uppercase;font-weight:900;letter-spacing:.14em}.lp-article-card h3{margin:12px 0 10px;color:#061b33;font-size:22px;line-height:1.2}.lp-article-card p{margin:0;color:#64748b;line-height:1.65;font-size:15px}
@media(max-width:900px){.lp-page-hero{min-height:330px}.lp-page-hero__content{padding:120px 0 48px}.lp-page-grid,.lp-page-cta__inner{grid-template-columns:1fr}.lp-page-image img{height:300px}.lp-mini-grid,.lp-contact-box,.lp-article-list{grid-template-columns:1fr 1fr}.lp-page-section{padding:64px 0}.lp-page-cta{padding:58px 0}}
@media(max-width:560px){.lp-page-hero{min-height:310px}.lp-page-hero__content{padding:112px 0 38px}.lp-page-hero h1{font-size:36px}.lp-page-hero p{font-size:16px}.lp-mini-grid,.lp-contact-box,.lp-article-list{grid-template-columns:1fr}.lp-page-panel{padding:24px}.lp-page-image img{height:240px}.lp-page-copy p{font-size:16px}.lp-breadcrumb{font-size:13px}.lp-page-cta__inner{gap:24px}.lp-page-btn{width:100%}}




.lp-map-section{
    padding:80px 0;
    background:#fff;
}

.lp-map-wrapper{
    overflow:hidden;
    border-radius:20px;
    box-shadow:0 20px 60px rgba(6,27,51,.10);
}

.lp-map-wrapper iframe{
    width:100%;
    height:500px;
    border:0;
    display:block;
}

@media (max-width:768px){

.lp-map-section{
    padding:60px 0;
}

.lp-map-wrapper iframe{
    height:350px;
}

}

.video-wrapper{background:rgba(255,255,255,.96);padding:3px;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.18),0 0 0 1px rgba(255,255,255,.25);transform:translateY(-2px)}.video-wrapper video{display:block;width:100%;height:100%;border-radius:19px;object-fit:cover}



/* =========================================================
   TECHNOLOGY PAGE — MINIMAL VIDEO HERO
========================================================= */

:root {
    --lp-fixed-header-height: 0px;
}

.lp-technology-intro {
    position: relative;
    height: clamp(350px, 45vh, 470px);
    margin-top: var(--lp-fixed-header-height);
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    box-sizing: border-box;
    background: #0b2c4d;
}

.lp-technology-intro__media,
.lp-technology-intro__overlay {
    position: absolute;
    inset: 0;
}

.lp-technology-intro__media {
    z-index: -2;
}

.lp-technology-intro__video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 52%;
}

.lp-technology-intro__overlay {
    z-index: -1;
    background:
        linear-gradient(
            90deg,
            rgba(4, 20, 38, .84) 0%,
            rgba(4, 20, 38, .58) 48%,
            rgba(4, 20, 38, .14) 100%
        ),
        linear-gradient(
            0deg,
            rgba(4, 20, 38, .56) 0%,
            rgba(4, 20, 38, .06) 64%
        );
}

.lp-technology-intro__content {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    padding-block: 34px;
    box-sizing: border-box;
}

.lp-technology-intro .lp-page-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 12px;
    color: #38cfd0;
    font-size: .7rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .19em;
    text-transform: uppercase;
}

.lp-technology-intro .lp-page-eyebrow::before {
    content: "";
    width: 26px;
    height: 2px;
    flex: 0 0 auto;
    background: currentColor;
}

.lp-technology-intro h1 {
    max-width: 710px;
    margin: 0;
    color: #fff;
    font-size: clamp(2.35rem, 4.45vw, 4.2rem);
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-technology-intro p {
    max-width: 620px;
    margin: 16px 0 0;
    color: rgba(255, 255, 255, .88);
    font-size: clamp(.95rem, 1.15vw, 1.06rem);
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-technology-intro {
        height: 410px;
    }

    .lp-technology-intro__content {
        padding-block: 30px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-technology-intro {
        height: 390px;
        min-height: 390px;
        align-items: center;
    }

    .lp-technology-intro__video {
        object-position: center center;
    }

    .lp-technology-intro__overlay {
        background:
            linear-gradient(
                0deg,
                rgba(4, 20, 38, .9) 0%,
                rgba(4, 20, 38, .54) 64%,
                rgba(4, 20, 38, .2) 100%
            );
    }

    .lp-technology-intro__content {
        width: calc(100% - 40px);
        padding-block: 26px;
    }

    .lp-technology-intro .lp-page-eyebrow {
        margin-bottom: 9px;
        font-size: .63rem;
        letter-spacing: .16em;
    }

    .lp-technology-intro .lp-page-eyebrow::before {
        width: 22px;
    }

    .lp-technology-intro h1 {
        max-width: 100%;
        font-size: clamp(2rem, 8.7vw, 2.65rem);
        line-height: 1.04;
        letter-spacing: -.037em;
    }

    .lp-technology-intro p {
        max-width: 100%;
        margin-top: 14px;
        font-size: .9rem;
        line-height: 1.55;
    }
}

/* Smaller phones */

@media (max-width: 380px) {
    .lp-technology-intro {
        height: 380px;
        min-height: 380px;
    }

    .lp-technology-intro__content {
        width: calc(100% - 32px);
    }

    .lp-technology-intro h1 {
        font-size: 1.95rem;
    }

    .lp-technology-intro p {
        font-size: .86rem;
    }
}

/* Reduced-motion fallback */

@media (prefers-reduced-motion: reduce) {
    .lp-technology-intro__video {
        display: none;
    }

    .lp-technology-intro__media {
        background:
            url("../images/slide.png")
            center / cover no-repeat;
    }
}




/* =========================================================
   TECHNOLOGY PAGE — EC-AOP OVERVIEW
========================================================= */

.lp-ec-overview {
    padding: clamp(72px, 9vw, 112px) 0;
    background: #ffffff;
}

.lp-ec-overview__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-ec-overview__header {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, .72fr);
    gap: clamp(36px, 7vw, 88px);
    align-items: end;
    margin-bottom: clamp(38px, 5vw, 58px);
}

.lp-tech-section-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #049a9a;
    font-size: .7rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.lp-tech-section-label::before {
    content: "";
    width: 28px;
    height: 2px;
    flex: 0 0 auto;
    background: currentColor;
}

.lp-ec-overview__header h2 {
    max-width: 760px;
    margin: 16px 0 0;
    color: #061b33;
    font-size: clamp(2.25rem, 4.4vw, 4.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.048em;
    text-wrap: balance;
}

.lp-ec-overview__header > p {
    max-width: 500px;
    margin: 0;
    color: #617083;
    font-size: 1rem;
    line-height: 1.75;
}

.lp-ec-overview__feature {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(300px, .7fr);
    gap: 22px;
    align-items: stretch;
}

.lp-ec-overview__media {
    position: relative;
    min-height: 440px;
    margin: 0;
    overflow: hidden;
    border-radius: 24px;
    background: #dcecf0;
}

.lp-ec-overview__media img {
    width: 100%;
    height: 100%;
    min-height: 440px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .7s ease;
}

.lp-ec-overview__media:hover img {
    transform: scale(1.025);
}

.lp-ec-overview__details {
    display: flex;
    flex-direction: column;
    padding: 10px 0 4px 28px;
}

.lp-ec-overview__details article {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 18px;
    padding: 24px 0;
    border-bottom: 1px solid #dfe8eb;
}

.lp-ec-overview__details article:first-child {
    padding-top: 8px;
}

.lp-ec-overview__details article > span {
    padding-top: 4px;
    color: #049a9a;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-ec-overview__details h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-ec-overview__details p {
    margin: 7px 0 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.65;
}

.lp-ec-overview__link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    align-self: flex-start;
    margin-top: auto;
    padding-top: 28px;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    text-decoration: none;
}

.lp-ec-overview__link span {
    color: #049a9a;
    transition: transform .25s ease;
}

.lp-ec-overview__link:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ec-overview__header,
    .lp-ec-overview__feature {
        grid-template-columns: 1fr;
    }

    .lp-ec-overview__header {
        gap: 22px;
    }

    .lp-ec-overview__header > p {
        max-width: 680px;
    }

    .lp-ec-overview__media,
    .lp-ec-overview__media img {
        min-height: 390px;
    }

    .lp-ec-overview__details {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        padding: 0;
    }

    .lp-ec-overview__details article {
        display: block;
        padding: 22px;
        border: 1px solid #dfe8eb;
        border-radius: 18px;
        background: #f7fafb;
    }

    .lp-ec-overview__details article:first-child {
        padding-top: 22px;
    }

    .lp-ec-overview__details article > span {
        display: block;
        margin-bottom: 16px;
        padding: 0;
    }

    .lp-ec-overview__link {
        grid-column: 1 / -1;
        margin-top: 8px;
        padding-top: 12px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ec-overview {
        padding: 68px 0;
    }

    .lp-ec-overview__container {
        width: calc(100% - 32px);
    }

    .lp-ec-overview__header {
        margin-bottom: 30px;
    }

    .lp-ec-overview__header h2 {
        margin-top: 13px;
        font-size: clamp(2rem, 10vw, 2.85rem);
        line-height: 1.05;
    }

    .lp-ec-overview__header > p {
        font-size: .93rem;
        line-height: 1.65;
    }

    .lp-ec-overview__feature {
        gap: 20px;
    }

    .lp-ec-overview__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-ec-overview__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-ec-overview__details {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-ec-overview__details article {
        display: grid;
        grid-template-columns: 34px 1fr;
        gap: 14px;
        padding: 18px;
        border-radius: 16px;
    }

    .lp-ec-overview__details article:first-child {
        padding-top: 18px;
    }

    .lp-ec-overview__details article > span {
        margin: 0;
        padding-top: 3px;
    }

    .lp-ec-overview__details p {
        font-size: .86rem;
    }

    .lp-ec-overview__link {
        margin-top: 10px;
        padding-top: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ec-overview__media img,
    .lp-ec-overview__link span {
        transition: none;
    }
}



/* =========================================================
   TECHNOLOGY PAGE — HOW EC-AOP WORKS
========================================================= */

.lp-ec-process {
    padding: clamp(72px, 9vw, 112px) 0;
    background: #eef6f8;
}

.lp-ec-process__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-ec-process__header {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, .72fr);
    gap: clamp(36px, 7vw, 88px);
    align-items: end;
    margin-bottom: clamp(38px, 5vw, 58px);
}

.lp-ec-process__header h2 {
    max-width: 800px;
    margin: 16px 0 0;
    color: #061b33;
    font-size: clamp(2.15rem, 4.15vw, 3.9rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.047em;
    text-wrap: balance;
}

.lp-ec-process__header > p {
    max-width: 500px;
    margin: 0;
    color: #617083;
    font-size: 1rem;
    line-height: 1.75;
}

.lp-ec-process__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
    gap: 22px;
    align-items: stretch;
}

.lp-ec-process__media {
    position: relative;
    min-height: 500px;
    margin: 0;
    overflow: hidden;
    border-radius: 24px;
    background: #061b33;
}

.lp-ec-process__media img {
    width: 100%;
    height: 100%;
    min-height: 500px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-ec-process__media figcaption {
    position: absolute;
    left: 20px;
    bottom: 20px;
    padding: 11px 15px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    background: rgba(6, 27, 51, .78);
    color: rgba(255, 255, 255, .9);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-ec-process__steps {
    display: grid;
    gap: 14px;
}

.lp-ec-process__step {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 18px;
    padding: 28px;
    border: 1px solid #d8e5e9;
    border-radius: 22px;
    background: #fff;
}

.lp-ec-process__number {
    padding-top: 3px;
    color: #049a9a;
    font-size: .73rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-ec-process__tag {
    display: block;
    margin-bottom: 8px;
    color: #049a9a;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-ec-process__step h3 {
    margin: 0;
    color: #061b33;
    font-size: clamp(1.35rem, 2vw, 1.8rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.025em;
}

.lp-ec-process__step p {
    margin: 12px 0 0;
    color: #667587;
    font-size: .91rem;
    line-height: 1.67;
}

.lp-ec-process__step ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.lp-ec-process__step li {
    padding: 7px 10px;
    border-radius: 999px;
    background: #eef6f8;
    color: #385064;
    font-size: .72rem;
    font-weight: 700;
}

.lp-ec-process__outcome {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 28px;
    align-items: center;
    margin-top: 22px;
    padding: 24px 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-ec-process__outcome > span {
    color: #38cfd0;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.lp-ec-process__outcome p {
    margin: 0;
    color: rgba(255, 255, 255, .76);
    font-size: .9rem;
    line-height: 1.6;
}

.lp-ec-process__outcome a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-size: .82rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-ec-process__outcome a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-ec-process__outcome a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ec-process__header,
    .lp-ec-process__layout {
        grid-template-columns: 1fr;
    }

    .lp-ec-process__header {
        gap: 22px;
    }

    .lp-ec-process__header > p {
        max-width: 680px;
    }

    .lp-ec-process__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-ec-process__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-ec-process__steps {
        grid-template-columns: 1fr 1fr;
    }

    .lp-ec-process__outcome {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .lp-ec-process__outcome a {
        justify-self: start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ec-process {
        padding: 68px 0;
    }

    .lp-ec-process__container {
        width: calc(100% - 32px);
    }

    .lp-ec-process__header {
        margin-bottom: 30px;
    }

    .lp-ec-process__header h2 {
        margin-top: 13px;
        font-size: clamp(2rem, 9.7vw, 2.75rem);
        line-height: 1.05;
    }

    .lp-ec-process__header > p {
        font-size: .93rem;
        line-height: 1.65;
    }

    .lp-ec-process__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-ec-process__media figcaption {
        left: 12px;
        bottom: 12px;
        max-width: calc(100% - 24px);
        padding: 9px 12px;
        font-size: .58rem;
    }

    .lp-ec-process__steps {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-ec-process__step {
        grid-template-columns: 32px 1fr;
        gap: 12px;
        padding: 20px 18px;
        border-radius: 17px;
    }

    .lp-ec-process__step h3 {
        font-size: 1.35rem;
    }

    .lp-ec-process__step p {
        font-size: .86rem;
    }

    .lp-ec-process__step li {
        font-size: .67rem;
    }

    .lp-ec-process__outcome {
        margin-top: 14px;
        padding: 22px 20px;
        border-radius: 17px;
    }

    .lp-ec-process__outcome p {
        font-size: .86rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ec-process__outcome a span {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — THREE-STAGE TREATMENT SYSTEM
========================================================= */

.lp-treatment-stages {
    padding: clamp(64px, 7vw, 88px) 0;
    background: #ffffff;
}

.lp-treatment-stages__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-treatment-stages__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 34px;
}

.lp-treatment-stages__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.45rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-treatment-stages__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .95rem;
    line-height: 1.65;
}

.lp-treatment-stages__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.lp-treatment-stage {
    position: relative;
    min-height: 245px;
    padding: 24px;
    overflow: hidden;
    border: 1px solid #dce7ea;
    border-radius: 20px;
    background: #f7fafb;
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.lp-treatment-stage:hover {
    transform: translateY(-3px);
    border-color: #b8d9df;
    box-shadow: 0 18px 45px rgba(6, 27, 51, .08);
}

.lp-treatment-stage::after {
    content: "";
    position: absolute;
    right: -34px;
    bottom: -46px;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: rgba(56, 207, 208, .1);
}

.lp-treatment-stage__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.lp-treatment-stage__top span {
    color: #049a9a;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-treatment-stage__top small {
    color: #7a8998;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.lp-treatment-stage h3 {
    margin: 34px 0 0;
    color: #061b33;
    font-size: clamp(1.45rem, 2.1vw, 2rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.03em;
}

.lp-treatment-stage p {
    position: relative;
    z-index: 1;
    max-width: 310px;
    margin: 13px 0 0;
    color: #637285;
    font-size: .88rem;
    line-height: 1.62;
}

.lp-treatment-stages__footer {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 24px;
    align-items: center;
    margin-top: 14px;
    padding: 18px 22px;
    border-radius: 16px;
    background: #061b33;
}

.lp-treatment-stages__footer > span {
    color: #38cfd0;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-treatment-stages__footer p {
    margin: 0;
    color: rgba(255, 255, 255, .75);
    font-size: .84rem;
    line-height: 1.5;
}

.lp-treatment-stages__footer a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-treatment-stages__footer a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-treatment-stages__footer a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-treatment-stages__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-treatment-stages__header > p {
        max-width: 650px;
    }

    .lp-treatment-stages__grid {
        grid-template-columns: 1fr 1fr;
    }

    .lp-treatment-stage:last-child {
        grid-column: 1 / -1;
        min-height: 210px;
    }

    .lp-treatment-stages__footer {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .lp-treatment-stages__footer a {
        justify-self: start;
        margin-top: 4px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-treatment-stages {
        padding: 58px 0;
    }

    .lp-treatment-stages__container {
        width: calc(100% - 32px);
    }

    .lp-treatment-stages__header {
        margin-bottom: 26px;
    }

    .lp-treatment-stages__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-treatment-stages__header > p {
        font-size: .9rem;
    }

    .lp-treatment-stages__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-treatment-stage,
    .lp-treatment-stage:last-child {
        grid-column: auto;
        min-height: 0;
        padding: 20px;
        border-radius: 17px;
    }

    .lp-treatment-stage h3 {
        margin-top: 24px;
        font-size: 1.5rem;
    }

    .lp-treatment-stage p {
        margin-top: 10px;
        font-size: .84rem;
    }

    .lp-treatment-stages__footer {
        margin-top: 10px;
        padding: 20px;
        border-radius: 17px;
    }

    .lp-treatment-stages__footer p {
        font-size: .82rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-treatment-stage,
    .lp-treatment-stages__footer a span {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — TECHNOLOGY ADVANTAGES
========================================================= */

.lp-tech-advantages {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #eef6f8;
}

.lp-tech-advantages__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(34px, 6vw, 76px);
    align-items: center;
}

.lp-tech-advantages__media {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 22px;
    background: #dce9ed;
}

.lp-tech-advantages__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-tech-advantages__media:hover img {
    transform: scale(1.025);
}

.lp-tech-advantages__media-label {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    padding: 14px 16px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 14px;
    background: rgba(6, 27, 51, .82);
    backdrop-filter: blur(10px);
}

.lp-tech-advantages__media-label span,
.lp-tech-advantages__media-label strong {
    display: block;
}

.lp-tech-advantages__media-label span {
    color: #38cfd0;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-tech-advantages__media-label strong {
    margin-top: 5px;
    color: #fff;
    font-size: .9rem;
}

.lp-tech-advantages__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.45rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-tech-advantages__content > p {
    max-width: 610px;
    margin: 16px 0 0;
    color: #647386;
    font-size: .95rem;
    line-height: 1.65;
}

.lp-tech-advantages__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 28px;
}

.lp-tech-advantages__list article {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 12px;
    padding: 18px;
    border: 1px solid #d6e5e8;
    border-radius: 16px;
    background: #fff;
}

.lp-tech-advantages__list article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-tech-advantages__list h3 {
    margin: 0;
    color: #061b33;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-tech-advantages__list p {
    margin: 6px 0 0;
    color: #6d7b8b;
    font-size: .79rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-tech-advantages__container {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .lp-tech-advantages__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-tech-advantages {
        padding: 58px 0;
    }

    .lp-tech-advantages__container {
        width: calc(100% - 32px);
        gap: 28px;
    }

    .lp-tech-advantages__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-tech-advantages__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-tech-advantages__content > p {
        font-size: .9rem;
    }

    .lp-tech-advantages__list {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-tech-advantages__list article {
        padding: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-tech-advantages__media img {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — TYPICAL SYSTEM CONFIGURATION
========================================================= */

.lp-system-config {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #ffffff;
}

.lp-system-config__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-system-config__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 34px;
}

.lp-system-config__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.45rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-system-config__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .95rem;
    line-height: 1.65;
}

.lp-system-config__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
    gap: 18px;
    align-items: stretch;
}

.lp-system-config__media {
    position: relative;
    min-height: 410px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce9ed;
}

.lp-system-config__media img {
    width: 100%;
    height: 100%;
    min-height: 410px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-system-config__media:hover img {
    transform: scale(1.025);
}

.lp-system-config__media figcaption {
    position: absolute;
    left: 16px;
    bottom: 16px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: rgba(255, 255, 255, .9);
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-system-config__modules {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.lp-system-config__modules article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 18px;
    border: 1px solid #dce7ea;
    border-radius: 16px;
    background: #f7fafb;
}

.lp-system-config__modules article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-system-config__modules h3 {
    margin: 0;
    color: #061b33;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-system-config__modules p {
    margin: 7px 0 0;
    color: #6b7989;
    font-size: .79rem;
    line-height: 1.52;
}

.lp-system-config__note {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 15px;
    background: #eef6f8;
}

.lp-system-config__note strong {
    flex: 0 0 auto;
    color: #049a9a;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-system-config__note span {
    color: #536477;
    font-size: .84rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-system-config__header,
    .lp-system-config__layout {
        grid-template-columns: 1fr;
    }

    .lp-system-config__header {
        gap: 18px;
    }

    .lp-system-config__header > p {
        max-width: 650px;
    }

    .lp-system-config__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-system-config__media img {
        min-height: 0;
        height: 100%;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-system-config {
        padding: 58px 0;
    }

    .lp-system-config__container {
        width: calc(100% - 32px);
    }

    .lp-system-config__header {
        margin-bottom: 26px;
    }

    .lp-system-config__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-system-config__header > p {
        font-size: .9rem;
    }

    .lp-system-config__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-system-config__media figcaption {
        left: 12px;
        bottom: 12px;
        max-width: calc(100% - 24px);
        padding: 8px 11px;
        font-size: .56rem;
    }

    .lp-system-config__modules {
        grid-template-columns: 1fr;
    }

    .lp-system-config__modules article {
        padding: 16px;
    }

    .lp-system-config__note {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
        padding: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-system-config__media img {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — TREATMENT PROCESS FLOW
========================================================= */

.lp-process-flow {
    padding: clamp(60px, 7vw, 84px) 0;
    background: #061b33;
}

.lp-process-flow__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-process-flow__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 34px;
}

.lp-process-flow .lp-tech-section-label {
    color: #38cfd0;
}

.lp-process-flow__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #fff;
    font-size: clamp(2rem, 3.7vw, 3.4rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-process-flow__header > p {
    max-width: 430px;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: .94rem;
    line-height: 1.65;
}

.lp-process-flow__track {
    display: grid;
    grid-template-columns:
        minmax(150px, 1fr) auto
        minmax(150px, 1fr) auto
        minmax(150px, 1fr) auto
        minmax(150px, 1fr) auto
        minmax(150px, 1fr);
    gap: 10px;
    align-items: stretch;
}

.lp-process-flow__step {
    min-height: 205px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    background: rgba(255, 255, 255, .055);
}

.lp-process-flow__step--outcome {
    border-color: rgba(56, 207, 208, .45);
    background: rgba(56, 207, 208, .1);
}

.lp-process-flow__number {
    display: block;
    color: #38cfd0;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-process-flow__step div {
    margin-top: 34px;
}

.lp-process-flow__step small {
    display: block;
    color: rgba(255, 255, 255, .48);
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-process-flow__step h3 {
    margin: 8px 0 0;
    color: #fff;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.25;
}

.lp-process-flow__step p {
    margin: 9px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .76rem;
    line-height: 1.52;
}

.lp-process-flow__arrow {
    display: grid;
    place-items: center;
    color: #38cfd0;
    font-size: 1.2rem;
}

.lp-process-flow__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 18px;
    padding: 18px 20px;
    border-top: 1px solid rgba(255, 255, 255, .12);
}

.lp-process-flow__bottom div {
    display: flex;
    align-items: center;
    gap: 14px;
}

.lp-process-flow__bottom strong {
    color: #38cfd0;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-process-flow__bottom span {
    color: rgba(255, 255, 255, .68);
    font-size: .82rem;
}

.lp-process-flow__bottom a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-process-flow__bottom a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-process-flow__bottom a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 1000px) {
    .lp-process-flow__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-process-flow__header > p {
        max-width: 650px;
    }

    .lp-process-flow__track {
        grid-template-columns: repeat(2, 1fr);
    }

    .lp-process-flow__arrow {
        display: none;
    }

    .lp-process-flow__step--outcome {
        grid-column: 1 / -1;
        min-height: 170px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-flow {
        padding: 58px 0;
    }

    .lp-process-flow__container {
        width: calc(100% - 32px);
    }

    .lp-process-flow__header {
        margin-bottom: 26px;
    }

    .lp-process-flow__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-process-flow__header > p {
        font-size: .9rem;
    }

    .lp-process-flow__track {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-process-flow__step,
    .lp-process-flow__step--outcome {
        grid-column: auto;
        min-height: 0;
        padding: 18px;
        border-radius: 16px;
    }

    .lp-process-flow__step div {
        margin-top: 22px;
    }

    .lp-process-flow__step h3 {
        font-size: 1.08rem;
    }

    .lp-process-flow__step p {
        max-width: 420px;
        font-size: .8rem;
    }

    .lp-process-flow__bottom {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
        padding: 18px 0 0;
    }

    .lp-process-flow__bottom div {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-process-flow__bottom a span {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — PILOT-VALIDATED PERFORMANCE
========================================================= */

.lp-tech-validation {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #eef6f8;
}

.lp-tech-validation__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-tech-validation__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 34px;
}

.lp-tech-validation__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.4rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-tech-validation__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .94rem;
    line-height: 1.65;
}

.lp-tech-validation__feature {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: 16px;
    align-items: stretch;
}

.lp-tech-validation__media {
    position: relative;
    min-height: 390px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce9ed;
}

.lp-tech-validation__media img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-tech-validation__media figcaption {
    position: absolute;
    left: 16px;
    bottom: 16px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-tech-validation__results {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.lp-tech-validation__results article {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 185px;
    padding: 22px;
    border: 1px solid #d6e4e8;
    border-radius: 18px;
    background: #fff;
}

.lp-tech-validation__results strong {
    color: #049a9a;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.04em;
}

.lp-tech-validation__results span {
    max-width: 180px;
    color: #536477;
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.45;
}

.lp-tech-validation__monitoring {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 22px;
    align-items: center;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 16px;
    background: #061b33;
}

.lp-tech-validation__monitoring > span {
    color: #38cfd0;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-tech-validation__monitoring ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.lp-tech-validation__monitoring li {
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: rgba(255, 255, 255, .76);
    font-size: .68rem;
    font-weight: 700;
}

.lp-tech-validation__monitoring a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .79rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-tech-validation__monitoring a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-tech-validation__monitoring a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-tech-validation__header,
    .lp-tech-validation__feature {
        grid-template-columns: 1fr;
    }

    .lp-tech-validation__header {
        gap: 18px;
    }

    .lp-tech-validation__header > p {
        max-width: 650px;
    }

    .lp-tech-validation__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-tech-validation__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-tech-validation__monitoring {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-tech-validation__monitoring a {
        justify-self: start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-tech-validation {
        padding: 58px 0;
    }

    .lp-tech-validation__container {
        width: calc(100% - 32px);
    }

    .lp-tech-validation__header {
        margin-bottom: 26px;
    }

    .lp-tech-validation__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-tech-validation__header > p {
        font-size: .9rem;
    }

    .lp-tech-validation__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-tech-validation__results {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .lp-tech-validation__results article {
        min-height: 145px;
        padding: 17px;
        border-radius: 16px;
    }

    .lp-tech-validation__results strong {
        font-size: 1.65rem;
    }

    .lp-tech-validation__results span {
        font-size: .72rem;
    }

    .lp-tech-validation__monitoring {
        padding: 18px;
        border-radius: 16px;
    }
}

@media (max-width: 400px) {
    .lp-tech-validation__results {
        grid-template-columns: 1fr;
    }

    .lp-tech-validation__results article {
        min-height: 120px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-tech-validation__monitoring a span {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — PILOT-VALIDATED PERFORMANCE
========================================================= */

.lp-tech-validation {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #eef6f8;
}

.lp-tech-validation__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-tech-validation__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 34px;
}

.lp-tech-validation__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.4rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-tech-validation__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .94rem;
    line-height: 1.65;
}

.lp-tech-validation__feature {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: 16px;
    align-items: stretch;
}

.lp-tech-validation__media {
    position: relative;
    min-height: 390px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce9ed;
}

.lp-tech-validation__media img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-tech-validation__media figcaption {
    position: absolute;
    left: 16px;
    bottom: 16px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-tech-validation__results {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.lp-tech-validation__results article {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 185px;
    padding: 22px;
    border: 1px solid #d6e4e8;
    border-radius: 18px;
    background: #fff;
}

.lp-tech-validation__results strong {
    color: #049a9a;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.04em;
}

.lp-tech-validation__results span {
    max-width: 180px;
    color: #536477;
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.45;
}

.lp-tech-validation__monitoring {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 22px;
    align-items: center;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 16px;
    background: #061b33;
}

.lp-tech-validation__monitoring > span {
    color: #38cfd0;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-tech-validation__monitoring ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.lp-tech-validation__monitoring li {
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: rgba(255, 255, 255, .76);
    font-size: .68rem;
    font-weight: 700;
}

.lp-tech-validation__monitoring a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .79rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-tech-validation__monitoring a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-tech-validation__monitoring a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-tech-validation__header,
    .lp-tech-validation__feature {
        grid-template-columns: 1fr;
    }

    .lp-tech-validation__header {
        gap: 18px;
    }

    .lp-tech-validation__header > p {
        max-width: 650px;
    }

    .lp-tech-validation__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-tech-validation__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-tech-validation__monitoring {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-tech-validation__monitoring a {
        justify-self: start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-tech-validation {
        padding: 58px 0;
    }

    .lp-tech-validation__container {
        width: calc(100% - 32px);
    }

    .lp-tech-validation__header {
        margin-bottom: 26px;
    }

    .lp-tech-validation__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-tech-validation__header > p {
        font-size: .9rem;
    }

    .lp-tech-validation__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-tech-validation__results {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .lp-tech-validation__results article {
        min-height: 145px;
        padding: 17px;
        border-radius: 16px;
    }

    .lp-tech-validation__results strong {
        font-size: 1.65rem;
    }

    .lp-tech-validation__results span {
        font-size: .72rem;
    }

    .lp-tech-validation__monitoring {
        padding: 18px;
        border-radius: 16px;
    }
}

@media (max-width: 400px) {
    .lp-tech-validation__results {
        grid-template-columns: 1fr;
    }

    .lp-tech-validation__results article {
        min-height: 120px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-tech-validation__monitoring a span {
        transition: none;
    }
}





/* =========================================================
   TECHNOLOGY PAGE — EXPLORE THE TECHNOLOGY
========================================================= */

.lp-tech-explore {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #ffffff;
}

.lp-tech-explore__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-tech-explore__header {
    max-width: 720px;
    margin-bottom: 32px;
}

.lp-tech-explore__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.7vw, 3.4rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-tech-explore__header p {
    max-width: 580px;
    margin: 14px 0 0;
    color: #667587;
    font-size: .94rem;
    line-height: 1.65;
}

.lp-tech-explore__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.lp-tech-explore__card {
    position: relative;
    min-height: 360px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    border-radius: 22px;
    background: #061b33;
    color: #fff;
    text-decoration: none;
    isolation: isolate;
}

.lp-tech-explore__card > img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-tech-explore__card:hover > img {
    transform: scale(1.035);
}

.lp-tech-explore__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(
            0deg,
            rgba(4, 20, 38, .94) 0%,
            rgba(4, 20, 38, .5) 54%,
            rgba(4, 20, 38, .08) 100%
        );
}

.lp-tech-explore__content {
    width: 100%;
    padding: 28px;
}

.lp-tech-explore__content > span {
    display: block;
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-tech-explore__content h3 {
    margin: 10px 0 0;
    color: #fff;
    font-size: clamp(1.55rem, 2.4vw, 2.2rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.03em;
}

.lp-tech-explore__content p {
    max-width: 430px;
    margin: 10px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .86rem;
    line-height: 1.58;
}

.lp-tech-explore__content strong {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 20px;
    color: #fff;
    font-size: .79rem;
    font-weight: 800;
}

.lp-tech-explore__content strong span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-tech-explore__card:hover strong span {
    transform: translateX(4px);
}

.lp-tech-explore__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    margin-top: 14px;
    padding: 26px 28px;
    border-radius: 18px;
    background: #d6ad45;
}

.lp-tech-explore__cta > div > span {
    display: block;
    color: #061b33;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-tech-explore__cta h3 {
    max-width: 670px;
    margin: 7px 0 0;
    color: #061b33;
    font-size: clamp(1.35rem, 2.3vw, 2rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.025em;
}

.lp-tech-explore__cta > a {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex: 0 0 auto;
    padding: 13px 20px;
    border-radius: 999px;
    background: #061b33;
    color: #fff;
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform .25s ease,
        background-color .25s ease;
}

.lp-tech-explore__cta > a:hover {
    transform: translateY(-2px);
    background: #0b2c4d;
}

.lp-tech-explore__cta > a span {
    color: #38cfd0;
}

/* Tablet */

@media (max-width: 800px) {
    .lp-tech-explore__card {
        min-height: 320px;
    }

    .lp-tech-explore__cta {
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-tech-explore {
        padding: 58px 0;
    }

    .lp-tech-explore__container {
        width: calc(100% - 32px);
    }

    .lp-tech-explore__header {
        margin-bottom: 26px;
    }

    .lp-tech-explore__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.6rem);
    }

    .lp-tech-explore__header p {
        font-size: .9rem;
    }

    .lp-tech-explore__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-tech-explore__card {
        min-height: 300px;
        border-radius: 18px;
    }

    .lp-tech-explore__content {
        padding: 22px;
    }

    .lp-tech-explore__content h3 {
        font-size: 1.65rem;
    }

    .lp-tech-explore__content p {
        font-size: .82rem;
    }

    .lp-tech-explore__cta {
        margin-top: 10px;
        padding: 22px;
        border-radius: 17px;
    }

    .lp-tech-explore__cta h3 {
        font-size: 1.4rem;
    }

    .lp-tech-explore__cta > a {
        width: 100%;
        white-space: normal;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-tech-explore__card > img,
    .lp-tech-explore__content strong span,
    .lp-tech-explore__cta > a {
        transition: none;
    }
}




/* =========================================================
   EC-AOP PAGE — INTRODUCTION
========================================================= */

.lp-ecaop-intro {
    padding: clamp(62px, 7vw, 88px) 0;
    background: #ffffff;
}

.lp-ecaop-intro__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(34px, 6vw, 74px);
    align-items: center;
}

.lp-ecaop-intro__content h2 {
    max-width: 650px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.65vw, 3.35rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-ecaop-intro__content > p {
    max-width: 610px;
    margin: 18px 0 0;
    color: #637285;
    font-size: .95rem;
    line-height: 1.68;
}

.lp-ecaop-intro__highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
}

.lp-ecaop-intro__highlights span {
    padding: 8px 11px;
    border: 1px solid #d8e5e9;
    border-radius: 999px;
    background: #f4f9fa;
    color: #40566a;
    font-size: .69rem;
    font-weight: 800;
    letter-spacing: .05em;
}

.lp-ecaop-intro__media {
    position: relative;
    aspect-ratio: 16 / 10;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dbe9ed;
}

.lp-ecaop-intro__media video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-ecaop-intro__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .8);
    color: rgba(255, 255, 255, .92);
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-intro__container {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .lp-ecaop-intro__content {
        max-width: 760px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-intro {
        padding: 58px 0;
    }

    .lp-ecaop-intro__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-ecaop-intro__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.55rem);
        line-height: 1.05;
    }

    .lp-ecaop-intro__content > p {
        margin-top: 14px;
        font-size: .9rem;
        line-height: 1.62;
    }

    .lp-ecaop-intro__highlights {
        margin-top: 20px;
    }

    .lp-ecaop-intro__highlights span {
        font-size: .64rem;
    }

    .lp-ecaop-intro__media {
        aspect-ratio: 16 / 10;
        border-radius: 18px;
    }

    .lp-ecaop-intro__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .55rem;
    }
}

/* Reduced-motion fallback */

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-intro__media video {
        display: none;
    }

    .lp-ecaop-intro__media {
        background:
            url("../images/ec-aop.png")
            center / cover no-repeat;
    }
}






/* =========================================================
   EC-AOP PAGE — INSIDE THE REACTOR
========================================================= */

.lp-ecaop-reactor {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #eef6f8;
}

.lp-ecaop-reactor__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-ecaop-reactor__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-ecaop-reactor__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.5vw, 3.2rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-reactor__header > p {
    max-width: 430px;
    margin: 0;
    color: #667587;
    font-size: .93rem;
    line-height: 1.62;
}

.lp-ecaop-reactor__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.lp-ecaop-reactor__card {
    padding: 24px;
    border: 1px solid #d8e5e9;
    border-radius: 20px;
    background: #fff;
}

.lp-ecaop-reactor__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.lp-ecaop-reactor__top span {
    color: #049a9a;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-ecaop-reactor__top small {
    color: #7a8998;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-ecaop-reactor__card h3 {
    margin: 28px 0 0;
    color: #061b33;
    font-size: clamp(1.45rem, 2vw, 1.9rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.03em;
}

.lp-ecaop-reactor__card p {
    max-width: 490px;
    margin: 12px 0 0;
    color: #647386;
    font-size: .88rem;
    line-height: 1.62;
}

.lp-ecaop-reactor__card ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.lp-ecaop-reactor__card li {
    padding: 7px 10px;
    border-radius: 999px;
    background: #eef6f8;
    color: #40566a;
    font-size: .68rem;
    font-weight: 700;
}

.lp-ecaop-reactor__visual {
    position: relative;
    aspect-ratio: 16 / 7;
    margin: 14px 0 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-ecaop-reactor__visual img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-ecaop-reactor__visual figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-reactor__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-ecaop-reactor__header > p {
        max-width: 650px;
    }

    .lp-ecaop-reactor__visual {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-reactor {
        padding: 56px 0;
    }

    .lp-ecaop-reactor__container {
        width: calc(100% - 32px);
    }

    .lp-ecaop-reactor__header {
        margin-bottom: 24px;
    }

    .lp-ecaop-reactor__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-reactor__header > p {
        font-size: .88rem;
    }

    .lp-ecaop-reactor__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-ecaop-reactor__card {
        padding: 19px;
        border-radius: 17px;
    }

    .lp-ecaop-reactor__card h3 {
        margin-top: 22px;
        font-size: 1.45rem;
    }

    .lp-ecaop-reactor__card p {
        font-size: .84rem;
    }

    .lp-ecaop-reactor__visual {
        aspect-ratio: 16 / 10;
        margin-top: 10px;
        border-radius: 17px;
    }

    .lp-ecaop-reactor__visual figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .53rem;
    }
}






/* =========================================================
   EC-AOP PAGE — WHY IT IS ELECTRO-CATALYTIC
========================================================= */

.lp-electro-catalytic {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #ffffff;
}

.lp-electro-catalytic__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-electro-catalytic__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-electro-catalytic__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.5vw, 3.2rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-electro-catalytic__header > p {
    max-width: 430px;
    margin: 0;
    color: #667587;
    font-size: .93rem;
    line-height: 1.62;
}

.lp-electro-catalytic__layout {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 16px;
    align-items: stretch;
}

.lp-electro-catalytic__media {
    position: relative;
    min-height: 430px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-electro-catalytic__media img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-electro-catalytic__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-electro-catalytic__reactions {
    display: grid;
    gap: 10px;
}

.lp-electro-catalytic__reactions article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 14px;
    padding: 20px;
    border: 1px solid #dce7ea;
    border-radius: 17px;
    background: #f7fafb;
}

.lp-electro-catalytic__reactions article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-electro-catalytic__reactions small {
    display: block;
    color: #049a9a;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-electro-catalytic__reactions h3 {
    margin: 7px 0 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-electro-catalytic__reactions p {
    margin: 8px 0 0;
    color: #667587;
    font-size: .82rem;
    line-height: 1.55;
}

.lp-electro-catalytic__reactions code {
    display: inline-block;
    margin-top: 12px;
    padding: 7px 10px;
    border-radius: 9px;
    background: #061b33;
    color: #d8fbff;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: .72rem;
    line-height: 1.4;
}

.lp-electro-catalytic__summary {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 14px;
    padding: 18px 20px;
    border-radius: 16px;
    background: #eef6f8;
}

.lp-electro-catalytic__summary span {
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-electro-catalytic__summary p {
    margin: 0;
    color: #536477;
    font-size: .84rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-electro-catalytic__header,
    .lp-electro-catalytic__layout {
        grid-template-columns: 1fr;
    }

    .lp-electro-catalytic__header {
        gap: 18px;
    }

    .lp-electro-catalytic__header > p {
        max-width: 650px;
    }

    .lp-electro-catalytic__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-electro-catalytic__media img {
        min-height: 0;
        height: 100%;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-electro-catalytic {
        padding: 56px 0;
    }

    .lp-electro-catalytic__container {
        width: calc(100% - 32px);
    }

    .lp-electro-catalytic__header {
        margin-bottom: 24px;
    }

    .lp-electro-catalytic__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-electro-catalytic__header > p {
        font-size: .88rem;
    }

    .lp-electro-catalytic__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-electro-catalytic__reactions article {
        padding: 17px;
        border-radius: 15px;
    }

    .lp-electro-catalytic__reactions p {
        font-size: .8rem;
    }

    .lp-electro-catalytic__reactions code {
        max-width: 100%;
        overflow-x: auto;
        font-size: .67rem;
    }

    .lp-electro-catalytic__summary {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }
}






/* =========================================================
   EC-AOP PAGE — TREATMENT RANGE
========================================================= */

.lp-ecaop-removal {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #061b33;
}

.lp-ecaop-removal__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: clamp(34px, 6vw, 72px);
    align-items: center;
}

.lp-ecaop-removal .lp-tech-section-label {
    color: #38cfd0;
}

.lp-ecaop-removal__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #fff;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-removal__content > p {
    max-width: 570px;
    margin: 15px 0 0;
    color: rgba(255, 255, 255, .7);
    font-size: .91rem;
    line-height: 1.62;
}

.lp-ecaop-removal__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 26px;
}

.lp-ecaop-removal__grid article {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 11px;
    align-items: center;
    padding: 15px 16px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 14px;
    background: rgba(255, 255, 255, .055);
}

.lp-ecaop-removal__grid span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .09em;
}

.lp-ecaop-removal__grid h3 {
    margin: 0;
    color: rgba(255, 255, 255, .9);
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-ecaop-removal__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #0b2c4d;
}

.lp-ecaop-removal__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-ecaop-removal__media:hover img {
    transform: scale(1.025);
}

.lp-ecaop-removal__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: rgba(255, 255, 255, .92);
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-removal__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-ecaop-removal__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-removal {
        padding: 56px 0;
    }

    .lp-ecaop-removal__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-ecaop-removal__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-removal__content > p {
        font-size: .87rem;
    }

    .lp-ecaop-removal__grid {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-ecaop-removal__grid article {
        padding: 14px 15px;
    }

    .lp-ecaop-removal__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-ecaop-removal__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-removal__media img {
        transition: none;
    }
}




/* =========================================================
   EC-AOP PAGE — SYSTEM CHARACTERISTICS
========================================================= */

.lp-ecaop-characteristics {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #eef6f8;
}

.lp-ecaop-characteristics__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-ecaop-characteristics__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-ecaop-characteristics__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-characteristics__header > p {
    max-width: 430px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-ecaop-characteristics__layout {
    display: grid;
    grid-template-columns: minmax(330px, .82fr) minmax(0, 1.18fr);
    gap: 16px;
    align-items: stretch;
}

.lp-ecaop-characteristics__media {
    position: relative;
    min-height: 410px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-ecaop-characteristics__media img {
    width: 100%;
    height: 100%;
    min-height: 410px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-ecaop-characteristics__media:hover img {
    transform: scale(1.025);
}

.lp-ecaop-characteristics__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-ecaop-characteristics__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.lp-ecaop-characteristics__grid article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 18px;
    border: 1px solid #d7e4e8;
    border-radius: 16px;
    background: #fff;
}

.lp-ecaop-characteristics__grid article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-ecaop-characteristics__grid h3 {
    margin: 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-ecaop-characteristics__grid p {
    margin: 6px 0 0;
    color: #6a7989;
    font-size: .78rem;
    line-height: 1.5;
}

.lp-ecaop-characteristics__note {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 15px;
    background: #061b33;
}

.lp-ecaop-characteristics__note strong {
    flex: 0 0 auto;
    color: #38cfd0;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-ecaop-characteristics__note span {
    color: rgba(255, 255, 255, .74);
    font-size: .82rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-characteristics__header,
    .lp-ecaop-characteristics__layout {
        grid-template-columns: 1fr;
    }

    .lp-ecaop-characteristics__header {
        gap: 18px;
    }

    .lp-ecaop-characteristics__header > p {
        max-width: 650px;
    }

    .lp-ecaop-characteristics__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-ecaop-characteristics__media img {
        min-height: 0;
        height: 100%;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-characteristics {
        padding: 56px 0;
    }

    .lp-ecaop-characteristics__container {
        width: calc(100% - 32px);
    }

    .lp-ecaop-characteristics__header {
        margin-bottom: 24px;
    }

    .lp-ecaop-characteristics__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-characteristics__header > p {
        font-size: .88rem;
    }

    .lp-ecaop-characteristics__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-ecaop-characteristics__grid {
        grid-template-columns: 1fr;
    }

    .lp-ecaop-characteristics__grid article {
        padding: 16px;
        border-radius: 15px;
    }

    .lp-ecaop-characteristics__note {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
        padding: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-characteristics__media img {
        transition: none;
    }
}





/* =========================================================
   EC-AOP PAGE — POSITION IN THE TREATMENT TRAIN
========================================================= */

.lp-ecaop-position {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #ffffff;
}

.lp-ecaop-position__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-ecaop-position__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-ecaop-position__header h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-position__header > p {
    max-width: 430px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-ecaop-position__flow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    gap: 12px;
    align-items: stretch;
}

.lp-ecaop-position__stage {
    min-height: 220px;
    padding: 22px;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f7fafb;
}

.lp-ecaop-position__stage--primary {
    border-color: #96d8da;
    background: #eef9fa;
}

.lp-ecaop-position__number {
    display: block;
    color: #049a9a;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.lp-ecaop-position__stage > div {
    margin-top: 30px;
}

.lp-ecaop-position__stage small {
    display: block;
    color: #788797;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-ecaop-position__stage h3 {
    margin: 8px 0 0;
    color: #061b33;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -.025em;
}

.lp-ecaop-position__stage p {
    margin: 11px 0 0;
    color: #657487;
    font-size: .82rem;
    line-height: 1.55;
}

.lp-ecaop-position__arrow {
    display: grid;
    place-items: center;
    color: #049a9a;
    font-size: 1.15rem;
}

.lp-ecaop-position__footer {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 22px;
    align-items: center;
    margin-top: 14px;
    padding: 18px 20px;
    border-radius: 16px;
    background: #061b33;
}

.lp-ecaop-position__footer > span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-ecaop-position__footer p {
    margin: 0;
    color: rgba(255, 255, 255, .72);
    font-size: .82rem;
    line-height: 1.5;
}

.lp-ecaop-position__footer a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .79rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-ecaop-position__footer a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-ecaop-position__footer a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-position__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-ecaop-position__header > p {
        max-width: 650px;
    }

    .lp-ecaop-position__flow {
        grid-template-columns: 1fr 1fr;
    }

    .lp-ecaop-position__arrow {
        display: none;
    }

    .lp-ecaop-position__stage--primary {
        grid-column: 1 / -1;
        min-height: 190px;
    }

    .lp-ecaop-position__footer {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .lp-ecaop-position__footer a {
        justify-self: start;
        margin-top: 3px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-position {
        padding: 56px 0;
    }

    .lp-ecaop-position__container {
        width: calc(100% - 32px);
    }

    .lp-ecaop-position__header {
        margin-bottom: 24px;
    }

    .lp-ecaop-position__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-position__header > p {
        font-size: .88rem;
    }

    .lp-ecaop-position__flow {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-ecaop-position__stage,
    .lp-ecaop-position__stage--primary {
        grid-column: auto;
        min-height: 0;
        padding: 18px;
        border-radius: 16px;
    }

    .lp-ecaop-position__stage > div {
        margin-top: 22px;
    }

    .lp-ecaop-position__stage h3 {
        font-size: 1.35rem;
    }

    .lp-ecaop-position__footer {
        padding: 18px;
        border-radius: 16px;
    }

    .lp-ecaop-position__footer p {
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-position__footer a span {
        transition: none;
    }
}






/* =========================================================
   EC-AOP PAGE — CLOSING TECHNICAL CTA
========================================================= */

.lp-ecaop-closing {
    padding: clamp(56px, 6vw, 76px) 0;
    background: #d6ad45;
}

.lp-ecaop-closing__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 48px;
}

.lp-ecaop-closing .lp-tech-section-label {
    color: #061b33;
}

.lp-ecaop-closing__content {
    max-width: 760px;
}

.lp-ecaop-closing__content h2 {
    max-width: 720px;
    margin: 13px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-closing__content p {
    max-width: 600px;
    margin: 14px 0 0;
    color: rgba(6, 27, 51, .78);
    font-size: .91rem;
    line-height: 1.6;
}

.lp-ecaop-closing__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.lp-ecaop-closing__button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .79rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        color .25s ease;
}

.lp-ecaop-closing__button:hover {
    transform: translateY(-2px);
}

.lp-ecaop-closing__button--primary {
    background: #061b33;
    color: #fff;
}

.lp-ecaop-closing__button--primary span {
    color: #38cfd0;
}

.lp-ecaop-closing__button--primary:hover {
    background: #0b2c4d;
}

.lp-ecaop-closing__button--secondary {
    border-color: rgba(6, 27, 51, .28);
    background: transparent;
    color: #061b33;
}

.lp-ecaop-closing__button--secondary:hover {
    border-color: #061b33;
    background: rgba(255, 255, 255, .2);
}

/* Tablet */

@media (max-width: 850px) {
    .lp-ecaop-closing__container {
        align-items: flex-start;
        flex-direction: column;
        gap: 28px;
    }

    .lp-ecaop-closing__actions {
        justify-content: flex-start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-closing {
        padding: 52px 0;
    }

    .lp-ecaop-closing__container {
        width: calc(100% - 32px);
        gap: 24px;
    }

    .lp-ecaop-closing__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-closing__content p {
        font-size: .87rem;
    }

    .lp-ecaop-closing__actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }

    .lp-ecaop-closing__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-closing__button {
        transition: none;
    }
}








/* =========================================================
   TREATMENT PROCESS PAGE — PROCESS OVERVIEW
========================================================= */

.lp-process-overview {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #ffffff;
}

.lp-process-overview__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-process-overview__header {
    display: block;
    margin-bottom: 30px;
}

.lp-process-overview__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-overview__header p {
    max-width: 760px;
    margin: 16px 0 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-process-overview__flow {
    display: grid;
    grid-template-columns:
        minmax(145px, 1fr) auto
        minmax(145px, 1fr) auto
        minmax(145px, 1fr) auto
        minmax(145px, 1fr) auto
        minmax(145px, 1fr);
    gap: 9px;
    align-items: stretch;
}

.lp-process-overview__step {
    min-height: 200px;
    padding: 20px;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f7fafb;
}

.lp-process-overview__step--primary {
    border-color: #9ddbdd;
    background: #eef9fa;
}

.lp-process-overview__step--outcome {
    border-color: #d6ad45;
    background: #fffaf0;
}

.lp-process-overview__number {
    display: block;
    color: #049a9a;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.lp-process-overview__step > div {
    margin-top: 30px;
}

.lp-process-overview__step small {
    display: block;
    color: #7b8998;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-process-overview__step h3 {
    margin: 8px 0 0;
    color: #061b33;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.25;
}

.lp-process-overview__step p {
    margin: 9px 0 0;
    color: #667587;
    font-size: .76rem;
    line-height: 1.5;
}

.lp-process-overview__arrow {
    display: grid;
    place-items: center;
    color: #049a9a;
    font-size: 1.15rem;
}

.lp-process-overview__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 15px;
    background: #061b33;
}

.lp-process-overview__note span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-process-overview__note p {
    margin: 0;
    color: rgba(255, 255, 255, .74);
    font-size: .82rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 1000px) {
    .lp-process-overview__header p {
        max-width: 760px;
    }

    .lp-process-overview__flow {
        grid-template-columns: repeat(2, 1fr);
    }

    .lp-process-overview__arrow {
        display: none;
    }

    .lp-process-overview__step--outcome {
        grid-column: 1 / -1;
        min-height: 170px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-overview {
        padding: 56px 0;
    }

    .lp-process-overview__container {
        width: calc(100% - 32px);
    }

    .lp-process-overview__header {
        margin-bottom: 24px;
    }

    .lp-process-overview__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-overview__header p {
        font-size: .88rem;
    }

    .lp-process-overview__flow {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-process-overview__step,
    .lp-process-overview__step--outcome {
        grid-column: auto;
        min-height: 0;
        padding: 18px;
        border-radius: 16px;
    }

    .lp-process-overview__step > div {
        margin-top: 22px;
    }

    .lp-process-overview__step h3 {
        font-size: 1.2rem;
    }

    .lp-process-overview__note {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-process-overview__note p {
        font-size: .8rem;
    }
}
/* =========================================================
   EC-AOP PAGE — TREATMENT RANGE
========================================================= */

.lp-ecaop-removal {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #061b33;
}

.lp-ecaop-removal__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: clamp(34px, 6vw, 72px);
    align-items: center;
}

.lp-ecaop-removal .lp-tech-section-label {
    color: #38cfd0;
}

.lp-ecaop-removal__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #fff;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-ecaop-removal__content > p {
    max-width: 570px;
    margin: 15px 0 0;
    color: rgba(255, 255, 255, .7);
    font-size: .91rem;
    line-height: 1.62;
}

.lp-ecaop-removal__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 26px;
}

.lp-ecaop-removal__grid article {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 11px;
    align-items: center;
    padding: 15px 16px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 14px;
    background: rgba(255, 255, 255, .055);
}

.lp-ecaop-removal__grid span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .09em;
}

.lp-ecaop-removal__grid h3 {
    margin: 0;
    color: rgba(255, 255, 255, .9);
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-ecaop-removal__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #0b2c4d;
}

.lp-ecaop-removal__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-ecaop-removal__media:hover img {
    transform: scale(1.025);
}

.lp-ecaop-removal__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: rgba(255, 255, 255, .92);
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-ecaop-removal__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-ecaop-removal__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-ecaop-removal {
        padding: 56px 0;
    }

    .lp-ecaop-removal__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-ecaop-removal__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-ecaop-removal__content > p {
        font-size: .87rem;
    }

    .lp-ecaop-removal__grid {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-ecaop-removal__grid article {
        padding: 14px 15px;
    }

    .lp-ecaop-removal__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-ecaop-removal__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-ecaop-removal__media img {
        transition: none;
    }
}






/* =========================================================
   TREATMENT PROCESS PAGE — TREATMENT BASIS
========================================================= */

.lp-treatment-basis {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #eef6f8;
}

.lp-treatment-basis__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(32px, 6vw, 72px);
    align-items: center;
}

.lp-treatment-basis__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-treatment-basis__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-treatment-basis__media:hover img {
    transform: scale(1.025);
}

.lp-treatment-basis__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-treatment-basis__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-treatment-basis__content > p {
    max-width: 590px;
    margin: 15px 0 0;
    color: #657487;
    font-size: .91rem;
    line-height: 1.62;
}

.lp-treatment-basis__factors {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 26px;
}

.lp-treatment-basis__factors article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 17px;
    border: 1px solid #d7e4e8;
    border-radius: 16px;
    background: #fff;
}

.lp-treatment-basis__factors article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-treatment-basis__factors h3 {
    margin: 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-treatment-basis__factors p {
    margin: 6px 0 0;
    color: #6a7989;
    font-size: .78rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-treatment-basis__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-treatment-basis__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-treatment-basis {
        padding: 56px 0;
    }

    .lp-treatment-basis__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-treatment-basis__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-treatment-basis__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-treatment-basis__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-treatment-basis__content > p {
        font-size: .87rem;
    }

    .lp-treatment-basis__factors {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-treatment-basis__factors article {
        padding: 16px;
        border-radius: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-treatment-basis__media img {
        transition: none;
    }
}







/* =========================================================
   TREATMENT PROCESS PAGE — TREATMENT BASIS
========================================================= */

.lp-treatment-basis {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #eef6f8;
}

.lp-treatment-basis__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(32px, 6vw, 72px);
    align-items: center;
}

.lp-treatment-basis__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-treatment-basis__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-treatment-basis__media:hover img {
    transform: scale(1.025);
}

.lp-treatment-basis__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-treatment-basis__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-treatment-basis__content > p {
    max-width: 590px;
    margin: 15px 0 0;
    color: #657487;
    font-size: .91rem;
    line-height: 1.62;
}

.lp-treatment-basis__factors {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 26px;
}

.lp-treatment-basis__factors article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 17px;
    border: 1px solid #d7e4e8;
    border-radius: 16px;
    background: #fff;
}

.lp-treatment-basis__factors article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-treatment-basis__factors h3 {
    margin: 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-treatment-basis__factors p {
    margin: 6px 0 0;
    color: #6a7989;
    font-size: .78rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-treatment-basis__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-treatment-basis__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-treatment-basis {
        padding: 56px 0;
    }

    .lp-treatment-basis__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-treatment-basis__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-treatment-basis__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-treatment-basis__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-treatment-basis__content > p {
        font-size: .87rem;
    }

    .lp-treatment-basis__factors {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-treatment-basis__factors article {
        padding: 16px;
        border-radius: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-treatment-basis__media img {
        transition: none;
    }
}







/* =========================================================
   TREATMENT PROCESS PAGE — SOLIDS SEPARATION
========================================================= */

.lp-process-separation {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #eef6f8;
}

.lp-process-separation__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-process-separation__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-process-separation__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-separation__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-process-separation__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr);
    gap: 16px;
    align-items: stretch;
}

.lp-process-separation__media {
    position: relative;
    min-height: 410px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-process-separation__media img {
    width: 100%;
    height: 100%;
    min-height: 410px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-process-separation__media:hover img {
    transform: scale(1.025);
}

.lp-process-separation__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-process-separation__options {
    display: grid;
    gap: 10px;
}

.lp-process-separation__options article {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 12px;
    padding: 20px;
    border: 1px solid #d7e4e8;
    border-radius: 17px;
    background: #fff;
}

.lp-process-separation__options article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-process-separation__options h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-process-separation__options p {
    margin: 7px 0 0;
    color: #687789;
    font-size: .82rem;
    line-height: 1.54;
}

.lp-process-separation__options small {
    display: inline-block;
    margin-top: 11px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #eef6f8;
    color: #496074;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .06em;
}

.lp-process-separation__outcome {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 15px;
    background: #061b33;
}

.lp-process-separation__outcome span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-process-separation__outcome p {
    margin: 0;
    color: rgba(255, 255, 255, .74);
    font-size: .82rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-process-separation__header,
    .lp-process-separation__layout {
        grid-template-columns: 1fr;
    }

    .lp-process-separation__header {
        gap: 18px;
    }

    .lp-process-separation__header > p {
        max-width: 650px;
    }

    .lp-process-separation__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-process-separation__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-process-separation__options {
        grid-template-columns: repeat(3, 1fr);
    }

    .lp-process-separation__options article {
        display: block;
    }

    .lp-process-separation__options article > span {
        display: block;
        margin-bottom: 18px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-separation {
        padding: 56px 0;
    }

    .lp-process-separation__container {
        width: calc(100% - 32px);
    }

    .lp-process-separation__header {
        margin-bottom: 24px;
    }

    .lp-process-separation__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-separation__header > p {
        font-size: .88rem;
    }

    .lp-process-separation__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-process-separation__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-process-separation__options {
        grid-template-columns: 1fr;
    }

    .lp-process-separation__options article {
        display: grid;
        padding: 17px;
        border-radius: 15px;
    }

    .lp-process-separation__options article > span {
        margin: 0;
    }

    .lp-process-separation__outcome {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-process-separation__outcome p {
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-process-separation__media img {
        transition: none;
    }
}







/* =========================================================
   TREATMENT PROCESS PAGE — REVERSE OSMOSIS POLISHING
========================================================= */

.lp-process-polishing {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #ffffff;
}

.lp-process-polishing__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
    gap: 16px clamp(34px, 6vw, 72px);
    align-items: center;
}

.lp-process-polishing__content h2 {
    max-width: 710px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-polishing__content > p {
    max-width: 620px;
    margin: 15px 0 0;
    color: #657487;
    font-size: .91rem;
    line-height: 1.62;
}

.lp-process-polishing__functions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 26px;
}

.lp-process-polishing__functions article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 17px;
    border: 1px solid #dce7ea;
    border-radius: 16px;
    background: #f7fafb;
}

.lp-process-polishing__functions article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-process-polishing__functions h3 {
    margin: 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-process-polishing__functions p {
    margin: 6px 0 0;
    color: #6a7989;
    font-size: .78rem;
    line-height: 1.5;
}

.lp-process-polishing__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-process-polishing__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-process-polishing__media:hover img {
    transform: scale(1.025);
}

.lp-process-polishing__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-process-polishing__note {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 2px;
    padding: 17px 20px;
    border-radius: 15px;
    background: #eef6f8;
}

.lp-process-polishing__note span {
    color: #049a9a;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-process-polishing__note p {
    margin: 0;
    color: #536477;
    font-size: .82rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-process-polishing__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-process-polishing__media {
        aspect-ratio: 16 / 9;
    }

    .lp-process-polishing__note {
        grid-column: auto;
        margin-top: -16px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-polishing {
        padding: 56px 0;
    }

    .lp-process-polishing__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-process-polishing__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-polishing__content > p {
        font-size: .87rem;
    }

    .lp-process-polishing__functions {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-process-polishing__functions article {
        padding: 16px;
        border-radius: 15px;
    }

    .lp-process-polishing__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-process-polishing__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-process-polishing__note {
        grid-template-columns: 1fr;
        gap: 7px;
        margin-top: -12px;
        padding: 17px;
    }

    .lp-process-polishing__note p {
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-process-polishing__media img {
        transition: none;
    }
}







/* =========================================================
   TREATMENT PROCESS PAGE — EC-AOP PRIMARY TREATMENT
========================================================= */

.lp-process-primary {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #ffffff;
}

.lp-process-primary__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
    gap: clamp(34px, 6vw, 72px);
    align-items: center;
}

.lp-process-primary__content h2 {
    max-width: 650px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-primary__content > p {
    max-width: 620px;
    margin: 15px 0 0;
    color: #657487;
    font-size: .91rem;
    line-height: 1.62;
}

.lp-process-primary__functions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 26px;
}

.lp-process-primary__functions article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 17px;
    border: 1px solid #dce7ea;
    border-radius: 16px;
    background: #f7fafb;
}

.lp-process-primary__functions article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-process-primary__functions h3 {
    margin: 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-process-primary__functions p {
    margin: 6px 0 0;
    color: #6a7989;
    font-size: .78rem;
    line-height: 1.5;
}

.lp-process-primary__link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 22px;
    color: #061b33;
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
}

.lp-process-primary__link span {
    color: #049a9a;
    transition: transform .25s ease;
}

.lp-process-primary__link:hover span {
    transform: translateX(4px);
}

.lp-process-primary__media {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-process-primary__media video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-process-primary__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .82);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-process-primary__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-process-primary__media {
        aspect-ratio: 16 / 9;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-primary {
        padding: 56px 0;
    }

    .lp-process-primary__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-process-primary__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-primary__content > p {
        font-size: .87rem;
    }

    .lp-process-primary__functions {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-process-primary__functions article {
        padding: 16px;
        border-radius: 15px;
    }

    .lp-process-primary__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-process-primary__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }
}

/* Reduced-motion fallback */

@media (prefers-reduced-motion: reduce) {
    .lp-process-primary__media video {
        display: none;
    }

    .lp-process-primary__media {
        background:
            url("../images/ec-aop.png")
            center / cover no-repeat;
    }

    .lp-process-primary__link span {
        transition: none;
    }
}








/* =========================================================
   TREATMENT PROCESS PAGE — MONITORING, SAMPLING & TESTING
========================================================= */

.lp-process-monitoring {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #061b33;
}

.lp-process-monitoring__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-process-monitoring__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-process-monitoring .lp-tech-section-label {
    color: #38cfd0;
}

.lp-process-monitoring__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #fff;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-monitoring__header > p {
    max-width: 440px;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: .92rem;
    line-height: 1.62;
}

.lp-process-monitoring__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
    gap: 16px;
    align-items: stretch;
}

.lp-process-monitoring__media {
    position: relative;
    min-height: 390px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #0b2c4d;
}

.lp-process-monitoring__media img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-process-monitoring__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    background: rgba(6, 27, 51, .84);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-process-monitoring__panel {
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 20px;
    background: rgba(255, 255, 255, .055);
}

.lp-process-monitoring__panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.lp-process-monitoring__panel-header span {
    color: #fff;
    font-size: .9rem;
    font-weight: 800;
}

.lp-process-monitoring__panel-header small {
    color: #38cfd0;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-process-monitoring__parameters {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 18px;
}

.lp-process-monitoring__parameters article {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: center;
    padding: 13px 14px;
    border-radius: 13px;
    background: rgba(255, 255, 255, .07);
}

.lp-process-monitoring__parameters span {
    color: #38cfd0;
    font-size: .62rem;
    font-weight: 800;
}

.lp-process-monitoring__parameters strong {
    color: rgba(255, 255, 255, .88);
    font-size: .8rem;
    font-weight: 700;
}

.lp-process-monitoring__sequence {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    gap: 8px;
    align-items: center;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-process-monitoring__sequence div {
    text-align: center;
}

.lp-process-monitoring__sequence span,
.lp-process-monitoring__sequence strong {
    display: block;
}

.lp-process-monitoring__sequence span {
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
}

.lp-process-monitoring__sequence strong {
    margin-top: 5px;
    color: #fff;
    font-size: .72rem;
}

.lp-process-monitoring__sequence i {
    color: rgba(255, 255, 255, .35);
    font-style: normal;
}

.lp-process-monitoring__note {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 22px;
    align-items: center;
    margin-top: 14px;
    padding: 17px 20px;
    border-radius: 15px;
    background: rgba(255, 255, 255, .07);
}

.lp-process-monitoring__note > span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-process-monitoring__note p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .82rem;
    line-height: 1.5;
}

.lp-process-monitoring__note a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .79rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-process-monitoring__note a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-process-monitoring__note a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-process-monitoring__header,
    .lp-process-monitoring__layout {
        grid-template-columns: 1fr;
    }

    .lp-process-monitoring__header {
        gap: 18px;
    }

    .lp-process-monitoring__header > p {
        max-width: 650px;
    }

    .lp-process-monitoring__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-process-monitoring__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-process-monitoring__note {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .lp-process-monitoring__note a {
        justify-self: start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-monitoring {
        padding: 56px 0;
    }

    .lp-process-monitoring__container {
        width: calc(100% - 32px);
    }

    .lp-process-monitoring__header {
        margin-bottom: 24px;
    }

    .lp-process-monitoring__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-monitoring__header > p {
        font-size: .88rem;
    }

    .lp-process-monitoring__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-process-monitoring__panel {
        padding: 18px;
        border-radius: 17px;
    }

    .lp-process-monitoring__parameters {
        grid-template-columns: 1fr;
    }

    .lp-process-monitoring__sequence {
        grid-template-columns: repeat(4, 1fr);
    }

    .lp-process-monitoring__sequence i {
        display: none;
    }

    .lp-process-monitoring__note {
        padding: 17px;
    }

    .lp-process-monitoring__note p {
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-process-monitoring__note a span {
        transition: none;
    }
}








/* =========================================================
   TREATMENT PROCESS PAGE — FINAL WATER PATHWAY
========================================================= */

.lp-process-outcome {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #ffffff;
}

.lp-process-outcome__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-process-outcome__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-process-outcome__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-process-outcome__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-process-outcome__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.lp-process-outcome__card {
    position: relative;
    min-height: 340px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    border-radius: 20px;
    background: #061b33;
    color: #fff;
    text-decoration: none;
    isolation: isolate;
}

.lp-process-outcome__card > img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-process-outcome__card:hover > img {
    transform: scale(1.035);
}

.lp-process-outcome__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(
            0deg,
            rgba(4, 20, 38, .94) 0%,
            rgba(4, 20, 38, .52) 55%,
            rgba(4, 20, 38, .08) 100%
        );
}

.lp-process-outcome__content {
    width: 100%;
    padding: 26px;
}

.lp-process-outcome__content > span {
    display: block;
    color: #38cfd0;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-process-outcome__content h3 {
    margin: 9px 0 0;
    color: #fff;
    font-size: clamp(1.5rem, 2.3vw, 2.1rem);
    font-weight: 800;
    line-height: 1.14;
    letter-spacing: -.03em;
}

.lp-process-outcome__content p {
    max-width: 430px;
    margin: 10px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .84rem;
    line-height: 1.56;
}

.lp-process-outcome__content strong {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 18px;
    color: #fff;
    font-size: .78rem;
    font-weight: 800;
}

.lp-process-outcome__content strong span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-process-outcome__card:hover strong span {
    transform: translateX(4px);
}

.lp-process-outcome__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    margin-top: 14px;
    padding: 25px 27px;
    border-radius: 18px;
    background: #d6ad45;
}

.lp-process-outcome__cta > div:first-child > span {
    display: block;
    color: #061b33;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-process-outcome__cta h3 {
    max-width: 650px;
    margin: 7px 0 0;
    color: #061b33;
    font-size: clamp(1.3rem, 2.2vw, 1.9rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.025em;
}

.lp-process-outcome__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 9px;
    justify-content: flex-end;
}

.lp-process-outcome__button {
    min-height: 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 19px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.lp-process-outcome__button:hover {
    transform: translateY(-2px);
}

.lp-process-outcome__button--primary {
    background: #061b33;
    color: #fff;
}

.lp-process-outcome__button--primary span {
    color: #38cfd0;
}

.lp-process-outcome__button--primary:hover {
    background: #0b2c4d;
}

.lp-process-outcome__button--secondary {
    border-color: rgba(6, 27, 51, .28);
    color: #061b33;
}

.lp-process-outcome__button--secondary:hover {
    border-color: #061b33;
    background: rgba(255, 255, 255, .2);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-process-outcome__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-process-outcome__header > p {
        max-width: 650px;
    }

    .lp-process-outcome__cta {
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
    }

    .lp-process-outcome__actions {
        justify-content: flex-start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-process-outcome {
        padding: 56px 0;
    }

    .lp-process-outcome__container {
        width: calc(100% - 32px);
    }

    .lp-process-outcome__header {
        margin-bottom: 24px;
    }

    .lp-process-outcome__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-process-outcome__header > p {
        font-size: .88rem;
    }

    .lp-process-outcome__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-process-outcome__card {
        min-height: 290px;
        border-radius: 17px;
    }

    .lp-process-outcome__content {
        padding: 21px;
    }

    .lp-process-outcome__content h3 {
        font-size: 1.55rem;
    }

    .lp-process-outcome__content p {
        font-size: .81rem;
    }

    .lp-process-outcome__cta {
        margin-top: 10px;
        padding: 21px;
        border-radius: 17px;
    }

    .lp-process-outcome__cta h3 {
        font-size: 1.35rem;
    }

    .lp-process-outcome__actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }

    .lp-process-outcome__button {
        width: 100%;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-process-outcome__card > img,
    .lp-process-outcome__content strong span,
    .lp-process-outcome__button {
        transition: none;
    }
}







/* =========================================================
   CASE STUDY — PILOT PROJECT OVERVIEW
========================================================= */

.lp-pilot-overview {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #ffffff;
}

.lp-pilot-overview__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 16px clamp(34px, 6vw, 72px);
    align-items: center;
}

.lp-pilot-overview__content h2 {
    max-width: 650px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-overview__content > p {
    max-width: 610px;
    margin: 16px 0 0;
    color: #657487;
    font-size: .91rem;
    line-height: 1.64;
}

.lp-pilot-overview__facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 9px;
    margin-top: 25px;
}

.lp-pilot-overview__facts article {
    min-width: 0;
    padding: 16px;
    border: 1px solid #dce7ea;
    border-radius: 15px;
    background: #f7fafb;
}

.lp-pilot-overview__facts span,
.lp-pilot-overview__facts strong {
    display: block;
}

.lp-pilot-overview__facts span {
    color: #049a9a;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-pilot-overview__facts strong {
    margin-top: 8px;
    color: #061b33;
    font-size: .82rem;
    line-height: 1.4;
}

.lp-pilot-overview__media {
    position: relative;
    aspect-ratio: 16 / 10;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-pilot-overview__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-overview__media:hover img {
    transform: scale(1.025);
}

.lp-pilot-overview__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .84);
    color: #fff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-pilot-overview__objective {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    padding: 17px 20px;
    border-radius: 15px;
    background: #061b33;
}

.lp-pilot-overview__objective span {
    color: #38cfd0;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-pilot-overview__objective p {
    margin: 0;
    color: rgba(255, 255, 255, .76);
    font-size: .82rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-overview__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-pilot-overview__media {
        aspect-ratio: 16 / 9;
    }

    .lp-pilot-overview__objective {
        grid-column: auto;
        margin-top: -15px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-overview {
        padding: 56px 0;
    }

    .lp-pilot-overview__container {
        width: calc(100% - 32px);
        gap: 26px;
    }

    .lp-pilot-overview__content h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-overview__content > p {
        font-size: .87rem;
    }

    .lp-pilot-overview__facts {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .lp-pilot-overview__facts article {
        padding: 15px 16px;
    }

    .lp-pilot-overview__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-pilot-overview__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-pilot-overview__objective {
        grid-template-columns: 1fr;
        gap: 7px;
        margin-top: -12px;
        padding: 17px;
    }

    .lp-pilot-overview__objective p {
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-overview__media img {
        transition: none;
    }
}








/* =========================================================
   CASE STUDY — FIELD DEPLOYMENT
========================================================= */

.lp-pilot-deployment {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #eef6f8;
}

.lp-pilot-deployment__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-deployment__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-deployment__header h2 {
    max-width: 720px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-deployment__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-pilot-deployment__gallery {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    grid-template-rows: repeat(2, 1fr);
    gap: 12px;
}

.lp-pilot-deployment__gallery figure {
    position: relative;
    margin: 0;
    overflow: hidden;
    border-radius: 18px;
    background: #dce9ed;
}

.lp-pilot-deployment__feature {
    grid-row: 1 / 3;
    min-height: 430px;
}

.lp-pilot-deployment__item {
    min-height: 209px;
}

.lp-pilot-deployment__gallery img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-deployment__gallery figure:hover img {
    transform: scale(1.025);
}

.lp-pilot-deployment__gallery figcaption {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 13px;
    background: rgba(6, 27, 51, .82);
    backdrop-filter: blur(10px);
}

.lp-pilot-deployment__gallery figcaption span,
.lp-pilot-deployment__gallery figcaption strong {
    display: block;
}

.lp-pilot-deployment__gallery figcaption span {
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-pilot-deployment__gallery figcaption strong {
    margin-top: 4px;
    color: #fff;
    font-size: .78rem;
    line-height: 1.4;
}

.lp-pilot-deployment__record {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 14px;
}

.lp-pilot-deployment__record article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 11px;
    padding: 17px;
    border: 1px solid #d7e4e8;
    border-radius: 15px;
    background: #fff;
}

.lp-pilot-deployment__record article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pilot-deployment__record h3 {
    margin: 0;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pilot-deployment__record p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .77rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-deployment__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-pilot-deployment__header > p {
        max-width: 650px;
    }

    .lp-pilot-deployment__gallery {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }

    .lp-pilot-deployment__feature {
        grid-column: 1 / -1;
        grid-row: auto;
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-pilot-deployment__item {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-deployment {
        padding: 56px 0;
    }

    .lp-pilot-deployment__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-deployment__header {
        margin-bottom: 24px;
    }

    .lp-pilot-deployment__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-deployment__header > p {
        font-size: .88rem;
    }

    .lp-pilot-deployment__gallery {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-pilot-deployment__feature,
    .lp-pilot-deployment__item {
        grid-column: auto;
        aspect-ratio: 16 / 10;
        border-radius: 16px;
    }

    .lp-pilot-deployment__gallery figcaption {
        left: 10px;
        right: 10px;
        bottom: 10px;
        padding: 10px 12px;
    }

    .lp-pilot-deployment__record {
        grid-template-columns: 1fr;
        margin-top: 10px;
    }

    .lp-pilot-deployment__record article {
        padding: 15px 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-deployment__gallery img {
        transition: none;
    }
}








/* =========================================================
   CASE STUDY — PILOT TREATMENT ACTIVITIES
========================================================= */

.lp-pilot-operations {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #ffffff;
}

.lp-pilot-operations__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-operations__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-operations__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-operations__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-pilot-operations__stages {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.lp-pilot-operations__stage {
    overflow: hidden;
    border: 1px solid #dce7ea;
    border-radius: 19px;
    background: #f7fafb;
}

.lp-pilot-operations__stage figure {
    position: relative;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    background: #dce9ed;
}

.lp-pilot-operations__stage img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-operations__stage:hover img {
    transform: scale(1.03);
}

.lp-pilot-operations__stage figcaption {
    position: absolute;
    left: 12px;
    bottom: 12px;
    padding: 8px 11px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .84);
    color: #fff;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-pilot-operations__stage-content {
    padding: 20px;
}

.lp-pilot-operations__stage-content > span {
    display: block;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pilot-operations__stage-content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.3;
}

.lp-pilot-operations__stage-content p {
    margin: 9px 0 0;
    color: #687789;
    font-size: .8rem;
    line-height: 1.55;
}

.lp-pilot-operations__stage-content small {
    display: inline-block;
    margin-top: 14px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #eaf3f5;
    color: #526679;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .04em;
}

.lp-pilot-operations__advantage {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    margin-top: 14px;
    padding: 20px 22px;
    border-radius: 17px;
    background: #061b33;
}

.lp-pilot-operations__advantage-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(56, 207, 208, .12);
}

.lp-pilot-operations__advantage-icon span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #38cfd0;
    box-shadow:
        0 0 0 6px rgba(56, 207, 208, .12),
        0 0 24px rgba(56, 207, 208, .35);
}

.lp-pilot-operations__advantage > div:nth-child(2) > span {
    display: block;
    color: #38cfd0;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pilot-operations__advantage h3 {
    margin: 6px 0 0;
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pilot-operations__advantage p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .66);
    font-size: .77rem;
    line-height: 1.5;
}

.lp-pilot-operations__advantage > a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-size: .77rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.lp-pilot-operations__advantage > a span {
    color: #38cfd0;
    transition: transform .25s ease;
}

.lp-pilot-operations__advantage > a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-operations__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-pilot-operations__header > p {
        max-width: 650px;
    }

    .lp-pilot-operations__stages {
        grid-template-columns: 1fr 1fr;
    }

    .lp-pilot-operations__stage:last-child {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: .9fr 1.1fr;
    }

    .lp-pilot-operations__stage:last-child figure {
        aspect-ratio: auto;
        min-height: 260px;
    }

    .lp-pilot-operations__advantage {
        grid-template-columns: auto 1fr;
    }

    .lp-pilot-operations__advantage > a {
        grid-column: 2;
        justify-self: start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-operations {
        padding: 56px 0;
    }

    .lp-pilot-operations__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-operations__header {
        margin-bottom: 24px;
    }

    .lp-pilot-operations__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-operations__header > p {
        font-size: .88rem;
    }

    .lp-pilot-operations__stages {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-pilot-operations__stage,
    .lp-pilot-operations__stage:last-child {
        grid-column: auto;
        display: block;
        border-radius: 16px;
    }

    .lp-pilot-operations__stage figure,
    .lp-pilot-operations__stage:last-child figure {
        aspect-ratio: 16 / 10;
        min-height: 0;
    }

    .lp-pilot-operations__stage-content {
        padding: 18px;
    }

    .lp-pilot-operations__stage-content h3 {
        font-size: 1rem;
    }

    .lp-pilot-operations__advantage {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 10px;
        padding: 18px;
    }

    .lp-pilot-operations__advantage-icon {
        width: 38px;
        height: 38px;
    }

    .lp-pilot-operations__advantage > a {
        grid-column: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-operations__stage img,
    .lp-pilot-operations__advantage > a span {
        transition: none;
    }
}








/* =========================================================
   CASE STUDY — MONITORING, SAMPLING & TESTING
========================================================= */

.lp-pilot-monitoring {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #061b33;
}

.lp-pilot-monitoring__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-monitoring__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-monitoring .lp-tech-section-label {
    color: #38cfd0;
}

.lp-pilot-monitoring__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #ffffff;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-monitoring__header > p {
    max-width: 440px;
    margin: 0;
    color: rgba(255, 255, 255, .66);
    font-size: .92rem;
    line-height: 1.62;
}

.lp-pilot-monitoring__layout {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(390px, 1.08fr);
    gap: 14px;
    align-items: stretch;
}

/* Media gallery */

.lp-pilot-monitoring__gallery {
    display: grid;
    grid-template-rows: 1.25fr .75fr;
    gap: 10px;
}

.lp-pilot-monitoring__gallery figure {
    position: relative;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    border-radius: 18px;
    background: #0b2c4d;
}

.lp-pilot-monitoring__feature {
    min-height: 280px;
}

.lp-pilot-monitoring__secondary {
    min-height: 180px;
}

.lp-pilot-monitoring__gallery img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-monitoring__gallery figure:hover img {
    transform: scale(1.025);
}

.lp-pilot-monitoring__gallery figcaption {
    position: absolute;
    left: 13px;
    right: 13px;
    bottom: 13px;
    padding: 11px 13px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 13px;
    background: rgba(6, 27, 51, .84);
    backdrop-filter: blur(10px);
}

.lp-pilot-monitoring__gallery figcaption span,
.lp-pilot-monitoring__gallery figcaption strong {
    display: block;
}

.lp-pilot-monitoring__gallery figcaption span {
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-pilot-monitoring__gallery figcaption strong {
    margin-top: 4px;
    color: #ffffff;
    font-size: .76rem;
    line-height: 1.4;
}

/* Parameter dashboard */

.lp-pilot-monitoring__dashboard {
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 20px;
    background: rgba(255, 255, 255, .055);
}

.lp-pilot-monitoring__dashboard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.lp-pilot-monitoring__dashboard-head span,
.lp-pilot-monitoring__dashboard-head strong {
    display: block;
}

.lp-pilot-monitoring__dashboard-head span {
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pilot-monitoring__dashboard-head strong {
    margin-top: 5px;
    color: #ffffff;
    font-size: .9rem;
}

.lp-pilot-monitoring__dashboard-head small {
    flex: 0 0 auto;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(56, 207, 208, .12);
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lp-pilot-monitoring__parameters {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 18px;
}

.lp-pilot-monitoring__parameters article {
    display: grid;
    grid-template-columns: 27px 1fr;
    gap: 3px 10px;
    align-items: start;
    padding: 13px 14px;
    border-radius: 13px;
    background: rgba(255, 255, 255, .065);
}

.lp-pilot-monitoring__parameters article > span {
    grid-row: 1 / 3;
    padding-top: 2px;
    color: #38cfd0;
    font-size: .61rem;
    font-weight: 800;
}

.lp-pilot-monitoring__parameters strong {
    color: rgba(255, 255, 255, .9);
    font-size: .78rem;
    line-height: 1.35;
}

.lp-pilot-monitoring__parameters small {
    color: rgba(255, 255, 255, .48);
    font-size: .63rem;
    line-height: 1.4;
}

.lp-pilot-monitoring__parameters article:last-child {
    grid-column: 1 / -1;
}

/* Workflow */

.lp-pilot-monitoring__workflow {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    gap: 8px;
    align-items: center;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pilot-monitoring__workflow article {
    text-align: center;
}

.lp-pilot-monitoring__workflow span,
.lp-pilot-monitoring__workflow strong {
    display: block;
}

.lp-pilot-monitoring__workflow span {
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
}

.lp-pilot-monitoring__workflow strong {
    margin-top: 5px;
    color: #ffffff;
    font-size: .71rem;
}

.lp-pilot-monitoring__workflow i {
    color: rgba(255, 255, 255, .3);
    font-style: normal;
}

/* Verification strip */

.lp-pilot-monitoring__verification {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .7fr);
    gap: 30px;
    align-items: center;
    margin-top: 14px;
    padding: 20px 22px;
    border-radius: 17px;
    background: #d6ad45;
}

.lp-pilot-monitoring__verification span {
    display: block;
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pilot-monitoring__verification h3 {
    max-width: 660px;
    margin: 6px 0 0;
    color: #061b33;
    font-size: clamp(1rem, 1.7vw, 1.35rem);
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-pilot-monitoring__verification > p {
    margin: 0;
    color: rgba(6, 27, 51, .74);
    font-size: .79rem;
    line-height: 1.55;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-monitoring__header,
    .lp-pilot-monitoring__layout {
        grid-template-columns: 1fr;
    }

    .lp-pilot-monitoring__header {
        gap: 18px;
    }

    .lp-pilot-monitoring__header > p {
        max-width: 650px;
    }

    .lp-pilot-monitoring__gallery {
        grid-template-columns: 1.25fr .75fr;
        grid-template-rows: 1fr;
    }

    .lp-pilot-monitoring__feature,
    .lp-pilot-monitoring__secondary {
        min-height: 260px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-monitoring {
        padding: 56px 0;
    }

    .lp-pilot-monitoring__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-monitoring__header {
        margin-bottom: 24px;
    }

    .lp-pilot-monitoring__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-monitoring__header > p {
        font-size: .88rem;
    }

    .lp-pilot-monitoring__gallery {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-pilot-monitoring__feature,
    .lp-pilot-monitoring__secondary {
        min-height: 0;
        aspect-ratio: 16 / 10;
        border-radius: 16px;
    }

    .lp-pilot-monitoring__dashboard {
        padding: 18px;
        border-radius: 17px;
    }

    .lp-pilot-monitoring__dashboard-head {
        align-items: flex-start;
    }

    .lp-pilot-monitoring__parameters {
        grid-template-columns: 1fr;
    }

    .lp-pilot-monitoring__parameters article:last-child {
        grid-column: auto;
    }

    .lp-pilot-monitoring__workflow {
        grid-template-columns: repeat(4, 1fr);
    }

    .lp-pilot-monitoring__workflow i {
        display: none;
    }

    .lp-pilot-monitoring__verification {
        grid-template-columns: 1fr;
        gap: 9px;
        margin-top: 10px;
        padding: 18px;
    }

    .lp-pilot-monitoring__verification > p {
        font-size: .77rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-monitoring__gallery img {
        transition: none;
    }
}






/* =========================================================
   CASE STUDY — BEFORE & AFTER SAMPLES
========================================================= */

.lp-pilot-samples {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #ffffff;
}

.lp-pilot-samples__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-samples__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-samples__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-samples__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-pilot-samples__gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.lp-pilot-samples__comparison {
    overflow: hidden;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f7fafb;
}

.lp-pilot-samples__comparison-head {
    padding: 17px 18px 14px;
}

.lp-pilot-samples__comparison-head span,
.lp-pilot-samples__comparison-head strong {
    display: block;
}

.lp-pilot-samples__comparison-head span {
    color: #049a9a;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pilot-samples__comparison-head strong {
    margin-top: 6px;
    color: #061b33;
    font-size: .9rem;
    line-height: 1.35;
}

.lp-pilot-samples__comparison figure {
    aspect-ratio: 1 / 1;
    margin: 0;
    overflow: hidden;
    background: #dce9ed;
}

.lp-pilot-samples__comparison img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-samples__comparison:hover img {
    transform: scale(1.025);
}

.lp-pilot-samples__labels {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid #dce7ea;
}

.lp-pilot-samples__labels span {
    padding: 12px 10px;
    color: #5f7081;
    font-size: .64rem;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
}

.lp-pilot-samples__labels span + span {
    border-left: 1px solid #dce7ea;
    color: #049a9a;
}

.lp-pilot-samples__note {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
    gap: 30px;
    align-items: center;
    margin-top: 14px;
    padding: 21px 23px;
    border-radius: 17px;
    background: #eef6f8;
}

.lp-pilot-samples__note span {
    display: block;
    color: #049a9a;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pilot-samples__note h3 {
    max-width: 660px;
    margin: 6px 0 0;
    color: #061b33;
    font-size: clamp(1rem, 1.7vw, 1.35rem);
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-pilot-samples__note > p {
    margin: 0;
    color: #607184;
    font-size: .79rem;
    line-height: 1.55;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-samples__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-pilot-samples__header > p {
        max-width: 650px;
    }

    .lp-pilot-samples__gallery {
        grid-template-columns: 1fr 1fr;
    }

    .lp-pilot-samples__comparison:last-child {
        grid-column: 1 / -1;
        width: calc(50% - 6px);
        justify-self: center;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-samples {
        padding: 56px 0;
    }

    .lp-pilot-samples__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-samples__header {
        margin-bottom: 24px;
    }

    .lp-pilot-samples__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-samples__header > p {
        font-size: .88rem;
    }

    .lp-pilot-samples__gallery {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-pilot-samples__comparison,
    .lp-pilot-samples__comparison:last-child {
        grid-column: auto;
        width: 100%;
        border-radius: 16px;
    }

    .lp-pilot-samples__comparison figure {
        aspect-ratio: 1 / 1;
    }

    .lp-pilot-samples__note {
        grid-template-columns: 1fr;
        gap: 9px;
        margin-top: 10px;
        padding: 18px;
    }

    .lp-pilot-samples__note > p {
        font-size: .77rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-samples__comparison img {
        transition: none;
    }
}






/* =========================================================
   CASE STUDY — KEY RESULTS & VERIFICATION
========================================================= */

.lp-pilot-results {
    padding: clamp(58px, 7vw, 82px) 0;
    background: #eef6f8;
}

.lp-pilot-results__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-results__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-results__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-results__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

/* Performance metrics */

.lp-pilot-results__performance {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-bottom: 14px;
}

.lp-pilot-results__metric {
    padding: 20px;
    border: 1px solid #d7e4e8;
    border-radius: 17px;
    background: #ffffff;
}

.lp-pilot-results__value {
    display: block;
    color: #049a9a;
    font-size: clamp(1.55rem, 2.6vw, 2.25rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.04em;
}

.lp-pilot-results__metric h3 {
    margin: 15px 0 0;
    color: #061b33;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pilot-results__metric p {
    margin: 7px 0 0;
    color: #69788a;
    font-size: .75rem;
    line-height: 1.5;
}

/* Verification layout */

.lp-pilot-results__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(350px, .96fr);
    gap: 14px;
    align-items: stretch;
}

.lp-pilot-results__media {
    position: relative;
    min-height: 390px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-pilot-results__media img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-results__media:hover img {
    transform: scale(1.025);
}

.lp-pilot-results__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .84);
    color: #ffffff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-pilot-results__verification {
    display: grid;
    gap: 10px;
}

.lp-pilot-results__verification article {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 12px;
    padding: 20px;
    border: 1px solid #d7e4e8;
    border-radius: 17px;
    background: #ffffff;
}

.lp-pilot-results__verification article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pilot-results__verification h3 {
    margin: 0;
    color: #061b33;
    font-size: .95rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pilot-results__verification p {
    margin: 7px 0 0;
    color: #687789;
    font-size: .79rem;
    line-height: 1.54;
}

/* Closing statement */

.lp-pilot-results__statement {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .7fr);
    gap: 30px;
    align-items: center;
    margin-top: 14px;
    padding: 21px 23px;
    border-radius: 17px;
    background: #061b33;
}

.lp-pilot-results__statement span {
    display: block;
    color: #38cfd0;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pilot-results__statement h3 {
    max-width: 660px;
    margin: 6px 0 0;
    color: #ffffff;
    font-size: clamp(1rem, 1.7vw, 1.35rem);
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-pilot-results__statement > p {
    margin: 0;
    color: rgba(255, 255, 255, .68);
    font-size: .79rem;
    line-height: 1.55;
}

/* Tablet */

@media (max-width: 1000px) {
    .lp-pilot-results__performance {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 900px) {
    .lp-pilot-results__header,
    .lp-pilot-results__layout {
        grid-template-columns: 1fr;
    }

    .lp-pilot-results__header {
        gap: 18px;
    }

    .lp-pilot-results__header > p {
        max-width: 650px;
    }

    .lp-pilot-results__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-pilot-results__media img {
        min-height: 0;
        height: 100%;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-results {
        padding: 56px 0;
    }

    .lp-pilot-results__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-results__header {
        margin-bottom: 24px;
    }

    .lp-pilot-results__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-results__header > p {
        font-size: .88rem;
    }

    .lp-pilot-results__performance {
        grid-template-columns: 1fr;
    }

    .lp-pilot-results__metric {
        padding: 18px;
        border-radius: 15px;
    }

    .lp-pilot-results__layout {
        gap: 10px;
    }

    .lp-pilot-results__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-pilot-results__verification article {
        padding: 17px;
        border-radius: 15px;
    }

    .lp-pilot-results__statement {
        grid-template-columns: 1fr;
        gap: 9px;
        margin-top: 10px;
        padding: 18px;
    }

    .lp-pilot-results__statement > p {
        font-size: .77rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-results__media img {
        transition: none;
    }
}








/* =========================================================
   CASE STUDY — REGULATORY REVIEW & OUTCOME
========================================================= */

.lp-pilot-regulatory {
    padding: clamp(58px, 7vw, 84px) 0;
    background: #ffffff;
}

.lp-pilot-regulatory__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.lp-pilot-regulatory__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr);
    gap: clamp(28px, 6vw, 72px);
    align-items: end;
    margin-bottom: 30px;
}

.lp-pilot-regulatory__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-pilot-regulatory__header > p {
    max-width: 440px;
    margin: 0;
    color: #667587;
    font-size: .92rem;
    line-height: 1.62;
}

.lp-pilot-regulatory__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(350px, .95fr);
    gap: 14px;
    align-items: stretch;
}

.lp-pilot-regulatory__media {
    position: relative;
    min-height: 420px;
    margin: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #dce9ed;
}

.lp-pilot-regulatory__media img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-pilot-regulatory__media:hover img {
    transform: scale(1.025);
}

.lp-pilot-regulatory__media figcaption {
    position: absolute;
    left: 15px;
    bottom: 15px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(6, 27, 51, .84);
    color: #ffffff;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.lp-pilot-regulatory__milestones {
    display: grid;
    gap: 10px;
}

.lp-pilot-regulatory__milestones article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 20px;
    border: 1px solid #dce7ea;
    border-radius: 17px;
    background: #f7fafb;
}

.lp-pilot-regulatory__milestones article > span {
    padding-top: 4px;
    color: #049a9a;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pilot-regulatory__milestones small {
    display: block;
    color: #049a9a;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-pilot-regulatory__milestones h3 {
    margin: 7px 0 0;
    color: #061b33;
    font-size: .97rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pilot-regulatory__milestones p {
    margin: 7px 0 0;
    color: #687789;
    font-size: .79rem;
    line-height: 1.54;
}

.lp-pilot-regulatory__milestone--permit {
    border-color: #d6ad45 !important;
    background: #fffaf0 !important;
}

.lp-pilot-regulatory__milestone--permit > span,
.lp-pilot-regulatory__milestone--permit small {
    color: #9a7114;
}

.lp-pilot-regulatory__outcome {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
    margin-top: 14px;
    padding: 26px 28px;
    border-radius: 18px;
    background: #061b33;
}

.lp-pilot-regulatory__outcome-copy {
    max-width: 720px;
}

.lp-pilot-regulatory__outcome-copy > span {
    display: block;
    color: #38cfd0;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pilot-regulatory__outcome-copy h3 {
    margin: 7px 0 0;
    color: #ffffff;
    font-size: clamp(1.35rem, 2.3vw, 2rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.03em;
    text-wrap: balance;
}

.lp-pilot-regulatory__outcome-copy p {
    max-width: 680px;
    margin: 9px 0 0;
    color: rgba(255, 255, 255, .67);
    font-size: .81rem;
    line-height: 1.56;
}

.lp-pilot-regulatory__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 9px;
    justify-content: flex-end;
}

.lp-pilot-regulatory__button {
    min-height: 47px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 19px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.lp-pilot-regulatory__button:hover {
    transform: translateY(-2px);
}

.lp-pilot-regulatory__button--primary {
    background: #d6ad45;
    color: #061b33;
}

.lp-pilot-regulatory__button--primary:hover {
    background: #e0bb5b;
}

.lp-pilot-regulatory__button--secondary {
    border-color: rgba(255, 255, 255, .24);
    color: #ffffff;
}

.lp-pilot-regulatory__button--secondary:hover {
    border-color: rgba(255, 255, 255, .5);
    background: rgba(255, 255, 255, .07);
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pilot-regulatory__header,
    .lp-pilot-regulatory__layout {
        grid-template-columns: 1fr;
    }

    .lp-pilot-regulatory__header {
        gap: 18px;
    }

    .lp-pilot-regulatory__header > p {
        max-width: 650px;
    }

    .lp-pilot-regulatory__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    .lp-pilot-regulatory__media img {
        min-height: 0;
        height: 100%;
    }

    .lp-pilot-regulatory__outcome {
        align-items: flex-start;
        flex-direction: column;
        gap: 21px;
    }

    .lp-pilot-regulatory__actions {
        justify-content: flex-start;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pilot-regulatory {
        padding: 56px 0;
    }

    .lp-pilot-regulatory__container {
        width: calc(100% - 32px);
    }

    .lp-pilot-regulatory__header {
        margin-bottom: 24px;
    }

    .lp-pilot-regulatory__header h2 {
        margin-top: 12px;
        font-size: clamp(1.95rem, 9vw, 2.5rem);
    }

    .lp-pilot-regulatory__header > p {
        font-size: .88rem;
    }

    .lp-pilot-regulatory__layout {
        gap: 10px;
    }

    .lp-pilot-regulatory__media {
        aspect-ratio: 16 / 10;
        border-radius: 17px;
    }

    .lp-pilot-regulatory__media figcaption {
        left: 11px;
        bottom: 11px;
        max-width: calc(100% - 22px);
        font-size: .52rem;
    }

    .lp-pilot-regulatory__milestones article {
        padding: 17px;
        border-radius: 15px;
    }

    .lp-pilot-regulatory__outcome {
        margin-top: 10px;
        padding: 21px;
        border-radius: 17px;
    }

    .lp-pilot-regulatory__outcome-copy h3 {
        font-size: 1.45rem;
    }

    .lp-pilot-regulatory__actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }

    .lp-pilot-regulatory__button {
        width: 100%;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pilot-regulatory__media img,
    .lp-pilot-regulatory__button {
        transition: none;
    }
}







/*=========================================================
ABOUT — COMPANY OVERVIEW
=========================================================*/

.lp-about-company{
    padding:clamp(58px,7vw,86px) 0;
    background:#ffffff;
}

.lp-about-company__container{
    width:min(1180px,calc(100% - 40px));
    margin:auto;

    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:clamp(34px,6vw,78px);
    align-items:center;
}

.lp-about-company__content h2{

    margin:14px 0 0;

    max-width:720px;

    color:#061b33;

    font-size:clamp(2rem,3.45vw,3.2rem);

    line-height:1.04;

    letter-spacing:-.045em;

    font-weight:800;

    text-wrap:balance;

}

.lp-about-company__lead{

    margin-top:18px;

    max-width:620px;

    color:#42586c;

    font-size:1rem;

    line-height:1.72;

}

.lp-about-company__content p:not(.lp-about-company__lead){

    margin-top:18px;

    max-width:620px;

    color:#69788a;

    font-size:.89rem;

    line-height:1.7;

}

.lp-about-company__highlights{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:12px;

    margin-top:32px;

}

.lp-about-company__highlights article{

    padding:18px;

    border:1px solid #dce7ea;

    border-radius:16px;

    background:#f7fafb;

}

.lp-about-company__highlights strong{

    display:block;

    color:#061b33;

    font-size:.86rem;

    line-height:1.35;

}

.lp-about-company__highlights span{

    display:block;

    margin-top:8px;

    color:#667587;

    font-size:.75rem;

    line-height:1.55;

}

.lp-about-company__media{

    position:relative;

    margin:0;

    aspect-ratio:16/11;

    overflow:hidden;

    border-radius:22px;

    background:#dbe8ec;

}

.lp-about-company__media img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center;

    transition:transform .6s ease;

}

.lp-about-company__media:hover img{

    transform:scale(1.03);

}

.lp-about-company__media figcaption{

    position:absolute;

    left:18px;

    right:18px;

    bottom:18px;

    padding:18px;

    border-radius:18px;

    background:rgba(6,27,51,.82);

    backdrop-filter:blur(14px);

}

.lp-about-company__media span{

    display:block;

    color:#38cfd0;

    font-size:.58rem;

    letter-spacing:.14em;

    text-transform:uppercase;

    font-weight:800;

}

.lp-about-company__media strong{

    display:block;

    margin-top:8px;

    color:#ffffff;

    font-size:.9rem;

    line-height:1.55;

    font-weight:700;

}

/* Tablet */

@media(max-width:900px){

.lp-about-company__container{

grid-template-columns:1fr;

}

.lp-about-company__highlights{

grid-template-columns:1fr 1fr 1fr;

}

}

/* Mobile */

@media(max-width:640px){

.lp-about-company{

padding:56px 0;

}

.lp-about-company__container{

width:calc(100% - 32px);

}

.lp-about-company__content h2{

font-size:clamp(2rem,9vw,2.6rem);

}

.lp-about-company__lead{

font-size:.92rem;

}

.lp-about-company__highlights{

grid-template-columns:1fr;

gap:10px;

margin-top:24px;

}

.lp-about-company__media{

aspect-ratio:16/10;

border-radius:18px;

margin-top:8px;

}

.lp-about-company__media figcaption{

left:12px;
right:12px;
bottom:12px;

padding:15px;

}

}








/*=========================================================
ABOUT — OUR FOCUS
=========================================================*/

.lp-about-focus{

padding:clamp(60px,7vw,90px) 0;

background:#eef6f8;

}

.lp-about-focus__container{

width:min(1180px,calc(100% - 40px));

margin:auto;

}

.lp-about-focus__header{

max-width:760px;

margin:0 auto 42px;

text-align:center;

}

.lp-about-focus__header h2{

margin:14px 0;

font-size:clamp(2rem,3.4vw,3.15rem);

font-weight:800;

line-height:1.05;

letter-spacing:-.04em;

color:#061b33;

text-wrap:balance;

}

.lp-about-focus__header p{

max-width:620px;

margin:auto;

color:#677789;

font-size:.93rem;

line-height:1.7;

}

.lp-about-focus__grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.lp-about-focus__card{

background:#ffffff;

border-radius:22px;

overflow:hidden;

border:1px solid #dbe6ea;

transition:.35s;

}

.lp-about-focus__card:hover{

transform:translateY(-6px);

box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.lp-about-focus__card figure{

margin:0;

aspect-ratio:16/10;

overflow:hidden;

}

.lp-about-focus__card img{

width:100%;

height:100%;

object-fit:cover;

transition:transform .6s;

}

.lp-about-focus__card:hover img{

transform:scale(1.05);

}

.lp-about-focus__content{

padding:28px;

}

.lp-about-focus__content span{

display:inline-flex;

align-items:center;

justify-content:center;

width:38px;

height:38px;

border-radius:50%;

background:#e8f7f7;

color:#049a9a;

font-size:.72rem;

font-weight:800;

margin-bottom:16px;

}

.lp-about-focus__content h3{

margin:0;

font-size:1.45rem;

font-weight:800;

color:#061b33;

}

.lp-about-focus__content p{

margin:14px 0 24px;

font-size:.84rem;

line-height:1.75;

color:#667587;

}

.lp-about-focus__content a{

display:inline-flex;

align-items:center;

gap:8px;

font-size:.78rem;

font-weight:800;

color:#049a9a;

text-decoration:none;

}

.lp-about-focus__content a:hover{

color:#027777;

}

@media(max-width:900px){

.lp-about-focus__grid{

grid-template-columns:1fr;

}

}

@media(max-width:640px){

.lp-about-focus{

padding:56px 0;

}

.lp-about-focus__container{

width:calc(100% - 32px);

}

.lp-about-focus__header{

margin-bottom:28px;

}

.lp-about-focus__header h2{

font-size:clamp(2rem,9vw,2.5rem);

}

.lp-about-focus__content{

padding:22px;

}

.lp-about-focus__content h3{

font-size:1.25rem;

}

}







/*=========================================================
ABOUT — HOW WE WORK
=========================================================*/

.lp-about-process{

padding:clamp(62px,7vw,92px) 0;

background:#ffffff;

}

.lp-about-process__container{

width:min(1180px,calc(100% - 40px));

margin:auto;

}

.lp-about-process__header{

max-width:760px;

margin:0 auto 54px;

text-align:center;

}

.lp-about-process__header h2{

margin:14px 0;

font-size:clamp(2rem,3.4vw,3.15rem);

font-weight:800;

line-height:1.05;

letter-spacing:-.04em;

color:#061b33;

}

.lp-about-process__header p{

max-width:620px;

margin:auto;

font-size:.93rem;

line-height:1.7;

color:#677789;

}

.lp-about-process__timeline{

display:grid;

grid-template-columns:repeat(5,1fr);

gap:18px;

position:relative;

}

.lp-about-process__timeline::before{

content:"";

position:absolute;

left:10%;

right:10%;

top:26px;

height:2px;

background:#d9e5e9;

z-index:0;

}

.lp-about-process__timeline article{

position:relative;

z-index:1;

text-align:center;

}

.lp-about-process__number{

width:54px;

height:54px;

margin:auto;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:#049a9a;

color:#ffffff;

font-weight:800;

font-size:.8rem;

box-shadow:0 8px 20px rgba(4,154,154,.25);

}

.lp-about-process__timeline h3{

margin:20px 0 10px;

font-size:1rem;

font-weight:800;

line-height:1.35;

color:#061b33;

}

.lp-about-process__timeline p{

font-size:.78rem;

line-height:1.65;

color:#687789;

}

.lp-about-process__summary{

margin-top:52px;

padding:28px 34px;

border-radius:18px;

background:#061b33;

display:grid;

grid-template-columns:1fr auto;

gap:40px;

align-items:center;

}

.lp-about-process__summary span{

display:block;

color:#38cfd0;

font-size:.6rem;

font-weight:800;

letter-spacing:.14em;

text-transform:uppercase;

}

.lp-about-process__summary h3{

margin:8px 0 0;

font-size:1.6rem;

font-weight:800;

color:#ffffff;

}

.lp-about-process__summary p{

max-width:470px;

color:rgba(255,255,255,.75);

font-size:.84rem;

line-height:1.7;

margin:0;

}

@media(max-width:980px){

.lp-about-process__timeline{

grid-template-columns:1fr;

gap:24px;

}

.lp-about-process__timeline::before{

display:none;

}

.lp-about-process__timeline article{

display:grid;

grid-template-columns:60px 1fr;

gap:18px;

text-align:left;

align-items:flex-start;

}

.lp-about-process__timeline h3{

margin:0 0 8px;

}

.lp-about-process__summary{

grid-template-columns:1fr;

gap:18px;

}

}

@media(max-width:640px){

.lp-about-process{

padding:56px 0;

}

.lp-about-process__container{

width:calc(100% - 32px);

}

.lp-about-process__header{

margin-bottom:34px;

}

.lp-about-process__header h2{

font-size:clamp(2rem,9vw,2.5rem);

}

.lp-about-process__summary{

padding:22px;

}

.lp-about-process__summary h3{

font-size:1.3rem;

}

}







/* =========================================================
   ABOUT — TECHNOLOGY & STRATEGIC PARTNERSHIP
========================================================= */

.lp-about-partnership {
    padding: clamp(62px, 7vw, 92px) 0;
    background: #eef6f8;
}

.lp-about-partnership__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
    gap: clamp(36px, 6vw, 76px);
    align-items: center;
}

/* Media */

.lp-about-partnership__media {
    position: relative;
    padding: 0 38px 42px 0;
}

.lp-about-partnership__primary-image {
    position: relative;
    min-height: 490px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-about-partnership__primary-image img {
    width: 100%;
    height: 100%;
    min-height: 490px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-about-partnership__primary-image:hover img {
    transform: scale(1.03);
}

.lp-about-partnership__primary-image figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 18px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .84);
    backdrop-filter: blur(14px);
}

.lp-about-partnership__primary-image figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-about-partnership__primary-image figcaption strong {
    display: block;
    max-width: 430px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.55;
}

.lp-about-partnership__technical-card {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(245px, 52%);
    padding: 22px;
    border: 5px solid #eef6f8;
    border-radius: 19px;
    background: #061b33;
    box-shadow: 0 20px 45px rgba(6, 27, 51, .16);
}

.lp-about-partnership__technical-label {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-about-partnership__technical-card strong {
    display: block;
    margin-top: 10px;
    color: #ffffff;
    font-size: clamp(1.9rem, 3vw, 2.7rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.04em;
}

.lp-about-partnership__technical-card p {
    margin: 9px 0 0;
    color: rgba(255, 255, 255, .67);
    font-size: .7rem;
    line-height: 1.5;
}

/* Content */

.lp-about-partnership__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.044em;
    text-wrap: balance;
}

.lp-about-partnership__lead {
    max-width: 630px;
    margin: 19px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-about-partnership__content > p:not(.lp-about-partnership__lead) {
    max-width: 620px;
    margin: 15px 0 0;
    color: #69788a;
    font-size: .87rem;
    line-height: 1.68;
}

.lp-about-partnership__features {
    display: grid;
    gap: 9px;
    margin-top: 27px;
}

.lp-about-partnership__features article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 13px;
    padding: 17px 18px;
    border: 1px solid #d6e3e7;
    border-radius: 15px;
    background: rgba(255, 255, 255, .74);
}

.lp-about-partnership__features article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-about-partnership__features h3 {
    margin: 0;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-about-partnership__features p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.55;
}

.lp-about-partnership__link {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 24px;
    padding: 12px 19px;
    border-radius: 999px;
    background: #061b33;
    color: #ffffff;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease;
}

.lp-about-partnership__link:hover {
    transform: translateY(-2px);
    background: #049a9a;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-about-partnership__container {
        grid-template-columns: 1fr;
    }

    .lp-about-partnership__media {
        order: 2;
        max-width: 720px;
        padding-right: 34px;
    }

    .lp-about-partnership__content {
        order: 1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-about-partnership {
        padding: 56px 0;
    }

    .lp-about-partnership__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-about-partnership__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-about-partnership__lead {
        font-size: .91rem;
    }

    .lp-about-partnership__media {
        padding: 0 0 94px;
    }

    .lp-about-partnership__primary-image {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-about-partnership__primary-image img {
        height: 100%;
        min-height: 0;
    }

    .lp-about-partnership__primary-image figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-about-partnership__technical-card {
        right: 12px;
        bottom: 0;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-about-partnership__features article {
        padding: 16px;
    }

    .lp-about-partnership__link {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-about-partnership__primary-image img,
    .lp-about-partnership__link {
        transition: none;
    }
}





/*=========================================================
ABOUT — EVIDENCE-LED DELIVERY
=========================================================*/

.lp-about-evidence{
padding:clamp(64px,7vw,94px) 0;
background:#ffffff;
}

.lp-about-evidence__container{
width:min(1180px,calc(100% - 40px));
margin:auto;
}

.lp-about-evidence__header{
display:grid;
grid-template-columns:minmax(0,1fr) 360px;
gap:60px;
align-items:end;
margin-bottom:36px;
}

.lp-about-evidence__header h2{
margin:14px 0 0;
font-size:clamp(2rem,3.4vw,3.2rem);
font-weight:800;
line-height:1.04;
letter-spacing:-.04em;
color:#061b33;
max-width:700px;
}

.lp-about-evidence__header p{
margin:0;
font-size:.9rem;
line-height:1.7;
color:#687789;
}

.lp-about-evidence__layout{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:24px;
align-items:start;
}

/* Gallery */

.lp-about-evidence__gallery{
display:grid;
grid-template-columns:2fr 1fr;
grid-template-rows:220px 220px;
gap:12px;
}

.lp-about-evidence__gallery figure{
margin:0;
overflow:hidden;
border-radius:18px;
}

.lp-about-evidence__gallery-main{
grid-row:1 / span 2;
}

.lp-about-evidence__gallery img{
width:100%;
height:100%;
object-fit:cover;
transition:transform .6s ease;
}

.lp-about-evidence__gallery figure:hover img{
transform:scale(1.05);
}

/* Cards */

.lp-about-evidence__cards{
display:grid;
gap:10px;
}

.lp-about-evidence__cards article{
display:grid;
grid-template-columns:34px 1fr;
gap:14px;
padding:18px;
background:#f7fafb;
border:1px solid #dce7ea;
border-radius:16px;
}

.lp-about-evidence__cards span{
padding-top:3px;
font-size:.65rem;
font-weight:800;
letter-spacing:.1em;
color:#049a9a;
}

.lp-about-evidence__cards h3{
margin:0;
font-size:.9rem;
font-weight:800;
color:#061b33;
}

.lp-about-evidence__cards p{
margin:7px 0 0;
font-size:.77rem;
line-height:1.6;
color:#687789;
}

.lp-about-evidence__cta{
display:flex;
justify-content:space-between;
align-items:center;
gap:24px;
margin-top:18px;
padding:24px;
background:#061b33;
border-radius:18px;
}

.lp-about-evidence__cta small{
display:block;
color:#38cfd0;
font-size:.58rem;
letter-spacing:.14em;
font-weight:800;
text-transform:uppercase;
}

.lp-about-evidence__cta strong{
display:block;
margin-top:7px;
font-size:1.25rem;
line-height:1.3;
font-weight:800;
color:#ffffff;
max-width:380px;
}

.lp-about-evidence__cta a{
display:inline-flex;
align-items:center;
justify-content:center;
padding:13px 22px;
border-radius:999px;
background:#d6ad45;
color:#061b33;
text-decoration:none;
font-size:.78rem;
font-weight:800;
white-space:nowrap;
transition:.25s;
}

.lp-about-evidence__cta a:hover{
transform:translateY(-2px);
background:#e3bb58;
}

/* Tablet */

@media(max-width:900px){

.lp-about-evidence__header,
.lp-about-evidence__layout{
grid-template-columns:1fr;
gap:24px;
}

.lp-about-evidence__gallery{
grid-template-columns:1fr 1fr;
grid-template-rows:240px 180px;
}

.lp-about-evidence__gallery-main{
grid-column:1 / span 2;
grid-row:auto;
}

.lp-about-evidence__cta{
flex-direction:column;
align-items:flex-start;
}

}

/* Mobile */

@media(max-width:640px){

.lp-about-evidence{
padding:56px 0;
}

.lp-about-evidence__container{
width:calc(100% - 32px);
}

.lp-about-evidence__header{
margin-bottom:26px;
}

.lp-about-evidence__header h2{
font-size:clamp(2rem,9vw,2.5rem);
}

.lp-about-evidence__gallery{
grid-template-columns:1fr;
grid-template-rows:auto;
}

.lp-about-evidence__gallery-main{
grid-column:auto;
}

.lp-about-evidence__gallery figure{
aspect-ratio:16/10;
}

.lp-about-evidence__cta{
padding:22px;
}

.lp-about-evidence__cta a{
width:100%;
}

}









/*=========================================================
ABOUT — ENVIRONMENTAL RESPONSIBILITY
=========================================================*/

.lp-about-responsibility{
padding:clamp(64px,7vw,94px) 0;
background:#eef6f8;
}

.lp-about-responsibility__container{
width:min(1180px,calc(100% - 40px));
margin:auto;
display:grid;
grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
gap:clamp(36px,6vw,74px);
align-items:center;
}

.lp-about-responsibility__content h2{
margin:14px 0 0;
max-width:720px;
font-size:clamp(2rem,3.45vw,3.15rem);
font-weight:800;
line-height:1.05;
letter-spacing:-.045em;
color:#061b33;
text-wrap:balance;
}

.lp-about-responsibility__lead{
margin-top:20px;
max-width:620px;
font-size:.96rem;
line-height:1.72;
color:#465d70;
}

.lp-about-responsibility__principles{
display:grid;
gap:12px;
margin-top:30px;
}

.lp-about-responsibility__principles article{
display:grid;
grid-template-columns:54px 1fr;
gap:18px;
padding:18px;
background:#ffffff;
border:1px solid #dce7ea;
border-radius:18px;
}

.lp-about-responsibility__icon{
width:54px;
height:54px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#e7f7f7;
font-size:1.15rem;
}

.lp-about-responsibility__principles h3{
margin:0;
font-size:.95rem;
font-weight:800;
color:#061b33;
}

.lp-about-responsibility__principles p{
margin:8px 0 0;
font-size:.79rem;
line-height:1.65;
color:#687789;
}

.lp-about-responsibility__visual{
position:relative;
margin:0;
overflow:hidden;
border-radius:22px;
aspect-ratio:4/5;
background:#d8e6ea;
}

.lp-about-responsibility__visual img{
width:100%;
height:100%;
object-fit:cover;
transition:transform .6s ease;
}

.lp-about-responsibility__visual:hover img{
transform:scale(1.04);
}

.lp-about-responsibility__quote{
position:absolute;
left:20px;
right:20px;
bottom:20px;
padding:22px;
background:rgba(6,27,51,.86);
backdrop-filter:blur(14px);
border-radius:18px;
}

.lp-about-responsibility__quote span{
display:block;
font-size:.58rem;
font-weight:800;
letter-spacing:.15em;
color:#38cfd0;
text-transform:uppercase;
}

.lp-about-responsibility__quote blockquote{
margin:10px 0 0;
font-size:1.15rem;
font-weight:700;
line-height:1.55;
color:#ffffff;
}

@media(max-width:900px){

.lp-about-responsibility__container{
grid-template-columns:1fr;
}

.lp-about-responsibility__visual{
order:-1;
aspect-ratio:16/10;
}

}

@media(max-width:640px){

.lp-about-responsibility{
padding:56px 0;
}

.lp-about-responsibility__container{
width:calc(100% - 32px);
}

.lp-about-responsibility__content h2{
font-size:clamp(2rem,9vw,2.5rem);
}

.lp-about-responsibility__lead{
font-size:.91rem;
}

.lp-about-responsibility__principles article{
padding:16px;
grid-template-columns:46px 1fr;
gap:14px;
}

.lp-about-responsibility__icon{
width:46px;
height:46px;
font-size:1rem;
}

.lp-about-responsibility__quote{
left:12px;
right:12px;
bottom:12px;
padding:18px;
}

.lp-about-responsibility__quote blockquote{
font-size:1rem;
}

}








/*=========================================================
ABOUT — CLOSING
=========================================================*/

.lp-about-closing{

padding:clamp(72px,8vw,110px) 0;

background:
linear-gradient(
135deg,
#061b33 0%,
#0b3052 100%
);

position:relative;

overflow:hidden;

}

.lp-about-closing::before{

content:"";

position:absolute;

width:620px;

height:620px;

right:-220px;

top:-220px;

border-radius:50%;

background:rgba(255,255,255,.04);

}

.lp-about-closing::after{

content:"";

position:absolute;

width:420px;

height:420px;

left:-120px;

bottom:-180px;

border-radius:50%;

background:rgba(56,207,208,.05);

}

.lp-about-closing__container{

position:relative;

z-index:2;

width:min(1080px,calc(100% - 40px));

margin:auto;

text-align:center;

}

.lp-about-closing .lp-tech-section-label{

color:#38cfd0;

}

.lp-about-closing h2{

margin:16px auto 0;

max-width:860px;

font-size:clamp(2.4rem,4vw,4rem);

font-weight:800;

line-height:1.05;

letter-spacing:-.045em;

color:#ffffff;

text-wrap:balance;

}

.lp-about-closing__lead{

margin:24px auto 0;

max-width:760px;

font-size:1rem;

line-height:1.8;

color:rgba(255,255,255,.78);

}

.lp-about-closing__pillars{

margin-top:52px;

display:grid;

grid-template-columns:repeat(3,1fr);

gap:18px;

}

.lp-about-closing__pillars article{

padding:28px;

border:1px solid rgba(255,255,255,.08);

border-radius:20px;

background:rgba(255,255,255,.05);

backdrop-filter:blur(14px);

}

.lp-about-closing__pillars strong{

display:block;

color:#ffffff;

font-size:1rem;

font-weight:700;

}

.lp-about-closing__pillars span{

display:block;

margin-top:12px;

font-size:.83rem;

line-height:1.7;

color:rgba(255,255,255,.72);

}

.lp-about-closing__actions{

display:flex;

justify-content:center;

gap:18px;

margin-top:46px;

flex-wrap:wrap;

}

.lp-btn{

display:inline-flex;

align-items:center;

justify-content:center;

min-width:190px;

padding:15px 28px;

border-radius:999px;

font-size:.82rem;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.lp-btn--primary{

background:#d6ad45;

color:#061b33;

}

.lp-btn--primary:hover{

background:#e5bb53;

transform:translateY(-3px);

}

.lp-btn--secondary{

border:1px solid rgba(255,255,255,.22);

color:#ffffff;

background:transparent;

}

.lp-btn--secondary:hover{

background:rgba(255,255,255,.08);

transform:translateY(-3px);

}

@media(max-width:900px){

.lp-about-closing__pillars{

grid-template-columns:1fr;

}

}

@media(max-width:640px){

.lp-about-closing{

padding:60px 0;

}

.lp-about-closing__container{

width:calc(100% - 32px);

}

.lp-about-closing h2{

font-size:clamp(2rem,9vw,2.8rem);

}

.lp-about-closing__lead{

font-size:.92rem;

}

.lp-about-closing__actions{

flex-direction:column;

}

.lp-btn{

width:100%;

}

}








/* =========================================================
   SOLUTIONS — OVERVIEW
========================================================= */

.lp-solutions-overview {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-solutions-overview__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: clamp(40px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-solutions-overview__content h2 {
    max-width: 690px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-overview__lead {
    max-width: 620px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-solutions-overview__content > p:not(.lp-solutions-overview__lead) {
    max-width: 620px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Criteria */

.lp-solutions-overview__criteria {
    display: grid;
    gap: 10px;
    margin-top: 28px;
}

.lp-solutions-overview__criteria article {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 14px;
    padding: 17px 18px;
    border: 1px solid #dce7ea;
    border-radius: 15px;
    background: #f8fbfc;
}

.lp-solutions-overview__criteria article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-solutions-overview__criteria h3 {
    margin: 0;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-solutions-overview__criteria p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.58;
}

/* Visual */

.lp-solutions-overview__visual {
    position: relative;
    padding: 0 0 54px 42px;
}

.lp-solutions-overview__visual figure {
    position: relative;
    min-height: 530px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-solutions-overview__visual img {
    width: 100%;
    height: 100%;
    min-height: 530px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.lp-solutions-overview__visual figure:hover img {
    transform: scale(1.035);
}

.lp-solutions-overview__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 20px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-solutions-overview__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-overview__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Pathway card */

.lp-solutions-overview__pathways {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(300px, 64%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 19px;
    background: #061b33;
    box-shadow: 0 20px 45px rgba(6, 27, 51, .16);
}

.lp-solutions-overview__pathway-label {
    display: block;
    margin-bottom: 14px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-overview__pathways div {
    padding: 11px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-solutions-overview__pathways div:first-of-type {
    border-top: 0;
    padding-top: 0;
}

.lp-solutions-overview__pathways div:last-of-type {
    padding-bottom: 0;
}

.lp-solutions-overview__pathways strong {
    display: block;
    color: #ffffff;
    font-size: .84rem;
    font-weight: 800;
}

.lp-solutions-overview__pathways small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .67rem;
    line-height: 1.45;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-solutions-overview__container {
        grid-template-columns: 1fr;
    }

    .lp-solutions-overview__visual {
        max-width: 760px;
        padding-left: 36px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-overview {
        padding: 56px 0;
    }

    .lp-solutions-overview__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-solutions-overview__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solutions-overview__lead {
        font-size: .91rem;
    }

    .lp-solutions-overview__criteria article {
        grid-template-columns: 32px 1fr;
        padding: 16px;
    }

    .lp-solutions-overview__visual {
        padding: 0 0 128px;
    }

    .lp-solutions-overview__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-solutions-overview__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-solutions-overview__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-solutions-overview__pathways {
        left: 12px;
        bottom: 0;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-overview__visual img {
        transition: none;
    }
}








/* =========================================================
   SOLUTIONS — CORE SOLUTION PATHWAYS
========================================================= */

.lp-solutions-pathways {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-solutions-pathways__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-solutions-pathways__header {
    max-width: 760px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-solutions-pathways__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-pathways__header p {
    max-width: 620px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Grid */

.lp-solutions-pathways__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

/* Card */

.lp-solutions-pathway-card {
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 22px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-solutions-pathway-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 48px rgba(6, 27, 51, .09);
}

/* Media */

.lp-solutions-pathway-card__media {
    position: relative;
    display: block;
    min-height: 330px;
    overflow: hidden;
    background: #dce8ec;
}

.lp-solutions-pathway-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 45%,
            rgba(6, 27, 51, .5) 100%
        );
    pointer-events: none;
}

.lp-solutions-pathway-card__media img {
    width: 100%;
    height: 100%;
    min-height: 330px;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-solutions-pathway-card:hover
.lp-solutions-pathway-card__media img {
    transform: scale(1.045);
}

.lp-solutions-pathway-card__number {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 2;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    background: rgba(6, 27, 51, .76);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
}

/* Content */

.lp-solutions-pathway-card__content {
    padding: 28px;
}

.lp-solutions-pathway-card__label {
    display: block;
    color: #049a9a;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-pathway-card__content h3 {
    margin: 10px 0 0;
    color: #061b33;
    font-size: clamp(1.45rem, 2.2vw, 1.9rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.025em;
}

.lp-solutions-pathway-card__content > p {
    margin: 14px 0 0;
    color: #687789;
    font-size: .84rem;
    line-height: 1.7;
}

/* Outcome tags */

.lp-solutions-pathway-card__outcomes {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 20px;
}

.lp-solutions-pathway-card__outcomes span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 7px 11px;
    border: 1px solid #dbe6ea;
    border-radius: 999px;
    background: #f7fafb;
    color: #4e6274;
    font-size: .65rem;
    font-weight: 700;
}

/* Link */

.lp-solutions-pathway-card__link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 23px;
    color: #061b33;
    font-size: .75rem;
    font-weight: 800;
    text-decoration: none;
}

.lp-solutions-pathway-card__link span {
    color: #049a9a;
    transition: transform .25s ease;
}

.lp-solutions-pathway-card__link:hover span {
    transform: translateX(4px);
}

/* Connection note */

.lp-solutions-pathways__connection {
    max-width: 850px;
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 18px;
    align-items: center;
    margin: 34px auto 0;
    padding: 20px 24px;
    border: 1px solid #d4e2e6;
    border-radius: 17px;
    background: rgba(255, 255, 255, .7);
}

.lp-solutions-pathways__connection-line {
    position: relative;
    width: 54px;
    height: 2px;
    background: #049a9a;
}

.lp-solutions-pathways__connection-line::before,
.lp-solutions-pathways__connection-line::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #049a9a;
    transform: translateY(-50%);
}

.lp-solutions-pathways__connection-line::before {
    left: 0;
}

.lp-solutions-pathways__connection-line::after {
    right: 0;
}

.lp-solutions-pathways__connection p {
    margin: 0;
    color: #566b7d;
    font-size: .79rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-solutions-pathways__grid {
        grid-template-columns: 1fr;
    }

    .lp-solutions-pathway-card__media {
        min-height: 360px;
    }

    .lp-solutions-pathway-card__media img {
        min-height: 360px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-pathways {
        padding: 56px 0;
    }

    .lp-solutions-pathways__container {
        width: calc(100% - 32px);
    }

    .lp-solutions-pathways__header {
        margin-bottom: 28px;
    }

    .lp-solutions-pathways__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solutions-pathway-card__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-solutions-pathway-card__media img {
        height: 100%;
        min-height: 0;
    }

    .lp-solutions-pathway-card__content {
        padding: 22px;
    }

    .lp-solutions-pathways__connection {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-pathway-card,
    .lp-solutions-pathway-card__media img,
    .lp-solutions-pathway-card__link span {
        transition: none;
    }
}








/* =========================================================
   SOLUTIONS — INTEGRATED WATER PATHWAY
========================================================= */

.lp-solutions-flow {
    padding: clamp(64px, 7vw, 94px) 0;
    overflow: hidden;
    background: #ffffff;
}

.lp-solutions-flow__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-solutions-flow__header {
    max-width: 790px;
    margin: 0 auto 46px;
    text-align: center;
}

.lp-solutions-flow__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-flow__header p {
    max-width: 610px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Treatment diagram */

.lp-solutions-flow__diagram {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr) 42px
        minmax(0, 1fr) 42px
        minmax(0, 1fr) 42px
        minmax(0, 1fr) 42px
        minmax(0, 1fr);
    align-items: center;
}

.lp-solutions-flow__step {
    position: relative;
    min-height: 260px;
    padding: 26px 20px 22px;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f7fafb;
    text-align: center;
}

.lp-solutions-flow__number {
    position: absolute;
    top: 14px;
    right: 14px;
    color: #91a1ae;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-solutions-flow__icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin: 4px auto 20px;
    border-radius: 50%;
    background: #e6f6f6;
}

.lp-solutions-flow__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-solutions-flow__step h3 {
    margin: 0;
    color: #061b33;
    font-size: .95rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-solutions-flow__step p {
    margin: 10px 0 0;
    color: #687789;
    font-size: .73rem;
    line-height: 1.62;
}

.lp-solutions-flow__connector {
    position: relative;
    width: 100%;
    height: 2px;
    background: #b9d9dc;
}

.lp-solutions-flow__connector::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -1px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #049a9a;
    border-right: 2px solid #049a9a;
    transform: translateY(-50%) rotate(45deg);
}

/* Outcomes */

.lp-solutions-flow__outcomes {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 72px;
}

.lp-solutions-flow__split {
    position: absolute;
    top: -72px;
    left: 50%;
    width: 50%;
    height: 72px;
    transform: translateX(-50%);
    pointer-events: none;
}

.lp-solutions-flow__split::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 36px;
    background: #b9d9dc;
    transform: translateX(-50%);
}

.lp-solutions-flow__split::after {
    content: "";
    position: absolute;
    top: 36px;
    left: 0;
    right: 0;
    height: 2px;
    background: #b9d9dc;
}

.lp-solutions-flow__split span::before,
.lp-solutions-flow__split span::after {
    content: "";
    position: absolute;
    top: 36px;
    width: 2px;
    height: 36px;
    background: #b9d9dc;
}

.lp-solutions-flow__split span::before {
    left: 0;
}

.lp-solutions-flow__split span::after {
    right: 0;
}

.lp-solutions-flow__outcomes article {
    padding: 29px;
    border-radius: 19px;
    background: #061b33;
}

.lp-solutions-flow__outcomes article:last-child {
    background: #0d7f82;
}

.lp-solutions-flow__outcome-label {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-flow__outcomes article:last-child
.lp-solutions-flow__outcome-label {
    color: #c8ffff;
}

.lp-solutions-flow__outcomes h3 {
    margin: 9px 0 0;
    color: #ffffff;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.25;
}

.lp-solutions-flow__outcomes p {
    max-width: 470px;
    margin: 12px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .8rem;
    line-height: 1.65;
}

.lp-solutions-flow__outcomes a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 20px;
    color: #ffffff;
    font-size: .72rem;
    font-weight: 800;
    text-decoration: none;
}

.lp-solutions-flow__outcomes a span {
    transition: transform .25s ease;
}

.lp-solutions-flow__outcomes a:hover span {
    transform: translateX(4px);
}

/* Tablet */

@media (max-width: 1000px) {
    .lp-solutions-flow__diagram {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .lp-solutions-flow__step {
        min-height: 0;
        display: grid;
        grid-template-columns: 58px 1fr;
        column-gap: 18px;
        padding: 20px;
        text-align: left;
    }

    .lp-solutions-flow__number {
        top: 12px;
        right: 14px;
    }

    .lp-solutions-flow__icon {
        grid-row: 1 / span 2;
        margin: 0;
    }

    .lp-solutions-flow__step h3 {
        padding-right: 35px;
    }

    .lp-solutions-flow__step p {
        margin-top: 7px;
    }

    .lp-solutions-flow__connector {
        width: 2px;
        height: 26px;
        margin: -6px auto;
    }

    .lp-solutions-flow__connector::after {
        top: auto;
        right: 50%;
        bottom: 0;
        transform: translateX(50%) rotate(135deg);
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-flow {
        padding: 56px 0;
    }

    .lp-solutions-flow__container {
        width: calc(100% - 32px);
    }

    .lp-solutions-flow__header {
        margin-bottom: 30px;
    }

    .lp-solutions-flow__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solutions-flow__step {
        grid-template-columns: 48px 1fr;
        gap: 14px;
        padding: 17px;
    }

    .lp-solutions-flow__icon {
        width: 48px;
        height: 48px;
    }

    .lp-solutions-flow__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-solutions-flow__outcomes {
        grid-template-columns: 1fr;
        margin-top: 32px;
    }

    .lp-solutions-flow__split {
        display: none;
    }

    .lp-solutions-flow__outcomes article {
        padding: 23px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-flow__outcomes a span {
        transition: none;
    }
}







/* =========================================================
   SOLUTIONS — SOLUTION SELECTION
========================================================= */

.lp-solution-selection {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-solution-selection__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-solution-selection__header {
    max-width: 780px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-solution-selection__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solution-selection__header p {
    max-width: 650px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Grid */

.lp-solution-selection__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.lp-solution-selection__card {
    position: relative;
    min-height: 280px;
    padding: 25px 22px;
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 19px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-solution-selection__card::after {
    content: "";
    position: absolute;
    right: -50px;
    bottom: -70px;
    width: 145px;
    height: 145px;
    border-radius: 50%;
    background: rgba(4, 154, 154, .045);
    pointer-events: none;
}

.lp-solution-selection__card:hover {
    transform: translateY(-5px);
    border-color: #c7dde0;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .08);
}

.lp-solution-selection__number {
    position: absolute;
    top: 17px;
    right: 18px;
    color: #96a6b2;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .12em;
}

/* Icons */

.lp-solution-selection__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    margin-bottom: 25px;
    border-radius: 50%;
    background: #e8f7f7;
}

.lp-solution-selection__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Card copy */

.lp-solution-selection__card h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-solution-selection__card p {
    margin: 11px 0 0;
    color: #687789;
    font-size: .76rem;
    line-height: 1.65;
}

/* Closing statement */

.lp-solution-selection__statement {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
    gap: 42px;
    align-items: center;
    margin-top: 28px;
    padding: 27px 30px;
    border-radius: 18px;
    background: #061b33;
}

.lp-solution-selection__statement span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solution-selection__statement strong {
    display: block;
    max-width: 620px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-solution-selection__statement p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .79rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 980px) {
    .lp-solution-selection__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-solution-selection__statement {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solution-selection {
        padding: 56px 0;
    }

    .lp-solution-selection__container {
        width: calc(100% - 32px);
    }

    .lp-solution-selection__header {
        margin-bottom: 28px;
    }

    .lp-solution-selection__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solution-selection__grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .lp-solution-selection__card {
        min-height: 0;
        padding: 21px;
    }

    .lp-solution-selection__icon {
        width: 50px;
        height: 50px;
        margin-bottom: 18px;
    }

    .lp-solution-selection__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-solution-selection__statement {
        margin-top: 20px;
        padding: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solution-selection__card {
        transition: none;
    }
}







/* =========================================================
   SOLUTIONS — TREATMENT OUTCOMES
========================================================= */

.lp-solutions-value {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-solutions-value__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-solutions-value__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .62fr);
    gap: clamp(34px, 6vw, 74px);
    align-items: end;
    margin-bottom: 38px;
}

.lp-solutions-value__header h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-value__header > p {
    margin: 0;
    color: #687789;
    font-size: .88rem;
    line-height: 1.7;
}

/* Grid */

.lp-solutions-value__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

/* Card */

.lp-solutions-value__card {
    overflow: hidden;
    border: 1px solid #dce7ea;
    border-radius: 20px;
    background: #f8fbfc;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-solutions-value__card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 44px rgba(6, 27, 51, .08);
}

/* Media */

.lp-solutions-value__media {
    position: relative;
    aspect-ratio: 16 / 11;
    margin: 0;
    overflow: hidden;
    background: #dce8ec;
}

.lp-solutions-value__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 50%,
            rgba(6, 27, 51, .42) 100%
        );
    pointer-events: none;
}

.lp-solutions-value__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-solutions-value__card:hover
.lp-solutions-value__media img {
    transform: scale(1.045);
}

.lp-solutions-value__number {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 2;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    background: rgba(6, 27, 51, .78);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .08em;
}

/* Content */

.lp-solutions-value__content {
    padding: 24px;
}

.lp-solutions-value__label {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-value__content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-solutions-value__content p {
    margin: 12px 0 0;
    color: #687789;
    font-size: .78rem;
    line-height: 1.65;
}

/* Qualification note */

.lp-solutions-value__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 26px;
    padding: 19px 22px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #eef6f8;
}

.lp-solutions-value__note span {
    color: #061b33;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-solutions-value__note p {
    margin: 0;
    color: #5d7182;
    font-size: .76rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-solutions-value__header {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-solutions-value__grid {
        grid-template-columns: 1fr;
    }

    .lp-solutions-value__card {
        display: grid;
        grid-template-columns: minmax(260px, .85fr) 1fr;
    }

    .lp-solutions-value__media {
        height: 100%;
        aspect-ratio: auto;
        min-height: 260px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-value {
        padding: 56px 0;
    }

    .lp-solutions-value__container {
        width: calc(100% - 32px);
    }

    .lp-solutions-value__header {
        margin-bottom: 28px;
    }

    .lp-solutions-value__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solutions-value__card {
        display: block;
    }

    .lp-solutions-value__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-solutions-value__content {
        padding: 21px;
    }

    .lp-solutions-value__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 18px;
    }

    .lp-solutions-value__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-value__card,
    .lp-solutions-value__media img {
        transition: none;
    }
}






/* =========================================================
   SOLUTIONS — FIELD-PROVEN PERFORMANCE
========================================================= */

.lp-solutions-proof {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-solutions-proof__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: clamp(40px, 6vw, 76px);
    align-items: center;
}

/* Visual */

.lp-solutions-proof__visual {
    position: relative;
    padding: 0 44px 46px 0;
}

.lp-solutions-proof__visual figure {
    position: relative;
    min-height: 510px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-solutions-proof__visual img {
    width: 100%;
    height: 100%;
    min-height: 510px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-solutions-proof__visual figure:hover img {
    transform: scale(1.035);
}

.lp-solutions-proof__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-solutions-proof__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-proof__visual figcaption strong {
    display: block;
    max-width: 450px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.55;
}

.lp-solutions-proof__status {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(270px, 58%);
    padding: 21px;
    border: 5px solid #eef6f8;
    border-radius: 19px;
    background: #061b33;
    box-shadow: 0 20px 45px rgba(6, 27, 51, .16);
}

.lp-solutions-proof__status span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-solutions-proof__status strong {
    display: block;
    margin-top: 9px;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 800;
    line-height: 1.4;
}

/* Content */

.lp-solutions-proof__content h2 {
    max-width: 680px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-proof__lead {
    max-width: 610px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-solutions-proof__content > p:not(.lp-solutions-proof__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Evidence items */

.lp-solutions-proof__metrics {
    display: grid;
    gap: 10px;
    margin-top: 28px;
}

.lp-solutions-proof__metrics article {
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: 14px;
    padding: 16px 18px;
    border: 1px solid #d8e4e8;
    border-radius: 15px;
    background: rgba(255, 255, 255, .78);
}

.lp-solutions-proof__metrics article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-solutions-proof__metrics h3 {
    margin: 0;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-solutions-proof__metrics p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.56;
}

/* CTA link */

.lp-solutions-proof__link {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 24px;
    padding: 12px 19px;
    border-radius: 999px;
    background: #061b33;
    color: #ffffff;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease;
}

.lp-solutions-proof__link:hover {
    transform: translateY(-2px);
    background: #049a9a;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-solutions-proof__container {
        grid-template-columns: 1fr;
    }

    .lp-solutions-proof__visual {
        order: 2;
        max-width: 760px;
        padding-right: 38px;
    }

    .lp-solutions-proof__content {
        order: 1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-proof {
        padding: 56px 0;
    }

    .lp-solutions-proof__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-solutions-proof__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-solutions-proof__lead {
        font-size: .91rem;
    }

    .lp-solutions-proof__visual {
        padding: 0 0 104px;
    }

    .lp-solutions-proof__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-solutions-proof__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-solutions-proof__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-solutions-proof__status {
        right: 12px;
        bottom: 0;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-solutions-proof__link {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-proof__visual img,
    .lp-solutions-proof__link {
        transition: none;
    }
}








/* =========================================================
   SOLUTIONS — CLOSING CTA
========================================================= */

.lp-solutions-closing {
    position: relative;
    padding: clamp(66px, 7vw, 92px) 0;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #061b33 0%,
            #0a3454 100%
        );
}

.lp-solutions-closing::before {
    content: "";
    position: absolute;
    top: -240px;
    right: -170px;
    width: 540px;
    height: 540px;
    border-radius: 50%;
    background: rgba(56, 207, 208, .06);
}

.lp-solutions-closing::after {
    content: "";
    position: absolute;
    bottom: -210px;
    left: -160px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .035);
}

.lp-solutions-closing__container {
    position: relative;
    z-index: 2;
    width: min(1120px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(36px, 6vw, 80px);
    align-items: center;
}

/* Content */

.lp-solutions-closing__label {
    display: block;
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-solutions-closing__content h2 {
    max-width: 760px;
    margin: 13px 0 0;
    color: #ffffff;
    font-size: clamp(2rem, 3.7vw, 3.45rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-solutions-closing__content p {
    max-width: 700px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .9rem;
    line-height: 1.72;
}

/* Actions */

.lp-solutions-closing__actions {
    min-width: 230px;
    display: grid;
    gap: 11px;
}

.lp-solutions-closing__button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 22px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.lp-solutions-closing__button--primary {
    background: #d6ad45;
    color: #061b33;
}

.lp-solutions-closing__button--primary:hover {
    transform: translateY(-2px);
    background: #e2ba56;
}

.lp-solutions-closing__button--primary span {
    transition: transform .25s ease;
}

.lp-solutions-closing__button--primary:hover span {
    transform: translateX(4px);
}

.lp-solutions-closing__button--secondary {
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .04);
    color: #ffffff;
}

.lp-solutions-closing__button--secondary:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .09);
}

/* Tablet */

@media (max-width: 820px) {
    .lp-solutions-closing__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-solutions-closing__actions {
        min-width: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-solutions-closing {
        padding: 58px 0;
    }

    .lp-solutions-closing__container {
        width: calc(100% - 32px);
    }

    .lp-solutions-closing__content h2 {
        font-size: clamp(2rem, 9vw, 2.65rem);
    }

    .lp-solutions-closing__content p {
        font-size: .86rem;
    }

    .lp-solutions-closing__actions {
        grid-template-columns: 1fr;
    }

    .lp-solutions-closing__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-solutions-closing__button,
    .lp-solutions-closing__button--primary span {
        transition: none;
    }
}







/* =========================================================
   PRODUCED WATER TREATMENT — UNDERSTANDING PRODUCED WATER
========================================================= */

.lp-pwt-challenge {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-pwt-challenge__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-pwt-challenge__content h2 {
    max-width: 700px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-challenge__lead {
    max-width: 630px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-pwt-challenge__content > p:not(.lp-pwt-challenge__lead) {
    max-width: 620px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Engineering statement */

.lp-pwt-challenge__statement {
    margin-top: 28px;
    padding: 23px 24px;
    border-left: 3px solid #049a9a;
    border-radius: 0 16px 16px 0;
    background: #eef6f8;
}

.lp-pwt-challenge__statement > span {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-challenge__statement strong {
    display: block;
    margin-top: 8px;
    color: #061b33;
    font-size: 1.13rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-pwt-challenge__statement p {
    margin: 8px 0 0;
    color: #637687;
    font-size: .76rem;
    line-height: 1.62;
}

/* Visual */

.lp-pwt-challenge__visual {
    position: relative;
    padding: 0 0 118px 42px;
}

.lp-pwt-challenge__visual figure {
    position: relative;
    min-height: 530px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-challenge__visual img {
    width: 100%;
    height: 100%;
    min-height: 530px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-challenge__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-challenge__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-challenge__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-challenge__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Contaminant profile */

.lp-pwt-challenge__profile {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(430px, 78%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-challenge__profile-label {
    display: block;
    margin-bottom: 14px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-challenge__profile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 16px;
}

.lp-pwt-challenge__profile article {
    display: grid;
    grid-template-columns: 25px 1fr;
    gap: 8px;
    align-items: start;
    padding-top: 9px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-challenge__profile article:nth-child(-n + 2) {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-challenge__profile article span {
    color: #38cfd0;
    font-size: .54rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-pwt-challenge__profile article strong {
    color: rgba(255, 255, 255, .86);
    font-size: .68rem;
    font-weight: 700;
    line-height: 1.45;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-challenge__container {
        grid-template-columns: 1fr;
    }

    .lp-pwt-challenge__visual {
        max-width: 760px;
        padding-left: 36px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-challenge {
        padding: 56px 0;
    }

    .lp-pwt-challenge__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-pwt-challenge__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-challenge__lead {
        font-size: .91rem;
    }

    .lp-pwt-challenge__statement {
        padding: 19px;
    }

    .lp-pwt-challenge__visual {
        padding: 0 0 205px;
    }

    .lp-pwt-challenge__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-challenge__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-challenge__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-challenge__profile {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-challenge__profile-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .lp-pwt-challenge__profile article:nth-child(2) {
        padding-top: 9px;
        border-top: 1px solid rgba(255, 255, 255, .1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-challenge__visual img {
        transition: none;
    }
}






/* =========================================================
   PRODUCED WATER TREATMENT — TREATMENT OBJECTIVES
========================================================= */

.lp-pwt-objectives {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-pwt-objectives__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-pwt-objectives__header {
    max-width: 790px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-pwt-objectives__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-objectives__header p {
    max-width: 620px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Objective matrix */

.lp-pwt-objectives__matrix {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.lp-pwt-objectives__item {
    position: relative;
    min-height: 270px;
    padding: 24px 22px;
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 19px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-pwt-objectives__item::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -65px;
    width: 135px;
    height: 135px;
    border-radius: 50%;
    background: rgba(4, 154, 154, .045);
    pointer-events: none;
}

.lp-pwt-objectives__item:hover {
    transform: translateY(-5px);
    border-color: #c8dde1;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .08);
}

.lp-pwt-objectives__number {
    position: absolute;
    top: 17px;
    right: 18px;
    color: #96a6b2;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .12em;
}

/* Icons */

.lp-pwt-objectives__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    margin-bottom: 24px;
    border-radius: 50%;
    background: #e8f7f7;
}

.lp-pwt-objectives__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Card text */

.lp-pwt-objectives__item h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-objectives__item p {
    margin: 11px 0 0;
    color: #687789;
    font-size: .76rem;
    line-height: 1.65;
}

/* Water pathways */

.lp-pwt-objectives__pathways {
    display: grid;
    grid-template-columns: 1.05fr repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.lp-pwt-objectives__pathways-intro,
.lp-pwt-objectives__pathways article {
    padding: 24px;
    border-radius: 18px;
}

.lp-pwt-objectives__pathways-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #061b33;
}

.lp-pwt-objectives__pathways-intro > span {
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-objectives__pathways-intro h3 {
    margin: 9px 0 0;
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-pwt-objectives__pathways article {
    border: 1px solid #d6e3e7;
    background: rgba(255, 255, 255, .78);
}

.lp-pwt-objectives__pathway-tag {
    display: block;
    color: #049a9a;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.lp-pwt-objectives__pathways h4 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-objectives__pathways article p {
    margin: 9px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.62;
}

/* Tablet */

@media (max-width: 980px) {
    .lp-pwt-objectives__matrix {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-pwt-objectives__pathways {
        grid-template-columns: 1fr 1fr;
    }

    .lp-pwt-objectives__pathways-intro {
        grid-column: 1 / -1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-objectives {
        padding: 56px 0;
    }

    .lp-pwt-objectives__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-objectives__header {
        margin-bottom: 28px;
    }

    .lp-pwt-objectives__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-objectives__matrix,
    .lp-pwt-objectives__pathways {
        grid-template-columns: 1fr;
    }

    .lp-pwt-objectives__item {
        min-height: 0;
        padding: 21px;
    }

    .lp-pwt-objectives__icon {
        width: 50px;
        height: 50px;
        margin-bottom: 18px;
    }

    .lp-pwt-objectives__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-pwt-objectives__pathways-intro {
        grid-column: auto;
    }

    .lp-pwt-objectives__pathways-intro,
    .lp-pwt-objectives__pathways article {
        padding: 21px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-objectives__item {
        transition: none;
    }
}






/* =========================================================
   PRODUCED WATER TREATMENT — TREATMENT ARCHITECTURE
========================================================= */

.lp-pwt-architecture {
    padding: clamp(64px, 7vw, 94px) 0;
    overflow: hidden;
    background: #ffffff;
}

.lp-pwt-architecture__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-pwt-architecture__header {
    max-width: 800px;
    margin: 0 auto 46px;
    text-align: center;
}

.lp-pwt-architecture__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-architecture__header p {
    max-width: 650px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Process flow */

.lp-pwt-architecture__flow {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr) 30px
        minmax(0, 1fr) 30px
        minmax(0, 1fr) 30px
        minmax(0, 1fr) 30px
        minmax(0, 1fr) 30px
        minmax(0, 1fr);
    align-items: center;
}

.lp-pwt-architecture__step {
    position: relative;
    min-height: 270px;
    padding: 24px 18px 21px;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f8fbfc;
    text-align: center;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-pwt-architecture__step:hover {
    transform: translateY(-5px);
    border-color: #c9dde1;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .075);
}

.lp-pwt-architecture__number {
    position: absolute;
    top: 14px;
    right: 14px;
    color: #95a5b1;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.lp-pwt-architecture__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    margin: 4px auto 20px;
    border-radius: 50%;
    background: #e7f7f7;
}

.lp-pwt-architecture__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-pwt-architecture__step h3 {
    margin: 0;
    color: #061b33;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-architecture__step p {
    margin: 10px 0 0;
    color: #687789;
    font-size: .71rem;
    line-height: 1.62;
}

/* Connectors */

.lp-pwt-architecture__connector {
    position: relative;
    width: 100%;
    height: 2px;
    background: #badadd;
}

.lp-pwt-architecture__connector::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 7px;
    height: 7px;
    border-top: 2px solid #049a9a;
    border-right: 2px solid #049a9a;
    transform: translateY(-50%) rotate(45deg);
}

/* Outcomes */

.lp-pwt-architecture__outcomes {
    display: grid;
    grid-template-columns: 1.05fr repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.lp-pwt-architecture__outcome-intro,
.lp-pwt-architecture__outcomes article {
    padding: 24px;
    border-radius: 18px;
}

.lp-pwt-architecture__outcome-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #061b33;
}

.lp-pwt-architecture__outcome-intro span,
.lp-pwt-architecture__outcomes article > span {
    display: block;
    color: #38cfd0;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-architecture__outcome-intro strong {
    display: block;
    margin-top: 9px;
    color: #ffffff;
    font-size: 1.23rem;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-pwt-architecture__outcomes article {
    border: 1px solid #d8e4e8;
    background: #eef6f8;
}

.lp-pwt-architecture__outcomes article:last-child {
    background: #e4f3f3;
}

.lp-pwt-architecture__outcomes h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-architecture__outcomes p {
    margin: 9px 0 0;
    color: #647687;
    font-size: .75rem;
    line-height: 1.62;
}

/* Qualification note */

.lp-pwt-architecture__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 18px 21px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #f7fafb;
}

.lp-pwt-architecture__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-pwt-architecture__note p {
    margin: 0;
    color: #5f7283;
    font-size: .75rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 1080px) {
    .lp-pwt-architecture__flow {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .lp-pwt-architecture__connector {
        display: none;
    }
}

@media (max-width: 900px) {
    .lp-pwt-architecture__outcomes {
        grid-template-columns: 1fr 1fr;
    }

    .lp-pwt-architecture__outcome-intro {
        grid-column: 1 / -1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-architecture {
        padding: 56px 0;
    }

    .lp-pwt-architecture__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-architecture__header {
        margin-bottom: 30px;
    }

    .lp-pwt-architecture__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-architecture__flow,
    .lp-pwt-architecture__outcomes {
        grid-template-columns: 1fr;
    }

    .lp-pwt-architecture__step {
        min-height: 0;
        display: grid;
        grid-template-columns: 50px 1fr;
        column-gap: 15px;
        padding: 18px;
        text-align: left;
    }

    .lp-pwt-architecture__icon {
        grid-row: 1 / span 2;
        width: 50px;
        height: 50px;
        margin: 0;
    }

    .lp-pwt-architecture__step h3 {
        padding-right: 30px;
    }

    .lp-pwt-architecture__step p {
        margin-top: 7px;
    }

    .lp-pwt-architecture__outcome-intro {
        grid-column: auto;
    }

    .lp-pwt-architecture__outcome-intro,
    .lp-pwt-architecture__outcomes article {
        padding: 21px;
    }

    .lp-pwt-architecture__note {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-pwt-architecture__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-architecture__step {
        transition: none;
    }
}






/* =========================================================
   PRODUCED WATER TREATMENT — PRE-TREATMENT
========================================================= */

.lp-pwt-pretreatment {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-pwt-pretreatment__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Visual */

.lp-pwt-pretreatment__visual {
    position: relative;
    padding: 0 44px 108px 0;
}

.lp-pwt-pretreatment__visual figure {
    position: relative;
    min-height: 530px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-pretreatment__visual img {
    width: 100%;
    height: 100%;
    min-height: 530px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-pretreatment__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-pretreatment__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-pretreatment__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-pretreatment__visual figcaption strong {
    display: block;
    max-width: 450px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Prepared-feed panel */

.lp-pwt-pretreatment__condition {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(340px, 72%);
    padding: 22px;
    border: 5px solid #eef6f8;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-pretreatment__condition-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-pretreatment__condition div {
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-pretreatment__condition div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-pretreatment__condition div:last-of-type {
    padding-bottom: 0;
}

.lp-pwt-pretreatment__condition strong {
    display: block;
    color: #ffffff;
    font-size: .78rem;
    font-weight: 800;
}

.lp-pwt-pretreatment__condition small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .66rem;
    line-height: 1.45;
}

/* Content */

.lp-pwt-pretreatment__content h2 {
    max-width: 690px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-pretreatment__lead {
    max-width: 620px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-pwt-pretreatment__content > p:not(.lp-pwt-pretreatment__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Process items */

.lp-pwt-pretreatment__steps {
    display: grid;
    gap: 10px;
    margin-top: 28px;
}

.lp-pwt-pretreatment__steps article {
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: 14px;
    padding: 16px 18px;
    border: 1px solid #d8e4e8;
    border-radius: 15px;
    background: rgba(255, 255, 255, .8);
}

.lp-pwt-pretreatment__steps article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pwt-pretreatment__steps h3 {
    margin: 0;
    color: #061b33;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-pretreatment__steps p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.58;
}

/* Qualification note */

.lp-pwt-pretreatment__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: start;
    margin-top: 19px;
    padding: 18px 20px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-pwt-pretreatment__note span {
    color: #061b33;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.5;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-pwt-pretreatment__note p {
    margin: 0;
    color: #5f7283;
    font-size: .74rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-pretreatment__container {
        grid-template-columns: 1fr;
    }

    .lp-pwt-pretreatment__visual {
        order: 2;
        max-width: 760px;
        padding-right: 38px;
    }

    .lp-pwt-pretreatment__content {
        order: 1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-pretreatment {
        padding: 56px 0;
    }

    .lp-pwt-pretreatment__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-pwt-pretreatment__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-pretreatment__lead {
        font-size: .91rem;
    }

    .lp-pwt-pretreatment__visual {
        padding: 0 0 178px;
    }

    .lp-pwt-pretreatment__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-pretreatment__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-pretreatment__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-pretreatment__condition {
        right: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-pretreatment__note {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-pwt-pretreatment__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-pretreatment__visual img {
        transition: none;
    }
}






/* =========================================================
   PRODUCED WATER TREATMENT — EC-AOP CORE TREATMENT
========================================================= */

.lp-pwt-ecaop {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-pwt-ecaop__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-pwt-ecaop__content h2 {
    max-width: 700px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-ecaop__lead {
    max-width: 630px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-pwt-ecaop__content > p:not(.lp-pwt-ecaop__lead) {
    max-width: 620px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Core functions */

.lp-pwt-ecaop__functions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.lp-pwt-ecaop__functions article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dbe6ea;
    border-radius: 15px;
    background: #f8fbfc;
}

.lp-pwt-ecaop__functions article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pwt-ecaop__functions h3 {
    margin: 0;
    color: #061b33;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-ecaop__functions p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.57;
}

/* Link */

.lp-pwt-ecaop__link {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 24px;
    padding: 12px 19px;
    border-radius: 999px;
    background: #061b33;
    color: #ffffff;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease;
}

.lp-pwt-ecaop__link:hover {
    transform: translateY(-2px);
    background: #049a9a;
}

.lp-pwt-ecaop__link span {
    transition: transform .25s ease;
}

.lp-pwt-ecaop__link:hover span {
    transform: translateX(4px);
}

/* Visual */

.lp-pwt-ecaop__visual {
    position: relative;
    padding: 0 0 112px 44px;
}

.lp-pwt-ecaop__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-ecaop__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-ecaop__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-ecaop__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-ecaop__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-ecaop__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Treatment sequence card */

.lp-pwt-ecaop__process-card {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(350px, 72%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-ecaop__process-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-ecaop__process-card div {
    padding: 9px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-ecaop__process-card div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-ecaop__process-card div:last-of-type {
    padding-bottom: 0;
}

.lp-pwt-ecaop__process-card strong {
    display: block;
    color: #ffffff;
    font-size: .78rem;
    font-weight: 800;
}

.lp-pwt-ecaop__process-card small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .66rem;
    line-height: 1.45;
}

.lp-pwt-ecaop__arrow {
    display: block;
    margin: -2px 0;
    color: #38cfd0;
    font-size: .8rem;
    line-height: 1;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-ecaop__container {
        grid-template-columns: 1fr;
    }

    .lp-pwt-ecaop__visual {
        max-width: 760px;
        padding-left: 36px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-ecaop {
        padding: 56px 0;
    }

    .lp-pwt-ecaop__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-pwt-ecaop__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-ecaop__lead {
        font-size: .91rem;
    }

    .lp-pwt-ecaop__functions {
        grid-template-columns: 1fr;
    }

    .lp-pwt-ecaop__visual {
        padding: 0 0 190px;
    }

    .lp-pwt-ecaop__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-ecaop__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-ecaop__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-ecaop__process-card {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-ecaop__link {
        width: 100%;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-ecaop__visual img,
    .lp-pwt-ecaop__link,
    .lp-pwt-ecaop__link span {
        transition: none;
    }
}






/* =========================================================
   PRODUCED WATER TREATMENT — SEPARATION & POLISHING
========================================================= */

.lp-pwt-polishing {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-pwt-polishing__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-pwt-polishing__header {
    max-width: 810px;
    margin: 0 auto 42px;
    text-align: center;
}

.lp-pwt-polishing__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-polishing__header p {
    max-width: 660px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Main layout */

.lp-pwt-polishing__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr);
    align-items: center;
}

.lp-pwt-polishing__stage {
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 22px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-pwt-polishing__stage:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 45px rgba(6, 27, 51, .08);
}

/* Media */

.lp-pwt-polishing__media {
    position: relative;
    min-height: 285px;
    margin: 0;
    overflow: hidden;
    background: #dce8ec;
}

.lp-pwt-polishing__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 38%,
            rgba(6, 27, 51, .66) 100%
        );
    pointer-events: none;
}

.lp-pwt-polishing__media img {
    width: 100%;
    height: 100%;
    min-height: 285px;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-pwt-polishing__stage:hover
.lp-pwt-polishing__media img {
    transform: scale(1.045);
}

.lp-pwt-polishing__number {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    background: rgba(6, 27, 51, .72);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-pwt-polishing__media figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    z-index: 2;
}

.lp-pwt-polishing__media figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-polishing__media figcaption strong {
    display: block;
    max-width: 430px;
    margin-top: 7px;
    color: #ffffff;
    font-size: .85rem;
    font-weight: 700;
    line-height: 1.5;
}

/* Content */

.lp-pwt-polishing__content {
    padding: 27px;
}

.lp-pwt-polishing__label {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-polishing__content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.28rem;
    font-weight: 800;
    line-height: 1.28;
    letter-spacing: -.025em;
}

.lp-pwt-polishing__content > p {
    margin: 13px 0 0;
    color: #687789;
    font-size: .8rem;
    line-height: 1.68;
}

/* Points */

.lp-pwt-polishing__points {
    display: grid;
    gap: 8px;
    margin-top: 20px;
}

.lp-pwt-polishing__points div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    padding-top: 9px;
    border-top: 1px solid #e2eaed;
}

.lp-pwt-polishing__points div:first-child {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-polishing__points span {
    color: #049a9a;
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-pwt-polishing__points p {
    margin: 0;
    color: #5f7283;
    font-size: .72rem;
    line-height: 1.55;
}

/* Transition */

.lp-pwt-polishing__transition {
    position: relative;
    width: 54px;
    height: 2px;
    background: #b9d9dc;
}

.lp-pwt-polishing__transition::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #049a9a;
    border-right: 2px solid #049a9a;
    transform: translateY(-50%) rotate(45deg);
}

.lp-pwt-polishing__transition span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 27px;
    height: 27px;
    border: 1px solid #badadd;
    border-radius: 50%;
    background: #eef6f8;
    transform: translate(-50%, -50%);
}

.lp-pwt-polishing__transition span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 7px;
    right: 7px;
    height: 2px;
    background: #049a9a;
    transform: translateY(-50%);
}

/* Configuration statement */

.lp-pwt-polishing__configuration {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
    gap: 42px;
    align-items: center;
    margin-top: 28px;
    padding: 27px 30px;
    border-radius: 18px;
    background: #061b33;
}

.lp-pwt-polishing__configuration span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-polishing__configuration strong {
    display: block;
    max-width: 650px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.5rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-pwt-polishing__configuration p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .78rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-polishing__layout {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .lp-pwt-polishing__transition {
        width: 2px;
        height: 38px;
        margin-inline: auto;
    }

    .lp-pwt-polishing__transition::after {
        top: auto;
        right: 50%;
        bottom: 0;
        transform: translateX(50%) rotate(135deg);
    }

    .lp-pwt-polishing__transition span {
        top: 50%;
    }

    .lp-pwt-polishing__transition span::before {
        top: 7px;
        bottom: 7px;
        left: 50%;
        width: 2px;
        height: auto;
        transform: translateX(-50%);
    }

    .lp-pwt-polishing__configuration {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-polishing {
        padding: 56px 0;
    }

    .lp-pwt-polishing__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-polishing__header {
        margin-bottom: 28px;
    }

    .lp-pwt-polishing__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-polishing__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-pwt-polishing__media img {
        min-height: 0;
    }

    .lp-pwt-polishing__content {
        padding: 22px;
    }

    .lp-pwt-polishing__configuration {
        padding: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-polishing__stage,
    .lp-pwt-polishing__media img {
        transition: none;
    }
}







/* =========================================================
   PRODUCED WATER TREATMENT — MODULAR CONFIGURATION
========================================================= */

.lp-pwt-configuration {
    padding: clamp(64px, 7vw, 94px) 0 0;
    background: #ffffff;
}

.lp-pwt-configuration__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-pwt-configuration__content h2 {
    max-width: 700px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-configuration__lead {
    max-width: 625px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-pwt-configuration__content > p:not(.lp-pwt-configuration__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Features */

.lp-pwt-configuration__features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.lp-pwt-configuration__features article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dce7ea;
    border-radius: 15px;
    background: #f8fbfc;
}

.lp-pwt-configuration__features article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pwt-configuration__features h3 {
    margin: 0;
    color: #061b33;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-configuration__features p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.57;
}

/* Visual */

.lp-pwt-configuration__visual {
    position: relative;
    padding: 0 0 136px 42px;
}

.lp-pwt-configuration__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-configuration__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-configuration__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-configuration__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-configuration__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-configuration__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Specification panel */

.lp-pwt-configuration__specifications {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(390px, 78%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-configuration__specifications-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-configuration__specifications div {
    display: grid;
    grid-template-columns: 112px 1fr;
    gap: 14px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-configuration__specifications div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-configuration__specifications div:last-of-type {
    padding-bottom: 0;
}

.lp-pwt-configuration__specifications small {
    color: rgba(255, 255, 255, .52);
    font-size: .62rem;
    line-height: 1.45;
}

.lp-pwt-configuration__specifications strong {
    color: #ffffff;
    font-size: .72rem;
    font-weight: 800;
    line-height: 1.45;
}

/* Bottom band */

.lp-pwt-configuration__band {
    margin-top: clamp(54px, 6vw, 78px);
    padding: 30px 0;
    background: #061b33;
}

.lp-pwt-configuration__band-container {
    width: min(1120px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
    gap: 42px;
    align-items: center;
}

.lp-pwt-configuration__band span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-configuration__band strong {
    display: block;
    max-width: 680px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.52rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-pwt-configuration__band p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .78rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-configuration__container {
        grid-template-columns: 1fr;
    }

    .lp-pwt-configuration__visual {
        max-width: 760px;
        padding-left: 36px;
    }

    .lp-pwt-configuration__band-container {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-configuration {
        padding-top: 56px;
    }

    .lp-pwt-configuration__container,
    .lp-pwt-configuration__band-container {
        width: calc(100% - 32px);
    }

    .lp-pwt-configuration__container {
        gap: 34px;
    }

    .lp-pwt-configuration__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-configuration__lead {
        font-size: .91rem;
    }

    .lp-pwt-configuration__features {
        grid-template-columns: 1fr;
    }

    .lp-pwt-configuration__visual {
        padding: 0 0 230px;
    }

    .lp-pwt-configuration__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-configuration__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-configuration__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-configuration__specifications {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-configuration__specifications div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .lp-pwt-configuration__band {
        margin-top: 50px;
        padding: 25px 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-configuration__visual img {
        transition: none;
    }
}







/* =========================================================
   PRODUCED WATER TREATMENT — MONITORING & VERIFICATION
========================================================= */

.lp-pwt-verification {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-pwt-verification__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-pwt-verification__header {
    max-width: 820px;
    margin: 0 auto 42px;
    text-align: center;
}

.lp-pwt-verification__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-verification__header p {
    max-width: 680px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Layout */

.lp-pwt-verification__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr);
    gap: clamp(40px, 6vw, 74px);
    align-items: center;
}

/* Visual */

.lp-pwt-verification__visual {
    position: relative;
    padding: 0 42px 118px 0;
}

.lp-pwt-verification__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-verification__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-verification__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-verification__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-verification__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-verification__visual figcaption strong {
    display: block;
    max-width: 460px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Sampling panel */

.lp-pwt-verification__sample-panel {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(350px, 74%);
    padding: 22px;
    border: 5px solid #eef6f8;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-verification__sample-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-verification__sample-panel div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-verification__sample-panel div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-verification__sample-panel div:last-of-type {
    padding-bottom: 0;
}

.lp-pwt-verification__sample-panel div span {
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-pwt-verification__sample-panel p {
    margin: 0;
    color: rgba(255, 255, 255, .84);
    font-size: .7rem;
    font-weight: 700;
    line-height: 1.45;
}

/* Process */

.lp-pwt-verification__process {
    display: grid;
    gap: 0;
}

.lp-pwt-verification__process article {
    position: relative;
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 16px;
    padding: 18px;
    border: 1px solid #d8e4e8;
    border-radius: 16px;
    background: rgba(255, 255, 255, .82);
}

.lp-pwt-verification__number {
    position: absolute;
    top: 13px;
    right: 15px;
    color: #98a8b3;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pwt-verification__icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e7f7f7;
}

.lp-pwt-verification__icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-pwt-verification__process h3 {
    margin: 2px 0 0;
    color: #061b33;
    font-size: .95rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-verification__process p {
    margin: 7px 0 0;
    padding-right: 28px;
    color: #687789;
    font-size: .75rem;
    line-height: 1.58;
}

.lp-pwt-verification__connector {
    position: relative;
    width: 2px;
    height: 24px;
    margin-inline: 44px;
    background: #b9d9dc;
}

.lp-pwt-verification__connector::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 0;
    width: 7px;
    height: 7px;
    border-right: 2px solid #049a9a;
    border-bottom: 2px solid #049a9a;
    transform: translateX(50%) rotate(45deg);
}

/* Verification basis */

.lp-pwt-verification__parameters {
    margin-top: 22px;
    padding: 22px;
    border-radius: 18px;
    background: #061b33;
}

.lp-pwt-verification__parameters-label {
    display: block;
    margin-bottom: 15px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-verification__parameters-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.lp-pwt-verification__parameters-grid article {
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-pwt-verification__parameters-grid strong {
    display: block;
    color: #ffffff;
    font-size: .75rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-pwt-verification__parameters-grid p {
    margin: 6px 0 0;
    color: rgba(255, 255, 255, .65);
    font-size: .67rem;
    line-height: 1.5;
}

/* Statement */

.lp-pwt-verification__statement {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: start;
    margin-top: 18px;
    padding: 18px 20px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-pwt-verification__statement span {
    color: #061b33;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.5;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-pwt-verification__statement p {
    margin: 0;
    color: #5f7283;
    font-size: .74rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-verification__layout {
        grid-template-columns: 1fr;
    }

    .lp-pwt-verification__visual {
        max-width: 760px;
        padding-right: 38px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-verification {
        padding: 56px 0;
    }

    .lp-pwt-verification__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-verification__header {
        margin-bottom: 28px;
    }

    .lp-pwt-verification__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-verification__layout {
        gap: 34px;
    }

    .lp-pwt-verification__visual {
        padding: 0 0 176px;
    }

    .lp-pwt-verification__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-verification__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-verification__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-verification__sample-panel {
        right: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-verification__process article {
        grid-template-columns: 48px 1fr;
        padding: 17px;
    }

    .lp-pwt-verification__icon {
        width: 48px;
        height: 48px;
    }

    .lp-pwt-verification__connector {
        margin-inline: 40px;
    }

    .lp-pwt-verification__parameters-grid {
        grid-template-columns: 1fr;
    }

    .lp-pwt-verification__statement {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-pwt-verification__statement span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-verification__visual img {
        transition: none;
    }
}








/* =========================================================
   PRODUCED WATER TREATMENT — TREATED WATER PATHWAYS
========================================================= */

.lp-pwt-pathways {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-pwt-pathways__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-pwt-pathways__header {
    max-width: 820px;
    margin: 0 auto 36px;
    text-align: center;
}

.lp-pwt-pathways__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-pathways__header p {
    max-width: 660px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Verified source */

.lp-pwt-pathways__source {
    max-width: 760px;
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 17px;
    align-items: center;
    margin: 0 auto;
    padding: 18px 22px;
    border: 1px solid #d8e4e8;
    border-radius: 18px;
    background: #eef6f8;
}

.lp-pwt-pathways__source-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffffff;
}

.lp-pwt-pathways__source-icon svg {
    width: 26px;
    height: 26px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-pwt-pathways__source span {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-pathways__source strong {
    display: block;
    margin-top: 7px;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.45;
}

/* Split connector */

.lp-pwt-pathways__split {
    position: relative;
    width: 50%;
    height: 62px;
    margin-inline: auto;
}

.lp-pwt-pathways__split::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 30px;
    background: #b9d9dc;
    transform: translateX(-50%);
}

.lp-pwt-pathways__split::after {
    content: "";
    position: absolute;
    top: 30px;
    right: 0;
    left: 0;
    height: 2px;
    background: #b9d9dc;
}

.lp-pwt-pathways__split span::before,
.lp-pwt-pathways__split span::after {
    content: "";
    position: absolute;
    top: 30px;
    width: 2px;
    height: 32px;
    background: #b9d9dc;
}

.lp-pwt-pathways__split span::before {
    left: 0;
}

.lp-pwt-pathways__split span::after {
    right: 0;
}

/* Pathway grid */

.lp-pwt-pathways__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.lp-pwt-pathways__card {
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 22px;
    background: #f8fbfc;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-pwt-pathways__card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 46px rgba(6, 27, 51, .08);
}

/* Media */

.lp-pwt-pathways__card figure {
    position: relative;
    min-height: 300px;
    margin: 0;
    overflow: hidden;
    background: #dce8ec;
}

.lp-pwt-pathways__card figure::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 48%,
            rgba(6, 27, 51, .46) 100%
        );
    pointer-events: none;
}

.lp-pwt-pathways__card img {
    width: 100%;
    height: 100%;
    min-height: 300px;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-pwt-pathways__card:hover img {
    transform: scale(1.045);
}

.lp-pwt-pathways__number {
    position: absolute;
    right: 17px;
    bottom: 17px;
    z-index: 2;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    background: rgba(6, 27, 51, .76);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .08em;
}

/* Content */

.lp-pwt-pathways__content {
    padding: 27px;
}

.lp-pwt-pathways__label {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-pathways__content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.28;
    letter-spacing: -.025em;
}

.lp-pwt-pathways__content > p {
    margin: 13px 0 0;
    color: #687789;
    font-size: .8rem;
    line-height: 1.68;
}

/* Conditions */

.lp-pwt-pathways__conditions {
    display: grid;
    gap: 8px;
    margin-top: 20px;
}

.lp-pwt-pathways__conditions div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    padding-top: 9px;
    border-top: 1px solid #e1e9ec;
}

.lp-pwt-pathways__conditions div:first-child {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-pathways__conditions span {
    color: #049a9a;
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-pwt-pathways__conditions p {
    margin: 0;
    color: #5f7283;
    font-size: .72rem;
    line-height: 1.55;
}

/* Links */

.lp-pwt-pathways__content > a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 22px;
    color: #061b33;
    font-size: .74rem;
    font-weight: 800;
    text-decoration: none;
}

.lp-pwt-pathways__content > a span {
    color: #049a9a;
    transition: transform .25s ease;
}

.lp-pwt-pathways__content > a:hover span {
    transform: translateX(4px);
}

/* Qualification note */

.lp-pwt-pathways__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 26px;
    padding: 19px 22px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #eef6f8;
}

.lp-pwt-pathways__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-pwt-pathways__note p {
    margin: 0;
    color: #5d7182;
    font-size: .76rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-pathways__split {
        width: 70%;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-pathways {
        padding: 56px 0;
    }

    .lp-pwt-pathways__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-pathways__header {
        margin-bottom: 28px;
    }

    .lp-pwt-pathways__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-pathways__source {
        grid-template-columns: 50px 1fr;
        padding: 17px;
    }

    .lp-pwt-pathways__source-icon {
        width: 50px;
        height: 50px;
    }

    .lp-pwt-pathways__split {
        display: none;
    }

    .lp-pwt-pathways__grid {
        grid-template-columns: 1fr;
        margin-top: 20px;
    }

    .lp-pwt-pathways__card figure {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-pwt-pathways__card img {
        min-height: 0;
    }

    .lp-pwt-pathways__content {
        padding: 22px;
    }

    .lp-pwt-pathways__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 18px;
    }

    .lp-pwt-pathways__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-pathways__card,
    .lp-pwt-pathways__card img,
    .lp-pwt-pathways__content > a span {
        transition: none;
    }
}







/* =========================================================
   PRODUCED WATER TREATMENT — PILOT VALIDATION & EVIDENCE
========================================================= */

.lp-pwt-evidence {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-pwt-evidence__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Visual */

.lp-pwt-evidence__visual {
    position: relative;
    padding: 0 44px 118px 0;
}

.lp-pwt-evidence__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-pwt-evidence__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-pwt-evidence__visual figure:hover img {
    transform: scale(1.035);
}

.lp-pwt-evidence__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-pwt-evidence__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-evidence__visual figcaption strong {
    display: block;
    max-width: 460px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Status panel */

.lp-pwt-evidence__status {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(350px, 74%);
    padding: 22px;
    border: 5px solid #eef6f8;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-pwt-evidence__status-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-pwt-evidence__status div {
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-pwt-evidence__status div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-pwt-evidence__status div:last-of-type {
    padding-bottom: 0;
}

.lp-pwt-evidence__status strong {
    display: block;
    color: #ffffff;
    font-size: .77rem;
    font-weight: 800;
}

.lp-pwt-evidence__status small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .66rem;
    line-height: 1.45;
}

/* Content */

.lp-pwt-evidence__content h2 {
    max-width: 670px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-evidence__lead {
    max-width: 620px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-pwt-evidence__content > p:not(.lp-pwt-evidence__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Evidence points */

.lp-pwt-evidence__points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.lp-pwt-evidence__points article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px;
    border: 1px solid #d8e4e8;
    border-radius: 15px;
    background: rgba(255, 255, 255, .82);
}

.lp-pwt-evidence__points article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-pwt-evidence__points h3 {
    margin: 0;
    color: #061b33;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-pwt-evidence__points p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.57;
}

/* Actions */

.lp-pwt-evidence__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 24px;
}

.lp-pwt-evidence__button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 19px;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 800;
    text-decoration: none;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.lp-pwt-evidence__button--primary {
    background: #061b33;
    color: #ffffff;
}

.lp-pwt-evidence__button--primary:hover {
    transform: translateY(-2px);
    background: #049a9a;
}

.lp-pwt-evidence__button--secondary {
    border: 1px solid #cbdadd;
    background: transparent;
    color: #061b33;
}

.lp-pwt-evidence__button--secondary:hover {
    transform: translateY(-2px);
    border-color: #049a9a;
    color: #049a9a;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-pwt-evidence__container {
        grid-template-columns: 1fr;
    }

    .lp-pwt-evidence__visual {
        order: 2;
        max-width: 760px;
        padding-right: 38px;
    }

    .lp-pwt-evidence__content {
        order: 1;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-evidence {
        padding: 56px 0;
    }

    .lp-pwt-evidence__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-pwt-evidence__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-pwt-evidence__lead {
        font-size: .91rem;
    }

    .lp-pwt-evidence__points {
        grid-template-columns: 1fr;
    }

    .lp-pwt-evidence__visual {
        padding: 0 0 178px;
    }

    .lp-pwt-evidence__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-pwt-evidence__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-pwt-evidence__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-pwt-evidence__status {
        right: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-pwt-evidence__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .lp-pwt-evidence__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-evidence__visual img,
    .lp-pwt-evidence__button {
        transition: none;
    }
}







/* =========================================================
   PRODUCED WATER TREATMENT — CLOSING CTA
========================================================= */

.lp-pwt-closing {
    position: relative;
    padding: clamp(68px, 7vw, 94px) 0;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #061b33 0%,
            #0a3555 100%
        );
}

.lp-pwt-closing::before {
    content: "";
    position: absolute;
    top: -230px;
    right: -160px;
    width: 530px;
    height: 530px;
    border-radius: 50%;
    background: rgba(56, 207, 208, .06);
}

.lp-pwt-closing::after {
    content: "";
    position: absolute;
    bottom: -210px;
    left: -150px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .035);
}

.lp-pwt-closing__container {
    position: relative;
    z-index: 2;
    width: min(1120px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(36px, 6vw, 80px);
    align-items: center;
}

/* Content */

.lp-pwt-closing__label {
    display: block;
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-pwt-closing__content h2 {
    max-width: 780px;
    margin: 13px 0 0;
    color: #ffffff;
    font-size: clamp(2rem, 3.7vw, 3.45rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-pwt-closing__content p {
    max-width: 720px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .9rem;
    line-height: 1.72;
}

/* Actions */

.lp-pwt-closing__actions {
    min-width: 260px;
    display: grid;
    gap: 11px;
}

.lp-pwt-closing__button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 22px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.lp-pwt-closing__button--primary {
    background: #d6ad45;
    color: #061b33;
}

.lp-pwt-closing__button--primary:hover {
    transform: translateY(-2px);
    background: #e2ba56;
}

.lp-pwt-closing__button--primary span {
    transition: transform .25s ease;
}

.lp-pwt-closing__button--primary:hover span {
    transform: translateX(4px);
}

.lp-pwt-closing__button--secondary {
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .04);
    color: #ffffff;
}

.lp-pwt-closing__button--secondary:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .09);
}

/* Tablet */

@media (max-width: 840px) {
    .lp-pwt-closing__container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .lp-pwt-closing__actions {
        min-width: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-pwt-closing {
        padding: 58px 0;
    }

    .lp-pwt-closing__container {
        width: calc(100% - 32px);
    }

    .lp-pwt-closing__content h2 {
        font-size: clamp(2rem, 9vw, 2.65rem);
    }

    .lp-pwt-closing__content p {
        font-size: .86rem;
    }

    .lp-pwt-closing__actions {
        grid-template-columns: 1fr;
    }

    .lp-pwt-closing__button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-pwt-closing__button,
    .lp-pwt-closing__button--primary span {
        transition: none;
    }
}







/* =========================================================
   WATER REUSE — UNDERSTANDING WATER REUSE
========================================================= */

.lp-reuse-overview {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-reuse-overview__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-reuse-overview__content h2 {
    max-width: 700px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-overview__lead {
    max-width: 630px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-reuse-overview__content > p:not(.lp-reuse-overview__lead) {
    max-width: 620px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Reuse principle */

.lp-reuse-overview__principle {
    margin-top: 28px;
    padding: 23px 24px;
    border-left: 3px solid #049a9a;
    border-radius: 0 16px 16px 0;
    background: #eef6f8;
}

.lp-reuse-overview__principle > span {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-overview__principle strong {
    display: block;
    margin-top: 8px;
    color: #061b33;
    font-size: 1.13rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-overview__principle p {
    margin: 8px 0 0;
    color: #637687;
    font-size: .76rem;
    line-height: 1.62;
}

/* Visual */

.lp-reuse-overview__visual {
    position: relative;
    padding: 0 0 160px 42px;
}

.lp-reuse-overview__visual figure {
    position: relative;
    min-height: 530px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-reuse-overview__visual img {
    width: 100%;
    height: 100%;
    min-height: 530px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-reuse-overview__visual figure:hover img {
    transform: scale(1.035);
}

.lp-reuse-overview__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-reuse-overview__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-overview__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Reuse basis panel */

.lp-reuse-overview__basis {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(420px, 80%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-reuse-overview__basis-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-overview__basis > div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-overview__basis > div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-overview__basis > div:last-of-type {
    padding-bottom: 0;
}

.lp-reuse-overview__basis > div > span {
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-overview__basis strong {
    display: block;
    color: #ffffff;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-overview__basis small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .65rem;
    line-height: 1.45;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-reuse-overview__container {
        grid-template-columns: 1fr;
    }

    .lp-reuse-overview__visual {
        max-width: 760px;
        padding-left: 36px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-overview {
        padding: 56px 0;
    }

    .lp-reuse-overview__container {
        width: calc(100% - 32px);
        gap: 34px;
    }

    .lp-reuse-overview__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-overview__lead {
        font-size: .91rem;
    }

    .lp-reuse-overview__principle {
        padding: 19px;
    }

    .lp-reuse-overview__visual {
        padding: 0 0 244px;
    }

    .lp-reuse-overview__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-reuse-overview__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-reuse-overview__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-reuse-overview__basis {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-overview__visual img {
        transition: none;
    }
}







/* =========================================================
   WATER REUSE — REUSE SUITABILITY
========================================================= */

.lp-reuse-suitability {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-reuse-suitability__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-suitability__header {
    max-width: 820px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-reuse-suitability__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-suitability__header p {
    max-width: 650px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Suitability cards */

.lp-reuse-suitability__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.lp-reuse-suitability__card {
    position: relative;
    min-height: 275px;
    padding: 24px 22px;
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 19px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-reuse-suitability__card::after {
    content: "";
    position: absolute;
    right: -48px;
    bottom: -68px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(4, 154, 154, .045);
    pointer-events: none;
}

.lp-reuse-suitability__card:hover {
    transform: translateY(-5px);
    border-color: #c7dde0;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .08);
}

.lp-reuse-suitability__number {
    position: absolute;
    top: 17px;
    right: 18px;
    color: #96a6b2;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-reuse-suitability__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    margin-bottom: 24px;
    border-radius: 50%;
    background: #e8f7f7;
}

.lp-reuse-suitability__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-suitability__card h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-suitability__card p {
    margin: 11px 0 0;
    color: #687789;
    font-size: .76rem;
    line-height: 1.65;
}

/* Assessment panel */

.lp-reuse-suitability__assessment {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 24px;
    margin-top: 28px;
    padding: 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-reuse-suitability__assessment-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 20px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-suitability__assessment-intro span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-suitability__assessment-intro strong {
    display: block;
    max-width: 420px;
    margin-top: 9px;
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-suitability__assessment-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.lp-reuse-suitability__assessment-list article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-suitability__assessment-list article > span {
    padding-top: 2px;
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-suitability__assessment-list h3 {
    margin: 0;
    color: #ffffff;
    font-size: .77rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-suitability__assessment-list p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .67rem;
    line-height: 1.5;
}

/* Qualification note */

.lp-reuse-suitability__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 18px 21px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-reuse-suitability__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-suitability__note p {
    margin: 0;
    color: #5d7182;
    font-size: .75rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 980px) {
    .lp-reuse-suitability__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-reuse-suitability__assessment {
        grid-template-columns: 1fr;
    }

    .lp-reuse-suitability__assessment-intro {
        padding: 0 0 20px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-suitability {
        padding: 56px 0;
    }

    .lp-reuse-suitability__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-suitability__header {
        margin-bottom: 28px;
    }

    .lp-reuse-suitability__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-suitability__grid,
    .lp-reuse-suitability__assessment-list {
        grid-template-columns: 1fr;
    }

    .lp-reuse-suitability__card {
        min-height: 0;
        padding: 21px;
    }

    .lp-reuse-suitability__icon {
        width: 50px;
        height: 50px;
        margin-bottom: 18px;
    }

    .lp-reuse-suitability__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-reuse-suitability__assessment {
        padding: 22px;
    }

    .lp-reuse-suitability__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 17px;
    }

    .lp-reuse-suitability__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-suitability__card {
        transition: none;
    }
}






/* =========================================================
   WATER REUSE — REUSE TREATMENT PATHWAY
========================================================= */

.lp-reuse-pathway {
    padding: clamp(64px, 7vw, 94px) 0;
    overflow: hidden;
    background: #ffffff;
}

.lp-reuse-pathway__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-pathway__header {
    max-width: 820px;
    margin: 0 auto 46px;
    text-align: center;
}

.lp-reuse-pathway__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-pathway__header p {
    max-width: 670px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Process flow */

.lp-reuse-pathway__flow {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr) 38px
        minmax(0, 1fr) 38px
        minmax(0, 1fr) 38px
        minmax(0, 1fr) 38px
        minmax(0, 1fr);
    align-items: center;
}

.lp-reuse-pathway__step {
    position: relative;
    min-height: 270px;
    padding: 25px 19px 22px;
    border: 1px solid #dce7ea;
    border-radius: 18px;
    background: #f8fbfc;
    text-align: center;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-reuse-pathway__step:hover {
    transform: translateY(-5px);
    border-color: #c7dde0;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .075);
}

.lp-reuse-pathway__number {
    position: absolute;
    top: 14px;
    right: 14px;
    color: #96a6b2;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.lp-reuse-pathway__icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin: 4px auto 20px;
    border-radius: 50%;
    background: #e7f7f7;
}

.lp-reuse-pathway__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-pathway__step h3 {
    margin: 0;
    color: #061b33;
    font-size: .93rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-pathway__step p {
    margin: 10px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.62;
}

/* Connectors */

.lp-reuse-pathway__connector {
    position: relative;
    width: 100%;
    height: 2px;
    background: #b9d9dc;
}

.lp-reuse-pathway__connector::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #049a9a;
    border-right: 2px solid #049a9a;
    transform: translateY(-50%) rotate(45deg);
}

/* Outcome */

.lp-reuse-pathway__outcome {
    max-width: 790px;
    display: grid;
    grid-template-columns: 68px 1fr;
    gap: 20px;
    align-items: center;
    margin: 34px auto 0;
    padding: 23px 26px;
    border: 1px solid #d4e3e6;
    border-radius: 19px;
    background: #eef6f8;
}

.lp-reuse-pathway__outcome-icon {
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffffff;
}

.lp-reuse-pathway__outcome-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-pathway__outcome span {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-pathway__outcome h3 {
    margin: 8px 0 0;
    color: #061b33;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.015em;
}

.lp-reuse-pathway__outcome p {
    margin: 7px 0 0;
    color: #627586;
    font-size: .76rem;
    line-height: 1.6;
}

/* Treatment-gap statement */

.lp-reuse-pathway__statement {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
    gap: 42px;
    align-items: center;
    margin-top: 28px;
    padding: 27px 30px;
    border-radius: 18px;
    background: #061b33;
}

.lp-reuse-pathway__statement span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-pathway__statement strong {
    display: block;
    max-width: 670px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.52rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-pathway__statement p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .78rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 1000px) {

    .lp-reuse-pathway__flow {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .lp-reuse-pathway__step {
        min-height: 0;
        display: grid;
        grid-template-columns: 58px 1fr;
        column-gap: 18px;
        padding: 20px;
        text-align: left;
    }

    .lp-reuse-pathway__icon {
        grid-row: 1 / span 2;
        margin: 0;
    }

    .lp-reuse-pathway__step h3 {
        padding-right: 34px;
    }

    .lp-reuse-pathway__step p {
        margin-top: 7px;
    }

    .lp-reuse-pathway__connector {
        width: 2px;
        height: 26px;
        margin: -6px auto;
    }

    .lp-reuse-pathway__connector::after {
        top: auto;
        right: 50%;
        bottom: 0;
        transform: translateX(50%) rotate(135deg);
    }

    .lp-reuse-pathway__statement {
        grid-template-columns: 1fr;
        gap: 16px;
    }

}

/* Mobile */

@media (max-width: 640px) {

    .lp-reuse-pathway {
        padding: 56px 0;
    }

    .lp-reuse-pathway__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-pathway__header {
        margin-bottom: 30px;
    }

    .lp-reuse-pathway__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-pathway__step {
        grid-template-columns: 48px 1fr;
        gap: 14px;
        padding: 17px;
    }

    .lp-reuse-pathway__icon {
        width: 48px;
        height: 48px;
    }

    .lp-reuse-pathway__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-reuse-pathway__outcome {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 20px;
    }

    .lp-reuse-pathway__outcome-icon {
        width: 58px;
        height: 58px;
    }

    .lp-reuse-pathway__statement {
        padding: 22px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .lp-reuse-pathway__step {
        transition: none;
    }

}







/* =========================================================
   WATER REUSE — ADDITIONAL POLISHING TECHNOLOGIES
========================================================= */

.lp-reuse-polishing {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-reuse-polishing__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-polishing__header {
    max-width: 820px;
    margin: 0 auto 42px;
    text-align: center;
}

.lp-reuse-polishing__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-polishing__header p {
    max-width: 670px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Grid */

.lp-reuse-polishing__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.lp-reuse-polishing__stage {
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 21px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-reuse-polishing__stage:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 44px rgba(6, 27, 51, .08);
}

/* Media */

.lp-reuse-polishing__media {
    position: relative;
    min-height: 260px;
    margin: 0;
    overflow: hidden;
    background: #dce8ec;
}

.lp-reuse-polishing__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 38%,
            rgba(6, 27, 51, .65) 100%
        );
    pointer-events: none;
}

.lp-reuse-polishing__media img {
    width: 100%;
    height: 100%;
    min-height: 260px;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-reuse-polishing__stage:hover
.lp-reuse-polishing__media img {
    transform: scale(1.045);
}

.lp-reuse-polishing__number {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    background: rgba(6, 27, 51, .74);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-polishing__media figcaption {
    position: absolute;
    right: 17px;
    bottom: 17px;
    left: 17px;
    z-index: 2;
}

.lp-reuse-polishing__media figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-polishing__media figcaption strong {
    display: block;
    margin-top: 7px;
    color: #ffffff;
    font-size: .81rem;
    font-weight: 700;
    line-height: 1.48;
}

/* Content */

.lp-reuse-polishing__content {
    padding: 24px;
}

.lp-reuse-polishing__label {
    display: block;
    color: #049a9a;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-polishing__content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-reuse-polishing__content > p {
    margin: 12px 0 0;
    color: #687789;
    font-size: .77rem;
    line-height: 1.65;
}

/* Points */

.lp-reuse-polishing__points {
    display: grid;
    gap: 8px;
    margin-top: 18px;
}

.lp-reuse-polishing__points div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 9px;
    align-items: start;
    padding-top: 8px;
    border-top: 1px solid #e1e9ec;
}

.lp-reuse-polishing__points div:first-child {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-polishing__points span {
    color: #049a9a;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-polishing__points p {
    margin: 0;
    color: #5f7283;
    font-size: .69rem;
    line-height: 1.52;
}

/* Configuration statement */

.lp-reuse-polishing__configuration {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr);
    gap: 42px;
    align-items: center;
    margin-top: 28px;
    padding: 27px 30px;
    border-radius: 18px;
    background: #061b33;
}

.lp-reuse-polishing__configuration span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-polishing__configuration strong {
    display: block;
    max-width: 650px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.5rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-polishing__configuration p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .78rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 980px) {
    .lp-reuse-polishing__grid {
        grid-template-columns: 1fr;
    }

    .lp-reuse-polishing__stage {
        display: grid;
        grid-template-columns: minmax(280px, .9fr) 1fr;
    }

    .lp-reuse-polishing__media {
        height: 100%;
        min-height: 320px;
    }

    .lp-reuse-polishing__media img {
        min-height: 320px;
    }

    .lp-reuse-polishing__configuration {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-polishing {
        padding: 56px 0;
    }

    .lp-reuse-polishing__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-polishing__header {
        margin-bottom: 28px;
    }

    .lp-reuse-polishing__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-polishing__stage {
        display: block;
    }

    .lp-reuse-polishing__media {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-reuse-polishing__media img {
        min-height: 0;
    }

    .lp-reuse-polishing__content {
        padding: 21px;
    }

    .lp-reuse-polishing__configuration {
        padding: 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-polishing__stage,
    .lp-reuse-polishing__media img {
        transition: none;
    }
}







/* =========================================================
   WATER REUSE — REVERSE OSMOSIS
========================================================= */

.lp-reuse-ro {
    padding: clamp(64px, 7vw, 94px) 0 0;
    background: #ffffff;
}

.lp-reuse-ro__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Content */

.lp-reuse-ro__content h2 {
    max-width: 700px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-ro__lead {
    max-width: 625px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-reuse-ro__content > p:not(.lp-reuse-ro__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Requirements */

.lp-reuse-ro__requirements {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.lp-reuse-ro__requirements article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dce7ea;
    border-radius: 15px;
    background: #f8fbfc;
}

.lp-reuse-ro__requirements article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-reuse-ro__requirements h3 {
    margin: 0;
    color: #061b33;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-ro__requirements p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.57;
}

/* Visual */

.lp-reuse-ro__visual {
    position: relative;
    padding: 0 0 188px 42px;
}

.lp-reuse-ro__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-reuse-ro__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-reuse-ro__visual figure:hover img {
    transform: scale(1.035);
}

.lp-reuse-ro__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-reuse-ro__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-ro__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* RO process panel */

.lp-reuse-ro__flow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(420px, 82%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-reuse-ro__flow-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-ro__flow-stage {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-ro__flow-stage:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-ro__flow-stage > span,
.lp-reuse-ro__split article > span {
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-ro__flow strong {
    display: block;
    color: #ffffff;
    font-size: .75rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-ro__flow small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .61);
    font-size: .64rem;
    line-height: 1.45;
}

.lp-reuse-ro__arrow {
    display: block;
    margin: -2px 0 -2px 12px;
    color: #38cfd0;
    font-size: .8rem;
    line-height: 1;
}

.lp-reuse-ro__split {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 8px;
}

.lp-reuse-ro__split article {
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 12px;
    background: rgba(255, 255, 255, .045);
}

/* Bottom statement */

.lp-reuse-ro__statement {
    margin-top: clamp(54px, 6vw, 78px);
    padding: 30px 0;
    background: #061b33;
}

.lp-reuse-ro__statement-container {
    width: min(1120px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
    gap: 42px;
    align-items: center;
}

.lp-reuse-ro__statement span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-ro__statement strong {
    display: block;
    max-width: 680px;
    margin-top: 8px;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.52rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-ro__statement p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .78rem;
    line-height: 1.65;
}

/* Tablet */

@media (max-width: 900px) {

    .lp-reuse-ro__container {
        grid-template-columns: 1fr;
    }

    .lp-reuse-ro__visual {
        max-width: 760px;
        padding-left: 36px;
    }

    .lp-reuse-ro__statement-container {
        grid-template-columns: 1fr;
        gap: 16px;
    }

}

/* Mobile */

@media (max-width: 640px) {

    .lp-reuse-ro {
        padding-top: 56px;
    }

    .lp-reuse-ro__container,
    .lp-reuse-ro__statement-container {
        width: calc(100% - 32px);
    }

    .lp-reuse-ro__container {
        gap: 34px;
    }

    .lp-reuse-ro__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-ro__lead {
        font-size: .91rem;
    }

    .lp-reuse-ro__requirements {
        grid-template-columns: 1fr;
    }

    .lp-reuse-ro__visual {
        padding: 0 0 270px;
    }

    .lp-reuse-ro__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-reuse-ro__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-reuse-ro__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-reuse-ro__flow {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-reuse-ro__split {
        grid-template-columns: 1fr;
    }

    .lp-reuse-ro__statement {
        margin-top: 50px;
        padding: 25px 0;
    }

}

@media (prefers-reduced-motion: reduce) {

    .lp-reuse-ro__visual img {
        transition: none;
    }

}







/* =========================================================
   WATER REUSE — APPLICATION-SPECIFIC WATER QUALITY
========================================================= */

.lp-reuse-applications {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-reuse-applications__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-applications__header {
    max-width: 820px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-reuse-applications__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-applications__header p {
    max-width: 660px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Application matrix */

.lp-reuse-applications__matrix {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lp-reuse-applications__card {
    position: relative;
    min-height: 275px;
    padding: 24px 22px;
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 19px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-reuse-applications__card::after {
    content: "";
    position: absolute;
    right: -48px;
    bottom: -68px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(4, 154, 154, .045);
    pointer-events: none;
}

.lp-reuse-applications__card:hover {
    transform: translateY(-5px);
    border-color: #c7dde0;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .08);
}

.lp-reuse-applications__number {
    position: absolute;
    top: 17px;
    right: 18px;
    color: #96a6b2;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.lp-reuse-applications__icon {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    margin-bottom: 24px;
    border-radius: 50%;
    background: #e8f7f7;
}

.lp-reuse-applications__icon svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-applications__card h3 {
    margin: 0;
    color: #061b33;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-applications__card p {
    margin: 11px 0 0;
    color: #687789;
    font-size: .76rem;
    line-height: 1.65;
}

.lp-reuse-applications__card small {
    display: block;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #e3eaed;
    color: #82919d;
    font-size: .64rem;
    line-height: 1.5;
}

/* Quality definition panel */

.lp-reuse-applications__quality {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: 24px;
    margin-top: 28px;
    padding: 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-reuse-applications__quality-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 20px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-applications__quality-intro span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-applications__quality-intro strong {
    display: block;
    max-width: 420px;
    margin-top: 9px;
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-applications__quality-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.lp-reuse-applications__quality-grid article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-applications__quality-grid article > span {
    padding-top: 2px;
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-applications__quality-grid h3 {
    margin: 0;
    color: #ffffff;
    font-size: .77rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-applications__quality-grid p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .67rem;
    line-height: 1.5;
}

/* Qualification note */

.lp-reuse-applications__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 18px 21px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-reuse-applications__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-applications__note p {
    margin: 0;
    color: #5d7182;
    font-size: .75rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 980px) {
    .lp-reuse-applications__matrix {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-reuse-applications__quality {
        grid-template-columns: 1fr;
    }

    .lp-reuse-applications__quality-intro {
        padding: 0 0 20px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-applications {
        padding: 56px 0;
    }

    .lp-reuse-applications__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-applications__header {
        margin-bottom: 28px;
    }

    .lp-reuse-applications__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-applications__matrix,
    .lp-reuse-applications__quality-grid {
        grid-template-columns: 1fr;
    }

    .lp-reuse-applications__card {
        min-height: 0;
        padding: 21px;
    }

    .lp-reuse-applications__icon {
        width: 50px;
        height: 50px;
        margin-bottom: 18px;
    }

    .lp-reuse-applications__icon svg {
        width: 22px;
        height: 22px;
    }

    .lp-reuse-applications__quality {
        padding: 22px;
    }

    .lp-reuse-applications__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 17px;
    }

    .lp-reuse-applications__note span {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-applications__card {
        transition: none;
    }
}






/* =========================================================
   WATER REUSE — SYSTEM CONFIGURATION
========================================================= */

.lp-reuse-configuration {
    padding: clamp(64px, 7vw, 94px) 0 0;
    background: #ffffff;
}

.lp-reuse-configuration__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
    gap: clamp(42px, 6vw, 78px);
    align-items: center;
}

/* Visual */

.lp-reuse-configuration__visual {
    position: relative;
    padding: 0 42px 145px 0;
}

.lp-reuse-configuration__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-reuse-configuration__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-reuse-configuration__visual figure:hover img {
    transform: scale(1.035);
}

.lp-reuse-configuration__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-reuse-configuration__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-configuration__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Configuration panel */

.lp-reuse-configuration__panel {
    position: absolute;
    right: 0;
    bottom: 0;
    width: min(400px, 80%);
    padding: 22px;
    border: 5px solid #ffffff;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-reuse-configuration__panel-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-configuration__panel div {
    display: grid;
    grid-template-columns: 108px 1fr;
    gap: 14px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-configuration__panel div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-configuration__panel div:last-of-type {
    padding-bottom: 0;
}

.lp-reuse-configuration__panel small {
    color: rgba(255, 255, 255, .52);
    font-size: .62rem;
    line-height: 1.45;
}

.lp-reuse-configuration__panel strong {
    color: #ffffff;
    font-size: .71rem;
    font-weight: 800;
    line-height: 1.45;
}

/* Content */

.lp-reuse-configuration__content h2 {
    max-width: 690px;
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-configuration__lead {
    max-width: 625px;
    margin: 20px 0 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-reuse-configuration__content > p:not(.lp-reuse-configuration__lead) {
    max-width: 610px;
    margin: 15px 0 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Features */

.lp-reuse-configuration__features {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.lp-reuse-configuration__features article {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dce7ea;
    border-radius: 15px;
    background: #f8fbfc;
}

.lp-reuse-configuration__features article > span {
    padding-top: 3px;
    color: #049a9a;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-reuse-configuration__features h3 {
    margin: 0;
    color: #061b33;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-configuration__features p {
    margin: 6px 0 0;
    color: #687789;
    font-size: .72rem;
    line-height: 1.57;
}

/* Note */

.lp-reuse-configuration__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: start;
    margin-top: 19px;
    padding: 18px 20px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #eef6f8;
}

.lp-reuse-configuration__note span {
    color: #061b33;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.5;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-configuration__note p {
    margin: 0;
    color: #5f7283;
    font-size: .74rem;
    line-height: 1.6;
}

/* Bottom flow */

.lp-reuse-configuration__flow {
    margin-top: clamp(54px, 6vw, 78px);
    padding: 28px 0;
    background: #061b33;
}

.lp-reuse-configuration__flow-container {
    width: min(1120px, calc(100% - 40px));
    margin-inline: auto;
    display: grid;
    grid-template-columns:
        minmax(0, 1fr) 40px
        minmax(0, 1fr) 40px
        minmax(0, 1fr) 40px
        minmax(0, 1fr);
    align-items: center;
}

.lp-reuse-configuration__flow article {
    padding: 17px 18px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 14px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-configuration__flow article > span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-reuse-configuration__flow strong {
    display: block;
    margin-top: 7px;
    color: #ffffff;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-configuration__flow small {
    display: block;
    margin-top: 5px;
    color: rgba(255, 255, 255, .62);
    font-size: .66rem;
    line-height: 1.48;
}

.lp-reuse-configuration__connector {
    position: relative;
    width: 100%;
    height: 2px;
    background: rgba(56, 207, 208, .42);
}

.lp-reuse-configuration__connector::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 7px;
    height: 7px;
    border-top: 2px solid #38cfd0;
    border-right: 2px solid #38cfd0;
    transform: translateY(-50%) rotate(45deg);
}

/* Tablet */

@media (max-width: 900px) {

    .lp-reuse-configuration__container {
        grid-template-columns: 1fr;
    }

    .lp-reuse-configuration__visual {
        order: 2;
        max-width: 760px;
        padding-right: 38px;
    }

    .lp-reuse-configuration__content {
        order: 1;
    }

    .lp-reuse-configuration__flow-container {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lp-reuse-configuration__connector {
        width: 2px;
        height: 22px;
        margin-inline: auto;
    }

    .lp-reuse-configuration__connector::after {
        top: auto;
        right: 50%;
        bottom: 0;
        transform: translateX(50%) rotate(135deg);
    }

}

/* Mobile */

@media (max-width: 640px) {

    .lp-reuse-configuration {
        padding-top: 56px;
    }

    .lp-reuse-configuration__container,
    .lp-reuse-configuration__flow-container {
        width: calc(100% - 32px);
    }

    .lp-reuse-configuration__container {
        gap: 34px;
    }

    .lp-reuse-configuration__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-configuration__lead {
        font-size: .91rem;
    }

    .lp-reuse-configuration__features {
        grid-template-columns: 1fr;
    }

    .lp-reuse-configuration__visual {
        padding: 0 0 232px;
    }

    .lp-reuse-configuration__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-reuse-configuration__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-reuse-configuration__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-reuse-configuration__panel {
        right: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-reuse-configuration__panel div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .lp-reuse-configuration__note {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-reuse-configuration__note span {
        white-space: normal;
    }

    .lp-reuse-configuration__flow {
        margin-top: 50px;
        padding: 24px 0;
    }

}

@media (prefers-reduced-motion: reduce) {

    .lp-reuse-configuration__visual img {
        transition: none;
    }

}







/* =========================================================
   WATER REUSE — MONITORING & WATER-QUALITY ASSURANCE
========================================================= */

.lp-reuse-assurance {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-reuse-assurance__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-assurance__header {
    max-width: 830px;
    margin: 0 auto 42px;
    text-align: center;
}

.lp-reuse-assurance__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-assurance__header p {
    max-width: 680px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Main layout */

.lp-reuse-assurance__layout {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: clamp(42px, 6vw, 76px);
    align-items: center;
}

/* Process */

.lp-reuse-assurance__process {
    display: grid;
}

.lp-reuse-assurance__process article {
    position: relative;
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 15px;
    padding: 17px 18px;
    border: 1px solid #d8e4e8;
    border-radius: 16px;
    background: rgba(255, 255, 255, .84);
}

.lp-reuse-assurance__number {
    position: absolute;
    top: 13px;
    right: 15px;
    color: #98a8b3;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.lp-reuse-assurance__icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e7f7f7;
}

.lp-reuse-assurance__icon svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-assurance__process h3 {
    margin: 2px 0 0;
    color: #061b33;
    font-size: .91rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-assurance__process p {
    margin: 6px 0 0;
    padding-right: 26px;
    color: #687789;
    font-size: .73rem;
    line-height: 1.58;
}

.lp-reuse-assurance__connector {
    position: relative;
    width: 2px;
    height: 20px;
    margin-inline: 43px;
    background: #b9d9dc;
}

.lp-reuse-assurance__connector::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 0;
    width: 7px;
    height: 7px;
    border-right: 2px solid #049a9a;
    border-bottom: 2px solid #049a9a;
    transform: translateX(50%) rotate(45deg);
}

/* Statement */

.lp-reuse-assurance__statement {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: start;
    margin-top: 18px;
    padding: 18px 20px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-reuse-assurance__statement span {
    color: #061b33;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.5;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-assurance__statement p {
    margin: 0;
    color: #5f7283;
    font-size: .74rem;
    line-height: 1.6;
}

/* Visual */

.lp-reuse-assurance__visual {
    position: relative;
    padding: 0 0 170px 42px;
}

.lp-reuse-assurance__visual figure {
    position: relative;
    min-height: 540px;
    margin: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #dce8ec;
}

.lp-reuse-assurance__visual img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .65s ease;
}

.lp-reuse-assurance__visual figure:hover img {
    transform: scale(1.035);
}

.lp-reuse-assurance__visual figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 19px;
    border-radius: 17px;
    background: rgba(6, 27, 51, .86);
    backdrop-filter: blur(14px);
}

.lp-reuse-assurance__visual figcaption span {
    display: block;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-assurance__visual figcaption strong {
    display: block;
    max-width: 470px;
    margin-top: 8px;
    color: #ffffff;
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.55;
}

/* Control panel */

.lp-reuse-assurance__control {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(410px, 80%);
    padding: 22px;
    border: 5px solid #eef6f8;
    border-radius: 20px;
    background: #061b33;
    box-shadow: 0 20px 48px rgba(6, 27, 51, .17);
}

.lp-reuse-assurance__control-label {
    display: block;
    margin-bottom: 13px;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-assurance__control > div {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-assurance__control > div:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-assurance__control > div:last-of-type {
    padding-bottom: 0;
}

.lp-reuse-assurance__control > div > span {
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-assurance__control strong {
    display: block;
    color: #ffffff;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-assurance__control small {
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, .62);
    font-size: .65rem;
    line-height: 1.45;
}

/* Assurance basis */

.lp-reuse-assurance__basis {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: 24px;
    margin-top: 32px;
    padding: 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-reuse-assurance__basis-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 20px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-assurance__basis-intro span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-assurance__basis-intro strong {
    display: block;
    max-width: 430px;
    margin-top: 9px;
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-assurance__basis-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.lp-reuse-assurance__basis-grid article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-assurance__basis-grid article > span {
    padding-top: 2px;
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-assurance__basis-grid h3 {
    margin: 0;
    color: #ffffff;
    font-size: .77rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-assurance__basis-grid p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .67rem;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-reuse-assurance__layout {
        grid-template-columns: 1fr;
    }

    .lp-reuse-assurance__visual {
        max-width: 760px;
        padding-left: 36px;
    }

    .lp-reuse-assurance__basis {
        grid-template-columns: 1fr;
    }

    .lp-reuse-assurance__basis-intro {
        padding: 0 0 20px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-assurance {
        padding: 56px 0;
    }

    .lp-reuse-assurance__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-assurance__header {
        margin-bottom: 28px;
    }

    .lp-reuse-assurance__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-assurance__layout {
        gap: 34px;
    }

    .lp-reuse-assurance__process article {
        grid-template-columns: 48px 1fr;
        padding: 17px;
    }

    .lp-reuse-assurance__icon {
        width: 48px;
        height: 48px;
    }

    .lp-reuse-assurance__connector {
        margin-inline: 40px;
    }

    .lp-reuse-assurance__statement {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 17px;
    }

    .lp-reuse-assurance__statement span {
        white-space: normal;
    }

    .lp-reuse-assurance__visual {
        padding: 0 0 214px;
    }

    .lp-reuse-assurance__visual figure {
        min-height: 0;
        aspect-ratio: 16 / 11;
        border-radius: 18px;
    }

    .lp-reuse-assurance__visual img {
        height: 100%;
        min-height: 0;
    }

    .lp-reuse-assurance__visual figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px;
        padding: 15px;
    }

    .lp-reuse-assurance__control {
        left: 12px;
        width: calc(100% - 24px);
        padding: 18px;
        border-width: 4px;
    }

    .lp-reuse-assurance__basis {
        padding: 22px;
    }

    .lp-reuse-assurance__basis-grid {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-assurance__visual img {
        transition: none;
    }
}







/* =========================================================
   WATER REUSE — OPERATIONAL & RESOURCE VALUE
========================================================= */

.lp-reuse-value {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #ffffff;
}

.lp-reuse-value__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Header */

.lp-reuse-value__header {
    max-width: 820px;
    margin: 0 auto 40px;
    text-align: center;
}

.lp-reuse-value__header h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-value__header p {
    max-width: 670px;
    margin: 18px auto 0;
    color: #687789;
    font-size: .9rem;
    line-height: 1.7;
}

/* Value cards */

.lp-reuse-value__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.lp-reuse-value__card {
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 21px;
    background: #f8fbfc;
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.lp-reuse-value__card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 44px rgba(6, 27, 51, .08);
}

.lp-reuse-value__card figure {
    position: relative;
    min-height: 270px;
    margin: 0;
    overflow: hidden;
    background: #dce8ec;
}

.lp-reuse-value__card figure::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(6, 27, 51, 0) 45%,
            rgba(6, 27, 51, .48) 100%
        );
    pointer-events: none;
}

.lp-reuse-value__card img {
    width: 100%;
    height: 100%;
    min-height: 270px;
    display: block;
    object-fit: cover;
    transition: transform .65s ease;
}

.lp-reuse-value__card:hover img {
    transform: scale(1.045);
}

.lp-reuse-value__number {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 2;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    background: rgba(6, 27, 51, .76);
    backdrop-filter: blur(12px);
    color: #ffffff;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-value__content {
    padding: 24px;
}

.lp-reuse-value__label {
    display: block;
    color: #049a9a;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-value__content h3 {
    margin: 9px 0 0;
    color: #061b33;
    font-size: 1.18rem;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -.02em;
}

.lp-reuse-value__content p {
    margin: 12px 0 0;
    color: #687789;
    font-size: .78rem;
    line-height: 1.65;
}

/* Summary panel */

.lp-reuse-value__summary {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: 24px;
    margin-top: 28px;
    padding: 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-reuse-value__summary > div:first-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 20px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-value__summary > div:first-child > span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-value__summary > div:first-child > strong {
    display: block;
    max-width: 430px;
    margin-top: 9px;
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-value__summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.lp-reuse-value__summary-grid article {
    display: grid;
    grid-template-columns: 30px 1fr;
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-value__summary-grid article > span {
    padding-top: 2px;
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-value__summary-grid h3 {
    margin: 0;
    color: #ffffff;
    font-size: .77rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-value__summary-grid p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .67rem;
    line-height: 1.5;
}

/* Qualification note */

.lp-reuse-value__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 18px 21px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #eef6f8;
}

.lp-reuse-value__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-value__note p {
    margin: 0;
    color: #5d7182;
    font-size: .75rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 980px) {

    .lp-reuse-value__grid {
        grid-template-columns: 1fr;
    }

    .lp-reuse-value__card {
        display: grid;
        grid-template-columns: minmax(280px, .9fr) 1fr;
    }

    .lp-reuse-value__card figure {
        min-height: 100%;
    }

    .lp-reuse-value__card img {
        min-height: 300px;
    }

    .lp-reuse-value__summary {
        grid-template-columns: 1fr;
    }

    .lp-reuse-value__summary > div:first-child {
        padding: 0 0 20px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

}

/* Mobile */

@media (max-width: 640px) {

    .lp-reuse-value {
        padding: 56px 0;
    }

    .lp-reuse-value__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-value__header {
        margin-bottom: 28px;
    }

    .lp-reuse-value__header h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-value__card {
        display: block;
    }

    .lp-reuse-value__card figure {
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .lp-reuse-value__card img {
        min-height: 0;
    }

    .lp-reuse-value__content {
        padding: 21px;
    }

    .lp-reuse-value__summary {
        padding: 22px;
    }

    .lp-reuse-value__summary-grid {
        grid-template-columns: 1fr;
    }

    .lp-reuse-value__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 17px;
    }

    .lp-reuse-value__note span {
        white-space: normal;
    }

}

@media (prefers-reduced-motion: reduce) {

    .lp-reuse-value__card,
    .lp-reuse-value__card img {
        transition: none;
    }

}






/* =========================================================
   WATER REUSE — FEASIBILITY & PROJECT ASSESSMENT
========================================================= */

.lp-reuse-feasibility {
    padding: clamp(64px, 7vw, 94px) 0;
    background: #eef6f8;
}

.lp-reuse-feasibility__container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

/* Intro */

.lp-reuse-feasibility__content {
    max-width: 850px;
    margin: 0 auto 38px;
    text-align: center;
}

.lp-reuse-feasibility__content h2 {
    margin: 14px 0 0;
    color: #061b33;
    font-size: clamp(2rem, 3.45vw, 3.15rem);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
}

.lp-reuse-feasibility__lead {
    max-width: 660px;
    margin: 20px auto 0;
    color: #40576c;
    font-size: .98rem;
    line-height: 1.72;
}

.lp-reuse-feasibility__content > p:not(.lp-reuse-feasibility__lead) {
    max-width: 690px;
    margin: 14px auto 0;
    color: #687789;
    font-size: .87rem;
    line-height: 1.7;
}

/* Principle */

.lp-reuse-feasibility__principle {
    max-width: 760px;
    margin: 25px auto 0;
    padding: 21px 24px;
    border: 1px solid #d7e5e8;
    border-radius: 17px;
    background: #ffffff;
}

.lp-reuse-feasibility__principle > span {
    display: block;
    color: #049a9a;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-feasibility__principle strong {
    display: block;
    margin-top: 8px;
    color: #061b33;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-feasibility__principle p {
    margin: 8px 0 0;
    color: #637687;
    font-size: .75rem;
    line-height: 1.62;
}

/* Assessment matrix */

.lp-reuse-feasibility__matrix {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lp-reuse-feasibility__matrix article {
    position: relative;
    min-height: 245px;
    padding: 23px 21px;
    overflow: hidden;
    border: 1px solid #d8e4e8;
    border-radius: 18px;
    background: #ffffff;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.lp-reuse-feasibility__matrix article::after {
    content: "";
    position: absolute;
    right: -50px;
    bottom: -72px;
    width: 145px;
    height: 145px;
    border-radius: 50%;
    background: rgba(4, 154, 154, .045);
    pointer-events: none;
}

.lp-reuse-feasibility__matrix article:hover {
    transform: translateY(-5px);
    border-color: #c7dde0;
    box-shadow: 0 18px 42px rgba(6, 27, 51, .08);
}

.lp-reuse-feasibility__number {
    position: absolute;
    top: 16px;
    right: 17px;
    color: #97a6b1;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.lp-reuse-feasibility__icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    margin-bottom: 21px;
    border-radius: 50%;
    background: #e8f7f7;
}

.lp-reuse-feasibility__icon svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: #049a9a;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lp-reuse-feasibility__matrix h3 {
    margin: 0;
    color: #061b33;
    font-size: .96rem;
    font-weight: 800;
    line-height: 1.35;
}

.lp-reuse-feasibility__matrix p {
    margin: 10px 0 0;
    color: #687789;
    font-size: .75rem;
    line-height: 1.62;
}

/* Decision panel */

.lp-reuse-feasibility__decision {
    display: grid;
    grid-template-columns: minmax(0, .76fr) minmax(0, 1.24fr);
    gap: 24px;
    margin-top: 28px;
    padding: 28px;
    border-radius: 20px;
    background: #061b33;
}

.lp-reuse-feasibility__decision-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 22px;
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-feasibility__decision-intro span {
    display: block;
    color: #38cfd0;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.lp-reuse-feasibility__decision-intro strong {
    display: block;
    max-width: 420px;
    margin-top: 9px;
    color: #ffffff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.02em;
}

.lp-reuse-feasibility__decision-options {
    display: grid;
    gap: 10px;
}

.lp-reuse-feasibility__decision-options article {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 11px;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.lp-reuse-feasibility__decision-options article > span {
    padding-top: 2px;
    color: #38cfd0;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.lp-reuse-feasibility__decision-options h3 {
    margin: 0;
    color: #ffffff;
    font-size: .8rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-feasibility__decision-options p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .68rem;
    line-height: 1.5;
}

/* Note */

.lp-reuse-feasibility__note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 18px 21px;
    border-left: 3px solid #049a9a;
    border-radius: 0 14px 14px 0;
    background: #ffffff;
}

.lp-reuse-feasibility__note span {
    color: #061b33;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lp-reuse-feasibility__note p {
    margin: 0;
    color: #5d7182;
    font-size: .75rem;
    line-height: 1.6;
}

/* Tablet */

@media (max-width: 980px) {

    .lp-reuse-feasibility__matrix {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lp-reuse-feasibility__decision {
        grid-template-columns: 1fr;
    }

    .lp-reuse-feasibility__decision-intro {
        padding: 0 0 20px;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

}

/* Mobile */

@media (max-width: 640px) {

    .lp-reuse-feasibility {
        padding: 56px 0;
    }

    .lp-reuse-feasibility__container {
        width: calc(100% - 32px);
    }

    .lp-reuse-feasibility__content {
        margin-bottom: 28px;
    }

    .lp-reuse-feasibility__content h2 {
        font-size: clamp(2rem, 9vw, 2.5rem);
    }

    .lp-reuse-feasibility__lead {
        font-size: .91rem;
    }

    .lp-reuse-feasibility__principle {
        padding: 19px;
    }

    .lp-reuse-feasibility__matrix {
        grid-template-columns: 1fr;
    }

    .lp-reuse-feasibility__matrix article {
        min-height: 0;
        padding: 21px;
    }

    .lp-reuse-feasibility__decision {
        padding: 22px;
    }

    .lp-reuse-feasibility__note {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 17px;
    }

    .lp-reuse-feasibility__note span {
        white-space: normal;
    }

}

@media (prefers-reduced-motion: reduce) {

    .lp-reuse-feasibility__matrix article {
        transition: none;
    }

}





/* =========================================================
   WATER REUSE — CLOSING CTA
========================================================= */

.lp-reuse-cta {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #061b33;
}

.lp-reuse-cta__media,
.lp-reuse-cta__overlay {
    position: absolute;
    inset: 0;
}

.lp-reuse-cta__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.lp-reuse-cta__overlay {
    background:
        linear-gradient(
            90deg,
            rgba(6, 27, 51, .96) 0%,
            rgba(6, 27, 51, .9) 42%,
            rgba(6, 27, 51, .67) 70%,
            rgba(6, 27, 51, .45) 100%
        ),
        linear-gradient(
            180deg,
            rgba(6, 27, 51, .08) 0%,
            rgba(6, 27, 51, .6) 100%
        );
}

.lp-reuse-cta__container {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
    padding: clamp(72px, 8vw, 110px) 0;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
    gap: clamp(44px, 7vw, 92px);
    align-items: center;
}

/* Main content */

.lp-reuse-cta__content {
    max-width: 720px;
}

.lp-reuse-cta__label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #38cfd0;
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lp-reuse-cta__label::before {
    content: "";
    width: 28px;
    height: 1px;
    background: #38cfd0;
}

.lp-reuse-cta__content h2 {
    max-width: 720px;
    margin: 18px 0 0;
    color: #ffffff;
    font-size: clamp(2.45rem, 5vw, 4.6rem);
    font-weight: 800;
    line-height: .98;
    letter-spacing: -.055em;
    text-wrap: balance;
}

.lp-reuse-cta__content p {
    max-width: 620px;
    margin: 23px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .95rem;
    line-height: 1.75;
}

/* Actions */

.lp-reuse-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 31px;
}

.lp-reuse-cta__button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 13px 19px;
    border: 1px solid transparent;
    border-radius: 999px;
    text-decoration: none;
    font-size: .73rem;
    font-weight: 800;
    line-height: 1.2;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        color .25s ease;
}

.lp-reuse-cta__button svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .25s ease;
}

.lp-reuse-cta__button:hover {
    transform: translateY(-2px);
}

.lp-reuse-cta__button:hover svg {
    transform: translateX(3px);
}

.lp-reuse-cta__button--primary {
    background: #38cfd0;
    color: #061b33;
}

.lp-reuse-cta__button--primary:hover {
    background: #ffffff;
}

.lp-reuse-cta__button--secondary {
    border-color: rgba(255, 255, 255, .28);
    background: rgba(255, 255, 255, .06);
    color: #ffffff;
    backdrop-filter: blur(12px);
}

.lp-reuse-cta__button--secondary:hover {
    border-color: rgba(255, 255, 255, .5);
    background: rgba(255, 255, 255, .12);
}

/* Project pathway */

.lp-reuse-cta__pathway {
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 22px;
    background: rgba(6, 27, 51, .67);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .2);
    backdrop-filter: blur(16px);
}

.lp-reuse-cta__pathway-label {
    display: block;
    margin-bottom: 15px;
    color: #38cfd0;
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lp-reuse-cta__pathway article {
    display: grid;
    grid-template-columns: 31px 1fr;
    gap: 12px;
    padding: 14px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.lp-reuse-cta__pathway article:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.lp-reuse-cta__pathway article:last-of-type {
    padding-bottom: 0;
}

.lp-reuse-cta__pathway article > span {
    color: #38cfd0;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.5;
}

.lp-reuse-cta__pathway strong {
    display: block;
    color: #ffffff;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.4;
}

.lp-reuse-cta__pathway small {
    display: block;
    margin-top: 5px;
    color: rgba(255, 255, 255, .62);
    font-size: .67rem;
    line-height: 1.52;
}

/* Tablet */

@media (max-width: 900px) {
    .lp-reuse-cta {
        min-height: 0;
    }

    .lp-reuse-cta__overlay {
        background:
            linear-gradient(
                180deg,
                rgba(6, 27, 51, .92) 0%,
                rgba(6, 27, 51, .84) 58%,
                rgba(6, 27, 51, .94) 100%
            );
    }

    .lp-reuse-cta__container {
        grid-template-columns: 1fr;
    }

    .lp-reuse-cta__pathway {
        max-width: 620px;
    }
}

/* Mobile */

@media (max-width: 640px) {
    .lp-reuse-cta__container {
        width: calc(100% - 32px);
        padding: 68px 0;
        gap: 36px;
    }

    .lp-reuse-cta__content h2 {
        font-size: clamp(2.35rem, 12vw, 3.35rem);
    }

    .lp-reuse-cta__content p {
        font-size: .88rem;
    }

    .lp-reuse-cta__actions {
        flex-direction: column;
        align-items: stretch;
    }

    .lp-reuse-cta__button {
        width: 100%;
        justify-content: space-between;
        padding-inline: 18px;
    }

    .lp-reuse-cta__pathway {
        padding: 21px;
        border-radius: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lp-reuse-cta__button,
    .lp-reuse-cta__button svg {
        transition: none;
    }
}/* =========================================================
   SHARED INTERNAL INTRO — FINAL CONSISTENCY OVERRIDE
========================================================= */

.lp-technology-intro .lp-technology-intro h1,
.lp-technology-intro p {
    color: #ffffff !important;
}

.lp-page-eyebrow{
    color:#38cfd0 !important;
}

.lp-technology-intro .lp-page-eyebrow::before {
    background: #38cfd0 !important;
}

.lp-technology-intro h1 {
    max-width: 760px;
}

.lp-technology-intro p {
    max-width: 650px;
}


/* =========================================================
   TREATMENT PROCESS — NARRATIVE / READ MORE
   ========================================================= */

.lp-process-narrative {
    padding: 80px 0;
    background: #ffffff;
}

.lp-process-narrative__container {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
}

.lp-process-narrative__label {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;

    color: #009c9f;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.lp-process-narrative__label::before {
    content: "";
    width: 28px;
    height: 2px;
    background: #009c9f;
}

.lp-process-narrative h2 {
    margin: 0 0 26px;

    color: #061f3b;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.12;
    font-weight: 700;
    letter-spacing: -0.035em;
}

.lp-process-narrative__intro,
.lp-process-narrative__expanded {
    max-width: 1050px;
}

.lp-process-narrative p {
    margin: 0 0 18px;

    color: #536274;
    font-size: 17px;
    line-height: 1.75;
    font-weight: 400;
}

.lp-process-narrative__more {
    margin-top: 6px;
}

.lp-process-narrative__more summary {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    margin-top: 4px;
    padding: 0;

    color: #007f82;
    font-size: 14px;
    font-weight: 700;

    cursor: pointer;
    list-style: none;
}

.lp-process-narrative__more summary::-webkit-details-marker {
    display: none;
}

.lp-process-narrative__read-less {
    display: none;
}

.lp-process-narrative__arrow {
    display: inline-block;
    transition: transform 0.25s ease;
}

.lp-process-narrative__expanded {
    padding-top: 26px;
}

.lp-process-narrative__more[open] .lp-process-narrative__read-more {
    display: none;
}

.lp-process-narrative__more[open] .lp-process-narrative__read-less {
    display: inline;
}

.lp-process-narrative__more[open] .lp-process-narrative__arrow {
    transform: rotate(180deg);
}

.lp-process-narrative__closing {
    color: #061f3b !important;
    font-weight: 700 !important;
}


/* MOBILE */
@media (max-width: 768px) {

    .lp-process-narrative {
        padding: 56px 0;
    }

    .lp-process-narrative__container {
        width: min(100% - 32px, 1180px);
    }

    .lp-process-narrative h2 {
        margin-bottom: 20px;
        font-size: 30px;
    }

    .lp-process-narrative p {
        font-size: 16px;
        line-height: 1.7;
    }
}
/* Final contact details and reCAPTCHA refinement */
.lp-contact-direct{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.25rem;font-size:.98rem;line-height:1.6}
.lp-contact-direct p{margin:0}
.lp-contact-direct a{text-decoration:underline;text-underline-offset:3px}
.lp-recaptcha-wrap{margin:.25rem 0 .35rem;max-width:100%;overflow:hidden}
.lp-recaptcha-note{margin:.5rem 0 0;font-size:.78rem;line-height:1.45;color:#5f6b76}
@media (max-width:380px){.lp-recaptcha-wrap{transform:scale(.92);transform-origin:left top;margin-bottom:-.45rem}}
