body {
  --white: #fff;
  --white-70-op: #ffffffb3;
  --white-10-op: #ffffff1a;
  --black: #000;
  --neutral-100: #090a1a;
  --neutral-70: #464651;
  --neutral-60: #666670;
  --neutral-50: #090a1a80;
  --neutral-40: #090a1a66;
  --neutral-30: #e5e6eb;
  --neutral-20: #f0f1f5;
  --neutral-10: #f5f6fa;
  --primary-light: #8186f7;
  --primary-light-10-op: #8288f71a;
  --primary-light-30: #a8abfe;
  --primary-pure-10: #eaeaf8;
  --primary-pure: hsla(var(--hue-primary), 64%, 54%, 1);
  --primary-pure-70: #6a6ed1;
  --hue-primary: 238;
  --alert-error: #e92c2c;
  --alert-error-10: #fdeaea;
  --alert-warning: #d2af00;
  --alert-warning-10: #fbf7e6;
  --alert-sucess: #008024;
  --alert-sucess-10: #e6f9f0;
}

body, p, h1, h2, ul, li {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

ol {
  padding: 0;
}

a {
  color: #000;
  text-decoration: none;
}

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

* {
  box-sizing: border-box;
  text-rendering: optimizelegibility;
  -webkit-font-smoothing: antialiased;
}

button {
  background: initial;
  border: initial;
  -webkit-appearance: none;
  font-family: Causten, sans-serif;
}

button:active {
  border-style: initial;
}

button:focus {
  outline: initial;
}

button[type="button"], button[type="submit"], button[type="reset"] {
  -webkit-appearance: none;
}

button[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
}

img {
  object-fit: contain;
  max-width: 100%;
  display: block;
}

fieldset {
  -webkit-margin-start: 0px;
  -moz-margin-start: 0px;
  -webkit-margin-end: 0px;
  -moz-margin-end: 0px;
  border: 2px #0000;
  border-image: initial;
  min-inline-size: min-content;
  margin-inline: 0;
}

figure {
  margin-block: 0;
  margin-inline: 0;
  display: block;
}

:focus {
  outline: 0 #0000 !important;
}

input[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
}

input, [type="button"], select {
  -webkit-appearance: none;
}

:root {
  --xl-device: 1920px;
  --lg-device: 1440px;
  --md-device: 1024px;
  --md2-device: 768px;
  --sm-device: 600px;
}

@keyframes volta_menu {
  to {
    -webkit-clip-path: circle(0% at 80% 0);
    clip-path: circle(0% at 80% 0);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }
}

@keyframes opacidade_1 {
  to {
    opacity: 1;
  }
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }

  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

body {
  opacity: 0;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  overflow-x: hidden;
}

body.dcl {
  opacity: 1;
}

.container {
  width: 100%;
  margin: 0 auto;
  padding: 0 1.5rem;
  position: relative;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1100px;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: calc(1216px + 3rem);
  }
}

html {
  --font-base: 100%;
  font-size: var(--font-base);
  overflow-x: hidden;
}

@media (max-width: 1440px) {
  html {
    font-size: calc(var(--font-base)  - 9.25%);
  }
}

@media (max-width: 980px) {
  html {
    font-size: calc(var(--font-base)  - 12.5%);
  }
}

#login {
  background: linear-gradient(90deg, hsla(var(--hue-primary), 100%, 3%, 1) 0%, hsla(var(--hue-primary), 100%, 3%, 1) 100%);
  height: 100vh;
  padding-top: 3.75rem;
  position: relative;
}

@media (max-width: 1660px) {
  #login {
    height: 120vh;
  }
}

@media screen and (max-width: 1024px) {
  #login {
    height: 100vh;
  }
}

@media screen and (max-width: 600px) {
  #login {
    padding: unset;
  }
}

@media (max-width: 400px) {
  #login {
    height: 120vh;
  }
}

#login .ornamento {
  background: linear-gradient(92.74deg, hsla(var(--hue-primary), 68%, 32%, 1) 0%, hsla(var(--hue-primary), 100%, 73%, 1) 100%);
  border-radius: 11.875rem;
  width: 100%;
  max-width: 1800px;
  height: 100%;
  max-height: 394px;
  margin: 0 auto;
}

@media (max-width: 1660px) {
  #login .ornamento {
    width: 90%;
    padding: 3rem;
  }
}

@media screen and (max-width: 1440px) {
  #login .ornamento {
    height: 40%;
  }
}

@media screen and (max-width: 600px) {
  #login .ornamento {
    margin: unset;
    border-radius: 0 0 16px 16px;
    width: 100%;
    height: 349px;
  }
}

#login .ornamento .logo-cliente {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding-top: 4.6875rem;
}

@media (max-width: 1660px) {
  #login .ornamento .logo-cliente {
    padding-top: 2.75rem;
  }
}

@media screen and (max-width: 1440px) {
  #login .ornamento .logo-cliente {
    padding-top: 2rem;
  }
}

#login .orn-sections {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

