/*
Theme Name: Base
Theme URI: https://www.invbit.com
Author: Base
Author URI: https://www.invbit.com
Description: Base para Betheme
Template: betheme
Version: 1.6.2
*/
@import './css/variables.css';

/*********************************\
              GENERAL
\*********************************/
.flexColumn>.mcb-wrap-inner {
    flex-direction: column;
}

.align-center>.mcb-wrap-inner {
    align-items: center;
}

.validate_email_against_bot,
.otgs-development-site-front-end,
.wpml-ls-statics-footer {
    display: none
}

:root {
    scrollbar-color: var(--secundario) var(--blanco);
    scrollbar-width: thin;
    scroll-behavior: smooth;
}

.style-simple,
.style-simple .mfn-header-tmpl {
    --mfn-column-gap-bottom: 0;
    --mfn-column-gap-top: 0;
    --mfn-column-gap-right: 0;
    --mfn-column-gap-left: 0;
}

p:empty {
    margin: 0;
    display: none;
    visibility: hidden;
    opacity: 0;
}

.entry-content a:not(.button) {
    font-weight: 600;
    text-decoration: underline;
    transition: all 0.3s ease;
}

.entry-content a:not(.button):hover {
    text-underline-offset: 2px;
}

.admin-bar .full-screen .section_wrapper {
    min-height: calc(100vh - 32px);
}

.section.has-video .section_video {
    display: flex;
    align-items: center;
    justify-content: center;
}

.section.has-video .section_video video {
    top: unset;
    left: unset;
    height: 100%;
}

.section.has-video .section_video .mask {
    display: none;
}

.style-simple .responsiveWidth {
    max-width: calc(2 * var(--halfSection));
}

.mobile-side-slide {
    overflow-x: clip !important;
}

.section_wrapper,
.container {
    box-sizing: border-box;
    padding-left: var(--row-padding);
    padding-right: var(--row-padding);
}

.container,
.section_wrapper,
.with_aside .content_wrapper {
    max-width: var(--container-width);
}


.slick-list {
    width: 100%;
}

.slick-track {
    display: flex;
}

.the_content_wrapper:not(.is-elementor) ul {
    color: var(--text-color);
}

h1 {
    font-size: var(--size-h1);
    line-height: var(--line-h1);
    font-weight: 700;
}

h2 {
    font-family: var(--font-text);
    font-size: var(--size-h2);
    font-weight: 600;
    line-height: var(--line-h2);
    color: var(--headings);
}

#Wrapper h2 {
    margin-bottom: var(--margin-h2);
}

h3 {
    font-size: var(--size-h3);
    line-height: 1.2;
    font-weight: 600;
}

h4 {
    font-size: var(--size-h4);
    line-height: 1.2;
    font-weight: 600;
}

h5 {
    font-size: var(--size-h5);
    line-height: 1.2;
    font-weight: 600;
}

h6 {
    font-size: var(--size-h6);
    line-height: 1.2;
    font-weight: 600;
}

body,
p {
    font-size: var(--size-p);
    line-height: 1.6;
    font-weight: 400;
    color: var(--text-color);
}

.lead,
.big {
    font-size: var(--size-p);
    font-weight: 400;
    line-height: var(--line-lead);
}

.small {
    font-size: var(--size-psmall);
    line-height: 1.2;
    font-weight: 400;
}

a:hover {
    text-decoration: none;
}

.decorative {
    font-family: var(--font-decorative);
}

.principal {
    color: var(--principal);
}

.secundario {
    color: var(--secundario);
}

.blanco {
    color: var(--blanco);
}

.button {
    height: var(--button-height);
}


/*********************************\
            COMPLIANZ
\*********************************/
/* Cookies button */
body #cmplz-manage-consent .cmplz-manage-consent {
    background: var(--principal);
    right: unset !important;
    left: 10px;
    font-size: 0px;
    color: var(--negro) !important;
    bottom: 10px !important;
    padding: 0 !important;
    min-width: 1px;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
}

