/*
Theme Name:  Top Service.
Description: Tema personalizado desenvolvido para e empresa Top Service. Maio/25
Author:      Fernando Grossman
Author URI:  https://www.fernandogrossman.com.br
Version:     1.0.1
*/


/* 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;
}


/* Fonts */

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

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-lightitalic-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-lightitalic-webfont.woff') format('woff');
    font-weight:300;
    font-style:italic;
    font-display:swap;
}

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

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

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

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-mediumitalic-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-mediumitalic-webfont.woff') format('woff');
    font-weight:500;
    font-style:italic;
    font-display:swap;
}

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-semibold-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-semibold-webfont.woff') format('woff');
    font-weight:600;
    font-style:normal;
    font-display:swap;
}

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-semibolditalic-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-semibolditalic-webfont.woff') format('woff');
    font-weight:600;
    font-style:italic;
    font-display:swap;
}

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

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-bolditalic-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-bolditalic-webfont.woff') format('woff');
    font-weight:700;
    font-style:italic;
    font-display:swap;
}

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-extrabold-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-extrabold-webfont.woff') format('woff');
    font-weight:800;
    font-style:normal;
    font-display:swap;
}

@font-face {
    font-family: 'Galano Grotesque';
    src: url('assets/fonts/galanogrotesque-extrabolditalic-webfont.woff2') format('woff2'),
         url('assets/fonts/galanogrotesque-extrabolditalic-webfont.woff') format('woff');
    font-weight:800;
    font-style:italic;
    font-display:swap;
}





/* GLOBAIS */

:root {
    --global--font-primary: 'Galano Grotesque', "Helvetica Neue", Helvetica, -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, sans-serif;
    --global--font-secondary: var(--global--font-primary);
    /*--global--font-primary: 'Libre Baskerville', 'Merriweather', 'Palatino Linotype', 'Book Antiqua', Georgia, 'Times New Roman', Times, serif;*/


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

    --global--color-dark-gray: #383838;
    --global--color-gray: #878787;
    --global--color-light-gray: #F5F5F5;

    --global--color-super-dark-purple:#2A1D47;
    --global--color-dark-purple:#302662;
    --global--color-gradient-purple:#4F4193;
    --global--color-purple:#5B4495;

    --global--color-gradient-cyan:#3195BA;
    --global--color-cyan:#5BC4EA;

    --global--color-yellow:#FDD145;
    --global--color-pink:#D767A4;

	--global--color-primary: var(--global--color-purple); 
	--global--color-secondary: var(--global--color-yellow); 
	--global--color-tertiary: var(--global--color-cyan); 
	--global--color-background: var(--global--color-white);

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

    --global--modulo-30-200: calc(18.0851vw - 56.808px);
    --global--modulo-30-150: calc(12.766vw - 31.277px);
    --global--modulo-30-100: calc(7.4468vw - 5.745px);

    --global--container-padding-modulo: 15px;
    --global--container-padding: 0 var(--global--container-padding-modulo);

    --global--responsive-font-size-70-38: 38px;
    --global--responsive-font-size-60-38: 38px;
    --global--responsive-font-size-60-35: 35px;
    --global--responsive-font-size-50-38: 38px;
    --global--responsive-font-size-40-35: 35px;
    --global--responsive-font-size-35-30: 30px;
    --global--responsive-font-size-30-25: 25px;
    --global--responsive-font-size-26-18: 18px;
    --global--responsive-font-size-22-20: 20px;
    --global--responsive-font-size-18-16: 16px;
    --global--responsive-font-size-16-14: 14px;

} 


    @media (min-width: 480px) {
        :root {
            --global--responsive-font-size-70-38: 44px;
            --global--responsive-font-size-60-38: 41px;
            --global--responsive-font-size-60-35: 38px;
        }
    }
    @media (min-width: 768px) {
        :root {
            --global--container-padding-modulo: 30px;

            --global--responsive-font-size-70-38: 52px;
            --global--responsive-font-size-60-38: 44px;
            --global--responsive-font-size-60-35: 42px;
            --global--responsive-font-size-50-38: 40px;
            --global--responsive-font-size-40-35: 36px;
            --global--responsive-font-size-35-30: 32px;
            --global--responsive-font-size-30-25: 26px;
            --global--responsive-font-size-26-18: 19px;
            --global--responsive-font-size-22-20: 21px;
            --global--responsive-font-size-18-16: 17px;
            --global--responsive-font-size-16-14: 15px;
        }
    } 
    @media (min-width: 1025px) {
        :root {
            --global--container-padding-modulo: 60px;

            --global--responsive-font-size-70-38: 60px;
            --global--responsive-font-size-60-38: 50px;
            --global--responsive-font-size-60-35: 48px;
            --global--responsive-font-size-50-38: 43px;
            --global--responsive-font-size-40-35: 37px;
            --global--responsive-font-size-35-30: 33px;
            --global--responsive-font-size-30-25: 27px;
            --global--responsive-font-size-26-18: 20px;
            --global--responsive-font-size-18-16: 18px;
        }
    } 
    @media (min-width: 1240px) {
        :root {
            --global--container-padding-modulo: 90px;

            --global--responsive-font-size-70-38: 66px;
            --global--responsive-font-size-60-38: 55px;
            --global--responsive-font-size-60-35: 54px;
            --global--responsive-font-size-50-38: 46px;
            --global--responsive-font-size-40-35: 38px;
            --global--responsive-font-size-35-30: 35px;
            --global--responsive-font-size-30-25: 28px;
            --global--responsive-font-size-26-18: 24px;
            --global--responsive-font-size-22-20: 22px;
            --global--responsive-font-size-16-14: 16px;
        }
    } 
    @media (min-width: 1420px) {
        :root {
            --global--responsive-font-size-70-38: 70px;
            --global--responsive-font-size-60-38: 60px;
            --global--responsive-font-size-60-35: 60px;
            --global--responsive-font-size-50-38: 50px;
            --global--responsive-font-size-40-35: 40px;
            --global--responsive-font-size-30-25: 30px;
            --global--responsive-font-size-26-18: 26px;
        }
    } 
 
    
