/* Logo principal de Ligas Central */

/* Marca del encabezado de la portada */
html body .lc-home .lc-home-brand-icon {
    display: inline-block !important;
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    flex: 0 0 60px !important;

    background: url("/central/imagenes/logo-central.png")
        center center / contain no-repeat !important;

    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Ocultar el balón anterior */
html body .lc-home .lc-home-brand-icon svg {
    display: none !important;
}

/* Alinear escudo y nombre */
html body .lc-home .lc-home-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

/* Logo del pie de página */
html body .lc-home .lc-home-footer-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

html body .lc-home .lc-home-footer-brand::before {
    content: "";
    display: block;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;

    background: url("/central/imagenes/logo-central.png")
        center center / contain no-repeat;
}

/* Tamaño para teléfonos */
@media (max-width: 600px) {
    html body .lc-home .lc-home-brand-icon {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        flex-basis: 48px !important;
    }
}
/* Logo principal del encabezado de Ligas Central */

.lc-home-brand > .lc-home-main-logo {
    display: block;
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    object-fit: contain;
}

@media (max-width: 600px) {
    .lc-home-brand > .lc-home-main-logo {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }
}
/* ========= SUAVIZAR LA PORTADA: menos cuadrada ========= */

/* Barra superior */
.lc-home-header,
.lc-home-nav-inner,
.c-home-nav-inner {
    border-radius: 0 0 22px 22px;
}

/* Hero principal */
.lc-home-hero,
.lc-home-hero-card,
.lc-home-banner,
.lc-home-top {
    border-radius: 30px !important;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .20);
}

/* Bloque "Encuentra tu liga" */
.lc-home-directory,
.lc-home-section,
.lc-home-search-panel {
    border-radius: 28px !important;
    overflow: hidden;
    box-shadow: 0 14px 36px rgba(0, 0, 0, .16);
}

/* Tarjetas de ligas */
.lc-home-card,
.lc-league-card,
.lc-card {
    border-radius: 24px !important;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .14);
}

/* Parte superior de las tarjetas */
.lc-home-card-header,
.lc-league-card-header,
.lc-card-header {
    border-radius: 24px 24px 0 0 !important;
}

/* Imagen o logo dentro de tarjetas */
.lc-home-card-logo,
.lc-league-card-logo,
.lc-card-logo,
.lc-home-card img {
    border-radius: 18px !important;
}

/* Cajas pequeñas informativas */
.lc-home-feature,
.lc-home-info,
.lc-home-mini-card {
    border-radius: 22px !important;
}

/* Pie de página */
.lc-home-footer,
.lc-footer {
    border-radius: 24px 24px 0 0 !important;
}

/* Botones */
.lc-home-btn,
.lc-home-cta,
.lc-home-nav a,
button,
a.button {
    border-radius: 999px !important;
    padding-left: 18px;
    padding-right: 18px;
}

/* Botón principal */
.lc-home-btn-primary,
.lc-home-hero a,
.lc-home-cta-primary {
    border-radius: 999px !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
}

/* Input de búsqueda */
.lc-home-search input,
.lc-home-search-box input,
input[type="search"],
input[type="text"] {
    border-radius: 18px !important;
}

/* Selectores */
select,
.lc-home-sort,
.lc-home-filter {
    border-radius: 16px !important;
}

/* Contenedores blancos/translúcidos */
.lc-home-directory,
.lc-home-card,
.lc-home-feature,
.lc-home-footer {
    border: 1px solid rgba(255, 255, 255, .32);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
/* Logo principal de Santa Catarina Pinula */

/* Contenedor redondo del logo */
html body .lc-home .lc-home-brand-icon,
html body .lc-home .lc-home-brand .lc-home-main-logo {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    flex: 0 0 60px !important;

    border-radius: 50% !important;
    overflow: hidden !important;

    background-color: rgba(255, 255, 255, .92) !important;
    border: 2px solid rgba(255, 255, 255, .75) !important;

    box-shadow: 0 4px 14px rgba(0, 15, 65, .15) !important;
}

/* Si el logo es una imagen */
html body .lc-home .lc-home-brand .lc-home-main-logo {
    object-fit: contain !important;
    padding: 5px !important;
}

/* Si el logo está colocado como fondo */
html body .lc-home .lc-home-brand-icon {
    background-image: url("/central/imagenes/logo-central.png") !important;
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
}

/* Tamaño para teléfono */
@media (max-width: 600px) {
    html body .lc-home .lc-home-brand-icon,
    html body .lc-home .lc-home-brand .lc-home-main-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        flex-basis: 48px !important;
    }
}
/* Logo principal circular de Santa Catarina Pinula */

