/*
Theme Name:  Stay 360 Leblon
Description: Tema personalizado desenvolvido para e empresa Aros. Jan/26
Author:      Fernando Grossman
Author URI:  http://www.fernandogrossman.com.br
Version:     1.0.3



/* RESETS */

*, *::before, *::after {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height: auto;
}

* {
    caret-color: transparent !important;
}
p, h1, h2, h3, h4, h5, h6,
strong, b, i, em, span, small,
li, blockquote, pre, code,
input:not([type="submit"]), textarea, [contenteditable="true"] {
    caret-color: auto !important;
}
.menu-icon {
    caret-color: transparent !important;
}

/* Fonts */

/* @font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-xlt-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-xlt-webfont.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-xltobl-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-xltobl-webfont.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
} */

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-bk-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-bk-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-bkobl-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-bkobl-webfont.woff') format('woff');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-md-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-md-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-mdobl-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-mdobl-webfont.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* @font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-demi-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-demi-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-demiobl-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-demiobl-webfont.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
} */

@font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-bold-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* @font-face {
    font-family: 'ITC Avant Garde Gothic Pro';
    src: url('assets/fonts/itcavantgardepro-boldobl-webfont.woff2') format('woff2'),
         url('assets/fonts/itcavantgardepro-boldobl-webfont.woff') format('woff');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}


@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_thin-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_thin-webfont.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_light-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_light-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
} 

@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_regular-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_medium-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_medium-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_bold-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Anisette';
    src: url('assets/fonts/anisette_black-webfont.woff2') format('woff2'),
         url('assets/fonts/anisette_black-webfont.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
} */


@font-face {
    font-family: 'Termina';
    src: url('assets/fonts/Termina-Regular.woff2') format('woff2'),
        url('assets/fonts/Termina-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Termina';
    src: url('assets/fonts/Termina-Medium.woff2') format('woff2'),
        url('assets/fonts/Termina-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}



/* GLOBAIS */

:root {
    --global--font-primary: 'Termina', Arial, "Segoe UI", Verdana, Tahoma, Trebuchet MS, Ubuntu, Cantarell, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
    /*--global--font-primary: 'Anisette', Arial, "Segoe UI", Verdana, Tahoma, Trebuchet MS, Ubuntu, Cantarell, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;*/
    --global--font-secondary: 'ITC Avant Garde Gothic Pro', Arial, "Segoe UI", Verdana, Tahoma, Trebuchet MS, Ubuntu, Cantarell, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
    /* --global--font-secondary: 'Merriweather', Georgia, 'Times New Roman', Times, 'Palatino Linotype', 'Book Antiqua', Garamond, serif; */

    /* TEMPLATE Colors */
    --global--color-black: #000000;
    --global--color-white: #FFFFFF;

    --global--color-dark-gray: #131313;
    --global--color-gray: #5C5C5C;
    --global--color-light-gray: #B3B3B3;

	--global--color-primary: #594a33; 
	--global--color-secondary: #7a614a; 
    --global--color-tertiary: #faf0e0;
    --global--color-support: #c4b29e;
    --global--color-hover: var(--global--color-tertiary);
	--global--color-background: var(--global--color-tertiary);

    --responsive--intmargin-width: calc(1200px + 90px + 90px);
    --responsive--outmargin-width: clamp(1px, calc((100vw - var(--responsive--intmargin-width))/2), 50vw);

    --global--modulo: 30px;
    /* --global--section-margin: 30px 0;
    --global--section-padding: 30px 0; */
    --global--section-margin: 45px 0;
    --global--section-padding: 45px 0;
    --global--container-padding: 0 15px;

    /*font size responsivo*/
    --global--responsive-font-size-24-40: clamp(24px, calc(15.830px + 1.70213vw), 40px);
    --global--responsive-font-size-20-26: clamp(20px, calc(16.936px + 0.63830vw), 26px);
    --global--responsive-font-size-18-22: clamp(18px, calc(15.957px + 0.42553vw), 22px);
    --global--responsive-font-size-17-21: clamp(17px, calc(14.957px + 0.42553vw), 21px);



    /*novos modulos*/
    --global--modulo-60-150: clamp(60px, calc(9.57vw + 14.04px), 150px);
    --global--modulo-45-150: clamp(45px, calc(11.17vw - 8.62px), 150px);
    --global--modulo-30-150: clamp(30px, calc(12.77vw - 31.28px), 150px);
    --global--modulo-90-120: clamp(90px, calc(3.19vw + 74.68px), 120px);
    --global--modulo-60-120: clamp(60px, calc(6.38vw + 29.36px), 120px);
    --global--modulo-45-120: clamp(45px, calc(7.98vw + 6.70px), 120px);
    --global--modulo-30-120: clamp(30px, calc(9.57vw - 15.96px), 120px);
    --global--modulo-60-90: clamp(60px, calc(3.19vw + 44.68px), 90px);
    --global--modulo-45-90: clamp(45px, calc(4.79vw + 22.02px), 90px);
    --global--modulo-30-90: clamp(30px, calc(6.38vw - 0.64px), 90px);
    --global--modulo-15-90: clamp(15px, calc(7.98vw - 23.30px), 90px);
    --global--modulo-45-60: clamp(45px, calc(37.32px + 1.60vw), 60px);
    --global--modulo-30-60: clamp(30px, calc(14.69px + 3.19vw), 60px);
    --global--modulo-15-30: clamp(15px, calc(7.34px + 1.5957vw), 30px);

} 


    @media (min-width: 768px) {
        :root {
            --global--modulo: 60px;
            --global--section-margin: 60px 0;
            --global--section-padding: 60px 0;
            --global--container-padding: 0 30px;
        }
    } 
    @media (min-width: 1025px) {
        :root {
            --global--modulo: 90px;
            --global--section-margin: 90px 0;
            --global--section-padding: 90px 0;
            --global--container-padding: 0 60px;
        }
    } 
    @media (min-width: 1240px) {
        :root {
            --global--modulo: 120px;
            /* --global--section-margin: 120px 0;
            --global--section-padding: 120px 0; */
            --global--container-padding: 0 90px;

        }
    } 
    @media (min-width: 1420px) {
        :root {
            --global--modulo: 150px;
            /*--global--section-margin: 150px 0;
            --global--section-padding: 150px 0; */
            /* --global--container-padding: 0 120px; */

        }
    } 
 
    
html {
  scroll-behavior: smooth;
} 



/* GLOBAIS DO TEMA */

body {
    background-color: var(--global--color-background);
}

body, input, textarea, select {
    font-family: var(--global--font-secondary);
    text-decoration: none;
}

a, button {
    font-family: var(--global--font-primary);
    text-decoration: none;
}

h1 {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-24-40);
    font-weight: 400;
    line-height: 1.2em;
    color: var(--global--color-white);
    margin: 0 0 calc(var(--global--modulo-30-60) - 5px);
    padding: 0;
    letter-spacing: 2px;
}

h2 {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-20-26);
    font-weight: 400;
    line-height: 1.2em;
    letter-spacing: 1.5px;
    color: var(--global--color-white);
    margin: 0 0 25px;
    text-align: center;
}

h3 {
    font-family: var(--global--font-secondary);
    font-size: var(--global--responsive-font-size-20-26);
    font-weight: 500;
    line-height: 1.3em;
    letter-spacing: 2px;
    color: var(--global--color-white);
    margin: 0 0 clamp(20px, calc(var(--global--modulo-30-60) - 15px), 45px);
}

h4 {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-17-21);
    font-weight: 400;
    line-height: 1.4em;
    color: var(--global--color-white);
    margin: 0 0 20px;
    padding: 0;
    letter-spacing: 2px;
}

