.service-page {
  overflow-x: hidden;
}

.service-hero {
  position: relative;
  overflow: hidden;
  padding: 110px 0 88px;
  background:
    radial-gradient(circle at top left, rgba(215, 241, 92, 0.2), transparent 28%),
    radial-gradient(circle at bottom right, rgba(15, 107, 77, 0.18), transparent 30%),
    linear-gradient(135deg, #0f2d25 0%, #164336 48%, #205b49 100%);

  &::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
      linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 36px 36px;
    pointer-events: none;
  }

  .container {
    position: relative;
    z-index: 1;
  }

  .service-hero__content {
    max-width: 730px;
  }

  .service-hero__eyebrow {
    min-height: 36px;
    margin-bottom: 24px;
    padding: 6px 18px;
    border-color: rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #f3fad3;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .service-hero__text {
    max-width: 640px;
    color: rgba(238, 245, 242, 0.86);
    line-height: 1.75;
  }

  .service-hero__link {
    color: #ffffff;
    font-size: var(--fs-sm);
    font-weight: 600;
    text-decoration: none;

    .bi {
      transition: transform 0.3s ease;
    }

    &:hover .bi {
      transform: translate(4px, -2px);
    }
  }

  .service-hero__panel {
    padding: 30px;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08)),
      linear-gradient(135deg, rgba(215, 241, 92, 0.12), rgba(255, 255, 255, 0.02));
    box-shadow: 0 24px 60px rgba(5, 20, 16, 0.22);
    backdrop-filter: blur(8px);
  }

  .service-hero__metric {
    height: 100%;
    padding: 18px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 4px;

    strong {
      color: #ffffff;
      font-family: "Satoshi", "Poppins", sans-serif;
      font-size: clamp(1.45rem, 2vw, 2rem);
      font-weight: 700;
      line-height: 1;
    }

    span {
      color: rgba(238, 245, 242, 0.84);
      font-size: var(--fs-xs);
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }
  }

  .service-hero__highlight {
    padding: 20px 4px 0;

    h2 {
      margin: 0 0 12px;
      color: #ffffff;
      font-family: "Satoshi", "Poppins", sans-serif;
      font-size: clamp(1.35rem, 2vw, 1.8rem);
      font-weight: 700;
      line-height: 1.2;
    }

    p {
      margin: 0;
      color: rgba(238, 245, 242, 0.84);
      line-height: 1.75;
      font-size: var(--fs-sm);
    }
  }
}

.service-cta {
  .service-cta__panel {
    max-width: 880px;
    margin-inline: auto;
    padding: 52px 24px;
    border-radius: 32px;
    background:
      radial-gradient(circle at top right, rgba(215, 241, 92, 0.2), transparent 26%),
      linear-gradient(135deg, #f5fbf7 0%, #eef7f1 100%);
    box-shadow: 0 24px 56px rgba(20, 46, 36, 0.08);
  }

  .outline-secondary-badge {
    background: #ffffff;
    border-color: rgba(15, 107, 77, 0.12);
    color: #0f6b4d;
    font-weight: 700;
  }

  .section-intro-title {
    max-width: 680px;
    margin-inline: auto;
  }

  .section-intro-text {
    max-width: 760px;
    margin-inline: auto;
    line-height: 1.75;
  }

  .custom-icon-btn {
    width: fit-content;
    display: inline-flex;
    justify-content: center;
    margin-inline: auto;
  }
}

@media (max-width: 767px) {
  .service-hero {
    padding: 88px 0 68px;

    .service-hero__panel {
      padding: 24px 20px;
    }
  }

  .service-cta {
    .service-cta__panel {
      padding: 40px 18px;
      border-radius: 24px;
    }
  }
}