/* html {
    scroll-behavior: smooth;
} */    



/* GLOBAIS DO TEMA */

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

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

h1, .tarja > span {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-60-35);
    font-weight: 300;
    line-height: 1.3em;
}
h1 {
    color: var(--global--color-super-dark-purple);
    position: absolute;
    padding-left: 14px;
    z-index: 1;
}
.tarja {
    position: relative;
    margin-left: -8px;
    margin-bottom: 30px;
}
.tarja > span {
    position: relative;
    top: 3px;
    left: 8px;
    /* letter-spacing: 1px; */
    letter-spacing: 1.5px;
    word-spacing: -8.5px;
    background-repeat: no-repeat;
    transition: all 1s ease-in-out;
    color: transparent;
    background-position: left;
    background-size: 0% 100%;
    background-image: linear-gradient(var(--global--color-yellow), var(--global--color-yellow));
    animation: tarja 1s ease-in 0.5s forwards;
}
@keyframes tarja {
  to {
    background-size: 100% 100%;
  }
}

h2 {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-16-14);
    font-weight: 700;
    line-height: 25px;
    color: var(--global--color-white);
    margin: 0 0 20px;
    padding: 0 10px;
    display: inline-block;
    background-color: var(--global--color-tertiary);
    letter-spacing: 1.5px;
}
@media (min-width: 1025px) {
    h2 {
        line-height: 30px;
        padding: 0 16px;
    }
}

h3 {
    font-family: var(--global--font-primary);
    font-size: var(--global--responsive-font-size-60-38);
    font-weight: 300;
    line-height: 1.3em;
    color: var(--global--color-super-dark-purple);
    margin: 0 0 30px;
}

h3 strong {
    font-weight: 500;
}

h3 span:not(.estrelas):not([style="text-decoration: underline"]):not([style="text-decoration: none"]) {
    display: block;
}

h4 {
    font-family: var(--global--font-primary);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2em;
    color: var(--global--color-primary);
    margin: 0 0 20px;
    padding: 0;
}

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: 18px;
    font-weight: 400;
    color: var(--global--color-primary);
    line-height: 1.3em;
    margin: 0 0 25px;
    padding: 0;
}

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

