.gamenexa-services-section {
  padding: 45px 30px 0;
  overflow: hidden;
}

.gamenexa-services-wrapper {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: stretch;
  width: 100%;
  max-width: 1230px;
  height: 526px;
  margin: 0 auto;
  gap: 22px;
}

.gamenexa-service-card {
  position: relative;
  flex: 0 0 125px;
  width: 125px;
  min-width: 125px;
  height: 526px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.055);
  border-radius: 24px;
  background: linear-gradient(
    180deg,
    rgba(18, 28, 42, 0.95) 0%,
    rgba(13, 23, 36, 0.98) 100%
  );
  cursor: pointer;
  isolation: isolate;
  transition:
    flex-basis 0.65s cubic-bezier(0.22, 0.61, 0.36, 1),
    width 0.65s cubic-bezier(0.22, 0.61, 0.36, 1),
    min-width 0.65s cubic-bezier(0.22, 0.61, 0.36, 1),
    border-color 0.4s ease,
 
    background 0.5s ease;
  transition-behavior: normal, normal, normal, normal, normal, normal;
  transition-duration: 0.65s, 0.65s, 0.65s, 0.4s, 0.4s, 0.5s;
  transition-timing-function:
    cubic-bezier(0.22, 0.61, 0.36, 1), cubic-bezier(0.22, 0.61, 0.36, 1),
    cubic-bezier(0.22, 0.61, 0.36, 1), ease, ease, ease;
  transition-delay: 0s, 0s, 0s, 0s, 0s, 0s;
  transition-property:
    flex-basis, width, min-width, border-color, box-shadow, background;
}

.gamenexa-service-card::after {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  border-radius: inherit;

  background: linear-gradient(
    180deg,
    rgba(0, 120, 255, 0.018) 0%,
    transparent 40%,
    rgba(0, 110, 255, 0.04) 100%
  );

  pointer-events: none;
}

.gamenexa-service-card:not(.active):hover {
  border-color: rgba(0, 140, 255, 0.34);

  box-shadow: 0 10px 35px rgba(0, 80, 160, 0.12);
}

