.purpose-block {
  position: relative;
  padding: 60px 20px;
  margin: 40px auto;
  max-width: 1200px;

  &__container {
    position: relative;
    padding: 60px 80px;
    background: #ffffff;
    
    // Angled corner borders - right top and left bottom
    clip-path: polygon(
      0 40px,
      40px 0,
      calc(100% - 40px) 0,
      100% 40px,
      100% calc(100% - 40px),
      calc(100% - 40px) 100%,
      40px 100%,
      0 calc(100% - 40px)
    );

    // Inner white background
    &::before {
      content: '';
      position: absolute;
      top: 3px;
      left: 3px;
      right: 3px;
      bottom: 3px;
      background: #ffffff;
      clip-path: polygon(
        0 40px,
        40px 0,
        calc(100% - 40px) 0,
        100% 40px,
        100% calc(100% - 40px),
        calc(100% - 40px) 100%,
        40px 100%,
        0 calc(100% - 40px)
      );
      z-index: 0;
    }

    // Border color layer
    &::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: var(--border-color, #00A3E0);
      clip-path: polygon(
        0 40px,
        40px 0,
        calc(100% - 40px) 0,
        100% 40px,
        100% calc(100% - 40px),
        calc(100% - 40px) 100%,
        40px 100%,
        0 calc(100% - 40px)
      );
      z-index: -1;
    }
  }

  &__content {
    position: relative;
    z-index: 1;
    text-align: center;
  }

  &__heading {
    font-size: 3rem;
    font-weight: 700;
    color: #000000;
    line-height: 1.2;
    margin: 0 0 30px 0;
    text-transform: uppercase;
    letter-spacing: -1px;

    @media (max-width: 768px) {
      font-size: 2.25rem;
    }

    @media (max-width: 480px) {
      font-size: 1.75rem;
    }
  }

  &__sub-heading {
    font-size: 1.5rem;
    font-weight: 400;
    color: #333333;
    line-height: 1.6;
    margin: 0 0 30px 0;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;

    @media (max-width: 768px) {
      font-size: 1.25rem;
    }

    @media (max-width: 480px) {
      font-size: 1.125rem;
    }
  }

  &__button {
    display: inline-block;
    padding: 14px 32px;
    background-color: var(--border-color, #00A3E0);
    color: #ffffff;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 10px;

    &:hover {
      background-color: #0082b3;
      transform: translateY(-2px);
      box-shadow: 0 4px 12px rgba(0, 163, 224, 0.3);
    }

    &:active {
      transform: translateY(0);
    }

    @media (max-width: 480px) {
      padding: 12px 24px;
      font-size: 0.9rem;
    }
  }

  // Responsive adjustments
  @media (max-width: 768px) {
    padding: 40px 15px;
    margin: 30px auto;

    &__container {
      padding: 40px 40px;
      clip-path: polygon(
        0 30px,
        30px 0,
        calc(100% - 30px) 0,
        100% 30px,
        100% calc(100% - 30px),
        calc(100% - 30px) 100%,
        30px 100%,
        0 calc(100% - 30px)
      );

      &::before,
      &::after {
        clip-path: polygon(
          0 30px,
          30px 0,
          calc(100% - 30px) 0,
          100% 30px,
          100% calc(100% - 30px),
          calc(100% - 30px) 100%,
          30px 100%,
          0 calc(100% - 30px)
        );
      }
    }
  }

  @media (max-width: 480px) {
    padding: 30px 10px;
    margin: 20px auto;

    &__container {
      padding: 30px 25px;
      clip-path: polygon(
        0 20px,
        20px 0,
        calc(100% - 20px) 0,
        100% 20px,
        100% calc(100% - 20px),
        calc(100% - 20px) 100%,
        20px 100%,
        0 calc(100% - 20px)
      );

      &::before,
      &::after {
        clip-path: polygon(
          0 20px,
          20px 0,
          calc(100% - 20px) 0,
          100% 20px,
          100% calc(100% - 20px),
          calc(100% - 20px) 100%,
          20px 100%,
          0 calc(100% - 20px)
        );
      }
    }
  }
}