section ul:not([class*="splide"]):not([class*="slick-dots"]) li, section ol:not([class*="splide"]):not([class*="slick-dots"]) li, article ul:not([class*="splide"]):not([class*="slick-dots"]) li, article ol:not([class*="splide"]):not([class*="slick-dots"]) li {
    font-size: var(--global--responsive-font-size-22-20);
    font-weight: 400;
    color: var(--global--color-gray);
    line-height: 1.4em;
    margin: 0 0 20px;
    position: relative;
    padding-left: 20px; 
}

section ul:not([class*="splide"]):not([class*="slick-dots"]) li::before, section ol:not([class*="splide"]):not([class*="slick-dots"]) li::before, article ul:not([class*="splide"]):not([class*="slick-dots"]) li::before, article ol:not([class*="splide"]):not([class*="slick-dots"]) li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0.14em;
    line-height: 1;
}

small {
    font-size: 13px;
}

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

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

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

.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;
}

.cta {
    font-size: 16px;
    font-weight: 400;
    color: var(--global--color-white);
    padding: 7px 25px;
    border: solid 1px var(--global--color-cyan);
    border-radius: 20px;
    text-align: center;
    transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    display: block;
}
@media (min-width: 480px) {
    .cta {
        display: inline-block;
    }
}

.cta:hover, .cta:focus {
    color: var(--global--color-white);
    background-color: var(--global--color-cyan) !important;
}


.embed-container { 
    position: relative; 
    padding-bottom: 56.25%;
    overflow: hidden;
    max-width: 100%;
    height: auto;
} 

.embed-container iframe,
.embed-container object,
.embed-container embed { 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*splide defaults*/
.splide__arrows {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    width: 100%;
    justify-content: space-between;
    z-index: 1;
    /* pointer-events: none; */
}

.splide__arrow {
    background-color: transparent;
    border: none;
    outline: none;
    width: 30px;
    height: 30px;
    padding: 3px 6px;
    cursor: pointer;
    position: relative;
}

@media (min-width: 768px) {
    .splide__arrow {
        width: 40px;
        height: 40px;
        padding: 8px 10px;
    }
} 

.splide__arrow svg {
    fill: var(--global--color-purple);
    display: block;
    margin: 0;
    width: 18px;
    height: 24px;
    transition: fill 0.3s ease-in-out;
}

.splide__arrow svg:hover {
    fill: var(--global--color-tertiary);
}

.splide__arrow.splide__arrow--prev {
    transform: rotate(180deg);
    left: -15px;
}

.splide__arrow.splide__arrow--next {
    right: -15px;
}

.splide__arrow:disabled {
    display: none;
}




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

#masthead {
    position: fixed;
    top: 0;
    left: 0;
    right: 0; 
    z-index: 10;
    background-color: transparent;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        -ms-box-shadow: none;
        -o-box-shadow: none;
    box-shadow: none;
    transition: background-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out ;
}

#masthead.scrolled {
    background-color: var(--global--color-dark-purple);
        -webkit-box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
        -moz-box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
        -ms-box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
        -o-box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
    box-shadow: 0 2px 20px 0 rgba(0,0,0,0.1);
}
  
.custom-site-logo {
    margin: 14px 0 18px;
    transition: margin 0.3s ease;
}

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

.site-main > *:first-child {
    margin-top: 0;
    padding-top: calc(48px + 14px + 18px); /*logo + mtop + mbot*/
}

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


    @media (min-width: 1025px) {
        .custom-site-logo {
            margin: 14px 0 22px;
        }
        .custom-site-logo img {
            height: 54px;
        }
        .site-main > *:first-child {
            padding-top: calc(54px + 14px + 22px); 
        }
    } 
    @media (min-width: 1240px) {
        .custom-site-logo {
            margin: 14px 0 26px;
        }
        .custom-site-logo img {
            height: 60px;
        }
        .site-main > *:first-child {
            padding-top: calc(60px + 14px + 26px);
        }
    } 




.site-header > .container {
    position: relative;
}

.menu-toggle {
    display: none;
}

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

.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 -15px;
    transition: margin 1s ease-in-out, background-color 0.5s ease-in-out;
    background-color: transparent;
}

