html, body{
  width: 100%; height: 100%;
  margin: 0;
  transition: background 2000ms;
  background-size: 100% auto !important;
}

html{
  overflow-x: hidden;
  overflow-y: hidden;
  background: #555 !important;
}

body{
  overflow-x: hidden;
  overflow-y: scroll;
  padding-left: 0 !important;
}



div:focus{
  outline:0;
}

.ui-input-text {
    display: inline-block !important;
    position: relative;
    width: 100%;
}


.calendarPromo{
  display: inline-block;
  position: relative;
  width: 100%;
  padding: 20px 0;
  margin: 0;
  vertical-align: middle;
  color: #fff;
  text-align: center;
}

.inlineSig{
  display: inline-block;
  position: relative;
  width: 100%;
  height: 200px;
  z-index: 11;
  background: url(/yosemite/signature.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: all 350ms;
  }

.calendarPromoSubText{
  display: inline-block;
  position: relative;
  width: 90%;
  max-width: 650px;
  min-width: 300px;
  margin: 10px; padding: 2%;
  border-radius: 10px;
  line-height: 1.7;
  font-size: 1.45em;
  color: #fff;
  vertical-align: middle;
}

.calendarPromoSubText a{
  color: #fff !important;
}

.calendarPromoSubImage{
  display: inline-block;
  position: relative;
  width: 96%;
  margin: 1%;
  padding: 1%;
  color: #fff;
  vertical-align: middle;
}


.newHero{
  display: inline-block;
  position: relative;
  width: 100%;
  padding-top: 36%;
  background: url(https://phil.camera/graphics/spring2021Header.jpg);
  background-position: top left;
  background-size: 100% auto;
}


.newSaleHeader{
  display: inline-block;
  position: relative;
  width: 100%;
  background: url(https://phil.camera/PMM_1347_WEB.jpg);
  background-position: top left;
  background-size: auto 100%;
  padding: 30px 0;
}

.newSaleFooter{
  display: inline-block;
  position: relative;
  width: 100%; height: 50px;
  background: url(https://phil.camera/portfolio/graphics/candyCane.jpg);
  background-position: top left;
  background-size: auto 100%;
  box-shadow: 2px 2px 7px -1px rgba(0,0,0,0.55);
}

.newSaleHeader img{
  display: inline-block;
  position: relative;
  width: 70%;
  max-width: 300px;
  z-index: 2;
}

.newSaleHeader h1{
  font-family: 'Satisfy' !important;
  margin: 20px 10px 0 10px;
}

.newSaleHeader h3{
  display: inline-block;
  margin: 10px;
  color: #fff;
  font-size: .98em;
  letter-spacing: 2px;
  font-family: 'Raleway';
  font-weight: lighter;
}


.newSaleHeader a{
  color: #fff !important;
}

.newSaleContent{
  display: inline-block;
  position: relative;
  max-width: 400px;
  width: 95%;
  background: #4280ad;
  border-radius: 10px;
  margin-top: -60px;
  padding-bottom: 30px;
  box-shadow: 2px 2px 3px -1px rgba(0,0,0,0.25);
}

.marginText{
  display: inline-block;
  position: relative;
  margin: 10px;
}

.smallSaleText{
  font-size: .8em;
  color: #fff;
}

.saleOption{
  display: block;
  position: relative;
  width: 100%;
  padding: 10px 0;
  margin: 10px 0;
  background: rgba(255,255,255,0.15);
  color: #fff;
  letter-spacing: 1px;
  box-shadow: 2px 2px 3px -1px rgba(0,0,0,0.25);
}


.currentSaleOption{
    background: rgba(255,255,255,0.25);
    box-shadow: 2px 2px 3px -1px rgba(0,0,0,0.25), 0px 0px 0 2px red inset;
}

.salePercentOff{
  font-weight: bold;
}





.newSearchHolder{
  display: inline-block;
  position: relative;
  width: 70%;
  max-width: 700px;
  text-align: left;
  padding: 5px;
  margin: 25px 0;
  background: rgba(0,0,0,0.65);
  box-shadow: inset 1px 1px 5px 2px rgba(0,0,0,0.2), 1px 1px 2px 0px rgba(255,255,255,0.25);
  border-radius: 10px;
}

#newMenuButton{
  width: 40px !important;
  height: 40px !important;
  left: 25px !important;
  top: 25px !important;
}


.searchInput{
  display: inline-block;
  position: relative;
  width: 70%;
  margin-left: 10%;
  color: #fff;
  font-size: 1.1em;
  font-weight: normal;
  outline: none;
  border: 0;
  background: none;
  -webkit-appearance: none;
}

.searchIcon{
  display: block;
  position: absolute;
  width: 10%;
  left: 3px;
  font-size: .75em;
  top: 0;
  height: 100%;
  text-align: center;
  color: #fff;
  z-index: 2;

}

.searchIcon i{
  cursor: pointer;
  vertical-align: middle;
}

.clearSearchIcon{
  display: block;
  position: absolute;
  width: 10%;
  right: 3px;
  font-size: .75em;
  top: 0;
  height: 100%;
  text-align: center;
  color: #999;
  z-index: 2;
}

.clearSearchIcon i{
  vertical-align: middle;
  cursor: pointer;
}

.closeImmersionButton{
  display: block;
  position: fixed;
  width: 20px; height: 20px;
  top: 40px; left: 30px;
  color: #fff; font-size: 25px;
  z-index: 101;
  background: rgba(255,255,255,0.15);
  border-radius: 10px;
  padding: 5px 10px 10px 10px;
  cursor: pointer;
  filter: drop-shadow(0px 2px 2px rgba(0,0,0,0.3));
}

.immersion{
  display: block;
  position: fixed;
  width: 100%; height: 100%;
  left: 0; top: 0;
  min-width: 300px;
  z-index: 100;
  overflow: hidden;
  transition: opacity 350ms linear;
  background: #efefef;
}


.hideImmersion1{
  opacity: 0 !important;
}

.hideImmersion2{
  display: none;
}


.immersionScrollable{
    overflow-y: auto;
  /*position: absolute;*/
}

.backgrounds{
  display: block;
  position: absolute;
  left: -35%; top: -25%;
  width: auto;
  height: 150%;
  transition: opacity 300ms;
  opacity: 0;
  min-width: 100%;
}

.backgroundImage{
  z-index: 0;
}

.foregroundImage{
  z-index: 2;
  opacity: .2 !important;
}

#bgRoom{
  opacity: 0;
}

.hiddenRoom{
  opacity: 0 !important;
}

.animated{
    /*transition: opacity 1000ms, margin 10000ms linear !important;*/
}

.animatedSlower{
    transition: opacity 1000ms, margin 17000ms linear  !important ;
}

.justOpacity{
  transition: opacity 1000ms;
}

.slideHolder{
  display: block;
  position: relative;
  width: 100%; height: 100%;
  filter: drop-shadow(0px 6px 4px rgba(0,0,0,0.4));
}

.aSlide{
  display: block;
  position: absolute;
  transition: all 500ms;
  animation-play-state: running;
  z-index: 1;
}

.instructions{

  display: block;
  position: fixed;
  width: 300px; height: 50%;
  top: 25%; left: 50%;
  margin-left: -150px;
  z-index: 2;
  text-align: left;
}

.instructionsContent{
  display: block;
  position: relative;
  padding: 30px;
  font-size: 1.2em;
  color: #222;
  background: rgba(255,255,255,0.75);
  border-radius: 10px;
}


.instruxListItem{
  margin: 20px;
  font-size: .8em;
  line-height: 1.2;
}


.closeInstructionsButton{
  display: block;
  position: absolute;
  width: 20px; height: 20px;
  top: 20px; right: 20px;
  color: #fff; font-size: 25px;
  z-index: 101;
  background: rgba(255,255,255,0.15);
  border-radius: 10px;
  padding: 5px 10px 10px 10px;
  cursor: pointer;
  filter: drop-shadow(0px 2px 2px rgba(0,0,0,0.3));
}

.arrows{
  display: block;
  position: absolute;
  width: 20px; height: 20px;
  font-size: 1.25em;
  top: 49%;
  color: #222;
  opacity: 0.2;
  cursor: pointer;
}

.arrows:hover{
  opacity: .55;
}

.leftArrow{
  left: -30px;
}

.rightArrow{
  right: -30px;
}

.animateAll{
  transition: all 1000ms !important;
}

.imageOverlayButton{
  display: block;
  position: absolute;
  background: rgba(0,0,0,0.025);
  z-index: 3;
  transition: all 300ms;
}


.hexHolder{
  display: block;
  position: absolute;
  width: 100%; height: 100%;
  left: 0; top: 0;
  filter: drop-shadow(0px 6px 4px rgba(0,0,0,0.4));
  transition: all 900ms;
}

.hexHolderCart{
  display: block;
  position: absolute;
  width: 100%; height: 100%;
  left: 0; top: 0;
  filter: drop-shadow(0px 6px 4px rgba(0,0,0,0.4));
  transition: all 900ms;
}

.hexHolderPreview{
  display: block;
  position: absolute;
  width: 100%; height: 100%;
  left: 0; top: 0;
  filter: drop-shadow(0px 6px 4px rgba(0,0,0,0.4));
  transition: all 900ms;
}

.hexSizer .hexMask13{
  margin-top: -20px;
}

.hexSlide{
  display: block;
  position: absolute;
  width: 100%; height: 101%;
  left: 0; top: 0;
}

.hexBg{
  background: none;
}

.overlayZoomButton{
display: block;
position: absolute;
width: 100%; height: 100%;
left: 0; top: 0;
  cursor: zoom-in;

}
.centeredSlide{
  display: inline-block;
  position: relative;
  width: auto !important;
  max-width: 80% !important;
  height: auto !important;
  max-height: 70% !important;

  top: 0% !important;
  left: auto !important;
  bottom: auto !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
  vertical-align: middle;
}


.valignFixer{
  display: inline-block;
  position: relative;
  width: 1px; height: 100%;
  vertical-align: middle;
}

.hexMask{
  -webkit-mask-size: contain;
  mask-size: contain;
  mask-position: center;
  -webkit-mask-position: center;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  box-shadow: none;
  border: 1px solid #fff;
}

.triptych{
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  mask-position: center;
  -webkit-mask-position: center;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  box-shadow: none;
  -webkit-mask-image: url("/portfolio/Triptych.png");
   mask-image: url("/portfolio/Triptych.png");
}

.squarePrint{
  -webkit-mask-size: auto 100%;
  mask-size:auto 100%;
  mask-position: center;
  -webkit-mask-position: center;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  box-shadow: none;
  -webkit-mask-image: url("/portfolio/square.png");
   mask-image: url("/portfolio/square.png");
}

.hexMask7{
  -webkit-mask-image: url("/portfolio/7HexMask.png");
   mask-image: url("/portfolio/7HexMask.png");
}

.hexMask9{
  -webkit-mask-image: url("/portfolio/9HexMask.png");
   mask-image: url("/portfolio/9HexMask.png");
}

.hexMask10{
  -webkit-mask-image: url("/portfolio/10HexMask.png");
   mask-image: url("/portfolio/10HexMask.png");
}

.hexMask13{
  -webkit-mask-image: url("/portfolio/13HexMask.png");
   mask-image: url("/portfolio/13HexMask.png");
}

.purchaseSection{
  display: block;
  position: absolute;
  width: 600px;
  padding: 0;
  overflow: visible;
  left: 50%; margin-left: -300px; top: 100%; margin-top: 20px;
  text-align: center;
}

.purchaseSectionSub{
  display: inline-block;
  padding: 20px;
  opacity: 1;
  transition: opacity 500ms linear;
  text-align: center;
  max-width: 100%;
  background: rgba(0,0,0,0.25);
  border-radius: 4px;
}


.signatureOptionsHeader{
  display: inline-block;
  padding: 10px;
  color: #333;
  font-size: 1em;
  font-family: 'Dancing Script';
}

.purchaseOptions{
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -250px;
  bottom: -170px;
  width: 500px;
  min-height: 50px;
  background: rgba(0,0,0,0.0000);
  z-index: 3;
  padding: 20px 0;
  font-size: .75em;
  transition: all 600ms;
}

.printOptions{
  display: block;
  position: relative;
  left: 0;
  width: 100%;
  max-height: 500px;
  text-align: center;
  z-index: 4;
  padding: 0;
  font-size: .75em;
  font-weight: lighter;
  transition: all 600ms;
  color: #010101;
  background: rgba(255,255,255,0.15);
}

.printOption{
  display: inline-block;
  position: relative;
  padding: 0px;
  height: 50px;
  opacity: .55;
  max-width: 200px;
  margin: 5px;
  cursor: pointer;
  z-index: 4;
  transition: all 300ms;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0);
  filter: invert(100%) drop-shadow(2px 2px 2px rgba(0,0,0,0.5));
-webkit-filter: invert(100%) drop-shadow(2px 2px 2px rgba(0,0,0,0.5));

}

.printOption:hover{
  opacity: 1;
}

.printOptionHidden{
  margin: 0px !important;
  min-width: 0px;
  max-width: 0px;
  opacity: 0;
  border: 0;
  padding: 0;
  display: none;
}

.printOptionSelected{
  border: 1px solid #abf7af;
}

.printOptionLabel{
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.printButtonIcon{
  display: inline-block;
  position: relative;
  width: auto; height: 100%;
  vertical-align: middle;
}

.orderPrintsButton{
  display:inline-block;
  position: relative;
  padding: 25px;
  margin: 20px;
  margin-top: 40px;
  background: rgba(255,255,255,0.35);
  border-radius: 10px;
    box-shadow: 0 0 1px #000;
  cursor: pointer;
}

.orderPrintsButton:hover{

  background: rgba(255,255,255,0.65);

}

.rectangle{
  display: inline-block;
  position: relative;
  width: 100px; height: 50px;
  background: black;
  vertical-align: middle;
  transition: all 400ms;
}

.uiElementHidden{
  opacity: 0 !important;
  max-height: 0 !important;
  overflow: hidden;
}

.optionButton{
  display: inline-block;
  position: relative;
  margin: 10px; padding: 10px;
  border-radius: 4px;
  background: rgba(255,255,255,0.15);
  cursor: pointer;
}

.optionButton:hover{
  background: rgba(255,255,255,0.35);
  cursor: pointer;
}

.aSlideStartBottom{
  left: 0; bottom: 0;
  /*transition: opacity 1000ms, margin 15000ms linear, bottom 15000ms linear !important ;*/
}

.aSlideStartRight{
  right: 0 !important; top: 0;
  left: auto !important;

}

.aSlideLoader{
  width: 0; height: 0; overflow: hidden; opacity: 0;
}

.aSlideH{
  /* Slide left to right */
  height: 100%; width: auto;
}


.aSlideV{
  width: 100%; height: auto;
  min-height: 100%;
}


.aSlide.paused.justOpacity.animated{
  -webkit-animation-play-state:paused; /* Safari and Chrome */
   -moz-animation-play-state: paused;
   -o-animation-play-state: paused;
   animation-play-state:paused;
}

.slideShowLoader{
  display: block;
  position: absolute;
  width: 50px; height: 50px;
  left: 50%; margin-left: -35px;
  top: 50%;margin-top: -15px;
  opacity: .35;
  transition: opacity 300ms;
}

.thumbLoader{
  display: block;
  position: absolute;
  width: 100px; height: 50px;
  left: 50%; margin-left: -55px;
  top: 50%; margin-top: -15px;
  opacity: .35;
  transition: opacity 300ms;
  filter: drop-shadow(0px 6px 4px rgba(0,0,0,0.4));
}

.slideLoaderHidden{
  opacity: 0;
}

.spinnerSlideshow {
  width: 70px;
  text-align: center;

  position: relative;
  margin: 5px auto;
}

.spinnerSlideshow > div {
  width: 18px;
  height: 18px;
  background-color: #efefef;

  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinnerSlideshow .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinnerSlideshow .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% { -webkit-transform: scale(0) }
  40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  } 40% {
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
  }
}









@media all and (max-width: 1000px) {

  .newSearchHolder{
    width: 90%;
  }

  #newMenuButton{
    left: 5px !important;
  }

  .slideshowButton{
    left: 5px !important;
  }

  .cartButton{
    right: 10px !important;
  }

}






