/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/

:root {

    --spacer: 0px;

    --color-1: #1b1b1b;
    --color-2: #1e1e1e;
    --color-3: #0a0a0a;

    --full-static: 16px;
    --full-tablet-desktop: calc(10px + (16 - 10) * ((100vw - 768px) / (1200 - 768)));
    --full-mobile: calc(5px + (20 - 5) * ((100vw - 167px) / (767 - 167)));

    --half-static: 8px;
    --half-tablet-desktop: calc(5px + (8 - 5) * ((100vw - 768px) / (1200 - 768)));
    --half-mobile: calc(2.5px + (10 - 2.5) * ((100vw - 167px) / (767 - 167)));

    /*--service-font-size-static: 32px;*/
    --service-font-size-static: 28px;
    /*--service-font-size-tablet-desktop: calc(20px + (32 - 20) * ((100vw - 768px) / (1200 - 768)));*/
    --service-font-size-tablet-desktop: calc(18px + (27 - 18) * ((100vw - 768px) / (1200 - 768)));
    /*--service-font-size-mobile: calc(9px + (42 - 9) * ((100vw - 167px) / (767 - 167)));*/
    --service-font-size-mobile: calc(7px + (35 - 7) * ((100vw - 167px) / (767 - 167)));

    --shadow-static: 0px 4px 12px 4px var(--color-3);
    --shadow-tablet-desktop: 0px calc(2px + (4 - 2) * ((100vw - 768px) / (1200 - 768))) calc(8px + (12 - 8) * ((100vw - 768px) / (1200 - 768))) calc(2px + (4 - 2) * ((100vw - 768px) / (1200 - 768))) var(--color-3);
    --shadow-mobile: 0px calc(1px + (4 - 1) * ((100vw - 167px) / (767 - 167))) calc(4px + (12 - 4) * ((100vw - 167px) / (767 - 167))) calc(1px + (4 - 1) * ((100vw - 167px) / (767 - 167))) var(--color-3);

}

/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/


@media ( max-width: 479px ) { #gallery_mobile .gallery-item { max-width: 50%; } }


/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/

html, body.page-id-1241 {
    max-width: 100%;
    overflow-x: hidden;
}

/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/


body { background-color: var(--color-1); }

.elementor-widget-bookly-widget-bookly-form { margin-bottom: 0px !important; }

textarea.bookly-js-user-notes,
.elementor-widget-bookly-widget-bookly-form input {
    background-color: #1e1e1e;
    color: #cbbe8a;
}

/*---------------------------------- Cookie Plugin Stuff ---------------------------------*/

@media (min-width: 768px) {
    .logo-container img {
        max-width: 100px !important;
        height: 100px !important;
    }    
}

.logo-container {
    text-align: center !important;
}

.logo-container img {
    margin-bottom: 0px !important;
}

.qc-cmp2-container h2 {
    color: #141e23 !important;
}

.qc-cmp2-container p {
    color: #4d545d !important;
}

/*---------------------------------------------------------------------------------------*/

.content_container { box-shadow: 0px 16px 32px 16px var(--color-3); }

.content_container > .elementor-widget-wrap { background-color: var(--color-2) !important; }

.shadow > .elementor-widget-container,
.shadow > .elementor-widget-wrap,
.gallery img { box-shadow: var(--shadow-static); }

.book, .folgas, .perfil { display: none; }

.btn .elementor-button-wrapper,
div._landing_page_btn { box-shadow: inset var(--shadow-static); }

.blackcard > .elementor-widget-container,
body:not(.page-id-1241) .blackcard > .elementor-widget-wrap { background-color: var(--color-2) !important; }

.minus20 .elementor-divider {
    padding-top: var(--spacer) !important;
    padding-bottom: var(--spacer) !important;
}

.minus20 > .elementor-widget-container { margin: var(--half-static)  !important; }

.intro .btn .elementor-button-wrapper,
._landingpage_box_1 .btn .elementor-button-wrapper { margin: 0px auto; }

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #cbbe8a80;
  opacity: 1; /* Firefox */
  font-weight: 300;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #cbbe8a80;
  font-weight: 300;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #cbbe8a80;
  font-weight: 300;
}

.btn a,
._landing_page_btn a {
    /*border-radius: 30px 30px 0px 0px !important;*/
    padding: 16px 26px !important;
    margin: 16px 16px 0px 16px !important;
    color: var(--color-1) !important;
    background-color: #cbbe8a;
}

._landing_page_btn a {
    font-size: 24px !important;
    font-weight: 500;
}

