/* Homepage V2 — intentionally scoped so legal/integration pages keep their current styling. */

.homepage-v2 {
  --v2-bg: #f6f7fb;
  --v2-surface: #ffffff;
  --v2-ink: #121529;
  --v2-muted: #62697a;
  --v2-line: #e1e5ee;
  --v2-purple: #312783;
  --v2-purple-2: #4939b4;
  --v2-purple-soft: #eceafa;
  --v2-blue: #009fe3;
  --v2-blue-soft: #e9f7fd;
  --v2-dark: #111426;
  --v2-dark-2: #191d33;
  --v2-shadow: 0 24px 70px rgba(19, 22, 48, .12);
  margin: 0;
  color: var(--v2-ink);
  background: var(--v2-bg);
  overflow-x: hidden;
}

.homepage-v2 *,
.homepage-v2 *::before,
.homepage-v2 *::after {
  box-sizing: border-box;
}

.homepage-v2 a {
  color: inherit;
}

.homepage-v2 button,
.homepage-v2 input,
.homepage-v2 textarea {
  font: inherit;
}

.v2-shell {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

.v2-header {
  position: fixed;
  z-index: 100;
  top: 18px;
  left: 50%;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 26px;
  width: min(1160px, calc(100% - 40px));
  min-height: 66px;
  padding: 9px 11px 9px 17px;
  transform: translateX(-50%);
  border: 1px solid rgba(224, 227, 237, .92);
  border-radius: 18px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 12px 36px rgba(18, 21, 41, .07);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

.v2-brand {
  display: inline-flex;
  align-items: center;
  width: fit-content;
}

.v2-brand img {
  display: block;
  width: 92px;
  height: 46px;
  object-fit: contain;
  object-position: left center;
  transform-origin: left center;
  transition: transform .42s cubic-bezier(.22, .8, .25, 1);
}

.v2-brand:hover img,
.v2-brand:focus-visible img {
  transform: scale(1.16);
}

.v2-nav {
  display: flex;
  align-items: center;
  gap: 28px;
}

.v2-nav a {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  padding: 9px 0;
  border-radius: 999px;
  color: #505667;
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
  background: transparent;
  transition: padding .42s cubic-bezier(.22, .8, .25, 1), font-size .42s cubic-bezier(.22, .8, .25, 1), color .42s ease, background-color .42s ease, box-shadow .42s ease;
}

.v2-nav a:hover,
.v2-nav a:focus-visible {
  padding-inline: 16px;
  color: var(--v2-purple);
  background: #f0edff;
  box-shadow: 0 5px 18px rgba(49, 39, 131, .16);
  font-size: 14px;
  outline-offset: 3px;
}

.v2-header-cta {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  color: #fff;
  background: var(--v2-ink);
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
  transition: transform .18s ease, background .18s ease;
}

.v2-header-cta:hover {
  background: var(--v2-purple);
  transform: translateY(-1px);
}

.v2-header-cta:active,
.v2-button:active {
  transform: scale(.98);
}

.v2-hero {
  position: relative;
  overflow: hidden;
  min-height: 860px;
  padding: 170px 0 105px;
  background:
    radial-gradient(circle at 70% 16%, rgba(0, 159, 227, .10), transparent 26%),
    radial-gradient(circle at 88% 68%, rgba(49, 39, 131, .10), transparent 32%),
    linear-gradient(180deg, #fafbfe 0%, #f5f6fa 100%);
}

.v2-hero::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
  opacity: .45;
  background-image:
    linear-gradient(rgba(36, 39, 70, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36, 39, 70, .035) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000 0, rgba(0,0,0,.75) 55%, transparent 100%);
}

.v2-hero-glow {
  position: absolute;
  top: 160px;
  right: -200px;
  width: 700px;
  height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(82, 70, 189, .12), transparent 66%);
  filter: blur(6px);
}

.v2-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: .91fr 1.09fr;
  align-items: center;
  gap: 76px;
}

.v2-hero-copy {
  position: relative;
  z-index: 4;
}

.v2-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 28px;
  color: var(--v2-purple);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.v2-kicker > span {
  width: 28px;
  height: 1px;
  background: linear-gradient(90deg, var(--v2-purple), var(--v2-blue));
}

.v2-hero h1 {
  max-width: 630px;
  margin: 0 0 27px;
  color: var(--v2-ink);
  font-family: var(--font-brand);
  font-size: clamp(53px, 5.25vw, 76px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.046em;
}

.v2-hero h1 em {
  color: var(--v2-purple);
  font-style: normal;
}

.v2-hero-lead {
  max-width: 600px;
  margin-bottom: 32px;
  color: var(--v2-muted);
  font-size: 18px;
  font-weight: 300;
  line-height: 1.65;
}

.v2-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-bottom: 31px;
}

.v2-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 18px;
  border: 0;
  border-radius: 12px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
  cursor: pointer;
  transition: transform .16s ease, box-shadow .18s ease, background .18s ease;
}

.v2-button-primary {
  color: #fff;
  background: linear-gradient(135deg, var(--v2-purple), #4435ad);
  box-shadow: 0 12px 24px rgba(49, 39, 131, .18);
}

.homepage-v2 .v2-button-primary,
.homepage-v2 .v2-button-primary:visited,
.homepage-v2 .v2-header-cta,
.homepage-v2 .v2-header-cta:visited {
  color: #fff;
}

.homepage-v2 .v2-button-primary span,
.homepage-v2 .v2-header-cta span {
  color: #fff;
}

.v2-button-primary:hover {
  box-shadow: 0 15px 30px rgba(49, 39, 131, .24);
  transform: translateY(-1px);
}

.v2-button-ghost {
  color: var(--v2-ink);
  border: 1px solid var(--v2-line);
  background: rgba(255,255,255,.8);
}

.v2-button-ghost:hover {
  background: #fff;
  transform: translateY(-1px);
}

.v2-principles {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: #73798a;
  font-size: 11px;
}

.v2-principles span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.v2-principles i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--v2-blue);
}