@media all and (max-width: 1450px) {

  .backgrounds{
      left: -55%;
    }

    .printOption{

    }

}




@media all and (max-width: 1000px) and (min-height: 700px) {
/* Vertical cell phone*/
  .backgrounds{
      left: -700px;
    }


}

@media all and (max-width: 1100px) and (min-height: 1000px) {
/*Tall cell phone */
  .backgrounds{
      left: -900px;
    }


}

@media all and (max-width: 500px) {

  .backgrounds{
      left: -500px;
    }

    .purchaseSection{
      margin-top: 20px;
    }

    #descriptionShort{
      font-size: .6em !important;
    }

    .moreButton{
      font-size: .6em !important;
    }

    .descriptionLong{
      font-size: .55em !important;
    }
    .fileName{
      font-size: .55em !important;
    }
    .printOptions{
      font-size: .55em !important;
    }

  .purchaseSectionSub{
    padding: 15px 0 !important;
  }




}

@media all and (max-height: 400px) {

  .backgrounds{
      left: -35%;
    }


}

@media all and (max-height: 700px) and (min-width: 1000px){

  .backgrounds{
      left: -25%;
    }


}


@media all and (max-height: 900px) and (min-width: 1400px){

  .backgrounds{
      left: -15%;
    }


}

@media all and (max-height: 700px) and (min-width: 1400px){

  .backgrounds{
      left: -5%;
    }


}
