@import url('satoshi.css');
@import url('candydarling.css');


:root {
  --poster-size: min(200px, 28vh);
}

@media (orientation: portrait) {
  :root {
    --vph: calc(var(--vh, 1vh) * 100);
    --poster-size: clamp(
      130px,
      min(
        54vw,
        calc(var(--vph) * 0.56 - 188px),
        calc(var(--vph) * 0.56 - 33px - min(calc(var(--vph) * 0.243), 48.7vw))
      ),
      380px
    );
  }
}

@media (max-width: 1320px) {
  
.titleblock {
  align-items: stretch;
}
.controls {
  width: 90vw; 
  transform: translate(-50%, -50%) scale(1);
}
/* .current-title-box {
  width: calc(100vw - 184px);
  } */
}

@media (min-width: 1321px) {

.current-title-box {
min-width: 40vw;
}
}

@media (min-width: 801px) {
  :root {
    --title-fs: 24pt;
    --title-lh: 1;
  }

  h3, h2 {
    margin-top: 2pt;
  }
  h3 {
    margin-bottom: 8pt;
  }
  h5 {
    --date-fs: 10pt;
  }

  .vignette {
    box-shadow: 0 0 100px rgba(0,0,0,0.9) inset;
  }
}

@media (min-width: 1000px) {
  :root {
    --title-fs: 28pt;
    --title-lh: 1;
  }

  h3, h2 {
    margin-top: 4pt;
  }
  h3 {
    margin-bottom: 8pt;
  }
  h5 {
    --date-fs: 12pt;
    line-height: 12pt;
  }
}

@media (max-width: 800px) or (max-height: 300px) {
  :root {
    --title-fs: 18pt;
    --title-lh: 1.22;
  }

  h3, h2 {
    margin-top: 0;
    margin-bottom: 0;
  }
  h3 {
    margin-bottom: 4pt;
  }
  h5 {
    --date-fs: 10pt;
  }

  .vignette {
    box-shadow: 0 0 40px rgba(0,0,0,0.9) inset;
  }
  button.next {
    display: none;
  }
  button.prev {
    display: none;
  }
}

@media (min-height: 800px) {
  .titleblock {
    bottom: 5vh;
  }
}

@media (min-height: 1200px) {
  .titleblock {
    bottom: 12vh;
  }
}

@media (max-height: 799px) {
  .titleblock {
    bottom: 28px;
  }
}


* {
    box-sizing: border-box;
  }
  :root {
    --bg: #ffffff;

  }

/** show title **/
h2 {
    font-family: Satoshi-Regular, sans-serif;
    font-variant-alternates: styleset(singlestory);
    font-weight: 300;
    font-style: normal;
    font-size: calc(var(--title-fs, 18pt) * var(--title-fit, 1));
    line-height: var(--title-lh, 1.22);

    word-wrap: break-word;

    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    padding: 0 0 0 0;
  }

/** subtitle/artist name **/
  h3 {
    font-family: Satoshi-Light, sans-serif;
    font-variant-alternates: styleset(singlestory);
    font-weight: 300;
    font-style: normal;
    font-size: calc(var(--title-fs, 18pt) * var(--title-fit, 1));
    line-height: var(--title-lh, 1.22);

    word-wrap: break-word;
    
    
    margin-left: 0;
    margin-right: 0;
    padding: 0 0 0 0;
  }

/** nav links **/
  h4 {
    font-family: Satoshi-Regular, sans-serif;
    font-variant-alternates: styleset(singlestory);
    font-weight: 300;
    font-size: 16pt;
    font-style: normal;
    line-height: 20pt;
    word-wrap: break-word;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    padding: 0 0 0 0;
  }

/** number & date under show title **/
   h5 {
    font-family: Satoshi-Regular, sans-serif;
    font-variant-alternates: styleset(singlestory);
    font-size: min(
      var(--date-fs, 10pt),
      calc(var(--title-fs, 18pt) * var(--title-fit, 1) * 0.8)
    );
    
    font-weight: 300;
    font-style: normal;
    
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    word-wrap: break-word;
  }


  /** local links (pink) **/

  .pink:link {
    color: #f8f4f8;
    border-radius: 2.5pt;
    background-color: none; 
    text-decoration: none;
  }
  
  .pink:hover {
    color: #c755c1;
    border-radius: 2.5pt;
    background-color: #fce535;
    text-decoration: underline;
  }
  
  .pink:visited {
    color: #f8f4f8;
    border-radius: 2.5pt;
    background-color: none; 
    text-decoration: none;
  }
  
  .pink:active {
    color: #ff0000;
    border-radius: 2.5pt;
    background-color: #fce535;
    text-decoration: none;
  }