.v2-hero-stage {
  position: relative;
  min-height: 610px;
  perspective: 1300px;
}

.v2-stage-orbit {
  position: absolute;
  border: 1px solid rgba(72, 61, 163, .09);
  border-radius: 50%;
  pointer-events: none;
}

.v2-stage-orbit-one {
  top: 44px;
  right: -40px;
  width: 570px;
  height: 570px;
}

.v2-stage-orbit-two {
  top: 120px;
  right: 35px;
  width: 425px;
  height: 425px;
}

.v2-product-window {
  position: absolute;
  top: 82px;
  right: -14px;
  width: 660px;
  overflow: hidden;
  border: 1px solid rgba(203, 208, 221, .92);
  border-radius: 24px;
  background: #fff;
  box-shadow:
    0 45px 100px rgba(28, 31, 67, .18),
    0 12px 28px rgba(30, 33, 68, .08);
  transform: rotateY(-4deg) rotateX(1.5deg);
  transform-origin: center center;
}

.v2-window-topbar {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  align-items: center;
  gap: 14px;
  height: 42px;
  padding: 0 15px;
  border-bottom: 1px solid #eaedf3;
  background: #fbfcfd;
}

.v2-window-dots {
  display: flex;
  gap: 5px;
}

.v2-window-dots i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #cdd1dc;
}

.v2-window-topbar > span {
  justify-self: center;
  color: #989dac;
  font-family: Arial, sans-serif;
  font-size: 9px;
}

.v2-window-topbar > b {
  justify-self: end;
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 7px;
  color: #fff;
  background: var(--v2-purple);
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.v2-app-shell {
  display: grid;
  grid-template-columns: 130px 1fr;
  min-height: 415px;
}

.v2-app-sidebar {
  display: flex;
  flex-direction: column;
  padding: 18px 13px 14px;
  border-right: 1px solid #eaedf3;
  background: #f8f9fc;
}

.v2-app-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 2px 7px 19px;
}

.v2-app-brand img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.v2-app-brand strong {
  color: #25283b;
  font-family: Arial, sans-serif;
  font-size: 9px;
}

.v2-app-sidebar nav {
  display: grid;
  gap: 5px;
}