html body .lc-home .lc-home-brand img.lc-home-main-logo {
    display: block !important;
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    flex: 0 0 60px !important;

    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;

    object-fit: cover !important;
    object-position: center !important;

    /* Recorta físicamente las esquinas del PNG */
    clip-path: circle(50% at 50%) !important;
    -webkit-clip-path: circle(50% at 50%) !important;

    background: transparent !important;
    box-shadow: none !important;
}

@media (max-width: 600px) {
    html body .lc-home .lc-home-brand img.lc-home-main-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
        flex-basis: 48px !important;
    }
}
/* Logo principal circular de Ligas Central */

img.lc-home-main-logo {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    flex: 0 0 60px !important;

    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50%) !important;

    object-fit: cover !important;
    object-position: center !important;
    background: transparent !important;
}

@media (max-width: 600px) {
    img.lc-home-main-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        flex-basis: 48px !important;
    }
}
/* =========================================================
   LOGO OFICIAL - LIGA CRISTO REY
   ========================================================= */

html body .lc-home .lc-home-brand img.lc-home-main-logo,
html body img.lc-home-main-logo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;

    object-fit: contain !important;
    object-position: center !important;

    border-radius: 12px !important;
    background: transparent !important;

    margin: 0 12px 0 0 !important;
    padding: 0 !important;

    position: relative !important;
    inset: auto !important;

    transform: none !important;
    clip: auto !important;

    z-index: 20 !important;
}

html body .lc-home .lc-home-brand {
    display: flex !important;
    align-items: center !important;
}

@media (max-width: 760px) {
    html body .lc-home .lc-home-brand img.lc-home-main-logo,
    html body img.lc-home-main-logo {
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
        max-width: 50px !important;
        margin-right: 8px !important;
    }
}


/* =========================================================
   LOGO OFICIAL CRISTO REY - CABECERA
   ========================================================= */

.logo-oficial-cristo-rey {
    display: block !important;
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    flex: 0 0 68px !important;

    object-fit: contain !important;
    object-position: center !important;

    opacity: 1 !important;
    visibility: visible !important;

    position: relative !important;
    z-index: 999 !important;

    margin: 0 12px 0 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 10px !important;

    transform: none !important;
    clip: auto !important;
    filter: none !important;
}

