/* =====================================================================
   PAXIO Empresas · empresas.paxio.mx
   Réplica web del PPTX "PAXIO Bienestar Empresarial".
   Fuente de este archivo: src/styles.css. build.mjs expande las macros:
     u(N) -> calc(var(--u) * N)                  N px del lienzo de 1920
     t(N) -> max(16px, calc(var(--u) * N))       texto de lectura (mínimo 16 px)
     s(N) -> max(14px, calc(var(--u) * N))       texto chico (mínimo 14 px)
   --u vale 1px a 1920 de ancho, escala en proporción hasta 1200 y ahí se
   queda en .625px (debajo de 1200 las secciones se apilan).
   ===================================================================== */

:root {
  color-scheme: light;
  --u: clamp(0.625px, calc(100vw / 1920), 1px);
  --hdr: calc(var(--u) * 132);
  --f-ui: 'Carlito', Calibri, 'Segoe UI', Arial, sans-serif;
  --f-sans: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
  --f-serif: 'Crimson Pro', Georgia, 'Times New Roman', serif;
  --hdr-bg: #D6E1D2;
  --nav: #4A4125;
  --green-900: #33431B;
  --teal: #1AAFA8;
  --teal-blue: #188DA2;
  --text: #545552;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: var(--hdr); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
body {
  margin: 0;
  background: #FFFFFF;
  color: var(--text);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
h1, h2, h3, p, ul, ol, blockquote, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
img, svg { display: block; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
abbr[title] { text-decoration: none; cursor: help; }
b, strong { font-weight: 700; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid #0B768A; outline-offset: 3px; }
.sr-only {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.skip {
  position: absolute; left: 16px; top: -60px; z-index: 300;
  padding: 10px 16px; border-radius: 8px;
  background: var(--green-900); color: #fff; font-weight: 600; text-decoration: none;
}
.skip:focus { top: 12px; }

/* =====================================================================
   ENCABEZADO (igual en las 10 láminas)
   ===================================================================== */
.site-header {
  position: sticky; top: 0; z-index: 100;
  height: var(--hdr);
  background: var(--hdr-bg);
}
.site-header__inner { position: relative; max-width: calc(var(--u) * 1920); height: 100%; margin: 0 auto; }
.site-header__logo {
  position: absolute; left: calc(var(--u) * 82.7); top: calc(var(--u) * 18.9);
  height: calc(var(--u) * 97.8); display: block;
}
.site-header__logo img { height: 100%; width: auto; }
.nav-toggle { display: none; }

.nav {
  position: absolute; left: calc(var(--u) * 480); right: calc(var(--u) * 57); top: 0; height: 100%;
  display: flex;
}
.nav-menu { display: flex; height: 100%; }
.nav-item { height: 100%; }
.nav-item a,
.lang summary {
  position: relative; display: block; height: 100%;
  padding-top: calc(var(--u) * 51);
  font-family: var(--f-ui); font-size: max(15px, calc(var(--u) * 22.5)); line-height: 1;
  text-align: center; white-space: nowrap;
  color: var(--nav); text-decoration: none;
  font-variant-ligatures: no-common-ligatures;
}
.nav-item--1 { width: calc(var(--u) * 225); }
.nav-item--2 { width: calc(var(--u) * 231); margin-left: calc(var(--u) * 18); }
.nav-item--3 { width: calc(var(--u) * 192); margin-left: calc(var(--u) * 21); }
.nav-item--4 { width: calc(var(--u) * 174); margin-left: calc(var(--u) * 21); }
.nav-item--5 { width: calc(var(--u) * 213); margin-left: calc(var(--u) * 18); }
.nav-item a::after {
  content: ""; position: absolute; left: calc(var(--u) * 21); right: calc(var(--u) * 21); top: calc(var(--u) * 117);
  height: calc(var(--u) * 6); background: var(--teal);
  transform: scaleX(0); opacity: 0;
  transition: transform .18s ease, opacity .18s ease;
}
.nav-item a:hover { color: var(--green-900); }
.nav-item a:hover::after { transform: scaleX(1); opacity: .4; }
.nav-item a.is-active { font-weight: 700; color: var(--green-900); }
.nav-item a.is-active::after { transform: scaleX(1); opacity: 1; }
.nav-item a:focus-visible { outline-offset: -4px; }

.lang { position: relative; margin-left: auto; width: calc(var(--u) * 123); height: 100%; }
.lang summary { list-style: none; cursor: pointer; }
.lang summary::-webkit-details-marker { display: none; }
.lang summary::after {
  content: ""; display: inline-block; width: calc(var(--u) * 7); height: calc(var(--u) * 7); min-width: 5px; min-height: 5px;
  margin-left: calc(var(--u) * 8); vertical-align: 0.2em;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg); opacity: .7;
}
.lang summary:hover { color: var(--green-900); }
.lang__menu {
  position: absolute; right: calc(var(--u) * 10); top: calc(100% - calc(var(--u) * 26)); z-index: 5;
  min-width: 160px; padding: 6px 0;
  background: #fff; border-radius: 10px;
  box-shadow: 0 10px 30px rgba(40, 45, 20, .16);
}
.lang__menu a {
  display: block; padding: 10px 20px;
  font-family: var(--f-ui); font-size: 17px; color: var(--nav); text-decoration: none;
}
.lang__menu a:hover { background: #F1F5EF; color: var(--green-900); }
.lang__menu a[aria-current="page"] { font-weight: 700; color: var(--green-900); }
.lang-m { display: none; }

/* =====================================================================
   LÁMINA 1 · PORTADA
   ===================================================================== */
.hero {
  position: relative; overflow: hidden;
  height: max(460px, min(calc(var(--u) * 948), calc(100svh - var(--hdr))));
  background: #FFFFFF;
}
.hero picture, .hero__img {
  position: absolute; inset: 0; width: 100%; height: 100%;
}
.hero__img { object-fit: cover; object-position: 50% 50%; }   /* foto viva, como en la referencia de la clienta (oct 2026) */
/* velo inferior suave para que la frase se lea sobre el piso claro y las sillas */
.hero::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 35%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .35) 100%);
  pointer-events: none;
}
.hero__inner { position: absolute; inset: 0; z-index: 1; max-width: calc(var(--u) * 1920); margin: 0 auto; }
.hero__text {
  position: absolute; left: calc(var(--u) * 110); bottom: calc(var(--u) * 77); max-width: calc(var(--u) * 1320);
  font-family: var(--f-ui); font-weight: 400;
  font-size: max(18px, calc(var(--u) * 36)); line-height: 1.083;
  color: #FFFFFF;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .45), 0 0 18px rgba(0, 0, 0, .18);
  font-variant-ligatures: no-common-ligatures;
}

/* =====================================================================
   LÁMINA 2 · EL BIENESTAR TAMBIÉN ES UNA DECISIÓN ESTRATÉGICA
   ===================================================================== */
.pq { background: #FFFFFF; padding: 0 0 calc(var(--u) * 64); }
.pq__inner { width: min(calc(var(--u) * 1748), calc(100% - 32px)); margin: 0 auto; }
.pq__title {
  text-align: center;
  font: 600 calc(var(--u) * 44)/1.05 var(--f-sans); color: #4D3D1A;
}
.pq__sub {
  margin-top: calc(var(--u) * 10); text-align: center;
  font: 400 max(16px, calc(var(--u) * 24))/1.375 var(--f-sans); color: var(--text);
}
.pq__stats {
  display: grid; grid-template-columns: 565fr 544fr 599fr; gap: calc(var(--u) * 22);
  margin-top: calc(var(--u) * 22);
}
.stat {
  display: flex; flex-direction: column;
  min-height: calc(var(--u) * 316);
  padding: calc(var(--u) * 20) calc(var(--u) * 22) calc(var(--u) * 12) calc(var(--u) * 32);
  background: #FFFFFF;
  border: 1px solid #9E9A97; border-radius: calc(var(--u) * 18);   /* oscurecido a pedido de la clienta (oct 2026) */
  box-shadow: 0 1px 3px rgba(40, 40, 30, .08);
}
.stat__top { display: flex; align-items: flex-start; gap: calc(var(--u) * 34); }
.stat__icon {
  flex: none; width: calc(var(--u) * 106); height: calc(var(--u) * 106); margin-top: calc(var(--u) * 4);
  display: grid; place-items: center;
  border-radius: 50%; background: #E7EBE3; color: #666A2C;
}
.stat--1 .stat__icon { color: #62751A; }
.stat__icon svg { width: calc(var(--u) * 80); height: auto; }
.stat--2 .stat__icon svg { width: calc(var(--u) * 66); }
.stat--3 .stat__icon svg { width: calc(var(--u) * 72); }
.stat--2 .garabato { stroke: #6A7624; }
.stat__body { min-width: 0; }
.stat__pre { font: 700 calc(var(--u) * 28)/1 var(--f-sans); color: #4E3A1D; }
.stat__fig {
  display: flex; align-items: baseline; gap: 0 calc(var(--u) * 16); flex-wrap: nowrap; white-space: nowrap;
  line-height: 1; margin-top: calc(var(--u) * -2);
}
.stat--1 .stat__fig { margin-top: calc(var(--u) * -20); }
:lang(en) .stat--1 .stat__fig { margin-top: calc(var(--u) * -14); }   /* la cola de la "y" de "Only" */
.stat--1 .stat__num { position: relative; top: calc(var(--u) * 9); }   /* el "3" baja 9 px, como en la maqueta */
.stat--2 .stat__fig { margin-top: calc(var(--u) * 3); }
.stat--3 .stat__pct { margin-top: calc(var(--u) * -7); }
.stat__num { font-size: calc(var(--u) * 88); font-weight: 600; color: #4C5B0A; letter-spacing: -.01em; }
.stat__de { font-size: calc(var(--u) * 36); font-weight: 600; color: #5B6D23; }
.stat__ten { font-size: calc(var(--u) * 52); font-weight: 600; color: #4C5B0A; }
.stat__who { margin-top: calc(var(--u) * 8); font: 700 max(16px, calc(var(--u) * 23))/1.2 var(--f-sans); color: #35363B; }
.stat__text { margin-top: calc(var(--u) * 12); font: 400 max(16px, calc(var(--u) * 21))/1.48 var(--f-sans); color: var(--text); }
.stat__pct { font: 600 calc(var(--u) * 77)/1 var(--f-sans); color: #4C5B0A; white-space: nowrap; }
.stat__pct span { font-size: calc(var(--u) * 45); font-weight: 500; color: #5B6D23; margin-left: calc(var(--u) * 6); }
.stat__lead { margin-top: calc(var(--u) * 8); font: 700 max(16px, calc(var(--u) * 21))/1.2 var(--f-sans); color: #4E3A1D; }
.stat__note { margin-top: calc(var(--u) * 8); font: 400 max(14px, calc(var(--u) * 18.5))/1.3 var(--f-sans); color: var(--text); }
.stat__list { margin-top: calc(var(--u) * 20); padding-left: calc(var(--u) * 4); }
.stat__list li {
  position: relative; padding-left: calc(var(--u) * 28);
  font: 400 max(14px, calc(var(--u) * 18.5))/1.75 var(--f-sans); color: var(--text);
}
.stat__list li::before {
  content: ""; position: absolute; left: 0; top: .62em;
  width: max(8px, calc(var(--u) * 11.5)); height: max(8px, calc(var(--u) * 11.5)); border-radius: 50%; background: #84A474;
}
.stat__list b { color: #5B6D23; }
.stat__src {
  position: relative; margin-top: auto; padding-top: calc(var(--u) * 14);
  font: 400 max(14px, calc(var(--u) * 17))/1.2 var(--f-sans); color: var(--text);
}
.stat__src::before {
  content: ""; position: absolute; left: 0; top: 0; width: 92%; height: 2px;
  background: linear-gradient(90deg, #7F9C7B 0%, rgba(127, 156, 123, .55) 40%, rgba(127, 156, 123, 0) 100%);
}
.stat__list + .stat__src { margin-top: calc(var(--u) * 7); }
@media (min-width: 1200px) and (max-width: 1599px) {
  .stat { padding-left: calc(var(--u) * 24); padding-right: calc(var(--u) * 12); }
  .stat__top { gap: calc(var(--u) * 22); }
}

.pq__sep { display: flex; align-items: center; justify-content: center; margin-top: calc(var(--u) * 18); }
.pq__sep h3 {
  margin: 0 calc(var(--u) * 44); text-align: center;
  font: 600 calc(var(--u) * 30)/1.2 var(--f-sans); color: #637C4C;
}
.pq__leaf { flex: none; width: calc(var(--u) * 35); height: auto; color: #8AA07E; }
.pq__leaf--r { transform: scaleX(-1); }
.pq__line {
  flex: none; width: calc(var(--u) * 82); height: 2px; margin-right: calc(var(--u) * 13);
  background: linear-gradient(90deg, rgba(187, 203, 186, 0), #BBCBBA);
}
.pq__line--r { margin: 0 0 0 calc(var(--u) * 13); transform: scaleX(-1); }

.pq__learn { display: grid; grid-template-columns: 570fr 571fr 580fr; gap: calc(var(--u) * 13); margin-top: calc(var(--u) * 8); }
.learn {
  min-height: calc(var(--u) * 277); padding: calc(var(--u) * 16) calc(var(--u) * 20) calc(var(--u) * 19);
  background: #ECEFE8; border-radius: calc(var(--u) * 11);
  text-align: center;
}
.learn__icon {
  width: calc(var(--u) * 104); height: calc(var(--u) * 104); margin: 0 auto;
  display: grid; place-items: center;
  border-radius: 50%; background: #FFFFFF; color: #5E4B32;
}
.learn__icon svg { width: calc(var(--u) * 80); height: auto; }
.learn--2 .learn__icon svg { width: calc(var(--u) * 72); }
.learn p { margin-top: calc(var(--u) * 7); font: 400 max(16px, calc(var(--u) * 24))/1.35 var(--f-sans); color: #3C3E3B; }
.learn b { color: #486130; }

.pq__rule { margin: calc(var(--u) * 22) 0 0; border: 0; height: 2px; background: #EAEAEB; }
.pq__close { margin-top: calc(var(--u) * 22); text-align: center; font: 400 max(16px, calc(var(--u) * 22))/1.4 var(--f-sans); color: #5D5D60; }
.pq__cta {
  display: flex; align-items: center; justify-content: center; gap: calc(var(--u) * 24);
  width: max-content; max-width: 100%; min-height: max(48px, calc(var(--u) * 53));
  margin: calc(var(--u) * 10) auto 0; padding: calc(var(--u) * 8) calc(var(--u) * 49) calc(var(--u) * 8) calc(var(--u) * 47);
  border-radius: 999px; background: #587143; color: #EEF2EA;
  font: 500 max(16px, calc(var(--u) * 24))/1.2 var(--f-sans); text-decoration: none;
  transition: background-color .15s ease, transform .15s ease;
}
.pq__cta .chev { width: max(9px, calc(var(--u) * 11)); height: auto; transition: transform .15s ease; }
.pq__cta:hover { background: #4A6138; }
.pq__cta:hover .chev { transform: translateX(3px); }
.pq__cta:active { transform: scale(.98); }

/* =====================================================================
   LÁMINA 3 · LA TRANQUILIDAD DE TRABAJAR CON PAXIO
   ===================================================================== */
.tq { background: #FCFBF9; }
.tq__inner {
  display: grid; grid-template-columns: calc(var(--u) * 820) 1fr;
  max-width: calc(var(--u) * 1920); margin: 0 auto;
}
.tq__foto {
  padding: calc(var(--u) * 63) 0 calc(var(--u) * 40) calc(var(--u) * 215);
  background-color: #FCFBF9;
  background-image: url(/assets/img/tranquilidad@2x.jpg);
  background-image: image-set(url(/assets/img/tranquilidad@2x.webp) type("image/webp"), url(/assets/img/tranquilidad@2x.jpg) type("image/jpeg"));
  background-size: cover; background-position: left bottom; background-repeat: no-repeat;
}
.tq h2 { font: 500 calc(var(--u) * 58)/1.14 var(--f-sans); color: #36410E; }
.tq__raya { display: block; width: calc(var(--u) * 185); height: max(3px, calc(var(--u) * 4)); margin: calc(var(--u) * 19) 0 calc(var(--u) * 27); background: #0B768A; }
.tq__foto p { max-width: calc(var(--u) * 400); font: 400 max(16px, calc(var(--u) * 21))/1.6 var(--f-sans); color: #313230; }
.tq__lista { display: flex; flex-direction: column; gap: calc(var(--u) * 10); padding: calc(var(--u) * 24) calc(var(--u) * 34) calc(var(--u) * 24) 0; }
.fila {
  display: grid; grid-template-columns: calc(var(--u) * 100) calc(var(--u) * 90) calc(var(--u) * 305) 2px 1fr; align-items: center;
  min-height: calc(var(--u) * 114); padding: calc(var(--u) * 7) calc(var(--u) * 33);
  border-radius: calc(var(--u) * 10);
}
.fila:nth-child(odd) { background: #EAECDE; box-shadow: 0 1px 3px rgba(60, 60, 20, .06); }
.fila:nth-child(even) { background: #FCFBF9; border: 1px solid #E9E6E1; box-shadow: 0 2px 6px rgba(60, 50, 30, .05); }
.fila__icono {
  width: calc(var(--u) * 100); height: calc(var(--u) * 100);
  display: grid; place-items: center;
  border-radius: 50%; background: #F3F3EB; color: #3E4712;
}
.fila__icono svg { width: calc(var(--u) * 62); height: calc(var(--u) * 62); stroke-width: 1.15; }
@media (min-width: 1200px) { .fila:nth-child(5) .fila__icono svg { width: calc(var(--u) * 72); height: calc(var(--u) * 72); stroke-width: 1.05; } }
.fila__num {
  width: calc(var(--u) * 44); height: calc(var(--u) * 44); margin-left: calc(var(--u) * 46);
  display: grid; place-items: center;
  border-radius: 50%; background: #526302; color: #FFFFFF;
  font: 700 calc(var(--u) * 23)/1 var(--f-sans);
}
.fila h3 { margin-left: calc(var(--u) * 34); font: 700 max(16px, calc(var(--u) * 20.5))/1.45 var(--f-sans); color: #36410E; }
.fila__div { align-self: stretch; margin: calc(var(--u) * 8) 0; background: rgba(0, 0, 0, .07); }
.fila p { margin-left: calc(var(--u) * 44); padding: calc(var(--u) * 8) 0; font: 400 max(16px, calc(var(--u) * 19.5))/1.4 var(--f-sans); color: #313230; text-wrap: pretty; }
@media (min-width: 1200px) { .fila p strong { white-space: nowrap; } }
@media (max-width: 1499px) { br.dl { display: none; } }
.fila p strong { color: #36410E; }

/* =====================================================================
   FRANJA DE CLIENTES (láminas 3, 4 y 5; se muestra una vez)
   ===================================================================== */
.clientes { position: relative; background: #EEEDEE; padding: calc(var(--u) * 29) 16px calc(var(--u) * 52); }
.clientes__frase {
  display: flex; align-items: center; justify-content: center; gap: calc(var(--u) * 55);
  font: 400 calc(var(--u) * 30.5)/1.2 var(--f-ui); color: #6B8456; text-align: center;
}
.clientes__frase::before,
.clientes__frase::after {
  content: ""; flex: 0 0 calc(var(--u) * 200); height: max(7px, calc(var(--u) * 9));
  background:
    radial-gradient(circle closest-side, #6E8C60 78%, transparent 100%) right center / max(7px, calc(var(--u) * 9)) max(7px, calc(var(--u) * 9)) no-repeat,
    linear-gradient(#AEB9A3, #AEB9A3) left center / calc(var(--u) * 196) 2px no-repeat;
}
.clientes__frase::after {
  background:
    radial-gradient(circle closest-side, #6E8C60 78%, transparent 100%) left center / max(7px, calc(var(--u) * 9)) max(7px, calc(var(--u) * 9)) no-repeat,
    linear-gradient(#AEB9A3, #AEB9A3) right center / calc(var(--u) * 196) 2px no-repeat;
}
@media (max-width: 1509px) { .clientes__frase { color: #56703F; } }
/* Marquesina de los 18 logos: dos copias idénticas de la lista (la 2.ª con aria-hidden y alt="").
   La pista se desplaza la mitad de su ancho (= una copia) y vuelve a empezar sin salto. Entre copias no va
   gap ni margin: cualquier hueco extra hace brincar la unión en cada vuelta (la separación es el padding del li).
   La duración (--dur, --dur-m) la calcula page.mjs con los altos: ancho de una copia / velocidad. */
.clientes__marco {
  --fade: calc(var(--u) * 150);   /* desvanecido en las orillas */
  width: min(calc(var(--u) * 1640), 100%); margin: calc(var(--u) * 26) auto 0;
  overflow: hidden; overflow: clip;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 var(--fade), #000 calc(100% - var(--fade)), transparent);
          mask-image: linear-gradient(90deg, transparent, #000 var(--fade), #000 calc(100% - var(--fade)), transparent);
}
.clientes__pista {
  display: flex; width: max-content;
  animation: clientes-pasa var(--dur) linear infinite;
}
.clientes__logos { display: flex; align-items: center; height: calc(var(--u) * 90); }
.clientes__logos li { position: relative; flex: none; padding: 0 calc(var(--u) * 42); }   /* 84 u entre logos */
/* Sin filetes mientras se mueve: una raya de 1-2 px titila al caer entre píxeles. Solo van en la rejilla fija */
.logo { height: calc(var(--u) * var(--h)); width: auto; max-width: none; }
@keyframes clientes-pasa { to { transform: translate3d(-50%, 0, 0); } }
/* Pausa: con el cursor encima (solo con ratón: en táctil el hover se queda pegado) o con el botón */
@media (hover: hover) and (pointer: fine) {
  .clientes__marco:hover .clientes__pista { animation-play-state: paused; }
}
.clientes.is-paused .clientes__pista { animation-play-state: paused; }
.clientes__pausa {
  position: absolute; right: max(16px, calc((100% - calc(var(--u) * 1640)) / 2)); top: calc(calc(var(--u) * 47) - 16px);   /* a la altura de la frase */
  width: 32px; height: 32px; padding: 0;
  display: grid; place-items: center;
  border: 1px solid #C5CACF; border-radius: 50%; background: transparent; color: #505D69;
  opacity: .75; cursor: pointer; transition: opacity .2s ease, background-color .2s ease;
}
.clientes__pausa[hidden] { display: none; }
.clientes__pausa:focus-visible { opacity: 1; background: #FFFFFF; }
@media (hover: hover) { .clientes__pausa:hover { opacity: 1; background: #FFFFFF; } }   /* en táctil el hover se queda pegado */
.clientes__pausa svg { width: 14px; height: 14px; fill: currentColor; }
.clientes__i-mover, .clientes.is-paused .clientes__i-pausa { display: none; }
.clientes.is-paused .clientes__i-mover { display: block; }
/* Movimiento reducido: rejilla fija de 6 columnas (3 filas) con los filetes de la franja original; sin copia, máscara ni botón */
@media (prefers-reduced-motion: reduce) {
  .clientes__marco { -webkit-mask-image: none; mask-image: none; }
  .clientes__pista { display: block; width: auto; }   /* block: la rejilla toma todo el ancho y se centra */
  .clientes__logos { display: grid; grid-template-columns: repeat(6, calc(var(--u) * 260)); justify-content: center; height: auto; row-gap: calc(var(--u) * 14); }
  .clientes__logos li { height: calc(var(--u) * 90); display: grid; place-items: center; padding: 0; }
  .clientes__logos li + li::before {
    content: ""; position: absolute; left: -1px; top: 50%;
    width: 2px; height: calc(var(--u) * 71); transform: translateY(-50%);
    background: #C9C9C9;
  }
  .clientes__logos li:nth-child(6n + 1)::before { display: none; }
  .clientes__logos[aria-hidden] { display: none; }
  .logo { max-width: 88%; object-fit: contain; }
  .clientes__pausa { display: none; }
}

/* =====================================================================
   LÁMINA 4 · NUESTRO EXPERTISE
   ===================================================================== */
.exp { background: #FFFFFF; padding: calc(var(--u) * 30) 0 calc(var(--u) * 60); }
.exp__inner { width: min(calc(var(--u) * 1628), calc(100% - 32px)); margin: 0 auto; }
.exp__intro {
  padding-left: calc(var(--u) * 27);
  font-family: var(--f-ui); font-size: calc(var(--u) * 36); line-height: 1.22; color: #303133;
  font-variant-ligatures: no-common-ligatures;
}
.exp__intro h2 { font: inherit; font-weight: 700; }
.exp__grid {
  display: grid; grid-template-columns: 534fr 519fr 533fr; gap: calc(var(--u) * 20) calc(var(--u) * 21);
  margin-top: calc(var(--u) * 29);
}
.enfoque {
  display: flex; align-items: center; gap: calc(var(--u) * 29);
  min-height: calc(var(--u) * 194); padding: calc(var(--u) * 22) calc(var(--u) * 4) calc(var(--u) * 22) calc(var(--u) * 29);
  background: #F7F7F5; border-radius: calc(var(--u) * 16);
}
.enfoque__icono {
  flex: 0 0 calc(var(--u) * 148); height: calc(var(--u) * 148);
  display: grid; place-items: center;
  border-radius: 50%; border: 2px solid #AAB8A4; color: #4B6843;
  transition: border-color .2s ease;
}
.enfoque:hover .enfoque__icono { border-color: #9FB197; }
.enfoque__icono svg { width: calc(var(--u) * 96); height: calc(var(--u) * 96); stroke-width: .9; }
.enfoque--estrella .enfoque__icono svg { width: calc(var(--u) * 92); height: calc(var(--u) * 92); stroke-width: .94; }
.enfoque--cuerpo-columna .enfoque__icono svg,
.enfoque--caballo-ajedrez .enfoque__icono svg,
.enfoque--ciclo .enfoque__icono svg { width: calc(var(--u) * 112); height: calc(var(--u) * 112); stroke-width: .77; }
.enfoque--cultura .enfoque__icono svg { width: calc(var(--u) * 115); height: calc(var(--u) * 115); stroke-width: .75; }
.enfoque__texto {
  align-self: flex-start; padding-top: calc(var(--u) * 28);
  font: 700 max(14px, calc(var(--u) * 23))/1.35 var(--f-ui); color: #2C2D30;
  font-variant-ligatures: no-common-ligatures;
}
.enfoque__texto::before {
  content: ""; display: block; width: calc(var(--u) * 35); height: max(2px, calc(var(--u) * 3)); margin-bottom: calc(var(--u) * 15);
  border-radius: 2px; background: #6B8B59;
}

/* =====================================================================
   LÁMINA 5 · MODALIDADES
   ===================================================================== */
.mods { background: #FEFEFE; padding: calc(var(--u) * 44) 0 calc(var(--u) * 72); text-align: center; }
.mods__title { padding: 0 16px; font: 700 calc(var(--u) * 50)/1.2 var(--f-sans); letter-spacing: -.03em; color: #14210A; }
.mods__sub { margin-top: calc(var(--u) * 22); padding: 0 16px; font: 400 max(16px, calc(var(--u) * 22))/1.5 var(--f-sans); color: #2E2F36; }
.mods__grid {
  display: grid; grid-template-columns: repeat(3, calc(var(--u) * 390)); gap: calc(var(--u) * 30);
  justify-content: center; margin-top: calc(var(--u) * 49);
}
.modalidad {
  position: relative; display: flex; flex-direction: column;
  min-height: calc(var(--u) * 542);
  border: 1px solid var(--borde); border-radius: calc(var(--u) * 16); overflow: hidden;
  box-shadow: 0 1px 2px rgba(60, 50, 30, .06);
  transition: transform .2s ease, box-shadow .2s ease;
}
.modalidad:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(60, 50, 30, .12); }
.modalidad--eventual { --borde: #E5D5BC; }
.modalidad--continuo { --borde: #D2DBC6; }
.modalidad--adaptado { --borde: #BDC8D5; }
.modalidad__cab {
  position: relative; flex: 0 0 calc(var(--u) * 196); margin: -1px -1px 0;
  display: flex; align-items: center; justify-content: center; gap: calc(var(--u) * 24);
  padding: calc(var(--u) * 6) calc(var(--u) * 16) 0;
  border-bottom: 1px solid rgba(0, 0, 0, .14);
}
.modalidad--eventual .modalidad__cab::after {
  content: ""; position: absolute; left: calc(var(--u) * 52); right: calc(var(--u) * 52); bottom: calc(var(--u) * 2);
  height: 2px; background: rgba(255, 255, 255, .38);
}
.modalidad__icono {
  flex: 0 0 calc(var(--u) * 104); height: calc(var(--u) * 104);
  display: grid; place-items: center;
  border-radius: 50%; border: 2px solid rgba(255, 255, 255, .55); color: #F8F6F1;
}
.modalidad__icono svg { width: calc(var(--u) * 66); height: calc(var(--u) * 66); stroke-width: 1.3; }
.modalidad--continuo .modalidad__icono svg { width: calc(var(--u) * 74); height: calc(var(--u) * 74); stroke-width: 1.17; }
.modalidad--adaptado .modalidad__icono svg { width: calc(var(--u) * 76); height: calc(var(--u) * 76); stroke-width: 1.14; }
.modalidad__nombre {
  margin-top: calc(var(--u) * 8); min-width: calc(var(--u) * 150); text-align: left;
  font: 500 calc(var(--u) * 31)/1.48 var(--f-sans); color: #F8F6F1;
}
.modalidad__cuerpo {
  flex: 1; display: flex; flex-direction: column; align-items: center;
  padding: calc(var(--u) * 28) calc(var(--u) * 20) calc(var(--u) * 25);
  color: #3B3B3C;
}
.modalidad__desde, .modalidad__unidad { font: 500 max(16px, calc(var(--u) * 20))/1.3 var(--f-sans); }
.modalidad__unidad { margin-top: calc(var(--u) * 4); color: #42413E; }
.modalidad__precio {
  margin-top: calc(var(--u) * 3);
  font: 400 calc(var(--u) * 50)/1.08 var(--f-sans); letter-spacing: -.03em; color: #26330F;
}
.modalidad__texto { margin-top: calc(var(--u) * 22); font: 400 max(16px, calc(var(--u) * 16)) var(--f-sans); line-height: max(1.5em, calc(var(--u) * 28.5)); color: #3A3E2C; text-wrap: balance; }
.modalidad__lead { margin-top: calc(var(--u) * 11); font: 600 max(16px, calc(var(--u) * 19))/1.3 var(--f-sans); color: #2A3021; }
.modalidad__texto--lg { margin-top: calc(var(--u) * 14); font-size: max(16px, calc(var(--u) * 19)); line-height: 1.55; color: #38383A; }
.modalidad__texto--lg + .modalidad__texto--lg { margin-top: calc(var(--u) * 18); }
.modalidad--adaptado .modalidad__lead { color: #1B2B35; }
.modalidad--adaptado .modalidad__texto--lg { color: #383C4C; }
@media (min-width: 1200px) { .modalidad__cuerpo > p:last-of-type { margin-bottom: calc(var(--u) * 24); } }
@media (max-width: 1908px) { .modalidad--continuo br.d { display: none; } }
/* 1200-1759: el mínimo de 16 px ya no deja caber los renglones forzados de la maqueta */
@media (min-width: 1200px) and (max-width: 1759px) {
  .modalidad__texto br.d, .stat__text br.d, .stat__note br.d { display: none; }
  .testi-card:not(.is-active) .testi-role br.d { display: none; }
  .modalidad__texto, .stat__text, .stat__note { text-wrap: balance; }
}
.modalidad__info {
  margin-top: auto;
  width: max(34px, calc(var(--u) * 38)); height: max(34px, calc(var(--u) * 38));
  display: grid; place-items: center; flex: none;
  border-radius: 50%; color: #F2F1EC;
  background: radial-gradient(circle at 50% 68%, #324102 0%, #27330A 45%, #1F2A03 100%);
  transition: box-shadow .15s ease, background-color .15s ease;
}
.modalidad__info::after { content: ""; position: absolute; inset: 0; }   /* tarjeta completa clicable */
.modalidad__info svg { width: max(11px, calc(var(--u) * 14)); height: auto; }
.modalidad:hover .modalidad__info { box-shadow: 0 0 0 calc(var(--u) * 1.5) #1F2A03; }   /* sin transform: rompería la tarjeta clicable */
.modalidad__info:focus-visible { outline-offset: 3px; }
/* colores planos (las texturas se agregan al final del archivo) */
.modalidad--eventual .modalidad__cab { background-color: #83704A; }
.modalidad--eventual .modalidad__cuerpo { background-color: #F0E2CD; }
.modalidad--continuo .modalidad__cab { background-color: #717C5F; }
.modalidad--continuo .modalidad__cuerpo { background-color: #DCE3D2; }
.modalidad--adaptado .modalidad__cab { background-color: #5B6F84; }
.modalidad--adaptado .modalidad__cuerpo { background-color: #CED8E3; }

/* =====================================================================
   LÁMINAS 6, 7 Y 8 · DETALLE DE CADA MODALIDAD (foto + panel translúcido)
   ===================================================================== */
.mod {
  position: relative; overflow: hidden;
  height: calc(var(--u) * 948);
  background: #FFFFFF; color: #FFFFFF;
  font-family: var(--f-ui); font-size: calc(var(--u) * 32); line-height: 1.35;
  font-variant-ligatures: no-common-ligatures;
}
.mod__cabecera { position: absolute; inset: 0; }
.mod__cabecera picture, .mod__foto { position: absolute; inset: 0; width: 100%; height: 100%; }
.mod__foto { object-fit: cover; }
.mod--eventual .mod__foto { opacity: .84; object-position: 25% 0%; }
.mod--continuo .mod__foto { opacity: 1; object-position: 50% 50%; }   /* foto viva (oct 2026) */
.mod--adaptado .mod__foto { object-position: 50% 50%; }
.mod__lienzo { position: relative; width: 100%; max-width: calc(var(--u) * 1920); height: 100%; margin: 0 auto; }
.mod__titulo {
  position: absolute; z-index: 1; margin: 0;
  font-family: var(--f-ui); font-weight: 400; line-height: 1.125; color: #FFFFFF;
  text-shadow: 0 1px 12px rgba(0, 0, 0, .18);
}
.mod__titulo::after { content: ""; display: block; height: calc(var(--u) * 6); background: var(--teal-blue); }
.mod--eventual .mod__titulo { left: calc(var(--u) * 83); top: calc(var(--u) * 401.9); font-size: calc(var(--u) * 70.5); max-width: calc(var(--u) * 421); }
.mod--eventual .mod__titulo::after { width: calc(var(--u) * 258); margin: calc(var(--u) * 29.5) 0 0 calc(var(--u) * -2); }
.mod--continuo .mod__titulo { left: calc(var(--u) * 81.2); top: calc(var(--u) * 356.4); font-size: calc(var(--u) * 96); max-width: calc(var(--u) * 428); }
.mod--continuo .mod__titulo::after { width: calc(var(--u) * 301); margin: calc(var(--u) * 8.6) 0 0 calc(var(--u) * 11.8); }
.mod--adaptado .mod__titulo { left: calc(var(--u) * 112.9); top: calc(var(--u) * 279.6); font-size: calc(var(--u) * 88); max-width: calc(var(--u) * 481); }
.mod--adaptado .mod__titulo::after { width: calc(var(--u) * 258); margin: calc(var(--u) * 0.4) 0 0 calc(var(--u) * 11.1); }
@media (min-width: 1200px) {
  :lang(en) .mod--adaptado .mod__titulo::after { margin-top: calc(var(--u) * 14); }
  /* velo suave a la izquierda: los títulos blancos caen sobre carpas y salas blancas */
  .mod--continuo .mod__cabecera::after, .mod--adaptado .mod__cabecera::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(30, 28, 28, .38) 0, rgba(30, 28, 28, .26) calc(var(--u) * 460), rgba(30, 28, 28, 0) calc(var(--u) * 640));
  }
}

.panel { position: absolute; background: rgba(59, 56, 56, .472); text-shadow: 0 1px 2px rgba(0, 0, 0, .28); }
.mod--eventual .panel { left: calc(var(--u) * 549.5); top: calc(var(--u) * 87.4); width: calc(var(--u) * 1328.8); min-height: calc(var(--u) * 800.3); padding-top: calc(var(--u) * 35); }
.mod--continuo .panel { left: calc(var(--u) * 540); top: calc(var(--u) * 73.8); width: calc(var(--u) * 1366); min-height: calc(var(--u) * 800.3); padding-top: calc(var(--u) * 5); }
.mod--adaptado .panel {
  left: calc(var(--u) * 784.7); top: calc(var(--u) * 76.4); width: calc(var(--u) * 1017.2); min-height: calc(var(--u) * 794.9);
  padding: calc(var(--u) * 36) 0 0 calc(var(--u) * 29); background: rgba(59, 56, 56, .498);
}
.panel h3 { font-size: 1em; font-weight: 700; line-height: calc(var(--u) * 54); }
.dos-col { display: grid; grid-template-columns: var(--col1) 1fr; padding-left: var(--pl); }
.dos-col--vertical { grid-auto-flow: column; grid-template-rows: repeat(4, auto); }
.dos-col li, .lista-chk li { line-height: calc(var(--u) * 54); }
.mas { padding-left: calc(var(--u) * 23); text-indent: calc(var(--u) * -23); }
.mas::before { content: "+"; display: inline-block; width: calc(var(--u) * 23); text-indent: 0; }
.chk { position: relative; padding-left: calc(var(--u) * 36); }
.chk::before {
  content: ""; position: absolute; left: 0; top: calc(var(--u) * 27);
  width: calc(var(--u) * 24); height: calc(var(--u) * 22); margin-top: calc(var(--u) * -12);
  background: currentColor;
  -webkit-mask: url(/assets/img/icono-check.svg) center / contain no-repeat;
  mask: url(/assets/img/icono-check.svg) center / contain no-repeat;
}
.nota { font-style: italic; font-size: calc(var(--u) * 28); line-height: calc(var(--u) * 33); }
.precio { font-weight: 700; }

/* lámina 6 */
.mod--eventual .b-mod h3 { padding-left: calc(var(--u) * 38); line-height: calc(var(--u) * 56); }
.mod--eventual .b-mod .dos-col { --col1: calc(var(--u) * 519); --pl: calc(var(--u) * 81); }
.mod--eventual .b-mod li { line-height: calc(var(--u) * 56); }
.mod--eventual .b-inc { margin-top: calc(var(--u) * 14); }
.mod--eventual .b-inc h3 { padding-left: calc(var(--u) * 63); }
.mod--eventual .b-inc .dos-col { --col1: calc(var(--u) * 578); --pl: calc(var(--u) * 64); }
.mod--eventual .b-pre { margin-top: calc(var(--u) * 58); padding-left: calc(var(--u) * 38); }
.mod--eventual .b-pre .precio { margin: calc(var(--u) * 2) 0 0 calc(var(--u) * 28); line-height: calc(var(--u) * 54); }
.mod--eventual .nota { margin: calc(var(--u) * 28) 0 0 calc(var(--u) * 729); }

/* lámina 7 */
.mod--continuo .b-mod { display: grid; grid-template-columns: calc(var(--u) * 584) 1fr; padding-left: calc(var(--u) * 32); }
.mod--continuo .b-mod .izq li { line-height: calc(var(--u) * 35); margin-top: calc(var(--u) * 14); padding-left: calc(var(--u) * 29); text-indent: calc(var(--u) * -29); }
.mod--continuo .b-mod .izq li:first-child { margin-top: calc(var(--u) * 10); }
.mod--continuo .b-mod .izq li::before { width: calc(var(--u) * 22); }
.mod--continuo .b-mod .der { padding-top: calc(var(--u) * 51); }
.mod--continuo .b-mod .der li { line-height: calc(var(--u) * 54); }
.mod--continuo .b-mod .der li.sub { padding-left: calc(var(--u) * 40); }
.mod--continuo .b-inc { margin-top: calc(var(--u) * 72); }
.mod--continuo .b-inc h3 { padding-left: calc(var(--u) * 63); }
.mod--continuo .b-inc .dos-col { --col1: calc(var(--u) * 583); --pl: calc(var(--u) * 65); }
.mod--continuo .b-inc .der { padding-top: calc(var(--u) * 54); }
.mod--continuo .fila-final {
  display: grid; grid-template-columns: calc(var(--u) * 815) 1fr; align-items: end;
  padding-left: calc(var(--u) * 47); margin-top: calc(var(--u) * 39);
}
.mod--continuo .b-pre h3, .mod--continuo .b-pre p { line-height: calc(var(--u) * 40); }
.mod--continuo .b-pre .aclara { font-style: italic; margin-top: calc(var(--u) * 2); }
.mod--continuo .fila-final .nota { margin-bottom: calc(var(--u) * -3); }

/* lámina 8 */
.mod--adaptado .lead, .mod--adaptado .cierre { font-size: calc(var(--u) * 40); line-height: calc(var(--u) * 44); }
.mod--adaptado .lista { padding-left: calc(var(--u) * 81); margin-top: calc(var(--u) * 4.8); }
.mod--adaptado .lista li { line-height: calc(var(--u) * 36); margin-top: calc(var(--u) * 10.8); }
.mod--adaptado .cierre { margin-top: calc(var(--u) * 16); max-width: calc(var(--u) * 900); }
.cta {
  display: inline-flex; align-items: center; gap: calc(var(--u) * 26);
  margin: calc(var(--u) * 83) 0 0 calc(var(--u) * 18);
  font-size: calc(var(--u) * 40); font-weight: 700; line-height: 1.1; color: #FFFFFF; text-decoration: none;
}
.cta__wa { width: calc(var(--u) * 56); height: calc(var(--u) * 56); flex: none; transition: transform .2s ease; filter: drop-shadow(0 2px 4px rgba(0, 0, 0, .25)); }
.cta:hover span, .cta:focus-visible span {
  text-decoration: underline; text-decoration-color: var(--teal-blue);
  text-decoration-thickness: max(2px, calc(var(--u) * 3)); text-underline-offset: calc(var(--u) * 8);
}
.cta:hover .cta__wa { transform: scale(1.08); }
.cta:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 6px; }

/* =====================================================================
   LÁMINA 9 · TESTIMONIOS
   ===================================================================== */
.te { background: #FBF9F6; padding: calc(var(--u) * 37) 0 calc(var(--u) * 32); overflow: hidden; }
.te__inner { width: min(calc(var(--u) * 1790), 100%); margin: 0 auto; text-align: center; }
.te__title { padding: 0 16px; font: 300 calc(var(--u) * 68)/1.1 var(--f-serif); color: #3B3F10; }
.te__title em { font-style: italic; }
.te__title::after {
  content: ""; display: block; width: calc(var(--u) * 67); height: max(3px, calc(var(--u) * 5));
  margin: calc(var(--u) * 13) auto 0; border-radius: 2px; background: #0B7D75;
}
.te__sub { margin-top: calc(var(--u) * 17); padding: 0 16px; font: 400 max(14px, calc(var(--u) * 17))/1.3 var(--f-sans); color: #6E6C69; }
.testi { position: relative; margin-top: calc(var(--u) * 32); padding: 0 calc(var(--u) * 53); }
.testi-track {
  display: flex; align-items: center; gap: calc(var(--u) * 16);
  min-height: max(calc(var(--u) * 606), 570px); padding: calc(var(--u) * 7) 0;
}
.testi-card {
  position: relative; flex: 0 0 calc(var(--u) * 372); min-width: 0;
  display: flex; flex-direction: column;
  height: auto; min-height: max(calc(var(--u) * 536), var(--testi-min, 0px)); padding: calc(var(--u) * 43) calc(var(--u) * 30) calc(var(--u) * 33);
  background: #F9F7F4; border: 1px solid #E3E1DA; border-radius: calc(var(--u) * 11);
  box-shadow: 2px 5px 20px rgba(60, 55, 40, .07);
  text-align: left; cursor: pointer;
  /* sin transición de ancho: al animarlo, el texto se reacomoda a mitad de camino y la sección cambia de alto */
  transition:
    box-shadow .35s ease, border-color .35s ease, background-color .35s ease;
}
/* botón que cubre toda la tarjeta: Enter/Espacio, aria-expanded y el toque en celular */
.testi-more {
  position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%;
  margin: 0; padding: 0; border: 0; border-radius: inherit; background: none; cursor: pointer;
}
.testi-more:focus-visible { outline: 2px solid #0B7D75; outline-offset: 3px; }
.testi-card.is-active {
  flex: 0 0 calc(var(--u) * 520); height: auto; min-height: max(calc(var(--u) * 586), calc(var(--testi-min, 0px) + calc(var(--u) * 50))); z-index: 1;
  padding: calc(var(--u) * 36) calc(var(--u) * 40) calc(var(--u) * 29) calc(var(--u) * 56);
  background: #FDFCFA; border: 1.5px solid #8E915E; border-radius: calc(var(--u) * 16);
  box-shadow: 0 6px 26px rgba(60, 55, 30, .12);
}
.testi-logo-box { height: calc(var(--u) * 48); flex: none; display: flex; align-items: center; justify-content: center; }
.testi-card.is-active .testi-logo-box { justify-content: flex-start; }
.testi-logo { width: auto; max-width: 100%; }
.testi-logo--sandvik { height: calc(var(--u) * 33); }
.testi-logo--bba { height: calc(var(--u) * 44); }
.testi-logo--compucad { height: max(52px, calc(var(--u) * 76)); }
/* el lema de Compucad necesita alto: su caja crece sin empujar las comillas (quedan alineadas con las otras tarjetas) */
.testi-card--compucad .testi-logo-box { height: max(52px, calc(var(--u) * 76)); margin-bottom: calc(calc(var(--u) * 48) - max(52px, calc(var(--u) * 76))); }
.testi-card--compucad.is-active .testi-logo-box { margin-bottom: 0; }
.testi-logo--workblis { height: calc(var(--u) * 44); }   /* en la imagen de la clienta mide ~44 px a 1920 (Sandvik, 33) */
.testi-q { flex: none; width: calc(var(--u) * 31); height: calc(var(--u) * 23); margin-top: calc(var(--u) * 46); color: #C3CAB5; }
.testi-card.is-active .testi-q { margin-top: calc(var(--u) * 20); color: #BCC3AC; }
.testi-quote { margin-top: calc(var(--u) * 16); }
.testi-short { font: italic 400 max(16px, calc(var(--u) * 22.5))/1.33 var(--f-serif); color: #5A5855; text-wrap: balance; }
.testi-full { display: none; font: italic 400 max(14px, calc(var(--u) * 15.5))/1.52 var(--f-sans); color: #2E2E2E; }
.testi-full p { text-wrap: balance; }
.testi-full p + p { margin-top: calc(var(--u) * 13); }
.testi-track.is-measuring .testi-card { transition: none; }
.testi-card.is-open .testi-short { display: none; }
.testi-card.is-open .testi-full { display: block; }
@media (min-width: 1200px) {
  /* activa pero cerrada (al cargar y al salir el cursor): fragmentos en serif, más grande */
  .testi-card.is-active:not(.is-open) .testi-short { font-size: max(16px, calc(var(--u) * 30)); line-height: 1.45; }
  /* comillas y fragmento van juntos, centrados en la tarjeta (el margen automático va en las comillas, no en el texto) */
  .testi-card.is-active:not(.is-open) .testi-logo-box { margin-bottom: calc(var(--u) * 20); }
  .testi-card.is-active:not(.is-open) .testi-q { margin-top: auto; }
}
.testi-foot { margin-top: auto; padding-top: max(12px, calc(var(--u) * 14)); }
.testi-foot::before {
  content: ""; display: block; width: 86%; height: 1px; margin-bottom: calc(var(--u) * 24); background: #CDD3C3;
}
.testi-card.is-active .testi-foot::before { width: 100%; margin-bottom: calc(var(--u) * 20); }
.testi-name { font: 400 max(14px, calc(var(--u) * 17))/1.3 var(--f-sans); color: #5E6428; }
.testi-card.is-active .testi-name { color: #4F5424; }
.testi-role { margin-top: calc(var(--u) * 4); font: 400 max(14px, calc(var(--u) * 15.5))/1.4 var(--f-sans); color: #6F6D69; }
.testi-role, .testi-company { text-wrap: balance; }
.testi-company { margin-top: calc(var(--u) * 4); font: 600 max(14px, calc(var(--u) * 15.5))/1.4 var(--f-sans); color: #3F3E3C; }
.testi-card.is-active .testi-company { color: #2E2E2E; }

.testi-arrow {
  position: absolute; top: calc(50% - calc(var(--u) * 62)); z-index: 2;
  width: max(44px, calc(var(--u) * 51)); height: max(44px, calc(var(--u) * 51)); padding: 0;
  display: grid; place-items: center;
  border: 0; border-radius: 50%; background: #FFFFFF; color: #535A15; cursor: pointer;
  box-shadow: 0 5px 16px rgba(40, 40, 20, .12);
  transform: translateY(-50%);
  transition: background-color .15s ease, box-shadow .15s ease, color .15s ease;
}
.testi-prev { left: min(calc(var(--u) * 16), calc(calc(var(--u) * 83) - 52px)); }
.testi-next { right: min(calc(var(--u) * 16), calc(calc(var(--u) * 83) - 52px)); }
.testi-arrow .chev { width: max(10px, calc(var(--u) * 13)); height: auto; }
.testi-arrow:hover { background: #F3F5EC; color: var(--green-900); box-shadow: 0 6px 20px rgba(40, 40, 20, .16); }
.testi-dots { display: flex; justify-content: center; gap: calc(var(--u) * 4); margin-top: calc(var(--u) * 25); }
.testi-dot {
  position: relative; width: max(28px, calc(var(--u) * 43.5)); height: max(28px, calc(var(--u) * 30));
  padding: 0; border: 0; background: none; cursor: pointer;
}
.testi-dot::before {
  content: ""; position: absolute; left: 50%; top: 50%;
  width: max(11px, calc(var(--u) * 15.5)); height: max(11px, calc(var(--u) * 15.5)); border-radius: 50%;
  transform: translate(-50%, -50%);
  background: #B6BAA8; transition: background-color .15s ease;
}
.testi-dot:hover::before { background: #8E9474; }
.testi-dot.is-active::before { background: #5A610F; }
.te__hint {
  display: flex; align-items: center; justify-content: center; gap: calc(var(--u) * 20);
  margin-top: calc(var(--u) * 14); padding: 0 16px;
  font: 400 max(14px, calc(var(--u) * 19))/1.3 var(--f-sans); color: #575B31;
}
.te__hint b { font-weight: 600; color: #4D5119; }
.te__hand { flex: none; width: max(28px, calc(var(--u) * 44)); height: auto; color: #7F8540; }
.te__hint-touch { display: none; }
@media (hover: none) {
  .te__hint-hover { display: none; }
  .te__hint-touch { display: inline; }
}

/* =====================================================================
   LÁMINA 10 · NUESTRA ESENCIA
   ===================================================================== */
.esencia { position: relative; overflow: hidden; background: #F6F2ED; }
.esencia__foto { position: absolute; top: 0; bottom: 0; left: 33.333%; right: 0; }
.esencia__foto picture, .esencia__foto img { width: 100%; height: 100%; }
.esencia__foto img { object-fit: cover; object-position: 70% 50%; }
.esencia__foto::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, #F6F2ED 0, rgba(246, 242, 237, 0) 10%);
}
.esencia__texto {
  position: relative; z-index: 1;
  max-width: calc(var(--u) * 1920); margin: 0 auto;
  padding: calc(var(--u) * 71) 0 calc(var(--u) * 114) calc(var(--u) * 141);
}
.esencia__texto > * { max-width: calc(var(--u) * 700); }
.esencia h2 { font: 400 calc(var(--u) * 100)/0.88 var(--f-serif); color: #444421; }
.esencia h2 em { font-style: italic; }
.esencia__barra {
  display: block; width: calc(var(--u) * 84); height: max(5px, calc(var(--u) * 9)); margin: calc(var(--u) * 43) 0 0 1px;
  border-radius: 999px; background: #19A79B;
}
.esencia__entrada { margin-top: calc(var(--u) * 36); font: 400 calc(var(--u) * 45)/1.1 var(--f-serif); color: #444421; }
.esencia__italica { margin-top: calc(var(--u) * 6); font: italic 400 calc(var(--u) * 54)/1.03 var(--f-serif); color: #444421; }
.esencia__cuerpo { margin-top: calc(var(--u) * 38); font: 500 max(16px, calc(var(--u) * 24))/1.8 var(--f-sans); color: #3A3D44; }
.esencia__linea { width: calc(var(--u) * 520); height: 2px; margin: calc(var(--u) * 36) 0 0 2px; border: 0; background: #D8D7CD; }
.esencia__cierre { margin-top: calc(var(--u) * 30); font: 400 calc(var(--u) * 54)/1 var(--f-serif); color: #444421; }
.esencia__cierre strong { font-weight: 700; }

/* =====================================================================
   PIE (no está en el PPTX: contacto y datos legales)
   ===================================================================== */
.site-footer { background: var(--hdr-bg); color: var(--nav); font-family: var(--f-ui); }
.site-footer__inner {
  display: grid; grid-template-columns: 1.3fr 1fr 1fr .8fr; gap: calc(var(--u) * 48);
  max-width: calc(var(--u) * 1756); margin: 0 auto; padding: calc(var(--u) * 56) 16px calc(var(--u) * 40);
}
.site-footer__brand img { height: max(56px, calc(var(--u) * 84)); width: auto; }
.site-footer__brand p { margin-top: 10px; font-size: max(17px, calc(var(--u) * 22)); color: var(--nav); }
.site-footer a.site-footer__cta {
  display: inline-flex; min-height: 44px; align-items: center; gap: 10px; margin-top: 18px;
  padding: 10px 20px; border-radius: 999px;
  background: #587143; color: #EEF2EA; text-decoration: none;
  font: 500 16px/1.2 var(--f-sans);
  transition: background-color .15s ease;
}
.site-footer a.site-footer__cta:hover { background: #4A6138; color: #EEF2EA; }
.site-footer__wa { width: 20px; height: 20px; fill: currentColor; }
.site-footer h2 { margin-bottom: 12px; font: 700 max(17px, calc(var(--u) * 22))/1.2 var(--f-ui); color: var(--green-900); }
.site-footer p, .site-footer li { font-size: max(16px, calc(var(--u) * 20)); line-height: 1.6; }
.site-footer li span { display: inline-block; min-width: 92px; opacity: .8; }
.site-footer a { color: var(--green-900); text-underline-offset: 3px; }
.site-footer a:hover { color: #1B2A08; }
.site-footer__legal {
  padding: 16px; border-top: 1px solid rgba(74, 65, 37, .14);
  text-align: center; font-size: 14px; color: #5F5A45;
}

/* ---------- WhatsApp flotante (global) ---------- */
.wa-float {
  position: fixed; right: calc(var(--u) * 36); bottom: calc(var(--u) * 24); z-index: 120;
  width: max(44px, calc(var(--u) * 60)); height: max(44px, calc(var(--u) * 60));
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .25));
  transition: transform .2s ease, filter .2s ease;
}
.wa-float svg { width: 100%; height: 100%; }
.wa-float:hover { transform: scale(1.06); filter: drop-shadow(0 5px 10px rgba(0, 0, 0, .28)); }
.wa-float:focus-visible { outline-offset: 4px; border-radius: 50%; }

/* =====================================================================
   MENOS DE 1200 px: encabezado con hamburguesa y secciones apiladas
   ===================================================================== */
@media (max-width: 1199px) {
  :root { --hdr: 72px; }
  br.d { display: none; }
  p, li, h1, h2, h3, blockquote { text-wrap: pretty; }

  /* encabezado */
  .site-header__logo { left: 16px; top: calc((var(--hdr) - 52px) / 2); height: 52px; }   /* símbolo = alto del WhatsApp flotante */
  .nav-toggle {
    position: absolute; right: 10px; top: calc((var(--hdr) - 44px) / 2);
    display: grid; place-items: center; width: 44px; height: 44px;
    padding: 0; border: 0; border-radius: 8px; background: transparent; cursor: pointer;
  }
  .nav-toggle__bars, .nav-toggle__bars::before, .nav-toggle__bars::after {
    display: block; width: 22px; height: 2px; border-radius: 1px; background: var(--nav);
    transition: transform .2s ease, opacity .2s ease;
  }
  .nav-toggle__bars { position: relative; }
  .nav-toggle__bars::before, .nav-toggle__bars::after { content: ""; position: absolute; left: 0; }
  .nav-toggle__bars::before { top: -7px; }
  .nav-toggle__bars::after { top: 7px; }
  .menu-open .nav-toggle__bars { background: transparent; }
  .menu-open .nav-toggle__bars::before { transform: translateY(7px) rotate(45deg); }
  .menu-open .nav-toggle__bars::after { transform: translateY(-7px) rotate(-45deg); }

  .nav {
    position: fixed; left: 0; right: 0; top: var(--hdr); bottom: auto; height: auto;
    display: none; flex-direction: column;
    max-height: calc(100svh - var(--hdr)); overflow-y: auto;
    padding: 4px 0 16px; background: var(--hdr-bg);
    box-shadow: 0 14px 24px rgba(40, 45, 20, .14);
  }
  .menu-open .nav { display: flex; }
  .nav-menu { flex-direction: column; height: auto; }
  .nav-item, .nav-item--1, .nav-item--2, .nav-item--3, .nav-item--4, .nav-item--5 {
    width: auto; height: auto; margin: 0;
    border-bottom: 1px solid rgba(74, 65, 37, .12);
  }
  .nav-item a {
    height: auto; padding: 15px 24px; text-align: left; font-size: 19px;
  }
  .nav-item a::after { left: 0; right: auto; top: 10px; bottom: 10px; width: 4px; height: auto; transform: none; opacity: 0; }
  .nav-item a.is-active::after { opacity: 1; }
  .nav-item a:hover::after { opacity: .4; transform: none; }
  .lang { display: none; }
  .lang-m { display: flex; gap: 8px; margin: 8px 0 0; padding: 4px 16px; }
  .lang-m a {
    display: block; min-height: 44px; padding: 11px 16px; border-radius: 8px;
    font: 17px/22px var(--f-ui); color: var(--nav); text-decoration: none;
  }
  .lang-m a[aria-current="page"] { background: rgba(255, 255, 255, .55); font-weight: 700; color: var(--green-900); }

  /* portada */
  .hero { height: max(300px, min(640px, calc(100svh - var(--hdr)))); }
  .hero::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 75%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .45) 45%, rgba(0, 0, 0, .6) 100%);
  }
  .hero__inner { z-index: 1; }
  .hero__text { left: 24px; right: 24px; bottom: 84px; max-width: 760px; font-size: clamp(20px, 3vw, 28px); line-height: 1.28; }   /* 84 = flotante de WhatsApp + aire */

  /* lámina 2 */
  .pq { padding: 48px 0 56px; }
  .pq__title { font-size: clamp(26px, 4.2vw, 36px); line-height: 1.22; }
  .pq__sub { font-size: 17px; line-height: 1.5; margin-top: 12px; }
  .pq__stats, .pq__learn { grid-template-columns: 1fr; gap: 16px; max-width: 720px; margin-left: auto; margin-right: auto; }
  .stat, .learn { min-height: 0; }
  .stat { padding: 20px 20px 16px; border-radius: 16px; }
  .stat__top { gap: 18px; }
  .stat__icon { width: 76px; height: 76px; }
  .stat__icon svg { width: 50px; }
  .stat--2 .stat__icon svg { width: 42px; }
  .stat--3 .stat__icon svg { width: 44px; }
  .stat__pre { font-size: 20px; }
  .stat__num { font-size: 60px; }
  .stat__de { font-size: 25px; }
  .stat__ten { font-size: 36px; }
  .stat__fig { gap: 0 10px; margin-top: 2px; }
  .stat--2 .stat__fig { margin-top: 4px; }
  .stat__pct { font-size: 54px; }
  .stat__pct span { font-size: 32px; }
  .stat__who, .stat__lead { font-size: 18px; }
  .stat__text, .stat__note, .stat__list li { font-size: 16px; line-height: 1.5; }
  .stat__list { margin-top: 12px; }
  .stat__list li { padding-left: 22px; margin-top: 4px; }
  .stat__src { margin-top: 14px; padding-top: 12px; font-size: 14px; }
  .pq__sep { margin-top: 36px; }
  .pq__sep h3 { margin: 0 14px; font-size: 21px; }
  .pq__line { display: none; }
  .pq__leaf { width: 26px; }
  .pq__learn { margin-top: 16px; }
  .learn { padding: 20px; border-radius: 12px; }
  .learn__icon { width: 76px; height: 76px; }
  .learn__icon svg { width: 56px; }
  .learn--2 .learn__icon svg { width: 48px; }
  .learn p { font-size: 17px; line-height: 1.5; margin-top: 12px; }
  .pq__rule { margin-top: 28px; max-width: 720px; margin-left: auto; margin-right: auto; }
  .pq__close { font-size: 16px; line-height: 1.55; margin-top: 18px; }
  .pq__cta { margin-top: 18px; font-size: 17px; padding: 12px 28px; gap: 14px; }

  /* lámina 3 */
  .tq__inner { display: block; }
  .tq__foto {
    min-height: 560px; padding: 48px 24px 290px;
    background-position: center bottom; background-size: cover;
  }
  .tq__foto { position: relative; isolation: isolate; }
  .tq__foto::before {
    content: ""; position: absolute; left: 0; right: 0; top: 0; height: 62%; z-index: -1;
    background: linear-gradient(180deg, rgba(252, 251, 249, .88) 0, rgba(252, 251, 249, .8) 70%, rgba(252, 251, 249, 0) 100%);
  }
  .tq h2 { font-size: clamp(32px, 6vw, 44px); }
  .tq__raya { width: 120px; height: 4px; margin: 20px 0 22px; }
  .tq__foto p { max-width: 460px; font-size: 17px; }
  .tq__lista { gap: 10px; padding: 24px 16px 40px; max-width: 760px; margin: 0 auto; }
  .fila {
    grid-template-columns: 56px 30px 1fr; grid-template-areas: "ico num tit" "des des des";
    gap: 0 14px; min-height: 0; padding: 16px; border-radius: 12px;
  }
  .fila__icono { grid-area: ico; width: 56px; height: 56px; }
  .fila__icono svg { width: 32px; height: 32px; stroke-width: 1.4; }
  .fila__num { grid-area: num; width: 30px; height: 30px; margin: 0; font-size: 16px; }
  .fila h3 { grid-area: tit; margin: 0; font-size: 18px; line-height: 1.3; }
  .fila__div { display: none; }
  .fila p {
    grid-area: des; margin: 12px 0 0; padding-top: 12px;
    border-top: 1px solid rgba(0, 0, 0, .07); font-size: 16px; line-height: 1.5; padding-bottom: 0;
  }

  /* franja de clientes: marquesina a sangre, logos con su alto de celular (--m) y el botón de pausa abajo, centrado
     (a la derecha lo tapaba el WhatsApp flotante al desplazarse) */
  .clientes { padding: 32px 0 58px; }
  .clientes__frase { padding: 0 16px; font-size: 19px; line-height: 1.35; }
  .clientes__frase::before, .clientes__frase::after { display: none; }
  .clientes__marco { --fade: 40px; width: 100%; margin-top: 18px; }
  .clientes__pista { animation-duration: var(--dur-m); }
  .clientes__logos { height: 72px; }
  .clientes__logos li { padding: 0 20px; }   /* 40 px entre logos */
  .logo { height: calc(var(--m) * 1px); }
  .clientes__pausa { top: auto; right: auto; left: calc(50% - 20px); bottom: 8px; width: 40px; height: 40px; }
  .clientes__pausa svg { width: 16px; height: 16px; }

  /* lámina 4 */
  .exp { padding: 48px 0 56px; }
  .exp__intro { padding-left: 0; font-size: clamp(20px, 3vw, 26px); line-height: 1.3; }
  .exp__intro p { margin-top: 6px; font-size: clamp(18px, 2.5vw, 21px); }
  .exp__grid { grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 24px; }
  .enfoque { gap: 18px; min-height: 0; padding: 16px; border-radius: 14px; }
  .enfoque__icono { flex-basis: 92px; height: 92px; }
  .enfoque__icono svg, .enfoque--estrella .enfoque__icono svg { width: 58px; height: 58px; stroke-width: 1.1; }
  .enfoque--cuerpo-columna .enfoque__icono svg,
  .enfoque--caballo-ajedrez .enfoque__icono svg,
  .enfoque--ciclo .enfoque__icono svg,
  .enfoque--cultura .enfoque__icono svg { width: 66px; height: 66px; stroke-width: 1; }
  .enfoque__texto { align-self: center; padding-top: 0; font-size: 18px; }
  .enfoque__texto::before { width: 28px; height: 3px; margin-bottom: 10px; }

  /* lámina 5 */
  .mods { padding: 48px 0 56px; }
  .mods__title { font-size: clamp(26px, 4.2vw, 36px); }
  .mods__sub { font-size: 17px; margin-top: 14px; }
  .mods__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; margin-top: 32px; padding: 0 16px; }
  .modalidad { flex: 0 1 300px; min-height: 480px; border-radius: 16px; }
  .modalidad__cuerpo > :nth-last-child(2) { margin-bottom: 24px; }
  .modalidad__cab { flex-basis: 150px; gap: 18px; padding-top: 0; }
  .modalidad__icono { flex-basis: 80px; height: 80px; }
  .modalidad__icono svg, .modalidad--continuo .modalidad__icono svg, .modalidad--adaptado .modalidad__icono svg { width: 48px; height: 48px; stroke-width: 1.5; }
  .modalidad__nombre { font-size: 26px; min-width: 0; }
  .modalidad__cuerpo { padding: 24px 20px; }
  .modalidad__desde, .modalidad__unidad { font-size: 17px; }
  .modalidad__precio { font-size: 42px; }
  .modalidad__texto, .modalidad__texto--lg { font-size: 16px; }
  .modalidad__lead { font-size: 19px; }
  .modalidad__info { margin-top: auto; }

  /* láminas 6, 7 y 8 */
  .mod { height: auto; font-size: 17px; background: #4E4740; overflow: visible; }
  .mod__cabecera { position: relative; inset: auto; aspect-ratio: 16 / 9; max-height: 70vh; overflow: hidden; }
  .mod__cabecera .mod__lienzo { position: static; }
  .mod__cabecera::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(59, 56, 56, .78) 0%, rgba(59, 56, 56, .35) 38%, rgba(59, 56, 56, 0) 62%);
  }
  .mod__foto, .mod--eventual .mod__foto, .mod--continuo .mod__foto { opacity: 1; }
  .mod--eventual .mod__foto { object-position: 15% 50%; }
  .mod--adaptado .mod__foto { object-position: 85% 50%; }
  .mod__titulo, .mod--eventual .mod__titulo, .mod--continuo .mod__titulo, .mod--adaptado .mod__titulo {
    z-index: 1; left: 24px; right: 24px; top: auto; bottom: 22px; max-width: none;
    font-size: clamp(34px, 6vw, 52px); line-height: 1.12; text-shadow: 0 1px 10px rgba(0, 0, 0, .35);
  }
  .mod__titulo::after, .mod--eventual .mod__titulo::after, .mod--continuo .mod__titulo::after, .mod--adaptado .mod__titulo::after {
    width: 112px; height: 4px; margin: 14px 0 0;
  }
  .mod__lienzo { height: auto; }
  .panel, .mod--eventual .panel, .mod--continuo .panel, .mod--adaptado .panel {
    position: static; width: auto; min-height: 0; max-width: 900px; margin: 0 auto;
    padding: 28px 24px 40px; background: transparent; text-shadow: none;
  }
  .panel h3, .mod--eventual .b-mod h3, .mod--eventual .b-inc h3, .mod--continuo .b-inc h3 {
    font-size: 18px; line-height: 1.3; padding-left: 0; margin: 24px 0 10px;
  }
  .panel > :first-child h3, .panel > :first-child > :first-child h3 { margin-top: 0; }
  .dos-col, .mod--eventual .b-mod .dos-col, .mod--eventual .b-inc .dos-col, .mod--continuo .b-inc .dos-col, .mod--continuo .b-mod {
    display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; padding-left: 0;
  }
  .dos-col li, .lista-chk li, .mod--eventual .b-mod li, .mod--continuo .b-mod .izq li, .mod--continuo .b-mod .der li {
    line-height: 1.4; margin: 0 0 8px;
  }
  .mod--continuo .b-mod .izq li:first-child { margin-top: 0; }
  .mas, .mod--continuo .b-mod .izq li { padding-left: 18px; text-indent: -18px; }
  .mas::before, .mod--continuo .b-mod .izq li::before { width: 18px; }
  .mod--continuo .b-mod .der { padding-top: 33px; }
  .mod--continuo .b-inc .der { padding-top: 0; }
  .mod--continuo .b-mod .der li.sub { padding-left: 18px; }
  .chk { padding-left: 28px; }
  .chk::before { width: 18px; height: 16px; top: .7em; margin-top: -9px; }
  .mod--eventual .b-inc, .mod--continuo .b-inc { margin-top: 0; }
  .mod--eventual .b-pre, .mod--continuo .fila-final { display: block; margin-top: 0; padding-left: 0; }
  .mod--eventual .b-pre .precio, .precio { margin: 0; font-size: 19px; line-height: 1.4; }
  .mod--continuo .b-pre h3, .mod--continuo .b-pre p { line-height: 1.4; }
  .nota, .mod--eventual .nota, .mod--continuo .fila-final .nota { margin: 18px 0 0; font-size: 14px; line-height: 1.45; opacity: .95; }
  .mod--adaptado .lead, .mod--adaptado .cierre { font-size: 20px; line-height: 1.4; }
  .mod--adaptado .lista { padding-left: 18px; margin-top: 10px; }
  .mod--adaptado .lista li { line-height: 1.4; margin-top: 6px; }
  .mod--adaptado .cierre { margin-top: 18px; max-width: none; }
  .cta {
    display: inline-flex; justify-content: center; gap: 12px; margin: 26px 0 0;
    min-height: 52px; padding: 10px 20px;
    font-size: 18px; line-height: 1.2;
    border: 1px solid rgba(255, 255, 255, .55); border-radius: 10px;
  }
  .cta__wa { width: 32px; height: 32px; }

  /* lámina 9 */
  .te { padding: 48px 0 40px; }
  .te__title { font-size: clamp(34px, 5.5vw, 46px); }
  .te__title::after { width: 56px; height: 3px; margin-top: 16px; }
  .te__sub { font-size: 15px; margin-top: 16px; }
  .testi { margin-top: 28px; padding: 0; }
  .testi-arrow { display: none; }
  .testi-track {
    align-items: flex-start; gap: 14px; min-height: 0;
    padding: 10px 16px 14px;
    overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding: 0 16px;
    transition: height .3s ease;
    scrollbar-width: none;
  }
  .testi-track::-webkit-scrollbar { display: none; }
  .testi-card, .testi-card.is-active {
    flex: 0 0 min(86vw, 380px); height: auto; min-height: max(420px, var(--testi-min, 0px));
    padding: 26px 24px 24px; scroll-snap-align: center;
    background: #FDFCFA; border: 1px solid #E3E1DA; border-radius: 14px;
    box-shadow: 0 4px 16px rgba(60, 55, 30, .08); cursor: pointer;
  }
  .testi-card.is-active { border: 1.5px solid #8E915E; }
  .testi-card .testi-short, .testi-card.is-active .testi-short { font-size: 19px; line-height: 1.42; }
  .testi-card .testi-full { font-size: 15.5px; line-height: 1.55; }
  .testi-logo-box, .testi-card.is-active .testi-logo-box { justify-content: flex-start; height: 40px; }
  .testi-logo--sandvik { height: 26px; }
  .testi-logo--bba { height: 30px; }
  .testi-card--compucad .testi-logo-box, .testi-card--compucad.is-active .testi-logo-box { height: 60px; margin-bottom: 0; }
  .testi-logo--compucad { height: 60px; }
  .testi-logo--workblis { height: 35px; }   /* misma proporción que en escritorio junto a Sandvik (44:33) */
  .testi-q, .testi-card.is-active .testi-q { margin-top: 20px; width: 26px; height: 19px; }
  .testi-quote { margin-top: 12px; }
  .testi-foot { margin-top: auto; padding-top: 18px; }
  .testi-foot::before, .testi-card.is-active .testi-foot::before { width: 100%; margin-bottom: 14px; }
  .testi-name { font-size: 16px; }
  .testi-role, .testi-company { font-size: 14px; }
  .testi-dots { margin-top: 12px; }
  .testi-dot { width: 44px; height: 44px; }
  /* pista del toque (que se desliza ya lo dicen la tarjeta asomada y los puntos): centrada y con la mano en línea */
  .te__hint { display: block; margin-top: 10px; font-size: 14px; text-align: center; text-wrap: balance; }
  .te__hand { display: inline-block; vertical-align: middle; width: 28px; margin: -8px 6px 0 0; }
  .te__hint-hover { display: none; }
  .te__hint-touch { display: inline; }

  /* lámina 10 */
  .esencia__texto { padding: 56px 24px 32px; }
  .esencia__texto > * { max-width: 640px; }
  .esencia h2 { font-size: clamp(44px, 8vw, 68px); line-height: .92; }
  .esencia__barra { width: 56px; height: 6px; margin-top: 20px; }
  .esencia__entrada { margin-top: 24px; font-size: clamp(22px, 3.4vw, 30px); }
  .esencia__italica { font-size: clamp(28px, 4.4vw, 38px); line-height: 1.1; }
  .esencia__cuerpo { margin-top: 22px; font-size: 17px; line-height: 1.65; }
  .esencia__linea { width: 100%; max-width: 520px; margin-top: 24px; }
  .esencia__cierre { margin-top: 20px; font-size: clamp(28px, 4.4vw, 38px); }
  .esencia__foto { position: relative; left: auto; right: auto; aspect-ratio: 4 / 3; max-height: 70vh; }
  .esencia__foto img { object-position: 72% 50%; }
  .esencia__foto::after { background: linear-gradient(180deg, #F6F2ED 0, rgba(246, 242, 237, 0) 28%); }
  .esencia { display: flex; flex-direction: column-reverse; }

  /* pie */
  .site-footer__inner { grid-template-columns: 1fr 1fr; gap: 32px 24px; padding: 40px 24px 28px; }
  .site-footer__brand img { height: 52px; }
  .site-footer__col li { line-height: 44px; }
  .site-footer__col li a { display: inline-block; line-height: 44px; }
  .site-footer__col p a { display: inline-block; padding: 12px 0; }

  .wa-float { right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); width: 52px; height: 52px; }
}

/* tableta o ventana angosta con ratón: la rueda no mueve el carrusel, así que vuelven las flechas */
@media (max-width: 1199px) and (hover: hover) and (pointer: fine) {
  .testi-arrow { display: grid; top: 50%; }
  .testi-prev { left: 8px; }
  .testi-next { right: 8px; }
}

/* ---------- Móvil ---------- */
@media (max-width: 759px) {
  .exp__grid { grid-template-columns: 1fr; }
  .dos-col, .dos-col--vertical, .mod--eventual .b-mod .dos-col, .mod--eventual .b-inc .dos-col,
  .mod--continuo .b-inc .dos-col, .mod--continuo .b-mod { display: block; }
  .mod__cabecera { aspect-ratio: 4 / 3; }
  .panel, .mod--eventual .panel, .mod--continuo .panel, .mod--adaptado .panel { padding: 24px 16px 32px; }
  .mod__titulo, .mod--eventual .mod__titulo, .mod--continuo .mod__titulo, .mod--adaptado .mod__titulo { left: 16px; right: 16px; bottom: 20px; }
  .cta { display: flex; width: 100%; }
  .hero__text { left: 16px; right: 16px; bottom: 84px; }
  .tq__foto { padding: 40px 20px 250px; min-height: 500px; }
  .fila { grid-template-columns: 52px 28px 1fr; gap: 0 12px; }
  .fila__icono { width: 52px; height: 52px; }
  .fila__icono svg { width: 30px; height: 30px; }
  .esencia__texto { padding: 48px 20px 28px; }
  .site-footer__inner { grid-template-columns: 1fr; gap: 28px; padding: 36px 20px 24px; }
  .modalidad { flex-basis: 420px; }
  .mod--continuo .b-mod .der { padding-top: 0; }
  .site-footer__legal { padding-bottom: 84px; }
}

/* Movimiento reducido, debajo de 1200: rejilla de 3 columnas (6 filas), con los mismos filetes */
@media (max-width: 1199px) and (prefers-reduced-motion: reduce) {
  .clientes { padding-bottom: 40px; }   /* sin el botón de pausa */
  .clientes__marco { padding: 0 16px; }
  .clientes__logos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 0; height: auto; max-width: 640px; margin: 0 auto; }
  .clientes__logos li { height: 64px; padding: 0; }   /* sin el aire de la marquesina: cada celda usa todo su ancho */
  .clientes__logos li + li::before { height: 46px; }
  .clientes__logos li:nth-child(3n + 1)::before { display: none; }
}

/* ---------- 320-379 px (zoom al 400 %): sin desborde lateral ---------- */
@media (max-width: 379px) {
  .pq__stats { grid-template-columns: minmax(0, 1fr); }
  .stat { padding: 18px 16px 14px; }
  .stat__top { gap: 14px; }
  .stat__icon { width: 60px; height: 60px; }
  .stat__icon svg { width: 40px; }
  .stat--2 .stat__icon svg { width: 34px; }
  .stat--3 .stat__icon svg { width: 36px; }
  .stat__num { font-size: 48px; }
  .stat__de { font-size: 20px; }
  .stat__ten { font-size: 30px; }
  .stat__fig { gap: 0 8px; }
  .stat__pct { font-size: 46px; }
}
/* 320-359 px: 8 px más de columna y la reseña completa a 15 px. Si no, a 320 «wholeheartedly recommend.»
   (unidas con &nbsp;) no caben y dejan «we» solo en un renglón; igual «employee» y «que» */
@media (max-width: 359px) {
  .testi-card, .testi-card.is-active { padding-left: 20px; padding-right: 20px; }
  .testi-card .testi-full { font-size: 15px; }
}

/* teléfono en vertical (la foto de celular): el texto de la portada va arriba, sobre las persianas (19 oct 2026).
   El velo baja desde el borde de la foto y se desvanece 120 px bajo el último renglón, tenga los renglones que tenga */
@media (max-width: 759px) and (orientation: portrait) {
  .hero::after { content: none; }
  .hero__text { top: 28px; bottom: auto; }
  .hero__text::before {
    content: ""; position: absolute; z-index: -1; left: -16px; right: -16px; top: -28px; bottom: -120px;   /* de borde a borde de la foto */
    background: linear-gradient(180deg, rgba(0, 0, 0, .55) 0, rgba(0, 0, 0, .45) calc(100% - 120px), rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
  }
}

/* teléfono en horizontal (≤400 px de alto): el texto de la portada deja libre el WhatsApp flotante */
@media (max-width: 1199px) and (max-height: 400px) { .hero__text { right: 84px; } }


/* =====================================================================
   Texturas de las tarjetas de "Modalidades de Bienestar Empresarial"
   (lámina 5 del PPTX) y de "Nuestro Expertise" (lámina 4).
   Casi todo es CSS: degradados + SVG en data-URI (feTurbulence para el grano;
   trazos vectoriales para hojas, ondas y palomitas). Única imagen:
   /assets/img/tex-adaptado-azul.webp, el mosaico de la maqueta reteñido a azul
   para Bienestar Adaptado (cambio de la clienta, oct 2026).
   OJO: este archivo se pega SIN expandir macros: usar calc(var(--u)*N), nunca u().
   Espec: 04-expertise-y-05-modalidades.md. Generado con _ref/tex-tools/.
   ===================================================================== */
:root{
  /* grano de papel: ruido fino claro+oscuro (neutro en promedio, no cambia el color base) */
  --tex-grano:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .09 -.04'/%3E%3C/filter%3E%3Cfilter id='b'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .22 -.06'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23a)'/%3E%3Crect width='240' height='240' filter='url(%23b)'/%3E%3C/svg%3E");
  /* hojas de línea (contorno + nervaduras), mosaico 360x360 sin costuras */
  --tex-hojas-claras:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360'%3E%3Cdefs%3E%3Cpath id='h' d='M0-50C17-32 17 30 0 50C-17 30-17-32 0-50ZM0-50V50M0-30L11-40M0-12L13-26M0 6L13-8M0 24L11 10M0-21L-11-31M0-3L-13-17M0 15L-13 1M0 33L-10 21' fill='none' stroke='%23fff' stroke-opacity='.09' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/defs%3E%3Cuse href='%23h' transform='translate(0 142) rotate(96) scale(0.79)'/%3E%3Cuse href='%23h' transform='translate(360 142) rotate(96) scale(0.79)'/%3E%3Cuse href='%23h' transform='translate(215 236) rotate(51) scale(0.57)'/%3E%3Cuse href='%23h' transform='translate(14 289) rotate(54) scale(0.91)'/%3E%3Cuse href='%23h' transform='translate(374 289) rotate(54) scale(0.91)'/%3E%3Cuse href='%23h' transform='translate(177 37) rotate(58) scale(0.93)'/%3E%3Cuse href='%23h' transform='translate(177 397) rotate(58) scale(0.93)'/%3E%3Cuse href='%23h' transform='translate(5 8) rotate(54) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(5 368) rotate(54) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(365 8) rotate(54) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(365 368) rotate(54) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(91 22) rotate(276) scale(1.06)'/%3E%3Cuse href='%23h' transform='translate(91 382) rotate(276) scale(1.06)'/%3E%3Cuse href='%23h' transform='translate(194 209) rotate(99) scale(1.18)'/%3E%3Cuse href='%23h' transform='translate(89 37) rotate(263) scale(0.74)'/%3E%3Cuse href='%23h' transform='translate(89 397) rotate(263) scale(0.74)'/%3E%3Cuse href='%23h' transform='translate(283 51) rotate(75) scale(1.19)'/%3E%3Cuse href='%23h' transform='translate(283 411) rotate(75) scale(1.19)'/%3E%3Cuse href='%23h' transform='translate(-37 97) rotate(350) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(323 97) rotate(350) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(267 -19) rotate(60) scale(0.72)'/%3E%3Cuse href='%23h' transform='translate(267 341) rotate(60) scale(0.72)'/%3E%3Cuse href='%23h' transform='translate(-16 79) rotate(322) scale(0.98)'/%3E%3Cuse href='%23h' transform='translate(344 79) rotate(322) scale(0.98)'/%3E%3Cuse href='%23h' transform='translate(-65 111) rotate(108) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(295 111) rotate(108) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(257 -63) rotate(28) scale(0.87)'/%3E%3Cuse href='%23h' transform='translate(257 297) rotate(28) scale(0.87)'/%3E%3Cuse href='%23h' transform='translate(165 249) rotate(262) scale(0.67)'/%3E%3Cuse href='%23h' transform='translate(257 185) rotate(198) scale(1.17)'/%3E%3Cuse href='%23h' transform='translate(-14 173) rotate(287) scale(0.73)'/%3E%3Cuse href='%23h' transform='translate(346 173) rotate(287) scale(0.73)'/%3E%3Cuse href='%23h' transform='translate(-56 80) rotate(181) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(304 80) rotate(181) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(-61 267) rotate(212) scale(0.81)'/%3E%3Cuse href='%23h' transform='translate(299 267) rotate(212) scale(0.81)'/%3E%3Cuse href='%23h' transform='translate(-64 54) rotate(102) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(-64 414) rotate(102) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(296 54) rotate(102) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(296 414) rotate(102) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(174 135) rotate(17) scale(0.59)'/%3E%3Cuse href='%23h' transform='translate(218 -40) rotate(75) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(218 320) rotate(75) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(-1 240) rotate(252) scale(1.15)'/%3E%3Cuse href='%23h' transform='translate(359 240) rotate(252) scale(1.15)'/%3E%3Cuse href='%23h' transform='translate(19 194) rotate(278) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(379 194) rotate(278) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(85 189) rotate(291) scale(0.71)'/%3E%3Cuse href='%23h' transform='translate(220 145) rotate(310) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(166 257) rotate(147) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(217 178) rotate(312) scale(0.71)'/%3E%3Cuse href='%23h' transform='translate(239 242) rotate(315) scale(0.89)'/%3E%3Cuse href='%23h' transform='translate(173 230) rotate(52) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(98 -63) rotate(3) scale(0.71)'/%3E%3Cuse href='%23h' transform='translate(98 297) rotate(3) scale(0.71)'/%3E%3Cuse href='%23h' transform='translate(29 47) rotate(293) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(29 407) rotate(293) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(389 47) rotate(293) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(389 407) rotate(293) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(195 -17) rotate(238) scale(1.17)'/%3E%3Cuse href='%23h' transform='translate(195 343) rotate(238) scale(1.17)'/%3E%3Cuse href='%23h' transform='translate(162 16) rotate(57) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(162 376) rotate(57) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(180 159) rotate(274) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(277 -48) rotate(241) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(277 312) rotate(241) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(-18 81) rotate(153) scale(1.00)'/%3E%3Cuse href='%23h' transform='translate(342 81) rotate(153) scale(1.00)'/%3E%3Cuse href='%23h' transform='translate(272 168) rotate(141) scale(1.12)'/%3E%3Cuse href='%23h' transform='translate(136 216) rotate(345) scale(1.13)'/%3E%3Cuse href='%23h' transform='translate(137 -17) rotate(311) scale(0.82)'/%3E%3Cuse href='%23h' transform='translate(137 343) rotate(311) scale(0.82)'/%3E%3Cuse href='%23h' transform='translate(268 155) rotate(60) scale(0.95)'/%3E%3Cuse href='%23h' transform='translate(31 254) rotate(101) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(391 254) rotate(101) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(-57 83) rotate(142) scale(0.98)'/%3E%3Cuse href='%23h' transform='translate(303 83) rotate(142) scale(0.98)'/%3E%3Cuse href='%23h' transform='translate(100 175) rotate(77) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(273 146) rotate(126) scale(0.79)'/%3E%3Cuse href='%23h' transform='translate(17 128) rotate(154) scale(1.07)'/%3E%3Cuse href='%23h' transform='translate(377 128) rotate(154) scale(1.07)'/%3E%3Cuse href='%23h' transform='translate(-16 232) rotate(14) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(344 232) rotate(14) scale(1.02)'/%3E%3Cuse href='%23h' transform='translate(270 210) rotate(149) scale(0.89)'/%3E%3Cuse href='%23h' transform='translate(288 163) rotate(96) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(-53 -37) rotate(114) scale(0.86)'/%3E%3Cuse href='%23h' transform='translate(-53 323) rotate(114) scale(0.86)'/%3E%3Cuse href='%23h' transform='translate(307 -37) rotate(114) scale(0.86)'/%3E%3Cuse href='%23h' transform='translate(307 323) rotate(114) scale(0.86)'/%3E%3Cuse href='%23h' transform='translate(24 38) rotate(346) scale(1.11)'/%3E%3Cuse href='%23h' transform='translate(24 398) rotate(346) scale(1.11)'/%3E%3Cuse href='%23h' transform='translate(384 38) rotate(346) scale(1.11)'/%3E%3Cuse href='%23h' transform='translate(384 398) rotate(346) scale(1.11)'/%3E%3Cuse href='%23h' transform='translate(199 -48) rotate(220) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(199 312) rotate(220) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(112 87) rotate(263) scale(0.96)'/%3E%3Cuse href='%23h' transform='translate(115 68) rotate(219) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(115 428) rotate(219) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(145 43) rotate(81) scale(0.59)'/%3E%3Cuse href='%23h' transform='translate(145 403) rotate(81) scale(0.59)'/%3E%3Cuse href='%23h' transform='translate(237 207) rotate(140) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(50 168) rotate(1) scale(0.58)'/%3E%3Cuse href='%23h' transform='translate(410 168) rotate(1) scale(0.58)'/%3E%3Cuse href='%23h' transform='translate(216 270) rotate(215) scale(0.99)'/%3E%3Cuse href='%23h' transform='translate(227 150) rotate(126) scale(1.18)'/%3E%3Cuse href='%23h' transform='translate(233 122) rotate(341) scale(0.90)'/%3E%3C/svg%3E");
  --tex-hojas-oscuras:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360'%3E%3Cdefs%3E%3Cpath id='h' d='M0-50C17-32 17 30 0 50C-17 30-17-32 0-50ZM0-50V50M0-30L11-40M0-12L13-26M0 6L13-8M0 24L11 10M0-21L-11-31M0-3L-13-17M0 15L-13 1M0 33L-10 21' fill='none' stroke='%239A7640' stroke-opacity='.13' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/defs%3E%3Cuse href='%23h' transform='translate(0 237) rotate(280) scale(0.74)'/%3E%3Cuse href='%23h' transform='translate(360 237) rotate(280) scale(0.74)'/%3E%3Cuse href='%23h' transform='translate(239 34) rotate(85) scale(0.81)'/%3E%3Cuse href='%23h' transform='translate(239 394) rotate(85) scale(0.81)'/%3E%3Cuse href='%23h' transform='translate(143 242) rotate(330) scale(0.94)'/%3E%3Cuse href='%23h' transform='translate(56 62) rotate(96) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(56 422) rotate(96) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(416 62) rotate(96) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(416 422) rotate(96) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(128 14) rotate(330) scale(0.77)'/%3E%3Cuse href='%23h' transform='translate(128 374) rotate(330) scale(0.77)'/%3E%3Cuse href='%23h' transform='translate(31 156) rotate(340) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(391 156) rotate(340) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(83 228) rotate(166) scale(0.73)'/%3E%3Cuse href='%23h' transform='translate(29 182) rotate(199) scale(1.08)'/%3E%3Cuse href='%23h' transform='translate(389 182) rotate(199) scale(1.08)'/%3E%3Cuse href='%23h' transform='translate(112 85) rotate(245) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(59 282) rotate(344) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(419 282) rotate(344) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(85 -31) rotate(221) scale(1.05)'/%3E%3Cuse href='%23h' transform='translate(85 329) rotate(221) scale(1.05)'/%3E%3Cuse href='%23h' transform='translate(93 131) rotate(57) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(131 66) rotate(300) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(131 426) rotate(300) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(68 135) rotate(287) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(428 135) rotate(287) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(156 176) rotate(197) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(188 188) rotate(209) scale(0.94)'/%3E%3Cuse href='%23h' transform='translate(-24 169) rotate(119) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(336 169) rotate(119) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(266 133) rotate(181) scale(1.15)'/%3E%3Cuse href='%23h' transform='translate(139 205) rotate(234) scale(0.76)'/%3E%3Cuse href='%23h' transform='translate(254 90) rotate(291) scale(1.10)'/%3E%3Cuse href='%23h' transform='translate(50 226) rotate(29) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(410 226) rotate(29) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(123 53) rotate(245) scale(0.96)'/%3E%3Cuse href='%23h' transform='translate(123 413) rotate(245) scale(0.96)'/%3E%3Cuse href='%23h' transform='translate(-1 159) rotate(60) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(359 159) rotate(60) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(272 204) rotate(344) scale(0.70)'/%3E%3Cuse href='%23h' transform='translate(22 75) rotate(125) scale(0.60)'/%3E%3Cuse href='%23h' transform='translate(382 75) rotate(125) scale(0.60)'/%3E%3Cuse href='%23h' transform='translate(247 122) rotate(157) scale(1.13)'/%3E%3Cuse href='%23h' transform='translate(277 -51) rotate(4) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(277 309) rotate(4) scale(0.66)'/%3E%3Cuse href='%23h' transform='translate(242 177) rotate(280) scale(1.03)'/%3E%3Cuse href='%23h' transform='translate(278 163) rotate(45) scale(0.69)'/%3E%3Cuse href='%23h' transform='translate(288 23) rotate(206) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(288 383) rotate(206) scale(0.97)'/%3E%3Cuse href='%23h' transform='translate(164 134) rotate(5) scale(0.60)'/%3E%3Cuse href='%23h' transform='translate(48 198) rotate(248) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(408 198) rotate(248) scale(0.68)'/%3E%3Cuse href='%23h' transform='translate(-34 212) rotate(157) scale(0.72)'/%3E%3Cuse href='%23h' transform='translate(326 212) rotate(157) scale(0.72)'/%3E%3Cuse href='%23h' transform='translate(271 146) rotate(334) scale(1.16)'/%3E%3Cuse href='%23h' transform='translate(180 266) rotate(337) scale(0.70)'/%3E%3Cuse href='%23h' transform='translate(-18 280) rotate(281) scale(1.03)'/%3E%3Cuse href='%23h' transform='translate(342 280) rotate(281) scale(1.03)'/%3E%3Cuse href='%23h' transform='translate(-30 16) rotate(255) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(-30 376) rotate(255) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(330 16) rotate(255) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(330 376) rotate(255) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(94 159) rotate(115) scale(1.07)'/%3E%3Cuse href='%23h' transform='translate(227 0) rotate(215) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(227 360) rotate(215) scale(0.65)'/%3E%3Cuse href='%23h' transform='translate(228 92) rotate(39) scale(0.56)'/%3E%3Cuse href='%23h' transform='translate(86 138) rotate(341) scale(0.56)'/%3E%3Cuse href='%23h' transform='translate(51 183) rotate(48) scale(1.01)'/%3E%3Cuse href='%23h' transform='translate(411 183) rotate(48) scale(1.01)'/%3E%3Cuse href='%23h' transform='translate(265 19) rotate(236) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(265 379) rotate(236) scale(0.83)'/%3E%3Cuse href='%23h' transform='translate(166 -68) rotate(128) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(166 292) rotate(128) scale(1.09)'/%3E%3Cuse href='%23h' transform='translate(96 243) rotate(330) scale(0.73)'/%3E%3Cuse href='%23h' transform='translate(269 94) rotate(16) scale(0.98)'/%3E%3Cuse href='%23h' transform='translate(93 27) rotate(143) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(93 387) rotate(143) scale(0.90)'/%3E%3Cuse href='%23h' transform='translate(90 110) rotate(128) scale(0.89)'/%3E%3Cuse href='%23h' transform='translate(1 32) rotate(281) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(1 392) rotate(281) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(361 32) rotate(281) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(361 392) rotate(281) scale(0.75)'/%3E%3Cuse href='%23h' transform='translate(272 59) rotate(71) scale(0.63)'/%3E%3Cuse href='%23h' transform='translate(272 419) rotate(71) scale(0.63)'/%3E%3Cuse href='%23h' transform='translate(160 184) rotate(337) scale(1.05)'/%3E%3Cuse href='%23h' transform='translate(92 161) rotate(247) scale(0.92)'/%3E%3Cuse href='%23h' transform='translate(186 25) rotate(318) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(186 385) rotate(318) scale(0.80)'/%3E%3Cuse href='%23h' transform='translate(72 234) rotate(125) scale(0.93)'/%3E%3Cuse href='%23h' transform='translate(1 192) rotate(255) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(361 192) rotate(255) scale(0.61)'/%3E%3Cuse href='%23h' transform='translate(155 225) rotate(114) scale(0.76)'/%3E%3Cuse href='%23h' transform='translate(204 160) rotate(122) scale(0.82)'/%3E%3Cuse href='%23h' transform='translate(-1 210) rotate(119) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(359 210) rotate(119) scale(0.84)'/%3E%3Cuse href='%23h' transform='translate(259 251) rotate(91) scale(1.17)'/%3E%3Cuse href='%23h' transform='translate(28 83) rotate(208) scale(0.92)'/%3E%3Cuse href='%23h' transform='translate(388 83) rotate(208) scale(0.92)'/%3E%3C/svg%3E");
  /* ondas: haz de curvas paralelas que se juntan y se abren, 800x420 */
  --tex-ondas:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='420'%3E%3Cpath d='M-80 -124C-53 -113 27 -58 80 -56C133 -54 187 -101 240 -114C293 -127 347 -139 400 -132C453 -126 507 -73 560 -77C613 -81 667 -148 720 -157C773 -167 853 -138 880 -134M-80 -115C-53 -103 27 -45 80 -44C133 -42 187 -92 240 -105C293 -118 347 -129 400 -123C453 -116 507 -61 560 -66C613 -70 667 -139 720 -149C773 -158 853 -127 880 -123M-80 -106C-53 -94 27 -33 80 -32C133 -30 187 -83 240 -97C293 -110 347 -120 400 -112C453 -105 507 -49 560 -54C613 -59 667 -131 720 -141C773 -150 853 -117 880 -112M-80 -97C-53 -84 27 -21 80 -20C133 -18 187 -75 240 -89C293 -102 347 -110 400 -102C453 -95 507 -38 560 -43C613 -48 667 -123 720 -133C773 -142 853 -106 880 -101M-80 -88C-53 -75 27 -9 80 -8C133 -7 187 -66 240 -80C293 -94 347 -100 400 -92C453 -84 507 -26 560 -32C613 -37 667 -115 720 -124C773 -134 853 -96 880 -90M-80 -79C-53 -65 27 3 80 4C133 5 187 -58 240 -72C293 -86 347 -90 400 -82C453 -73 507 -15 560 -20C613 -26 667 -106 720 -116C773 -126 853 -85 880 -79M-80 -69C-53 -55 27 15 80 15C133 16 187 -49 240 -63C293 -78 347 -80 400 -71C453 -62 507 -3 560 -10C613 -16 667 -98 720 -108C773 -117 853 -75 880 -68M-80 -59C-53 -45 27 26 80 27C133 28 187 -40 240 -55C293 -70 347 -70 400 -61C453 -51 507 8 560 1C613 -5 667 -90 720 -99C773 -109 853 -64 880 -57M-80 -49C-53 -35 27 38 80 38C133 39 187 -32 240 -47C293 -61 347 -59 400 -50C453 -40 507 19 560 12C613 5 667 -81 720 -91C773 -100 853 -53 880 -45M-80 -39C-53 -24 27 49 80 49C133 49 187 -23 240 -38C293 -53 347 -49 400 -39C453 -29 507 29 560 22C613 15 667 -72 720 -82C773 -91 853 -42 880 -34M-80 -29C-53 -14 27 60 80 60C133 60 187 -15 240 -30C293 -44 347 -38 400 -28C453 -18 507 40 560 32C613 25 667 -64 720 -73C773 -82 853 -31 880 -23M-80 -18C-53 -3 27 71 80 71C133 70 187 -6 240 -21C293 -35 347 -27 400 -17C453 -6 507 50 560 42C613 34 667 -55 720 -64C773 -73 853 -20 880 -12M-80 -8C-53 7 27 82 80 81C133 80 187 2 240 -12C293 -27 347 -16 400 -5C453 5 507 60 560 51C613 43 667 -46 720 -54C773 -63 853 -9 880 0M-80 3C-53 18 27 92 80 91C133 90 187 11 240 -3C293 -17 347 -5 400 6C453 17 507 69 560 61C613 52 667 -36 720 -45C773 -53 853 2 880 11M-80 15C-53 29 27 103 80 101C133 100 187 20 240 6C293 -8 347 7 400 17C453 28 507 79 560 70C613 61 667 -27 720 -35C773 -43 853 12 880 22M-80 26C-53 40 27 112 80 111C133 109 187 29 240 15C293 1 347 18 400 29C453 39 507 88 560 79C613 70 667 -17 720 -25C773 -33 853 23 880 33M-80 37C-53 51 27 122 80 120C133 118 187 38 240 24C293 11 347 30 400 40C453 51 507 97 560 87C613 78 667 -7 720 -15C773 -22 853 34 880 44M-80 49C-53 62 27 132 80 129C133 127 187 47 240 34C293 21 347 41 400 52C453 62 507 105 560 96C613 87 667 3 720 -4C773 -11 853 45 880 55M-80 61C-53 74 27 141 80 138C133 135 187 56 240 44C293 31 347 53 400 63C453 73 507 114 560 104C613 95 667 13 720 6C773 0 853 56 880 66M-80 73C-53 85 27 150 80 147C133 143 187 65 240 53C293 41 347 65 400 75C453 85 507 122 560 112C613 103 667 23 720 17C773 11 853 66 880 76M-80 85C-53 96 27 159 80 155C133 152 187 75 240 63C293 52 347 77 400 86C453 96 507 130 560 120C613 111 667 34 720 29C773 23 853 77 880 87M-80 97C-53 108 27 167 80 163C133 160 187 85 240 74C293 63 347 89 400 98C453 107 507 138 560 128C613 119 667 45 720 40C773 35 853 88 880 97M-80 109C-53 119 27 176 80 172C133 168 187 94 240 84C293 74 347 100 400 109C453 118 507 146 560 136C613 126 667 56 720 51C773 46 853 98 880 107M-80 121C-53 131 27 184 80 180C133 175 187 104 240 94C293 85 347 112 400 120C453 129 507 154 560 144C613 134 667 67 720 63C773 58 853 109 880 118M-80 133C-53 142 27 192 80 188C133 183 187 114 240 105C293 96 347 124 400 132C453 140 507 161 560 152C613 142 667 78 720 74C773 70 853 119 880 128M-80 145C-53 153 27 200 80 196C133 191 187 125 240 116C293 107 347 136 400 143C453 150 507 169 560 159C613 150 667 90 720 86C773 83 853 129 880 138M-80 157C-53 164 27 209 80 204C133 199 187 135 240 127C293 118 347 147 400 154C453 161 507 177 560 167C613 158 667 101 720 98C773 95 853 139 880 148M-80 168C-53 176 27 217 80 211C133 206 187 145 240 137C293 130 347 159 400 165C453 171 507 184 560 175C613 166 667 113 720 110C773 107 853 149 880 157M-80 180C-53 187 27 225 80 219C133 214 187 156 240 148C293 141 347 170 400 176C453 182 507 192 560 183C613 174 667 124 720 122C773 119 853 159 880 167M-80 192C-53 198 27 233 80 227C133 222 187 166 240 159C293 152 347 181 400 187C453 192 507 200 560 191C613 182 667 136 720 133C773 131 853 170 880 177M-80 203C-53 209 27 241 80 236C133 230 187 176 240 170C293 164 347 193 400 198C453 202 507 208 560 199C613 190 667 147 720 145C773 143 853 180 880 186M-80 215C-53 220 27 250 80 244C133 238 187 187 240 181C293 175 347 204 400 208C453 213 507 216 560 207C613 199 667 159 720 157C773 155 853 189 880 196M-80 226C-53 231 27 258 80 252C133 246 187 197 240 192C293 186 347 215 400 219C453 223 507 224 560 216C613 207 667 170 720 168C773 166 853 199 880 206M-80 237C-53 241 27 267 80 261C133 255 187 208 240 202C293 197 347 226 400 229C453 233 507 233 560 224C613 216 667 181 720 179C773 178 853 209 880 215M-80 249C-53 252 27 275 80 270C133 264 187 218 240 213C293 208 347 236 400 240C453 243 507 241 560 233C613 225 667 192 720 191C773 189 853 219 880 225M-80 260C-53 263 27 284 80 278C133 272 187 228 240 223C293 219 347 247 400 250C453 253 507 250 560 242C613 234 667 203 720 202C773 200 853 229 880 235M-80 270C-53 273 27 294 80 288C133 281 187 238 240 234C293 229 347 258 400 261C453 264 507 259 560 251C613 243 667 213 720 212C773 211 853 239 880 245M-80 281C-53 284 27 303 80 297C133 291 187 248 240 244C293 240 347 269 400 271C453 274 507 268 560 260C613 252 667 224 720 223C773 222 853 249 880 255M-80 292C-53 294 27 313 80 306C133 300 187 258 240 254C293 250 347 279 400 282C453 284 507 278 560 270C613 262 667 234 720 233C773 232 853 260 880 265M-80 303C-53 305 27 323 80 316C133 309 187 268 240 264C293 260 347 290 400 292C453 295 507 287 560 279C613 271 667 244 720 243C773 243 853 270 880 275M-80 313C-53 315 27 333 80 326C133 319 187 277 240 273C293 269 347 300 400 303C453 305 507 297 560 289C613 281 667 254 720 253C773 253 853 280 880 285M-80 324C-53 326 27 343 80 336C133 329 187 286 240 283C293 279 347 311 400 313C453 316 507 307 560 299C613 290 667 264 720 263C773 263 853 290 880 296M-80 334C-53 336 27 353 80 346C133 339 187 296 240 292C293 288 347 321 400 324C453 327 507 317 560 309C613 300 667 273 720 273C773 272 853 301 880 307M-80 345C-53 347 27 364 80 356C133 349 187 305 240 301C293 298 347 332 400 335C453 338 507 327 560 318C613 310 667 282 720 282C773 282 853 311 880 317M-80 355C-53 357 27 374 80 367C133 359 187 314 240 310C293 307 347 343 400 346C453 349 507 338 560 328C613 319 667 291 720 291C773 291 853 322 880 328M-80 366C-53 368 27 385 80 377C133 370 187 322 240 319C293 315 347 353 400 357C453 360 507 348 560 338C613 329 667 300 720 300C773 300 853 333 880 339M-80 377C-53 379 27 396 80 388C133 380 187 331 240 328C293 324 347 364 400 368C453 371 507 358 560 348C613 339 667 309 720 309C773 310 853 344 880 351M-80 387C-53 389 27 407 80 399C133 390 187 340 240 336C293 333 347 375 400 379C453 382 507 369 560 359C613 348 667 318 720 318C773 319 853 355 880 362M-80 398C-53 400 27 418 80 409C133 400 187 348 240 345C293 341 347 386 400 390C453 394 507 379 560 369C613 358 667 326 720 327C773 328 853 366 880 373M-80 409C-53 411 27 429 80 420C133 411 187 356 240 353C293 350 347 397 400 401C453 405 507 389 560 379C613 368 667 335 720 336C773 337 853 377 880 385M-80 419C-53 421 27 440 80 431C133 421 187 365 240 362C293 359 347 408 400 412C453 417 507 400 560 389C613 377 667 343 720 345C773 346 853 388 880 396M-80 430C-53 432 27 451 80 441C133 431 187 373 240 370C293 367 347 419 400 424C453 428 507 410 560 398C613 387 667 352 720 354C773 355 853 399 880 408M-80 441C-53 443 27 462 80 452C133 441 187 381 240 379C293 376 347 430 400 435C453 440 507 420 560 408C613 396 667 361 720 362C773 364 853 410 880 419M-80 452C-53 454 27 473 80 462C133 451 187 390 240 387C293 384 347 441 400 446C453 452 507 430 560 418C613 405 667 369 720 371C773 374 853 421 880 431M-80 463C-53 465 27 484 80 472C133 461 187 398 240 396C293 393 347 452 400 458C453 463 507 441 560 428C613 415 667 378 720 381C773 383 853 432 880 442M-80 474C-53 476 27 494 80 483C133 471 187 407 240 405C293 402 347 464 400 469C453 475 507 450 560 437C613 424 667 387 720 390C773 392 853 443 880 454M-80 485C-53 487 27 505 80 493C133 481 187 415 240 413C293 411 347 475 400 480C453 486 507 460 560 447C613 433 667 396 720 399C773 402 853 454 880 465M-80 497C-53 498 27 515 80 503C133 490 187 424 240 423C293 421 347 486 400 492C453 497 507 470 560 456C613 442 667 405 720 409C773 412 853 465 880 476M-80 508C-53 508 27 525 80 512C133 500 187 433 240 432C293 430 347 497 400 503C453 508 507 479 560 465C613 451 667 415 720 418C773 422 853 476 880 487M-80 519C-53 519 27 535 80 522C133 509 187 443 240 441C293 440 347 508 400 514C453 519 507 489 560 475C613 460 667 424 720 428C773 432 853 486 880 498' fill='none' stroke='%23000' stroke-opacity='.10' stroke-width='1'/%3E%3C/svg%3E");
  /* bandas claras anchas que siguen a las ondas */
  --tex-ondas-bandas:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='420'%3E%3Cpath d='M-80 -97C-53 -89 27 -42 80 -51C133 -59 187 -140 240 -147C293 -154 347 -103 400 -95C453 -86 507 -81 560 -94C613 -107 667 -170 720 -171C773 -172 853 -112 880 -100M-80 -53C-53 -46 27 -1 80 -10C133 -20 187 -105 240 -111C293 -118 347 -59 400 -50C453 -41 507 -42 560 -56C613 -70 667 -133 720 -133C773 -133 853 -69 880 -56M-80 -7C-53 -2 27 37 80 26C133 16 187 -66 240 -72C293 -77 347 -15 400 -6C453 3 507 -6 560 -20C613 -35 667 -92 720 -91C773 -90 853 -27 880 -14M-80 38C-53 41 27 71 80 60C133 49 187 -25 240 -29C293 -33 347 29 400 36C453 43 507 28 560 14C613 0 667 -48 720 -46C773 -44 853 13 880 24M-80 82C-53 84 27 102 80 92C133 81 187 20 240 18C293 15 347 71 400 76C453 81 507 60 560 48C613 35 667 0 720 2C773 4 853 50 880 60M-80 125C-53 125 27 133 80 123C133 113 187 67 240 66C293 64 347 111 400 114C453 117 507 93 560 83C613 72 667 49 720 51C773 53 853 87 880 94M-80 167C-53 165 27 165 80 156C133 147 187 114 240 113C293 112 347 150 400 151C453 152 507 128 560 119C613 110 667 97 720 98C773 100 853 123 880 128M-80 208C-53 205 27 199 80 191C133 183 187 159 240 159C293 159 347 189 400 189C453 188 507 164 560 157C613 149 667 143 720 144C773 145 853 160 880 163M-80 249C-53 245 27 236 80 229C133 221 187 202 240 202C293 201 347 229 400 228C453 227 507 202 560 195C613 188 667 185 720 186C773 187 853 199 880 201M-80 291C-53 287 27 276 80 268C133 259 187 241 240 241C293 241 347 271 400 269C453 268 507 241 560 234C613 227 667 224 720 226C773 227 853 240 880 243M-80 334C-53 330 27 317 80 307C133 298 187 277 240 278C293 279 347 314 400 314C453 313 507 281 560 272C613 264 667 261 720 264C773 266 853 283 880 287M-80 379C-53 374 27 358 80 347C133 336 187 311 240 313C293 315 347 360 400 359C453 359 507 319 560 310C613 300 667 297 720 301C773 305 853 328 880 333M-80 425C-53 418 27 398 80 385C133 373 187 346 240 350C293 353 347 406 400 405C453 405 507 357 560 346C613 335 667 334 720 340C773 345 853 373 880 379M-80 469C-53 462 27 437 80 423C133 409 187 383 240 388C293 392 347 451 400 450C453 449 507 394 560 382C613 370 667 373 720 380C773 387 853 416 880 423M-80 512C-53 503 27 474 80 460C133 446 187 424 240 429C293 434 347 493 400 492C453 490 507 431 560 419C613 407 667 414 720 422C773 429 853 457 880 464' fill='none' stroke='%23fff' stroke-opacity='.12' stroke-width='14'/%3E%3C/svg%3E");
}

/* ---------- Bienestar Eventual: hojas ---------- */
.modalidad--eventual .modalidad__cab{
  background-color:#7C683F; /* promedio medido #83704A; se compensa el aclarado de la textura */
  background-image:var(--tex-hojas-claras),var(--tex-grano);
}
.modalidad--eventual .modalidad__cuerpo{
  background-color:#F2E3CE; /* promedio medido #F0E2CD; las hojas se juntan abajo, la zona del precio queda casi lisa */
  background-image:linear-gradient(180deg,#F2E3CE 0,rgba(242,227,206,.85) 30%,rgba(242,227,206,0) 70%),var(--tex-hojas-oscuras),var(--tex-grano);
  background-position:0 0,-50px -30px,0 0;
}

/* ---------- Bienestar Continuo: ondas ---------- */
.modalidad--continuo .modalidad__cab{
  background-color:#6C7859; /* promedio medido #717C5F */
  background-image:var(--tex-ondas),var(--tex-grano);
  background-position:0 -60px,0 0;
}
.modalidad--continuo .modalidad__cuerpo{
  background-color:#DBE3D0; /* sin la capa de líneas finas: en la maqueta son bandas suaves tipo satén */
  background-image:var(--tex-ondas-bandas),var(--tex-grano);
  background-position:-60px -100px,0 0;
}

/* ---------- Bienestar Adaptado: rombos, azul pizarra (cambio de la clienta, oct 2026) ---------- */
.modalidad--adaptado .modalidad__cab{
  background-color:#4E647B; /* promedio medido en su imagen #5B6F84; se compensa el aclarado de la textura */
  background-image:
    repeating-linear-gradient(45deg,transparent 0 58px,rgba(255,255,255,.09) 58px 59.5px),
    repeating-linear-gradient(-45deg,transparent 0 58px,rgba(255,255,255,.09) 58px 59.5px),
    linear-gradient(45deg,rgba(255,255,255,.035) 25%,transparent 25% 75%,rgba(255,255,255,.035) 75%),
    linear-gradient(-45deg,rgba(255,255,255,.035) 25%,transparent 25% 75%,rgba(255,255,255,.035) 75%),
    var(--tex-grano);
  background-size:auto,auto,118px 118px,118px 118px,auto;
}
.modalidad--adaptado .modalidad__cuerpo{
  background-color:#CED8E3; /* promedio medido en su imagen */
  /* el mosaico de rombos de la maqueta, reteñido a azul: es la textura que trae su imagen */
  background-image:url(/assets/img/tex-adaptado-azul.webp);
  background-size:300px 184px;
}

/* ---------- Nuestro Expertise: palomitas en bajorrelieve (imagen 3 de la clienta, P014-P015) ----------
   Va al final de src/texturas.css. Ahí NO se expanden las macros de build.mjs: por eso calc(var(--u)*N)
   (un u() aquí hace fallar el build con "Macros sin expandir").
   Mosaico SVG de 19x21 px del lienzo de 1920 = 15.2x16.8 CSS px a 1536 (la pantalla de la clienta)
   = 19x21 px físicos en cualquier pantalla de 1920 al 100/125/150 %.
   Palomita: brazo corto 2.2,2.6 / largo 5.75,-6.9 / trazo 1.6 / negro al 13 % + luz blanca al 80 % desplazada 1.3,1.
   Generado con:  node genpalomitas.js 19 21 2.2 2.6 5.75 -6.9 1.6 .13 .8 1.3 1 > palomitas.svg ; node enc.js palomitas.svg */
:root{
  --tex-palomitas:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='21' viewBox='0 0 19 21'%3E%3Cg fill='none' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.83 12.35l2.2 2.6 5.75-6.9' stroke='%23fff' stroke-opacity='.8'/%3E%3Cpath d='M5.53 11.35l2.2 2.6 5.75-6.9' stroke='%23000' stroke-opacity='.13'/%3E%3C/g%3E%3C/svg%3E");
}
.enfoque{
  background-color:#F8F8F7; /* papel medido #F7F7F7; el grano oscurece ~1 nivel (sin grano: #F7F7F7) */
  background-image:var(--tex-palomitas),var(--tex-grano);
  background-size:calc(var(--u)*19) calc(var(--u)*21),auto;
}
.enfoque__icono{background-color:#F9F9F8} /* medallón liso: dentro del aro no hay palomitas */
@media (max-width:1199px){
  .enfoque{background-size:15px 16.5px,auto} /* --u se queda en .625 aquí: tamaño fijo, el de su pantalla */
}
/* opcionales (en la imagen son en parte realce de la IA): */
.enfoque__texto{text-shadow:0 0 2px #F8F8F7,0 0 4px #F8F8F7}        /* las palomitas no tocan las letras */
.enfoque__icono{box-shadow:0 0 0 1px rgba(255,255,255,.55)}          /* filo claro junto al aro */
