/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


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


/* menu footer */
@media (max-width: 980px) {
    .et_pb_menu .et_pb_menu__menu {
        display: block;
    }
    
    .et_mobile_nav_menu {
        display: none !important;
    }
}


.seo-hidden-text {
    display: none;
}
.seo-hidden-text * {
    font-size: 0 !important;
}

.hidden_without_href[href=""] {
    display: none !important;
}


/* blog */

@media (min-width: 981px) {
    .et_pb_posts article {
        display: flex;
        gap: 60px;
    }
}

@media (max-width: 980px) {
    .et_pb_posts article {
        margin-bottom:60px;
    }
}

.et_pb_posts article img {
    height:260px;
    object-fit: cover;
    object-position: center;
    max-width: 300px;
    border-radius: 10px;
}


.et_pb_blog_grid h2 {
    line-height: 1.3;
    font-weight: 600;
}


/* post image */
.post-image img {
    height:auto;
	aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
}

@media (max-width:800px) {
    .post-image img {
        height:auto;
    }
}



/* home descúbrelo */
@media (min-width:801px) {
    .home_descubrelo .et_pb_blurb {
        min-height: 250px;
    }
}

.home_descubrelo a {
    color:inherit;
}



/* portfolio */
.et_pb_portfolio_grid_items .project .et_pb_module_header,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header {
    position: absolute;
    bottom:0px;
    left:0;
    width:100%;
    padding:20px;
    font-family: 'Poppins', Helvetica, Arial, Lucida, sans-serif;
    font-weight: 600;
    z-index: 3;
    opacity: 0;
    transition:opacity 0.3s;
}

.et_pb_portfolio_grid_items .project:hover .et_pb_module_header,
.et_pb_portfolio_grid_items .project:hover .et_portfolio_image .et_overlay,
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_pb_module_header,
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_portfolio_image .et_overlay {
    opacity: 1 !important;
}

.et_pb_portfolio_grid_items .project .et_portfolio_image:hover .et_overlay,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_portfolio_image:hover .et_overlay {
    opacity: 0;
}

.et_pb_portfolio_grid_items .project .et_pb_module_header a,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header a {
    color:white;
}

.et_pb_portfolio_grid_items .project,
.et_pb_filterable_portfolio .et_pb_portfolio_item {
    border-radius: 10px;
    overflow: hidden;
}

.et_pb_portfolio_grid_items .project img,
.et_pb_filterable_portfolio .et_pb_portfolio_item img {
    height: 300px;
    object-fit: cover;
}

.et_pb_portfolio_grid_items .project .et_overlay,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay {
    background: rgba(0, 0, 0, .8);
    z-index: 2;
}

.et_pb_portfolio_grid_items .project .et_overlay:before,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay:before {
    display: none;
}



/* contact form */
.et_pb_contact_main_title {
    display: none !important;
}

.form_newsletter .et_pb_contact_field_half {
    width: 100%;
    float:none;
}

.form_newsletter .et-pb-contact-message p {
    border-top: 1px solid white;
    padding-top: 20px;
    color: white;
    font-size: 15px;
}


/* popup */
.sgpb-popup-overlay {
    display: none !important;
}

.sg-popup-servicio {
    color:white;
    text-transform: uppercase;
    font-weight: 700;
    border:0 !important;
    background-color: rgba(255, 116, 64, 1) !important;
}

.sg-popup-servicio img {
    max-height: 200px;
    display: block;
}

.sg-popup-servicio p {
    padding-bottom:0;
    line-height: 1.4;
}

.sg-popup-servicio .sg-popup-builder-content {
    padding:20px 30px;
}

.sg-popup-servicio .wp-block-image {
    margin-bottom:0;
}

.sgpb-popup-dialog-main-div-theme-wrapper-3 .sgpb-popup-close-button-3 {
    margin-top: -4px;
}



/* servicios */
.servicio_teaser h2 {
    margin-bottom:30px;
}

.servicio_teaser h3 {
    margin-left:20px;
    margin-top:10px;
}



/* columns gallery */
/** Desktop **/
 .gallery-logos-width .et_pb_gallery_items > div {
    width: 100% !important;
    margin:0 !important;
}

.gallery-logos-width .et_pb_gallery_items {
    display: grid;
}

@media (min-width: 981px){
    .gallery-logos-width .et_pb_gallery_items {
        grid-template-columns: repeat(8,1fr);
        gap:60px;
    }
}
 
/** Tablet **/
@media (max-width: 980px){
    .gallery-logos-width .et_pb_gallery_items {
        grid-template-columns: repeat(4,1fr);
        gap:40px;
    }
}
 
 
/** Phone **/
@media (max-width: 479px){
    .gallery-logos-width .et_pb_gallery_items {
        grid-template-columns: repeat(3,1fr);
        gap:40px;
    }
}




/* gallery clientes */
.gallery-clientes a {
    cursor: default;
}
.gallery-clientes .et_overlay {
    display: none !important;
}

.gallery-clientes img {
    object-fit: contain;
}




/* servicios */

@media (max-width:800px) {
    
    .header_servicios img {
        max-height: 200px !important;
    }
    
    .servicios_grid h3 {
        font-size: 18px !important;
    }
    
    .servicio_header > div:first-child > div:first-child > div:first-child * {
        font-size: 32px;
    }
    
    .servicio_in_header img {
        max-height: 200px !important;
    }
    
    .servicio_in_header h1 {
        font-size: 32px !important;
    }
    
    .servicio_paper img {
        max-width: 200px;
    }
}