/** social links (blue) **/
  .blue:link {
    color: #f8f4f8;
    border-radius: 2.5pt;
    background-color: none; 
    text-decoration: none;
  }
  
  .blue:hover {
    color: #0081ff;
    border-radius: 2.5pt;
    background-color: #fce535;
    text-decoration: underline
  }
  
  .blue:visited {
    color: #f8f4f8;
    border-radius: 2.5pt;
    background-color: none; 
    text-decoration: none;
  }
  
  .blue:active {
    color: #ff0000;
    border-radius: 2.5pt;
    background-color: #fce535;
    text-decoration: none;
  }

html {
    height: 100vh; 
    min-height: 100%;
}
  
html::-webkit-scrollbar {
  display: none;
}

  body {
    display: grid;
    place-items: start center;
    min-height: 100vh;
    padding: 0;
    margin: 0;
    overflow: hidden;
    background: var(--bg);
  }

 
  body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-image: url('/content/bg-landscape.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  @media (orientation: portrait) {
    body::before {
      background-image: url('/content/bg-portrait.jpg');
    }
  }

#homenav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: auto;
  margin: 0 auto;
  z-index: 1005;
  color: rgb(15, 15, 15);
/*   background-color: #ffffff;
  border-bottom: solid 2px #000000; */
}

#homenav .navribbon {
  inset: 3px;
}

#homenav .ribbon-mid {
  background: #ebebeb;
}

#homenav .ribbon-outline {
  fill: #ebebeb;
}

#homenav .navitem:link,
#homenav .navitem:visited {
  color: #0096f3;
  background-color: none;
  text-decoration: none;
}

#homenav .navitem:hover {
  color: #0096f3;
  text-decoration: underline;
}

#homenav .navitem:active {
  color: #ff0000;
  text-decoration: underline;
}


#toplogodiv {
    display: flex;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1006;
    align-items: center;
    justify-content: center;
    padding-top: 22pt;
    pointer-events: none;
    /** border: red 1px solid; **/
    
  }

  #logo {
    max-width: 98vw;
    max-height: 26vh;
    display: block;
    margin: 0 auto;
    z-index: 1001;
  }

  @media (min-width: 1000px) and (min-height: 800px) {
    #logo {
      max-height: 30vh;
    }
  }

.titleblock {
    position: fixed;
    top: calc(50% + var(--poster-size) * 0.8925 + 12px);
    bottom: 39px;

    left: 50%;
    transform: translateX(-50%);
    background-color: none;
    /* border: .5px solid black; */
    color: black;
    padding: 0 10px;
    /* font-size: 1.2rem; */
    border-radius: 6px;
    z-index: 500;
    text-align: center;
    
    width: calc(100vw - 24px);
    max-width: 900px;
    display: flex;
    align-items: stretch;
    justify-content: space-between;

  }

  .current-title-box {
    position: relative;
    bottom: 0;

    background-color: none;
    /* border: .5px solid black; */
    color: black;
    padding: 0 10px;
    /* font-size: 1.2rem; */
    border-radius: 6px;
    z-index: 500;
    text-align: center;

    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .titleblock > button {
    align-self: center;
  }

  #bookendimg {
    position: relative;
    display: flex;
    max-width: 80px;
  }

  .drag-proxy {
    visibility: hidden;
    position: absolute;
  }
  
  .controls {
    position: absolute;
    top: calc(50% + max(var(--poster-size), 20vmin));
    left: 50%;
    transform: translate(-50%, -50%) scale(1.5);
    display: flex;
    justify-content: space-between;
    min-width: var(--poster-size);
    height: 44px;
    width: clamp(150px, 20vw, 200px);
    max-width: 98vw;
    z-index: 1050;
  }