body #cmplz-manage-consent .cmplz-manage-consent:before {
    content: "";
    background: transparent url(imagenes/icono-ajustes.svg) center center / contain no-repeat;
    width: 60%;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.8s ease;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover:before {
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

/* Cookies banner */
#cmplz-cookiebanner-container .cmplz-body {
    scrollbar-width: none;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner {
    grid-row-gap: 5px;
    padding: 20px;
}

#cmplz-cookiebanner-container .cmplz-header {
    display: none;
}

#cmplz-cookiebanner-container p {
    margin: 0;
}

#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn {
    letter-spacing: 0;
    font-size: var(--size-psmall) !important;
    line-height: 1.2 !important;
    text-transform: none;
    justify-content: center;
    height: auto;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category:not(:last-child) {
    margin-bottom: 5px;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-category-title,
#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-description>span {
    font-size: var(--size-psmall);
    line-height: 1;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-always-active {
    font-size: 10px;
    line-height: 1;
}

/* Complianz documents */
#cmplz-document,
.page-id-699 .entry-content,
.page-id-698 .entry-content {
    max-width: 100%;
    padding: 40px 0;
}

#cmplz-document h2,
#cmplz-document h3,
#cmplz-document h4 {
    letter-spacing: 0px;
    font-weight: 600;
    border: 0;
    padding: 0;
    margin-bottom: 15px;
    line-height: 1.2;
}

#cmplz-document h2 {
    font-size: var(--size-h2);
}

#cmplz-document h2:first-child {
    margin-top: 0;
}

#cmplz-document h2:not(:first-of-type) {
    margin-top: 30px;
}

#cmplz-document h3 {
    font-size: var(--size-h3);
}

#cmplz-document h4 {
    font-size: var(--size-h4);
}


/*********************************\
              HEADER
\*********************************/
#Wrapper .mfn-header-tmpl .mfn-icon-box .icon-wrapper i {
    color: #fcfcfc;
}

.mfn-menu-animation-text-line-bottom>.mfn-menu-li>.mfn-menu-link .label-wrapper:before {
    background-color: #fff;
    height: 2px;
}

.mfn-builder-content.mfn-sidemenu-tmpl-builder {
    justify-content: center;
}

.mfn-sidemenu-tmpl-builder .section_wrapper .wrap .mcb-wrap-inner {
    row-gap: 2rem;
}

ul#menu-sidebar-menu>li {
    border-bottom: 1px solid #00000030;
}

.mfn-sidemenu-tmpl-builder a.outer-menu-sub {
    top: 15px !important;
}

/*********************************\
              FOOTER
\*********************************/
.mfn-footer-menu-style-vertical li a {
    padding: 3px 0;
}

.mfn-footer-menu a:hover,
footer a:hover {
    text-decoration: underline;
}

body .mfn-footer-tmpl .mcb-section:not(.full-width) {
    max-width: 100%;
}

body #back_to_top.sticky {
    bottom: 10px;
    right: 10px !important;
    width: 40px;
    height: 40px;
    border-radius: 100px;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -ms-border-radius: 100px;
    -o-border-radius: 100px;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

body #back_to_top.sticky:before {
    content: none;
}

/*Kit digital*/
body #mfn-footer-template .financiacion {
    display: grid;
    grid-template-columns: 1fr 1fr 5fr;
    gap: 20px;
    text-align: left;
    align-items: center;
}

body #mfn-footer-template .financiacion>div {
    line-height: 0;
}

body #mfn-footer-template .financiacion>div img {
    max-height: 50px;
    width: auto;
}

body #mfn-footer-template .financiacion>div p {
    font-size: 13px;
    line-height: 15px;
    margin-bottom: 0;
    color: #fff;
}

@media only screen and (max-width: 959px) {
    body #mfn-footer-template .financiacion {
        grid-template-columns: 1fr 1fr;
        text-align: center;
        gap: 5px;
    }

    body #mfn-footer-template .financiacion>div:last-child {
        grid-column: 1 / span 2;
    }
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    line-height: 1.2;
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    font-size: 26px;
    padding: 8px;
}