.btn .elementor-button-wrapper,
div._landing_page_btn {
    width: fit-content;
    line-height: 0px;
    background-color: var(--color-1);
}

.gallery_col > .elementor-widget-wrap { padding: 0px !important; }

.gallery figure { padding: 0px var(--full-static) var(--full-static) 0px !important; }

.gallery { margin: 0px calc(var(--full-static) * -1) calc(var(--full-static) * -1) 0px !important; }

figure img { width: 100%; }

.local > .elementor-widget-container { padding: 32px !important; }

.local h2 { 
    font-family: "Montserrat", Sans-serif;
    font-weight: 500;
    margin: 0px;
}

.local p { font-family: "Montserrat", Sans-serif; }

.location .btn .elementor-button-wrapper { margin: 8px auto; }

div._landing_page_btn { margin: 8px auto 0px auto; }

.location .btn a,
._landing_page_btn a { margin-bottom: var(--half-static); }

.location .eicon-play { font-size: 150px !important; }

#location-1, #location-2 { font-size: 30px; }

#address-1, #address-2 { font-size: 23px; }

.card-padding > div,
.onde_estamos > .elementor-widget-wrap,
.servicos > .elementor-widget-wrap { padding: var(--full-static) !important; }

.elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

#onde_estamos > .elementor-widget-container,
#services > .elementor-widget-container { padding: 8px 0px 0px 0px !important; }

.service_card p, .service_card_soon p { line-height: 1.1 !important; }

._landing_page .elementor-widget-wrap,
#_lp_sec_1_col_1 .elementor-widget-container:not(._lp_form *),
.service_card .elementor-widget-wrap,
.service_card .elementor-widget-container,
.service_card_soon .elementor-widget-wrap,
.service_card_soon .elementor-widget-container { padding: var(--full-static) !important; }

.form_fsb label { padding: var(--half-static) 0px !important; }

.form_fsb input { padding: var(--half-static) calc( var(--half-static) * 2) !important; }

._lp_form { padding: var(--full-static) var(--full-static) 0px var(--full-static) !important; }

._landing_page_padding_0px_bottom .elementor-widget-wrap { padding: var(--full-static) var(--full-static) 0px var(--full-static) !important; }

.elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

.hours_n_follow_us { margin-bottom: var(--full-static) !important; }

.social_icons a { --icon-size: 60px; }

.footer > .elementor-widget-wrap { padding: calc(var(--full-static) * 2) !important; }

#_lp_sec_1_col_1 p,
.form_fsb label,
.form_fsb #name,
.form_fsb #email {
    font-size: 16px;
    line-height: 21px;
}

.form_fsb label,
.form_fsb input {
    display: block;
    font-weight: normal;
}


/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/


