/***********
*************** CARDS
*****************************************/

/*************************************************************         CARD SHELL / WRAPPER          ********************/

/* #region CARD SHELL */

/*==========================================================================
|                            CARD INACTIVE                                 |
==========================================================================*/

.card{
  --card-accent: var(--accent);
  --card-accent-rgb: 241,160,36;
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: rgba(10, 14, 20, 0.40);
  box-shadow: var(--shadow);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

[data-imprint="reinstate-trance"]{
  --card-accent: var(--accent-trance);
  --card-accent-rgb: 161,105,183;
}

/*==========================================================================
|                            CARD ON MOUSE HOVER                           |
==========================================================================*/

.card:hover{
  transform: translateY(-2px);
  border-color: rgba(var(--card-accent-rgb),0.35);
  background: rgba(12, 17, 25, 0.52);
}



/*==========================================================================
|                          CARD — COMING SOON VARIANT                      |
==========================================================================*/

/* #region CARD UPCOMING */

.card-upcoming{
  border-color: rgba(var(--card-accent-rgb),0.55);
  box-shadow: 0 0 0 1px rgba(var(--card-accent-rgb),0.12), 0 0 32px rgba(var(--card-accent-rgb),0.20), var(--shadow);
}

.card-upcoming:hover{
  border-color: rgba(var(--card-accent-rgb),0.8);
  box-shadow: 0 0 0 1px rgba(var(--card-accent-rgb),0.25), 0 0 48px rgba(var(--card-accent-rgb),0.28), var(--shadow);
}

.card-badge{
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 4px 10px;
  background: var(--card-accent);
  color: #0a0a0a;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 6px;
  pointer-events: none;
}

/* #endregion CARD UPCOMING */


/* #endregion CARD SHELL */


/*************************************************************         CARD CONTENT          ********************/

/*==========================================================================
|                               CARD MEDIA AREA                            |
==========================================================================*/

/* #region CARD MEDIA AREA */

.card-media{
  position: relative;
  padding: 0;
}

.card-image{
  width: 100%;
  aspect-ratio: 1 / 1;
  background-image: var(--thumb-url, linear-gradient(135deg, rgba(var(--card-accent-rgb),0.3), rgba(16,24,34,0.9)));
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* #endregion CARD MEDIA AREA */

/*==========================================================================
|                             CARD CONTENT PANEL                           |
==========================================================================*/

/* #region CARD CONTENT PANEL */

/*==========================================================================
|                             CARD CONTENT WRAPPER                         |
==========================================================================*/

.card-body{
  padding: 14px;
  border-top: 1px solid var(--line);
  background: rgba(255,255,255,0.03);
  display: flex;
  flex-direction: column;
  flex: 1;
}

/*==========================================================================
|                             CARD CONTENT TEXT                            |
==========================================================================*/

/* #region CARD TEXT */

.card-eyebrow{
  margin: 0 0 8px;
  color: var(--card-accent);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.76rem;
}

.card-title{
  margin: 0 0 8px;
  font-size: clamp(1.1rem, 1.5vw, 1.35rem);
}

.card-subtitle{
  margin: 0 0 10px;
  color: rgba(244,241,234,0.88);
  font-weight: 400;
}

.card-text{
  margin: 0 0 12px;
  color: var(--muted);
  line-height: 1.55;
}

/* #endregion CARD TEXT */

/*==========================================================================
|                             CARD BUTTONS                                 |
==========================================================================*/

.card-actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: auto;
  padding-top: 14px;
}



/* #endregion CARD CONTENT PANEL */
