/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.13.1761046662
Updated: 2025-10-21 07:07:42

*/


:root {
  --bg-scrollbar: var(--e-global-color-primary);
}

.ratio-cuadrado {
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.elementor-heading-title span.destacado-orange {
	color: var(--e-global-color-9716615);
}

.elementor-widget-heading.texto-destacado .elementor-heading-title,
.elementor-widget-text-editor .texto-destacado {
    display: inline-block;
   background-image: linear-gradient(transparent 50%, color-mix(in srgb, var(--e-global-color-secondary) 30%, transparent) 30%);
    //background-size: 0% 100%;
    background-repeat: no-repeat;
    padding: 5px 10px;
}

.elementor-widget-text-editor .texto-destacado {
    display: inline-block;
   background-image: linear-gradient(transparent 50%, color-mix(in srgb, var(--e-global-color-secondary) 30%, transparent) 30%);
    //background-size: 0% 100%;
    background-repeat: no-repeat;
    padding: 5px 10px;
    font-size: 1.3em;
    font-weight: 500;
    line-height: 1.6;
}

/* ==========================================
   SM · CARDS CORPORATIVAS
   ========================================== */

/* TARJETAS */
.sm-cards-corporativas .sm-card {
    position: relative;
    flex: 1 1 0;
    padding: 0 24px;
    transition: background-color 0.3s ease;
}

/* SEPARADORES VERTICALES */
.sm-cards-corporativas .sm-card:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 8%;
    right: 0;
    width: 2px;
    height: 84%;
    background-color: rgba(255, 255, 255, 0.30);
}

/* ICONOS */
.sm-cards-corporativas .sm-card .elementor-icon {
    transition: transform 0.3s ease, filter 0.3s ease;
}

/* TÍTULOS */
.sm-cards-corporativas .sm-card .elementor-heading-title {
    min-height: 2.8em;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.35;
    margin-bottom: 12px;
}

/* TEXTOS */
.sm-cards-corporativas .sm-card .elementor-widget-text-editor {
    line-height: 1.55;
}

/* EFECTO HOVER */
@media (hover: hover) {
    .sm-cards-corporativas .sm-card:hover .elementor-icon {
        transform: scale(1.08);
        filter: brightness(1.2);
    }
}


/* ==========================================
   TABLET
   ========================================== */

@media (max-width: 1024px) {

    .sm-cards-corporativas {
        flex-wrap: wrap;
    }

    .sm-cards-corporativas .sm-card {
        flex: 0 0 50%;
        padding: 24px;
    }

    /* Ocultar separador vertical de la segunda tarjeta */
    .sm-cards-corporativas .sm-card:nth-child(2)::after {
        display: none;
    }

    /* Separadores horizontales entre filas */
    .sm-cards-corporativas .sm-card:nth-child(-n+2)::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 10%;
        width: 80%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.25);
    }
}


/* ==========================================
   MÓVIL
   ========================================== */

@media (max-width: 767px) {

    .sm-cards-corporativas .sm-card {
        flex: 0 0 100%;
        padding: 24px 12px;
    }

    /* Eliminar separadores verticales */
    .sm-cards-corporativas .sm-card::after {
        display: none;
    }

    /* Separadores horizontales */
    .sm-cards-corporativas .sm-card:not(:last-child)::before {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 20%;
        width: 60%;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.25);
    }

    /* Altura natural de los títulos */
    .sm-cards-corporativas .sm-card .elementor-heading-title {
        min-height: 0;
        margin-bottom: 12px;
    }
}


