/*******************************************************************************
 * Variables used throughout the theme.
 * To adjust anything, simply edit the variables below and rebuild the theme.
 ******************************************************************************/
/*******************************************************************************
 * Themes
 ******************************************************************************/
:root {
  --global-bg-color: #ffffff;
  --global-text-color: #333;
  --global-theme-color: #d33682;
  --global-hover-color: #f648ed;
  --global-footer-bg-color: #424242;
  --global-footer-text-color: #e8e8e8;
  --global-footer-link-color: #ffffff;
  --global-icon-color: #424242; }
  :root .fa-sun {
    display: none; }
  :root .fa-moon {
    padding-left: 10px;
    padding-top: 12px;
    display: block; }

html[data-theme='dark'] {
  --global-bg-color: #424242;
  --global-text-color: #e8e8e8;
  --global-theme-color: #2698BA;
  --global-hover-color: #7bcce4;
  --global-footer-bg-color: #e8e8e8;
  --global-footer-text-color: #424242;
  --global-footer-link-color: #000000;
  --global-icon-color: navajowhite; }
  html[data-theme='dark'] .fa-sun {
    padding-left: 10px;
    padding-top: 12px;
    display: block; }
  html[data-theme='dark'] .fa-moon {
    display: none; }

/******************************************************************************
 * Content
 ******************************************************************************/
body {
  padding-bottom: 70px;
  color: var(--global-text-color);
  background-color: var(--global-bg-color); }

body.fixed-top-nav {
  padding-top: 56px; }

body.sticky-bottom-footer {
  padding-bottom: 0; }

.container {
  max-width: 900px; }

.profile img {
  width: 100%; }

/******************************************************************************
 * Publications
 ******************************************************************************/
/*****************************************************************************
* Projects
*****************************************************************************/
/*******************************************************************************
 * Styles for the base elements of the theme.
 ******************************************************************************/
p, h1, h2, h3, h4, h5, h6, em, div, span, strong {
  color: var(--global-text-color); }

a, table.table a {
  color: var(--global-theme-color); }
  a:hover, table.table a:hover {
    color: var(--global-theme-color);
    text-decoration: underline; }
  a:hover:after, table.table a:hover:after {
    width: 100%; }

.equation {
  margin-bottom: 1rem;
  text-align: center; }

.caption {
  font-size: 0.875rem;
  margin-top: 0.75rem;
  margin-bottom: 1.5rem;
  text-align: center; }

.profile {
  margin-left: 1rem;
  width: 100%; }
  .profile .address {
    margin-bottom: 2px;
    margin-top: 5px;
    font-size: 0.9rem;
    text-align: right; }
    .profile .address p {
      display: inline-block;
      margin: 0; }

@media (min-width: 576px) {
  .profile {
    width: 30%; }
    .profile .address p {
      display: block; } }
.post-description {
  margin-bottom: 2rem;
  font-size: 0.875rem; }
  .post-description a {
    color: inherit; }
    .post-description a:hover {
      color: var(--global-theme-color);
      text-decoration: none; }

.navbar {
  box-shadow: none;
  border-bottom: 1px solid #e8e8e8;
  opacity: 0.95;
  background-color: var(--global-bg-color); }

.navbar.navbar-light a:hover {
  text-decoration: none; }
.navbar.navbar-light .navbar-brand {
  color: var(--global-text-color); }
.navbar.navbar-light .navbar-nav .nav-item .nav-link {
  color: var(--global-text-color); }
  .navbar.navbar-light .navbar-nav .nav-item .nav-link:hover {
    color: var(--global-hover-color); }
.navbar.navbar-light .navbar-nav .nav-item.active > .nav-link {
  background-color: inherit;
  font-weight: bolder;
  color: var(--global-theme-color); }
  .navbar.navbar-light .navbar-nav .nav-item.active > .nav-link:hover {
    color: var(--global-hover-color); }
.navbar.navbar-light .contact-icon {
  font-size: 2rem; }
  .navbar.navbar-light .contact-icon a:hover {
    color: var(--global-hover-color); }

.navbar-toggler .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  background-color: #424242;
  border-radius: 1px;
  margin-bottom: 4px;
  transition: all 0.2s; }
.navbar-toggler .top-bar {
  transform: rotate(45deg);
  transform-origin: 10% 10%; }
.navbar-toggler .middle-bar {
  opacity: 0; }
.navbar-toggler .bottom-bar {
  transform: rotate(-45deg);
  transform-origin: 10% 90%; }

.navbar-toggler.collapsed .top-bar {
  transform: rotate(0); }
.navbar-toggler.collapsed .middle-bar {
  opacity: 1; }
.navbar-toggler.collapsed .bottom-bar {
  transform: rotate(0); }

.news table td {
  font-size: 1rem;
  color: var(--global-text-color); }

.news table th {
  color: var(--global-text-color); }

.social {
  text-align: center; }
  .social .contact-icon {
    font-size: 2rem; }
    .social .contact-icon a {
      color: var(--global-icon-color); }
      .social .contact-icon a:hover {
        color: var(--global-theme-color); }
  .social .contact-note {
    font-size: 0.8rem; }

footer.fixed-bottom {
  background-color: var(--global-footer-bg-color);
  font-size: 0.75rem; }
  footer.fixed-bottom .container {
    color: var(--global-footer-text-color);
    padding-top: 9px;
    padding-bottom: 8px;
    text-align: center; }
  footer.fixed-bottom a {
    color: var(--global-footer-link-color); }
    footer.fixed-bottom a:hover {
      color: pink;
      text-decoration: none; }

footer.sticky-bottom {
  border-top: 1px solid #e8e8e8;
  padding-top: 40px;
  padding-bottom: 40px;
  font-size: 0.9rem; }