/* portfolio */
@media (max-width:800px) {

    .portfolio_header > div:first-child > div:last-child > div:first-child * {
        font-size: 32px;
    }

    .portfolio_header img {
        max-height: 200px !important;
    }
    
    .et_pb_filterable_portfolio_0 .et_pb_portfolio_filters ul {
        gap:5px;
        margin-left: -20px;
        width: calc(100% + 40px) !important;
    }
    
    .et_pb_filterable_portfolio_0 .et_pb_portfolio_filters ul li a {
        font-size: 12px !important;
        padding: 6px 5px;
        
    }
    
    .single-project h1 {
        font-size: 32px !important;
    }

}



/* blog */
.category:not(.category-blog) .blog_header_elefante {
    display: none !important;
}

@media (max-width:800px) {
    .blog_header_heading h1 {
        font-size: 32px !important;
    }
    
    .blog_header_heading {
        margin-bottom:-50px !important;
    }
    
    .category:not(.category-blog) .blog_header_heading {
        margin-bottom:-100px !important;
    }
    
    .blog_header_heading .et_pb_heading {
        margin-bottom: 0 !important;
    }
    
    .archive .et_pb_blog_0_tb_body .et_pb_post .entry-title {
        line-height: 1 !important;
        margin-bottom:15px !important;
    }
    .archive .et_pb_blog_0_tb_body .et_pb_post .entry-title a {
        font-size: 24px !important;
        line-height: 1 !important;
    }
    
    .archive .et_pb_blog_0_tb_body .et_pb_post .post-content * {
        font-size: 16px !important;
    }
    
    .blog_header_elefante h2 {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }
    
    .blog_header_elefante p {
        font-size: 16px !important;
        line-height: 1.9 !important;
    }
    
    .single-post h1 {
        font-size: 24px !important;
    }
    
    .single-post .et_pb_post_content {
        width: 80%;
        margin:0 auto;
    }
    
 
}




/* home */
@media (max-width:800px) {
    .home .et_pb_text_11 {
        width: 100% !important;
    }
    
    .home_estamos {
        margin-top:-160px;
    }
}




/* menu mobile */

.et_mobile_menu > li:last-child > a {
    border-bottom: 0;
}
.et_header_style_left #et-top-navigation .mobile_menu_bar {
    padding-bottom:0;
}
/*change hamburger icon to x when mobile menu is open*/
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
    content: '\4d';
}

.et_mobile_menu {
    border-top-color: #ff7440;
}
/*adjust the new toggle element which is added via jQuery*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
    width: 44px;
    height: 100%;
    padding: 0px !important;
    max-height: 44px;
    border: none;
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 999;
    background-color: transparent;
}
/*some code to keep everyting positioned properly*/
ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
    position: relative;
}
/*remove default background color from menu items that have children*/
.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
    background-color: transparent;
}
/*hide the submenu by default*/
ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
    display: none !important;
    visibility: hidden !important;
}
/*show the submenu when toggled open*/
ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
    display: block !important;
    visibility: visible !important;
}
/*adjust the toggle icon position and transparency*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
    text-align: center;
    opacity: 1;
}
/*submenu toggle icon when closed*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
    top: 10px;
    position: relative;
    font-family: "ETModules";
    content: '\33';
    color: #ff7440;
    background: #f0f3f6;
    border-radius: 50%;
    padding: 3px;
}
/*submenu toggle icon when open*/
ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
    content: '\32';
}
/*add point on top of the menu submenu dropdown*/
.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
    position: absolute;
    right: 5%;
    margin-left: -20px;
    top: -14px;
    width: 0;
    height: 0;
    content: '';
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #ffffff;
}
/*adjust the position of the hamburger menu*/
.mobile_menu_bar {
    position: relative;
    display: block;
    bottom: 10px;
    line-height: 0;
}
/*force the background color and add a rounded border*/
.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
    background-color: #ffffff!important;
    border-radius: 10px;
}






/* home teasers services */
@media (min-width: 1251px) {

    html[lang='en-US'] .home_teasers_services .et_pb_column_1_5, 
    html[lang='en-US'] .home_teasers_services.et_pb_row .et_pb_column_1_5 {
        width: 17.6%;
    }
    
    html[lang='en-US'] .home_teasers_services .et_pb_column, 
    html[lang='en-US'] .home_teasers_services.et_pb_row .et_pb_column {
        margin-right: 2.5%;
    }
        
    html[lang='en-US'] .home_teasers_services h4 {
        font-size: 16px !important;
    }
}

@media (min-width: 981px) and (max-width:1250px) {
    html[lang='en-US'] .home_teasers_services .et_pb_column_1_5, 
    html[lang='en-US'] .home_teasers_services.et_pb_row .et_pb_column_1_5 {
        width: 18.6%;
    }
    
    html[lang='en-US'] .home_teasers_services .et_pb_column, 
    html[lang='en-US'] .home_teasers_services.et_pb_row .et_pb_column {
        margin-right: 1.5%;
    }
    
    html[lang='en-US'] .home_teasers_services h4 {
        font-size: 16px !important;
    }
}
