:root {
  --_font---main: Manrope, sans-serif;
  --preto: black;
  --_size---s1: 100px;
  --_size---s2: 64px;
  --branco: white;
  --_size---s3: 40px;
  --_size---s4: 32px;
  --_size---s5: 22px;
  --_size---s6: 14px;
  --_size---p: 18px;
  --_btn---pd-top-bot: 18px;
  --_btn---pd-letf-right: 32px;
  --principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>: #61abe0;
  --_font---span: "Playfair Display", sans-serif;
  --_size---btn: 18px;
  --_space---xs: 16px;
  --_space---m: 32px;
  --social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>: #f2c740;
  --_space---xxs: 8px;
  --_space---xxl: 160px;
  --_space---xl: 80px;
  --_br---l: 18px;
  --_space---l: 48px;
  --preto-40: #999;
  --preto-80: #333;
  --preto-60: #666;
  --cinza: #ececec;
  --_space---s: 24px;
  --preto-00: #f2f2f2;
  --preto-20: #ccc;
  --_br---m: 12px;
  --_br---s: 6px;
  --_font-line-height---s6: 12px;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

@media screen and (max-width: 1025px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

body {
  color: #333;
  --_space---xs: 14px;
  --_space---m: 28px;
  --_space---xxs: 8px;
  --_space---xxl: 140px;
  --_space---xl: 64px;
  --_space---l: 40px;
  --_space---s: 22px;
  --_size---s1: 72px;
  --_size---s2: 52px;
  --_size---s3: 32px;
  --_size---s4: 24px;
  --_size---s5: 20px;
  --_size---s6: 14px;
  --_size---p: 16px;
  --_size---btn: 16px;
  --_br---l: 16px;
  --_br---m: 10px;
  --_br---s: 4px;
  --_font-line-height---s6: 12px;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

.s1 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s1);
  text-transform: none;
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 200;
  line-height: 120%;
}

.s1.text-white.intro-01-div-top-title, .s1.text-white.intro-02-div-top-title, .s1.text-white.intro-03-div-top-title, .s1.text-white.intro-04-div-top-title {
  text-align: center;
}

.s1 strong {
  font-family: var(--_font---span);
  font-style: italic;
  font-weight: 400;
}

.s2 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s2);
  text-transform: none;
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 200;
  line-height: 120%;
}

.s2 strong {
  font-family: var(--_font---span);
  font-style: italic;
  font-weight: 400;
}

.s2.cta-03-div-top-s2, .s2.cta-04-div-top-s2 {
  width: 50%;
}

.s2.cta-04-div-top-s2.text-white {
  text-align: center;
  width: 80%;
}

.s2.cta-05-div-top-s2 {
  width: 50%;
}

.s2.card-01-title, .s2.card-02-title {
  text-align: center;
  width: 500px;
}

.s2.card-04-title {
  text-align: left;
  width: 50%;
}

.s2.form-06-title {
  text-align: center;
  width: 700px;
}

.s2.reviews-01-title {
  text-align: left;
  width: 50%;
}

.s2.reviews-02-title, .s2.counter-01-title, .s2.counter-02-title, .s2.counter-03-title, .s2.counter-04-title, .s2.card-img-01-title {
  text-align: center;
  width: 500px;
}

.s2.card-img-02-title {
  text-align: left;
  width: 50%;
}

.s2.card-img-03-title {
  text-align: center;
  width: 500px;
}

.s2.card-img-04-title {
  text-align: left;
  width: 50%;
}

.s2.white {
  color: var(--branco);
}

.s2.newsletter-05-div-top-s2, .s2.newsletter-06-div-top-s2 {
  width: 50%;
}

.s3 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s3);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 200;
  line-height: 140%;
}

.s3.white {
  color: var(--branco);
}

.s4 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s4);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 300;
  line-height: 150%;
}

.s5 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s5);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 300;
  line-height: 150%;
}

.s6 {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---s6);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 300;
  line-height: 150%;
}

.p {
  font-family: var(--_font---main);
  color: var(--preto);
  font-size: var(--_size---p);
  margin-bottom: 0;
  font-weight: 300;
  line-height: 160%;
}

.p.white {
  color: var(--branco);
}

.uyioo {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-family: var(--_font---span);
  color: var(--branco);
  font-size: var(--_size---btn);
  text-transform: none;
  white-space: nowrap;
  word-break: normal;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  border-radius: 10000px;
  font-weight: 500;
  line-height: 100%;
  transition: all .2s;
}

.uyioo:hover {
  border-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  background-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
}

.section {
  display: block;
}

.container {
  width: calc(100vw - 120px);
  max-width: 1300px;
}

.body-style-guide {
  font-size: var(--_space---xxs);
  --_space---xs: 14px;
  --_space---m: 28px;
  --_space---xxs: 8px;
  --_space---xxl: 140px;
  --_space---xl: 64px;
  --_space---l: 40px;
  --_space---s: 22px;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #c4a9a9;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.hero-01-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.hero-01-div-left {
  width: 50%;
}

.hero-01-div-right {
  width: 50%;
  padding-left: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.hero-01-sec {
  position: relative;
}

.hero-01-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0%;
}