#login .orn-sections img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#login .logo-ndt {
  position: absolute;
  bottom: 72px;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 1440px) {
  #login .logo-ndt {
    bottom: 64px;
  }
}

#login .form-wrapper {
  border: 1px solid var(--white-10-op);
  -webkit-backdrop-filter: blur(40px);
  backdrop-filter: blur(40px);
  margin: 0 auto;
  background: #00000080;
  border-radius: 8px;
  width: 100%;
  max-width: 428px;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: -210px;
  padding: 2rem;
}

@media screen and (max-width: 1440px) {
  #login .form-wrapper {
    margin-top: -150px;
  }
}

@media screen and (max-width: 600px) {
  #login .form-wrapper {
    width: 327px;
  }
}

#login .form-wrapper .content .title {
  letter-spacing: -.02em;
  color: var(--white);
  margin-bottom: .5rem;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 133%;
}

#login .form-wrapper .content .description {
  letter-spacing: -.02em;
  color: var(--white-70-op);
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

#login .form-wrapper .inputs-wrapper {
  margin-top: 2rem;
}

#login .form-wrapper .inputs-wrapper .input-item:first-child {
  margin-bottom: 1.5rem;
}

#login .form-wrapper .inputs-wrapper .input-item .input {
  border: unset;
  letter-spacing: -.02em;
  color: var(--white);
  background: none;
  border-bottom: 1px solid #ffffff1a;
  width: 100%;
  height: 56px;
  padding: .5rem;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media screen and (max-width: 600px) {
  #login .form-wrapper .inputs-wrapper .input-item .input {
    font-size: .875rem;
    line-height: 171%;
  }
}

#login .form-wrapper .inputs-wrapper .input-item .input::placeholder {
  letter-spacing: -.02em;
  color: var(--white);
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media screen and (max-width: 600px) {
  #login .form-wrapper .inputs-wrapper .input-item .input::placeholder {
    font-size: .875rem;
    line-height: 171%;
  }
}

#login .form-wrapper .inputs-wrapper .input-item .show-password {
  display: flex;
  position: relative;
}

#login .form-wrapper .inputs-wrapper .input-item .show-password .password {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: .5rem;
  transform: translateY(-50%);
}

#login .form-wrapper .inputs-wrapper .input-item .show-password .password svg {
  width: 24px;
  height: 24px;
}

#login .form-wrapper .inputs-wrapper .input-item .show-password .password .hidden {
  display: none;
}

#login .form-wrapper .inputs-wrapper .input-item .show-password .password.mostra .hidden {
  display: block;
}

#login .form-wrapper .inputs-wrapper .input-item .show-password .password.mostra .show {
  display: none;
}

#login .form-wrapper .inputs-wrapper .recuperar-senha {
  margin-top: .5rem;
}

#login .form-wrapper .inputs-wrapper .recuperar-senha a {
  letter-spacing: -.02em;
  color: var(--white-70-op);
  font-size: .75rem;
  font-weight: 300;
  line-height: 167%;
  text-decoration: none;
}

#login .form-wrapper .inputs-wrapper .recuperar-senha a:hover {
  color: var(--white);
  text-decoration: underline;
}

#login .form-wrapper .btn-wrapper {
  margin-top: 3.5rem;
}

#login .form-wrapper .btn-wrapper .btn {
  letter-spacing: -.02em;
  background-color: var(--primary-light-10-op);
  border: 1px solid var(--primary-light);
  color: var(--primary-light);
  cursor: pointer;
  border-radius: 1.75rem;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 56px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 150%;
  transition: background-color .2s ease-in, transform .1s ease-in;
  display: flex;
}

@media screen and (max-width: 600px) {
  #login .form-wrapper .btn-wrapper .btn {
    padding: .5rem 2rem;
    font-size: .875rem;
  }
}

#login .form-wrapper .btn-wrapper .btn:hover {
  box-shadow: 0 .5em .5em -.4em var(--primary-pure);
  color: var(--neutral-10);
  border-color: var(--primary-pure);
  transform: translateY(-.25em) !important;
}

#login .form-wrapper .voltar {
  width: -moz-fit-content;
  width: fit-content;
  margin: 1rem auto 0;
}

#login .form-wrapper .voltar a {
  letter-spacing: -.02em;
  color: var(--white-70-op);
  font-size: .875rem;
  font-weight: 300;
  line-height: 157%;
}

#login .form-wrapper .voltar a:hover {
  color: var(--white);
  text-decoration: underline;
}

#login .form-wrapper .checkbox-wrapper {
  justify-content: space-between;
  align-items: center;
  margin-top: 1.5rem;
  display: flex;
}

#login .form-wrapper .checkbox-wrapper .radio-container {
  align-items: center;
  display: flex;
}

#login .form-wrapper .checkbox-wrapper .radio-container .check-label {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  letter-spacing: -.02em;
  color: var(--white-70-op);
  align-items: center;
  gap: .375rem;
  font-size: .875rem;
  font-weight: 300;
  line-height: 150%;
  display: inline-flex;
}

