/* Regla general: separadores nativos de WordPress a 1px (sobrescribe el 2px de global styles) */
.wp-block-separator {
    border-top-width: 1px !important;
}

/* Document Cards Layout (Estatuto / CÃ³digo de Ã‰tica)*/

.ccl-doc-card {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* LÃ³gica de Bordes para bloque Ãºnico */
.ccl-doc-main {
    height: 360px !important;
    min-height: 360px !important;
    border-radius: 20px 20px 0 0 !important;
}

/* Ajuste para que en el bloque Doing Business la altura sea flexible y se alinee */
.ccl-no-gap-columns .ccl-doc-main {
    height: 100% !important;
    min-height: 100% !important;
}

/* Doc Card â€” altura extendida con contenido distribuido verticalmente */
.ccl-doc-main-tall {
    min-height: 450px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-evenly !important;
}

/* Doc Overlay â€” ancho parcial (80%) en lugar de full width */
.ccl-doc-overlay-80 {
    max-width: 80% !important;
    width: 80% !important;
}

/* Documento Vertical (Doing Business) */
.ccl-doc-card.ccl-doc-vertical,
.editor-styles-wrapper .ccl-doc-card.ccl-doc-vertical {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 40px !important;
    gap: 0 !important;
}

@media (max-width: 1024px) {

    .ccl-doc-card.ccl-doc-vertical,
    .editor-styles-wrapper .ccl-doc-card.ccl-doc-vertical {
        padding: 20px !important;
    }
}

.ccl-doc-vertical .ccl-doc-header {
    justify-content: flex-end !important;
    /* Icono arriba a la derecha */
}

.ccl-doc-vertical .ccl-doc-content {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-right: 0 !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.ccl-doc-vertical .ccl-doc-icon {
    width: 40px !important;
    height: 40px !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
}

.ccl-doc-vertical .ccl-doc-icon svg,
.ccl-doc-vertical .ccl-doc-icon img {
    width: 100% !important;
    height: 100% !important;
}

.ccl-doc-vertical .ccl-doc-text {
    font-size: clamp(24px, 4vw, 32px) !important;
}

.ccl-doc-vertical .ccl-doc-arrow-top {
    width: 40px !important;
    height: 40px !important;
    transform: none !important;
    /* Sin rotaciÃ³n */
}

.ccl-doc-vertical .ccl-doc-footer {
    display: flex;
    justify-content: flex-end;
    /* Flecha abajo a la derecha */
}

/* Padding aplicado al contenedor footer si tiene icono/imagen */
.ccl-doc-vertical .ccl-doc-footer:has(svg),
.ccl-doc-vertical .ccl-doc-footer:has(img) {
    padding: 0 45px !important;
}

@media (max-width: 1024px) {

    .ccl-doc-vertical .ccl-doc-footer:has(svg),
    .ccl-doc-vertical .ccl-doc-footer:has(img) {
        padding: 0 20px !important;
    }
}

.ccl-doc-vertical:hover .ccl-doc-arrow-top {
    transform: translateX(10px) !important;
    /* AnimaciÃ³n horizontal simple */
}

/* Eliminar bordes redondeados inferiores para un acabado recto */
.ccl-doc-bottom-row .wp-block-column:first-child .ccl-doc-card,
.ccl-doc-bottom-row .wp-block-column:last-child .ccl-doc-card {
    border-radius: 0 !important;
}

.ccl-doc-image {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.ccl-doc-image img,
.ccl-doc-image figure {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
    margin: 0;
}

.ccl-doc-overlay-wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0;
    z-index: 1;
}

.ccl-doc-overlay {
    max-width: 460px;
    width: 100%;
    padding: 30px 30px 50px 58px !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    /* Vuelve a ser columna */
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    text-decoration: none;
    transition: background 0.3s ease;
    color: #ffffff !important;
}

.ccl-doc-title {
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: clamp(27.5px, 4.4vw, 32px) !important;
    margin: 0 !important;
    margin-right: 40px !important;
    /* Evita que el tÃ­tulo pise la flecha del overlay */
    width: 100%;
    max-width: 100% !important;
}

@media (max-width: 1024px) {

    /* Media query ajustada a 1024px */
    .ccl-doc-overlay {
        max-width: 300px;
        padding: 20px !important;
    }

    /* Forzar que el tÃ­tulo no pise la flecha */
    .ccl-doc-overlay .ccl-doc-title {
        max-width: 100% !important;
    }

    /* Forzar que el texto no pise el icono en las cartillas */
    .ccl-doc-content .ccl-doc-text {
        max-width: calc(100% - 60px) !important;
    }

    .ccl-doc-arrow {
        width: 22px !important;
        height: 22px !important;
    }

    .ccl-doc-arrow-top {
        width: 30px !important;
        height: 30px !important;
    }
}

.ccl-doc-overlay:hover {
    transform: none !important;
    /* El div ya no se mueve */
    background: rgba(255, 255, 255, 0.4) !important;
}

/* AnimaciÃ³n de flecha en el overlay principal */
.ccl-doc-overlay:hover .ccl-doc-arrow {
    animation: ccl-arrow-slide 0.6s ease-in-out;
}

a:has(.ccl-doc-arrow) {
    margin-left: auto;
}

.ccl-doc-arrow {
    width: 30px;
    height: 30px;
    color: #ffffff !important;
    flex-shrink: 0;
    transform: rotate(-45deg);
    align-self: flex-end !important;
    transition: transform 0.3s ease;
}

/* AnimaciÃ³n para las flechas de las cartillas inferiores */
.ccl-doc-card:hover .ccl-doc-arrow-top {
    animation: ccl-arrow-slide 0.6s ease-in-out;
}

@keyframes ccl-arrow-slide {
    0% {
        transform: rotate(-45deg) translate(0, 0);
    }

    50% {
        transform: rotate(-45deg) translate(10px, 0);
    }

    /* Solo horizontal */
    100% {
        transform: rotate(-45deg) translate(0, 0);
    }
}

/* Bottom Row Cards */
.ccl-doc-bottom-row,
.editor-styles-wrapper .ccl-doc-bottom-row {
    margin-top: 0 !important;
    gap: 0 !important;
}

.ccl-doc-bottom-row .wp-block-column,
.editor-styles-wrapper .ccl-doc-bottom-row .wp-block-column {
    margin: 0 !important;
}

.ccl-doc-dark,
.editor-styles-wrapper .ccl-doc-dark {
    background-color: var(--color-secondary) !important;
    padding: 20px 20px 40px 20px !important;
}

.ccl-doc-blue,
.editor-styles-wrapper .ccl-doc-blue {
    background-color: var(--color-accent) !important;
    padding: 20px 20px 40px 20px !important;
    /* Unificado y con padding inferior aumentado */
}

.ccl-doc-header {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0 !important;
}

.ccl-doc-arrow-top {
    width: 40px;
    height: 40px;
    color: #ffffff !important;
    transform: rotate(-45deg);
    transition: transform 0.3s ease;
}

.ccl-doc-content {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-top: 0 !important;
    padding-bottom: 40px;
    margin-right: 50px;
    /* Evita que el texto y el borde se peguen al icono de arriba a la derecha */
    border-bottom: 1px solid #fff;
    flex-grow: 1;
    /* Hace que el contenido crezca y empuje el borde abajo */
}


.ccl-doc-icon {
    width: 55px;
    height: 55px;
    color: #ffffff !important;
    flex-shrink: 0;
    border: 1px solid #ffffff;
    border-radius: 50%;
    padding: 15px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: transparent !important;
}

.ccl-doc-icon svg {
    width: 25px !important;
    height: 25px !important;
}


.ccl-doc-text {
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: clamp(18.9px, 3.15vw, 26px) !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}





.ccl-doc-card a,
.ccl-doc-link-wrapper {
    text-decoration: none !important;
    color: inherit !important;
    display: block;
    height: 100%;
}

/* --- Doing Business Custom Alignment --- */
.ccl-no-gap-columns {
    gap: 0 !important;
}

.ccl-no-gap-stack {
    display: flex;
    flex-direction: column;
}

.ccl-no-gap-stack>.wp-block-group {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    flex: 1;
    /* Makes cards share height equally */
}

.ccl-column-image-left .ccl-doc-main {
    border-radius: 20px 0 0 20px !important;
    /* Rounded only on the outer left side */
}

.ccl-column-docs-stacked .ccl-doc-card:first-child {
    border-radius: 0 20px 0 0 !important;
    /* Top right outer corner */
}

.ccl-column-docs-stacked .ccl-doc-card:last-child {
    border-radius: 0 0 20px 0 !important;
    /* Bottom right outer corner */
}

/* Responsivo para el bloque Doing Business */
@media (max-width: 1024px) {
    .ccl-column-image-left {
        flex-basis: 100% !important;
        margin-bottom: 0 !important;
    }

    .ccl-column-image-left .ccl-doc-main {
        min-height: 300px !important;
        /* Altura necesaria para que se vea la imagen absolute */
        border-radius: 20px 20px 0 0 !important;
        /* Redondeado arriba */
    }

    .ccl-column-docs-stacked {
        flex-basis: 100% !important;
    }

    .ccl-column-docs-stacked .ccl-doc-card:first-child {
        border-radius: 0 !important;
        /* Recto porque se une a la imagen de arriba */
    }

    .ccl-column-docs-stacked .ccl-doc-card:last-child {
        border-radius: 0 0 20px 20px !important;
        /* Redondeado abajo */
    }
}

/* Inlined SVG and IMG utilities for cards */
.ccl-doc-arrow svg,
.ccl-doc-arrow img,
.ccl-doc-arrow-top svg,
.ccl-doc-arrow-top img,
.ccl-doc-icon svg,
.ccl-doc-icon img {
    width: 100%;
    height: 100%;
    display: block;
    fill: currentColor !important;
    object-fit: contain;
}

/* SimulaciÃ³n de color para el Editor (Gutenberg)
   Como en el editor son <img> y no <svg> inyectados, usamos filtros para que se vean blancos
*/
.editor-styles-wrapper .ccl-doc-dark .ccl-doc-icon img,
.editor-styles-wrapper .ccl-doc-blue .ccl-doc-icon img,
.editor-styles-wrapper .ccl-doc-dark .ccl-doc-arrow-top img,
.editor-styles-wrapper .ccl-doc-blue .ccl-doc-arrow-top img,
.editor-styles-wrapper .ccl-doc-overlay .ccl-doc-arrow img {
    filter: brightness(0) invert(1) !important;
}



.ccl-rounded-full {
    border-radius: 9999px !important;
    overflow: hidden;
}



/* Separators */
.ccl-separator-accent {
    border: none !important;
    border-top: 1px solid var(--color-accent) !important;
    background-color: transparent !important;
    opacity: 1 !important;
    height: 1px !important;
}

/* Alignment & Misc */
.has-text-align-justify {
    text-align: justify;
}

.ccl-italic {
    font-style: italic !important;
}

.ccl-font-bold {
    font-weight: 700 !important;
}

.ccl-uppercase {
    text-transform: uppercase !important;
}

.ccl-letter-spacing-1 {
    letter-spacing: 1px !important;
}

.ccl-letter-spacing-neg-1 {
    letter-spacing: -1px !important;
}

.ccl-letter-spacing-neg-2 {
    letter-spacing: -1.8px !important;
}

/* --- Transparency Utilities --- */
.ccl-background-transparency {
    background-color: color-mix(in srgb,
            var(--wp--preset--color--secondary) 85%,
            transparent) !important;
}

/* --- Responsive Border Utility --- */
/* Clase base para la lÃ³gica de posiciÃ³n */
.ccl-border-responsive {
    border-right-style: solid !important;
    border-right-width: 1px !important;
    border-bottom-style: none !important;
}

/* Variantes de Color */
.ccl-border-responsive-secondary {
    border-color: #2D4B71 !important;
}

.ccl-border-responsive-accent {
    border-color: var(--color-accent) !important;
}

.ccl-border-responsive-primary {
    border-color: var(--color-primary) !important;
}

@media (max-width: 1024px) {
    .ccl-border-responsive {
        border-right-style: none !important;
        border-bottom-style: solid !important;
        border-bottom-width: 1px !important;
    }
}

/* Text Alignment Override */
.has-text-align-center {
    text-align: center !important;
}

.has-text-align-left {
    text-align: left !important;
}

.has-text-align-right {
    text-align: right !important;
}

/* --- Layout Utilities --- */
.ccl-flex {
    display: flex !important;
}

.ccl-items-center {
    align-items: center !important;
}

.ccl-justify-center {
    justify-content: center !important;
}

.ccl-justify-between {
    justify-content: space-between !important;
}

.ccl-flex-column {
    flex-direction: column !important;
}

.ccl-row-60-40 {
    gap: 40px !important;
}

/* Extiende el rango de "Ocultar en tablet" (bloque nativo de WordPress)
   de 782px hasta 1024px, para que coincida con el breakpoint de tablet
   real de este tema. La regla original de WP (hasta 782px) sigue ahi,
   pero esta cubre el resto del rango 782-1024px. */
@media (480px < width <= 1024px) {
    .wp-block-hidden-tablet {
        display: none !important;
    }
    .ccl-iedep-main-img {
        display: none !important;
    }
}

/* --- Button Icon Utility --- */
.ccl-btn-with-icon .wp-block-button__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.ccl-btn-with-icon i {
    font-size: 1.2em;
    line-height: 1;
}

/* --- Global Button Utilities --- */

/* BotÃ³n Amarillo SÃ³lido */
.ccl-btn-yellow .wp-block-button__link {
    background-color: var(--color-warning) !important;
    color: #ffffff !important;
    border: 2px solid var(--color-warning) !important;
    transition: all 0.3s ease !important;
}

.ccl-btn-yellow .wp-block-button__link:hover {
    background-color: transparent !important;
    color: #ffffff !important;
}

/* BotÃ³n Amarillo Esquema (Outline) */
.ccl-btn-outline-yellow .wp-block-button__link {
    background-color: transparent !important;
    color: #ffffff !important;
    border: 2px solid var(--color-warning) !important;
    transition: all 0.3s ease !important;
}

.ccl-btn-outline-yellow .wp-block-button__link:hover {
    background-color: var(--color-warning) !important;
    color: #ffffff !important;
}

/* Efecto de Brillo (General) */
.ccl-btn-shine .wp-block-button__link {
    position: relative;
    overflow: hidden !important;
    z-index: 1;
}

.ccl-btn-shine .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
}

.ccl-btn-shine .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}

@keyframes ccl-global-shine {
    100% {
        left: 150%;
    }
}

/* --- Component Specific Utilities --- */

/* Flip Box Replacement (Cards) */
.ccl-flip-box-replacement {
    background: #fff;
    border: 1px solid #DBE8EF;
    border-radius: 22px;
    padding: 30px;
    height: 100%;
    transition: transform 0.3s ease;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.ccl-flip-box-replacement:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.ccl-flip-box-replacement img {
    margin-bottom: 20px;
}

/* Counter Item */
.ccl-counter-item {
    text-align: center;
    padding: 20px;
}

.ccl-counter-number {
    font-size: 40px;
    color: var(--color-primary);
    margin: 0;
    line-height: 1.2;
}

/* Vertical Counter Item (Icon -> Value -> Desc) */
.ccl-counter-item-vertical {
    text-align: center;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.ccl-counter-item-vertical .wp-block-image {
    margin-bottom: 5px;
}

.ccl-counter-item-vertical .ccl-counter-number {
    font-size: 50px;
    font-weight: 600;
    color: #fff;
    /* En esta secciÃ³n los nÃºmeros son blancos */
    margin: 0;
}

.ccl-counter-item-vertical .ccl-counter-desc {
    font-size: 14px;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 2px;
    margin: 0;
    font-weight: 500;
    max-width: 250px;
}

/* Ticker / Scrolling Tape (Cinta Corrediza) */
.ccl-ticker-container {
    width: 100%;
    overflow: hidden;
    background: #EFF5F9;
    /* Color corporativo amarillo por defecto */
    padding: 50px 0;
    display: flex;
    align-items: center;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.ccl-ticker-content {
    display: flex;
    white-space: nowrap;
    /* Ralentizado a 60s para una lectura cÃ³moda, ajustable segÃºn cantidad de texto */
    animation: ccl-ticker-scroll 60s linear infinite;
    will-change: transform;
}

.ccl-ticker-item {
    position: relative;
    padding: 0 60px;
    /* Mayor espaciado entre frases */
    font-size: clamp(19.5px, 1.21875rem + ((1vw - 3.2px) * 0.5078125), 26px);
    font-weight: 400;
    color: var(--color-primary-dark);
    display: flex;
    align-items: center;
    gap: 20px;
    font-family: 'Poppins', sans-serif;
}

.ccl-ticker-item:before {
    position: absolute;
    content: '';
    top: 50%;
    transform: translatey(-50%);
    left: 25px;
    width: 8px;
    height: 8px;
    border-radius: 100px;
    background-color: var(--color-primary-dark);
}

.ccl-ticker-item img {
    height: 40px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
}

@keyframes ccl-ticker-scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }

    /* Se detiene a la mitad porque el contenido estÃ¡ duplicado */
}

/* Modo Color Primario (Fondo Azul, Texto Blanco) */
.ccl-ticker-container.is-primary {
    background: var(--color-primary);
}

.ccl-ticker-container.is-primary .ccl-ticker-item {
    color: #fff;
}

.ccl-ticker-container.is-primary .ccl-ticker-item b {
    color: var(--color-primary);
}


/* Modo Accent (Fondo Azul Accent, Texto Blanco) */
.ccl-ticker-container.is-accent {
    background: var(--color-accent);
}

.ccl-ticker-container.is-accent .ccl-ticker-item {
    color: #ffffff;
}

.ccl-ticker-container.is-accent .ccl-ticker-item::before {
    background-color: #ffffff;
}

/* Video Player Widget */
.ccl-video-player-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.ccl-video-play-btn {
    width: 80px;
    height: 80px;
    background: var(--color-accent);
    color: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    text-decoration: none !important;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 0 rgba(0, 116, 197, 0.7);
    animation: ccl-pulse-blue 2s infinite;
}

.ccl-video-play-btn:hover {
    transform: scale(1.1);
    background: var(--color-primary);
    color: #fff;
}

@media (max-width: 600px) {
    .ccl-video-play-btn {
        width: 50px;
        height: 50px;
        font-size: 16px;
    }
}

@keyframes ccl-pulse-blue {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 116, 197, 0.7);
    }

    70% {
        transform: scale(1);
        box-shadow: 0 0 0 20px rgba(0, 116, 197, 0);
    }

    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 116, 197, 0);
    }
}

/* Section with Background Image (Fix for double-layer) */
.has-background-image {
    position: relative;
}

.wp-block-cover.has-background-image {
    min-height: 400px;
}

.ccl-max-container {
    max-width: 910px !important;
}

/* Accordion Custom Styles (Fidelity) */
.ccl-accordion-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: auto;
}

.ccl-styled-details {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border: 1px solid #eef2f6;
    transition: all 0.3s ease;
    margin-top: 0;
}

.ccl-styled-details summary {
    font-size: 20px;
    font-weight: 500;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--color-primary);
    color: #fff;
    font-family: 'Poppins', sans-serif;
}


/* Style 2: Dark header with decorative slanted background on icon area */
.ccl-styled-details.style-2 {
    border: none !important;
    border-radius: 0 !important;
}

.ccl-styled-details.style-2 summary {
    position: relative;
    background-color: var(--color-primary);
    color: #fff;
}

.ccl-styled-details.style-2 summary::before {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    background-color: rgba(255, 255, 255, 0.15);
    width: 80px;
    height: 100%;
    clip-path: polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
    pointer-events: none;
    z-index: 0;
}

.ccl-styled-details.style-2 summary::after {
    color: #fff;
    position: relative;
    z-index: 1;
}

.ccl-styled-details.style-2[open] summary {
    background-color: var(--color-primary-dark);
}


.ccl-styled-details.style-1 {
    border: none !important;
    border-radius: 0 !important;
    width: 100%;

}

.ccl-styled-details.style-1 summary {
    position: relative;
    background-color: #f9fbff;
    color: var(--color-secondary);
}


.ccl-styled-details.style-1 summary::after {
    color: var(--color-secondary);
}

.ccl-styled-details summary::-webkit-details-marker {
    display: none;
}

.ccl-styled-details[open] summary::after {
    transform: rotate(180deg);
}

.ccl-styled-details p {
    margin-bottom: 15px;
    text-align: justify;
}



