.sout2-page {
  --bg: #07111f;
  --bg2: #0b1728;
  --ink: #eef6ff;
  --muted: #9fb1c7;
  --soft: #d6e5f5;
  --brand: #30a7ff;
  --brand2: #1264d8;
  --brand3: #65d4ff;
  --green: #61e3a6;
  --line: rgba(255, 255, 255, .14);
  --line2: rgba(101, 212, 255, .28);
  --panel: rgba(255, 255, 255, .065);
  --panel2: rgba(255, 255, 255, .095);
  --shadow: 0 24px 80px rgba(0, 0, 0, .34);
  --r: 30px;
  --rs: 18px;
  background: radial-gradient(circle at 14% 0%, rgba(48, 167, 255, .22), transparent 32%),
  radial-gradient(circle at 86% 6%, rgba(101, 212, 255, .14), transparent 30%),
  linear-gradient(180deg, #06101d 0%, #091629 38%, #07111f 100%);
  color: var(--ink);
  overflow: hidden;
}

.sout2-page * {
  box-sizing: border-box
}

.sout2-container {
  width: min(1200px, calc(100% - 40px));
  margin: 0 auto
}

.sout2-page section {
  position: relative;
  isolation: isolate;
  background: transparent;
  padding: 86px 0
}

.sout2-page img {
  max-width: 100%;
  display: block
}

.sout2-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: #93a8bf;
  font-size: 13px;
  margin-bottom: 22px
}

.sout2-breadcrumb a {
  color: #bfe6ff
}

.sout2-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(48, 167, 255, .10);
  border: 1px solid rgba(101, 212, 255, .24);
  color: #bceaff;
  font-weight: 900;
  font-size: 13px;
  margin-bottom: 18px;
  max-width: max-content;
}

.sout2-kicker i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 6px rgba(97, 227, 166, .12);
  flex: 0 0 auto
}

.sout2-gradient {
  background: linear-gradient(90deg, #fff, #9bdfff 54%, #67b7ff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent
}

.sout2-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px
}

.sout2-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid rgba(255, 255, 255, .18);
  background: linear-gradient(135deg, var(--brand), var(--brand2));
  color: #fff;
  font-weight: 900;
  border-radius: 999px;
  padding: 13px 20px;
  box-shadow: 0 14px 40px rgba(18, 100, 216, .28);
  transition: .25s ease;
  text-decoration: none
}

.sout2-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 56px rgba(48, 167, 255, .36)
}

.sout2-btn.secondary {
  background: rgba(255, 255, 255, .07);
  box-shadow: none;
  color: var(--soft)
}

.sout2-card {
  position: relative;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(255, 255, 255, .085), rgba(255, 255, 255, .045));
  box-shadow: 0 20px 70px rgba(0, 0, 0, .18);
  transition: .28s ease;
  overflow: hidden;
  border-radius: var(--r)
}

.sout2-card:before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 18% 0%, rgba(101, 212, 255, .16), transparent 36%);
  opacity: 0;
  transition: .28s;
  pointer-events: none
}

.sout2-card:hover {
  transform: translateY(-5px);
  border-color: rgba(101, 212, 255, .32);
  background: linear-gradient(180deg, rgba(255, 255, 255, .115), rgba(255, 255, 255, .055));
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28)
}

.sout2-card:hover:before {
  opacity: 1
}

.sout2-card > * {
  position: relative;
  z-index: 1
}

.sout2-head {
  max-width: 980px;
  margin-bottom: 36px
}

.sout2-head.center {
  text-align: center;
  margin-inline: auto
}

.sout2-head h2 {
  font-size: clamp(31px, 4.2vw, 52px);
  line-height: 1.06;
  letter-spacing: -1.7px;
  margin: 14px 0 16px
}

.sout2-head p {
  font-size: 16px;
  color: #c4d3e6;
  line-height: 1.78;
  margin: 0
}

.sout2-media {
  border: 1px solid rgba(255, 255, 255, .14);
  background: linear-gradient(145deg, rgba(101, 212, 255, .16), rgba(255, 255, 255, .05));
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 18px 60px rgba(0, 0, 0, .20);
  opacity: 0.85;
}

