@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/poppins-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
html { scroll-behavior: smooth; }
    body { margin: 0; font-family: 'Poppins', sans-serif; background: #F7FBF9; color: #205072; -webkit-font-smoothing: antialiased; }
    a { color: #329D9C; text-decoration: none; }
    a:hover { color: #205072; }
    ::selection { background: #CFF4D2; }
    :focus-visible { outline: 2px solid #329D9C; outline-offset: 2px; }
    @keyframes usc-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
    div[style*="usc-marquee"]:hover { animation-play-state: paused !important; }
    :root { --color-1: #205072; --color-2: #329D9C; --color-3: #56C595; --color-4: #7BE495; }
    .gooey-nav-container { position: relative; }
    .gooey-nav-container nav { display: flex; position: relative; transform: translate3d(0, 0, 0.01px); }
    .gooey-nav-container nav ul { display: flex; gap: 6px; list-style: none; padding: 0; margin: 0; position: relative; z-index: 3; color: #205072; }
    .gooey-nav-container nav ul li { border-radius: 100vw; position: relative; cursor: pointer; transition: background-color .3s ease, color .3s ease, box-shadow .3s ease; box-shadow: 0 0 .5px 1.5px transparent; color: #205072; }
    .gooey-nav-container nav ul li a { display: inline-block; padding: 9px 16px; color: inherit; font-size: 15px; font-weight: 500; }
    .gooey-nav-container nav ul li a:hover { color: inherit; }
    .gooey-nav-container nav ul li:focus-within:has(:focus-visible) { box-shadow: 0 0 .5px 1.5px #329D9C; }
    .gooey-nav-container nav ul li::after { content: ''; position: absolute; inset: 0; border-radius: 100vw; background: #205072; opacity: 0; transform: scale(0); transition: all .3s ease; z-index: -1; }
    .gooey-nav-container nav ul li.active { color: #fff; }
    .gooey-nav-container nav ul li.active::after { opacity: 1; transform: scale(1); }
    .gooey-nav-container .effect { position: absolute; left: 0; top: 0; width: 0; height: 0; opacity: 1; pointer-events: none; display: grid; place-items: center; z-index: 1; }
    .gooey-nav-container .effect.text { color: #205072; transition: color .3s ease; font-size: 15px; font-weight: 500; }
    .gooey-nav-container .effect.text.active { color: #fff; }
    .gooey-nav-container .effect.filter { filter: none; mix-blend-mode: normal; }
    .gooey-nav-container .effect.filter::after { content: ''; position: absolute; inset: 0; background: #205072; transform: scale(0); opacity: 0; z-index: -1; border-radius: 100vw; }
    .gooey-nav-container .effect.active::after { animation: usc-pill .3s ease both; }
    @keyframes usc-pill { to { transform: scale(1); opacity: 1; } }
    .particle, .point { display: block; opacity: 0; width: 20px; height: 20px; border-radius: 100%; transform-origin: center; }
    .particle { --time: 5s; position: absolute; top: calc(50% - 8px); left: calc(50% - 8px); animation: usc-particle calc(var(--time)) ease 1 -350ms; }
    .point { background: var(--color); opacity: 1; animation: usc-point calc(var(--time)) ease 1 -350ms; }
    @keyframes usc-particle {
      0% { transform: rotate(0deg) translate(calc(var(--start-x)), calc(var(--start-y))); opacity: 1; animation-timing-function: cubic-bezier(.55,0,1,.45); }
      70% { transform: rotate(calc(var(--rotate) * .5)) translate(calc(var(--end-x) * 1.2), calc(var(--end-y) * 1.2)); opacity: 1; animation-timing-function: ease; }
      85% { transform: rotate(calc(var(--rotate) * .66)) translate(calc(var(--end-x)), calc(var(--end-y))); opacity: 1; }
      100% { transform: rotate(calc(var(--rotate) * 1.2)) translate(calc(var(--end-x) * .5), calc(var(--end-y) * .5)); opacity: 1; }
    }
    @keyframes usc-point {
      0% { transform: scale(0); opacity: 0; animation-timing-function: cubic-bezier(.55,0,1,.45); }
      25% { transform: scale(calc(var(--scale) * .25)); }
      38% { opacity: 1; }
      65% { transform: scale(var(--scale)); opacity: 1; animation-timing-function: ease; }
      85% { transform: scale(var(--scale)); opacity: 1; }
      100% { transform: scale(0); opacity: 0; }
    }
    [data-glow] { position: relative; }
    [data-glow]::before { content: ''; position: absolute; inset: -1px; border-radius: inherit; padding: 2px;
      background: radial-gradient(200px circle at var(--mx, 50%) var(--my, 50%), rgba(50,157,156,.9), rgba(123,228,149,.55) 45%, transparent 72%);
      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude;
      opacity: var(--gop, 0); transition: opacity .35s ease; pointer-events: none; }

/* --- estados hover (antes style-hover) --- */
.hv1:hover,.hv1:focus-visible{background:#2A6690;color:#fff}
.hv2:hover,.hv2:focus-visible{background:#9BEDAE;color:#16324A}
.hv3:hover,.hv3:focus-visible{background:rgba(255,255,255,.12);color:#fff}
.hv4:hover,.hv4:focus-visible{transform:scale(1.15);color:#205072}
.hv5:hover,.hv5:focus-visible{background:#E9F7EE;color:#205072}
.hv6:hover,.hv6:focus-visible{color:#7BE495}
.hv7:hover,.hv7:focus-visible{color:#329D9C}

/* --- palabra rotatoria --- */
.cascade span{will-change:transform}
.cascade.out span{transform:translateY(1.05em);opacity:0}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .cascade.out span{transform:none;opacity:1}
}