.lc-home-brand {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

@media (max-width: 760px) {
    .logo-oficial-cristo-rey {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        flex-basis: 52px !important;
    }
}


/* =========================================================
   IDENTIDAD OFICIAL LIGA CRISTO REY V2
   ========================================================= */

html body .cr-brand-oficial {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    min-height: 72px !important;
    text-decoration: none !important;
}

html body .cr-brand-oficial .cr-logo-box {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;

    margin: 0 !important;
    padding: 2px !important;

    position: relative !important;
    z-index: 1000 !important;

    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body .cr-brand-oficial .cr-logo-box img {
    display: block !important;

    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;

    object-fit: contain !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;

    position: relative !important;
    z-index: 1001 !important;

    transform: none !important;
    clip: auto !important;
    filter: none !important;
}

html body .cr-brand-oficial .cr-brand-text {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    line-height: 1.05 !important;
}

html body .cr-brand-oficial .cr-brand-name {
    display: block !important;
    font-size: 18px !important;
    font-weight: 850 !important;
    color: #101b4b !important;
}

html body .cr-brand-oficial .cr-brand-text small {
    display: block !important;
    margin-top: 6px !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.2px !important;
    color: #173b70 !important;
}

@media (max-width: 600px) {

    html body .cr-brand-oficial {
        gap: 8px !important;
    }

    html body .cr-brand-oficial .cr-logo-box {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
    }

    html body .cr-brand-oficial .cr-logo-box img {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        max-width: 46px !important;
        min-height: 46px !important;
        max-height: 46px !important;
    }

    html body .cr-brand-oficial .cr-brand-name {
        font-size: 15px !important;
    }

    html body .cr-brand-oficial .cr-brand-text small {
        font-size: 7px !important;
        letter-spacing: .7px !important;
    }
}

/* =========================================================
   LOGO OFICIAL CRISTO REY - CABECERA
   ========================================================= */

.logo-oficial-cristo-rey {
    display: block !important;
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    flex: 0 0 68px !important;

    object-fit: contain !important;
    object-position: center !important;

    opacity: 1 !important;
    visibility: visible !important;

    position: relative !important;
    z-index: 999 !important;

    margin: 0 12px 0 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 10px !important;

    transform: none !important;
    clip: auto !important;
    filter: none !important;
}

.lc-home-brand {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

@media (max-width: 760px) {
    .logo-oficial-cristo-rey {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        flex-basis: 52px !important;
    }
}


/* =========================================================
   TOPBAR OFICIAL LIGA CRISTO REY
   ========================================================= */

html body .topbar .cr-topbar-brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}

html body .topbar img.cr-topbar-logo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;

    object-fit: contain !important;

    margin: 0 !important;
    padding: 0 !important;

    position: relative !important;
    z-index: 100 !important;

    transform: none !important;
    filter: none !important;
    clip: auto !important;
}

html body .topbar .cr-topbar-text {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    line-height: 1.05 !important;
}

html body .topbar .cr-topbar-text strong {
    display: block !important;
    color: #101b4b !important;
    font-size: 17px !important;
    font-weight: 900 !important;
}

html body .topbar .cr-topbar-text small {
    display: block !important;
    margin-top: 5px !important;
    color: #173b70 !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    letter-spacing: 1.1px !important;
}

@media (max-width: 600px) {

    html body .topbar img.cr-topbar-logo {
        width: 45px !important;
        height: 45px !important;
        min-width: 45px !important;
        max-width: 45px !important;
    }

    html body .topbar .cr-topbar-text strong {
        font-size: 14px !important;
    }

    html body .topbar .cr-topbar-text small {
        font-size: 6px !important;
        letter-spacing: .5px !important;
    }
}

/* =========================================================
   ESCUDO GRANDE - PRESENTACION LIGA CRISTO REY
   ========================================================= */

html body .cr-liga-hero {
    border: 1px solid rgba(255, 216, 63, .35) !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow:
        0 18px 45px rgba(0, 20, 60, .25),
        inset 0 1px 0 rgba(255,255,255,.10) !important;
}

html body .cr-liga-hero-inner {
    display: flex !important;
    align-items: center !important;
    gap: 32px !important;
    width: 100% !important;
}

html body .cr-liga-escudo {
    width: 190px !important;
    min-width: 190px !important;
    height: 190px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

html body .cr-liga-escudo img {
    display: block !important;
    width: 185px !important;
    height: 185px !important;

    object-fit: contain !important;

    filter: drop-shadow(0 10px 14px rgba(0,0,0,.28)) !important;
}

html body .cr-liga-info {
    flex: 1 !important;
    min-width: 0 !important;
}

html body .cr-liga-info h1 {
    margin-top: 8px !important;
    margin-bottom: 18px !important;
}

@media (max-width: 760px) {

    html body .cr-liga-hero-inner {
        gap: 18px !important;
    }

    html body .cr-liga-escudo {
        width: 105px !important;
        min-width: 105px !important;
        height: 105px !important;
    }

    html body .cr-liga-escudo img {
        width: 100px !important;
        height: 100px !important;
    }
}

@media (max-width: 520px) {

    html body .cr-liga-hero-inner {
        flex-direction: column !important;
        text-align: center !important;
    }

    html body .cr-liga-escudo {
        width: 125px !important;
        height: 125px !important;
    }

    html body .cr-liga-escudo img {
        width: 120px !important;
        height: 120px !important;
    }
}

/* =========================================================
   HERO OFICIAL LIGA CRISTO REY V3
   ========================================================= */

html body .cr-liga-hero {
    position: relative !important;
    overflow: hidden !important;

    border: 1px solid rgba(255, 215, 45, .85) !important;
    border-radius: 24px !important;

    background:
        linear-gradient(
            105deg,
            rgba(3, 24, 58, .94) 0%,
            rgba(7, 43, 91, .92) 55%,
            rgba(4, 29, 67, .88) 100%
        ) !important;

    box-shadow:
        0 20px 55px rgba(0, 15, 45, .30),
        0 0 22px rgba(255, 211, 40, .10),
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* línea dorada superior */
html body .cr-liga-hero::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 8% !important;
    right: 8% !important;
    height: 1px !important;

    background: linear-gradient(
        90deg,
        transparent,
        #ffd52b,
        transparent
    ) !important;

    box-shadow: 0 0 15px rgba(255,213,43,.75) !important;
}

/* contenido */
html body .cr-liga-hero-inner {
    position: relative !important;
    z-index: 2 !important;

    display: flex !important;
    align-items: center !important;

    gap: 42px !important;

    width: 100% !important;
    min-height: 245px !important;

    padding: 22px 30px !important;
}

/* área del escudo */
html body .cr-liga-escudo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 225px !important;
    min-width: 225px !important;
    height: 225px !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: 0 !important;
}

/* escudo */
html body .cr-liga-escudo img {
    display: block !important;

    width: 220px !important;
    height: 220px !important;

    max-width: none !important;

    object-fit: contain !important;
    object-position: center !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;

    filter:
        drop-shadow(0 10px 12px rgba(0,0,0,.32))
        drop-shadow(0 0 8px rgba(255,215,50,.12)) !important;
}

/* información */
html body .cr-liga-info {
    flex: 1 !important;
    min-width: 0 !important;
}

html body .cr-liga-info .eyebrow {
    margin-bottom: 10px !important;

    color: #ffd52b !important;

    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
}

html body .cr-liga-info h1 {
    margin: 0 0 18px !important;

    color: #fff !important;

    font-size: clamp(38px, 4vw, 58px) !important;
    line-height: .98 !important;
    letter-spacing: -1.5px !important;

    text-shadow: 0 4px 16px rgba(0,0,0,.25) !important;
}

html body .cr-liga-info > p:last-child {
    max-width: 720px !important;
    margin: 0 !important;

    color: rgba(255,255,255,.92) !important;

    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* TABLET */
@media (max-width: 900px) {

    html body .cr-liga-hero-inner {
        gap: 25px !important;
        min-height: 205px !important;
        padding: 20px !important;
    }

    html body .cr-liga-escudo {
        width: 170px !important;
        min-width: 170px !important;
        height: 170px !important;
    }

    html body .cr-liga-escudo img {
        width: 165px !important;
        height: 165px !important;
    }
}

/* CELULAR */
@media (max-width: 600px) {

    html body .cr-liga-hero {
        border-radius: 18px !important;
    }

    html body .cr-liga-hero-inner {
        flex-direction: column !important;
        text-align: center !important;

        gap: 10px !important;

        padding: 24px 18px 28px !important;
    }

    html body .cr-liga-escudo {
        width: 145px !important;
        min-width: 145px !important;
        height: 145px !important;
    }

    html body .cr-liga-escudo img {
        width: 140px !important;
        height: 140px !important;
    }

    html body .cr-liga-info h1 {
        font-size: 34px !important;
    }

    html body .cr-liga-info .eyebrow {
        font-size: 9px !important;
        letter-spacing: 1.3px !important;
    }

    html body .cr-liga-info > p:last-child {
        font-size: 13px !important;
    }
}


/* =========================================================
   HERO OFICIAL LIGA CRISTO REY V3
   ========================================================= */

html body .cr-liga-hero {
    position: relative !important;
    overflow: hidden !important;

    border: 1px solid rgba(255, 215, 45, .85) !important;
    border-radius: 24px !important;

    background:
        linear-gradient(
            105deg,
            rgba(3, 24, 58, .94) 0%,
            rgba(7, 43, 91, .92) 55%,
            rgba(4, 29, 67, .88) 100%
        ) !important;

    box-shadow:
        0 20px 55px rgba(0, 15, 45, .30),
        0 0 22px rgba(255, 211, 40, .10),
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* línea dorada superior */
html body .cr-liga-hero::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 8% !important;
    right: 8% !important;
    height: 1px !important;

    background: linear-gradient(
        90deg,
        transparent,
        #ffd52b,
        transparent
    ) !important;

    box-shadow: 0 0 15px rgba(255,213,43,.75) !important;
}

/* contenido */
html body .cr-liga-hero-inner {
    position: relative !important;
    z-index: 2 !important;

    display: flex !important;
    align-items: center !important;

    gap: 42px !important;

    width: 100% !important;
    min-height: 245px !important;

    padding: 22px 30px !important;
}

/* área del escudo */
html body .cr-liga-escudo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 225px !important;
    min-width: 225px !important;
    height: 225px !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: 0 !important;
}

/* escudo */
html body .cr-liga-escudo img {
    display: block !important;

    width: 220px !important;
    height: 220px !important;

    max-width: none !important;

    object-fit: contain !important;
    object-position: center !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;

    filter:
        drop-shadow(0 10px 12px rgba(0,0,0,.32))
        drop-shadow(0 0 8px rgba(255,215,50,.12)) !important;
}

/* información */
html body .cr-liga-info {
    flex: 1 !important;
    min-width: 0 !important;
}

html body .cr-liga-info .eyebrow {
    margin-bottom: 10px !important;

    color: #ffd52b !important;

    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
}

html body .cr-liga-info h1 {
    margin: 0 0 18px !important;

    color: #fff !important;

    font-size: clamp(38px, 4vw, 58px) !important;
    line-height: .98 !important;
    letter-spacing: -1.5px !important;

    text-shadow: 0 4px 16px rgba(0,0,0,.25) !important;
}

html body .cr-liga-info > p:last-child {
    max-width: 720px !important;
    margin: 0 !important;

    color: rgba(255,255,255,.92) !important;

    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* TABLET */
@media (max-width: 900px) {

    html body .cr-liga-hero-inner {
        gap: 25px !important;
        min-height: 205px !important;
        padding: 20px !important;
    }

    html body .cr-liga-escudo {
        width: 170px !important;
        min-width: 170px !important;
        height: 170px !important;
    }

    html body .cr-liga-escudo img {
        width: 165px !important;
        height: 165px !important;
    }
}

/* CELULAR */
@media (max-width: 600px) {

    html body .cr-liga-hero {
        border-radius: 18px !important;
    }

    html body .cr-liga-hero-inner {
        flex-direction: column !important;
        text-align: center !important;

        gap: 10px !important;

        padding: 24px 18px 28px !important;
    }

    html body .cr-liga-escudo {
        width: 145px !important;
        min-width: 145px !important;
        height: 145px !important;
    }

    html body .cr-liga-escudo img {
        width: 140px !important;
        height: 140px !important;
    }

    html body .cr-liga-info h1 {
        font-size: 34px !important;
    }

    html body .cr-liga-info .eyebrow {
        font-size: 9px !important;
        letter-spacing: 1.3px !important;
    }

    html body .cr-liga-info > p:last-child {
        font-size: 13px !important;
    }
}



/* ==========================================================
   CAMINO AL TITULO · LIGA CRISTO REY
   ========================================================== */

.ct-wrap{
  margin-top:24px;
  padding:30px;
  border:1px solid rgba(255,213,43,.45);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,213,43,.12),transparent 28%),
    linear-gradient(135deg,#061a3a,#092c5e 55%,#061b3d);
  box-shadow:0 24px 60px rgba(0,16,45,.22);
  overflow:hidden;
}

.ct-cabecera{
  text-align:center;
  color:white;
  margin-bottom:34px;
}

.ct-copa{
  font-size:46px;
  line-height:1;
  margin-bottom:10px;
}

.ct-cabecera p{
  margin:0 0 7px;
  color:#ffd52b;
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
}

.ct-cabecera h2{
  margin:0;
  color:white;
  font-size:clamp(30px,4vw,50px);
  line-height:1;
  letter-spacing:-1px;
}

.ct-cabecera strong{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,.78);
  font-size:13px;
  letter-spacing:1px;
}