.sout2-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 200px;
  background: #0d1d32
}

.sout2-media figcaption {
  padding: 14px 16px;
  color: #9fb1c7;
  font-size: 12.5px;
  line-height: 1.5;
  border-top: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .04)
}

.sout2-dot-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px
}

.sout2-dot-list li {
  position: relative;
  padding: 9px 10px 9px 28px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .038);
  color: #aebed1;
  font-size: 12.8px;
  line-height: 1.45
}

.sout2-dot-list li:before {
  content: "";
  position: absolute;
  left: 11px;
  top: 15px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #65d4ff;
  box-shadow: 0 0 0 5px rgba(101, 212, 255, .10)
}

.sout2-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px
}

.sout2-tags span, .sout2-chip-list i {
  font-style: normal;
  padding: 7px 9px;
  border-radius: 999px;
  border: 1px solid rgba(101, 212, 255, .22);
  background: rgba(48, 167, 255, .10);
  color: #cfe6ff;
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.2
}

.sout2-hero {
  padding: 86px 0 68px !important;
  overflow: hidden
}

.sout2-hero:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: linear-gradient(180deg, rgba(7, 17, 31, .50), rgba(7, 17, 31, .96)), url("{% static 'main/images/outsourcing-product-delivery-hero.jpg' %}") center/cover no-repeat;
  opacity: .24
}

.sout2-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(430px, .98fr);
  gap: 34px;
  align-items: stretch
}

.sout2-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center
}

.sout2-hero h1 {
  font-size: clamp(42px, 5.8vw, 78px);
  line-height: .99;
  letter-spacing: -2.7px;
  margin: 0 0 24px
}

.sout2-lead {
  font-size: 18px;
  line-height: 1.78;
  color: #c3d2e4;
  margin: 0;
  max-width: 780px
}

.sout2-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 30px
}

.sout2-proof-item {
  min-height: 122px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .055)
}

.sout2-proof-item b {
  display: block;
  font-size: 19px;
  line-height: 1.2;
  margin-bottom: 8px
}

.sout2-proof-item span {
  display: block;
  color: #aebed1;
  line-height: 1.5;
  font-size: 13px
}

.sout2-command {
  padding: 1px;
  border-radius: 38px;
  background: linear-gradient(145deg, rgba(101, 212, 255, .38), rgba(255, 255, 255, .08), rgba(48, 167, 255, .18));
  box-shadow: var(--shadow);
  height: 100%
}

.sout2-command-inner {
  height: 100%;
  min-height: 640px;
  border-radius: 37px;
  padding: 24px;
  background: radial-gradient(circle at 65% 15%, rgba(48, 167, 255, .24), transparent 38%), linear-gradient(180deg, rgba(255, 255, 255, .11), rgba(255, 255, 255, .045)), #081423;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 14px
}

.sout2-command-top {
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, .13);
  background: rgba(2, 9, 18, .40)
}

.sout2-command-top small, .sout2-node small {
  display: block;
  color: #86d5ff;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 10.5px;
  font-weight: 900;
  margin-bottom: 7px
}

.sout2-command-top b {
  display: block;
  font-size: 22px;
  line-height: 1.25;
  margin-bottom: 8px
}

.sout2-command-top span {
  display: block;
  color: #aebed1;
  font-size: 13.5px;
  line-height: 1.55
}

.sout2-command-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  align-content: stretch
}

.sout2-node {
  min-height: 118px;
  padding: 17px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, .11);
  background: rgba(255, 255, 255, .048);
  transition: .22s ease
}

.sout2-node:nth-child(1), .sout2-node:nth-child(6) {
  grid-column: 1 / -1;
  min-height: 136px;
  background: linear-gradient(135deg, rgba(48, 167, 255, .105), rgba(255, 255, 255, .045))
}

.sout2-node:hover {
  transform: translateY(-4px);
  border-color: rgba(101, 212, 255, .26);
  background: rgba(255, 255, 255, .073)
}

.sout2-node b {
  display: block;
  font-size: 17px;
  line-height: 1.22;
  margin-bottom: 7px
}

