/* =====================================================================
   PAXIO · paxio.mx
   Mismo lenguaje visual que empresas.paxio.mx (paleta, tipografías, encabezado, pie,
   tarjetas con textura, botones), en un sitio de varias páginas.
   Tipografías: Carlito (menú y pie, ≈ Calibri), Montserrat (texto) y Crimson Pro (títulos).
   Cortes: 760 px (celular), 1000 px (portadas partidas) y 1200 px (menú de escritorio).
   ===================================================================== */

:root {
  color-scheme: light;
  --hdr: 72px;
  --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;
  --verde-900: #33431B;
  --verde: #587143;
  --verde-h: #4A6138;
  --verde-claro: #EEF2EA;
  --oliva: #4C5B0A;
  --oliva-2: #5B6D23;
  --teal: #1AAFA8;
  --teal-azul: #188DA2;
  --texto: #545552;
  --tinta: #3A3D44;
  --titulo: #3B3F10;
  --tenue: #6E6C69;
  --crema: #F6F2ED;
  --crema-2: #FBF9F6;
  --salvia: #ECEFE8;
  --borde: #E3E1DA;
  --oro: #E3A33B;
  --cafe-noche: #1E1711;   /* fondo de la portada de inicio (maqueta de la clienta, 22 oct 2026) */
  --wrap: 1200px;
}
@media (min-width: 1200px) { :root { --hdr: clamp(84px, 6.4vw, 112px); } }

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--hdr) + 16px); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
body {
  margin: 0;
  background: #FFFFFF;
  color: var(--texto);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
h1, h2, h3, p, ul, ol, dl, dd, blockquote, figure, table { margin: 0; padding: 0; }
ul, ol { list-style: none; }
img, svg { display: block; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
b, strong { font-weight: 700; }
button { font: inherit; color: inherit; }
p, li, h1, h2, h3, blockquote, td, th { text-wrap: pretty; }
: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(--verde-900); color: #fff; font-weight: 600; text-decoration: none;
}
.skip:focus { top: 12px; }

.wrap { width: min(var(--wrap), 100% - 32px); margin: 0 auto; }
.wrap--angosto { --wrap: 840px; }
.sec { padding: clamp(52px, 6.5vw, 100px) 0; }
.centro { margin-top: 28px; text-align: center; }
.tenue { color: var(--tenue); }
.ico { display: inline-block; width: 18px; height: 18px; margin-right: 8px; vertical-align: -3px; flex: none; }

/* ---------- Títulos y textos comunes ---------- */
.ceja {
  display: block;
  font: 600 13px/1.35 var(--f-sans); letter-spacing: .14em; text-transform: uppercase;
  color: var(--teal-azul);
}
.sec-title {
  text-align: center;
  font: 400 clamp(34px, 3.7vw, 58px)/1.08 var(--f-serif); color: var(--titulo);
}
.sec-title em, .hero__titulo em, .cabecera__titulo em, .banda__titulo em { font-style: italic; }
.sec-title::after {
  content: ""; display: block; width: 56px; height: 3px; margin: 16px auto 0;
  background: var(--teal);
}
.sec-title--izq { text-align: left; }
.sec-title--izq::after { margin-left: 0; }
.sec-sub {
  max-width: 42em; margin: 16px auto 0; text-align: center;
  font: 400 clamp(16px, 1.15vw, 18px)/1.55 var(--f-sans); color: var(--tenue);
}
.barra { display: block; width: 64px; height: 3px; margin-top: 20px; background: var(--teal); }
.nota { margin-top: 22px; font: 400 14.5px/1.5 var(--f-sans); color: var(--tenue); }
.nota--fuerte { margin-top: 28px; font-size: 16px; color: var(--tinta); }
.nota--fuerte b { color: var(--oliva); }
.nota--centro { text-align: center; }
.link {
  display: inline-flex; align-items: center; gap: 6px;
  font-weight: 600; color: var(--verde-900);
  text-decoration: underline; text-decoration-color: rgba(51, 67, 27, .35); text-underline-offset: 4px;
}
.link .chev { width: 14px; height: 14px; }
@media (hover: hover) { .link:hover { text-decoration-color: var(--teal); } }
.chip {
  display: inline-block; padding: 3px 11px; border-radius: 999px;
  background: var(--salvia); color: #4A6138;
  font: 600 13px/1.4 var(--f-sans); white-space: nowrap;
}
.tag {
  display: inline-block; margin-left: 4px; padding: 2px 9px; border-radius: 999px;
  background: #F2E3CE; color: #6B4F1D;
  font: 600 11.5px/1.5 var(--f-sans); letter-spacing: .04em; text-transform: uppercase;
  vertical-align: 3px; white-space: nowrap;
}
.tag--fuerte { background: var(--teal-azul); color: #FFFFFF; }
.stars { color: var(--oro); letter-spacing: 2px; font-size: 16px; line-height: 1; }

/* ---------- Botones ---------- */
.ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.ctas--centro { justify-content: center; }
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 48px; padding: 10px 26px;
  border: 1.5px solid var(--verde); border-radius: 999px;
  background: var(--verde); color: var(--verde-claro);
  font: 500 16px/1.2 var(--f-sans); text-decoration: none; text-align: center;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
}
.btn:active { transform: scale(.98); }
.btn__wa { width: 20px; height: 20px; flex: none; }
.btn--line { background: transparent; color: #3E5230; }
.btn--sm { min-height: 44px; padding: 8px 18px; font-size: 15px; }
.btn--claro { background: var(--verde-claro); border-color: var(--verde-claro); color: #2E3D1C; }
.btn--claro-line { background: transparent; border-color: rgba(238, 242, 234, .8); color: var(--verde-claro); }
@media (hover: hover) {
  .btn:hover { background: var(--verde-h); border-color: var(--verde-h); }
  .btn--line:hover { background: var(--verde-claro); border-color: var(--verde); color: #2E3D1C; }
  .btn--claro:hover { background: #FFFFFF; border-color: #FFFFFF; color: #2E3D1C; }
  .btn--claro-line:hover { background: rgba(238, 242, 234, .12); border-color: #FFFFFF; color: #FFFFFF; }
}

/* =====================================================================
   ENCABEZADO
   ===================================================================== */
.site-header { position: sticky; top: 0; z-index: 100; height: var(--hdr); background: var(--hdr-bg); }
.site-header__inner {
  position: relative; display: flex; align-items: center;
  height: 100%; max-width: 1760px; margin: 0 auto; padding: 0 16px;
}
.site-header__logo { display: block; flex: none; height: 52px; }   /* en celular, el alto del WhatsApp flotante */
.site-header__logo img { height: 100%; width: auto; }
.nav-toggle {
  display: grid; place-items: center; width: 44px; height: 44px; margin: 0 -6px 0 auto;
  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); }

/* menú desplegable (menos de 1200 px) */
.nav {
  position: fixed; left: 0; right: 0; top: var(--hdr);
  display: none; flex-direction: column;
  max-height: calc(100svh - var(--hdr)); overflow-y: auto;
  padding: 4px 0 20px; background: var(--hdr-bg);
  box-shadow: 0 14px 24px rgba(40, 45, 20, .14);
}
.menu-open .nav { display: flex; }
.nav-item { border-bottom: 1px solid rgba(74, 65, 37, .12); }
.nav-item a {
  display: block; padding: 14px 24px;
  font: 400 19px/1.3 var(--f-ui); color: var(--nav); text-decoration: none;
}
.nav-item a.is-active { font-weight: 700; color: var(--verde-900); box-shadow: inset 4px 0 0 var(--teal); }
.nav-book {
  display: flex; align-items: center; justify-content: center; min-height: 48px;
  margin: 18px 24px 0; padding: 10px 22px; border-radius: 999px;
  background: var(--verde); color: var(--verde-claro);
  font: 500 16px/1.2 var(--f-sans); text-decoration: none;
}
.lang { display: none; }
.lang-m { display: flex; gap: 8px; margin: 16px 24px 0; }
.lang-m a {
  display: block; padding: 8px 16px; border: 1px solid rgba(74, 65, 37, .25); border-radius: 999px;
  font: 400 16px/1.2 var(--f-ui); color: var(--nav); text-decoration: none;
}
.lang-m a[aria-current="page"] { background: #FFFFFF; font-weight: 700; color: var(--verde-900); }

@media (min-width: 1200px) {
  .site-header__inner { padding: 0 clamp(24px, 3.2vw, 64px); }
  .site-header__logo { height: calc(var(--hdr) * .7); }
  .nav-toggle { display: none; }
  .nav {
    position: static; display: flex; flex-direction: row; align-items: center;
    max-height: none; overflow: visible; height: 100%; margin-left: auto; padding: 0;
    background: none; box-shadow: none; gap: clamp(10px, 1.3vw, 30px);
  }
  .nav-menu { display: flex; height: 100%; gap: clamp(2px, .8vw, 16px); }
  .nav-item { height: 100%; border: 0; }
  .nav-item a {
    position: relative; display: flex; align-items: center; height: 100%; padding: 0 clamp(6px, .6vw, 12px);
    font-size: clamp(17px, 1.18vw, 22.5px); white-space: nowrap;
    font-variant-ligatures: no-common-ligatures;
  }
  .nav-item a::after {
    content: ""; position: absolute; left: clamp(6px, .6vw, 12px); right: clamp(6px, .6vw, 12px); bottom: calc(var(--hdr) * .12);
    height: 4px; background: var(--teal);
    transform: scaleX(0); opacity: 0; transition: transform .18s ease, opacity .18s ease;
  }
  .nav-item a.is-active { box-shadow: none; }
  .nav-item a.is-active::after { transform: scaleX(1); opacity: 1; }
  .nav-book { margin: 0; min-height: 44px; padding: 8px 20px; font-size: clamp(14.5px, 1vw, 17px); white-space: nowrap; }
  .nav-book.is-active { background: var(--verde-900); }
  .lang { display: block; position: relative; height: 100%; }
  .lang summary {
    display: flex; align-items: center; height: 100%; padding: 0 4px;
    list-style: none; cursor: pointer;
    font: 400 clamp(16px, 1.1vw, 21px)/1 var(--f-ui); color: var(--nav);
  }
  .lang summary::-webkit-details-marker { display: none; }
  .lang summary::after {
    content: ""; width: 7px; height: 7px; margin: -4px 0 0 8px;
    border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg); opacity: .7;
  }
  .lang__menu {
    position: absolute; right: 0; top: calc(100% - 14px); z-index: 5;
    min-width: 160px; padding: 6px 0; background: #FFFFFF; border-radius: 10px;
    box-shadow: 0 10px 30px rgba(40, 45, 20, .16);
  }
  .lang__menu a { display: block; padding: 10px 20px; font: 400 17px/1.3 var(--f-ui); color: var(--nav); text-decoration: none; }
  .lang__menu a[aria-current="page"] { font-weight: 700; color: var(--verde-900); }
  .lang-m { display: none; }
}
@media (min-width: 1200px) and (hover: hover) {
  .nav-item a:hover { color: var(--verde-900); }
  .nav-item a:hover::after { transform: scaleX(1); opacity: .4; }
  .nav-book:hover { background: var(--verde-h); }
  .lang summary:hover { color: var(--verde-900); }
  .lang__menu a:hover { background: #F1F5EF; color: var(--verde-900); }
}

/* =====================================================================
   PORTADAS (texto sobre crema y foto que se desvanece, como "Nuestra esencia")
   ===================================================================== */
.hero { position: relative; background: var(--crema); overflow: hidden; }
.hero__foto { position: relative; aspect-ratio: 3 / 2; }
.hero--inicio .hero__foto { aspect-ratio: 3 / 4; max-height: 64svh; width: 100%; }
.hero__foto picture, .hero__foto img { width: 100%; height: 100%; }
.hero__foto img { object-fit: cover; }
.hero__texto { position: relative; padding: 30px 20px 44px; }
.hero h1 { font-weight: 400; }
.hero__titulo { display: block; margin-top: 12px; font: 400 clamp(42px, 5.4vw, 80px)/1.02 var(--f-serif); color: #444421; }
.hero--pagina .hero__titulo { font-size: clamp(38px, 4.4vw, 66px); }
.hero__lead { max-width: 33em; margin-top: 20px; font: 500 clamp(16px, 1.22vw, 19px)/1.7 var(--f-sans); color: var(--tinta); }
.rating {
  display: inline-flex; align-items: center; gap: 10px; margin-top: 24px;
  font: 400 15px/1.3 var(--f-sans); color: var(--tinta); text-decoration: none;
}
.rating b { color: var(--verde-900); }
@media (hover: hover) { .rating:hover span:last-child { text-decoration: underline; text-underline-offset: 3px; } }
@media (min-width: 760px) and (max-width: 999px) {
  .hero__foto, .hero--inicio .hero__foto { aspect-ratio: 16 / 9; max-height: none; }
  .hero__texto { padding: 36px 32px 52px; }
}
@media (min-width: 1000px) {
  .hero { display: flex; align-items: center; min-height: clamp(540px, 46vw, 800px); }
  .hero--pagina { min-height: clamp(440px, 34vw, 600px); }
  .hero__foto, .hero--inicio .hero__foto { position: absolute; top: 0; bottom: 0; left: 34%; right: 0; aspect-ratio: auto; max-height: none; width: auto; }
  .hero--pagina .hero__foto { left: 42%; }
  .hero__foto::before {
    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(90deg, var(--crema) 0%, rgba(246, 242, 237, .92) 9%, rgba(246, 242, 237, .5) 22%, rgba(246, 242, 237, 0) 42%);
  }
  .hero__texto {
    z-index: 2; width: min(46%, 660px); padding: 64px 0;
    margin-left: max(32px, calc((100vw - var(--wrap)) / 2));
  }
  .hero--pagina .hero__texto { width: min(44%, 600px); }
}

/* Portada oscura de inicio (22 oct 2026): fondo café casi negro y letras claras. La foto (casi cuadrada)
   se encuadra con object-position: en celular se ve la terapeuta y la cabeza del cliente; en escritorio, la cabeza de ella arriba. */
.hero--oscuro { background: var(--cafe-noche); }
.hero--oscuro .hero__foto img { object-position: 30% 15%; }
.hero--oscuro .hero__foto::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 34%; pointer-events: none;
  background: linear-gradient(180deg, rgba(30, 23, 17, 0) 0%, rgba(30, 23, 17, .75) 65%, var(--cafe-noche) 100%);
}
.hero--oscuro .ceja { color: #35B6C6; }
.hero--oscuro .hero__titulo { color: #FFFFFF; }
.hero--oscuro .hero__lead { color: rgba(255, 255, 255, .9); }
.hero--oscuro .rating { color: rgba(255, 255, 255, .85); }
.hero--oscuro .rating b { color: #FFFFFF; }
.hero--oscuro .btn--claro-line { border-color: rgba(255, 255, 255, .85); color: #FFFFFF; }
@media (hover: hover) { .hero--oscuro .btn--claro-line:hover { background: rgba(255, 255, 255, .12); border-color: #FFFFFF; } }
@media (min-width: 1000px) {
  .hero--oscuro .hero__foto { left: 38%; }
  .hero--oscuro .hero__foto::before {
    background: linear-gradient(90deg, var(--cafe-noche) 0%, rgba(30, 23, 17, .9) 12%, rgba(30, 23, 17, .5) 30%, rgba(30, 23, 17, 0) 52%);
  }
  .hero--oscuro .hero__foto::after { display: none; }
}

/* Cabecera sencilla (reservar, contacto, políticas) */
.cabecera { padding: clamp(40px, 5vw, 72px) 0 clamp(28px, 3vw, 44px); background: var(--crema); }
.cabecera h1 { font-weight: 400; }
.cabecera__titulo { display: block; margin-top: 10px; font: 400 clamp(38px, 4.4vw, 64px)/1.05 var(--f-serif); color: #444421; }
.cabecera__lead { max-width: 40em; margin-top: 16px; font: 500 clamp(16px, 1.2vw, 18.5px)/1.65 var(--f-sans); color: var(--tinta); }

/* =====================================================================
   INICIO · CATEGORÍAS (tarjetas con textura, como "Modalidades")
   ===================================================================== */
.cats__grid { display: grid; gap: 20px; margin-top: 44px; }
@media (min-width: 600px) { .cats__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .cats__grid { grid-template-columns: repeat(4, 1fr); gap: 24px; } }
.cat {
  display: flex; flex-direction: column; height: 100%;
  border: 1px solid var(--borde-cat, var(--borde)); border-radius: 16px; overflow: hidden;
  color: #3B3B3C; text-decoration: none;
  box-shadow: 0 1px 2px rgba(60, 50, 30, .06);
  transition: transform .2s ease, box-shadow .2s ease;
}
.cat--masajes { --borde-cat: #E5D5BC; }
.cat--faciales { --borde-cat: #D2DBC6; }
.cat--corporales { --borde-cat: #BDC8D5; }
.cat--paquetes { --borde-cat: #B9D6D3; }
@media (hover: hover) { .cat:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(60, 50, 30, .12); } }
.cat__cab {
  display: flex; align-items: center; gap: 16px; min-height: 116px; padding: 20px 22px;
  border-bottom: 1px solid rgba(0, 0, 0, .14); color: #F8F6F1;
}
.cat__icono {
  flex: 0 0 64px; height: 64px; display: grid; place-items: center;
  border: 2px solid rgba(255, 255, 255, .55); border-radius: 50%;
}
.cat__icono svg { width: 38px; height: 38px; stroke-width: 1.35; }
.cat__nombre { font: 500 clamp(22px, 1.6vw, 26px)/1.25 var(--f-sans); }
.cat__cuerpo {
  flex: 1; display: flex; flex-direction: column; align-items: center;
  padding: 22px 20px 20px; text-align: center;
}
.cat__desde { font: 500 15px/1.3 var(--f-sans); }
.cat__precio { margin-top: 2px; font: 400 42px/1.08 var(--f-sans); letter-spacing: -.03em; color: #26330F; }
.cat__texto { margin-top: 12px; font: 400 15.5px/1.5 var(--f-sans); color: #3A3E2C; }
.cat__ver {
  display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 16px;
  font: 600 15px/1.3 var(--f-sans); color: var(--verde-900);
}
.cat__ver .chev { width: 14px; height: 14px; }

/* ---------- Por qué nos eligen ---------- */
/* ---------- Por qué nos eligen: cada razón en su recuadro (22 oct 2026) ---------- */
.porque { background: var(--crema-2); }
.razones { display: grid; gap: 20px; margin-top: 44px; }
@media (min-width: 900px) { .razones { grid-template-columns: repeat(3, 1fr); gap: 24px; } }
.razon {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  padding: 30px 26px 32px; background: #FFFFFF; border: 1px solid #D9D6CE; border-radius: 16px;
  box-shadow: 0 1px 3px rgba(40, 40, 30, .06);
}
.razon__icono {
  width: 96px; height: 96px; display: grid; place-items: center;
  border-radius: 50%; background: #E6EEE2; color: #3E4A1C;
}
.razon__icono svg { width: 52px; height: 52px; stroke-width: 1.3; }
.razon h3 { margin-top: 20px; font: 600 clamp(20px, 1.6vw, 23px)/1.3 var(--f-sans); color: #2E3512; text-wrap: balance; }
.razon p { max-width: 24em; margin-top: 10px; font: 400 16.5px/1.6 var(--f-sans); color: var(--texto); }
.razon .razon__google { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px 8px; margin-top: 12px; }
.razon__google b { font-weight: 700; color: #2E3512; }
.razon__google .stars { color: var(--oro); font-size: 19px; line-height: 1; }
.razon__link {
  margin-top: 8px; padding: 4px 2px;
  font: 500 15.5px/1.4 var(--f-sans); color: var(--teal-azul); text-decoration: underline; text-underline-offset: 3px;
}
@media (hover: hover) { .razon__link:hover { color: #0F6F80; } }

/* ---------- La firma de la casa ---------- */
.firma__grid { display: grid; gap: 32px; align-items: center; }
@media (min-width: 1000px) { .firma__grid { grid-template-columns: 1fr 1fr; gap: 64px; } }
.firma__foto img { width: 100%; border-radius: 16px; aspect-ratio: 11 / 10; object-fit: cover; }
.firma__texto .sec-title { margin-top: 10px; }
.firma__texto > p:not(.ceja):not(.firma__precio) { margin-top: 22px; font: 400 17px/1.75 var(--f-sans); color: var(--tinta); }
.firma__precio { display: flex; align-items: center; gap: 12px; margin-top: 20px; }
.firma__precio b { font: 500 30px/1 var(--f-sans); color: var(--oliva); }

/* ---------- Los favoritos ---------- */
.favs { background: var(--crema); }
.favs__lista { display: grid; gap: 0 48px; margin-top: 40px; }
@media (min-width: 760px) { .favs__lista { grid-template-columns: 1fr 1fr; } }
.fav {
  display: grid; grid-template-columns: 1fr auto auto; align-items: baseline; gap: 14px;
  padding: 16px 4px; border-bottom: 1px dashed #C9C4B8;
  color: var(--tinta); text-decoration: none;
}
.fav__nombre { font: 600 17px/1.35 var(--f-sans); color: #2C3518; }
.fav__meta { font: 400 14px/1.3 var(--f-sans); color: var(--tenue); }
.fav__precio { font: 500 19px/1.2 var(--f-sans); color: var(--oliva); }
@media (hover: hover) { .fav:hover .fav__nombre { text-decoration: underline; text-decoration-color: var(--teal); text-underline-offset: 4px; } }

/* ---------- Reseñas ---------- */
.resenas { background: var(--crema-2); }
.resenas__resumen {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px 12px;
  margin-top: 18px; font: 400 16px/1.4 var(--f-sans); color: var(--tenue);
}
.resenas__num { font: 600 30px/1 var(--f-sans); color: var(--oliva); }
.resenas__grid { display: grid; gap: 20px; margin-top: 36px; }
@media (min-width: 900px) { .resenas__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; } }
.resena {
  display: flex; flex-direction: column; padding: 26px 26px 22px;
  background: #FFFFFF; border: 1px solid var(--borde); border-radius: 16px;
  box-shadow: 0 1px 3px rgba(40, 40, 30, .05);
}
.resena blockquote { margin-top: 14px; }
.resena blockquote p { font: italic 400 clamp(19px, 1.45vw, 22px)/1.4 var(--f-serif); color: #4A4844; }
.resena figcaption { margin-top: auto; padding-top: 16px; font: 600 15px/1.4 var(--f-sans); color: #5E6428; }
.resena__nota { font-weight: 400; color: var(--tenue); font-size: 13.5px; }

/* ---------- Agenda en tres pasos ---------- */
.pasos__grid { display: grid; gap: 18px; margin-top: 44px; counter-reset: paso; }
@media (min-width: 900px) { .pasos__grid { grid-template-columns: repeat(3, 1fr); gap: 20px; } }
.paso {
  position: relative; padding: 26px 24px 26px; border-radius: 12px; background: var(--salvia); text-align: center;
}
/* Un verde por paso (22 oct 2026, colores de la clienta): salvia, eucalipto y verde pasto */
.paso:nth-child(1) { background: #DFEBC3; }
.paso:nth-child(2) { background: #BAD6B5; }
.paso:nth-child(3) { background: #A0D07B; }
.paso__icono {
  width: 84px; height: 84px; margin: 0 auto; display: grid; place-items: center;
  border-radius: 50%; background: #FFFFFF; color: #5E4B32;
}
.paso__icono svg { width: 46px; height: 46px; stroke-width: 1.3; }
.paso__num {
  position: absolute; top: 16px; left: 18px;
  font: 400 34px/1 var(--f-serif); color: rgba(51, 67, 27, .35);
}
.paso h3 { margin-top: 14px; font: 600 19px/1.3 var(--f-sans); color: #2C3518; }
.paso p { margin-top: 8px; font: 400 16px/1.55 var(--f-sans); color: #3C3E3B; }

/* ---------- Visítanos ---------- */
.visita { background: var(--crema); }
.visita__grid { display: grid; gap: 36px; }
@media (min-width: 1000px) { .visita__grid { grid-template-columns: 5fr 6fr; gap: 56px; align-items: stretch; } }
.visita__bloque { margin-top: 26px; }
.visita__bloque h3 { display: flex; align-items: center; font: 700 16px/1.3 var(--f-sans); color: var(--verde-900); }
.visita__bloque h3 .ico { color: var(--teal-azul); width: 20px; height: 20px; }
.visita__bloque p { margin-top: 8px; font: 400 16.5px/1.65 var(--f-sans); color: var(--tinta); }
.visita__bloque a { color: var(--verde-900); text-underline-offset: 3px; }
.visita__bloque--morales { padding: 18px 20px; border-radius: 12px; background: #FFFFFF; border: 1px solid var(--borde); }
.horario { margin-top: 8px; border-collapse: collapse; font: 400 16.5px/1.5 var(--f-sans); color: var(--tinta); }
.horario th { padding: 3px 28px 3px 0; font-weight: 600; text-align: left; }
.horario td { padding: 3px 0; font-variant-numeric: tabular-nums; }
.visita__bloque .horario + p { margin-top: 6px; font-size: 15px; }
.visita__mapa { height: clamp(360px, 42vw, 560px); border-radius: 16px; overflow: hidden; background: #E9E6E1; }
@media (min-width: 1000px) { .visita__mapa { align-self: start; position: sticky; top: calc(var(--hdr) + 24px); } }
.visita__mapa iframe { display: block; width: 100%; height: 100%; border: 0; }

/* ---------- Cierre (como "Nuestra esencia"). Foto vertical del equipo desde el 22 oct 2026 ---------- */
.cierre { position: relative; overflow: hidden; background: var(--crema); }
.cierre__foto img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 70%; }
.cierre__texto { position: relative; padding: 36px 20px 56px; }
.cierre__entrada { font: 400 clamp(30px, 2.6vw, 45px)/1.12 var(--f-serif); color: #444421; }
.cierre__italica { margin-top: 6px; font: italic 400 clamp(36px, 3.1vw, 54px)/1.05 var(--f-serif); color: #444421; }
.cierre__cuerpo { max-width: 30em; margin-top: 26px; font: 500 clamp(16px, 1.2vw, 19px)/1.8 var(--f-sans); color: var(--tinta); }
.cierre__linea { width: min(420px, 80%); height: 2px; margin: 30px 0 0; border: 0; background: #D8D7CD; }
.cierre__firma { margin-top: 24px; font: 400 clamp(32px, 2.6vw, 46px)/1 var(--f-serif); color: #444421; }
@media (min-width: 1000px) {
  .cierre { display: flex; align-items: center; min-height: clamp(620px, 54vw, 860px); }
  .cierre__foto { position: absolute; top: 0; bottom: 0; right: 0; width: min(46%, 700px); }
  .cierre__foto picture, .cierre__foto img { width: 100%; height: 100%; aspect-ratio: auto; }
  .cierre__foto::before {
    content: ""; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(90deg, var(--crema) 0%, rgba(246, 242, 237, .85) 8%, rgba(246, 242, 237, 0) 34%);
  }
  .cierre__texto { z-index: 2; width: min(48%, 640px); padding: 72px 0; margin-left: max(32px, calc((100vw - var(--wrap)) / 2)); }
}

/* ---------- Banda final ---------- */
.banda { padding: clamp(44px, 5vw, 72px) 0; background: #3E5230; color: var(--verde-claro); }
.banda__inner { display: grid; gap: 8px 40px; align-items: center; }
@media (min-width: 900px) { .banda__inner { grid-template-columns: 1fr auto; } .banda .ctas { margin-top: 0; } }
.banda__titulo { font: 400 clamp(32px, 3.2vw, 48px)/1.1 var(--f-serif); color: #FFFFFF; }
.banda p { margin-top: 8px; font: 400 17px/1.5 var(--f-sans); color: rgba(238, 242, 234, .85); }

/* =====================================================================
   SERVICIOS (masajes, faciales, corporales)
   ===================================================================== */
.grupo {
  margin: 0 0 22px; padding-bottom: 12px; border-bottom: 2px solid var(--salvia);
  font: 400 clamp(30px, 2.8vw, 42px)/1.15 var(--f-serif); color: var(--titulo);
}
.grupo span { font-family: var(--f-sans); font-size: .6em; font-weight: 500; color: var(--oliva); }
* + .grupo { margin-top: 56px; }
.grupo__nota { margin: -10px 0 20px; color: var(--tenue); }
.svc-grid { display: grid; gap: 18px; }
@media (min-width: 900px) { .svc-grid { grid-template-columns: 1fr 1fr; gap: 22px; } }
@media (min-width: 1100px) { .svc-grid--3 { grid-template-columns: repeat(3, 1fr); } .svc-grid--3 .svc { grid-template-columns: 1fr; } .svc-grid--3 .svc__mini { width: 100%; height: 180px; } }
.svc {
  display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 16px; align-items: start;
  padding: 18px; background: #FFFFFF; border: 1px solid var(--borde); border-radius: 16px;
  box-shadow: 0 1px 3px rgba(40, 40, 30, .05);
}
@media (min-width: 760px) { .svc { grid-template-columns: 132px minmax(0, 1fr); gap: 22px; padding: 20px; } }
.svc__mini { width: 100%; aspect-ratio: 1; border-radius: 12px; overflow: hidden; background: var(--salvia); }
.svc__mini picture, .svc__mini img { width: 100%; height: 100%; object-fit: cover; }
.svc__icono { display: grid; place-items: center; width: 100%; height: 100%; color: #62751A; }
.svc__icono svg { width: 46%; height: auto; stroke-width: 1.3; }
.svc__cab { display: flex; align-items: baseline; justify-content: space-between; gap: 4px 12px; }
.svc__nombre { min-width: 0; overflow-wrap: break-word; }
.svc__nombre { font: 600 18.5px/1.3 var(--f-sans); color: #26330F; }
.svc__precio { flex: none; font: 500 22px/1.2 var(--f-sans); color: var(--oliva); white-space: nowrap; }
.svc .chip { margin-top: 8px; }
.svc__texto { margin-top: 10px; font: 400 15.5px/1.6 var(--f-sans); color: var(--tinta); }
.svc__mas { margin-top: 10px; }
.svc__mas summary {
  display: inline-flex; align-items: center; gap: 6px; cursor: pointer; list-style: none;
  font: 600 14.5px/1.4 var(--f-sans); color: var(--verde-900);
}
.svc__mas summary::-webkit-details-marker { display: none; }
.svc__mas summary::after {
  content: ""; width: 7px; height: 7px; margin-top: -3px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg);
}
.svc__mas[open] summary::after { margin-top: 3px; transform: rotate(-135deg); }
.svc__mas ul { margin-top: 8px; padding-left: 18px; list-style: disc; font: 400 15px/1.6 var(--f-sans); color: var(--tinta); }
.svc__mas li::marker { color: #84A474; }
.svc__wa {
  display: inline-flex; align-items: center; margin-top: 12px;
  font: 600 14.5px/1.4 var(--f-sans); color: #1F7A4D; text-decoration: none;
}
.svc__wa .ico { color: #25D366; }
@media (hover: hover) { .svc__wa:hover { text-decoration: underline; text-underline-offset: 3px; } }

/* =====================================================================
   PAQUETES, CERTIFICADOS Y PLANES
   ===================================================================== */
.pqs__grid { display: grid; gap: 20px; }
@media (min-width: 640px) { .pqs__grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1000px) { .pqs__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; } }
.pq {
  display: flex; flex-direction: column; padding: 24px 24px 22px;
  background: #FFFFFF; border: 1px solid var(--borde); border-radius: 16px;
  box-shadow: 0 1px 3px rgba(40, 40, 30, .05);
}
.pq--completo { border-color: #9EC9C4; box-shadow: 0 0 0 1px #9EC9C4; }
.pq__cab { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.pq__letra { margin-right: auto; font: 400 44px/1 var(--f-serif); color: var(--titulo); }
.pq__letra span { font: 600 13px/1 var(--f-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--teal-azul); vertical-align: 10px; }
.pq__incluye { margin-top: 18px; }
.pq__incluye li { display: flex; padding: 5px 0; font: 400 16px/1.45 var(--f-sans); color: var(--tinta); }
.pq__incluye .ico { margin-top: 2px; color: #6E8C60; }
.pq__precios { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: auto; padding-top: 20px; }
.pq__precios div { padding: 12px 10px; border-radius: 10px; background: var(--crema-2); text-align: center; }
.pq__precios dt { font: 500 13.5px/1.2 var(--f-sans); color: var(--tenue); }
.pq__precios dd { margin-top: 4px; font: 500 24px/1.1 var(--f-sans); color: var(--oliva); }
.pq .svc__wa { align-self: center; }

.certs { background: var(--crema-2); }
.certs__grid { display: grid; gap: 20px; margin-top: 40px; }
@media (min-width: 900px) { .certs__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; } }
.cert { padding: 26px 24px; border-radius: 14px; background: var(--salvia); text-align: center; }
.cert__icono {
  width: 72px; height: 72px; margin: 0 auto; display: grid; place-items: center;
  border-radius: 50%; background: #FFFFFF; color: #5E4B32;
}
.cert__icono svg { width: 40px; height: 40px; stroke-width: 1.35; }
.cert h3 { margin-top: 14px; font: 600 19px/1.3 var(--f-sans); color: #2C3518; }
.cert__precio { margin-top: 4px; font: 500 22px/1.2 var(--f-sans); color: var(--oliva); }
.cert p:last-child { margin-top: 8px; font: 400 15.5px/1.55 var(--f-sans); color: #3C3E3B; }

/* =====================================================================
   MENÚ Y PRECIOS
   ===================================================================== */
.menu__grid { display: grid; gap: 0 56px; }
@media (min-width: 1000px) { .menu__grid { grid-template-columns: 1fr 1fr; } }
.menu-tabla { width: 100%; margin-top: 36px; border-collapse: collapse; font: 400 16px/1.45 var(--f-sans); color: var(--tinta); }
.menu-tabla caption {
  padding-bottom: 10px; border-bottom: 2px solid var(--salvia); text-align: left;
  font: 400 clamp(26px, 2.2vw, 34px)/1.2 var(--f-serif); color: var(--titulo);
}
.menu-tabla th, .menu-tabla td { padding: 12px 6px; border-bottom: 1px dashed #D2CDC2; vertical-align: baseline; text-align: left; }
.menu-tabla th { font-weight: 600; color: #2C3518; }
.menu-tabla th a { color: inherit; text-decoration: none; }
@media (hover: hover) { .menu-tabla th a:hover { text-decoration: underline; text-decoration-color: var(--teal); text-underline-offset: 4px; } }
.menu-tabla td { font-size: 14.5px; color: var(--tenue); white-space: nowrap; }
.menu-tabla .num { text-align: right; font-size: 17px; font-weight: 500; color: var(--oliva); font-variant-numeric: tabular-nums; }
.menu-tabla--pq { margin-top: 56px; }
.menu-tabla--pq thead th { font: 600 13px/1.3 var(--f-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--tenue); }
.menu-tabla--pq td:nth-child(2) { white-space: normal; font-size: 15px; color: var(--tinta); }
@media (max-width: 759px) {
  .menu-tabla--pq thead { display: none; }
  .menu-tabla--pq tr { display: grid; grid-template-columns: 1fr auto auto; gap: 2px 14px; padding: 12px 0; border-bottom: 1px dashed #D2CDC2; }
  .menu-tabla--pq th, .menu-tabla--pq td { padding: 0; border: 0; }
  .menu-tabla--pq th { grid-column: 1 / -1; }
  .menu-tabla--pq td:nth-child(2) { grid-column: 1 / -1; }
  .menu-tabla--pq td.num::before { content: attr(data-l); font-size: 13px; font-weight: 400; color: var(--tenue); }
}

/* =====================================================================
   RESERVAR
   ===================================================================== */
.reservar { padding-top: 28px; }
.reservar__grid { display: grid; gap: 28px; }
@media (min-width: 1000px) { .reservar__grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; align-items: start; } }
.reservar__agenda { min-height: 720px; border-radius: 16px; background: #FFFFFF; border: 1px solid var(--borde); overflow: hidden; }
.calendly-inline-widget { min-width: 300px; height: 1100px; }
@media (min-width: 1000px) { .calendly-inline-widget { height: 900px; } }
.reservar__cargando { padding: 40px 24px; text-align: center; color: var(--tenue); }
.reservar__aside { display: grid; gap: 20px; }
@media (min-width: 1000px) { .reservar__aside { position: sticky; top: calc(var(--hdr) + 20px); } }
.aside-card { padding: 24px 22px; border-radius: 16px; background: var(--salvia); }
.aside-card h2 { font: 600 18px/1.3 var(--f-sans); color: #2C3518; }
.aside-card p { margin-top: 14px; font-size: 15.5px; }
.aside-card .btn { width: 100%; margin-top: 14px; }
.aside-card--wa { background: var(--crema); }
.lista-check { margin-top: 12px; }
.lista-check li { display: flex; padding: 6px 0; font: 400 15.5px/1.5 var(--f-sans); color: var(--tinta); }
.lista-check .ico { margin-top: 2px; color: #6E8C60; }

/* =====================================================================
   PREGUNTAS FRECUENTES Y TEXTOS LEGALES
   ===================================================================== */
.faq__lista { margin-top: 36px; border-top: 1px solid var(--borde); }
.faq__item { border-bottom: 1px solid var(--borde); }
.faq__item summary {
  position: relative; padding: 20px 44px 20px 4px; cursor: pointer; list-style: none;
  font: 600 17.5px/1.4 var(--f-sans); color: #2C3518;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary::after {
  content: ""; position: absolute; right: 12px; top: 50%; width: 9px; height: 9px; margin-top: -7px;
  border-right: 2px solid var(--verde); border-bottom: 2px solid var(--verde);
  transform: rotate(45deg); transition: transform .2s ease;
}
.faq__item[open] summary::after { margin-top: -2px; transform: rotate(-135deg); }
.faq__item p { padding: 0 44px 22px 4px; font: 400 16.5px/1.7 var(--f-sans); color: var(--tinta); }
@media (hover: hover) { .faq__item summary:hover { color: var(--verde); } }

.legal h2 { margin-top: 40px; font: 600 20px/1.35 var(--f-sans); color: var(--verde-900); }
.legal h2:first-child { margin-top: 0; }
.legal p { margin-top: 14px; font: 400 17px/1.75 var(--f-sans); color: var(--tinta); }
.legal ul { margin-top: 12px; padding-left: 22px; list-style: disc; }
.legal li { margin-top: 6px; font: 400 17px/1.7 var(--f-sans); color: var(--tinta); }
.legal li::marker { color: #84A474; }
.legal .ctas { margin-top: 44px; }

/* =====================================================================
   PIE
   ===================================================================== */
/* Minimalista desde el 22 oct 2026 (maqueta de la clienta): logo sin lema, Facebook e Instagram,
   línea, copyright, aviso de privacidad y política de citas, sobre el mismo verde del encabezado */
.site-footer { background: var(--hdr-bg); color: #4A4125; font-family: var(--f-ui); }
.site-footer__inner {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  max-width: 1756px; margin: 0 auto; padding: 52px 20px 44px;
}
@media (min-width: 1200px) { .site-footer__inner { padding: 68px 40px 56px; } }
.site-footer__logo { display: block; border-radius: 8px; }
.site-footer__logo img { height: clamp(64px, 6vw, 92px); width: auto; }
.site-footer__social { display: flex; gap: 24px; margin-top: 20px; }
.site-footer__social a {
  display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%;
  color: #4B5628; transition: background-color .2s ease, color .2s ease;
}
.site-footer__social svg { width: 26px; height: 26px; stroke-width: 1.8; }
@media (hover: hover) { .site-footer__social a:hover { color: var(--verde-900); background: rgba(255, 255, 255, .5); } }
.site-footer__legal {
  width: min(560px, 100%); margin-top: 16px; padding-top: 22px; border-top: 3px solid var(--teal-azul);
  font-size: 16.5px; line-height: 1.75; color: #4A4125;
}
.site-footer__legal a { color: inherit; text-underline-offset: 3px; }
@media (hover: hover) { .site-footer__legal a:hover { color: #1B2A08; } }

/* ---------- WhatsApp flotante ---------- */
.wa-float {
  position: fixed; right: 18px; bottom: 18px; z-index: 120;
  width: 52px; height: 52px;
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .25));
  transition: transform .2s ease, filter .2s ease;
}
@media (min-width: 1200px) { .wa-float { right: 32px; bottom: 26px; width: 60px; height: 60px; } }
.wa-float svg { width: 100%; height: 100%; }
@media (hover: hover) { .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%; }


/* =====================================================================
   Texturas de las tarjetas de categorías de la portada (Masajes, Faciales, Corporales, Paquetes).
   Vienen de empresas.paxio.mx (tarjetas de "Modalidades"): degradados + SVG en data-URI.
   Única imagen: /assets/img/tex-adaptado-azul.webp (mosaico de rombos en azul).
   Paquetes (verde azulado) es nueva: las mismas ondas de "Continuo" en el teal de Paxio.
   ===================================================================== */
: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");
}

/* ---------- Masajes: hojas (el café de "Bienestar Eventual") ---------- */
.cat--masajes .cat__cab{
  background-color:#7C683F; /* promedio medido #83704A; se compensa el aclarado de la textura */
  background-image:var(--tex-hojas-claras),var(--tex-grano);
}
.cat--masajes .cat__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;
}

/* ---------- Faciales: ondas (el verde de "Bienestar Continuo") ---------- */
.cat--faciales .cat__cab{
  background-color:#6C7859; /* promedio medido #717C5F */
  background-image:var(--tex-ondas),var(--tex-grano);
  background-position:0 -60px,0 0;
}
.cat--faciales .cat__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;
}

/* ---------- Corporales: rombos (el azul de "Bienestar Adaptado") ---------- */
.cat--corporales .cat__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;
}
.cat--corporales .cat__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;
}

/* ---------- Paquetes: ondas en verde azulado (nueva) ---------- */
.cat--paquetes .cat__cab{
  background-color:#2F7F7B; /* el teal de Paxio (#1AAFA8) oscurecido para que el texto blanco contraste */
  background-image:var(--tex-ondas),var(--tex-grano);
  background-position:-120px -40px,0 0;
}
.cat--paquetes .cat__cuerpo{
  background-color:#D5E8E5;
  background-image:var(--tex-ondas-bandas),var(--tex-grano);
  background-position:-180px -60px,0 0;
}
