/* ==========================================================
   SALES OUTSOURCING PAGE
========================================================== */

.sales-outsourcing-page {

  --sv-bg: #05090d;

  --sv-bg2: #07121e;

  --sv-bg3: #0c1827;

  --sv-card: #0d1928;

  --sv-border:
    rgba(128,170,207,.13);

  --sv-border-blue:
    rgba(96,190,242,.26);

  --sv-white:
    #f3f6f9;

  --sv-text:
    #9aacbc;

  --sv-muted:
    #718699;

  --sv-blue:
    #65c8fa;

  --sv-purple:
    #8c89ff;

  --sv-teal:
    #5dd9c8;

  overflow: hidden;

  background:
    var(--sv-bg);

}



/* ==========================================================
   GLOBAL PAGE
========================================================== */

.so-v2-section {

  position: relative;

  padding:
    105px 0;

  overflow: hidden;

}


.so-v2-eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  color:
    var(--sv-blue);

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 1.5px;

}


.so-v2-eyebrow > span {

  width: 20px;

  height: 1px;

  background:
    var(--sv-blue);

}


.so-v2-glow {

  position: absolute;

  width: 650px;

  height: 650px;

  border-radius: 50%;

  filter:
    blur(135px);

  pointer-events: none;

}


.so-v2-glow-a {

  left: -420px;

  bottom: -300px;

  background:
    rgba(26,117,182,.20);

}


.so-v2-glow-b {

  right: -390px;

  top: -180px;

  background:
    rgba(102,80,211,.13);

}


.so-v2-glow-c {

  right: -400px;

  top: 0;

  background:
    rgba(64,76,194,.10);

}


.so-v2-glow-d {

  left: -420px;

  top: 10%;

  background:
    rgba(56,89,181,.09);

}



/* ==========================================================
   HERO
========================================================== */

.so-hero-v2 {

  position: relative;

  padding:
    165px 0 96px;

  overflow: hidden;

  background:

    radial-gradient(
      circle at 7% 20%,
      rgba(23,102,166,.24),
      transparent 35%
    ),

    radial-gradient(
      circle at 90% 18%,
      rgba(96,74,199,.15),
      transparent 34%
    ),

    linear-gradient(
      135deg,
      #071422 0%,
      #04080d 51%,
      #091421 100%
    );

}


.so-v2-grid {

  position: absolute;

  inset: 0;

  opacity: .045;

  background-image:

    linear-gradient(
      rgba(101,200,250,.11) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(101,200,250,.11) 1px,
      transparent 1px
    );

  background-size:
    72px 72px;

}


.so-v2-hero-layout {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    .9fr 1.1fr;

  gap: 70px;

  align-items: center;

}



/* ==========================================================
   TYPEWRITER HERO
========================================================== */

.so-v2-hero-title {

  margin:
    20px 0 0;

  max-width: 780px;

  min-height:
    225px;

  font-family:
    "Manrope",
    sans-serif;

  font-size:
    clamp(
      52px,
      5.1vw,
      74px
    );

  line-height: 1.02;

  letter-spacing: -4.3px;

}


.hero-static {

  display: block;

  color:
    var(--sv-white);

}


.hero-type-line {

  display: block;

  min-height:
    2.05em;

}


.hero-type-text {

  color: transparent;

  background:

    linear-gradient(
      90deg,
      #61c8fb 0%,
      #70baff 42%,
      #9185ff 100%
    );

  -webkit-background-clip:
    text;

  background-clip:
    text;

}


.hero-type-cursor {

  display: inline-block;

  width: 3px;

  height: .86em;

  margin-left: 5px;

  vertical-align: -.04em;

  border-radius: 10px;

  background:
    var(--sv-blue);

  box-shadow:
    0 0 14px
    rgba(101,200,250,.55);

  animation:
    heroCursorBlink
    .75s
    steps(1)
    infinite;

}


@keyframes heroCursorBlink {

  0%,
  49% {

    opacity: 1;

  }

  50%,
  100% {

    opacity: 0;

  }

}


.so-v2-hero-lead {

  max-width: 660px;

  margin:
    12px 0 0;

  color:
    #a6b6c4;

  font-size: 16px;

  line-height: 1.75;

}


.so-v2-hero-lead strong {

  color:
    #deebf3;

}


.so-v2-proof-points {

  display: flex;

  flex-wrap: wrap;

  gap:
    10px 19px;

  margin-top: 23px;

}


.so-v2-proof-points span {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  color:
    #91a4b5;

  font-size: 11px;

}


.so-v2-proof-points svg {

  width: 14px;

  height: 14px;

  color:
    var(--sv-teal);

}


.so-v2-actions {

  display: flex;

  flex-wrap: wrap;

  gap: 11px;

  margin-top: 30px;

}


.so-v2-primary,
.so-v2-secondary {

  min-height: 52px;

  padding:
    0 21px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 9px;

  border-radius: 10px;

  text-decoration: none;

  font-size: 13px;

  font-weight: 700;

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;

}


.so-v2-primary {

  color:
    #07131d;

  background:

    linear-gradient(
      135deg,
      #afe5ff,
      #65c8fa
    );

  box-shadow:

    0 14px 34px
    rgba(101,200,250,.15);

}


.so-v2-primary:hover {

  transform:
    translateY(-3px);

  box-shadow:

    0 20px 44px
    rgba(101,200,250,.25);

}


.so-v2-secondary {

  color:
    #e1eaf1;

  border:

    1px solid
    var(--sv-border);

  background:
    rgba(255,255,255,.016);

}


.so-v2-secondary:hover {

  transform:
    translateY(-3px);

  border-color:
    var(--sv-border-blue);

}


.so-v2-primary svg,
.so-v2-secondary svg {

  width: 14px;

  height: 14px;

}



/* ==========================================================
   PIPELINE CARD
========================================================== */

.so-v2-flow-card {

  position: relative;

  padding: 27px;

  border-radius: 22px;

  border:

    1px solid
    rgba(101,200,250,.18);

  background:

    radial-gradient(
      circle at 90% 0%,
      rgba(94,79,210,.11),
      transparent 32%
    ),

    linear-gradient(
      145deg,
      #14243b,
      #09131f
    );

  box-shadow:

    0 45px 100px
    rgba(0,0,0,.38);

  transform-style:
    preserve-3d;

  transition:
    transform .18s ease,
    border-color .25s ease,
    box-shadow .25s ease;

}


.so-v2-flow-card:hover {

  border-color:
    rgba(101,200,250,.31);

  box-shadow:

    0 54px 120px
    rgba(0,0,0,.47);

}


.so-v2-flow-card::before {

  content: "";

  position: absolute;

  top: 0;

  left: 14%;

  width: 42%;

  height: 1px;

  background:

    linear-gradient(
      90deg,
      transparent,
      var(--sv-blue),
      var(--sv-purple),
      transparent
    );

}


.so-v2-flow-head {

  display: flex;

  justify-content:
    space-between;

  align-items:
    flex-start;

  padding-bottom: 19px;

  border-bottom:

    1px solid
    var(--sv-border);

}


