/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/


/* FUENTE */

@import url('https://fonts.googleapis.com/css2?family=Questrial&display=swap');

/* VARIABLES POR DEFECTO */

:root {
    --c-negro: #000000;
    --c-blanco: #FFFFFF;
    --c-primario: #3a3a3a;
    --c-secundario: #fdd772;
    --c-grisclaro: #EFEFEF;
    --c-gris: #636363;
}


/* OUTLINE */

*:focus {
    outline: 5px solid cyan;
}


/* ESTILOS COMUNES */

.zindex0 {
    z-index: 0;
}

.zindex1 {
    z-index: 1;
}

body {
    font-family: 'Questrial', sans-serif;
    color: var(--c-negro);
    font-size: 1.125rem;
    line-height: 1.6875rem;
}

a {
    color: var(--c-primario);
    text-decoration: none;
}

a:hover {
    color: var(--c-secundario);
    text-decoration: none;
}

a,
a:hover {
    transition: all 0.4s ease !important;
}

.site-logo {
    display: inline-block;
    max-width: 100% !important;
    line-height: 100px;
}

.site-logo.mobile-header-logo img {
    max-height: 50px !important;
    width: auto;
}

.main-navigation .main-nav ul li[class*="current-menu-"]>a {
    color: var(--c-secundario);
    font-weight: 700;
}

.txt-req {
    color: #a81212;
}

.txt-peq {
    font-size: 0.688rem;
    /*11px*/
}

.txt-dest {
    font-size: 1.4rem;
}

h1 {
    font-size: 3rem;
    /*48px*/
    font-weight: 300!important;
    font-style: normal;
    text-decoration: none;
    text-align: center;
    /*line-height: 1.5em;*/
}

h2 {
    font-size: 2.25rem;
    /*36px*/
    font-style: normal;
    text-decoration: none;
    line-height: 1.5;
    font-weight: 700;
}

h3 {
    font-size: 1.75rem;
    /*28px*/
    font-weight: 400;
    font-style: normal;
    text-decoration: none;
    line-height: 1.5;
}

.num>.vce-text-block-wrapper>p>strong {
    background: var(--c-secundario);
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    margin-right: 0;
}

.brd-izq>.vce-col-inner {
    box-shadow: -10px 10px 0 0 var(--c-secundario);
}

.brd-izq>.vce-single-image-wrapper {
    box-shadow: -10px 10px 0 0 var(--c-secundario);
}

.brd-top>.vce-col-inner {
    border-top: 5px solid var(--c-secundario);
}

.brd-bot>.vce-col-inner {
    border-bottom: 5px solid var(--c-secundario);
}

.brd-dch>.vce-col-inner {
    box-shadow: 10px 10px 0px 0px var(--c-secundario);
}

.lista ul {
    list-style: none;
    line-height: 2;
    margin-left: 30px;
}

.lista ul>li {
    position: relative;
}

.lista ul>li::before {
    content: "";
    background-color: var(--c-secundario);
    width: 15px;
    height: 15px;
    border-radius: 200px;
    position: absolute;
    top: 10px;
    left: -25px;
}

.bg-deg1 {
    background: linear-gradient(0deg, var(--c-grisclaro) 50%, var(--c-blanco) 70%);
}


/* COLUMNAS CLICABLES */


/* Create and position :after pseudo-element */

.vce-col.clickable a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}


/* Remove relatively-positioned parent elements in column */

.clickable .vce-col-content,
.clickable .vce-col-inner {
    position: static;
}


/* Columnas de vídeo */

.video>.vce-raw-html-wrapper {
    text-align: center;
}

.video svg {
    fill: var(--c-blanco);
    width: 100px;
    height: 100px;
    position: relative;
    z-index: 1;
    transition: all 0.4s ease;
}

.vce-col.clickable:hover svg {
    fill: var(--c-secundario);
    transition: all 0.4s ease;
}


/* FORMULARIO DE CONTACTO */

input#nombre,
input#telefono,
input#email {
    background-color: var(--c-blanco) !important;
    /* border-right: 2px solid var(--c-primario); */
    margin-top: 5px;
    width: 100%
}

.row-form {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
}

.row-form p {
    width: 50%
}

.row-form p:first-child {
    margin-right: 10px;
}

.row-form p:last-child {
    margin-left: 10px;
}

#form-contacto textarea.wpcf7-form-control {
    background-color: var(--c-blanco) !important;
    /* border-right: 2px solid var(--c-primario); */
    margin-top: 5px;
    width: 100%;
    max-height: 120px;
}


/* CABECERA HOME */

.slide-principal {
    min-height: 70vh;
}

.cabecera-h h1 {
    color: var(--c-blanco);
    font-weight: 700;
    font-size: 3.438rem !important;
    /*55px*/
    letter-spacing: 0.03em;
}

.cabecera-h h1 strong {
    letter-spacing: 0.05em;
}

.cabecera-h .vce {
    margin-bottom: 0;
}


/* CABECERA INTERIOR */