#login .form-wrapper .checkbox-wrapper .radio-container .check-label .checkbox {
  clip: rect(0px, 0px, 0px, 0px);
  white-space: nowrap;
  border-width: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

#login .form-wrapper .checkbox-wrapper .radio-container .check-label:hover {
  color: var(--white);
  font-weight: 400;
}

#login .form-wrapper .checkbox-wrapper .radio-container .check-label:hover .radio-circle {
  border-color: var(--primary-pure);
  border-width: 2px;
}

#login .form-wrapper .checkbox-wrapper .radio-container .radio-circle {
  border: 1px solid #fff3;
  border-radius: 50%;
  flex-shrink: 0;
  align-items: center;
  width: 20px;
  height: 20px;
  display: inline-flex;
  position: relative;
}

#login .form-wrapper .checkbox-wrapper .radio-container .radio-circle-inner {
  background: var(--primary-pure);
  transition: all .2s ease-out;
  transition-property: width height;
  border-radius: 50%;
  flex-shrink: 0;
  width: 0;
  height: 0;
  margin: auto;
  position: absolute;
  inset: 0;
}

#login .form-wrapper .checkbox-wrapper .radio-container input:checked ~ span {
  border-color: var(--primary-pure);
}

#login .form-wrapper .checkbox-wrapper .radio-container input:checked ~ span i {
  width: 12px;
  height: 12px;
}

#login .form-wrapper .checkbox-wrapper .radio-container.round .radio-circle {
  border-radius: .25rem;
}

#login .form-wrapper .checkbox-wrapper .radio-container.round .radio-circle-inner {
  transition: initial;
  border-radius: initial !important;
}

#login .form-wrapper .checkbox-wrapper .radio-container.round input:checked ~ span i {
  border-radius: initial;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxOSAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE3IDJMNy42MjY4MSAxMkwyIDUuOTk2OTIiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=");
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: auto;
}

#login .form-wrapper .checkbox-wrapper .radio-container.disabled {
  -webkit-user-select: none;
  user-select: none;
}

#login .form-wrapper .checkbox-wrapper .radio-container.disabled .check-label {
  pointer-events: none;
  color: var(--neutral-60);
}

#login .form-wrapper .checkbox-wrapper .radio-container.disabled .radio-circle {
  pointer-events: none;
  opacity: .2;
}

#banner {
  background: #0a0b21;
  height: 100vh;
  overflow: hidden;
}

#banner:after {
  content: "";
  background: radial-gradient(17.97% 24.82% at 72.05% 42.15%, #754a981a 0%, #3244961a 100%);
  width: 100vw;
  height: 100vh;
  display: block;
  position: absolute;
  inset: 0;
}

#banner .video-banner {
  width: 100%;
  height: 100%;
  position: relative;
}

#banner .video-banner video {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#banner .video-banner:after {
  content: "";
  background: linear-gradient(#00000040 0%, #00020d00 52.08%, #02093f80 77.6%, #26004580 100%);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}

#banner .content-banner {
  z-index: 2;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  bottom: 9rem;
}

@media screen and (max-width: 600px) {
  #banner .content-banner {
    width: 244px;
  }
}

#banner .content-banner .subtitle {
  color: #fff;
  letter-spacing: -.02em;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1.2;
  position: relative;
}

@media (max-width: 767px) {
  #banner .content-banner .subtitle {
    font-size: 2rem;
  }
}

@media screen and (max-width: 600px) {
  #banner .content-banner .subtitle {
    font-size: 1.5rem;
  }
}

#banner .content-banner .title {
  color: #fff;
  letter-spacing: -.02em;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.2;
}

@media (max-width: 767px) {
  #banner .content-banner .title {
    font-size: 3rem;
  }
}

@media screen and (max-width: 600px) {
  #banner .content-banner .title {
    font-size: 2rem;
  }
}

#portfolio {
  background: #0a0b21;
  margin-top: -5rem;
  position: relative;
}

@media screen and (max-width: 600px) {
  #portfolio {
    background: linear-gradient(90deg, #00020d 0%, #07000d 100%);
  }
}

#portfolio .orn-sections {
  display: none;
}

@media screen and (max-width: 600px) {
  #portfolio .orn-sections {
    display: block;
  }
}

#portfolio .swiper-portfolio {
  width: 100%;
  display: grid;
}

@media screen and (max-width: 768px) {
  #portfolio .swiper-portfolio {
    margin-top: 12rem;
  }
}

@media screen and (max-width: 600px) {
  #portfolio .swiper-portfolio {
    margin-top: 9rem;
  }
}

#portfolio .swiper-portfolio .swiper-wrapper {
  transition-timing-function: linear;
}

@media (max-width: 1661px) {
  #portfolio .swiper-portfolio .swiper-wrapper {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (min-width: 1024px) {
  #portfolio .swiper-portfolio .swiper-wrapper {
    grid-template-columns: repeat(4, 1fr);
    align-items: center;
    gap: 1rem;
    display: grid;
  }
}