.sout2-node span, .sout2-node li {
  display: block;
  color: #aebed1;
  font-size: 12.5px;
  line-height: 1.48
}

.sout2-node ul {
  margin: 10px 0 0;
  padding-left: 17px
}

.sout2-command-bottom {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px
}

.sout2-command-bottom span {
  padding: 12px 9px;
  border-radius: 16px;
  border: 1px solid rgba(101, 212, 255, .18);
  background: rgba(48, 167, 255, .075);
  color: #cfe6ff;
  font-size: 12px;
  font-weight: 850;
  text-align: center;
  line-height: 1.35
}

.sout2-warning-grid {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: 24px;
  align-items: stretch
}

.sout2-warning-intro {
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100%;
  background: radial-gradient(circle at 18% 0%, rgba(48, 167, 255, .16), transparent 38%), linear-gradient(180deg, rgba(255, 255, 255, .078), rgba(255, 255, 255, .04))
}

.sout2-warning-intro h2 {
  font-size: clamp(31px, 4vw, 50px);
  line-height: 1.07;
  letter-spacing: -1.6px;
  margin: 14px 0 16px
}

.sout2-warning-intro p {
  color: #bdccde;
  line-height: 1.76;
  margin: 0 0 16px
}

.sout2-failure-points {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 20px 0 22px
}

.sout2-failure-points span {
  padding: 12px 13px;
  border-radius: 16px;
  border: 1px solid rgba(101, 212, 255, .16);
  background: rgba(48, 167, 255, .07);
  color: #cfe6ff;
  font-size: 12.5px;
  font-weight: 850;
  line-height: 1.35
}

.sout2-warning-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: stretch
}

.sout2-warning {
  padding: 24px;
  border-radius: 30px;
  border-color: rgba(101, 212, 255, .20);
  display: grid;
  grid-template-columns: minmax(0, .68fr) minmax(0, 1fr);
  gap: 18px;
  align-items: stretch;
  background: linear-gradient(180deg, rgba(255, 255, 255, .076), rgba(255, 255, 255, .04))
}

.sout2-warning:hover {
  border-color: rgba(101, 212, 255, .38);
  background: linear-gradient(180deg, rgba(48, 167, 255, .11), rgba(255, 255, 255, .048));
  box-shadow: 0 30px 92px rgba(0, 0, 0, .28)
}

.sout2-warning-main {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px
}

.sout2-warning em {
  display: inline-flex;
  width: max-content;
  font-style: normal;
  color: #bceaff;
  background: rgba(48, 167, 255, .10);
  border: 1px solid rgba(101, 212, 255, .22);
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 10.5px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em
}

.sout2-warning b {
  display: block;
  font-size: 22px;
  line-height: 1.14;
  margin: 13px 0 9px;
  letter-spacing: -.4px
}

.sout2-warning span {
  display: block;
  color: #b5c5d8;
  line-height: 1.62;
  font-size: 13.5px
}

.sout2-warning-listbox strong {
  display: block;
  color: #eaf7ff;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 8px
}

.sout2-warning ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px
}

.sout2-warning li {
  position: relative;
  padding: 10px 10px 10px 30px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .04);
  color: #aebed1;
  line-height: 1.42;
  font-size: 12.6px;
  min-height: 48px
}

.sout2-warning li:before {
  content: "";
  position: absolute;
  left: 11px;
  top: 15px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #65d4ff;
  box-shadow: 0 0 0 5px rgba(101, 212, 255, .10)
}

.sout2-warning-outcome {
  margin-top: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(101, 212, 255, .20);
  background: rgba(48, 167, 255, .075);
  color: indianred;
  font-size: 12.5px;
  line-height: 1.5;
  font-weight: 750
}

.sout2-build-wrap {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 20px;
  align-items: stretch
}

.sout2-build-main {
  padding: 34px;
  border-radius: 34px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100%;
  background: linear-gradient(180deg, rgba(48, 167, 255, .12), rgba(255, 255, 255, .045));
  border-color: rgba(101, 212, 255, .26)
}

