@charset 'utf-8';
/*
  Theme Name: Malta Child
  Theme URI: http://malta.ancorathemes.com/
  Description: Malta - Multipurpose and Multiskin Responsive Wordpress theme
  Author: ACF Coder
  Author URI: http://ancorathemes.com/
  Template: malta
  Version: 1.0
  Tags: light, responsive-layout, flexible-header, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
  Text Domain: malta
*/

/* =Theme customization starts here
-------------------------------------------------------------- */

:root {
    --primary-color: #0F4E85;
    --link-color: #0E817B;
    --secondary-color: #EDE4D9;
    --bg-color: #FFFDF9;
    --wp-admin-theme-color: green;

}


html,
body {
    font-size: 16px;
    font-family: "Barlow", sans-serif;
}

html h1 {
    font-size: 6rem !important;
}

h2,
h3 {
    color: var(--primary-color);
}

h3 {
    font-size: 1.5rem;
}

table th {
    font-size: 1.2em !important;
    font-weight: 600;
}

select,
option {
    font-size: 1.2em !important;
    font-weight: 600;
}


/***** General settings *******/

.rounded_img {
    border: 4px solid var(--link-color);
    border-radius: 50%;
}

.flex__block {
    flex-direction: column;
    text-align: center;
}

.border {
    border-top: 4px solid var(--primary-color) !important;
    border-bottom: 4px solid var(--primary-color) !important;
}

.double__div {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 16px 10% !important;
}

.tercio__div {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 32px 20% !important;
}

.flex__end {
    justify-content: flex-end;
}

.block_50 {
    display: flex;
    flex-direction: column;
    width: 50%;
    padding: 48px;
    align-items: flex-end;
}


.bordered_block {
    border: 4px solid var(--primary-color) !important;
    border-radius: 36px;
    background-color: var(--bg-color);
    overflow: hidden;
}

.bolded {
    font-weight: 600 !important;
}

.bg_white {
    border: 0px;
    border-radius: 36px;
    background-color: var(--bg-color);
}

.bg_50 {
    background-color: rgba(255, 253, 249, 0.8);
}

.bg_80 {
    background-color: rgba(255, 253, 249, 0.9);
}

.sc_item_descr {
    font-size: 1.5em;
    text-transform: uppercase;
}


.scheme_default input[type="text"],
.scheme_default input[type="number"],
.scheme_default input[type="email"],
.scheme_default input[type="url"],
.scheme_default input[type="tel"],
.scheme_default input[type="search"],
.scheme_default input[type="password"],
.select_container select,
.woocommerce div.product form.cart div.quantity,
.woocommerce-page div.product form.cart div.quantity option {
    border-color: var(--link-color) !important;
    color: var(--link-color) !important;
    border: 3px solid;
    width: 60%;

    &:focus {
        border-color: var(--primary-color) !important;
        color: var(--primary-color) !important;
    }
}

.select_container::after {
    color: var(--link-color) !important;
    display: none;
}

.select_container::before {
    display: none !important;
}


/***** MENU *******/

.top_panel_fixed .top_panel_navi {
    padding: 0;
}

.top_panel_top {
    display: none;
}

.scheme_default .top_panel.without_bg_image {
    background-color: var(--primary-color);
}

.scheme_light .top_panel_top {
    background-color: var(--primary-color);
}

.top_panel_navi.scheme_light {

    background-color: var(--bg-color);
    border-bottom: 2px solid var(--primary-color);
    display: block;
    padding: 0;

    ul li a {
        color: var(--primary-color);
    }
}

.scheme_light .top_panel_navi.state_fixed .menu_main_wrap {
    background-color: var(--bg-color) !important;
}


.scheme_default .top_panel_navi.state_fixed .menu_main_wrap {
    background-color: var(--bg-color);

}

.top_panel.without_bg_image .top_panel_title_wrap {
    padding-bottom: 0;
    margin: 0rem;
    padding: 2rem;
    border-top: 3px solid white;
}


/****languages***/

.lang-item a img {
    width: 24px !important;
    height: 24px !important;
    border-radius: 50%;
    border: 3px solid;
}

/***** Pages *****/
h1.page_caption {
    font-size: 4em !important;
}


/***** VIDEO *******/

#video-top video {
    border-bottom: 4px solid var(--primary-color);
    display: block;
    width: 100%;
    height: clamp(70vh, 100%, 100%);
    object-fit: cover;
    background-image: url(https://tarifakiteroutes.com/wp-content/uploads/2026/04/tutoia_2024_day31_tavares_junior_photography-1079-1-scaled.jpg);
    background-size: cover;
    background-position: center center;
}

.mejs-layers,
.mejs-controls {
    display: none !important;

}

#mep_0 {
    height: 50vh;
}


/******Price Block ****/

.price__block,
.boxed__block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 80%;
    max-width: 1200px;
    margin: 32px auto;
    margin-left: auto !important;
    margin-right: auto !important;

    .wpb_column .vc_column_inner .wpb_wrapper {
        display: flex;
        justify-content: center;

    }
}