.ct-bracket{
  display:grid;
  grid-template-columns:
    minmax(220px,1.25fr)
    minmax(220px,1fr)
    minmax(220px,1fr)
    minmax(190px,.85fr);
  gap:28px;
  align-items:stretch;
}

.ct-ronda{
  min-width:0;
}

.ct-ronda header{
  text-align:center;
  margin-bottom:18px;
}

.ct-ronda header span{
  color:#ffd52b;
  font-size:9px;
  font-weight:900;
  letter-spacing:2px;
}

.ct-ronda header h3{
  margin:4px 0 0;
  color:white;
  font-size:16px;
}

.ct-ronda-contenido{
  height:calc(100% - 55px);
  display:flex;
  flex-direction:column;
  justify-content:space-around;
  gap:18px;
}

.ct-llave{
  position:relative;
  padding:12px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:16px;
  background:rgba(255,255,255,.075);
  box-shadow:
    0 10px 25px rgba(0,0,0,.15),
    inset 0 1px rgba(255,255,255,.08);
  backdrop-filter:blur(8px);
}

.ct-llave-titulo{
  margin-bottom:9px;
  color:#ffd52b;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.3px;
}

.ct-equipo{
  min-height:42px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:5px 7px;
  border-radius:10px;
  color:white;
  font-size:12px;
  font-weight:800;
}

