/*
 * Rednodo, home latam.rednodo.com
 * Hero "Los detalles hacen la diferencia", el punto azul y las partículas que viajan al embudo (.rnh, .rn-dot y .rn-swarm).
 * Ver rednodo-home-handoff/HANDOFF.md.
 */
.rnh{
  --rnh-blue:#007CBF; --rnh-sky:#20A8F2; --rnh-ink:#1A1A1A; --rnh-bg:#FFFFFF;
  --rnh-offset:0px;   /* altura del header fijo del sitio (hoy 90px) */
  --rnh-below:120px;  /* alto de la franja de logos que sigue, para que entre en la primera pantalla */
  position:relative; background:var(--rnh-bg); color:var(--rnh-ink);
}
.rnh *,.rnh *::before,.rnh *::after{box-sizing:border-box}
/* El sitio oculta h1 y p de .main-content section hasta su reveal; el hero se ve desde el primer cuadro */
.rnh .rnh-eyebrow,.rnh .rnh-title,.rnh .rnh-sub{opacity:1;transform:none}
/* El botón del hero lleva a #business-units-list: que no quede debajo del header fijo */
html{scroll-padding-top:90px}
.rnh .rnh-inner{position:relative;display:flex;align-items:center;justify-content:center;
  min-height:560px;min-height:max(560px,calc(100vh - var(--rnh-offset) - var(--rnh-below)));min-height:max(560px,calc(100svh - var(--rnh-offset) - var(--rnh-below)));
  padding:48px clamp(24px,6vw,112px)}
.rnh .rnh-copy{position:relative;max-width:1300px;padding-bottom:6vh;text-align:center;will-change:transform,opacity}
.rnh .rnh-eyebrow{margin:0 0 18px;font-family:"Poppins Medium","Helvetica Neue",Arial,sans-serif;font-weight:500;font-size:clamp(16px,1.4vw,20px);line-height:1.3;letter-spacing:normal;color:var(--rnh-ink);text-transform:none}
.rnh .rnh-title{--rnh-lh:1.06;margin:0 auto;max-width:9.4em;font-family:"Poppins Medium","Helvetica Neue",Arial,sans-serif;font-weight:500;font-size:clamp(40px,5vw,88px);line-height:var(--rnh-lh);letter-spacing:-.02em;color:var(--rnh-ink);text-transform:none;text-wrap:balance}
.rnh .rnh-title span{font:inherit;letter-spacing:inherit;color:inherit}
/* El detalle: el punto de la i de "diferencia" es azul. La letra sigue siendo una i real (lectura y buscadores):
   se oculta su punto original y se dibuja otro. Las medidas salen del glifo de la i de Poppins 500 (centro del punto
   a .1325em del borde y a .697em de la línea base, diámetro .146em; el tallo llega a .551em). Si cambia el peso hay
   que recalcularlas; si cambia el interlineado alcanza con --rnh-lh. */