h5 {
    font-family: var(--global--font-primary);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2em;
    color: var(--global--color-primary);
    margin: 0;
    padding: 0;
    letter-spacing: normal;
} 

h6 {
    font-family: var(--global--font-secondary);
    font-size: 18px;
    font-weight: 900;
    line-height: 1.4em;
    color: var(--global--color-super-light-green);
    margin: 0 0 15px;
    padding: 0;
} 

p {
    font-family: var(--global--font-secondary);
    font-size: 15px;
    font-weight: 300;
    color: var(--global--color-white);
    line-height: 1.4em;
    margin: 0 0 15px;
    padding: 0;
    letter-spacing: 1px;
}

/* p strong {
    font-weight: 600;
} */

section ul:not([class*="splide"]):not([class*="slick-dots"]), section ol:not([class*="splide"]):not([class*="slick-dots"]) {
    list-style: none;
    padding: 0;
    margin: 0 0 25px;
}

section ul:not([class*="splide"]):not([class*="slick-dots"]) li, section ol:not([class*="splide"]):not([class*="slick-dots"]) li {
    font-family: var(--global--font-secondary);
    font-size: 16px;
    font-weight: 400;
    color: var(--global--color-dark-gray);
    line-height: 1.2em;
    margin: 0 0 10px;
    padding: 0;
}

section ul:not([class*="splide"]):not([class*="slick-dots"]) li::before, section ol:not([class*="splide"]):not([class*="slick-dots"]) li::before {
    content: '•';
    font-size: 0.9em;
    margin: 0 3px 0 0;
    top: -1px;
    position: relative;
}

small {
    font-size: 11px;
}

a {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
    color: var(--global--color-light-gray);
}

a:hover {
    color: var(--global--color-hover);
}

a:focus {
    background-color: transparent !important;
}

.site-main section {
    margin: var(--global--section-margin);
    padding: 0;
}

.container {
    max-width: var(--responsive--intmargin-width);
    padding: var(--global--container-padding);
    margin: 0 auto;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.flex {
	display: flex;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-item-1 {
	flex: 1;
}

.justify {
    justify-content: space-between;
}

.distribute {
    justify-content: space-around;
}

.column {
    flex-direction: column;
}

.h-center {
    justify-content: center;
}

.v-center {
    align-items: center;
}

.stretch {
    align-self: stretch;
}

.grid {
    display: -ms-grid;
    display: grid;
}

.hide {
    display: none;
}


[data-aos="desvend_E-D"] {
	opacity: 0;
	clip-path: inset(0 100% 0 0);
}
[data-aos="desvend_E-D"].aos-animate {
	opacity: 1;
	clip-path: inset(0);
        -webkit-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -moz-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -ms-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -o-transition: clip-path 1s ease-out, opacity 1s ease-out;
	transition: clip-path 1s ease-out, opacity 1s ease-out;
}

[data-aos="desvend_D-E"] {
	opacity: 0;
	clip-path: inset(0 0 0 100%);
}
[data-aos="desvend_D-E"].aos-animate {
	opacity: 1;
	clip-path: inset(0);
        -webkit-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -moz-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -ms-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -o-transition: clip-path 1s ease-out, opacity 1s ease-out;
	transition: clip-path 1s ease-out, opacity 1s ease-out;
}

[data-aos="desvend_B-T"] {
	opacity: 0;
	clip-path: inset(100% 0 0 0);
}
[data-aos="desvend_B-T"].aos-animate {
	opacity: 1;
	clip-path: inset(0);
        -webkit-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -moz-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -ms-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -o-transition: clip-path 1s ease-out, opacity 1s ease-out;
	transition: clip-path 1s ease-out, opacity 1s ease-out;
}

[data-aos="desvend_T-B"] {
	opacity: 0;
	clip-path: inset(0 0 100% 0);
}
[data-aos="desvend_T-B"].aos-animate {
	opacity: 1;
	clip-path: inset(0);
        -webkit-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -moz-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -ms-transition: clip-path 1s ease-out, opacity 1s ease-out;
        -o-transition: clip-path 1s ease-out, opacity 1s ease-out;
	transition: clip-path 1s ease-out, opacity 1s ease-out;
}

[data-aos="fade-out"] {
    opacity: 1 !important;
    transition-property: opacity;
    &.aos-animate {
      opacity: 0 !important;
    }
}

.col-25 {
    width: 25%;
}

.col-50 {
    width: 50%;
}

.col-75 {
    width: 75%;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    font-size: 0;
}

a.cta {
    font-size: 16px;
    font-weight: 500;
    color: var(--global--color-white);
    background-color: var(--global--color-primary);
    border-radius: 8px;
    padding: 12px 18px 8px;
    letter-spacing: 1px;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
    display: inline-block;
}

a.cta:hover, a.cta:focus {
    background-color: var(--global--color-support) !important;
    color: var(--global--color-primary);
}

a.cta.invert {
    color: var(--global--color-primary);
    background-color: var(--global--color-support);
}

a.cta.invert:hover {
    color: var(--global--color-white);
    background-color: var(--global--color-primary) !important;
}


/*TAUBOT*/
#chatbot-button {
    bottom: 30px !important;
}
#chatbot-text-box {
    bottom: 102px !important;
}
#chatbot-button > div, #chatbot-button > div > svg {
    pointer-events: none;
}