@media screen and (max-width: 600px) {
  #portfolio .swiper-portfolio .swiper-wrapper {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1367px) {
  #portfolio .swiper-portfolio .swiper-wrapper .swiper-slide {
    width: 100%;
  }
}

#portfolio .swiper-portfolio .swiper-wrapper .swiper-slide:first-child {
  grid-column-start: 2;
}

#portfolio .nav-wrapper {
  display: none;
}

@media screen and (max-width: 600px) {
  #portfolio .nav-wrapper {
    display: block;
  }

  #portfolio .nav-wrapper .swiper-pagination-bullet {
    background: var(--primary-pure-10);
  }

  #portfolio .nav-wrapper .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--primary-pure-10);
    border-radius: 1.3125rem;
    width: 1.5rem;
    height: .4375rem;
  }

  #portfolio .cards {
    padding: .5rem 0 4rem 1rem;
  }
}

#portfolio .cards .card-principal {
  background: linear-gradient(90deg, #00020d 0%, #07000d 100%);
  width: 465.5px;
  height: 448px;
  position: absolute;
}

@media (max-width: 1661px) {
  #portfolio .cards .card-principal {
    width: 537px;
  }
}

@media screen and (max-width: 1440px) {
  #portfolio .cards .card-principal {
    width: 467px;
  }
}

@media (max-width: 1367px) {
  #portfolio .cards .card-principal {
    width: 439px;
  }
}

@media (max-width: 1280px) {
  #portfolio .cards .card-principal {
    width: 414px;
  }
}

@media screen and (max-width: 768px) {
  #portfolio .cards .card-principal {
    width: 427px;
    height: 182px;
    top: -12rem;
    left: 50%;
    transform: translateX(-50%);
  }
}

@media screen and (max-width: 600px) {
  #portfolio .cards .card-principal {
    width: 327px;
    height: 152px;
    top: -2rem;
    left: 50%;
    transform: translateX(-50%);
  }
}

#portfolio .cards .card-principal .content {
  position: absolute;
  top: 8rem;
  left: 4rem;
}

@media screen and (max-width: 768px) {
  #portfolio .cards .card-principal .content {
    top: 1.5rem;
    left: 1.5rem;
  }
}

#portfolio .cards .card-principal .content .icon {
  width: 64px;
  height: 64px;
  display: block;
}

@media screen and (max-width: 768px) {
  #portfolio .cards .card-principal .content .icon {
    width: 32px;
    height: 32px;
  }
}

#portfolio .cards .card-principal .content .subtitle {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 120%;
}

@media screen and (max-width: 768px) {
  #portfolio .cards .card-principal .content .subtitle {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 600px) {
  #portfolio .cards .card-principal .content .subtitle {
    font-size: 1.125rem;
    line-height: 144%;
  }
}

#portfolio .cards .card-principal .content .title {
  letter-spacing: -.02em;
  background: linear-gradient(90deg, #5574ff 0%, #c47cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 114%;
}

@media screen and (max-width: 768px) {
  #portfolio .cards .card-principal .content .title {
    font-size: 2rem;
  }
}

@media screen and (max-width: 600px) {
  #portfolio .cards .card-principal .content .title {
    font-size: 1.5rem;
    line-height: 133%;
  }
}

#portfolio .cards .card {
  cursor: pointer;
  width: 100%;
  height: 100%;
  transition: all .3s ease-in;
  position: relative;
}

#portfolio .cards .card .img-card {
  width: 100%;
  height: 448px;
  position: relative;
}

@media (max-width: 1661px) {
  #portfolio .cards .card .img-card {
    width: 100%;
  }
}

@media (max-width: 512px) {
  #portfolio .cards .card .img-card {
    width: 95%;
    height: 350px;
  }
}

@media (max-width: 440px) {
  #portfolio .cards .card .img-card {
    width: 312px;
    height: 312px;
  }
}

#portfolio .cards .card .img-card img, #portfolio .cards .card .img-card video {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#portfolio .cards .card .img-card:after {
  content: "";
  background: linear-gradient(0deg, #00000080, #00000080);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

#portfolio .cards .card .content {
  border-left: 2px solid var(--primary-pure-10);
  background: linear-gradient(270deg, #ffffff01 0%, #ffffff1a 100%);
  width: 100%;
  height: 5.8125rem;
  padding: 1rem;
  transition: all .3s ease-in;
  position: absolute;
  bottom: 0;
  overflow: hidden;
}

#portfolio .cards .card .content .tag {
  color: #fff;
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .1em;
  background: #ffffff1a;
  border: 1px solid #fff;
  border-radius: 18px;
  width: -moz-fit-content;
  width: fit-content;
  padding: .25rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #portfolio .cards .card .content .tag {
    font-size: 10px;
  }
}

#portfolio .cards .card .content .title {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  margin-top: .5rem;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 133%;
}