.menu-toggle:checked ~ #site-navigation {
    margin: 0 -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>*/
}

.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-size: 20px;
    font-weight: 500;
    letter-spacing: 0.5px;
    color: var(--global--color-white);
    transition: color 0.3s ease-in-out;
} 

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

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

.menu-principal > li.current-menu-item::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    background-color: var(--global--color-secondary);
    border-radius: 10px;
    position: absolute;
    top: 16px;
    left: 0;
}

.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;
    white-space: nowrap;
}

#site-navigation > ul > li.destaque {
    border: solid 1px var(--global--color-white);
    border-radius: 26px;
}




    @media (max-width: 1024px) {
        .menu-principal {
            overflow: hidden;
        }
        #site-navigation {
            position: absolute;
            top: -14px;
            left: 0;
            right: 0;
            z-index: -1;
            padding: 100px 30px 30px;
        }
        .menu-toggle:checked ~ #site-navigation {
            background-color: var(--global--color-super-dark-purple);
        }
        .menu-principal ul.sub-menu:not(.opened) > li a {
            pointer-events: none;
        }
        #site-navigation > ul > li.menu-item-has-children > a::after {
            content: '';
            display: inline-block;
            margin: 0;
            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='White' stroke-miterlimit='10' stroke-width='2'/></svg>");
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
            margin-left: 7px;
        }
        #site-navigation > ul > li.menu-item-has-children.current-menu-item > a::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='Gold' stroke-miterlimit='10' stroke-width='2'/></svg>");
        }
        .menu-principal ul.sub-menu li.current-menu-item > a {
            color: var(--global--color-secondary);
        }
    }


    @media (min-width: 1025px) {

        .menu-button {
            display: none; 
        }

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

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

        #site-navigation {
            margin: 0 0 0 auto;
        }

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

        .menu-principal > li.current-menu-item::after {
            top: auto;
            bottom: -4px;
            left: 50%;
            transform: translateX(-50%);
        }

        #site-navigation > ul > li.menu-item-has-children > a::after {
            content: '';
            display: inline-block;
            margin: 0;
            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='White' stroke-miterlimit='10' stroke-width='2'/></svg>");
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
            position: absolute;
            top: 50%;
            transform: translateY(calc(-50% + 2px));
            right: 4px;
        }

        #site-navigation > ul > li.menu-item-has-children.current-menu-item > a::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='Gold' stroke-miterlimit='10' stroke-width='2'/></svg>");
        }

        #site-navigation ul.sub-menu {
            position: absolute;
            margin-top: 20px;
            padding: 6px 12px;
            max-height: none;
            background-color: var(--global--color-white);
            opacity: 0;
            transition: opacity 0.6s ease;
            z-index: 20;
            box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
        }

        #site-navigation ul.sub-menu > li {
            padding: 0 0 3px;
        }

        #site-navigation ul.sub-menu > li > a {
            color: var(--global--color-primary);
            font-weight: 400;
            letter-spacing: 0;
        }

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

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

    @media (min-width: 1025px) and (max-width: 1239px){
        #site-navigation > ul > li {
            margin-top: 5px;
            padding: 8px 12px; 
        }
        .menu-principal li > a {
            font-size: 16px;
            letter-spacing: 0px;
        }
        #site-navigation > ul > li.menu-item-has-children > a::after {
            right: 0px;
        } 
    }
    @media (min-width: 1240px) {
        .menu-principal li > a {
            font-size: 17px;
        } 
    } 
    @media (min-width: 1420px) {
        .menu-principal li > a {
            font-size: 18px;
        } 
        #site-navigation > ul > li {
            padding: 8px 20px; 
        }
        #masthead .search-form {
            margin-left: 20px;
        }
    }


