/*
   Minor visual polish for event 523.
   Palette follows the banner: ivory washi, indigo ink, muted rust accent.
*/

:root {
  --conf-theme-header-bg: #eee7d8;
  --conf-theme-header-border-bottom: #d8ceb9;
  --conf-theme-header-text: #0e3156;
  --conf-theme-heading: #0e3156;
  --conf-theme-accent: #b87935;
  --conf-theme-accent-dark: #9f642b;
  --conf-theme-link: #0f628d;

  --conf-theme-subtitle-bg: #eee7d8;
  --conf-theme-subtitle-border: #d8ceb9;
  --conf-theme-subtitle-text: #1c4268;

  --conf-theme-menu-bg: #f6f3ec;
  --conf-theme-menu-border: #d8d0c2;
  --conf-theme-menu-link: #12355b;
  --conf-theme-menu-selected: #12355b;
  --conf-theme-menu-selected-bg: #e2d8c8;
  --conf-theme-menu-selected-border: #c8baa4;
  --conf-theme-hover-bg: #ece4d7;
  --conf-theme-hover-color: #0f3155;

  --conf-theme-support-bg: #f6f3ec;
  --conf-theme-support-border: #d8d0c2;
  --conf-theme-support-header-bg: #12355b;
  --conf-theme-support-header-text: #fffaf0;

  --conf-theme-announcement-bg: #f7f2e6;
  --conf-theme-announcement-border: #d8ceb9;
  --conf-theme-announcement-text: #12355b;
}

.confheader,
.confTitleBox,
.confSubTitleBox {
  background: linear-gradient(180deg, #f0eadd 0%, #e5dece 100%) !important;
  border-color: #d8ceb9 !important;
}

.confLogoBannerBox .confLogo {
  display: block;
  border-bottom: 1px solid rgba(18, 53, 91, 0.18);
}

.conference-title-link {
  color: #0c2d50 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.45);
}

.confSubTitle {
  color: #1c4268 !important;
  font-weight: 600;
}

.conference-page .page-content,
.conferenceDetails {
  color: #181818;
}

.conference-page header h2 {
  color: var(--conf-theme-heading);
  border-bottom: 1px solid #d1c2aa;
  padding-bottom: 0.35em;
  margin-bottom: 1.1em;
  font-weight: 520;
  letter-spacing: 0;
}

.conference-page .editor-output {
  color: #181818;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.7;
}

.conference-page .editor-output p,
.conference-page .editor-output li {
  color: #181818;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.7;
}

.conference-page .editor-output h3 {
  color: var(--conf-theme-heading);
  margin-top: 1.55em;
  margin-bottom: 0.65em;
  padding-left: 0.55em;
  border-left: 4px solid var(--conf-theme-accent);
  font-size: 18px;
  font-weight: 620;
  letter-spacing: 0;
}

.conference-page .editor-output h4 {
  color: #181818 !important;
  font-size: 16px;
  font-weight: 450;
  line-height: 1.7;
  margin: 0 0 1em;
}

.conference-page .editor-output li > h4 {
  margin: 0 0 0.4em;
}

.conference-page .editor-output strong {
  color: #0e3156;
  font-weight: 650;
}

.conference-page .editor-output a,
.conferenceDetails a {
  color: var(--conf-theme-link);
}

.conference-page .editor-output em {
  color: inherit;
  font-style: normal;
  font-weight: inherit;
}

.conference-page .editor-output ul {
  margin-top: 0.45em;
  margin-bottom: 1.1em;
  padding-left: 1.35em;
}

.conference-page .editor-output li::marker,
.conferenceDetails li::marker {
  color: var(--conf-theme-accent-dark);
  font-size: 0.95em;
}

.conferenceDetails h2 {
  color: var(--conf-theme-heading);
  border-bottom: 1px solid #d1c2aa;
  padding-bottom: 0.35em;
  margin-bottom: 1.1em;
}

.conferenceDetails h3 {
  color: var(--conf-theme-heading);
  margin-top: 1.4em;
}

.conferenceDetails .description > h3 {
  font-family: inherit;
  font-size: 1.18em;
  font-weight: 560;
}

.conferenceDetails h4 {
  color: #181818 !important;
  font-size: 16px;
  font-weight: 450;
  line-height: 1.7;
}

.conferenceDetails .description > h4:first-of-type {
  color: #181818 !important;
  font-size: 16px;
  font-weight: 450;
  line-height: 1.75;
}

.conferenceDetails hr {
  border: 0;
  border-top: 1px solid #ddd3c2;
  margin: 1.8em 0 1.3em;
}

.conferenceDetails .description > h3 + ul {
  columns: 2 18em;
  column-gap: 2.8em;
  margin-top: 0.4em;
  padding-left: 1.2em;
  color: #181818 !important;
  font-size: 16px !important;
}

.conferenceDetails .description > h3 + ul li {
  break-inside: avoid;
  margin: 0 0 0.35em;
}

.conferenceDetails .description > h3 + ul h4 {
  color: #181818 !important;
  font-size: 16px !important;
  font-weight: 560;
  line-height: 1.5;
  margin: 0 0 0.4em;
}

@media (min-width: 900px) {
  .conferenceDetails .description > h3:first-of-type + ul {
    column-count: 2;
    column-width: auto;
    column-gap: 2.8em;
  }

  .conferenceDetails .description > h3:first-of-type + ul h4 {
    font-size: 15.5px !important;
  }
}

.conferenceDetails .infogrid {
  color: #181818 !important;
  font-size: 16px !important;
  line-height: 1.6;
}

.conferenceDetails .infogrid h2,
.conferenceDetails .infogrid h3,
.conferenceDetails .infogrid .label,
.conferenceDetails .infogrid .place {
  color: #12355b;
}

.conferenceDetails .infogrid .text,
.conferenceDetails .infogrid .address,
.conferenceDetails .infogrid time,
.conferenceDetails .infogrid .timezone-label {
  color: #181818 !important;
  font-size: 16px !important;
}

.conferenceDetails .infogrid a {
  color: #0f5f8f;
  font-weight: 600;
}

.conf_leftMenu .event-menu-heading {
  color: #12355b;
}

.conf_leftMenu a {
  color: #12355b;
  font-size: 14px;
}

.conf_leftMenu .menuConfSelected > a,
.conf_leftMenu .menuConfTitle.selected > a {
  background: var(--conf-theme-menu-selected-bg);
  border-left: 3px solid var(--conf-theme-accent);
  color: #0c2d50;
  font-weight: 600;
}

.conf_leftMenu a:hover {
  background: #eee8dc;
  color: #102f52;
}

#event-search-box input {
  border-color: #d3c6b2;
}