#portfolio .cards .card .content .description {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  max-width: 412px;
  margin-top: 1rem;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media (max-width: 1661px) {
  #portfolio .cards .card .content .description {
    width: 85%;
    max-width: 100%;
  }
}

@media (max-width: 899px) {
  #portfolio .cards .card.active .content {
    height: 100%;
  }
}

@media (min-width: 900px) {
  #portfolio .cards .card:hover .content {
    height: 100%;
  }
}

#sobre {
  background: #0a0b21;
  padding: 12.5rem 0 7.5rem;
  position: relative;
}

@media screen and (max-width: 768px) {
  #sobre {
    padding: 6rem 0 .875rem;
  }
}

@media screen and (max-width: 600px) {
  #sobre {
    padding: 3rem 0 .875rem;
  }
}

#sobre .content {
  justify-content: space-between;
  display: flex;
}

@media screen and (max-width: 768px) {
  #sobre .content {
    flex-direction: column;
  }
}

#sobre .content .col-1 {
  width: 470px;
}

@media screen and (max-width: 600px) {
  #sobre .content .col-1 {
    width: 306px;
  }
}

#sobre .content .col-1 .tag {
  color: #9b45e2;
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .1em;
  background: #9b45e21a;
  border: 1px solid #9b45e2;
  border-radius: 18px;
  width: -moz-fit-content;
  width: fit-content;
  padding: .25rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #sobre .content .col-1 .tag {
    font-size: 10px;
  }
}

#sobre .content .col-1 .title {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  margin-top: .5rem;
  font-size: 3rem;
  font-weight: 400;
  line-height: 114%;
}

@media screen and (max-width: 600px) {
  #sobre .content .col-1 .title {
    font-size: 2rem;
  }
}

@media (max-width: 1190px) {
  #sobre .content .col-1 .title {
    font-size: 2rem;
  }
}

#sobre .content .col-2 {
  width: 488px;
  margin-top: 1rem;
}

@media screen and (max-width: 768px) {
  #sobre .content .col-2 {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 600px) {
  #sobre .content .col-2 {
    width: 327px;
    margin-top: 1rem;
  }
}

#sobre .content .col-2 .description {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media (max-width: 1190px) {
  #sobre .content .col-2 .description {
    color: var(--neutral-30);
    font-size: .875rem;
  }
}

#sobre .servicos {
  margin-top: 13.8125rem;
}

@media (max-width: 1190px) {
  #sobre .servicos {
    margin-top: 7.5rem;
  }
}

@media screen and (max-width: 768px) {
  #sobre .servicos {
    margin-top: 3.5rem;
  }
}

@media screen and (max-width: 600px) {
  #sobre .servicos {
    margin-top: 4rem;
  }
}

#sobre .servicos .swiper-servicos-sobre {
  border: 1px solid;
  border-width: 0 0 1px;
  border-top-style: none;
  border-top-color: currentColor;
  border-left-style: none;
  border-left-color: currentColor;
  border-right-style: none;
  border-right-color: currentColor;
  border-image-source: linear-gradient(90deg, #324496 0%, #754a98 100%);
  border-image-slice: 1;
}

@media screen and (max-width: 600px) {
  #sobre .servicos .swiper-servicos-sobre {
    padding-bottom: 1rem;
  }
}

#sobre .servicos .swiper-servicos-sobre .swiper-wrapper {
  transition-timing-function: linear;
}

@media screen and (max-width: 600px) {
  #sobre .servicos .swiper-servicos-sobre {
    border: unset;
  }
}

#sobre .servicos .nav-wrapper {
  display: none;
}

@media screen and (max-width: 600px) {
  #sobre .servicos .nav-wrapper {
    display: block;
  }

  #sobre .servicos .nav-wrapper .swiper-pagination-bullet {
    background: var(--primary-pure-10);
  }

  #sobre .servicos .nav-wrapper .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--primary-pure-10);
    border-radius: 1.3125rem;
    width: 1.5rem;
    height: .4375rem;
  }
}

#sobre .servicos .title {
  text-align: center;
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  margin-bottom: 1.5rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 144%;
}

@media screen and (max-width: 600px) {
  #sobre .servicos .title {
    text-align: start;
    font-size: 1rem;
  }
}

#sobre .servicos .items-wrapper .item {
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  min-width: 174px;
  padding: 1.5rem 0;
  display: flex;
}

#sobre .servicos .items-wrapper .item p {
  text-align: center;
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  font-size: 1rem;
  font-weight: 400;
  line-height: 150%;
}

@media screen and (max-width: 600px) {
  #sobre .servicos .items-wrapper .item p {
    color: var(--neutral-30);
    font-size: .875rem;
  }
}

#sobre .servicos .items-wrapper .item .icon {
  width: 24px;
  height: 24px;
}

#clientes {
  background: #0a0b21;
  padding: 12.5rem 0 7.5rem;
  position: relative;
}

@media screen and (max-width: 1440px) {
  #clientes {
    padding: 7.5rem 0;
  }
}