.ct-equipo img,
.ct-logo-vacio{
  width:32px;
  height:32px;
  flex:0 0 32px;
  object-fit:contain;
}

.ct-logo-vacio{
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.15);
  border-radius:50%;
  background:rgba(255,255,255,.07);
  font-size:14px;
  opacity:.7;
}

.ct-vs{
  margin:3px 0;
  text-align:center;
  color:rgba(255,255,255,.45);
  font-size:9px;
  font-weight:900;
  letter-spacing:2px;
}

.ct-marcador{
  margin:5px 0;
  text-align:center;
  color:#ffd52b;
  font-size:20px;
  font-weight:1000;
}

.ct-marcador span{
  padding:0 8px;
  color:rgba(255,255,255,.5);
}

.ct-fecha{
  margin-top:7px;
  padding-top:7px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.6);
  text-align:center;
  font-size:9px;
}

.ct-resuelta{
  border-color:rgba(255,213,43,.48);
}

.ct-final .ct-llave{
  border-color:rgba(255,213,43,.6);
  box-shadow:
    0 15px 40px rgba(0,0,0,.22),
    0 0 24px rgba(255,213,43,.08);
}

.ct-corona{
  min-height:210px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:20px 12px;
  text-align:center;
  border:1px solid rgba(255,213,43,.65);
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,213,43,.22),transparent 45%),
    rgba(255,255,255,.07);
  box-shadow:0 0 35px rgba(255,213,43,.1);
}

