@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";
:root {
  font-family: Manrope, Arial, sans-serif;
  color: #f7f5ff;
  background: #02040c;
  font-synthesis: none;
  --violet: #714cff;
  --violet-soft: #a48aff;
  --aqua: #32dfca;
  --panel: #080b1a;
  --line: rgba(151, 135, 218, 0.18);
  --muted: #9e9bb0;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  background: #02040c;
  -webkit-font-smoothing: antialiased;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
a {
  font: inherit;
}
.nav-shell {
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  right: 0;
  height: 76px;
  display: flex;
  align-items: center;
  gap: 40px;
  padding: 0 clamp(24px, 4vw, 68px);
  border-bottom: 1px solid var(--line);
  background: #02040cc7;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.brand img {
  width: 96px;
  display: block;
}
.nav-links {
  display: flex;
  gap: 36px;
  margin-left: auto;
  color: #aaa6b9;
  font-size: 13px;
}
.nav-links a:hover {
  color: #fff;
}
.nav-cta,
.primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 14px 20px;
  background: var(--violet);
  box-shadow: 0 12px 34px #714cff57;
  font-weight: 700;
  font-size: 13px;
}
.nav-cta svg,
.primary svg,
.secondary svg,
.project-copy a svg,
.closing a svg {
  width: 16px;
  height: 16px;
}
.hero {
  position: relative;
  isolation: isolate;
  min-height: 760px;
  display: grid;
  grid-template-columns: minmax(380px, 0.86fr) minmax(520px, 1.14fr);
  align-items: center;
  gap: 36px;
  padding: 124px clamp(32px, 5vw, 84px) 54px;
  overflow: hidden;
  border-bottom: 1px solid var(--line);
}
.signal-bg {
  position: absolute;
  z-index: -2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.74;
}
.hero:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(
    90deg,
    #02040cfc,
    #02040ce6 38%,
    #02040c52 72%,
    #02040cbd
  );
}
.hero-copy {
  max-width: 610px;
  align-self: center;
}
.eyebrow,
.kicker {
  margin: 0 0 20px;
  color: var(--aqua);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.09em;
}
.hero h1 {
  max-width: 590px;
  margin: 0;
  font-size: clamp(48px, 4.7vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.06em;
  text-wrap: balance;
}
.hero h1:after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 7px;
  background: var(--violet);
  box-shadow: 0 0 18px var(--violet);
}
.hero-lead {
  max-width: 560px;
  margin: 28px 0 0;
  color: #b0adbd;
  font-size: 16px;
  line-height: 1.72;
}
.hero-actions {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 34px;
}
.primary {
  min-height: 52px;
  padding-inline: 24px;
}
.secondary {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 4px;
  border-bottom: 1px solid rgba(151, 125, 255, 0.55);
  font-size: 13px;
  font-weight: 700;
}
.hero-proofs {
  display: flex;
  gap: 26px;
  margin-top: 38px;
  color: #aaa7b8;
  font-size: 11px;
}
.hero-proofs span:before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-right: 9px;
  background: var(--aqua);
  border-radius: 50%;
  box-shadow: 0 0 9px var(--aqua);
}
.product-scene {
  position: relative;
  width: min(650px, 46vw);
  height: 505px;
  justify-self: end;
  perspective: 1500px;
  transform: translateY(14px);
}
.scene-card {
  position: absolute;
  overflow: hidden;
  border: 1px solid rgba(147, 127, 255, 0.3);
  background: #060918e6;
  box-shadow: 0 36px 80px #00000094;
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
}
.scene-code {
  z-index: 1;
  width: 54%;
  height: 76%;
  top: 5%;
  right: 0;
  transform: rotateY(-12deg) translateZ(-50px);
  opacity: 0.72;
}
.scene-site {
  z-index: 3;
  width: 72%;
  height: 88%;
  top: 4%;
  left: 3%;
  transform: rotateY(8deg);
  animation: sceneFloat 8s ease-in-out infinite;
}
.scene-metrics {
  z-index: 5;
  width: 49%;
  right: 0;
  bottom: 2%;
  padding: 18px;
  animation: metricsFloat 7s ease-in-out infinite;
}
.window-bar {
  height: 38px;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-bottom: 1px solid var(--line);
  background: #111227b8;
}
.window-bar span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #302d43;
}
.window-bar small {
  margin-left: auto;
  color: #7c788e;
  font-size: 9px;
}
.code-lines {
  padding: 22px;
}
.code-lines i {
  display: block;
  width: 88%;
  height: 3px;
  margin: 12px 0;
  background: #563bc0;
}
.code-lines i:nth-child(2n) {
  width: 64%;
  background: #1f9c94;
}
.site-shell {
  padding: 22px 24px;
}
.site-nav {
  display: flex;
  align-items: center;
}
.site-nav img {
  width: 52px;
}
.site-nav em {
  margin-left: auto;
  color: var(--aqua);
  font-style: normal;
  font-size: 9px;
}
.site-shell h2 {
  margin: 56px 0 34px;
  font-size: 31px;
  line-height: 1.05;
  letter-spacing: -0.05em;
}
.site-shell h2 b {
  color: var(--violet-soft);
}
.workflow {
  display: flex;
  align-items: center;
  gap: 8px;
}
.workflow > div {
  min-width: 96px;
  padding: 11px;
  border: 1px solid var(--line);
  background: #100d29;
  font-size: 9px;
}
.workflow svg {
  display: block;
  color: var(--aqua);
  font-size: 19px;
  margin-bottom: 7px;
}
.workflow small {
  display: block;
  margin-top: 5px;
  color: #67617d;
}
.workflow > i {
  width: 20px;
  border-top: 1px dashed #6755b5;
}
.metric-title {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
  color: #d8d5e7;
  font-size: 9px;
  font-weight: 700;
}
.metric-title svg {
  color: var(--aqua);
  font-size: 14px;
}
.metric-title b {
  margin-left: auto;
  color: var(--aqua);
}
.scene-metrics p {
  display: flex;
  margin: 14px 0;
  color: #bdb8cf;
  font-size: 10px;
}
.scene-metrics p b {
  margin-left: auto;
  color: #8a78d2;
}
.portfolio {
  padding: 94px 0 110px;
  overflow: hidden;
}
.section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  max-width: 1220px;
  margin: 0 auto 34px;
  padding: 0 36px;
}
.section-heading .kicker {
  margin-bottom: 10px;
  color: var(--violet-soft);
}
.section-heading h2 {
  margin: 0;
  font-size: clamp(32px, 3.6vw, 52px);
  letter-spacing: -0.05em;
}
.carousel-controls {
  display: flex;
  gap: 10px;
}
.carousel-controls button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(152, 130, 255, 0.42);
  border-radius: 50%;
  background: #070915;
  color: #fff;
  cursor: pointer;
}
.carousel-controls button:hover {
  background: var(--violet);
}
.carousel-stage {
  position: relative;
  width: 100%;
  height: 570px;
}
.project-card {
  --x: calc(var(--offset) * min(67vw, 660px));
  position: absolute;
  top: 0;
  left: 50%;
  width: min(610px, 68vw);
  height: 540px;
  display: grid;
  grid-template-rows: 62% 38%;
  overflow: hidden;
  border: 1px solid rgba(147, 127, 255, 0.26);
  border-radius: 12px;
  background: #070812;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(calc(-50% + var(--x)), 0, 0) scale(0.78);
  filter: saturate(0.4) brightness(0.56);
  transition:
    transform 0.7s cubic-bezier(0.18, 0.78, 0.18, 1),
    opacity 0.55s,
    filter 0.55s;
  box-shadow: 0 35px 80px #0000006b;
}
.project-card[style*="-1"],
.project-card[style*="1"] {
  opacity: 0.55;
  pointer-events: auto;
}
.project-card.is-active {
  z-index: 4;
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(-50%, 0, 0) scale(1);
  filter: none;
  border-color: #9b7eff94;
  box-shadow:
    0 40px 100px #000000a3,
    0 0 52px #6b45ff29;
}
.project-browser {
  min-height: 0;
  overflow: hidden;
}
.project-browser iframe {
  width: 142%;
  height: 142%;
  border: 0;
  transform: scale(0.705);
  transform-origin: top left;
  pointer-events: none;
  background: #080b16;
}
.project-copy {
  position: relative;
  padding: 25px 28px;
  background: linear-gradient(180deg, #080913, #060711);
}
.project-copy p {
  margin: 0 0 6px;
  color: var(--violet-soft);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.project-copy h3 {
  margin: 0;
  font-size: 27px;
  letter-spacing: -0.04em;
}
.project-copy > span {
  display: block;
  max-width: 460px;
  margin-top: 8px;
  color: #aaa6b7;
  font-size: 13px;
  line-height: 1.55;
}
.project-copy a {
  position: absolute;
  right: 27px;
  bottom: 22px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #c4b5ff;
  font-size: 12px;
  font-weight: 700;
}
.carousel-progress {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 20px;
}
.carousel-progress button {
  width: 54px;
  height: 3px;
  padding: 0;
  border: 0;
  background: #1b1c2b;
  cursor: pointer;
}
.carousel-progress button.active {
  background: var(--violet);
}
.closing {
  max-width: 1220px;
  margin: 0 auto 80px;
  padding: 50px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 40px;
  border: 1px solid var(--line);
  background: #070a17cc;
}
.closing h2 {
  max-width: 680px;
  margin: 0;
  font-size: clamp(30px, 4vw, 54px);
  line-height: 1.04;
  letter-spacing: -0.055em;
}
.closing a {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 24px;
  border: 1px solid rgba(151, 126, 255, 0.55);
  font-weight: 700;
}
.closing a > svg:first-child {
  color: #27d7b9;
  font-size: 30px;
}
@keyframes sceneFloat {
  50% {
    transform: rotateY(5deg) translateY(-10px);
  }
}
@keyframes metricsFloat {
  50% {
    transform: translateY(10px);
  }
}
@media (max-width: 950px) {
  .nav-links {
    display: none;
  }
  .hero {
    grid-template-columns: 1fr;
    padding-top: 120px;
  }
  .hero-copy {
    max-width: 720px;
  }
  .product-scene {
    width: min(720px, 94vw);
    height: 480px;
    justify-self: center;
  }
  .hero-proofs {
    flex-wrap: wrap;
  }
  .project-card {
    width: min(610px, 82vw);
    --x: calc(var(--offset) * 78vw);
  }
  .closing {
    grid-template-columns: 1fr;
    margin-inline: 20px;
  }
}
@media (max-width: 620px) {
  .nav-shell {
    height: 68px;
    padding-inline: 18px;
  }
  .brand img {
    width: 76px;
  }
  .nav-cta {
    padding: 11px 13px;
    font-size: 11px;
  }
  .hero {
    padding: 102px 20px 34px;
    gap: 10px;
  }
  .hero h1 {
    font-size: 44px;
  }
  .hero-lead {
    font-size: 14px;
  }
  .hero-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .hero-proofs {
    gap: 12px;
  }
  .product-scene {
    height: 350px;
    transform: scale(0.9);
    transform-origin: center;
  }
  .site-shell h2 {
    margin-top: 35px;
    font-size: 24px;
  }
  .workflow > div {
    min-width: 78px;
  }
  .scene-metrics {
    width: 58%;
  }
  .portfolio {
    padding-top: 68px;
  }
  .section-heading {
    align-items: start;
    padding-inline: 20px;
  }
  .carousel-stage {
    height: 500px;
  }
  .project-card {
    width: 84vw;
    height: 480px;
    grid-template-rows: 58% 42%;
    --x: calc(var(--offset) * 88vw);
  }
  .project-copy {
    padding: 20px;
  }
  .project-copy h3 {
    font-size: 23px;
  }
  .project-copy a {
    position: static;
    margin-top: 14px;
  }
  .carousel-progress button {
    width: 30px;
  }
  .closing {
    padding: 28px;
  }
  .closing a {
    padding: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
.offer {
  max-width: 1220px;
  margin: 0 auto;
  padding: 110px 36px;
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 70px;
  align-items: center;
}
.offer-copy h2,
.section-intro h2,
.about h2,
.faq h2 {
  margin: 0;
  font-size: clamp(38px, 4.4vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.06em;
}
.offer-copy > p:not(.kicker) {
  max-width: 650px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.7;
}
.offer-points {
  display: grid;
  gap: 12px;
  margin-top: 34px;
}
.offer-points span {
  padding: 16px 0;
  border-top: 1px solid var(--line);
  color: #c4c0d0;
}
.offer-points b {
  display: inline-block;
  width: 46px;
  color: var(--violet-soft);
  font-size: 11px;
}
.price-card {
  position: relative;
  padding: 38px;
  border: 1px solid rgba(147, 127, 255, 0.42);
  background: linear-gradient(145deg, #160f36b8, #070915f0);
  box-shadow: 0 35px 90px #0000006b;
}
.price-card em {
  position: absolute;
  top: 0;
  left: 28px;
  transform: translateY(-50%);
  padding: 8px 12px;
  background: #c99839;
  color: #120f09;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}
.price-card > p {
  margin: 0;
  color: var(--violet-soft);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.price-card > strong {
  display: block;
  margin: 18px 0 4px;
  font-size: 82px;
  line-height: 1;
  letter-spacing: -0.07em;
}
.price-card > strong small {
  font-size: 22px;
}
.price-card > strong sup {
  font-size: 24px;
}
.price-card > span {
  display: block;
  color: var(--muted);
  line-height: 1.6;
}
.price-card ul {
  display: grid;
  gap: 12px;
  margin: 28px 0;
  padding: 0;
  list-style: none;
  color: #c5c1cf;
  font-size: 13px;
}
.price-card li:before {
  content: "✓";
  margin-right: 10px;
  color: var(--aqua);
}
.price-card .primary {
  width: 100%;
  border: 0;
  color: #fff;
  cursor: pointer;
}
.services {
  padding: 110px max(36px, calc((100vw - 1220px) / 2));
  background: #050711;
}
.section-intro {
  max-width: 820px;
  margin-bottom: 50px;
}
.service-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--line);
}
.service-grid article {
  position: relative;
  min-height: 310px;
  padding: 30px;
  background: #060812;
}
.service-grid article > svg {
  color: var(--violet-soft);
  font-size: 32px;
}
.service-grid article > span {
  position: absolute;
  top: 30px;
  right: 30px;
  color: #756c93;
  font-size: 10px;
}
.service-grid h3 {
  margin: 80px 0 12px;
  font-size: 22px;
  letter-spacing: -0.04em;
}
.service-grid p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}
.process {
  padding: 110px max(36px, calc((100vw - 1220px) / 2));
  overflow: hidden;
}
.process-line {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 26px;
  margin-top: 64px;
}
.process-line:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 2%;
  right: 2%;
  height: 1px;
  background: linear-gradient(90deg, var(--violet), #a473ff, var(--aqua));
}
.process-line article {
  position: relative;
  padding-top: 45px;
}
.process-node {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 21px;
  height: 21px;
  border: 5px solid #0b0a1a;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 0 0 2px #8c71ff,
    0 0 24px #714cff;
}
.process-line article:last-child .process-node {
  box-shadow:
    0 0 0 2px #32dfca,
    0 0 24px #32dfca;
}
.process-line span {
  color: var(--violet-soft);
  font-size: 10px;
  font-weight: 800;
}
.process-line h3 {
  margin: 12px 0 8px;
  font-size: 17px;
}
.process-line p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}
.outcomes {
  border-top: 1px solid var(--line);
}
.outcomes article {
  min-height: 320px;
  display: grid;
  grid-template-columns: 260px minmax(260px, 0.5fr) 1fr;
  align-items: center;
  gap: 60px;
  max-width: 1220px;
  margin: auto;
  padding: 48px 36px;
  border-bottom: 1px solid var(--line);
}
.outcomes article > div:first-child span {
  color: var(--violet-soft);
  font-size: 10px;
  font-weight: 800;
}
.outcomes h2 {
  margin: 20px 0 18px;
  font-size: 48px;
  line-height: 1.03;
  letter-spacing: -0.055em;
}
.outcomes article > div:first-child i {
  display: block;
  width: 28px;
  height: 3px;
  background: var(--violet);
}
.outcomes article > p {
  max-width: 310px;
  color: var(--muted);
  line-height: 1.7;
}
.outcome-icon {
  display: grid;
  place-items: center;
  min-height: 190px;
  color: #7d5cff;
  background: radial-gradient(
    circle,
    rgba(113, 76, 255, 0.17),
    transparent 64%
  );
}
.outcome-icon svg {
  font-size: 120px;
  filter: drop-shadow(0 0 30px rgba(113, 76, 255, 0.5));
  animation: iconPulse 6s ease-in-out infinite;
}
.outcomes .fast .outcome-icon,
.outcomes .fast h2 {
  color: var(--aqua);
}
.outcomes .fast i {
  background: var(--aqua) !important;
}
.about {
  max-width: 1220px;
  margin: auto;
  padding: 110px 36px;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 80px;
}
.about > div > p:not(.kicker) {
  max-width: 690px;
  color: var(--muted);
  line-height: 1.7;
}
.about-numbers {
  display: grid;
  border-top: 1px solid var(--line);
}
.about-numbers span {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
}
.about-numbers b {
  min-width: 90px;
  color: #fff;
  font-size: 32px;
}
.faq {
  padding: 110px max(36px, calc((100vw - 1220px) / 2));
  background: #050711;
}
.faq-list {
  border-top: 1px solid var(--line);
}
.faq details {
  border-bottom: 1px solid var(--line);
}
.faq summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0;
  cursor: pointer;
  font-size: 18px;
  font-weight: 700;
  list-style: none;
}
.faq summary span {
  color: var(--violet-soft);
  font-size: 24px;
}
.faq details p {
  max-width: 800px;
  margin: 0;
  padding: 0 0 26px;
  color: var(--muted);
  line-height: 1.65;
}
.closing {
  margin: 80px auto;
}
.closing a {
  display: none;
}
.closing button {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 24px;
  border: 1px solid rgba(151, 126, 255, 0.55);
  background: transparent;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}
.closing button > svg:first-child {
  color: #27d7b9;
  font-size: 30px;
}
footer {
  max-width: 1220px;
  margin: 0 auto;
  padding: 50px 36px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 28px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 12px;
}
footer img {
  width: 80px;
}
footer nav {
  display: flex;
  gap: 20px;
  justify-self: end;
}
footer small {
  grid-column: 1/-1;
  border-top: 1px solid var(--line);
  padding-top: 22px;
}
.modal-backdrop {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: #000000bd;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.contact-modal {
  position: relative;
  width: min(720px, 96vw);
  max-height: 92vh;
  overflow: auto;
  padding: 38px;
  border: 1px solid rgba(147, 127, 255, 0.42);
  background: #090a16;
  box-shadow: 0 35px 100px #000000b3;
}
.modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #0c0d1b;
  color: #fff;
  cursor: pointer;
}
.contact-modal h2 {
  margin: 0 0 24px;
  font-size: 36px;
  letter-spacing: -0.05em;
}
.contact-modal form {
  display: grid;
  gap: 16px;
}
.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.contact-modal label {
  display: grid;
  gap: 8px;
  color: #aaa7b8;
  font-size: 11px;
  font-weight: 700;
}
.contact-modal input,
.contact-modal select,
.contact-modal textarea {
  width: 100%;
  padding: 13px 14px;
  border: 1px solid var(--line);
  outline: none;
  background: #050711;
  color: #fff;
  font: inherit;
  font-size: 13px;
}
.contact-modal input:focus,
.contact-modal select:focus,
.contact-modal textarea:focus {
  border-color: #7656ff;
}
.contact-modal textarea {
  min-height: 100px;
  resize: vertical;
}
.contact-modal .consent {
  display: flex;
  align-items: center;
  gap: 9px;
}
.contact-modal .consent input {
  width: auto;
}
.contact-modal .submit {
  border: 0;
  color: #fff;
  cursor: pointer;
}
.form-error {
  color: #ff8797;
  font-size: 12px;
}
.form-success {
  text-align: center;
  padding: 40px 10px;
}
.form-success > svg {
  color: var(--aqua);
  font-size: 62px;
}
.form-success .primary {
  margin-top: 24px;
  color: #fff;
}
@keyframes iconPulse {
  50% {
    transform: translateY(-9px) scale(1.04);
  }
}
@media (max-width: 950px) {
  .offer,
  .about {
    grid-template-columns: 1fr;
  }
  .service-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .process-line {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 34px;
  }
  .process-line:before {
    display: none;
  }
  .outcomes article {
    grid-template-columns: 190px 1fr;
  }
  .outcome-icon {
    grid-column: 1/-1;
  }
}
@media (max-width: 620px) {
  .offer {
    padding: 76px 20px;
  }
  .price-card {
    padding: 28px;
  }
  .price-card > strong {
    font-size: 66px;
  }
  .services,
  .process,
  .faq {
    padding: 76px 20px;
  }
  .service-grid {
    grid-template-columns: 1fr;
  }
  .service-grid article {
    min-height: 250px;
  }
  .service-grid h3 {
    margin-top: 50px;
  }
  .process-line {
    grid-template-columns: 1fr;
  }
  .process-line article {
    padding-left: 42px;
    padding-top: 0;
  }
  .process-node {
    left: 0;
  }
  .outcomes article {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 38px 20px;
  }
  .outcomes h2 {
    font-size: 42px;
  }
  .outcome-icon {
    min-height: 130px;
  }
  .outcome-icon svg {
    font-size: 90px;
  }
  .about {
    padding: 76px 20px;
  }
  .closing button {
    padding: 18px;
  }
  footer {
    grid-template-columns: 1fr;
  }
  footer nav {
    justify-self: start;
    flex-wrap: wrap;
  }
  .form-row {
    grid-template-columns: 1fr;
  }
  .contact-modal {
    padding: 30px 22px;
  }
}
.nav-cta,
.primary {
  border: 0;
  color: #fff;
  cursor: pointer;
}
.outcomes {
  padding: 18px max(36px, calc((100vw - 1220px) / 2));
  border-top: 1px solid var(--line);
  background: #02040c;
}
.outcomes article {
  position: relative;
  max-width: none;
  min-height: 230px;
  margin: 0;
  padding: 34px 0;
  display: grid;
  grid-template-columns: 72px 260px minmax(230px, 0.6fr) 1fr;
  align-items: center;
  gap: 34px;
  border-bottom: 1px solid var(--line);
  overflow: hidden;
}
.outcomes .outcome-number {
  align-self: start;
  margin-top: 10px;
  color: var(--violet-soft);
  font:
    700 10px ui-monospace,
    monospace;
  letter-spacing: 0.14em;
}
.outcomes h2 {
  margin: 0;
  font-size: clamp(30px, 3.2vw, 50px);
  line-height: 1.02;
  letter-spacing: -0.055em;
}
.outcomes article > p {
  max-width: 300px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}
.outcome-signal {
  position: relative;
  width: 100%;
  height: 168px;
  opacity: 0.88;
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent,
    #000 16%,
    #000 88%,
    transparent
  );
  mask-image: linear-gradient(
    90deg,
    transparent,
    #000 16%,
    #000 88%,
    transparent
  );
  animation: signalBreathe 7s ease-in-out infinite;
}
.outcome-found .outcome-signal {
  background:
    radial-gradient(
      ellipse at 34% 50%,
      rgba(137, 93, 255, 0.95) 0 2px,
      transparent 3px
    ),
    repeating-radial-gradient(
      ellipse at 35% 50%,
      rgba(126, 92, 255, 0.48) 0 1px,
      transparent 2px 13px
    );
}
.outcome-trusted .outcome-signal {
  background:
    radial-gradient(
      circle at center,
      rgba(182, 91, 255, 0.98) 0 4px,
      transparent 5px
    ),
    repeating-radial-gradient(
      circle at center,
      rgba(159, 80, 255, 0.5) 0 1px,
      transparent 2px 16px
    );
}
.outcome-fast .outcome-number,
.outcome-fast h2 {
  color: var(--aqua);
}
.outcome-fast .outcome-signal {
  background:
    linear-gradient(
      90deg,
      transparent 0 12%,
      rgba(36, 228, 205, 0.18) 32%,
      rgba(44, 238, 214, 0.78) 72%,
      transparent 74%
    ),
    linear-gradient(
      26deg,
      transparent 48%,
      rgba(65, 244, 221, 0.95) 49% 51%,
      transparent 52%
    );
  clip-path: polygon(
    0 42%,
    78% 42%,
    78% 22%,
    100% 50%,
    78% 78%,
    78% 58%,
    0 58%
  );
  filter: drop-shadow(0 0 18px rgba(50, 223, 202, 0.58));
}
.conversation-flow {
  position: relative;
  isolation: isolate;
  max-width: 1220px;
  min-height: 380px;
  margin: 90px auto;
  padding: 48px;
  display: grid;
  grid-template-columns: 190px 1fr 54px;
  align-items: center;
  gap: 38px;
  overflow: hidden;
  border: 1px solid rgba(147, 127, 255, 0.3);
  border-radius: 16px;
  background:
    radial-gradient(
      circle at 58% 54%,
      rgba(41, 209, 196, 0.08),
      transparent 30%
    ),
    linear-gradient(125deg, #050715, #02040d 76%);
  box-shadow: 0 35px 90px #0000006b;
}
.conversation-flow:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background:
    linear-gradient(rgba(130, 112, 208, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(130, 112, 208, 0.04) 1px, transparent 1px);
  background-size: 42px 42px;
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent,
    #000 28%,
    #000 72%,
    transparent
  );
  mask-image: linear-gradient(
    90deg,
    transparent,
    #000 28%,
    #000 72%,
    transparent
  );
}
.flow-copy {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.flow-copy p,
.flow-copy span {
  margin: 0;
  color: #ccc8d9;
  font:
    700 13px/1.12 ui-monospace,
    monospace;
  letter-spacing: 0.04em;
}
.flow-copy span {
  font-size: 15px;
}
.flow-copy b {
  color: var(--aqua);
}
.flow-visual {
  position: relative;
  height: 220px;
}
.flow-steps {
  position: absolute;
  top: 16px;
  left: 0;
  right: 0;
  height: 46px;
}
.flow-steps:before {
  content: "";
  position: absolute;
  top: 22px;
  left: 3%;
  right: 3%;
  height: 1px;
  background: linear-gradient(90deg, #8c5cff, #4f86e7, #27d8c0);
}
.flow-steps i {
  position: absolute;
  top: 14px;
  width: 17px;
  height: 17px;
  border: 4px solid #17122e;
  border-radius: 50%;
  background: #996bff;
  box-shadow: 0 0 16px #865bffcc;
}
.flow-steps i:nth-child(1) {
  left: 2%;
}
.flow-steps i:nth-child(2) {
  left: 34%;
  background: #59b8e6;
}
.flow-steps i:nth-child(3) {
  left: 66%;
  background: #32d8c4;
}
.flow-steps i:nth-child(4) {
  right: 2%;
  background: #2db7aa;
}
.flow-stream {
  position: absolute;
  left: 0;
  right: 45%;
  top: 100px;
  height: 92px;
  background: repeating-radial-gradient(
    ellipse at 100% 50%,
    rgba(102, 69, 255, 0.5) 0 1px,
    transparent 2px 10px
  );
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 30%, #000);
  mask-image: linear-gradient(90deg, transparent, #000 30%, #000);
  filter: drop-shadow(0 0 14px rgba(109, 72, 255, 0.42));
  animation: streamPulse 5s ease-in-out infinite;
}
.flow-whatsapp {
  position: absolute;
  right: 28%;
  top: 86px;
  display: grid;
  place-items: center;
  width: 92px;
  height: 92px;
  border: 3px solid #55f0db;
  border-radius: 50%;
  color: #55f0db;
  background: #061716;
  box-shadow:
    0 0 12px #39ddc9,
    0 0 34px #37e2ccb8,
    inset 0 0 25px #2ae1c92e;
  animation: whatsappPulse 3.5s ease-in-out infinite;
}
.flow-whatsapp svg {
  font-size: 58px;
}
.conversation-flow > button {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(147, 127, 255, 0.42);
  border-radius: 50%;
  background: #090c1a;
  color: #fff;
  cursor: pointer;
}
.conversation-flow > button:hover {
  background: var(--violet);
}
.conversation-flow > strong {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translate(-50%);
  font:
    800 12px ui-monospace,
    monospace;
  letter-spacing: 0.12em;
  color: #b8b3c8;
}
@keyframes signalBreathe {
  50% {
    opacity: 1;
    transform: scaleX(1.025);
  }
}
@keyframes streamPulse {
  50% {
    opacity: 0.68;
    transform: scaleX(1.06);
  }
}
@keyframes whatsappPulse {
  50% {
    transform: scale(1.05);
    box-shadow:
      0 0 18px #39ddc9,
      0 0 48px #37e2ccd1,
      inset 0 0 30px #2ae1c938;
  }
}
@media (max-width: 950px) {
  .outcomes article {
    grid-template-columns: 50px 220px 1fr;
  }
  .outcome-signal {
    grid-column: 1/-1;
    height: 112px;
  }
  .conversation-flow {
    margin-inline: 24px;
    grid-template-columns: 150px 1fr 48px;
  }
}
@media (max-width: 620px) {
  .outcomes {
    padding-inline: 20px;
  }
  .outcomes article {
    grid-template-columns: 42px 1fr;
    gap: 10px;
    padding: 30px 0;
  }
  .outcomes h2 {
    font-size: 40px;
  }
  .outcomes article > p {
    grid-column: 2;
  }
  .outcome-signal {
    grid-column: 1/-1;
    height: 92px;
  }
  .conversation-flow {
    min-height: 520px;
    margin: 60px 14px;
    padding: 28px 22px;
    grid-template-columns: 1fr 44px;
    align-content: start;
  }
  .flow-copy {
    grid-column: 1/-1;
    min-height: 120px;
    flex-direction: row;
  }
  .flow-visual {
    grid-column: 1/-1;
    height: 250px;
  }
  .flow-whatsapp {
    right: 14%;
  }
  .conversation-flow > button {
    position: absolute;
    right: 24px;
    bottom: 24px;
  }
  .conversation-flow > strong {
    bottom: 36px;
  }
}
.nav-cta {
  border-radius: 100px;
  background: linear-gradient(155deg, #8f72ff, var(--violet) 60%);
  box-shadow:
    0 14px 34px -10px #7c5cff99,
    inset 0 1px #ffffff2e;
  transition:
    transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.25s;
}
.primary {
  border-radius: 11px;
  background: linear-gradient(155deg, #8f72ff, var(--violet) 60%);
  box-shadow:
    0 14px 34px -10px #7c5cff99,
    inset 0 1px #ffffff2e;
  transition:
    transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.25s;
}
.primary:hover,
.nav-cta:hover {
  transform: translateY(-2px);
  box-shadow:
    0 18px 42px -10px #7c5cffc2,
    inset 0 1px #ffffff40;
}
.primary:active,
.nav-cta:active {
  transform: scale(0.97);
}
.secondary {
  padding: 15px 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 11px;
  background: #ffffff08;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition:
    transform 0.25s,
    background 0.25s,
    border-color 0.25s;
}
.secondary:hover {
  transform: translateY(-2px);
  border-color: #ffffff3d;
  background: #ffffff12;
}
.offer {
  position: relative;
  isolation: isolate;
  max-width: 1160px;
  min-height: 610px;
  margin: 88px auto;
  padding: 64px;
  gap: 68px;
  overflow: hidden;
  border: 1px solid rgba(164, 139, 255, 0.22);
  border-radius: 30px;
  background: linear-gradient(130deg, #151122, #0f0e16 52%, #12101c);
  box-shadow:
    0 34px 90px -52px #7c5cffc7,
    inset 0 1px #ffffff0f;
}
.offer:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 58px 58px;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 75%);
  mask-image: linear-gradient(90deg, #000, transparent 75%);
  opacity: 0.42;
}
.offer-orbits {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  pointer-events: none;
}
.offer-orbits span {
  position: absolute;
  display: block;
  border: 1px solid rgba(164, 139, 255, 0.16);
  border-radius: 50%;
}
.offer-orbits span:nth-child(1) {
  width: 700px;
  height: 700px;
  right: -370px;
  top: 50%;
  transform: translateY(-50%);
  box-shadow:
    0 0 100px #7c5cff1a,
    inset 0 0 70px #7c5cff14;
}
.offer-orbits span:nth-child(2) {
  width: 470px;
  height: 470px;
  right: -255px;
  top: 50%;
  transform: translateY(-50%);
  border-color: #f2b54429;
}
.offer-orbits span:nth-child(3) {
  width: 12px;
  height: 12px;
  right: 82px;
  top: 28%;
  border: 0;
  background: #f2b544;
  box-shadow:
    0 0 0 7px #f2b5441a,
    0 0 26px #f2b544b8;
  animation: offerOrbit 8s ease-in-out infinite;
}
.offer-copy .kicker {
  color: #c4b4ff;
}
.offer-copy > p:not(.kicker) {
  max-width: 53ch;
  margin: 24px 0 34px;
}
.price-card {
  padding: 34px;
  border-color: #f2b54466;
  border-radius: 23px;
  background: linear-gradient(150deg, #201c30ed, #0f0e16f0);
  box-shadow:
    0 28px 54px -34px #000000e6,
    inset 0 1px #ffffff14;
}
.price-card em {
  top: -13px;
  left: 24px;
  transform: none;
  padding: 6px 11px;
  border-radius: 100px;
  background: #f2b544;
  color: #19120b;
  font-size: 10px;
}
.price-card > p {
  margin: 10px 0 8px;
  color: #cdbcfb;
}
.offer-price small {
  display: block;
  color: var(--muted);
  font-size: 12px;
}
.offer-price strong {
  display: block;
  color: #fff;
  font-size: clamp(42px, 4vw, 56px);
  line-height: 1;
  letter-spacing: -0.055em;
}
.offer-price sup {
  font-size: 0.43em;
  color: #f2b544;
}
.price-card > span {
  margin: 15px 0 20px;
  color: #ded8ed;
  font-size: 14px;
}
.price-card ul {
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}
.price-card li:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 12px;
  border-radius: 50%;
  background: #2fbf71;
  box-shadow: 0 0 0 4px #2fbf711a;
}
.price-card .offer-cta {
  margin-top: 4px;
  background: linear-gradient(155deg, #f6c85f, #d79322 68%);
  color: #1b1308;
  box-shadow:
    0 16px 32px -17px #f2b544bf,
    inset 0 1px #fff6;
}
.price-card .offer-cta:hover {
  box-shadow:
    0 20px 36px -17px #f2b544db,
    inset 0 1px #ffffff73;
}
.offer-note {
  display: block;
  margin: 14px 2px 0;
  color: #817a91;
  font-size: 10px;
  line-height: 1.45;
  text-align: center;
}
.offer-carousel{display:block;padding:88px max(24px,calc((100% - 1080px)/2));overflow:hidden}.offer-carousel-head{max-width:680px;margin-bottom:34px}.offer-carousel-head h2{margin:10px 0 14px;font-size:clamp(40px,5vw,66px);line-height:.95;letter-spacing:-.07em}.offer-carousel-head>p:not(.kicker){color:#aaa7ba;line-height:1.55}.offer-carousel-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 0 20px;scrollbar-width:none}.offer-carousel-track::-webkit-scrollbar{display:none}.offer-solution{position:relative;display:flex;flex-direction:column;flex:0 0 min(360px,82vw);min-height:540px;scroll-snap-align:start;padding:20px;border:1px solid #4b406f;border-radius:20px;background:linear-gradient(155deg,#191529,#0d0e19)}.offer-solution em{color:#b9adff;font:800 9px/1 ui-monospace,monospace;letter-spacing:.12em;font-style:normal}.solution-preview{height:92px;margin:15px 0;border:1px solid #51476d;border-radius:10px;background:#090a13}.preview-site{background:linear-gradient(130deg,#0b0b17,#211c47)}.preview-romulus{background:linear-gradient(130deg,#08121a,#12353c)}.preview-track{background:repeating-linear-gradient(45deg,#0b1720 0 14px,#15303c 15px 16px)}.preview-ouro{background:linear-gradient(130deg,#171008,#09090f)}.offer-solution h3{margin:6px 0 8px;font-size:30px;line-height:.94;letter-spacing:-.065em}.offer-solution h3 span{color:var(--aqua)}.offer-solution>p{min-height:53px;margin:0 0 10px;color:#b8b2c5;font-size:12px;line-height:1.45}.offer-solution>strong{font-size:31px;letter-spacing:-.055em}.offer-solution sup{font-size:13px;color:#f4b740}.offer-solution ul{margin:13px 0;padding:0;list-style:none}.offer-solution li{padding:7px 0;border-top:1px solid #312b45;color:#e1ddec;font-size:11px;line-height:1.35}.offer-solution li:before{content:'•';color:var(--aqua);margin-right:8px}.offer-solution small{color:#938da1;font-size:9px;line-height:1.4}.offer-solution .primary{margin-top:auto;justify-content:center;padding:12px;font-size:10px}.offer-solution--gold .primary{background:linear-gradient(125deg,#f6bf49,#d88b0e);color:#171005}.offer-carousel-controls{display:flex;justify-content:space-between;align-items:center;color:#9b95ad;font-size:11px}.offer-carousel-controls div{display:flex;gap:8px}.offer-carousel-controls button{display:grid;place-items:center;width:33px;height:33px;border:1px solid #6557aa;border-radius:50%;background:#171329;color:#fff}.offer-carousel-controls button:last-child{background:#7657ed}@media(max-width:620px){.offer-carousel{padding:60px 18px}.offer-solution{flex-basis:86vw;min-height:530px}.offer-carousel-head h2{font-size:42px}}
@keyframes offerOrbit {
  50% {
    transform: translate(-24px, 48px);
    opacity: 0.55;
  }
}
.hero-copy > * {
  opacity: 0;
  transform: translateY(16px);
  filter: blur(6px);
  animation: heroEnter 0.9s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.hero-copy > *:nth-child(1) {
  animation-delay: 0.05s;
}
.hero-copy > *:nth-child(2) {
  animation-delay: 0.16s;
}
.hero-copy > *:nth-child(3) {
  animation-delay: 0.27s;
}
.hero-copy > *:nth-child(4) {
  animation-delay: 0.38s;
}
.hero-copy > *:nth-child(5) {
  animation-delay: 0.49s;
}
.motion-ready {
  opacity: 0;
  transform: translateY(24px);
  filter: blur(6px);
  transition:
    opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.motion-ready.motion-in {
  opacity: 1;
  transform: none;
  filter: none;
}
.service-grid article:nth-child(2),
.process-line article:nth-child(2) {
  transition-delay: 0.08s;
}
.service-grid article:nth-child(3),
.process-line article:nth-child(3) {
  transition-delay: 0.16s;
}
.service-grid article:nth-child(4),
.process-line article:nth-child(4) {
  transition-delay: 0.24s;
}
.process-line article:nth-child(5) {
  transition-delay: 0.32s;
}
.service-grid article,
.process-line article,
.faq details {
  transition-property: opacity, transform, filter, border-color, box-shadow;
}
.service-grid article:hover {
  transform: translateY(-7px);
  border-color: #7c5cff8c;
  box-shadow: 0 20px 40px -20px #7c5cff59;
}
@keyframes heroEnter {
  to {
    opacity: 1;
    transform: none;
    filter: none;
  }
}
@media (max-width: 950px) {
  .offer {
    margin: 58px 20px;
    padding: 46px 34px;
  }
  .price-card {
    max-width: 560px;
  }
}
@media (max-width: 620px) {
  .offer {
    margin: 44px 16px;
    padding: 38px 22px 24px;
    border-radius: 22px;
  }
  .offer-copy h2 {
    font-size: 34px;
  }
  .price-card {
    padding: 30px 22px 24px;
  }
  .offer-orbits span:nth-child(1) {
    right: -490px;
  }
  .offer-orbits span:nth-child(2) {
    right: -350px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-copy > *,
  .motion-ready {
    opacity: 1;
    transform: none;
    filter: none;
    animation: none;
    transition: none;
  }
  .offer-orbits span:nth-child(3) {
    animation: none;
  }
}
.conversation-flow {
  max-width: 980px;
  min-height: 310px;
  margin: 82px auto;
  padding: 34px 38px;
  grid-template-columns: 150px 1fr 44px;
  gap: 24px;
  border-color: #937fff38;
  border-radius: 16px;
}
.flow-copy {
  min-height: 224px;
}
.flow-copy p {
  font-size: 11px;
}
.flow-copy span {
  font-size: 13px;
}
.flow-visual {
  height: 196px;
}
.flow-steps {
  top: 4px;
  height: 38px;
}
.flow-steps:before {
  top: 18px;
}
.flow-steps i {
  top: 10px;
  width: 16px;
  height: 16px;
}
.flow-stream {
  top: 72px;
  right: 37%;
  height: 88px;
}
.flow-whatsapp {
  right: 20%;
  top: 62px;
  width: 86px;
  height: 86px;
}
.flow-whatsapp svg {
  font-size: 54px;
}
.conversation-flow > button {
  width: 42px;
  height: 42px;
}
.conversation-flow > strong {
  bottom: 20px;
  font-size: 10px;
}
@media (max-width: 1020px) {
  .conversation-flow {
    margin-inline: 24px;
  }
}
@media (max-width: 620px) {
  .conversation-flow {
    min-height: 480px;
    margin: 58px 14px;
    padding: 26px 22px;
    grid-template-columns: 1fr 42px;
  }
  .flow-copy {
    min-height: 106px;
  }
  .flow-visual {
    height: 250px;
  }
  .flow-whatsapp {
    right: 12%;
    top: 92px;
  }
  .flow-stream {
    top: 100px;
    right: 34%;
  }
}
section[id] {
  scroll-margin-top: 76px;
}
.carousel-bottom-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 20px;
}
.carousel-bottom-nav .carousel-progress {
  margin: 0;
}
.carousel-arrow {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid rgba(152, 130, 255, 0.42);
  border-radius: 50%;
  background: #070915;
  color: #fff;
  cursor: pointer;
  transition:
    transform 0.25s,
    background 0.25s,
    box-shadow 0.25s;
}
.carousel-arrow svg {
  width: 17px;
  height: 17px;
}
.carousel-arrow:hover {
  transform: translateY(-2px);
  background: var(--violet);
  box-shadow: 0 12px 30px #714cff57;
}
.outcome-fast .outcome-signal {
  animation: arrowAdvance 3.2s cubic-bezier(0.45, 0, 0.2, 1) infinite;
  transform-origin: center;
}
.outcome-fast .outcome-signal:after {
  content: "";
  position: absolute;
  top: 36%;
  right: 18%;
  bottom: 36%;
  left: 4%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(201, 255, 247, 0.9),
    transparent
  );
  filter: blur(5px);
  animation: arrowSweep 3.2s ease-in-out infinite;
}
@keyframes arrowAdvance {
  0% {
    transform: translate(-22px);
    opacity: 0.35;
  }
  42%,
  68% {
    transform: translate(14px);
    opacity: 1;
    filter: drop-shadow(0 0 26px rgba(50, 223, 202, 0.82));
  }
  to {
    transform: translate(28px);
    opacity: 0.12;
  }
}
@keyframes arrowSweep {
  0% {
    transform: translate(-85%);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  76%,
  to {
    transform: translate(95%);
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .outcome-fast .outcome-signal,
  .outcome-fast .outcome-signal:after {
    animation: none;
  }
}
.outcome-found .outcome-signal {
  animation: foundWave 4.8s ease-in-out infinite;
  transform-origin: center;
}
.outcome-trusted .outcome-signal {
  animation: trustedPulse 4s cubic-bezier(0.45, 0, 0.25, 1) infinite;
  transform-origin: center;
}
.outcome-trusted .outcome-signal:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #c565ff;
  box-shadow:
    0 0 16px #b45cff,
    0 0 42px #b45cffb3;
  animation: trustedCore 4s ease-out infinite;
}
@keyframes foundWave {
  0%,
  to {
    transform: translate(-15px) scaleX(0.95);
    opacity: 0.5;
    filter: brightness(0.72);
  }
  50% {
    transform: translate(18px) scaleX(1.07);
    opacity: 1;
    filter: brightness(1.45) hue-rotate(12deg);
  }
}
@keyframes trustedPulse {
  0%,
  to {
    transform: scale(0.84);
    opacity: 0.42;
    filter: brightness(0.72);
  }
  52% {
    transform: scale(1.06);
    opacity: 1;
    filter: brightness(1.35);
  }
}
@keyframes trustedCore {
  0% {
    transform: translate(-50%, -50%) scale(0.65);
    opacity: 0.45;
  }
  48% {
    transform: translate(-50%, -50%) scale(1.8);
    opacity: 1;
  }
  to {
    transform: translate(-50%, -50%) scale(3);
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .outcome-found .outcome-signal,
  .outcome-trusted .outcome-signal,
  .outcome-trusted .outcome-signal:after {
    animation: none;
  }
}
.conversation-flow--whatsapp{max-width:1080px;min-height:470px;margin:82px auto;border:1px solid rgba(147,127,255,.45);border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr auto;background:radial-gradient(circle at 65% 42%,rgba(35,222,207,.18),transparent 36%),linear-gradient(145deg,#09061a,#070a14 72%,#063d42);box-shadow:0 24px 75px #0008}.conversation-flow--whatsapp:before{display:none}.flow-copy{padding:58px 60px;align-self:center;position:relative;z-index:1}.flow-kicker{margin:0;color:#b4a9ff;font:700 10px/1 ui-monospace,monospace;letter-spacing:.17em}.flow-copy h2{max-width:510px;margin:18px 0 0;color:#f5f2ff;font-size:clamp(44px,5.4vw,68px);line-height:.9;letter-spacing:-.085em}.flow-copy h2 span{color:var(--aqua)}.flow-contact-mark{position:relative;display:grid;place-items:center;min-height:260px}.flow-contact-mark:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:#25ddcd28;filter:blur(40px)}.flow-contact-mark svg{position:relative;z-index:2;font-size:70px;color:#54f7e0;filter:drop-shadow(0 0 9px #3af1d7)}.flow-ring{position:absolute;z-index:1;border:1px solid #54f7e0;border-radius:50%}.flow-ring--outer{width:190px;height:190px;opacity:.58}.flow-ring--inner{width:116px;height:116px}.flow-contact-mark small{position:absolute;z-index:2;bottom:20px;color:#aaa6bc;font:700 9px/1 ui-monospace,monospace;letter-spacing:.13em}.flow-action{grid-column:1/3;display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;padding:21px 60px;border-top:1px solid rgba(147,127,255,.22);background:#070916b8}.flow-action p{max-width:400px;margin:0;color:#aaa7b8;font-size:11px;line-height:1.55}.flow-action button{border:0;border-radius:999px;padding:14px 18px;background:#f1efff;color:#19152a;font-size:10px;font-weight:800;letter-spacing:.03em}.flow-action button svg{vertical-align:middle;margin-left:5px}.conversation-flow--whatsapp>strong{display:none}@media(max-width:1120px){.conversation-flow--whatsapp{margin-inline:24px}}@media(max-width:620px){.conversation-flow--whatsapp{min-height:590px;margin:58px 14px;grid-template-columns:1fr;grid-template-rows:auto 220px auto}.flow-copy{padding:48px 28px 16px}.flow-copy h2{font-size:52px}.flow-contact-mark{grid-column:1;grid-row:2;min-height:210px}.flow-contact-mark small{bottom:8px}.flow-action{grid-column:1;grid-row:3;grid-template-columns:1fr;padding:20px 28px;gap:16px}.flow-action button{justify-self:start}}
.services {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(
      circle at 82% 18%,
      rgba(113, 76, 255, 0.11),
      transparent 34%
    ),
    #050711;
}
.services:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background:
    linear-gradient(rgba(151, 135, 218, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(151, 135, 218, 0.035) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(
    ellipse at 68% 45%,
    #000,
    transparent 72%
  );
  mask-image: radial-gradient(ellipse at 68% 45%, #000, transparent 72%);
  pointer-events: none;
}
.service-grid {
  position: relative;
  gap: 14px;
  background: transparent;
}
.service-grid article {
  isolation: isolate;
  min-height: 330px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(145deg, #0e0e22f2, #050711e6);
  overflow: hidden;
}
.service-grid article:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(
    130deg,
    rgba(125, 91, 255, 0.13),
    transparent 42%
  );
  opacity: 0;
  transition: opacity 0.4s;
}
.service-grid article:after {
  content: "";
  position: absolute;
  top: 0;
  left: 30px;
  width: 54px;
  height: 2px;
  background: linear-gradient(90deg, var(--violet), var(--aqua));
  box-shadow: 0 0 18px #714cffb3;
}
.service-grid article:hover:before {
  opacity: 1;
}
.service-grid article > svg {
  display: grid;
  width: 52px;
  height: 52px;
  padding: 13px;
  border: 1px solid rgba(152, 130, 255, 0.3);
  border-radius: 14px;
  background: #714cff14;
  filter: drop-shadow(0 0 18px rgba(113, 76, 255, 0.22));
}
.service-grid article:nth-child(3) > svg,
.service-grid article:nth-child(4) > svg {
  color: var(--aqua);
  border-color: #32dfca3d;
  background: #32dfca0f;
}
.service-grid h3 {
  margin-top: 72px;
}
.process-line:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 8px;
  left: 0;
  width: 17%;
  height: 5px;
  background: linear-gradient(
    90deg,
    transparent,
    #fff,
    var(--aqua),
    transparent
  );
  filter: blur(2px) drop-shadow(0 0 9px var(--aqua));
  animation: processScan 6s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
.process-node {
  animation: nodePulse 4s ease-in-out infinite;
}
.process-line article:nth-child(2) .process-node {
  animation-delay: 0.7s;
}
.process-line article:nth-child(3) .process-node {
  animation-delay: 1.4s;
}
.process-line article:nth-child(4) .process-node {
  animation-delay: 2.1s;
}
.process-line article:nth-child(5) .process-node {
  animation-delay: 2.8s;
}
@keyframes processScan {
  0% {
    transform: translate(-120%);
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  to {
    transform: translate(590%);
    opacity: 0;
  }
}
@keyframes nodePulse {
  50% {
    transform: scale(1.18);
    filter: brightness(1.5);
  }
}
.about {
  position: relative;
  isolation: isolate;
  max-width: 1160px;
  margin: 90px auto;
  padding: 64px;
  border: 1px solid rgba(147, 127, 255, 0.24);
  border-radius: 24px;
  background: linear-gradient(135deg, #110e27c7, #050710f0);
  overflow: hidden;
}
.about:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background:
    linear-gradient(rgba(151, 135, 218, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(151, 135, 218, 0.04) 1px, transparent 1px);
  background-size: 48px 48px;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 76%);
  mask-image: linear-gradient(90deg, #000, transparent 76%);
}
.about:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 480px;
  height: 480px;
  right: -250px;
  top: -190px;
  border: 1px solid rgba(113, 76, 255, 0.24);
  border-radius: 50%;
  box-shadow: 0 0 80px #714cff1f;
}
.about-numbers span {
  transition:
    padding 0.3s,
    color 0.3s;
}
.about-numbers span:hover {
  padding-left: 12px;
  color: #fff;
}
.about-numbers b {
  color: var(--violet-soft);
  text-shadow: 0 0 24px rgba(113, 76, 255, 0.4);
}
.faq details {
  transition:
    background 0.3s,
    padding 0.3s;
}
.faq details[open] {
  padding-inline: 20px;
  background: #714cff0b;
}
.faq summary span {
  transition:
    transform 0.3s,
    color 0.3s;
}
.faq details[open] summary span {
  transform: rotate(45deg);
  color: var(--aqua);
}
.flow-journey i:not(:last-child):after {
  width: 245px;
}
.flow-conversion .flow-stream {
  clip-path: polygon(0 24%, 72% 38%, 100% 50%, 72% 62%, 0 76%);
  background:
    repeating-radial-gradient(
      ellipse at 100% 50%,
      rgba(92, 60, 255, 0.72) 0 1px,
      transparent 2px 9px
    ),
    linear-gradient(90deg, #7040ff80, #2be1cd6b);
}
.flow-conversion .flow-stream:after {
  content: "";
  position: absolute;
  top: 38%;
  right: 3%;
  bottom: 38%;
  left: 12%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(154, 116, 255, 0.55),
    rgba(69, 245, 220, 0.92),
    transparent
  );
  filter: blur(4px);
  animation: streamLight 3.5s ease-in-out infinite;
}
@keyframes streamLight {
  0% {
    transform: translate(-35%);
    opacity: 0.2;
  }
  55% {
    opacity: 1;
  }
  to {
    transform: translate(45%);
    opacity: 0.1;
  }
}
@media (max-width: 950px) {
  .about {
    margin-inline: 24px;
    padding: 48px;
  }
  .process-line:after {
    display: none;
  }
}
@media (max-width: 620px) {
  .service-grid article {
    min-height: 260px;
  }
  .about {
    margin: 54px 14px;
    padding: 34px 24px;
    border-radius: 18px;
  }
  .flow-journey i:not(:last-child):after {
    width: 25vw;
  }
}
@media (prefers-reduced-motion: reduce) {
  .process-line:after,
  .process-node,
  .flow-conversion .flow-stream:after {
    animation: none;
  }
}
.flow-conversion .flow-stream {
  background: repeating-radial-gradient(
    ellipse at 100% 50%,
    rgba(111, 73, 255, 0.82) 0 1px,
    transparent 2px 9px
  );
  opacity: 0.9;
}
.flow-conversion .flow-stream:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(
    90deg,
    rgba(120, 72, 255, 0.18),
    transparent 48%,
    rgba(48, 226, 205, 0.54)
  );
  mix-blend-mode: screen;
}
.flow-conversion .flow-stream:after {
  top: 46%;
  right: 4%;
  bottom: 46%;
  left: 12%;
  opacity: 0.72;
}
.offer.offer-carousel{display:block!important;width:calc(100% - 40px);max-width:1220px;min-height:0;margin:88px auto;padding:58px 36px!important}.offer-carousel-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:18px;width:100%;overflow-x:auto}.offer-solution{min-width:0;min-height:465px}.offer-solution>p{min-height:0}.offer-carousel-head{max-width:760px}@media(max-width:760px){.offer.offer-carousel{width:calc(100% - 28px);padding:42px 18px!important}.offer-carousel-track{grid-auto-columns:86%}.offer-solution{min-height:500px}}
.solution-preview{position:relative!important}
.portfolio .section-heading .carousel-controls{display:none}
.solution-preview{overflow:hidden}.preview-site:before{content:"";position:absolute;left:18px;top:29px;width:47%;height:9px;background:#f2efff;box-shadow:0 17px 0 var(--aqua),0 34px 0 #f2efff}.preview-site:after{content:"";position:absolute;right:-16px;top:10px;width:110px;height:110px;border-radius:50%;background:#7657ed35;box-shadow:0 0 42px #7657ed}.preview-romulus:before{content:"";position:absolute;left:18px;top:28px;width:42%;height:13px;border-radius:9px;background:#2bdec9;box-shadow:0 27px 0 #2bdec9}.preview-romulus:after{content:"";position:absolute;right:18px;top:45px;width:54%;height:12px;border-radius:9px;background:#30274f;box-shadow:0 25px 0 #30274f}.preview-track:before{content:"";position:absolute;left:50%;top:31px;width:12px;height:12px;border-radius:50%;background:#f4b740;box-shadow:0 0 0 9px #f4b74033,0 0 20px #f4b740}.preview-track:after{content:"";position:absolute;left:24%;right:18%;top:50%;border-top:1px dashed #37d9c3;transform:rotate(-16deg)}.preview-ouro:before{content:"";position:absolute;left:20px;right:20px;top:22px;bottom:18px;border:1px solid #8f6725;background:linear-gradient(90deg,#e4b63d 0 28%,transparent 28% 34%,#e4b63d 34% 66%,transparent 66% 72%,#92641b 72%);opacity:.7}.preview-ouro:after{content:"";position:absolute;left:32px;right:46%;bottom:25px;height:8px;background:#f1c95b;box-shadow:0 -19px 0 #a97520}
.conversation-flow.conversation-flow--whatsapp{border-bottom-color:transparent}
.conversation-flow.conversation-flow--whatsapp::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(147,127,255,.45) 25%,rgba(147,127,255,.45) 75%,transparent)}
section.hero{border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(151,135,218,.4) 25%,rgba(151,135,218,.4) 75%,transparent) 1}
.solution-preview.preview-site{background-image:url(/c2-assets/hero-site.png);background-size:cover;background-position:center}
.solution-preview.preview-site:before,.solution-preview.preview-site:after{content:none}
.solution-preview.preview-romulus{background-image:url(/c2-assets/hero-romulus.png);background-size:cover;background-position:center}
.solution-preview.preview-romulus:before,.solution-preview.preview-romulus:after{content:none}
.solution-preview.preview-track{background-image:url(/c2-assets/hero-track.png);background-size:cover;background-position:center}
.solution-preview.preview-track:before,.solution-preview.preview-track:after{content:none}
.solution-preview.preview-ouro{background-image:url(/c2-assets/hero-ouro.png);background-size:cover;background-position:center}
.solution-preview.preview-ouro:before,.solution-preview.preview-ouro:after{content:none}
button[aria-label="Oferta anterior"]::after{border:none;width:11px;height:11px;margin:0;background-color:#fff;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2Ij48cGF0aCBkPSJNMjIxLjY2LDEzMy42NmwtNzIsNzJhOCw4LDAsMCwxLTExLjMyLTExLjMyTDE5Ni42OSwxMzZINDBhOCw4LDAsMCwxLDAtMTZIMTk2LjY5TDEzOC4zNCw2MS42NmE4LDgsMCwwLDEsMTEuMzItMTEuMzJsNzIsNzJBOCw4LDAsMCwxLDIyMS42NiwxMzMuNjZaIi8+PC9zdmc+);mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2Ij48cGF0aCBkPSJNMjIxLjY2LDEzMy42NmwtNzIsNzJhOCw4LDAsMCwxLTExLjMyLTExLjMyTDE5Ni42OSwxMzZINDBhOCw4LDAsMCwxLDAtMTZIMTk2LjY5TDEzOC4zNCw2MS42NmE4LDgsMCwwLDEsMTEuMzItMTEuMzJsNzIsNzJBOCw4LDAsMCwxLDIyMS42NiwxMzMuNjZaIi8+PC9zdmc+);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:scaleX(-1)}
