/* Only the approved network cutaway receives this local interaction sample. */
.ww-red-sample .ww-sample-layer { visibility: hidden; pointer-events: none; }
.ww-red-sample .ww-sample-layer.ww-sample-active { visibility: visible; }
.ww-red-sample .ww-sample-accent {
  fill: none;
  stroke: var(--ww-sample-stroke, #00b5e2);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}
.ww-red-sample .ww-sample-draw .ww-sample-trace {
  stroke-dasharray: 1;
  animation: ww-sample-forward 500ms ease-out 1 both;
}
@keyframes ww-sample-forward {
  from { stroke-dashoffset: 1; }
  to { stroke-dashoffset: 0; }
}

.ww-red-sample .ww-sample-ui {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #d7dde6;
  color: #33404f;
}
.ww-red-sample .ww-sample-caption {
  margin: 0 0 10px;
  font: 600 12px/1.4 var(--font, "Poppins", system-ui, sans-serif);
  color: #004c97;
}
.ww-red-sample .ww-sample-controls,
.ww-red-sample .ww-sample-secondary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}
.ww-red-sample .ww-sample-secondary { margin-top: 6px; }
.ww-red-sample .ww-sample-button {
  min-width: 0;
  min-height: 44px;
  padding: 8px;
  border: 1px solid #d7dde6;
  border-radius: 6px;
  background: #fff;
  color: #004c97;
  text-align: left;
  font: 500 11.5px/1.4 var(--font, "Poppins", system-ui, sans-serif);
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease;
}
.ww-red-sample .ww-sample-button:hover { border-color: #0086aa; background: #f0fafd; }
.ww-red-sample .ww-sample-button[aria-pressed="true"] {
  border-color: #0086aa;
  box-shadow: inset 2px 0 #00b5e2;
  background: #e8f8fc;
  font-weight: 600;
}
.ww-red-sample .ww-sample-button:focus-visible { outline: 2px solid #0086aa; outline-offset: 2px; }
.ww-red-sample .ww-sample-explanation {
  margin-top: 12px;
  padding-left: 10px;
  border-left: 2px solid #00b5e2;
  font: 400 12px/1.6 var(--font, "Poppins", system-ui, sans-serif);
}
.ww-red-sample .ww-sample-explanation > strong { display: block; color: #004c97; font-weight: 600; }
.ww-red-sample .ww-sample-explanation > p { margin: 5px 0 0; }
.ww-red-sample .wrh-legend > li.ww-sample-reference { box-shadow: inset 2px 0 #00b5e2; background: #e8f8fc; }

@media (max-width: 660px) {
  .ww-red-sample .ww-sample-button { font-size: 12px; padding-inline: 10px; }
  .ww-red-sample .ww-sample-explanation { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .ww-red-sample .ww-sample-draw .ww-sample-trace { animation: none; stroke-dasharray: none; }
  .ww-red-sample .ww-sample-button { transition: none; }
}

/* Inicio: scroll and hover use individual translate, leaving the existing
   reveal transforms and the wave layers under their original ownership. */
body.ww-home-active .pageview[data-page="inicio"] .ww-scroll-surface {
  translate: 0 calc(var(--ww-scroll-y, 0px) + var(--ww-lift, 0px));
}
body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link, .card--link) {
  --ww-lift: 0px;
  --ww-scroll-y: 0px;
  transition: translate 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background-color 220ms ease;
}
body.ww-home-active .pageview[data-page="inicio"] .hero-link { translate: 0 calc(var(--ww-scroll-y, 0px) + var(--ww-lift)); }
body.ww-home-active .pageview[data-page="inicio"] .card--link { translate: 0 calc(var(--ww-scroll-y, 0px) + var(--ww-lift)); }
body.ww-home-active .pageview[data-page="inicio"] .hero-link:hover,
body.ww-home-active .pageview[data-page="inicio"] .card--link.rv.is-in:hover { transform: none; }
body.ww-home-active .pageview[data-page="inicio"] .hero-link.ww-in-view {
  border-color: rgba(0, 181, 226, .6);
  box-shadow: 0 6px 20px rgba(0, 20, 47, .2), inset 0 1px rgba(127, 217, 240, .12);
}
body.ww-home-active .pageview[data-page="inicio"] .card--link.ww-in-view {
  border-color: rgba(0, 145, 188, .55);
  box-shadow: 0 8px 24px rgba(0, 76, 151, .12);
}
body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link__ic, .ic-chip) {
  transition: background-color 220ms ease, box-shadow 220ms ease, scale 220ms ease;
}
body.ww-home-active .pageview[data-page="inicio"] .hero-link > svg:last-child,
body.ww-home-active .pageview[data-page="inicio"] .link-arrow > svg {
  transition: translate 220ms ease, transform 220ms ease, color 220ms ease;
}
body.ww-home-active .pageview[data-page="inicio"] .card__media img {
  transition: transform 260ms ease;
  transform-origin: center;
}
body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link, .card--link):focus-visible {
  --ww-lift: -5px;
  outline: 3px solid #00b5e2;
  outline-offset: 3px;
  border-color: #00b5e2;
  box-shadow: 0 14px 30px rgba(0, 76, 151, .2), 0 0 0 1px rgba(0, 181, 226, .25);
}
body.ww-home-active .pageview[data-page="inicio"] .hero-link:focus-visible .hero-link__ic,
body.ww-home-active .pageview[data-page="inicio"] .card--link:focus-visible .ic-chip {
  scale: 1.06;
  box-shadow: 0 0 0 4px rgba(0, 181, 226, .12);
}
body.ww-home-active .pageview[data-page="inicio"] .card--link:focus-visible .card__media img { transform: scale(1.025); }
body.ww-home-active .pageview[data-page="inicio"] .hero-link:focus-visible > svg:last-child,
body.ww-home-active .pageview[data-page="inicio"] .card--link:focus-visible .link-arrow > svg { translate: 4px 0; }

/* The original green/white/blue button fills and hrefs stay intact. */
body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn,
body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close) {
  --ww-button-y: 0px;
  translate: 0 var(--ww-button-y);
  transition: translate 200ms ease, background-color 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
}
body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn:focus-visible,
body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close):focus-visible {
  --ww-button-y: -3px;
  box-shadow: 0 8px 20px rgba(0, 76, 151, .24), 0 0 0 3px rgba(0, 181, 226, .22);
  outline: 2px solid #00b5e2;
  outline-offset: 3px;
}
body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn:active,
body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close):active { --ww-button-y: 1px; }
body.ww-home-active :is(.site-nav, .mobile-nav, .site-footer) a:not(.btn),
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature .lead a {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-size: 0 1px;
  background-position: left calc(100% - 2px);
  text-underline-offset: 4px;
  transition: color 200ms ease, background-size 220ms ease, border-color 200ms ease;
}
body.ww-home-active :is(.site-nav, .mobile-nav, .site-footer) a:not(.btn):focus-visible,
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature .lead a:focus-visible {
  background-size: 100% 1px;
  color: #00b5e2;
  outline: 2px solid #00b5e2;
  outline-offset: 4px;
}
body.ww-home-active .pageview[data-page="inicio"] .link-arrow {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 5px;
  transition: text-decoration-color 200ms ease;
}
body.ww-home-active .pageview[data-page="inicio"] .card--link:focus-visible .link-arrow { text-decoration-color: currentColor; }
body.ww-home-active .site-header__logo {
  border-radius: 8px;
  transition: background-color 180ms ease, box-shadow 180ms ease;
}
body.ww-home-active .site-header__logo:focus-visible {
  background-color: rgba(0, 181, 226, .06);
  box-shadow: 0 0 0 4px rgba(0, 181, 226, .13);
  outline: 2px solid #0086aa;
  outline-offset: 4px;
}