.header-bar {
  border-bottom: 1px solid #e8e8e8;
  text-align: center;
  padding-top: 2rem;
  padding-bottom: 5rem; }
  .header-bar h1 {
    color: var(--global-theme-color);
    font-size: 5rem; }

.post-list {
  margin: 0;
  margin-bottom: 40px;
  padding: 0; }
  .post-list li {
    border-bottom: 1px solid #e8e8e8;
    list-style: none;
    padding-top: 2rem;
    padding-bottom: 2rem; }
    .post-list li .post-meta {
      color: #828282;
      font-size: 0.875rem;
      margin-bottom: 0; }
    .post-list li a {
      color: var(--global-text-color);
      text-decoration: none; }
      .post-list li a:hover {
        color: var(--global-theme-color); }

.pagination .page-item .page-link {
  color: var(--global-text-color); }
  .pagination .page-item .page-link:hover {
    color: #000000; }
.pagination .page-item.active .page-link {
  background-color: var(--global-theme-color); }
  .pagination .page-item.active .page-link:hover {
    background-color: var(--global-theme-color); }

.distill a:hover {
  border-bottom-color: var(--global-theme-color);
  text-decoration: none; }

.projects .grid-item {
  width: 250px;
  margin-bottom: 10px; }
  .projects .grid-item a {
    color: black;
    text-decoration: none; }
    .projects .grid-item a:hover {
      color: var(--global-theme-color); }
.projects .card img {
  width: 100%; }

.teaching, .publications {
  margin-top: 1rem; }
  .teaching h1, .publications h1 {
    color: var(--global-theme-color);
    font-size: 2rem;
    text-align: center;
    margin-top: 1em;
    margin-bottom: 1em; }
  .teaching h2, .publications h2 {
    margin-bottom: 1rem; }
    .teaching h2 span, .publications h2 span {
      font-size: 1.5rem; }
  .teaching h2.year, .publications h2.year {
    color: #e8e8e8;
    border-top: 1px solid #e8e8e8;
    padding-top: 1rem;
    margin-top: 2rem;
    margin-bottom: -2rem;
    text-align: right; }
  .teaching ol.bibliography, .publications ol.bibliography {
    list-style: none;
    padding: 0;
    margin-top: 0; }
    .teaching ol.bibliography li, .publications ol.bibliography li {
      margin-bottom: 1rem; }
      .teaching ol.bibliography li .abbr, .publications ol.bibliography li .abbr {
        height: 2rem;
        margin-bottom: 0.5rem; }
        .teaching ol.bibliography li .abbr abbr, .publications ol.bibliography li .abbr abbr {
          display: inline-block;
          background-color: var(--global-theme-color);
          padding-left: 1rem;
          padding-right: 1rem; }
          .teaching ol.bibliography li .abbr abbr a, .publications ol.bibliography li .abbr abbr a {
            color: white; }
            .teaching ol.bibliography li .abbr abbr a:hover, .publications ol.bibliography li .abbr abbr a:hover {
              text-decoration: none; }
        .teaching ol.bibliography li .abbr .award, .publications ol.bibliography li .abbr .award {
          color: var(--global-theme-color) !important;
          border: 1px solid var(--global-theme-color); }
      .teaching ol.bibliography li .title, .publications ol.bibliography li .title {
        font-weight: bolder; }
      .teaching ol.bibliography li .author a, .publications ol.bibliography li .author a {
        border-bottom: 1px dashed var(--global-theme-color); }
        .teaching ol.bibliography li .author a:hover, .publications ol.bibliography li .author a:hover {
          border-bottom-style: solid;
          text-decoration: none; }
      .teaching ol.bibliography li .author > em, .publications ol.bibliography li .author > em {
        border-bottom: 1px solid;
        font-style: normal; }
      .teaching ol.bibliography li .links a.btn, .publications ol.bibliography li .links a.btn {
        color: var(--global-text-color);
        border: 1px solid var(--global-text-color);
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 0.25rem;
        padding-bottom: 0.25rem; }
        .teaching ol.bibliography li .links a.btn:hover, .publications ol.bibliography li .links a.btn:hover {
          color: var(--global-theme-color);
          border-color: var(--global-theme-color); }
      .teaching ol.bibliography li .hidden, .publications ol.bibliography li .hidden {
        font-size: 0.875rem;
        max-height: 0px;
        overflow: hidden;
        text-align: justify;
        -webkit-transition: 0.15s ease;
        -moz-transition: 0.15s ease;
        -ms-transition: 0.15s ease;
        -o-transition: 0.15s ease;
        transition: all 0.15s ease; }
        .teaching ol.bibliography li .hidden p, .publications ol.bibliography li .hidden p {
          line-height: 1.4em;
          margin: 10px; }
        .teaching ol.bibliography li .hidden pre, .publications ol.bibliography li .hidden pre {
          font-size: 1em;
          line-height: 1.4em;
          padding: 10px; }
      .teaching ol.bibliography li .hidden.open, .publications ol.bibliography li .hidden.open {
        max-height: 100em;
        -webkit-transition: 0.15s ease;
        -moz-transition: 0.15s ease;
        -ms-transition: 0.15s ease;
        -o-transition: 0.15s ease;
        transition: all 0.15s ease; }
      .teaching ol.bibliography li div.abstract.hidden, .publications ol.bibliography li div.abstract.hidden {
        border: dashed 1px var(--global-bg-color); }
      .teaching ol.bibliography li div.abstract.hidden.open, .publications ol.bibliography li div.abstract.hidden.open {
        border-color: var(--global-text-color); }

code {
  color: var(--global-theme-color); }

html.transition,
html.transition *,
html.transition *:before,
html.transition *:after {
  transition: all 750ms !important;
  transition-delay: 0 !important; }