/*lupa*/
#masthead .custom-search-form .search-field {
    position: absolute;
    top: 45px;
    right: 0;
    width: 0;
    opacity: 0;
    padding: 0;
    border: none;
    transition: all 0.5s ease-in-out;
    background: var(--global--color-dark-purple);
    color: var(--global--color-white);
    font-size: 1rem;
    outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
}
#masthead .custom-search-form.active .search-field {
    width: 220px; 
    opacity: 1;
    padding: 4px 8px;
    border: 1px solid var(--global--color-white);
    border-radius: 20px;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
    box-shadow: inset 0 0 0 30px transparent; 
}
#masthead .custom-search-form .search-submit {
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 4px;
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    box-shadow: inset 0 0 0 30px transparent; 
}
#masthead .custom-search-form svg path {
    fill: var(--global--color-white);
}

    @media (max-width: 1024px) {
        #masthead .custom-search-form {
            position: absolute;
            top: 13px;
            right: 60px;
        }
    }
    @media (min-width: 1025px) {
        #masthead .search-form {
            position: relative;
            order: 4;
            margin-left: 12px;
        }
    }

#masthead .search-field::-webkit-input-placeholder {
    color: var(--global--color-white); 
    font-size: 14px;
    font-weight: 400;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
#masthead .search-field::-moz-placeholder {
    color: var(--global--color-white); 
    font-size: 14px;
    font-weight: 400;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
#masthead .search-field::-ms-placeholder {
    color: var(--global--color-white); 
    font-size: 14px;
    font-weight: 400;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
#masthead .search-field::placeholder {
    color: var(--global--color-white); 
    font-size: 14px;
    font-weight: 400;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
#masthead .active .search-field::-webkit-input-placeholder {
    opacity: 1;
}
#masthead .active .search-field::-moz-placeholder {
    opacity: 1;
}
#masthead .active .search-field::-ms-placeholder {
    opacity: 1;
}
#masthead .active .search-field::placeholder {
    opacity: 1;
}
#masthead input[type="search"].search-field::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}







/* 
 * NEWSLETTER
 * ------------------- * 
*/

#newsletter {
    background-color: var(--global--color-cyan);
    padding: 90px 0;
    overflow: hidden;
}

#newsletter .flex {
    align-items: end;
}

#newsletter h2 {
    background-color: var(--global--color-pink);
}

#newsletter h3 {
    font-size: var(--global--responsive-font-size-50-38);
    color: var(--global--color-primary);
    margin-bottom: 25px;
}

#newsletter p {
    color: var(--global--color-super-dark-purple);
    margin: 0;
}


/* CF7 */
#newsletter .wpcf7 {
    max-width: 430px;
    margin: 0 auto;
}
#newsletter .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .wpcf7 textarea, .wpcf7 select {
    outline: none;
    border: none;
        -webkit-background-color: transparent;
    background-color: transparent;
    font-family: var(--global--font-primary);
    font-size: 18px;
    font-weight: 400;
    color: var(--global--color-super-dark-purple); 
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    padding: 12px 24px;
    line-height: 1.4em;
    margin: 0 0 0 10px;
    width: calc(100% - 20px);
    resize: none;
    box-shadow: inset 0 0 0 30px transparent; 
    position: relative;
}

#newsletter .wpcf7 .wpcf7-form-control-wrap {
    display: block;
    margin: 0 0 20px;
}

#newsletter .wpcf7 .wpcf7-form-control-wrap::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: var(--global--color-yellow);
    position: absolute;
    z-index: 0;
    border-radius: 8px;
    transform: skewX(-10deg);
}

#newsletter .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):hover, .wpcf7 textarea:hover, .wpcf7 select:hover {
    box-shadow: inset 0 0 0 1px transparent; 
}

#newsletter .wpcf7 ::-webkit-input-placeholder {
    color: var(--global--color-super-dark-purple);  
    opacity: 1;
    font-size: 18px;
    font-weight: 400;
}
#newsletter .wpcf7 ::-moz-placeholder {
    color: var(--global--color-super-dark-purple); 
    opacity: 1;
    font-size: 18px;
    font-weight: 400;
}
#newsletter .wpcf7 ::-ms-placeholder {
    color: var(--global--color-super-dark-purple); 
    opacity: 1;
    font-size: 18px;
    font-weight: 400;
}
#newsletter .wpcf7 ::placeholder {
    color: var(--global--color-super-dark-purple); 
    opacity: 1;
    font-size: 18px;
    font-weight: 400;
}


#newsletter .wpcf7 input[type="submit"] {
    outline: none;
    border: none;
        -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: 18px;
    font-weight: 700;
    color: var(--global--color-white);
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    margin: 0;
    padding: 12px 24px;
    line-height: 1.2em;
    cursor: pointer;
    position: relative;
    width: 150px;
    height: 45px;
} 

