@charset "UTF-8";
/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
  outline: none;
}

article, aside, figure, footer, header, nav, section, details, summary, img {
  display: block;
}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  box-sizing: border-box;
}

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

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%;
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: separate;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre; /* CSS2 */
  white-space: pre-wrap; /* CSS 2.1 */
  white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word; /* IE */
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

.ie7 input[type=checkbox] {
  vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font-family: "Open Sans", sans-serif;
  font: 99%;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible;
}

input[type=submit]:disabled,
input[type=button]:disabled {
  background: #CCC !important;
  opacity: 0.7 !important;
}

input[type=submit]:disabled:hover,
input[type=button]:disabled:hover {
  opacity: 0.7 !important;
}

*:focus {
  outline: none;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

a {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/*
@media (min-width: $tablet) {}
@media (min-width: $tabletPro) {}
@media (min-width: $desktop-md) {}
@media (min-width: $desktop-lg) {}
@media (min-width: $desktop-big) {}
@media (min-width: $desktop-gg) {}
*/
/*
@include transition($vast);
@include transition($mfast);
@include transition($fast);
@include transition($mdefault);
@include transition($default);
@include transition($slow);
@include transition($vslow);
*/
/*
@include border-radius();
*/
/* TRANSITIONS */
body {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  background: #f8efe2;
  color: #2d2a2b;
}

section {
  position: relative;
  width: 100%;
}

/*
font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: normal;
*/
#topo {
  height: 110svh;
  background: url(../images/background.png) no-repeat center center;
  background-size: cover;
  padding: 0 5%;
}
#topo .logo {
  position: absolute;
  top: 8svh;
  left: 5%;
  width: 90%;
  text-align: center;
}
#topo .logo h1 {
  display: inline-block;
  width: 170px;
}
#topo .txt {
  position: absolute;
  left: 5%;
  top: 28%;
  width: 90%;
  transform: translateY(-50%);
}
#topo .txt h2 {
  font-weight: 700;
  color: #037fa5;
  font-size: 20px;
  margin: 0 0 5px 0;
  text-align: center;
}
#topo .txt h3 {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  color: #2d2a2b;
  font-size: 32px;
  line-height: 36px;
  margin: 0 0 50px 0;
  text-align: center;
}
#topo .txt a {
  display: none;
  background: #ff7900;
  font-weight: 600;
  color: #FFF;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  padding: 8px 30px 10px 30px;
}
#topo .image {
  width: 70%;
  position: absolute;
  right: 15%;
  bottom: 0;
}
#topo .image .mulher {
  width: 100%;
  display: none;
  filter: drop-shadow(35px 35px 25px rgba(0, 0, 0, 0.5));
}
#topo .image .colchete {
  position: absolute;
  width: 75.5%;
  top: 42%;
  left: 11%;
  display: none;
}
#topo .image .colchete img {
  position: absolute;
  width: 9%;
  animation-name: pulse2;
  animation-iteration-count: infinite;
  animation-direction: alternate; /* Faz a animação ir e voltar suavemente */
  animation-timing-function: ease-in-out;
  animation-duration: 2s;
  filter: drop-shadow(14px 14px 7px rgba(0, 0, 0, 0.5));
}
@keyframes pulse2 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.13);
  }
}
#topo .image .colchete .left {
  left: 0;
}
#topo .image .colchete .right {
  right: 0;
}
@media (min-width: 768px) {
  #topo .logo {
    text-align: left;
  }
  #topo .txt {
    width: 60%;
    top: 25%;
  }
  #topo .txt h2, #topo .txt h3 {
    text-align: left;
  }
  #topo .image {
    width: 50%;
    right: 5%;
  }
}
@media (min-width: 1024px) {
  #topo {
    padding: 0;
  }
  #topo .logo {
    top: 6.25vw;
    left: 5.208vw;
  }
  #topo .logo h1 {
    width: 13.021vw;
  }
  #topo .txt {
    width: 48vw;
    top: 24vw;
    left: 5.208vw;
  }
  #topo .txt h2 {
    font-size: 2.344vw;
    margin: 0 0 1vw 0;
  }
  #topo .txt h3 {
    font-size: 3.385vw;
    line-height: 3.8vw;
    margin: 0 0 3vw 0;
  }
  #topo .txt h3 br {
    display: none;
  }
  #topo .txt a {
    display: inline-block;
    font-size: 1.667vw;
    padding: 1.3vw 2.5vw;
  }
  #topo .image {
    width: 27.5vw;
    right: 12.5vw;
  }
}
#sobre .box {
  position: relative;
  padding: 7%;
  width: 90%;
  left: 5%;
  top: -20svh;
  margin-bottom: -20svh;
  background: #fcfcfc;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  box-shadow: 10px 10px 56px 7px rgba(44, 23, 0, 0.3);
}
#sobre .box .txt p {
  margin: 0 0 20px 0;
  font-size: 17px;
  line-height: 25px;
  font-weight: 500;
}
#sobre .box .chamada {
  padding: 10px 0 15px 0;
}
#sobre .box .chamada p {
  font-size: 15px;
  line-height: 21px;
  margin: 0 0 20px 0;
  font-style: italic;
}
#sobre .box .chamada p:before {
  display: block;
  content: "";
  background: #008bb4;
  width: 40px;
  height: 2px;
  margin: 0 0 10px 0;
}
#sobre .video {
  display: flex;
  justify-content: center;
}
#sobre .video iframe {
  aspect-ratio: 16/9;
  width: 100% !important;
}
@media (min-width: 768px) {
  #sobre .box {
    top: -30svh;
    margin-bottom: -30svh;
  }
}
@media (min-width: 1024px) {
  #sobre .box {
    width: 88.583vw;
    left: 5.208vw;
    padding: 5.208vw;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    transform: translateY(-50%);
    top: 0;
    margin-bottom: -25svh;
  }
  #sobre .box .column {
    float: left;
    width: 50%;
  }
  #sobre .box .txt {
    padding: 0 5vw 0 0;
  }
  #sobre .box .txt p {
    font-size: 1.302vw;
    line-height: 1.9vw;
    margin: 0 0 1.7vw 0;
  }
  #sobre .box .chamada {
    padding: 1vw 10vw 0 0;
  }
  #sobre .box .chamada p {
    font-size: clamp(16px, 1.042vw, 22px);
    line-height: clamp(20px, 1.5vw, 30px);
    margin: 0 0 0 0;
  }
  #sobre .box .chamada p:before {
    margin: 0 0 1vw 0;
  }
}
#caracteristica {
  margin-top: -16vw;
  padding: 0 5.208vw;
  margin: 70px 0 0 0;
}
#caracteristica h2 {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-size: 30px;
  margin: 0 0 40px 0;
  text-align: center;
}
#caracteristica h2 b {
  color: #ff7900;
}
#caracteristica ul li {
  box-shadow: 5px 5px 33px 7px rgba(44, 23, 0, 0.2);
}
#caracteristica ul .border {
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  border: 3px solid #fcfcfc;
  padding: 10% 6% 6% 6%;
  margin: 0 0 30px 0;
}
#caracteristica ul .border h3 {
  font-family: "Barlow", sans-serif;
  text-transform: uppercase;
  position: relative;
  font-size: 22px;
  padding: 0 9px;
  width: auto;
  display: inline-block;
  font-weight: 700;
  margin: 0 0 20px 0;
}
#caracteristica ul .border h3:before, #caracteristica ul .border h3:after {
  height: 100%;
  width: 6px;
  position: absolute;
}
#caracteristica ul .border h3:before {
  content: url(../images/colchete-left.svg);
  left: 0px;
}
#caracteristica ul .border h3:after {
  content: url(../images/colchete.svg);
  right: 0;
}
#caracteristica ul .border p {
  font-size: 15px;
  line-height: 20px;
}
#caracteristica ul .bg {
  background: #037fa5;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  padding: 8% 6% 8% 6%;
  animation-name: pulse;
  animation-iteration-count: infinite;
  animation-direction: alternate; /* Faz a animação ir e voltar suavemente */
  animation-timing-function: ease-in-out;
  /* A duração será definida pelo JavaScript para ser randomizada */
  /* A duração padrão é 0.7s, o meio do intervalo (0.4s a 1s) */
  animation-duration: 1s;
}
#caracteristica ul .bg p {
  text-align: center;
  color: #FFF;
  font-weight: 500;
  line-height: 22px;
}
#caracteristica ul .bg p:nth-child(1) {
  padding: 0 10%;
  margin: 0 0 20px 0;
}
#caracteristica ul .bg p:nth-child(2) {
  font-size: 17px;
  margin: 0;
  line-height: 70px;
}
#caracteristica ul .bg p:nth-child(2) b {
  font-size: 65px;
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.05);
  }
}
@media (min-width: 1024px) {
  #caracteristica h2 {
    font-size: 3.385vw;
    padding: 0 15vw;
    margin: 0 0 3.5vw 0;
  }
  #caracteristica ul {
    display: flex;
    flex-wrap: wrap;
  }
  #caracteristica ul li {
    width: calc(33.3% - 1.734vw);
    margin-bottom: 2.604vw;
  }
  #caracteristica ul li.border {
    margin-bottom: 2.604vw;
    padding: 3.2vw 2.5vw 2.5vw 2.5vw;
    border: 5px solid #fcfcfc;
  }
  #caracteristica ul li.border h3 {
    font-size: 1.719vw;
    padding: 0 0.5vw;
  }
  #caracteristica ul li.border h3:before, #caracteristica ul li.border h3:after {
    width: 0.42vw;
    top: 0.1vw;
  }
  #caracteristica ul li.border p {
    font-size: clamp(16px, 1.042vw, 22px);
    line-height: clamp(20px, 1.5vw, 30px);
  }
  #caracteristica ul li:nth-child(2), #caracteristica ul li:nth-child(5) {
    margin-left: 2.604vw;
    margin-right: 2.604vw;
  }
  #caracteristica ul li.bg {
    padding: 2vw 2vw;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
  }
  #caracteristica ul li.bg p:nth-child(1) {
    font-size: clamp(18px, 1.302vw, 30px);
    line-height: clamp(24px, 1.9vw, 38px);
  }
  #caracteristica ul li.bg p:nth-child(2) {
    margin: 1.6vw 0;
    font-size: 1.458vw;
  }
  #caracteristica ul li.bg p:nth-child(2) b {
    font-size: 5.365vw;
  }
  #caracteristica ul li.bg p:nth-child(3) {
    font-size: clamp(18px, 1.146vw, 30px);
    line-height: clamp(24px, 1.5vw, 38px);
  }
}
#contatoDuvida {
  margin-top: 70px;
}
#contatoDuvida .box {
  position: relative;
  padding: 30px;
  width: 90%;
  left: 5%;
  background: #fcfcfc;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