.so-v2-flow-head small {

  color:
    var(--sv-blue);

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 1.4px;

}


.so-v2-flow-head h3 {

  margin:
    6px 0 0;

  color:
    #edf3f7;

  font-size: 22px;

}


.so-v2-live {

  display: inline-flex;

  align-items: center;

  gap: 7px;

  color:
    var(--sv-teal);

  font-size: 8px;

  font-weight: 700;

}


.so-v2-live i {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background:
    var(--sv-teal);

  animation:
    soV2Pulse
    1.8s
    infinite;

}


@keyframes soV2Pulse {

  0% {

    box-shadow:

      0 0 0 0
      rgba(93,217,200,.3);

  }

  70% {

    box-shadow:

      0 0 0 10px
      rgba(93,217,200,0);

  }

  100% {

    box-shadow:

      0 0 0 0
      rgba(93,217,200,0);

  }

}


.so-v2-flow-stats {

  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 9px;

  padding:
    20px 0;

}


.so-v2-flow-stats article {

  padding: 14px;

  border-radius: 11px;

  border:

    1px solid
    rgba(140,180,212,.09);

  background:
    rgba(255,255,255,.014);

}


.so-v2-flow-stats span {

  display: block;

  color:
    #6f8396;

  font-size: 7px;

}


.so-v2-flow-stats strong {

  display: block;

  margin-top: 6px;

  color:
    #edf3f7;

  font-size: 19px;

}


.so-v2-process {

  position: relative;

  padding:
    5px 0;

}


.so-v2-process-line {

  position: absolute;

  left: 20px;

  top: 30px;

  bottom: 30px;

  width: 1px;

  background:

    linear-gradient(
      var(--sv-blue),
      rgba(101,200,250,.05)
    );

}


.so-v2-process article {

  position: relative;

  z-index: 2;

  min-height: 69px;

  padding: 10px;

  display: grid;

  grid-template-columns:
    40px 1fr auto;

  gap: 13px;

  align-items: center;

  border-radius: 10px;

  transition:
    transform .3s ease,
    background .3s ease;

}


.so-v2-process article.active {

  transform:
    translateX(4px);

  background:
    rgba(101,200,250,.035);

}


.so-v2-process-icon {

  width: 40px;

  height: 40px;

  display: grid;

  place-items: center;

  border-radius: 10px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    #0c1c2d;

}


.so-v2-process-icon svg {

  width: 16px;

}


.so-v2-process strong {

  display: block;

  color:
    #dfe8ef;

  font-size: 11px;

}


.so-v2-process small {

  display: block;

  margin-top: 4px;

  color:
    #708497;

  font-size: 8px;

}


.so-v2-status {

  color:
    #61778b;

  font-size: 7px;

  font-weight: 700;

}


.so-v2-process article.active
.so-v2-status {

  color:
    var(--sv-teal);

}


.so-v2-flow-footer {

  display: flex;

  justify-content:
    space-between;

  gap: 10px;

  padding-top: 17px;

  border-top:

    1px solid
    var(--sv-border);

}


.so-v2-flow-footer span {

  display: flex;

  align-items: center;

  gap: 6px;

  color:
    #73879a;

  font-size: 8px;

}


.so-v2-flow-footer svg {

  width: 12px;

  color:
    var(--sv-blue);

}


.so-v2-float {

  position: absolute;

  z-index: 5;

  padding:
    8px 12px;

  display: flex;

  align-items: center;

  gap: 7px;

  border-radius: 100px;

  color:
    #92dbff;

  border:

    1px solid
    rgba(101,200,250,.16);

  background:
    rgba(5,12,20,.95);

  box-shadow:

    0 15px 35px
    rgba(0,0,0,.3);

  font-size: 8px;

  animation:
    soV2Float
    4s
    ease-in-out
    infinite;

}


.so-v2-float svg {

  width: 13px;

}


.so-v2-float-a {

  right: -27px;

  top: 73px;

}


.so-v2-float-b {

  left: -25px;

  bottom: 75px;

  animation-delay: 1s;

}


@keyframes soV2Float {

  50% {

    transform:
      translateY(-7px);

  }

}



/* ==========================================================
   VALUE STRIP
========================================================== */

.so-v2-value-strip {

  border-top:

    1px solid
    rgba(130,170,205,.07);

  border-bottom:

    1px solid
    rgba(130,170,205,.07);

  background:

    linear-gradient(
      90deg,
      #05090d,
      #0b1827,
      #05090d
    );

}


.so-v2-value-grid {

  display: grid;

  grid-template-columns:
    repeat(4,1fr);

}


.so-v2-value-grid article {

  min-height: 115px;

  padding:
    23px 24px;

  display: grid;

  grid-template-columns:
    38px 1fr;

  gap: 13px;

  align-items: center;

  border-right:

    1px solid
    rgba(130,170,205,.08);

}


.so-v2-value-grid article:last-child {

  border-right: 0;

}


.so-v2-value-grid svg {

  width: 36px;

  height: 36px;

  padding: 9px;

  border-radius: 9px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.035);

}


.so-v2-value-grid strong {

  display: block;

  color:
    #eaf1f6;

  font-size: 13px;

}


.so-v2-value-grid span {

  display: block;

  margin-top: 4px;

  color:
    #778b9e;

  font-size: 9px;

}



/* ==========================================================
   SHARED HEADINGS
========================================================== */

.so-v2-heading-grid {

  display: grid;

  grid-template-columns:
    1.05fr .95fr;

  gap: 70px;

  align-items: end;

  margin-bottom: 48px;

}


.so-v2-heading-grid h2,
.so-v2-center-heading h2,
.so-v2-roi-copy h2,
.so-v2-why-copy h2,
.so-v2-faq-intro h2,
.so-v2-signs-copy h2,
.so-v2-ai-copy h2,
.so-v2-outcomes-copy h2 {

  margin:
    15px 0 0;

  color:
    var(--sv-white);

  font-family:
    "Manrope",
    sans-serif;

  font-size:
    clamp(
      36px,
      4vw,
      54px
    );

  line-height: 1.06;

  letter-spacing: -2.3px;

}


.so-v2-heading-grid h2 span,
.so-v2-center-heading h2 span,
.so-v2-roi-copy h2 span,
.so-v2-why-copy h2 span,
.so-v2-faq-intro h2 span,
.so-v2-signs-copy h2 span,
.so-v2-ai-copy h2 span,
.so-v2-outcomes-copy h2 span {

  display: block;

  color: transparent;

  background:

    linear-gradient(
      90deg,
      var(--sv-blue),
      var(--sv-purple)
    );

  -webkit-background-clip:
    text;

  background-clip:
    text;

}


.so-v2-heading-grid > p {

  margin: 0;

  max-width: 560px;

  color:
    var(--sv-text);

  font-size: 15px;

  line-height: 1.78;

}


.so-v2-center-heading {

  max-width: 800px;

  margin:
    0 auto 50px;

  text-align: center;

}


