@charset "UTF-8";
@font-face {
  font-family: 'oldstyle';
  src: url("oldstyle.ttf"); }
body {
  margin: 0;
  padding: 0;
  font-family: 'Newsreader', monospace;
  font-weight: 300;
  color: #000;
  font-size: 20px;
  background-color: #fff; }

header {
  height: 100vh;
  background-image: url("../img/piano-bauhaus.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end; }
  header .lyre-header {
    color: #000;
    margin: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5px;
    background: rgba(255, 255, 255, 0.85);
    border: #000 9px double; }
    header .lyre-header h1, header .lyre-header h2 {
      margin: 0;
      text-align: center;
      font-weight: 300;
      letter-spacing: 2px; }
    header .lyre-header h1 {
      font-variant: small-caps; }
    header .lyre-header .title-wrapper {
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      align-items: center; }
      header .lyre-header .title-wrapper .main-title {
        font-size: 55px; }
        @media screen and (max-width: 900px) {
          header .lyre-header .title-wrapper .main-title {
            font-size: 35px; } }
      header .lyre-header .title-wrapper .subtitle {
        font-size: 25px; }
        @media screen and (min-width: 900px) {
          header .lyre-header .title-wrapper .subtitle:before, header .lyre-header .title-wrapper .subtitle:after {
            content: "═";
            color: #EF1925;
            padding: 0 10px; } }
        @media screen and (max-width: 900px) {
          header .lyre-header .title-wrapper .subtitle {
            font-size: 20px; } }
    header .lyre-header .logo img {
      max-height: 140px;
      margin-bottom: -5px; }
      @media screen and (max-width: 900px) {
        header .lyre-header .logo img {
          max-height: 90px; } }
  header .player-holder {
    display: block;
    height: 54px; }

main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px; }
  main > section.inactive {
    display: none; }
  main .pastilles {
    margin-bottom: 30px;
    padding-bottom: 20px; }
    main .pastilles a {
      background-color: black; }
  main.article-page .articles {
    max-width: 1200px;
    column-count: 1; }
    @media (min-width: 768px) {
      main.article-page .articles {
        column-count: 2;
        column-gap: 40px; } }
    @media (min-width: 1024px) {
      main.article-page .articles {
        column-count: 3;
        column-gap: 40px; } }

.bars-container {
  display: flex;
  justify-content: center; }

.articles {
  max-width: 600px;
  margin: 0 auto;
  padding: 20px; }
  .articles article {
    break-inside: avoid-page;
    margin-bottom: 60px;
    padding-bottom: 20px;
    border-bottom: black thin solid; }
    .articles article.noborder {
      border: none;
      margin-top: 0; }
    .articles article h2 {
      font-size: 28px;
      margin: 0 0 15px 0;
      line-height: 1.3em; }
    .articles article .highlight {
      color: #EF1925;
      text-align: justify;
      width: 80%;
      margin: 0 auto;
      font-size: 120%;
      line-height: 125%; }
      .articles article .highlight a {
        color: inherit; }
    .articles article p {
      margin-bottom: 15px;
      line-height: 1.6; }
      .articles article p:first-of-type:first-letter {
        color: #EF1925;
        font-size: 300%;
        font-weight: 400;
        float: left;
        padding-right: 10px; }
    .articles article img {
      width: 100%; }
    .articles article a.more {
      color: #000;
      text-decoration: underline;
      font-style: italic;
      text-align: right; }
  .articles .sommaire {
    margin: 0 auto 30px auto;
    max-width: 350px; }
    .articles .sommaire li {
      border-bottom: black dotted thin;
      padding: 10px;
      list-style: none; }
      .articles .sommaire li a {
        text-decoration: none;
        color: inherit;
        font-weight: bold; }
  .articles .programme, .articles .une {
    border: double black 6px;
    padding: 10px; }
    .articles .programme .nav li, .articles .une .nav li {
      list-style: none;
      display: inline-block;
      padding: 10px; }
      .articles .programme .nav li a, .articles .une .nav li a {
        text-decoration: none;
        color: inherit;
        font-weight: bold; }
  .articles .une {
    border: solid black 3px;
    background: #f8f8f8; }

.pastilles {
  text-align: center;
  padding: 20px; }
  .pastilles a {
    background-color: #EF1925;
    color: #fff;
    text-decoration: none;
    margin: 0 10px;
    border-radius: 50%;
    display: inline-block;
    width: 35px;
    height: 35px;
    font-size: 25px;
    line-height: 35px; }
    .pastilles a ion-icon {
      vertical-align: middle;
      line-height: normal;
      display: inline-block; }

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  /* Slightly greyish and transparent */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  /* Ensure it is on top of other content */ }

.overlay-content {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center; }
  .overlay-content img {
    max-width: 90vw;
    /* Take as much space as possible within the viewport */
    max-height: 90vh;
    /* Maintain aspect ratio */ }
  .overlay-content .close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    cursor: pointer; }
    .overlay-content .close-button::before, .overlay-content .close-button::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 24px;
      height: 2px;
      background-color: white;
      transform: translate(-50%, -50%) rotate(45deg); }
    .overlay-content .close-button::after {
      transform: translate(-50%, -50%) rotate(-45deg); }

@keyframes marquee {
  0% {
    transform: translateX(0%); }
  30% {
    transform: translateX(0%); }
  100% {
    transform: translateX(-100%); } }
.listen {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 54px;
  margin-top: -54px;
  background: #fff;
  z-index: 3;
  position: sticky;
  top: 0;
  border-bottom: black 2px solid;
  border-top: black 2px solid;
  /************ paused *********************/
  /************ playing ********************/ }
  .listen button {
    background: none;
    cursor: pointer;
    border: none; }
  .listen .marquee {
    flex: 1;
    padding: 5px;
    overflow: hidden;
    font-size: 130%; }
    @media screen and (max-width: 900px) {
      .listen .marquee {
        font-size: 90%; } }
    .listen .marquee .currently-playing {
      display: inline-block;
      white-space: nowrap;
      width: auto; }
  .listen.playing .marquee .currently-playing {
    animation: marquee 10s linear infinite; }
  .listen .donate a, .listen button.pause-button, .listen button.next-button, .listen button.play-button {
    text-decoration: none;
    margin-right: 10px;
    color: black; }
    .listen .donate a ion-icon, .listen button.pause-button ion-icon, .listen button.next-button ion-icon, .listen button.play-button ion-icon {
      font-size: 35px; }
      @media screen and (max-width: 900px) {
        .listen .donate a ion-icon, .listen button.pause-button ion-icon, .listen button.next-button ion-icon, .listen button.play-button ion-icon {
          font-size: 20px; } }
    .listen .donate a span, .listen button.pause-button span, .listen button.next-button span, .listen button.play-button span {
      line-height: 35px;
      vertical-align: bottom; }
      @media screen and (max-width: 900px) {
        .listen .donate a span, .listen button.pause-button span, .listen button.next-button span, .listen button.play-button span {
          font-size: 15px; } }
  .listen .donate a {
    display: none; }
    .listen .donate a#burger {
      display: inline-block; }
  .listen .donate.show a {
    display: inline-block; }
    .listen .donate.show a#burger {
      display: none; }
  .listen.paused .play-pause-button button.pause-button,
  .listen.paused .next-button {
    display: none; }
  .listen.paused .play-pause-button button.play-button {
    display: block; }
  .listen.playing .play-pause-button button.pause-button,
  .listen.playing .next-button {
    display: block; }
  .listen.playing .play-pause-button button.play-button {
    display: none; }

