.h17-feature-intro {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(18rem, 0.92fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}

.h17-feature-intro__copy {
  min-width: 0;
}

.h17-feature-intro__visual {
  position: relative;
  width: min(100%, 34rem);
  margin: 0 0 0 auto;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: clamp(1.25rem, 3vw, 2rem);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 24px 60px rgba(4, 45, 34, 0.18);
  isolation: isolate;
}

.h17-feature-intro__visual::after {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: inherit;
  content: "";
  pointer-events: none;
}

.h17-feature-intro__visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 31rem;
  object-fit: contain;
}

.h5b-category-shell .h17-feature-intro {
  grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
}

.h5b-category-shell .h17-feature-intro__copy {
  max-width: 48rem;
}

.h5b-category-shell .h17-feature-intro__visual {
  border-color: rgba(11, 107, 79, 0.14);
  box-shadow: 0 24px 60px rgba(26, 69, 55, 0.14);
}

.h17-feature-intro--books .h17-feature-intro__visual {
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(226, 241, 235, 0.92));
}

.h17-feature-intro--books .h17-feature-intro__visual img {
  padding: clamp(0.5rem, 1.5vw, 1rem);
}

.h17-feature-intro--software .h17-feature-intro__visual img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.h6-courses__hero .h17-feature-intro__visual {
  border-color: rgba(255, 255, 255, 0.2);
  background: #063f31;
  box-shadow: 0 28px 70px rgba(0, 24, 18, 0.35);
}

@media (max-width: 899.98px) {
  .h17-feature-intro,
  .h5b-category-shell .h17-feature-intro {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }

  .h17-feature-intro__visual {
    width: min(100%, 38rem);
    margin-inline: 0;
  }
}

@media (max-width: 575.98px) {
  .h17-feature-intro {
    gap: 1.5rem;
  }

  .h17-feature-intro__visual {
    border-radius: 1.15rem;
    box-shadow: 0 16px 36px rgba(4, 45, 34, 0.16);
  }

  .h17-feature-intro__visual img {
    max-height: 22rem;
  }
}