.v2-app-sidebar nav span {
  padding: 8px 9px;
  border-radius: 7px;
  color: #858a99;
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.v2-app-sidebar nav span.active {
  color: var(--v2-purple);
  background: #eceafa;
  font-weight: 700;
}

.v2-app-profile {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding: 10px 6px 0;
  border-top: 1px solid #e5e8ee;
}

.v2-app-profile i {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #24273a;
  font-family: Arial, sans-serif;
  font-size: 7px;
  font-style: normal;
}

.v2-app-profile span {
  color: #858a99;
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.v2-app-content {
  padding: 22px 22px 20px;
  background: #fff;
}

.v2-app-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.v2-app-heading > div {
  display: grid;
  gap: 3px;
}

.v2-app-heading span {
  color: #9297a7;
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.v2-app-heading strong {
  color: #23263a;
  font-family: Arial, sans-serif;
  font-size: 16px;
}

.v2-app-heading button {
  height: 29px;
  border: 0;
  border-radius: 7px;
  color: #fff;
  background: var(--v2-purple);
  padding: 0 10px;
  font-family: Arial, sans-serif;
  font-size: 8px;
}

.v2-stat-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-bottom: 16px;
}

.v2-stat-row > div {
  display: grid;
  gap: 3px;
  padding: 11px 10px;
  border: 1px solid #e7e9ef;
  border-radius: 9px;
  background: #fbfbfd;
}

.v2-stat-row span,
.v2-stat-row small {
  color: #969baa;
  font-family: Arial, sans-serif;
  font-size: 7px;
}

.v2-stat-row strong {
  color: #282b3e;
  font-family: Arial, sans-serif;
  font-size: 14px;
}

.v2-calendar {
  overflow: hidden;
  border: 1px solid #e6e8ef;
  border-radius: 11px;
}

.v2-calendar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border-bottom: 1px solid #e8eaf0;
}

.v2-calendar-head strong,
.v2-calendar-head span,
.v2-calendar-grid b,
.v2-calendar-grid .shift {
  font-family: Arial, sans-serif;
}

.v2-calendar-head strong {
  color: #303345;
  font-size: 9px;
}

.v2-calendar-head span {
  color: #9a9eac;
  font-size: 7px;
}

.v2-calendar-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.v2-calendar-grid > div {
  display: grid;
  align-content: start;
  gap: 5px;
  min-height: 115px;
  padding: 9px 7px;
  border-right: 1px solid #eef0f4;
}

.v2-calendar-grid > div:last-child {
  border-right: 0;
}

.v2-calendar-grid b {
  margin-bottom: 4px;
  color: #737889;
  font-size: 7px;
  font-weight: 700;
}

.v2-calendar-grid .shift {
  padding: 5px 6px;
  border-radius: 5px;
  font-size: 6px;
  font-weight: 700;
}

.shift-purple {
  color: #3c327e;
  background: #e9e6fa;
}

.shift-blue {
  color: #0579ab;
  background: #e4f6fd;
}

.shift-soft {
  color: #777c8c;
  background: #f0f2f6;
}

.v2-floating-card {
  position: absolute;
  z-index: 6;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 190px;
  padding: 12px 13px;
  border: 1px solid rgba(221, 225, 235, .94);
  border-radius: 14px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 17px 38px rgba(29, 32, 65, .12);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.v2-floating-card-top {
  top: 45px;
  right: 28px;
}

.v2-floating-card-bottom {
  right: 450px;
  bottom: 63px;
}

.v2-float-icon {
  display: grid;
  flex: 0 0 auto;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: var(--v2-purple);
  font-family: Arial, sans-serif;
  font-size: 11px;
}

.v2-float-icon.blue {
  background: var(--v2-blue);
}

.v2-floating-card > div {
  display: grid;
  gap: 2px;
}

.v2-floating-card small {
  color: #9196a5;
  font-size: 8px;
}

.v2-floating-card strong {
  color: #292c3f;
  font-size: 10px;
  font-weight: 400;
}

.v2-trust-strip {
  border-top: 1px solid var(--v2-line);
  border-bottom: 1px solid var(--v2-line);
  background: #fff;
}

.v2-trust-strip .v2-shell {
  display: grid;
  grid-template-columns: 160px 1fr;
  align-items: center;
  gap: 50px;
  padding: 33px 0;
}

.v2-trust-strip span {
  color: var(--v2-purple);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .15em;
}

.v2-trust-strip p {
  max-width: 830px;
  margin: 0;
  color: #777d8d;
  font-size: 15px;
}

.v2-trust-strip strong {
  color: #414658;
  font-weight: 400;
}

.v2-section {
  padding: 118px 0;
}

.v2-about {
  background: #fff;
}

.v2-section-heading {
  max-width: 760px;
  margin-bottom: 54px;
}

.v2-section-heading-split {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  align-items: end;
  gap: 95px;
  max-width: none;
}

.v2-section-heading h2,
.v2-product-intro h2,
.v2-integration-copy h2,
.v2-contact-copy h2 {
  margin: 0;
  color: var(--v2-ink);
  font-family: var(--font-brand);
  font-size: clamp(38px, 4.1vw, 58px);
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -.038em;
}

.v2-section-heading > p:not(.v2-eyebrow),
.v2-section-heading-split > p {
  margin: 0;
  color: var(--v2-muted);
  font-size: 17px;
  line-height: 1.7;
}

.v2-eyebrow {
  margin: 0 0 16px;
  color: var(--v2-purple);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.v2-eyebrow.light {
  color: #aeb9ff;
}

.v2-capability-grid {
  display: grid;
  grid-template-columns: 1.15fr .925fr .925fr;
  gap: 14px;
}

.v2-capability {
  position: relative;
  min-height: 325px;
  padding: 29px 28px;
  overflow: hidden;
  border: 1px solid var(--v2-line);
  border-radius: 22px;
  background: var(--v2-bg);
}

.v2-capability-featured {
  color: #fff;
  border-color: transparent;
  background:
    radial-gradient(circle at 88% 12%, rgba(0,159,227,.24), transparent 35%),
    linear-gradient(145deg, #2e257b, #201b5b);
}

.v2-capability-number {
  margin-bottom: 52px;
  color: #8c91a1;
  font-size: 10px;
}

.v2-capability-featured .v2-capability-number {
  color: #b8b4da;
}

.v2-capability-icon {
  display: grid;
  width: 39px;
  height: 39px;
  margin-bottom: 18px;
  place-items: center;
  border-radius: 11px;
  color: var(--v2-purple);
  background: #fff;
  box-shadow: 0 8px 20px rgba(21,24,42,.06);
  font-family: Arial, sans-serif;
  font-size: 17px;
}

.v2-capability-featured .v2-capability-icon {
  color: #fff;
  background: rgba(255,255,255,.13);
  box-shadow: none;
}

.v2-capability h3 {
  margin: 0 0 11px;
  color: var(--v2-ink);
  font-family: var(--font-brand);
  font-size: 24px;
  font-weight: 400;
}

.v2-capability-featured h3 {
  color: #fff;
}

.v2-capability p {
  max-width: 330px;
  margin: 0 0 20px;
  color: var(--v2-muted);
  font-size: 14px;
  line-height: 1.65;
}

.v2-capability-featured p {
  color: #d7d5e8;
}

.v2-capability a {
  position: absolute;
  bottom: 27px;
  color: var(--v2-purple);
  text-decoration: none;
  font-size: 12px;
  font-weight: 400;
}

.v2-capability-featured a {
  color: #fff;
}

.v2-capability a span {
  margin-left: 5px;
}

.v2-timetracker {
  position: relative;
  overflow: hidden;
  padding: 118px 0 100px;
  color: #fff;
  background:
    radial-gradient(circle at 8% 20%, rgba(74,57,180,.18), transparent 30%),
    radial-gradient(circle at 90% 75%, rgba(0,159,227,.12), transparent 28%),
    var(--v2-dark);
}

.v2-timetracker::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 48px 48px;
}

.v2-timetracker .v2-shell {
  position: relative;
  z-index: 1;
}

.v2-product-intro {
  display: grid;
  grid-template-columns: 1.1fr .62fr;
  align-items: end;
  gap: 100px;
  margin-bottom: 66px;
}

.v2-product-intro h2 {
  color: #fff;
}

.v2-product-intro-side p {
  margin: 0 0 20px;
  color: #b8bdca;
  font-size: 16px;
  line-height: 1.7;
}

.v2-text-link-light {
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
}

.v2-product-showcase {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 25px;
  align-items: stretch;
}

.v2-showcase-copy {
  padding: 36px 34px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 24px;
  background: rgba(255,255,255,.045);
}

.v2-product-badge {
  display: inline-flex;
  margin-bottom: 27px;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  color: #d7d9e4;
  background: rgba(255,255,255,.05);
  font-size: 10px;
}

.v2-showcase-copy h3 {
  max-width: 430px;
  margin: 0 0 16px;
  color: #fff;
  font-family: var(--font-brand);
  font-size: 34px;
  font-weight: 400;
  line-height: 1.1;
}

.v2-showcase-copy > p {
  margin-bottom: 29px;
  color: #aeb3c2;
  font-size: 14px;
  line-height: 1.7;
}

.v2-feature-list {
  display: grid;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.v2-feature-list li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 9px;
  padding: 13px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.v2-feature-list li > span {
  color: #7f85a0;
  font-family: Arial, sans-serif;
  font-size: 9px;
}

.v2-feature-list li > div {
  display: grid;
  gap: 3px;
}

.v2-feature-list strong {
  color: #f5f6f9;
  font-size: 13px;
  font-weight: 400;
}

.v2-feature-list small {
  color: #969cab;
  font-size: 11px;
}

.v2-product-visual {
  display: flex;
  flex-direction: column;
  align-self: end;
  gap: 34px;
  min-width: 0;
}

.v2-dashboard-preview {
  width: 100%;
  overflow: hidden;
  border: 1px solid #dfe3ec;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 28px 70px rgba(0,0,0,.24);
}

.v2-dashboard-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 21px 22px;
  border-bottom: 1px solid #e7eaf0;
  background: #fbfcfd;
}

.v2-dashboard-toolbar > div:first-child {
  display: grid;
  gap: 3px;
}

.v2-dashboard-toolbar span,
.v2-dashboard-toolbar strong,
.v2-dashboard-actions button,
.v2-month-summary span,
.v2-month-summary strong,
.v2-month-head span,
.v2-month-cells b,
.v2-preview-caption {
  font-family: Arial, sans-serif;
}

.v2-dashboard-toolbar span {
  color: #9ba0af;
  font-size: 8px;
}

.v2-dashboard-toolbar strong {
  color: #25283a;
  font-size: 16px;
}

.v2-dashboard-actions {
  display: flex;
  gap: 7px;
}

.v2-dashboard-actions button {
  height: 31px;
  border: 1px solid #dfe2e9;
  border-radius: 7px;
  background: #fff;
  color: #5f6475;
  padding: 0 10px;
  font-size: 8px;
}

.v2-dashboard-actions button.primary {
  border-color: var(--v2-purple);
  color: #fff;
  background: var(--v2-purple);
}

.v2-month-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  padding: 18px 20px 12px;
  background: #f7f8fb;
}

.v2-month-summary > div {
  display: grid;
  gap: 5px;
  padding: 12px 13px;
  border: 1px solid #e5e8ef;
  border-radius: 9px;
  background: #fff;
}

.v2-month-summary span {
  color: #979cab;
  font-size: 7px;
}

.v2-month-summary strong {
  color: #272a3c;
  font-size: 15px;
}

.v2-month-calendar {
  padding: 9px 20px 16px;
  background: #f7f8fb;
}

.v2-month-head,
.v2-month-cells {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.v2-month-head span {
  padding: 7px 6px;
  color: #9296a4;
  text-align: center;
  font-size: 7px;
}

.v2-month-cells {
  overflow: hidden;
  border: 1px solid #e2e5ec;
  border-radius: 9px;
  background: #fff;
}

.v2-month-cells > div {
  display: grid;
  align-content: start;
  gap: 5px;
  min-height: 78px;
  padding: 7px;
  border-right: 1px solid #eceef2;
  border-bottom: 1px solid #eceef2;
}

.v2-month-cells > div:nth-child(7n) {
  border-right: 0;
}

.v2-month-cells > div:nth-last-child(-n+7) {
  border-bottom: 0;
}

.v2-month-cells b {
  color: #777c8b;
  font-size: 7px;
}

.v2-month-cells i {
  width: 75%;
  height: 7px;
  border-radius: 3px;
  background: #eceef3;
}

.v2-month-cells i.purple,
.v2-preview-caption i.purple {
  background: #dcd8f4;
}

.v2-month-cells i.blue,
.v2-preview-caption i.blue {
  background: #cceefa;
}

.v2-month-cells i.soft,
.v2-preview-caption i.soft {
  background: #e7e9ee;
}

.v2-month-cells i.wide {
  width: 100%;
}

.v2-preview-caption {
  display: flex;
  gap: 17px;
  padding: 10px 20px 16px;
  color: #8e93a2;
  background: #f7f8fb;
  font-size: 7px;
}

.v2-preview-caption span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.v2-preview-caption i {
  width: 7px;
  height: 7px;
  border-radius: 2px;
}

.v2-product-flow {
  padding-inline: 5px;
}

.v2-product-flow ol {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.v2-product-flow li {
  --flow-accent: #b5a5ff;
  --flow-glow: rgba(169, 155, 255, .33);
  position: relative;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 12px;
  min-width: 0;
  min-height: 91px;
  color: #f4f3ff;
}

.v2-product-flow li:nth-child(1) { --flow-delay: 0s; }
.v2-product-flow li:nth-child(2) { --flow-delay: 1.6s; --flow-accent: #74d9ec; --flow-glow: rgba(116, 217, 236, .3); }
.v2-product-flow li:nth-child(3) { --flow-delay: 3.2s; --flow-accent: #009fe3; --flow-glow: rgba(0, 159, 227, .3); }
.v2-product-flow li:nth-child(4) { --flow-delay: 4.8s; }
.v2-product-flow li:nth-child(5) { --flow-delay: 6.4s; --flow-accent: #74d9ec; --flow-glow: rgba(116, 217, 236, .3); }

.v2-flow-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(181, 165, 255, .45);
  border-radius: 50%;
  color: var(--flow-accent);
  background: rgba(255,255,255,.08);
  animation: v2-flow-node 8s ease-in-out infinite;
  animation-delay: var(--flow-delay);
}

.v2-flow-icon svg {
  width: 25px;
  height: 25px;
}

.v2-product-flow li strong {
  max-width: 122px;
  text-align: center;
  font: 600 11px/1.35 Arial, sans-serif;
}

.v2-product-flow li:not(:last-child)::before,
.v2-product-flow li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 27px;
  left: calc(50% + 27px);
}

.v2-product-flow li:not(:last-child)::before {
  width: calc(100% + 24px - 54px);
  height: 7px;
  top: 24px;
  background: linear-gradient(90deg, rgba(181,165,255,.48), rgba(116,217,236,.45));
  clip-path: polygon(0 43%, calc(100% - 6px) 43%, calc(100% - 6px) 0, 100% 50%, calc(100% - 6px) 100%, calc(100% - 6px) 57%, 0 57%);
}

.v2-product-flow li:not(:last-child)::after {
  top: 24px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--flow-accent);
  box-shadow: 0 0 12px 3px var(--flow-glow);
  opacity: 0;
  animation: v2-flow-travel 8s linear infinite;
  animation-delay: calc(var(--flow-delay) + .7s);
}

@keyframes v2-flow-node {
  0%, 20%, 100% { border-color: rgba(181,165,255,.45); background: rgba(255,255,255,.08); box-shadow: 0 0 0 4px rgba(255,255,255,.025); transform: scale(1); }
  8% { border-color: var(--flow-accent); background: rgba(255,255,255,.18); box-shadow: 0 0 25px 5px var(--flow-glow); transform: scale(1.08); }
}

@keyframes v2-flow-travel {
  0%, 100% { left: calc(50% + 27px); opacity: 0; }
  2% { opacity: 1; }
  12% { left: calc(150% + 24px - 27px); opacity: 1; }
  18% { left: calc(150% + 24px - 27px); opacity: 0; }
  19% { left: calc(50% + 27px); opacity: 0; }
}

.v2-product-values {
  display: flex;
  justify-content: center;
  gap: 0;
  margin-top: 46px;
  border-top: 1px solid rgba(255,255,255,.10);
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.v2-product-values span {
  flex: 1;
  padding: 16px 18px;
  border-right: 1px solid rgba(255,255,255,.10);
  color: #aeb3c2;
  text-align: center;
  font-size: 10px;
  letter-spacing: .04em;
}

.v2-product-values span:last-child {
  border-right: 0;
}

.v2-process {
  background: var(--v2-bg);
}

.v2-process .v2-section-heading {
  max-width: 800px;
}

.v2-process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

.v2-process-grid article {
  min-height: 265px;
  padding: 4px 27px 0 0;
}

.v2-process-grid article:not(:last-child) {
  border-right: 1px solid var(--v2-line);
  margin-right: 27px;
}

.v2-process-grid article > span {
  color: var(--v2-purple);
  font-size: 10px;
}

.v2-process-line {
  width: 34px;
  height: 2px;
  margin: 22px 0 45px;
  background: linear-gradient(90deg, var(--v2-purple), var(--v2-blue));
}

.v2-process-grid h3 {
  margin: 0 0 11px;
  color: var(--v2-ink);
  font-family: var(--font-brand);
  font-size: 21px;
  font-weight: 400;
}

.v2-process-grid p {
  margin: 0;
  color: var(--v2-muted);
  font-size: 13px;
  line-height: 1.7;
}

.v2-integration-section {
  padding: 0 0 118px;
  background: var(--v2-bg);
}

.v2-integration-card {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  align-items: center;
  gap: 80px;
  overflow: hidden;
  padding: 58px 62px;
  border: 1px solid var(--v2-line);
  border-radius: 28px;
  background:
    radial-gradient(circle at 90% 5%, rgba(0,159,227,.11), transparent 34%),
    radial-gradient(circle at 60% 100%, rgba(49,39,131,.08), transparent 36%),
    #fff;
  box-shadow: 0 20px 55px rgba(26,29,56,.06);
}

.v2-integration-copy h2 {
  margin-bottom: 19px;
  font-size: clamp(34px, 3.5vw, 48px);
}

.v2-integration-copy > p:not(.v2-eyebrow) {
  max-width: 620px;
  margin-bottom: 25px;
  color: var(--v2-muted);
  font-size: 16px;
  line-height: 1.7;
}

.v2-integration-visual {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 90px 1fr;
  align-items: center;
  gap: 12px;
  padding: 26px;
  border: 1px solid #e4e7ee;
  border-radius: 22px;
  background: rgba(248,249,252,.82);
}

.v2-integration-node {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 100px;
  padding: 18px;
  border: 1px solid #e4e7ed;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 9px 25px rgba(29,31,60,.05);
}

.v2-integration-node img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.v2-integration-node > div {
  display: grid;
  gap: 3px;
}

.v2-integration-node small {
  color: #999eac;
  font-size: 9px;
}

.v2-integration-node strong {
  color: #2d3043;
  font-size: 13px;
  font-weight: 400;
}

.v2-spiris-mark {
  display: grid !important;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: #1f9d67;
  font-family: Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
}

.v2-integration-connector {
  display: grid;
  justify-items: center;
  gap: 5px;
}

.v2-integration-connector span {
  color: #999dac;
  font-size: 7px;
  white-space: nowrap;
}

.v2-integration-connector i {
  width: 100%;
  height: 1px;
  background: #d6dae4;
}

.v2-integration-connector b {
  display: grid;
  width: 25px;
  height: 25px;
  margin-top: -18px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--v2-purple), var(--v2-blue));
  font-family: Arial, sans-serif;
  font-size: 9px;
}

.v2-flow-tags {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding-top: 10px;
}

.v2-flow-tags span {
  padding: 6px 8px;
  border: 1px solid #e5e8ee;
  border-radius: 999px;
  color: #777c8c;
  background: #fff;
  font-size: 8px;
}

.v2-flow-tags b {
  color: #afb3bf;
  font-size: 8px;
}

.v2-contact {
  padding: 112px 0;
  background:
    radial-gradient(circle at 10% 20%, rgba(74,57,180,.18), transparent 30%),
    radial-gradient(circle at 90% 80%, rgba(0,159,227,.10), transparent 28%),
    var(--v2-dark);
}

.v2-contact-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 100px;
  align-items: start;
}

.v2-contact-copy h2 {
  margin-bottom: 23px;
  color: #fff;
}

.v2-contact-copy > p:not(.v2-eyebrow) {
  max-width: 520px;
  margin-bottom: 35px;
  color: #b5bac8;
  font-size: 16px;
  line-height: 1.7;
}

.v2-contact-email {
  display: grid;
  gap: 4px;
}

.v2-contact-email small {
  color: #7f8598;
  font-size: 10px;
}

.v2-contact-email a {
  color: #fff;
  text-decoration: none;
  font-size: 20px;
  font-weight: 400;
}

.v2-interest-form {
  padding: 30px;
  border-color: rgba(255,255,255,.11);
  background: rgba(255,255,255,.97);
  box-shadow: 0 28px 70px rgba(0,0,0,.20);
}

.v2-interest-form label {
  font-size: 12px;
  font-weight: 400;
}

.v2-interest-form input,
.v2-interest-form textarea {
  background: #f9fafc;
}

.v2-turnstile {
  color-scheme: light;
}

.v2-turnstile:not(:empty) {
  display: flex;
  justify-content: center;
  margin: 4px 0 20px;
}

.v2-form-submit {
  width: 100%;
}

.v2-footer {
  background: #fff;
}

.v2-footer-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  align-items: end;
  gap: 40px;
  padding: 44px 0 50px;
}

.v2-footer-brand img {
  display: block;
  width: 90px;
  height: 50px;
  object-fit: contain;
  object-position: left center;
}

.v2-footer-brand p {
  margin: 8px 0 0;
  color: var(--v2-muted);
  font-size: 12px;
}

.v2-footer-links,
.v2-footer-legal {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  color: #73798a;
  font-size: 11px;
}

.v2-footer-legal {
  justify-content: flex-end;
}

.v2-footer a {
  text-decoration: none;
}

.v2-footer a:hover {
  color: var(--v2-purple);
}

@media (hover: hover) and (pointer: fine) {
  .v2-capability {
    transition: transform .18s ease, box-shadow .18s ease;
  }

  .v2-capability:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 45px rgba(24, 28, 55, .09);
  }

  .v2-text-link-light:hover,
  .v2-capability a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
  }
}