.so-v2-center-heading
.so-v2-eyebrow {

  justify-content: center;

}


.so-v2-center-heading > p {

  max-width: 640px;

  margin:
    16px auto 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}



/* ==========================================================
   HOW DAWN WORKS
========================================================== */

.so-v2-system {

  background:

    linear-gradient(
      180deg,
      #07121e,
      #05090d
    );

}


.so-v2-system-flow {

  display: grid;

  grid-template-columns:
    1fr auto
    1fr auto
    1fr auto
    1fr auto
    1fr;

  gap: 13px;

  align-items: stretch;

}


.so-v2-system-flow article {

  min-height: 230px;

  padding: 22px;

  border-radius: 15px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2c,
      #080f16
    );

  transition:
    transform .3s ease,
    border-color .3s ease;

}


.so-v2-system-flow article:hover {

  transform:
    translateY(-6px);

  border-color:
    var(--sv-border-blue);

}


.so-v2-system-flow article > span {

  color:
    #52687c;

  font-size: 8px;

}


.so-v2-system-flow article > svg {

  display: block;

  width: 42px;

  height: 42px;

  padding: 11px;

  margin-top: 26px;

  border-radius: 10px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-system-flow strong {

  display: block;

  margin-top: 26px;

  color:
    #edf3f7;

  font-size: 14px;

}


.so-v2-system-flow p {

  margin:
    8px 0 0;

  color:
    #8195a8;

  font-size: 10px;

  line-height: 1.6;

}


.so-v2-flow-arrow {

  display: grid;

  place-items: center;

  color:
    #4f718c;

}


.so-v2-flow-arrow svg {

  width: 15px;

}



/* ==========================================================
   FAILURE
========================================================== */

.so-v2-failure {

  background:

    radial-gradient(
      circle at 85% 35%,
      rgba(77,65,170,.08),
      transparent 34%
    ),

    #05090d;

}


.so-v2-failure-grid {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  gap: 14px;

}


.so-v2-failure-grid article {

  position: relative;

  min-height: 275px;

  padding: 27px;

  border-radius: 17px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2b,
      #080e15
    );

  transition:
    transform .3s ease,
    border-color .3s ease;

}


.so-v2-failure-grid article:hover {

  transform:
    translateY(-7px);

  border-color:
    rgba(101,200,250,.23);

}


.so-v2-failure-grid article > span {

  position: absolute;

  right: 20px;

  top: 20px;

  color:
    #52697c;

  font-size: 8px;

}


.so-v2-failure-grid article > svg {

  width: 46px;

  height: 46px;

  padding: 12px;

  border-radius: 11px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-failure-grid h3 {

  margin:
    42px 0 0;

  color:
    #edf3f7;

  font-size: 18px;

}


.so-v2-failure-grid p {

  margin:
    9px 0 0;

  color:
    #8195a8;

  font-size: 11px;

  line-height: 1.68;

}


.so-v2-failure-callout {

  margin-top: 15px;

  padding: 22px;

  display: grid;

  grid-template-columns:
    44px 1fr;

  gap: 15px;

  align-items: center;

  border-radius: 13px;

  border:

    1px solid
    rgba(93,217,200,.13);

  background:

    linear-gradient(
      90deg,
      rgba(93,217,200,.04),
      rgba(101,200,250,.02)
    );

}


.so-v2-failure-callout > svg {

  width: 42px;

  height: 42px;

  padding: 11px;

  border-radius: 10px;

  color:
    var(--sv-teal);

  background:
    rgba(93,217,200,.05);

}


.so-v2-failure-callout small {

  display: block;

  color:
    var(--sv-teal);

  font-size: 8px;

  letter-spacing: 1.2px;

}


.so-v2-failure-callout strong {

  display: block;

  margin-top: 5px;

  color:
    #e5edf3;

  font-size: 16px;

}



/* ==========================================================
   SIGNS
========================================================== */

.so-v2-signs {

  background:

    radial-gradient(
      circle at 10% 15%,
      rgba(26,106,169,.11),
      transparent 35%
    ),

    linear-gradient(
      180deg,
      #07111c,
      #05090d
    );

}


.so-v2-signs-layout {

  display: grid;

  grid-template-columns:
    .78fr 1.22fr;

  gap: 75px;

}


.so-v2-signs-copy p {

  max-width: 500px;

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-signs-list {

  border-top:

    1px solid
    var(--sv-border);

}


.so-v2-signs-list article {

  min-height: 118px;

  padding:
    22px 4px;

  display: grid;

  grid-template-columns:
    46px 1fr auto;

  gap: 18px;

  align-items: center;

  border-bottom:

    1px solid
    var(--sv-border);

  transition:
    padding-left .3s ease,
    background .3s ease;

}


.so-v2-signs-list article:hover {

  padding-left: 10px;

  background:

    linear-gradient(
      90deg,
      rgba(101,200,250,.03),
      transparent
    );

}


.so-v2-signs-list article > span {

  color:
    var(--sv-blue);

  font-size: 8px;

  font-weight: 700;

}


.so-v2-signs-list h3 {

  margin: 0;

  color:
    #edf3f7;

  font-size: 16px;

}


.so-v2-signs-list p {

  margin:
    6px 0 0;

  color:
    #7e92a5;

  font-size: 10px;

  line-height: 1.6;

}


.so-v2-signs-list svg {

  width: 16px;

  color:
    #667b8e;

}



/* ==========================================================
   FIT
========================================================== */

.so-v2-fit {

  background:

    linear-gradient(
      180deg,
      #05090d,
      #07111c
    );

}


.so-v2-fit-grid {

  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 15px;

}


.so-v2-fit-grid article {

  padding: 34px;

  border-radius: 19px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #111d2d,
      #080f17
    );

}


.so-v2-fit-grid .fit-positive {

  border-color:
    rgba(93,217,200,.16);

  background:

    radial-gradient(
      circle at 100% 0%,
      rgba(93,217,200,.06),
      transparent 35%
    ),

    linear-gradient(
      145deg,
      #10202d,
      #071015
    );

}


.so-v2-fit-title {

  display: flex;

  align-items: center;

  gap: 11px;

  padding-bottom: 21px;

  border-bottom:

    1px solid
    var(--sv-border);

}


.so-v2-fit-title svg {

  width: 19px;

}


.fit-positive
.so-v2-fit-title svg {

  color:
    var(--sv-teal);

}


.fit-negative
.so-v2-fit-title svg {

  color:
    #9d88b9;

}


.so-v2-fit-title strong {

  color:
    #e5edf3;

  font-size: 11px;

}


.so-v2-fit-grid ul {

  margin:
    22px 0 0;

  padding: 0;

  list-style: none;

}


.so-v2-fit-grid li {

  position: relative;

  padding:
    12px 0 12px 29px;

  color:
    #8a9dad;

  border-bottom:

    1px solid
    rgba(145,180,210,.06);

  font-size: 12px;

  line-height: 1.5;

}


.so-v2-fit-grid li:last-child {

  border-bottom: 0;

}


.so-v2-fit-grid li::before {

  content: "";

  position: absolute;

  left: 4px;

  top: 18px;

  width: 7px;

  height: 7px;

  border-radius: 50%;

}


.fit-positive li::before {

  background:
    var(--sv-teal);

}


.fit-negative li::before {

  background:
    #816f99;

}



/* ==========================================================
   SERVICES GRID
========================================================== */

.so-v2-work {

  background:

    radial-gradient(
      circle at 90% 5%,
      rgba(82,70,180,.08),
      transparent 31%
    ),

    #05090d;

}


.so-v2-work-grid {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 14px;

}


.so-v2-work-grid article {

  position: relative;

  min-height: 300px;

  padding: 27px;

  border-radius: 17px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2b,
      #080e15
    );

  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;

}


