/*
 Theme Name:   rsturia child
 Theme URI:    https://www.rsturia.com/
 Description:  rsturia child theme
 Author:       xinxeta
 Author URI:   https://www.xinxeta.es/
 Template:     rsturia
 Version:      v1.0(0.1)
*/

/* COLORES

211f45  ·   Azul principal
bd0929  ·   Rojo principal
e1dfe7  ·   Gris fondos

*/

/* FONTS */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,600;0,700;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap');
body p,
body a {
    font-family: "Open Sans", sans-serif;
    font-weight: normal;
}

/* CUSTOM */
.nomargin {
    margin: 0 !important;
}
.nomargin p {
    margin: 0 !important;
}
.adc-nopadding {
    padding: 0 !important;
}
.tbold {
    font-weight: bold !important;
}
.tbold p {
    font-weight: bold !important;
}
.tsemi p {
    font-weight: 600;
}
.tcaps p {
    text-transform: uppercase;
}
.tcaps h1 {
    text-transform: uppercase;
}
.tcaps h2 {
    text-transform: uppercase;
}
.twhite {
    color: #fff;
}
.twhite p {
    color: #fff;
}
.twhite a {
    color: #fff;
}
.twhite a:hover {
    color: #bd0929;
}
.tblack p {
    color: #0d0d23;
}
.tnavy {
    color: #211f45;
}
.tnavy p {
    color: #211f45;
}
.tnavy a {
    color: #211f45;
}
.tblack a {
    color: #0d0d23;
}
.tblack a:hover {
    color: #bd0929;
}
.navy-bg {
    background-color: #211f45;
    padding: 0px 10px;
}
.text-montse p {
    font-family: 'Montserrat', sans-serif;
}
.tlower a {
    text-transform: inherit !important;
}
.nolink a {
    pointer-events: none !important; 
    cursor: default !important; 
}
.nolink a:hover {
    color: #fff !important;
}
.pag-legales a {
    color: #bd0929 !important;
}
.pag-legales a:hover {
    color: #b7b7b7 !important;
}
.tshadow-hard {
    text-shadow: 0 1px 0 rgba(255, 255, 255, 1);
}
.tshadow-medium {
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
}

/*headings*/
.hone {
    font-size: 2rem;
    font-family: 'Montserrat', sans-serif;
}
.htwo {
    font-size: 1.75rem;
    font-family: 'Montserrat', sans-serif;
}
.hthree {
    font-size: 1.5rem;
    font-family: 'Montserrat', sans-serif;
}
.tfour p {
    font-size: 1.25rem;
}
.mini-title p {
    font-size: 2rem;
    font-family: 'Montserrat', sans-serif;
}
.mini-title-two p {
    font-size: 1.75rem;
    font-family: 'Montserrat', sans-serif;
}
.hjumbo h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.125rem !important;
}
.hjumbo {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.125rem !important;
}
.hjumbo p {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.125rem !important;
}
.strong-red strong {
    color: #bd0929;
}
/*botones*/
.adc-boton-rojo a {
    background-color: #bd0929 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
.adc-boton-rojo a:hover {
    background-color: #fff !important;
    color: #211f45 !important;
}
.adc-boton-azul a {
    background-color: #211f45 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
.adc-boton-azul a:hover {
    background-color: #bd0929 !important;
    color: #fff !important;
}

a.boton-rojo {
    background-color: #bd0929 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
a.boton-rojo:hover {
    background-color: #211f45 !important;
}
a.boton-azul {
    background-color: #211f45 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
a.boton-azul:hover {
    background-color: #bd0929 !important;
}
/*tag double unerline*/
.tunder p {
    color: #211f45;
    letter-spacing: 4px;
    font-weight: 600;
}
.tunder-white p {
    color: #fff;
    letter-spacing: 4px;
    font-weight: 600;
}

/* FOOTER */
.adc-form-news form {
    display: flex !important;
}
.adc-form-news .wpforms-field-container {
    width: 80% !important;
}
.adc-form-news input[type=email] {
    min-height: 47px !important;
    font-size: 16px !important;
    padding: 12px 10px !important;
}
.adc-form-news .wpforms-submit {
    min-height: 46px !important;
    font-size: 16px !important;
}
div.wpforms-container-full {
    margin-bottom: 0 !important;
}
footer p {
    font-size: 0.8rem !important;
}

/* COOKIES */
.cn-close-icon {
    right: 15px !important;
    top: 15px !important;
    margin-top: unset !important;
}
#cookie-notice {
    margin: 15px !important;
    max-width: 500px !important;
    min-width: unset !important;
    font-family: "Open Sans", "Arial", "Helvetica Neue",sans-serif;
    border-radius: 5px;
    background-color: #211f45 !important;
}
#cn-notice-text a {
    color: #b7b7b7 !important;
}
#cn-notice-text a:hover {
    color: #fff !important;
}
.cn-button.bootstrap {
    color: #fff;
    background: #bd0929;
    text-transform: uppercase !important;
    font-size: 11px !important;
}
.cn-button:hover {
    box-shadow: unset !important;
    background: #fff !important;
    color: #211f45 !important;
}
.cn-text-container {
    margin: 0 0 10px 0 !important;
    text-align: left !important;
}
.cookie-notice-container {
    text-align: left !important;
}
#cookie-notice .cn-button {
    margin: 0 !important;
}