/* 
 * HEADER
 * ------------------- * 
*/

#masthead {
    position: fixed;
    top: 0;
    left: 0;
    right: 0; 
    z-index: 10;
    /* background-color: var(--global--color-white);
    box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1); */
    display: flex;
    justify-content: space-between;
}
  
.custom-site-logo {
    display: inline-block;
    margin: 0;
    padding: 15px;
    transition: margin 0.3s ease-in-out, opacity 0.2s ease-in-out;
    background-color: var(--global--color-primary);
    box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
    border-radius: 0 0 20px 0;
}
.custom-site-logo a:hover {
    opacity: 0.7;
}

@media (max-width: 1024px) {
    .custom-site-logo {
        position: fixed;        
    }
} 

.custom-site-logo img {
    display: block;
    height: 30px;
    width: auto;
    transition: height 0.6s ease;
}

.site-main {
    padding-top: calc(30px + 15px + 15px); /*logo + mtop + mbot*/
}

.site-main > *:first-child {
    margin-top: 0;
}

body:not(.home).page .site-main > *:first-child {
    margin-top: clamp(45px, var(--global--modulo), 90px);
}


    @media (min-width: 768px) {
        .custom-site-logo {
            padding: 20px 20px 22px;
        }
        .custom-site-logo img {
            height: 38px;
        }
        .site-main {
            padding-top: calc(38px + 20px + 22px); /*logo + mtop + mbot*/
        }
    } 


.menu-topo {
    background-color: var(--global--color-primary);
    border-radius: 0 0 0 20px;
    box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
}

    @media (max-width: 1024px) {
        .menu-topo {
            width: 100%;
        }
    }
    @media (min-width: 1025px) {
        .menu-topo {
            padding: 20px 20px 22px 14px;
        }
    } 

.menu-toggle {
    display: none;
}

.menu-button {
    cursor: pointer;
    display: block;
    position: absolute;
    top: 13px;
    right: 15px;
    width: 28px;
    height: 20px;
    z-index: 100;
}

    @media (max-width: 1024px) {
        .menu-button {
            top: 0;
            right: 0;
            padding: 20px;
            width: 68px;
            height: 60px;
            background: var(--global--color-primary);
            border-radius: 0 0 0 20px;
            box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
        }
    } 


.menu-icon {
    display: block;
    position: relative;
    top: calc(50% - 1px);
    width: 28px;
    height: 2px;
    background: var(--global--color-white);
    transition: background 0.3s ease;
}

.menu-icon:before,
.menu-icon:after {
    content: "";
    position: absolute;
    width: 28px;
    height: 2px;
    background: var(--global--color-white);
    transition: transform 0.3s ease;
}

.menu-icon:before {
    top: -8px;
}

.menu-icon:after {
    top: 8px;
}

.menu-toggle:checked + .menu-button .menu-icon {
    background: transparent;
}

.menu-toggle:checked + .menu-button .menu-icon:before {
    transform: rotate(45deg);
    top: 0;
}

.menu-toggle:checked + .menu-button .menu-icon:after {
    transform: rotate(-45deg);
    top: 0;
}

#site-navigation {
    margin: 0 20px;
    transition: margin 1s ease;
}

.menu-toggle:checked ~ #site-navigation {
    margin: 100px 20px 30px;
    transition: margin 1s ease;
}

    @media (min-width: 1025px) {
        #site-navigation {
            margin: 0 -15px;
        }
        .menu-toggle:checked ~ #site-navigation {
            margin: 10px -15px 20px;
        }
    }

.menu-principal {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 0;
    transition: max-height 0.6s ease;
    font-size: 0; /*hack prar retirar espaços entre os <li>*/
    text-align: center;
}

.menu-toggle:checked ~ #site-navigation .menu-principal {
    max-height: 100vh;
    transition: max-height 3s ease;
}

.menu-principal > li {
    display: block;
    margin-bottom: 10px;
    padding: 5px 15px 2px;
    position: relative;
}

.menu-principal li > a {
    font-family: var(--global--font-primary);
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 2px;
    color: var(--global--color-white);
    transition: opacity 0.3s ease-in-out;
} 

    @media (min-width: 1240px) {
        .menu-principal li > a {
            font-size: 15px;
            letter-spacing: 3px;
        } 
    } 

    
.menu-principal li > a:hover {
    opacity: 0.6;
} 

#site-navigation .menu-principal li.destaque {
    border: solid 1px var(--global--color-white);
    border-radius: 8px;
    margin: 0;
    transition: background-color 0.3s ease-in-out;
}

