:root {
  --negro: #1A1A1A;
  --negro-pie: #111111;
  --oro: #C89224;
  --oro-claro: #F6CE48;
  --oro-oscuro: #8A6114;
  --oro-hover: #B67718;
  --crema: #FDF6E3;
  --pardo: #776745;
  --blanco: #FFFFFF;
  --wa: #25D366;
  --wa-hover: #1EBE5B;
}

* { box-sizing: border-box; }

html, body { margin: 0; padding: 0; background: var(--negro); }

body {
  font-family: Montserrat, Helvetica, sans-serif;
  background: var(--blanco);
  color: var(--negro);
  overflow-x: clip;
}

a { color: var(--oro-oscuro); text-decoration: none; }
a:hover { color: var(--oro-hover); }
::selection { background: var(--negro); color: var(--oro-claro); }
a, button, summary { -webkit-tap-highlight-color: rgba(200, 146, 36, 0.25); }
button { font: inherit; color: inherit; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--oro); outline-offset: 2px; }
summary { list-style: none; cursor: pointer; }
summary::-webkit-details-marker { display: none; }

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}

.contenedor { max-width: 1160px; margin: 0 auto; padding-left: clamp(20px, 3vw, 32px); padding-right: clamp(20px, 3vw, 32px); }
.contenedor--medio { max-width: 1060px; }
.contenedor--angosto { max-width: 900px; }

.icono-wa { flex: 0 0 auto; }

.barra {
  position: sticky;
  top: 0;
  z-index: 60;
  background: var(--negro);
  border-bottom: 3px solid var(--oro);
}

.barra__inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.marca { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.marca__logo { height: 68px; width: auto; display: block; }
.marca__texto {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0.13em;
  color: var(--blanco);
  white-space: nowrap;
}

.nav-escritorio { margin-left: auto; display: flex; align-items: center; gap: 22px; }

.nav-link {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  font-size: clamp(14px, 1.5vw, 17px);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 0;
  white-space: nowrap;
  border-bottom: 2px solid transparent;
  color: var(--blanco);
}
.nav-link:hover { color: var(--oro-claro); }
.nav-link--activo { border-bottom-color: var(--oro); color: var(--oro-claro); }

.btn-wa {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--wa);
  color: var(--blanco);
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 15px;
  padding: 13px 18px;
}
.btn-wa:hover { background: var(--wa-hover); color: var(--blanco); }
.btn-wa--grande { font-size: 16px; padding: 17px 26px; gap: 11px; }

.menu-movil { display: none; margin-left: auto; }
.menu-movil__boton {
  width: 46px;
  height: 46px;
  padding: 0;
  background: none;
  border: 1px solid rgba(255, 255, 255, 0.32);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.menu-movil__barra {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--oro-claro);
  transition: transform 220ms ease, opacity 180ms ease;
}
.menu-movil[open] .menu-movil__barra:nth-child(1) { transform: translateY(7px) rotate(-45deg); }
.menu-movil[open] .menu-movil__barra:nth-child(2) { opacity: 0; }
.menu-movil[open] .menu-movil__barra:nth-child(3) { transform: translateY(-7px) rotate(45deg); }
.menu-movil__panel {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: var(--negro);
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  border-bottom: 3px solid var(--oro);
  padding: 8px 20px 20px;
  display: flex;
  flex-direction: column;
}
.menu-movil__enlace {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 20px;
  letter-spacing: 0.06em;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  color: var(--blanco);
}
.menu-movil__enlace--activo { color: var(--oro-claro); }
.menu-movil__wa { margin-top: 16px; justify-content: center; font-size: 17px; padding: 18px 20px; }

@media (max-width: 899px) {
  .nav-escritorio { display: none; }
  .menu-movil { display: block; }
  .marca__logo { height: 46px; }
}

.hero { position: relative; background: var(--oro); overflow: hidden; }
.hero::after {
  content: "";
  position: absolute;
  bottom: -190px;
  right: -12%;
  width: 66%;
  height: 240px;
  background: var(--oro-claro);
  transform: rotate(-15deg);
}
.hero__grid {
  position: relative;
  z-index: 1;
  max-width: 1160px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 62px) clamp(20px, 3vw, 32px) clamp(48px, 6vw, 74px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
  gap: 40px;
  align-items: center;
}
.hero__chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 26px; }
.hero__chip {
  font-family: Montserrat, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--oro-claro);
  background: var(--negro);
  padding: 8px 14px;
}
.hero__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(42px, 6.2vw, 86px);
  line-height: 1.14;
  color: var(--negro);
  margin: 0;
  max-width: 18ch;
  text-wrap: balance;
}
.hero__bajada {
  font-family: Montserrat, sans-serif;
  font-size: 17px;
  line-height: 1.7;
  color: var(--negro);
  margin: 24px 0 0;
  max-width: 46ch;
}
.hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 36px; }