.sout2-build-main h2 {
  font-size: clamp(31px, 4vw, 50px);
  line-height: 1.07;
  letter-spacing: -1.6px;
  margin: 14px 0 16px
}

.sout2-build-main p {
  color: #c4d3e6;
  line-height: 1.76
}

.sout2-build-note {
  margin-top: 18px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(101, 212, 255, .18);
  background: linear-gradient(135deg, rgba(48, 167, 255, .10), rgba(255, 255, 255, .04));
  color: #c9d9ea !important;
  font-size: 14px
}

.sout2-build-router {
  display: grid;
  gap: 10px;
  margin-top: 22px
}

.sout2-router-row {
  display: grid;
  grid-template-columns: 118px 1fr;
  gap: 12px;
  padding: 13px 14px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .038);
  transition: .22s ease
}

.sout2-router-row:hover {
  transform: translateY(-2px);
  border-color: rgba(101, 212, 255, .26);
  background: rgba(48, 167, 255, .07)
}

.sout2-router-row b {
  display: block;
  color: #dff3ff;
  font-size: 13px;
  line-height: 1.35
}

.sout2-router-row span {
  display: block;
  color: #aebed1;
  font-size: 12.7px;
  line-height: 1.48
}

.sout2-build-media {
  margin: 24px 0 0
}

.sout2-build-media img {
  min-height: 460px
}

.sout2-build-outputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 18px
}

.sout2-build-output {
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(101, 212, 255, .14);
  background: rgba(48, 167, 255, .055)
}

.sout2-build-output small {
  display: block;
  color: #86d5ff;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10px;
  font-weight: 900;
  margin-bottom: 6px
}

.sout2-build-output strong {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  margin-bottom: 5px
}

.sout2-build-output span {
  display: block;
  color: #aebed1;
  font-size: 12.5px;
  line-height: 1.45
}

.sout2-build-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch
}

.sout2-build {
  min-height: 392px;
  padding: 22px;
  border-radius: 26px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start
}

.sout2-build small {
  display: block;
  color: #86d5ff;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10.5px;
  font-weight: 900;
  margin-bottom: 9px
}

.sout2-build h3 {
  font-size: 20px;
  line-height: 1.15;
  margin: 0 0 8px
}

.sout2-build p {
  margin: 0;
  color: #b5c5d8;
  line-height: 1.58;
  font-size: 13.5px;
  min-height: 64px
}

.sout2-industry-board {
  padding: 24px;
  border-radius: 34px;
  border: 1px solid rgba(101, 212, 255, .20);
  background: radial-gradient(circle at 50% 0%, rgba(48, 167, 255, .14), transparent 36%), linear-gradient(180deg, rgba(255, 255, 255, .060), rgba(255, 255, 255, .032));
  box-shadow: 0 24px 80px rgba(0, 0, 0, .20)
}

.sout2-industry-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px
}

.sout2-industry {
  min-height: 365px;
  padding: 22px;
  border-radius: 24px;
  border: 1px solid rgba(101, 212, 255, .20);
  background: linear-gradient(180deg, rgba(48, 167, 255, .105), rgba(255, 255, 255, .040));
  display: flex;
  flex-direction: column;
  transition: .25s ease
}

.sout2-industry:hover {
  transform: translateY(-6px);
  border-color: rgba(101, 212, 255, .42);
  background: linear-gradient(180deg, rgba(48, 167, 255, .16), rgba(255, 255, 255, .052));
  box-shadow: 0 24px 80px rgba(48, 167, 255, .18)
}

.sout2-industry strong {
  font-size: 18px;
  line-height: 1.2;
  margin-bottom: 10px
}

.sout2-industry span {
  display: block;
  color: #b5c5d8;
  font-size: 13px;
  line-height: 1.56;
  margin-bottom: 14px
}

.sout2-industry small {
  display: block;
  color: #86d5ff;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10px;
  font-weight: 900;
  margin: 2px 0 9px
}

.sout2-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: auto
}

