
  .wideStripe {
    position: relative;
  }
  
  .wideStripe::before {
    content: "";
    
    width: 100vw;
    height: 100%;
    
    position: absolute;
    top: 0em;
    left: calc((-100vw + 100%) / 2);
    
    z-index: -1;
  }

  .displayNone {
    display: none !important;
  }

  .popupDiv {
    position: fixed;
    top: 0em;
    left: 0em;
    right: 0em;
    bottom: 0em;
    
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 2000;
  }
  
  .popupDiv > img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
    max-width: calc(100% - 10vmin);
    max-height: calc(100% - 10vmin);
    
  }
  
  .popupDiv > button {
    font-size: 3rem;
    
    top: 0em;
    right: 0.5em;
    
    width: 1em;
    height: 1em;
    line-height: 100%;
    
    position: absolute;
    
    color: #fff;
    background: none;
  }

  
  @media screen and (min-width: 600px) {
    
    .popupDiv > img {
    
      width: calc(70% - 20vmin);
    }
  }
  
  @media screen and (min-width: 1000px) {
    
    .popupDiv > img {
    
      width: calc(80% - 20vmin);
    }
  }
  
  @media screen and (min-width: 1250px) {
    
    .popupDiv > img {
    
      max-width: 43em;
    }
  }
  
  
  .topLevelMenu {
    
    position: relative;
    
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: stretch;
  }

  .topLevelMenu button {
    
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    
    padding: var(--bodyPadding);
    border: none;
  }
  
  .topLevelMenu button svg + span,
  .topLevelMenu button span + img,
  .topLevelMenu a span + img {
    
    margin-left: calc(var(--bodyPadding) / 2);
  }

  .topLevelMenu > ul {
    
    display: none;
    
    position: absolute;
    top: 100%;
  }
  
  .topLevelMenu:hover > ul {
    display: block;
  }

  .topLevelMenu a {
    
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    
    padding: calc(var(--bodyPadding) / 4) calc(var(--bodyPadding) / 1);
    
    text-decoration: none;
    white-space: nowrap;
  }

  @media screen and (min-width: 600px) {
    
    .topLevelMenu.responsive button {
      display: none;
    }
    
    .topLevelMenu.responsive > ul {
      top: 0%;
    }
    .topLevelMenu.responsive ul,
    .topLevelMenu.responsive:hover ul {
      
      display: flex;
      flex-flow: row nowrap;
      justify-content: flex-start;
      align-items: stretch;
      
      position: inherit;
      
      background: transparent;
    }
  }

  .expandable {
    height: 0em;
    
    box-sizing: border-box;
    
    overflow: hidden;
    
    transition: height 0.5s;
  }

  .sideNavigationMenu {
    position: absolute;
    top: 3.5em;
    bottom: 0;
    right: 0;
    
    height: 100vh;
    width: 16em;
    
    margin: 0em;
    padding: 1em 0em;
    
    z-index: 100;
    overflow-y: scroll;
  }
  
  @media screen and (min-width: 360px) {
    .sideNavigationMenu {
      top: 4em;
    }
  }
  
  @media screen and (min-width: 750px) {
    
    .sideNavigationMenu {
      bottom: auto;
      
      height: auto;
      width: auto;
      
      margin: 0em;
      padding: 0em;
      
      overflow-y: auto;
    }
  }