.cabecera h1 {
    text-align: center;
    display: block;
    width: 80%;
    max-width: 600px;
    margin: auto;
    padding: 30px 20px 30px 20px;
    background-color: rgba(0, 0, 0, 0.64);
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: var(--c-blanco);
    color: var(--c-blanco);
    font-weight: 700;
}

.cabecera .vce {
    margin-bottom: 0;
}


/* FOOTER */

.logos-footer {
    margin: auto;
}

.logos-footer img {
    max-height: 70px !important;
    object-fit: contain !important;
    vertical-align: middle;
}

.logos-footer:last-child {
    opacity: 0.5;
}

.site-footer {
    text-align: center;
}

.site-footer .tit-footer {
    font-size: 1.375rem;
    /*22px;*/
    font-weight: 700;
    line-height: 2.0625rem;
}

.site-footer hr {
    background-color: var(--c-blanco);
    margin: 30px auto;
    width: 50px;
}

.site-footer .footer-widgets-container .inside-footer-widgets {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-left: 0;
}

.site-footer .footer-widgets-container .inner-padding {
    padding: 0;
}

.footer-widget-1,
.footer-widget-2 {
    width: 100%;
}

.footer-widget-1 .footer-row {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.footer-widget-1 img {
    object-fit: contain;
}

.footer-widget-1 img:first-child {
    max-width: 230px;
    padding-right: 20px;
    padding-top: 12px;
}

.footer-widget-1 img:last-child {
    max-width: 150px;
    padding-left: 20px;
    opacity: 0.55;
}

.footer-widget-2 .footer-row {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    margin-top: 40px;
}

.footer-widget-2 #custom_html-3 {
    width: 100%;
}

.footer-widget-2 .footer-col {
    width: 33.33%;
    border-right: 1px solid var(--c-blanco);
    height: 100%;
}

.footer-widget-2 .col2 {
    padding-bottom: 25px;
}

.footer-widget-2 .footer-col:last-child {
    border: 0;
}

.navigation-branding img {
    max-height: 60px !important;
    width: auto;
}

.icono-contacto {
    width: 80px;
    height: auto;
    margin: auto;
}


/* LOGOS KIT DIGITAL */

.logos-kit-digital {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin-bottom: 20px;
    margin-top: 10px;
}

.logos-kit-digital img {
    display: block;
    max-width: 160px;
    padding: 0 30px;
}

.logos-kit-digital>img:last-child {
    max-width: 105px;
}


/* ---------- RESPONSIVE ---------- */

@media screen and (max-width: 1080px) {
    /* LOGOS KIT DIGITAL */
    .logos-kit-digital img {
        max-width: 180px;
    }
    .logos-kit-digital>img:last-child {
        max-width: 120px;
    }
}

@media screen and (max-width: 950px) {
    .footer-widget-2 .footer-row {
        flex-wrap: wrap;
    }
    .footer-widget-2 .footer-row .footer-col {
        width: 49.9%;
    }
    .footer-widget-2 .footer-row .footer-col:last-child {
        width: 100%;
        margin-top: 30px;
    }
    .footer-widget-2 .footer-row .footer-col.col2 {
        border-right: none !important;
    }
    .logos-kit-digital {
        flex-direction: row;
        gap: 10px;
        padding: 40px 0 0 0;
        margin-top: 0px;
    }
    .logos-kit-digital img,
    .logos-kit-digital>img:last-child {
        max-width: 20%;
    }
}

@media screen and (max-width: 780px) {
    /* COMUNES */
    h1 {
        font-size: 1.625rem !important;
        /* 26px*/
        line-height: 2.4375rem !important;
    }
    h2 {
        font-size: 1.5rem !important;
        /* 24px*/
        line-height: 2.25rem !important;
    }
    h3 {
        font-size: 1.375rem !important;
        /* 22px*/
        line-height: 2.0625rem !important;
    }
    .inside-footer-widgets div {
        border: 0;
    }
    .cabecera-h h1 {
        font-size: 2.25rem !important;
        /*36px*/
    }
    .logos-kit-digital {
        gap: 0px;
    }
}

@media screen and (max-width: 650px) {
    .salto-h1 {
        display: none;
    }
    .footer-widget-2 .footer-col {
        width: 100% !important;
        border-right: none !important;
    }
    .footer-widget-2 .col2 {
        padding-top: 40px;
    }
    .logos-kit-digital {
        gap: 10px;
    }
    .logos-kit-digital img {
        max-width: 165px;
    }
    .logos-kit-digital>img:last-child {
        max-width: 30%;
    }
}

@media screen and (max-width: 600px) {
    .footer-widget-1 {
        margin-bottom: 0 !important;
    }
    .footer-widget-1 .footer-row {
        flex-direction: column;
        gap: 10px;
    }
    .footer-widget-1 .footer-row img {
        padding: 0;
    }
    /* LOGOS KIT DIGITAL */
    .logos-kit-digital img {
        max-width: 165px;
        padding: 10px 5px;
    }
    .logos-kit-digital>img:last-child {
        max-width: 40%;
    }
}

@media screen and (max-width: 560px) {
    h1 {
        font-size: 2rem !important;
        /* 40px*/
        line-height: 3rem !important;
    }
}


/* CAPTCHA */

.grecaptcha-badge {
    display: none;
}