/*********************************\
              INICIO
\*********************************/
.dark-background .section_wrapper {
    background-color: #161F2B;
    border-radius: 8px;
}

/*********************************\
             CONTACTO
\*********************************/
#Wrapper .contact-info .icon-wrapper {
    width: 100%;
    margin-bottom: 24px;
}

.lista-contacto ul {
    display: flex;
    justify-content: center;
    column-gap: 24px;
}

#Wrapper .lista-contacto ul li {
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 300px;
    gap: 10px;
}

.lista-contacto .mfn-list-icon {
    border-radius: 100vmax;
}

.lista-contacto p {
    margin-bottom: 0;
    font-weight: 600;
}

.lista-contacto a {
    color: #3b5373;
    text-decoration: underline;
}

.formulario-contacto {
    max-width: 600px;
    margin: auto;
}

.formulario-contacto input:not([type="submit"]),
.formulario-contacto textarea {
    border: 1px solid #3B5373;
    border-radius: 4px;
    color: #3B5373;
}

.formulario-contacto input::placeholder,
.formulario-contacto textarea::placeholder {
    color: #3B5373;
}

.formulario-contacto input::-webkit-input-placeholder,
.formulario-contacto textarea::-webkit-input-placeholder {
    color: #3B5373;
}

.formulario-contacto input::-moz-placeholder,
.formulario-contacto textarea::-moz-placeholder {
    color: #3B5373;
}

.formulario-contacto input:-ms-input-placeholder,
.formulario-contacto textarea:-ms-input-placeholder {
    color: #3B5373;
}

body .wpcf7-form [type="submit"] {
    width: 100%;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 6px;
}

body .wpcf7-form .wpcf7-spinner {
    margin: 5px 0 0 -12px;
    left: 50%;
}

body .wpcf7-form .form-legal p {
    font-size: 0.7em;
    line-height: 1.5em;
    opacity: 0.7;
    padding: 10px 0;
    text-align: justify;
}

body .wpcf7-form input[name="politica"]+span {
    font-weight: 500;
}

body .column_cf7 input[type="checkbox"] {
    min-height: 0px;
}

body .wpcf7-list-item {
    margin: 0;
}

body input[type="checkbox"],
body input[type="radio"] {
    accent-color: var(--principal);
}


/*********************************\
         PÁGINAS INTERNAS
\*********************************/


/*********************************\
          BLOG / NOTICIAS
\*********************************/
/* Archive */
body.blog .column_blog,
body.archive.category .column_blog,
body.archive.tag .column_blog {
    padding-bottom: 120px;
}

body.archive.category .mcb-sidebar,
body.archive.tag .mcb-sidebar {
    display: none;
}

