:root {
  --purple-ink: #09070d;
  --purple-card: #18121f;
  --purple-card-strong: #21172a;
  --purple-muted: #5e4772;
  --purple-muted-soft: #82748e;
  --purple-paper: #ede9f4;
  --purple-paper-soft: #e3ddeb;
  --purple-paper-muted: #d8d1e0;
  --purple-paper-strong: #c9c1d6;
  --purple-accent: #7a4ef0;
  --purple-accent-soft: #d8c8ff;
  --purple-line: rgba(216, 200, 255, 0.14);
  --purple-line-strong: rgba(216, 200, 255, 0.24);

  --swatch--black-400: var(--purple-ink);
  --swatch--black-300: var(--purple-card-strong);
  --swatch--black-200: var(--purple-muted);
  --swatch--black-100: var(--purple-muted-soft);
  --swatch--black-50: #afa5b9;
  --swatch--beige-100: var(--purple-paper);
  --swatch--beige-200: var(--purple-paper-soft);
  --swatch--beige-300: var(--purple-paper-muted);
  --swatch--beige-400: var(--purple-paper-strong);
  --swatch--card-bg: var(--purple-card);
  --swatch--brand-text: var(--purple-paper);
  --_theme---selection--background: var(--purple-accent);
  --_theme---selection--text: #ffffff;
}

body {
  background-color: var(--purple-ink);
  color: var(--purple-paper);
}

::selection {
  background-color: var(--purple-accent);
  color: #ffffff;
}

.purple_nav_logo,
.purple_hero_icon,
.purple_hero_logo {
  color: #fff !important;
  display: block;
}

.purple_nav_logo path,
.purple_hero_icon path,
.purple_hero_logo path {
  fill: currentColor !important;
}

.navbar_home {
  display: inline-flex;
  align-items: center;
}

.navbar_home .purple_nav_logo {
  width: clamp(5.25rem, 7.2vw, 8.75rem);
  height: auto;
}

.hero_home_content .purple_hero_icon {
  width: clamp(3.15rem, 5.1vw, 4.85rem);
  max-width: 4.85rem;
  height: auto;
  margin-inline: auto;
}

.hero_home_content_p {
  text-wrap: pretty;
  color: var(--purple-paper);
  text-shadow: 0 1px 18px rgba(9, 7, 13, 0.58);
}

.about_modal_p,
.about_values_p,
.problems_home_heading,
.gap_home_p,
.works_home_p,
.works_home_result_label,
.services_home_message,
.process_home_content-p,
.faq_home_heading,
.accordion_css_bottom_rich,
.faq_home_p,
.cta_home_testimonial_message {
  text-wrap: pretty;
}

.problems_home_heading,
.gap_home_inner_heading,
.works_home_heading,
.cta_home_heading {
  text-wrap: balance;
}

.works_home_p,
.services_home_message,
.process_home_content-p,
.accordion_css_bottom_rich p {
  max-width: 62ch;
}

.navbar_links .is-soon {
  display: none !important;
}

@media screen and (min-width: 768px) {
  .navbar_contain {
    position: relative;
  }

  .navbar_links {
    position: absolute !important;
    top: 50%;
    left: 50% !important;
    transform: translate(-50%, -50%);
    justify-self: center !important;
    width: max-content;
  }

  .navbar_links_ul {
    justify-content: center !important;
  }
}

.hero_home_wrap .hero_home_bottom {
  align-items: center;
  text-align: center;
}

.hero_home_wrap {
  --purple-hero-logo-width: clamp(18rem, 42vw, 34rem);
  --purple-hero-logo-half-height: calc(var(--purple-hero-logo-width) * 0.2717);
  --purple-hero-center-lift: clamp(2rem, 4.7vw, 3.3rem);
  --purple-hero-anchor-y: calc(50% - var(--purple-hero-center-lift));
}

.hero_home_wrap .hero_home_main {
  position: relative;
  justify-content: center;
  align-items: center;
}

.hero_home_wrap .hero_home_bottom {
  position: absolute;
  z-index: 2;
  inset-inline: 0;
  top: var(--purple-hero-anchor-y);
  width: 100%;
  transform: translateY(-50%);
}

.hero_home_wrap .hero_home_content {
  position: absolute;
  z-index: 3;
  top: calc(var(--purple-hero-anchor-y) + var(--purple-hero-logo-half-height) + clamp(1rem, 2vw, 1.75rem));
  left: 50%;
  width: min(43ch, calc(100vw - 2rem));
  height: auto;
  min-height: 0;
  transform: translateX(-50%);
}