.hero-01-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.hero-01-div-btns {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.gfhghjj {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  background-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  font-family: var(--_font---span);
  color: var(--branco);
  font-size: var(--_size---btn);
  text-transform: none;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  border-radius: 10000px;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

.gfhghjj:hover {
  border: 1px solid var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  -webkit-text-stroke-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  background-color: #ff2e4700;
}

.cont {
  justify-content: center;
  align-items: center;
  width: calc(100vw - 120px);
  max-width: 1300px;
  display: flex;
}

.hero-02-sec {
  position: relative;
}

.hero-02-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0%;
}

.hero-02-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.hero-02-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.hero-02-div-right {
  width: 50%;
}

.hero-02-div-left {
  width: 50%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.hero-02-div-btns {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.hero-03-sec {
  background-image: linear-gradient(#000000bf, #000000bf), url('../uploads/img.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  position: relative;
}

.hero-03-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.hero-03-div-left {
  width: 100%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.hero-03-div-btns {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.text-center {
  text-align: center;
}

.text-white {
  color: var(--branco);
}

.hgkghkhjk {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-family: var(--_font---span);
  color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-size: var(--_size---btn);
  text-transform: none;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 10000px;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

.hgkghkhjk:hover {
  border: 1px solid var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  background-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  color: var(--branco);
  -webkit-text-stroke-color: var(--branco);
}

.uyouyiuio {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid var(--branco);
  background-color: var(--branco);
  font-family: var(--_font---span);
  color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-size: var(--_size---btn);
  text-transform: none;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  border-radius: 10000px;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

.uyouyiuio:hover {
  border-color: var(--branco);
  color: var(--branco);
  background-color: #fff0;
}

.teste {
  background-color: #e0e0e0;
}

.hjkyio {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid var(--branco);
  font-family: var(--_font---span);
  color: var(--branco);
  font-size: var(--_size---btn);
  text-transform: none;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 10000px;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

.hjkyio:hover {
  border: 1px solid var(--branco);
  background-color: var(--branco);
  color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  -webkit-text-stroke-color: var(--branco);
}

.text-02-sec {
  position: relative;
}

.text-02-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0%;
}

.text-02-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.text-02-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.text-02-div-left {
  width: 50%;
}

.text-02-div-right {
  width: 50%;
  padding-left: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.text-04-sec {
  position: relative;
}

.text-04-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0%;
}

.text-04-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.text-04-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.text-04-div-left {
  width: 50%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.text-04-div-right {
  width: 50%;
}

.text-01-sec {
  position: relative;
}

.text-01-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.text-01-cont.cont {
  justify-content: center;
  align-items: stretch;
}

.text-01-div-left {
  aspect-ratio: auto;
  object-fit: fill;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
}

.text-01-sec-img {
  border-radius: var(--_br---l);
}

.text-01-div-right {
  width: 50%;
  padding-left: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.text-03-sec {
  position: relative;
}

.text-03-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.text-03-div-left {
  width: 50%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.text-03-div-right {
  width: 50%;
}

.text-03-sec-img {
  border-radius: var(--_br---l);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.text-05-sec {
  position: relative;
}

.hero-03-cont-copy {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.text-05-div-left {
  width: 100%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.cta-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-01-div-left {
  aspect-ratio: auto;
  border-top-left-radius: var(--_br---l);
  border-bottom-left-radius: var(--_br---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.cta-01-div-right {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.cta-01-cont.cont {
  border-radius: var(--_br---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  border-radius: var(--_br---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  background-color: #0059ff;
  border-radius: 40px;
  justify-content: center;
  align-items: stretch;
  position: relative;
}

.a-menu {
  border: 1px none var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---btn);
  text-transform: none;
  text-decoration: none;
  -webkit-text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 10000px;
  padding: 12px 18px;
  font-weight: 300;
  line-height: 100%;
  transition: all .2s;
}

.a-menu:hover {
  border: 1px none var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  background-color: var(--preto-80);
  color: var(--branco);
  -webkit-text-stroke-color: var(--branco);
}

.a-menu.w--current {
  background-color: var(--branco);
  color: var(--preto);
}

.a-menu.desq {
  border-style: solid;
  border-color: var(--branco);
  background-color: var(--branco);
  color: var(--preto);
}

.a-menu.desq:hover {
  color: var(--branco);
  background-color: #fff0;
}

.a-menu.desq.w {
  border-color: var(--preto);
  background-color: var(--preto);
  color: var(--branco);
}

.a-menu.desq.w:hover {
  color: var(--preto);
  background-color: #0000;
}

.a-menu.w {
  color: var(--preto-60);
}

.a-menu.w:hover {
  background-color: var(--cinza);
  color: var(--preto-80);
}

.a-menu.w.w--current {
  background-color: var(--preto);
  color: var(--branco);
}

.btn-lang {
  aspect-ratio: auto;
  border: 1px solid var(--preto-40);
  width: 40px;
  height: 40px;
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---btn);
  text-transform: none;
  object-fit: fill;
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 10000px;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-weight: 300;
  line-height: 100%;
  transition: all .2s;
  display: flex;
}

.btn-lang:hover {
  border: 1px solid var(--branco);
  color: var(--branco);
  -webkit-text-stroke-color: var(--branco);
}

.btn-lang.w:hover {
  border-color: var(--preto-80);
  color: var(--preto-80);
}

.header-01-nav {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  display: flex;
}

.div-block {
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.logo {
  width: 260px;
}

.header-01-cont {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.header-01-cont.cont {
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
}

.header-01, .header-02 {
  background-color: #fff0;
}

.header-02-cont {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.header-02-cont.cont {
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
}

.header-02-logo {
  width: 280px;
}

.header-02-nav-right {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  display: flex;
}

.header-02-nav-left {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.h-sec {
  background-color: #fff0;
  width: 100%;
  position: absolute;
}

.h-sec.w {
  position: static;
}

/* === HEADER is-scrolled / is-visible (lógica portada do involve) ===
   Scroll para baixo esconde (top:-120px); scroll para cima revela (is-visible).
   Header claro (home) -> fundo preto; header dark (.w, subpáginas) -> fundo branco
   para manter o contraste do conteúdo. */
header.w-nav.is-scrolled {
  position: fixed;
  left: 0;
  right: 0;
  top: -120px;
  background-color: var(--preto);
  transition: top .3s ease-in-out, background-color .3s ease-in-out;
}

header.w-nav.w.is-scrolled {
  background-color: var(--branco);
  box-shadow: 0 8px 24px #0000000d;
}

header.w-nav.is-scrolled.is-visible {
  top: 0;
}

header.w-nav.is-scrolled .h-cont.cont {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
}

.h-cont {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.h-cont.cont {
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
}

.h-div-1 {
  width: 20%;
}

.h-div-2 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #ffffff1a;
  border: 1px solid #fff3;
  border-radius: 100000px;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: 4px;
  display: flex;
}

.h-div-2.w {
  background-color: #0000000d;
  border-color: #0000001a;
}

.link-meu {
  border: 1px solid var(--branco);
  border-radius: 1000px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  display: none;
}

.link-meu.w {
  border-color: var(--preto);
  display: none;
}

.h-div-3 {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex: 0 auto;
  justify-content: flex-end;
  align-items: center;
  width: 20%;
  display: flex;
}

.cta-02-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-01-cont.cont {
  border-radius: var(--_space---l);
  max-width: 100%;
}

.cta-02-cont.cont {
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  align-items: stretch;
  max-width: 100%;
}

.cta-02-div-right {
  aspect-ratio: auto;
  border-radius: 0px var(--_space---l) var(--_space---l) 0px;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.cta-03-div-top {
  width: 100%;
  margin-bottom: var(--_space---m);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.cta-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-03-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.cta-03-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 360px;
  display: flex;
  position: relative;
}

.cta-02-div-left {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.cta-04-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-04-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.cta-04-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.cta-04-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: linear-gradient(#00000080, #00000080), url('../uploads/img.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.cta-05-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-05-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.cta-05-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: linear-gradient(#00000080, #00000080), url('../uploads/img.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.cta-05-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.cta-06-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-06-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.cta-06-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.cta-06-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.cta-07-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.cta-07-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.cta-07-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.cta-07-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.card-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-01-top {
  margin-bottom: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.card {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  border-radius: var(--_space---xs);
  background-color: var(--preto-00);
  flex-flow: column;
  display: flex;
}

.card-icon {
  width: 48px;
  height: 48px;
}

.card-info {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-02-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-02-top {
  margin-bottom: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.card-02-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.card-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-03-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-03-top {
  margin-bottom: var(--_space---m);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  padding-right: 140px;
  display: flex;
}

.card-04-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-04-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-04-top {
  margin-bottom: var(--_space---m);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  padding-right: 0;
  display: flex;
}

.card-04-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.form-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.form-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  max-width: 100%;
}

.form-01-left {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.form-01-right {
  width: 50%;
  padding-left: var(--_space---xxl);
}

.form-03-right-img {
  border-radius: var(--_space---l);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.form {
  margin-top: var(--_space---l);
}

.form-02-sec {
  position: relative;
}

.form-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.form-02-left {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.form-02-left-img {
  object-fit: cover;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.form-02-right {
  width: 50%;
  padding: var(--_space---xxl);
}

.form-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.form-03-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  max-width: 100%;
}

.form-03-right {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.form-03-left {
  width: 50%;
  padding-right: var(--_space---xxl);
}

.form-04-sec {
  position: relative;
}

.form-04-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.form-04-right {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.form-04-left {
  width: 50%;
  padding: var(--_space---xxl);
}

.form-04-right-img {
  object-fit: cover;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.form-05-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.form-05-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  justify-content: center;
  align-items: flex-start;
  max-width: 100%;
}

.form-05-left {
  width: 50%;
  padding-right: var(--_space---xxl);
}

.form-05-right {
  width: 50%;
  height: auto;
  padding: var(--_space---l);
  border-radius: var(--_space---l);
  background-color: var(--preto-00);
  position: relative;
  overflow: hidden;
}

.contact-grid {
  margin-top: var(--_space---s);
  overflow: hidden;
}

.contact-info {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  flex-flow: column;
  display: flex;
}

.image {
  width: 48px;
  height: 48px;
}

.full-link {
  z-index: 2;
  position: absolute;
  inset: 0%;
}

.contact-box {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  border-bottom: 1px solid var(--preto-40);
  display: flex;
}

.form-06-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.form-06-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: center;
  max-width: 100%;
}

.form-06-top {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.form-06-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 700px;
  display: block;
}

.contacts-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.contacts-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  max-width: 100%;
}

.contacts-01-left {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.contacts-01-right {
  width: 50%;
  padding-left: var(--_space---xxl);
}

.contacts-01-left-img {
  border-radius: var(--_space---l);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contacts-02-sec {
  position: relative;
}

.contacts-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.contacts-02-left {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.contacts-02-left-img {
  object-fit: cover;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contacts-02-right {
  width: 50%;
  padding: var(--_space---xxl);
}

.form-01-left-img {
  border-radius: var(--_space---l);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contacts-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.contacts-03-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  max-width: 100%;
}

.contacts-03-left {
  width: 50%;
  padding-right: var(--_space---xxl);
}

.contacts-03-right {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.contacts-03-right-img {
  border-radius: var(--_space---l);
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contacts-04-sec {
  position: relative;
}

.contacts-04-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.contacts-04-left {
  width: 50%;
  padding: var(--_space---xxl);
}

.contacts-04-right {
  width: 50%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.contacts-04-right-img {
  object-fit: cover;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.footer-01-sec {
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
  position: relative;
}

.footer-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: center;
  max-width: 100%;
}

.footer-01-col {
  width: 33.33%;
}

.footer-01-col.footer-col-center {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  justify-content: center;
  align-items: center;
  width: 200px;
  display: flex;
}

.footer-01-col.footer-col-left {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex: 0 auto;
  width: calc(50% - 100px);
  display: flex;
}

.footer-01-col.footer-col-right {
  width: calc(50% - 100px);
}

.footer-icon {
  width: 24px;
  height: 24px;
}

.footer-menu-horizontal {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  display: flex;
}

.footer-menu-horizontal.footer-menu-horizontal-right {
  justify-content: flex-end;
  align-items: center;
}

.footer-menu-horizontal-link, .footer-menu-horizontal-link-text.s6 {
  text-decoration: none;
}

.footer-02-sec {
  position: relative;
}

.footer-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: row;
  align-items: center;
  max-width: 100%;
}

.footer-02-cont.cont.footer-02-bot {
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
}

.footer-02-cont.cont.footer-02-top {
  padding-top: var(--_space---l);
  padding-bottom: var(--_space---l);
  background-color: var(--preto-00);
}

.footer-02-col {
  width: 33.33%;
}

.footer-02-col.footer-col-left {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex: 0 auto;
  width: calc(50% - 100px);
  display: flex;
}

.footer-02-col.footer-col-right {
  width: calc(50% - 100px);
}

.footer-02-col.footer-col-center {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: center;
  align-items: center;
  width: 200px;
  display: flex;
}

.footer-top-col {
  width: 25%;
}

.footer-logo {
  width: 180px;
  margin-bottom: var(--_space---s);
}

.footer-menu-vertical {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  display: flex;
}

.footer-menu-vertical-link, .footer-menu-vertical-link-text.s6 {
  text-decoration: none;
}

.reviews-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.reviews-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.reviews-01-top {
  margin-bottom: var(--_space---m);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  padding-right: 140px;
  display: flex;
}

.reviews-card {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  border: 1px solid var(--preto-20);
  border-radius: var(--_space---xs);
  background-color: var(--preto-00);
  flex-flow: column;
  display: flex;
}

.reviews-card-icon {
  width: 48px;
  height: 48px;
}

.reviews-card-info {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.reviews-card-text {
  margin-top: var(--_space---xs);
}

.reviews-02-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.reviews-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.reviews-02-top {
  margin-bottom: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.counter-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.counter-01-top {
  margin-bottom: var(--_space---m);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-01-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.counter-card {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  border: 1px solid var(--preto-20);
  border-radius: var(--_space---xs);
  background-color: var(--preto-00);
  flex-flow: column;
  display: flex;
}

.counter-card.no-border {
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  border-style: none;
}

.counter-card.center {
  text-align: center;
  justify-content: center;
  align-items: center;
}

.counter-card.center.no-back {
  background-color: #0000;
  border-style: none solid none none;
  border-radius: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.counter-card-icon {
  width: 32px;
  height: 32px;
}

.counter-card-info {
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.counter-card-info.center {
  text-align: center;
  justify-content: center;
  align-items: center;
}

.counter-02-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.counter-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.counter-02-top {
  margin-bottom: var(--_space---m);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-02-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  border: 1px solid var(--preto-20);
  border-radius: var(--_space---xs);
  background-color: var(--preto-00);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.counter-01-text, .counter-02-text {
  text-align: center;
  width: 700px;
}

.counter-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.counter-03-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.counter-03-top {
  margin-bottom: var(--_space---m);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-03-text {
  text-align: center;
  width: 700px;
}

.counter-03-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.counter-04-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.counter-04-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.counter-04-top {
  margin-bottom: var(--_space---m);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-04-text {
  text-align: center;
  width: 700px;
}

.counter-04-bot {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.intro-01-sec {
  position: relative;
}

.intro-01-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.intro-01-div-bot {
  aspect-ratio: auto;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: linear-gradient(#00000080, #00000080), url('../uploads/img.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  border-radius: 0;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.intro-01-div-top {
  width: 100%;
  padding: var(--_space---xxl) var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.card-img-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-img-01-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-img-01-top {
  margin-bottom: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.card-img-01-bot {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: block;
}

.card-img {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  border-top-left-radius: var(--_space---xs);
  border-top-right-radius: var(--_space---xs);
  border-bottom-left-radius: var(--_space---xs);
  border-bottom-right-radius: var(--_space---xs);
  background-color: #0000;
  flex-flow: column;
  display: flex;
  position: relative;
  overflow: hidden;
}

.card-img.absolute {
  height: 400px;
}

.card-img-img {
  border-top-left-radius: var(--_space---xs);
  border-top-right-radius: var(--_space---xs);
  object-fit: cover;
  flex: 0 auto;
  width: 100%;
  height: 200px;
}

.card-img-img.absolute {
  height: 100%;
  position: absolute;
  inset: 0%;
}

.card-img-info {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  border: 1px solid var(--preto-20);
  border-bottom-left-radius: var(--_space---xs);
  border-bottom-right-radius: var(--_space---xs);
  background-color: var(--preto-00);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.card-img-info.absolute {
  text-align: center;
  background-color: #0000;
  border-style: none;
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: auto 0% 0%;
}

.card-img-info-content {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.card-img-link {
  text-decoration: underline;
}

._69789 {
  padding: var(--_space---xxs) 0px;
  border-style: solid;
  border-width: 0 0 1px;
  border-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-family: var(--_font---span);
  color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-size: var(--_size---btn);
  text-transform: none;
  text-decoration: none;
  -webkit-text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 0;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

._69789:hover {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  -webkit-text-stroke-color: var(--branco);
}

.card-img-02-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-img-02-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-img-02-top {
  margin-bottom: var(--_space---m);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  padding-right: 140px;
  display: flex;
}

.card-img-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-img-03-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-img-03-top {
  margin-bottom: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.card-img-03-bot {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: block;
}

.yuuioui {
  padding: var(--_space---xxs) 0px;
  border-style: none none solid;
  border-width: 1px;
  border-color: var(--branco);
  font-family: var(--_font---span);
  color: var(--branco);
  font-size: var(--_size---btn);
  text-transform: none;
  text-decoration: none;
  -webkit-text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  text-decoration-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  --_btn---pd-top-bot: 16px;
  --_btn---pd-letf-right: 24px;
  background-color: #fff0;
  border-radius: 0;
  font-weight: 500;
  line-height: 16px;
  transition: all .2s;
}

.yuuioui:hover {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  -webkit-text-stroke-color: var(--branco);
}

.card-img-04-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.card-img-04-cont.cont {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.card-img-04-top {
  margin-bottom: var(--_space---m);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  padding-right: 140px;
  display: flex;
}

.newsletter-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.newsletter-01-div-left {
  aspect-ratio: auto;
  border-top-left-radius: var(--_br---l);
  border-bottom-left-radius: var(--_br---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.newsletter-01-div-right {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.newsletter-01-cont.cont {
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  align-items: stretch;
  max-width: 100%;
}

.form-newsletter {
  margin-top: var(--_space---m);
  color: var(--cinza);
}

.form-newsletter._w-50 {
  width: 50%;
  padding-left: var(--_space---xl);
}

.newsletter-02-sec {
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  position: relative;
}

.newsletter-02-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0%;
}

.newsletter-02-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.newsletter-02-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.newsletter-02-div-left {
  width: 50%;
}

.newsletter-02-div-right {
  width: 50%;
  padding-left: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.newsletter-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.newsletter-03-cont.cont {
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  align-items: stretch;
  max-width: 100%;
}

.newsletter-03-div-left {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.newsletter-03-div-right {
  aspect-ratio: auto;
  border-radius: 0px var(--_space---l) var(--_space---l) 0px;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.newsletter-04-sec {
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  position: relative;
}

.newsletter-04-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0%;
}

.newsletter-04-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.newsletter-04-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.newsletter-04-div-left {
  width: 50%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.newsletter-04-div-right {
  width: 50%;
}

.newsletter-05-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.newsletter-05-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  max-width: 100%;
}

.newsletter-05-div-bot {
  aspect-ratio: auto;
  border-radius: var(--_space---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.newsletter-05-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.newsletter-06-sec {
  position: relative;
}

.newsletter-06-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.newsletter-06-div-bot {
  aspect-ratio: auto;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  border-radius: 0;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.newsletter-06-div-top {
  width: 100%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.accordions-01-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.accordions-01-cont.cont {
  border-radius: var(--_space---l);
  background-color: var(--preto-00);
  align-items: stretch;
  max-width: 100%;
}

.accordions-01-div-left {
  aspect-ratio: auto;
  border-top-left-radius: var(--_br---l);
  border-bottom-left-radius: var(--_br---l);
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.accordions-01-div-right {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.accordion {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.accordion-dropdown {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
  background-color: #0000;
  position: relative;
}

.accordion-toggle {
  width: 100%;
  padding: var(--_space---s) 40px var(--_space---s) 0px;
  border-bottom: 1px solid var(--preto-40);
}

.accordion-toggle-icon {
  color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  font-size: 20px;
}

.accordion-dropdown-text.s5 {
  font-weight: 400;
}

.accordion-grid {
  padding-bottom: var(--_space---s);
}

.accordions-02-sec {
  background-color: var(--preto-00);
  position: relative;
}

.accordions-02-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0%;
}

.accordions-02-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.accordions-02-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.accordions-02-div-left {
  width: 50%;
}

.accordions-02-div-right {
  width: 50%;
  padding-left: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.accordions-03-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  position: relative;
}

.accordions-03-cont.cont {
  border-radius: var(--_space---l);
  background-color: var(--preto-00);
  align-items: stretch;
  max-width: 100%;
}

.accordions-03-div-left {
  width: 50%;
  padding: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.accordions-03-div-right {
  aspect-ratio: auto;
  border-radius: 0px var(--_space---l) var(--_space---l) 0px;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: url('../uploads/img.webp');
  background-position: 50%;
  background-size: cover;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.accordions-04-sec {
  background-color: var(--preto-00);
  position: relative;
}

.accordions-04-sec-img-div {
  z-index: 1;
  width: 50%;
  height: 100%;
  position: absolute;
  right: 0%;
}

.accordions-04-sec-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: static;
}

.accordions-04-cont {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  display: flex;
}

.accordions-04-div-left {
  width: 50%;
  padding-right: var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.accordions-04-div-right {
  width: 50%;
}

.intro-02-sec {
  position: relative;
}

.intro-02-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.intro-02-div-bot {
  aspect-ratio: auto;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  background-image: linear-gradient(#00000080, #00000080), url('../uploads/img.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  border-radius: 0;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.intro-02-div-top {
  width: 100%;
  padding: var(--_space---xxl) var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.intro-02-div-top.cont {
  justify-content: space-between;
  align-items: flex-start;
  padding-left: 0;
  padding-right: 0;
}

.intro-03-sec {
  position: relative;
}

.intro-03-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.intro-03-div-bot {
  aspect-ratio: auto;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  border-radius: 0;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.intro-03-div-top {
  width: 100%;
  padding: var(--_space---xxl) var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.intro-04-sec {
  position: relative;
}

.intro-04-cont.cont {
  background-color: #fff;
  border-radius: 0;
  flex-flow: column;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
}

.intro-04-div-bot {
  aspect-ratio: auto;
  background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
  object-fit: fill;
  border-radius: 0;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: relative;
}

.intro-04-div-top {
  width: 100%;
  padding: var(--_space---xxl) var(--_space---xl);
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.intro-04-div-top.cont {
  justify-content: space-between;
  align-items: flex-start;
  padding-left: 0;
  padding-right: 0;
}

.frame-268 {
  grid-row-gap: 32px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  text-decoration: none;
  display: flex;
}

.frame-269 {
  grid-column-gap: 32px;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  text-decoration: none;
  display: flex;
}

.frame-267 {
  grid-row-gap: 32px;
  background-color: #61abe01a;
  border-radius: 16px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding: 24px;
  text-decoration: none;
  display: flex;
}

.teddy-bear-1 {
  object-fit: cover;
  overflow: hidden;
}

.frame-262 {
  grid-row-gap: 8px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  text-decoration: none;
  display: flex;
}

.text {
  color: #143854;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Poppins, sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 140%;
  text-decoration: none;
}

.text-2 {
  opacity: .75;
  color: #143854;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 160%;
  text-decoration: none;
}

.text-3 {
  opacity: .75;
  color: #143854;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Poppins, sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 160%;
  text-decoration: none;
}

.a-main-white {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---btn);
  background-color: #ffffff1a;
  border: 1px solid #fff3;
  border-radius: 100000px;
  font-weight: 300;
  line-height: 100%;
}

.a-main-white:hover {
  border-color: var(--branco);
  background-color: var(--branco);
  color: var(--preto);
}

.a-main-black {
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  font-family: var(--_font---main);
  color: var(--preto-80);
  font-size: var(--_size---btn);
  background-color: #0000000d;
  border: 1px solid #0000001a;
  border-radius: 100000px;
  font-weight: 300;
  line-height: 100%;
}

.a-main-black:hover {
  border-color: var(--preto);
  background-color: var(--preto);
  color: var(--branco);
}

/* === FREEFORM — formulário de contacto (estilos portados do involve, variáveis do gamma) === */
.freeform-row {
  display: flex;
  gap: var(--_space---l) !important;
  font: inherit !important;
}

@media screen and (max-width: 767px) {
  .freeform-row {
    flex-direction: column;
    gap: 0 !important;
  }
}

.freeform-row:after {
  display: none !important;
}

.freeform-row [class*="freeform-col-"] {
  padding: var(--_space---xs) 0 !important;
  width: 100%;
}

.freeform-row [class*="freeform-col-"][data-field-container="comunicacoes_1"] {
  padding-top: 0px !important;
}

.freeform-row [class*="freeform-col-"] .freeform-input {
  border: 0 !important;
  border-bottom: 1px solid !important;
  border-radius: 0;
  border-bottom-color: var(--preto) !important;
  color: var(--preto) !important;
  opacity: .75 !important;
  font-family: var(--_font---main) !important;
  font-size: var(--_size---p) !important;
  margin-bottom: 0 !important;
  font-weight: 300 !important;
  line-height: 160% !important;
  background: transparent;
}

.freeform-row .freeform-input::placeholder {
  color: var(--preto) !important;
  opacity: .75 !important;
  font-family: var(--_font---main) !important;
  font-size: var(--_size---p) !important;
  margin-bottom: 0 !important;
  font-weight: 300 !important;
  line-height: 160% !important;
}

.freeform-row [class*="freeform-col-"] label {
  color: var(--preto) !important;
  font-size: var(--_size---p) !important;
  font-weight: 300 !important;
  font-family: var(--_font---main);
}

.freeform-row [class*="freeform-col-"] .input-group-one-line {
  margin-top: 16px;
}

.freeform-row [class*="freeform-col-"] .input-group-one-line label {
  font-size: calc(var(--_size---p) * 0.9) !important;
  color: var(--preto) !important;
}

.freeform-row .freeform-fieldtype-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .freeform-row .freeform-fieldtype-checkbox {
    gap: 3px;
  }
}

.freeform-row [class*="freeform-col-"].freeform-fieldtype-checkbox label,
.freeform-row [class*="freeform-col-"].freeform-fieldtype-checkbox label a {
  font-family: var(--_font---main) !important;
  color: var(--preto) !important;
  font-size: var(--_size---s6) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  font-weight: 300 !important;
  line-height: 150%;
}

.freeform-row [class*="freeform-col-"] .freeform-label.freeform-required:after {
  color: var(--preto) !important;
}

.freeform-fieldtype-checkbox ul.freeform-errors {
  flex: 0 0 100%;
}

.freeform-processing:before {
  display: none !important;
}

.freeform-form [data-freeform-controls] div:nth-child(2) {
  display: none;
}

[data-freeform-controls] div {
  width: 100% !important;
  gap: 0 !important;
}

[data-freeform-controls] > div button {
  width: 100%;
  padding: var(--_btn---pd-top-bot) var(--_btn---pd-letf-right);
  border: 1px solid #0000001a;
  background-color: #0000000d;
  font-family: var(--_font---main);
  color: var(--preto-80);
  font-size: var(--_size---btn);
  white-space: nowrap;
  word-break: normal;
  border-radius: 100000px;
  font-weight: 300;
  line-height: 100%;
  transition: all .2s;
  margin: 0 !important;
}

[data-freeform-controls] > div button:disabled,
[data-freeform-controls] > div button:hover {
  background: var(--preto);
  border-color: var(--preto);
  color: var(--branco);
}

.ini-1-sec {
  background-color: var(--preto);
  /* background-image: url('../uploads/ini-1-bg.svg'), linear-gradient(180deg, black, #000000bf 25%, #000000bf 60%, var(--preto)), url('../uploads/ini-2-img.png'); */
  background-position: 75% 100%, 0 0, 50%;
  background-repeat: no-repeat, repeat, no-repeat;
  background-size: 80% 80%, auto, cover;
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

/* Vídeo de fundo do hero: o geral.css dá z-index:-100, que com o fundo opaco
   do .ini-1-sec esconde o vídeo. Trazemos o vídeo para cima do fundo da secção,
   com um overlay escuro por cima para legibilidade, e o conteúdo acima. */
.ini-1-sec > video {
  z-index: 0;
}

.ini-1-sec:after {
  content: "";
  pointer-events: none;
  background-image: linear-gradient(180deg, #0000006b, #000000a6 60%, var(--preto));
  position: absolute;
  inset: 0;
  z-index: 1;
}

.ini-1-cont {
  position: relative;
  z-index: 2;
  height: 100%;
}

.ini-1-img {
  z-index: 2;
}

.ini-1-div {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.ini-1-h.s1 {
  max-width: 725px;
  font-family: var(--_font---main);
  color: var(--branco);
  text-align: center;
  font-style: normal;
  font-weight: 200;
}

.span {
  font-family: var(--_font---span);
  font-style: italic;
  font-weight: 400;
}

.ini-1-img {
  top: auto;
  left: 50%;
  right: 50%;
  bottom: var(--_space---xl);
  position: absolute;
}

.ini-2-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-color: var(--preto);
}

.ini-2-div {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.ini-2-div-top {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  grid-template-rows: auto;
  grid-template-columns: 1fr 2fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row dense;
  justify-content: space-between;
  place-items: start stretch;
  width: 100%;
  display: grid;
}

.ini-2-div-bot {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: end;
  width: 100%;
  margin-top: -64px;
  display: grid;
}

.ini-2-div-top-inner {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.ini-2-p.s2 {
  color: var(--branco);
}

.ini-2-p.p {
  color: var(--preto-60);
}

.ini-2-p.p.up {
  background-color: var(--preto);
}

.ini-2-p.p.up-w {
  background-color: var(--branco);
  color: var(--preto-60);
}

.ini-2-p.p._60 {
  color: var(--preto-60);
}

.ini-2-img {
  object-fit: cover;
  width: 100%;
  height: 300px;
}

.ini-3-sec {
  padding-bottom: var(--_space---xxl);
  background-color: var(--preto);
  overflow: hidden;
}

.ini-3-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.ini-3-div-top {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  display: flex;
}

.ni-3-div-bot {
  display: block;
}

/* Slider do portfólio (home, ni-3) — mesma lógica Flickity; 5 por vista; sem gap (cards flush) */
.slider-ni-3 .carousel-cell {
  width: 20%;
}

.slider-ni-3 .flickity-viewport {
  overflow: visible;
}

.slider-ni-3 .flickity-button {
  display: none;
}

.slider-ni-3 .carousel-cell:nth-child(odd) .card-proj-s-top img {
  border-radius: var(--_space---xxl) 0 0 0;
}

.slider-ni-3 .carousel-cell:nth-child(even) .card-proj-s-top img {
  border-radius: 0 0 0 var(--_space---xxl);
}

@media screen and (max-width: 1025px) {
  .slider-ni-3 .carousel-cell {
    width: 33.333%;
  }
}

@media screen and (max-width: 767px) {
  .slider-ni-3 .carousel-cell {
    width: 66%;
  }
}

.ini-3-h.s2 {
  max-width: 575px;
  color: var(--branco);
}

.card-proj-s {
  color: var(--branco);
  text-decoration: none;
}

.card-proj-s-top {
  padding-right: var(--_space---s);
  padding-bottom: var(--_space---s);
  padding-left: var(--_space---s);
  border-right: 1px solid var(--preto-80);
}

.card-proj-s-bot {
  padding: var(--_space---s);
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  border-top: 1px solid var(--preto-80);
  border-right: 1px solid var(--preto-80);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-proj-s-img {
  object-fit: cover;
  width: 100%;
  height: 300px;
}

.card-proj-s-loc.s6 {
  color: var(--preto-40);
}

.card-proj-s-h.s5 {
  font-family: var(--_font---span);
  color: var(--branco);
}

.ini-4-sec {
  padding-top: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--cinza), var(--branco));
}

.ini-4-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.ini-4-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  padding-top: calc(var(--_space---xxl) + 80px);
}

.ini-4-div-2 {
  position: relative;
}

.ini-4-div-3 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-bottom: 0;
  display: flex;
}

.ini-4-p.p {
  color: var(--preto-60);
}

.ini-4-img-1 {
  border-top-right-radius: var(--_space---xxl);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.ini-4-div-logos {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.image-2 {
  mix-blend-mode: multiply;
  width: 140px;
}

.ini-4-img-2 {
  border: 2px solid var(--cinza);
  border-radius: 10000px;
  width: 240px;
  height: 240px;
  position: absolute;
  inset: -40px auto auto -120px;
}

.ini-5-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xl);
}

.ini-5-cont.cont.w-container {
    width: 100%;
    max-width: 100% !important;
}

.ini-5-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.ini-5-div-top {
    width: calc(100vw - 240px);
    max-width: 1800px;
    margin: auto;
}

.ini-5-h.s2 {
  max-width: 600px;
}

.card-serv {
  padding-top: var(--_space---xl);
  padding-bottom: var(--_space---xl);
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  border-bottom: 1px solid var(--preto-20);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.card-serv-img-1 {
  pointer-events: auto;
  object-fit: cover;
  width: calc(50vw + 50%);
  max-width: none;
  height: 400px;
  position: relative;
  left: calc(50% - 50vw);
}

.card-serv-img-2 {
  border-bottom-left-radius: var(--_space---xxl);
  object-fit: cover;
  width: 100%;
  max-width: 350px;
  height: 200px;
}

.card-serv-p.p {
  color: var(--preto-60);
}

.card-serv-div-2 {
  width: 55%;
  padding-right: var(--_space---m);
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.card-serv-div-3 {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  width: 50%;
  display: flex;
  position: relative;
}

/* ============================================================
   SEC 5 — Soluções: cards empilhados (stack) no scroll
   Cada card fixa-se por baixo do header; o card seguinte sobe e
   assenta por cima do anterior (efeito de baralho). Os cards que
   ficam por baixo recebem um ligeiro overlay/escurecimento,
   controlado de forma contínua em js/custom.js.
   ============================================================ */
.ini-5-div-bot {
  --stack-top: 100px;   /* linha de fixação, abaixo do header */
  --stack-peek: 180px;   /* fatia visível de cada card anterior. Controla também
                           a distância entre cards (compensação necessária para
                           a saída limpa). Maior = fatia maior mas mais distância. */
  --stack-tail: 50vh;   /* espaço final: dá "tempo" ao último card ficar preso */
  --stack-overlay: #00000080;   /* cor máxima do overlay dos cards por baixo */
  position: relative;
}

@media screen and (min-width: 768px) {
  /* Espaço a seguir ao último card. Tem de ser CONTEÚDO (não padding):
     um elemento sticky está confinado à content box do pai, e o padding
     fica fora dela. Este ::after estende a content box, dando "tempo" ao
     último card para ficar preso por cima da pilha. */
  .ini-5-div-bot::after {
    content: "";
    display: block;
    width: 100%;
    height: var(--stack-tail);
    pointer-events: none;
  }

  .card-serv {
    position: -webkit-sticky;
    position: sticky;
    /* "Escada" via top escalonado. A compensação em padding-bottom faz com que
       o fundo renderizado de cada card coincida com o seu ponto de libertação:
       assim todos se soltam em conjunto (saída limpa, os cards ficam SEMPRE
       visíveis e sobem juntos) e a ini-6 nunca sobrepõe. Quando o top desce
       (index*peek), o padding-bottom sobe (card-rev*peek). Vêm do JS. */
    top: calc(var(--stack-top) + var(--card-index, 0) * var(--stack-peek));
    padding-bottom: calc(var(--_space---xl) + var(--card-rev, 0) * var(--stack-peek));
    /* fundo opaco para cobrir por completo o card anterior */
    background-color: var(--branco);
  }

  .card-serv:last-child {
    border-bottom: 0 !important;
  }

  .card-serv:last-child::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #fff;
  }

  /* Overlay dos cards que ficam por baixo: gradiente transparent -> #00000080.
     A opacidade (--serv-overlay) é controlada, frame a frame, em js/custom.js:
     0 = card à vista | 1 = totalmente coberto. Cobre também a imagem que
     "sangra" para a esquerda (mesma geometria da .card-serv-img-1). */
  .card-serv::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 50vw);
    right: 0;
    /* O escuro chega ao máximo à altura da "costura" (--stack-peek), que é a
       parte visível do card por baixo; abaixo disso fica escondido pelo card
       seguinte. Assim o gradiente não depende da altura total do card. */
    background-image: linear-gradient(to bottom, transparent, var(--stack-overlay) var(--stack-peek));
    opacity: var(--serv-overlay, 0);
    pointer-events: none;
    z-index: 2;
  }
}

@media screen and (min-width: 768px) and (max-width: 1025px) {
  .ini-5-div-bot {
    --stack-top: 140px;
  }
}

/* Sem empilhamento para quem prefere menos movimento: fluxo normal */
@media (prefers-reduced-motion: reduce) {
  .ini-5-div-bot::after {
    display: none;
  }

  .card-serv {
    position: static;
    /* repõe o padding-bottom original (sem a compensação da escada) */
    padding-bottom: var(--_space---xl);
  }

  .card-serv::before {
    display: none;
  }
}

.ini-6-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-color: var(--cinza);
}

.ini-6-cont.cont {
  justify-content: flex-start;
  align-items: center;
}

.ini-6-div-1 {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: 600px;
  display: flex;
}

.ini-6-h.s2 {
  max-width: 500px;
}

.column-4 {
  padding-right: 0;
  padding-left: var(--_space---s);
}

.label-form {
  font-family: var(--_font---main);
  color: #000;
  margin-bottom: 8px;
  font-size: 16px;
  font-weight: 300;
  line-height: 100%;
}

.form-block {
  width: 100%;
  margin-bottom: 0;
}

.column {
  padding-right: var(--_space---s);
  padding-left: 0;
}

.div-form {
  width: 100%;
}

.input-form {
  font-family: var(--_font---main);
  color: #000;
  background-color: #fff0;
  border: 0 solid #000;
  border-bottom: 1px solid #999;
  margin-bottom: 0;
  padding-bottom: 8px;
  padding-left: 8px;
  padding-right: 8px;
  font-size: 16px;
  font-weight: 300;
  line-height: 100%;
}

.input-form:active, .input-form:focus {
  border-bottom-color: #000;
}

.input-form.big {
  padding-top: 16px;
  padding-bottom: 48px;
}

.pp-form-link {
  color: #f6f6f6;
}

.pp-form-link:hover, .pp-form-link.blue {
  color: #fff;
}

.pp-form-link.blue:hover {
  color: #dcf263;
}

.pp-form-link.blue.black {
  color: var(--preto);
  background-image: none;
}

.form-gamma {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  flex-flow: column;
  display: flex;
}

.columns.div-form {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
  display: block;
}

.error-message {
  background-color: #ff2020;
}

.error-message.p-2 {
  color: #fff;
  text-align: center;
  background-color: #b40000;
  border-radius: 0;
  margin-top: 32px;
  padding: 16px 80px;
}

.p-2 {
  color: #666;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 300;
  line-height: 160%;
}

.p-2.form-sms {
  color: #000;
}

.p-2.erro-sms {
  color: #fff;
  font-weight: 300;
}

.checkbox {
  color: #1b2f66;
}

.success-message {
  color: #024852;
  background-color: #9bcc3f;
}

.success-message.p-2 {
  background-color: #e6e6e6;
  border-radius: 0;
  margin-top: 10px;
  padding: 16px 32px;
}

.ft-sec {
  background-color: var(--cinza);
}

.ft-div-r {
  width: 80%;
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xl);
  padding-left: var(--_space---xxl);
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  display: flex;
}

.ft-div-r.con {
  width: 100%;
  padding-top: 0;
  padding-bottom: var(--_space---xl);
  padding-left: 0;
}

.ft-div-r.con .ft-div-2 {
  display: none;
}

.ft-h.s2 {
  max-width: 600px;
}

.ft-div-1 {
  padding-bottom: var(--_space---xl);
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  border-bottom: 1px solid var(--preto-20);
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.ft-div-2 {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.ft-div-2-info {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.ft-div-2-menu {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.ft-link-grande {
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---s3);
  font-weight: 300;
  line-height: 100%;
  text-decoration: none;
}

.ft-link-grande:hover {
  color: var(--preto);
}

.ft-link-peq {
  max-width: 200px;
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---p);
  font-weight: 300;
  line-height: 140%;
  text-decoration: none;
}

.ft-link-peq:hover {
  color: var(--preto);
}

.ft-link,
.ft-link a {
  font-family: var(--_font---main);
  color: var(--preto-60);
  font-size: var(--_size---p);
  font-weight: 300;
  line-height: 100%;
  text-decoration: none;
}


.ft-link:hover,
.ft-link:hover a {
  color: var(--preto);
}

.ft-link.s6 {
  font-size: var(--_size---s6);
}

.ft-link.s6:hover {
  color: var(--preto-60);
}

.ft-link.s6.link:hover {
  color: var(--preto);
  text-decoration: underline;
}

.ft-div-3 {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.ft-div-3-pp {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.ft-3-div-sm {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.ft-project-img {
  width: 100%;
  max-width: 450px;
}

.ft-socials {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.ft-div-3-pp-inner {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.sm-div {
  opacity: .5;
}

.sm-div:hover {
  opacity: 1;
}

.sm-icon {
  width: var(--_space---m);
  height: var(--_space---m);
  opacity: 1;
}

.ft-div {
  width: 100%;
  display: flex;
}

.ft-div-l {
  width: 20%;
}

.ft-img {
  border-bottom-right-radius: var(--_space---xxl);
  object-fit: cover;
  width: calc(25vw + 50%);
  max-width: none;
  height: 500px;
  position: relative;
  left: calc(50% - 25vw);
}

.sob-1-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
}

.sob-1-div {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.sob-1-h.s1 {
  text-align: center;
  max-width: 800px;
}

.sob-2-sec {
  padding-bottom: var(--_space---xxl);
  background-color: var(--branco);
}

.sob-2-div {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.sob-2-p.s2 {
  color: var(--preto);
}

.sob-3-cont.cont {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.sob-3-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  grid-template-rows: auto;
  grid-template-columns: 1fr 2fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.sob-3-h.s2 {
  max-width: 800px;
  padding-bottom: var(--_space---xl);
}

.sb-3-div-1 {
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.sob-3-div-2 {
  padding-bottom: var(--_space---l);
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  border-bottom: 1px solid var(--preto-40);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.sob-2-p-1.p {
  color: var(--preto-60);
}

.sob-3-div-2-img {
  position: relative;
}

.sob-3-div-2-text {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.sob-3-img-2 {
  border: 2px solid var(--branco);
  border-radius: 10000px;
  width: 240px;
  height: 240px;
  position: absolute;
  inset: auto auto -20px -55px;
}

.sob-3-img-1 {
  border-top-left-radius: var(--_space---xxl);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.sob-4-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
}

.sob-4-div {
  grid-column-gap: var(--_space---xxl);
  grid-row-gap: var(--_space---xxl);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.sob-4-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.sob-4-div-2 {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.card-foun {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0;
}

.card-foun-img {
  -webkit-text-fill-color: inherit;
  object-fit: cover;
  background-clip: border-box;
  width: 400px;
  height: 400px;
}

.card-foun-text-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: end center;
  margin-top: -80px;
  display: grid;
}

.card-foun-text-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-foun-text-div-2 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.sob-4-p.p {
  color: var(--preto-60);
}

.card-foun-div-name {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.sob-4-h3.s5 {
  color: var(--preto-60);
  line-height: 100%;
}

.sob-4-h2.s4 {
  line-height: 100%;
}

.ser-1-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
}

.ser-1-div {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.ser-1-h.s1 {
  max-width: 900px;
}

.ser-2-sec {
  padding-bottom: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.ser-2-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.ser-3-sec {
  background-image: linear-gradient(180deg, var(--cinza), var(--branco));
}

.ser-3-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
  position: relative;
}

.ser-4-img {
  object-fit: cover;
  width: 100%;
  height: 400px;
}

.ser-4-img.l {
  border-top-left-radius: var(--_space---xxl);
}

.ser-4-img.r {
  border-top-right-radius: var(--_space---xxl);
}

.ser-4-img-3 {
  border-top-style: solid;
  border-top-width: 2px;
  border-top-color: var(--branco);
  border-right-style: solid;
  border-right-width: 2px;
  border-right-color: var(--branco);
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-bottom-color: var(--branco);
  border-left-style: solid;
  border-left-width: 2px;
  border-left-color: var(--branco);
  object-fit: cover;
  border-radius: 1000px;
  width: 240px;
  height: 240px;
  position: absolute;
  inset: calc(50% - 120px) 50% 0% calc(50% - 120px);
}

.ser-4-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.ser-4-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.ser-4-div-top {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.ser-4-div-bot {
  width: 100%;
}

.ser-4-h.s2 {
  max-width: 600px;
}

.acc {
  width: 100%;
}

.acc-link {
  padding: var(--_space---l) 0px;
  border-bottom: 1px solid var(--preto-40);
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.acc-cont.w--open {
  background-color: #ddd0;
}

/* === ACCORDION SERVIÇOS (.ser-4-div-bot) — lógica de altura (porta do involve) === */
.acc-cont {
  height: 0;
  overflow: hidden;
  transition: height 300ms ease;
}

.acc-icon {
  transition: transform .3s ease;
}

.acc.is-open .acc-icon {
  transform: rotate(180deg);
}

.acc-icon-div {
  background-color: #0000000d;
  border: 1px solid #0000001a;
  border-radius: 10000px;
  justify-content: center;
  align-items: center;
  min-width: 48px;
  width: 48px;
  height: 48px;
  display: flex;
}

.acc-icon {
  width: 24px;
  height: 24px;
}

.acc-link-div {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.acc-link-div.s4 {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
}

.acc-serv {
  padding-top: var(--_space---xl);
  padding-bottom: var(--_space---xl);
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  border-bottom: 1px solid var(--preto-20);
  grid-template-rows: auto;
  grid-template-columns: 1fr 2fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.acc-serv-img-1 {
  border-top-left-radius: var(--_space---xxl);
  pointer-events: auto;
  object-fit: cover;
  height: 100%;
}

.acc-serv-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.acc-ser-div-1 {
  flex-flow: row;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.acc-serv-div-2 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.acc-serv-div-info {
  padding-right: var(--_space---m);
  padding-left: var(--_space---m);
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  border-left: 1px solid var(--preto-20);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.acc-serv-info-p.s6 {
  color: var(--preto-60);
}

.card-serv-img-3 {
  border: 1px solid var(--cinza);
  object-fit: cover;
  border-radius: 10000px;
  width: 160px;
  height: 160px;
  position: absolute;
  inset: 20px -80px 0% auto;
}

.ser-5-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
}

.ser-5-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.ser-5-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.ser-5-div-2 {
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.card-proc {
  border-right: 1px solid var(--preto-20);
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  width: 25%;
  display: flex;
}

.card-proc-numb.s3 {
  padding: var(--_space---l) var(--_space---s) var(--_space---m);
  border-bottom: 1px solid var(--preto-20);
  font-family: var(--_font---span);
  color: var(--preto-40);
  font-style: italic;
  font-weight: 400;
  line-height: 100%;
}

.card-proc-h.s5 {
  padding: var(--_space---m) var(--_space---s) var(--_space---l);
}

.sec-6-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.sec-6-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.sec-6-div-1 {
  width: 100%;
  padding-right: var(--_space---xxl);
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.sec-6-div-2 {
  flex-flow: column;
  width: 100%;
  display: flex;
}

.sec-6-p.p {
  color: var(--preto-60);
}

.card-inv {
  padding-top: var(--_space---xs);
  padding-bottom: var(--_space---xs);
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  border-bottom: 1px solid var(--preto-20);
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.card-inv-1 {
  width: var(--_space---l);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.card-inv-2 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-inv-n.s2 {
  font-family: var(--_font---span);
  font-style: italic;
  font-weight: 400;
  line-height: 100%;
}

.card-inv-p.p {
  color: var(--preto-60);
}

.por-1-sec {
  padding-top: var(--_space---xxl);
}

.por-1-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.por-1-h.s1 {
  text-align: center;
  max-width: 750px;
}

.por-1-icon {
  width: var(--_space---m);
}

.por-2-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.pro-2-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.card-pro {
  background-color: var(--branco);
  width: 100%;
  height: 700px;
  display: flex;
  overflow: visible;
  box-shadow: 0 24px 48px #0000000d;
}

.card-pro-div-img {
  background-image: url('../uploads/por-5-img-2.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
  overflow: hidden;
}

/* Slider de imagens do card de projeto */
.card-pro-slider {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.card-pro-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity .4s ease;
}

.card-pro-slide.is-active {
  opacity: 1;
}

.card-pro-div-arr {
  position: relative;
  z-index: 2;
}

.card-pro-div-info {
  width: 50%;
  padding: var(--_space---xl) 120px;
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-pro-logo {
    max-width: 180px;
    max-height: 70px;
    object-fit: contain;
}

.card-pro-nome.s3 {
  font-family: var(--_font---span);
  font-weight: 400;
}

.card-pro-icon {
  height: var(--_space---xs);
}

.card-pro-loc.s6 {
  color: var(--preto-40);
}

.card-pro-desc.s5 {
  color: var(--preto-60);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

.card-pro-ind {
  background-color: #00d52e;
  border-radius: 1000px;
  width: 8px;
  height: 8px;
}

.card-pro-div-loc {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.card-pro-div-nome {
  width: 100%;
  padding-bottom: var(--_space---s);
  grid-column-gap: var(--_space---xxs);
  grid-row-gap: var(--_space---xxs);
  border-bottom: 1px solid var(--preto-20);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-pro-div-stat {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.card-pro-div-main {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.card-pro-div-arr {
  width: 100%;
  padding-right: var(--_space---l);
  padding-left: var(--_space---l);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.btn-arow {
    border: 1px solid var(--branco);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    background-color: #00000020;
    box-shadow: 0 6px 20px #00000020;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    display: flex;
}

.btn-arow:hover {
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  background-color: #00000080;
}

.btn-arow.l {
  border-top-right-radius: 18px;
  border-bottom-left-radius: 18px;
}

.btn-arow.r {
  border-top-right-radius: 10px;
  border-bottom-left-radius: 18px;
}

.btn-arrow-icon {
  width: 24px;
  height: 24px;
}

.por-3-sec {
  padding-top: var(--_space---xxl);
}

.por-3-div {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.por-3-h.s1 {
  max-width: 900px;
}

.por-5-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-color: var(--cinza);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.por-5-cont.cont {
  justify-content: flex-start;
  align-items: center;
}

.por-5-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: 600px;
  display: flex;
}

.por-5-h.s2 {
  max-width: 520px;
}

.por-5-div-main {
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  height: 100%;
  display: flex;
}

.por-5-div-2 {
  justify-content: center;
  align-items: stretch;
  width: 50%;
  height: 700px;
  display: flex;
  position: relative;
}

.por-5-img-1 {
  border-top-left-radius: var(--_space---xxl);
  object-fit: cover;
  width: 100%;
  max-width: 500px;
  height: 100%;
  position: absolute;
}

.pro-1-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xl);
  justify-content: center;
  align-items: center;
  display: flex;
}

.pro-1-div {
  grid-column-gap: var(--_space---s);
  grid-row-gap: var(--_space---s);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.pro-1-h.s1 {
  text-align: center;
}

.pro-2-img {
  object-fit: cover;
  width: 100%;
  height: 500px;
}

/* Visualizador 360 (campo image_3d) — reutiliza o tamanho de .pro-2-img.
   Altura forçada (!important) porque o CSS do Pannellum aplica .pnlm-container{height:100%}
   que, sem pai com altura, resolveria para 0. */
.pano-360 {
  position: relative;
  overflow: hidden;
  background-color: var(--cinza);
  height: 500px !important;
}

@media screen and (max-width: 767px) {
  .pano-360 {
    height: 360px !important;
  }
}

.pro-3-sec {
  padding-top: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.pro-3-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.pro-3-div-1 {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.pro-3-div-2 {
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.pro-3-h.s2 {
  max-width: 500px;
}

.pro-3-div-info {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.pro-3-div-info-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.pro-3-div-info-2 {
  width: 100%;
}

.pro-3-p.p {
  color: var(--preto-60);
}

.pro-3-van.p {
  width: 100%;
  padding-top: var(--_space---s);
  padding-bottom: var(--_space---s);
  border-bottom: 1px solid var(--preto-20);
}

.pro-3-div-img {
  width: 60%;
  padding-left: var(--_space---xxl);
}

.pro--3-div-img {
  width: 30%;
}

.pro-3-img {
  pointer-events: auto;
  object-fit: cover;
  width: calc(50vw + 50%);
  max-width: none;
  height: 100%;
  position: relative;
  left: calc(50% - 50vw);
}

.pro-4-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-color: var(--cinza);
}

.pro-4-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.pro-4-div-1 {
  padding-bottom: var(--_space---l);
  border-bottom: 1px solid var(--preto-20);
}

.pro-4-div-2 {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto auto;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-columns: 1fr;
  display: grid;
}

.pro-4-img {
  object-fit: cover;
  width: 100%;
  height: 400px;
}

.con-1-sec {
  background-color: var(--preto);
  padding-top: calc(var(--_space---xxl)  + var(--_space---xl));
}

.con-1-div {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.con-1-h.s1 {
  max-width: 1000px;
  color: var(--branco);
  text-align: center;
}

.con-2-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  background-color: var(--preto);
}

.con-2-div {
  width: 100%;
  display: flex;
}

.card-con {
  width: 33%;
  padding-right: var(--_space---m);
  padding-left: var(--_space---m);
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  border-left: 1px solid var(--preto-80);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  text-decoration: none;
  display: flex;
}

.card-con-icon {
  width: var(--_space---l);
  height: var(--_space---l);
}

.card-con-inner {
  grid-column-gap: var(--_space---xs);
  grid-row-gap: var(--_space---xs);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.card-con-label.p {
  color: var(--preto-60);
}

.card-con-link.s4 {
  color: var(--branco);
}

.fun-1-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
}

.fun-1-div {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.fun-1-h.s1 {
  max-width: 900px;
}

.fun-2-sec {
  padding-bottom: var(--_space---xxl);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.fun-2-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fun-2-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.fun-2-div-2 {
  position: relative;
}

.fun-2-div-3 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-bottom: 0;
  display: flex;
}

.fun-2-p-1.p {
  color: var(--preto-60);
}

.fun-2-img-1 {
  border-top-right-radius: var(--_space---xxl);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.fun-2-img-2 {
  border: 2px solid var(--cinza);
  border-radius: 10000px;
  width: 180px;
  height: 180px;
  position: absolute;
  inset: -40px auto auto -90px;
}

.fun-2-p-2.p {
  color: var(--preto-60);
}

.fun-3-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  justify-content: center;
  align-items: center;
  display: flex;
  overflow: hidden;
}

.fun-3-div {
  grid-column-gap: var(--_space---xl);
  grid-row-gap: var(--_space---xl);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.fun-3-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: wrap;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.fun-3-div-2 {
  display: block;
}

/* Slider da Estratégia (fun-3) — Flickity (mesmo mecanismo dos sliders do site) */
.slider-fun-3 .carousel-cell {
  width: calc((100% - 3 * var(--_space---l)) / 3.5);
  margin-right: var(--_space---l);
}

/* Sem setas + viewport visível para os próximos slides aparecerem (peek) */
.slider-fun-3 .flickity-viewport {
  overflow: visible;
}

.slider-fun-3 .flickity-button {
  display: none;
}

.slider-fun-3 .card-fun {
  height: 100%;
}

@media screen and (max-width: 1025px) {
  .slider-fun-3 .carousel-cell {
    width: calc((100% - 2 * var(--_space---l)) / 2.5);
  }
}

@media screen and (max-width: 767px) {
  .slider-fun-3 .carousel-cell {
    width: calc((100% - var(--_space---l)) / 1.2);
  }
}

.card-fun {
  padding: var(--_space---l) var(--_space---m);
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  background-color: var(--cinza);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.card-fun-h.s3 {
  font-family: var(--_font---span);
  font-style: italic;
  font-weight: 400;
}

.card-fun-h.s3.span {
  color: var(--preto-40);
}

.ser-3-sec-copy {
  background-image: linear-gradient(180deg, var(--cinza), var(--branco));
}

.fun-4-sec {
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.fun-4-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
  position: relative;
}

.fun-5-sec {
  padding-top: var(--_space---xxl);
  padding-bottom: var(--_space---xxl);
  justify-content: center;
  align-items: center;
  display: flex;
}

.fun-5-div {
  grid-column-gap: var(--_space---l);
  grid-row-gap: var(--_space---l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fun-5-div-1 {
  grid-column-gap: var(--_space---m);
  grid-row-gap: var(--_space---m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.fun-5-div-2 {
  flex-flow: column;
  display: flex;
}

.fun-5-p.p {
  max-width: 500px;
  color: var(--preto-60);
}

.fun-5-line {
  padding-top: var(--_space---xxs);
  padding-bottom: var(--_space---xxs);
  border-bottom: 1px solid var(--preto-20);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.fun-line-p.p {
  width: 50%;
  padding-right: var(--_space---xs);
  padding-left: var(--_space---xs);
}

.fun-line-p.p._60 {
  color: var(--preto-60);
}

.h-div {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.icon-menu {
  width: var(--_space---m);
  height: var(--_space---m);
  position: relative;
}

.slide-menu {
  z-index: 9999;
  background-color: var(--preto);
  mix-blend-mode: normal;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 600px;
  height: 100vh;
  padding: 80px;
  display: flex;
  position: fixed;
  top: 0;
  bottom: 0;
  left: auto;
  right: -100%;
  transition: right .3s ease-in-out;
}

.slide-menu.active {
  right: 0;
}

body.menu-open {
  overflow: hidden;
}

.slide-menu-cont {
  grid-column-gap: 48px;
  grid-row-gap: 48px;
  flex-flow: column;
  flex: 1;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.mobile-menu-close {
  border: 1px solid var(--branco);
  border-radius: 10000px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
  position: absolute;
  inset: 24px 24px auto auto;
}

.icon-close {
  width: var(--_space---m);
  height: var(--_space---m);
}

.slide-menu-link {
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---s2);
  text-transform: none;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
  font-weight: 200;
  line-height: 100%;
  text-decoration: none;
}

.slide-menu-link:hover {
  color: #fff;
  text-underline-offset: 8px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.slide-menu-link.w--current {
  color: #fff;
  text-underline-offset: 5px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

/* === SLIDE MENU — DROPDOWN (acordeão) === */
.slide-menu-link.slide-menu-link-dropdown {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.slide-menu-link-toggle {
  color: var(--preto-40);
  cursor: pointer;
  grid-column-gap: 12px;
  align-items: center;
  display: flex;
}

.slide-menu-link.open .slide-menu-link-toggle,
.slide-menu-link-toggle:hover {
  color: #fff;
}

.w-icon-dropdown-toggle {
  font-size: 30px;
  transition: transform .3s ease;
}

.slide-menu-link.open .w-icon-dropdown-toggle {
  transform: rotate(180deg);
}

.nav-bar-slide-menu {
  background: none;
  display: none;
}

.slide-menu-link.open .nav-bar-slide-menu {
  grid-row-gap: 16px;
  flex-direction: column;
  margin-top: 20px;
  display: flex;
  position: relative;
}

a.nav-link-slide-menu {
  font-family: var(--_font---main);
  color: var(--preto-40);
  font-size: var(--_size---s4);
  text-transform: none;
  font-weight: 200;
  line-height: 100%;
  text-decoration: none;
}

a.nav-link-slide-menu:hover {
  color: #fff;
}

.nav-link-text-slide-menu {
  margin: 0;
}

.pp-2-sec {
  padding-bottom: var(--_space---l);
  background-image: linear-gradient(180deg, var(--branco), var(--cinza));
}

.pp-2-div {
  flex-flow: column;
  width: 75%;
  display: flex;
}

/* === Tabelas dentro do conteúdo RTE (ex: Política de Privacidade) === */
.pp-2-div table {
  width: 100%;
  border-collapse: collapse;
  margin: var(--_space---m) 0;
  font-family: var(--_font---main);
  font-size: var(--_size---s6);
  color: var(--preto-60);
  border: 1px solid var(--preto-20);
  border-radius: var(--_br---m);
  overflow: hidden;
}

.pp-2-div th,
.pp-2-div td {
  padding: var(--_space---xs) var(--_space---s);
  text-align: left;
  vertical-align: top;
}

.pp-2-div thead th {
  background-color: var(--preto);
  color: var(--branco);
  font-weight: 300;
}

.pp-2-div tbody td {
  border-top: 1px solid var(--preto-20);
}

.pp-2-div tbody tr:nth-child(even) {
  background-color: var(--preto-00);
}

.pp-3-sec {
  padding-bottom: var(--_space---xxl);
  background-color: var(--cinza);
}

.pp-3-div {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.ini-6-div {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.ini-6-div-2 {
  justify-content: center;
  align-items: center;
  width: 50%;
  display: flex;
}

.card-proj-s:nth-child(odd) .card-proj-s-top img{
    border-radius: var(--_space---xxl) 0px 0px 0px;
}
.card-proj-s:nth-child(even) .card-proj-s-top img {
    border-radius: 0px 0px 0px var(--_space---xxl);
}
 .ini-2-p.p.up, .ini-2-p.p.up-w {
    position: relative;
}
p.ini-2-p.p.up:before {
    content: '';
    position: absolute;
    top: calc(0px - var(--_space---l));
    left: 0;
    width: 100%;
    height: var(--_space---l);
    background: var(--preto);
    z-index: 0;
}
p.ini-2-p.p.up:after {
    content: '';
    position: absolute;
    top: calc(0px - var(--_space---l));
    left: calc(0px - var(--_space---l));
    width: var(--_space---l);
    height: calc(100% + var(--_space---l));
    background: var(--preto);
    z-index: 0;
}
p.ini-2-p.p.up-w:before {
    content: '';
    position: absolute;
    top: calc(0px - var(--_space---l));
    left: 0;
    width: 100%;
    height: var(--_space---l);
    background: var(--branco);
    z-index: 0;
}
p.ini-2-p.p.up-w:after {
    content: '';
    position: absolute;
    top: calc(0px - var(--_space---l));
    left: calc(0px - var(--_space---l));
    width: var(--_space---l);
    height: calc(100% + var(--_space---l));
    background: var(--branco);
    z-index: 0;
}
/* --- LINHA 1 DO CICLO (Imagens 1 e 2) --- */
/* Imagem grande à esquerda (ocupa 2 colunas) */
.pro-4-div-2 > :nth-child(10n+1) {
  grid-column: 1 / span 2;
}
/* --- LINHA 2 DO CICLO (Imagens 3, 4 e 5) --- */
/* Força a imagem 3 a quebrar para a linha seguinte na primeira coluna */
.pro-4-div-2 > :nth-child(10n+3) {
  grid-column: 1;
}
/* --- LINHA 3 DO CICLO (Imagens 6 e 7) --- */
/* Força a imagem pequena a começar na coluna 1 */
.pro-4-div-2 > :nth-child(10n+6) {
  grid-column: 1;
}
/* Imagem grande à direita (começa na coluna 2 e ocupa o resto) */
.pro-4-div-2 > :nth-child(10n+7) {
  grid-column: 2 / span 2;
}
/* --- LINHA 4 DO CICLO (Imagens 8, 9 e 10) --- */
/* Força a imagem 8 a começar uma linha nova na coluna 1 */
.pro-4-div-2 > :nth-child(10n+8) {
  grid-column: 1;
}
/* --- Linha 1 do ciclo --- */
.pro-4-div-2 > :nth-child(8n+1) { border-top-left-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+2) { border-bottom-right-radius: var(--_space---xxl); }
/* --- Linha 2 do ciclo --- */
.pro-4-div-2 > :nth-child(8n+3) { border-top-left-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+4) { border-top-right-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+5) { border-bottom-left-radius: var(--_space---xxl); }
/* --- Linha 3 do ciclo --- */
.pro-4-div-2 > :nth-child(8n+6) { border-bottom-right-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+7) { border-bottom-right-radius: var(--_space---xxl); }
/* --- Linha 4 do ciclo --- */
/* Nota: Como o ciclo fecha em 8, a última imagem usa "8n" puro (múltiplos de 8) */
.pro-4-div-2 > :nth-child(8n+8), .pro-4-div-2 > :nth-child(8n) { border-bottom-left-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+9) { border-bottom-right-radius: var(--_space---xxl); }
.pro-4-div-2 > :nth-child(8n+10) { border-top-left-radius: var(--_space---xxl); }
.card-foun-img {
  -webkit-mask-image: url('https://cdn.prod.website-files.com/6a3552376c1fce8f0b1f8f57/6a3ba7873c580aec6d2e4a98_sob-4-shape.svg');
  mask-image: url('https://cdn.prod.website-files.com/6a3552376c1fce8f0b1f8f57/6a3ba7873c580aec6d2e4a98_sob-4-shape.svg');
  /* Ajustes da Máscara */
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.ini-6-img {
  -webkit-mask-image: url('https://cdn.prod.website-files.com/6a3552376c1fce8f0b1f8f57/6a42303faaeb90f67cdeca90_ini-6-mask.svg');
  mask-image: url('https://cdn.prod.website-files.com/6a3552376c1fce8f0b1f8f57/6a42303faaeb90f67cdeca90_ini-6-mask.svg');
  /* Ajustes da Máscara */
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.hide-desktop {
  display: none;
}

#adopt-controller-button g path {
    fill: #fff !important;
}

@media screen and (min-width: 1541px) {
  body {
    --_space---xs: 16px;
    --_space---m: 32px;
    --_space---xxs: 8px;
    --_space---xxl: 160px;
    --_space---xl: 80px;
    --_space---l: 48px;
    --_space---s: 24px;
    --_size---s1: 100px;
    --_size---s2: 64px;
    --_size---s3: 40px;
    --_size---s4: 32px;
    --_size---s5: 22px;
    --_size---s6: 14px;
    --_size---p: 18px;
    --_size---btn: 18px;
    --_br---l: 18px;
    --_br---m: 12px;
    --_br---s: 6px;
    --_font-line-height---s6: 12px;
    --_btn---pd-top-bot: 18px;
    --_btn---pd-letf-right: 32px;
  }

  .ini-4-div-1 {    
    padding-top: calc(var(--_space---xxl) + 40px);
  }

  .uyioo {
    padding: var(--_space---xs) var(--_space---m);
    border-radius: 1000px;
    transition: all .2s;
  }

  .uyioo:hover {
    background-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  }

  .container {
    width: calc(100vw - 240px);
    max-width: 1800px;
  }

  .body-style-guide {
    --_space---xs: 16px;
    --_space---m: 32px;
    --_space---xxs: 8px;
    --_space---xxl: 160px;
    --_space---xl: 80px;
    --_space---l: 48px;
    --_space---s: 24px;
    --_btn---pd-top-bot: 18px;
    --_btn---pd-letf-right: 32px;
    --_size---s1: 100px;
    --_size---s2: 64px;
    --_size---s3: 40px;
    --_size---s4: 32px;
    --_size---s5: 22px;
    --_size---s6: 14px;
    --_size---p: 18px;
    --_size---btn: 18px;
    --_br---l: 18px;
    --_br---m: 12px;
    --_br---s: 6px;
  }

  .gfhghjj {
    padding: var(--_space---xs) var(--_space---m);
    text-align: center;
    text-transform: none;
    border-radius: 1000px;
    transition: all .2s;
  }

  .gfhghjj:hover {
    background-color: #0000;
  }

  .cont {
    width: calc(100vw - 240px);
    max-width: 1800px;
    overflow: visible;
  }

  .text-white {
    color: var(--branco);
  }

  .hgkghkhjk {
    padding: var(--_space---xs) var(--_space---m);
    text-transform: none;
    border-radius: 1000px;
    transition: all .2s;
  }

  .hgkghkhjk:hover {
    background-color: var(--social\<deleted\|variable-49028eda-ae31-f6af-561c-409866b7040c\>);
  }

  .uyouyiuio {
    padding: var(--_space---xs) var(--_space---m);
    border-radius: 1000px;
    transition: all .2s;
  }

  .uyouyiuio:hover {
    background-color: #0000;
  }

  .hjkyio {
    padding: var(--_space---xs) var(--_space---m);
    border-radius: 1000px;
    transition: all .2s;
  }

  .hjkyio:hover {
    background-color: var(--branco);
  }

  .a-menu {
    padding: 14px 24px;
  }

  .btn-lang {
    width: 48px;
    height: 48px;
    padding-top: var(--_space---xs);
    padding-bottom: var(--_space---xs);
  }

  .div-block {
    grid-column-gap: var(--_space---xs);
    grid-row-gap: var(--_space---xs);
  }

  .h-sec {
    width: 100%;
    position: absolute;
  }

  .h-div-1, .h-div-3 {
    width: 25%;
  }

  .form-05-right {
    padding: var(--_space---l);
    border-radius: var(--_space---l);
    background-color: var(--preto-00);
    margin-top: 0;
  }

  .contact-info {
    flex-flow: column;
    display: flex;
    position: relative;
  }

  .image {
    width: 48px;
    height: 48px;
  }

  .full-link {
    font-size: 0;
    line-height: 0;
    position: absolute;
    inset: 0%;
  }

  .contact-box {
    grid-column-gap: var(--_space---s);
    grid-row-gap: var(--_space---s);
    flex-flow: row;
    display: flex;
    position: relative;
  }

  ._69789 {
    padding-top: var(--_space---xxs);
    padding-bottom: var(--_space---xxs);
    border-radius: 0;
    transition: all .2s;
  }

  ._69789:hover {
    background-color: #fff0;
  }

  .yuuioui {
    padding-top: var(--_space---xxs);
    padding-bottom: var(--_space---xxs);
    border-radius: 0;
    transition: all .2s;
  }

  .yuuioui:hover {
    background-color: #fff0;
  }

  .newsletter-06-sec {
    padding-top: 0;
    padding-bottom: 0;
  }

  .newsletter-06-cont.cont {
    width: 100%;
  }

  .newsletter-06-div-bot {
    border-radius: 0;
  }

  .ini-1-h.s1 {
    max-width: 1000px;
  }

  .ini-2-sec {
    padding-top: var(--_space---xxl);
  }

  .ini-2-div-bot {
    margin-top: -48px;
  }

  .ini-2-p.p.up, .ini-2-p.p.up-w {
    padding-top: 0;
    padding-left: 0;
  }

  .ini-2-img {
    height: 400px;
  }

  .ni-3-div-bot {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }

  .ini-3-h.s2 {
    max-width: 700px;
  }

  .card-proj-s-img {
    height: 400px;
  }

  .ini-4-div-3 {
    padding-bottom: var(--_space---xl);
  }

  .ini-5-h.s2 {
    max-width: 750px;
  }

  .card-serv-img-2 {
    max-width: 450px;
  }

  .form-block {
    max-width: none;
  }

  .input-form.big {
    padding-bottom: 48px;
  }

  .pp-form-link.blue.black, .pp-form-link.blue.black:hover {
    color: #000;
  }

  .ft-h.s2 {
    max-width: 800px;
  }

  .ft-div-1 {
    flex-flow: wrap;
  }

  .ft-img {
    height: 600px;
  }

  .sob-1-sec {
    padding-top: var(--_space---xxl);
    padding-bottom: var(--_space---xxl);
  }

  .sob-1-div {
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .sob-1-h.s1 {
    text-align: center;
    max-width: 1000px;
  }

  .sob-2-sec {
    padding-top: var(--_space---xxl);
  }

  .sob-3-h.s2 {
    max-width: 1000px;
  }

  .sob-3-img-2 {
    bottom: -25px;
    left: -50px;
    right: auto;
  }

  .sob-4-sec {
    background-image: linear-gradient(180deg, var(--branco), var(--cinza));
  }

  .sob-4-div-2 {
    grid-column-gap: var(--_space---xxl);
    grid-row-gap: var(--_space---xxl);
  }

  .ser-1-sec {
    padding-top: var(--_space---xxl);
  }

  .ser-1-div {
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .ser-1-h.s1 {
    max-width: 1300px;
  }

  .ser-4-img {
    height: 500px;
  }

  .ser-4-h.s2 {
    max-width: 750px;
  }

  .por-1-h.s1 {
    max-width: 1000px;
  }

  .por-3-h.s1 {
    max-width: 1300px;
  }

  .por-5-div-2 {
    height: auto;
  }

  .por-5-img-1 {
    width: 100%;
    max-width: 700px;
    position: absolute;
  }

  .pro-2-img {
    height: 600px;
  }

  .pro-4-img {
    height: 500px;
  }

  .con-1-h.s1 {
    max-width: 1400px;
  }

  .fun-1-sec {
    padding-top: var(--_space---xxl);
  }

  .fun-1-div {
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .fun-1-h.s1 {
    max-width: 1300px;
  }

  .fun-2-div-3 {
    padding-bottom: var(--_space---xl);
  }

  .fun-2-img-2 {
    width: 240px;
    height: 240px;
    left: -120px;
  }

  .fun-3-div-2 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .fun-5-p.p {
    max-width: 600px;
  }

  .slide-menu-link {
    font-size: 38px;
  }
}

@media screen and (max-width: 1025px) {
  body {
    --_space---xs: 12px;
    --_space---m: 26px;
    --_space---xxs: 6px;
    --_space---xxl: 120px;
    --_space---xl: 52px;
    --_space---l: 36px;
    --_space---s: 20px;
    --_size---s1: 64px;
    --_size---s2: 36px;
    --_size---s3: 28px;
    --_size---s4: 22px;
    --_size---s5: 18px;
    --_size---s6: 12px;
    --_size---p: 16px;
    --_size---btn: 16px;
    --_br---l: 16px;
    --_br---m: 10px;
    --_br---s: 4px;
    --_font-line-height---s6: 12px;
    --_btn---pd-top-bot: 14px;
    --_btn---pd-letf-right: 22px;
  }

  .ini-4-div-1 {
    padding-top: 0 !important;
  }

  nav.h-div-2.w-nav-menu, nav.h-div-3.w-nav-menu {
    display: none !important;
  }

  .w-nav-button.w--open {
    background: transparent !important;
  }

  .hide-desktop {
    display: block;
  }

  .pro-4-div-2 > img, 
  .pro-4-div-2 > div {
    grid-column: auto !important; /* Cancela o efeito de ocupar 2 colunas */
	}

  .s2.cta-03-div-top-s2, .s2.cta-04-div-top-s2, .s2.cta-05-div-top-s2, .s2.newsletter-05-div-top-s2 {
    width: 70%;
  }

  .s2.newsletter-05-div-top-s2.text-white {
    width: 100%;
  }

  .s2.newsletter-06-div-top-s2 {
    width: 70%;
  }

  .s2.newsletter-06-div-top-s2.text-white {
    width: 100%;
  }

  .container {
    width: 100vw;
  }

  .body-style-guide {
    --_space---xs: 12px;
    --_space---m: 26px;
    --_space---xxs: 6px;
    --_space---xxl: 120px;
    --_space---xl: 52px;
    --_space---l: 36px;
    --_space---s: 20px;
    --_btn---pd-top-bot: 14px;
    --_btn---pd-letf-right: 22px;
  }

  .hero-01-cont {
    flex-flow: column-reverse;
  }

  .hero-01-div-left {
    width: 100%;
    height: 300px;
  }

  .hero-01-div-right {
    width: 100%;
    padding-left: 0;
  }

  .hero-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .hero-01-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .ini-5-div .ini-5-div-top,
  .cont {
    width: calc(100vw - 36px);
    max-width: 720px;
  }

  .hero-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .hero-02-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .hero-02-cont {
    flex-flow: column-reverse;
  }

  .hero-02-cont.cont {
    flex-flow: column;
  }

  .hero-02-div-right {
    width: 100%;
    height: 300px;
  }

  .hero-02-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .hero-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .hero-03-cont {
    flex-flow: column-reverse;
  }

  .hero-03-cont.cont {
    flex-flow: column;
  }

  .hero-03-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .text-white {
    color: var(--branco);
  }

  .text-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .text-02-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .text-02-cont {
    flex-flow: column-reverse;
  }

  .text-02-div-left {
    width: 100%;
    height: 300px;
  }

  .text-02-div-right {
    width: 100%;
    padding-left: 0;
  }

  .text-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .text-04-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .text-04-cont {
    flex-flow: column-reverse;
  }

  .text-04-cont.cont {
    flex-flow: column;
  }

  .text-04-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .text-04-div-right {
    width: 100%;
    height: 300px;
  }

  .text-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .text-01-cont {
    flex-flow: column-reverse;
  }

  .text-01-div-left {
    width: 100%;
  }

  .text-01-sec-img {
    object-fit: cover;
    width: 100%;
    height: 300px;
  }

  .text-01-div-right {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: 0;
  }

  .text-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .text-03-cont {
    flex-flow: column-reverse;
  }

  .text-03-cont.cont {
    flex-flow: column;
  }

  .text-03-div-left {
    width: 100%;
    padding-right: 0;
    padding-bottom: var(--_space---xl);
    padding-left: 0;
  }

  .text-03-div-right {
    width: 100%;
    height: 300px;
  }

  .text-05-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .hero-03-cont-copy {
    flex-flow: column-reverse;
  }

  .hero-03-cont-copy.cont {
    flex-flow: column;
  }

  .text-05-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .cta-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-01-div-left {
    width: 100%;
  }

  .cta-01-div-right {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .header-01-cont {
    justify-content: center;
    align-items: center;
  }

  .header-01-logo {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .header-01-menu-btn {
    border: 1px solid var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    border-radius: 1000px;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    width: 48px;
    min-width: 48px;
    height: 48px;
    padding: 0;
    display: flex;
  }

  .header-01-menu-btn-icon {
    width: 24px;
    height: 24px;
    color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    flex: 0 auto;
    align-self: auto;
    display: block;
    position: relative;
  }

  .header-02-cont {
    justify-content: center;
    align-items: center;
  }

  .header-02-logo {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .header-02-menu-btn {
    border: 1px solid var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    border-radius: 1000px;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    width: 48px;
    min-width: 48px;
    height: 48px;
    padding: 0;
    display: flex;
  }

  .header-02-menu-btn-icon {
    width: 24px;
    height: 24px;
    color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    flex: 0 auto;
    align-self: auto;
    display: block;
    position: relative;
  }

  .h-cont {
    justify-content: center;
    align-items: center;
  }

  .h-div-1 {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .link-meu {
    flex: none;
    display: flex;
  }

  .cta-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-02-div-right {
    width: 100%;
  }

  .cta-03-div-top {
    width: 100%;
    padding-left: 0;
  }

  .cta-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-03-div-bot {
    width: 100%;
    height: 320px;
  }

  .cta-02-div-left {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .cta-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-04-div-top {
    width: 100%;
    padding-left: 0;
  }

  .cta-04-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .cta-05-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-05-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .cta-05-div-top {
    width: 100%;
    padding-left: var(--_space---xl);
  }

  .cta-06-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-06-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .cta-06-div-top {
    width: 100%;
    padding-left: 0;
  }

  .cta-07-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .cta-07-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .cta-07-div-top {
    width: 100%;
    padding-left: var(--_space---xl);
  }

  .card-01-sec, .card-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-02-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .card-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-03-top {
    padding-right: 0;
  }

  .card-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-04-bot {
    grid-template-columns: 1fr 1fr;
  }

  .form-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-01-cont.cont {
    flex-flow: wrap-reverse;
    width: calc(100vw - 36px);
  }

  .form-01-left {
    width: 100%;
    height: 320px;
    margin-top: var(--_space---xl);
  }

  .form-01-right {
    width: 100%;
    padding-left: 0;
  }

  .form-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-02-cont.cont {
    flex-flow: wrap-reverse;
    width: 100%;
  }

  .form-02-left {
    width: 100%;
    height: 320px;
  }

  .form-02-right {
    padding-right: 0;
    padding-bottom: var(--_space---xl);
    width: calc(100vw - 36px);
    padding-left: 0;
  }

  .form-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-03-cont.cont {
    flex-flow: column;
    align-items: center;
    width: calc(100vw - 36px);
  }

  .form-03-right {
    width: 100%;
    height: 320px;
    margin-top: var(--_space---xl);
  }

  .form-03-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .form-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-04-cont.cont {
    flex-flow: column;
    align-items: center;
    width: 100%;
  }

  .form-04-right {
    width: 100%;
    height: 320px;
  }

  .form-04-left {
    padding-right: 0;
    padding-bottom: var(--_space---xl);
    width: calc(100vw - 36px);
    padding-left: 0;
  }

  .form-05-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-05-cont.cont {
    flex-flow: column;
    align-items: center;
    width: calc(100vw - 36px);
  }

  .form-05-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .form-05-right {
    width: 100%;
    height: 320px;
    margin-top: var(--_space---xl);
  }

  .form-06-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .form-06-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .contacts-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .contacts-01-cont.cont {
    flex-flow: wrap-reverse;
    width: calc(100vw - 36px);
  }

  .contacts-01-left {
    width: 100%;
    height: 320px;
    margin-top: var(--_space---xl);
  }

  .contacts-01-right {
    width: 100%;
    padding-left: 0;
  }

  .contacts-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .contacts-02-cont.cont {
    flex-flow: wrap-reverse;
    width: 100%;
  }

  .contacts-02-left {
    width: 100%;
    height: 320px;
  }

  .contacts-02-right {
    padding-right: 0;
    padding-bottom: var(--_space---xl);
    width: calc(100vw - 36px);
    padding-left: 0;
  }

  .contacts-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .contacts-03-cont.cont {
    flex-flow: column;
    align-items: center;
    width: calc(100vw - 36px);
  }

  .contacts-03-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .contacts-03-right {
    width: 100%;
    height: 320px;
    margin-top: var(--_space---xl);
  }

  .contacts-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .contacts-04-cont.cont {
    flex-flow: column;
    align-items: center;
    width: 100%;
  }

  .contacts-04-left {
    padding-right: 0;
    padding-bottom: var(--_space---xl);
    width: calc(100vw - 36px);
    padding-left: 0;
  }

  .contacts-04-right {
    width: 100%;
    height: 320px;
  }

  .footer-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .footer-01-cont.cont {
    flex-flow: wrap-reverse;
    width: calc(100vw - 36px);
  }

  .footer-01-col {
    width: 100%;
  }

  .footer-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .footer-02-cont.cont {
    flex-flow: wrap-reverse;
    width: calc(100vw - 36px);
  }

  .footer-02-col {
    width: 100%;
  }

  .reviews-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .reviews-01-top {
    padding-right: 0;
  }

  .reviews-02-sec, .counter-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .counter-01-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .counter-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .counter-02-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .counter-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .counter-03-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .counter-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .counter-04-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
  }

  .intro-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .intro-01-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .intro-01-div-top {
    width: 100%;
    padding-left: 0;
  }

  .card-img-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-img.absolute {
    height: 320px;
  }

  .card-img-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-img-02-top {
    padding-right: 0;
  }

  .card-img-03-sec, .card-img-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .card-img-04-top {
    padding-right: 0;
  }

  .newsletter-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-01-div-left {
    width: 100%;
  }

  .newsletter-01-div-right {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .form-newsletter._w-50 {
    width: 100%;
    padding-left: 0;
  }

  .newsletter-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-02-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .newsletter-02-cont {
    flex-flow: column-reverse;
  }

  .newsletter-02-div-left {
    width: 100%;
    height: 300px;
  }

  .newsletter-02-div-right {
    width: 100%;
    padding-left: 0;
  }

  .newsletter-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-03-div-left {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .newsletter-03-div-right {
    width: 100%;
  }

  .newsletter-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-04-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .newsletter-04-cont {
    flex-flow: column-reverse;
  }

  .newsletter-04-cont.cont {
    flex-flow: column;
  }

  .newsletter-04-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .newsletter-04-div-right {
    width: 100%;
    height: 300px;
  }

  .newsletter-05-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-05-div-bot {
    background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .newsletter-05-div-top {
    width: 100%;
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .newsletter-06-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .newsletter-06-div-bot {
    background-color: var(--principal\<deleted\|variable-a5bf7d9f-3d21-ac4c-8b28-d29abdf34a2c\>);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .newsletter-06-div-top {
    width: 100%;
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .accordions-01-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .accordions-01-div-left {
    width: 100%;
  }

  .accordions-01-div-right {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .accordions-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .accordions-02-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .accordions-02-cont {
    flex-flow: column-reverse;
  }

  .accordions-02-div-left {
    width: 100%;
    height: 300px;
  }

  .accordions-02-div-right {
    width: 100%;
    padding-left: 0;
  }

  .accordions-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .accordions-03-div-left {
    width: 100%;
    padding-bottom: var(--_space---xl);
    padding-left: var(--_space---xl);
  }

  .accordions-03-div-right {
    width: 100%;
  }

  .accordions-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .accordions-04-sec-img-div {
    width: 100%;
    height: 300px;
  }

  .accordions-04-cont {
    flex-flow: column-reverse;
  }

  .accordions-04-cont.cont {
    flex-flow: column;
  }

  .accordions-04-div-left {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .accordions-04-div-right {
    width: 100%;
    height: 300px;
  }

  .intro-02-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .intro-02-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .intro-02-div-top {
    width: 100%;
    padding-left: 0;
  }

  .intro-03-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .intro-03-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .intro-03-div-top {
    width: 100%;
    padding-left: 0;
  }

  .intro-04-sec {
    justify-content: flex-start;
    align-items: flex-end;
    display: flex;
  }

  .intro-04-div-bot {
    background-color: var(--preto);
    opacity: 1;
    width: 100%;
    height: auto;
  }

  .intro-04-div-top {
    width: 100%;
    padding-left: 0;
  }

  .ini-1-sec {
    background-image: linear-gradient(180deg, black, #000000bf 25%, #000000bf 60%, var(--preto));
    background-position: 0 0, 50%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
    height: 80vh;
  }

  .ini-2-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
  }

  .ini-2-div-top {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .ini-2-div-bot {
    grid-column-gap: var(--_space---m);
    grid-row-gap: var(--_space---m);
    flex-flow: wrap;
    margin-top: 0;
    display: flex;
  }

  .ini-2-div-top-inner {
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
  }

  .ni-3-div-bot {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .ini-3-h.s2 {
    max-width: 400px;
  }

  .ini-4-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .ini-4-div-2 {
    height: 300px;
  }

  .ini-4-img-1 {
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---xxl);
    width: 75%;
  }

  .ini-4-img-2 {
    width: 200px;
    height: 200px;
    left: auto;
    right: 15%;
  }

  .card-serv {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .card-serv-img-1 {
    width: 100%;
    height: 300px;
    left: unset;
  }

  .card-serv-img-2 {
    height: 100%;
  }

  .card-serv-div-2 {
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }

  .card-serv-div-3 {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: row;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    align-items: stretch;
    width: 100%;
    display: grid;
  }

  .ini-6-cont.cont {
    max-width: none;
  }

  .ini-6-div-1 {
    justify-content: center;
    align-items: center;
    max-width: none;
  }

  .ini-6-h.s2 {
    text-align: center;
    max-width: 400px;
  }

  .form-block {
    max-width: 500px;
  }

  .form-gamma {
    width: 100%;
  }

  .ft-div-r {
    padding-left: var(--_space---xl);
  }

  .ft-h.s2 {
    max-width: 400px;
  }

  .ft-div-1 {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .sob-2-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
  }

  .sob-3-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .sob-3-h.s2 {
    max-width: 600px;
  }

  .sob-3-div-2 {
    flex-flow: column;
    width: 100%;
    display: flex;
  }

  .sob-2-p-1.p {
    max-width: 500px;
  }

  .sob-3-div-2-img {
    height: 300px;
  }

  .sob-3-img-2 {
    width: 200px;
    height: 200px;
    left: auto;
    right: 15%;
    bottom: -45px;
  }

  .sob-3-img-1 {
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---xxl);
    width: 75%;
  }

  .sob-4-div-2 {
    grid-column-gap: var(--_space---xxl);
    grid-row-gap: var(--_space---xxl);
    flex-flow: column;
    display: flex;
  }

  .card-foun {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .card-foun-img {
    width: 300px;
    height: 300px;
  }

  .card-foun-text-div {
    flex-flow: column;
    margin-top: 0;
    display: flex;
  }

  .ser-2-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .ser-4-img {
    height: 300px;
  }

  .ser-4-img-3 {
    width: 200px;
    height: 200px;
    top: calc(50% - 100px);
    left: calc(50% - 100px);
  }

  .ser-4-h.s2 {
    max-width: 400px;
  }

  .acc-serv {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .acc-serv-img-1 {
    width: 100%;
    height: 300px;
    left: unset;
  }

  .ser-5-div-2 {
    flex-flow: column;
  }

  .card-proc {
    border-bottom: 1px solid var(--preto-20);
    border-right-width: 0;
    flex-flow: row;
    width: 100%;
  }

  .card-proc-numb.s3 {
    width: 20%;
    padding-top: var(--_space---m);
    border-right: 1px solid var(--preto-20);
    border-bottom-width: 0;
  }

  .card-proc-h.s5 {
    width: 80%;
    padding-bottom: var(--_space---m);
  }

  .sec-6-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .card-pro {
    height: auto;
  }

  .card-pro-div-info {
    padding: var(--_space---m);
  }

  .card-pro-desc.s5 {
    font-size: var(--_size---p);
  }

  .por-5-cont.cont {
    max-width: none;
  }

  .por-5-div {
    justify-content: center;
    align-items: center;
    max-width: none;
  }

  .por-5-h.s2 {
    text-align: center;
    max-width: 400px;
  }

  .por-5-div-2 {
    height: 300px;
    display: none;
  }

  .por-5-img-1 {
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---xxl);
    width: 75%;
  }

  .pro-2-img {
    height: 400px;
  }

  .pro-3-div-2 {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
  }

  .pro-3-div-info-1 {
    width: 50%;
    padding-right: var(--_space---s);
  }

  .pro-3-div-info-2 {
    width: 50%;
    padding-left: var(--_space---s);
  }

  .pro-3-div-img {
    flex-flow: row;
    width: 100%;
    padding-left: 0;
  }

  .pro--3-div-img {
    width: 100%;
  }

  .pro-3-img {
    width: 100%;
    height: 300px;
    left: unset;
  }

  .pro-4-div-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .pro-4-img {
    height: 300px;
  }

  .con-1-h.s1 {
    max-width: none;
  }

  .con-2-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
  }

  .card-con {
    width: 100%;
  }

  .fun-2-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .fun-2-div-2 {
    height: 300px;
  }

  .fun-2-img-1 {
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---xxl);
    width: 75%;
  }

  .fun-2-img-2 {
    width: 200px;
    height: 200px;
    left: auto;
    right: 15%;
  }

  .fun-3-div-2 {
    grid-template-columns: 1fr 1fr;
  }

  .fun-5-div {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    display: flex;
  }

  .fun-5-line {
    padding-top: var(--_space---xs);
    padding-bottom: var(--_space---xs);
  }

  .slide-menu {
    max-width: 450px;
  }

  .mobile-menu-close {
    padding-left: 0;
  }

  .pp-2-div {
    width: 100%;
  }

  .ini-6-div-2 {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_space---xs: 8px;
    --_space---m: 24px;
    --_space---xxs: 4px;
    --_space---xxl: 100px;
    --_space---xl: 48px;
    --_space---l: 32px;
    --_space---s: 16px;
    --_size---s1: 52px;
    --_size---s2: 32px;
    --_size---s3: 26px;
    --_size---s4: 20px;
    --_size---s5: 18px;
    --_size---s6: 12px;
    --_size---p: 16px;
    --_size---btn: 16px;
    --_br---l: 14px;
    --_br---m: 8px;
    --_br---s: 4px;
    --_btn---pd-top-bot: 12px;
    --_btn---pd-letf-right: 18px;
  }

  .acc-ser-div-1 {
    flex-direction: column;
    gap: var(--_space---xl);
    padding-bottom: var(--_space---xl);
  }

  .acc-serv-div-2 {
    grid-template-columns: 1fr 1fr;
  }

  .ft-img {    
    width: calc(50vw + 50%);    
    left: calc(50% - 50vw);
  }

  .s2.cta-04-div-top-s2.text-white, .s2.cta-05-div-top-s2.text-white, .s2.newsletter-05-div-top-s2.text-white, .s2.newsletter-06-div-top-s2.text-white {
    text-align: center;
    width: 100%;
  }

  .section {
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .container {
    flex-flow: column;
    width: calc(100vw - 32px);
    max-width: 100vw;
  }

  .body-style-guide {
    --_space---xs: 8px;
    --_space---m: 24px;
    --_space---xxs: 4px;
    --_space---xxl: 100px;
    --_space---xl: 48px;
    --_space---l: 32px;
    --_space---s: 16px;
    --_btn---pd-top-bot: 12px;
    --_btn---pd-letf-right: 18px;
  }

  .gfhghjj {
    --_btn---pd-top-bot: 12px;
    --_btn---pd-letf-right: 18px;
  }

  .ini-5-div .ini-5-div-top,
  .cont {
    width: calc(100vw - 48px);
    max-width: 100%;
  }

  .text-white {
    color: var(--branco);
  }

  .cta-04-div-top {
    padding-left: var(--_space---xl);
  }

  .cta-05-div-bot {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .cta-05-div-top {
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .cta-06-div-top {
    padding-left: var(--_space---xl);
  }

  .cta-07-div-bot {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .cta-07-div-top {
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .intro-01-div-top {
    padding-left: var(--_space---xl);
  }

  .newsletter-05-div-bot {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .newsletter-05-div-top {
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .newsletter-06-div-bot {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .newsletter-06-div-top {
    padding-left: var(--_space---xl);
    flex-flow: column;
  }

  .intro-02-div-top, .intro-03-div-top, .intro-04-div-top {
    padding-left: var(--_space---xl);
  }

  .ini-3-div-top {
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
  }

  .ni-3-div-bot {
    grid-template-columns: 1fr 1fr;
  }

  .ini-3-h.s2 {
    max-width: 350px;
  }

  .card-proj-s-img {
    height: 400px;
  }

  .card-proj-s-loc.s6 {
    font-size: var(--_size---p);
  }

  .card-proj-s-h.s5 {
    font-size: var(--_size---s3);
  }

  .ini-4-div-2 {
    height: 300px;
  }

  .card-serv-div-2 {
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
  }

  .card-serv-div-3 {
    flex-flow: column;
    display: flex;
  }

  .ini-6-h.s2 {
    max-width: none;
  }

  .column-4 {
    padding-left: 0;
    padding-right: 0;
  }

  .column {
    margin-bottom: var(--_space---l);
    padding-left: 0;
    padding-right: 0;
  }

  .pp-form-link {
    color: #f6f6f6;
  }

  .columns {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    display: flex;
  }

  .ft-div-r {
    width: 100%;
    padding-top: var(--_space---xxl);
    padding-left: 0;
  }

  .ft-div-2 {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
  }

  .ft-div-2-info {
    grid-column-gap: var(--_space---l);
    grid-row-gap: var(--_space---l);
  }

  .ft-div-2-menu {
    grid-column-gap: var(--_space---m);
    grid-row-gap: var(--_space---m);
    justify-content: center;
    align-items: flex-start;
  }

  .ft-link-grande {
    font-size: var(--_size---s3);
  }

  .ft-link {
    font-size: var(--_size---s4);
  }

  .ft-div-3 {
    grid-column-gap: var(--_space---xl);
    grid-row-gap: var(--_space---xl);
    flex-flow: column-reverse;
    justify-content: center;
    align-items: flex-start;
  }

  .ft-div-3.con, .ft-div-3-pp.con {
    justify-content: center;
    align-items: center;
  }

  .ft-div {
    flex-flow: column;
  }

  .ft-div-l {
    width: 100%;
    display: flex;
    overflow: visible;
  }

  .ft-img, .sob-3-div-2-img {
    height: 300px;
  }

  .card-foun-div-name {
    grid-column-gap: var(--_space---s);
    grid-row-gap: var(--_space---s);
    justify-content: flex-start;
    align-items: flex-end;
  }

  .sob-4-h3.s5 {
    font-size: var(--_space---m);
    line-height: 100%;
  }

  .sob-4-h2.s4 {
    font-size: var(--_size---s2);
    line-height: 100%;
  }

  .ser-4-h.s2 {
    max-width: 400px;
  }

  .sec-6-div-1 {
    padding-right: 0;
  }

  .card-inv {
    padding-top: var(--_space---s);
    padding-bottom: var(--_space---s);
    grid-column-gap: var(--_space---m);
    grid-row-gap: var(--_space---m);
  }

  .card-pro {
    flex-flow: column;
  }

  .card-pro-div-img {
    width: 100%;
    height: 300px;
  }

  .card-pro-div-info {
    width: 100%;
  }

  .card-pro-div-arr {
    padding-right: var(--_space---m);
    padding-left: var(--_space---m);
  }

  .por-5-h.s2 {
    max-width: none;
  }

  .por-5-div-2, .pro-2-img {
    height: 300px;
  }

  .pro-3-div-info-1 {
    width: 100%;
    padding-right: 0;
  }

  .pro-3-div-info-2 {
    width: 100%;
    padding-left: 0;
  }

  .pro-3-div-img {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .pro-4-div-2 {
    grid-template-columns: repeat(1, 1fr);
  }

  .fun-2-div-2 {
    height: 300px;
  }

  .card-fun {
    padding: var(--_space---m) var(--_space---s);
  }

  .slide-menu {
    max-width: 360px;
    padding: 48px;
  }
}

@media screen and (max-width: 479px) {
  body {
    --_font-line-height---s6: 12px;
  }

  .s2.cta-03-div-top-s2, .s2.cta-04-div-top-s2, .s2.cta-05-div-top-s2, .s2.card-01-title, .s2.card-02-title, .s2.card-04-title, .s2.form-06-title, .s2.reviews-01-title, .s2.reviews-02-title, .s2.counter-01-title, .s2.counter-02-title, .s2.counter-03-title, .s2.counter-04-title, .s2.card-img-01-title, .s2.card-img-02-title, .s2.card-img-03-title, .s2.card-img-04-title, .s2.newsletter-05-div-top-s2, .s2.newsletter-06-div-top-s2 {
    width: 100%;
  }

  .container {
    max-width: 100vw;
  }

  .ini-5-div .ini-5-div-top,
  .ini-5-div .ini-5-div-bot,
  .cont {
    width: calc(100vw - 32px);
  }

  .ini-5-div .ini-5-div-bot {
    margin: auto;
  }

  .text-white {
    color: var(--branco);
  }

  .cta-01-div-left {
    border-radius: 0px 0px var(--_space---l) var(--_space---l);
    height: 260px;
  }

  .cta-01-div-right {
    padding: var(--_space---m);
  }

  .cta-01-cont.cont {
    flex-flow: wrap-reverse;
  }

  .cta-02-cont.cont {
    flex-flow: column;
  }

  .cta-02-div-right {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---l);
    height: 260px;
  }

  .cta-03-div-top {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .cta-03-div-bot {
    height: 260px;
  }

  .cta-02-div-left {
    padding: var(--_space---m);
  }

  .cta-04-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .cta-04-div-bot, .cta-05-div-bot {
    height: auto;
  }

  .cta-05-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .cta-06-div-bot {
    height: auto;
  }

  .cta-06-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .cta-07-div-bot {
    height: auto;
  }

  .cta-07-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .card-icon {
    width: 32px;
    height: 32px;
  }

  .card-02-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .card-03-top, .card-04-top {
    grid-column-gap: var(--_space---xs);
    grid-row-gap: var(--_space---xs);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .card-04-bot {
    grid-template-columns: 1fr;
  }

  .form-01-left {
    height: 280px;
  }

  .form {
    width: 100%;
  }

  .form-02-left, .form-03-right, .form-04-right, .form-05-right {
    height: 280px;
  }

  .image {
    width: 32px;
    height: 32px;
  }

  .form-06-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .contacts-01-left, .contacts-02-left, .contacts-03-right, .contacts-04-right {
    height: 280px;
  }

  .reviews-01-top {
    grid-column-gap: var(--_space---xs);
    grid-row-gap: var(--_space---xs);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .reviews-card-icon {
    width: 32px;
    height: 32px;
  }

  .counter-01-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .counter-card-icon {
    width: 24px;
    height: 24px;
  }

  .counter-02-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .counter-01-text, .counter-02-text, .counter-03-text {
    width: 100%;
  }

  .counter-03-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .counter-04-text {
    width: 100%;
  }

  .counter-04-bot {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .intro-01-div-bot {
    height: auto;
  }

  .intro-01-div-top {
    padding: var(--_space---xxl) var(--_space---m) var(--_space---xl);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .card-img.absolute {
    height: 280px;
  }

  .card-img-img {
    width: 100%;
    height: 180px;
  }

  .card-img-img.absolute {
    width: 100%;
  }

  .card-img-02-top, .card-img-04-top {
    grid-column-gap: var(--_space---xs);
    grid-row-gap: var(--_space---xs);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .newsletter-01-div-left {
    border-radius: 0px 0px var(--_space---l) var(--_space---l);
    height: 260px;
  }

  .newsletter-01-div-right {
    padding: var(--_space---m);
  }

  .newsletter-01-cont.cont {
    flex-flow: wrap-reverse;
  }

  .form-newsletter {
    width: 100%;
  }

  .newsletter-03-cont.cont {
    flex-flow: column;
  }

  .newsletter-03-div-left {
    padding: var(--_space---m);
  }

  .newsletter-03-div-right {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---l);
    height: 260px;
  }

  .newsletter-05-div-bot {
    height: auto;
  }

  .newsletter-05-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .newsletter-06-div-bot {
    height: auto;
  }

  .newsletter-06-div-top {
    padding: var(--_space---m);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .accordions-01-cont.cont {
    flex-flow: wrap-reverse;
  }

  .accordions-01-div-left {
    border-radius: 0px 0px var(--_space---l) var(--_space---l);
    height: 260px;
  }

  .accordions-01-div-right {
    padding: var(--_space---m);
  }

  .accordion {
    overflow: visible;
  }

  .accordion-toggle-text.s4 {
    float: none;
    clear: none;
    white-space: normal;
    word-break: normal;
  }

  .accordion-grid {
    width: 100%;
  }

  .accordions-03-cont.cont {
    flex-flow: column;
  }

  .accordions-03-div-left {
    padding: var(--_space---m);
  }

  .accordions-03-div-right {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--_space---l);
    height: 260px;
  }

  .intro-02-div-bot {
    height: auto;
  }

  .intro-02-div-top {
    padding: var(--_space---xxl) var(--_space---m) var(--_space---xl);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .intro-03-div-bot {
    height: auto;
  }

  .intro-03-div-top {
    padding: var(--_space---xxl) var(--_space---m) var(--_space---xl);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .intro-04-div-bot {
    height: auto;
  }

  .intro-04-div-top {
    padding: var(--_space---xxl) var(--_space---m) var(--_space---xl);
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .ini-1-sec {
    background-image: linear-gradient(180deg, black, #000000bf 25%, #000000bf 60%, var(--preto)), url('../uploads/ini-2-img.png');
    background-position: 0 0, 50%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
    height: 80vh;
  }

  .ini-2-div-top-inner {
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
  }

  .ni-3-div-bot {
    grid-template-columns: 1fr;
  }

  .ini-3-h.s2 {
    max-width: none;
  }

  .ini-4-img-1 {
    width: 90%;
  }

  .ini-4-img-2 {
    width: 150px;
    height: 150px;
    top: -30px;
    right: 0%;
  }

  .card-serv-img-1 {
    height: 260px;
  }

  .card-serv-img-2 {
    height: 120px;
  }

  .card-serv-div-3 {
    grid-column-gap: var(--_space---l);
    grid-row-gap: var(--_space---l);
  }

  .ini-6-h.s2 {
    max-width: 300px;
  }

  .column-4, .column {
    padding-left: 0;
    padding-right: 0;
  }

  .ft-link {
    font-size: var(--_size---p);
  }

  .ft-div-3-pp {
    grid-column-gap: var(--_space---m);
    grid-row-gap: var(--_space---m);
  }

  .sm-icon {
    width: var(--_space---l);
    height: var(--_space---l);
  }

  .ft-img {
    height: 300px;
  }

  .sob-3-h.s2 {
    max-width: none;
  }

  .sob-3-img-2 {
    width: 150px;
    height: 150px;
    bottom: -30px;
    right: 0%;
  }

  .sob-3-img-1 {
    width: 90%;
  }

  .ser-3-div {
    flex-flow: column;
    display: flex;
  }

  .ser-4-img {
    height: 240px;
  }

  .ser-4-img.r {
    border-top-right-radius: 0;
    border-bottom-right-radius: var(--_space---xxl);
  }

  .acc-serv-img-1 {
    height: 260px;
  }

  .por-5-h.s2 {
    max-width: 300px;
  }

  .por-5-img-1 {
    width: 90%;
  }

  .pro-3-img {
    height: 260px;
  }

  .pro-4-img {
    height: 240px;
  }

  .fun-2-img-1 {
    width: 90%;
  }

  .fun-2-img-2 {
    width: 150px;
    height: 150px;
    top: -30px;
    right: 0%;
  }

  .fun-3-div-2 {
    grid-template-columns: 1fr;
  }

  .fun-4-div {
    flex-flow: column;
    display: flex;
  }

  .fun-5-line {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .fun-line-p.p, .fun-line-p.p._60 {
    width: 100%;
  }

  .slide-menu {
    max-width: 320px;
    padding-left: 32px;
    padding-right: 32px;
  }

  .slide-menu-link {
    font-weight: 300;
  }
}