/* Homepage motion stays on existing elements so the layout and responsive transforms remain intact. */
@keyframes v2-dashboard-float {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -18px; }
}

@keyframes v2-card-float-top {
  0%, 100% { translate: 0 0; }
  50% { translate: 3px 15px; }
}

@keyframes v2-card-float-bottom {
  0%, 100% { translate: 0 0; }
  50% { translate: -3px 13px; }
}

@keyframes v2-text-shimmer {
  from { background-position: 0% 0; }
  to { background-position: 100% 0; }
}

.v2-product-window {
  filter: blur(3.2px);
  animation: v2-dashboard-float 8.2s ease-in-out infinite;
  transition: filter .85s ease;
}

.v2-floating-card-top {
  animation: v2-card-float-top 8.2s ease-in-out -.4s infinite;
}

.v2-floating-card-bottom {
  animation: v2-card-float-bottom 8.2s ease-in-out -.9s infinite;
}

.v2-shimmer {
  color: var(--v2-purple);
}

@supports (-webkit-background-clip: text) or (background-clip: text) {
  .v2-shimmer {
    background: repeating-linear-gradient(90deg, var(--v2-purple) 0%, #6654bd 11%, #c5b7ff 25%, #6654bd 39%, var(--v2-purple) 50%);
    background-size: 200% 100%;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: v2-text-shimmer 4.8s linear infinite;
  }
}

.v2-header-cta {
  transition: color .35s ease, background-color .35s ease, box-shadow .35s ease;
}

.v2-header-cta span,
.v2-hero-actions .v2-button span {
  transition: color .35s ease;
}

.v2-hero-actions .v2-button {
  transition: transform .35s ease, color .35s ease, background-color .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.v2-hero-actions .v2-button-primary {
  background: var(--v2-purple);
}

.v2-hero-actions .v2-button-ghost {
  background: #fff;
}

.v2-capability-featured {
  color: var(--v2-ink);
  border-color: var(--v2-line);
  background: var(--v2-bg);
}

.v2-capability-featured .v2-capability-number { color: #8c91a1; }
.v2-capability-featured .v2-capability-icon { color: var(--v2-purple); background: #fff; box-shadow: 0 8px 20px rgba(21,24,42,.06); }
.v2-capability-featured h3 { color: var(--v2-ink); }
.v2-capability-featured p { color: var(--v2-muted); }
.v2-capability-featured a { color: var(--v2-purple); }

.v2-motion-ready .v2-section-heading-split > p {
  opacity: var(--v2-paragraph-opacity, 1);
}

.v2-reveal-ready .v2-product-badge,
.v2-reveal-ready h3,
.v2-reveal-ready > p,
.v2-reveal-ready .v2-feature-list li {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 1.15s ease, transform 1.15s cubic-bezier(.22, 1, .36, 1);
}

.v2-reveal-ready.is-revealed .v2-product-badge,
.v2-reveal-ready.is-revealed h3,
.v2-reveal-ready.is-revealed > p,
.v2-reveal-ready.is-revealed .v2-feature-list li {
  opacity: 1;
  transform: translateY(0);
}

.v2-reveal-ready.is-revealed h3 { transition-delay: .18s; }
.v2-reveal-ready.is-revealed > p { transition-delay: .36s; }
.v2-reveal-ready.is-revealed .v2-feature-list li:nth-child(1) { transition-delay: .54s; }
.v2-reveal-ready.is-revealed .v2-feature-list li:nth-child(2) { transition-delay: .72s; }
.v2-reveal-ready.is-revealed .v2-feature-list li:nth-child(3) { transition-delay: .9s; }
.v2-reveal-ready.is-revealed .v2-feature-list li:nth-child(4) { transition-delay: 1.08s; }

.homepage-v2 .v2-product-intro-side .v2-text-link-light {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  color: #fff;
  background: var(--v2-purple);
  transition: transform .35s ease, background-color .35s ease, box-shadow .35s ease;
}

@media (hover: hover) and (pointer: fine) {
  .v2-product-window:hover {
    filter: blur(0);
    animation-play-state: paused;
  }

  .homepage-v2 .v2-header-cta:hover {
    color: var(--v2-ink);
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--v2-ink);
    transform: none;
  }

  .homepage-v2 .v2-header-cta:hover span { color: var(--v2-ink); }

  .v2-hero-actions .v2-button:hover { transform: scale(1.015); }

  .homepage-v2 .v2-hero-actions:has(.v2-button-ghost:hover) .v2-button-primary {
    color: var(--v2-ink);
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--v2-line);
  }

  .homepage-v2 .v2-hero-actions:has(.v2-button-ghost:hover) .v2-button-primary span {
    color: var(--v2-ink);
  }

  .homepage-v2 .v2-hero-actions .v2-button-ghost:hover {
    color: #fff;
    border-color: var(--v2-purple);
    background: var(--v2-purple);
    box-shadow: 0 12px 24px rgba(49, 39, 131, .18);
  }

  .v2-capability {
    transition: transform .35s ease, color .35s ease, border-color .35s ease, background-color .35s ease, box-shadow .35s ease;
  }

  .v2-capability .v2-capability-number,
  .v2-capability .v2-capability-icon,
  .v2-capability h3,
  .v2-capability p,
  .v2-capability a {
    transition: color .35s ease, background-color .35s ease;
  }

  .v2-capability:hover {
    color: #fff;
    border-color: var(--v2-purple);
    background: var(--v2-purple);
    transform: scale(1.015);
    box-shadow: 0 18px 45px rgba(49, 39, 131, .16);
  }

  .v2-capability:hover .v2-capability-number { color: #b8b4da; }
  .v2-capability:hover .v2-capability-icon { color: var(--v2-purple); background: #fff; }
  .v2-capability:hover h3,
  .v2-capability:hover a { color: #fff; }
  .v2-capability:hover p { color: #e0ddf2; }

  .homepage-v2 .v2-product-intro-side .v2-text-link-light:hover {
    transform: scale(1.015);
    box-shadow: 0 12px 24px rgba(49, 39, 131, .25);
    text-decoration: none;
  }
}

.homepage-v2 .v2-header-cta:focus-visible {
  color: var(--v2-ink);
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--v2-ink);
}

.homepage-v2 .v2-header-cta:focus-visible span { color: var(--v2-ink); }
.v2-hero-actions .v2-button:focus-visible { transform: scale(1.015); }

.homepage-v2 .v2-hero-actions:has(.v2-button-ghost:focus-visible) .v2-button-primary {
  color: var(--v2-ink);
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--v2-line);
}

.homepage-v2 .v2-hero-actions:has(.v2-button-ghost:focus-visible) .v2-button-primary span { color: var(--v2-ink); }

.homepage-v2 .v2-hero-actions .v2-button-ghost:focus-visible {
  color: #fff;
  border-color: var(--v2-purple);
  background: var(--v2-purple);
}

.homepage-v2 .v2-product-intro-side .v2-text-link-light:focus-visible { transform: scale(1.015); }

@media (max-width: 1120px) {
  .v2-hero-grid {
    grid-template-columns: 1fr;
    gap: 46px;
  }

  .v2-hero {
    padding-bottom: 80px;
  }

  .v2-hero-copy {
    max-width: 760px;
  }

  .v2-hero h1 {
    max-width: 720px;
  }

  .v2-hero-stage {
    width: min(760px, 100%);
    min-height: 565px;
    margin-inline: auto;
  }

  .v2-product-window {
    right: 50%;
    transform: translateX(50%);
  }

  .v2-floating-card-top {
    right: 20px;
  }

  .v2-floating-card-bottom {
    left: 10px;
    right: auto;
  }

  .v2-section-heading-split,
  .v2-product-intro,
  .v2-contact-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .v2-capability-grid {
    grid-template-columns: 1fr 1fr;
  }

  .v2-capability-featured {
    grid-column: 1 / -1;
    min-height: 280px;
  }

  .v2-product-showcase {
    grid-template-columns: 1fr;
  }

  .v2-showcase-copy {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    column-gap: 40px;
    align-items: start;
  }

  .v2-showcase-copy .v2-product-badge,
  .v2-showcase-copy h3,
  .v2-showcase-copy > p {
    grid-column: 1;
  }

  .v2-feature-list {
    grid-column: 2;
    grid-row: 1 / span 3;
  }

  .v2-process-grid {
    grid-template-columns: 1fr 1fr;
    gap: 36px 0;
  }

  .v2-integration-card {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .v2-integration-visual {
    max-width: 650px;
  }

  .v2-contact-copy {
    max-width: 680px;
  }
}

@media (max-width: 820px) {
  .v2-header {
    grid-template-columns: 1fr auto;
  }

  .v2-nav {
    display: none;
  }

  .v2-hero {
    padding-top: 140px;
  }

  .v2-trust-strip .v2-shell {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .v2-product-window {
    width: min(660px, 100%);
  }

  .v2-floating-card {
    display: none;
  }

  .v2-capability-grid {
    grid-template-columns: 1fr;
  }

  .v2-capability-featured {
    grid-column: auto;
  }

  .v2-showcase-copy {
    display: block;
  }

  .v2-feature-list {
    margin-top: 25px;
  }

  .v2-process-grid {
    grid-template-columns: 1fr;
  }

  .v2-process-grid article:not(:last-child) {
    margin-right: 0;
    border-right: 0;
    border-bottom: 1px solid var(--v2-line);
    padding-bottom: 34px;
  }

  .v2-process-grid article {
    min-height: 0;
    padding-right: 0;
  }

  .v2-process-line {
    margin-bottom: 25px;
  }

  .v2-footer-grid {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .v2-footer-legal {
    justify-content: flex-start;
  }
}

@media (max-width: 650px) {
  .v2-shell {
    width: min(100% - 28px, 1180px);
  }

  .v2-header {
    top: 10px;
    width: calc(100% - 24px);
    min-height: 58px;
    padding: 7px 8px 7px 12px;
    border-radius: 15px;
  }

  .v2-brand img {
    width: 74px;
    height: 40px;
  }

  .v2-header-cta {
    min-height: 40px;
    padding: 0 12px;
    font-size: 11px;
  }

  .v2-hero {
    min-height: auto;
    padding: 118px 0 64px;
  }

  .v2-hero h1 {
    font-size: clamp(44px, 13vw, 62px);
  }

  .v2-hero-lead {
    font-size: 16px;
  }

  .v2-kicker {
    font-size: 9px;
  }

  .v2-principles {
    display: grid;
    gap: 7px;
  }

  .v2-hero-stage {
    min-height: 430px;
  }

  .v2-stage-orbit {
    display: none;
  }

  .v2-product-window {
    top: 22px;
    width: 610px;
    transform: translateX(50%) scale(.69);
    transform-origin: top center;
    filter: none;
  }

  .v2-trust-strip .v2-shell {
    padding: 26px 0;
  }

  .v2-section,
  .v2-timetracker {
    padding: 82px 0;
  }

  .v2-section-heading,
  .v2-product-intro {
    margin-bottom: 39px;
  }

  .v2-section-heading h2,
  .v2-product-intro h2,
  .v2-integration-copy h2,
  .v2-contact-copy h2 {
    font-size: clamp(34px, 10vw, 46px);
  }

  .v2-capability {
    min-height: 285px;
    padding: 24px;
  }

  .v2-capability-number {
    margin-bottom: 37px;
  }

  .v2-product-showcase {
    gap: 16px;
  }

  .v2-showcase-copy {
    padding: 27px 23px;
  }

  .v2-showcase-copy h3 {
    font-size: 29px;
  }

  .v2-dashboard-preview {
    margin-inline: 0;
  }

  .v2-dashboard-toolbar {
    padding: 16px;
  }

  .v2-dashboard-actions button:first-child {
    display: none;
  }

  .v2-month-summary {
    grid-template-columns: 1fr 1fr;
    padding-inline: 14px;
  }

  .v2-month-summary > div:last-child {
    display: none;
  }

  .v2-month-calendar {
    padding-inline: 14px;
    overflow-x: auto;
  }

  .v2-month-head,
  .v2-month-cells {
    min-width: 520px;
  }

  .v2-preview-caption {
    flex-wrap: wrap;
    padding-inline: 14px;
  }

  .v2-product-flow {
    padding-inline: 12px;
  }

  .v2-product-visual {
    gap: 28px;
  }

  .v2-product-flow ol {
    grid-template-columns: 1fr;
    gap: 17px;
  }

  .v2-product-flow li {
    grid-template-columns: 54px 1fr;
    justify-items: start;
    align-content: center;
    align-items: center;
    gap: 16px;
    min-height: 54px;
  }

  .v2-product-flow li strong {
    grid-column: 2;
    grid-row: 1;
    max-width: none;
    text-align: left;
  }

  .v2-product-flow li:not(:last-child)::before,
  .v2-product-flow li:not(:last-child)::after {
    top: 54px;
    left: 27px;
  }

  .v2-product-flow li:not(:last-child)::before {
    left: 24px;
    width: 7px;
    height: 17px;
    background: linear-gradient(180deg, rgba(181,165,255,.48), rgba(116,217,236,.45));
    clip-path: polygon(43% 0, 57% 0, 57% calc(100% - 6px), 100% calc(100% - 6px), 50% 100%, 0 calc(100% - 6px), 43% calc(100% - 6px));
  }

  .v2-product-flow li:not(:last-child)::after {
    top: 54px;
    left: 24px;
    animation-name: v2-flow-travel-vertical;
  }

  .v2-product-values {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .v2-product-values span {
    border-bottom: 1px solid rgba(255,255,255,.10);
  }

  .v2-product-values span:nth-child(2n) {
    border-right: 0;
  }

  .v2-integration-section {
    padding-bottom: 82px;
  }

  .v2-integration-card {
    padding: 31px 24px;
    border-radius: 22px;
  }

  .v2-integration-visual {
    grid-template-columns: 1fr;
    padding: 17px;
  }

  .v2-integration-connector {
    grid-template-columns: 1fr auto 1fr;
    width: 100%;
  }

  .v2-integration-connector i {
    width: 100%;
  }

  .v2-integration-connector b {
    margin: 0;
    transform: rotate(90deg);
  }

  .v2-integration-connector span {
    display: none;
  }

  .v2-flow-tags {
    grid-column: auto;
  }

  .v2-contact {
    padding: 82px 0;
  }

  .v2-contact-grid {
    gap: 42px;
  }

  .v2-interest-form {
    padding: 22px;
  }

  .v2-interest-form .field-grid {
    grid-template-columns: 1fr;
  }

  .v2-footer-grid {
    padding: 34px 0 38px;
  }
}

@keyframes v2-flow-travel-vertical {
  0%, 100% { top: 54px; opacity: 0; }
  2% { opacity: 1; }
  12% { top: 71px; opacity: 1; }
  18% { top: 71px; opacity: 0; }
  19% { top: 54px; opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .v2-product-window {
    filter: none;
    translate: none;
  }

  .v2-shimmer {
    background: none;
    -webkit-text-fill-color: currentColor;
  }

  .v2-product-flow li:not(:last-child)::after {
    display: none;
  }

  .v2-motion-ready .v2-section-heading-split > p,
  .v2-reveal-ready .v2-product-badge,
  .v2-reveal-ready h3,
  .v2-reveal-ready > p,
  .v2-reveal-ready .v2-feature-list li {
    opacity: 1;
    transform: none;
  }

  .v2-capability,
  .v2-hero-actions .v2-button,
  .homepage-v2 .v2-product-intro-side .v2-text-link-light {
    transform: none !important;
  }

  .homepage-v2 *,
  .homepage-v2 *::before,
  .homepage-v2 *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