.hero_home_wrap .hero_home_content_svg {
  width: clamp(2.1rem, 3.1vw, 3.35rem);
  max-width: 3.35rem;
  margin-bottom: clamp(0.65rem, 1.2vw, 1rem);
}

.hero_home_wrap .hero_home_content_p {
  max-width: 43ch;
  margin-top: 0;
  margin-bottom: 0;
}

.hero_home_wrap .purple_hero_logo {
  opacity: 1;
  width: var(--purple-hero-logo-width);
  height: auto;
  max-height: min(34vh, 21rem);
  margin-inline: auto;
  filter: drop-shadow(0 1.5rem 3rem rgba(0, 0, 0, 0.36));
  transform: translateX(clamp(-0.35rem, -0.3vw, -0.15rem));
  transform-origin: center bottom;
}

.hero_home_wrap .purple_hero_logo path {
  transform-box: fill-box;
  transform-origin: center bottom;
  will-change: transform, opacity;
}

.u-theme-light,
.works_home_wrap.u-theme-light {
  --_theme---background: var(--purple-paper);
  --_theme---text: var(--purple-ink);
  --_theme---border: rgba(9, 7, 13, 0.18);
  background-color: var(--purple-paper) !important;
  color: var(--purple-ink);
}

.u-theme-dark,
.problems_home_wrap,
.services_home_wrap,
.gap_home_wrap,
.cta_home_wrap,
.footer_wrap,
.footer_wrap_main,
.menu_contain {
  background-color: var(--purple-ink) !important;
  color: var(--purple-paper);
}

.transition_screen,
.hero_home_fade,
.hero_home_overlay {
  background-color: var(--purple-ink) !important;
}

.hero_home_wrap {
  background-color: #07050a;
}

.hero_home_cover {
  background:
    radial-gradient(circle at 50% 44%, rgba(66, 50, 82, 0.31), transparent 38%),
    radial-gradient(circle at 52% 82%, rgba(92, 55, 172, 0.12), transparent 46%),
    #07050a;
}

.hero_home_img {
  opacity: 0.28 !important;
  filter: grayscale(0.28) saturate(0.66) hue-rotate(18deg) contrast(1.12) brightness(0.64);
  mix-blend-mode: screen;
}

.hero_canvas_item {
  opacity: 0.88 !important;
  filter: saturate(0.98) brightness(0.86);
  mix-blend-mode: screen;
}

.hero_home_gradient {
  height: clamp(7rem, 14vh, 11rem);
  background-image: linear-gradient(180deg, rgba(7, 5, 10, 0), #07050a) !important;
}

.footer_middle_webflow {
  display: none !important;
}

.about_modal_video_wrap,
.works_home_cover,
.works_home_visual,
.process_home_video,
.cta_home_cover {
  position: relative;
  overflow: hidden;
  background: var(--purple-card);
}

.about_modal_video,
.works_home_image,
.reel_home_video video,
.process_home_video video,
.cta_home_visual {
  opacity: 0 !important;
}

.about_modal_video_wrap::before,
.works_home_cover::after,
.works_home_visual::after,
.process_home_video::after,
.cta_home_cover::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center;
  pointer-events: none;
}

.about_modal_video_wrap::before,
.process_home_video::after,
.cta_home_cover::after {
  background-image: url("/assets/purple/icone-purple.svg");
  background-size: min(38%, 9rem);
  filter: brightness(0) invert(1);
  opacity: 0.88;
}

.works_home_cover::after,
.works_home_visual::after {
  background-image: url("/assets/purple/logo-purple.svg");
  background-size: min(55%, 18rem);
  filter: brightness(0) invert(1);
  opacity: 0.92;
}

.process_home_video::before,
.works_home_cover::before,
.works_home_visual::before,
.cta_home_cover::before,
.about_modal_video_wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, var(--purple-line) 1px, transparent 1px),
    linear-gradient(180deg, var(--purple-line) 1px, transparent 1px),
    var(--purple-card);
  background-size: 4.5rem 4.5rem;
}

.process_home_video::before,
.process_home_video::after {
  content: none !important;
  display: none !important;
}

.process_home_video video {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1 !important;
  object-fit: cover;
  position: relative;
  z-index: 1;
}

.g_eyebrow_circle,
.problem_stats_progress-start,
.works_micrographic_circle {
  background-color: var(--purple-accent-soft) !important;
  box-shadow: 0 0 18px rgba(122, 78, 240, 0.26);
}

.problem_stats_line,
.problem_stats_progress-end,
.gap_home_line,
.gap_home_line_horizontal,
.works_micrographic_line {
  background-color: var(--purple-line-strong) !important;
}

