/* Campus Latina — tipografías de la marca (verde petróleo con ámbar).
   "CL Titulos": Schibsted Grotesk negrita para el texto y Newsreader cursiva para la palabra destacada.
   "CL Etiquetas": Schibsted Grotesk semibold para etiquetas en mayúsculas. Licencias en /fonts. */
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Schibsted Grotesk";src:url(/fonts/schibsted-grotesk-700.woff2) format("woff2");font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/fonts/newsreader-italic-400.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"CL Titulos";src:url(/fonts/schibsted-grotesk-700.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"CL Titulos";src:url(/fonts/newsreader-italic-400.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"CL Etiquetas";src:url(/fonts/schibsted-grotesk-600.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

/* Movimiento de la app: entradas suaves y escalonadas (--i = orden del elemento).
   Con movimiento reducido, index.html anula las animaciones y todo aparece en su estado final. */
@keyframes cl-sube{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes cl-aparece{from{opacity:0}to{opacity:1}}
@keyframes cl-crece{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes cl-traza{to{stroke-dashoffset:0}}
@keyframes cl-lado{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
.cl-sube{animation:cl-sube .75s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 70ms)}
.cl-aparece{animation:cl-aparece .8s ease both;animation-delay:calc(var(--i,0) * 70ms)}
.cl-lado{animation:cl-lado .55s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 55ms)}
.cl-crece{transform-origin:left center;animation:cl-crece 1s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 70ms)}
.cl-traza{stroke-dasharray:var(--largo);stroke-dashoffset:var(--largo);animation:cl-traza 1.4s cubic-bezier(.4,0,.2,1) forwards;animation-delay:var(--retraso,0s)}
@media (prefers-reduced-motion: reduce){.cl-traza{stroke-dashoffset:0}}
/* Resaltador de la palabra destacada (manual: ámbar claro sobre fondos claros, ámbar sobre oscuros). */
.cl-hi{background:linear-gradient(transparent 60%,#FFCF8A 60%,#FFCF8A 92%,transparent 92%);padding:0 .08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.cl-hi-oscuro{background:linear-gradient(transparent 64%,rgba(240,140,26,.8) 64%,rgba(240,140,26,.8) 90%,transparent 90%);padding:0 .08em}
.cl-fila{transition:background .2s ease}
.cl-fila:hover{background:#F3F8F8}
.cl-oscuro .cl-fila:hover{background:rgba(255,255,255,.04)}
.cl-link{color:inherit;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .3s ease}
.cl-link:hover{background-size:0 1px;background-position:100% 100%}
.cl-sin-barra{scrollbar-width:none}
.cl-sin-barra::-webkit-scrollbar{display:none}