.gamenexa-service-card.active {
  flex: 1 1 auto;
  width: auto;
  min-width: 493px;
  border-color: rgba(255, 255, 255, 0.3);
  background:
    radial-gradient(
      ellipse 78% 75% at 65% 60%,
      rgba(0, 128, 255, 0.21),
      transparent 68%
    ),
    linear-gradient(145deg, #101c2b 0%, #132b43 50%, #162a3e 100%);

  box-shadow: 0 20px 60px rgba(0, 90, 180, 0.1);
}

.gamenexa-card.active::before {
  content: "";
  position: absolute;
  width: 440px;
  height: 440px;
  right: -85px;
  bottom: -100px;
  z-index: 0;
  border-radius: 50%;
  background: repeating-radial-gradient(
    circle,
    transparent 0px,
    transparent 27px,
    rgba(41, 151, 255, 0.075) 29px,
    transparent 31px
  );
  opacity: 0.72;
  pointer-events: none;
  transform: rotate(-12deg);
}

.gamenexa-card-number {
  position: absolute;
  top: 27px;
  left: 27px;
  z-index: 10;
  color: #ffffff;
  font-size: 52px;
  font-family: var(--font-display);
  line-height: 1;
  font-weight: 700;
  letter-spacing: -2px;
  white-space: nowrap;
  pointer-events: none;
}

.gamenexa-card-collapsed-title {
  position: absolute;
  left: 50%;
  bottom: 42%;
  text-align: start;
  z-index: 5;
  width: 440px;
  transform: translateX(-50%) rotate(-90deg);
  transform-origin: center center;
  /* text-align: center; */
  color: #f4f6fa;
    font-family: var(--font-display);
  font-size: 21px;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: -0.2px;
  white-space: nowrap;
  opacity: 1;
  transition:
    opacity 0.25s ease,
    transform 0.4s ease;
}

.gamenexa-card-content {
  position: absolute;
  top: 49px;
  right: 29px;
  bottom: 25px;
  left: 29px;
  z-index: 6;
  opacity: 0;
  visibility: hidden;
  transform: translateX(24px);
  pointer-events: none;
  font-family: var(--font-primary);
  transition:
    opacity 0.25s ease,
    transform 0.45s cubic-bezier(0.22, 0.61, 0.36, 1),
    visibility 0s linear 0.45s;
}
.gamenexa-service-card.active .gamenexa-card-collapsed-title {
  opacity: 0;
  pointer-events: none;
}

.gamenexa-service-card.active .gamenexa-card-content {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/* =========================================================
           ACTIVE CARD TITLE
        ========================================================= */

.gamenexa-card-content h3 {
  max-width: 470px;
  margin: 45px 0 30px;
  color: #ffffff;
  font-family: var(--font-display);
  font-size: 35px;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: -0.7px;
}

/* =========================================================
           ACTIVE CARD DESCRIPTION
        ========================================================= */

.gamenexa-card-content p {
  max-width: 560px;

  margin: 0 0 51px;

  color: rgba(255, 255, 255, 0.9);

  font-size: 18px;

  line-height: 1.75;

  font-weight: 400;
}

/* =========================================================
           ACTIVE CARD FEATURE LIST
        ========================================================= */

.gamenexa-card-content ul {
  display: flex;

  flex-direction: column;

  gap: 22px;

  padding: 0;

  margin: 0 0 48px;

  list-style: none;
}

/* =========================================================
           FEATURE ITEM
        ========================================================= */

.gamenexa-card-content li {
  color: #f1f5fa;

  font-size: 18px;

  line-height: 1.4;

  font-weight: 400;
}

/* =========================================================
           LEARN MORE
        ========================================================= */

.learn-more {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  color: #008cff;

  text-decoration: none;

  font-size: 17px;

  line-height: 1;

  font-weight: 500;

  transition:
    color 0.25s ease,
    gap 0.25s ease;
}

/* =========================================================
           LEARN MORE ARROW
        ========================================================= */

.learn-more span {
  display: inline-block;

  font-size: 25px;

  line-height: 1;

  transition: transform 0.25s ease;
}

/* =========================================================
           LEARN MORE HOVER
        ========================================================= */

.learn-more:hover {
  color: #39aaff;

  gap: 13px;
}

.learn-more:hover span {
  transform: translateX(2px);
}

/* =========================================================
           VIEW ALL SERVICES WRAPPER
        ========================================================= */

.gamenexa-services-button-wrapper {
  position: relative;

  z-index: 2;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-top: 26px;
}

/* =========================================================
           VIEW ALL SERVICES BUTTON
        ========================================================= */

.all-services-btn {
  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-width: 236px;

  height: 54px;

  padding: 0 30px;

  border: 1px solid rgba(255, 255, 255, 0.22);

  border-radius: 28px;

  background: linear-gradient(135deg, #006de2, #078fff);

  color: #ffffff;

  text-decoration: none;

  font-size: 16px;

  font-weight: 700;

  box-shadow: 0 7px 22px rgba(0, 130, 255, 0.2);

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

/* =========================================================
           BUTTON HOVER
        ========================================================= */

.all-services-btn:hover {
  transform: translateY(-2px);

  box-shadow: 0 12px 30px rgba(0, 130, 255, 0.32);
}

/* =========================================================
           TABLET
        ========================================================= */

@media (max-width: 1200px) and (min-width: 769px) {
  .gamenexa-services-section {
    padding-left: 20px;

    padding-right: 20px;
  }

  .gamenexa-services-wrapper {
    height: 500px;

    gap: 14px;
  }

  .gamenexa-service-card {
    flex-basis: 105px;

    width: 105px;

    min-width: 105px;

    height: 500px;
  }

  .gamenexa-service-card.active {
    min-width: 400px;
  }

  .gamenexa-card-number {
    top: 25px;

    left: 21px;

    font-size: 44px;
  }

  .gamenexa-card-collapsed-title {
    font-size: 18px;

    width: 390px;
  }

  .gamenexa-card-content {
    top: 40px;

    right: 25px;

    left: 25px;
  }

  .gamenexa-card-content h3 {
    font-size: 30px;
  }

  .gamenexa-card-content p {
    font-size: 16px;

    line-height: 1.7;
  }

  .gamenexa-card-content li {
    font-size: 16px;
  }
}

/* =========================================================
           MOBILE
        ========================================================= */

@media (max-width: 768px) {
  .gamenexa-services-section {
    padding: 55px 18px 60px;
  }

  .gamenexa-services-header {
    margin-bottom: 45px;
  }

  .gamenexa-services-badge {
    height: 36px;

    padding: 0 15px;

    font-size: 14px;
  }

  .gamenexa-services-header h2 {
    font-size: 42px;

    letter-spacing: -1.5px;
  }

  .gamenexa-services-header p {
    margin-top: 22px;

    font-size: 15px;

    line-height: 1.75;
  }

  .gamenexa-services-wrapper {
    width: 100%;

    height: auto;

    flex-direction: column;

    gap: 10px;
  }

  .gamenexa-service-card,
  .gamenexa-service-card.active {
    flex: none;

    width: 100%;

    min-width: 0;

    height: 82px;

    border-radius: 18px;
  }

  .gamenexa-service-card.active {
    height: 390px;
  }

  .gamenexa-card-number {
    top: 21px;

    left: 22px;

    font-size: 35px;
  }

  .gamenexa-card-collapsed-title {
    left: 80px;
    right: unset;
    top: 50%;
    bottom: auto;
    width: auto;
    max-width: 65%;
    transform: translateY(-50%);
    text-align: right;
    font-size: 16px;
    line-height: 1.3;
    white-space: normal;
  }

  .gamenexa-service-card.active .gamenexa-card-collapsed-title {
    display: none;
  }

  .gamenexa-card-content {
    top: 30px;
    right: 22px;
    bottom: 20px;
    left: 22px;
  }

  .gamenexa-card-content h3 {
    margin-bottom: 20px;
    font-size: 27px;
    line-height: 1.25;
  }

  .gamenexa-card-content p {
    margin-bottom: 25px;
    font-size: 15px;
    line-height: 1.7;
  }

  .gamenexa-card-content ul {
    gap: 14px;
    margin-bottom: 25px;
  }

  .gamenexa-card-content li {
    font-size: 15px;
  }

  .learn-more {
    font-size: 15px;
  }

  .services-button-wrapper {
    margin-top: 22px;
  }

  .all-services-btn {
    width: 100%;
    min-width: 0;
  }
}

/* =========================================================
           SMALL MOBILE
        ========================================================= */

@media (max-width: 480px) {
  .services-section {
    padding-left: 14px;
    padding-right: 14px;
  }

  .services-header h2 {
    font-size: 36px;
  }

  .services-header p {
    font-size: 14px;
  }

  .service-card.active {
    height: 410px;
  }

  .card-content h3 {
    font-size: 24px;
  }

  .card-content p {
    font-size: 14px;
  }

  .card-content li {
    font-size: 14px;
  }
}

/* =========================================================
           REDUCED MOTION
        ========================================================= */

@media (prefers-reduced-motion: reduce) {
  .service-card,
  .card-content,
  .card-collapsed-title,
  .learn-more,
  .learn-more span,
  .all-services-btn {
    transition: none !important;
  }
}
