* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  background-color: black;
}

.source-sans-3-bold {
  font-family: "Source Sans 3", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.source-sans-3-light {
  font-family: "Source Sans 3", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}

.row::after {
  content: "";
  clear: both;
  display: table;
}

[class*="col-"] {
  float: left;
}


.grid-container-header {
  display: grid;
  grid-template-columns: 700px auto auto auto auto;
  gap: 0px;
  background-color: #000000;
  padding: 0px;
}  

.grid-container {
  display: grid;
  gap: 0px;
  background-color: #000000;
  padding: 0px;
}

.grid-container-footer {
  display: grid;
  grid-template-columns: 700px auto;
  gap: 0px;
  background-color: #000000;
  padding: 0px;
}  

.header {
    position: sticky;
    top: 0;
    z-index: 999;
}

.grid-item {
    background-color: #ffffff;
    text-align: left;
    padding-top: 20px;
    padding-top: 20px;
}

.item-title-upper {
  padding-top: 30px;
  padding-bottom: 0px;
  padding-left: 10px;
  padding-right: 10px;
  background-color: #ffffff;
  font-size: 0px;
}

.item-title-lower {
  
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 10px;
  padding-right: 10px;
  background-color: #000000;
  font-size: 0px;
  color: #ffffff;
}

.item-navigation {
  text-align: center;
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 0px;
  background-color: #000000;
  font-size: 18px;
  color: #ffffff;
}




.item-content {
  padding-left: 20px;
  padding-right: 20px;
  text-align: justify;
  text-justify: inter-word;
  font-size: 16px;
  background-color: #000000;
  color: #ffffff;
}

.item-content-image {
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 16px;
  text-align: center;
  vertical-align: middle;
  font-size: 16px;
  background-color: #000000;
  color: #ffffff;
}

.item-content-artist {
  grid-column: 1;
  grid-row: 2;
  padding-left: 20px;
  padding-right: 0px;
  text-align: justify;
  text-justify: inter-word;
  font-size: 16px;
  background-color: #000000;
  color: #ffffff;
}

.item-content-image-artist {
  float: left;
  padding-right: 10px;
  padding-top: 10px;
  padding-bottom: 0px;
  background-color: #000000;
  color: #ffffff;
}

.item-emphasis {
  padding: 0px;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
  background-color: #000000;
  color: #ffffff;
}

.item-close {
    padding: 0px;
    text-align: center;
    font-size: 16px;
    background-color: #000000;
    color: #ffffff;
  }

.item-footer {
  background-color: #000000;
  padding-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
  color: #ffffff;
}

figcaption {
  text-align: center;
  
  font-size: 16px;
  background-color: #000000;
  color: #ffffff;
}

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 75%;
}


a {
    position: relative;
    color: #ffffff;
    text-decoration: none;
}
  
a:hover {
    color: #ff0000;
}
  
a::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background-color: #ff0000;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}
  
a:hover::before {
    transform: scaleX(1);
}

small a:link {
 color:#ff0000;
}

small a::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: #ff0000;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

small a:hover::before {
    transform: scaleX(1);
}