.menu-principal li.destaque > a {
    color: var(--global--color-white);
    opacity: 1;
    /* transition: color 0.3s ease-in-out; */
}

.menu-principal li.destaque:hover, .menu-principal li.destaque:focus, .site-header a.destaque:hover, .site-header a.destaque:focus {
    background-color: var(--global--color-secondary) !important;
}

/* .menu-principal li.destaque:hover  > a, .site-header a.destaque:hover {
    color: var(--global--color-primary) !important;
} */


.menu-principal > li.current-menu-item > a {
    color: var(--global--color-hover);
}

.menu-principal li.current-menu-item ul.sub-menu li > a {
    color: var(--global--color-hover);
}

/* .menu-principal li > a:after {
    content: '';
    display: inline-block;
    width: 0;
    height: 2px;
    background-color: var(--global--color-primary);
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%);
    transition: width 0.3s ease-in-out;
} */

.menu-principal li.active > a:after {
    width: 70%;
}


.menu-principal ul.sub-menu {
    margin: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, margin 0.3s ease;
}

.menu-principal ul.sub-menu.opened {
    margin: 5px 0;
    max-height: 500px;
    transition: max-height 1s ease, margin 0.3s ease;
}

.menu-principal ul.sub-menu > li {
    display: block;
    padding: 5px 15px 0px;
}



    @media (max-width: 1024px) {
        .menu-principal {
            overflow: hidden;
        }
        .menu-principal ul.sub-menu:not(.opened) > li a {
            pointer-events: none;
        }
        #site-navigation > ul > li {
            text-align: center;
            display: table;
            margin: 8px auto !important;
        }
    }


    @media (min-width: 1025px) {
        .menu-button {
            display: none !important; 
        }

        .menu-principal {
            max-height: 300px;
        }

        .site-header > .container {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        #site-navigation {
            margin: 0;
        }

        #site-navigation > ul > li {
            display: inline-block;
            margin: 0 8px;
            padding: 4px 12px;
        }

        .menu-principal > li:not(:last-child):not(.destaque):not(.sem-barra)::after {
            content: '|';
            position: absolute;
            right: -13px;
            top: 1px;
            font-size: 16px;
            font-weight: 400;
            color: var(--global--color-white);
        }

        #site-navigation > ul > li.menu-item-has-children::after {
            content: '';
            display: inline-block;
            margin: 0 0 0 2px;
            width: 12px;
            height: 9px;
            background-image: url("data:image/svg+xml,<svg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0.999999 1.07692L6 8L11 1.07692' stroke='Silver' stroke-miterlimit='10'/></svg>");
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
        }

        #site-navigation > ul > li.menu-item-has-children.current-menu-item::after {
            background-image: url("data:image/svg+xml,<svg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0.999999 1.07692L6 8L11 1.07692' stroke='SaddleBrown' stroke-miterlimit='10'/></svg>");
        }

        #site-navigation ul.sub-menu {
            position: absolute;
            margin-top: 10px;
            padding: 8px 12px 10px;
            max-height: none;
            background-color: var(--global--color-secondary);
            opacity: 0;
            transition: opacity 0.6s ease;
        }

        #site-navigation ul.sub-menu > li {
            padding: 6px 4px 2px;
        }

        #site-navigation ul.sub-menu > li:not(:last-child) {
            border-bottom: solid 1px rgba(90,0,20,0.2);
        }

        #site-navigation ul.sub-menu > li > a {
            color: var(--global--color-primary);
        }

        #site-navigation ul.sub-menu > li > a:hover {
            color: var(--global--color-hover);
        }

        #site-navigation > ul > li.menu-item-has-children:hover ul.sub-menu {
            opacity: 1;
        }
        
    }






/* 
 * HOME
 * ------------------- * 
*/

body.home .site-main {
    padding-top: 0;
}

section#hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 0;
}

section#hero .txt {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 1;
    padding: 85px 10px 20px;
}

section#hero .txt > .wrapper > * {
    display: table;
    margin-left: auto;
    margin-right: auto;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
}

section#hero .txt > .wrapper > *:last-child {
    margin-bottom: 0 !important;
}

section#hero .txt .hero-p {
    margin-bottom: clamp(15px, calc(var(--global--modulo-30-60) - 15px), 45px);
}

section#hero .txt .hero-p  p {
    font-size: var(--global--responsive-font-size-18-22);
    font-weight: 500;
}

section#hero .txt .hero-p p:last-child {
    margin: 0;
}

    @media (max-width: 767px) { 
        section#hero .txt {
            height: 50%;
        }
        section#hero .txt > .wrapper {
            margin-bottom: 20px;
        }
    }
    @media (min-width: 768px) { 
        section#hero .txt {
            width: 55%;
            padding: 100px 20px 20px;
        }
    }

    @media (min-width: 768px) and (max-width: 1024px) {
        section#hero h1 {
            font-size: calc(var(--global--responsive-font-size-24-40) * 0.8);
        }
        section#hero h3 {
            font-size: calc(var(--global--responsive-font-size-20-26) * 0.8);
        }
        section#hero .txt .hero-p p {
            font-size: calc(var(--global--responsive-font-size-18-22) * 0.8);
        }
        section#hero h4 {
            font-size: calc(var(--global--responsive-font-size-17-21) * 0.8);
        }
    } 
    
    @media (max-width: 479px) {
        section#hero .txt {
            margin-bottom: 0;
        }
        section#hero .txt > .wrapper > * {
            line-height: 1.2em;
            margin-bottom: 15px;
        }
        section#hero h1 {
            font-size: calc(var(--global--responsive-font-size-24-40) * 0.8);
        }
        section#hero h3 {
            font-size: calc(var(--global--responsive-font-size-20-26) * 0.8);
        }
        section#hero .txt .hero-p p {
            font-size: calc(var(--global--responsive-font-size-18-22) * 0.8);
        }
        section#hero h4 {
            font-size: calc(var(--global--responsive-font-size-17-21) * 0.8);
        }
    } 