.ct-corona-icon{
  margin-bottom:10px;
  font-size:48px;
}

.ct-corona img{
  width:85px;
  height:85px;
  margin-bottom:12px;
  object-fit:contain;
}

.ct-corona strong{
  color:white;
  font-size:18px;
}

.ct-corona span{
  margin-top:6px;
  color:#ffd52b;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.6px;
}

.ct-loading{
  padding:50px 20px;
  text-align:center;
  color:#667085;
}

@media(max-width:1000px){

  .ct-bracket{
    grid-template-columns:1fr 1fr;
  }

}

@media(max-width:650px){

  .ct-wrap{
    padding:20px 14px;
    border-radius:20px;
  }

  .ct-bracket{
    display:block;
  }

  .ct-ronda{
    margin-bottom:35px;
  }

  .ct-ronda-contenido{
    height:auto;
  }

  .ct-llave{
    margin-bottom:14px;
  }

  .ct-cabecera h2{
    font-size:32px;
  }

  .ct-corona{
    min-height:180px;
  }

}


/* ==========================================================
   CAMINO AL TITULO V2
   ========================================================== */

.ct2{
  margin-top:22px;
  padding:34px 26px 45px;
  border-radius:24px;
  border:2px solid #ffd400;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,115,210,.22),transparent 35%),
    linear-gradient(180deg,#0c468b 0%,#07366f 45%,#052b5d 100%);
  box-shadow:0 20px 50px rgba(0,0,0,.22);
  color:#fff;
  overflow:auto;
}

.ct2-title{
  text-align:center;
  margin-bottom:22px;
}

.ct2-title>span{
  color:#ffd400;
  font-size:10px;
  font-weight:900;
  letter-spacing:2.5px;
}

.ct2-title h2{
  margin:5px 0;
  color:#fff;
  font-size:clamp(30px,4vw,48px);
  line-height:1;
}

.ct2-title p{
  margin:8px 0 0;
  color:rgba(255,255,255,.78);
  font-weight:800;
}

.ct2-progress{
  max-width:720px;
  margin:24px auto 15px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ct2-progress div{
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  color:#dbe9ff;
}

.ct2-progress b{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid #bcd7ff;
  border-radius:50%;
  font-size:9px;
}

.ct2-progress span{
  font-size:9px;
  font-weight:900;
}

.ct2-progress .active b{
  background:#ffd400;
  border-color:#ffd400;
  color:#052b5d;
}

.ct2-progress .active span{
  color:#ffd400;
}

.ct2-progress i{
  width:50px;
  height:1px;
  margin:0 7px;
  background:#8fb5df;
}

.ct2-note{
  max-width:690px;
  margin:0 auto 34px;
  padding:9px 16px;
  border-radius:8px;
  background:#fff7ce;
  color:#19355d;
  text-align:center;
  font-size:11px;
  font-weight:700;
}


/* BRACKET */

.ct2-grid{
  position:relative;
  min-width:1050px;
  min-height:700px;
  display:grid;
  grid-template-columns:
    minmax(220px,1fr)
    minmax(220px,.9fr)
    minmax(220px,.9fr)
    minmax(180px,.75fr);
  gap:75px;
}

.ct2-round{
  position:relative;
  z-index:2;
}

.ct2-round-title{
  height:58px;
  margin-bottom:10px;
}

.ct2-round-title span{
  color:#bfd5ef;
  font-size:8px;
  font-weight:900;
  letter-spacing:1.2px;
}

.ct2-round-title h3{
  margin:3px 0;
  color:#fff;
  font-size:15px;
}


/* CUARTOS */

.ct2-q{
  display:grid;
  grid-template-rows:58px repeat(4,1fr);
  gap:10px;
}

.ct2-q .ct2-round-title{
  grid-row:1;
}

.ct2-q1{grid-row:2}
.ct2-q2{grid-row:3}
.ct2-q3{grid-row:4}
.ct2-q4{grid-row:5}


/* SEMIS */

.ct2-s{
  display:grid;
  grid-template-rows:58px 1fr 1fr;
  gap:20px;
}

.ct2-s1,
.ct2-s2{
  display:flex;
  align-items:center;
}


/* FINAL */

.ct2-f{
  display:flex;
  flex-direction:column;
}

.ct2-final-card{
  flex:1;
  display:flex;
  align-items:center;
}


/* CAMPEON */

.ct2-champion{
  display:flex;
  flex-direction:column;
}

.ct2-champion-card{
  flex:1;
  min-height:230px;
  align-self:stretch;
  margin:auto 0;
  max-height:280px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:25px 15px;
  border:2px solid #ffd400;
  border-radius:16px;
  background:
    radial-gradient(circle,rgba(255,212,0,.18),transparent 60%),
    rgba(255,255,255,.08);
  text-align:center;
}

.ct2-crown{
  font-size:50px;
  margin-bottom:13px;
}

.ct2-champion-card .ct2-logo{
  width:75px;
  height:75px;
  margin-bottom:12px;
}

.ct2-champion-card strong{
  font-size:18px;
}

.ct2-champion-card>span{
  margin-top:7px;
  color:#ffd400;
  font-size:9px;
  font-weight:900;
  letter-spacing:1px;
}


/* PARTIDOS */

.ct2-match{
  width:100%;
  position:relative;
  padding:11px 13px;
  border:2px solid #ffd400;
  border-radius:12px;
  background:#fff;
  color:#092d60;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}

.ct2-match-head{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:8px;
}

.ct2-match-head span{
  padding:4px 7px;
  border-radius:10px;
  background:#ffd400;
  color:#082d60;
  font-size:8px;
  font-weight:1000;
}

.ct2-match-head small{
  color:#6b7e99;
  font-size:7px;
  font-weight:900;
  letter-spacing:.6px;
}

.ct2-team{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:34px;
}

.ct2-team strong{
  flex:1;
  font-size:11px;
}

.ct2-logo{
  width:27px;
  height:27px;
  flex:0 0 27px;
  object-fit:contain;
}

.ct2-logo-empty{
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#edf4fc;
  font-size:11px;
}

.ct2-score{
  min-width:25px;
  text-align:center;
  color:#082d60;
  font-size:18px;
}

.ct2-vs{
  margin:0 0 0 35px;
  color:#d59e00;
  font-size:8px;
  font-weight:1000;
}

.ct2-date{
  margin-top:7px;
  padding-top:7px;
  border-top:1px solid #dfe7ef;
  color:#063c78;
  text-align:center;
  font-size:12px;
  font-weight:900;
  letter-spacing:.4px;
}


/* CONECTORES */

.ct2-line{
  position:absolute;
  z-index:1;
  pointer-events:none;
  border-color:#ffd400;
}

/*
 Los conectores se dibujan detrás de las tarjetas.
 La cuadrícula mantiene las columnas alineadas.
*/

.ct2-q .ct2-match::after,
.ct2-s .ct2-match::after,
.ct2-f .ct2-match::after{
  content:"";
  position:absolute;
  right:-77px;
  top:50%;
  width:75px;
  height:2px;
  background:#ffd400;
}

.ct2-f .ct2-match::after{
  right:-77px;
}


/* MOVIL */

@media(max-width:800px){

  .ct2{
    padding:25px 14px 35px;
  }

  .ct2-progress{
    overflow-x:auto;
    justify-content:flex-start;
    padding-bottom:8px;
  }

  .ct2-grid{
    min-width:0;
    min-height:0;
    display:block;
  }

  .ct2-round{
    margin-bottom:38px;
  }

  .ct2-q,
  .ct2-s{
    display:block;
  }

  .ct2-q1,
  .ct2-q2,
  .ct2-q3,
  .ct2-q4,
  .ct2-s1,
  .ct2-s2{
    display:block;
    margin-bottom:13px;
  }

  .ct2-final-card{
    display:block;
  }

  .ct2-match{
    margin-bottom:13px;
  }

  .ct2-match::after{
    display:none !important;
  }

  .ct2-champion-card{
    min-height:200px;
  }

}

/* Clasificación provisional Camino al Título */

.ct2-position{
  display:inline-block;
  margin-right:4px;
  color:#0b4b91;
  font-weight:1000;
}

.ct2-points{
  display:block;
  margin-top:2px;
  color:#71829a;
  font-size:8px;
  font-weight:800;
  letter-spacing:.3px;
}


html body .topbar .links a.cr-boton-panel{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;padding:12px 20px!important;background:#082d63!important;color:#fff!important;border:2px solid #ffd400!important;border-radius:10px!important;font-size:12px!important;font-weight:800!important;letter-spacing:.3px!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:0 5px 15px rgba(8,45,99,.20)!important;transition:all .2s ease!important}html body .topbar .links a.cr-boton-panel:hover{background:#ffd400!important;color:#082d63!important;transform:translateY(-2px)!important;box-shadow:0 7px 18px rgba(8,45,99,.28)!important}html body .topbar .links a.cr-boton-panel span{font-size:17px!important;line-height:1!important}@media(max-width:600px){html body .topbar .links a.cr-boton-panel{padding:9px 12px!important;font-size:10px!important}}
.ct2-round-date{
  display:block;
  margin-top:4px;
  color:#ffd400;
  font-size:10px;
  font-weight:900;
  letter-spacing:.5px;
}
.ct2-placement{
  margin:18px 0 26px;
  padding:18px 20px;
  border:1px solid #f5cc00;
  border-radius:14px;
  background:linear-gradient(135deg,#fffdf2,#fff5bd);
  color:#073c78;
}

.ct2-placement-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}

.ct2-placement-head span{
  color:#9a7000;
  font-size:10px;
  font-weight:900;
  letter-spacing:.7px;
}

.ct2-placement-head h3{
  margin:4px 0;
  font-size:18px;
  color:#073c78;
}

.ct2-placement-head p{
  margin:0;
  font-size:12px;
  font-weight:700;
  color:#53677e;
}

.ct2-placement-head strong{
  padding:9px 12px;
  border-radius:9px;
  background:#073c78;
  color:#fff;
  font-size:11px;
  white-space:nowrap;
}

.ct2-placement-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.ct2-placement-match{
  padding:13px;
  border:1px solid #e3cf68;
  border-radius:10px;
  background:#fff;
  text-align:center;
}

.ct2-placement-match b{
  display:block;
  margin-bottom:7px;
  color:#073c78;
  font-size:14px;
}

.ct2-placement-match span{
  font-size:12px;
  font-weight:900;
}

.ct2-placement-match em{
  margin:0 5px;
  color:#d59e00;
  font-style:normal;
}

@media(max-width:760px){
  .ct2-placement-head{
    display:block;
  }

  .ct2-placement-head strong{
    display:inline-block;
    margin-top:12px;
  }

  .ct2-placement-list{
    grid-template-columns:1fr;
  }
}