#newsletter .wpcf7 .enviar {
    display: inline-block;
    margin: 0 0 15px;
    position: relative;
}

#newsletter .wpcf7 .enviar::before {
    content: '';
    width: 150px;
    height: 45px;
    background-color: var(--global--color-purple);
    position: absolute;
    z-index: 0;
    border-radius: 8px;
    transform: skewX(-10deg);
    transition: background-color 0.3s ease-in-out;
}

#newsletter .wpcf7 .enviar:hover::before {
    background-color: var(--global--color-pink);
} 

#newsletter .wpcf7 p {
    font-size: 11px;
}

#newsletter .wpcf7 p > a {
    text-decoration: underline;
    color: var(--global--color-super-dark-purple);
    text-wrap: nowrap;
}
#newsletter .wpcf7 p > a:hover {
    color: var(--global--color-pink);
}


@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
#newsletter .wpcf7 .wpcf7-spinner {
    animation: rotate 2s linear infinite;
    margin: 16px;
    position: absolute;
    left: calc(100% + 20px);
    display: inline-block;
}

#newsletter .wpcf7-not-valid-tip  {
    font-size: 0.75em;
    position: absolute;
    top: 40px;
}

#newsletter .wpcf7 input.wpcf7-not-valid {
    border: none !important;
    box-shadow: none !important; 
}

#newsletter .wpcf7 form .wpcf7-response-output {
    clear: both;
    margin: 15px 0 0;
    padding: 10px;
    width: 100%;
    font-size: 0.8em;
    border-radius: 5px;
    border: solid 1px var(--global--color-black) !important;
    color: var(--global--color-black);
    text-align: center;
    line-height: 1.2em;
}

#newsletter 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-yellow) inset !important;
    box-shadow: 0 0 0 30px var(--global--color-yellow) inset !important;
    background-color: transparent !important;
}
#newsletter input:-webkit-autofill {
    -webkit-text-fill-color: var(--global--color-super-dark-purple) !important;
}

#newsletter .enviar > br, #newsletter .enviar > .cf7-cf-turnstile {
    display: none;
}


    @media (max-width: 1360px) {
        #newsletter .col-50 > h3 > br, #newsletter .col-50 > div > p > br {
            display: none;
        }
    }
    @media (min-width: 768px) and (max-width: 1360px) {
        #newsletter .col-50:first-child {
            padding-right: 30px;
        }
    }
    @media (max-width: 767px) {
        #newsletter .container > .flex {
            flex-direction: column;
        }
        #newsletter .container .col-50 {
            width: 100%;
        }
        #newsletter .container .col-50:first-child {
            margin-bottom: 45px;
        }
        #newsletter p {
            text-align: center;
        }
        #newsletter .wpcf7 {
            text-align: center;
        }
    }
    @media (min-width: 768px) {
        #newsletter .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .wpcf7 textarea, .wpcf7 select {
            font-size: 20px;
            padding: 14px 32px;
        }
        #newsletter .wpcf7 ::-webkit-input-placeholder {
            font-size: 20px;
        }
        #newsletter .wpcf7 ::-moz-placeholder {
            font-size: 20px;
        }
        #newsletter .wpcf7 ::-ms-placeholder {
            font-size: 20px;
        }
        #newsletter .wpcf7 ::placeholder {
            font-size: 20x;
        }

        #newsletter .wpcf7 input[type="submit"] {
            font-size: 20px;
            padding: 14px 32px;
            width: 190px;
            height: 57px;
        } 

        #newsletter .wpcf7 .enviar::before {
            width: 190px;
            height: 57px;
        }

        #newsletter .wpcf7 p {
            font-size: 14px;
        }
    }

#estrela-nl {
    overflow: hidden;
    width: 100%;
    height: clamp(201px, calc(21.28vw + 98.86px), 401px);
    position: absolute;
    z-index: 1;
    transform: translateY(clamp(-316px, calc(-26.6vw + 61.66px), -66px));

}

#estrela-nl path {
    stroke: var(--global--color-yellow);
}