@media screen and (max-width: 600px) {
  #clientes {
    padding: 4.5rem 0 2rem;
  }
}

#clientes .swiper-clientes {
  width: 100%;
  display: grid;
}

#clientes .swiper-clientes .swiper-wrapper {
  transition-timing-function: linear;
}

#clientes .swiper-clientes.linha-2 {
  max-width: 1216px;
}

#clientes .content {
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  display: flex;
}

#clientes .content:after {
  content: "";
  filter: blur(103.5px);
  z-index: -1;
  background: radial-gradient(100% 100% at 100% 0, #581a8a 0%, #1a278a 100%);
  border-radius: 50%;
  width: 335px;
  height: 335px;
  position: absolute;
  bottom: 18.25rem;
  right: 3.875rem;
}

@media screen and (max-width: 600px) {
  #clientes .content:after {
    bottom: 0;
    right: unset;
  }
}

#clientes .content:before {
  content: "";
  filter: blur(103.5px);
  z-index: -1;
  background: radial-gradient(100% 100% at 100% 0, #581a8a 0%, #1a278a 100%);
  border-radius: 50%;
  width: 335px;
  height: 335px;
  position: absolute;
  top: -7.1875rem;
}

@media screen and (max-width: 600px) {
  #clientes .content:before {
    content: "";
    filter: blur(103.5px);
    z-index: -1;
    background: radial-gradient(100% 100% at 100% 0, #581a8a 0%, #1a278a 100%);
    border-radius: 50%;
    width: 231px;
    height: 231px;
    position: absolute;
    left: -7.1875rem;
  }
}

#clientes .content .tag {
  color: #9b45e2;
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .1em;
  background: #9b45e21a;
  border: 1px solid #9b45e2;
  border-radius: 18px;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 1rem;
  padding: .25rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #clientes .content .tag {
    font-size: 10px;
  }
}

#clientes .content .title {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  text-align: center;
  width: 376px;
  margin-bottom: 4rem;
  font-size: 3rem;
  font-weight: 400;
  line-height: 114%;
}

@media screen and (max-width: 600px) {
  #clientes .content .title {
    width: 70%;
    margin-bottom: 2rem;
    font-size: 2rem;
  }
}

#clientes .logo-clientes {
  gap: 1rem;
  max-width: 1524px;
  margin: 0 auto;
  display: grid;
}

#clientes .logo-clientes .item {
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  background: #ffffff0d;
  border: 1px solid #ffffff1a;
  border-radius: 8px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 123px;
  display: flex;
}

@media (max-width: 1661px) {
  #clientes .logo-clientes .item {
    width: auto;
  }
}

@media screen and (max-width: 600px) {
  #clientes .logo-clientes .item {
    height: 80px;
    padding: .5rem 1.2188rem;
  }
}

#contato {
  background: #0a0b21;
  padding: 13.25rem 0;
  position: relative;
}

@media screen and (max-width: 1440px) {
  #contato {
    padding: 7.5rem 0;
  }
}

@media screen and (max-width: 600px) {
  #contato {
    padding: 3rem 0 3.5rem;
  }
}

#contato .content-wrapper {
  justify-content: space-between;
  display: flex;
}

@media screen and (max-width: 768px) {
  #contato .content-wrapper {
    flex-direction: column;
  }
}

#contato .content-wrapper .col-1 {
  max-width: 591px;
}

@media screen and (max-width: 1440px) {
  #contato .content-wrapper .col-1 {
    width: 80%;
  }
}

#contato .content-wrapper .col-1 .tag {
  color: #9b45e2;
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .1em;
  background: #9b45e21a;
  border: 1px solid #9b45e2;
  border-radius: 18px;
  width: -moz-fit-content;
  width: fit-content;
  padding: .25rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .tag {
    font-size: 10px;
  }
}

#contato .content-wrapper .col-1 .title {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  margin-top: .5rem;
  font-size: 3rem;
  font-weight: 400;
  line-height: 114%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .title {
    font-size: 2rem;
  }
}

@media (max-width: 1367px) {
  #contato .content-wrapper .col-1 .title {
    width: 85%;
  }
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .title {
    width: 235px;
    margin-top: 1rem;
  }
}

#contato .content-wrapper .col-1 .content {
  margin-top: 4rem;
}

#contato .content-wrapper .col-1 .content .contato-item {
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
  display: flex;
}

#contato .content-wrapper .col-1 .content .contato-item .icon-contato {
  width: 32px;
  height: 32px;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .content .contato-item .icon-contato {
    width: 24px;
    height: 24px;
  }
}

#contato .content-wrapper .col-1 .content .contato-item .info {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

#contato .content-wrapper .col-1 .content .contato-item .info span {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--primary-pure-10);
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .content .contato-item .info span {
    font-size: .625rem;
  }
}

#contato .content-wrapper .col-1 .content .contato-item .info a {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
  display: block;
  position: relative;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-1 .content .contato-item .info a {
    font-size: .875rem;
  }
}

