.c-blocktone-light-lightest {
    background-color: #fff;
}
.c-blocktone-dark-darkest {
    background-color: #252328;
}
 .c-mode-dark .grad-card__top .grad-card__logo {
  color: #ffffff;
}
 .c-mode-light .grad-card__top .grad-card__logo {
  color: black;
}

.color-bg-grey-8-o60 {
  background: rgba(42, 40, 47, 0.6);
}

.color-text-white-o60 {
  color: rgba(255, 255, 255, 0.6);
}

.flex-direction-column {
  flex-direction: column;
}
.flex-direction-row {
  flex-direction: row;
}

.fwb {
  font-weight: 600;
}

.pu_divider {
  display: flex;
  height: 1px;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  opacity: 0.2;
  background-color: #4c4c4c;
}

/** card border animation **/

.gradient-border-card {
  position: relative;
  flex: 1 1;
  box-shadow:
    0 0 0 1px transparent,
    0 2px 4px transparent,
    0 12px 24px transparent;
  z-index: 1;

  i {
    content: "";
    position: absolute;
    inset: -1px;
    padding: var(--border-size);
    --border-size: 2px;
    --padding: 1px;
    overflow: hidden;
    padding: calc(var(--padding) + var(--border-size));
    border-radius: 6px;
    display: inline-block;
    z-index: 0;
    backface-visibility: hidden;
    perspective: 1000;
    transform: translateZ(0);
    mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    mask-composite: exclude;
    z-index: -1;
    border-radius: calc(6px + var(--border-size));

    &:before {
      content: "";
      display: block;
      width: max(300%, 150vw);
      padding-bottom: max(300%, 150vw);
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      border-radius: 100%;
      z-index: -2;
      animation: landing_spin__XlUIM 15s linear infinite;
      pointer-events: none;
    }
  }

  &:before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    padding: 1px;
    background: radial-gradient(75% 75% at 25% 15%, #fff 0, rgba(255, 255, 255, 0.3) 100%);
    mask:
      linear-gradient(#000, #000) content-box,
      linear-gradient(#000, #000);
    mask-composite: exclude;
    opacity: 0.5;
    pointer-events: none;
  }
}

@keyframes landing_spin__XlUIM {
  0% {
    transform: translate(-50%, -50%) rotate(1turn);
  }

  to {
    transform: translate(-50%, -50%) rotate(0);
  }
}

.glowing-wrapper {
  border-radius: 62.5rem;
  display: inline-block;
  position: relative;
  overflow: hidden;

  &.glowing-wrapper-active {
    background-color: #000;
  }
}

.glowing-wrapper-borders-masker {
  width: 100%;
  opacity: 0;
  border-radius: 62.5rem;
  padding: 0.11rem;
  line-height: 100%;
  transition: opacity 1s;
  position: absolute;
  top: 0;
  left: 0;
}

.glowing-wrapper-animations {
  width: 100%;
  opacity: 0;
  transition: opacity 1s;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.glowing-wrapper-mask {
  opacity: 1;
}

.glowing-wrapper-glow {
  opacity: 0.12;
  filter: blur(8px);
}

.glowing-wrapper-borders {
  width: 100%;
  opacity: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.glowing-wrapper-mask-wrapper {
  opacity: 1;
}

.glowing-wrapper-active {
  .glowing-wrapper-animations,
  .glowing-wrapper-borders-masker {
    opacity: 1;
  }
}

.glowing-wrapper-animations:before,
.glowing-wrapper-borders:before {
  content: "";
  float: left;
  padding-top: 100%;
}

.glowing-wrapper-animations:after,
.glowing-wrapper-borders:after {
  clear: both;
  content: "";
  display: block;
}

.glowing-wrapper-animations {
  pointer-events: none;

  * {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

.glowing-wrapper-borders,
.glowing-wrapper-glow,
.glowing-wrapper-mask {
  animation: borderTurn 4.5s infinite linear;
  background-image: conic-gradient(
    from 0 at 50% 50%,
    rgba(255, 255, 255, 0.5) 0deg,
    rgba(255, 255, 255, 0) 60deg,
    rgba(255, 255, 255, 0) 310deg,
    rgba(255, 255, 255, 0.5) 360deg
  );
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.glowing-wrapper-mask-wrapper {
  mask: url("data:image/svg+xml,url('data:image/svg+xml,%253Csvg width='28' height='24' viewBox='0 0 28 24' fill='none' xmlns='http://www.w3.org/2000/svg'%253E%253Crect width='28' height='24' fill='black'/%253E%253C/svg%253E%250A');");
  mask-repeat: repeat;
  mask-size: auto;
}

.glowing-wrapper-borders {
  animation-name: borderTurnWithTranslate;
}

.glowing-wrapper-borders-masker {
  content: "";
  inset: 0;
  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

@keyframes borderTurn {
  0% {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes borderTurnWithTranslate {
  0% {
    transform: translate(-50%, -50%) rotate(0);
  }

  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

/** innovation cards **/

@media only screen and (max-width: 600px) {
  .full-width-card {
    .full-width-card-image-container {
      flex-direction: column !important;
      flex: 1 !important;
      max-width: 100% !important;
    }

    .px5.py5 {
      flex: 1 !important;
    }
  }
}

@media only screen and (min-width: 601px) {
  .mob-alignment {
    align-items: flex-start;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 0.5rem;
  }
}

.full-width-card {
  .df.flex-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
  }

  .img-container {
    flex: 0 0 50%;
    max-width: 50%;
    display: block;
    align-items: center;
    justify-content: center;
  }

  .px5.py5 {
    flex: 2;
  }
}

@media only screen and (max-width: 899px) {
  .full-width-card .img-container {
    max-width: 100%;
  }
}

/* Styling for coming soon cards */

.coming-soon-card {
  flex: 0 0 33.3333%;

  /* Ensures 3 cards per row */
  max-width: 33.3333%;

  .img-container {
    display: none;

    /* Hide the image container */
  }

  a {
    pointer-events: none;

    /* Disable link interactions */
  }
}

@media only screen and (max-width: 600px) {
  .coming-soon-card {
    flex: 0 0 100%;

    /* Ensures 3 cards per row */
    max-width: 100%;
  }
}

.style-secondary {
  color: #ffffff !important;

  &:hover {
    box-shadow: inset 0 0 0 1px #949494;
  }
}

.grad-card__logo img {
  width: 100%;
  max-width: 150px;
  height: auto;
  object-fit: contain;
}

.grad-card__footer-btns .c-btn__underline {
  display: none;
}

.grad-card__footer-btns {
  margin-bottom: -10px;
}

.grad-card__footer-btns .c-btn.c-btn--tertiary-primary-ui > div > span {
  text-transform: none;
  letter-spacing: normal;
}

.grad-cards-container.c-blockpad svg path {
  fill: #303138;
}

.grad-cards-container.c-blockpad.c-mode-dark svg path {
  fill: #ffffff;
}

/* Flexbox utilities */
.flex-grow {
  flex-grow: 1;
}

.flex-noshrink {
  flex-shrink: 0;
}

.flex-items-end {
  align-items: flex-end;
}

/* Additional flexbox utilities you might find useful */
.flex-items-start {
  align-items: flex-start;
}

.flex-items-center {
  align-items: center;
}

.flex-justify-center {
  justify-content: center;
}

.flex-justify-between {
  justify-content: space-between;
}

.flex-direction-column {
  flex-direction: column;
} 