.nav-buttons {
  width: 100%;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
  margin-bottom: 2em; }
  .nav-buttons > div a {
    vertical-align: middle;
    line-height: normal;
    text-decoration: none;
    color: #000; }

.bars {
  display: flex;
  flex-direction: row;
  margin: 0 0 20px 0; }
  @media screen and (max-width: 500px) {
    .bars {
      margin-right: 10px;
      margin-left: -20px; } }
  .bars .bar {
    width: 30px;
    height: 60px;
    margin: 0 5px;
    transform: skewX(-20deg);
    transition: all 0.3s ease;
    cursor: pointer; }
    .bars .bar:hover {
      transform: skewX(-20deg) scale(1.1); }

.cdtheque {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: nowrap;
  padding-bottom: 30px;
  /**** vertical ***********/ }
  .cdtheque .image-container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    flex-grow: 1; }
  .cdtheque #main-image {
    width: 300px;
    height: 300px;
    object-fit: cover; }
    @media screen and (max-width: 500px) {
      .cdtheque #main-image {
        width: 230px;
        height: 230px; } }
  .cdtheque #image-text {
    margin-top: 10px;
    text-align: left;
    flex-grow: 1; }
    .cdtheque #image-text h4 {
      font-weight: bold;
      text-align: center; }
    .cdtheque #image-text a.download-sound {
      text-decoration: none;
      color: inherit; }
    .cdtheque #image-text .tracks {
      border-top: black dotted thin;
      margin: 0;
      padding: 0;
      list-style-position: inside; }
      .cdtheque #image-text .tracks li {
        display: list-item;
        border-bottom: black dotted thin;
        padding: 10px; }
  @media (max-width: 767px) {
    .cdtheque .image-container {
      flex-direction: column;
      align-items: center;
      margin-left: 0; }
    .cdtheque #image-text {
      margin-top: 10px;
      margin-left: 0; } }

/*# sourceMappingURL=styles.css.map */
