/* ============================================================
   BIOGRAPHY – Slider single-card (all entries)
   Namespace: tp-bio-*
============================================================ */

.tp-bio-card{
  background: radial-gradient(120% 120% at 100% 0%, #101010 0%, #0A0A0A 60%, #252525 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  color: #fff;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.45);

  /* equal-height support */
  height:100%;
  display:flex; flex-direction:column;
}

/* ---------- Header ---------- */
.tp-bio-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 18px;
  background: linear-gradient(180deg, #1a1a1a 0%, #101010 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.tp-bio-title{
  font-size: 1.1rem; margin: 0; font-weight: 600;
  display: flex; align-items: center; gap: 6px;
}
.tp-bio-ico{ font-size: 1.15rem; color: #d90404; margin-right: 4px; position: relative; top: 1px; }
.tp-bio-sub{ font-size: 0.9rem; opacity: 0.8; }
.tp-bio-empty{ padding: 16px 18px; opacity: 0.8; }

/* ---------- Slider Controls ---------- */
.tp-slider-controls{ display:flex; align-items:center; gap:10px; }
.tp-btn{
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  padding: 6px 10px;
  color: #fff;
}
.tp-btn:hover{ background: rgba(255, 255, 255, 0.1); }
.tp-count{ opacity: 0.85; font-size: 0.92rem; }

/* ---------- Slider ---------- */
.tp-slider-viewport{
  overflow: hidden;

  /* equal-height: content area grows to fill */
  flex:1 1 auto;
  display:flex;
}
.tp-slider-track{
  display:flex; transition: transform 0.35s ease; will-change: transform;
  width:100%;
}
.tp-slide{
  flex: 0 0 100%;
  padding: 14px;

  /* equal-height */
  display:flex;
}

/* ---------- Bio Item ---------- */
.tp-bio-item{
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  padding: 14px;
  transition: box-shadow 0.25s ease;

  /* equal-height: fill slide */
  width:100%;
  display:flex; flex-direction:column; height:100%;
}
.tp-bio-item:hover{ box-shadow: 0 0 14px rgba(217, 4, 4, 0.15); }

.tp-bio-h{ font-weight: 600; margin-bottom: 6px; }
.tp-bio-text{ opacity: 0.95; font-size: 0.95rem; line-height: 1.55; }

/* ---------- Read More Button ---------- */
.tp-bio-btn{
  background: linear-gradient(90deg, #d90404, #730707);
  border: 0; color: #fff; padding: 6px 12px; border-radius: 10px; margin-top: 8px;
  align-self:flex-start;
}
.tp-bio-btn:hover{ filter: brightness(1.05); }

/* ---------- Responsive ---------- */
@media (max-width: 575.98px){
  .tp-slide{ padding: 10px; }
}

/* Desktop equal-height helper */
@media (min-width:992px){
  .tp-equal-row{ display:flex; align-items:stretch; gap:20px; }
  .tp-equal-row > [class*="col-lg-6"]{ display:flex; }
}