#contato .content-wrapper .col-1 .content .contato-item .info a:after {
  content: "";
  background-color: #0000;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(.1, #0000), color-stop(.8, #4557e2), color-stop(.98, #4557e2));
  background-image: linear-gradient(left, transparent 10%, #4557e2 80%, #4557e2 98%);
  border-radius: .5rem;
  width: 0;
  height: 2.5px;
  transition: width .3s;
  position: absolute;
  bottom: 0;
  left: 0;
}

#contato .content-wrapper .col-1 .content .contato-item .info a:hover:after {
  width: 100%;
}

#contato .content-wrapper .col-2 {
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  background: #ffffff0d;
  border: 1px solid #ffffff1a;
  border-radius: .25rem;
  width: 528px;
  padding: 2rem 1.5rem;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-2 {
    align-self: center;
    width: 100%;
    padding: 1.5rem 1rem;
  }
}

#contato .content-wrapper .col-2 h2 {
  letter-spacing: -.02em;
  color: var(--primary-pure-10);
  margin-bottom: 2rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-2 h2 {
    font-size: 1rem;
  }
}

#contato .content-wrapper .col-2 .content-form {
  flex-direction: column;
  gap: 1rem;
  display: flex;
}

#contato .content-wrapper .col-2 .content-form input {
  color: var(--primary-pure-10);
  letter-spacing: -.02em;
  background: none;
  border: none;
  border-bottom: 1px solid #ffffff1a;
  width: 100%;
  height: 56px;
  padding: 1rem .5rem;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

#contato .content-wrapper .col-2 .content-form input::placeholder {
  color: var(--primary-pure-10);
  letter-spacing: -.02em;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-2 .content-form input::placeholder {
    font-size: .875rem;
    line-height: 157%;
  }
}

#contato .content-wrapper .col-2 .content-form textarea {
  color: var(--primary-pure-10);
  letter-spacing: -.02em;
  background: none;
  border: none;
  border-bottom: 1px solid #ffffff1a;
  width: 100%;
  padding: .5rem;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

#contato .content-wrapper .col-2 .content-form textarea::placeholder {
  color: var(--primary-pure-10);
  letter-spacing: -.02em;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 150%;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-2 .content-form textarea::placeholder {
    font-size: .875rem;
    line-height: 157%;
  }
}

#contato .content-wrapper .col-2 .content-form .btn {
  border: 1px solid var(--primary-pure);
  letter-spacing: -.02em;
  color: var(--primary-pure);
  cursor: pointer;
  background-color: #9b45e21a;
  border-radius: 28px;
  align-self: flex-start;
  margin-top: 2rem;
  padding: 1rem 2rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 150%;
  transition: background-color .2s ease-in, transform .1s ease-in;
}

@media screen and (max-width: 600px) {
  #contato .content-wrapper .col-2 .content-form .btn {
    padding: .5rem 2rem;
    font-size: .875rem;
  }
}

#contato .content-wrapper .col-2 .content-form .btn:hover {
  box-shadow: 0 .5em .5em -.4em var(--primary-pure);
  color: var(--primary-light);
  border-color: var(--primary-pure);
  transform: translateY(-.25em) !important;
}

#contato .content-wrapper .col-2 .content-form .btn.disabled {
  color: var(--primary-pure-10);
  opacity: .5;
  pointer-events: none;
  background: #333;
  border-color: #0000;
}

#footer {
  background: #0a0b21;
  padding-bottom: 2.25rem;
  position: relative;
}

#footer .footer-wrapper {
  justify-content: space-between;
  display: flex;
}

@media screen and (max-width: 600px) {
  #footer .footer-wrapper {
    flex-direction: column;
    gap: 1rem;
  }

  #footer .footer-wrapper .copy {
    align-self: center;
    width: 206px;
  }
}

#footer .footer-wrapper .copy h3 {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--primary-pure-10);
  margin-bottom: 1rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 133%;
}

@media screen and (max-width: 600px) {
  #footer .footer-wrapper .copy h3 {
    text-align: center;
    font-size: .625rem;
  }

  #footer .footer-wrapper .logo {
    align-self: center;
  }
}

main {
  overflow: hidden;
}

.body__comming_soon .page__comming_soon {
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  position: relative;
  display: flex !important;
}

.body__comming_soon .page__comming_soon .wrapper-comming-soon {
  flex: 1;
  display: flex;
  position: relative;
}

.body__home .page__home {
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  position: relative;
  display: flex !important;
}

.body__home .page__home .wrapper-home {
  flex: 1;
  display: flex;
  position: relative;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .wrapper-home {
    flex-direction: column;
  }
}

.body__home .page__home > .container {
  flex: 1;
  margin: auto;
}

.body__home .page__home .content-page {
  padding: 2rem 0 1.875rem;
}

.body__home .page__home .content-page .logo {
  max-width: 39.5rem;
  margin-top: 1rem;
}

.body__home .page__home .content-page .logo img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .content-page .logo {
    max-width: 12.5rem;
  }
}

