.elementor-23870 .elementor-element.elementor-element-339bbb5{--display:flex;--min-height:640px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-23870 .elementor-element.elementor-element-339bbb5:not(.elementor-motion-effects-element-type-background), .elementor-23870 .elementor-element.elementor-element-339bbb5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://oposicionesdefisioterapia.com/wp-content/uploads/2026/09/BG-HERO-MA3.jpg");background-position:center left;background-size:cover;}.elementor-23870 .elementor-element.elementor-element-22bc573e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-23870 .elementor-element.elementor-element-6953e6ac{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-23870 .elementor-element.elementor-element-36704609 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:3.5rem;font-weight:900;color:#374C63;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-23870 .elementor-element.elementor-element-884e1da{font-family:"Roboto", Sans-serif;font-size:1.4rem;font-weight:400;color:var( --e-global-color-5de6a19 );}.elementor-23870 .elementor-element.elementor-element-366503ce{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-23870 .elementor-element.elementor-element-33739597 img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-23870 .elementor-element.elementor-element-5b34e9ab{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-23870 .elementor-element.elementor-element-5b34e9ab:not(.elementor-motion-effects-element-type-background), .elementor-23870 .elementor-element.elementor-element-5b34e9ab > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F7F6;}.elementor-23870 .elementor-element.elementor-element-305368cd{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#F0F0F0;--border-color:#F0F0F0;--border-radius:10px 10px 10px 10px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-23870 .elementor-element.elementor-element-305368cd:not(.elementor-motion-effects-element-type-background), .elementor-23870 .elementor-element.elementor-element-305368cd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-23870 .elementor-element.elementor-element-429e549f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-23870 .elementor-element.elementor-element-73694072 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;color:#374C63;font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;}.elementor-23870 .elementor-element.elementor-element-157e6c62{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:700;color:var( --e-global-color-3b1b044 );}.elementor-23870 .elementor-element.elementor-element-b2eaec0{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:400;color:#64748B;}.elementor-widget-progress .elementor-title{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-progress .elementor-progress-wrapper .elementor-progress-bar{background-color:var( --e-global-color-primary );}.elementor-23870 .elementor-element.elementor-element-33bff59 .elementor-progress-bar{height:10px;line-height:10px;}.elementor-23870 .elementor-element.elementor-element-33bff59 .elementor-progress-wrapper{border-radius:50px;overflow:hidden;}.elementor-23870 .elementor-element.elementor-element-48df38e8{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-23870 .elementor-element.elementor-element-4c7cf66a .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;color:#374C63;font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;}.elementor-23870 .elementor-element.elementor-element-35d06e1b{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:700;color:var( --e-global-color-3b1b044 );}.elementor-23870 .elementor-element.elementor-element-9103cd5{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:400;color:#64748B;}.elementor-23870 .elementor-element.elementor-element-6368cf5f .elementor-progress-bar{height:10px;line-height:10px;}.elementor-23870 .elementor-element.elementor-element-6368cf5f .elementor-progress-wrapper{border-radius:50px;overflow:hidden;}.elementor-23870 .elementor-element.elementor-element-3f59b071{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-23870 .elementor-element.elementor-element-35067c3f .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:0;--counter-suffix-grow:1;--counter-number-grow:0;color:#374C63;font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;}.elementor-23870 .elementor-element.elementor-element-2239aa86{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:700;color:var( --e-global-color-3b1b044 );}.elementor-23870 .elementor-element.elementor-element-33f8b142{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:400;color:#64748B;}.elementor-23870 .elementor-element.elementor-element-5f544b62 .elementor-progress-bar{height:10px;line-height:10px;}.elementor-23870 .elementor-element.elementor-element-5f544b62 .elementor-progress-wrapper{border-radius:50px;overflow:hidden;}.elementor-23870 .elementor-element.elementor-element-b730d24{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-23870 .elementor-element.elementor-element-de6bbd6{--grid-columns:3;--load-more-button-align:center;}.elementor-23870 .elementor-element.elementor-element-de6bbd6 .elementor-button{background-color:#E66A2C;fill:#FFFFFF;color:#FFFFFF;}.elementor-23870 .elementor-element.elementor-element-de6bbd6 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-23870 .elementor-element.elementor-element-de6bbd6 .e-loop-item > .elementor-section, .elementor-23870 .elementor-element.elementor-element-de6bbd6 .e-loop-item > .elementor-section > .elementor-container, .elementor-23870 .elementor-element.elementor-element-de6bbd6 .e-loop-item > .e-con, .elementor-23870 .elementor-element.elementor-element-de6bbd6 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-23870 .elementor-element.elementor-element-de6bbd6{--grid-columns:2;}}@media(max-width:767px){.elementor-23870 .elementor-element.elementor-element-339bbb5{--min-height:528px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23870 .elementor-element.elementor-element-339bbb5:not(.elementor-motion-effects-element-type-background), .elementor-23870 .elementor-element.elementor-element-339bbb5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-repeat:no-repeat;}.elementor-23870 .elementor-element.elementor-element-22bc573e{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-23870 .elementor-element.elementor-element-36704609 .elementor-heading-title{font-size:2rem;}.elementor-23870 .elementor-element.elementor-element-884e1da{font-size:1.1rem;}.elementor-23870 .elementor-element.elementor-element-33739597 img{border-radius:10px 10px 10px 10px;}.elementor-23870 .elementor-element.elementor-element-b730d24{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-23870 .elementor-element.elementor-element-de6bbd6{--grid-columns:1;}}/* Start custom CSS for heading, class: .elementor-element-36704609 */.destacado {
  /* Mantiene el naranja puro hasta el 60% y hace la transición al final */
  background: linear-gradient(90deg, #F3B340 0%, #E66A2C 100%, #374C63 100%);
  
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-b2eaec0 */.elementor-progress-bar {
   
    transition: width 1.8s cubic-bezier(0.16, 1, 0.3, 1);
  
    background: linear-gradient(90deg, rgb(54, 76, 99) 0%, rgb(230, 106, 44) 100%);
    
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-9103cd5 */.elementor-progress-bar {
   
    transition: width 1.8s cubic-bezier(0.16, 1, 0.3, 1);
  
    background: linear-gradient(90deg, rgb(54, 76, 99) 0%, rgb(230, 106, 44) 100%);
    
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-33f8b142 */.elementor-progress-bar {
   
    transition: width 1.8s cubic-bezier(0.16, 1, 0.3, 1);
  
    background: linear-gradient(90deg, rgb(54, 76, 99) 0%, rgb(230, 106, 44) 100%);
    
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-305368cd */span.elementor-counter-number-prefix {
    color: #E66A2C;
}

/* 1. Damos un poco de espacio al texto para que no pegue con la línea */
.elementor-23870 .elementor-element.elementor-element-305368cd > .e-child,
.elementor-23870 .elementor-element.elementor-element-305368cd > .e-con-inner > .e-child {
    position: relative;
    padding-right: 20px !important;
}

/* 2. Centramos la línea en el espacio entre columnas */
.elementor-23870 .elementor-element.elementor-element-305368cd > .e-child:not(:last-child)::after,
.elementor-23870 .elementor-element.elementor-element-305368cd > .e-con-inner > .e-child:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -10px; /* Puedes probar con -15px si quieres alejarla más */
    top: 15%;
    height: 70%;
    width: 1px;
    background: linear-gradient(180deg, rgba(226,232,240,0) 0%, rgba(203,213,225,0.8) 50%, rgba(226,232,240,0) 100%);
    z-index: 5;
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-de6bbd6 *//* 
 * Oposiciones de Fisioterapia - Rediseño Definitivo Cursos Acreditados
 * ======================================================================================
 * Aplica este CSS en Elementor > Ajustes del Sitio > CSS Personalizado.
 */

/* ======================================================================================
 * 0. SELECTOR DEL FILTRO DE COMUNIDADES
 * ====================================================================================== */
.filtro-comunidades-wrapper {
    margin: 0 auto 40px auto !important;
    max-width: 420px !important;
    text-align: center !important;
}

.filtro-comunidades-label {
    display: block !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #364c63 !important;
    margin-bottom: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
}

.filtro-comunidades-select {
    width: 100% !important;
    padding: 12px 20px !important;
    font-size: 15px !important;
    font-family: 'Roboto', sans-serif !important;
    color: #364c63 !important;
    background-color: #ffffff !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23364c63' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
    background-size: 16px !important;
    border: 2px solid #cbd5e1 !important;
    border-radius: 8px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow: 0 2px 4px rgba(54, 76, 99, 0.04) !important;
}

.filtro-comunidades-select:focus {
    outline: none !important;
    border-color: #e66a2c !important;
    box-shadow: 0 0 0 3px rgba(230, 106, 44, 0.15) !important;
}

/* ======================================================================================
 * 1. ESTRUCTURA Y COLUMNAS DEL GRID (3 Columnas Iguales)
 * ====================================================================================== */
.elementor-loop-container.elementor-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 1024px) {
    .elementor-loop-container.elementor-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Envoltorio exterior de Elementor (Transparente para evitar tarjetas duplicadas) */
.e-loop-item,
.elementor-loop-container .elementor-post {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    height: 100% !important;
    min-width: 0 !important;
}

/* ======================================================================================
 * 2. TARJETA VISUAL ÚNICA (.course-card)
 * ====================================================================================== */
.course-card,
.product-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    box-shadow: 0 4px 10px rgba(54, 76, 99, 0.03) !important;
    position: relative !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.course-card:hover,
.product-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(54, 76, 99, 0.08) !important;
}

/* ======================================================================================
 * 3. PORTADA DE LA IMAGEN (SIN RECORTE Y PROPORCIONAL)
 * ====================================================================================== */
.course-card .elementor-element-22d2d73d,
#course-image-wrapper,
#course-image-wrapper .elementor-widget-container,
#course-image-wrapper a,
.elementor-post__thumbnail,
.product-image-container {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    margin: 5px 0 0 0 !important;
    padding: 0 !important;
    display: block !important;
}

#course-image-wrapper img,
.elementor-post__thumbnail img,
.product-image-container img {
    width: 100% !important;
    height: auto !important;
    max-height: 250px !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    display: block !important;
    margin: 0 auto !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* ======================================================================================
 * 4. INSIGNIAS SUPERIORES
 * ====================================================================================== */
.course-card .elementor-element-6970d64b {
    position: static !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.badge-grupo,
.badge-grupo-oposiciones,
.elementor-post__badge {
    position: absolute !important;
    top: -12px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 10 !important;
    max-width: 90% !important;
    width: max-content !important;
    text-align: center !important;
}

.badge-grupo a,
.badge-grupo div,
.badge-grupo-oposiciones a,
.badge-grupo-oposiciones div,
.elementor-post__badge,
.elementor-widget-heading[class*="badge"] .elementor-heading-title {
    background-color: #e66a2c !important;
    color: #ffffff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 5px 14px !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 6px rgba(230, 106, 44, 0.2) !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.25 !important;
    max-width: 90% !important;
    display: inline-block !important;
    border: none !important;
}

/* ======================================================================================
 * 5. CONTENIDO INFERIOR (Logos, Títulos y Extractos en Escritorio)
 * ====================================================================================== */
.course-card > .e-con-inner,
.product-info-wrapper,
.elementor-post > .elementor-element-populated {
    padding: 0 18px 18px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    gap: 0 !important;
}

/* Fila de logos CFC y Oferta */
.tags-row,
.fila-etiquetas-producto {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 12px 0 10px 0 !important;
    height: 30px !important;
    min-height: 30px !important;
}

.tags-row img,
.tags-row .elementor-widget-image img,
.fila-etiquetas-producto img {
    height: 26px !important;
    max-height: 26px !important;
    width: auto !important;
    max-width: 120px !important;
    object-fit: contain !important;
    display: inline-block !important;
    margin: 0 !important;
}

/* Título del curso */
.e-loop-item .elementor-widget-woocommerce-product-title .product_title,
.e-loop-item .elementor-widget-woocommerce-product-title .elementor-heading-title,
.e-loop-item .product-title-oposiciones,
.e-loop-item .elementor-post__title,
.product-title-oposiciones {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #364c63 !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
    margin: 0 0 10px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: 44px !important;
    min-height: 44px !important;
}

/* Descripción del curso */
.elementor-post__excerpt,
.product-excerpt-oposiciones,
.elementor-post__excerpt *,
.product-excerpt-oposiciones * {
    font-family: 'Roboto', sans-serif !important;
    font-size: 13.5px !important;
    color: #5a6e7f !important;
    font-weight: normal !important;
    line-height: 1.5 !important;
    text-transform: none !important;
    text-shadow: none !important;
}

.elementor-post__excerpt,
.product-excerpt-oposiciones {
    margin-bottom: 16px !important;
    display: block !important;
    overflow: visible !important;
}
/* ======================================================================================
 * 6. PIE DE TARJETA (PRECIOS Y BOTÓN COMPRAR)
 * ====================================================================================== */
.course-footer,
.product-footer-oposiciones,
.woocommerce-loop-product__buttons_wrapper {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-top: 1px solid #f1f5f9 !important;
    padding-top: 14px !important;
    margin-top: auto !important;
}

/* Precio estándar y precio final rebajado */
.course-footer .amount,
.product-price-oposiciones,
.price,
.amount,
.course-footer ins .amount,
.product-price-oposiciones ins .amount {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #364c63 !important;
    text-decoration: none !important;
}

/* Corrección del precio tachado (del) */
.course-footer del,
.product-price-oposiciones del,
.price del {
    color: #94a3b8 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    text-decoration: line-through !important;
    text-decoration-color: #94a3b8 !important;
    text-decoration-thickness: 1.5px !important;
    margin-right: 6px !important;
    display: inline-block !important;
    vertical-align: baseline !important;
}

.course-footer del .amount,
.product-price-oposiciones del .amount,
.price del .amount {
    color: #94a3b8 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
}

.course-footer ins,
.product-price-oposiciones ins,
.price ins {
    text-decoration: none !important;
}

/* Botón COMPRAR */
.course-footer .elementor-button,
.course-footer a.elementor-button,
.elementor-element-76d35d6 .elementor-button,
.woocommerce ul.products li.product .button,
.product-btn-oposiciones,
.elementor-post .add_to_cart_button {
    background-color: #364c63 !important;
    color: #ffffff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 22px !important;
    min-width: 105px !important;
    border-radius: 6px !important;
    border: none !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
    box-shadow: 0 2px 5px rgba(54, 76, 99, 0.08) !important;
}

.course-footer .elementor-button .elementor-button-text {
    color: #ffffff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
}

.course-footer .elementor-button:hover,
.course-footer a.elementor-button:hover,
.elementor-element-76d35d6 .elementor-button:hover,
.woocommerce ul.products li.product .button:hover,
.product-btn-oposiciones:hover,
.elementor-post .add_to_cart_button:hover {
    background-color: #e66a2c !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(230, 106, 44, 0.25) !important;
    transform: translateY(-1px) !important;
}

/* ======================================================================================
 * 7. AJUSTES ESPECÍFICOS PARA MÓVIL (<= 767px)
 * ====================================================================================== */
@media (max-width: 767px) {
    .elementor-loop-container.elementor-grid {
        grid-template-columns: 1fr !important;
        grid-auto-rows: auto !important;
        gap: 25px !important;
    }

    .e-loop-item,
    .course-card,
    .product-card {
        height: auto !important;
        min-height: 0 !important;
    }

    .course-card > .e-con-inner,
    .product-info-wrapper {
        padding: 0 16px 16px 16px !important;
        flex-grow: 0 !important;
    }

    .course-card .elementor-element-22d2d73d,
    #course-image-wrapper,
    #course-image-wrapper img,
    .elementor-post__thumbnail img,
    .product-image-container img {
        height: 210px !important;
        max-height: 210px !important;
        object-fit: contain !important;
    }

    .badge-grupo,
    .badge-grupo-oposiciones,
    .elementor-post__badge {
        top: -10px !important;
        max-width: 85% !important;
    }

    .badge-grupo a,
    .badge-grupo div,
    .badge-grupo-oposiciones a,
    .badge-grupo-oposiciones div,
    .elementor-post__badge,
    .elementor-widget-heading[class*="badge"] .elementor-heading-title {
        font-size: 10px !important;
        padding: 4px 10px !important;
    }

    .e-loop-item .elementor-widget-woocommerce-product-title .product_title,
    .e-loop-item .elementor-widget-woocommerce-product-title .elementor-heading-title,
    .e-loop-item .product-title-oposiciones {
        font-size: 14.5px !important;
        height: auto !important;
        min-height: 0 !important;
        margin-bottom: 8px !important;
    }

    .elementor-post__excerpt,
    .product-excerpt-oposiciones {
        font-size: 13px !important;
        margin-bottom: 12px !important;
        height: auto !important;
    }

    .course-footer,
    .product-footer-oposiciones,
    .woocommerce-loop-product__buttons_wrapper {
        margin-top: 8px !important;
        padding-top: 10px !important;
    }
}

/* ======================================================================================
 * 8. OCULTAR OBSOLETOS Y CONTROL DE PAGINACIÓN AL FILTRAR
 * ====================================================================================== */
.badge-obsoleto-marzo {
    display: none !important;
}

#grid-cursos.ma3-filtrado-activo .e-loop__load-more,
#grid-cursos.ma3-filtrado-activo .e-loop-load-more,
#grid-cursos.ma3-filtrado-activo .elementor-load-more-button,
#grid-cursos.ma3-filtrado-activo .elementor-pagination {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}/* End custom CSS */