#estrela-nl svg {
    display: block;
    margin: 0;
    width: clamp(210px, calc(22.23vw + 103.3px), 419px);
    position: absolute;
}

    @media (max-width: 767px) {
        #estrela-nl svg {
            right: 0;
            transform: translateX(calc(100% - 168px));
        }
        #estrela-nl path {
            stroke-width: 3px;
        }   
    } 
    @media (min-width: 768px) {
        #estrela-nl path {
            stroke-width: 2px;
        }   
    } 
    @media (min-width: 768px) and (max-width: 1239px) {
        #estrela-nl svg {
            right: 0;
            transform: translateX(calc(100% - 30px));
        }
    }
    @media (min-width: 1240px) {
        #estrela-nl svg {
            left: calc(50% + 540px);
        }
    } 




/* 
 * FORMULÁRIO FOOTER
 * ------------------- * 
*/

#form-contato {
    padding-top: clamp(120px, calc(8.5106vw + 79.151px), 200px);
    background: linear-gradient(100.4deg, var(--global--color-dark-purple) 2.89%, var(--global--color-purple) 100.27%);
    padding-bottom: clamp(50px, calc(15.9574vw - 26.588px), 200px);
}

#form-contato h3 {
    color: var(--global--color-yellow);
}

#form-contato p {
    color: var(--global--color-white);
}

#form-contato .cel-1 p {
    max-width: 320px;
}

#form-contato .redes-sociais {
    display: flex;
    flex-wrap: wrap;
    margin: -5px;
    max-width: 570px;
}

#form-contato .redes-sociais a {
    display: inline-block;
    width: 32px;
    height: 32px;
    padding: 6px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5px;
}

#form-contato .redes-sociais a > img {
    max-height: 32px;
    max-width: 32px;
    transition: transform 0.2s ease-in-out;
    transform: scale(1);
}

#form-contato .redes-sociais a:hover > img {
    transform: scale(1.2);
}

#form-contato .form {
    width: 100%;
    max-width: 570px;
    margin: 0;
    padding: 35px 20px;
    background-color: var(--global--color-white);
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
}

#form-contato .form h5 {
    font-size: var(--global--responsive-font-size-35-30);
    font-weight: 400;
    text-align: center;
    margin: 0 0 15px;
}


/* CF7 */
.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .wpcf7 textarea, .wpcf7 select {
    outline: none;
    border: solid 1px rgba(0, 0, 0, 0.1);
        -webkit-background-color: transparent;
    background-color: transparent;
    font-family: var(--global--font-primary);
    font-size: 16px;
    font-weight: 400;
    color: var(--global--color-dark-gray); 
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    padding: 8px 12px;
    line-height: 1.4em;
    margin: 0 0 15px;
    width: 100%;
    resize: none;
    box-shadow: inset 0 0 0 30px var(--global--color-white); 
}

.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):hover, .wpcf7 textarea:hover, .wpcf7 select:hover {
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.3); 
}

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


.wpcf7 input[type="submit"] {
    outline: none;
    border: none;
        -webkit-border-radius: 6px;
        -moz-border-radius: 6px;
        -ms-border-radius: 6px;
        -o-border-radius: 6px;
    border-radius: 6px;
        -webkit-background-color: var(--global--color-yellow);
    background-color: var(--global--color-yellow);
    font-size: 18px;
    font-weight: 700;
    color: var(--global--color-primary);
        -webkit-appearance: none;
        -moz-appearance: none;
    appearance: none;
        -webkit-opacity: 1;
    opacity: 1;
    text-decoration: none;
    margin: 0;
    padding: 8px 16px;
    line-height: 1.4em;
    transition: background-color 0.3s ease;
    cursor: pointer;
    width: 100%;
} 

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

.wpcf7 form {
    position: relative;
}

.wpcf7 .wpcf7-spinner {
    display: block;
    animation: rotate 2s linear infinite;
    margin: 6px;
    position: absolute;
    left: calc(50% - 20px);
}

.wpcf7-not-valid-tip  {
    font-size: 0.75em;
    position: absolute;
    top: 28px;
}
.wpcf7 textarea + .wpcf7-not-valid-tip {
    top: -1px;
}