.sout2-tech-panel {
  padding: 28px;
  border-radius: 34px;
  border: 1px solid rgba(101, 212, 255, .20);
  background: radial-gradient(circle at 50% 0%, rgba(48, 167, 255, .16), transparent 38%), linear-gradient(180deg, rgba(255, 255, 255, .064), rgba(255, 255, 255, .035));
  box-shadow: 0 24px 80px rgba(0, 0, 0, .20)
}

.sout2-tech-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px
}

.sout2-tech {
  min-height: 252px;
  padding: 24px;
  border-radius: 26px;
  border: 1px solid rgba(101, 212, 255, .19);
  background: linear-gradient(180deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .038));
  display: flex;
  flex-direction: column
}

.sout2-tech:hover {
  border-color: rgba(101, 212, 255, .38);
  background: linear-gradient(180deg, rgba(48, 167, 255, .13), rgba(255, 255, 255, .046))
}

.sout2-tech h3 {
  font-size: 21px;
  line-height: 1.15;
  margin: 0 0 10px
}

.sout2-tech p {
  margin: 0 0 16px;
  color: #b5c5d8;
  line-height: 1.58;
  font-size: 13.5px
}

.sout2-tech-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto
}

.sout2-tech-tags span {
  padding: 7px 9px;
  border-radius: 999px;
  border: 1px solid rgba(101, 212, 255, .18);
  background: rgba(48, 167, 255, .085);
  color: #cfe6ff;
  font-size: 12px;
  font-weight: 800
}

.sout2-quality {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: stretch
}

.sout2-quality-col {
  padding: 30px;
  border-radius: 34px
}

.sout2-quality-col h2 {
  font-size: clamp(30px, 3.5vw, 46px);
  line-height: 1.08;
  letter-spacing: -1.4px;
  margin: 14px 0 18px
}

.sout2-quality-list {
  display: grid;
  gap: 12px
}

.sout2-quality-item {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  padding: 15px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .04)
}

.sout2-quality-item i {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: rgba(97, 227, 166, .13);
  color: #91f5bf;
  font-style: normal;
  font-weight: 900
}

.sout2-quality-item b {
  display: block;
  margin-bottom: 5px
}

.sout2-quality-item span {
  display: block;
  color: #aebed1;
  font-size: 13px;
  line-height: 1.45
}