.body__home .page__home .content-page .box_title {
  margin-top: 4.25rem;
}

.body__home .page__home .content-page .box_title .typed-cursor {
  letter-spacing: -.02em;
  font-family: Causten, sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  color: #4aa69a !important;
  font-size: clamp(2rem, 3vw, 4.5rem) !important;
}

@media screen and (max-width: 1440px) {
  .body__home .page__home .content-page .box_title {
    margin-top: 3rem;
  }
}

@media screen and (max-width: 768px) {
  .body__home .page__home .content-page .box_title {
    margin-top: 2rem;
  }
}

.body__home .page__home .content-page .title {
  letter-spacing: -.02em;
  color: #090a1a;
  max-width: 18ch;
  font-family: Causten, sans-serif;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  font-size: clamp(2rem, 4vw, 4.5rem) !important;
}

.body__home .page__home .content-page .title .highlight {
  font-weight: 500;
}

.body__home .page__home .content-page .title .typed-cursor {
  color: #4aa69a !important;
}

.body__home .page__home .content-page .head-text {
  letter-spacing: -.02em;
  color: #252641;
  font-family: Causten, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
}

.body__home .page__home .content-page .box-text {
  margin-top: 1.5rem;
}

.body__home .page__home .content-page .box-text p {
  letter-spacing: -.36px;
  color: #090a1a;
  max-width: 45ch;
  font-family: Causten, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.625rem;
  font-size: clamp(1rem, 3vw, 1.125rem) !important;
}

.body__home .page__home .box-infos {
  align-items: center;
  gap: 1.5rem;
  margin-top: 2rem;
  display: flex;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .box-infos {
    flex-direction: column;
  }
}

.body__home .page__home .box-infos .label-info {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.body__home .page__home .box-infos .label-info p {
  letter-spacing: -.36px;
  color: #090a1a;
  font-family: Causten, sans-serif;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
}

.body__home .page__home .box-infos .label-info .label-info-main {
  align-items: center;
  gap: .5rem;
  height: 2.5rem;
  display: flex;
}

.body__home .page__home .box-infos .label-info .label-info-main img {
  width: 1.625rem;
  height: 1.625rem;
  transform: translateY(-.25rem);
}

.body__home .page__home .box-infos .label-info .label-info-main p span {
  color: #4aa69a;
  font-size: 1.375rem;
}

.body__home .page__home .box-partners {
  flex-direction: column;
  gap: 1rem;
  margin-top: 4.5rem;
  display: flex;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .box-partners {
    gap: 1.5rem !important;
  }
}

.body__home .page__home .box-partners .box-grid {
  flex-wrap: wrap;
  align-items: center;
  gap: .8812rem 3.5238rem;
  display: flex;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .box-partners .box-grid {
    gap: 1.5rem 3.5238rem;
  }
}

.body__home .page__home .box-partners .item-partners {
  flex-direction: column;
  justify-content: space-between;
  align-items: start;
  display: flex;
}

.body__home .page__home .box-partners .item-partners .header-partners p {
  letter-spacing: -.02em;
  color: #090a1a;
  font-family: Causten, sans-serif;
  font-size: .9911rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
}

.body__home .page__home .box-partners .item-partners .main-partners .wrapper-all-partners {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1.3213rem;
  display: flex;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .box-partners .item-partners .main-partners img {
    height: 3rem;
  }
}

.body__home .page__home .slide-partners {
  background: #fff;
  border-top: 1px solid #4aa69a1a;
  padding: 1rem 0;
}

.body__home .page__home .slide-partners .card-partners {
  border: 1px solid #090a1a1a;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 15rem;
  height: 4.5rem;
  padding: .25rem;
  display: flex;
}

.body__home .page__home .slide-partners .swiper .swiper-slide {
  width: max-content !important;
}

.body__home .page__home .background {
  z-index: -1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.body__home .page__home .background figure {
  z-index: 0;
  width: 100%;
  height: 100%;
  position: relative;
}

.body__home .page__home .background figure img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.body__home .page__home .background .gradient {
  z-index: 1;
  background: linear-gradient(to right, #fff 50%, #0000);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .background .gradient {
    background: linear-gradient(to right, #fff 55%, #fff);
  }
}

.body__home .page__home .social-network-list {
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  width: max-content;
  height: 100%;
  padding: 0 1.5rem;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 768px) {
  .body__home .page__home .social-network-list {
    width: inherit;
    position: inherit;
    flex-direction: row;
    padding-top: 1.75rem;
  }
}

.body__home .page__home .social-network-list svg {
  transition: transform .3s ease-in;
}

.body__home .page__home .social-network-list svg path {
  transition: filg .3s linear, stroke .3s linear;
}

.body__home .page__home .social-network-list svg:hover {
  transform: translateY(-.5rem);
}

.body__home .page__home .social-network-list svg:hover path {
  fill: #4aa69a;
  stroke: #fff;
}

/*# sourceMappingURL=style.css.map */