#contatoDuvida .box h2, #contatoDuvida .box h3 {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
}
#contatoDuvida .box p {
  font-weight: 500;
  line-height: 22px;
}
#contatoDuvida .box .contato {
  margin: 0 0 60px 0;
}
#contatoDuvida .box .contato h2 {
  font-size: 20px;
  margin: 0 0 5px 0;
}
#contatoDuvida .box .contato h3 {
  font-size: 30px;
  margin: 0 0 20px 0;
}
#contatoDuvida .box .contato p {
  margin: 0 0 40px 0;
}
#contatoDuvida .box .contato a {
  background: #4fce5d;
  color: #FFF;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  font-size: 20px;
  font-weight: 600;
  padding: 15px 30px;
}
#contatoDuvida .box .contato a:before {
  content: url(../images/whatsapp.svg);
  height: 25px;
  width: 25px;
  display: inline-block;
  margin: 0px 15px 2px 0;
  vertical-align: middle;
}
#contatoDuvida .box .duvidas {
  margin: 0 0 10px 0;
}
#contatoDuvida .box .duvidas h2 {
  font-size: 20px;
  margin: 0 0 5px 0;
}
#contatoDuvida .box .duvidas h3 {
  font-size: 26px;
  margin: 0 0 20px 0;
}
#contatoDuvida .box .duvidas p {
  margin: 0 0 40px 0;
}
#contatoDuvida .box .duvidas a {
  background: #037fa5;
  color: #FFF;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  font-size: 18px;
  font-weight: 600;
  padding: 13px 26px;
}
@media (min-width: 1024px) {
  #contatoDuvida .box {
    width: 88.583vw;
    left: 5.208vw;
    padding: 5.208vw;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  #contatoDuvida .box .contato,
  #contatoDuvida .box .duvidas {
    width: 50%;
  }
  #contatoDuvida .box p {
    font-size: 1.302vw;
    line-height: 1.7vw;
  }
  #contatoDuvida .box .contato {
    padding: 0 9vw 0 2vw;
    margin-bottom: 0px;
  }
  #contatoDuvida .box .contato h2 {
    font-size: 1.927vw;
    margin-bottom: 0.5vw;
  }
  #contatoDuvida .box .contato h3 {
    font-size: 3.385vw;
    margin-bottom: 0.8vw;
  }
  #contatoDuvida .box .contato p {
    margin-bottom: 2vw;
  }
  #contatoDuvida .box .contato a {
    font-size: 1.667vw;
    padding: 1.3vw 2.5vw;
    display: inline-block;
  }
  #contatoDuvida .box .contato a:before {
    width: 2vw;
    height: 2vw;
    margin: 0px 1.3vw 0.3vw 0;
  }
  #contatoDuvida .box .contato a:hover {
    transform: scale(1.05);
  }
  #contatoDuvida .box .duvidas {
    padding: 0 5vw 0 5vw;
  }
  #contatoDuvida .box .duvidas h2 {
    font-size: 1.927vw;
    margin-bottom: 1vw;
  }
  #contatoDuvida .box .duvidas h3 {
    font-size: 1.823vw;
    margin-bottom: 0.5vw;
  }
  #contatoDuvida .box .duvidas p {
    margin-bottom: 1.3vw;
  }
  #contatoDuvida .box .duvidas a {
    font-size: 1.354vw;
    padding: 1.2vw 3.5vw;
    display: inline-block;
  }
  #contatoDuvida .box .duvidas a:hover {
    transform: scale(1.05);
  }
}