@media ( max-width: 1200px ) and ( min-width: 768px ) {
    
    #_lp_sec_1_col_1 h1 {
        font-size: calc(20px + (31 - 20) * ((100vw - 768px) / (1200 - 768))) !important;
        line-height: calc(18px + (21 - 18) * ((100vw - 768px) / (1200 - 768))) !important;
    }
    
    #_lp_sec_1_col_1 p,
    .form_fsb label,
    .form_fsb #name,
    .form_fsb #email {
        font-size: calc(13px + (16 - 13) * ((100vw - 768px) / (1200 - 768))) !important;
        line-height: calc(18px + (21 - 18) * ((100vw - 768px) / (1200 - 768))) !important;
    }

    .content_container > .elementor-widget-wrap { padding: var(--half-tablet-desktop) !important; }

    .shadow > .elementor-widget-container,
    .shadow > .elementor-widget-wrap,
    .gallery img { box-shadow: var(--shadow-tablet-desktop); }

    .btn .elementor-button-wrapper,
    div._landing_page_btn { box-shadow: inset var(--shadow-tablet-desktop); }  

    .blackcard > .elementor-widget-container,
    .blackcard > .elementor-widget-wrap,
    .gallery_col > .elementor-widget-wrap { margin: var(--half-tablet-desktop) !important; }

    .minus20 > .elementor-widget-container { margin: var(--half-tablet-desktop)  !important; }

    .minus20 span { --divider-border-width: calc(var(--half-tablet-desktop) * 0.33) !important; }

    .intro .btn a,
    ._landing_page_btn a { padding: calc(10px + (16 - 10) * ((100vw - 768px) / (1200 - 768))) calc(22px + (26 - 22) * ((100vw - 768px) / (1200 - 768))) !important; }

    .btn a,
    ._landing_page_btn a {
        margin: var(--full-tablet-desktop) var(--full-tablet-desktop) 0px var(--full-tablet-desktop) !important;
        /*border-radius: calc(12px + (22 - 12) * ((100vw - 768px) / (1200 - 768))) calc(12px + (22 - 12) * ((100vw - 768px) / (1200 - 768))) 0px 0px !important;*/
    }

    ._landing_page_btn a {
        font-size: calc(14px + (24 - 14) * ((100vw - 768px) / (1200 - 768))) !important;
        font-weight: 500;
    }

    /*.btn .elementor-button-wrapper { border-radius: calc(22px + (38 - 22) * ((100vw - 768px) / (1200 - 768))) calc(22px + (38 - 22) * ((100vw - 768px) / (1200 - 768))) 0px 0px !important; }*/

    .gallery figure { padding: 0px var(--full-tablet-desktop) var(--full-tablet-desktop) 0px !important; }

    .gallery { margin: 0px calc(var(--full-tablet-desktop) * -1) calc(var(--full-tablet-desktop) * -1) 0px !important; }

    .local > .elementor-widget-container { padding: calc(20px + (32 - 20) * ((100vw - 768px) / (1200 - 768))) !important; }

    .location .btn a,
    ._landing_page_btn a { padding: calc(10px + (16 - 10) * ((100vw - 768px) / (1200 - 768))) calc(22px + (26 - 22) * ((100vw - 768px) / (1200 - 768))) !important; }

    .location .btn .elementor-button-wrapper { margin: var(--half-tablet-desktop) auto; }
    
    div._landing_page_btn { margin: var(--half-tablet-desktop) auto 0px auto; }

    .location .eicon-play { font-size: calc(96px + (150 - 96) * ((100vw - 768px) / (1200 - 768))) !important; }

    #location-1, #location-2 { font-size: 2.5vw; }
    
    /*#address-1, #address-2 { font-size: 1.91667vw; }*/
    #address-1, #address-2 { font-size: 1.89vw; }

    .card-padding > div,
    .onde_estamos > .elementor-widget-wrap,
    .servicos > .elementor-widget-wrap { padding: var(--full-tablet-desktop) !important; }
    
    .elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

    #onde_estamos > .elementor-widget-container,
    #services > .elementor-widget-container { padding: calc(5px + (8 - 5) * ((100vw - 768px) / (1200 - 768))) 0px 0px 0px !important; }

    ._landing_page .elementor-widget-wrap,
    #_lp_sec_1_col_1 .elementor-widget-container:not(._lp_form *),
    .service_card .elementor-widget-wrap,
    .service_card .elementor-widget-container,
    .service_card_soon .elementor-widget-wrap,
    .service_card_soon .elementor-widget-container { padding: var(--full-tablet-desktop) !important; }
    
    .form_fsb label { padding: var(--half-tablet-desktop) 0px !important; }
    
    .form_fsb input { padding: var(--half-tablet-desktop) calc( var(--half-tablet-desktop) * 2) !important; }
    
    ._lp_form { padding: var(--full-tablet-desktop) var(--full-tablet-desktop) 0px var(--full-tablet-desktop) !important; }
    
    ._landing_page_padding_0px_bottom .elementor-widget-wrap { padding: var(--full-tablet-desktop) var(--full-tablet-desktop) 0px var(--full-tablet-desktop) !important; }
    
    .elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

    .hours_n_follow_us { margin-bottom: var(--full-tablet-desktop) !important; }
    
    .social_icons a { --icon-size: 5vw; }

    .footer > .elementor-widget-wrap { padding: calc(var(--full-tablet-desktop) * 2) !important; }

}

/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/