.arrowband { --ring-boost: .7; }


  button {
    cursor: pointer;
    outline: transparent;
    background: none;
    appearance: none;
    border: 0;
  }
 /**  button {
    height: 48px;
    width: 48px;
    position: absolute;
    top: 0%;
    outline: transparent;
    cursor: pointer;
    background: none;
    appearance: none;
    border: 0;
    transition: transform 0.1s;
    transform: translate(0, calc(var(--y, 0)));
    
  }
  button:before {
    content: '';
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 80%;
    width: 80%;
  } **/
  /**
  button:active:before {
    background: linear-gradient(#000, rgba(204,204,204,0.65)) #000;
  } **/
  /** button:nth-of-type(1) {
    right: 100%;
  }
  button:nth-of-type(2) {
    left: 100%;
  }
  button span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  } **/
  #bookendimg:hover {
    --y: -5%;
  }
  /** button img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(0deg) translate(2%, 0);
    height: 30%;
    min-width: 44px;
    min-height: 44px;
  } **/



  .boxes {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(var(--vh, 1vh) * 100);
    width: 100%;
    overflow: hidden;
    position: relative;
    transform-style: preserve-3d;
    perspective: 800px;
    touch-action: none;
    
  }
  .box {
    transform-style: preserve-3d;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    
    left: 50%;
    top: 50%;
    width: var(--poster-size);
    height: 400px;
    max-height: 100%;
    border-radius: 2px;
    border: 0.5px solid rgb(25, 25, 25);
    /* display: none; */ /* Comment this out */
  }
  .box:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: 100%;
    background-image: var(--src);
    background-size: cover;
    transform: translate(-50%, -50%) rotate(180deg) translate(0, -100%) translate(0, -0.5vmin);
    opacity: 0.75;
    -webkit-mask-image: linear-gradient(to bottom, transparent 60%, #000 100%);
    mask-image: linear-gradient(to bottom, transparent 60%, #000 100%);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .box:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: 100%;
    /** background: linear-gradient(var(--bg) 50%, transparent); **/
    transform: translate(-50%, -50%) rotate(180deg) translate(0, -100%) translate(0, -0.5vmin) scale(1.01);
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
  } 
  
  .box a {
    position: absolute;
    inset: 0;
    display: block;
    -webkit-tap-highlight-color: transparent;
  }

  .box a::after {
    content: '';
    position: absolute;
    inset: 0;
    background: #c755c1;
    mix-blend-mode: lighten;
    border-radius: 2px;
    opacity: 0;
    pointer-events: none;
  }

  @media (any-hover: hover) {
    .box a:hover::after {
      opacity: 1;
    }
  }

  .box a:active::after {
    opacity: 1;
  }

  .box img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 2px;
    /* border: 0.5px solid rgb(230, 230, 230); */
  }

  /**
  .box:nth-of-type(odd) {
    background: #b3f075;
  }
  .box:nth-of-type(even) {
    background: #66b814;
  } **/
  /** @supports (-webkit-box-reflect: below) {
    .box {
      -webkit-box-reflect: below 5.5vmin linear-gradient(transparent 0 50%, #fff 100%);
    }
    .box:after,
    .box:before {
      display: none;
    }
  } **/

  div#address {
    position: fixed;
    bottom: 0;
    width: 100%;
    text-align: center;
  }

  p#address {
    font-family: Satoshi-Regular, sans-serif;
    font-variant-alternates: styleset(singlestory);
    font-size: 10pt;
    font-weight: 300;
    font-style: normal;
    line-height: 20pt;
    word-wrap: break-word;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    padding: 0 0 0 0;
  }

  .vignette {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  pointer-events: none;
}

  @-moz-keyframes action {
    0%, 25%, 50%, 100% {
      transform: translate(0, 0);
    }
    12.5%, 37.5% {
      transform: translate(0, 25%);
    }
  }
  @-webkit-keyframes action {
    0%, 25%, 50%, 100% {
      transform: translate(0, 0);
    }
    12.5%, 37.5% {
      transform: translate(0, 25%);
    }
  }
  @-o-keyframes action {
    0%, 25%, 50%, 100% {
      transform: translate(0, 0);
    }
    12.5%, 37.5% {
      transform: translate(0, 25%);
    }
  }
  @keyframes action {
    0%, 25%, 50%, 100% {
      transform: translate(0, 0);
    }
    12.5%, 37.5% {
      transform: translate(0, 25%);
    }
  }
  