.sout2-scenarios {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

.sout2-scenario {
  min-height: 320px;
  padding: 26px;
  border-radius: 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between
}

.sout2-scenario small {
  color: #86d5ff;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10.5px;
  font-weight: 900
}

.sout2-scenario h3 {
  font-size: 24px;
  line-height: 1.12;
  margin: 14px 0 10px
}

.sout2-scenario p {
  margin: 0;
  color: #b5c5d8;
  line-height: 1.62;
  font-size: 14px
}

.sout2-scenario ul {
  margin: 18px 0 0;
  padding-left: 18px;
  color: #a9b9cc;
  line-height: 1.65;
  font-size: 13.5px
}

.sout2-faq {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: 24px;
  align-items: start
}

.sout2-faq-intro {
  padding: 32px;
  border-radius: 34px
}

.sout2-faq-intro h2 {
  font-size: clamp(30px, 3.4vw, 46px);
  line-height: 1.08;
  letter-spacing: -1.4px;
  margin: 14px 0 16px
}

.sout2-faq-intro p {
  margin: 0;
  color: #bdccde;
  line-height: 1.74
}

.sout2-faq-list {
  display: grid;
  gap: 13px
}

.sout2-faq-list details {
  border: 1px solid rgba(255, 255, 255, .13);
  background: rgba(255, 255, 255, .055);
  border-radius: 22px;
  padding: 20px 21px
}

.sout2-faq-list summary {
  cursor: pointer;
  font-weight: 900;
  color: #fff
}

.sout2-faq-list p {
  margin: 14px 0 0;
  color: #b4c4d8;
  line-height: 1.7
}

.sout2-final {
  padding: 1px;
  border-radius: 38px;
  background: linear-gradient(135deg, rgba(101, 212, 255, .36), rgba(255, 255, 255, .09), rgba(18, 100, 216, .34));
  box-shadow: var(--shadow)
}

.sout2-final-inner {
  border-radius: 37px;
  padding: 48px;
  background: radial-gradient(circle at 82% 10%, rgba(48, 167, 255, .25), transparent 34%), rgba(255, 255, 255, .065);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: center
}

.sout2-final h2 {
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.06;
  letter-spacing: -1.5px;
  margin: 0 0 14px
}

.sout2-final p {
  color: #bfd0e2;
  line-height: 1.7;
  margin: 0;
  max-width: 790px
}

@media (max-width: 1100px) {
  .sout2-hero-grid, .sout2-warning-grid, .sout2-build-wrap, .sout2-quality, .sout2-faq {
    grid-template-columns: 1fr
  }

  .sout2-industry-grid, .sout2-tech-grid {
    grid-template-columns: repeat(2, 1fr)
  }

  .sout2-scenarios {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width: 760px) {
  .sout2-container {
    width: min(100% -28px, 1200px)
  }

  .sout2-page section {
    padding: 58px 0
  }

  .sout2-hero {
    padding: 50px 0 56px !important
  }

  .sout2-hero h1 {
    font-size: clamp(34px, 10vw, 48px);
    letter-spacing: -1.3px
  }

  .sout2-lead {
    font-size: 15.5px
  }

  .sout2-proof, .sout2-command-grid, .sout2-command-bottom, .sout2-warning-list, .sout2-build-list, .sout2-build-outputs, .sout2-industry-grid, .sout2-tech-grid, .sout2-scenarios {
    grid-template-columns: 1fr
  }

  .sout2-warning {
    grid-template-columns: 1fr
  }

  .sout2-warning ul {
    grid-template-columns: 1fr
  }

  .sout2-command-inner {
    min-height: auto
  }

  .sout2-node {
    grid-column: auto !important
  }

  .sout2-final-inner {
    grid-template-columns: 1fr;
    padding: 30px;
    border-radius: 29px
  }

  .sout2-actions {
    display: grid;
    grid-template-columns: 1fr
  }

  .sout2-btn {
    width: 100%
  }
}

.sout2-hero{
    position:relative;
    overflow:hidden;
}

.sout2-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;

    background:
        linear-gradient(
            180deg,
            rgba(7,17,31,.70) 0%,
            rgba(7,17,31,.77) 10%,
            rgba(7,17,31,.92) 100%
        ),
        url("../images/software-outsourcing-hero-bg.png");

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;

    opacity:.55;
}

.sout2-hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;

    background:
        radial-gradient(circle at 15% 20%, rgba(48,167,255,.18), transparent 28%),
        radial-gradient(circle at 85% 15%, rgba(101,212,255,.12), transparent 25%);
}

#sout2-industries{
    position:relative;
    overflow:hidden;
}

#sout2-industries::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;

    background:
        linear-gradient(
            180deg,
            rgba(7,17,31,.90) 0%,
            rgba(7,17,31,.75) 15%,
            rgba(7,17,31,.88) 100%
        ),
        url("../images/industry-ecosystem-bg.png");

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;

    opacity:.55;
}

#sout2-industries::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;

    background:
        radial-gradient(circle at 15% 20%, rgba(48,167,255,.18), transparent 25%),
        radial-gradient(circle at 85% 10%, rgba(101,212,255,.14), transparent 22%),
        radial-gradient(circle at 50% 100%, rgba(48,167,255,.10), transparent 30%);
}

.sout2-quality-section{
    position:relative;
    overflow:hidden;
}

.sout2-quality-section::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;

    background:
        linear-gradient(
            180deg,
            rgba(7,17,31,.88) 0%,
            rgba(7,17,31,.83) 15%,
            rgba(7,17,31,.98) 100%
        ),
        url("../images/outsourcing-quality-governance-bg.png");

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;

    opacity:.72;
}

.sout2-quality-section::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;

    background:
        radial-gradient(
            circle at 15% 15%,
            rgba(101,212,255,.08),
            transparent 28%
        ),
        radial-gradient(
            circle at 85% 15%,
            rgba(101,212,255,.06),
            transparent 24%
        );

    pointer-events:none;
}

.sout2-quality-section > .sout2-container{
    position:relative;
    z-index:2;
}