.boxed__block {
    align-items: center;

    div {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

.sc_price {
    max-width: 360px;
    border: 4px solid var(--primary-color) !important;
    border-radius: 36px;
    background-color: var(--bg-color);
}

.sc_price_info {
    display: flex;
    flex-direction: column;

    .sc_price_title {
        padding-bottom: 1em;
        color: var(--primary-color);

        a {
            color: var(--primary-color) !important;
        }

        &::after {
            display: none;
        }
    }

    .sc_price_price {
        font-size: 3em;
    }

    .sc_price_description {
        font-size: 1.5em;
    }

    >p {
        color: #333;
    }
}


elemento {
    display: block;
}

.scheme_default .single-product div.product .trx-stretch-width .woocommerce-tabs .panel {
    background-color: var(--bg-color);
}


.sc_price::after {
    display: none !important;
}



/**** What we can offer ***/
.services_offered {
    padding: 0 !important;
    margin: 0 !important;

    >div:first-of-type {
        border-top: 4px solid var(--primary-color);
    }

    >div:last-of-type {
        border-bottom: 4px solid var(--primary-color);
    }

}

.services_offered__block {

    display: flex;
    flex-direction: row;

    >.vc_column-inner {
        padding: 0 !important;
    }

    height: auto;
    overflow: hidden;

}

.services_offered__block--container>.services_offered__block>.vc_column-inner>.wpb_wrapper {
    >div:first-of-type {
        text-align: right;
        padding-right: 36px;

    }

    >div:last-of-type {
        text-align: left;
        padding-left: 36px;

    }
}

/* 1. Definimos una altura fija para el contenedor de la fila */
.services_offered__block>.vc_column-inner>.wpb_wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    height: 500px !important;
    /* <--- AJUSTA ESTE VALOR A TU GUSTO */
    overflow: hidden !important;
    padding: 0 !important;

}

/* 2. Aseguramos que la columna de imagen llene ese alto */
.services_offered__block--image {
    width: 60% !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 3. Forzamos a todos los contenedores de imagen de WP Bakery */
.services_offered__block--image .wpb_wrapper,
.services_offered__block--image .vc_figure,
.services_offered__block--image .vc_single_image-wrapper,
.services_offered__block--image img {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    object-fit: cover !important;
    /* Mantiene la imagen centrada y recortada */
}

/* 4. Columna de texto con el mismo alto */
.services_offered__block--text {
    width: 40% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    /* Centra el texto verticalmente */
    padding: 40px !important;
    box-sizing: border-box !important;
    background-color: var(--secondary-color);

    h2,
    h3,
    h4 {
        margin-top: 0;
    }

    /* O el color de fondo que desees */
}

/* 5. Responsive: En móviles quitamos la altura fija para que no se vea mal */
@media (max-width: 768px) {
    .services_offered__block>.vc_column-inner>.wpb_wrapper {
        flex-direction: column !important;
        height: auto !important;
        /* En móvil que fluya natural */
    }

    .services_offered__block--image,
    .services_offered__block--text {
        width: 100% !important;
        height: auto !important;
    }

    .services_offered__block--image img {
        height: 300px !important;
        /* Altura fija solo para la imagen en móvil */
    }

}

/****** WooCommerce ******/


.scheme_default .single-product div.product .trx-stretch-width .woocommerce-tabs .panel {
    background-color: var(--bg-color) !important;
    border: 3px solid var(--link-color);

}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce #content div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce-page #content div.product .woocommerce-tabs ul.tabs li.active {
    background-color: var(--bg-color) !important;
    border: 3px solid var(--link-color);
    color: var(--link-color);
    border-bottom: var(--bg-color);
}

.scheme_default .single-product div.product .trx-stretch-width .woocommerce-tabs .wc-tabs li.active a,
.scheme_default .single-product div.product .trx-stretch-width .woocommerce-tabs .wc-tabs li a:hover {
    background-color: var(--bg-color) !important;
    border: 3px solid var(--link-color);
    color: var(--link-color) !important;
    border-bottom-color: var(--bg-color);
}

article.post_type_product {

    display: block;
    margin: 0 auto;
    width: 80%;
    min-width: 450px;
    max-width: 1200px;
    padding: 64px;
    background-color: var(--bg-color);

    .product_title {
        font-family: "Permanent Marker", Arial, Helvetica, sans-serif !important;
        font-size: 3em !important;
    }
}

.product_meta {
    display: none !important;
}

.post_content .woocommerce {
    display: block;
    margin: 0 auto;
    width: 80%;
    min-width: 450px;
    max-width: 1200px;
    padding: 64px;
    background-color: var(--bg-color);
}

.single-product div.product .trx-stretch-width .woocommerce-tabs .wc-tabs li a,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    position: relative;
    font-size: 1.2em !important;
}


.variations_button {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1em;
}

/***** CART ****/
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: block;
    text-align: center;
    margin-bottom: 1em;
    font-size: 1.25em;
    padding: 1.2m;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: 1.2em !important;
}

/**** Partners ***********/
.row__block * .wpb_wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;

    .wpb_single_image {
        max-width: 300px
    }

}

/**** Visibility ***********/
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/**** Flex Center Grid ***********/
.sc_services_columns {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
}

/***** Kit digital *********/
.kit__block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.kit__block--logos * .wpb_wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: center;
    align-items: center;

    img {
        max-height: 36px;
        width: auto !important;
        margin: 0 !important;
    }

    div {
        margin: 0 !important;
    }
}

/**** Image Circle ***********/
.image__circle {
    width: 800px;
    /* Ajusta según necesites */
    height: 700px;
    /* Al ser diferentes, queda rectangular */
    border-radius: 12px;
    object-fit: cover;
    /* Mantiene la proporción sin estirar */
}


.h2-pequeno {
    font-size: 12px !important;
    /* Tamaño reducido (aprox 19px) */
    font-weight: 600 !important;
    /* Mantiene el grosor para que parezca título */
    line-height: 1.4 !important;
    /* Mejora la legibilidad */
    margin-bottom: 0.5rem !important;
    /* Espaciado inferior equilibrado */
}