.wpfc-sermon-single {
  &-header {
    text-align: center;
  }

  &-meta {
    margin: 8px -8px 0 -8px;
  }

  &-meta-item {
    display: inline-block;
    margin: 0 8px;
    font-size: 14px;
    opacity: .87;
  }

  &-meta-date {
    margin-bottom: 8px;
  }

  &-title {
    margin: 0;
    padding: 0;
  }

  .wp-video {
    margin: auto;
  }

  //noinspection SpellCheckingInspection
  .mejs-video {
    margin: 0;
  }

  // fix youtube video not being full-sized in player
  mediaelementwrapper > iframe {
    width: 100%;
    margin-bottom: 0;
    height: 100%;
  }

  &-media {
    text-align: center;

    > div {
      margin: 24px 0;
    }
  }

  &-audio {
    display: flex;
    justify-content: center;
  }

  &-audio-download {
    display: flex;
    align-items: center;
    flex: none;
    background: white;
    padding: 0 1.25rem;
    box-shadow: none;
    text-decoration: none;
    outline: none;

    .player-none & {
      svg {
        fill: rgb(93, 93, 93);
      }
    }

    .player-wordpress & {
      background: #222;
      margin-bottom: 1.75em;

      svg {
        fill: rgb(255, 255, 255);
      }
    }

    //noinspection SpellCheckingInspection
    .player-mediaelement & {
      background: #222;

      &:hover {
        background-color: rgba(51, 51, 51, 0.7);
      }

      svg {
        fill: rgb(255, 255, 255);
      }
    }

    .player-plyr & {
      border: 1px solid #dbe3e8;
      border-left: none;
      transition: background .3s;

      &:hover {
        background: #dbe3e8;

        svg {
          fill: rgb(255, 255, 255);
        }
      }
    }
  }

  .player-plyr .plyr {
    flex: 1;
  }

  &-description {
    margin-top: 24px;

    p:first-child {
      margin-top: 0;
    }

    p:last-child {
      margin-bottom: 0;
    }
  }

  &-attachments {
    background: #efefef;
    border: 1px solid #ddd;
    padding: 24px;
    margin-top: 24px;

    #wpfc-attachments {
      strong, a {
        display: block;
      }

      p {
        margin: 0;
      }

      .dashicons {
        line-height: 28px;
      }
    }
  }

  &-topics {
    margin-top: 24px;
  }

  &-navigation {
    border-top: 1px solid #ddd;
    margin-top: 2rem;
    padding-top: 1rem;
    display: grid;
    grid-template-columns: 50% 50%;

    .next-sermon {
      text-align: right;
    }
  }
}