#wrapper-no-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 93vh auto;
      grid-template-rows: 93vh auto;
}

#wrapper-with-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 70px 93vh auto;
      grid-template-rows: 70px 93vh auto;
}
@media (max-width: 1300px) {
  #wrapper-with-nav {
    -ms-grid-rows: 80px 93vh auto;
    grid-template-rows: 80px 93vh auto;
    font-size: 2em;
  }
  nav {
    
    min-height: 80px;
  }
}

nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 10vw;
      grid-template-columns: auto 10vw;
  z-index: 1;
  -webkit-box-shadow: 0 1px 2px 0 #f7ddda;
          box-shadow: 0 1px 2px 0 #f7ddda;
  min-height: 70px;
}

nav div {
  margin: auto 0;
  z-index: 1;
}

nav div.logo {
  padding-left: 1vw;
  cursor: pointer;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

nav .icon {
  text-align: center;
  cursor: pointer;
}

nav .cart {
  height: 3vh;
}

header {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 50vw auto;
      grid-template-columns: 50vw auto;
  margin: 0 0;
}

header #left {
  margin: 0 0;
  z-index: 100;
  width: 50vw;
  height: 100vh;
}

header #left .right-offset {
  margin: 11vh 0 0 12vw;
}

header #right {
  z-index: 2;
}

header #right #main-image {
  height: 100vh;
}

header #right #main-description {
  background-color: whitesmoke;
  position: relative;
  top: 65vh;
  left: 10vw;
  width: 18vw;
  padding: 1vh 1vw;
  height: 0px;
  opacity: 0;
}


@media (max-width: 1300px) {
  header #left {
    width: 100vw;
    height: 80vh;
    font-size: 1.5em;
  }
  header #right #main-image {
  display:none;
  }
  
}



#listing-wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 20vw 20vw 20vw 20vw;
      grid-template-columns: 20vw 20vw 20vw 20vw;
  grid-column-gap: 3vw;
  grid-row-gap: 6vh;
  margin:  10vh auto 20vh auto;
  
}

@media (max-width: 1300px) {
  #listing-wrapper {
    margin-left:1%;
    -ms-grid-columns: 45vw 45vw;
    grid-template-columns: 45vw 45vw;
    font-size: 3em;
    margin:  0 auto 20vh auto;
  }
}
/* image slideshow ***********************************************************/

.slider {
  width: 100%;
  text-align: center;
}
@media (max-width: 1300px) {
  .slider {
    overflow: inherit;
    margin: auto auto;
  }
  .slides > div {
    height:50vh !important;
  }
}

.slides {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  
  /*
  scroll-snap-points-x: repeat(300px);
  scroll-snap-type: mandatory;
  */
}
.slides::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.slides::-webkit-scrollbar-thumb {
  background: black;
  border-radius: 10px;
}
.slides::-webkit-scrollbar-track {
  background: transparent;
}
.slides > div {
  scroll-snap-align: start;
  flex-shrink: 0;
  width: 100%;
  height: 80vh;
  margin-right: 50px;
  border-radius: 10px;
  background: #eee;
  transform-origin: center center;
  transform: scale(1);
  transition: transform 0.5s;
  position: relative;
  
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 100px;
}
.slides > div:target {
/*   transform: scale(0.8); */
}
.author-info {
  background: rgba(0, 0, 0, 0.75);
  color: white;
  padding: 0.75rem;
  text-align: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0;
}
.author-info a {
  color: white;
}
.slides img {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slider > a {
  display: inline-flex;
  width: 5rem;
  height: 5rem;
  background: white;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin: 1rem 0 0.5rem 0;
  position: relative;
}
.slider > a:active {
  top: 1px;
}
.slider > a:focus {
  background: #000;
}

/* Don't need button navigation */
@supports (scroll-snap-type) {
  .slider > a {
    display: none;
  }
}
/* image slideshow end ***********************************************************/


#detail-wrapper {
  display: -ms-grid;
  display: grid;  
  grid-template-columns: 50vw 40vw;
  margin: 0vw 5vw;
}

@media (max-width: 1300px) {
  #detail-wrapper  {
    -ms-grid-columns: 100vw;
    grid-template-columns: 100vw ;
    margin: 0 0;
  }
  #detail-wrapper .item-details {
    margin: 0 5vw 0 5vw;
    padding: 2% 0 !important;
    grid-row-gap: 2em !important;
}
  }
  #detail-wrapper #title {
    font-size: 1.25em;
    line-height: 1em !important;
  }
}

#detail-wrapper .full-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  animation-delay: 1s;
  -webkit-animation-delay: 1s;
}

#detail-wrapper .thumbnails {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#detail-wrapper .thumbnails img {
  width: 100%;
  opacity: .5;
  -webkit-transition-duration: 0.25s;
          transition-duration: 0.25s;
  cursor: pointer;
}

#detail-wrapper .thumbnails img:hover {
  opacity: 1;
  -webkit-transition-duration: 0.25s;
          transition-duration: 0.25s;
}

#detail-wrapper .item-details {
  padding: 2% 15%;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 10vh 6vh 6vh 2vh 6vh auto; 
      grid-template-rows: 10vh 6vh 6vh 2vh 6vh auto;
  grid-row-gap: 3vh;
}

#detail-wrapper .item-details > * {
  margin: auto 0;
}

#detail-wrapper .item-details :last-child {
  border-bottom: 0px;
  margin: 0 0;
}

#detail-wrapper .item-details .customizer {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 20% 35%;
      grid-template-columns: 20% 35%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 1300px) {
  #detail-wrapper .item-details .customizer {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 40% 50%;
    grid-template-columns: 40% 50%;
  }

}


#cart-wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 60% 32%;
      grid-template-columns: 60% 32%;
  margin: 5vh 10vw;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 1300px) {
  #cart-wrapper {
    margin-left:7%;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
  }
}


#cart-wrapper #left ul {
  margin: 0 !important;
  -webkit-padding-start: 0 !important;
          padding-inline-start: 0 !important;
}

#cart-wrapper #left ul li {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 25% 70%;
      grid-template-columns: 25% 70%;
  margin: 5vh 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#cart-wrapper #left ul li img {
  width: 100%;
}

#cart-wrapper #left ul li div .spaced {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns:  35% 65%;
      grid-template-columns:  35% 65%;
}
@media (max-width: 1300px) {
  #cart-wrapper #left ul li div .spaced {
    -ms-grid-columns:  50% 50%;
        grid-template-columns:  50% 50%;
  }

}

#cart-wrapper #right {
  background-color: #f2f2f2;
  padding: 6vh;
  color: #977875;
}

.input-label{
  
  font-size: 1.25em;
  padding: 0.4em 0;

}
.input-text{

  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
    border-top-color: rgb(204, 204, 204);
    border-right-color: rgb(204, 204, 204);
    border-bottom-color: rgb(204, 204, 204);
    border-left-color: rgb(204, 204, 204);
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

 /* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 10vh auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
  max-width: 50vw;
  line-height:32px;
}

@media (max-width: 1300px) {
  .modal-content {
    background-color: #fefefe;
    margin: 5vh auto; /* 15% from the top and centered */
    padding: 20px;
    max-width: 95vw;
  }
}

.errorMsg {  
  color: #8f3838;
  margin: auto auto;
  font-size: 20px;
  font-weight: bold;
  line-height: 3em;
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
} 