.so-v2-work-grid article:hover {

  transform:
    translateY(-7px);

  border-color:
    rgba(101,200,250,.24);

  box-shadow:

    0 25px 60px
    rgba(0,0,0,.22);

}


.so-v2-work-grid article > span {

  position: absolute;

  right: 20px;

  top: 20px;

  color:
    #52697c;

  font-size: 8px;

}


.so-v2-work-icon {

  width: 46px;

  height: 46px;

  display: grid;

  place-items: center;

  border-radius: 11px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-work-icon svg {

  width: 19px;

}


.so-v2-work-grid h3 {

  margin:
    44px 0 0;

  color:
    #edf3f7;

  font-size: 18px;

}


.so-v2-work-grid p {

  margin:
    9px 0 0;

  color:
    #8094a7;

  font-size: 11px;

  line-height: 1.68;

}


.so-v2-work-grid small {

  display: block;

  margin-top: 23px;

  padding-top: 17px;

  color:
    #63798d;

  border-top:

    1px solid
    rgba(130,170,205,.07);

  font-size: 8px;

}



/* ==========================================================
   BUSINESS OUTCOMES
========================================================== */

.so-v2-outcomes {

  background:

    radial-gradient(
      circle at 12% 30%,
      rgba(34,114,177,.10),
      transparent 35%
    ),

    linear-gradient(
      180deg,
      #07111c,
      #05090d
    );

}


.so-v2-outcomes-layout {

  display: grid;

  grid-template-columns:
    .72fr 1.28fr;

  gap: 70px;

  align-items: start;

}


.so-v2-outcomes-copy p {

  max-width: 480px;

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-inline-cta {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  margin-top: 25px;

  color:
    var(--sv-blue);

  text-decoration: none;

  font-size: 11px;

  font-weight: 700;

}


.so-v2-inline-cta svg {

  width: 14px;

}


.so-v2-results-grid {

  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 13px;

}


.so-v2-results-grid article {

  min-height: 220px;

  padding: 25px;

  border-radius: 15px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2c,
      #080f16
    );

}


.so-v2-results-grid small {

  color:
    var(--sv-blue);

  font-size: 7px;

  font-weight: 700;

  letter-spacing: 1.2px;

}


.so-v2-results-grid strong {

  display: block;

  margin-top: 34px;

  color:
    #edf3f7;

  font-size: 17px;

  line-height: 1.35;

}


.so-v2-results-grid p {

  margin:
    9px 0 0;

  color:
    #7f93a5;

  font-size: 10px;

  line-height: 1.6;

}



/* ==========================================================
   ROI
========================================================== */

.so-v2-roi {

  background:

    radial-gradient(
      circle at 8% 30%,
      rgba(30,109,171,.12),
      transparent 32%
    ),

    radial-gradient(
      circle at 90% 70%,
      rgba(77,63,170,.08),
      transparent 34%
    ),

    #07111c;

}


.so-v2-roi-shell {

  display: grid;

  grid-template-columns:
    .78fr 1.22fr;

  overflow: hidden;

  border-radius: 22px;

  border:

    1px solid
    rgba(101,200,250,.17);

  background:

    linear-gradient(
      145deg,
      #14243b,
      #09131f
    );

  box-shadow:

    0 35px 80px
    rgba(0,0,0,.22);

}


.so-v2-roi-copy {

  padding: 48px;

  border-right:

    1px solid
    var(--sv-border);

}


.so-v2-roi-copy > p {

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-no-commission {

  margin-top: 29px;

  padding: 18px;

  display: grid;

  grid-template-columns:
    42px 1fr;

  gap: 13px;

  border-radius: 12px;

  border:

    1px solid
    rgba(93,217,200,.13);

  background:

    linear-gradient(
      135deg,
      rgba(93,217,200,.05),
      rgba(101,200,250,.025)
    );

}


.so-v2-no-commission > div {

  width: 40px;

  height: 40px;

  display: grid;

  place-items: center;

  border-radius: 10px;

  color:
    var(--sv-teal);

  background:
    rgba(93,217,200,.06);

}


.so-v2-no-commission svg {

  width: 17px;

}


.so-v2-no-commission strong {

  color:
    #e6eef4;

  font-size: 12px;

}


.so-v2-no-commission p {

  margin:
    6px 0 0;

  color:
    #7e93a5;

  font-size: 10px;

  line-height: 1.6;

}


.so-v2-roi-calculator {

  padding: 48px;

}


.so-v2-roi-label {

  margin-bottom: 10px;

  color:
    #71869a;

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 1.2px;

}


.so-v2-roi-tabs {

  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 10px;

}


.so-v2-roi-tab {

  min-height: 90px;

  padding: 17px;

  display: flex;

  align-items: center;

  justify-content:
    space-between;

  gap: 15px;

  border-radius: 11px;

  border:

    1px solid
    var(--sv-border);

  color:
    #9badbd;

  background:
    rgba(255,255,255,.014);

  font-family: inherit;

  cursor: pointer;

  transition:
    transform .25s ease,
    border-color .25s ease,
    background .25s ease;

}


.so-v2-roi-tab:hover {

  transform:
    translateY(-2px);

  border-color:
    var(--sv-border-blue);

}


.so-v2-roi-tab.active {

  border-color:
    rgba(101,200,250,.32);

  background:

    linear-gradient(
      135deg,
      rgba(101,200,250,.09),
      rgba(140,137,255,.06)
    );

}


.so-v2-roi-tab span {

  font-size: 12px;

  font-weight: 600;

}


.so-v2-roi-tab strong {

  color:
    var(--sv-blue);

  font-size: 19px;

}


.so-v2-investment-row {

  margin-top: 23px;

  padding: 17px;

  display: flex;

  align-items: center;

  justify-content:
    space-between;

  gap: 20px;

  border-radius: 11px;

  border:

    1px solid
    var(--sv-border);

  background:
    rgba(255,255,255,.012);

}


.so-v2-investment-row > div span {

  display: block;

  color:
    #71869a;

  font-size: 7px;

  letter-spacing: 1px;

}


.so-v2-investment-row > div strong {

  display: block;

  margin-top: 5px;

  color:
    #dce6ed;

  font-size: 12px;

}


.so-v2-investment-row label {

  min-width: 150px;

  display: flex;

  align-items: center;

  border-radius: 9px;

  border:

    1px solid
    rgba(101,200,250,.15);

  background:
    #091522;

}


.so-v2-investment-row label span {

  padding-left: 13px;

  color:
    var(--sv-blue);

  font-size: 16px;

}


.so-v2-investment-row input {

  width: 100%;

  padding:
    12px 13px;

  border: 0;

  outline: 0;

  color:
    #edf3f7;

  background:
    transparent;

  font-size: 15px;

  font-weight: 700;

}


.so-v2-roi-equation {

  display: grid;

  grid-template-columns:
    1fr auto 1fr auto 1fr;

  gap: 12px;

  align-items: center;

  margin-top: 15px;

  padding: 18px;

  border-radius: 11px;

  border:

    1px solid
    rgba(145,180,210,.08);

  background:
    rgba(255,255,255,.012);

}


.so-v2-roi-equation div {

  text-align: center;

}


.so-v2-roi-equation span {

  display: block;

  color:
    #687e91;

  font-size: 7px;

}


.so-v2-roi-equation strong {

  display: block;

  margin-top: 5px;

  color:
    #e5edf3;

  font-size: 14px;

}


.so-v2-roi-equation svg {

  width: 12px;

  color:
    var(--sv-blue);

}


.so-v2-roi-summary {

  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  gap: 9px;

  margin-top: 15px;

}


.so-v2-roi-summary article {

  min-width: 0;

  padding: 18px;

  border-radius: 11px;

  border:

    1px solid
    var(--sv-border);

  background:
    rgba(255,255,255,.012);

}


.so-v2-roi-summary article.featured {

  border-color:
    rgba(101,200,250,.24);

  background:
    rgba(101,200,250,.035);

}


.so-v2-roi-summary span {

  display: block;

  min-height: 26px;

  color:
    #72879a;

  font-size: 8px;

  line-height: 1.4;

}


.so-v2-roi-summary strong {

  display: block;

  margin-top: 7px;

  color:
    #edf3f7;

  font-size:
    clamp(
      17px,
      1.5vw,
      22px
    );

  white-space: nowrap;

}


.so-v2-roi-summary
.featured strong {

  color:
    var(--sv-blue);

}



/* ==========================================================
   ENGAGEMENT
========================================================== */

.so-v2-engagement {

  background:

    linear-gradient(
      180deg,
      #05090d,
      #07111c
    );

}


.so-v2-engagement-grid {

  display: grid;

  grid-template-columns:
    repeat(4,1fr);

  border-radius: 18px;

  overflow: hidden;

  border:

    1px solid
    var(--sv-border);

}


.so-v2-engagement-grid article {

  position: relative;

  min-height: 270px;

  padding: 27px;

  border-right:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2c,
      #080f16
    );

}


.so-v2-engagement-grid article:last-child {

  border-right: 0;

}


.so-v2-engagement-grid article > span {

  position: absolute;

  right: 20px;

  top: 20px;

  color:
    #52697c;

  font-size: 8px;

}


.so-v2-engagement-grid article > svg {

  width: 45px;

  height: 45px;

  padding: 12px;

  border-radius: 11px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-engagement-grid h3 {

  margin:
    42px 0 0;

  color:
    #edf3f7;

  font-size: 17px;

}


.so-v2-engagement-grid p {

  margin:
    9px 0 0;

  color:
    #8094a7;

  font-size: 10px;

  line-height: 1.65;

}



/* ==========================================================
   AI
========================================================== */

.so-v2-ai {

  background:

    radial-gradient(
      circle at 10% 30%,
      rgba(38,116,174,.10),
      transparent 34%
    ),

    radial-gradient(
      circle at 90% 70%,
      rgba(79,65,169,.07),
      transparent 34%
    ),

    #06101a;

}


.so-v2-ai-layout {

  display: grid;

  grid-template-columns:
    .8fr 1.2fr;

  gap: 70px;

  align-items: center;

}


.so-v2-ai-copy p {

  max-width: 520px;

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-ai-live {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  margin-top: 25px;

  color:
    var(--sv-teal);

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 1.2px;

}


.so-v2-ai-live i {

  width: 7px;

  height: 7px;

  border-radius: 50%;

  background:
    var(--sv-teal);

  animation:
    soV2Pulse
    1.8s
    infinite;

}


.so-v2-ai-list {

  display: grid;

  gap: 12px;

}


.so-v2-ai-list article {

  min-height: 142px;

  padding: 22px;

  display: grid;

  grid-template-columns:
    50px 1fr;

  gap: 16px;

  align-items: center;

  border-radius: 14px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101b2a,
      #080e15
    );

  transition:
    transform .3s ease,
    border-color .3s ease;

}


.so-v2-ai-list article:hover {

  transform:
    translateX(6px);

  border-color:
    rgba(101,200,250,.22);

}


.so-v2-ai-list article > svg {

  width: 48px;

  height: 48px;

  padding: 13px;

  border-radius: 12px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-ai-list small {

  color:
    var(--sv-blue);

  font-size: 7px;

  font-weight: 700;

  letter-spacing: 1.2px;

}


.so-v2-ai-list h3 {

  margin:
    5px 0 0;

  color:
    #edf3f7;

  font-size: 16px;

}


.so-v2-ai-list p {

  margin:
    6px 0 0;

  color:
    #7d91a4;

  font-size: 10px;

  line-height: 1.6;

}



/* ==========================================================
   WHY DAWN
========================================================== */

.so-v2-why {

  background:

    linear-gradient(
      180deg,
      #05090d,
      #07111c
    );

}


.so-v2-why-layout {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    .9fr 1.1fr;

  gap: 75px;

}


.so-v2-why-copy p {

  max-width: 570px;

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-why-copy strong {

  color:
    #dceaf3;

}


.so-v2-why-callout {

  margin-top: 25px;

  padding: 18px;

  display: grid;

  grid-template-columns:
    30px 1fr;

  gap: 12px;

  align-items: center;

  border-left:

    2px solid
    var(--sv-blue);

  background:

    linear-gradient(
      90deg,
      rgba(101,200,250,.045),
      transparent
    );

}


.so-v2-why-callout svg {

  width: 17px;

  color:
    var(--sv-blue);

}


.so-v2-why-callout strong {

  color:
    #e2ebf2;

  font-size: 14px;

  line-height: 1.5;

}


.so-v2-difference-grid {

  display: grid;

  grid-template-columns:
    1fr 1fr;

  gap: 13px;

}


.so-v2-difference-grid article {

  position: relative;

  min-height: 225px;

  padding: 24px;

  border-radius: 15px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #101c2c,
      #080f16
    );

  transition:
    transform .3s ease,
    border-color .3s ease;

}


.so-v2-difference-grid article:hover {

  transform:
    translateY(-5px);

  border-color:
    var(--sv-border-blue);

}


.so-v2-difference-grid article > span {

  position: absolute;

  top: 18px;

  right: 18px;

  color:
    #52687a;

  font-size: 8px;

}


.so-v2-difference-grid article > svg {

  width: 42px;

  height: 42px;

  padding: 11px;

  border-radius: 10px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.13);

  background:
    rgba(101,200,250,.04);

}


.so-v2-difference-grid h3 {

  margin:
    32px 0 0;

  color:
    #edf3f7;

  font-size: 16px;

}


.so-v2-difference-grid p {

  margin:
    7px 0 0;

  color:
    #7f93a5;

  font-size: 10px;

  line-height: 1.62;

}



/* ==========================================================
   INDIA SEO
========================================================== */

.so-v2-india {

  padding-top: 50px;

  background:

    linear-gradient(
      180deg,
      #07111c,
      #05090d
    );

}


.so-v2-india-panel {

  padding: 40px;

  display: grid;

  grid-template-columns:
    .78fr 1.22fr;

  gap: 70px;

  border-radius: 19px;

  border:

    1px solid
    var(--sv-border);

  background:

    radial-gradient(
      circle at 100% 0%,
      rgba(86,73,188,.08),
      transparent 34%
    ),

    linear-gradient(
      145deg,
      #111f32,
      #09131f
    );

}


.so-v2-india-panel h2 {

  margin:
    15px 0 0;

  color:
    #edf3f7;

  font-family:
    "Manrope",
    sans-serif;

  font-size: 31px;

  line-height: 1.15;

  letter-spacing: -1.2px;

}


.so-v2-india-copy p {

  margin: 0;

  color:
    #91a3b4;

  font-size: 13px;

  line-height: 1.8;

}


.so-v2-india-copy p + p {

  margin-top: 16px;

}


.so-v2-india-copy strong {

  color:
    #dce9f2;

}


.so-v2-inline-links {

  display: flex;

  flex-wrap: wrap;

  gap: 10px;

  margin-top: 22px;

}


.so-v2-inline-links a {

  padding:
    9px 11px;

  display: inline-flex;

  align-items: center;

  gap: 7px;

  border-radius: 100px;

  color:
    #9cdcff;

  border:

    1px solid
    rgba(101,200,250,.15);

  text-decoration: none;

  font-size: 9px;

}


.so-v2-inline-links svg {

  width: 12px;

}



/* ==========================================================
   FAQ
========================================================== */

.so-v2-faq {

  background:

    radial-gradient(
      circle at 85% 10%,
      rgba(46,94,162,.07),
      transparent 30%
    ),

    #05090d;

}


.so-v2-faq-layout {

  display: grid;

  grid-template-columns:
    .67fr 1.33fr;

  gap: 72px;

  align-items: start;

}


.so-v2-faq-intro {

  position: sticky;

  top: 120px;

}


.so-v2-faq-intro > p {

  max-width: 430px;

  margin:
    17px 0 0;

  color:
    var(--sv-text);

  font-size: 14px;

  line-height: 1.75;

}


.so-v2-faq-list {

  display: grid;

  gap: 10px;

}


.so-v2-faq-item {

  overflow: hidden;

  border-radius: 13px;

  border:

    1px solid
    var(--sv-border);

  background:

    linear-gradient(
      145deg,
      #111d2d,
      #080f17
    );

  transition:
    border-color .3s ease,
    background .3s ease;

}


.so-v2-faq-item.active {

  border-color:
    rgba(101,200,250,.24);

  background:

    radial-gradient(
      circle at 100% 0%,
      rgba(85,72,187,.07),
      transparent 35%
    ),

    linear-gradient(
      145deg,
      #14243a,
      #09121d
    );

}


.so-v2-faq-item button {

  width: 100%;

  min-height: 76px;

  padding:
    20px 22px;

  display: flex;

  align-items: center;

  justify-content:
    space-between;

  gap: 20px;

  border: 0;

  color:
    #edf3f7;

  background:
    transparent;

  font-family:
    inherit;

  text-align: left;

  cursor: pointer;

}


.so-v2-faq-item button span {

  flex: 1;

  min-width: 0;

  font-size: 14px;

  font-weight: 600;

  line-height: 1.45;

}


.so-v2-faq-item button svg {

  flex:
    0 0 18px;

  width: 18px;

  color:
    #74889b;

  transition:
    transform .3s ease,
    color .3s ease;

}


.so-v2-faq-item.active
button svg {

  transform:
    rotate(45deg);

  color:
    var(--sv-blue);

}


.so-v2-faq-answer {

  max-height: 0;

  overflow: hidden;

  opacity: 0;

  transition:
    max-height .42s ease,
    opacity .3s ease;

}


.so-v2-faq-item.active
.so-v2-faq-answer {

  opacity: 1;

}


.so-v2-faq-answer p {

  margin: 0;

  padding:
    0 22px 23px;

  color:
    #879aab;

  font-size: 12px;

  line-height: 1.75;

}



/* ==========================================================
   FINAL CTA
========================================================== */

.so-v2-final {

  padding:
    95px 0;

  background:

    linear-gradient(
      180deg,
      #05090d,
      #07111c
    );

}


.so-v2-final-shell {

  min-height: 410px;

  display: grid;

  grid-template-columns:
    1fr .78fr;

  overflow: hidden;

  border-radius: 24px;

  background:

    radial-gradient(
      circle at 82% 45%,
      rgba(93,86,216,.22),
      transparent 32%
    ),

    linear-gradient(
      135deg,
      #b8e2ff,
      #8fcfff 50%,
      #a0a8ff
    );

  box-shadow:

    0 35px 85px
    rgba(0,0,0,.24);

}


.so-v2-final-shell > div:first-child {

  padding: 56px;

  display: flex;

  flex-direction: column;

  justify-content: center;

}


.so-v2-final-shell small {

  color:
    #27547d;

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 1.4px;

}


.so-v2-final-shell h2 {

  margin:
    15px 0 0;

  color:
    #07192d;

  font-family:
    "Manrope",
    sans-serif;

  font-size:
    clamp(
      38px,
      4vw,
      54px
    );

  line-height: 1.05;

  letter-spacing: -2.3px;

}


.so-v2-final-shell h2 span {

  display: block;

  color:
    #205b8e;

}


.so-v2-final-shell p {

  max-width: 590px;

  margin:
    17px 0 0;

  color:
    #315c80;

  font-size: 14px;

  line-height: 1.72;

}


.so-v2-final-btn {

  width: fit-content;

  min-height: 50px;

  margin-top: 27px;

  padding:
    0 20px;

  display: inline-flex;

  align-items: center;

  gap: 8px;

  border-radius: 10px;

  color:
    #f3f7fa;

  background:
    #07192d;

  text-decoration: none;

  font-size: 12px;

  font-weight: 700;

}


.so-v2-final-btn svg {

  width: 14px;

}


.so-v2-final-visual {

  position: relative;

  min-height: 410px;

  display: grid;

  place-items: center;

}


.so-v2-orbit {

  position: absolute;

  left: 50%;

  top: 50%;

  transform:
    translate(-50%,-50%);

  border-radius: 50%;

  border:

    1px solid
    rgba(14,55,91,.14);

}


.orbit-a {

  width: 210px;

  height: 210px;

}


.orbit-b {

  width: 315px;

  height: 315px;

}


.so-v2-final-core {

  position: relative;

  z-index: 3;

  width: 115px;

  height: 115px;

  display: grid;

  place-items: center;

  text-align: center;

  border-radius: 50%;

  color:
    #dff4ff;

  background:

    linear-gradient(
      145deg,
      #0d2947,
      #07172a
    );

  box-shadow:

    0 22px 50px
    rgba(18,58,96,.28);

  animation:
    soV2CorePulse
    4s
    ease-in-out
    infinite;

}


@keyframes soV2CorePulse {

  50% {

    transform:
      scale(1.04);

  }

}


.so-v2-final-core svg {

  width: 27px;

}


.so-v2-final-core strong {

  font-size: 12px;

}


.so-v2-final-core span {

  color:
    #82b6dc;

  font-size: 7px;

}


.so-v2-final-node {

  position: absolute;

  z-index: 4;

  padding:
    9px 11px;

  display: flex;

  align-items: center;

  gap: 7px;

  border-radius: 10px;

  color:
    #143f65;

  border:

    1px solid
    rgba(14,55,91,.14);

  background:
    rgba(241,249,255,.78);

  backdrop-filter:
    blur(10px);

  font-size: 8px;

  animation:
    soV2Float
    4s
    ease-in-out
    infinite;

}


.so-v2-final-node svg {

  width: 14px;

}


.node-a {

  left: 8%;

  top: 27%;

}


.node-b {

  right: 8%;

  top: 31%;

  animation-delay: .8s;

}


.node-c {

  right: 18%;

  bottom: 19%;

  animation-delay: 1.4s;

}



/* ==========================================================
   FOOTER
========================================================== */

.so-v2-footer {

  position: relative;

  border-top:

    1px solid
    rgba(130,170,205,.08);

  background:

    radial-gradient(
      circle at 8% 0%,
      rgba(34,101,160,.11),
      transparent 30%
    ),

    radial-gradient(
      circle at 92% 20%,
      rgba(83,72,177,.07),
      transparent 30%
    ),

    linear-gradient(
      180deg,
      #08131f,
      #030608
    );

}


.so-v2-footer-main {

  padding:
    60px 0 48px;

  display: grid;

  grid-template-columns:
    1.45fr .72fr .72fr 1fr;

  gap: 55px;

}


.so-v2-footer-brand img {

  width: auto;

  max-width: 145px;

  max-height: 55px;

  object-fit: contain;

}


.so-v2-footer-brand p {

  max-width: 390px;

  margin:
    21px 0 0;

  color:
    #8799aa;

  font-size: 13px;

  line-height: 1.75;

}


.footer-heading {

  position: relative;

  display: block;

  margin-bottom: 23px;

  padding-bottom: 12px;

  color:
    var(--sv-blue);

  font-size: 9px;

  font-weight: 700;

  letter-spacing: 1.5px;

}


.footer-heading::after {

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: 28px;

  height: 1px;

  background:

    linear-gradient(
      90deg,
      var(--sv-blue),
      transparent
    );

}


.so-v2-footer-column {

  display: flex;

  flex-direction: column;

  align-items: flex-start;

}


.so-v2-footer-column a {

  margin-bottom: 14px;

  color:
    #93a5b5;

  text-decoration: none;

  font-size: 12px;

  transition:
    color .2s ease,
    transform .2s ease;

}


.so-v2-footer-column a:hover {

  color:
    var(--sv-blue);

  transform:
    translateX(3px);

}


.so-v2-footer-sales > p {

  margin: 0;

  color:
    #899bab;

  font-size: 12px;

  line-height: 1.65;

}


.footer-sales-card {

  width: 100%;

  margin-top: 20px;

  padding: 16px;

  display: grid;

  grid-template-columns:
    42px 1fr auto;

  gap: 13px;

  align-items: center;

  border-radius: 12px;

  border:

    1px solid
    rgba(101,200,250,.14);

  color: inherit;

  background:

    linear-gradient(
      135deg,
      rgba(101,200,250,.065),
      rgba(101,200,250,.02)
    );

  text-decoration: none;

  transition:
    transform .25s ease,
    border-color .25s ease;

}


.footer-sales-card:hover {

  transform:
    translateY(-3px);

  border-color:
    rgba(101,200,250,.27);

}


.footer-sales-icon {

  width: 42px;

  height: 42px;

  display: grid;

  place-items: center;

  border-radius: 10px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.16);

}


.footer-sales-icon svg {

  width: 18px;

}


.footer-sales-card strong {

  display: block;

  color:
    #edf3f7;

  font-size: 12px;

}


.footer-sales-card small {

  display: block;

  margin-top: 4px;

  color:
    #73879a;

  font-size: 8px;

}


.footer-sales-card > svg {

  width: 15px;

  color:
    var(--sv-blue);

}



/* ==========================================================
   FOOTER CONTACT
========================================================== */

.so-v2-footer-contact {

  display: grid;

  grid-template-columns:
    .78fr 1fr 1.55fr 1fr;

  border-top:

    1px solid
    rgba(130,170,205,.09);

  border-bottom:

    1px solid
    rgba(130,170,205,.09);

}


.footer-contact-item {

  min-height: 150px;

  padding:
    25px;

  display: grid;

  grid-template-columns:
    44px 1fr;

  gap: 15px;

  align-items: center;

  border-right:

    1px solid
    rgba(130,170,205,.08);

}


.footer-contact-item:last-child {

  border-right: 0;

}


.footer-contact-icon {

  width: 44px;

  height: 44px;

  display: grid;

  place-items: center;

  border-radius: 11px;

  color:
    var(--sv-blue);

  border:

    1px solid
    rgba(101,200,250,.14);

  background:
    rgba(101,200,250,.035);

}


.footer-contact-icon svg {

  width: 18px;

}


.footer-contact-label {

  display: block;

  margin-bottom: 8px;

  color:
    var(--sv-blue);

  font-size: 8px;

  font-weight: 700;

  letter-spacing: 1.4px;

}


.footer-contact-item a,
.footer-contact-item address {

  color:
    #d7e1e9;

  font-size: 11px;

  line-height: 1.7;

  text-decoration: none;

  font-style: normal;

}


.footer-contact-item a:hover {

  color:
    var(--sv-blue);

}



/* ==========================================================
   SOCIAL ICONS
========================================================== */

.so-v2-social {

  display: flex;

  flex-wrap: wrap;

  gap: 7px;

}


.so-v2-social a {

  width: 39px;

  height: 39px;

  display: grid;

  place-items: center;

  border-radius: 9px;

  color:
    #9cb0c1;

  border:

    1px solid
    rgba(130,170,205,.14);

  background:
    rgba(255,255,255,.01);

  font-size: 13px;

  font-weight: 600;

  transition:
    color .2s ease,
    border-color .2s ease,
    transform .2s ease;

}


.so-v2-social a:hover {

  transform:
    translateY(-2px);

  color:
    var(--sv-blue);

  border-color:
    rgba(101,200,250,.3);

}


.so-v2-social svg {

  width: 16px;

  height: 16px;

}


.footer-facebook {

  font-family:
    Arial,
    sans-serif;

}



/* ==========================================================
   FOOTER BOTTOM
========================================================== */

.so-v2-footer-bottom {

  min-height: 76px;

  display: flex;

  align-items: center;

  justify-content:
    space-between;

  gap: 20px;

  color:
    #667a8d;

  font-size: 9px;

}


.so-v2-footer-bottom div {

  display: flex;

  gap: 20px;

}


.so-v2-footer-bottom a {

  color:
    #6f8497;

  text-decoration: none;

}


.so-v2-footer-bottom a:hover {

  color:
    var(--sv-blue);

}



/* ==========================================================
   SCROLL REVEAL
========================================================== */

[data-so-reveal] {

  opacity: 0;

  transform:
    translateY(25px);

  transition:

    opacity .72s
    cubic-bezier(.2,.7,.2,1),

    transform .72s
    cubic-bezier(.2,.7,.2,1);

}


[data-so-reveal="left"] {

  transform:
    translateX(-32px);

}


[data-so-reveal="right"] {

  transform:
    translateX(32px);

}


[data-so-reveal].so-v2-visible {

  opacity: 1;

  transform:
    translate3d(0,0,0);

}



/* ==========================================================
   TABLET
========================================================== */

@media
(max-width: 1100px) {

  .so-v2-hero-layout,
  .so-v2-heading-grid,
  .so-v2-signs-layout,
  .so-v2-outcomes-layout,
  .so-v2-roi-shell,
  .so-v2-ai-layout,
  .so-v2-why-layout,
  .so-v2-india-panel,
  .so-v2-faq-layout {

    grid-template-columns:
      1fr;

  }


  .so-v2-hero-title {

    min-height: 175px;

  }


  .so-v2-system-flow {

    grid-template-columns:
      repeat(5,1fr);

  }


  .so-v2-flow-arrow {

    display: none;

  }


  .so-v2-value-grid,
  .so-v2-failure-grid,
  .so-v2-engagement-grid {

    grid-template-columns:
      repeat(2,1fr);

  }


  .so-v2-work-grid {

    grid-template-columns:
      repeat(2,1fr);

  }


  .so-v2-roi-copy {

    border-right: 0;

    border-bottom:

      1px solid
      var(--sv-border);

  }


  .so-v2-roi-summary {

    grid-template-columns:
      repeat(2,1fr);

  }


  .so-v2-faq-intro {

    position: static;

  }


  .so-v2-footer-main {

    grid-template-columns:
      repeat(2,1fr);

  }


  .so-v2-footer-contact {

    grid-template-columns:
      repeat(2,1fr);

  }


  .footer-contact-item:nth-child(2) {

    border-right: 0;

  }

}



/* ==========================================================
   MOBILE
========================================================== */

@media
(max-width: 768px) {

  .so-v2-section {

    padding:
      72px 0;

  }


  .so-hero-v2 {

    padding:
      132px 0 72px;

  }


  .so-v2-hero-title {

    min-height: 195px;

    font-size:

      clamp(
        42px,
        12vw,
        58px
      );

    letter-spacing:
      -3px;

  }


  .hero-type-line {

    min-height:
      2.1em;

  }


  .so-v2-hero-lead {

    margin-top: 18px;

    font-size: 14px;

  }


  .so-v2-proof-points {

    display: grid;

  }


  .so-v2-actions {

    flex-direction: column;

  }


  .so-v2-actions a {

    width: 100%;

  }


  .so-v2-flow-card {

    padding: 20px;

  }


  .so-v2-flow-stats {

    grid-template-columns:
      1fr 1fr;

  }


  .so-v2-flow-stats article:last-child {

    grid-column:
      1 / -1;

  }


  .so-v2-float {

    display: none;

  }


  .so-v2-value-grid,
  .so-v2-system-flow,
  .so-v2-failure-grid,
  .so-v2-fit-grid,
  .so-v2-work-grid,
  .so-v2-results-grid,
  .so-v2-engagement-grid,
  .so-v2-difference-grid,
  .so-v2-roi-summary,
  .so-v2-footer-main,
  .so-v2-footer-contact {

    grid-template-columns:
      1fr;

  }


  .so-v2-value-grid article {

    border-right: 0;

    border-bottom:

      1px solid
      rgba(130,170,205,.08);

  }


  .so-v2-system-flow article,
  .so-v2-work-grid article {

    min-height: auto;

  }


  .so-v2-signs-list article {

    grid-template-columns:
      40px 1fr;

  }


  .so-v2-signs-list article > svg {

    display: none;

  }


  .so-v2-roi-copy,
  .so-v2-roi-calculator {

    padding:
      32px 23px;

  }


  .so-v2-roi-tabs {

    grid-template-columns:
      1fr;

  }


  .so-v2-investment-row {

    flex-direction: column;

    align-items: stretch;

  }


  .so-v2-investment-row label {

    width: 100%;

  }


  .so-v2-roi-equation {

    grid-template-columns:
      1fr;

  }


  .so-v2-roi-equation svg {

    margin:
      0 auto;

  }


  .so-v2-engagement-grid article {

    border-right: 0;

    border-bottom:

      1px solid
      var(--sv-border);

  }


  .so-v2-india-panel {

    padding:
      29px 22px;

    gap: 30px;

  }


  .so-v2-final-shell {

    grid-template-columns:
      1fr;

  }


  .so-v2-final-shell >
  div:first-child {

    padding:
      39px 24px 10px;

  }


  .so-v2-final-visual {

    min-height:
      330px;

  }


  .footer-contact-item {

    min-height: auto;

    padding:
      24px 4px;

    border-right: 0;

    border-bottom:

      1px solid
      rgba(130,170,205,.08);

  }


  .so-v2-footer-main {

    gap: 38px;

  }


  .so-v2-footer-bottom {

    flex-direction:
      column;

    align-items:
      flex-start;

    justify-content:
      center;

    padding:
      22px 0;

  }

}



/* ==========================================================
   SMALL MOBILE
========================================================== */

@media
(max-width: 480px) {

  .so-v2-hero-title {

    min-height:
      220px;

  }


  .so-v2-process article {

    grid-template-columns:
      40px 1fr;

  }


  .so-v2-status {

    display: none;

  }


  .so-v2-flow-footer {

    flex-direction:
      column;

  }


  .so-v2-final-node {

    font-size:
      7px;

  }


  .node-a {

    left: 1%;

  }


  .node-b {

    right: 1%;

  }

}



/* ==========================================================
   REDUCED MOTION
========================================================== */

@media
(prefers-reduced-motion: reduce) {

  [data-so-reveal] {

    opacity: 1;

    transform: none;

    transition: none;

  }


  .so-v2-float,
  .so-v2-final-node,
  .so-v2-final-core,
  .so-v2-live i,
  .so-v2-ai-live i,
  .hero-type-cursor {

    animation: none;

  }

}