.card-one {
  width: 100%;
}
.card-one .card {
  max-width: 100%;
  background:  #fff;
  transition: all 0.3s ease;
  overflow: hidden;
}

.card-one .card:hover .card__media img {
  transform: scale(1.05);
}

.card-one .card__media {
  border-radius: 0 0 0 0;
  line-height: 0;
  overflow: hidden;
  display: flex;
}

/* Media alignment classes */
.card-one .card__media.media-align-left {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.card-one .card__media.media-align-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.card-one .card__media.media-align-right {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.card-one .card__media img {
  width: auto;
  height: auto;
  max-width: 100%;
  border-radius: 0 0 0 0;
  transition: all 0.3s ease;
}

.card__content-one {
  padding: 30px 40px;
  border-radius: 0 0 0 0;
}

.card-one .card__title {
  margin: 0;
  font-family: var(--card-title-font, "Inter", system-ui, sans-serif);
  font-size: var(--card-title-size, 24px);
  font-weight: var(--card-title-weight, 600);
  line-height: 120%;
  letter-spacing: -0.24px;
  color: var(--card-title-color, var(--heading-color, #1c1f25));
  opacity: calc(var(--card-title-opacity, 100) / 100);
}

.card-one .card__title h1,
.card-one .card__title h2,
.card-one .card__title h3,
.card-one .card__title h4,
.card-one .card__title h5,
.card-one .card__title h6 {
  margin: 0;
}
.card-one .card__button {
  display: inline-flex;
  padding: 16px;
  margin-top: 16px;
  border: 1px solid var(--button1-border, transparent);
  border-radius: 4px;
  font-size: 18px;
  font-weight: 700;
  line-height: normal;
  color: var(--button1-text, var(--btn-text-color, #fff));
  background: var(--button1-background, var(--btn-fill, #1c1f25));
  transition: all 0.3s ease;
}

 .card__button.button-1 {
  border: 1px solid var(--button1-border, transparent);
  color: var(--button1-text, #ffffff);
  background: var(--button1-background, #1c1f25);
}

.card__button.button-1:hover {
  border-color: var(--button1-border-hover, var(--button1-border, transparent));
  color: var(--button1-text-hover, #ffffff);
  background: var(--button1-hover, var(--btn-hover, #685dff));
}

.card__button.button-2 {
  border: 1px solid var(--button2-border, transparent);
  color: var(--button2-text, #ffffff);
  background: var(--button2-background, #685dff);
}

.card__button.button-2:hover {
  border-color: var(--button2-border-hover, var(--button2-border, transparent));
  color: var(--button2-text-hover, #ffffff);
  background: var(--button2-hover, rgb(72, 60, 250));
}

.card-one .card__button span {
  margin-left: 10px;
}

.card-one .button-icon {
  vertical-align: middle;
  display: inline-block;
}

.card-one .button-icon-wrapper {
  position: relative;
  display: inline-flex;
  width: 24px; /* Fixed width */
  height: 24px; /* Fixed height */
  margin-right: 10px;
  justify-content: center;
  align-items: center;
}

.card-one .button-icon-default,
.card-one .button-icon-hover {
  position: absolute; /* Absolute positioning for overlay */
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  transition: opacity 0.2s ease; /* Smooth transition */
}

.card-one .button-icon-default {
  opacity: 1;
}

.card-one .button-icon-hover {
  opacity: 0; /* Hidden by default */
}

.card-one .card__button:hover .button-icon-default {
  opacity: 0; /* Fade out default on hover */
}

.card-one .card__button:hover .button-icon-hover {
  opacity: 1; /* Fade in hover on hover */
}

/* If no hover icon exists, keep default icon visible on hover */
.card-one
  .card__button:hover
  .button-icon-wrapper:not(:has(.button-icon-hover))
  .button-icon-default {
  opacity: 1; /* Keep default visible if no hover icon */
}

@media screen and (max-width: 1199px) {
  .card__content-one {
    padding: 20px;
  }

  .card-one .card__title {
    font-size: 20px;
  }

  .card-one .card__button {
    padding: 13px;
    font-size: 15px;
  }
}

@media screen and (max-width: 600px) {
  .card__content-one {
    padding: 15px;
  }

  .card-one .card__title {
    font-size: 17px;
  }
}