/* Fixed nav arrows */
body .fixed-nav {
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

body .fixed-nav .desc h6 {
    line-height: 1.3;
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

body .fixed-nav .desc .date {
    font-size: 13px;
    color: var(--gris);
    border: 0;
}

body .fixed-nav .desc .date .icon-clock {
    display: none;
}

body .fixed-nav .photo img,
body .Recent_posts ul li .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Barra lateral */
body .Recent_posts ul li a .desc {
    padding: 8px 10px 3px;
    min-height: 80px;
}

body .Recent_posts ul li a .desc h6 {
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
    line-height: 20px;
}

body .Recent_posts ul li a .desc .date {
    font-size: 12px;
    line-height: 14px;
}

body .widget:not(.widget_block)>h3 {
    font-size: 21px;
    line-height: 29px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: -1px;
}

body .mcb-sidebar select {
    width: 100%;
}

body .widget_categories ul {
    list-style: none;
    padding: 0;
    background: none;
}

body .widget_categories ul li:after {
    content: none
}

body .widget_categories ul li a {
    padding: 5px 10px;
    background: var(--principal);
    display: block;
    border-radius: 3px;
    margin-bottom: 6px;
}

body .widget_categories ul li a:hover {
    background: var(--secundario);
}


/*********************************\
           WOOCOMMERCE
\*********************************/
body .woocommerce ul.products li.product .woocommerce-placeholder {
    border: 0;
}

body .woocommerce .quantity .qty {
    padding: 10px 30px !important;
}

body .woocommerce table.shop_table tr.order-total .includes_tax {
    display: block;
}

body .woocommerce table.shop_table tr.order-total .includes_tax .woocommerce-Price-amount {
    font-size: 1em;
    font-weight: 400;
    color: #767676;
}

.woocommerce div.product form.cart .reset_variations,
.woocommerce .sku_wrapper {
    display: none;
}

.woocommerce ul.products {
    display: grid;
    gap: 40px;
}

.woocommerce.columns-2 ul.products {
    grid-template-columns: repeat(2, 1fr);
}

.woocommerce.columns-3 ul.products,
.woocommerce ul.products.columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.woocommerce.columns-4 ul.products,
.woocommerce ul.products.columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

.woocommerce ul.products:before,
.woocommerce ul.products:after {
    display: none;
}

.woocommerce ul.products li.product {
    height: inherit;
    margin: 0;
    width: auto !important;
}


/*********************************\
            RESPONSIVE
\*********************************/
@media only screen and (max-width: 1239.9px) {}

@media only screen and (min-width: 960px) and (max-width: 1239px) {}

@media only screen and (min-width: 768px) and (max-width: 1239px) {
    body .Recent_posts ul li .photo {
        display: none;
    }

    body .Recent_posts ul li a .desc {
        margin: 0;
    }

    .hero,
    .dark-background {
        margin-inline: 24px;
    }
}

@media only screen and (max-width: 959px) {
    body .animate {
        animation-delay: 0ms !important;
    }

    html.mfn-header-tmpl-burger-sidebar-opened #pojo-a11y-toolbar {
        display: none;
    }

    .order-first {
        order: -1;
    }
}

@media only screen and (min-width: 768px) {
    .dark-background .section_wrapper {
        padding: 57px 60px;
    }
}

@media only screen and (max-width: 767px) {
    #Wrapper .mfn-footer-tmpl .mcb-section:not(.full-width) {
        padding-inline: 0;
    }

    .responsive-img img {
        width: 100vw;
        max-height: 350px;
        object-fit: cover;
        border-radius: 8px;
        object-position: center;
    }

    .joinchat {
        --bottom: 20px;
    }

    .joinchat--left .joinchat__button {
        bottom: 0;
    }

    body .hideMobile {
        display: none !important;
    }

    body.style-simple .responsiveWidth {
        max-width: 670px;
        padding: 0 33px;
    }

    .content_wrapper .section_wrapper,
    .container,
    .four.columns .widget-area {
        max-width: var(--container-width) !important;
        padding-left: var(--row-padding);
        padding-right: var(--row-padding);
    }

    body .content_wrapper .mcb-column-inner {
        margin: 0;
    }
}

@media only screen and (min-width: 450px) and (max-width: 767px) {

    .hero,
    .dark-background {
        margin-inline: 16px;
    }
}

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

    .dark-background .section_wrapper,
    #Wrapper .hero {
        border-radius: 0px;
    }
}

@media only screen and (max-width: 534px) {
    .clamp-h1 h1 {
        line-height: clamp(47px, 5vw, 80px);
        font-size: clamp(26px, 5vw, 40px);
    }
}

@media only screen and (max-width: 480px) {
    body .woocommerce-variation-add-to-cart {
        flex-direction: column;
    }

    body .woocommerce .quantity {
        width: 100%;
        margin: 0 0 5px !important;
    }

    body .woocommerce .product div.entry-summary .cart .button {
        width: 100%;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr {
        display: flex;
        flex-direction: column;
        padding: 0 0 10px;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr:last-child {
        padding: 0;
    }

    body .woocommerce .product div.entry-summary .accordion table.shop_attributes th,
    body .woocommerce .product div.entry-summary .accordion table.shop_attributes td {
        width: 100%;
        padding: 0;
        text-align: left;
    }
}

@media only screen and (max-widht: 425.9px) {
    .logo {
        max-width: 140px;
    }
}