  .ib-pt-section {
      padding: 90px 0;
  }

  .ib-pt-section-light {
      background: var(--ib-light);
  }

  .ib-pt-section-teal {
      background: var(--ib-light-teal);
  }

  .ib-pt-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.4px;
      text-transform: uppercase;
      color: var(--ib-primary);
      margin-bottom: 18px;
  }

  .ib-pt-eyebrow::before {
      content: "";
      width: 28px;
      height: 2px;
      background: var(--ib-primary);
  }

  .ib-pt-title {
      font-size: clamp(34px, 4vw, 52px);
      line-height: 1.12;
      margin-bottom: 20px;
  }

  .ib-pt-title span {
      color: var(--ib-primary);
  }

  .ib-pt-subtitle {
      max-width: 720px;
      color: var(--ib-muted);
      font-size: 17px;
      line-height: 1.8;
  }


  /* =========================================================
           HERO
        ========================================================= */

  .ib-pt-hero {
      min-height: 650px;
      display: flex;
      align-items: center;

      background:
          linear-gradient(90deg,
              rgba(3, 40, 41, 0.95) 0%,
              rgba(3, 40, 41, 0.80) 48%,
              rgba(3, 40, 41, 0.35) 100%),
          url("/assets/images/photo-1521737711867-e3b97375f902.avif") center / cover no-repeat;
  }

  .ib-pt-hero-content {
      max-width: 800px;
  }

  .ib-pt-hero-label {
      color: #c9e8e3;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.8px;
      text-transform: uppercase;
      margin-bottom: 22px;
  }

  .ib-pt-hero h1 {
      color: #fff;
      font-size: clamp(42px, 6vw, 72px);
      line-height: 1.08;
      letter-spacing: -1.5px;
      margin-bottom: 24px;
  }

  .ib-pt-hero h1 span {
      color: #8dd1c7;
  }

  .ib-pt-hero p {
      color: rgba(255, 255, 255, .86);
      font-size: 18px;
      max-width: 690px;
      margin-bottom: 34px;
  }

  .ib-pt-btn-primary {
      background: #fff;
      color: var(--ib-primary);
      padding: 13px 24px;
      border-radius: 6px;
      font-weight: 700;
      display: inline-flex;
      align-items: center;
      gap: 9px;
  }

  .ib-pt-btn-primary:hover {
      background: var(--ib-light-teal);
      color: var(--ib-primary-dark);
  }

  .ib-pt-btn-outline {
      border: 1px solid rgba(255, 255, 255, .6);
      color: #fff;
      padding: 12px 23px;
      border-radius: 6px;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      gap: 9px;
  }

  .ib-pt-btn-outline:hover {
      background: #fff;
      color: var(--ib-primary);
  }


  /* =========================================================
           INTRO
        ========================================================= */

  .ib-pt-intro-box {
      border: 1px solid var(--ib-border);
      border-radius: 10px;
      padding: 35px;
      height: 100%;
      background: #fff;
  }

  .ib-pt-intro-icon {
      width: 54px;
      height: 54px;
      border-radius: 8px;
      background: var(--ib-light-teal);
      color: var(--ib-primary);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
      margin-bottom: 22px;
  }

  .ib-pt-intro-box h3 {
      font-size: 21px;
      margin-bottom: 10px;
  }

  .ib-pt-intro-box p {
      color: var(--ib-muted);
      margin-bottom: 0;
  }


  /* =========================================================
           PARTNER TYPES
        ========================================================= */

  .ib-pt-partner-card {
      position: relative;
      background: #fff;
      border: 1px solid var(--ib-border);
      border-radius: 10px;
      padding: 32px;
      height: 100%;
      transition: .3s ease;
  }

  .ib-pt-partner-card:hover {
      transform: translateY(-5px);
      border-color: rgba(0, 80, 79, .35);
      box-shadow: 0 15px 35px rgba(0, 50, 50, .07);
  }

  .ib-pt-partner-icon {
      width: 52px;
      height: 52px;
      border-radius: 8px;
      background: var(--ib-light-teal);
      color: var(--ib-primary);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 23px;
      margin-bottom: 20px;
  }

  .ib-pt-partner-card h3 {
      font-size: 20px;
      margin-bottom: 10px;
  }

  .ib-pt-partner-card p {
      color: var(--ib-muted);
      margin-bottom: 0;
  }


  /* =========================================================
           VALUE
        ========================================================= */

  .ib-pt-value-row {
      padding: 28px 0;
      border-bottom: 1px solid var(--ib-border);
  }

  .ib-pt-value-row:last-child {
      border-bottom: 0;
  }

  .ib-pt-value-number {
      color: var(--ib-primary);
      font-size: 13px;
      font-weight: 800;
  }

  .ib-pt-value-row h3 {
      font-size: 22px;
      margin-bottom: 8px;
  }

  .ib-pt-value-row p {
      color: var(--ib-muted);
      margin-bottom: 0;
  }


  /* =========================================================
           OPPORTUNITY
        ========================================================= */

  .ib-pt-opportunity-card {
      background: #fff;
      border: 1px solid var(--ib-border);
      border-radius: 9px;
      padding: 30px;
      height: 100%;
  }

  .ib-pt-opportunity-card h3 {
      font-size: 20px;
      margin-bottom: 10px;
  }

  .ib-pt-opportunity-card p {
      color: var(--ib-muted);
      margin-bottom: 0;
  }

  .ib-pt-opportunity-icon {
      font-size: 27px;
      color: var(--ib-primary);
      margin-bottom: 18px;
  }


  /* =========================================================
           PROCESS
        ========================================================= */

  .ib-pt-process {
      position: relative;
  }

  .ib-pt-process::before {
      content: "";
      position: absolute;
      top: 55px;
      height: 1px;
      background: #c9dcda;
      width: 75%;
      left: 50%;
      transform: translateX(-50%);
  }

  .ib-pt-step {
      position: relative;
      text-align: center;
      z-index: 2;
  }

  .ib-pt-step-number {
      width: 68px;
      height: 68px;
      margin: 0 auto 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      background: #fff;
      border: 1px solid var(--ib-border);
      color: var(--ib-primary);
      font-family: "Manrope", sans-serif;
      font-weight: 800;
      font-size: 18px;
  }

  .ib-pt-step h4 {
      font-size: 17px;
      margin-bottom: 7px;
  }

  .ib-pt-step p {
      max-width: 165px;
      margin: auto;
      color: var(--ib-muted);
      font-size: 13px;
  }


  /* =========================================================
           PARTNER FIT
        ========================================================= */

  .ib-pt-fit-list {
      list-style: none;
      padding: 0;
      margin: 0;
  }

  .ib-pt-fit-list li {
      display: flex;
      gap: 13px;
      margin-bottom: 18px;
      color: var(--ib-muted);
  }

  .ib-pt-fit-list i {
      color: var(--ib-primary);
      font-size: 19px;
      margin-top: 3px;
  }


  /* =========================================================
           CTA
        ========================================================= */

  .ib-cn-cta {
      background:
          linear-gradient(100deg,
              rgba(0, 63, 62, .97),
              rgba(0, 80, 79, .90)),
          url('/assets/images/photo-1556761175-b413da4baf72.avif') center / cover no-repeat;

      color: #fff;
      padding: 90px 0;
  }

  .ib-cn-cta h2 {
      font-size: clamp(35px, 4vw, 52px);
      font-weight: 800;
      letter-spacing: -1.5px;
      margin-bottom: 17px;
  }

  .ib-cn-cta p {
      max-width: 700px;
      color: rgba(255, 255, 255, .77);
      line-height: 1.8;
      margin-bottom: 28px;
  }

  .ib-cn-cta-btn {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      padding: 14px 24px;
      background: #fff;
      color: var(--ib-primary);
      border-radius: 6px;
      font-size: 14px;
      font-weight: 700;
  }

  .ib-cn-cta-btn:hover {
      background: var(--ib-light-teal);
      color: var(--ib-primary-dark);
  }



  /* =========================================================
           FAQ
        ========================================================= */

  .ib-pt-faq .accordion-item {
      border: 1px solid var(--ib-border);
      margin-bottom: 12px;
      border-radius: 7px !important;
      overflow: hidden;
  }

  .ib-pt-faq .accordion-button {
      font-family: "Manrope", sans-serif;
      font-weight: 700;
      color: var(--ib-secondary-dark);
      padding: 20px 22px;
      box-shadow: none;
  }

  .ib-pt-faq .accordion-button:not(.collapsed) {
      background: var(--ib-light-teal);
      color: var(--ib-primary);
  }

  .ib-pt-faq .accordion-body {
      color: var(--ib-muted);
      padding: 0 22px 22px;
  }



  /* =========================================================
           RESPONSIVE
        ========================================================= */

  @media (max-width: 991.98px) {

      .ib-pt-navbar {
          min-height: 70px;
      }

      .ib-pt-nav-link {
          padding: 10px 0 !important;
      }

      .ib-pt-header-btn {
          display: inline-block;
          margin: 10px 0;
      }

      .ib-pt-hero {
          min-height: 590px;
      }

      .ib-pt-process::before {
          display: none;
      }

  }


  @media (max-width: 767.98px) {

      .ib-pt-section {
          padding: 65px 0;
      }

      .ib-pt-hero {
          min-height: 560px;
      }

      .ib-pt-hero h1 {
          font-size: 42px;
      }

      .ib-pt-hero p {
          font-size: 16px;
      }

      .ib-cn-cta {
          padding: 45px 28px;
      }

      .ib-pt-step {
          margin-bottom: 35px;
      }

  }