.works_home_item {
  border-bottom-color: rgba(9, 7, 13, 0.2) !important;
}

.works_home_micrographic_index {
  border-color: rgba(9, 7, 13, 0.32) !important;
}

.problems_home_headshot,
.services_home_headshot {
  object-fit: cover;
  object-position: center;
}

.problems_home_headshot {
  border-radius: 999px;
  border: 1px solid rgba(237, 233, 244, 0.18);
  filter: saturate(0.88) contrast(1.04) brightness(0.9);
}

.services_home_headshot[src$=".svg"] {
  padding: 0.35rem;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.72;
}

.services_home_service_image,
.services_home_img,
.services_home_img-list,
.services_home_img-collection,
.services_home_img-item {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.motion_home_wrap {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 18%, rgba(122, 78, 240, 0.16), transparent 28rem),
    linear-gradient(180deg, #0b0710 0%, var(--purple-ink) 58%, #060409 100%);
  color: var(--purple-paper);
  padding: clamp(5.5rem, 10vw, 9.5rem) clamp(1rem, 4vw, 3.5rem);
}

.motion_home_inner {
  position: relative;
  width: min(100%, 86rem);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.54fr);
  align-items: center;
  gap: clamp(2.75rem, 6vw, 7rem);
}

.motion_home_text {
  max-width: 48rem;
}

.motion_home_heading {
  max-width: 9.5ch;
  margin: 0;
  color: var(--purple-paper);
  font-size: clamp(4.4rem, 8.4vw, 7.35rem) !important;
  line-height: 0.88 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

.motion_home_heading_line {
  display: block;
}

.motion_home_p {
  max-width: 48ch;
  margin: clamp(1.25rem, 2vw, 1.9rem) 0 0;
  color: rgba(237, 233, 244, 0.78);
  text-wrap: pretty;
}

.motion_home_note {
  max-width: 44ch;
  margin: clamp(0.85rem, 1.4vw, 1.25rem) 0 0;
  color: rgba(237, 233, 244, 0.56);
  text-wrap: pretty;
}

.motion_home_media {
  justify-self: center;
  width: min(100%, 25.5rem);
}

.motion_home_video_shell {
  position: relative;
  width: 100%;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border: 1px solid rgba(237, 233, 244, 0.18);
  background: #050309;
}

.motion_home_video_shell::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(9, 7, 13, 0.02), rgba(9, 7, 13, 0.22)),
    radial-gradient(circle at 50% 34%, transparent 0%, rgba(82, 52, 122, 0.18) 100%);
  mix-blend-mode: multiply;
}

.motion_home_video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #050309;
}

@media screen and (max-width: 991px) {
  .motion_home_inner {
    grid-template-columns: 1fr;
  }

  .motion_home_text {
    max-width: 43rem;
  }

  .motion_home_heading {
    max-width: 9.5ch;
  }

  .motion_home_media {
    width: min(74vw, 23rem);
  }
}

.gap_home_inner {
  min-height: 100svh;
  height: 100%;
  padding-block: clamp(5rem, 8vw, 7rem);
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: clamp(1.25rem, 2.6vw, 2.5rem);
}

.gap_home_inner_content {
  position: absolute;
  z-index: 3;
  order: 2 !important;
  width: min(92vw, 68rem);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.12em;
  text-align: center;
  top: 50%;
  left: 50%;
  right: auto;
  bottom: auto;
  transform: translateY(-50%);
  translate: -50% 0;
}

.gap_home_eyebrow {
  display: none !important;
}

.gap_home_inner_heading-contain {
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  display: block !important;
  text-align: center !important;
}

.gap_home_inner_heading {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  font-size: clamp(4rem, 8.6vw, 7.75rem) !important;
  line-height: 0.88 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-wrap: balance;
  white-space: nowrap;
}

.gap_home_inner_heading-contain.is-left {
  transform: translate(-30vw);
}

.gap_home_inner_heading-contain.is-right {
  transform: translate(30vw);
}

.gap_home_cover {
  display: block !important;
  order: 1 !important;
  position: absolute !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  left: 50% !important;
  z-index: 2;
  width: clamp(11.5rem, 20vw, 18rem) !important;
  height: auto !important;
  aspect-ratio: 4 / 5;
  max-width: 36vw;
  border: 1px solid rgba(237, 233, 244, 0.12);
  opacity: 0.9;
  filter: grayscale(0.08) saturate(0.92) hue-rotate(8deg) brightness(0.92) contrast(1.06);
  mix-blend-mode: normal;
  pointer-events: none;
  transform: translate(-50%, -50%);
}