```css
/* ==================================================
   CD SAN MARCIAL · TARJETAS DE EQUIPOS
   Loop Item Elementor: 12212
   ================================================== */

/* 1. CUADRÍCULA */
.sm-equipos-grid {
    width: 100%;
}

/* 2. CONTENEDOR EXTERIOR DE CADA TARJETA */
.sm-equipo-wrapper {
    width: 100%;
}

/* 3. TARJETA INDIVIDUAL */
.sm-equipo-card {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.14);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

/* Hover de la tarjeta */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
    }
}

/* 4. IMAGEN */
.sm-equipo-card__imagen {
    overflow: hidden;
}

.sm-equipo-card__imagen img {
    display: block;
    width: 100%;
    height: auto;
    transition:
        transform 0.65s cubic-bezier(0.2, 0.65, 0.3, 1),
        filter 0.45s ease,
        opacity 0.45s ease;
}

/* Zoom de la imagen al pasar por la tarjeta */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover .sm-equipo-card__imagen img {
        transform: scale(1.045);
        filter: saturate(1.08);
        opacity: 0.92;
    }
}

/* 5. CONTENIDO */
.sm-equipo-card__contenido {
    transition: background-color 0.3s ease;
}

.sm-equipo-card__titulo,
.sm-equipo-card__temporada {
    position: relative;
}

/* 6. ZONA DE ACCIÓN */
.sm-equipo-card__accion {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 7. CÍRCULO DE LA FLECHA */
.sm-equipo-card__flecha .card-arrow {
    width: 44px;
    height: 44px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--e-global-color-accent);
    border-radius: 50%;
    background-color: var(--e-global-color-accent);
    color: #fff;
    transition:
        background-color 0.3s ease,
        border-color 0.3s ease;
}

/* 8. SVG */
.sm-equipo-card__flecha .card-arrow svg {
    display: block;
    width: 18px;
    height: 18px;
    color: #fff;
    transition: transform 0.3s ease;
}

/* Movimiento de la flecha */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover
    .sm-equipo-card__flecha .card-arrow svg {
        transform: translate(3px, -3px);
    }
}

/* 9. ACCESIBILIDAD: REDUCIR MOVIMIENTO */
@media (prefers-reduced-motion: reduce) {
    .sm-equipo-card,
    .sm-equipo-card__imagen img,
    .sm-equipo-card__contenido,
    .sm-equipo-card__flecha .card-arrow,
    .sm-equipo-card__flecha .card-arrow svg {
        transition: none !important;
    }

    .sm-equipo-card:hover {
        transform: none;
    }

    .sm-equipo-card:hover .sm-equipo-card__imagen img {
        transform: none;
        filter: none;
        opacity: 1;
    }

    .sm-equipo-card:hover
    .sm-equipo-card__flecha .card-arrow svg {
        transform: none;
    }
}


/* ==================================================
   CD SAN MARCIAL · TARJETAS DE EQUIPOS
   Loop Item Elementor: 12212
   ================================================== */

/* 1. CUADRÍCULA */
.sm-equipos-grid {
    width: 100%;
}

/* 2. CONTENEDOR EXTERIOR DE CADA TARJETA */
.sm-equipo-wrapper {
    width: 100%;
}

/* 3. TARJETA INDIVIDUAL */
.sm-equipo-card {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.14);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

/* Hover de la tarjeta */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover {
        transform: translateY(-6px);
        box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
    }
}

/* 4. IMAGEN */
.sm-equipo-card__imagen {
    overflow: hidden;
}

.sm-equipo-card__imagen img {
    display: block;
    width: 100%;
    height: auto;
    transition:
        transform 0.65s cubic-bezier(0.2, 0.65, 0.3, 1),
        filter 0.45s ease,
        opacity 0.45s ease;
}

/* Zoom de la imagen al pasar por la tarjeta */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover .sm-equipo-card__imagen img {
        transform: scale(1.045);
        filter: saturate(1.08);
        opacity: 0.92;
    }
}

/* 5. CONTENIDO */
.sm-equipo-card__contenido {
    transition: background-color 0.3s ease;
}

.sm-equipo-card__titulo,
.sm-equipo-card__temporada {
    position: relative;
}

/* 6. ZONA DE ACCIÓN */
.sm-equipo-card__accion {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 7. CÍRCULO DE LA FLECHA */
.sm-equipo-card__flecha .card-arrow {
    width: 44px;
    height: 44px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--e-global-color-accent);
    border-radius: 50%;
    background-color: var(--e-global-color-accent);
    color: #fff;
    transition:
        background-color 0.3s ease,
        border-color 0.3s ease;
}

/* 8. SVG */
.sm-equipo-card__flecha .card-arrow svg {
    display: block;
    width: 18px;
    height: 18px;
    color: #fff;
    transition: transform 0.3s ease;
}

/* Movimiento de la flecha */
@media (hover: hover) and (pointer: fine) {
    .sm-equipo-card:hover
    .sm-equipo-card__flecha .card-arrow svg {
        transform: translate(3px, -3px);
    }
}

/* 9. ACCESIBILIDAD: REDUCIR MOVIMIENTO */
@media (prefers-reduced-motion: reduce) {
    .sm-equipo-card,
    .sm-equipo-card__imagen img,
    .sm-equipo-card__contenido,
    .sm-equipo-card__flecha .card-arrow,
    .sm-equipo-card__flecha .card-arrow svg {
        transition: none !important;
    }

    .sm-equipo-card:hover {
        transform: none;
    }

    .sm-equipo-card:hover .sm-equipo-card__imagen img {
        transform: none;
        filter: none;
        opacity: 1;
    }

    .sm-equipo-card:hover
    .sm-equipo-card__flecha .card-arrow svg {
        transform: none;
    }
}



/*--ITEMS SCROLL---*/

/* -- items en scroll -- */

/* Scroll horizontal en móvil para Loop Grid */

@media (max-width: 767px) {

  /* Contenedor del loop */
  .items-scroll .elementor-loop-container,
  .items-scroll.elementor-element{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 16px; /* ajusta separación */
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  /* Cada item del loop */
  .items-scroll .elementor-loop-container .e-loop-item,
  .items-scroll.elementor-element .elementor-element{
    scroll-snap-align: start;
  }
  
  /* Let's get this party started */
  .items-scroll  .elementor-loop-container::-webkit-scrollbar,
  .items-scroll.elementor-element::-webkit-scrollbar {
    height: 2px;
  }
   
  /* Track */
  .items-scroll .elementor-loop-container::-webkit-scrollbar-track,
  .items-scroll.elementor-element::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2); 
    -webkit-border-radius: 5px;
    border-radius: 5px;
  }
   
  /* Handle */
  .items-scroll .elementor-loop-container::-webkit-scrollbar-thumb,
  .items-scroll.elementor-element::-webkit-scrollbar-thumb{
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: var(--e-global-color-primary); 
    //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
  }

  .items-scroll .elementor-loop-container::-webkit-scrollbar-thumb:window-inactive,
  .items-scroll.elementor-element::-webkit-scrollbar-thumb:window-inactive{
    background: rgba(10, 162, 177, .3); 
  }

}

@media (min-width: 768px) and (max-width:1024px){
  .items-scroll-md .elementor-loop-container,
  .items-scroll-md.elementor-element{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 16px; /* ajusta separación */
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  /* Cada item del loop */
  .items-scroll-md .elementor-loop-container .e-loop-item,
  .items-scroll-md.elementor-element .elementor-element{
    scroll-snap-align: start;
  }
  
  /* Let's get this party started */
  .items-scroll-md  .elementor-loop-container::-webkit-scrollbar,
  .items-scroll-md.elementor-element::-webkit-scrollbar {
    height: 2px;
  }
   
  /* Track */
  .items-scroll-md .elementor-loop-container::-webkit-scrollbar-track,
  .items-scroll-md.elementor-element::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2); 
    -webkit-border-radius: 5px;
    border-radius: 5px;
  }
   
  /* Handle */
  .items-scroll-md .elementor-loop-container::-webkit-scrollbar-thumb,
  .items-scroll-md.elementor-element::-webkit-scrollbar-thumb{
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: var(--e-global-color-primary); 
    //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
  }

  .items-scroll-md .elementor-loop-container::-webkit-scrollbar-thumb:window-inactive,
  .items-scroll-md.elementor-element::-webkit-scrollbar-thumb:window-inactive{
    background: rgba(10, 162, 177, .3); 
  }
}

@media (min-width: 1025px) {
  .items-scroll-lg .elementor-loop-container,
  .items-scroll-lg.elementor-element{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 16px; /* ajusta separación */
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  /* Cada item del loop */
  .items-scroll-lg .elementor-loop-container .e-loop-item,
  .items-scroll-lg.elementor-element .elementor-element{
    scroll-snap-align: start;
  }
  
  /* Let's get this party started */
  .items-scroll-lg  .elementor-loop-container::-webkit-scrollbar,
  .items-scroll-lg.elementor-element::-webkit-scrollbar {
    height: 2px;
  }
   
  /* Track */
  .items-scroll-lg .elementor-loop-container::-webkit-scrollbar-track,
  .items-scroll-lg.elementor-element::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2); 
    -webkit-border-radius: 5px;
    border-radius: 5px;
  }
   
  /* Handle */
  .items-scroll-lg .elementor-loop-container::-webkit-scrollbar-thumb,
  .items-scroll-lg.elementor-element::-webkit-scrollbar-thumb{
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: var(--e-global-color-primary); 
    //-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
  }

  .items-scroll-lg .elementor-loop-container::-webkit-scrollbar-thumb:window-inactive,
  .items-scroll-lg.elementor-element::-webkit-scrollbar-thumb:window-inactive{
    background: rgba(10, 162, 177, .3); 
  }
}

/* ========================================
   LISTAS · ELEMENTOR EDITOR DE TEXTO
   ======================================== */

/* Lista */
.elementor-widget-text-editor ul {
    list-style: none;
    padding-left: 0;
    margin: 0 0 1.25em;
}

/* Elementos de la lista */
.elementor-widget-text-editor ul li {
    position: relative;
    padding-left: 1.4em;
    margin-bottom: 0.2em;
    line-height: 1.6;
}

/* Icono personalizado */
.elementor-widget-text-editor ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--e-global-color-primary);
}

/* Eliminar margen del último elemento */
.elementor-widget-text-editor ul li:last-child {
    margin-bottom: 0;
}

/* CD San Marcial - Separadores de ventajas */
.section-icon-list {
    --sm-separator-color: rgba(255, 255, 255, 0.30);
    --sm-separator-width: 1px;
}

/* Cada elemento de la cuadrícula */
.section-icon-list > .e-con {
    position: relative;
    box-sizing: border-box;
}

/* Separador vertical entre columnas */
.section-icon-list > .e-con:nth-child(odd)::after {
    content: "";
    position: absolute;
    top: 8%;
    right: 0;
    height: 84%;
    width: var(--sm-separator-width);
    background: var(--sm-separator-color);
}

/* Separador horizontal entre filas */
.section-icon-list > .e-con:nth-child(-n+2)::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 4%;
    width: 92%;
    height: var(--sm-separator-width);
    background: var(--sm-separator-color);
}


/*----WPML---*/

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
}

.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
	font-family: 'FontAwesome';
	/*display: none !important;*/
    content: '\f107';
    vertical-align: middle;
    display: inline-block;
    border: unset;
    border-top: unset;
    position: absolute;
    right: 5px;
    top: calc(50% - 0.5em);
}
 
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu,
.wpml-ls-legacy-dropdown>ul,
.wpml-ls-legacy-dropdown>ul li,
.wpml-ls-legacy-dropdown>ul li a {
	border: none !important;
}

.wpml-ls-legacy-dropdown .wpml-ls-sub-menu .wpml-ls-item {
	font-size:1em!important;
}

.sponsors-wrapper .body a {
	text-decoration:none;
}