@media ( max-width: 767px ) {
    
    #_lp_sec_1_col_1 h1 {
    	font-size: calc(8px + (39 - 8) * ((100vw - 167px) / (767 - 167))) !important;
    	line-height: calc(18px + (25 - 18) * ((100vw - 167px) / (767 - 167))) !important;
    }
    
    #_lp_sec_1_col_1 p,
    .form_fsb label,
    .form_fsb #name,
    .form_fsb #email {
    	font-size: calc(8px + (20 - 8) * ((100vw - 167px) / (767 - 167))) !important;
    	line-height: calc(13px + (25 - 13) * ((100vw - 167px) / (767 - 167))) !important;
    }

    .content_container > .elementor-widget-wrap { padding: var(--half-mobile) !important; }

    .shadow > .elementor-widget-container,
    .shadow > .elementor-widget-wrap,
    .gallery img { box-shadow: var(--shadow-mobile); }

    .btn .elementor-button-wrapper,
    div._landing_page_btn { box-shadow: inset var(--shadow-mobile); }

    .blackcard > .elementor-widget-container,
    .blackcard > .elementor-widget-wrap,
    .gallery_col > .elementor-widget-wrap { margin: var(--half-mobile) !important; }

    .minus20 > .elementor-widget-container { margin: var(--half-mobile)  !important; }
    
    .minus20 span { --divider-border-width: calc(var(--half-mobile) * 0.33) !important; }

    .intro .btn a,
    ._landing_page_btn a { padding: calc(5px + (20 - 5) * ((100vw - 167px) / (767 - 167))) calc(12px + (72 - 12) * ((100vw - 167px) / (767 - 167))) !important; }

    .btn a,
    ._landing_page_btn a {
        margin: var(--full-mobile) var(--full-mobile) 0px var(--full-mobile) !important;
        /*border-radius: calc(6px + (30 - 6) * ((100vw - 167px) / (767 - 167))) calc(6px + (30 - 6) * ((100vw - 167px) / (767 - 167))) 0px 0px !important;*/
    }

    ._landing_page_btn a {
        font-size: calc(6px + (26 - 6) * ((100vw - 167px) / (767 - 167))) !important;
        font-weight: 500;
    }

    /*.btn .elementor-button-wrapper { border-radius: calc(12px + (46 - 12) * ((100vw - 167px) / (767 - 167))) calc(12px + (46 - 12) * ((100vw - 167px) / (767 - 167))) 0px 0px !important; }*/

    #gallery_mobile figure { padding: 0px var(--full-mobile) var(--full-mobile) 0px !important; }

    #gallery_mobile .gallery { margin: 0px calc(var(--full-mobile) * -1) calc(var(--full-mobile) * -1) 0px !important; }

    .local > .elementor-widget-container {
        margin: 0px 0px calc(5px + (20 - 5) * ((100vw - 167px) / (767 - 167))) 0px;
        padding: calc(10px + (40 - 10) * ((100vw - 167px) / (767 - 167))) !important;
    }

    .location .btn a,
    ._landing_page_btn a { padding: calc(5px + (20 - 5) * ((100vw - 167px) / (767 - 167))) calc(7px + (50 - 7) * ((100vw - 167px) / (767 - 167))) !important; }

    .location .btn .elementor-button-wrapper { margin: var(--half-mobile) auto; }
    div._landing_page_btn { margin: var(--half-mobile) auto 0px auto; }

    .location .eicon-play { font-size: calc(42px + (190 - 42) * ((100vw - 167px) / (767 - 167))) !important; }

    #location-1, #location-2 { font-size: 4.95437vw; }
    
    #address-1, #address-2 { font-size: 3.65vw; }

    .card-padding > div,
    .onde_estamos > .elementor-widget-wrap,
    .servicos > .elementor-widget-wrap { padding: calc(10px + (20 - 10) * ((100vw - 167px) / (767 - 167))) !important; }
    
    .elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

    #onde_estamos > .elementor-widget-container,
    #services > .elementor-widget-container { padding: calc(3px + (8 - 3) * ((100vw - 167px) / (767 - 167))) 0px 0px 0px !important; }

    ._landing_page .elementor-widget-wrap,
    #_lp_sec_1_col_1 .elementor-widget-container:not(._lp_form *),
    .service_card .elementor-widget-wrap,
    .service_card .elementor-widget-container,
    .service_card_soon .elementor-widget-wrap,
    .service_card_soon .elementor-widget-container { padding: var(--full-mobile) !important; }
    
    .form_fsb label { padding: var(--half-mobile) 0px !important; }
    
    .form_fsb input { padding: var(--half-mobile) calc( var(--half-mobile) * 2) !important; }
    
    ._lp_form { padding: var(--full-mobile) var(--full-mobile) 0px var(--full-mobile) !important; }
    
    ._landing_page_padding_0px_bottom .elementor-widget-wrap { padding: var(--full-mobile) var(--full-mobile) 0px var(--full-mobile) !important; }
    
    .elementor-widget-bookly-widget-bookly-form > div { padding-bottom: 0px !important; }

    .hours_n_follow_us { margin-bottom: calc(var(--half-mobile) * 1.023) !important; }

    .social_icons a { --icon-size: 10vw; }

    .footer > .elementor-widget-wrap { padding: calc(var(--full-mobile) * 2) !important; }

}

/*-------------------------------------------------------------------------------------------------------------------------------------------------------*/