.rnh .rnh-word{white-space:nowrap}
.rnh .rnh-iwrap{position:relative;display:inline-block}
.rnh .rnh-i{display:inline-block;--rnh-cut:calc(.35em + var(--rnh-lh) * .5em - .5875em);-webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent var(--rnh-cut),#000 var(--rnh-cut));mask-image:linear-gradient(to bottom,transparent 0,transparent var(--rnh-cut),#000 var(--rnh-cut))}
.rnh .rnh-title .rnh-tittle{position:absolute;left:.1325em;top:calc(.35em + var(--rnh-lh) * .5em - .697em);width:.17em;height:.17em;margin:-.085em 0 0 -.085em;border-radius:50%;background:var(--rnh-blue)}
.rnh.is-ready .rnh-title .rnh-tittle{visibility:hidden}
.rnh .rnh-sub{margin:28px auto 0;max-width:30ch;font-family:"Open Sans Regular","Helvetica Neue",Arial,sans-serif;font-weight:400;font-size:clamp(18px,1.5vw,22px);line-height:1.45;color:var(--rnh-ink);text-transform:none}
.rnh .rnh-cta{display:inline-block;margin-top:36px;padding:16px 30px;border-radius:999px;background:var(--rnh-ink);color:#FFFFFF;font-family:"Poppins Medium","Helvetica Neue",Arial,sans-serif;font-weight:500;font-size:16px;line-height:1.2;text-decoration:none;text-transform:none;transition:background-color .2s ease}
.rnh .rnh-cta:hover{background:var(--rnh-blue)}
.rnh .rnh-cta:focus-visible{outline:2px solid var(--rnh-blue);outline-offset:4px}
@media (max-width:599px){
  .rnh .rnh-inner{min-height:0;padding:56px 24px 64px}
  .rnh .rnh-copy{padding-bottom:0}
  .rnh .rnh-title{font-size:clamp(32px,9.4vw,40px)}
  .rnh .rnh-sub{margin-top:22px}
  .rnh .rnh-cta{margin-top:28px;padding:14px 22px;font-size:15px;white-space:nowrap}
}
/* El punto azul que viaja: vive fuera de las secciones (posición fija) */
.rn-dot{position:fixed;left:0;top:0;width:0;height:0;z-index:40;pointer-events:none;will-change:transform,opacity}
.rn-dot,.rn-dot i,.rn-dot-trail,.rn-dot-burst{box-sizing:border-box}
.rn-dot i{position:absolute;left:0;top:0;border-radius:50%;width:var(--d,16px);height:var(--d,16px);margin:calc(var(--d,16px) / -2) 0 0 calc(var(--d,16px) / -2)}
.rn-dot .rn-dot-core{background:#007CBF;box-shadow:0 0 0 calc(var(--d,16px) * .32) rgba(0,124,191,var(--halo,0)),0 0 calc(var(--d,16px) * 1.4) rgba(32,168,242,var(--glow,0))}
.rn-dot .rn-dot-ring{z-index:1;border:1.5px solid #20A8F2;opacity:0}
.rn-dot.is-landing .rn-dot-core{animation:rn-drop 1.15s .5s both}
.rn-dot.is-resting .rn-dot-ring{animation:rn-ring-grow 2.4s 2s infinite cubic-bezier(.25,.6,.35,1),rn-ring-fade 2.4s 2s infinite linear}
.rn-dot.is-guiding .rn-dot-ring{animation:rn-ring-grow 2s infinite cubic-bezier(.25,.6,.35,1),rn-ring-fade 2s infinite linear}
.rn-dot-burstwrap{position:fixed;left:0;top:0;width:0;height:0;z-index:39;pointer-events:none}
.rn-dot-burst{position:absolute;left:0;top:0;width:var(--d,40px);height:var(--d,40px);margin:calc(var(--d,40px) / -2) 0 0 calc(var(--d,40px) / -2);border-radius:50%;border:2px solid #007CBF;opacity:0;pointer-events:none}
.rn-dot-burst.is-on{animation:rn-burst 1.1s cubic-bezier(.2,.7,.2,1) both}
@keyframes rn-burst{0%{transform:scale(.4);opacity:.9}100%{transform:scale(4.5);opacity:0}}
/* Partículas del fondo: flotan en el hero y, al scrollear, avanzan hasta su lugar en el anillo del embudo.
   La capa es fija y multiplica: sobre el blanco se ven celestes y sobre el texto negro desaparecen */
.rn-swarm{position:fixed;left:0;top:0;width:100%;height:100%;z-index:38;pointer-events:none;mix-blend-mode:multiply}
.rnh .rnh-field{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}
.rn-dot-trail{position:fixed;left:0;top:0;width:var(--d,8px);height:var(--d,8px);margin:calc(var(--d,8px) / -2) 0 0 calc(var(--d,8px) / -2);border-radius:50%;background:#20A8F2;opacity:0;z-index:39;pointer-events:none;will-change:transform,opacity}
@keyframes rn-drop{
  0%{transform:translateY(calc(var(--d,16px) * -6));opacity:0;animation-timing-function:cubic-bezier(.55,0,1,.45)}
  12%{opacity:1}
  55%{transform:translateY(0);animation-timing-function:cubic-bezier(0,.55,.45,1)}
  70%{transform:translateY(calc(var(--d,16px) * -.9));animation-timing-function:cubic-bezier(.55,0,1,.45)}
  84%{transform:translateY(0);animation-timing-function:cubic-bezier(0,.55,.45,1)}
  92%{transform:translateY(calc(var(--d,16px) * -.25));animation-timing-function:cubic-bezier(.55,0,1,.45)}
  100%{transform:translateY(0);opacity:1}
}
/* El anillo nace en el centro del punto y se abre hacia afuera con el mismo grosor de línea todo el tiempo */
@keyframes rn-ring-grow{0%{width:0;height:0;margin:0}100%{width:calc(var(--d,16px) * 3.4);height:calc(var(--d,16px) * 3.4);margin:calc(var(--d,16px) * -1.7) 0 0 calc(var(--d,16px) * -1.7)}}
@keyframes rn-ring-fade{0%{opacity:0}6%{opacity:1}100%{opacity:0}}