.gap_home_cover .gap_home_gradient {
  z-index: 4;
  background:
    linear-gradient(180deg, rgba(9, 7, 13, 0.04), rgba(9, 7, 13, 0.22)),
    rgba(25, 14, 35, 0.18);
}

.gap_home_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gap_home_bottom {
  order: 3 !important;
  position: absolute !important;
  right: auto !important;
  bottom: clamp(2.5rem, 6vh, 4.75rem) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 4;
  width: min(46rem, 88vw) !important;
  margin-top: 0 !important;
}

.gap_home_p {
  width: 100%;
  max-width: min(44rem, 90vw) !important;
  margin-inline: auto;
  text-align: center;
  font-size: clamp(1rem, 1.25vw, 1.25rem) !important;
  line-height: 1.32 !important;
}

.cta_home_bottom,
.cta_home_proof,
.cta_home_wrap .cta_home_cover {
  display: none !important;
}

.cta_home_wrap {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #07050a !important;
}

.cta_home_bg_video,
.cta_home_bg_scrim {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.cta_home_bg_video {
  z-index: 0;
  display: block;
  object-fit: cover;
  object-position: 48% 47%;
  opacity: 0.9;
  filter: saturate(0.96) contrast(1.02) brightness(0.96);
}

.cta_home_bg_scrim {
  z-index: 1;
  background:
    radial-gradient(circle at 18% 48%, rgba(255, 183, 95, 0.12), transparent 23rem),
    linear-gradient(90deg, rgba(7, 5, 10, 0.62) 0%, rgba(7, 5, 10, 0.28) 44%, rgba(7, 5, 10, 0.5) 100%),
    linear-gradient(180deg, rgba(7, 5, 10, 0.16), rgba(7, 5, 10, 0.46));
}

.cta_home_contain {
  position: relative;
  z-index: 2;
  min-height: auto;
  padding-bottom: clamp(4rem, 8vw, 7rem);
}

.footer-wrap-dark,
.footer_canvas_bottom {
  display: none !important;
}

.g_btn_main {
  background-color: var(--purple-paper) !important;
  color: var(--purple-ink) !important;
}

.g_btn_aside_bg {
  background-color: var(--purple-ink) !important;
}

[data-btn-default]:hover .g_btn_main,
.g_btn_main:hover {
  background-color: var(--purple-accent-soft) !important;
}

[data-btn-default]:hover .g_btn_aside_bg,
.g_btn_main:hover .g_btn_aside_bg {
  background-color: var(--purple-accent) !important;
}

.faq_home_wrap,
.menu_popup_item {
  background-color: var(--purple-card) !important;
}

.about_modal_wrap {
  background-color: var(--purple-paper) !important;
  color: var(--purple-ink) !important;
}

.about_overlay_close,
.menu_overlay_close {
  background-color: rgba(9, 7, 13, 0.72) !important;
}

[data-accordion-status="active"] .accordion_css_square {
  background-color: var(--purple-accent) !important;
}

[data-accordion-status="active"] .accordion_css_item_bg {
  background-color: var(--purple-paper) !important;
}

@media (hover: hover) and (pointer: fine) {
  .accordion_css_item_top:hover .accordion_css_square {
    background-color: var(--purple-accent) !important;
  }

  .accordion_css_item_top:hover .accordion_css_item_bg {
    background-color: var(--purple-paper) !important;
  }
}

.process_heading_svg {
  display: none !important;
}

.process_home_wrap::before {
  content: "Nosso processo";
  display: block;
  color: currentColor;
  font-family: var(--_typography---font--secondary-family);
  font-size: clamp(3.35rem, 10vw, 8.8rem);
  font-weight: var(--_typography---font--tertiary-medium);
  line-height: 0.88;
  letter-spacing: 0;
  text-transform: uppercase;
  text-wrap: balance;
  max-width: 9.5ch;
  margin-inline: auto;
  padding: clamp(4rem, 9vw, 9rem) 0 clamp(2rem, 5vw, 4rem);
}

.footer_credit_link {
  color: currentColor;
  text-decoration: none;
}

.footer_credit_link .footer_socials_text {
  text-wrap: balance;
}

.footer_credit_link:hover .footer_socials_text,
.footer_credit_link:focus-visible .footer_socials_text {
  color: var(--purple-accent-soft);
}

.menu_wrap .footer_nav_text {
  width: 100%;
  justify-content: space-between;
  overflow: hidden;
}

.menu_wrap .footer_nav_span {
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.35, 1), opacity 0.32s cubic-bezier(0.16, 1, 0.35, 1);
}