/* HEADER */
#logo-box {
    width: 15% !important;
}
.adc-pointer a {
    cursor: pointer !important;
}
/*nav-menu*/
.adc-nav-menu a {
    line-height: 1.2 !important;
    font-size: 14px !important;
}

/* HOME */
.cta-grid .elementor-cta__bg {
    background-position: top !important;
}
.adc-slides .swiper-slide-inner {
    max-width: 1140px !important;
}
.adc-cta-home .elementor-cta__content {
    min-height: 415px !important;
}
.adc-slides .elementor-button {
    background-color: #bd0929 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
.adc-slides .elementor-button:hover {
    background-color: #fff !important;
    color: #211f45 !important;
}
.slide-left {
    padding-right: 40%;
}
.slide-right {
    padding-left: 40%;
}
.smart-titular h1 {
    display: unset !important;
    background-color: #211f45 !important;
    color: #fff !important;
}
.smart-titular h2 {
    display: unset !important;
    background-color: #211f45 !important;
    color: #fff !important;
}
.adc-smart .n2-ss-slider .n2-ss-layer-content {
    padding: 0 !important;
}


/* EQUIPAMIENTO DE TALLERES */
.tmontse .elementor-image-box-description {
    font-family: 'Montserrat', sans-serif;
    padding-bottom: 15px;
}

/* SINGLE BLOG */
.wp-caption .wp-caption-text {
    font-size: 0.875rem;
    padding-top: 5px;
    opacity: 1;
    color: #0d0d23;
    font-style: italic;
    font-weight: 500;
}
.elementor-post-info__item--type-date {
    color: #0d0d23;
}
.elementor-post-info__item--type-custom {
    font-weight: bold;
}
.elementor-widget-theme-post-content h2 {
    color: #211f45;
}
.elementor-widget-theme-post-content h3 {
    color: #211f45;
}
.elementor-widget-theme-post-content h4 {
    color: #211f45;
}
blockquote {
    border-left: 0;
    padding: 20px 15%;
    font-size: 1.5rem;
    font-style: italic;
    font-weight: 500;
    color: #211f45;
}
blockquote:before {
    display: none;
}
blockquote:after {
    display: none;
}
.elementor-post-navigation a {
    font-weight: bold;
    color: #211f45;
}
.elementor-post-navigation a:hover {
    color: #bd0929;
}
.elementor-post-navigation a:hover i {
    color: #bd0929;
}
.elementor-post-navigation i {
    color: #211f45;
}
.adc-search .elementor-search-form__icon {
    display: none !important;
}
.adc-search .elementor-search-form__input {
    padding: 0 !important;
    font-style: italic !important;
    color: #211f45 !important;
    font-weight: 500 !important;
}
.adc-mini-news .elementor-post__title a {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1rem;
    font-weight: bold;
    color: #211f45;
}
.adc-mini-news .elementor-post__title a:hover {
    color: #bd0929;
}
.adc-mini-news .elementor-post__meta-data {
    margin-bottom: 0 !important;
    color: #0d0d23 !important;
    font-weight: 500 !important;
}
.adc-arxiu h5 {
    display: none;
}
.adc-arxiu a {
    font-family: 'Montserrat', sans-serif !important;
    color: #0d0d23;
    font-weight: 600;
}
.adc-arxiu a:hover {
    color: #bd0929;
}
.adc-arxiu ul {
    margin: 0 0 0 1em;
    list-style: none;
}
.adc-tags h5 {
    display: none;
}
.adc-tags .tagcloud a {
    display: block;
    color: #0d0d23;
    font-weight: 500;
    font-size: 1rem !important;
    margin: 0 0 0 1em;
}
.adc-tags .tagcloud a:hover {
    color: #000;
}
.adc-mini-title p {
    color: #bd0929 !important;
    font-weight: bold;
    font-size: 1.5rem;
}
.adc-post-info .elementor-icon-list-items {
    font-family: 'Montserrat', sans-serif !important;
}
.adc-post-info .elementor-icon-list-items a {
    color: #bd0929 !important;
}
.adc-post-info .elementor-icon-list-items a:hover {
    color: #211f45 !important;
}

/* CONTACTO */
.consultas-form label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: #211f45 !important;
    font-size: 15px !important;
}
.consultas-form .elementor-field-group .elementor-field-textual {
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.consultas-form .elementor-button {
    background-color: #211f45 !important;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
}
.consultas-form .elementor-button:hover {
    background-color: #bd0929 !important;
}
.consultas-form .elementor-field-type-html {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400 !important;
    color: #0d0d23 !important;
    font-size: 15px !important;
}
.consultas-form .elementor-field-textual {
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
}
.consultas-form .elementor-field-type-acceptance {
    margin-top: 15px !important;
}
.consultas-form .elementor-field-type-acceptance .elementor-field-option {
    margin-top: 5px !important;
}
.consultas-form .elementor-field-type-acceptance .elementor-field-option a {
    color: #bd0929 !important;
}
.consultas-form .elementor-field-type-acceptance .elementor-field-option a:hover {
    color: #b7b7b7 !important;
}



/* ARCHIVE PRODUCTO */
.grid-productos .uael-post__content-wrap {
    min-height: 70px !important;
    display: flex !important;
    flex-direction: column !important;
    align-content: center !important;
    justify-content: center !important;
}

/* SINGLE PRODUCTO */
.woocommerce .woocommerce-breadcrumb {
    margin: 0 !important;
}
.grid-productos-mini .uael-post__footer {
    margin-top: 0 !important;
}
.incluye-grid p {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    font-size: 1rem !important;
    color: #211f45 !important;
}
.incluye-grid ul {
    margin: 0em 0 1em 1em !important;
    list-style: none !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
    color: #211f45 !important;
}
.incluye-grid li {
    padding-bottom: 10px !important;
}
.woocommerce-breadcrumb {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    color: #bd0929 !important;
}
.woocommerce .woocommerce-breadcrumb a {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    color: #211f45 !important;
}
.woocommerce .woocommerce-breadcrumb a:hover {
    color: #b7b7b7 !important;
}
.uael-post__bg-wrap:hover {
    background: #bd0929 !important;
}

/*** FORMULARIO DE GARANTIAS ***/
.adc-form-cf7 label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: #211f45 !important;
    font-size: 15px !important;
    display: flex;
    flex-direction: column;
    width: 100%;
}
.adc-form-cf7 p {
    display: flex;
    justify-content: space-between;
}
.adc-form-cf7 input {
    width: 100%;
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7 textarea {
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7 select {
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7 select {
    width: 100%;
}
.adc-form-cf7 .wpcf7-text {
    max-width: 100% !important;
}
.adc-form-cf7 form p:nth-child(7) label {
    width: 49% !important;
}
.adc-form-cf7 form p:nth-child(8) label {
    width: 49% !important;
}
.adc-form-cf7 form p:nth-child(9) label {
    width: 49% !important;
}
.adc-form-cf7 form p:nth-child(11) label {
    width: 49% !important;
}
.adc-form-cf7 form p:nth-child(12) label {
    width: 49% !important;
}
.adc-form-cf7 form p:nth-child(15) {
    display: block !important;
}
.adc-form-cf7 form p:nth-child(16) input {
    width: auto !important;
}
.adc-form-cf7 form p:nth-child(16) label {
    display: block !important;
}
.adc-form-cf7 form p:nth-child(17) {
    display: block !important;
}
.adc-form-cf7 form p:nth-child(17) input {
    margin-top: 15px !important;
    background-color: #bd0929 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
.adc-form-cf7 form p:nth-child(17) input:hover {
    background-color: #211f45 !important;
}
.adc-form-cf7 .wpcf7-list-item {
    margin: 0;
}
/*** FORMULARIO DE DEVOLUCIÓN ***/
.adc-form-cf7-devol label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: #211f45 !important;
    font-size: 15px !important;
}
.adc-form-cf7-devol .cf-detalles {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.adc-form-cf7-devol .wpcf7-number {
    max-width: 100% !important;
}
.adc-form-cf7-devol input {
    width: 100%;
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7-devol select {
    width: 100%;
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7-devol textarea {
    border: 1px solid #211f45 !important;
    color: #0d0d23 !important;
}
.adc-form-cf7-devol .wpcf7-text {
    max-width: 100% !important;
}
.adc-form-cf7-devol p:nth-child(7) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.adc-form-cf7-devol p:nth-child(7) input {
    margin: 1px 0px !important;
}
.adc-form-cf7-devol form p:nth-child(10) label {
    display: block !important;
}
.adc-form-cf7-devol form p:nth-child(10) input {
    width: auto !important;
}
.adc-form-cf7-devol form p:nth-child(11) {
    display: block !important;
}
.adc-form-cf7-devol .wpcf7-list-item {
    margin: 0;
}
.adc-form-cf7-devol form p:nth-child(11) input {
    margin-top: 15px !important;
    background-color: #bd0929 !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 16px 24px !important;
}
.adc-form-cf7-devol form p:nth-child(11) input:hover {
    background-color: #211f45 !important;
}

/*^* FORMACIÓN 2024 *^*/
.tblanco p {
    color: #fff;
}
.adc-cursos-header h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2.25rem !important;
    font-weight: 700;
    line-height: 1.2;
    color: #211f45;
}
.adc-cursos-header h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 3.75rem !important;
    font-weight: 700;
    line-height: 1.2;
    color: #211f45;
}
.adc-cursos-header-blanco p {
    font-family: 'Montserrat', sans-serif;
    font-size: 2.25rem !important;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
}
.adc-cursos-text p {
    font-family: "Open Sans", "Arial", "Helvetica Neue",sans-serif;
    font-size: 1.375rem !important;
    font-weight: 600;
    color: #211f45;
}
.adc-cursos-parrafos p {
    font-family: "Open Sans", "Arial", "Helvetica Neue",sans-serif;
    font-size: 1.25rem !important;
    font-weight: 400;
    color: #211f45;
}
.adc-cursos-parrafo-ciudad p {
    font-family: "Open Sans", "Arial", "Helvetica Neue",sans-serif;
    font-size: 1.25rem !important;
    font-weight: 400;
    color: #211f45;
}
.adc-cursos-parrafo-ciudad p strong {
    color: #bd0929;
}
.adc-boton-cursos-rojo a {
    background-color: #bd0929 !important;
    color: #fff !important;
    font-size: 1.063rem !important;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 10px 36px !important;
}
.adc-boton-cursos-rojo a:hover {
    background-color: #fff !important;
    color: #bd0929 !important;
}
.hero-cursos div.elementor-container.elementor-column-gap-default {
    min-height: calc(100vh - 365px) !important;
    padding: 100px 0px 60px 0px;
}
.adc-curso-icons img {
    height: 93px !important;
    width: 93px;
}
.adc-curso-icons .elementor-image-box-title {
    margin-top: 15px;
    font-family: "Open Sans", "Arial", "Helvetica Neue",sans-serif;
    font-size: 1.375rem;
    line-height: 1.3;
    font-weight: 600;
    color: #212044;
    padding: 0px 5px;
}
.adc-cursos-text-info p {
    font-size: 1.125rem;
}
.adc-cursos-text-info p strong {
    font-size: 1.25rem;
}
.tvalencia {
    width: 100% !important;
    max-width: 115px !important;
}
.tvalencia-resto {
    width: 100% !important;
    max-width: calc(100% - 115px) !important;
}
.tbarcelona {
    width: 100% !important;
    max-width: 135px !important;
}
.tbarcelona-resto {
    width: 100% !important;
    max-width: calc(100% - 135px) !important;
}
.adc-form input::placeholder {
    color: #fff !important;
    opacity: 1 !important;
}
.adc-form .elementor-field-type-acceptance {
    color: #fff;
}
.adc-form .elementor-field-type-acceptance a {
    color: #fff;
}
.adc-form button {
    background-color: #fff !important;
    color: #bd0929 !important;
    font-size: 1.063rem !important;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0 !important;
    border-width: 0 !important;
    padding: 10px 36px !important;
}
.adc-form .elementor-field-type-recaptcha {
    margin-bottom: 60px !important;
}
.adc-form select {
    background-color: transparent !important;
    color: #fff !important;
}
.adc-form select option {
    background-color: rgb(47 47 74 / 95%) !important;
}
.adc-cursos-tabs .elementor-tab-content {
    padding: 0 !important;
}
.adc-cursos-tabs .elementor-tab-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}
.adc-cursos-tabs .elementor-tabs-wrapper .elementor-tab-desktop-title {
    padding: 10px;
    font-weight: 700;
    font-size: 17px;
    background-color: #EAEAEA;
    color: rgb(33 32 68 / 22%);
    border-radius: 10px 10px 0px 0px;
}
.adc-cursos-tabs .elementor-tabs-wrapper .elementor-active {
    background-color: #212044;
    color: #fff;
}
.adc-cursos-tabs div.elementor-tabs-wrapper {
    display: inline-flex;
    gap: 10px;
}
/*movil*/
.adc-cursos-tabs .elementor-tab-mobile-title {
    background-color: #e7e7e7;
    border: solid 2px #212044!important;
    text-align: center;
    font-weight: 700;
    color: #212044;
    margin: 5px 0px;
}
.adc-cursos-tabs div.elementor-tab-title.elementor-tab-mobile-title.elementor-active {
    background-color: #bd0929;
    border: solid 2px #212044!important;
    color: #fff;
}

/* MEDIA QUERIES */
@media screen and (max-width: 1324px) {
    /* HEADER */
    #logo-box {
        width: 20% !important;
    }
    #logo-box-dos {
        width: 80% !important;
    }
    /*nav-menu*/
    .adc-nav-menu a {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }
    /*cta*/
    .adc-cta .mini-title-two p {
        font-size: 1.3rem !important;
    }
    .adc-cta .elementor-image-box-img {
        width: 8% !important;
    }
    .adc-cta .tsemi p {
        font-size: 0.9rem !important;
    }
    /* grid logos */
    .grid-logos .elementor-image-gallery .gallery-item {
        max-width: 14.28% !important;
    }
}
@media screen and (max-width: 1323px) {
    /*nav-menu*/
    .adc-nav-menu br {
        display: none !important;
    }
    .hero-cursos div.elementor-container.elementor-column-gap-default {
        min-height: calc(100vh - 114px) !important;
        padding: 60px 0px 60px 0px;
    }
}
@media screen and (max-width: 790px) {
    /*cta home*/
    .adc-cta-home .elementor-cta__content {
        min-height: 410px !important;
    }
    /*nav-menu*/
    .adc-nav-menu br {
        display: none !important;
    }
}
@media screen and (max-width: 768px) {
    /* HEADER */
    #logo-box {
        width: 40% !important;
    }
    #logo-box-dos {
        width: 60% !important;
    }
    /*nav-menu*/
    .adc-nav-menu br {
        display: none !important;
    }
    /*cta home*/
    .adc-cta-home .elementor-cta__content {
        min-height: auto !important;
    }
    /*slides*/
    .adc-slides .hthree {
        font-size: 1.1rem !important;
    }
    .adc-slides .hjumbo {
        font-size: 1.5rem !important;
    }
    .hjumbo p {
        font-size: 2rem !important;
    }
    /*cta*/
    .adc-cta .elementor-image-box-wrapper {
        display: flex !important;
    }
    .adc-cta .elementor-widget-image-box .elementor-image-box-content {
        padding-left: 15px !important;
        text-align: left !important;
    }
    /* grid logos */
    .grid-logos .elementor-image-gallery .gallery-item {
        max-width: 20% !important;
    }
    /*** FORMULARIO DE GARANTIAS ***/
    .adc-form-cf7 form p:nth-child(7) {
        flex-direction: column;
    }
    .adc-form-cf7 form p:nth-child(7) label:nth-child(1) {
        margin-bottom: 1.5em;
    }
    .adc-form-cf7 form p:nth-child(7) label {
        width: 100% !important;
    }
    .adc-form-cf7 form p:nth-child(8) {
        flex-direction: column;
    }
    .adc-form-cf7 form p:nth-child(8) label:nth-child(1) {
        margin-bottom: 1.5em;
    }
    .adc-form-cf7 form p:nth-child(8) label {
        width: 100% !important;
    }
    .adc-form-cf7 form p:nth-child(9) {
        flex-direction: column;
    }
    .adc-form-cf7 form p:nth-child(9) label:nth-child(1) {
        margin-bottom: 1.5em;
    }
    .adc-form-cf7 form p:nth-child(9) label {
        width: 100% !important;
    }
    .adc-form-cf7 form p:nth-child(11) {
        flex-direction: column;
    }
    .adc-form-cf7 form p:nth-child(11) label:nth-child(1) {
        margin-bottom: 1.5em;
    }
    .adc-form-cf7 form p:nth-child(11) label {
        width: 100% !important;
    }
    .adc-form-cf7 form p:nth-child(12) {
        flex-direction: column;
    }
    .adc-form-cf7 form p:nth-child(12) label {
        width: 100% !important;
    }
    .adc-form-cf7 form p:nth-child(12) label:nth-child(1) {
        margin-bottom: 1.5em;
    }
    /*cursos*/
    .hero-cursos div.elementor-container.elementor-column-gap-default {
        min-height: 1px !important;
        padding: 40px 0px 40px 0px;
    }
    .adc-cursos-tabs div.elementor-tabs-wrapper {
        display: none;
    }
    #form-field-captcha iframe {
        -webkit-transform: scale(0.84);
        -moz-transform:    scale(0.84);
        -ms-transform:     scale(0.84);
        -o-transform:      scale(0.84);
        transform:         scale(0.84);

        -webkit-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        transform-origin: 0 0;
    }
    .tvalencia {
        max-width: 100% !important;
    }
    .tvalencia-resto {
        max-width: 100% !important;
    }
    .tbarcelona {
        max-width: 100% !important;
    }
    .tbarcelona-resto {
        max-width: 100% !important;
    }
    .adc-cursos-header-blanco p {
        font-size: 2rem !important;
    }
    .adc-cursos-header h2 {
        font-size: 3rem !important;
    }
    .adc-cursos-header h2 {
        font-size: 2.5rem !important;
    }
    .adc-cursos-header-blanco p {
        font-size: 1.75rem !important;
    }
    .adc-form .elementor-field-type-recaptcha {
        margin-bottom: 20px !important;
    }
}
.cli-tab-footer .wt-cli-privacy-accept-btn {
    background-color: #bd0929;
}
/*FORMULARIO DE GARANTIAS*/
.adc-form-tabs .blf-form {
    box-shadow: unset;
    padding: 0;
}
.adc-form-tabs .elementor-tab-content {
    padding: 50px !important;
}
.adc-space {
    padding-top: 50px !important;
}
.adc-form-tabs .elementor-tabs-content-wrapper {
    background-color: #cdcdcd08;
    border-radius: 50px;
    border-radius: 0px 0px 10px 10px;
}
.adc-form-tabs input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    width: 100%;
}
.adc-form-tabs .wpcf7-text {
    max-width: 100% !important;
}
.adc-form-tabs .elementor-tab-title a {
    text-align: center !important;
}
@media screen and (max-width: 767px) {
    .adc-form-tabs .elementor-tab-content {
        padding: 15px !important;
    }
}