/* Localized light belongs to the existing feature, not to the moving waves.
   The pointer only moves this accent; headline and copy keep their position. */
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature {
  position: relative;
  isolation: isolate;
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::before,
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::after {
  content: "";
  position: absolute;
  inset: -16px;
  border-radius: 20px;
  pointer-events: none;
  z-index: -1;
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::before {
  background: radial-gradient(460px circle at var(--ww-light-x, 50%) var(--ww-light-y, 50%), rgba(0, 181, 226, .14), transparent 70%);
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::after {
  border: 1px solid rgba(0, 181, 226, .22);
  box-shadow: inset 0 1px rgba(127, 217, 240, .08);
  transition: border-color 220ms ease, box-shadow 220ms ease;
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature.ww-in-view::after,
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature:focus-within::after {
  border-color: rgba(0, 181, 226, .66);
  box-shadow: 0 0 24px rgba(0, 181, 226, .09), inset 0 1px rgba(127, 217, 240, .16);
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature .feature__visual img {
  transition: transform 260ms ease;
  transform-origin: center;
}
body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature:focus-within .feature__visual img { transform: scale(1.02); }

/* All four network parts retain their original layout, SVG size and text. */
.wrh .wrh-plot { transition: border-color 220ms ease, box-shadow 220ms ease; }
.wrh .wrh-step.ww-network-section-active > .wrh-plot {
  border-color: #00a3ce;
  box-shadow: 0 4px 18px rgba(0, 76, 151, .1), inset 0 0 0 1px rgba(0, 181, 226, .1);
}
.wrh .wrh-step.ww-network-section-active > .wrh-tick::before { background: #00b5e2; }
.wrh .wrh-step.ww-network-section-active > .wrh-tick::after { background: linear-gradient(90deg, #00b5e2, #d7dde6); }
.wrh .wrh-step.ww-network-section-active > .wrh-num { color: #004c97; }
.wrh .wrh-step.out.ww-network-section-active {
  box-shadow: 0 8px 22px rgba(0, 41, 79, .18), inset 0 0 0 1px rgba(0, 181, 226, .7);
}
.wrh .wrh-step.out.ww-network-section-active > .wrh-num { color: #7fd9f0; }
.wrh .wrh-bg .body,
.wrh .wrh-bg .filter,
.wrh .wrh-bg .roof { transition: fill 200ms ease, stroke 200ms ease, stroke-width 200ms ease; }
.wrh .wrh-bg:is(.on, :focus-visible) .body { stroke: #00b5e2; stroke-width: 1.6; }
.wrh .wrh-bg:focus-visible .ft { fill: #00b5e2; }
.wrh .wrh-bg:focus-visible .roof,
.wrh .wrh-bg:focus-visible .filter { stroke: #0086aa; stroke-width: 2; }
.wrh .wrh-bg .ww-flow-emphasis { stroke: #00b5e2; stroke-width: 2.7; filter: drop-shadow(0 0 1px rgba(0, 181, 226, .3)); }
.wrh .wrh-bg .fill-line.ww-flow-emphasis { stroke: #004c97; stroke-width: 2.8; filter: drop-shadow(0 0 1px rgba(0, 76, 151, .3)); }
.wrh .wrh-train > li {
  border-radius: 7px;
  transition: background-color 200ms ease, box-shadow 200ms ease;
}
.wrh .wrh-train > li:is(.ww-network-active, .ww-network-focus) {
  background: #e6f7fc;
  box-shadow: inset 3px 0 #00b5e2;
}
.wrh .ww-network-option {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: background-color 200ms ease, box-shadow 200ms ease;
}
.wrh .ww-network-option:focus-visible { outline: 2px solid #0086aa; outline-offset: 3px; }
.wrh .wrh-train > li:is(.ww-network-active, .ww-network-focus) .wrh-ic {
  border-color: #00a3ce;
  box-shadow: 0 0 0 3px rgba(0, 181, 226, .12);
}
.wrh .wrh-outs > li:not(.src) {
  cursor: default;
  transition: translate 220ms ease, border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease;
}
.wrh .wrh-outs > li:not(.src):is(.ww-network-active, .ww-network-focus) {
  translate: 0 -2px;
  border-color: rgba(0, 181, 226, .8);
  background: rgba(0, 181, 226, .14);
  box-shadow: inset 3px 0 #00b5e2, 0 5px 15px rgba(0, 13, 30, .18);
}
.wrh .wrh-outs > li:not(.src):is(.ww-network-active, .ww-network-focus)::before { background: #00b5e2; }
.wrh .wrh-outs > li:not(.src):is(.ww-network-active, .ww-network-focus) .wrh-ic { border-color: #00b5e2; background: rgba(0, 181, 226, .24); }
.wrh .ww-network-description {
  margin: 14px 0 0;
  padding: 10px 12px;
  border-left: 2px solid #00b5e2;
  background: #fff;
  color: #33404f;
  font: 400 12px/1.6 var(--font, "Poppins", system-ui, sans-serif);
}
.wrh .ww-network-description > strong { display: block; color: #004c97; font-weight: 600; }
.wrh .ww-network-description > p { margin: 4px 0 0; }
.wrh .wrh-step.out .ww-network-description { color: #e0eef9; background: rgba(255, 255, 255, .06); }
.wrh .wrh-step.out .ww-network-description > strong { color: #7fd9f0; }
.wrh .ww-red-sample .ww-sample-active .ww-sample-accent { stroke-width: 3.6; }
.wrh .ww-red-sample .ww-sample-button { transition: translate 180ms ease, border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease; }
.wrh .ww-red-sample .ww-sample-button:focus-visible { translate: 0 -2px; box-shadow: 0 4px 12px rgba(0, 76, 151, .16); }

@media (hover: hover) {
  body.ww-home-active .site-header__logo:hover {
    background-color: rgba(0, 181, 226, .06);
    box-shadow: 0 0 0 4px rgba(0, 181, 226, .13);
  }
  body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link, .card--link):hover {
    --ww-lift: -5px;
    border-color: #00b5e2;
    box-shadow: 0 14px 30px rgba(0, 76, 151, .2), 0 0 0 1px rgba(0, 181, 226, .25);
  }
  body.ww-home-active .pageview[data-page="inicio"] .hero-link:hover .hero-link__ic,
  body.ww-home-active .pageview[data-page="inicio"] .card--link:hover .ic-chip { scale: 1.06; box-shadow: 0 0 0 4px rgba(0, 181, 226, .12); }
  body.ww-home-active .pageview[data-page="inicio"] .card--link:hover .card__media img { transform: scale(1.025); }
  body.ww-home-active .pageview[data-page="inicio"] .hero-link:hover > svg:last-child,
  body.ww-home-active .pageview[data-page="inicio"] .card--link:hover .link-arrow > svg { translate: 4px 0; transform: none; }
  body.ww-home-active .pageview[data-page="inicio"] .card--link:hover .link-arrow { text-decoration-color: currentColor; }
  body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn:hover,
  body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close):hover {
    --ww-button-y: -3px;
    box-shadow: 0 8px 20px rgba(0, 76, 151, .24), 0 0 0 2px rgba(0, 181, 226, .16);
  }
  body.ww-home-active :is(.site-nav, .mobile-nav, .site-footer) a:not(.btn):hover,
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature .lead a:hover { background-size: 100% 1px; color: #00b5e2; }
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature:hover::after { border-color: #00b5e2; box-shadow: 0 0 24px rgba(0, 181, 226, .12); }
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature:hover .feature__visual img { transform: scale(1.02); }
  .wrh .wrh-bg:hover .body { stroke: #00b5e2; stroke-width: 1.6; }
  .wrh .wrh-bg:hover .ft { fill: #00b5e2; }
  .wrh .wrh-bg:hover .filter { stroke: #0086aa; stroke-width: 2; }
  .wrh .ww-network-option:hover { background: rgba(0, 181, 226, .08); }
  .wrh .ww-red-sample .ww-sample-button:hover { translate: 0 -2px; box-shadow: 0 4px 12px rgba(0, 76, 151, .16); }
}

@media (hover: none) {
  body.ww-home-active .pageview[data-page="inicio"] .card--link.ww-in-view .ic-chip,
  body.ww-home-active .pageview[data-page="inicio"] .hero-link.ww-in-view .hero-link__ic { box-shadow: 0 0 0 3px rgba(0, 181, 226, .13); }
}
body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn:active,
body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close):active { --ww-button-y: 1px; }
body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link, .card--link):active { --ww-lift: -1px; }
@media (max-width: 660px) {
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::before,
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::after { inset: -10px; border-radius: 16px; }
  .wrh .ww-network-description { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  body.ww-home-active .site-header__logo { transition: none; }
  body.ww-home-active .pageview[data-page="inicio"] .ww-scroll-surface,
  body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link, .card--link),
  body.ww-home-active :is(.pageview[data-page="inicio"], .site-header, .site-footer, .mobile-nav) .btn,
  body.ww-home-active :is(.fab-wa, .nav-toggle, .mobile-nav__close),
  .wrh .wrh-outs > li,
  .wrh .ww-sample-button { translate: none !important; transition: none !important; }
  body.ww-home-active .pageview[data-page="inicio"] :is(.hero-link__ic, .ic-chip) { scale: none !important; }
  body.ww-home-active .pageview[data-page="inicio"] :is(.card__media, .feature__visual) img,
  body.ww-home-active .pageview[data-page="inicio"] .hero-link > svg:last-child,
  body.ww-home-active .pageview[data-page="inicio"] .link-arrow > svg { transform: none !important; translate: none !important; }
  body.ww-home-active .pageview[data-page="inicio"] .ww-home-feature::before {
    background: radial-gradient(460px circle at 50% 50%, rgba(0, 181, 226, .14), transparent 70%);
  }
  .wrh .wrh-bg .ww-flow-emphasis { filter: none; }
}

/* Inmueble and Red: original drawings, more room and direct exploration. */
.wrh.ww-diagrams-expanded .wrh-steps { grid-template-columns: minmax(0, 1fr); justify-items: center; gap: 44px; }
.wrh.ww-diagrams-expanded .wrh-step { border-right: 0; padding-inline: 0; min-width: 0; width: 100%; justify-self: center; margin-left: auto; margin-right: auto; }
.wrh.ww-diagrams-expanded .wrh-step:not(.ww-property-expanded):not(.ww-red-expanded):not(.ww-treatment-overview) { max-width: 620px; }
.wrh .ww-property-expanded .wrh-sub, .wrh .ww-red-expanded .wrh-sub { max-width: 78ch; }
.wrh .ww-property-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 24px; }
.wrh .ww-property-case { min-width: 0; }
.wrh .ww-property-case .wrh-svg { width: 100%; height: auto; overflow: visible; }
.wrh .ww-property-case .ww-network-description { font-size: 14px; min-height: 160px; margin-top: 20px; }
.wrh .ww-red-expanded .wrh-plot { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(260px, 1fr); gap: 20px 32px; align-items: start; }
.wrh .ww-red-expanded .wrh-cap { grid-column: 1 / -1; }
.wrh .ww-red-expanded .wrh-svg { grid-column: 1; grid-row: 2 / 4; width: 100%; max-width: 640px; }
.wrh .ww-red-expanded .ww-sample-ui { grid-column: 2; margin-top: 0; }
.wrh .ww-red-expanded .wrh-legend { grid-column: 2; }
.wrh .ww-red-expanded .ww-sample-explanation { font-size: 15px; min-height: 145px; }
.wrh .ww-diagram-hit { cursor: pointer; }
.wrh .ww-diagram-hit:focus { outline: none; }

.wrh .ww-part-selected { filter: drop-shadow(0 0 2px #00b5e2); }
@media (max-width: 900px) {
  .wrh .ww-property-gallery { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .wrh .ww-property-case { width: 100%; max-width: 520px; margin-inline: auto; }
  .wrh .ww-property-case .ww-network-description { min-height: 0; }
  .wrh .ww-red-expanded .wrh-plot { grid-template-columns: minmax(0, 1fr); }
  .wrh .ww-red-expanded .wrh-svg, .wrh .ww-red-expanded .ww-sample-ui, .wrh .ww-red-expanded .wrh-legend { grid-column: 1; grid-row: auto; }
  .wrh .ww-red-expanded .ww-sample-explanation { min-height: 0; }
}

/* Polished diagram interaction: touch targets never become visible strokes. */
.wrh .ww-diagram-hit > * { opacity: 0; }
.wrh .ww-diagram-hover { filter: drop-shadow(0 0 1px rgba(0, 181, 226, .6)); }
.wrh .ww-part-selected { filter: drop-shadow(0 0 1px rgba(0, 181, 226, .65)); }
.wrh .ww-red-sample .ww-sample-active .ww-sample-accent { stroke-width: 1.8; }
.wrh .wrh-bg .ww-flow-emphasis { stroke-width: 1.9; filter: none; }
.wrh .wrh-bg .fill-line.ww-flow-emphasis { stroke-width: 1.9; filter: none; }
.wrh .ww-outlet-drop { stroke: #013b74; stroke-width: .5; paint-order: stroke; }
.wrh .ww-property-gallery { grid-template-columns: 1fr 1fr 1.14fr; align-items: stretch; }
.wrh .ww-property-case { display: flex; flex-direction: column; }
.wrh .ww-property-case .ww-network-description { margin-top: auto; min-height: 0; }
.wrh .ww-property-case .wrh-svg { margin-bottom: 20px; }
.wrh .ww-property-case .ww-network-description,
.wrh .ww-red-expanded .ww-sample-explanation {
  padding: 16px 18px; border: 1px solid #d7e4ed; border-radius: 10px;
  background: #fff; color: #33404f; box-shadow: 0 3px 12px rgba(0, 40, 75, .035);
  font-size: 14px; line-height: 1.6; min-height: 0;
}
.wrh .ww-property-case .ww-network-description > strong,
.wrh .ww-red-expanded .ww-sample-explanation > strong { font-size: 15px; line-height: 1.4; color: #004c97; }
.wrh .ww-property-case .ww-network-description > p,
.wrh .ww-red-expanded .ww-sample-explanation > p { margin: 8px 0 0; }
.wrh .ww-red-expanded .wrh-svg { grid-row: 2; }
.wrh .ww-red-expanded .ww-sample-ui { grid-row: 2; padding: 0; border-top: 0; }
.wrh .ww-red-expanded .ww-sample-caption { font-size: 12px; color: #5f6b7a; font-weight: 400; }
.wrh .ww-red-expanded .wrh-legend { margin-top: 18px; }
.wrh .ww-red-expanded .wrh-legend li { padding: 9px 6px; font-size: 12px; }
.wrh .ww-red-expanded .wrh-legend > li.ww-sample-reference { box-shadow: none; background: #edf7fb; border-radius: 5px; }
@media (max-width: 900px) {
  .wrh .ww-property-gallery { grid-template-columns: minmax(0, 1fr); }
  .wrh .ww-property-case .ww-network-description { margin-top: 0; }
  .wrh .ww-red-expanded .wrh-svg, .wrh .ww-red-expanded .ww-sample-ui { grid-row: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .wrh .ww-part-selected { filter: none; }
  /* Static focus feedback remains available with reduced motion. */
  .wrh .ww-diagram-hover { filter: drop-shadow(0 0 1px #0086aa); }
}

/* Final scale and contrast adjustments, restricted to purification diagrams. */
.pageview[data-page="agua-purificada"] .wrh.ww-diagrams-expanded { background: transparent; }
.wrh .ww-property-expanded .wrh-plot,
.wrh .ww-red-expanded .wrh-plot { background-color: rgba(245, 247, 250, .82); }
.wrh .ww-red-expanded { max-width: 1080px; width: 100%; }
.wrh .ww-red-expanded .wrh-plot { grid-template-columns: minmax(0, 420px) minmax(260px, 1fr); gap: 16px 28px; }
.wrh .ww-red-expanded .wrh-svg { max-width: 420px; }
.wrh .ww-diagram-hover,
.wrh .ww-part-selected { filter: drop-shadow(0 0 2.5px rgba(0, 181, 226, .8)); }
.wrh :is(path, rect, circle, ellipse):is(.ww-diagram-hover, .ww-part-selected),
.wrh :is(.ww-diagram-hover, .ww-part-selected) :is(path, rect, circle, ellipse) { stroke: #00b5e2; stroke-width: 2.4; }
.wrh .fill-line:is(.ww-diagram-hover, .ww-part-selected),
.wrh .ww-fill-pump:is(.ww-diagram-hover, .ww-part-selected) :is(path, circle),
.wrh .wrh-cistern-to-tinaco.ww-diagram-hover { stroke: #004c97; }
.wrh .wrh-bg .ww-flow-emphasis { stroke-width: 2.4; filter: drop-shadow(0 0 1.5px rgba(0, 181, 226, .55)); }
.wrh .wrh-bg .fill-line.ww-flow-emphasis { stroke-width: 2.4; filter: none; }
.wrh .ww-red-sample .ww-sample-active .ww-sample-accent { stroke-width: 2.6; filter: drop-shadow(0 0 1px rgba(0, 181, 226, .6)); }
@media (max-width: 900px) {
  .wrh .ww-red-expanded .wrh-plot { grid-template-columns: minmax(0, 1fr); }
  .wrh .ww-red-expanded .wrh-svg { margin-inline: auto; }
}

/* Central + destinations: one compact, explorable overview. */
.wrh.ww-diagrams-expanded .wrh-step.ww-treatment-overview { max-width: 1080px; width: 100%; }
.wrh .ww-treatment-overview .wrh-sub { max-width: 78ch; }
.wrh .ww-treatment-overview .wrh-plot { padding: 22px; background: rgba(245, 247, 250, .82); }
.wrh .ww-overview-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.wrh .ww-overview-column { min-width: 0; }
.wrh .ww-overview-column h4 { color: #004c97; font: 600 16px/1.4 var(--font); margin: 0 0 14px; }
.wrh .ww-overview-connector { color: #5f6b7a; font: 400 12px/1.5 var(--font); margin: -6px 0 14px; }
.wrh .ww-treatment-overview .wrh-train,
.wrh .ww-treatment-overview .wrh-outs { padding: 0; margin: 0; display: grid; gap: 5px; }
.wrh .ww-treatment-overview .wrh-train::before,
.wrh .ww-treatment-overview .wrh-outs::before,
.wrh .ww-treatment-overview .wrh-outs > li::before { display: none; }
.wrh .ww-treatment-overview :is(.wrh-train, .wrh-outs) > li { padding: 0; margin: 0; border: 0; border-radius: 8px; background: transparent; box-shadow: none; translate: none; }
.wrh .ww-overview-piece { display: flex; gap: 12px; align-items: center; width: 100%; min-height: 52px; padding: 8px; margin: 0; border: 1px solid transparent; border-radius: 8px; background: transparent; color: #33404f; text-align: left; font: inherit; cursor: pointer; transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.wrh .ww-treatment-overview .ww-overview-piece > span:last-child { font: 500 13px/1.35 var(--font); color: #33404f; }
.wrh .ww-treatment-overview .ww-overview-piece > span:last-child i { font: 400 11.5px/1.4 var(--font); color: #5f6b7a; margin-top: 3px; display: block; }
.wrh .ww-treatment-overview .wrh-ic { width: 34px; height: 34px; border: 1px solid #d7e4ed; background: #fff; border-radius: 8px; }
.wrh .ww-treatment-overview .wrh-ic svg { width: 22px; height: 22px; stroke: #004c97; }
.wrh .ww-treatment-overview .io .wrh-ic { background: #004c97; }
.wrh .ww-treatment-overview .io .wrh-ic svg { stroke: #fff; }
.wrh .ww-treatment-overview li.ww-overview-selected .ww-overview-piece { background: #e7f7fc; border-color: #00a3ce; box-shadow: 0 2px 8px rgba(0,76,151,.07); }
.wrh .ww-overview-piece:focus-visible { outline: 2px solid #0086aa; outline-offset: 2px; }
.wrh .ww-treatment-overview li.ww-network-focus { background: transparent; box-shadow: none; }
.wrh .ww-treatment-overview li.ww-network-focus .wrh-ic { box-shadow: none; }
@media (hover: hover) {
  .wrh .ww-overview-piece:hover { background: #edf8fc; border-color: #a4dce9; }
}
.wrh .ww-overview-explanation { padding: 16px 18px; margin: 20px 0 0; background: #fff; border: 1px solid #d7e4ed; border-radius: 10px; box-shadow: 0 3px 12px rgba(0,40,75,.035); color: #33404f; font: 400 14px/1.6 var(--font); }
.wrh .ww-overview-explanation strong { display: block; color: #004c97; font: 600 15px/1.4 var(--font); }
.wrh .ww-overview-explanation p { margin: 8px 0 0; }
.wrh .ww-overview-condition { margin: 12px 0 0; color: #5f6b7a; font: 400 12px/1.5 var(--font); }
.wrh .ww-treatment-overview .wrh-tags { border-top: 1px solid #d7e4ed; padding-top: 12px; margin-top: 14px; gap: 6px 16px; }
.wrh .ww-treatment-overview .wrh-tags li { padding: 0; border: 0; background: none; color: #5f6b7a; font-size: 11.5px; }
@media (max-width: 700px) {
  .wrh .ww-overview-columns { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .wrh .ww-treatment-overview .wrh-plot { padding: 16px; }
  .wrh .ww-overview-column + .ww-overview-column { border-top: 1px solid #d7e4ed; padding-top: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .wrh .ww-overview-piece { transition: none; }
}

@media (max-width: 700px) {
  .wrh .ww-treatment-overview :is(.wrh-train, .wrh-outs) > li { display: block; }
  .wrh .ww-treatment-overview li > .ww-overview-explanation { margin: 8px 0 12px; }
}

/* Plants share the purification diagram spacing, highlights and explanation cue. */
.wct.ww-plants-expanded { background: transparent; }
.wct.ww-plants-expanded .wct-steps { grid-template-columns: minmax(0,1fr); gap: 56px; justify-items: center; }
.wct.ww-plants-expanded .wct-step { width: 100%; max-width: 1080px; min-width: 0; box-sizing: border-box; padding: 0; border: 0; margin: 0 auto; }
.wct.ww-plants-expanded .wct-step:not(.ww-plant-size):not(.ww-plant-delivery) { max-width: 620px; }
.wct.ww-plants-expanded .wct-step.out { padding: 26px 24px; }
.wct.ww-plants-expanded .wct-sub { max-width: 75ch; }
.wct.ww-plants-expanded .wct-plot { padding: 24px; background: rgba(245,247,250,.88); border-color: #c8dce9; box-shadow: 0 6px 24px rgba(0,76,151,.055); }
.wct .ww-plant-layout { display: grid; grid-template-columns: minmax(0,420px) minmax(0,1fr); gap: 32px; align-items: center; }
.wct .ww-plant-delivery .ww-plant-layout { grid-template-columns: minmax(0,480px) minmax(0,1fr); }
.wct .ww-plant-info { min-width: 0; }
.wct .ww-plant-hint { margin: 0 0 12px; font-size: 13px; color: #5f6b7a; }
.wct .ww-plant-explanation { padding: 18px 20px; border: 1px solid #d7e4ed; border-radius: 14px; background: #fff; box-shadow: 0 3px 12px rgba(0,40,75,.035); }
.wct .ww-plant-explanation h4 { margin: 0 0 10px; color: #004c97; font-size: 17px; line-height: 1.4; }
.wct .ww-plant-explanation p { margin: 0; color: #425061; font-size: 14px; line-height: 1.65; }
.wct.ww-plants-expanded .wct-legend { margin-top: 18px; }
.wct.ww-plants-expanded .wct-legend li { display: block; padding: 0; }
.wct .wct-legend button { display: flex; align-items: center; gap: 9px; width: 100%; min-height: 44px; padding: 9px 8px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: inherit; font: inherit; font-size: 13px; text-align: left; cursor: pointer; transition: background .2s,border-color .2s; }
.wct .wct-legend button b { flex-shrink: 0; }
.wct .wct-legend button .wct-badge { margin-left: auto; font-size: 8px; }
.wct .wct-legend button:hover,.wct .wct-legend button:focus-visible,.wct .wct-legend button[aria-pressed="true"] { background: #e2f7ff; border-color: #00b5e2; outline: none; }
.wct .ww-diagram-hit { cursor: pointer; outline: none; }
.wct .ww-diagram-hit > * { opacity: 0; }
.wct [data-plant-part],.wct [data-plant-marker],.wct .wct-cg .body { transition: filter .2s; }
.wct .ww-plant-selected,.wct .ww-diagram-hover { filter: drop-shadow(0 0 2px rgba(0,181,226,.85)); }
.wct [data-plant-part].ww-plant-selected > rect,.wct [data-plant-part].ww-plant-selected > circle { stroke: #00b5e2; stroke-width: 2.5; }
.wct [data-plant-part].ww-plant-selected path:not([stroke="transparent"]) { stroke: #00b5e2; }
.wct .wct-cg:focus { outline: none; }
.wct .wct-cg.on .body,.wct .wct-cg:hover .body,.wct .wct-cg:focus-visible .body { filter: drop-shadow(0 2px 3px rgba(0,76,151,.3)); stroke: #00b5e2; stroke-width: 2; }
@media(max-width:800px) {
  .wct .ww-plant-layout,.wct .ww-plant-delivery .ww-plant-layout { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .wct .ww-plant-layout > svg { max-width: 420px; margin: 0 auto; }
  .wct .ww-plant-delivery .ww-plant-layout > svg { max-width: 480px; }
  .wct.ww-plants-expanded .wct-plot { padding: 18px 14px; }
  .wct.ww-plants-expanded .wct-steps { gap: 40px; }
  .wct .ww-plant-explanation { padding: 16px; }
}
@media(prefers-reduced-motion:reduce) {
  .wct.ww-plants-expanded * { transition: none !important; }
}

/* The existing Red legend also selects the same diagram explanations. */
.wrh .ww-red-expanded .wrh-legend > li { padding: 0; }
.wrh .ww-red-reference {
  display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px;
  padding: 9px 6px; border: 1px solid transparent; border-radius: 5px;
  background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer;
  transition: background-color .18s, border-color .18s;
}
.wrh .ww-red-reference b { flex-shrink: 0; }
.wrh .ww-red-reference:hover { background: #e2f7ff; border-color: #00b5e2; }
.wrh .ww-red-reference:focus-visible { outline: 2px solid #0086aa; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .wrh .ww-red-reference { transition: none; } }

/* Plant portfolio: original equipment photos, distinct from the Iran example. */
.wct.ww-plants-expanded .wct-step.ww-plant-catalog:not(.out) {max-width:1080px;}
.ww-plant-catalog .ww-catalog-heading {margin:0 0 18px;color:#004c97;font-size:20px;line-height:1.4;}
.ww-plant-catalog .ww-catalog-grid {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;}
.ww-plant-catalog .ww-catalog-card {grid-column:span 3;min-width:0;background:rgba(247,251,254,.92);border:1px solid #b7dceb;border-radius:16px;padding:16px;overflow:hidden;box-shadow:0 3px 12px rgba(0,40,75,.035);transition:transform .2s,border-color .2s,box-shadow .2s;}
.ww-plant-catalog .ww-catalog-grid .ww-catalog-card:nth-child(n+5) {grid-column:span 4;}
.ww-plant-catalog .ww-catalog-card:hover {transform:translateY(-4px);border-color:#00b5e2;box-shadow:0 8px 22px rgba(0,76,151,.12);}
.ww-plant-catalog .ww-catalog-photo {position:relative;aspect-ratio:432/254;overflow:hidden;margin:0 0 18px;}
.ww-plant-catalog .ww-catalog-photo img {position:absolute;display:block;width:472.685185%;max-width:none;height:auto;max-height:none;left:var(--crop-x);top:var(--crop-y);mix-blend-mode:multiply;}
.ww-plant-catalog .ww-catalog-card h5 {margin:0 0 10px;color:#004c97;font-size:16px;font-weight:600;line-height:1.4;}
.ww-plant-catalog .ww-catalog-card p {margin:0;color:#536375;font-size:14px;line-height:1.6;}
.ww-plant-catalog .ww-catalog-waste-title {margin-top:34px;}
.ww-plant-catalog .ww-catalog-waste {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.ww-plant-catalog .ww-catalog-waste .ww-catalog-card {grid-column:auto;padding:22px;}
.ww-plant-catalog .ww-catalog-residual {aspect-ratio:985.5/620;}
.ww-plant-catalog .ww-catalog-residual img {width:200%;mix-blend-mode:normal;}
.ww-plant-catalog .ww-catalog-waste h5 {font-size:20px;}
.ww-plant-catalog .ww-catalog-close {display:flex;align-items:center;gap:24px;justify-content:space-between;margin-top:24px;}
.ww-plant-catalog .ww-catalog-close p {margin:0;max-width:72ch;color:#5f6b7a;font-size:13px;line-height:1.6;}
.ww-plant-catalog .ww-catalog-contact {display:inline-flex;align-items:center;gap:12px;flex-shrink:0;max-width:260px;padding:14px 18px;border:1px solid #004c97;border-radius:10px;background:#004c97;color:white;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;transition:background .2s,box-shadow .2s;}
.ww-plant-catalog .ww-catalog-contact:hover,.ww-plant-catalog .ww-catalog-contact:focus-visible {background:#003c77;box-shadow:0 0 0 3px rgba(0,181,226,.3);outline:none;}
@media(max-width:800px){
 .ww-plant-catalog .ww-catalog-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .ww-plant-catalog .ww-catalog-grid .ww-catalog-card,.ww-plant-catalog .ww-catalog-grid .ww-catalog-card:nth-child(n+5) {grid-column:auto;}
 .ww-plant-catalog .ww-catalog-close {align-items:flex-start;flex-direction:column;gap:16px;}
}
@media(max-width:540px){
 .ww-plant-catalog .ww-catalog-grid,.ww-plant-catalog .ww-catalog-waste {grid-template-columns:minmax(0,1fr);}
 .ww-plant-catalog .ww-catalog-card {padding:20px;}
 .ww-plant-catalog .ww-catalog-photo {max-width:300px;width:100%;margin-left:auto;margin-right:auto;}
 .ww-plant-catalog .ww-catalog-card h5 {font-size:18px;}
}

/* Bring the explanatory diagrams closer to the preceding service content. */
.pageview:is([data-page="agua-purificada"],[data-page="tratamiento-de-agua"]) > main > .section:has(+ .diagram-full) {padding-bottom:24px;}
.pageview:is([data-page="agua-purificada"],[data-page="tratamiento-de-agua"]) > main > .diagram-full {padding-top:24px;}
.pageview[data-page="agua-purificada"] .wrh,.pageview[data-page="tratamiento-de-agua"] .wct {padding-top:12px;}

.ww-plant-delivery .ww-delivery-scope {max-width:78ch;margin:-10px 0 24px;font-size:12px;line-height:1.6;color:#5f6b7a;}
.ww-plant-catalog .ww-catalog-card {position:relative;}
.ww-plant-catalog .ww-catalog-card h5 {margin-bottom:0;color:#004c97;}
.ww-catalog-open {position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:inherit;background:transparent;cursor:pointer;}
.ww-catalog-open:focus-visible {outline:3px solid #00b5e2;outline-offset:3px;}
html.ww-catalog-modal-open {overflow:hidden;}
.ww-catalog-dialog {box-sizing:border-box;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:36px;border:1px solid #b7dceb;border-radius:20px;background:#fff;color:#425061;box-shadow:0 24px 80px #00294f40;overflow:auto;}
.ww-catalog-dialog[open] {animation:ww-catalog-appear .22s ease-out;}
.ww-catalog-dialog::backdrop {background:rgba(0,30,57,.52);backdrop-filter:blur(4px);}
.ww-catalog-dismiss {position:absolute;top:12px;right:12px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #d7e4ed;border-radius:50%;background:#f3f9fc;color:#004c97;font-size:26px;cursor:pointer;}
.ww-catalog-dismiss:focus-visible {outline:3px solid #00b5e2;outline-offset:2px;}
.ww-catalog-eyebrow {display:block;margin:0 44px 14px 0;color:#0086aa;font-size:11px;font-weight:600;letter-spacing:.12em;}
.ww-catalog-dialog h2 {margin:0 20px 20px 0;color:#004c97;font-size:26px;line-height:1.3;}
.ww-catalog-dialog p,.ww-catalog-dialog li {font-size:15px;line-height:1.75;}
.ww-catalog-dialog h3 {font-size:17px;color:#004c97;margin:24px 0 10px;}
.ww-catalog-dialog ul {padding-left:21px;margin:0;}
.ww-catalog-dialog li {padding-left:3px;margin:6px 0;}
.ww-catalog-dialog li::marker {color:#00b5e2;}
.ww-catalog-dialog .ww-catalog-condition {margin:24px 0 0;padding-top:16px;border-top:1px solid #d7e4ed;font-size:12px;color:#5f6b7a;}
@keyframes ww-catalog-appear {from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.ww-catalog-dialog{padding:28px 22px;}.ww-catalog-dialog h2{font-size:22px;}.ww-plant-delivery .ww-delivery-scope{margin-top:0;}}
@media(prefers-reduced-motion:reduce){.ww-catalog-dialog[open]{animation:none;}}

/* One chapter: reference container formats followed by the example process. */
.wct .ww-plant-design { border:1px solid #c8dce9; border-radius:14px; background:rgba(245,247,250,.9); box-shadow:0 6px 24px rgba(0,76,151,.055); }
.wct.ww-plants-expanded .ww-plant-size .wct-plot { padding:22px; border:0; border-radius:14px 14px 0 0; background:transparent; box-shadow:none; }
.wct .ww-plant-size .ww-plant-layout { display:block; }
.wct .ww-plant-size .ww-plant-layout > svg { width:100%; max-width:none; margin:0; }
.wct .ww-plant-size .ww-plant-info { margin-top:16px; }
.wct .ww-plant-size .ww-plant-hint { display:none; }
.wct .ww-plant-size .ww-plant-explanation { padding:14px 18px; }
.wct .ww-plant-size .ww-plant-explanation h4 { margin-bottom:5px; font-size:15px; }
.wct .ww-plant-size .ww-plant-explanation p { font-size:13px; line-height:1.5; max-width:none; }
.wct .ww-plant-design .iran-mount { background:transparent; box-shadow:none; border:0; border-top:1px solid #d3e2ec; border-radius:0 0 14px 14px; }
@media(max-width:700px) {
  .wct.ww-plants-expanded .ww-plant-size .wct-plot { padding:18px 14px; }
  .wct .ww-plant-size .ww-plant-layout > svg { max-width:300px; margin:0 auto; }
  .wct .ww-plant-design .iran-mount { padding:18px 14px; }
}

/* Navy is scoped to the requested rainwater solution-level section. */
.pageview[data-page="captacion-pluvial"] .ww-rain-levels{background:#00294f;color:#dce8f2}
.ww-rain-levels h2,.ww-rain-levels h3,.ww-rain-levels .note strong{color:#fff}
.ww-rain-levels .lead,.ww-rain-levels .step p,.ww-rain-levels .note p{color:#dce8f2}
.ww-rain-levels .accent,.ww-rain-levels .w-label,.ww-rain-levels .note svg{color:#50d5f4}
.ww-rain-levels .w-label{border-color:#50d5f4}
.ww-rain-levels .step{background:#103b61;border-color:#416587}
.ww-rain-levels .ic-chip{background:#164b70;color:#50d5f4}
.ww-rain-levels .note{background:#103b61;color:#dce8f2;border-left-color:#50d5f4}
/* Same blue/product/auxiliary semantics and animated dashes as Plants and Rainwater.
   Geometry, hit targets and responsive layout stay unchanged. */
.wrh .wrh-svg .ww-water-pipe{fill:none;stroke-width:1.8;stroke-linecap:butt;stroke-linejoin:round;filter:none}
.wrh .wrh-svg .ww-water-source{stroke:#004c97}
.wrh .wrh-svg .ww-water-product{stroke:#00b5e2}
.wrh .wrh-svg .ww-water-reject{stroke:#7f99af;stroke-dasharray:5 4}
.wrh .wrh-svg .ww-water-pipe.ww-water-active{stroke-width:2.4;stroke-dasharray:9 4;animation:ww-water-flow 1s linear infinite}
.wrh .wrh-bg .flow{fill:#00b5e2}
.wrh .wrh-roof-system > .flow{fill:#004c97}
@keyframes ww-water-flow{to{stroke-dashoffset:-13}}
@media(prefers-reduced-motion:reduce){.wrh .wrh-svg .ww-water-active{animation:none}}

/* A single visual introduction joins technical capacity to the plant diagrams. */
.plant-intro {background:#00294f;color:#fff;padding:38px 0 34px;scroll-margin-top:12px;}
.plant-intro__inner {max-width:1124px;}
.plant-intro__eyebrow {margin:0 0 12px;color:#63dbf5;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;}
.plant-intro h2 {margin:0;color:#fff;font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-.025em;}
.plant-intro h2 span {color:#63dbf5;}
.plant-intro__visual {display:none;}
.plant-intro__copy {max-width:78ch;margin-top:18px;}
.plant-intro__copy p {margin:0;color:#e2edf7;font-size:16px;line-height:1.55;}
.plant-intro__copy .plant-intro__technologies {margin-top:8px;color:#bfcee0;font-size:14px;}
.plant-intro__link {display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:10px 18px;margin-top:20px;border:1px solid #63dbf5;border-radius:8px;color:#fff;font-size:14px;font-weight:600;text-decoration:none;}
.plant-intro__link:hover {background:#003b68;}
.plant-intro__link:focus-visible {outline:3px solid #63dbf5;outline-offset:4px;}
#planta-formatos {scroll-margin-top:12px;}
@media(max-width:1000px) {
  .plant-intro {padding:28px 0;}
  .plant-intro__inner {max-width:640px;}
  .plant-intro h2 {font-size:clamp(27px,5vw,34px);line-height:1.16;}
  .plant-intro__visual {display:block;margin:22px 0 0;}
  .plant-intro__visual img {display:block;width:100%;height:auto;object-fit:contain;border-radius:12px;background:#fff;}
  .plant-intro__visual figcaption {margin-top:10px;color:#d1e5f2;font-size:12px;line-height:1.45;}
  .plant-intro__copy {margin-top:16px;}
  .plant-intro__copy p {font-size:14px;}
  .plant-intro__copy .plant-intro__technologies {font-size:12px;}
  .plant-intro__link {width:100%;margin-top:18px;}
}

/* Landscape project images fill the existing card frame. */
.case__media--landscape {background:#fff;}
.case__media--landscape img {display:block;object-fit:cover;object-position:center;}
.case__media--malaysia img {box-sizing:border-box;padding-top:12px;object-fit:contain;}
.ww-plant-catalog .ww-catalog-photo--single img {position:static;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;}