.ccl-icon-box p {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.ccl-icon-box p i {
    flex-shrink: 0;
    margin-top: 3px;
}

.ccl-video-player-cover {
    background-size: cover;
    background-position: center;
    aspect-ratio: 1536 / 400;
    min-height: auto!important;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.ccl-overlay-image {
    position: absolute;
    inset: 0;
    background-image: url('../../../../../wp-content/uploads/2025/09/PATRON-CCL-BLANCO.png');
    opacity: .1;
    z-index: 0;
    height: 100%;
}

.ccl-separator {
    border-top: 1px solid var(--color-accent);
}

/* --- Global SVG Color Synchronization --- */
/* Forzar que todos los SVGs inyectados hereden el color del texto (Gutenberg) */
.ccl-svg-inlined svg,
.ccl-svg-inlined svg * {
    fill: currentColor !important;
    transition: all 0.3s ease;
}

/* Solo aplicar stroke si el elemento ya tenÃ­a un stroke (evitar cajas negras) */
.ccl-svg-inlined svg [stroke]:not([stroke="none"]) {
    stroke: currentColor !important;
}

/* Evitar que el contenedor rompa el layout */
.ccl-svg-inlined {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
}

.ccl-svg-inlined svg {
    width: 100%;
    height: auto;
    max-width: inherit;
}

/* Iconos SVG de canal/diagnostico/ocde (tarjetas de Transparencia) */
svg.ccl-doc-svg {
    fill: #0074C5;
}

.ccl-exclusive-columns {
    align-items: center !important;
}

.card-style-1 .wp-block-column:has(> .card-style-1__icon) {
    margin-bottom: 0 !important;
}

.ccl-exclusive-button .wp-block-buttons {
    margin-left: auto;
}


.ccl-exclusive-button {
    margin-right: -22px !important;
}

.ccl-exclusive-badge {
    min-height: 47px;
    display: flex;
    align-items: center;
}

/* Badge: Exclusivo para asociado */
.ccl-exclusive-badge .wp-block-button__link,
.ccl-exclusive-badge a {
    background-color: var(--color-warning) !important;
    color: #050505 !important;
    padding: 8px 18px !important;
    border-radius: 30px 0 0 30px;
    /* Redondeado izquierda, recto derecha */
    font-size: clamp(9px, 0.5625rem + ((1vw - 3.2px) * 0.234375), 12px) !important;
    font-weight: 500;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: end;
    width: fit-content;
    margin-bottom: 10px;
    transition: var(--ccl-transition);
    text-transform: none !important;
    letter-spacing: 0.5px;
}


.cards-grid {
    gap: 30px;
    margin-bottom: 30px;
}

.card-style-1 {
    border: 1px solid #d9d9d9;
    border-radius: 22px;
    padding: 34px 22px;
    background: var(--white-color);
    justify-content: space-between;
    display: flex;
    flex-direction: column;
}

.card-style-1__icon {
    margin-bottom: 24px;
}

.card-style-1__icon svg,
.card-style-1__icon img {
    width: 27px;
    height: 27px;
    object-fit: contain;
    text-align: center;
}

.card-style-1__icon {
    border-radius: 50%;
    padding: 10px;
    background-color: var(--color-bg-soft);
    color: var(--color-primary-light);
    width: 47px;
    height: 47px;
}

.card-style-1__title {
    line-height: 1.2;
    font-weight: 500;
    font-size: clamp(15px, 0.9375rem + ((1vw - 3.2px) * 0.390625), 20px);
}

.card-style-1__text {
    line-height: 1.7;
    flex-grow: 1;
    font-size: clamp(10.5px, 0.65625rem + ((1vw - 3.2px) * 0.2734375), 14px);
}

.card-style-1__button {
    width: 100%;
}

.card-style-1__button .wp-block-button__link {
    width: 100%;
    text-align: center;
    background: transparent;
    color: var(--color-primary-light);
    border-style: solid !important;
    border-width: 1px 1px 1px 1px !important;
    border-color: #A7C0CE !important;
    border-radius: 40px;
    padding: 14px 24px;
    font-size: clamp(12px, 0.75rem + ((1vw - 3.2px) * 0.3125), 16px);
    font-weight: 400;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

/* Brillo tipo Premiaciones: al pasar el mouse o hacer clic, conserva su
   color (no se rellena) y solo cruza un brillo diagonal. */
.card-style-1__button .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.6) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
    pointer-events: none;
}

.card-style-1__button .wp-block-button__link:hover::after,
.card-style-1__button .wp-block-button__link:active::after {
    animation: ccl-global-shine 0.75s forwards;
}

.card-style-1__button .wp-block-button__link:hover,
.card-style-1__button .wp-block-button__link:focus,
.card-style-1__button .wp-block-button__link:active {
    background-color: var(--color-primary-light) !important;
    border-color: var(--color-primary-light) !important;
}


@media screen and (max-width:1024px) {

    /* El icono y el badge "Exclusivo para asociado" deben permanecer en
       la misma fila en tablet/mobile (no apilarse debajo del icono).
       Hay dos reglas !important con flex-wrap:wrap en pugna aqui:
       ".wp-block-columns" (core de WP) y ".entry-content .wp-block-columns"
       (este mismo archivo). Se sube la especificidad a 3 clases para
       ganarles a las dos sin ambiguedad y se fuerza flex-direction:row. */
    .ccl-exclusive-columns.ccl-exclusive-columns.ccl-exclusive-columns {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: space-between;
        align-items: center !important;
    }

    .ccl-exclusive-button {
        margin-right: -22px !important;
    }

}


@media screen and (max-width:360px) {

    .ccl-exclusive-badge .wp-block-button__link,
    .ccl-exclusive-badge a {
        max-width: 150px;
    }

}


.servicios-header h1 {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.8s ease;
    font-weight: 500;
    font-size: clamp(30px, 1.875rem + ((1vw - 3.2px) * 0.78125), 40px);
}

.servicios-header h1.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Asegurar visibilidad en el editor de bloques */
.editor-styles-wrapper .servicios-header h1 {
    opacity: 1 !important;
    transform: none !important;
}


/* ==========================================================================
   Componente Global: SecciÃ³n Principal de CaracterÃ­sticas
   ========================================================================== */


/* Espacio entre las dos columnas (Gap) y alineaciÃ³n de altura */
.ccl-main-feature-section div.wp-block-columns.alignwide {
    gap: 3.5rem;
    align-items: stretch;
}

/* DistribuciÃ³n equitativa 50/50 y contenedor flex para alinear contenido */
.ccl-main-feature-section .wp-block-columns .wp-block-column {
    flex-basis: 50%;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* TÃ­tulos de las CaracterÃ­sticas - Reset de margen superior para alinear con la imagen */
.ccl-main-feature-section h2.ccl-text-primary-light {
    margin-top: 0;
    font-size: clamp(20px, 3vw, 35px);
    font-weight: 500;
    letter-spacing: -0.8px;
    line-height: 1.1;
}

/* PÃ¡rrafos / Descripciones */
.ccl-main-feature-section p.has-text-align-justify {
    font-size: 16px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: -0.5px;
}

/* Empujar botones al final de la columna para alinear con el fondo de la imagen */
.ccl-main-feature-section .wp-block-buttons {
    margin-top: 0;
    margin-bottom: 0;
}

/* BotÃ³n Corporativo */
.ccl-main-feature-section .wp-block-button .wp-block-button__link.wp-element-button {
    display: inline-block;
    background-color: var(--color-secondary);
    color: #ffffff;
    padding: 14px 30px;
    font-size: 14px;
    line-height: 1.2em;
    border-radius: 56px;
    font-weight: 400;
    letter-spacing: 2px;
    text-decoration: none;
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    border: none;
}

/* AnimaciÃ³n de entrada para el botÃ³n - SOLO FRONTEND */
body:not(.editor-styles-wrapper) .ccl-main-feature-section .wp-block-button {
    opacity: 0;
    transform: scale(0.92);
    transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

body:not(.editor-styles-wrapper) .ccl-main-feature-section .wp-block-button.visible {
    opacity: 1;
    transform: scale(1);
}



/* Hover del BotÃ³n (mantenemos transform separado para no interferir con la animaciÃ³n de entrada) */
.ccl-main-feature-section .wp-block-button .wp-block-button__link.wp-element-button:hover {
    transform: translateY(-2px);
}

/* Bordes redondeados y comportamiento de la Imagen */
.ccl-main-feature-section .wp-block-image img {
    border-radius: 25px;
    object-fit: cover;
    width: 100%;
    height: auto;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
}

/* ==========================================================================
   Responsivo: SecciÃ³n Principal de CaracterÃ­sticas
   ========================================================================== */

@media screen and (max-width: 1024px) {

    /* Solo el botÃ³n se centra cuando las columnas colapsan */
    .ccl-main-feature-section .wp-block-columns .wp-block-column {
        flex-basis: 100%;
    }

    .ccl-main-feature-section .wp-block-image {
        margin-bottom: 20px;
    }

    .ccl-main-feature-section div.wp-block-columns.alignwide {
        gap: 2.5rem;

    }
}

@media screen and (max-width: 480px) {
    .ccl-main-feature-section .wp-block-buttons {
        justify-content: center;
    }
}


.ccl-tabla-1 table {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto !important;
}

.ccl-tabla-1 table thead {
    border: none;
}

.ccl-tabla-1 table th,
.ccl-tabla-1 table td {
    padding: 30px 12px;
    border: 1px solid var(--color-gray-light);
    font-size: 16px;
    line-height: 1.4;
}

.ccl-tabla-1 table th {
    color: var(--color-primary-light) !important;
    font-weight: 600;
    text-align: center;
}

.ccl-tabla-1 table td {
    color: var(--color-gray-dark);
}

.ccl-tabla-1 table td:first-child {
    text-align: center;
}

.ccl-tabla-1 table td:nth-child(2) {
    text-align: left;
}

.ccl-tabla-1 table td:last-child {
    text-align: center;
}


.ccl-tabla-1 td:first-child,
.ccl-tabla-1 th:first-child,
.ccl-tabla-1 td:last-child,
.ccl-tabla-1 th:last-child {
    white-space: nowrap;
}

/* ==========================================================================
   Tabla Estilo 2 â€” Header azul oscuro, filas limpias con borde suave
   Uso: tablas de paÃ­ses ATA, directorios, listados institucionales
   ========================================================================== */

.ccl-tabla-2 {
    overflow: hidden;
    padding: 20px;
}

.ccl-tabla-2 table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 3px 4px;
    font-family: var(--font-family-poppins);
    font-size: 14px;
    background-color: var(--color-gray-light);
    border: none;
}

.ccl-tabla-2 table thead tr {
    background-color: var(--color-primary-light);
}

.ccl-tabla-2 table th {
    color: #ffffff !important;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 14px 16px;
    border: none;
}

.ccl-tabla-2 table td {
    padding: 12px 16px;
    color: var(--color-gray-dark);
    border: none;
    vertical-align: middle;
}

.ccl-tabla-2 table tbody tr:hover td {
    background-color: var(--color-bg-soft);
    transition: background 0.2s ease;
}

/* Columna PaÃ­s: centrada y sin salto de lÃ­nea */
.ccl-tabla-2 table td:first-child {
    text-align: center;
    white-space: nowrap;
    font-weight: 500;
    color: var(--color-primary-light);
}

/* Columna Entidad: texto izquierda */
.ccl-tabla-2 table td:nth-child(2) {
    text-align: left;
}

/* Columna TelÃ©fono y Sitio Web: centradas */
.ccl-tabla-2 table td:nth-child(3),
.ccl-tabla-2 table td:last-child {
    text-align: center;
    white-space: nowrap;
}

/* Cuando la tabla estÃ¡ dentro de un acordeÃ³n (wp:details) */
.ccl-tabla-2 .ccl-tabla-2-inner,
.ccl-tabla-2-inner {
    width: 100%;
    border-collapse: separate;
    border-spacing: 3px 4px;
    font-family: var(--font-family-poppins);
    font-size: 14px;
    background-color: var(--color-gray-light);
}

.ccl-tabla-2 .ccl-tabla-2-inner thead tr,
.ccl-tabla-2-inner thead tr {
    background-color: var(--color-primary-light);
}

.ccl-tabla-2 .ccl-tabla-2-inner th,
.ccl-tabla-2-inner th {
    color: #ffffff !important;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 14px 16px;
    border: none;
}

.ccl-tabla-2 .ccl-tabla-2-inner td,
.ccl-tabla-2-inner td {
    padding: 12px 16px;
    color: var(--color-gray-dark);
    border: none;
    vertical-align: middle;
}

.ccl-tabla-2 .ccl-tabla-2-inner tbody tr:hover td,
.ccl-tabla-2-inner tbody tr:hover td {
    background-color: var(--color-bg-soft);
    transition: background 0.2s ease;
}

.ccl-tabla-2 .ccl-tabla-2-inner td:first-child,
.ccl-tabla-2-inner td:first-child {
    text-align: center;
    white-space: nowrap;
    font-weight: 500;
    color: var(--color-primary-light);
}

.ccl-tabla-2 .ccl-tabla-2-inner td:nth-child(2),
.ccl-tabla-2-inner td:nth-child(2) {
    text-align: left;
}

.ccl-tabla-2 .ccl-tabla-2-inner td:nth-child(3),
.ccl-tabla-2 .ccl-tabla-2-inner td:last-child,
.ccl-tabla-2-inner td:nth-child(3),
.ccl-tabla-2-inner td:last-child {
    text-align: center;
    white-space: nowrap;
}

/* Links dentro de la tabla */
.ccl-tabla-2 table td a {
    color: var(--color-accent) !important;
    text-decoration: none !important;
}

.ccl-tabla-2 table td a:hover {
    text-decoration: underline !important;
}

/* Sin scroll horizontal â€” el texto hace wrap y la fila crece */
.ccl-tabla-2,
.ccl-tabla-2-inner {
    white-space: normal !important;
}

.ccl-tabla-2 table td:nth-child(3),
.ccl-tabla-2 table td:last-child,
.ccl-tabla-2-inner td:nth-child(3),
.ccl-tabla-2-inner td:last-child {
    white-space: normal !important;
}

.ccl-tabla-2 table td:first-child,
.ccl-tabla-2-inner td:first-child {
    white-space: normal !important;
}

/*Img-DescripciÃ³n*/

.ccl-img-description-columns {
    max-width: 1250px;
    align-items: stretch;
    border-radius: 20px;
    gap: 2.5rem;
}

.ccl-img-description-columns .ccl-img-block {
    display: flex;
    height: 100%;
}

.ccl-img-description-columns .ccl-img-block img {
    height: auto;
    object-fit: cover;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.ccl-img-description-columns .ccl-description-column {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-right: 40px;
    justify-content: center;
    display: flex;
    flex-direction: column;
}


@media (max-width: 1024px) {
    .ccl-img-description-columns .ccl-img-block img {
        max-height: 500px;
        border-top-right-radius: 20px;
        border-bottom-left-radius: 0px;
        width: 100%;
        object-position: top;
    }

    .ccl-img-description-columns .ccl-description-column {
        padding: 30px;
    }

}

/* ==========================================================================
   BENEFICIOS DEL ASOCIADO â€” Staff Acordeones
   ========================================================================== */

/* Stats Beneficios â€” layout */
.ccl-stats-beneficios {
    gap: 30px !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ccl-stats-beneficios .ccl-stat-item {
    flex: 1 1 200px !important;
    min-width: 0 !important;
    max-width: 240px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 8px !important;
    justify-content: center !important;
    text-align: center !important;
}

/* El "+" alineado con el nÃºmero */
.ccl-stats-beneficios .ccl-stat-item > .wp-block-paragraph {
    line-height: 1 !important;
    margin-top: 4px !important;
    flex-shrink: 0 !important;
}

/* Sufijo pequeÃ±o en stats (mil, aÃ±os, %) */
.ccl-stat-number .ccl-stat-suffix {
    font-size: 60% !important;
    font-weight: 800 !important;
}

.ccl-stats-beneficios .ccl-stat-item .ccl-uppercase {
    font-size: 10px !important;
    line-height: 1.4 !important;
    margin-top: 4px !important;
    text-align: center !important;
}

@media (max-width: 1024px) {
    .ccl-stats-beneficios {
        flex-wrap: wrap !important;
    }
    .ccl-stats-beneficios .ccl-stat-item {
        flex-basis: 45% !important;
        max-width: 48% !important;
    }
}

/* Portada cards â€” ComposiciÃ³n del Cuaderno ATA */
.ccl-portada-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    height: 100%;
}

.ccl-portada-card .wp-block-image img {
    width: 100% !important;
    height: auto !important;
    border-radius: 8px;
}

/* Voucher cards */
.ccl-voucher-card .wp-block-image img {
    width: 100% !important;
    height: auto !important;
    border: 1px solid var(--color-gray-light);
    border-radius: 8px;
}

/* Card DiagnÃ³stico â€” imagen desbordante izquierda + arriba */
.ccl-diagnostico-card {
    overflow: visible !important;
    position: relative;
    align-items: flex-end !important;
}

.ccl-diagnostico-card .ccl-img-overflow-top {
    flex-shrink: 0 !important;
    align-self: flex-end !important;
    margin-left: -30px !important;
    margin-bottom: 0 !important;
}

.ccl-diagnostico-card .ccl-img-overflow-top figure {
    margin: 0 !important;
}

.ccl-diagnostico-card .ccl-img-overflow-top img {
    width: 350px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: bottom center !important;
    display: block !important;
    margin-top: -60px !important;
}

/* Mobile â€” card diagnÃ³stico apilada */
@media (max-width: 1024px) {
    .ccl-diagnostico-card {
        flex-direction: column !important;
        align-items: center !important;
        padding-top: 20px !important;
    }

    .ccl-diagnostico-card .ccl-img-overflow-top {
        display: none !important;
    }

    .ccl-diagnostico-card > .wp-block-group:nth-child(2) {
        max-width: 100% !important;
        padding-bottom: 0 !important;
        text-align: center !important;
    }

    .ccl-diagnostico-card > .wp-block-group:last-child {
        margin-bottom: 30px;
        padding-right: 0 !important;
    }
}

/* Grupo del botÃ³n â€” centrado verticalmente */
.ccl-diagnostico-card > .wp-block-group:last-child {
    align-self: center !important;
    flex-shrink: 0 !important;
}

/* Escritorio â€” mas aire horizontal alrededor del circulo, sin agrandar
   el circulo en si (el circulo sigue siendo fijo en 150px mas abajo) */
@media (min-width: 1025px) {
    .ccl-diagnostico-card > .wp-block-group:last-child {
        box-sizing: border-box !important;
        padding-right: 30px !important;
    }
}

/* Escritorio â€” columna central (texto) +15%, imagen y boton se reparten el resto por igual */
@media (min-width: 1025px) {
    .ccl-diagnostico-card .ccl-img-overflow-top,
    .ccl-diagnostico-card > .wp-block-group:last-child {
        flex: 0 0 25.8335% !important;
        max-width: 25.8335% !important;
    }

    .ccl-diagnostico-card > .wp-block-group:nth-child(2) {
        flex: 0 0 48.333% !important;
        max-width: 48.333% !important;
    }

    .ccl-diagnostico-card .ccl-img-overflow-top img {
        width: 100% !important;
    }
}

/* BotÃ³n circular INICIAR ENCUESTA â€” tamaÃ±o fijo, con padding interno
   para que el texto no toque el borde del circulo */
.ccl-diagnostico-card .wp-block-button__link {
    width: 150px !important;
    height: 150px !important;
    padding: 15px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    font-size: 15px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    border-radius: 50% !important;
    flex-shrink: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    transition: background-color 0.3s ease !important;
}

.ccl-diagnostico-card .wp-block-button__link:hover {
    background-color: var(--color-primary-dark) !important;
}

/* Brillo tipo Premiaciones (misma animacion global ccl-global-shine) */
.ccl-diagnostico-card .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -100%;
    width: 50%;
    height: 200%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: rotate(30deg);
    z-index: 2;
    pointer-events: none;
}

.ccl-diagnostico-card .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}

/* Tablet/mobile â€” el botÃ³n deja de ser circular y pasa a ancho de bloque:
   minimo 100px mas que el circulo de escritorio (150px) o 20% del
   contenedor, lo que sea mayor. */
@media (max-width: 1024px) {
    .ccl-diagnostico-card .wp-block-button__link {
        width: 209px !important;
        height: auto !important;
        padding: 16px 30px !important;
        border-radius: 25px !important;
    }
}

/* Mobile — texto centrado con aire alrededor */
@media (max-width: 600px) {
    .ccl-diagnostico-card > .wp-block-group:nth-child(2) {
        text-align: center !important;
        padding-top: 15px !important;
        padding-right: 15px !important;
        padding-left: 15px !important;
    }
}



.ccl-intro-overlay-wca{
    max-width: 80%;
    text-align: center;
}


/* ==========================================================================
   MODELOS DE CONTRATOS
   ========================================================================== */

.ccl-contracts-badge {
    background-color: var(--color-secondary);
    color: #ffffff;
    padding: 8px 28px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.ccl-contracts-row {
    border: 1px solid var(--color-gray-light) !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
}

.ccl-contracts-grid > .ccl-contracts-row:first-child {
    border-radius: 12px 12px 0 0 !important;
}

.ccl-contracts-grid > .ccl-contracts-row:last-child {
    border-radius: 0 0 12px 12px !important;
}

.ccl-contracts-grid > .ccl-contracts-row + .ccl-contracts-row {
    border-top: none !important;
}

.ccl-contracts-row .wp-block-column {
    border-right: 1px solid var(--color-gray-light) !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ccl-contracts-row .wp-block-column:last-child {
    border-right: none !important;
}

.ccl-contract-card {
    padding: 20px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.ccl-contract-card-top {
    gap: 12px !important;
    flex: 1 !important;
    align-items: center !important;
}


/* Nombre del contrato â€” via clase, sin inline styles â†’ nunca se corrompe */
.ccl-contract-name {
    color: var(--color-secondary) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    margin: 0 !important;
    flex: 1;
}

/* BotÃ³n alineado con el texto del tÃ­tulo (icono 40px + gap 12px) */
.ccl-contract-card .wp-block-buttons {
    padding-left: 52px !important;
    margin-top: 16px !important;
}

/* ==========================================================================
   REPOSITORIO DE INTEGRIDAD â€” rediseÃ±o visual (solo esta pÃ¡gina, NO afecta
   Modelos de Contratos que comparte las mismas clases .ccl-contract-card).
   Escapado con la clase ".ccl-page-content-section.ccl-repo-integridad" (agregada al bloque en la
   BD) en vez de "body.page-id-299905": esa clase viaja con el bloque, asi
   que los estilos tambien se ven dentro del editor de WordPress (el iframe
   del editor no tiene las clases del body del frontend). */

body.page-id-299905 {
    background-color: #f0f0f1;
}

/* El padding-top/bottom va en el WRAPPER interno (.inherit-container-width),
   NO en #content: #content envuelve tambien el hero de portada, que debe
   quedar pegado al header sin espacio extra. */

/* La regla generica ".wp-block-group[class*='-section']{padding:60px!important}"
   (style.css) le da 60px de padding a esta seccion por su nombre de clase;
   sumado al padding que ya ponemos en el wrapper interno, dejaba un hueco
   de 120px entre las dos "tarjetas". Se anula el padding VERTICAL (causaba
   el hueco); el padding HORIZONTAL de 60px se mantiene porque es lo que
   hace que .inherit-container-width mida 1320px y quede alineado con el
   hero (que llega a ese mismo ancho por el padding propio del bloque cover,
   no por la clase en si). */
.ccl-page-content-section.ccl-repo-integridad {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* La tarjeta blanca se aplica al MISMO elemento "inherit-container-width"
   que usa el hero (.ccl-internal-hero-content), para quedar exactamente
   alineada con el texto "Repositorio de Integridad" del hero. Ahora es
   UNA sola caja (el contenido se fusiono en un solo bloque en la BD, ya
   no son 2 secciones separadas), asi que lleva esquinas y sombra completas
   sin necesidad de trucos para evitar una linea de union. */
.ccl-page-content-section.ccl-repo-integridad .inherit-container-width {
    background-color: #ffffff;
    border-radius: 20px;
    box-shadow: 0 -10px 35px -8px rgba(0, 0, 0, .18),
                 0 20px 50px -8px rgba(0, 0, 0, .22);
    padding-top: 50px !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 40px;
    margin-bottom: 40px;
}

/* Aire entre el titulo/separador y la grilla de tarjetas, ahora que
   ambos viven dentro de la misma caja */
.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-grid {
    margin-top: 30px;
}

/* Quitar el look de tabla (bordes gruesos entre filas) pero dejar
   divisores sutiles verticales entre columnas. Si una fila/columna queda
   vacia (sin elementos), no debe mostrar sus bordes internos. */
.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row {
    border: 1px solid #ced4da !important;
    border-radius: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0px !important;
    margin-top: 0;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row:empty {
    border: none !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-grid > .ccl-contracts-row:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column {
    border-right: 1px solid var(--color-gray-light) !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column:empty {
    border-right: none !important;
    border-bottom: none !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column:last-child {
    border-right: none !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-grid > .ccl-contracts-row:first-child,
.ccl-page-content-section.ccl-repo-integridad .ccl-contracts-grid > .ccl-contracts-row:last-child {
    border-radius: 0 !important;
}

/* Tablet: 2 tarjetas por fila (en vez de 1 columna de ancho completo que
   fuerza la regla sitewide ".entry-content .wp-block-columns > .wp-block-column").
   Cada ".ccl-contracts-row" trae siempre 4 columnas, asi que con 2 por
   fila quedan 2 sub-filas por grupo: se agrega una linea vertical entre
   cada par y una horizontal entre el par de arriba y el de abajo (la
   linea entre GRUPOS de 4 ya la pone el border-bottom de .ccl-contracts-row). */
@media (min-width: 481px) and (max-width: 1024px) {
    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row {
        flex-wrap: wrap !important;
        row-gap: 0 !important;
    }

    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column {
        flex-basis: 50% !important;
        width: 50% !important;
        flex-grow: 0 !important;
        border-right: none !important;
    }

    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column:nth-child(odd) {
        border-right: 1px solid var(--color-gray-light) !important;
    }

    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column:nth-child(-n+2) {
        border-bottom: 1px solid var(--color-gray-light) !important;
    }
}

/* Mobile: 1 columna, linea horizontal entre CADA tarjeta (no solo entre
   grupos de 4, que es lo unico que cubre el border-bottom de la fila).
   La regla base ".ccl-contracts-row .wp-block-column{border-right:1px...}"
   no tiene media query, asi que sin este override el border-right seguia
   apareciendo tambien en mobile (esa linea vertical suelta al costado). */
@media (max-width: 480px) {
    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column {
        border-right: none !important;
    }

    .ccl-page-content-section.ccl-repo-integridad .ccl-contracts-row .wp-block-column:not(:last-child) {
        border-bottom: 1px solid var(--color-gray-light) !important;
    }
}

/* Cada tarjeta: icono arriba, texto centrado, mas aire */
.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card {
    align-items: center !important;
    padding: 30px 24px !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card-top {
    flex-direction: column !important;
    text-align: center !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card .ccl-icon-circle {
    width: 72px !important;
    min-width: 72px !important;
    height: 72px !important;
    font-size: 30px !important;
    cursor: pointer;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card .ccl-icon-circle:hover {
    animation: ccl-repo-icon-bounce .6s ease;
}

@keyframes ccl-repo-icon-bounce {
    0%, 100% { transform: translateY(0); }
    30% { transform: translateY(-10px); }
    50% { transform: translateY(0); }
    70% { transform: translateY(-5px); }
    85% { transform: translateY(0); }
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-name {
    text-align: center !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    color: #646A6D !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card .wp-block-buttons {
    padding-left: 0 !important;
    justify-content: center !important;
    margin-top: 24px !important;
}

.ccl-page-content-section.ccl-repo-integridad .ccl-contract-card .wp-block-button__link {
    font-size: 15px !important;
    font-weight: 400 !important;
}

/* â”€â”€ SecciÃ³n "Conoce otros servicios" â€” patrÃ³n CCL como fondo decorativo â”€â”€ */
.ccl-otros-section {
    position: relative;
    overflow: hidden;
}

.ccl-otros-section::before,
.ccl-otros-section::after { display: none; }

/* â”€â”€ Slider â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.ccl-otros-section .inherit-container-width {
    position: relative;
    z-index: 1;
    overflow: hidden; /* clip aquÃ­, no en el slider */
}

.ccl-otros-slider {
    overflow: visible; /* permite ver los laterales */
    position: relative;
}

/* Card â€” grid: imagen+desc a la izq, tÃ­tulo+btn a la derecha */
.ccl-otro-card {
    background: #ffffff;
    border-radius: 0;
    box-shadow: 0 4px 24px rgba(0,0,0,0.07);
    padding: 28px;
    display: grid;
    grid-template-columns: 160px 1fr;
    grid-template-rows: auto auto;
    grid-template-areas:
        "img  title"
        "desc desc";
    gap: 16px 28px;
    align-items: center;
    width: 100%;
    min-height: 350px;
}

/* Imagen circular â€” Ã¡rea "img", alineada con el tÃ­tulo */
.ccl-otro-card-img-wrap {
    grid-area: img;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    overflow: hidden;
}

.ccl-otro-card-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Fila tÃ­tulo + botÃ³n â€” Ã¡rea "title", centrada verticalmente con la imagen */
.ccl-otro-card-title-row {
    grid-area: title;
    display: flex;
    align-items: center;
    gap: 16px;
    align-self: center;
}

.ccl-otro-card-title {
    flex: 1;
    font-weight: 600;
    color: var(--color-secondary);
    margin: 0;
    line-height: 1.3;
}

/* BotÃ³n flecha â€” 2x grande, color secondary, sin rotaciÃ³n ni escala */
.ccl-otro-card-btn {
    width: 88px;
    height: 88px;
    min-width: 88px;
    border-radius: 50%;
    background-color: var(--color-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    font-size: 28px;
    text-decoration: none;
    flex-shrink: 0;
    transition: background 0.2s ease;
    transform: none !important;
}

.ccl-otro-card-btn:hover {
    background-color: var(--color-secondary) !important;
    color: #ffffff !important;
    transform: none !important;
}

.ccl-otro-card-btn i {
    font-size: 28px !important;
    transition: transform 0.3s ease !important;
    transform: rotate(0deg) !important;
    display: inline-block;
    animation: none !important;
}

.ccl-otro-card-btn:hover i {
    transform: rotate(-45deg) !important;
    animation: none !important;
}

/* Imagen â€” lÃ­nea separadora derecha sin padding extra */
.ccl-otro-card-img-wrap {
    border-right: 1px solid var(--color-gray-dark);
}

/* DescripciÃ³n â€” Ã¡rea "desc", con espacio respecto a la imagen */
.ccl-otro-card-desc {
    grid-area: desc;
    font-size: 16px;
    color: var(--color-gray-dark);
    line-height: 1.6;
    margin: 0;
    padding-top: 40px;
    padding-bottom: 20px;
    border-top: 1px solid var(--color-gray-light);
}

/* Slides laterales atenuadas, central destacada */
.ccl-otros-slider .swiper-slide {
    opacity: 0.45;
    transition: opacity 0.3s ease;
}

.ccl-otros-slider .swiper-slide-active {
    opacity: 1;
}

/* NavegaciÃ³n + paginaciÃ³n debajo */
.ccl-otros-slider {
    padding-bottom: 56px !important;
}

/* Flechas pequeÃ±as posicionadas abajo a los lados de los puntos */
.ccl-otros-slider .swiper-button-prev,
.ccl-otros-slider .swiper-button-next {
    top: auto;
    bottom: 0;
    transform: none;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.85);
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    margin-top: 0;
}

.ccl-otros-slider > .swiper-button-prev { left: calc(50% - 46px); }
.ccl-otros-slider > .swiper-button-next { right: calc(50% - 46px); }

.ccl-otros-slider .swiper-button-prev::after,
.ccl-otros-slider .swiper-button-next::after {
    font-size: 12px;
    font-weight: 800;
    color: var(--color-primary);
}

/* Forzar visibilidad aunque Swiper marque disabled */
.ccl-otros-slider .swiper-button-prev.swiper-button-disabled,
.ccl-otros-slider .swiper-button-next.swiper-button-disabled {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.ccl-otros-slider .swiper-button-prev:hover,
.ccl-otros-slider .swiper-button-next:hover {
    background-color: var(--color-secondary);
}

.ccl-otros-slider .swiper-button-prev:hover::after,
.ccl-otros-slider .swiper-button-next:hover::after {
    color: #ffffff;
}

/* PaginaciÃ³n puntos â€” centrada entre las dos flechas */
.ccl-otros-slider .swiper-pagination {
    bottom: 8px;
}

.ccl-otros-slider .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: rgba(255,255,255,0.6);
    opacity: 1;
    transition: background 0.2s ease, transform 0.2s ease;
}

.ccl-otros-slider .swiper-pagination-bullet-active {
    background-color: var(--color-secondary);
    transform: scale(1.3);
}

/* Columna imagen que llena todo el alto del contenedor */
@media (max-width: 1024px) {
    .ccl-img-fill-col {
        display: none !important;
    }

    .ccl-mt-0 .wp-block-column {
        margin: 0 !important;
    }
}

.ccl-img-fill-col {
    padding: 0 !important;
    overflow: hidden !important;
}

.ccl-img-fill-col .wp-block-image {
    height: 100% !important;
    margin: 0 !important;
}

.ccl-img-fill-col .wp-block-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
}

/* Las columnas hermanas (centradas verticalmente) deben estirarse para igualar el alto
   de la columna de imagen en vez de quedarse a su propio alto y dejar blanco arriba/abajo */
.wp-block-columns:has(> .ccl-img-fill-col) > .wp-block-column.is-vertically-aligned-center {
    align-self: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* OCDE â€” Explorar Contenidos layout completo */
.ccl-explorar-wrapper {
    display: flex;
    gap: 0;
    margin: 0 -60px; /* contrarresta padding de section */
}

.ccl-explorar-left {
    width: 30%;
    padding: 40px 40px 40px 60px;
    flex-shrink: 0;
}

.ccl-explorar-right {
    flex: 1;
    background-color: var(--color-primary-dark);
    padding: 40px;
}

/* Documento item */
.ccl-doc-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    font-size: 14px;
    line-height: 1.5;
    color: #ffffff;
}

.ccl-doc-item i {
    color: var(--color-warning);
    flex-shrink: 0;
    margin-top: 2px;
    font-size: 16px;
}

.ccl-doc-item a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.ccl-doc-item a:hover {
    color: var(--color-warning) !important;
}

/* Publicaciones destacadas â€” fondo navy + patrÃ³n CCL (usa :has() para
   apuntar solo a la seccion que contiene las tarjetas .ccl-pub-card,
   sin depender de una clase extra en el bloque) */
.ccl-page-content-section:has(.ccl-pub-card) {
    position: relative;
    overflow: hidden;
    background-color: var(--color-primary);
    padding-top: 60px;
    padding-bottom: 60px;
}

.ccl-page-content-section:has(.ccl-pub-card)::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url('../../../../../wp-content/uploads/2025/09/PATRON-CCL-BLANCO.png');
    background-repeat: repeat;
    opacity: .1;
    pointer-events: none;
    z-index: 0;
}

.ccl-page-content-section:has(.ccl-pub-card) > * {
    position: relative;
    z-index: 1;
}

/* Barra decorativa bajo "Publicaciones destacadas": linea fina blanca +
   acento amarillo mas corto y grueso encima */
.ccl-page-content-section:has(.ccl-pub-card) h2.wp-block-heading {
    position: relative;
    padding-bottom: 20px;
}

.ccl-page-content-section:has(.ccl-pub-card) h2.wp-block-heading::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 380px;
    max-width: 90%;
    height: 1px;
    background-color: rgba(255, 255, 255, .3);
}

.ccl-page-content-section:has(.ccl-pub-card) h2.wp-block-heading::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-30px);
    width: 60px;
    height: 3px;
    background-color: var(--color-warning);
    z-index: 2;
}

/* Tablet â€” 2 columnas en vez del apilado a 1 columna de ancho completo
   que aplica la regla sitewide ".entry-content .wp-block-columns > .wp-block-column" */
@media (min-width: 601px) and (max-width: 1024px) {
    .ccl-page-content-section:has(.ccl-pub-card) .wp-block-columns {
        flex-wrap: wrap !important;
        row-gap: 24px !important;
    }

    .ccl-page-content-section:has(.ccl-pub-card) .wp-block-columns > .wp-block-column {
        flex-basis: calc(50% - 12px) !important;
        width: calc(50% - 12px) !important;
    }

    /* Si el total de tarjetas es impar, la ultima queda sola en su fila:
       que no se estire a lo ancho, pero sin centrarla */
    .ccl-page-content-section:has(.ccl-pub-card) .wp-block-columns > .wp-block-column:last-child:nth-child(odd) {
        flex-grow: 0 !important;
    }
}

/* Publicaciones cards â€” igual altura + botÃ³n alineado al fondo */
.ccl-pub-card {
    height: 100%;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
}

/* El grupo de contenido (tÃ­tulo + botÃ³n) tambiÃ©n debe ser flex column */
.ccl-pub-card > .wp-block-group:last-child {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

/* El botÃ³n se empuja al fondo */
.ccl-pub-card > .wp-block-group:last-child .wp-block-buttons {
    margin-top: auto !important;
}

/* ============================================================
   EXPLORAR CONTENIDOS â€” PatrÃ³n tabs izq/der (ccl-explorar-tabs.js)
   ============================================================ */

.ccl-explorar {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100%;
}

/* Columna izquierda â€” navegaciÃ³n */
.ccl-explorar-left-col {
    width: 50% !important;
    min-width: 220px;
    flex-shrink: 0 !important;
    padding: 40px !important;
    background-color: #ffffff !important;
    border-right: 2px solid var(--color-gray-light);
}

/* Columna derecha â€” paneles */
.ccl-explorar-right-col {
    flex: 1 !important;
    background-color: var(--color-primary-dark);
    padding: 30px 36px !important;
    position: relative;
    min-height: 300px;
}

/* Botones de navegaciÃ³n izquierda */
.ccl-explorar-btn {
    padding: 14px 0 !important;
    margin: 0 !important;
    margin-top: 20px !important;
    color: var(--color-gray-dark) !important;
    cursor: pointer !important;
    transition: color 0.2s ease;
    border-right: 3px solid transparent;
    margin-right: -2px !important;
}

.ccl-explorar-btn:hover {
    color: var(--color-primary-light) !important;
}

.ccl-explorar-btn.active {
    color: var(--color-primary-light) !important;
    font-weight: 600 !important;
    border-right-color: var(--color-primary-light) !important;
}

/* Paneles derecha â€” ocultos por defecto, JS activa */
.ccl-explorar-panel {
    display: none !important;
}

.ccl-explorar-panel.active {
    display: block !important;
}

/* Items de documento dentro del panel */
.ccl-explorar-panel .ccl-icon-box {
    color: #ffffff !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
}

.ccl-explorar-panel .ccl-icon-box i {
    flex-shrink: 0 !important;
    margin-top: 3px !important;
}

.ccl-explorar-panel .ccl-icon-box:last-child {
    border-bottom: none !important;
}

.ccl-explorar-panel .ccl-icon-box a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.ccl-explorar-panel .ccl-icon-box a:hover {
    color: #ffffff !important;
}

/* Editor: mostrar todos los paneles para poder editarlos */
.editor-styles-wrapper .ccl-explorar-panel {
    display: block !important;
    opacity: 0.6;
    border-left: 2px dashed var(--color-accent);
    margin-bottom: 8px;
}

.editor-styles-wrapper .ccl-explorar-panel.active {
    opacity: 1;
    border-left-color: var(--color-warning);
}

@media (max-width: 1024px) {
    .ccl-explorar {
        flex-direction: column !important;
    }

    .ccl-explorar-left-col {
        width: 100% !important;
        min-width: 0 !important;
        border-right: none !important;
        border-bottom: 2px solid var(--color-gray-light) !important;
        padding: 20px !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    /* Heading ocupa lÃ­nea completa â€” botones quedan debajo */
    .ccl-explorar-left-col .wp-block-heading {
        width: 100% !important;
        flex-basis: 100% !important;
        margin-bottom: 10px !important;
    }

    /* En mobile los botones en una sola fila */
    .ccl-explorar-btn {
        border-bottom: none !important;
        border-right: none !important;
        border: 2px solid var(--color-gray-light) !important;
        border-radius: 30px !important;
        padding: 6px 12px !important;
        font-size: 12px !important;
        margin: 0 !important;
        flex-shrink: 0 !important;
        white-space: nowrap !important;
    }

    .ccl-explorar-btn.active {
        background-color: var(--color-primary-light) !important;
        color: #ffffff !important;
        border-color: var(--color-primary-light) !important;
    }

    .ccl-explorar-right-col {
        width: 100% !important;
        padding: 24px 20px !important;
    }

    /* En mobile mostrar panel activo */
    .ccl-explorar-panel {
        display: none !important;
    }

    .ccl-explorar-panel.active {
        display: block !important;
    }
}


/* â”€â”€ Beneficios del Asociado â€” mÃ³dulo tabs â”€â”€ */
.ccl-module-outer .ccl-tabs-row{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.06);gap:10px}
.ccl-module-outer .ccl-tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:10px 6px;position:relative;border-bottom:5px solid transparent}
.ccl-module-outer .ccl-tab-btn figure,.ccl-module-outer .ccl-tab-btn img{margin:0!important}
.ccl-module-outer .ccl-tab-btn figure{width:55px!important;height:55px!important}
.ccl-module-outer .ccl-tab-btn img{width:55px!important;height:55px!important;max-width:55px!important;object-fit:contain}
.ccl-module-outer .ccl-tab-label{font-weight:600;line-height:1.25;color:#002a49;margin:0!important;font-size:14px;text-align:center}
.ccl-module-outer .ccl-tab-btn.active{border-bottom:5px solid #08407A}
.ccl-module-outer .ccl-tab-btn.active .ccl-tab-label{color:#08407A}
.ccl-module-outer .ccl-tab-panel{display:none}
.ccl-module-outer .ccl-panel-link{display:none}

/* En el editor: todo visible y editable */
.editor-styles-wrapper .ccl-module-outer .ccl-tab-panel{display:block!important}
.editor-styles-wrapper .ccl-module-outer .ccl-panel-link{display:flex!important;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eee}
.editor-styles-wrapper .ccl-module-outer .ccl-tabs-row{display:flex!important;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.06);gap:10px;margin-bottom:16px}
.editor-styles-wrapper .ccl-module-outer .ccl-tab-btn{flex:1;display:flex!important;flex-direction:column;align-items:center;gap:8px;padding:10px 6px;border-bottom:5px solid transparent}
.editor-styles-wrapper .ccl-module-outer .ccl-tab-panel{padding:16px;border:1px dashed #cce;border-radius:8px;margin-bottom:8px}
.editor-styles-wrapper .ccl-module-outer .ccl-tab-panel::before{content:attr(class);display:block;font-size:11px;color:#888;margin-bottom:8px;font-family:monospace}
.ccl-module-outer .ccl-panel-link img{width:28px!important;height:28px!important;max-width:28px!important}
.ccl-swiper{padding:20px 0 70px}
.ccl-card{background:#fff;border-radius:14px;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;height:90px;box-shadow:0 8px 20px rgba(0,0,0,.08);transition:all .25s ease;text-decoration:none;width:100%}
.ccl-content{display:flex;align-items:center;gap:14px;font-size:16px;font-weight:500;color:#2b2b2b}
.ccl-icon-sm{width:28px!important;height:28px!important;flex-shrink:0}
.ccl-arrow-lbl{color:#f5a623;font-size:20px}
.ccl-card:hover,.ccl-card.is-active{background:#004683}
.ccl-card:hover .ccl-content,.ccl-card:hover .ccl-arrow-lbl,.ccl-card.is-active .ccl-content,.ccl-card.is-active .ccl-arrow-lbl{color:#fff}
.ccl-card:hover .ccl-icon-sm,.ccl-card.is-active .ccl-icon-sm{filter:brightness(0) invert(1)}
.ccl-swiper .swiper-pagination{position:relative;bottom:0!important;margin-top:18px;text-align:center}
.ccl-swiper .swiper-pagination-bullet{background:#cfcfcf;opacity:1}
.ccl-swiper .swiper-pagination-bullet-active{background:#003a8f}
.ccl-swiper .swiper-button-prev,.ccl-swiper .swiper-button-next{width:32px;height:32px;/* position: relative; */border-radius:50%;background:#08407A;top:auto;bottom:0;margin-top: 50px;transform:none}
.ccl-swiper .swiper-button-prev::after,.ccl-swiper .swiper-button-next::after{font-size:11px;font-weight:800;color:#fff}
.ccl-swiper .swiper-button-prev{left:calc(50% - 46px)}
.ccl-swiper .swiper-button-next{right:calc(50% - 46px)}

/* â”€â”€ Beneficios del Asociado â€” sub-pÃ¡ginas â”€â”€ */

/* â”€â”€ CTA Banner final â€” mujer que desborda hacia arriba â”€â”€ */
.ccl-cta-woman-col {
    overflow: visible !important;
    align-self: flex-end !important;
}

.ccl-cta-woman-img {
    margin-bottom: 0 !important;
    margin-top: -40% !important; /* desborda 60px hacia arriba */
    margin-left: -10%;
}

.ccl-cta-woman-img img {
    display: block;
    width: auto;
    object-fit: contain;
}

/* El cover padre tambiÃ©n debe permitir overflow */
.wp-block-cover:has(.ccl-cta-woman-col) {
    overflow: visible !important;
}

/* Video con esquinas redondeadas */
.ccl-video-rounded { border-radius: 20px; overflow: hidden; }
.ccl-video-rounded .wp-block-embed__wrapper { border-radius: 20px; overflow: hidden; }
.ccl-video-rounded iframe { border-radius: 20px; display: block; }

/* Grid de beneficios con SVGs â€” flex centrado */
.ccl-beneficios-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px 0;
    margin-top: 8px;
}

.ccl-beneficio-item {
    width: 33.333%;
}

.ccl-beneficio-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 16px;
}

.ccl-beneficio-svg {
    width: 80px;
    height: 80px;
    object-fit: contain;
}

.ccl-beneficio-desc {
    font-size: 15px;
    color: var(--color-gray-dark);
    line-height: 1.5;
    margin: 0;
}

/* SecciÃ³n tabs del mÃ³dulo */
.ccl-beneficio-tabs {
    background: var(--color-bg-soft);
}

#ccl-module-wrapper .ccl-card {
    width: 100%;
}

@media (max-width: 1024px) {
    .ccl-beneficios-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    .ccl-beneficios-grid { grid-template-columns: 1fr; }
}

/* â”€â”€ Proyecto UE-AECID â€” Tabs Investigaciones â”€â”€ */
.ccl-inv-tab-nav {
    display: flex;
    gap: 0;
    border-bottom: 2px solid var(--color-gray-light);
    margin-bottom: 28px;
}

.ccl-inv-tab-btn {
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 500;
    color: var(--color-gray-dark);
    cursor: pointer;
    transition: color 0.2s, border-color 0.2s;
}

.ccl-inv-tab-btn.active {
    color: var(--color-primary-light);
    border-bottom-color: var(--color-primary-light);
    font-weight: 600;
}

.ccl-inv-panel { display: none; }
.ccl-inv-panel.active { display: block; }

.ccl-inv-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.ccl-inv-card {
    background: #EFF5F9;
    border: 2px solid #A7C0CE;
    border-radius: 22px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
}

.ccl-inv-card-top {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.ccl-inv-icon {
    width: 40px;
    min-width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    font-size: 18px;
    flex-shrink: 0;
}

.ccl-inv-title {
    font-size: 14px;
    color: var(--color-primary);
    font-weight: 400;
    margin: 0;
    line-height: 1.5;
}

.ccl-inv-download {
    font-size: 14px;
    color: var(--color-primary-light);
    font-weight: 500;
    text-decoration: none;
    align-self: flex-end;
}

.ccl-inv-download:hover { color: var(--color-secondary); }

@media (max-width: 1024px) {
    .ccl-inv-grid { grid-template-columns: 1fr; }
    .ccl-inv-tab-btn { padding: 10px 14px; font-size: 13px; }
}

.ccl-investigaciones .fal.fa-file-alt {
    width: 59px;
    height: 59px;
    min-width: 59px;
    border-radius: 50%;
    border: 1px solid #A7C0CE !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 27px;
}

.ccl-investigaciones p:has(> .fal.fa-file-alt) {
    display: flex;
    gap: 22px;
}

.ccl-investigaciones .wp-block-button__link .fa-arrow-right {
    display: inline-block;
    transition: transform 0.25s ease;
}

.ccl-investigaciones .wp-block-button__link:hover .fa-arrow-right {
    transform: translateX(6px);
}

/* â”€â”€ "Explora nuestras presentaciones": alinear botones Descargar
   a la misma altura sin importar cuantas lineas ocupe el texto â”€â”€ */
.post-299714 .ccl-h-100 {
    align-items: stretch !important;
}

.post-299714 .ccl-h-100 > .wp-block-column {
    display: flex !important;
    flex-direction: column;
    align-self: stretch !important;
}

.post-299714 .ccl-h-100 > .wp-block-column > .wp-block-group.is-vertical {
    height: 100%;
    justify-content: space-between;
}

/* â”€â”€ "Explora nuestras presentaciones": flecha se desplaza a la derecha
   al pasar el mouse sobre la tarjeta â”€â”€ */
.post-299714 .wp-block-columns:has(.ccl-h-100) > .wp-block-column:first-child p {
    transition: transform 0.25s ease;
}

.post-299714 .wp-block-columns:has(.ccl-h-100) > .wp-block-column:first-child:hover p {
    transform: translateX(6px);
}

/* â”€â”€ Noticias (prensa): imagenes con mismo alto/recorte y tarjetas
   con la misma altura sin importar cuanto texto tenga cada una â”€â”€ */
.post-299714 .wp-block-column:has(> .ccl-noticia-card) {
    display: flex;
}

.post-299714 .ccl-noticia-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    flex: 1;
}

.post-299714 .ccl-noticia-card figure.wp-block-image {
    aspect-ratio: 16 / 9;
    margin: 0;
    width: 100%;
}

.post-299714 .ccl-noticia-card figure.wp-block-image img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
}

.post-299714 .ccl-noticia-card h4 a,
.post-299714 .ccl-noticia-card h4 a:visited,
.post-299714 .ccl-noticia-card h4 a:hover,
.post-299714 .ccl-noticia-card h4 a:focus,
.post-299714 .ccl-noticia-card h4 a:active {
    color: #002A49 !important;
}

/* â”€â”€ Slider Â¿QuÃ© ofrece? â€” flechas de navegaciÃ³n â”€â”€ */
.ccl-que-ofrece-slider {
    position: relative;
    padding-bottom: 64px;
}

.ccl-que-ofrece-slider .swiper-slide {
    height: auto;
}

.ccl-que-ofrece-item {
    min-height: 60px;
    margin: 0 0 16px;
    line-height: 1.6;
}

.ccl-que-ofrece-slider .swiper-button-prev,
.ccl-que-ofrece-slider .swiper-button-next {
    position: relative;
    display: inline-flex;
    margin-top: 20px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: var(--color-primary-light);
    top: auto;
    bottom: 0;
    transform: none;
}

.ccl-que-ofrece-slider .swiper-button-prev {
    left: 50%;
    margin-left: -44px;
    right: auto;
}

.ccl-que-ofrece-slider .swiper-button-next {
    left: 50%;
    margin-left: 8px;
    right: auto;
}

.ccl-que-ofrece-slider .swiper-button-prev::after,
.ccl-que-ofrece-slider .swiper-button-next::after {
    font-size: 12px;
    font-weight: 800;
    color: #ffffff;
}

.ccl-que-ofrece-slider .swiper-button-prev:hover,
.ccl-que-ofrece-slider .swiper-button-next:hover {
    background-color: var(--color-secondary);
}

/* OCDE â€” Explorar Contenidos tabs estilo vertical */
.ccl-explorar-nav {
    flex-direction: column !important;
    border-bottom: none !important;
    border-right: 2px solid var(--color-gray-light);
    gap: 0 !important;
    margin-bottom: 0 !important;
}

.ccl-explorar-nav .ccl-tab-btn {
    text-align: left !important;
    justify-content: flex-start !important;
    border-bottom: none !important;
    border-right: 3px solid transparent;
    margin-right: -2px;
    padding: 14px 0 !important;
    font-size: 16px !important;
    color: var(--color-gray-dark) !important;
}

.ccl-explorar-nav .ccl-tab-btn.active,
.ccl-explorar-nav .ccl-tab-btn:hover {
    color: var(--color-primary-light) !important;
    border-right-color: var(--color-primary-light) !important;
    border-bottom-color: transparent !important;
}

/* Lista de documentos PDF */
.ccl-doc-links-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ccl-doc-links-list li {
    padding: 14px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

.ccl-doc-links-list li a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.ccl-doc-links-list li a:hover {
    color: var(--color-warning) !important;
}

/* Cover card con gradiente blanco sobre la imagen â€” de izquierda a transparente */
.ccl-cover-card-left {
    position: relative;
    overflow: hidden;
}

.ccl-cover-card-left::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
        #ffffff 0%,
        #ffffff 40%,
        rgba(255,255,255,0.5) 60%,
        transparent 80%
    );
    z-index: 1;
    pointer-events: none;
}

/* En mobile el card es angosto: el mismo gradiente por porcentaje deja
   muy poco fondo blanco detras del texto y se lee encima de la foto.
   Se ensancha la zona blanca para que el texto se siga leyendo bien. */
@media (max-width: 480px) {
    .ccl-cover-card-left::after {
        background: linear-gradient(to right,
            #ffffff 0%,
            #ffffff 50%,
            rgba(255,255,255,0.5) 96%,
            transparent 100%
        );
    }

    /* El texto tenia max-width:60% (pensado para desktop, donde a su lado
       hay una imagen ancha visible). En mobile eso dejaba un espacio en
       blanco vacio entre el texto y el borde del gradiente. Se ensancha
       para que ocupe el ancho util y no quede espacio muerto. */
    .ccl-cover-card-left .wp-block-cover__inner-container > .wp-block-group {
        max-width: 90% !important;
    }
}

/* Texto por encima del gradiente */
.ccl-cover-card-left .wp-block-cover__inner-container {
    position: relative;
    z-index: 2;
}

/* Texto en color oscuro sobre fondo blanco */
.ccl-cover-card-left .wp-block-cover__inner-container h4,
.ccl-cover-card-left .wp-block-cover__inner-container p:not(.has-white-color) {
    color: var(--color-primary-dark) ;
}

/* ==========================================================================
   UTILIDADES DE SCROLL-REVEAL (sitewide)
   ccl-animations.js agrega estas clases + "visible" via IntersectionObserver.
   Se usan en Canal de Denuncias (tarjetas que "se juntan") y en el Home
   (titulos con aparicion de subida, banner de asociados con desplazamiento).
   ========================================================================== */
.ccl-reveal-left,
.ccl-reveal-right,
.ccl-reveal-up {
    opacity: 0 !important;
    transition: opacity 0.7s ease, transform 0.7s ease !important;
}

.ccl-reveal-left {
    transform: translateX(-60px) !important;
}

.ccl-reveal-right {
    transform: translateX(60px) !important;
}

.ccl-reveal-up {
    transform: translateY(40px) !important;
}

.ccl-reveal-left.visible,
.ccl-reveal-right.visible,
.ccl-reveal-up.visible {
    opacity: 1 !important;
    transform: translate(0, 0) !important;
}

/* Imagen de card con cover â€” tapa fondos blancos */
.ccl-card-img-cover {
    overflow: hidden !important;
    max-height: 220px !important;
}

.ccl-card-img-cover img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
}

/* Flip cards de Beneficios del Asociado â€” border-radius solo en esta secciÃ³n */
#beneficios .ccl-flip-front,
#beneficios .ccl-flip-back {
    border-radius: 16px!important;
    overflow: hidden;
}

/* Columna "Potencia" â€” llenar toda la altura de la columna hermana */
#beneficios .are-vertically-aligned-stretch > .wp-block-column:first-child {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Icono SVG en flip cards de beneficios â€” clase especÃ­fica, no afecta otras pÃ¡ginas */
.ccl-flip-icon-benefit .wp-block-image,
.ccl-flip-icon-benefit figure {
    height: 50px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
}

.ccl-flip-icon-benefit .wp-block-image img,
.ccl-flip-icon-benefit figure img {
    height: 50px !important;
    width: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
}


/* AcordeÃ³n "Soy asociado CCL" â€” fondo accent (azul) */
.ccl-staff-acordeon-asociado summary {
    background-color: var(--color-accent) !important;
    color: #ffffff !important;
    font-size: 16px !important;
}

.ccl-staff-acordeon-asociado[open] summary {
    background-color: var(--color-accent) !important;
}

/* AcordeÃ³n "Quiero afiliarme" â€” fondo warning (amarillo) */
.ccl-staff-acordeon-afiliacion summary {
    background-color: var(--color-warning) !important;
    color: var(--color-primary-dark) !important;
    font-size: 16px !important;
}

.ccl-staff-acordeon-afiliacion[open] summary {
    background-color: var(--color-warning) !important;
}

/* AcordeÃ³n staff â€” doble clase para ganar a .ccl-styled-details â€” cerrado */
.ccl-styled-details.ccl-staff-acordeon-asociado,
.ccl-styled-details.ccl-staff-acordeon-afiliacion {
    background-color: transparent !important;
    border: 1px solid var(--color-primary-deep)!important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

/* AcordeÃ³n staff â€” abierto: solo esquinas superiores redondeadas */
.ccl-styled-details.ccl-staff-acordeon-asociado[open],
.ccl-styled-details.ccl-staff-acordeon-afiliacion[open] {
    border-radius: 12px 12px 0 0 !important;
}

/* Icono abrir/cerrar â€” blanco para asociado, primary-dark para afiliacion */
.ccl-staff-acordeon-asociado summary::after {
    color: #ffffff !important;
}

.ccl-staff-acordeon-afiliacion summary::after {
    color: var(--color-primary-dark) !important;
}

/* Items de contacto del staff â€” doble clase para ganar a .ccl-styled-details */
.ccl-styled-details .ccl-staff-contact-item,
.ccl-staff-acordeon-asociado .ccl-staff-contact-item,
.ccl-staff-acordeon-afiliacion .ccl-staff-contact-item {
    border-radius: 0 !important;
    padding: 14px 20px !important;
    margin-bottom: 8px !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
    background-color: var(--color-primary-deep) !important;
    background: var(--color-primary-deep) !important;
    border: 1px solid var(--color-primary-deep) !important;
}

/* WIFI Access Pages (CCL-GG / CCL-INVITADOS) */

.ccl-wifi-section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
}

.ccl-wifi-container {
    max-width: max-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.ccl-wifi-title {
    color: var(--color-primary) !important;
    font-weight: 600 !important;
    font-size: clamp(30px, 5vw, 48px) !important;
    margin-bottom: 60px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.ccl-wifi-row {
    display: flex;
    align-items: baseline;
    gap: 15px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

@media (max-width: 1024px) {
    .ccl-wifi-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
}

.ccl-wifi-label {
    color: var(--color-primary) !important;
    font-weight: 400 !important;
    font-size: clamp(28px, 4.5vw, 45px) !important;
    margin-bottom: 0 !important;
    white-space: nowrap;
}

.ccl-wifi-value {
    color: var(--color-accent) !important;
    font-weight: 800 !important;
    font-size: clamp(28px, 4.5vw, 45px) !important;
    line-height: 1.1 !important;
    margin-bottom: 0 !important;
    word-break: break-word;
}

.ccl-page-wifi .ccl-internal-hero-section {
    min-height: 400px;
}

/* ==========================================================================
   LANDING PAGES: ESTRUCTURA Y COMPONENTES (Eventos) - Clase RaÃ­z: .ccl-landing
   ========================================================================== */

/* ==========================================================================
   SISTEMA DE TABS CON PRECIOS (Pago Carnet ATA y similares)
   ========================================================================== */

/* NavegaciÃ³n de tabs */
.ccl-pricing-tabs .ccl-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 2px solid var(--color-gray-light);
    margin-bottom: 40px;
}

.ccl-pricing-tabs .ccl-tab-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 20px 24px;
    cursor: pointer !important;
    color: var(--color-gray-dark);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-decoration: none !important;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    transition: all 0.25s ease;
    flex: 1;
    text-align: center;
    font-family: var(--font-family-poppins);
}

.ccl-pricing-tabs .ccl-tab-btn i {
    font-size: 26px;
    color: var(--color-gray-dark);
    transition: color 0.25s ease;
}

/* Estados activo/hover â€” solo pricing tabs */
.ccl-pricing-tabs .ccl-tab-btn.active,
.ccl-pricing-tabs .ccl-tab-btn:hover {
    color: var(--color-primary-light);
    border-bottom-color: var(--color-primary-light);
    text-decoration: none !important;
}

.ccl-pricing-tabs .ccl-tab-btn.active i,
.ccl-pricing-tabs .ccl-tab-btn:hover i {
    color: var(--color-primary-light);
}

/* BotÃ³n dentro del pricing tab â€” solo afecta .ccl-pricing-tabs */
.ccl-pricing-tabs .ccl-tab-btn .wp-block-buttons,
.ccl-pricing-tabs .ccl-tab-btn .wp-block-button {
    margin: 0 !important;
}

.ccl-pricing-tabs .ccl-tab-btn .wp-block-button__link::after {
    display: none !important;
}

.ccl-pricing-tabs .ccl-tab-btn.active .wp-block-button__link {
    color: inherit !important;
}

.ccl-pricing-tabs .ccl-tab-btn .wp-block-button__link {
    background: transparent !important;
    border: none !important;
    color: inherit !important;
    padding: 0 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: var(--font-family-poppins) !important;
}

.ccl-pricing-tabs .ccl-tab-btn .wp-block-button__link:hover {
    background: transparent !important;
    color: inherit !important;
    transform: none !important;
}

/* Ocultar el pÃ¡rrafo .ccl-tab-arrow si quedÃ³ en el HTML */
.ccl-tab-arrow { display: none !important; }

/* Panels */
.ccl-tab-panel { display: none; }
.ccl-tab-panel.active { display: block; }

/* Pricing Cards ATA */
.ccl-pricing-card-ata {
    background: #ffffff;
    border-radius: 22px;
    padding: 30px 25px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    display: flex !important;
    flex-direction: column !important;
    height: 100%;
}

.ccl-price-amount {
    font-size: clamp(42px, 5vw, 65px) !important;
    font-weight: 700 !important;
    color: var(--color-primary-light) !important;
    line-height: 1 !important;
    margin-bottom: 4px !important;
}

.ccl-price-igv {
    color: var(--color-warning) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin-bottom: 16px !important;
}

.ccl-price-desc {
    color: var(--color-gray-dark) !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    flex-grow: 1;
    margin-bottom: 0px !important;
    padding-left: 22px !important;
    position: relative !important;
}

.ccl-price-desc::before {
    content: '\f00c'; /* fa-check */
    font-family: 'Font Awesome 5 Pro';
    font-weight: 300; /* fal = light */
    font-size: 11px;
    color: var(--color-accent);
    position: absolute;
    left: 0;
    top: 3px;
}

.ccl-price-btn .wp-block-button__link {
    background-color: var(--color-warning) !important;
    color: var(--color-primary-dark) !important;
    border: none !important;
    border-radius: 56px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    width: 100% !important;
    text-align: center !important;
    transition: opacity 0.2s ease !important;
}

.ccl-price-btn .wp-block-button__link:hover {
    opacity: 0.85;
    transform: none !important;
}

/* Grid de cards: contenedor gris suave */
.ccl-pricing-grid-wrapper {
    background-color: var(--color-gray-light);
    border-radius: 22px;
    padding: 30px;
}

@media (max-width: 1024px) {
    .ccl-pricing-tabs .ccl-tab-btn { padding: 14px 10px; font-size: 10px; }
    .ccl-pricing-tabs .ccl-tab-btn i { font-size: 20px; }
    .ccl-pricing-grid-wrapper { padding: 16px; }
}

/* 1. Estilos de Checkmark (Principales actividades) */
.ccl-landing .is-style-checkmark {
    list-style: none;
    padding-left: 0;
}

.ccl-landing .is-style-checkmark li {
    position: relative;
    padding-left: 35px;
    margin-bottom: 15px;
    font-size: 18px;
    color: var(--color-gray-dark);
    line-height: 1.5;
}

.ccl-landing .is-style-checkmark li::before {
    content: "\f109";
    /* Flaticon check-circle */
    font-family: "Flaticon";
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--color-accent);
    font-size: 23px;
}



.ccl-landing .ccl-landing-profile-img img {
    border-radius: 30px;
    transition: transform 0.3s ease-in-out;
    box-shadow: -6px 6px 8px rgba(0, 0, 0, 0.1);
}

.ccl-landing .ccl-landing-profile-img:hover img {
    transform: translateY(-6px);
}

.ccl-landing .ccl-landing-profile-name {
    color: var(--color-primary-dark);
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 1.5px;
    margin-top: 15px;
    margin-bottom: 5px;
}

.ccl-landing .ccl-landing-profile-role {
    color: var(--color-secondary);
    font-size: 13px;
    font-weight: 500;
}


/*  Keynote Speakers / Perfiles de Landing */
.ccl-landing.ccl-tema-purple .ccl-landing-profile-name,
.ccl-landing.ccl-tema-purple p,
.ccl-landing.ccl-tema-purple h1 {
    color: #392869 !important;
}

.ccl-landing.ccl-tema-purple .ccl-landing-profile-role {
    color: #703892 !important;
}


.ccl-landing .ccl-profile-img img {
    aspect-ratio: auto;

}

/* 3. Glassmorphism & Legacy Content Overlays */
.ccl-landing .ccl-glass-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 40px !important;
    border-radius: 24px;
}

/* 4. SecciÃ³n de Aliados en Grilla con Bordes */
.ccl-landing .ccl-allies-grid-wrapper {
    border-top: 1px solid #BFC7D1;
    border-left: 1px solid #BFC7D1;
    margin-top: 30px;
}

/* Variante: Sin bordes exteriores en el tÃ­tulo (cuando es el primer bloque) */
.ccl-landing .ccl-allies-grid-wrapper.ccl-allies-title-borderless {
    border-top: none;
    border-left: none;
}

/* AÃ±adir bordes superiores e izquierdos a las celdas de logos si el wrapper es borderless */
.ccl-landing .ccl-allies-grid-wrapper.ccl-allies-title-borderless .ccl-allies-cell:not(.ccl-allies-title-cell) {
    border-top: 1px solid #BFC7D1;
    border-left: 1px solid #BFC7D1;
}

/* ExcepciÃ³n: los logos que estÃ¡n a la derecha del tÃ­tulo en la primera fila necesitan borde superior */
.ccl-landing .ccl-allies-grid-wrapper.ccl-allies-title-borderless .ccl-allies-row:first-child .ccl-allies-cell {
    border-top: 1px solid #BFC7D1;
}

/* ExcepciÃ³n: el tÃ­tulo NO debe tener bordes superiores ni izquierdos en esta variante */
.ccl-landing .ccl-allies-grid-wrapper.ccl-allies-title-borderless .ccl-allies-title-cell {
    border-top: none !important;
    border-left: none !important;
    padding-left: 15px !important;
    /* Reset padding lateral */
}

.ccl-landing .ccl-allies-title-cell {
    justify-content: start !important;
}

.ccl-landing .ccl-allies-title-cell h2 {
    font-size: 28px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    line-height: 1.2;
}

.ccl-landing .ccl-allies-row.wp-block-columns {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    gap: 0 !important;
}

/* Desktop: celdas vacÃ­as sin bordes â€” doble clase para ganar especificidad sobre .ccl-allies-cell */
.ccl-landing .ccl-allies-cell.ccl-allies-cell-empty {
    border-right: none !important;
    border-bottom: none !important;
}

/* Mobile: ocultar celdas vacÃ­as + bordes exteriores del wrapper */
@media (max-width: 1024px) {
    .ccl-landing .ccl-allies-cell.ccl-allies-cell-empty {
        display: none !important;
    }

    .ccl-landing .ccl-allies-grid-wrapper {
        border-top: none !important;
        border-left: none !important;
    }
}

.ccl-landing .ccl-allies-cell {
    border-right: 1px solid #BFC7D1;
    border-bottom: 1px solid #BFC7D1;
    padding: 30px 15px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    min-height: 120px;
}

.ccl-landing .ccl-allies-cell img {
    max-height: 45px;
    width: auto !important;
    object-fit: contain;
    transition: all 0.3s ease;
    filter: none;
    opacity: 1;
}

/* Clase para activar el efecto de logos en gris que se colorean al pasar el mouse */
.ccl-landing .ccl-allies-cell.ccl-allies-grayscale img {
    filter: grayscale(100%);
    opacity: 0.7;
}

.ccl-landing .ccl-allies-cell.ccl-allies-grayscale:hover img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05);
}

/* 5. Componentes de Hero de Landing */
.ccl-landing .ccl-hero-content {
    text-align: center;
    padding: 100px 0;
}

.ccl-landing .ccl-hero-logo {
    max-width: 520px;
    margin: 0 auto 40px;
}

@media (max-width: 1024px) {
    .ccl-landing .is-style-checkmark li {
        font-size: 16px;
    }

    .ccl-landing .ccl-allies-cell {
        flex-basis: 100% !important;
        width: 100% !important;
        border: 1px solid #BFC7D1;
        margin-bottom: 10px !important;
        border-radius: 0 !important;
        /* Eliminado redondeado en mÃ³vil */
    }

    /* Variante: El tÃ­tulo en mÃ³vil sin bordes y sin redondeado */
    .ccl-landing .ccl-allies-title-cell {
        border: none !important;
        border-radius: 0 !important;
        margin-bottom: 0 !important;
        /* Pegado a los logos */
        padding-bottom: 20px !important;
    }
}



.ccl-landing .ccl-stat-circle {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.ccl-landing .ccl-stat-icon-img {
    text-align: center;
}

.ccl-landing .ccl-stat-icon-img img {
    display: block;
    margin: 0 auto;
}

.ccl-landing .ccl-stat-circle {
    box-shadow: none;
}


/* ==========================================================================
   PÃGINA: PREMIACIONES (Custom Styles)
   ========================================================================== */
/* Videos con borde redondeado */
.ccl-page-premiaciones .wp-block-embed-youtube iframe,
.ccl-page-premiaciones .wp-block-embed-youtube video,
.ccl-page-premiaciones .wp-block-video video {
    border-radius: 33px !important;
    overflow: hidden;
}

/* Cajas de Texto especÃ­ficas (Grupo Recto) */
.ccl-page-premiaciones .wp-block-columns .wp-block-column .wp-block-group {
    border: 2px solid #D1D5DB !important;
    /* Gris suave */
    padding: 40px !important;
    border-radius: 0 !important;
    /* Sin redondeado */
}

@media (max-width: 1024px) {
    .ccl-page-premiaciones .wp-block-columns .wp-block-column .wp-block-group {
        padding: 20px !important;
    }

    /* El stack nativo de Gutenberg para wp:columns solo pasa a columna a los
       781px del core de WordPress; forzamos el mismo quiebre de 1024px que
       usa el resto del sitio para que el contenido baje antes. */
    .ccl-page-premiaciones .wp-block-columns {
        flex-wrap: wrap !important;
    }

    .ccl-page-premiaciones .wp-block-columns > .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
        padding: 0 !important;
    }
}

/* Botones Warning con Efecto de Brillo */
.ccl-page-premiaciones .wp-block-button__link {
    background-color: var(--color-warning) !important;
    color: var(--color-primary) !important;
    border-radius: 56px !important;
    text-transform: none !important;
    font-weight: 400 !important;
    border: none !important;
    position: relative;
    overflow: hidden;
    /* Necesario para el brillo */
    z-index: 1;
}

.ccl-page-premiaciones .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
}

.ccl-page-premiaciones .wp-block-button__link:hover::after {
    animation: ccl-shine 0.75s forwards;
}

@keyframes ccl-shine {
    100% {
        left: 150%;
    }
}

.ccl-page-premiaciones .wp-block-button__link:hover,
.ccl-page-premiaciones .wp-block-button__link:focus,
.ccl-page-premiaciones .wp-block-button__link:active {
    background-color: var(--color-warning) !important;
    color: var(--color-primary) !important;
    transform: none !important;
    box-shadow: none !important;
}



/* Boletines Repository */
.ccl-bulletins-filter-section {
    background: #f8f9fa;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

.ccl-filter-form .filter-group select,
.ccl-filter-form .filter-group input {
    border: 1px solid #e0e0e0;
    transition: border-color 0.3s ease;
}

.ccl-filter-form .filter-group select:focus,
.ccl-filter-form .filter-group input:focus {
    border-color: var(--color-primary);
    outline: none;
}

#ccl-bulletins-results {
    transition: opacity 0.3s ease;
}

#ccl-bulletins-results .ccl-download-item {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 15px;
    border: 1px solid #f0f0f0;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#ccl-bulletins-results .ccl-download-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}


/* ==========================================================================
   Photonic Plugin - Estilos de TÃ­tulos en Albumnes (MÃXIMA COMPATIBILIDAD)
   ========================================================================== */

/* 1. Asegurar contenedores */
.photonic-level-1-container,
.photonic-thumb,
.photonic-thumb a,
.photonic-panel figure,
.photonic-random-layout a {
    position: relative !important;
    overflow: hidden !important;
    display: block !important;
}

/* 2. Forzar markup de Photonic si existe */
.photonic-title-info,
figcaption.photonic-title-info,
.photonic-title {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: rgba(0, 0, 0, 0.8) !important;
    color: #ffffff !important;
    padding: 10px 5px !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    height: auto !important;
    min-height: 35px !important;
    z-index: 100 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-align: center !important;
    line-height: 1.2 !important;
    pointer-events: none !important;
}

/* 3. TRUCO FINAL: Si Photonic no genera markup, lo sacamos del atributo 'title' o 'data-title' */
.photonic-thumb a:after,
.photonic-level-1-container a:after,
.photonic-random-layout a:after {
    content: attr(title);
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: rgba(0, 0, 0, 0.8) !important;
    color: #fff !important;
    padding: 10px 5px !important;
    font-size: 14px !important;
    text-align: center !important;
    z-index: 90 !important;
    display: block !important;
    min-height: 35px !important;
}

/* Si existe data-title y el title estÃ¡ vacÃ­o (comÃºn en Photonic) */
.photonic-thumb a[data-title]:not([title]):after,
.photonic-level-1-container a[data-title]:not([title]):after {
    content: attr(data-title) !important;
}

/* Evitar duplicados si ambos existen */
.photonic-title-info+a:after,
.photonic-title+a:after {
    display: none !important;
}

/* Asegurar que la imagen se vea bien */
.photonic-thumb img,
.photonic-level-1-container img {
    margin-bottom: 0 !important;
}


/* ==========================================================================
   Agile Store Locator - MASTER BRANDING OVERRIDE (Ultra Specific - Level 3)
   ========================================================================== */

/* 0. Forzar Ancho y Espaciado del Contenedor Principal con MÃ¡xima Prioridad */
html body #asl-storelocator.container.storelocator-main.asl-p-cont {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    background-image: none !important;
    /* Eliminar posibles fondos de esquema */
}

/* 1. FONDOS CORPORATIVOS (Botones, Marcadores, Dropdowns, Flechas) - SOBRECADA ESQUEMA */
html body #asl-storelocator.asl-p-cont .btn-asl,
html body #asl-storelocator.asl-p-cont .asl-btn-main,
html body #asl-storelocator.asl-p-cont .Num_of_store,
html body #asl-storelocator.asl-p-cont .panel-cont button,
html body #asl-storelocator.asl-p-cont .asl-search-btn,
html body #asl-storelocator.asl-p-cont .search-btn,
html body #asl-storelocator.asl-p-cont .asl-arrow-down,
html body #asl-storelocator.asl-p-cont .col-xs-12.search_filter p:last-child>span,
html body #asl-storelocator.asl-p-cont .col-xs-12.search_filter .asl-store-search>span,
html body #asl-storelocator.asl-p-cont .btn-red,
html body #asl-storelocator.asl-p-cont #asl-geolocation-agile-modal .btn.btn-default,
html body #asl-storelocator.asl-p-cont .Buttons-container .btn,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .panel-cont button,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .asl-search-btn,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .Num_of_store,
html body #asl-storelocator.asl-p-cont .adropdown-menu>.active>a,
html body #asl-storelocator.asl-p-cont .adropdown-menu>.active>a:hover,
html body #asl-storelocator.asl-p-cont .adropdown-menu>.active>a:focus,
html body #asl-storelocator.asl-p-cont .adropdown-menu>li>a:hover {
    background-color: var(--color-accent) !important;
    background: var(--color-accent) !important;
    color: #ffffff !important;
    border-color: var(--color-accent) !important;
    box-shadow: none !important;
}

html body #asl-storelocator.asl-p-cont .btn-asl:hover,
html body #asl-storelocator.asl-p-cont .asl-btn-main:hover,
html body #asl-storelocator.asl-p-cont .panel-cont button:hover,
html body #asl-storelocator.asl-p-cont #asl-geolocation-agile-modal .btn.btn-default:hover,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .panel-cont button:hover {
    background-color: var(--color-primary) !important;
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

/* 2. TEXTOS Y TÃTULOS (Sedes, Listado, Popups) */
html body #asl-storelocator.asl-p-cont .sl-item h3,
html body #asl-storelocator.asl-p-cont .sl-item h4,
html body #asl-storelocator.asl-p-cont .store-locator h4,
html body #asl-storelocator.asl-p-cont .item-title,
html body #asl-storelocator.asl-p-cont .asl-infowindow h3,
html body #asl-storelocator.asl-p-cont .p-title,
html body #asl-storelocator.asl-p-cont .search_filter>p:first-child,
html body #asl-storelocator.asl-p-cont .col-xs-12.search_filter p:last-child>span label,
html body #asl-storelocator.asl-p-cont .asl-location-address i,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .sl-item h4,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .sl-item h3 {
    color: var(--color-primary-dark) !important;
    font-weight: 600 !important;
}

html body #asl-storelocator.asl-p-cont .sl-item .dist-box {
    color: var(--color-accent) !important;
}

/* 3. BORDES Y ELEMENTOS ACTIVOS */
html body #asl-storelocator.asl-p-cont .sl-item.active,
html body #asl-storelocator.asl-p-cont [class*="asl-bg-"] .sl-item.active {
    border-left: 6px solid var(--color-warning) !important;
    background-color: var(--color-bg-soft) !important;
}

html body #asl-storelocator.asl-p-cont .asl-search-cntrl,
html body #asl-storelocator.asl-p-cont .form-control {
    border: 1px solid var(--color-gray-light) !important;
    border-radius: 8px !important;
}

/* 4. INTERFAZ DE CARGA Y MODALES */
html body #asl-storelocator.asl-p-cont .asl-overlay {
    background: rgba(255, 255, 255, 0.95) !important;
}

/* 5. ELIMINACIÃ“N NUCLEAR DE ROJOS/ESQUEMAS */
html body #asl-storelocator[class*="asl-bg-"] [style*="color: #0073aa"],
html body #asl-storelocator[class*="asl-bg-"] [style*="background-color: #0073aa"],
html body #asl-storelocator[class*="asl-bg-"] [style*="background: #0073aa"] {
    color: var(--color-primary-dark) !important;
    background: var(--color-accent) !important;
    background-color: var(--color-accent) !important;
}

html body #asl-storelocator.asl-p-cont .search_filter i {
    color: var(--color-accent) !important;
}

/* ── Banner beneficios — mujer y margin ── */
:root { --ccl-woman-overflow: 90px; }
.ccl-banner-beneficios { margin-top: var(--ccl-woman-overflow); }
.ccl-cta-woman-img {
    margin-top: calc(-1 * var(--ccl-woman-overflow)) !important;
    margin-bottom: 0 !important;
}
@media(max-width:1200px){
    .ccl-banner-beneficios { margin-top: 0; }
    .ccl-cta-woman-img { margin-top: 0 !important; }
    .ccl-cta-woman-col { display: none !important; }
    .ccl-cta-woman-col + .wp-block-column { flex-basis: 100% !important; text-align: center; padding-left: 0 !important; }
    .ccl-cta-woman-col + .wp-block-column .wp-block-buttons { justify-content: center; }
}

/* ── Swiper nav row (flechas + puntos centrados) ── */
.ccl-swiper{padding:20px 0 0;display:flex;flex-direction:column}
.ccl-swiper .swiper-wrapper{order:0}
.ccl-swiper .swiper-pagination{order:1;position:relative!important;bottom:auto!important;margin-top:16px}
.ccl-swiper-nav-row{display:flex!important;align-items:center;justify-content:center;gap:8px;margin-top:12px;width:100%}
.ccl-swiper-nav-row .swiper-pagination{position:relative!important;width:auto!important;bottom:auto!important}
.ccl-swiper .swiper-button-prev,.ccl-swiper .swiper-button-next{position:relative;width:32px;height:32px;border-radius:50%;background:#08407A;top:auto;bottom:auto;left:auto;right:auto;transform:none;flex-shrink:0;margin-top:16px}
.ccl-swiper .swiper-button-prev::after,.ccl-swiper .swiper-button-next::after{font-size:11px;font-weight:800;color:#fff}
.ccl-swiper .swiper-button-disabled{opacity:0.3!important;pointer-events:none}

/* ── Beneficio item — override is-layout-flow ── */
.ccl-beneficios-grid,
.ccl-beneficios-grid.is-layout-flow,
.ccl-beneficios-grid.wp-block-group-is-layout-flow {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 32px 0 !important;
    margin-top: 8px !important;
}
.ccl-beneficio-item,
.ccl-beneficio-item.is-layout-flow,
.ccl-beneficio-item.wp-block-group-is-layout-flow {
    width: 33.333% !important;
    margin-top: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 16px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}
.ccl-beneficio-item > *,
.ccl-beneficio-item.is-layout-flow > * {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}
.ccl-beneficio-item .wp-block-image,
.ccl-beneficio-item figure {
    width: 80px !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
    margin: 0 auto !important;
}
.ccl-beneficio-svg,
.ccl-beneficio-item img {
    width: 80px !important;
    height: 80px !important;
    max-width: 80px !important;
    object-fit: contain;
}
@media (max-width: 1024px) {
    .ccl-beneficio-item,
    .ccl-beneficio-item.is-layout-flow,
    .ccl-beneficio-item.wp-block-group-is-layout-flow { width: 50% !important; }
}

@media(max-width:1024px){
  .ccl-module-outer .ccl-tabs-row{gap:4px;padding:12px 8px}
  .ccl-module-outer .ccl-tab-btn{padding:8px 4px}
  .ccl-module-outer .ccl-tab-label{font-size:11px}
  .ccl-module-outer .ccl-tab-btn figure,.ccl-module-outer .ccl-tab-btn img{width:40px!important;height:40px!important;max-width:40px!important}
}

@media(max-width:1024px){
  .ccl-module-outer .ccl-tabs-row{flex-wrap:wrap;justify-content:center;gap:8px;padding:12px}
  .ccl-module-outer .ccl-tab-btn{flex:0 0 calc(33.333% - 8px);max-width:calc(33.333% - 8px);padding:10px 6px}
  .ccl-module-outer .ccl-tab-btn figure,.ccl-module-outer .ccl-tab-btn img{width:36px!important;height:36px!important;max-width:36px!important}
  .ccl-module-outer .ccl-tab-label{font-size:12px}
}
.wp-block-group[class*="ccl-events-section"] { padding: 0 !important }
/* ── Sección Asociado CCL ── */
.ccl-asociado-section {
    overflow: hidden;
    border-radius: 20px !important;
}

.ccl-asociado-img-col {
    align-self: flex-end !important;
}

.ccl-asociado-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

.ccl-asociado-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Lista con checkmarks amarillos */
.ccl-check-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ccl-check-list li {
    color: #fff !important;
    font-size: 15px !important;
    padding: 4px 0 4px 28px !important;
    position: relative !important;
}

.ccl-check-list li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--color-warning) !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

/* Botones outline blancos */
.ccl-btn-asociado .wp-block-button__link {
    background: #ffffff !important;
    border: none !important;
    color: var(--color-primary) !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    transition: all 0.3s ease !important;
}

.ccl-btn-asociado .wp-block-button__link:hover {
    background: #ffffff !important;
    color: var(--color-primary) !important;
}

@media (max-width: 1200px) {
    .ccl-asociado-img-col { display: none !important; }
    .ccl-asociado-content { flex-basis: 100% !important; }
}

@media (max-width: 1024px) {
    .ccl-asociado-content { padding: 30px 20px !important; }
}


/* ── Reconocimiento de Socios: Grid de logos ── */
.ccl-socio-logo {
    margin: 0 !important;
    flex-shrink: 0;
    line-height: 0;
    border: 1px solid #e0e4ea;
    border-radius: 12px;
    background: #ffffff;
    padding: 16px 20px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    min-height: 90px;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.ccl-socio-logo:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.ccl-socio-logo img {
    max-width: 140px !important;
    max-height: 60px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    margin: 0 !important;
}


/* ─────────────────────────────────────────────────────────────────────────────
   IEDEP — Instituto de Economía y Desarrollo Empresarial
   ───────────────────────────────────────────────────────────────────────────── */

/* Padding uniforme de secciones */
.ccl-iedep-presentacion,
.ccl-iedep-quovadis-section,
.ccl-iedep-ecolens-section,
.ccl-iedep-radar-section,
.ccl-iedep-dashboard-section,
.ccl-iedep-eventos-section,
.ccl-iedep-informe-section,
.ccl-iedep-contact-section {
    padding-top: 60px;
    padding-bottom: 60px;
}
.wp-block-group.ccl-iedep-radar-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ── Badge pill sobre secciones ── */
.ccl-iedep-badge-wrap {
    text-align: center;
    margin-bottom: 16px;
}
.ccl-iedep-section-badge {
    display: inline-block;
    background: #2D4B71;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 13px 29px 13px 29px !important;
    border-radius: 20px 20px 20px 20px !important;
}
.ccl-iedep-section-title {
    text-align: center;
}

.ccl-op-section-badge {
    display: inline-block;
    background: #002A49;
    color: #fff;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 10px 10px 10px 10px !important;
    border-radius: 0;
}

/* ── Servicios Nav — grid 3 columnas, texto izquierda / icono círculo derecha ── */
.ccl-iedep-services-nav {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px;
}
.ccl-iedep-service-item {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 25px 30px 20px 30px;
    background: #F0F3F7;
    border: none;
    border-radius: 8px;
    color: var(--color-primary, #092442);
    text-decoration: none;
    font-size: 16px;
    font-weight: 400;
}
.ccl-iedep-service-item:hover {
    background: #F0F3F7;
    color: var(--color-primary, #092442);
}
.ccl-iedep-service-item > p:first-child {
    flex: 1;
    line-height: 1.3;
    margin: 0;
}
.ccl-iedep-service-item > p:first-child a {
    color: var(--color-primary, #092442);
    text-decoration: none;
    font-size: clamp(14.25px, 0.890625rem + ((1vw - 3.2px) * 0.37109375), 19px);
    font-weight: 400;
    -webkit-text-stroke-color: #37424C;
}
.ccl-iedep-service-item:hover > p:first-child a {
    color: var(--color-primary, #092442);
}
.ccl-iedep-service-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    border: 1.5px solid var(--color-accent, #0074C5);
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--color-accent, #0074C5);
    flex-shrink: 0;
    margin: 0 !important;
}

/* ── Quo Vadis — PDF list lateral ── */
.ccl-iedep-qv-pdfs {
    padding: 0;
}
.ccl-iedep-qv-year {
    font-size: 14px;
    font-weight: 700;
    color: var(--color-primary, #092442);
    margin: 0 0 12px !important;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.ccl-iedep-qv-pdf-row {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px !important;
    font-size: 13px;
    color: var(--color-gray-dark, #4b535d);
}
.ccl-iedep-qv-pdf-row > p:not(.ccl-iedep-qv-icon) {
    margin: 0 !important;
    font-size: 13px;
    color: var(--color-gray-dark, #4b535d);
    line-height: 1.5;
}
.ccl-iedep-qv-icon {
    color: var(--color-warning, #ffc325) !important;
    font-size: 18px;
    flex-shrink: 0;
    margin: 1px 0 0 !important;
    line-height: 1;
}
/* wrapper sin fondo — solo el <a> interior lo tiene */
.ccl-iedep-qv-btn {
    background: none !important;
    margin-top: 12px;
}
.ccl-iedep-qv-btn .wp-block-button__link {
    background: var(--color-accent, #0074C5) !important;
    color: #fff !important;
    padding: 10px 20px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: background .2s;
    border: none;
    box-shadow: none;
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.ccl-iedep-qv-btn .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
    pointer-events: none;
}
.ccl-iedep-qv-btn .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}
.ccl-iedep-qv-btn .wp-block-button__link:hover {
    background: var(--color-accent, #0074C5) !important;
    color: #fff !important;
}

/* ── EcoLens — tarjetas con borde ── */
.ccl-iedep-ecolens-section .wp-block-column {
    border-style: solid !important;
    border-width: 1px 1px 0px 1px !important;
    border-color: #D0D5D7 !important;
    border-radius: 0 !important;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.ccl-iedep-ecolens-img {
    margin: 0 !important;
}
.ccl-iedep-ecolens-img img {
    border-radius: 0 !important;
    margin-bottom: 0 !important;
    display: block;
    width: 100%;
    object-fit: cover;
}
.ccl-iedep-ecolens-section .wp-block-column > .wp-block-heading,
.ccl-iedep-ecolens-section .wp-block-column > .has-text-color {
    padding-left: 20px;
    padding-right: 20px;
}
.ccl-iedep-ecolens-section .wp-block-column > .wp-block-heading {
    padding-top: 16px;
    text-align: center;
}
.ccl-iedep-ecolens-section .wp-block-column > .has-text-color {
    text-align: center;
}

/* ── PDF List (EcoLens accordion) ── */
.ccl-iedep-pdf-list {
    list-style: none !important;
    padding: 8px 20px 0 20px !important;
    margin: 0 !important;
    border-top: 1px solid #D0D5D7;
}
.ccl-iedep-pdf-list li {
    padding: 5px 0 0;
}
.ccl-iedep-pdf-list li:last-child {
    padding-bottom: 20px;
}
.ccl-iedep-pdf-list a {
    color: inherit;
    font-size: 15px;
    font-weight: 400;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
}
.ccl-iedep-pdf-list a i {
    color: #00A4FF;
    font-size: 16px;
    flex-shrink: 0;
}
.ccl-iedep-pdf-list a:hover,
.ccl-iedep-pdf-list a:active {
    color: #00A4FF;
    text-decoration: underline;
}

/* ── Accordion summary — "Ver más >" ── */
.ccl-iedep-pdf-accordion {
    border-top: 1px solid #D0D5D7;
    border-bottom: 1px solid #D0D5D7;
    padding-bottom: 16px;
}
.ccl-iedep-pdf-accordion summary {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #254A65;
    cursor: pointer;
    padding: 12px 20px;
    font-size: 16px;
    font-weight: normal;
}
.ccl-iedep-pdf-accordion summary::-webkit-details-marker { display: none; }
.ccl-iedep-pdf-accordion summary::after {
    content: "\f32d"; /* fa-caret-circle-down */
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    color: var(--color-accent, #0074C5);
    line-height: 1;
}
.ccl-iedep-pdf-accordion[open] summary::after {
    content: "\f331"; /* fa-caret-circle-up */
}

/* ── Proyecciones — banner horizontal oscuro ── */
.ccl-iedep-proyecciones-banner {
    background: var(--color-primary-dark, #051c2c);
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 32px 60px;
    flex-wrap: wrap;
}
.ccl-iedep-proy-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #fff;
    flex-shrink: 0;
}
.ccl-iedep-proy-title {
    flex: 1;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    margin: 0;
}
.ccl-iedep-proy-btn {
    background: var(--color-warning, #ffc325);
    color: var(--color-primary-dark, #051c2c);
    padding: 12px 28px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s;
}
.ccl-iedep-proy-btn:hover {
    background: var(--color-warning-alt, #FFCB41);
    color: var(--color-primary-dark, #051c2c);
}

/* ── Radar — layout lateral + carrusel de cards ── */
.ccl-iedep-radar-layout {
    display: grid !important;
    grid-template-columns: 29.64% 1fr !important;
    gap: 0 !important;
    min-height: 320px;
    flex-wrap: unset !important;
    align-items: stretch;
}
.ccl-iedep-radar-panel {
    background: var(--color-primary-dark, #051c2c);
    color: #fff;
    padding: 40px 32px;
    border-radius: 8px 0 0 8px;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
}
.ccl-iedep-radar-panel-title {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 16px !important;
    color: #fff !important;
}
.ccl-iedep-radar-panel-desc {
    font-size: 13px;
    color: rgba(255,255,255,.85) !important;
    line-height: 1.6;
    margin: 0 !important;
}
/* Botones de navegacion del carrusel (inyectados por PHP dentro del panel) */
.ccl-iedep-radar-nav {
    display: flex;
    gap: 16px;
    margin-top: 30px;
    margin-right: 0 !important;
}
.ccl-iedep-radar-nav-prev,
.ccl-iedep-radar-nav-next {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: opacity .2s, background .2s;
}
.ccl-iedep-radar-nav-prev i,
.ccl-iedep-radar-nav-next i {
    font-size: 19px;
}
.ccl-iedep-radar-nav-prev,
.ccl-iedep-radar-nav-next {
    border: 2px solid rgba(255,255,255,.4);
    color: #fff;
    background: transparent;
}
.ccl-iedep-radar-nav-prev:hover,
.ccl-iedep-radar-nav-next:hover,
.ccl-iedep-radar-nav-prev:active,
.ccl-iedep-radar-nav-next:active {
    border-color: #fff;
    background: #fff;
    color: var(--color-primary-dark, #051c2c);
}
.ccl-iedep-radar-nav-prev.swiper-button-disabled,
.ccl-iedep-radar-nav-next.swiper-button-disabled {
    opacity: .4;
    cursor: not-allowed;
}

/* Carrusel (Swiper) inyectado por PHP sobre .ccl-iedep-radar-grid */
.ccl-iedep-radar-grid {
    padding: 0;
    background: #f4f6f8;
    border-radius: 0;
    overflow: hidden;
}
.ccl-iedep-radar-grid .swiper-wrapper {
    align-items: stretch;
}
.ccl-iedep-radar-grid .swiper-slide {
    padding: 0 !important;
}
.ccl-iedep-radar-card {
    background: #fff;
    border-radius: 0;
    overflow: hidden;
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    text-align: center;
    padding: 32px 24px;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}
.ccl-iedep-radar-grid .swiper-slide:not(:last-child) .ccl-iedep-radar-card {
    border-right: 1px solid #d3d5d6;
}
.ccl-iedep-radar-card-img {
    margin: 0 0 24px !important;
    width: 230px;
    height: 230px;
    max-width: 100%;
    border-radius: 50%;
    overflow: hidden;
    background: #C9D6E3;
    flex-shrink: 0;
}
.ccl-iedep-radar-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 50% !important;
}
.ccl-iedep-radar-card-title {
    font-size: 17px !important;
    font-weight: 500;
    line-height: 1.3;
    margin: 0 0 10px !important;
    color: #0a1119;
}
.ccl-iedep-radar-card-title a {
    color: inherit;
    text-decoration: none;
}
.ccl-iedep-radar-card-title a:hover { text-decoration: underline; }
.ccl-iedep-radar-card-date {
    font-size: 14px;
    color: #6b7280 !important;
    margin: 0 0 24px !important;
    padding-top: 5px;
}
/* wrapper sin fondo — solo el <a> interior lo tiene */
.ccl-iedep-radar-card > .wp-block-buttons {
    width: 100%;
    margin-top: auto;
}
.ccl-iedep-radar-card-btn {
    background: none !important;
    width: 100%;
    padding: 0 !important;
}
.ccl-iedep-radar-card-btn .wp-block-button__link {
    display: block;
    position: relative;
    overflow: hidden;
    z-index: 1;
    background: #121c27 !important;
    color: #fff !important;
    text-align: center;
    padding: 14px !important;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 0 !important;
    box-shadow: none;
    transition: background .2s;
    width: 100%;
    box-sizing: border-box;
}
.ccl-iedep-radar-card-btn .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
    pointer-events: none;
}
.ccl-iedep-radar-card-btn .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}
.ccl-iedep-radar-card-btn .wp-block-button__link:hover {
    background: #121c27 !important;
    color: #fff !important;
}

/* Evita que el flex-wrap:wrap generico (.entry-content .wp-block-columns
   a max-width:1024px, definido mas abajo en este archivo) parta estas
   columnas en 2 lineas antes de tiempo; se sube la especificidad a 3
   clases para ganarle sin depender del orden de carga. El apilado real
   solo debe pasar via flex-direction:column en su propio breakpoint
   (iPad mini 767px) */
.ccl-iedep-dashboard-section.ccl-iedep-dashboard-section .wp-block-columns,
.ccl-iedep-eventos-section.ccl-iedep-eventos-section .wp-block-columns,
.ccl-iedep-ecolens-section.ccl-iedep-ecolens-section .wp-block-columns {
    flex-wrap: nowrap !important;
}

/* ── Power BI buttons (Dashboard Gremial) ── */
.ccl-iedep-dashboard-section .wp-block-columns {
    align-items: stretch !important;
    gap: 0 !important;
}
.ccl-iedep-dashboard-content {
    background: #fff;
    border-radius: 12px 0 0 12px;
    padding: 48px 40px !important;
}
.ccl-iedep-dashboard-content .wp-block-button__link {
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.ccl-iedep-dashboard-content .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
    pointer-events: none;
}
.ccl-iedep-dashboard-content .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}
.ccl-iedep-dashboard-content .wp-block-button__link:hover {
    background-color: var(--color-secondary, #2d4b71) !important;
    color: #fff !important;
}
.ccl-iedep-dashboard-img {
    margin: 0 !important;
    overflow: hidden;
    border-radius: 0 12px 12px 0;
}
.ccl-iedep-dashboard-img .wp-block-image {
    height: 100%;
    width: 100%;
    margin: 0;
}
.ccl-iedep-dashboard-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 0 !important;
}
.ccl-iedep-dashboard-section hr.wp-block-separator {
    border-color: #dde3ea !important;
    margin: 16px 0 !important;
    opacity: 1;
}
.ccl-iedep-powerbi-row {
    display: flex !important;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 8px;
}
/* wrapper sin fondo */
.ccl-iedep-powerbi-btn {
    background: none !important;
    padding: 0 !important;
}
.ccl-iedep-powerbi-btn .wp-block-button__link {
    background: var(--color-primary-alt, #08407A) !important;
    color: #fff !important;
    padding: 12px 24px !important;
    border-radius: 6px !important;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: none;
    transition: background .2s;
}
.ccl-iedep-powerbi-btn .wp-block-button__link:hover {
    background: var(--color-primary-dark, #051c2c) !important;
    color: #fff !important;
}

/* ── Eventos: presentaciones ── */
.ccl-iedep-evento-pdfs {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.ccl-iedep-evento-pdfs .wp-block-button__link {
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.ccl-iedep-evento-pdfs .wp-block-button__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.4) 50%,
            rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 2;
    pointer-events: none;
}
.ccl-iedep-evento-pdfs .wp-block-button__link:hover::after {
    animation: ccl-global-shine 0.75s forwards;
}
.ccl-iedep-evento-pdfs .wp-block-button__link:hover {
    background-color: var(--color-warning, #ffc325) !important;
    color: var(--color-primary-light, #002A49) !important;
}
.ccl-iedep-evento-pdf-item {
    padding: 0;
}
.ccl-iedep-evento-pdf-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--color-primary, #092442);
    margin: 0 0 4px;
}
.ccl-iedep-evento-pdf-author {
    font-size: 13px;
    color: #888;
    margin: 0 0 12px;
}
.ccl-iedep-evento-pdf-btn {
    display: inline-block;
    background: var(--color-warning, #ffc325);
    color: var(--color-primary-dark, #051c2c);
    padding: 10px 22px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: background .2s;
}
.ccl-iedep-evento-pdf-btn:hover {
    background: var(--color-warning-alt, #FFCB41);
    color: var(--color-primary-dark, #051c2c);
}

/* ── Informe Semanal — 3 columnas por año ── */
.ccl-iedep-informe-col {
    border-radius: 0;
    overflow: hidden;
    border: none;
}
.ccl-iedep-informe-col-header {
    background: var(--color-accent, #0074C5);
    color: #fff !important;
    font-size: clamp(16.5px, 1.03125rem + ((1vw - 3.2px) * 0.4296875), 22px);
    font-weight: 500;
    padding: 14px 16px !important;
    text-align: center;
    margin: 0 !important;
}
.ccl-iedep-informe-months {
    background: #fff;
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 15px !important;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
/* wp:details dentro del informe */
.ccl-iedep-month-item {
    border: 1px solid #d3d5d6;
    margin: 0 !important;
}
.ccl-iedep-month-item summary {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    font-size: clamp(12.75px, 0.796875rem + ((1vw - 3.2px) * 0.33203125), 17px);
    font-weight: 500;
    color: #2D4B71;
    cursor: pointer;
    list-style: none;
    user-select: none;
    margin: 0;
}
.ccl-iedep-month-item summary::-webkit-details-marker { display: none; }
.ccl-iedep-month-item summary::after {
    content: "\f067"; /* fa-plus */
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-size: 16px;
    width: 16px;
    height: 16px;
    color: #83888A;
    font-weight: 100;
    line-height: 1;
    flex-shrink: 0;
}
.ccl-iedep-month-item[open] summary::after {
    content: "\f068"; /* fa-minus */
}
/* lista de artículos */
.ccl-iedep-article-list {
    list-style: disc !important;
    padding: 4px 16px 12px 32px !important;
    margin: 0 !important;
}
.ccl-iedep-article-list li {
    padding: 5px 0;
    border-bottom: 1px dashed #eef0f3;
    color: #83888A;
}
.ccl-iedep-article-list li:last-child { border-bottom: none; }
.ccl-iedep-article-list a {
    font-size: 13px;
    color: #83888A;
    text-decoration: none;
    line-height: 1.4;
    display: block;
}
.ccl-iedep-article-list a:hover {
    color: #83888A;
    text-decoration: none;
}

/* ── Medios de Contacto ── */
.ccl-iedep-contact-section {
    background: var(--color-primary-dark, #051c2c);
}
.ccl-iedep-contact-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: rgba(255,255,255,.08);
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 12px;
}
.ccl-iedep-contact-icon {
    width: 44px;
    height: 44px;
    background: var(--color-warning, #ffc325);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--color-primary-dark, #051c2c);
    flex-shrink: 0;
}
.ccl-iedep-contact-text {
    font-size: 13px;
    color: #fff;
    line-height: 1.6;
}
.ccl-iedep-contact-text a { color: #fff; }
.ccl-iedep-contact-img-wrap {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
}
.ccl-iedep-contact-img {
    width: 100%;
    display: block;
    border-radius: 12px;
    object-fit: cover;
    max-height: 340px;
}
.ccl-iedep-contact-tagline {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(5,28,44,.80);
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    padding: 20px 24px;
}


/* ── Responsive IEDEP ── */
@media (max-width: 1024px) {
    /* Evita que "Socioeconómico" se corte a media palabra; si no cabe,
       baja completa a la siguiente línea */
    .ccl-iedep-radar-panel-title {
        word-break: keep-all;
        overflow-wrap: normal;
    }
}

/* Radar — apilado ya desde tablet (1024px), igual que en mobile */
@media (max-width: 1024px) {
    .ccl-iedep-radar-layout {
        grid-template-columns: 1fr !important;
    }
    .ccl-iedep-radar-panel {
        border-radius: 8px 8px 0 0;
    }
    .ccl-iedep-radar-grid {
        border-radius: 0 0 8px 8px;
    }
    /* Dashboard — borde completo redondeado desde tablet hacia abajo */
    .ccl-iedep-dashboard-content {
        border-radius: 12px !important;
    }
}

@media (max-width: 1024px) {
    /* Servicios nav */
    .ccl-iedep-services-nav {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    /* Quo Vadis */
    .ccl-iedep-quovadis-section .wp-block-columns {
        flex-direction: column !important;
    }
    /* Proyecciones */
    .ccl-iedep-proyecciones-banner {
        padding: 24px 20px;
        flex-direction: column;
        text-align: center;
    }
    /* Radar: carrusel pasa a 1 tarjeta por vista (ver breakpoints en JS) */
    .ccl-iedep-radar-card-img {
        width: 190px;
        height: 190px;
    }
    /* Dashboard */
    .ccl-iedep-powerbi-row {
        flex-direction: column;
    }
    .ccl-iedep-powerbi-btn .wp-block-button__link {
        width: 100%;
        text-align: center;
    }
    /* Informe — columnas apiladas */
    .ccl-iedep-informe-section .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-iedep-informe-section .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }
    /* Contacto */
    .ccl-iedep-contact-img-wrap { display: none; }
}

/* Eventos, EcoLens y Dashboard — mantienen 2 columnas hasta iPad mini (768px), se apilan debajo de eso */
@media (max-width: 767px) {
    .ccl-iedep-eventos-section .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-iedep-eventos-section .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }
    .ccl-iedep-ecolens-section .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-iedep-ecolens-section .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
    }
    .ccl-iedep-dashboard-section .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-iedep-dashboard-content {
        padding: 32px 24px !important;
    }
    .ccl-iedep-dashboard-img {
        border-radius: 0 0 12px 12px !important;
        min-height: 240px;
    }
}

@media (max-width: 480px) {
    /* Servicios nav: 1 col en móvil pequeño */
    .ccl-iedep-services-nav {
        grid-template-columns: 1fr !important;
    }
    /* Radar cards: circulo mas chico en mobile angosto */
    .ccl-iedep-radar-card-img {
        width: 160px;
        height: 160px;
    }
    /* Botones QV en columna */
    .ccl-iedep-qv-btn .wp-block-button__link {
        width: 100%;
        text-align: center;
    }
}


/* ─────────────────────────────────────────────────────────────────────────────
   IDEXCAM — Instituto de Investigación y Desarrollo de Comercio Exterior
   ───────────────────────────────────────────────────────────────────────────── */

.ccl-idexcam-presentacion,
.ccl-idexcam-servicios,
.ccl-idexcam-noticias,
.ccl-idexcam-eventos,
.ccl-idexcam-contact {
    padding-top: 60px;
    padding-bottom: 60px;
}

/* Imagen presentación redondeada */
.ccl-idexcam-pres-img img {
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0,0,0,.1);
}

/* ── Tarjetas de servicios ── */
.ccl-idexcam-svc-card {
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 12px;
    overflow: hidden;
}
.ccl-idexcam-svc-top {
    display: flex !important;
    align-items: flex-start;
    gap: 16px;
    padding: 24px 20px 20px;
    background: #f0f4f8;
}
.ccl-idexcam-svc-icon {
    width: 48px;
    min-width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(0, 116, 197, 0.09);
    border: none;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #004683;
    flex-shrink: 0;
    margin: 0 !important;
}
.ccl-idexcam-svc-title {
    font-size: 14px;
    font-weight: 600;
    color: #37424C;
    margin: 0 !important;
    line-height: 1.4;
    padding-top: 4px;
}

/* Acordeón inferior de la tarjeta */
.ccl-idexcam-svc-accordion {
    border-top: 1px solid #dde3ea;
    margin: 0 !important;
}
.ccl-idexcam-svc-accordion summary {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    font-size: 13px;
    font-weight: 500;
    color: var(--color-gray-dark, #444);
    cursor: pointer;
    list-style: none;
    user-select: none;
}
.ccl-idexcam-svc-accordion summary::-webkit-details-marker { display: none; }
.ccl-idexcam-svc-accordion summary::after {
    content: "+";
    font-size: 20px;
    color: var(--color-primary-light, #0055a5);
    font-weight: 300;
    line-height: 1;
    flex-shrink: 0;
}
.ccl-idexcam-svc-accordion[open] summary::after {
    content: "−";
}
.ccl-idexcam-svc-pdf-list {
    list-style: none !important;
    padding: 8px 20px 16px !important;
    margin: 0 !important;
    border-top: 1px solid #e5e7ea;
}
.ccl-idexcam-svc-pdf-list li {
    padding: 5px 0;
    border-bottom: 1px solid #f0f0f0;
}
.ccl-idexcam-svc-pdf-list li:last-child { border-bottom: none; }
.ccl-idexcam-svc-pdf-list a {
    font-size: 12px;
    color: var(--color-primary-light, #0055a5);
    text-decoration: none;
    display: flex;
    align-items: flex-start;
    gap: 6px;
}
.ccl-idexcam-svc-pdf-list a:hover { text-decoration: underline; }
.ccl-idexcam-svc-pdf-list i { margin-top: 2px; flex-shrink: 0; }

/* ── Nota destacada ── */
.ccl-idexcam-featured {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,.07);
    height: 100%;
    display: flex !important;
    flex-direction: column;
}
.ccl-idexcam-featured-img {
    margin: 0 !important;
}
.ccl-idexcam-featured-img img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block;
    border-radius: 0 !important;
}
.ccl-idexcam-featured-text {
    font-size: clamp(10.5px, 0.65625rem + ((1vw - 3.2px) * 0.2734375), 14px) !important;
    color: var(--color-gray-dark, #444) !important;
    line-height: 1.6;
    text-align: justify;
    padding: 16px 20px;
    margin: 0 !important;
    flex: 1;
}
.ccl-idexcam-featured .wp-block-buttons {
    padding: 0 20px 20px;
    margin: 0 !important;
}
.ccl-idexcam-featured .wp-block-buttons .wp-block-button__link {
    font-size: 12px !important;
    padding: 10px 24px !important;
    border-radius: 6px !important;
}

/* ── Notas periodísticas ── */
.ccl-idexcam-notas {
    display: flex !important;
    flex-direction: column;
    gap: 0;
}
.ccl-idexcam-nota-item {
    display: flex !important;
    gap: 16px;
    align-items: flex-start;
    padding: 20px 0;
    width: 100%;
}
.ccl-idexcam-nota-item + .wp-block-separator {
    margin: 0 !important;
}
.ccl-idexcam-nota-img {
    margin: 0 !important;
    flex-shrink: 0;
}
.ccl-idexcam-nota-img img {
    width: 200px;
    height: auto;
    object-fit: cover;
    border-radius: 6px !important;
}
.ccl-idexcam-nota-body {
    flex: 1;
    display: flex !important;
    flex-direction: column;
    gap: 10px;
}
.ccl-idexcam-nota-title {
    font-size: clamp(13.5px, 0.84375rem + ((1vw - 3.2px) * 0.3515625), 18px) !important;
    font-weight: 500;
    color: #4B535D !important;
    line-height: 23px;
    letter-spacing: -0.1px;
    margin: 0 !important;
}
.ccl-idexcam-nota-body .wp-block-button__link {
    font-size: 12px !important;
    padding: 8px 20px !important;
    border-radius: 6px !important;
}

/* ── Eventos ── */
.ccl-idexcam-evento-card {
    padding: 0;
    height: 100%;
}
.ccl-idexcam-evento-top {
    display: flex !important;
    gap: 20px;
    align-items: stretch;
    height: 100%;
}
.ccl-idexcam-evento-img {
    flex-shrink: 0;
    margin: 0 !important;
}
.ccl-idexcam-evento-img img {
    width: 225px;
    height: 100%;
    object-fit: cover;
    border-radius: 8px !important;
}
.ccl-idexcam-evento-body {
    flex: 1;
}
.ccl-idexcam-evento-title {
    font-size: 21px !important;
    font-weight: 400 !important;
    color: #002A49 !important;
    line-height: 30px;
    letter-spacing: 0px;
    margin: 0 0 10px !important;
}
.ccl-idexcam-evento-desc {
    font-size: 13px !important;
    color: var(--color-gray-dark, #4b535d) !important;
    line-height: 1.6;
    text-align: justify;
    margin: 0 0 12px !important;
}
.ccl-idexcam-evento-body .wp-block-separator {
    margin: 12px 0 !important;
    border-color: #dde3ea !important;
}
.ccl-idexcam-evento-body .wp-block-button__link {
    font-size: 12px !important;
    padding: 10px 20px !important;
    border-radius: 6px !important;
}

/* ── Contacto ── */
.ccl-idexcam-contact {
    background: var(--color-primary-dark, #051c2c);
}

/* ── Responsive ── */
@media (max-width: 900px) {
    .ccl-idexcam-noticias .wp-block-columns,
    .ccl-idexcam-servicios .wp-block-columns,
    .ccl-idexcam-eventos .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-idexcam-noticias .wp-block-column,
    .ccl-idexcam-servicios .wp-block-column,
    .ccl-idexcam-eventos .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }
}

@media (max-width: 1024px) {
    .ccl-idexcam-nota-img img { width: 120px; height: 90px; }
    .ccl-idexcam-featured-img img { height: 180px; }
    .ccl-idexcam-evento-img img { width: 120px; height: 90px; }
}

/* Eventos IDEXCAM — mantiene imagen + texto lado a lado hasta iPad mini (768px);
   se apila solo debajo de eso (antes se apilaba ya en 1024px, rompiendo iPad Pro) */
@media (max-width: 767px) {
    .ccl-idexcam-evento-top {
        flex-direction: column !important;
    }
    .ccl-idexcam-evento-img img {
        width: 100%;
        height: 200px;
    }

    /* Notas periodísticas: mismo tratamiento mobile que Nuestros eventos (imagen arriba a ancho completo) */
    .ccl-idexcam-nota-item {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    .ccl-idexcam-nota-item > .wp-block-group {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100%;
    }
    .ccl-idexcam-nota-img {
        width: 100%;
    }
    .ccl-idexcam-nota-img img {
        width: 100%;
        height: 200px;
    }
}


/* ─────────────────────────────────────────────────────────────────────────────
   OPORTUNIDADES DE NEGOCIO — CSS compartido
   Páginas: Encuentro de Negocios (imp/exp), Misiones Comerciales, Ferias Nac/Int
   Prefijo: ccl-opneg-*
   ───────────────────────────────────────────────────────────────────────────── */

.ccl-opneg-presentacion,
.ccl-opneg-eventos,
.ccl-opneg-incluye,
.ccl-opneg-contact {
    padding-top: 60px;
    padding-bottom: 60px;
}

.ccl-cards-opneg  .ccl-opciones-label {
    display: inline-block;
    background-color: #EFF5F9;
    color: #092442;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 14px;
    border-radius: 6px;
    width: fit-content;
}

.ccl-opneg-beneficios {
    padding-top: 60px;
    padding-bottom: 60px;
    background: var(--color-primary-alt, #08407A);
}
.ccl-separator-warning {
    border-top: 3px solid var(--color-warning, #ffc325) !important;
    width: 60px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}
.ccl-separator-primary-centered,
.ccl-separator-white-centered {
    border-top: 3px solid var(--color-warning, #ffc325) !important;
    width: 60px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.ccl-opneg-features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.ccl-opneg-feature-card {
    border: 1px solid #dde3ea;
    padding: 24px 20px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
    background: #fff;
}

.ccl-cards-opneg .ccl-card-image-box img{
    border-radius: 20px!important;
}

.ccl-cards-opneg  .ccl-card-icon-circle{
    background: var(--color-primary-alt);
}


.ccl-cards-opneg .ccl-card-icon-circle svg, .ccl-cards-opneg .ccl-card-icon-circle i{
    color: var(--color-white) !important;
    fill: var(--color-white) !important;
}

.ccl-cards-opneg  .ccl-numbered-card-wrapper .wp-block-button__link{
    background: var(--color-primary)!important;
}


.ccl-opneg-feature-icon {
    font-size: 24px;
    color: var(--color-warning, #ffc325);
    flex-shrink: 0;
    margin-top: 2px;
    margin: 0 !important;
}
.ccl-opneg-feature-body { flex: 1; }
.ccl-opneg-feature-title {
    font-size: clamp(16.5px, 1.03125rem + ((1vw - 3.2px) * 0.4296875), 22px) !important;
    font-weight: 600;
    color: var(--color-primary-alt, #08407A) !important;
    margin: 0 0 10px !important;
}
.ccl-opneg-feature-divider {
    border: none;
    border-top: 1px solid #e5e7ea;
    margin: 0 0 10px !important;
}
.ccl-opneg-feature-desc {
    font-size: clamp(12px, 0.75rem + ((1vw - 3.2px) * 0.3125), 16px) !important;
    color: var(--color-gray-dark, #4b535d) !important;
    margin: 0 !important;
    line-height: 1.5;
}
.ccl-opneg-beneficios-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 32px;
    text-align: center;
}

.ccl-opneg-beneficios-grid-5 {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 32px;
    text-align: center;
}

.ccl-opneg-beneficio-item {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.ccl-opneg-beneficio-icon {
    width: 52px;
    min-width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--color-accent, #0074C5);
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    margin: 0 !important;
}
.ccl-opneg-beneficio-item > p {
    font-size: 13px !important;
    color: rgba(255,255,255,.9) !important;
    line-height: 1.5;
    margin: 0 !important;
    text-align: center;
}
.ccl-opneg-contact-rows {
    display: flex !important;
    flex-direction: column;
    gap: 0;
}
.ccl-opneg-contact-row {
    display: flex !important;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 16px;
    font-size: 14px;
    color: var(--color-gray-dark, #4b535d);
}
.ccl-opneg-contact-icon {
    width: 36px;
    min-width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--color-warning, #ffc325);
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: var(--color-primary-dark, #051c2c);
    flex-shrink: 0;
    margin: 0 !important;
}
.ccl-opneg-contact-row > p {
    margin: 0 !important;
    font-size: 14px;
    line-height: 1.6;
}
.ccl-opneg-contact-row a {
    color: var(--color-primary-alt, #08407A);
    text-decoration: none;
}
.ccl-opneg-contact-row a:hover { text-decoration: underline; }

/* ── Responsive ── */
@media (max-width: 900px) {
    .ccl-opneg-features-grid { grid-template-columns: 1fr !important; }
    .ccl-opneg-beneficios-grid, .ccl-opneg-beneficios-grid-5 { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 1024px) {
    .ccl-opneg-beneficios-grid, .ccl-opneg-beneficios-grid-5 { grid-template-columns: 1fr !important; }
    .ccl-opneg-stats-bar { padding: 24px 20px; }
    .ccl-opneg-stat-number { font-size: 22px; }
}


/*CERTIFICACIONES*/

.ccl-certificados-circle{
width:75px;
height:75px;
background:#EFF5F9;
border: 1px solid #A7C0CE !important;
display:flex;
align-items:center;
border-radius:50%;
}


.ccl-certificaciones-price .ccl-separator-gray-dark{
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}


.ccl-certificaciones-price .ccl-price .ccl-stat-number {
    font-size: clamp(30px, 5vw, 60px);
    font-weight: 500;
    margin-bottom:0;
}

.ccl-certificaciones-acordeon .ccl-styled-details.style-1 summary{
background:#fff!important;
}


/* ==========================================================================
   CUADERNO ATA — Estilos específicos
   ========================================================================== */

/* ── Tarjetas de acción (Ficha de Solicitud / Pago en Línea) ─────────────── */

.ccl-ata-action-card,
.ccl-ata-action-card.wp-block-group,
.ccl-ata-action-card.is-layout-flow,
.ccl-ata-action-card.wp-block-group-is-layout-flow {
    background: #f8fafd !important;
    border: 1px solid #e1e8ed !important;
    border-radius: 16px !important;
    padding: 16px 20px 28px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    transition: box-shadow 0.3s ease;
    max-width: 100% !important;
}

.ccl-ata-action-card:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Header: flecha SVG alineada a la derecha */
.ccl-ata-action-header,
.ccl-ata-action-header.wp-block-group,
.ccl-ata-action-header.is-layout-flow,
.ccl-ata-action-header.wp-block-group-is-layout-flow {
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
}

.editor-styles-wrapper .ccl-ata-action-header {
    position: absolute !important;
    right: 16px !important;
    top: 16px !important;
}


.ccl-ata-action-arrow,
.ccl-ata-action-arrow.wp-block-image {
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    transform: rotate(-45deg);
    transition: transform 0.3s ease;
    display: block;
}

.ccl-ata-action-arrow img,
.ccl-ata-action-arrow svg {
    width: 28px !important;
    height: 28px !important;
    display: block;
}

.ccl-ata-action-card:hover .ccl-ata-action-arrow {
    animation: ccl-arrow-slide 0.6s ease-in-out;
}

/* Content: ícono + body en fila */
.ccl-ata-action-content,
.ccl-ata-action-content.wp-block-group,
.ccl-ata-action-content.is-layout-flow,
.ccl-ata-action-content.wp-block-group-is-layout-flow {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ícono circular */
.ccl-ata-action-icon,
.ccl-ata-action-icon.wp-block-group,
.ccl-ata-action-icon.is-layout-flow,
.ccl-ata-action-icon.wp-block-group-is-layout-flow {
    width: 55px !important;
    min-width: 55px !important;
    max-width: 55px !important;
    height: 55px !important;
    flex-shrink: 0 !important;
    border: 1px solid var(--color-accent) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

.ccl-ata-action-icon p,
.ccl-ata-action-icon.wp-block-group p {
    margin: 0 !important;
    line-height: 1;
    color: var(--color-accent);
    font-size: 20px;
}

/* Body: título + descripción apilados */
.ccl-ata-action-body,
.ccl-ata-action-body.wp-block-group,
.ccl-ata-action-body.is-layout-flow,
.ccl-ata-action-body.wp-block-group-is-layout-flow {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

h4.ccl-ata-action-title,
.ccl-ata-action-body h4.wp-block-heading {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--color-accent) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

p.ccl-ata-action-desc {
    font-size: 14px !important;
    color: var(--color-gray-dark) !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

/* ── Sección Directorio ──────────────────────────────────────────────────── */
/* Hereda estilos globales de .ccl-diagnostico-card en page.css             */

.page-cuaderno-ata .ccl-diagnostico-card {
    border-radius: 0 !important;
    align-items: center !important;
}

.page-cuaderno-ata .ccl-diagnostico-card h2.wp-block-heading {
    font-size: clamp(22px, 3vw, 32px) !important;
    font-weight: 600 !important;
    color: #fff !important;
    line-height: 1.3 !important;
}

/* ── Enlaces de interés ──────────────────────────────────────────────────── */

.ccl-ata-links {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 16px;
}

.ccl-ata-link-badge {
    background: transparent;
    border: 2px solid var(--color-accent);
    color: var(--color-accent);
    border-radius: 50px;
    padding: 8px 20px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.ccl-ata-link-badge:hover {
    background: var(--color-accent);
    color: #fff;
}



.ccl-feature-card{
    position: relative;
    background: #f6f8fb;
    border: 1px solid #d7dde5;
    min-height: 175px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 18px;
    overflow: visible;
}

/* Número superior en círculo */
.ccl-feature-card > p:first-child{
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    margin: 0;
    border-radius: 50%;
    background: #dfe9f6;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px !important;
    font-weight: 700;
    letter-spacing: 0 !important;
    z-index: 2;
}

/* Caja del icono */
.ccl-feature-card > p:nth-child(2){
    width: 75px;
    height: 75px;
    margin: 0;
    background: #e9eff8;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ccl-feature-card > p:nth-child(2) i{
    font-size: 37px !important;
    line-height: 1;
}

/* Texto */
.ccl-feature-card > p:last-child{
    max-width: 230px;
    margin: 0;
    text-align: center;
    line-height: 1.6;
    font-size: 14px;
}

/* Hover opcional */
.ccl-feature-card:hover{
    transform: translateY(-4px);
    transition: all .3s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}






/* Tarjetas de acción (Ficha de Solicitud / Pago en Línea) */
.ccl-ata-action-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-top: 40px;
}

.ccl-ata-action-card {
    background: #f8fafd;
    border: 1px solid #e1e8ed;
    border-radius: 16px;
    padding: 30px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    position: relative;
    transition: box-shadow 0.3s ease;
    text-decoration: none;
}

.ccl-ata-action-card:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.ccl-ata-action-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--color-accent) !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px !important;
}

.ccl-ata-action-icon {
    width: 50px;
    height: 50px;
    background: #EFF5F9;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--color-accent);
    font-size: 22px;
}

.ccl-ata-action-body h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-accent);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.ccl-ata-action-body p {
    font-size: 14px;
    color: var(--color-gray-dark);
    margin: 0;
}

.ccl-ata-action-arrow {
    position: absolute;
    top: 16px;
    right: 16px;
    color: var(--color-accent);
    font-size: 18px;
}

/* Sección Directorio */
.ccl-ata-directorio {
    display: flex;
    align-items: center;
    gap: 60px;
}

.ccl-ata-directorio-img {
    flex: 0 0 280px;
}

.ccl-ata-directorio-img img {
    width: 100%;
}

.ccl-ata-directorio-content h3 {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 24px;
    line-height: 1.3;
}

/* Enlaces de interés */
.ccl-ata-links {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 16px;
}

.ccl-ata-link-badge {
    background: transparent;
    border: 2px solid var(--color-accent);
    color: var(--color-accent);
    border-radius: 50px;
    padding: 8px 20px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.ccl-ata-link-badge:hover {
    background: var(--color-accent);
    color: #fff;
}

/* Responsive */
@media (max-width: 1024px) {
    .ccl-ata-action-grid {
        grid-template-columns: 1fr;
    }

    .ccl-ata-directorio {
        flex-direction: column;
        gap: 30px;
        text-align: center;
    }

    .ccl-ata-directorio-img {
        flex: unset;
        width: 200px;
    }
}




.ccl-feature-card{
    position: relative;
    background: #f6f8fb;
    border: 1px solid #d7dde5;
    min-height: 175px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 18px;
    overflow: visible;
}

/* Número superior en círculo */
.ccl-feature-card > p:first-child{
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    margin: 0;
    border-radius: 50%;
    background: #dfe9f6;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px !important;
    font-weight: 700;
    letter-spacing: 0 !important;
    z-index: 2;
}

/* Caja del icono */
.ccl-feature-card > p:nth-child(2){
    width: 75px;
    height: 75px;
    margin: 0;
    background: #e9eff8;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ccl-feature-card > p:nth-child(2) i{
    font-size: 37px !important;
    line-height: 1;
}

/* Texto */
.ccl-feature-card > p:last-child{
    max-width: 230px;
    margin: 0;
    text-align: center;
    line-height: 1.6;
    font-size: 14px;
}

/* Hover opcional */
.ccl-feature-card:hover{
    transform: translateY(-4px);
    transition: all .3s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}






/* ==========================================================================
   AFILIACIONES — Estilos específicos
   URL: /afiliaciones/
   ========================================================================== */

/* ── HERO: imagen + formulario de contacto ─────────────────────────────── */
.ccl-no-margin-gap {
    margin: 0 !important;
    gap: 0 !important;
}

.ccl-afil-hero-img-col {
    padding: 0 !important;
    position: relative;
    overflow: hidden;
}

.ccl-afil-hero-img-col .ccl-full-height-img,
.ccl-afil-hero-img-col .ccl-full-height-img img {
    height: 100%;
    width: 100%;
    margin: 0;
    display: block;
    max-height: 888px;
    object-position: top;
    object-fit: cover;
}

.ccl-afil-hero-img-col .wp-block-image {
    height: 100%;
    margin: 0;
}

/* Sombra radial concentrada en la esquina inferior izquierda */
.ccl-afil-hero-img-col::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 90% 80% at 0% 100%, rgba(5, 28, 44, 0.9) 0%, rgba(5, 28, 44, 0.78) 35%, rgba(5, 28, 44, 0.25) 60%, transparent 75%);
    z-index: 1;
}


.editor-styles-wrapper .ccl-afil-hero-overlay,
.ccl-afil-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 50px 60px;
    max-width: 75%;
}

.editor-styles-wrapper .ccl-afil-hero-eyebrow,
.ccl-afil-hero-eyebrow {
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 16px;
    max-width: 380px;
}

.editor-styles-wrapper .ccl-afil-hero-title,
.ccl-afil-hero-title {
    color: #fff;
    font-size: 32px;
    font-weight: 800;
    line-height: 1.35;
    margin: 0;
}


/* Columna de formulario */
.ccl-afil-hero-form-col {
    background-color: var(--color-primary);
    padding: 24px 30px;
}

.ccl-afil-form-title {
    color: #fff;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 24px;
}

/* Quitar el "doble fondo" del wrapper genérico: aquí los campos van directo sobre el azul */
.ccl-contact-form-wrapper.style-1.ccl-afil-form {
    background: transparent !important;
    padding: 0 !important;
}


.ccl-contact-form-wrapper.style-1.ccl-afil-form .col-md-6 {
    padding-left:0;
}

.ccl-contact-form-wrapper.style-1.ccl-afil-form input:not([type="submit"]),
.ccl-contact-form-wrapper.style-1.ccl-afil-form select,
.ccl-contact-form-wrapper.style-1.ccl-afil-form textarea {
    background: #5d7c97 !important;
    border-radius: 50px !important;
    color: #fff !important;
}

.ccl-afil-form input::placeholder,
.ccl-afil-form select,
.ccl-afil-form textarea::placeholder {
    color: #fff !important;
    opacity: 0.85 !important;
}

.ccl-afil-form .wpcf7-submit {
    background: var(--color-accent) !important;
    color: #fff !important;
    border-radius: 50px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: 600;
    font-size: 16px;
    height: 56px;
}

.ccl-afil-form .terminos-inline-int p,
.ccl-afil-form .terminos-inline-int label,
.ccl-afil-form .terminos-inline-int span,
.ccl-afil-form .terminos-inline-int .terminos-link {
    color: #fff !important;
}

/* ── MARQUEE: Elige el plan ideal ──────────────────────────────────────── */
.ccl-marquee-section {
    background-color: var(--color-gray-light);
    overflow: hidden;
    padding: 14px 0;
}

.ccl-marquee-track {
    display: flex;
    align-items: center;
    gap: 20px;
    white-space: nowrap;
    width: max-content;
    animation: ccl-marquee-scroll 35s linear infinite;
}

.ccl-marquee-item {
    color: var(--color-gray-dark);
    font-size: 15px;
    font-weight: 600;
    flex-shrink: 0;
}

.ccl-marquee-sep {
    color: var(--color-gray-dark);
    opacity: 0.35;
    font-size: 15px;
    flex-shrink: 0;
}

@keyframes ccl-marquee-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ── Antetítulo de sección ─────────────────────────────────────────────── */
.ccl-section-eyebrow {
    color: var(--color-accent);
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 700;
    font-size: 13px;
    margin: 0 0 8px !important;
}

/* ── Tarjetas de beneficios ─────────────────────────────────────────────── */
.ccl-afiliacion-card {
    background: #fff;
    border: 1px solid #e5e9ed;
    padding: 30px;
    height: 100%;
}

.ccl-afiliacion-card-icon {
    width: 70px;
    height: 70px;
    background: var(--color-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 30px;
    margin: 0 auto 20px;
}

.ccl-afiliacion-card h5 {
    font-size: 19px;
    font-weight: 700;
    color: var(--color-primary);
    margin-bottom: 16px;
    line-height: 1.4;
}

.ccl-afiliacion-card p {
    margin-bottom: 8px;
}

.ccl-afiliacion-card p strong {
    color: var(--color-primary-dark);
    font-size: 15px;
}

.ccl-afiliacion-card ul {
    margin: 0;
    padding-left: 20px;
}

.ccl-afiliacion-card ul li {
    color: var(--color-accent);
    font-size: 14px;
    line-height: 1.7;
}

/* Tarjeta banner "Descubre más beneficios" */
.ccl-afiliacion-banner-card {
    padding: 30px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.ccl-afiliacion-banner-card h4 {
    color: #fff;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 16px;
}

.ccl-banner-separator.wp-block-separator {
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    margin: 0 0 16px;
    opacity: 1;
}

.ccl-afiliacion-banner-card p {
    color: #fff;
    flex-grow: 1;
    margin-bottom: 24px;
}

.ccl-btn-cartillas .wp-block-button__link {
    background: #fff !important;
    color: var(--color-primary) !important;
    border-radius: 50px !important;
    font-weight: 700;
    padding: 14px 28px;
    display: inline-flex;
    align-items: center;
}

/* ── Barra de contacto WhatsApp ────────────────────────────────────────── */
.ccl-whatsapp-bar {
    border-radius: 16px;
    padding: 30px 50px;
    gap: 40px;
    flex-wrap: nowrap !important;
}

.ccl-whatsapp-left {
    gap: 20px;
    flex-shrink: 0;
}

.ccl-whatsapp-icon {
    width: 50px;
    height: 50px;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    flex-shrink: 0;
}

.ccl-whatsapp-label {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 4px !important;
}

.ccl-whatsapp-number {
    font-size: 32px;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin: 0 !important;
}

.ccl-whatsapp-number a {
    color: #fff;
    text-decoration: none;
}

.ccl-whatsapp-divider.wp-block-separator {
    width: 2px;
    height: 70px;
    background-color: var(--color-accent);
    border: none;
    margin: 0;
    opacity: 1;
    flex-shrink: 0;
}

.ccl-whatsapp-message {
    font-size: 20px;
    line-height: 1.5;
    margin: 0 !important;
    flex: 1;
}

/* ── Stats: ¿Por qué ser Asociado de la CCL? ───────────────────────────── */
.ccl-stats-heading-col {
    background-color: var(--color-primary-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 50px;
}

.ccl-stats-heading-col h2 {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.35;
    margin: 0;
}

.ccl-stats-list-col {
    background-color: var(--color-primary);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 50px;
}

.ccl-stat-row {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.ccl-stat-row:first-child {
    padding-top: 0;
}

.ccl-stat-row-last {
    border-bottom: none;
    padding-bottom: 0;
}

.ccl-stat-row-icon {
    width: 52px;
    height: 52px;
    background-color: var(--color-warning);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-dark);
    font-size: 20px;
    flex-shrink: 0;
}

.ccl-stat-row-number {
    color: #fff;
    font-size: 38px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0 !important;
}

.ccl-stat-row-suffix {
    font-size: 18px;
    font-weight: 700;
    vertical-align: top;
}

.ccl-stat-row-label {
    color: rgba(255, 255, 255, 0.65);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.4;
    margin: 4px 0 0 !important;
    max-width: 280px;
}

.ccl-stats-img-col {
    padding: 0 !important;
    overflow: hidden;
}

.ccl-stats-img-col .ccl-full-height-img,
.ccl-stats-img-col .ccl-full-height-img img {
    height: 100%;
    width: 100%;
    margin: 0;
    display: block;
    object-fit: cover;
}

.ccl-stats-img-col .wp-block-image {
    height: 100%;
    margin: 0;
}

/* ── Separador corto centrado (reutilizable) ───────────────────────────── */
.ccl-section-divider.wp-block-separator {
    width: 90px;
    border: none;
    border-top: 1px solid var(--color-primary-dark);
    margin: 30px auto 40px;
    opacity: 1;
}

/* ── ¿Quiénes pueden afiliarse? ────────────────────────────────────────── */
.ccl-quienes-grid {
    text-align: left;
}

.ccl-quienes-item {
    text-align: left;
}

.ccl-quienes-icon {
    width: 60px;
    height: 60px;
    margin: 0 0 20px!important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-accent);
}

.ccl-quienes-item h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--color-primary-dark);
    margin-bottom: 8px;
    text-align: left;
    position: relative;
    padding-bottom: 12px;
}

.ccl-quienes-item h3::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background-color: var(--color-primary-dark);
}

.ccl-quienes-item p {
    font-size: 14px;
    text-align: left;
}

p.ccl-quienes-icon {
    font-size: 40px;

}

/* ── Asociados en acción ────────────────────────────────────────────────── */
.ccl-afil-brands-wrap {
    border-top: 1px solid #e0e6ed;
    border-left: 1px solid #e0e6ed;
}

.ccl-afil-brands-grid.ccl-brands-grid {
    margin-top: 0 !important;
    flex-wrap: nowrap;
}

.ccl-afil-brands-grid .wp-block-column {
    background-color: #fff;
    border-right: 1px solid #e0e6ed;
    border-bottom: 1px solid #e0e6ed;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 35px 20px;
    margin: 0 !important;
    flex-basis: 16.6666% !important;
}

.ccl-afil-brand-logo.ccl-brand-logo {
    padding: 0;
    margin: 0;
    filter: none;
    opacity: 1;
}

.ccl-afil-brand-logo.ccl-brand-logo img {
    max-height: 45px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.ccl-afil-brand-logo.ccl-brand-logo:hover {
    transform: none;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    .ccl-afil-hero .wp-block-columns {
        flex-wrap: wrap;
    }

    .ccl-afil-hero-img-col,
    .ccl-afil-hero-form-col {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }

    .ccl-afil-hero-img-col {
        height: 400px;
    }

    .ccl-afil-hero-overlay {
        max-width: 100%;
    }

    .ccl-whatsapp-bar {
        flex-wrap: wrap !important;
        padding: 30px;
    }

    .ccl-whatsapp-divider {
        display: none;
    }

    .ccl-stats-section .wp-block-columns {
        flex-direction: column;
    }

    .ccl-stats-heading-col,
    .ccl-stats-list-col,
    .ccl-stats-img-col {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }

    .ccl-stats-img-col {
        height: 300px;
    }
}

@media (max-width: 1024px) {
    .ccl-afil-cards-section .wp-block-columns {
        flex-direction: column;
    }

    .ccl-afil-hero-title {
        font-size: 26px;
    }

    .ccl-afil-hero-overlay,
    .ccl-afil-hero-form-col {
        padding: 30px;
    }

    .ccl-afil-form-title {
        font-size: 28px;
    }

    .ccl-stats-heading-col,
    .ccl-stats-list-col {
        padding: 30px;
    }

    .ccl-stats-heading-col h2 {
        font-size: 26px;
    }

    .ccl-quienes-grid {
        flex-direction: column;
    }

    .ccl-afil-brands-grid .wp-block-column {
        flex-basis: 33.33% !important;
    }
}

@media (max-width: 480px) {
    .ccl-afil-brands-grid .wp-block-column {
        flex-basis: 50% !important;
    }
}


/* ==========================================================================
   AUSPICIO EN EVENTOS CCL — Estilos específicos
   URL: /auspicio-en-eventos-ccl/
   Scope: .page-auspicio-en-eventos-ccl (clase de body que WordPress genera
   automáticamente con el slug de la página — aísla todo sin tocar el HTML).
   ========================================================================== */

/* ── Introducción + Contadores ─────────────────────────────────────────── */

.page-auspicio-en-eventos-ccl .ccl-auspicio-intro-section h3.wp-block-heading {
    max-width: 900px;
    margin: 0 auto;
}

/* Tercer contador ("Público B2B") muestra texto en lugar de número */
.page-auspicio-en-eventos-ccl .ccl-stat-text-number {
    white-space: normal !important;
    line-height: 1.15 !important;
}

/* ── Calendario de Eventos 2026 ────────────────────────────────────────── */

.page-auspicio-en-eventos-ccl .ccl-events-calendar-section {
    background-color: #f9fbff;
}

.page-auspicio-en-eventos-ccl .ccl-events-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 20px 0 40px;
}

/* Fila: grid de 2 columnas iguales — garantiza misma altura sin depender de flex */
.page-auspicio-en-eventos-ccl .ccl-events-row,
.page-auspicio-en-eventos-ccl .ccl-events-row.is-layout-flow {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 30px !important;
    width: 100%;
    max-width: 100%;
}

/* Tarjeta: ocupa toda la celda del grid (altura automáticamente igual) */
.page-auspicio-en-eventos-ccl .ccl-event-card,
.page-auspicio-en-eventos-ccl .ccl-event-card.is-layout-flow {
    display: flex !important;
    flex-direction: row !important;
    min-width: 0;
    width: 100% !important;
    height: 100% !important;
    margin-top: 0 !important;
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
}

/* Columna de imagen: ocupa siempre el 100% del alto de su tarjeta */
.page-auspicio-en-eventos-ccl .ccl-event-image-col,
.page-auspicio-en-eventos-ccl .ccl-event-image-col.is-layout-flow {
    flex: 0 0 38%;
    max-width: 38%;
    display: flex !important;
    flex-direction: column !important;
}

/* Figure e img se estiran para llenar todo el alto disponible */
.page-auspicio-en-eventos-ccl .ccl-event-image {
    flex: 1 !important;
    width: 100%;
    margin: 0 !important;
    overflow: hidden;
}

.page-auspicio-en-eventos-ccl .ccl-event-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 0 !important;
}

.page-auspicio-en-eventos-ccl .ccl-event-body-col,
.page-auspicio-en-eventos-ccl .ccl-event-body-col.is-layout-flow {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 28px 30px;
}

/* Mes + proyección */
.page-auspicio-en-eventos-ccl .ccl-event-meta {
    gap: 16px;
    margin-bottom: 14px;
}

.page-auspicio-en-eventos-ccl .ccl-event-month {
    background-color: var(--color-primary-dark);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    border-radius: 4px;
    margin: 0 !important;
    white-space: nowrap;
}

.page-auspicio-en-eventos-ccl .ccl-event-projection {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.page-auspicio-en-eventos-ccl .ccl-event-projection-number {
    font-size: 26px;
    font-weight: 800;
    color: var(--color-primary);
    margin: 0 !important;
    line-height: 1;
}

.page-auspicio-en-eventos-ccl .ccl-event-projection-label {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--color-gray-dark);
    margin: 0 !important;
    line-height: 1.3;
}

.page-auspicio-en-eventos-ccl .ccl-event-body-col h3.wp-block-heading {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 10px !important;
    line-height: 1.25;
    color: var(--color-primary-dark);
}

.page-auspicio-en-eventos-ccl .ccl-event-description {
    font-size: 14px;
    color: var(--color-gray-dark);
    margin: 0 0 20px !important;
    padding-bottom: 16px;
    border-bottom: 1px solid #e9eef3;
}

/* Perfiles */
.page-auspicio-en-eventos-ccl .ccl-event-profiles {
    margin: 0 0 20px !important;
    gap: 24px !important;
}

.page-auspicio-en-eventos-ccl .ccl-event-profile-title {
    gap: 8px;
    margin-bottom: 6px;
}

.page-auspicio-en-eventos-ccl .ccl-event-profile-title p {
    margin: 0 !important;
}

.page-auspicio-en-eventos-ccl .ccl-event-profile-title i {
    color: var(--color-secondary);
    font-size: 16px;
}

.page-auspicio-en-eventos-ccl .ccl-event-profile-title strong {
    font-size: 13px;
    color: var(--color-primary-dark);
}

.page-auspicio-en-eventos-ccl .ccl-event-profile-text {
    font-size: 13px;
    line-height: 1.5;
    color: var(--color-gray-dark);
    margin: 0 !important;
}

/* Botones */
.page-auspicio-en-eventos-ccl .ccl-event-buttons {
    margin-top: auto !important;
    gap: 12px !important;
}

.page-auspicio-en-eventos-ccl .ccl-event-buttons .wp-block-button__link {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    padding: 12px 22px !important;
    border-radius: 8px !important;
}

.page-auspicio-en-eventos-ccl .ccl-event-buttons .is-style-outline .wp-block-button__link {
    border: 1px solid var(--color-primary);
    color: var(--color-primary) !important;
    background: transparent !important;
}

/* ── Logos de empresas ─────────────────────────────────────────────────── */

.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    align-items: stretch !important;
    margin-top: 30px;
}

/* Celda: tamaño base, sin bordes por defecto */
.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column {
    flex: 0 0 calc(100% / 6) !important;
    max-width: calc(100% / 6) !important;
    min-width: 0 !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none;
    box-sizing: border-box;
}

/* Celdas CON imagen: borde derecho e inferior (líneas entre celdas) */
.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:has(img) {
    border-right: 1px solid #e0e6ef;
    border-bottom: 1px solid #e0e6ef;
}

/* Primera fila (posiciones 1–6): borde superior */
.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(-n+6):has(img) {
    border-top: 1px solid #e0e6ef;
}

/* Primera columna de cada fila: borde izquierdo */
.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(6n+1):has(img) {
    border-left: 1px solid #e0e6ef;
}

.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brand-logo {
    margin: 0 !important;
    width: 100%;
}

/* Override brands-grid.css: quita el grayscale del patrón global */
.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brand-logo {
    filter: none !important;
    -webkit-filter: none !important;
    opacity: 1 !important;
}

.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brand-logo:hover {
    filter: none !important;
    -webkit-filter: none !important;
    opacity: 1 !important;
    transform: none !important;
}

.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column .ccl-brand-logo img {
    width: 100%;
    height: auto;
    max-height: 65px;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    transition: transform 0.3s ease;
}

.page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column .ccl-brand-logo img:hover {
    transform: translateY(-6px);
}

/* ── Efecto scroll-stack: cada fila sube y tapa a la anterior (igual que numbered-service-card) ── */
@media (min-width: 1025px) {
    .page-auspicio-en-eventos-ccl .ccl-events-row {
        position: sticky !important;
    }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(1) { top: 40px; z-index: 1; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(2) { top: 80px; z-index: 2; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(3) { top: 120px; z-index: 3; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(4) { top: 160px; z-index: 4; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(5) { top: 200px; z-index: 5; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(6) { top: 240px; z-index: 6; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(7) { top: 280px; z-index: 7; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(8) { top: 320px; z-index: 8; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(9) { top: 360px; z-index: 9; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(10) { top: 400px; z-index: 10; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(11) { top: 440px; z-index: 11; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(12) { top: 480px; z-index: 12; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(13) { top: 520px; z-index: 13; }
    .page-auspicio-en-eventos-ccl .ccl-events-row:nth-child(14) { top: 560px; z-index: 14; }
}

/* ── Responsive ────────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
    .page-auspicio-en-eventos-ccl .ccl-events-row,
    .page-auspicio-en-eventos-ccl .ccl-events-row.is-layout-flow {
        grid-template-columns: 1fr !important;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-card,
    .page-auspicio-en-eventos-ccl .ccl-event-card.is-layout-flow {
        flex-direction: column !important;
        height: auto !important;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-image-col,
    .page-auspicio-en-eventos-ccl .ccl-event-image-col.is-layout-flow {
        flex: none !important;
        max-width: 100% !important;
        height: 220px;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-image {
        height: 100% !important;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-profiles {
        flex-direction: column;
    }

    /* Logos: 3 por fila en tablet */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column {
        flex: 0 0 calc(100% / 3) !important;
        max-width: calc(100% / 3) !important;
    }

    /* Tablet 3 col — primera fila: border-top */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(-n+3):has(img) {
        border-top: 1px solid #e0e6ef;
    }

    /* Tablet 3 col — primera columna de cada fila: border-left */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(3n+1):has(img) {
        border-left: 1px solid #e0e6ef;
    }

    /* Reset desktop: quitar border-top en posiciones 4–6 (no son primera fila en 3 col) */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(n+4):has(img) {
        border-top: none;
    }

    /* Reset desktop: quitar border-left en posiciones que no son primera de fila de 3 */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:not(:nth-child(3n+1)):has(img) {
        border-left: none;
    }
}

@media (max-width: 768px) {
    .page-auspicio-en-eventos-ccl .ccl-event-buttons {
        flex-direction: column;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-buttons .wp-block-button {
        width: 100%;
    }

    .page-auspicio-en-eventos-ccl .ccl-event-buttons .wp-block-button__link {
        text-align: center;
        display: block;
    }

    /* Logos: 2 por fila en móvil */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column {
        flex: 0 0 50% !important;
        flex-basis: 50% !important;
        max-width: 50% !important;
        width: 50% !important;
    }

    /* Móvil 2 col — primera fila: border-top */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(-n+2):has(img) {
        border-top: 1px solid #e0e6ef;
    }

    /* Móvil 2 col — primera columna de cada fila: border-left */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(2n+1):has(img) {
        border-left: 1px solid #e0e6ef;
    }

    /* Reset tablet: quitar border-top en posiciones 3+ */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:nth-child(n+3):has(img) {
        border-top: none;
    }

    /* Reset tablet: quitar border-left en posiciones que no son primera de fila de 2 */
    .page-auspicio-en-eventos-ccl .ccl-brands-section .ccl-brands-grid .wp-block-column:not(:nth-child(2n+1)):has(img) {
        border-left: none;
    }
}


/* ==========================================================================
   CIGE — Centro de Información y Gestión Empresarial
   URL: /servicios/informacion/cige/
   SCOPE: Todo bajo .ccl-cige-page — sin colisiones con otras páginas
   ========================================================================== */


/* ── LÍNEAS DE SERVICIOS ────────────────────────────────────────────────── */
.ccl-cige-page .c-lineas {
    background: #fff;
    padding: 40px 0 20px;
}

.ccl-cige-page .c-lineas__eyebrow {
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #37424C;
    margin-bottom: 10px;
}

.ccl-cige-page .c-lineas__title {
    font-size: 45px;
    font-weight: 500;
    line-height: 50px;
    color: #002A49;
    margin-bottom: 10px;
}

/* Separador usado como divisor decorativo */
.ccl-cige-page .c-lineas__divider {
    background-color: #C1C1C1 !important;
    height: 1px !important;
    width: 380px !important;
    max-width: 100%;
    border: none !important;
    margin: 10px auto !important;
}
.ccl-cige-page .c-lineas__divider::before,
.ccl-cige-page .c-lineas__divider::after {
    display: none !important;
}

.ccl-cige-page .c-lineas__desc {
    font-size: 17px;
    color: #646A6D;
    max-width: 70% !important;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
}


/* ── SERVICIOS — columnas Gutenberg como grid 2×2 ──────────────────────── */
.ccl-cige-page .c-servicios {
    background: #fff;
    padding: 20px 0 10px;
}

/* Subgrid: outer define 2 columnas y 2 filas; cada wp-block-column hereda las filas via subgrid.
   Las alturas de fila se sincronizan entre columnas → las 4 cards quedan parejas por fila.
   Soporte: Chrome 117+, Firefox 71+, Safari 16+ (todos los navegadores modernos). */
.ccl-cige-page .c-servicios .wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 0 !important;
    padding: 20px 15px;
}
.ccl-cige-page .c-servicios .wp-block-column {
    display: grid !important;
    grid-template-rows: subgrid;
    grid-row: span 2;
    padding: 0 !important;
    gap: 0 !important;
}

/* Cuadritos decorativos — 2 rectángulos con solo borde, bottom-left, solo cards claras */
.ccl-cige-page .c-card-light {
    position: relative;
    overflow: hidden;
}
.ccl-cige-page .c-card-dark {
    position: relative;
}
.ccl-cige-page .c-card-light::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 220px;
    height: 130px;
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("https://test.camaralima.org.pe/wp-content/uploads/2024/06/h2-10.webp");
    background-position: bottom;
}

/* Tarjeta oscura (azul marino) */
.ccl-cige-page .c-card-dark {
    background-color: #002A49;
    flex: 1;
    margin: 15px;
    padding: 71px 60px 64px;
    display: flex;
    flex-direction: column;
}

/* Tarjeta clara (azul pálido) */
.ccl-cige-page .c-card-light {
    background-color: #EDF2F9;
    flex: 1;
    margin: 15px;
    padding: 71px 60px 64px;
    display: flex;
    flex-direction: column;
}

/* Títulos de tarjeta */
.ccl-cige-page .c-card__title-sm {
    font-size: 35px;
    line-height: 45px;
    font-weight: 400;
    margin-bottom: 0;
}
.ccl-cige-page .c-card-dark .c-card__title-sm  { color: #fff; }
.ccl-cige-page .c-card-light .c-card__title-sm { color: #002A49; }

/* Variante sin subtítulo: espaciado equivalente */
.ccl-cige-page .c-card__title-sm.c-card-no-subtitle {
    padding-bottom: 52px;
}

.ccl-cige-page .c-card__subtitle {
    font-size: 30px;
    line-height: 45px;
    font-weight: 400;
    padding-bottom: 15px;
}
.ccl-cige-page .c-card-dark .c-card__subtitle  { color: #fff; }
.ccl-cige-page .c-card-light .c-card__subtitle { color: #002A49; }

/* Lista de servicios — Gutenberg wp:list */
.ccl-cige-page .c-list.wp-block-list {
    list-style: none !important;
    padding-left: 0 !important;
    margin-top: 8px;
}
.ccl-cige-page .c-list.wp-block-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 16px 0 10px;
    border-bottom: 1px solid #2D4B71;
    list-style: none !important;
}
.ccl-cige-page .c-list-light.wp-block-list li {
    border-bottom-color: #B7C3CE;
}

/* Checkmark via CSS ::before — evita SVG inline en cada ítem */
.ccl-cige-page .c-list.wp-block-list li::before {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    min-width: 13px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -65 434.67733 434'%3E%3Cpath d='m152.003906 304.34375c-5.460937 0-10.921875-2.089844-15.082031-6.25l-130.664063-130.667969c-8.34375-8.339843-8.34375-21.824219 0-30.164062 8.339844-8.339844 21.820313-8.339844 30.164063 0l115.582031 115.582031 246.253906-246.25c8.339844-8.339844 21.820313-8.339844 30.164063 0 8.339844 8.34375 8.339844 21.824219 0 30.167969l-261.332031 261.332031c-4.160156 4.160156-9.625 6.25-15.085938 6.25zm0 0' fill='%23FFC325'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    flex-shrink: 0;
    margin-top: 4px;
}

/* Links dentro de lista */
.ccl-cige-page .c-card-dark .c-list a {
    font-size: 17px;
    font-weight: 300;
    line-height: 1.4;
    color: #fff;
    text-decoration: none !important;
}
.ccl-cige-page .c-card-light .c-list a {
    font-size: 17px;
    font-weight: 400;
    line-height: 1.4;
    color: #37424C;
    text-decoration: none !important;
}
.ccl-cige-page .c-card-dark .c-list a:hover  { color: #FFC325; }
.ccl-cige-page .c-card-light .c-list a:hover { color: #0089ED; }


/* ── RESPALDO — logo + íconos via wp:columns ────────────────────────────── */
.ccl-cige-page .ccl-cige-respaldo-wrap {
    padding: 0 !important;
}
.ccl-cige-page .ccl-cige-respaldo-wrap .wp-block-columns {
    gap: 0 !important;
    align-items: stretch;
    border-top: 1px solid #eee;
    flex-wrap: nowrap;
}
.ccl-cige-page .ccl-cige-respaldo-wrap .wp-block-column {
    padding: 0 !important;
}

/* Columna del logo CCL */
.ccl-cige-page .c-respaldo__logo-col {
    background-color: #EDF2F9;
    padding: 40px 48px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ccl-cige-page .c-respaldo__logo-label {
    font-size: 23px;
    font-weight: 500;
    color: #002A49;
    margin-bottom: 20px;
}
.ccl-cige-page .c-respaldo__logo-img {
    max-width: 200px;
    width: 100%;
}
.ccl-cige-page .c-respaldo__logo-img figure,
.ccl-cige-page .c-respaldo__logo-img img {
    max-width: 200px;
    width: 100%;
    height: auto;
}

/* Columna de íconos */
.ccl-cige-page .c-respaldo__icons-col {
    padding: 40px 24px !important;
    display: flex;
    align-items: center;
}
.ccl-cige-page .c-respaldo__icons-col .wp-block-columns {
    gap: 0 !important;
    width: 100%;
    border-top: none;
    flex-wrap: nowrap;
}
.ccl-cige-page .c-respaldo__icons-col .wp-block-column {
    padding: 0 !important;
}

/* Ítem de ícono (columna interior) */
.ccl-cige-page .c-respaldo__icon-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 0 16px;
}
.ccl-cige-page .c-respaldo__circle {
    width: 78px;
    height: 78px;
    border-radius: 50%;
    background-color: #0089ED;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ccl-cige-page .c-respaldo__circle svg {
    fill: #fff;
    stroke: #fff;
}
.ccl-cige-page .c-respaldo__icon-label {
    font-size: 16px;
    font-weight: 400;
    color: #37424C;
}


/* ── CTA BANNER — wp:cover ──────────────────────────────────────────────── */
/* NOTA: clase termina en -banner (no -section) para evitar el padding global
   de style.css que aplica 60px a todo .wp-block-cover[class*="-section"] */
.ccl-cige-page .c-cta__title {
    font-size: 50px;
    font-weight: 500;
    line-height: 65px;
    padding: 100px 20px;
    margin: 0;
}
.ccl-cige-page.ccl-cige-cta-banner .wp-block-cover__inner-container {
    padding: 0;
}


/* ── CONTACTO ───────────────────────────────────────────────────────────── */
.ccl-cige-page .ccl-cige-contact-wrap {
    background: #fff;
}
.ccl-cige-page .ccl-cige-contact-wrap > .wp-block-columns {
    max-width: 1290px;
    margin: 0 auto;
    padding: 50px 40px;
    align-items: center;
}

/* Título */
.ccl-cige-page .c-contacto__title {
    font-size: 45px;
    line-height: 60px;
    letter-spacing: -2px;
    font-weight: 400;
    color: #002A49;
    margin-bottom: 0;
}

/* Separador divisor */
.ccl-cige-page .c-contacto__divider {
    border: none !important;
    border-top: 1px solid #F0F3F7 !important;
    max-width: 90% !important;
    margin: 15px 0 30px !important;
    background: none !important;
}
.ccl-cige-page .c-contacto__divider::before,
.ccl-cige-page .c-contacto__divider::after {
    display: none !important;
}

.ccl-cige-page .c-contacto__subtitle {
    font-size: 17px;
    color: #646A6D;
    margin-bottom: 30px;
}

/* Ítem de contacto (ícono + texto) */
.ccl-cige-page .c-contacto-item {
    margin-bottom: 20px;
    gap: 24px;
}
.ccl-cige-page .c-contacto-item__icon {
    background-color: #FFF7E9;
    border-radius: 8px;
    width: 61px;
    height: 61px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ccl-cige-page .c-contacto-item__text {
    font-size: 18px;
    color: #646A6D;
    line-height: 1.4;
}
.ccl-cige-page .c-contacto-item__text p {
    margin: 0;
    font-size: 18px;
    color: #646A6D;
    line-height: 1.5;
}
.ccl-cige-page .c-contacto-item__text strong {
    color: #004683;
    font-weight: 600;
    display: block;
}
.ccl-cige-page .c-contacto-item__text a {
    color: #646A6D;
    text-decoration: none;
}
.ccl-cige-page .c-contacto-item__text a:hover { color: #004683; }

/* Formulario (columna derecha) */
.ccl-cige-page .c-form-box {
    background-color: #002A49;
    border-radius: 10px;
    padding: 15px 30px;
}
.ccl-cige-page .c-form-box input[type="text"],
.ccl-cige-page .c-form-box input[type="email"],
.ccl-cige-page .c-form-box input[type="tel"],
.ccl-cige-page .c-form-box textarea,
.ccl-cige-page .c-form-box select {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    color: #fff;
    background-color: #153458;
    border: none;
    border-radius: 10px;
    height: 53px;
    padding: 0 1.2em;
    width: 100%;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
    margin-bottom: 12px;
    display: block;
}
.ccl-cige-page .c-form-box textarea {
    height: auto;
    min-height: 100px;
    padding: 12px 1.2em;
    resize: vertical;
}
.ccl-cige-page .c-form-box input::placeholder,
.ccl-cige-page .c-form-box textarea::placeholder {
    color: rgba(255, 255, 255, 0.5);
}
.ccl-cige-page .c-form-box .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
.ccl-cige-page .c-form-box input.wpcf7-submit {
    background: #fff !important;
    color: #002A49 !important;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 700;
    border: none;
    border-radius: 10px;
    padding: 16px 32px;
    cursor: pointer;
    width: 100%;
    margin-top: 8px;
    height: auto;
    letter-spacing: 0.5px;
}
.ccl-cige-page .c-form-box input.wpcf7-submit:hover { background: #EDF2F9 !important; }
.ccl-cige-page .c-form-box .wpcf7-response-output {
    color: #fff;
    font-size: 13px;
    margin-top: 8px;
}


/* ── RESPONSIVE ─────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    /* Servicios: 1 columna en tablet/móvil */
    .ccl-cige-page .c-servicios .wp-block-columns,
    .ccl-cige-page .wp-block-columns:has(.c-card-dark),
    .ccl-cige-page .wp-block-columns:has(.c-card-light) {
        grid-template-columns: 1fr !important;
        padding: 0;
        gap: 16px !important;
    }
    /* Gap entre cards dentro de cada columna apilada */
    .ccl-cige-page .wp-block-column:has(.c-card-dark),
    .ccl-cige-page .wp-block-column:has(.c-card-light) { gap: 16px !important; }
    /* Columnas decorativas — ocultar en tablet/móvil */
    .ccl-cige-page .c-content-img,
    .ccl-cige-page .c-info-card { display: none !important; }
    /* Secciones con c-content-card: apilar columnas y ocultar imágenes (iprov + pyme) */
    .ccl-iprov-page.ccl-iprov-content-section .wp-block-columns,
    .ccl-pyme-page.ccl-pyme-content-section .wp-block-columns { flex-wrap: wrap !important; }
    .ccl-iprov-page.ccl-iprov-content-section .wp-block-column,
    .ccl-pyme-page.ccl-pyme-content-section .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
    }
    .ccl-iprov-page .c-content-card img,
    .ccl-pyme-page .c-content-card img { display: none !important; }
    .ccl-iprov-page .c-content-card .c-icon-box__icon img,
    .ccl-pyme-page .c-content-card .c-icon-box__icon img { display: block !important; }
    .ccl-cige-page .c-card-dark,
    .ccl-cige-page .c-card-light {
        margin: 0;
        padding: 50px 30px;
        min-height: unset !important;
    }

    /* Respaldo: apilar columnas */
    .ccl-cige-page .ccl-cige-respaldo-wrap .wp-block-columns {
        flex-direction: column !important;
    }
    .ccl-cige-page .c-respaldo__logo-col {
        width: 100% !important;
        flex-basis: auto !important;
    }
    .ccl-cige-page .c-respaldo__icons-col {
        width: 100% !important;
        flex-basis: auto !important;
    }
    .ccl-cige-page .c-respaldo__icons-col .wp-block-columns {
        flex-wrap: wrap !important;
    }
    .ccl-cige-page .c-respaldo__icon-item {
        flex-basis: 33% !important;
        min-width: 120px;
    }

    /* Contacto: apilar columnas */
    .ccl-cige-page .ccl-cige-contact-wrap > .wp-block-columns {
        flex-direction: column !important;
        padding: 40px 20px;
    }
    .ccl-cige-page .c-contacto-info-col,
    .ccl-cige-page .c-form-wrap {
        width: 100% !important;
        flex-basis: auto !important;
    }

    /* CTA */
    .ccl-cige-page .c-cta__title {
        font-size: 35px;
        line-height: 50px;
    }

    /* Líneas */
    .ccl-cige-page .c-lineas__title { font-size: 30px; line-height: 40px; }
    .ccl-cige-page .c-lineas__desc  { max-width: 90% !important; }
    .ccl-cige-page .c-lineas__divider { width: 250px !important; }

    /* Contacto título */
    .ccl-cige-page .c-contacto__title { font-size: 35px; line-height: 45px; }
}

@media (max-width: 1024px) {
    /* Ocultar columna de imagen de planes en móvil (iprov, pyme, cur, verif) */
    .ccl-verif-page .wp-block-column:has(.c-planes-img),
    .ccl-iprov-page .wp-block-column:has(.c-planes-img),
    .ccl-pyme-page .wp-block-column:has(.c-planes-img),
    .ccl-cur-page .wp-block-column:has(.c-planes-img) { display: none; }
}

@media (max-width: 768px) {
    .ccl-cige-page .c-cta__title { font-size: 26px; line-height: 36px; padding: 70px 20px; }
    .ccl-cige-page .c-contacto__title { font-size: 28px; line-height: 36px; }
    .ccl-cige-page .c-card__title-sm { font-size: 26px; line-height: 34px; }
    .ccl-cige-page .c-card__subtitle  { font-size: 22px; line-height: 30px; }
    .ccl-cige-page .c-card-dark,
    .ccl-cige-page .c-card-light { padding: 40px 20px; }
    .ccl-cige-page .c-respaldo__icons-col .wp-block-columns { gap: 16px !important; }
}


/* ============================================================
   COMPARTIDO — Verificaciones + Informes Proveedores + Informe PYME + Reporte Centrales de Riesgo
   ============================================================ */

/* INTRO */
.ccl-verif-page .c-intro__inner,
.ccl-iprov-page .c-intro__inner,
.ccl-pyme-page .c-intro__inner,
.ccl-rcr-page .c-intro__inner,
.ccl-cie-page .c-intro__inner,
.ccl-cur-page .c-intro__inner { text-align: center; }

.ccl-verif-page .c-intro__title,
.ccl-iprov-page .c-intro__title,
.ccl-pyme-page .c-intro__title,
.ccl-rcr-page .c-intro__title,
.ccl-cie-page .c-intro__title,
.ccl-cur-page .c-intro__title {
    font-size: 41px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -2px;
    color: #002A49;
    margin-bottom: 16px !important;
}
.ccl-verif-page .c-intro__text,
.ccl-iprov-page .c-intro__text,
.ccl-pyme-page .c-intro__text,
.ccl-rcr-page .c-intro__text,
.ccl-cie-page .c-intro__text,
.ccl-cur-page .c-intro__text {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.6;
    color: #646A6D;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* LISTA CON FLECHA */
.ccl-verif-page .c-tab-list,
.ccl-iprov-page .c-tab-list,
.ccl-pyme-page .c-tab-list,
.ccl-rcr-page .c-tab-list,
.ccl-cur-page .c-tab-list {
    list-style: none !important;
    padding: 0 !important;
    margin-bottom: 24px !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ccl-verif-page .c-tab-list li,
.ccl-iprov-page .c-tab-list li,
.ccl-pyme-page .c-tab-list li,
.ccl-rcr-page .c-tab-list li,
.ccl-cur-page .c-tab-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #646A6D;
    line-height: 1.5;
    padding: 0 !important;
}
.ccl-verif-page .c-tab-list li { font-size: 15px; }
.ccl-iprov-page .c-tab-list li,
.ccl-pyme-page .c-tab-list li,
.ccl-rcr-page .c-tab-list li { font-size: 16px; }

.ccl-verif-page .c-tab-list li::before,
.ccl-iprov-page .c-tab-list li::before,
.ccl-pyme-page .c-tab-list li::before,
.ccl-rcr-page .c-tab-list li::before,
.ccl-cur-page .c-tab-list li::before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    min-width: 14px;
    margin-top: 3px;
    flex-shrink: 0;
    background-color: #FFC325;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
}

/* SEPARADOR c-divider — misma regla que iprov */
.ccl-verif-page .c-divider,
.ccl-iprov-page .c-divider,
.ccl-pyme-page .c-divider {
    border-top: 1px solid #D9E2EC !important;
    margin: 20px 0 !important;
    opacity: 1 !important;
}
/* is-style-wide usa background-color en vez de border-top */
.ccl-verif-page .c-divider.is-style-wide,
.ccl-iprov-page .c-divider.is-style-wide,
.ccl-pyme-page .c-divider.is-style-wide {
    background-color: #D9E2EC !important;
    height: 1px !important;
    border-top: none !important;
    opacity: 1 !important;
}

/* CALLOUT — layout compartido; background-image difiere */
.ccl-verif-page .c-callout,
.ccl-iprov-page .c-callout,
.ccl-pyme-page .c-callout {
    border-radius: 20px;
    padding: 16px 20px !important;
    gap: 14px !important;
    align-items: flex-start !important;
}
.ccl-verif-page .c-callout { background-image: linear-gradient(277deg, #013B77 42%, #013B77 80%); }
.ccl-iprov-page .c-callout,
.ccl-pyme-page .c-callout { background-image: linear-gradient(277deg, #013B77 42%, #013B77 80%) !important; }

.ccl-verif-page .c-callout .c-callout__icon img,
.ccl-iprov-page .c-callout .c-callout__icon img,
.ccl-pyme-page .c-callout .c-callout__icon img {
    object-fit: cover;
    width: 25px;
    height: 25px;
}
.ccl-verif-page .c-callout .c-callout__icon,
.ccl-iprov-page .c-callout .c-callout__icon,
.ccl-pyme-page .c-callout .c-callout__icon {
    width: 50px;
    height: 50px;
    min-width: 50px;
    background: #004C8F;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
}
.ccl-verif-page .c-callout .c-callout__text,
.ccl-iprov-page .c-callout .c-callout__text,
.ccl-pyme-page .c-callout .c-callout__text {
    font-size: 17px !important;
    font-weight: 300;
    color: #fff !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* PLANES HEADER */
.ccl-verif-page .c-planes-header,
.ccl-iprov-page .c-planes-header,
.ccl-pyme-page .c-planes-header,
.ccl-rcr-page .c-planes-header,
.ccl-cur-page .c-planes-header { text-align: center; padding-bottom: 8px; }

.ccl-verif-page .c-planes-header__eyebrow,
.ccl-iprov-page .c-planes-header__eyebrow,
.ccl-pyme-page .c-planes-header__eyebrow,
.ccl-rcr-page .c-planes-header__eyebrow,
.ccl-cur-page .c-planes-header__eyebrow {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #646A6D;
    margin-bottom: 8px !important;
}
.ccl-verif-page .c-planes-header__title,
.ccl-iprov-page .c-planes-header__title,
.ccl-pyme-page .c-planes-header__title,
.ccl-rcr-page .c-planes-header__title,
.ccl-cur-page .c-planes-header__title {
    font-size: 40px !important;
    font-weight: 400 !important;
    color: #002A49 !important;
    line-height: 1.2 !important;
    margin-bottom: 16px !important;
}

/* PLAN — base compartida */
.ccl-verif-page .c-plan,
.ccl-iprov-page .c-plan,
.ccl-pyme-page .c-plan,
.ccl-rcr-page .c-plan,
.ccl-cur-page .c-plan {
    background: #F7FBFC;
    border-radius: 12px;
    padding: 40px 36px !important;
    text-align: center;
    align-items: center !important;
    gap: 0 !important;
}
/* diferencias por página */
.ccl-verif-page .c-plan { height: 100%; }
.ccl-iprov-page .c-plan,
.ccl-pyme-page .c-plan,
.ccl-rcr-page .c-plan,
.ccl-cur-page .c-plan {
    box-shadow: 0 2px 16px rgba(0,42,73,.08);
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.ccl-verif-page .c-plan__title,
.ccl-iprov-page .c-plan__title,
.ccl-pyme-page .c-plan__title,
.ccl-rcr-page .c-plan__title,
.ccl-cur-page .c-plan__title {
    font-size: 22px !important;
    font-weight: 500 !important;
    color: var(--color-primary) !important;
    letter-spacing: 1px;
    margin-bottom: 4px !important;
    text-transform: uppercase;
}
.ccl-verif-page .c-plan__subtitle,
.ccl-iprov-page .c-plan__subtitle,
.ccl-pyme-page .c-plan__subtitle,
.ccl-rcr-page .c-plan__subtitle,
.ccl-cur-page .c-plan__subtitle {
    font-size: 12px !important;
    color: #646A6D !important;
    margin-bottom: 16px !important;
}
.ccl-verif-page .c-plan__divider,
.ccl-iprov-page .c-plan__divider,
.ccl-pyme-page .c-plan__divider,
.ccl-rcr-page .c-plan__divider,
.ccl-cur-page .c-plan__divider {
    width: 100%;
    border-top: 1px solid #D9E2EC !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}
.ccl-verif-page .c-plan__price-row,
.ccl-iprov-page .c-plan__price-row,
.ccl-pyme-page .c-plan__price-row,
.ccl-rcr-page .c-plan__price-row,
.ccl-cur-page .c-plan__price-row {
    gap: 4px !important;
    margin-bottom: 4px !important;
    align-items: baseline !important;
}
.ccl-verif-page .c-plan__currency,
.ccl-verif-page .c-plan__currency.has-accent-color,
.ccl-verif-page .c-plan__currency[class*="has-"][class*="-color"],
.ccl-iprov-page .c-plan__currency,
.ccl-iprov-page .c-plan__currency.has-accent-color,
.ccl-iprov-page .c-plan__currency[class*="has-"][class*="-color"],
.ccl-pyme-page .c-plan__currency,
.ccl-pyme-page .c-plan__currency.has-accent-color,
.ccl-pyme-page .c-plan__currency[class*="has-"][class*="-color"],
.ccl-rcr-page .c-plan__currency,
.ccl-rcr-page .c-plan__currency.has-accent-color,
.ccl-rcr-page .c-plan__currency[class*="has-"][class*="-color"],
.ccl-cur-page .c-plan__currency,
.ccl-cur-page .c-plan__currency.has-accent-color,
.ccl-cur-page .c-plan__currency[class*="has-"][class*="-color"] {
    font-size: 20px !important;
    font-weight: 500 !important;
    color: #FFC325 !important;
    margin: 0 !important;
    line-height: 1 !important;
}
.ccl-verif-page .c-plan__amount,
.ccl-verif-page .c-plan__amount[class*="has-"][class*="-color"],
.ccl-iprov-page .c-plan__amount,
.ccl-iprov-page .c-plan__amount[class*="has-"][class*="-color"],
.ccl-pyme-page .c-plan__amount,
.ccl-pyme-page .c-plan__amount[class*="has-"][class*="-color"],
.ccl-rcr-page .c-plan__amount,
.ccl-rcr-page .c-plan__amount[class*="has-"][class*="-color"],
.ccl-cur-page .c-plan__amount,
.ccl-cur-page .c-plan__amount[class*="has-"][class*="-color"] {
    font-size: 52px !important;
    font-weight: 500 !important;
    color: var(--color-primary) !important;
    line-height: 1 !important;
    margin: 0 !important;
}
.ccl-verif-page .c-plan__igv,
.ccl-iprov-page .c-plan__igv,
.ccl-pyme-page .c-plan__igv,
.ccl-rcr-page .c-plan__igv,
.ccl-cur-page .c-plan__igv {
    font-size: 12px !important;
    color: #646A6D !important;
    margin-top: 4px !important;
    margin-bottom: 20px !important;
}
.ccl-verif-page .c-plan__btn .wp-block-button__link,
.ccl-iprov-page .c-plan__btn .wp-block-button__link,
.ccl-pyme-page .c-plan__btn .wp-block-button__link,
.ccl-rcr-page .c-plan__btn .wp-block-button__link,
.ccl-cur-page .c-plan__btn .wp-block-button__link {
    background: #0089ED !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 12px 24px !important;
    border-radius: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: background .2s;
}
.ccl-verif-page .c-plan__btn .wp-block-button__link::after,
.ccl-iprov-page .c-plan__btn .wp-block-button__link::after,
.ccl-pyme-page .c-plan__btn .wp-block-button__link::after,
.ccl-rcr-page .c-plan__btn .wp-block-button__link::after,
.ccl-cur-page .c-plan__btn .wp-block-button__link::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: #fff;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6z'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6z'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
}
.ccl-verif-page .c-plan__btn .wp-block-button__link:hover,
.ccl-iprov-page .c-plan__btn .wp-block-button__link:hover,
.ccl-pyme-page .c-plan__btn .wp-block-button__link:hover,
.ccl-rcr-page .c-plan__btn .wp-block-button__link:hover,
.ccl-cur-page .c-plan__btn .wp-block-button__link:hover { background: #002A49 !important; }

/* LISTA INTRO */
.ccl-iprov-page .c-list-intro,
.ccl-pyme-page .c-list-intro {
    font-size: 21px !important;
    font-weight: 500 !important;
    color: #4B535D !important;
    letter-spacing: 0.8px;
}

/* IMAGEN PLAN */
.ccl-verif-page .c-planes-img,
.ccl-iprov-page .c-planes-img,
.ccl-pyme-page .c-planes-img,
.ccl-cur-page .c-planes-img {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}
.ccl-verif-page .c-planes-img img,
.ccl-iprov-page .c-planes-img img,
.ccl-pyme-page .c-planes-img img,
.ccl-cur-page .c-planes-img img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    border-radius: 12px;
    min-height: 280px;
}

/* BENEFICIOS HEADER */
.ccl-verif-page .c-benefits-header,
.ccl-iprov-page .c-benefits-header,
.ccl-pyme-page .c-benefits-header,
.ccl-rcr-page .c-benefits-header,
.ccl-cur-page .c-benefits-header { text-align: center; padding-bottom: 8px; }

.ccl-verif-page .c-benefits-header__eyebrow,
.ccl-iprov-page .c-benefits-header__eyebrow,
.ccl-pyme-page .c-benefits-header__eyebrow,
.ccl-rcr-page .c-benefits-header__eyebrow,
.ccl-cur-page .c-benefits-header__eyebrow {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #646A6D;
    margin-bottom: 8px !important;
}
.ccl-verif-page .c-benefits-header__title,
.ccl-iprov-page .c-benefits-header__title,
.ccl-pyme-page .c-benefits-header__title,
.ccl-rcr-page .c-benefits-header__title,
.ccl-cur-page .c-benefits-header__title {
    font-size: 36px !important;
    font-weight: 400 !important;
    color: #002A49 !important;
}
.ccl-verif-page .c-benefits-header__title { margin-bottom: 16px !important; }
.ccl-iprov-page .c-benefits-header__title,
.ccl-pyme-page .c-benefits-header__title,
.ccl-rcr-page .c-benefits-header__title,
.ccl-cur-page .c-benefits-header__title { margin-bottom: 40px !important; }

.ccl-verif-page .c-benefit,
.ccl-iprov-page .c-benefit,
.ccl-pyme-page .c-benefit,
.ccl-rcr-page .c-benefit,
.ccl-cur-page .c-benefit {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 32px 24px;
    border-right: 1px solid #D9E2EC;
}
.ccl-verif-page .c-benefit:last-child,
.ccl-iprov-page .c-benefit:last-child,
.ccl-pyme-page .c-benefit:last-child,
.ccl-rcr-page .c-benefit:last-child,
.ccl-cur-page .c-benefit:last-child { border-right: none; }

.ccl-verif-page .c-benefit__icon,
.ccl-iprov-page .c-benefit__icon,
.ccl-pyme-page .c-benefit__icon,
.ccl-rcr-page .c-benefit__icon,
.ccl-cur-page .c-benefit__icon {
    width: 64px;
    height: 64px;
    background: #0089ED;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ccl-verif-page .c-benefit__icon svg,
.ccl-verif-page .c-benefit__icon img,
.ccl-iprov-page .c-benefit__icon svg,
.ccl-iprov-page .c-benefit__icon img,
.ccl-pyme-page .c-benefit__icon svg,
.ccl-pyme-page .c-benefit__icon img,
.ccl-rcr-page .c-benefit__icon svg,
.ccl-rcr-page .c-benefit__icon img,
.ccl-cur-page .c-benefit__icon svg,
.ccl-cur-page .c-benefit__icon img { width: 32px; height: 32px; }

.ccl-verif-page .c-benefit__title,
.ccl-iprov-page .c-benefit__title,
.ccl-pyme-page .c-benefit__title,
.ccl-rcr-page .c-benefit__title,
.ccl-cur-page .c-benefit__title {
    font-size: 15px;
    color: #002A49;
    font-weight: 500;
    line-height: 1.4;
    margin: 0 !important;
}

/* RESPONSIVE COMPARTIDO */
@media (max-width: 1023px) {
    /* Ocultar imagen del tab (c-tab-img) en páginas CIGE con tabs */
    .ccl-verif-page .c-tab-img,
    .ccl-rcr-page .c-tab-img,
    .ccl-cur-page .c-tab-img { display: none !important; }
}
@media (max-width: 1024px) {
    /* Cancelar regla de nuestros-servicios.css que oculta la primera columna del tab panel — CIGE usa c-tab-img */
    .ccl-verif-page .ccl-tab-panel .wp-block-column:first-child,
    .ccl-rcr-page .ccl-tab-panel .wp-block-column:first-child,
    .ccl-cur-page .ccl-tab-panel .wp-block-column:first-child { display: flex !important; }
}
@media (max-width: 1024px) {
    .ccl-verif-page .c-benefit,
    .ccl-iprov-page .c-benefit,
    .ccl-pyme-page .c-benefit,
    .ccl-rcr-page .c-benefit,
    .ccl-cur-page .c-benefit { border-right: none; border-bottom: 1px solid #D9E2EC; }
    .ccl-verif-page .c-benefit:last-child,
    .ccl-iprov-page .c-benefit:last-child,
    .ccl-pyme-page .c-benefit:last-child,
    .ccl-rcr-page .c-benefit:last-child,
    .ccl-cur-page .c-benefit:last-child { border-bottom: none; }
}
@media (max-width: 768px) {
    .ccl-verif-page .c-intro__title,
    .ccl-iprov-page .c-intro__title,
    .ccl-pyme-page .c-intro__title,
    .ccl-rcr-page .c-intro__title,
    .ccl-cur-page .c-intro__title { font-size: 28px !important; letter-spacing: -1px; }
    .ccl-verif-page .c-planes-header__title,
    .ccl-iprov-page .c-planes-header__title,
    .ccl-pyme-page .c-planes-header__title,
    .ccl-rcr-page .c-planes-header__title,
    .ccl-cur-page .c-planes-header__title { font-size: 30px !important; }
    .ccl-verif-page .c-plan__amount,
    .ccl-iprov-page .c-plan__amount,
    .ccl-pyme-page .c-plan__amount,
    .ccl-rcr-page .c-plan__amount,
    .ccl-cur-page .c-plan__amount { font-size: 48px !important; }
    .ccl-iprov-page .c-plan,
    .ccl-pyme-page .c-plan,
    .ccl-cur-page .c-plan { padding: 32px 24px !important; max-width: 100%; }
    .ccl-iprov-page .c-planes-img,
    .ccl-pyme-page .c-planes-img,
    .ccl-cur-page .c-planes-img { min-height: 240px; }
}


/* TABS NAV — compartido entre páginas con tabs tipo subrayado */
.ccl-verif-page .ccl-tabs-nav,
.ccl-rcr-page .ccl-tabs-nav,
.ccl-cur-page .ccl-tabs-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    border-bottom: none;
    margin-bottom: 0 !important;
    padding-bottom: 0;
    background: transparent;
    justify-content: center;
}
.ccl-verif-page .ccl-tabs-nav .wp-block-button,
.ccl-rcr-page .ccl-tabs-nav .wp-block-button,
.ccl-cur-page .ccl-tabs-nav .wp-block-button { margin: 0; }
.ccl-verif-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link,
.ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link,
.ccl-cur-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link {
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 14px 32px !important;
    font-family: inherit;
    font-size: 20px !important;
    font-weight: 500 !important;
    color: #646A6D !important;
    cursor: pointer;
    position: relative;
    transition: color .25s ease;
    opacity: 1;
}
.ccl-verif-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link::after,
.ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link::after,
.ccl-cur-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 3px;
    background-color: #002A49;
    transition: width .25s ease;
}
.ccl-verif-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link,
.ccl-verif-page .ccl-tabs-nav .ccl-tab-btn:hover .wp-block-button__link,
.ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link,
.ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn:hover .wp-block-button__link,
.ccl-cur-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link,
.ccl-cur-page .ccl-tabs-nav .ccl-tab-btn:hover .wp-block-button__link { color: #002A49 !important; }
.ccl-verif-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link::after,
.ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link::after,
.ccl-cur-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link::after { width: 100%; }

/* PANELES — compartido */
.ccl-verif-page .ccl-tab-panel,
.ccl-rcr-page .ccl-tab-panel,
.ccl-cur-page .ccl-tab-panel { display: none; animation: cclTabFadeIn .4s ease; }
.ccl-verif-page .ccl-tab-panel.active,
.ccl-rcr-page .ccl-tab-panel.active,
.ccl-cur-page .ccl-tab-panel.active { display: block; }
@keyframes cclTabFadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Editor — paneles visibles con borde guía */
.editor-styles-wrapper .ccl-verif-page .ccl-tab-panel,
.editor-styles-wrapper .ccl-rcr-page .ccl-tab-panel,
.editor-styles-wrapper .ccl-cur-page .ccl-tab-panel {
    display: block !important;
    margin-bottom: 32px !important;
    border: 1px dashed #90b0d0 !important;
    padding: 20px !important;
}
.editor-styles-wrapper .ccl-verif-page .ccl-tab-panel::before,
.editor-styles-wrapper .ccl-rcr-page .ccl-tab-panel::before,
.editor-styles-wrapper .ccl-cur-page .ccl-tab-panel::before {
    content: "Panel: " attr(id);
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #0089ED !important;
    margin-bottom: 16px !important;
}
.editor-styles-wrapper .ccl-verif-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link,
.editor-styles-wrapper .ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link,
.editor-styles-wrapper .ccl-cur-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link {
    background: none !important;
    background-color: transparent !important;
    color: #646A6D !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 14px 32px !important;
    font-size: 17px !important;
    font-weight: 600 !important;
}
.editor-styles-wrapper .ccl-verif-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link,
.editor-styles-wrapper .ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link,
.editor-styles-wrapper .ccl-cur-page .ccl-tabs-nav .ccl-tab-btn.active .wp-block-button__link { color: #002A49 !important; }


/* ============================================================
   VERIFICACIONES — específico
   ============================================================ */

.ccl-verif-page.ccl-verif-intro-section { background: #F7FBFC; padding-bottom: 0 !important; }
.ccl-verif-page.ccl-verif-tabs-nav-wrap { background: #F7FBFC; padding-top: 50px !important; padding-bottom: 0 !important; border-bottom: 2px solid #D9E2EC; }
.ccl-verif-page.ccl-verif-tabs-section  { background: #fff; padding-top: 48px !important; }
.ccl-verif-page.ccl-verif-planes-section { background: #fff; }

/* Imagen del panel — columna derecha llena la altura de la columna */
.ccl-verif-page .ccl-tab-panel .wp-block-image:not(.c-callout__icon .wp-block-image) img,
.ccl-rcr-page .c-tab-img img {
    height: 100% !important;
    width: auto !important;
    max-width: 100%;
    object-fit: cover !important;
    object-position: center;
    border-radius: 20px;
    display: block;
    margin: 0 auto;
}

/* Texto intro tabs */
.ccl-verif-page .c-tab-intro,
.ccl-verif-page .ccl-tab-description { border: none !important; padding-bottom: 0 !important; }
.ccl-verif-page .c-tab-intro {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #444A50 !important;
    margin-bottom: 20px !important;
}

/* Counter */
.ccl-verif-page.ccl-verif-counter-wrap,
.ccl-cur-page.ccl-cur-counter-wrap { padding: 0 !important; }
.ccl-verif-page .c-counter__dark-col,
.ccl-cur-page .c-counter__dark-col { flex: 1 1 50%; }
.ccl-verif-page .c-counter__dark,
.ccl-cur-page .c-counter__dark {
    background: #002A49;
    padding: 60px 56px !important;
    height: 100%;
    gap: 32px !important;
    justify-content: center !important;
}
.ccl-verif-page .c-counter__stat,
.ccl-cur-page .c-counter__stat { gap: 20px !important; }
.ccl-verif-page .c-counter__icon,
.ccl-cur-page .c-counter__icon {
    width: 50px; height: 50px; min-width: 50px;
    background: #FFC325;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.ccl-verif-page .c-counter__text,
.ccl-cur-page .c-counter__text { gap: 4px !important; }
.ccl-verif-page .c-counter__val-wrap,
.ccl-cur-page .c-counter__val-wrap { gap: 2px !important; align-items: baseline !important; }
.ccl-verif-page .c-counter__prefix,
.ccl-cur-page .c-counter__prefix { font-size: 32px !important; font-weight: 500 !important; color: #FFC325 !important; margin: 0 !important; line-height: 1 !important; }
.ccl-verif-page .c-counter__val,
.ccl-cur-page .c-counter__val   { font-size: 64px !important; font-weight: 500 !important; color: #fff !important; line-height: 1 !important; margin: 0 !important; }
.ccl-verif-page .c-counter__label,
.ccl-cur-page .c-counter__label { font-size: 16px !important; color: #fff !important; margin: 0 !important; }
.ccl-verif-page .c-counter__cta,
.ccl-cur-page .c-counter__cta   { gap: 8px !important; }
.ccl-verif-page .c-counter__cta-title,
.ccl-cur-page .c-counter__cta-title { font-size: 22px !important; font-weight: 500 !important; color: #fff !important; margin: 0 !important; }
.ccl-verif-page .c-counter__title,
.ccl-cur-page .c-counter__title { font-size: 45px !important; font-weight: 400 !important; color: #fff !important; margin: 0 !important; line-height: 48px; letter-spacing: -1.3px; }
.ccl-verif-page .c-counter__intro,
.ccl-cur-page .c-counter__intro { font-size: 18px !important; font-weight: 500 !important; color: #fff !important; margin: 0 !important; }
.ccl-verif-page .c-counter__cta-text,
.ccl-cur-page .c-counter__cta-text  { font-size: 15px !important; color: rgba(255,255,255,.7) !important; line-height: 1.5 !important; margin: 0 !important; }
.ccl-verif-page .c-counter__img-col,
.ccl-cur-page .c-counter__img-col   { flex: 1 1 50%; }
.ccl-verif-page .c-counter__img-cover,
.ccl-cur-page .c-counter__img-cover { height: 100% !important; min-height: 340px; }
.ccl-verif-page .c-counter__img-cover .wp-block-cover__inner-container,
.ccl-cur-page .c-counter__img-cover .wp-block-cover__inner-container { display: none; }

@media (max-width: 1024px) {
    .ccl-verif-page .c-counter__dark-col,
    .ccl-verif-page .c-counter__img-col,
    .ccl-cur-page .c-counter__dark-col,
    .ccl-cur-page .c-counter__img-col { flex: 1 1 100%; margin-top: 0; margin-bottom: 0 !important; }
    .ccl-verif-page .c-counter__dark,
    .ccl-cur-page .c-counter__dark { padding: 40px 24px !important; }
    .ccl-verif-page .c-counter__img-cover,
    .ccl-cur-page .c-counter__img-cover { min-height: 280px; }
    .ccl-verif-page .c-tab-grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 768px) {
    .ccl-verif-page .c-tabs__btn { padding: 12px 16px; font-size: 14px; }
    .ccl-verif-page .c-counter__val,
    .ccl-cur-page .c-counter__val { font-size: 48px; }
}


/* ============================================================
   INFORMES PROVEEDORES — específico
   ============================================================ */

.ccl-iprov-page.ccl-iprov-intro-section    { padding-bottom: 0 !important; }
.ccl-iprov-page.ccl-iprov-content-section  { background: #fff; }
.ccl-iprov-page.ccl-iprov-planes-section   { background: #fff; }
.ccl-iprov-page.ccl-iprov-beneficios-section { background: #fff; }

.ccl-iprov-page.ccl-iprov-planes-section .wp-block-columns,
.ccl-pyme-page.ccl-pyme-planes-section .wp-block-columns,
.ccl-cur-page.ccl-cur-planes-section .wp-block-columns {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

/* Content card/box */
.ccl-iprov-page .c-content-card { background: #F7FBFC; border-radius: 20px; padding: 35px !important; }
.ccl-iprov-page .c-content-box  { background: #F7FBFC; border-radius: 16px; padding: 32px !important; }
.ccl-iprov-page .c-content-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }

/* Icon box */
.ccl-iprov-page .c-icon-box { gap: 16px !important; margin-bottom: 20px !important; align-items: flex-start !important; }
.ccl-iprov-page .c-icon-box__icon {
    width: 64px; height: 64px; min-width: 64px;
    background: #FFC325;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.ccl-iprov-page .c-icon-box__content { gap: 0; }
.ccl-iprov-page .c-icon-box__title { font-size: 31px !important; font-weight: 500 !important; color: #002A49 !important; margin: 0 0 4px 0 !important; }
.ccl-iprov-page .c-icon-box__desc  { font-size: 21px !important; color: #646A6D !important; margin: 0 !important; }

/* Separador / Incluye */
.ccl-iprov-page .c-list-intro { margin-bottom: 12px !important; }

/* Planes header divider */
.ccl-iprov-page .c-planes-header__divider { width: 60px !important; border-top: 3px solid #0089ED !important; margin: 0 auto 40px !important; }


/* ============================================================
   INFORME COMERCIAL PYME — específico
   ============================================================ */

.ccl-pyme-page.ccl-pyme-intro-section      { padding-bottom: 0 !important; }
.ccl-pyme-page.ccl-pyme-content-section    { background: #fff; }
.ccl-pyme-page.ccl-pyme-planes-section     { background: #fff; }
.ccl-pyme-page.ccl-pyme-beneficios-section { background: #fff; }


/* Título con dos colores */
.ccl-pyme-page .c-intro__title .c-accent { color: #0089ED; }

/* ── INFO CARDS — stacked sticky ── */
/*
 * Astra pone overflow-x:hidden en html y body → rompe position:sticky.
 * overflow-x:clip previene scroll horizontal igual que hidden
 * pero NO crea scroll container → sticky funciona.
 * Scoped a esta página con :has().
 */
html:has(.ccl-pyme-page.ccl-pyme-content-section),
body:not(.wp-admin):not(.editor-styles-wrapper):has(.ccl-pyme-page.ccl-pyme-content-section),
html:has(.ccl-iprov-page.ccl-iprov-content-section),
body:not(.wp-admin):not(.editor-styles-wrapper):has(.ccl-iprov-page.ccl-iprov-content-section),
html:has(.ccl-scroll-mode),
body:not(.wp-admin):not(.editor-styles-wrapper):has(.ccl-scroll-mode),
html:has(.page-auspicio-en-eventos-ccl),
body:not(.wp-admin):not(.editor-styles-wrapper):has(.page-auspicio-en-eventos-ccl) {
    overflow-x: clip !important;
}

body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-pyme-page .c-info-card,
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card {
    position: sticky;
    margin-bottom: 80px !important;
    box-shadow: 0 20px 50px rgba(0,42,73,0.08);
}
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-pyme-page .c-info-card:nth-child(1),
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(1) { top: 40px;  z-index: 1; }
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-pyme-page .c-info-card:nth-child(2),
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(2) { top: 80px;  z-index: 2; }
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-pyme-page .c-info-card:nth-child(3),
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(3) { top: 120px; z-index: 3; }
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(4) { top: 160px; z-index: 4; }
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(5) { top: 200px; z-index: 5; }
body:not(.wp-admin):not(.editor-styles-wrapper) .ccl-iprov-page .c-info-card:nth-child(6) { top: 240px; z-index: 6; }

/* Content card/box — idéntico a iprov */
.ccl-pyme-page .c-content-card { background: #F7FBFC; border-radius: 20px; padding: 35px !important; }
.ccl-pyme-page .c-content-box  { background: #F7FBFC; border-radius: 16px; padding: 32px !important; }
.ccl-pyme-page .c-content-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }

/* Icon box — idéntico a iprov */
.ccl-pyme-page .c-icon-box { gap: 16px !important; margin-bottom: 20px !important; align-items: flex-start !important; }
.ccl-pyme-page .c-icon-box__icon {
    width: 64px; height: 64px; min-width: 64px;
    background: #FFC325;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.ccl-pyme-page .c-icon-box__content { gap: 0; }
.ccl-pyme-page .c-icon-box__title { font-size: 31px !important; font-weight: 500 !important; color: #002A49 !important; margin: 0 0 4px 0 !important; }
.ccl-pyme-page .c-icon-box__desc  { font-size: 21px !important; color: #646A6D !important; margin: 0 !important; }

/* Separador / Incluye — base en COMPARTIDO */
.ccl-pyme-page .c-list-intro { margin-bottom: 6px !important; margin-top: 6px !important; }

/* Espaciado reducido para la sección de contenido (card 2) */
.ccl-pyme-page .c-content-box .c-tab-list { margin-bottom: 10px !important; gap: 6px; }
.ccl-pyme-page .c-content-box .c-list-intro { margin-top: 14px !important; margin-bottom: 6px !important; }
.ccl-pyme-page .c-content-box .c-list-intro:first-child { margin-top: 0 !important; }
.ccl-pyme-page .c-tab-cols { margin-bottom: 0 !important; }

/* Planes header divider — idéntico a iprov */
.ccl-pyme-page .c-planes-header__divider { width: 60px !important; border-top: 3px solid #0089ED !important; margin: 0 auto 40px !important; }

/* c-plan box-shadow/max-width — cubierto por COMPARTIDO */


/* ============================================================
   REPORTE CENTRALES DE RIESGO — específico
   ============================================================ */

/* Secciones */
.ccl-rcr-page.ccl-rcr-intro-section,
.ccl-cur-page.ccl-cur-intro-section      { background: #F7FBFC; padding-bottom: 0 !important; }
.ccl-rcr-page.ccl-rcr-tabs-nav-wrap,
.ccl-cur-page.ccl-cur-tabs-nav-wrap      { background: #F7FBFC; padding-top: 50px !important; padding-bottom: 0 !important; border-bottom: 2px solid #D9E2EC; }
.ccl-rcr-page.ccl-rcr-tabs-section,
.ccl-cur-page.ccl-cur-tabs-section       { background: #fff; padding-top: 48px !important; }
.ccl-rcr-page.ccl-rcr-planes-section,
.ccl-cur-page.ccl-cur-planes-section     { background: #fff; }
.ccl-rcr-page.ccl-rcr-beneficios-section,
.ccl-cur-page.ccl-cur-beneficios-section { background: #fff; }

/* Título con acento */
.ccl-rcr-page .c-intro__title .c-accent { color: #0089ED; }

/* Nav tabs + paneles → COMPARTIDO (ccl-tabs-nav / ccl-tab-panel) */

.ccl-rcr-page .c-tab-badge,
.ccl-cur-page .c-tab-badge {
    display: inline-block !important;
    width: max-content !important;
    max-width: 100% !important;
    background-color: #EAF1F4 !important;
    color: #004683 !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    letter-spacing: -0.6px !important;
    text-align: center !important;
    text-transform: none !important;
    padding: 5px 50px !important;
    border-radius: 50px !important;
    margin: 0 0 20px 0 !important;
    line-height: 1.4 !important;
}
.ccl-rcr-page .c-tab-logo,
.ccl-rcr-page .c-tab-logo figure {
    max-width: 240px !important;
    margin-bottom: 16px !important;
    margin-top: 0 !important;
}
.ccl-rcr-page .c-tab-logo img {
    width: 100%;
    height: auto;
    display: block;
}
/* c-tab-img img → COMPARTIDO */

/* Botón pasarela dentro del panel */
.ccl-rcr-page .c-tab-btn .wp-block-button__link,
.ccl-cur-page .c-tab-btn .wp-block-button__link {
    background-color: #004683 !important;
    color: #fff !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px !important;
    box-shadow: none !important;
    border-radius: 100px !important;
    padding: 17px 30px !important;
    transition: background .2s;
}
.ccl-rcr-page .c-tab-btn .wp-block-button__link:hover,
.ccl-cur-page .c-tab-btn .wp-block-button__link:hover { background-color: #002A49 !important; }

/* ── PLANES — 2 columnas iguales sin imagen ── */
.ccl-rcr-page.ccl-rcr-planes-section .wp-block-columns {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}
.ccl-rcr-page .c-planes-header__divider {
    width: 60px !important;
    border-top: 3px solid #0089ED !important;
    margin: 0 auto 40px !important;
}

/* ── RESPONSIVE RCR ── */
@media (max-width: 1024px) {
    .ccl-rcr-page .c-tab-grid { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 768px) {
    .ccl-rcr-page .ccl-tabs-nav .ccl-tab-btn .wp-block-button__link { padding: 12px 16px !important; font-size: 15px !important; }
}


/* ============================================================
   CIE — específico
   Scope: .ccl-cie-page
   ============================================================ */

/* Intro */
.ccl-cie-page.ccl-cie-intro-section { background: #F7FBFC; padding-top: 60px !important; padding-bottom: 40px !important; }

/* Video — wp:embed (YouTube) */
.ccl-cie-page.ccl-cie-video-section { background: #fff; padding-top: 60px !important; padding-bottom: 60px !important; }
.ccl-cie-page .c-video__embed { border-radius: 33px; overflow: hidden; margin: 0; }
.ccl-cie-page .c-video__embed .wp-block-embed__wrapper { border-radius: 33px; overflow: hidden; }
.ccl-cie-page .c-eyebrow {
    display: block !important;
    font-size: 13px !important; font-weight: 500 !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    color: #0089ED !important; margin-bottom: 14px !important;
}
.ccl-cie-page .c-video__title { font-size: 30px; font-weight: 500; color: #002A49; margin-bottom: 16px; line-height: 1.3; }
.ccl-cie-page .c-video__text  { font-size: 16px; line-height: 1.6; color: #646A6D; }

/* Split sections */
.ccl-cie-page.ccl-cie-info-section,
.ccl-cie-page.ccl-cie-permite-section { padding: 0 !important; overflow: hidden; }

.ccl-cie-page .c-split { min-height: 520px; flex-wrap: nowrap !important; align-items: stretch; }
.ccl-cie-page .c-split > .wp-block-column { flex: 0 0 50% !important; max-width: 50% !important; }
.ccl-cie-page .c-split > .wp-block-column.c-split__img { padding: 0 !important; }

.ccl-cie-page .c-split__panel {
    background: #004682;
    padding: 70px 60px !important;
    display: flex !important;
    flex-direction: column;
    justify-content: flex-start;
}
/* reset de márgenes de bloques dentro del panel oscuro */
.ccl-cie-page .c-split__panel > .wp-block-paragraph,
.ccl-cie-page .c-split__panel > .wp-block-columns { margin-top: 0; margin-bottom: 0; }

.ccl-cie-page .c-split__img {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    background: #D9E2EC; /* fallback si la imagen no carga */
}
.ccl-cie-page .c-split__img .wp-block-image {
    position: absolute;
    inset: 0;
    margin: 0;
    height: 100%;
}
.ccl-cie-page .c-split__img .wp-block-image img {
    width: 100%; height: 100%; object-fit: cover; display: block; max-width: none;
}

/* Pill — wp:paragraph con display inline-block */
.ccl-cie-page .c-pill,
.ccl-cie-page .c-split__panel p.c-pill,
.ccl-cie-page .c-split__panel .wp-block-paragraph.c-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: max-content !important;
    background: #005FAC !important; color: #fff !important;
    font-size: 18px !important; font-weight: 600 !important;
    padding: 12px 27px 13px 27px !important; border-radius: 38px !important;
    margin-bottom: 24px !important; margin-top: 0 !important;
    box-sizing: border-box !important;
}
.ccl-cie-page .c-pill::before { content: none; }
.ccl-cie-page .c-split__text { font-size: 15px; line-height: 1.6; color: #fff; margin-bottom: 20px; margin-top: 0; }
.ccl-cie-page .c-split__panel .c-info-list { margin-top: 20px !important; }

/* Listas dentro del panel — ícono doble-chevron via CSS mask */
.ccl-cie-page .c-info__grid { flex-wrap: nowrap !important; }
.ccl-cie-page .c-info__grid > .wp-block-column { padding: 0 !important; }
.ccl-cie-page .c-info-list { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex; flex-direction: column; gap: 14px; }
.ccl-cie-page .c-info-list .wp-block-list-item,
.ccl-cie-page .c-info-list li {
    display: flex; align-items: flex-start; gap: 10px;
    font-size: 15px; color: #fff; line-height: 1.5;
    padding: 0; margin: 0;
}
.ccl-cie-page .c-info-list .wp-block-list-item::before,
.ccl-cie-page .c-info-list li::before {
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 300;
    content: "\f324";
    color: #FFC325;
    font-size: 12px;
    flex-shrink: 0;
    margin-top: 3px;
    width: auto; height: auto; min-width: unset;
    background: none;
}

/* Why */
.ccl-cie-page.ccl-cie-why-section { background: #fff; padding-top: 0 !important; padding-bottom: 40px !important; }
.ccl-cie-page .c-why-header { text-align: center; padding: 60px 0 30px; }
.ccl-cie-page .c-why-header__title { font-size: 32px; font-weight: 500; color: #002A49; line-height: 1.3; margin: 0 auto; }
/* wp:separator como divider */
.ccl-cie-page .c-why-header__divider {
    width: 60px !important; height: 3px !important;
    background-color: #0089ED !important; border: none !important;
    margin: 20px auto 0 !important; max-width: none !important;
}
.ccl-cie-page .c-why__grid { flex-wrap: nowrap !important; }
.ccl-cie-page .c-why-item {
    text-align: center;
    display: flex !important; flex-direction: column; align-items: center;
    gap: 18px; padding: 0 30px !important;
    border-right: 1px solid #D9E2EC;
}
.ccl-cie-page .c-why-item:last-child { border-right: none; }
/* Ícono vía wp:image dentro del grupo */
.ccl-cie-page .c-why-item__icon {
    width: 64px !important; height: 64px !important; min-width: 64px; flex-shrink: 0;
    background-color: #E8F3FC; border-radius: 50%;
    display: flex !important; align-items: center; justify-content: center;
}
.ccl-cie-page .c-why-item__icon .wp-block-image { margin: 0 !important; }
.ccl-cie-page .c-why-item__icon .wp-block-image img { display: block; }
.ccl-cie-page .c-why-item__text { font-size: 15px; color: #646A6D; line-height: 1.5; margin: 0; }

/* Stats */
.ccl-cie-page.ccl-cie-stats-section { background: #fff; padding-top: 20px !important; padding-bottom: 20px !important; text-align: center; }
/* HR separadores */
.ccl-cie-page.c-stats__sep { border: none !important; border-top: 1px solid #D9E2EC !important; background: none !important; }
/* Fila 100% + label al costado */
.ccl-cie-page .c-stats__big-row {
    display: flex !important; flex-wrap: nowrap !important;
    align-items: center !important; justify-content: center !important;
    gap: 8px; margin-bottom: 0 !important;
}
.ccl-cie-page .c-stats__big  { font-size: 48px !important; font-weight: 500; color: #004682; line-height: 1; margin: 0 !important; }
.ccl-cie-page .c-stats__pct  { font-size: 48px !important; font-weight: 500; color: #FFC325; line-height: 1; margin: 0 !important; }
.ccl-cie-page .c-stats__label { font-size: 22px; color: #38424B; font-weight: 500; margin: 0 !important; line-height: 1.2; text-align: left; }
.ccl-cie-page .c-stats__list { gap: 60px; padding-top: 0 !important; padding-bottom: 0 !important; }
.ccl-cie-page .c-stats__item { gap: 20px; flex-direction: column !important; align-items: center !important; text-align: center; }
.ccl-cie-page .c-stats__num {
    display: inline-flex !important; align-items: center; justify-content: center;
    min-width: 46px; height: 46px; padding: 0 16px !important;
    border-radius: 50px; background: #0089ED !important; color: #fff !important;
    font-size: 18px !important; font-weight: 500; margin: 0 !important;
}
.ccl-cie-page .c-stats__item-text { font-family: "Poppins", Sans-serif; font-size: 22px; font-weight: 400; color: #626A6C; -webkit-text-stroke-color: #626A6C; letter-spacing: -1px; line-height: 1.3; text-align: center; margin: 0 !important; }


/* FAQ */
.ccl-cie-page.ccl-cie-faq-section { padding-top: 60px !important; padding-bottom: 60px !important; }
.ccl-cie-page .c-faq__inner { max-width: 900px !important; }
.ccl-cie-page .c-faq-header__title { font-size: 36px !important; font-weight: 400 !important; color: #002A49; margin-bottom: 32px !important; }
/* wp:details — acordeón nativo */
.ccl-cie-page .c-faq-item {
    border-bottom: 1px solid #D9E2EC;
    padding: 0;
}
.ccl-cie-page .c-faq-item summary {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 22px 0; cursor: pointer; list-style: none;
    font-size: 17px; font-weight: 500; color: #004683;
}
.ccl-cie-page .c-faq-item summary::-webkit-details-marker { display: none; }
.ccl-cie-page .c-faq-item summary::after {
    content: "";
    display: block; flex-shrink: 0;
    width: 24px; height: 24px; min-width: 24px;
    border-radius: 50%; background-color: transparent;
    background-image: linear-gradient(#004683,#004683), linear-gradient(#004683,#004683);
    background-size: 10px 2px, 2px 10px;
    background-repeat: no-repeat, no-repeat;
    background-position: center, center;
    transition: background-image .2s;
}
.ccl-cie-page .c-faq-item[open] summary::after {
    background-image: linear-gradient(#004683,#004683);
    background-size: 10px 2px;
}
.ccl-cie-page .c-faq-item p { font-size: 15px; line-height: 1.7; color: #646A6D; padding-bottom: 22px; margin: 0; }

/* Responsive CIE */
@media (max-width: 1024px) {
    .ccl-cie-page .c-split { flex-wrap: wrap !important; }
    .ccl-cie-page .c-split > .wp-block-column { flex: 0 0 100% !important; max-width: 100% !important; margin-bottom: 0 !important; }
    .ccl-cie-page .c-split__img { min-height: 280px; }
    .ccl-cie-page.ccl-cie-permite-section .c-split__img { order: 2; }
    .ccl-cie-page.ccl-cie-permite-section .c-split__panel { order: 1; }
    .ccl-cie-page .c-split__panel { padding: 50px 30px !important; }
    .ccl-cie-page .c-info__grid { grid-template-columns: 1fr; }
    .ccl-cie-page .c-why__grid { flex-wrap: wrap !important; }
    .ccl-cie-page .c-why-item { border-right: none; border-bottom: 1px solid #D9E2EC; padding-bottom: 30px !important; }
    .ccl-cie-page .c-why-item:last-child { border-bottom: none; }
    .ccl-cie-page .c-stats__list { flex-direction: column; align-items: center; gap: 20px; }
}
@media (max-width: 768px) {
    .ccl-cie-page .c-video__title,
    .ccl-cie-page .c-why-header__title,
    .ccl-cie-page .c-faq-header__title { font-size: 26px; }
    .ccl-cie-page .c-stats__big,
    .ccl-cie-page .c-stats__pct  { font-size: 36px; }
    .ccl-cie-page .c-stats__label { font-size: 20px; }
    .ccl-cie-page .c-stats__item-text { font-size: 18px; }
}


/* ============================================================
   CUR PAGE
   ============================================================ */

/* Tipo de CUR — negrita + color amarillo */
.ccl-cur-page .c-cur-item__type { color: #002A4A; font-weight: 600; }

/* Lista de tipos: bullet absolute + texto fluye inline (strong + descripción juntos) */
.ccl-cur-page .c-cur-types-list li {
    display: block !important;
    position: relative;
    padding-left: 24px !important;
}
.ccl-cur-page .c-cur-types-list li::before {
    position: absolute !important;
    left: 0;
    top: 5px;
    display: block !important;
}

/* Título de cada tipo — no parte entre palabras */
.ccl-cur-page .c-cur-item__type { white-space: nowrap; }

/* Imagen del tab — ocupa 100% de la columna como en RCR */
.ccl-cur-page .c-tab-img img { height: 100% !important; width: 100% !important; object-fit: cover; border-radius: 16px; }

/* Lista de requisitos dentro del panel oscuro del counter */
.ccl-cur-page .c-counter__cta .c-cur-req-list { margin-top: 8px !important; }
.ccl-cur-page .c-counter__cta .c-cur-req-list li { color: rgba(255,255,255,.85) !important; font-size: 15px !important; }
.ccl-cur-page .c-counter__cta .c-cur-req-list li::before { background-color: #FFC325 !important; }


/* ============================================================
   CONTACTO — compartido todas las páginas con formulario
   ============================================================ */
@media (max-width: 1024px) {
    .ccl-contact-section .wp-block-columns { flex-wrap: wrap !important; }
    .ccl-contact-section .wp-block-column {
        width: 100% !important;
        flex-basis: 100% !important;
    }
}


/* ============================================================
   REVISTA LA CÁMARA — estilos propios de página
   Carga después de cige-all.css (tabs ccl-verif-page y
   contacto ccl-contact-section vienen de ahí)
   ============================================================ */

/* ---------- Fondo unificado #EFF5F9 (= bg-soft) en todas las secciones
   superiores para dar continuidad visual ---------- */
.ccl-revista-intro-section {
    background: #EFF5F9 !important;
    background-color: #EFF5F9 !important;
}

/* Info-esencial section (ccl-verif-intro-section) inmediatamente después de
   la plataforma — override del #F7FBFC que viene de cige-all.css */
.ccl-revista-plataforma-section + .ccl-verif-page.ccl-verif-intro-section {
    background: #EFF5F9 !important;
    background-color: #EFF5F9 !important;
}

/* Tabs nav-wrap — tiene la clase ccl-revista-tabs-wrap como ancla */
.ccl-revista-tabs-wrap {
    background: #EFF5F9 !important;
    background-color: #EFF5F9 !important;
}

/* ---------- Intro section ---------- */
.ccl-revista-intro-section { padding: 56px 0 !important; }

/* Título grande: peso y altura de línea refinados */
.ccl-revista-intro-section h2.has-extra-large-font-size {
    font-weight: 500 !important;
    line-height: 1.3 !important;
    margin-bottom: 16px !important;
    color: #002A49;
}

/* Descripción */
.ccl-revista-intro-section p {
    max-width: 720px;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Centrar el contenedor para que el pill inline-block quede centrado */
.ccl-revista-intro-section .inherit-container-width { text-align: center; }

/* "Presencia Multiplataforma" → pill oscuro */
.ccl-revista-intro-section .ccl-letter-spacing-neg-1 {
    display: inline-block !important;
    background: #002A49 !important;
    background-color: #002A49 !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    letter-spacing: .4px !important;
    padding: 12px 36px !important;
    border-radius: 40px !important;
    margin-top: 40px !important;
    margin-bottom: 0 !important;
    text-align: center !important;
}

/* ---------- Plataforma section ---------- */
.ccl-revista-plataforma-section { padding: 48px 0 64px !important; }

/* ---------- Feature cards ---------- */
.ccl-revista-plataforma-card {
    border-radius: 14px;
    box-shadow: 0 2px 16px rgba(0,0,0,.08);
    overflow: hidden;
    height: 100%;
    transition: box-shadow .25s ease, transform .25s ease;
}
.ccl-revista-plataforma-card:hover {
    box-shadow: 0 8px 32px rgba(0,0,0,.13);
    transform: translateY(-4px);
}

/* Card de plataforma: sin padding para que la imagen sangre al borde */
.ccl-revista-plataforma-card { padding: 0 !important; }

.ccl-revista-card-img {
    margin: 0 !important;
    width: 100% !important;
    display: block;
}
.ccl-revista-card-img img {
    height: 220px !important;
    margin: auto;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 0 !important;
    display: block !important;
}

.ccl-revista-card-body { padding: 28px 28px 32px; }
.ccl-revista-card-body h3.wp-block-heading { margin-bottom: 10px !important; }

/* ---------- Tab Beneficios: imagen izq + lista beneficios der ---------- */
.ccl-revista-tab-img-col { display: flex; align-items: stretch; }

.ccl-revista-tab-img {
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
}
.ccl-revista-tab-img img {
    width: 100% !important;
    height: 100% !important;
    min-height: 340px;
    object-fit: cover !important;
    border-radius: 14px !important;
    display: block !important;
}

/* Ítem de beneficio: icono + texto */
.ccl-revista-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 20px 0;
}
.ccl-revista-benefit-item i {
    font-size: 32px;
    color: #3A7DB5;
    flex-shrink: 0;
    width: 40px;
    text-align: center;
    margin-top: 2px;
}
.ccl-revista-benefit-item p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: #4B535D;
}

/* Separador entre ítems */
.ccl-revista-benefit-divider {
    border: none !important;
    border-top: 1px solid #E0E5EA !important;
    margin: 0 !important;
    width: 100% !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
    .ccl-revista-tab-img img { min-height: 280px; }
}

@media (max-width: 767px) {
    .ccl-revista-intro-section  { padding: 40px 0 !important; }
    .ccl-revista-plataforma-section { padding: 36px 0 48px !important; }

    .ccl-revista-intro-section .ccl-letter-spacing-neg-1 {
        font-size: 15px !important;
        padding: 10px 24px !important;
        margin-top: 28px !important;
    }

    .ccl-revista-card-img img { height: 180px !important; }

    /* Beneficios: apila imagen sobre la lista */
    .ccl-revista-tab-img-col { display: block; }
    .ccl-revista-tab-img img { min-height: 220px; border-radius: 10px !important; }

    .ccl-revista-benefit-item { gap: 14px; padding: 16px 0; }
    .ccl-revista-benefit-item i { font-size: 26px; width: 32px; }
}

/* ==========================================================================
   Nuestros Servicios (Tabs) - Home
   Milagros: la imagen queda mas alta que el bloque de texto en las 5 tabs.
   La altura de la columna de imagen (40%) se fija por JS (ccl-tabs.js) para
   igualar el alto real de la columna de texto (60%); aqui solo el recorte.
   ========================================================================== */
.ccl-nuestros-servicios .wp-block-column:has(> .wp-block-image) .wp-block-image {
    margin: 0;
    height: 100%;
    overflow: hidden;
}
.ccl-nuestros-servicios .wp-block-column:has(> .wp-block-image) .wp-block-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
@media (max-width: 1024px) {
    .ccl-nuestros-servicios .wp-block-column:has(> .wp-block-image) .wp-block-image,
    .ccl-nuestros-servicios .wp-block-column:has(> .wp-block-image) .wp-block-image img {
        height: auto;
    }
}

/* ==========================================================================
   GLOBAL: Stack de columnas Gutenberg a 1024px en vez del default de WP (781px)
   Aplica a todo el contenido de paginas que use wp:columns "a secas", sin un
   patron/clase propia que ya maneje su propio responsive.
   ========================================================================== */
@media (max-width: 1024px) {
    .entry-content .wp-block-columns {
        flex-wrap: wrap !important;
    }

    .entry-content .wp-block-columns > .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }

    /* Excepcion: tarjetas de contacto (icono circular + texto) no deben apilarse
       en tablet, el icono es pequeño (52px) y sobra espacio de sobra para mantenerlos
       en fila incluso en 1024px. */
    .entry-content .ccl-contact-card .wp-block-columns > .wp-block-column:first-child {
        flex: 0 0 auto !important;
        width: auto !important;
    }

    .entry-content .ccl-contact-card .wp-block-columns > .wp-block-column:last-child {
        flex: 1 1 auto !important;
        width: auto !important;
    }
}

/* Excepcion: seccion "Presentaciones" de OCDE (imagen 45% + texto 55%) no
   debe apilarse hasta el breakpoint normal de WP (782px), se mantiene en
   fila desde 782px hasta 1024px */
@media (min-width: 782px) and (max-width: 1024px) {
    body.page-id-299665 .wp-block-columns:has(> .wp-block-column[style*="flex-basis:45%"]) {
        flex-wrap: nowrap !important;
    }

    body.page-id-299665 .wp-block-column[style*="flex-basis:45%"] {
        flex-basis: 45% !important;
        width: 45% !important;
    }

    body.page-id-299665 .wp-block-column[style*="flex-basis:55%"] {
        flex-basis: 55% !important;
        width: 55% !important;
    }
}

/* Link "ContÃ¡ctanos." de Preguntas Frecuentes (Asesoria Legal /
   Orientacion en Comercio Exterior) hacia el ancla #contactanos: color
   fijo, sin cambio en hover/focus/click */
.ccl-link-contactanos,
.ccl-link-contactanos:hover,
.ccl-link-contactanos:focus,
.ccl-link-contactanos:active,
.ccl-link-contactanos:visited {
    color: #ffc325 !important;
}

/* Encuentro de Negocios (#tipos: tarjetas Importadores/Exportadores).
   En tablet las tarjetas se apilan una debajo de otra (1 por fila, eso
   ya lo hace la regla sitewide), pero DENTRO de cada tarjeta la imagen
   y el texto deben seguir en fila (no apilarse) hasta llegar a mobile. */
@media (min-width: 601px) {
    #tipos .wp-block-cover .wp-block-columns,     .ccl-tipos-section .wp-block-cover .wp-block-columns {
        flex-wrap: nowrap !important;
    }

    #tipos .wp-block-cover .wp-block-columns > .wp-block-column,     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column {
        flex-grow: 0 !important;
    }

    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"],
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] {
        flex-basis: 40.617% !important;
        width: 40.617% !important;
    }

    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:59.383%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:59.383%"],
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 59.383%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 59.383%"] {
        flex-basis: 59.383% !important;
        width: 59.383% !important;
    }

    /* La altura de la fila la debe marcar el TEXTO (mas corto), no la
       imagen: la columna se centra verticalmente para que la imagen
       (altura fija 280px, ver regla mas abajo) quede centrada junto
       al texto en vez de estirarse a la altura completa de la fila. */
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"],
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] {
        align-self: center !important;
    }

    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"] .ccl-img-w-100.ccl-img-h-100,     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"] .ccl-img-w-100.ccl-img-h-100,
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] .ccl-img-w-100.ccl-img-h-100,     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] .ccl-img-w-100.ccl-img-h-100 {
        height: auto !important;
    }

    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"] .ccl-img-w-100.ccl-img-h-100 img,     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:40.617%"] .ccl-img-w-100.ccl-img-h-100 img,
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] .ccl-img-w-100.ccl-img-h-100 img,     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 40.617%"] .ccl-img-w-100.ccl-img-h-100 img {
        width: 100% !important;
        height: 280px !important;
        object-fit: cover !important;
        /* Altura fija 280px (resolucion real del archivo) en vez de
           aspect-ratio: el ancho lo da la columna (40.617%), sea cual
           sea el ancho de pantalla, la foto siempre recorta a 280px
           de alto sin estirarse ni pixelarse. */
    }

    /* La columna de texto usa "justify-content:space-around", pensada
       para cuando ocupaba todo el ancho apilada. Se agrupa de forma
       compacta (sin depender ya de una imagen mucho mas alta). */
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:59.383%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis:59.383%"],
    #tipos .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 59.383%"],     .ccl-tipos-section .wp-block-cover .wp-block-columns > .wp-block-column[style*="flex-basis: 59.383%"] {
        justify-content: center !important;
        align-self: center !important;
    }
}

/* Mobile: la imagen no tenia ningun control (se veia a su tamaño nativo
   210x280, sin rellenar el ancho de la tarjeta). Se rellena el ancho con
   object-fit:cover, pero tambien se limita a 280px de alto (su resolucion
   real) para no pixelarla. */
@media (max-width: 600px) {
    #tipos .wp-block-cover .ccl-img-w-100.ccl-img-h-100 img,     .ccl-tipos-section .wp-block-cover .ccl-img-w-100.ccl-img-h-100 img {
        width: 100% !important;
        height: 280px !important;
        object-fit: cover !important;
    }

    /* El boton "Ver mas" quedaba muy pegado al borde inferior de la
       tarjeta: +15px de aire debajo */
    #tipos .wp-block-cover .wp-block-buttons,     .ccl-tipos-section .wp-block-cover .wp-block-buttons {
        margin-bottom: 15px !important;
    }
}



