
@import url(../../lib/font/source-sans-pro/source-sans-pro.css);
section.has-light-background, section.has-light-background h1, section.has-light-background h2, section.has-light-background h3, section.has-light-background h4, section.has-light-background h5, section.has-light-background h6 {
  color: #222; }

@font-face {
  font-family: 'Erotique';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Erotique-Sans-Alternate-Bold.ttf") format('truetype');
}

@font-face {
  font-family: 'Monterchi';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Monterchi-Regular.ttf") format('truetype');
}

@font-face {
  font-family: 'Monterchi';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Monterchi-Bold.ttf") format('truetype');
}

@font-face {
  font-family: 'Monterchi';
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Monterchi-Italic.ttf") format('truetype');
}

@font-face {
  font-family: 'Monterchi';
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Monterchi-Bold-Italic.ttf") format('truetype');
}

/*********************************************
 * COLOR SYSTEM
 *********************************************/

:root {
  --black: #000000;
  --light-yellow: #FFFBE8; /* FCF5D2 */
  --willow-green: #8ecc6f;
  --dark-red: #da7f19;
  --dark-red: #65000B;

  --heading-blue-transparent: rgba(20, 3, 226, 0.82);
}

/*********************************************
 * GLOBAL STYLES
 *********************************************/

body,
.reveal-viewport,
.reveal,
.reveal .backgrounds {
  background-color: var(--light-yellow) !important;
}

.reveal .slides section:has(> h2) {
  padding-top: 0 !important;
  background-color: var(--light-yellow) !important;
}

.reveal .slides section.section-title,
.reveal .slides section.main-title,
.reveal .slides section.end-title,
.reveal .slides section.overview-slide {
  background-color: transparent !important;
}

.reveal {
  font-family: "Monterchi", sans-serif;
  font-size: 36px;
  font-weight: normal;
  color: var(--black);
}

.reveal ::selection {
  color: var(--light-yellow) !important;
  background: var(--dark-red) !important;
  text-shadow: none !important;
}

.reveal ::-moz-selection {
  color: var(--light-yellow) !important;
  background: var(--dark-red) !important;
  text-shadow: none !important;
}

.reveal p,
.reveal li,
.reveal td,
.reveal th,
.reveal blockquote {
  color: var(--black);
}

/*********************************************
 * HEADERS
 *********************************************/

.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.reveal h5,
.reveal h6 {
  margin: 0 0 20px 0;
  font-family: "Erotique", cursive;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: normal;
  text-shadow: none;
  word-wrap: break-word;
}

/* Overview only */
.reveal section.overview-slide h1 {
  margin-top: 0vh;
}

/* All ordinary level-1 section divider slides */
.reveal section.section-title h1 {
  margin-top: 24vh;
}

.reveal section.end-title {
  display: flex !important;
  flex-direction: column;
  justify-content: flex-end !important;
  align-items: center !important;

  height: 100%;
  padding-bottom: 8vh !important;
  box-sizing: border-box;
}

.reveal section.end-title h1 {
  position: static !important;
  display: inline-block !important;

  margin: 0 !important;

  color: var(--light-yellow) !important;
  background: var(--heading-blue-transparent) !important;
}

/* ------------------------------------------
   LEVEL-1 HEADINGS
------------------------------------------ */

.reveal h1 {
  display: table;

  margin-left: auto;
  margin-right: auto;

  padding:
    0.8em
    0.8em;

  font-size: 1.5em;
  line-height: 1.08;
  text-align: center;

  color: #fafad2;

  background-color:
    rgba(101, 0, 11, 0.9);

  border-radius: 50%;
}

/* Main title only */

.reveal section.main-title {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 100%;
}

.reveal section.main-title h1 {
  display: flex !important;
  align-items: center;
  justify-content: center;

  width: min(800px, 82vw);
  min-height: 320px;

  margin: 0 auto !important;
  padding: 0em 0em;

  font-size: 2em;
  line-height: 1.08;
  text-align: center;

  color: #fafad2 !important;
  background-color: rgba(101, 0, 11, 0.9) !important;
  border-radius: 50%;
}

/* Overview only */

.reveal section.overview-slide h1 {
  width: 800px;
  max-width: 78vw;

  min-height: 110px;

  margin: 0 auto;

  padding:
    0em
    0em;

  display: flex;
  align-items: center;
  justify-content: center;

  background-color:
    rgba(101, 0, 11, 0.8);
}

/* All ordinary level-1 section divider slides */

.reveal section.section-title h1 {
  margin-top: 24vh;
}

/* End slide */

.reveal section.end-title {
  display: flex !important;

  flex-direction: column;

  justify-content: flex-end !important;
  align-items: center !important;

  height: 100%;

  padding-bottom: 8vh !important;

  box-sizing: border-box;
}

.reveal section.end-title h1 {
  margin: 0 !important;
}

/* ------------------------------------------
   LEVEL-2 HEADINGS
------------------------------------------ */

.reveal h2 {
  color: var(--dark-red);
  font-size: 1.15em;
}

/*********************************************
 * LINKS
 *********************************************/

.reveal a {
  color: var(--dark-red);
  text-decoration: none;

  transition: color .15s ease;
}

.reveal a:hover {
  color: var(--black);
  text-shadow: none;
  border: none;
}

/*********************************************
 * IMAGES
 *********************************************/

.reveal section img {
  margin: 12px 0;

  background: transparent;

  border: none;

  box-shadow: none;
}

/* Optional framed images */

.reveal section img.framed {
  border: 4px solid var(--willow-green);

  box-shadow:
    0 0 12px rgba(0, 0, 0, 0.18);
}

/*********************************************
 * LISTS
 *********************************************/

.reveal ul {
  list-style-type: disc;
}

.reveal ul ul {
  list-style-type: circle;
}

.reveal ul ul ul {
  list-style-type: disc;
}

.reveal ul,
.reveal ol {
  display: block !important;
}

.reveal ul ol {
  padding-top: 0 !important;
  margin-top: 0em !important;
}

.reveal ul > li > ol {
  padding-top: 0 !important;
  margin-top: 0em !important;
}

/*********************************************
 * BLOCKQUOTES
 *********************************************/

.reveal blockquote {
  background:
    rgba(20, 3, 226, 0.08);

  border-left:
    6px solid var(--willow-green);

  padding:
    0.5em
    1em;

  box-shadow: none;
}

/*********************************************
 * TABLES
 *********************************************/

.reveal table th,
.reveal table td {
  border-bottom:
    1px solid rgba(20, 3, 226, 0.25);
}

/*********************************************
 * NAVIGATION
 *********************************************/

.reveal .controls {
  color: var(--dark-red);
}

.reveal .progress {
  background:
    rgba(0, 0, 0, 0.08);
}

.reveal .progress span {
  background:
    var(--dark-red);
}

/*********************************************
 * AUDIO FIELDS
 *********************************************/

#global-audio {
  position: fixed;

  right: 7rem;
  bottom: 1rem;

  z-index: 99999;
}

#audio-player {
  width: 16rem;
  max-width: 33vw;

  opacity: 0.92;
}

@media (max-width: 768px) {
  #global-audio {
    right: 6rem;
    bottom: 0.6rem;
  }

  #audio-player {
    width: 11rem;
    max-width: 57vw;
  }
}

/*********************************************
 * DOWNLOAD PDF / DOCX / ODT
 *********************************************/

.reveal .download-icons {
  position: fixed !important;

  left: 50%;
  bottom: 0.25vh;

  transform: translateX(-50%);

  display: flex;
  gap: 1.5rem;

  z-index: 999;
}

.download-icons a {
  color: var(--light-yellow);
  background: rgba(101, 0, 11, 0.9);

  padding: 0.35em 0.8em;

  border-radius: 999px;

  font-size: 0.3em;
  text-decoration: none;

  backdrop-filter: blur(4px);
}

.download-icons a:hover {
  color: var(--black);
  background: var(--light-yellow);
}