section#hero .img {
    position: relative;
    width: 100%;
    aspect-ratio: 768 / 1400;
    overflow: hidden;
}

section#hero .img picture,
section#hero .img img {
    width: 100%;
    height: 100%;
}

section#hero .img img {
    object-fit: cover;
    object-position: center bottom;
    display: block;
}


    @media (min-width: 768px) {
        section#hero .img {
            aspect-ratio: 1680 / 880;
            max-height: 880px
        }
    }


section#form-topo {
    margin-top: 0;
    margin-bottom: 0;
}

section#form-topo .h2 {
    padding: 30px 0;
    background-color: var(--global--color-secondary);
}   

section#form-topo .form {
    padding: 30px 0 clamp(30px, var(--global--modulo-30-60), 45px);
    overflow: hidden;
}

section#form-topo .h2 h2 {
    margin-bottom: 0;
}


    @media (max-width: 767px) {
        section#form-topo .form form > .flex {
            flex-direction: column;
        }
        section#form-topo .form form > .flex > div:not(.submit) {
            margin-bottom: 30px;
        }
    } 

    @media (min-width: 768px) {
        section#form-topo .form form > .flex {
            align-items: flex-end;
        }
        section#form-topo .form form > .flex > div:not(.submit) {
            padding-right: var(--global--modulo-15-30);
            max-width: 340px;
        }
    } 




/* 
 * CF7
 * ------------------- * 
*/

.wpcf7 {
    position: relative;
    font-family: var(--global--font-secondary);
}

.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .wpcf7 textarea, .wpcf7 select {
    outline: none;
    border: none;
    border-bottom: solid 1px var(--global--color-secondary);
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
    border-radius: 0;
        -webkit-background-color: transparent;
    background-color: transparent;
    font-size: 16px;
    font-weight: 400;
    color: var(--global--color-secondary); 
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    padding: 0 0 7px;
    margin: 0;
    width: 100%;
    line-height: 1.3em;
    resize: none;
}

.wpcf7 label {
    font-size: 16px;
    color: var(--global--color-secondary);
}

.wpcf7 input[type="submit"] {
    outline: none;
    border: none;
    border-radius: 8px;
        -webkit-background-color: var(--global--color-primary);
    background-color: var(--global--color-primary);
    font-family: var(--global--font-primary);
    font-size: 16px;
    font-weight: 500;
    color: var(--global--color-white);
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    padding: 12px 18px 8px;
    letter-spacing: 1px;
    margin: 0;
    line-height: 1.2em;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
    text-transform: uppercase;
    cursor: pointer;
    width: 100%;
} 

.wpcf7 input[type="submit"]:hover, .wpcf7 input[type="submit"]:focus {
    background-color: var(--global--color-secondary);
} 

.wpcf7 .submit {
    flex-grow: 1;
    max-width: 180px;
}

.form .wpcf7-spinner {
    position: absolute;
    margin: 7px;
}

.form .wpcf7 select {
    background-image: none;
    margin: 10px 0 20px;
    padding: 2px 8px;
}

.wpcf7 option {
    color: #000;
    background: #fff; 
}

.wpcf7 span[data-name="contatar"]::after {
    content: "";
    position: absolute;
    top: 15px;
    right: -20px;
    transform: rotate(-135deg);
    width: 10px;
    height: 10px;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    background-color: var(--global--color-white);
    pointer-events: none;
}


.wpcf7 input[type="radio"] {
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
    width: 12px;
    height: 12px;
    background-color: var(--global--color-white); 
    border: 1px solid var(--global--color-black);
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    position: relative;
    top: 1px;
}

.wpcf7 .wpcf7-radio span.wpcf7-list-item {
    font-size: 15px;
    font-weight: 400;
    margin: 0 10px 0 0;
    color: var(--global--color-white);
}

.wpcf7 input[type="radio"]:checked {
    background-color: var(--global--color-white); 
    border-color: var(--global--color-black);
}

.wpcf7 input[type="radio"]:checked::after {
    content: '';
    width: 6px;
    height: 6px;
    background-color: var(--global--color-black);
    position: absolute;
    top: 2px;
    left: 2px;
    border-radius: 50%;
}


.wpcf7 ::-webkit-input-placeholder {
    color: var(--global--color-secondary);
    opacity: 1;
    font-size: 16px;
    font-weight: 500;
}
.wpcf7 ::-moz-placeholder {
    color: var(--global--color-secondary);
    opacity: 1;
    font-size: 16px;
    font-weight: 500;
}
.wpcf7 ::-ms-placeholder {
    color: var(--global--color-secondary);
    opacity: 1;
    font-size: 16px;
    font-weight: 500;
}
.wpcf7 ::placeholder {
    color: var(--global--color-secondary);
    opacity: 1;
    font-size: 16px;
    font-weight: 500;
}

.form .wpcf7-not-valid-tip  {
    position: absolute;
    font-size: 0.8em;
    margin: 0;
    color: red;
}

.form .wpcf7 form .wpcf7-response-output {
    clear: both;
    margin: 30px 0 0;
    padding: 7px;
    width: 100%;
    font-size: 0.8em;
    border-radius: 5px;
    border: solid 1px red !important;
    color: red;
    text-align: center;
    line-height: 1.2em;
}


input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px var(--global--color-background) inset !important;
    box-shadow: 0 0 0 30px var(--global--color-background) inset !important;
}
input:-webkit-autofill {
    -webkit-text-fill-color: var(--global--color-primary) !important;
}




section#bairro {
    margin-top: 0;
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
}

