@charset "utf-8";
/* Training Day registration page */
.td-hero { padding-block: clamp(3.5rem, 7vw, 6rem); }
.td-hero .lead { color: rgba(255,255,255,.88); }

.td-session {
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 1.5rem 1.75rem;
  background: #fff;
  color: var(--grind-black);
  text-decoration: none;
  border-left: 6px solid var(--impact-crimson);
  min-height: 100%;
}
.td-session:hover { color: var(--grind-black); text-decoration: none; border-left-color: var(--pulse-gold); }
.td-session__band { font-weight: 800; text-transform: uppercase; letter-spacing: .06em; font-size: .85rem; color: var(--impact-crimson); }
.td-session__time { font-size: clamp(1.35rem, 3vw, 1.75rem); font-weight: 800; line-height: 1.2; }
.td-session__cta { margin-top: .5rem; font-weight: 700; }
.td-session__cta span { display: inline-block; transition: transform var(--dur-med) var(--ease-out); }
.td-session:hover .td-session__cta span,
.td-session:focus-visible .td-session__cta span { transform: translateX(4px); }

.td-facts li {
  position: relative;
  padding: 1rem 1rem 1rem 3rem;
  background: #fff;
  border: 1px solid #e7e3e1;
  border-radius: var(--radius-md);
  margin-bottom: .75rem;
}
.td-facts li::before {
  content: "";
  position: absolute;
  left: 1.1rem; top: 1.35rem;
  width: .9rem; height: .9rem;
  border-radius: 50%;
  background: var(--impact-crimson);
  box-shadow: 0 0 0 4px rgba(212,42,54,.15);
}
