/* =========================================
   FM TIMELINE MODULE (SELF-CONTAINED)
   - preserves original layout + behaviour
   - scoped so it can be dropped into any page
   - role blocks: #181818 background, 2px vertical separation, rounded corners
   - titles + dates reduced by 60%
   ========================================= */

/* -------------------------
   Module wrapper
   ------------------------- */

.fm-timeline-module {
  background: transparent;
}

/* -------------------------
   Containers & columns
   ------------------------- */

.fm-timeline-module .container {
  padding: 0;
  display: flex;
  justify-content: center;
  max-width: 1200px;
  margin: auto;
  background: transparent;
}

.fm-timeline-module .column {
  flex: 1;
  max-width: calc(33%);
  margin: 0;
  padding: 0;
  background: transparent;
}

/* -------------------------
   Year / date column
   ------------------------- */

.fm-timeline-module .year {
  display: flex;
  flex-direction: column;
  background: transparent;
  color: var(--primary-color-about);
}

.fm-timeline-module .timeline-date {
  font-size: 0.4em; /* 60% reduction */
}

/* Month markers */
.fm-timeline-module .month {
  flex-grow: 1;
  display: flex;
  align-items: center;
  padding-left: 40px;
  color: var(--primary-color-about);
}

/* -------------------------
   Role / event blocks
   ------------------------- */

.fm-timeline-module .event,
.fm-timeline-module .event-inner,
.fm-timeline-module .event-top,
.fm-timeline-module .event-bottom {
  max-width: 600px;
  min-width: 100px;
  padding: 10px;

  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;

  /* IMPORTANT:
     Override inline background colours present in your HTML */
  background-color: #212527 !important;

  /* 2px vertical separation between roles */
  margin-bottom: 2px;

  /* Rounded corners on EVERY role block */
  border-radius: var(--timeline-event-border-radius, 14px) !important;

  /* Keep borders neutral (your HTML uses borders mainly for structure) */
  border: 1px solid transparent;

  color: ghostwhite;
}

/* Remove gap after last role in a column */
.fm-timeline-module .column > .event:last-child,
.fm-timeline-module .column > .event-inner:last-child,
.fm-timeline-module .column > .event-top:last-child,
.fm-timeline-module .column > .event-bottom:last-child {
  margin-bottom: 0;
}

/* -------------------------
   Sticky titles
   ------------------------- */

.fm-timeline-module .title {
  position: sticky;
  top: 0;

  font-size: 0.4em; /* 60% reduction */
  line-height: 1.2;

  /* Match role block background; override any inline/background */
  background-color: #212527 !important;
  color: ghostwhite;
}

/* -------------------------
   Additional copy / logos
   ------------------------- */

.fm-timeline-module .additional-copy {
  margin-top: 10px;
  font-family: Lato, system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 300%;
  color: grey;
  text-transform: uppercase;
}

/* Utility kept from original */
.fm-timeline-module .white-to-color {
  filter: hue-rotate(180deg) saturate(5);
}

/* -------------------------
   Gaps / spacers
   ------------------------- */

.fm-timeline-module .gap {
  max-width: 600px;
  padding: 0;
  margin: 0;
  display: flex;
  background: transparent;
}