section#bairro .box h2 {
    display: table;
    margin-left: auto;
    text-align: right;
}

    @media (max-width: 767px) {
        section#bairro .box {
            background-color: var(--global--color-primary);
            padding: 30px;
        }
    }

    @media (min-width: 768px) {
        section#bairro .box {
            display: table;
            margin: var(--global--modulo-60-90) 0 var(--global--modulo-60-90) auto;
            background-color: var(--global--color-primary);
            padding: 30px;
            border-radius: 20px 0 0 20px;
            max-width: 70vw;
        }

        section#bairro > img {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: 35% 50%;
            z-index: -1;
        }
    } 

    @media (max-width: 1540px) {
        section#bairro .box p br {
            display: none;
        }
    }



section#rentabilidade {
    background-color: var(--global--color-secondary);
    margin-top: 0;
    margin-bottom: 0;
    padding-top: var(--global--modulo-30-60);
    padding-bottom: var(--global--modulo-30-60);
    text-align: center;
}



section#galeria {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: var(--global--modulo-45-90);
    padding-bottom: var(--global--modulo-45-90);
    background-color: var(--global--color-primary);
    text-align: center;
    overflow: hidden;
}

section#galeria h2 {
    margin-bottom: clamp(25px, var(--global--modulo-30-60), 45px);
}

section#galeria .splide .splide__slide {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding-bottom: 25px;
}

section#galeria .splide .splide__slide img {
    /* aspect-ratio: 600 / 730; */
    /* max-width: 600px; */
    /* width: 100%; */
    /* object-fit: cover; */
    /* margin: 0 auto; */
    object-fit: contain;
    border-radius: 16px;
    width: auto;
    max-height: 80vh;
}

section#galeria .splide .splide__slide > span.legenda {
    font-size: 15px;
    color: var(--global--color-white);
    display: block;
    margin: 10px auto -25px;
}

section#galeria .splide .splide__slide > a {
    position: relative;
}

section#galeria .splide .splide__slide .ampliar {
    color: var(--global--color-white);
    font-family: var(--global--font-secondary);
    font-size: 11px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

section#galeria .splide .splide__slide > a:hover .ampliar {
    opacity: 1;
}

.splide__arrows {
    position: absolute;
    top: calc(50% - 20px);
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(70vw + 25px + 25px);
    /* max-width: 680px; */
    margin: 0 auto;
    pointer-events: none;
    z-index: 1;
    display: flex;
    justify-content: space-between;
}

.splide__arrows .splide__arrow {
    background-color: var(--global--color-support);
    width: 40px;
    height: 40px;
    border-radius: 30px;
    border: none;
    outline: none;
    pointer-events: all;
    cursor: pointer;
    display: flex;
    justify-content: center;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

.splide__arrows .splide__arrow svg {
    display: block;
    margin: 0;
    fill: var(--global--color-primary);
}

.splide__arrows .splide__arrow.splide__arrow--prev svg {
    transform: rotate(180deg);
}


    @media (min-width: 768px) {
        .splide__arrows {
            width: calc(70vw + 30px + 30px);
        }
    } 
    @media (min-width: 1025px) {
        .splide__arrows {
            width: calc(70vw + 30px + 30px);
        }
    } 
    @media (max-width: 1239px) {
        .splide__arrows .splide__arrow svg {
            width: 20px;
        }
    }
    @media (min-width: 1240px) {
        .splide__arrows {
            width: calc(70vw + 40px + 40px);
        }
        .splide__arrows .splide__arrow {
            width: 60px;
            height: 60px;
        }
    } 



section#galeria .cta {
    margin-top: var(--global--modulo-30-60);
}

section#galeria .cta:hover {
    background-color: var(--global--color-secondary) !important;
}





section#plantas {
    text-align: center;
}

section#plantas h2 {
    color: var(--global--color-primary);
    margin-bottom: clamp(25px, var(--global--modulo-30-60), 45px);
}

section#plantas .cta {
    margin-top: var(--global--modulo-30-60);
}

section#plantas .ampliar {
    float: right;
    font-size: 20px;
}

section#plantas .splide .splide__arrows {
    max-width: none;
    width: calc(100% + 10px + 10px);
    top: 50%;
}


    
    @media (min-width: 768px) {
        section#plantas .splide .splide__arrows {
            width: calc(100% + 20px + 20px);
        }
    } 
    @media (min-width: 1025px) {
        section#plantas .splide .splide__arrows {
            width: calc(100% + 30px + 30px);
        }
    } 
    @media (min-width: 1240px) {
        section#plantas .splide .splide__arrows {
            width: calc(100% + 40px + 40px);
        }
    } 
    @media (min-width: 1420px) {

    }  
   




section#mapa {
    padding-top: var(--global--modulo-45-90);
    overflow: hidden;
}

section#mapa h2 {
    color: var(--global--color-primary);
    margin-bottom: clamp(25px, var(--global--modulo-30-60), 45px);
}


section#mapa .container-mapa {
    position: relative;
}

section#mapa #btn-touch-wrapper {
    position: absolute;
    bottom: 60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    background-color: rgba(35, 35, 35, 0.8);
    border-radius: 8px;
    padding: 8px 14px;
    animation: left-right 3s ease;
    animation-iteration-count: infinite;
}

section#mapa #btn-touch-wrapper svg {
    width: 32px;
}

@keyframes left-right {
    0%   { transform: translateX(-50%); }
    30%   { transform: translateX(-50%); }
    40%  { transform: translateX(-70%); }
    50%  { transform: translateX(-30%); }
    60% { transform: translateX(-50%); }
    100% { transform: translateX(-50%); }
}


    @media (max-width:1023px) {
        section#mapa .container-mapa {
            height: 714px;
            width: 100vw;
            margin: 0 -15px 45px;
            overflow: hidden;
        }
        section#mapa .container-mapa .hide-scroll {
            cursor: grab;
            overflow: auto;
            padding: 0 15px;
        }
        section#mapa .container-mapa .hide-scroll::-webkit-scrollbar {
            display: none;
        }
        section#mapa .container-mapa img {
            width: auto;
            height: 714px;
            max-width: none;
        }
    }
    @media (min-width: 768px) and (max-width:1023px) {
        section#mapa .container-mapa {
            margin: 0 -30px 45px;
            width: calc(100% + 30px + 30px);
        }
    }
    @media (min-width:1024px) {
        section#mapa .container-mapa img {
            width: 100%;
            height: auto;
            margin: 0 auto;
        }
        section#mapa #btn-touch-wrapper {
            display: none;
        }
    }