.btn-negro {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  background: var(--negro);
  color: var(--oro-claro);
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 18px;
  padding: 21px 32px;
}
.btn-negro:hover { color: var(--blanco); }

.btn-oro {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  background: var(--oro);
  color: var(--negro);
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 18px 28px;
}
.btn-oro:hover { background: var(--oro-claro); color: var(--negro); }
.btn-oro--grande { font-size: 18px; padding: 21px 34px; gap: 13px; }

.panel-lateral {
  position: relative;
  background: var(--negro);
  border-top: 3px solid var(--oro);
  padding: clamp(28px, 4vw, 38px) clamp(22px, 3vw, 32px) clamp(26px, 3vw, 34px);
}
.panel-lateral::before {
  content: "";
  position: absolute;
  top: -3px;
  left: 0;
  width: 78px;
  height: 10px;
  background: var(--oro-claro);
}
.panel-lateral__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 27px;
  line-height: 1.24;
  color: var(--oro-claro);
  margin: 0 0 8px;
}
.panel-lateral__intro {
  font-family: Montserrat, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.74);
  margin: 0 0 22px;
}
.panel-lateral__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.panel-lateral__item {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: var(--blanco);
}
.panel-lateral__item::before {
  content: "";
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  background: var(--oro);
  margin-top: 7px;
}
.panel-lateral__pie {
  font-family: Montserrat, sans-serif;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.86);
  margin: 24px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.franja { background: var(--negro); border-bottom: 3px solid var(--oro); }
.franja__inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 20px clamp(20px, 3vw, 32px);
  display: grid;
  grid-template-columns: 1fr;
}
.franja__dato {
  grid-area: 1 / 1;
  display: none;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 28px;
  min-height: 2.9em;
}
.franja__dato--activo {
  display: flex;
  animation: franja-entrar 260ms ease;
}
@keyframes franja-entrar {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: none; }
}
.franja__numero {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(24px, 2.8vw, 36px);
  line-height: 1.25;
  color: var(--oro);
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.franja__texto {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: clamp(18px, 2vw, 26px);
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: var(--oro-claro);
  margin: 0;
}

.seccion { padding-top: clamp(52px, 8vw, 86px); }
.seccion--media { padding-top: clamp(48px, 7vw, 78px); }
.seccion--corta { padding-top: clamp(44px, 6vw, 62px); }

.titulo-seccion {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(30px, 3.6vw, 46px);
  line-height: 1.2;
  color: var(--negro);
  margin: 0 0 10px;
}
.subtitulo-seccion {
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: var(--pardo);
  margin: 0 0 44px;
  max-width: 50ch;
}

.grilla-casos { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 22px; }

.tarjeta-caso {
  position: relative;
  overflow: hidden;
  background: var(--crema);
  border-top: 3px solid var(--oro);
  padding: clamp(28px, 4vw, 38px) clamp(22px, 3vw, 34px) clamp(26px, 3vw, 34px);
}
.tarjeta-caso::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 78px;
  height: 10px;
  background: var(--oro);
}
.tarjeta-caso::after {
  content: "";
  position: absolute;
  top: -70px;
  right: -46px;
  width: 140px;
  height: 210px;
  transform: rotate(-15deg);
  background: rgba(200, 146, 36, 0.18);
  pointer-events: none;
}
.tarjeta-caso__kicker {
  position: relative;
  z-index: 1;
  font-family: Oswald, sans-serif;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--oro-oscuro);
  margin: 0 0 16px;
}
.tarjeta-caso__titulo {
  position: relative;
  z-index: 1;
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 30px;
  line-height: 1.2;
  color: var(--negro);
  margin: 0 0 16px;
}
.tarjeta-caso__texto {
  position: relative;
  z-index: 1;
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: var(--pardo);
  margin: 0 0 24px;
}

.enlace-mayus {
  position: relative;
  z-index: 1;
  display: inline-block;
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--oro-oscuro);
  border-bottom: 2px solid var(--oro);
  padding-bottom: 4px;
}
.enlace-mayus:hover { color: var(--oro-hover); }