.menu_wrap .footer_nav_span.is-arrow {
  filter: none !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

.menu_wrap .footer_nav_text:hover .footer_nav_span.is-arrow,
.menu_wrap .footer_nav_text:focus-visible .footer_nav_span.is-arrow {
  transform: translateX(0.35rem);
}

@media screen and (max-width: 479px) {
  .navbar_wrap {
    background: rgba(9, 7, 13, 0.9);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }

  .navbar_home .purple_nav_logo {
    width: 5rem;
  }

  .hero_home_content .purple_hero_icon {
    width: 2.6rem;
  }

  .hero_home_wrap {
    --purple-hero-logo-width: min(76vw, 18rem);
  }

  .hero_home_wrap .hero_home_content {
    top: calc(50% + var(--purple-hero-logo-half-height) + 1rem);
    width: min(32ch, calc(100vw - 2rem));
  }

  .hero_home_bottom .purple_hero_logo {
    width: var(--purple-hero-logo-width);
    max-height: 12rem;
    transform: none;
  }

  .works_home_p,
  .services_home_message,
  .process_home_content-p,
  .accordion_css_bottom_rich p {
    max-width: 100%;
  }

  .cta_home_heading_contain {
    max-width: calc(100vw - 2rem);
  }

  .cta_home_heading {
    font-size: clamp(3.15rem, 13.5vw, 4.2rem) !important;
    line-height: 0.88 !important;
  }

  .cta_heading_inner {
    display: flex !important;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 0.18em;
    transform: none !important;
  }

  .cta_heading_inner .cta_home_heading:not(.is-arrow) {
    flex: 1 1 100%;
  }

  .gap_home_inner {
    min-height: auto;
    height: auto;
    padding-block: 7rem 5rem;
    justify-content: center !important;
    gap: 1.75rem;
  }

  .gap_home_inner_content {
    position: relative;
    inset: auto;
    translate: none;
    transform: none;
    width: calc(100vw - 2rem);
  }

  .gap_home_inner_heading {
    font-size: clamp(2.7rem, 11.8vw, 3.25rem) !important;
    line-height: 0.92 !important;
    white-space: normal !important;
  }

  .gap_home_cover {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    order: 2 !important;
    width: min(18rem, 76vw) !important;
    height: auto !important;
    aspect-ratio: 4 / 5;
    max-width: 76vw;
    margin-inline: auto;
    opacity: 0.98;
    filter: grayscale(0.04) saturate(0.98) hue-rotate(6deg) brightness(1) contrast(1.04);
  }

  .gap_home_cover .gap_home_gradient {
    background:
      linear-gradient(180deg, rgba(9, 7, 13, 0.02), rgba(9, 7, 13, 0.1)),
      rgba(25, 14, 35, 0.06);
  }

  .gap_home_p {
    max-width: min(35ch, calc(100vw - 2rem));
    font-size: clamp(0.98rem, 4.15vw, 1.08rem) !important;
    line-height: 1.38 !important;
  }

  .gap_home_bottom {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: min(34ch, calc(100vw - 2rem)) !important;
  }

  .motion_home_wrap {
    padding: 13.5rem 1rem 4.75rem;
  }

  .motion_home_heading {
    max-width: 100%;
    font-size: clamp(3.2rem, 14vw, 4rem) !important;
    line-height: 0.9 !important;
  }

  .motion_home_p,
  .motion_home_note {
    max-width: min(29ch, calc(100vw - 2rem));
    overflow-wrap: break-word;
  }

  .motion_home_media {
    width: min(86vw, 20rem);
  }

  .cta_home_bg_video {
    object-position: 47% 50%;
    opacity: 0.86;
    filter: saturate(0.98) contrast(1.02) brightness(0.94);
  }

  .cta_home_bg_scrim {
    background:
      linear-gradient(180deg, rgba(7, 5, 10, 0.28), rgba(7, 5, 10, 0.56)),
      linear-gradient(90deg, rgba(7, 5, 10, 0.48), rgba(7, 5, 10, 0.2) 52%, rgba(7, 5, 10, 0.38));
  }

  .menu_wrap .footer_nav_text {
    padding-block: 0.2rem;
    border-bottom: 1px solid var(--purple-line);
  }

  .menu_wrap .footer_nav_span {
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
  }

  .menu_wrap .footer_nav_text:hover .footer_nav_span,
  .menu_wrap .footer_nav_text:focus-visible .footer_nav_span {
    transform: none !important;
  }

  .menu_wrap .footer_nav_text:active .footer_nav_span.is-arrow {
    transform: translateX(0.25rem) !important;
  }
}