.wpcf7 input.wpcf7-not-valid, .wpcf7 textarea.wpcf7-not-valid {
    border: solid 1px rgba(255, 0, 0, 0.4) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 0, 0, 0.4) !important; 
}

.wpcf7 form .wpcf7-response-output {
    clear: both;
    margin: 20px 0 0;
    padding: 10px;
    width: 100%;
    font-size: 0.8em;
    border-radius: 6px;
    border: solid 1px var(--global--color-primary) !important;
    color: var(--global--color-primary);
    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-white) inset !important;
    box-shadow: 0 0 0 30px var(--global--color-white) inset !important;
}
input:-webkit-autofill {
    -webkit-text-fill-color: var(--global--color-dark-gray) !important;
}


    @media (max-width: 767px) {
        #form-contato h3 {
            max-width: 340px;
        }

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

    }
    @media (max-width: 1024px) {
        #form-contato .cel-1 {
            margin-bottom: 25px;
        }
        #form-contato .cel-2 {
            margin-bottom: 50px;
        }
        #form-contato .redes-sociais {
            justify-content: center;
        }
    }
    @media (min-width: 1025px) {
        #form-contato .grid {
            grid-template-columns: repeat(2, 1fr);
        }
        #form-contato .cel-1 {
            grid-column: 1;
            grid-row: 1;
            padding-right: var(--global--container-padding-modulo);
        }
        #form-contato .cel-2 {
            grid-column: 2;
        }
        #form-contato .cel-3 {
            grid-column: 1;
            grid-row: 2;
        }

        #form-contato .form {
            padding: 35px 20px;
        }
    } 





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


#site-footer {
    padding-top: 60px;
    background-color: var(--global--color-dark-purple);
    padding-bottom: 30px;
}

#site-footer .main-footer {
    margin-bottom: 45px;
}

#site-footer .main-footer .col:not(.selos) {
    max-width: 330px;
}

#site-footer .main-footer p, #site-footer .main-footer a {
    font-size: 16px;
    margin: 0;
}

#site-footer p, #site-footer a {
    color: var(--global--color-white);
}

#site-footer a {
    text-decoration: none;
    margin: 0;
}

#site-footer a:hover {
    color: var(--global--color-tertiary);
}

#site-footer .main-footer p strong {
    color: var(--global--color-yellow);
}

#site-footer .main-footer .selos {
    margin-left: auto;
    /* flex-shrink: 0; */
    flex-wrap: wrap;
    min-width: 170px;
    justify-content: center;
}

#site-footer .main-footer .selos a {
    display: inline-block;
    margin: 0 0 15px 15px;
}

#site-footer .main-footer .selos a:first-child {
    margin-left: 0;
}

#site-footer .main-footer .selos a img {
    transition: transform 0.3s ease-in-out;
    transform: scale(1);
}

#site-footer .main-footer .selos a:hover img {
    transform: scale(1.1);
}

#site-footer hr {
    border: solid 1px var(--global--color-purple);
}

#site-footer .sub-footer {
    margin-top: 45px;
}

#site-footer .creditos p, #site-footer .creditos a {
    font-size: 11px;
    margin: 0 0 10px;
}

#site-footer .politicas p, #site-footer .politicas a {
    font-size: 14px;
    margin: 0;
}


    @media (max-width: 767px) {
        #site-footer .main-footer, #site-footer .sub-footer {
            flex-direction: column;
        }
        #site-footer .main-footer .col:not(.selos), #site-footer .creditos {
            margin-bottom: 40px;
        }
        #site-footer .main-footer .selos {
            margin-right: auto;
        }
        #site-footer .creditos {
            margin-bottom: 20px;
        }
        #site-footer .sub-footer {
            text-align: center;
        }
    } 
    @media (min-width: 768px) {
        #site-footer .main-footer .col:not(.selos) {
            margin-right: 30px;
        }
        #site-footer .creditos p, #site-footer .creditos a {
            font-size: 12px;
        }
    } 
    @media (max-width: 479px) {
        #site-footer .creditos p, #site-footer .creditos a {
            letter-spacing: -0.2px;
        }
    }


div[id*="estrela-"] {
    pointer-events: none;
}


    

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

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

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

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

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

}  
*/