.faqs { border-top: 2px solid var(--oro); }
.faq { border-bottom: 1px solid rgba(26, 26, 26, 0.14); transition: background 220ms ease; }
.faq[open] { background: var(--crema); }
.faq__pregunta {
  width: 100%;
  padding: 24px 0 24px 18px;
  display: flex;
  gap: 24px;
  align-items: flex-start;
  justify-content: space-between;
  text-align: left;
}
.faq__texto {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 21px;
  line-height: 1.28;
  transition: color 200ms ease;
  color: var(--negro);
}
.faq[open] .faq__texto { color: var(--oro-oscuro); }
.faq__signo {
  flex: 0 0 auto;
  font-family: Montserrat, sans-serif;
  font-weight: 400;
  font-size: 26px;
  line-height: 0.9;
  color: var(--oro);
  transition: transform 260ms cubic-bezier(0.4, 0, 0.2, 1);
}
.faq[open] .faq__signo { transform: rotate(45deg); }
.faq__respuesta {
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  color: var(--pardo);
  margin: 0;
  padding: 0 clamp(18px, 4vw, 52px) 26px 18px;
  max-width: 62ch;
}

.pasos { display: flex; flex-direction: column; gap: 18px; }
.paso {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 26px;
  padding: 26px clamp(20px, 3vw, 34px) 30px;
  border-top: 3px solid var(--oro);
  background: var(--crema);
}
.paso::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 78px;
  height: 10px;
  background: var(--oro);
}
.paso__numero {
  position: relative;
  flex: 0 0 auto;
  font-family: Oswald, sans-serif;
  font-weight: 700;
  font-size: clamp(64px, 9vw, 108px);
  line-height: 0.8;
  letter-spacing: -0.02em;
  color: var(--negro);
}
.paso__cuerpo { position: relative; flex: 1 1 320px; min-width: 240px; }
.paso__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: clamp(22px, 2.6vw, 30px);
  line-height: 1.22;
  margin: 0 0 8px;
  color: var(--negro);
}
.paso__texto {
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  margin: 0;
  max-width: 48ch;
  color: var(--pardo);
}
.paso--oscuro { background: var(--negro); }
.paso--oscuro::before { background: var(--oro-claro); }
.paso--oscuro .paso__numero { color: var(--oro); }
.paso--oscuro .paso__titulo { color: var(--blanco); }
.paso--oscuro .paso__texto { color: rgba(255, 255, 255, 0.82); }

.caja-docs { border: 1px solid rgba(26, 26, 26, 0.14); padding: clamp(28px, 4vw, 40px) clamp(22px, 3vw, 34px); }
.caja-docs__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 26px;
  line-height: 1.2;
  color: var(--negro);
  margin: 0 0 20px;
}
.caja-docs__lista {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px 32px;
}
.caja-docs__item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--negro);
}
.caja-docs__item::before {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  background: var(--oro);
  margin-top: 8px;
}
.caja-docs__nota {
  font-family: Montserrat, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  color: var(--pardo);
  margin: 24px 0 0;
}
.caja-docs .btn-oro { margin-top: 24px; }

.seccion-caso { background: var(--blanco); border-bottom: 1px solid rgba(26, 26, 26, 0.12); }
.seccion-caso--oscura { background: var(--negro); border-bottom: 0; }
.seccion-caso__grid {
  max-width: 1060px;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 78px) clamp(20px, 3vw, 32px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 48px;
}
.seccion-caso__kicker {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin: 0 0 18px;
  color: var(--oro-oscuro);
}
.seccion-caso--oscura .seccion-caso__kicker { color: var(--oro); }
.seccion-caso__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.18;
  margin: 0 0 20px;
  color: var(--negro);
}
.seccion-caso--oscura .seccion-caso__titulo { color: var(--blanco); }
.seccion-caso__gancho {
  font-family: Montserrat, sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.6;
  margin: 0 0 16px;
  max-width: 32ch;
  color: var(--negro);
}
.seccion-caso--oscura .seccion-caso__gancho { color: var(--oro-claro); }
.seccion-caso__texto {
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  margin: 0;
  max-width: 44ch;
  color: var(--pardo);
}
.seccion-caso--oscura .seccion-caso__texto { color: rgba(255, 255, 255, 0.82); }
.seccion-caso .btn-oro { margin-top: 30px; font-size: 15px; padding: 16px 26px; gap: 10px; }
.seccion-caso__lista-titulo {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin: 0 0 20px;
  color: var(--pardo);
}
.seccion-caso--oscura .seccion-caso__lista-titulo { color: rgba(255, 255, 255, 0.7); }
.seccion-caso__ayuda {
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 18px;
  color: var(--pardo);
}
.seccion-caso--oscura .seccion-caso__ayuda { color: rgba(255, 255, 255, 0.7); }

