/*
 * ═══════════════════════════════════════════════════════════
 *   "EMERALD & AMBER" — Layout & Typography
 * ═══════════════════════════════════════════════════════════
 */

 .category-title {
    color: #347DB0;
 }

 a:hover,
 a:active {
   text-decoration:underline;
 }

.event-list h3.current-month span,
.event-list li .today {
  background-color: #efefef;
}
.event-time-data time {
  background-color: transparent;
}

/* ─────────────────────────────────────────────────────────
 * TYPOGRAPHY
 * ───────────────────────────────────────────────────────── */

 @font-face {
  font-family: "BrixSans";
  src: url('fonts/Brix-Sans-Web-Light.woff2') format('woff2'), url('fonts/Brix-Sans-Web-Light.woff') format('woff');
  font-weight: 300;
}
@font-face {
  font-family: "BrixSans Medium";
  src: url('fonts/Brix-Sans-Web-Regular.woff2') format('woff2'), url('fonts/Brix-Sans-Web-Regular.woff') format('woff');
  font-weight: 400;
}
@font-face {
  font-family: "BrixSans Bold";
  src: url('fonts/Brix-Sans-Web-Medium.woff2') format('woff2'), url('fonts/Brix-Sans-Web-Medium.woff') format('woff');
  font-weight: 500;
}

body {
  font-size:14px;
}

*,html,
.category-info {
  font-family: 'BrixSans',  arial, helvetica, sans-serif !important;
  font-weight:300;

}
h1, h2, h3, h4, h5, h6,
.event-title h1,
.category-title {
  font-family: 'BrixSans Medium', arial, helvetica, sans-serif !important;
  font-weight:400;

}
.bold, .strong, strong, b,
button, .button {
  font-family: 'BrixSans Bold', arial, helvetica, sans-serif !important;
  font-weight:500;
}

em, i {
  font-style: italic;
  /* padding: 1rem; */
}
/* ─────────────────────────────────────────────────────────
 * HEADER REFINEMENT
 * ───────────────────────────────────────────────────────── */

.page-header {
  background: linear-gradient(135deg, #004062 0%, #000D14 100%) !important;
  border-bottom: 2px solid #000D14;
}

.page-header .header-logo {
  max-height: 64px;
  width: auto;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.15));
}


/* ─────────────────────────────────────────────────────────
 * GLOBAL MENU (navigation bar below header)
 * ───────────────────────────────────────────────────────── */

.global-menu a {
  color: #fff !important;
}

.global-menu a:hover {
  color: #efefef !important;
  text-decoration:none;
}


/* ─────────────────────────────────────────────────────────
 * FOOTER REFINEMENT
 * ───────────────────────────────────────────────────────── */

.footer {
  border-top: 2px solid #ccc;
}
@media screen and (max-width:680px) {
  .footer .flexrow {
    flex-direction: column;
    align-items:center;
  }
}

/* ─────────────────────────────────────────────────────────
 * MEETING / LECTURE EVENT THEMES
 * These override compile-time SCSS colors.
 * ───────────────────────────────────────────────────────── */

/* Event header bar */
div.event-header {
  background: linear-gradient(135deg, #000D14 0%, #004062 100%) !important;
}

/* Timetable time ribbons — primary sessions */
.timetable-time .start-time {
  background-color: #347DB0 !important;
}

/* Timetable time ribbons — breaks (amber accent) */
.timetable-time.break .start-time {
  background-color: #347088 !important;
}

.timetable-time.break,
.timetable-time.break .end-time {
  color: #347088 !important;
}

.timetable-item.timetable-break .timetable-item-body .timetable-title,
.timetable-item.timetable-break .timetable-item-body .timetable-duration,
.timetable-item.timetable-break .timetable-item-body .timetable-duration::before {
  color: #347088 !important;
}

/* Nested timetable titles */
.timetable-contrib .timetable-title,
.timetable-item-body .timetable-item-header .timetable-title.nested {
  color: #347DB0 !important;
}

/* Time end label */
.timetable-time .end-time {
  color: #347DB0;
}

/* Nested session borders */
.timetable-time.nested {
  border-right-color: #6b7280;
}

.timetable-time.nested .start-time {
  background-color: #6b7280;
}

/* Lecture series links */
a.lecture-series-link {
  background: #000D14 !important;
}

/* Day header title on dark background */
.day-header .day-title {
  color: #ccc;
}

/* Event sub-header */
.event-sub-header {
  border-top: 2px solid #ccc;
}

/* Selected/targeted timetable items */
.timetable-item:target .timetable-time {
  border-color: #347088;
}

.timetable-item:target .timetable-time .start-time {
  background-color: #347088 !important;
}

.timetable-item:target .timetable-title {
  color: #347088 !important;
}


/* ─────────────────────────────────────────────────────────
 * LOGIN PAGE
 * ───────────────────────────────────────────────────────── */

.login-container .header-logo {
  max-width: 380px;
  height: auto;
}

.login-container .i-button.highlight {
  background: #347DB0 !important;
  border-color: #004062 !important;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.login-container .i-button.highlight:hover {
  background: #004062 !important;
}


/* ─────────────────────────────────────────────────────────
 * CATEGORY PAGES
 * ───────────────────────────────────────────────────────── */

.category-list .item .title a {
  color: #347DB0;
}

.category-list .item .title a:hover {
  color: #004062;
}