/* NUEVO SLIDER HOME */
.slider-home {  
    min-height: calc(100vh - 134px);
    max-height: calc(100vh - 134px);
    height: 100% !important;
}
.slider-home-sec {
    min-height: calc(100vh - 134px);
    max-height: calc(100vh - 134px);
    height: 100% !important;
    display: flex;
    flex-direction: row !important;
    align-items: center !important;
    position: relative !important;
}
.slider-home-sec > .elementor-container {
    width: 100%;
    background-color: rgb(33,31,69,0.5);
    padding: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider-home-sec > .elementor-container > .elementor-row {
    max-width: 1180px;
    width: 100%;
}
.slider-home-sec > .elementor-container,
.slider-home-sec > .elementor-container > .elementor-column,
.slider-home-sec > .elementor-container > .elementor-column > .elementor-widget-wrap {
    position: unset !important;
}
.slider-home-sec > .elementor-container > .elementor-column > .elementor-widget-wrap {
    margin: 0 !important;
}
.slider-home-back-img {
    position: absolute !important;
    top: 0;
    z-index: -1;
    width: 100%;
    min-height: calc(100vh - 134px);
    max-height: calc(100vh - 134px);
    height: 100% !important;
}
.slider-home-back-img .elementor-widget-container {  
    height: 100%;
}
.slider-home-back-img img {  
    height: 100% !important;
    width: 100%;
    object-fit: cover;
}
.slider-home-tit h2 {
    color: #FFF;
    text-transform: uppercase;
    font-family: 'Montserrat';
    font-size: 312.5%;
    line-height: 1.2;
    font-weight: 700;
    background: #211f45;
    display: unset;
}
.slider-home-txt p {
    font-family: 'Open Sans';
    color: #FFF;
    font-size: 125%;
    line-height: 1.8;
    font-weight: 400;
}
.slider-home-btn .elementor-button-link {
    background: #bd0929;
    opacity: 1;
    padding: 10px 18px;
    box-shadow: none;
    border: 0px solid RGBA(0, 0, 0, 1);
    border-radius: 0px;
}
.slider-home-btn .elementor-button-text {
    font-family: 'Open Sans';
    color: #FFF;
    font-size: 100%;
    line-height: 1.5;
    text-align: center;
    letter-spacing: 1px;
    font-weight: bold;
    text-transform: uppercase;
}
.slider-home-izq > .elementor-container,
.slider-home-der > .elementor-container {
    display: flex !important;
    column-gap: 40px !important;
}
.slider-home-izq > .elementor-container {
    flex-direction: row !important;
}
.slider-home-der > .elementor-container {
    flex-direction: row-reverse !important;
}
.slider-home-der .slider-home-tit .elementor-widget-container,
.slider-home-der .slider-home-txt .elementor-widget-container {
    text-align: right !important;
}
.slider-home-der .slider-home-btn .elementor-button-wrapper {
    display: flex;
    justify-content: end;
}
.slider-home-img-col .elementor-widget-image,
.slider-home-img-col .elementor-widget-image .elementor-widget-container,
.slider-home-img-col .elementor-widget-image img {
    height: 100%;
}
.slider-home-img-col .elementor-widget-image {
    max-height: 500px;
}


@media screen and (max-width: 1323px) {
    .slider-home-tit h2 {
        font-size: 240%;
    }
    .slider-home-txt p {
        font-size: 115%;
        line-height: 1.6;
    }
}
@media screen and (max-width: 767px) {
    .slider-home-tit h2 {
        font-size: 200%;
    }
    .slider-home-txt p {
        font-size: 105%;
        line-height: 1.4;
    }
}


/* CAPTCHA FLOTANTE */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* Ajuste VDL */
.vdl-col-img .elementor-widget-image{
    height: 100%;
}
.vdl-col-img .elementor-widget-image .elementor-widget-container{
    height: 100%;
}
.vdl-col-img .elementor-widget-image img{
    height: 100%;
    object-fit: cover;
}

.conten-logo .elementor-widget-container{
    position: relative;
    min-height: 150px;
}
.conten-logo .elementor-widget-container img{
    position: absolute;
    top: 0;
    left: -20px;
}

/* EQUIPAMIENTO DE TALLERES - GRID DE CARDS */
.cards-equipamiento .elementor-widget-wrap {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}
.cards-equipamiento .elementor-widget-image-box {
    /* Elementor aplica margin-bottom:20px por defecto a los widgets
       apilados en columna, excepto al último del contenedor
       (.elementor-widget:not(:last-child)). Ese margen desigual cuenta
       en el tamaño que CSS Grid usa para fijar el alto de cada fila, así
       que la última card de cada fila (sin margen) se estira sin
       problema mientras el resto se queda 20px corta reservando un
       margen que ya no pinta nada dentro de un grid con gap. Sin
       !important, esta regla pierde frente a la de Elementor. */
    width: 100%;
    min-width: 0;
    margin: 0 !important;
}
.cards-equipamiento .elementor-widget-image-box .elementor-widget-container {
    /* El grid sí estira este widget (align-items:stretch) a la altura de
       la fila, pero .elementor-widget-container es display:block con
       altura natural: sin height:100% aquí, ese espacio extra no llega
       al wrapper y la card con el título más corto queda con un hueco
       blanco debajo en vez de navy hasta el final de la fila. */
    height: 100%;
}
.cards-equipamiento .elementor-image-box-wrapper {
    /* display:block por defecto: imagen y texto solo se apilan en flujo
       normal, así que cuando el grid estira la card a la altura de la
       fila, el sobrante queda como hueco al final en vez de repartirse,
       y el título deja de estar centrado respecto al alto real de la
       card. flex column + flex:1 en el content (ver más abajo) reparte
       ese sobrante en el bloque de texto para centrar el título de
       verdad dentro de toda la card, no solo dentro de su propia caja. */
    height: 100%;
    display: flex;
    flex-direction: column;
    background-color: #211f45;
    transition: background-color .3s ease;
}
.cards-equipamiento .elementor-image-box-wrapper:hover {
    background-color: #bd0929;
}
.cards-equipamiento .elementor-image-box-img {
    /* Elementor genera un CSS por página que fija esta figura a "width: 30%"
       por cada widget individual (ver post-30.css). Esa regla tiene más
       especificidad que la nuestra, así que sin !important el img hijo
       hereda un contenedor encogido y su max-width:100% lo recorta.
       Se usa 100% (no un valor fijo en px) para que la figura ocupe todo
       el ancho de la columna del grid sin forzar su tamaño mínimo: un
       ancho fijo mayor que la columna dispara un "blowout" de CSS Grid,
       que ensancha las columnas más allá del contenedor de 1140px. */
    width: 100% !important;
    max-width: 100% !important;
}
.cards-equipamiento .elementor-image-box-img img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
}
.cards-equipamiento .elementor-image-box-content {
    /* Elementor pone por defecto margin-bottom:15px en .elementor-image-box-img
       (mismo color navy que el fondo, así que no se ve como hueco, pero
       desplaza 15px hacia abajo el centro visual real de la banda de
       texto). Se compensa ampliando el padding inferior esos mismos 15px
       para que el título quede centrado en el espacio que el ojo percibe
       bajo la imagen, no solo dentro de esta caja. */
    flex: 1;
    min-height: 70px;
    padding: 15px 15px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.cards-equipamiento .elementor-image-box-title {
    margin: 0;
    font-size: 1rem;
    color: #ffffff;
    text-align: center;
}
@media (max-width: 1024px) {
    .cards-equipamiento .elementor-widget-wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}