section#mapa .texto {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    margin-top: var(--global--modulo-30-60);
}

section#mapa .texto .bg {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

section#mapa .texto .bg img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

section#mapa .texto p {
    font-weight: 500;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
}


    @media (max-width: 767px) {
        section#mapa .texto {
            display: table;
            margin-left: auto;
            margin-right: auto;
            padding: 20px;
        }
        section#mapa .texto .col:last-child > p:last-child {
            margin-bottom: 0;
        }
        section#mapa .texto p strong {
            letter-spacing: 2px;
        }
    } 
    @media (min-width: 768px) {
        section#mapa .texto {
            padding: 30px;
            display: flex;
            justify-content: space-between;
            gap: 15px;
        }
        section#mapa .texto p {
            font-size: 16px;
        }
        section#mapa .texto .col > p:last-child {
            margin-bottom: 0;
        }
        section#mapa .texto p strong {
            line-height: 1.8em;
            letter-spacing: 3px;
        }
    } 



section#caracteristicas {
    margin-bottom: 0;
}

section#caracteristicas .row {
    padding: var(--global--modulo-45-90) 0;
    background-color: var(--global--color-primary);
}

section#caracteristicas:has(.row:nth-child(3)) .row:nth-child(even) {
    background: var(--global--color-secondary);
}

section#caracteristicas h2 {
    margin-bottom: clamp(40px, var(--global--modulo-15-90), 60px);
}

section#caracteristicas .flex {
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    row-gap: 20px;
    /* margin-bottom: calc(var(--global--modulo-30-90) + 15px); */
}

section#caracteristicas .flex .wrapper {
    width: 150px;
}

section#caracteristicas .flex .wrapper .icone {
    width: 72px;
    height: 72px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 15px;
}

section#caracteristicas .flex .wrapper p {
    text-align: center;
    font-size: 13px;
}

    @media (min-width: 1240px) {
        section#caracteristicas .flex {
            gap: 30px;
            row-gap: 40px;
        }
        section#caracteristicas .flex .wrapper {
            width: 174px;
        }
        section#caracteristicas .flex .wrapper .icone {
            width: 92px;
            height: 92px;
            margin: 0 auto 25px;
        }
    } 






section#formulario_completo {
    margin-top: 0;
    margin-bottom: 0;
    padding: var(--global--section-padding);
    background-color: var(--global--color-secondary);
    overflow: hidden;
}

section#formulario_completo .container {
    max-width: calc(960px + 90px + 90px);
}

section#formulario_completo .wpcf7 label {
    color: var(--global--color-white);
}

section#formulario_completo .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), section#formulario_completo .wpcf7 textarea, section#formulario_completo .wpcf7 textarea, section#formulario_completo .wpcf7 select {
    border-color: var(--global--color-white);
    color: var(--global--color-white);
    margin-bottom: 15px;
}

section#formulario_completo .wpcf7 select {
    border: none;
}

section#formulario_completo .wpcf7 label[for="contatar"] {
    display: table;
    margin-top: 5px;
}

section#formulario_completo .wpcf7 span[data-name="contatar"] {
    display: table;
    position: relative;
}

span.fake-label {
    color: var(--global--color-white);
    display: block;
    padding-right: 15px;
}

section#formulario_completo .submit input:hover, section#formulario_completo .submit input:focus {
    background-color: var(--global--color-support);
}

section#formulario_completo .wpcf7 ::-webkit-input-placeholder {
    color: var(--global--color-white);
}
section#formulario_completo .wpcf7 ::-moz-placeholder {
    color: var(--global--color-white);
}
section#formulario_completo .wpcf7 ::-ms-placeholder {
    color: var(--global--color-white);
}
section#formulario_completo .wpcf7 ::placeholder {
    color: var(--global--color-white);
}

section#formulario_completo input:-webkit-autofill, section#formulario_completo input:-webkit-autofill:hover, section#formulario_completo input:-webkit-autofill:focus, section#formulario_completo input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px var(--global--color-secondary) inset !important;
    box-shadow: 0 0 0 30px var(--global--color-secondary) inset !important;
}
section#formulario_completo input:-webkit-autofill {
    -webkit-text-fill-color: var(--global--color-white) !important;
}

section#formulario_completo .wpcf7-not-valid-tip {
    font-size: 0.8em;
    margin-top: -15px;
}

section#formulario_completo .col-50:last-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

section#formulario_completo .endereco {
    color: var(--global--color-white);
    text-align: right;
    margin-bottom: var(--global--modulo-15-30);
}

section#formulario_completo h2 {
    text-align: right;
}


    @media (max-width: 767px) {
        section#formulario_completo .container > .flex {
            flex-direction: column-reverse;
        }
        section#formulario_completo .flex .col-50 {
            width: 100%;
            max-width: 420px;
            margin: 0 auto;
        }
        section#formulario_completo .endereco, section#formulario_completo h2 {
            text-align: left;
        }
        section#formulario_completo .form .wpcf7 .flex {
            flex-direction: column;
        }
        section#formulario_completo .submit {
            margin-top: 20px;
        }
        section#formulario_completo .endereco {
            font-size: 18px;
        }
    } 
    @media (min-width: 768px) {
        section#formulario_completo .form {
            padding-right: var(--global--modulo-30-60);
        }
        section#formulario_completo .submit {
            margin-left: auto;
        }
        section#formulario_completo .endereco {
            font-size: 24px;
        }
    }