.items-caso { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.item-caso {
  border: 1px solid rgba(26, 26, 26, 0.16);
  background: var(--blanco);
  transition: border-color 160ms ease, background 160ms ease;
}
.item-caso:hover { background: var(--crema); }
.item-caso[open] { border-color: var(--oro); background: var(--crema); }
.seccion-caso--oscura .item-caso {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.04);
}
.seccion-caso--oscura .item-caso:hover { background: rgba(200, 146, 36, 0.12); }
.seccion-caso--oscura .item-caso[open] { border-color: var(--oro); background: rgba(200, 146, 36, 0.14); }
.item-caso__cabecera {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 62px;
  padding: 14px 18px;
  text-align: left;
}
.item-caso__texto {
  font-family: Montserrat, sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.4;
  color: var(--negro);
}
.seccion-caso--oscura .item-caso__texto { color: var(--blanco); }
.item-caso__signo {
  flex: 0 0 auto;
  font-family: Montserrat, sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 0.9;
  transition: transform 240ms cubic-bezier(0.4, 0, 0.2, 1);
  color: var(--oro-oscuro);
}
.seccion-caso--oscura .item-caso__signo { color: var(--oro); }
.item-caso[open] .item-caso__signo { transform: rotate(45deg); }
.item-caso__panel { padding: 0 18px 18px; }
.item-caso__descripcion {
  font-family: Montserrat, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 18px;
  max-width: 46ch;
  color: var(--pardo);
}
.seccion-caso--oscura .item-caso__descripcion { color: rgba(255, 255, 255, 0.82); }
.item-caso__panel .btn-wa { min-height: 52px; padding: 15px 22px; }

.caja-mas {
  margin-top: 40px;
  background: var(--crema);
  border-top: 3px solid var(--oro);
  padding: 32px clamp(22px, 3vw, 34px) 34px;
}
.caja-mas__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 24px;
  line-height: 1.2;
  color: var(--negro);
  margin: 0 0 10px;
}
.caja-mas__texto {
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: var(--pardo);
  margin: 0 0 22px;
  max-width: 52ch;
}

.cierre {
  margin-top: 86px;
  background: var(--negro);
  position: relative;
  overflow: hidden;
}
.cierre::before {
  content: "";
  position: absolute;
  top: -200px;
  left: -12%;
  width: 70%;
  height: 250px;
  background: var(--oro);
  transform: rotate(-15deg);
  opacity: 0.34;
}
.cierre__inner {
  position: relative;
  max-width: 1060px;
  margin: 0 auto;
  padding: clamp(52px, 7vw, 76px) clamp(20px, 3vw, 32px) clamp(56px, 7vw, 84px);
}
.cierre__titulo {
  font-family: Oswald, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: clamp(32px, 4.4vw, 60px);
  line-height: 1.18;
  color: var(--blanco);
  margin: 0;
  max-width: 22ch;
}
.cierre .btn-oro--grande { margin-top: 36px; }
.cierre__nota {
  font-family: Montserrat, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.86);
  margin: 22px 0 0;
}

.pie { background: var(--negro-pie); border-top: 3px solid var(--oro); }
.pie__inner {
  max-width: 1060px;
  margin: 0 auto;
  padding: 36px clamp(20px, 3vw, 32px) 46px;
  display: flex;
  flex-wrap: wrap;
  gap: 26px 40px;
  align-items: center;
  justify-content: space-between;
}
.pie__marca { display: flex; align-items: center; gap: 14px; }
.pie__logo { height: 52px; width: auto; display: block; }
.pie__marca-texto {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.14em;
  color: rgba(255, 255, 255, 0.82);
}
.pie__nav { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.pie__enlace {
  font-family: Oswald, sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.82);
}
.pie__enlace:hover { color: var(--oro-claro); }
.pie__nota {
  font-family: Montserrat, sans-serif;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.68);
  margin: 0;
  max-width: 40ch;
}

@keyframes fab-pulso {
  0%, 100% { box-shadow: 0 4px 16px rgba(26, 26, 26, 0.3), 0 0 0 0 rgba(37, 211, 102, 0.5); }
  70% { box-shadow: 0 4px 16px rgba(26, 26, 26, 0.3), 0 0 0 14px rgba(37, 211, 102, 0); }
}
.fab-wa {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 90;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: var(--wa);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--blanco);
  animation: fab-pulso 2.4s ease-out infinite;
}
.fab-wa:hover { background: var(--wa-hover); color: var(--blanco); }
