
  body {
    font-family: "Outfit";
    background-color: #050037;
    padding: 1lh 1.2em;
    font-size: max(17px, 3.5vmin);
  }
  
  .split-title {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: baseline;
    column-gap: 0.5em;
    margin: 0;
    /*background: purple;*/
  }
  
  .split-title .h1 {
    font-family: "Freckle Face";
    font-weight: bold;
    color: #E21037;
    font-size: 2.25em;
  }
  
  .split-title .role {
    font-family: "Outfit";
    color: white;
    font-weight: normal;
    font-size: 1.5em;
    background-color: black;
  }
  
  a {
    font-family: "Outfit";
    color: #FFBB00;
    font-weight: normal;
    text-decoration: underline 0.075ex;
    text-transform: uppercase;
  }
  
  a:hover {
    font-weight: bold;
  }
  
  div.links {
    margin: 0 0.6em;
    font-size: 1.2em;
  }
  
  a.link {
    display: inline;
  }
  
  .split-body {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.5lh 1.2em;
    margin: 0.5lh 0.6em;
  }
  
  .gallery {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    width: min(95vh, 100%);
    object-fit: cover;
    gap: 0.5lh;
    align-self: auto;
  }
  
  .full-image-container {
    display: block;
    position: relative;
    border-radius: 0.5em;
    overflow: hidden;
    /*outline: solid 0.3em black;
    outline-offset: -0.3em;*/
  }
  
  #full-image {
    border-radius: 0.5em;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: contain;
  }
  
  .full-image-container #full-image-caption {
    display: block;
    position: absolute;
    font-weight: bold;
    /*width: 100%;*/
    bottom: 0;
    color: white;
    background: black;
  }
  
  .previews {
    display: block;
    height: 4lh;
    min-height: 2lh;
    text-wrap: nowrap;
    margin: 0;
    background-color: transparent;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-color: #E21037 transparent;
  }
  
  #thumbnail {
	object-fit: contain;
	max-width: 4lh;
  }
  
  .thumb {
    object-fit: cover;
    height: 90%;
    border-radius: 0.5em;
    overflow: hidden;
	max-width: 7.12lh;
	margin: 0 0.15em;
  }
  
  .thumb:hover {
    outline: solid 0.3em #E21037;
    outline-offset: -0.3em;
  }
  
  .thumb:active {
    outline-color: white;
  }
  
  .desc-div {
    flex: 1;
    align-self: stretch;
    background-color: #00000040;
    padding: 0 1em 0.7lh 1em;
    border-radius: 0.5em;
  }
  
  .desc-navigationbar {
    display: flex;
    direction: right;
    width: 100%;
    margin: 0 0 0.25lh 0;
  }
  
  .desc-info-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: baseline;
    align-self: center;
    gap: 0.25lh 0.6em;
  }
  
  .desc-title {
    display: inline-block;
    font-family: "Outfit";
    color: #E21037;
    font-weight: normal;
    font-size: 2em;
    text-align: left;
    flex-grow: 0;
  }
  
  .desc-date {
    display: inline-block;
    font-family: "Outfit";
    color: black;
    font-weight: normal;
    font-size: 0.8em;
    text-align: left;
    flex-grow: 0;
    background: white;
  }
  
  
  div.desc-controls {
    flex-shrink: 0;
    flex-grow: 1;
    text-align: right;
    align-self: center;
    min-width: 2em;
  }
  
  
  
  a.desc-gallery-button {
    font-size: 3em;
    display: inline-block;
    text-decoration: none;
    margin-left: 0.15em;
  }
  
  p {
    color: white;
    overflow: visible;
    flex: 1;
    background: transparent;
    margin-block: 0; 
  }
  
  @media (max-aspect-ratio: 9 / 5) {
    .gallery {
      width: 100%;
      align-self: auto;
    }
    #full-image {
      height: 54vmin;
    }
    
    p {
      max-height: none;
      max-width: none;
      min-width: 100%;
    }
  }
  
  
  