section#projeto {
    margin-top: 0;
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
}

section#projeto .box h2 {
    display: table;
    margin-left: auto;
    text-align: right;
}

    @media (max-width: 767px) {
        section#projeto .box {
            background-color: var(--global--color-secondary);
            padding: 30px;
        }
    }

    @media (min-width: 768px) {
        section#projeto .box {
            display: table;
            margin: calc(var(--global--modulo-60-120) + 90px) 50% 0 auto; 
            background-color: var(--global--color-secondary);
            padding: 30px;
            border-radius: 20px 20px 0 0;
            max-width: calc(480px + 30px + 30px);
        }

        section#projeto > img {
            position: absolute;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: 35% 50%;
            z-index: -1;
        }
    } 

    @media (max-width: 1080px) and (min-width: 768px) {
        section#projeto .box {
            margin-left: 30px;
            margin-right: auto;
        }
    } 

    @media (max-width: 560px) {
        section#projeto .box p br, section#projeto .box h2 br {
            display: none;
        }
    }



section#outros_projetos {
    margin-top: 0;
    margin-bottom: 0;
    background-color: var(--global--color-primary);
    padding: var(--global--section-padding);
}

section#outros_projetos .flex {
    justify-content: center;
    gap: var(--global--modulo-30-60);
    margin-top: clamp(25px, var(--global--modulo-30-60), 45px);
    flex-wrap: wrap;
}

section#outros_projetos .flex .card .foto {
    width: 45vw;
    max-width: 420px;
    min-width: 320px;
    aspect-ratio: 420 / 540;
    border-radius: 20px 20px 0 0;
    overflow: hidden;
}

section#outros_projetos .flex .card .foto img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}

section#outros_projetos .flex .card:hover .foto img {
    transform: scale(1.1);
}

section#outros_projetos .flex .card .descricao {
    background-color: var(--global--color-support);
    text-align: center;
    border-radius: 0 0 20px 20px;
    height: var(--global--modulo-60-90);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.3s ease-in-out;
}

section#outros_projetos .flex .card:hover .descricao {
    background-color: var(--global--color-secondary);
}

section#outros_projetos .flex .card .descricao p {
    font-weight: 700;
    color: var(--global--color-primary);
    margin: 0 0 5px;
    line-height: 1.2em;
    letter-spacing: 0.5px;
    transition: color 0.3s ease-in-out;
}

section#outros_projetos .flex .card:hover .descricao p {
    color: var(--global--color-white);
}


    @media (max-width: 767px) {
        section#outros_projetos h2 br {
            display: none;
        }
    } 



/*scroll offsets*/
section#bairro, section#plantas {
    scroll-margin-top: 80px;
}
#disponibilidade {
    scroll-margin-top: 65px;
}
section#formulario_completo {
    scroll-margin-top: 40px;
}
section#form-topo {
    scroll-margin-top: 120px;
}
@media (min-width: 1025px) {
    section#bairro, section#plantas {
        scroll-margin-top: 120px;
    }
} 




/* 
 * FOOTER 
 * ------------------- * 
*/

footer#tema-footer {
    background-color: var(--global--color-secondary);
    padding-top: var(--global--modulo-30-60);
    padding-bottom: var(--global--modulo-30-60);
    text-align: center;
}

footer#tema-footer .logo {
    max-width: 160px;
    margin: 0 auto;
}

footer#tema-footer p {
    color: var(--global--color-white);
    font-size: 11px;
    margin: 0 0 15px;
}


    @media (min-width: 768px) {
        footer#tema-footer .logo {
            max-width: 240px;
        }
        footer#tema-footer p {
            margin: 0 0 25px;
        }
    } 



/* 
 * PG OBRIGADA
 * ------------------- * 
*/

body.obrigada .site-main {
    padding-top: 0;
}

section#obrigado {
    height: calc(100vh - 30px);
    margin: 0;
}

section#obrigado .box {
    max-width: 480px;
    margin: 15px 15px 30px;
    padding: 20px 15px 30px;
    background-color: var(--global--color-secondary);
    box-shadow: 0 0 20px rgba(0,0,0,0.3);
    color: var(--global--color-white);
    border-radius: 20px;
}

section#obrigado h1 {
    text-align: center;
    font-size: var(--global--responsive-font-size-20-26);
    color: var(--global--color-white);
    text-transform: uppercase;
    margin-bottom: 30px;
}

section#obrigado p {
    color: var(--global--color-white);
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 15px;
}

section#obrigado .cta {
    display: table;
    margin: 30px auto 0;
    text-align: center;
}

/* section#obrigado .cta {
    text-decoration: none;
    font-style: italic;
    font-size: 16px;
    font-weight: 700;
    color: var(--global--color-primary);
    display: table;
    margin: 25px auto 0;
    padding: 6px 18px 8px;
    background-color: var(--global--color-secondary);
    border-radius: 20px;
    transition: background-color 0.3s ease-in-out;
    text-align: center;
} */

section#obrigado .cta:hover, section#obrigado .cta:focus {
    background-color: var(--global--color-primary-hover);
}

section#obrigado .cta svg {
    height: 20px;
    width: auto;
    margin-left: 6px;
    position: relative;
    top: 4px;
}

section#obrigado > img {
    object-fit: cover;
    object-position: 15% 50%;
    height: 100%;
    min-height: 100vh;
    z-index: -1;
}


    @media (min-width: 768px) {
        section#obrigado .box {
            margin: 15px 15px 60px;
            padding: 40px;
        }
    } 



/* 
@media (min-width: 480px) {

}
@media (min-width: 768px) {

} 
@media (min-width: 1025px) {

} 
@media (min-width: 1240px) {

} 
@media (min-width: 1420px) {

}  
*/