#faq {
  padding: 70px 5%;
}
#faq h2 {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  text-align: center;
  font-size: 30px;
  margin: 0 0 30px 0;
}
#faq ul li {
  padding: 25px 0;
  border-top: 2px solid #FFF;
  display: inline-block;
}
#faq ul li h3 {
  font-weight: 700;
  font-size: 17px;
  margin: 0 0 5px 0;
}
#faq ul li p {
  font-weight: 500;
  font-size: 15px;
  line-height: 21px;
}
@media (min-width: 1024px) {
  #faq {
    padding: 7.813vw 0 5vw 0;
  }
  #faq h2 {
    font-size: 3.385vw;
    margin: 0 0 3.385vw 0;
  }
  #faq ul {
    column-count: 2;
    column-gap: 8vw;
    padding: 0 14.063vw;
  }
  #faq ul li {
    padding: 2.083vw 0;
  }
  #faq ul li h3 {
    font-size: 1.302vw;
    margin-bottom: 0.7vw;
  }
  #faq ul li p {
    font-size: 1.042vw;
    line-height: 1.35vw;
  }
}
footer {
  background: #ff7900;
  padding: 40px 5% 40px 5%;
}
footer .logo {
  text-align: center;
  margin: 0 0 30px 0;
}
footer .logo img {
  display: inline-block;
  width: 150px;
}
footer p {
  padding: 0 5%;
  margin: 0 0 20px 0;
  text-align: center;
}
footer p a {
  font-size: 17px;
  line-height: 23px;
}
footer .contato {
  text-align: center;
}
footer .contato a {
  font-weight: 700;
}
footer a {
  color: #2d2a2b;
  font-weight: 500;
  transition: all 0.3s ease-in-out;
  /*
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1.0, 1.0);
  */
}
footer a:hover {
  color: #FFF;
}
@media (min-width: 1024px) {
  footer {
    padding: 1.458vw 14vw 1.458vw 14vw;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  footer .logo {
    float: left;
    margin-bottom: 0;
  }
  footer .logo svg {
    width: 9.635vw;
  }
  footer p {
    float: left;
    margin-bottom: 0;
  }
  footer p a {
    font-size: 0.938vw;
  }
  footer a {
    font-size: 0.938vw;
  }
  footer .contato {
    float: left;
    margin-bottom: 0;
  }
}