/* undo Bootstrap's link underline in the site header */
.tatsu-header a, .tatsu-header a:visited, .tatsu-header a:hover{
	text-decoration: none !important;
}


  .event-table { margin-bottom: 0; }
  .event-table > :not(caption) > * > * { padding: .6rem .75rem; }
  .event-table td, .event-table th { vertical-align: middle; }


	
	.event-row:nth-child(even), .event-row:nth-child(even) td{
		background-color: #ECECEC;
	}

  .event-name { font-weight: 600; }
  .event-date,
  .event-time { white-space: nowrap; color: #555; }

  /* ---- Mobile only: condense date+time onto one line with button on right ---- */
  @media (max-width: 767.98px) {
    .event-table thead { display: none; }

    .event-table,
    .event-table tbody,
    .event-table tr,
    .event-table td { display: block; border: 0; padding: 0; }

    .event-table tr {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      border-bottom: 1px solid #eee;
      padding: .75rem;
      column-gap: .75rem;
    }

    /* Name owns the full first line */
    .event-table td.event-name {
      flex: 1 0 100%;
      margin-bottom: .25rem;
    }

    /* Both date and time cells flow inline on line two */
    .event-table td.event-date,
    .event-table td.event-time {
      flex: 0 0 auto;
    }

    /* Dot separator between date and time */
    .event-table td.event-date::after {
      content: " · ";
      color: #bbb;
      margin-left: .5rem;
    }

    /* Button anchored to the far right of the same line */
    .event-table td.event-action {
      flex: 0 0 auto;
      margin-left: auto;
    }
  }

/* ============ Container ============ */
.rsco-event {
  font-family: 'IBM Plex Sans', system-ui, -apple-system, sans-serif;
  color: #1a1a1a;
  line-height: 1.5;
  /*max-width: 860px;*/
  margin: 0rem auto;
    padding: 7px 1rem 0px 1rem;
    border-radius: 5px;
}

/* ============ Title ============ */
.rsco-event h1.heading-3 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 10px 0px 0px 0px;
  color: #0b2a4a;
}

/* ============ Event-type pill ============ */
.rsco-event .bg-secondary-200.rounded-\[20px\] {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #e3eefb;
  color: #0b2a4a;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 0.4rem 1rem;
  border-radius: 999px;
}

.rsco-event .bg-secondary-200.rounded-\[20px\] svg {
  width: 18px;
  height: 18px;
  fill: #0b2a4a;
}

.rsco-event .productive-2 {
  font-size: 0.9rem;
  font-weight: 600;
}

/* ============ Detail rows (date, time, location, phone, email, url, contacts) ============ */
.rsco-event .flex.items-center.gap-2 {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0.55rem 0;
}

.rsco-event .flex.items-center.gap-2 > svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  fill: #5a6b7d;
}

/* ============ Body text ============ */
.rsco-event .body-text-2 {
  font-size: 0.95rem;
  color: #2b3540;
}

.rsco-event a.body-text-2 {
  color: #0b6bcb;
  text-decoration: none;
}

.rsco-event a.body-text-2:hover {
  text-decoration: underline;
}

/* ============ "Event Contact" subheading ============ */
.rsco-event .text-4 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #0b2a4a;
  margin-bottom: 0.4rem;
}

/* ============ Contact block wrapper ============ */
.rsco-event .flex.flex-col.gap-4.pt-6 {
  display: flex;
  flex-direction: column;
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px solid #e0e4ea;
}

/* ============ Mobile date badge ============ */
.rsco-event .bg-tertiary-b-400 {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #f2f6fb;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  margin: 1rem 0;
}

.rsco-event .heading-4 {
  font-weight: 700;
  color: #0b2a4a;
}

.rsco-event .body-text-1 {
  font-size: 0.9rem;
  color: #2b3540;
}

/* ============ Divider ============ */
.rsco-event hr.h-\[8px\] {
  border: 0;
  border-top: 1px solid #e0e4ea;
  height: 0;
  margin: 1.5rem 0;
}

/* ============ Detail content wrapper ============ */
.rsco-event .mt-8.flex.w-full.flex-col.gap-4 {
  margin-top: 20px;
}

.gap-4.pt-6{
gap: 0rem !important;
}

/* ============ Description / rich text ============ */
.rsco-event .rich-text {
  font-size: 1rem;
  color: #2b3540;
  line-height: 1.65;
  margin: 1rem 0;
}

.rsco-event .rich-text p {
  margin: 0 0 0.75rem 0;
}

.rsco-event .rich-text a {
  display: inline-block;
  background: #0b6bcb;
  color: #fff;
  font-weight: 600;
  padding: 0.5rem 1.25rem;
  border-radius: 6px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 0.85rem;
}

.rsco-event .rich-text a:hover {
  background: #0956a3;
}

/* ============ Divider row (border-b) ============ */
.rsco-event .border-secondary-300 {
  border-bottom: 1px solid #e0e4ea;
  margin: 1rem 0;
}

.flex-col.bg-tertiary-b-400{
display: none;
}

.bg-tertiary-b-400 + hr{
display: none;
}

h1 + div.flex{
display: none;
}

.pt-4 .rich-text.mt-4{
margin-top: 0px !important;
}

.border-b + .pt-4{
padding-top: 0px !important;
}

.rsco-event div:has(#eventModalExternal) + .flex.justify-between{
display: none;
}




