body,
html {
  font-family: 'noto_sansregular' !important;
}

body a {
  color: #0079c1;
}

#HomePage {
  font-family: 'noto_sansregular';
}

.js-scroll {
  position: relative;
}

.js-scroll--always-visible .ps__rail-x,
.js-scroll--always-visible .ps__rail-y {
  opacity: 1;
  background-color: #eee;
  height: 4px !important;
}

.header-logo-box-container a,
.header-logo-box-container a:visited,
.header-logo-box-container a:hover,
.header-logo-box-container a:focus,
.header-logo-box-container a:active {
  color: #222;
  text-decoration: none;
}

.header-container-right div.header-right-actions {
  display: inline-block;
  width: 25px;
  height: 50px;
  position: relative;
  margin-right: 15px;
}

.header-container-right div.header-right-actions .logged-user-icon {
  position: absolute;
  top: 12px;
  right: -2px;
  display: none;
  height: 8px;
  width: 8px;
  background-color: #0079c1;
  border-radius: 50%;
  z-index: 1;
}

.header-container-right .header-cart-container .cart-icon-circle.cart-not-empty {
  position: absolute;
  right: -4px;
  top: 17px;
  display: block;
  height: 8px;
  width: 8px;
  background-color: #c8021a;
  border-radius: 50%;
  z-index: 1;
}

.header-container-right div.header-right-actions a {
  top: 50%;
  position: absolute;
  font-size: 30px;
  color: #222;
  text-decoration: none;
  transform: translate(0, -50%);
}

#main-menu-container {
  display: none;
  z-index: 1011;
  width: 100%;
  background: #fff;
  height: 100%;
  transform: scaleX(1);
  transform-origin: right center 0px;
  transition: transform 0.1s ease-out;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.5);
  position: fixed !important;
  top: 0px !important;
}

#main-menu-container .menu-box,
#main-menu-container .sign-in-modal,
#main-menu-container .forgot-password-modal,
#main-menu-container .create-account-modal {
  height: 100%;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  background-color: #fff;
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  padding: 13% 10%;
  font-family: 'noto_sansregular';
  font-size: 16px;
  color: #222;
}

.menu-box a {
  color: #222;
  font-family: 'noto_sansregular';
  font-size: 16px;
}

.menu-box ul li {
  padding: 6%;
  border-bottom: 1px solid #9b9b9b;
  font-family: 'noto_sansregular';
  font-size: 16px;
}

.menu-box ul li a,
.menu-box ul li a:hover,
.menu-box ul li a:active,
.menu-box ul li a:visited,
.menu-box ul li a:focus {
  color: #222;
  text-decoration: none;
}

.menu-box ul {
  margin-bottom: 50px;
}

#content_wrapper_box {
  margin: 0 auto;
  min-height: calc(100vh - 230px);
}

.spritespin-container {
  position: relative;
  height: 75vh;
}

.spritespin-container img,
.spritespin-container video {
  width: 100%;
  height: 100%;
  position: relative;
}

.spinner,
.spinner .frame {
  background: no-repeat center center;
  background-size: cover;
}

.spinner {
  height: 100%;
  width: 100%;
  position: relative;
}

.spinner .frame {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
}

.spinner .frame.is-active {
  opacity: 1;
}

.spinner .frame.is-hidden,
.spinner .frame.is-hidden.is-active {
  display: none;
}

.arrows-container {
  font-family: 'noto_sansregular';
}

.arrows-container a {
  color: #000;
}

.arrows-container .arrows-copy {
  font-family: noto_sansregular;
  line-height: inherit;
  letter-spacing: normal;
  text-transform: UPPERCASE;
  white-space: nowrap;
}

.arrows-left-container .arrows-copy {
  position: absolute;
  top: 58%;
  left: -7%;
  transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -webkit-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  padding: 5px 0;
}

.arrows-right-container .arrows-copy {
  position: absolute;
  top: 50%;
  right: -6%;
  transform: rotate(-270deg);
  -ms-transform: rotate(-270deg);
  -moz-transform: rotate(-270deg);
  -webkit-transform: rotate(-270deg);
  -o-transform: rotate(-270deg);
  padding: 5px 0;
}

.arrows-left-icon {
  position: absolute;
  top: 45%;
  left: 0;
}

.arrows-right-icon {
  position: absolute;
  top: 64%;
  right: 0;
}

.marquee-box a {
  position: relative;
  display: block;
  width: 100%;
}

.marquee-container {
  width: 100%;
  position: relative;
  font-family: 'noto_sansbold';
  font-size: 15px;
  color: #fff;
  height: 35px;
  line-height: 35px;
  overflow: hidden;
  white-space: nowrap;
  background-color: #000;
  cursor: default;
  text-transform: uppercase;
}

.marquee {
  cursor: default;
  display: inline-block;
  animation: 50s linear infinite;
}

.marquee .separator {
  display: inline-block;
  padding: 0 7px;
}

.marquee .separator:before {
  content: '\2022';
}

.marquee-text {
  display: none;
}

@media (max-width:1280px) {
  .marquee {
    animation-duration: 51s;
  }
}

.marquee-ready {
  animation-name: text-loop;
}

.marquee-delayed {
  animation-name: text-loop2;
}

.banner-capsule-container {
  padding: 20px;
}

.banner-capsule-container img {
  height: 100%;
  width: 100%;
}

.new-arrivals-container {
  background-color: #fff;
  position: relative;
}

.new-arrivals-title {
  font-size: 34px;
  line-height: 1.18;
  color: #000;
  text-align: left;
  padding: 10px 20px 20px;
}

.new-arrivals-slider {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  margin: 0 auto;
  width: 100%;
  font-family: 'noto_sansregular';
  color: #4a4a4a;
  padding: 5%;
}

.new-arrivals-single-slide {
  flex: 0 0 auto;
  height: 258px;
  width: 186px;
  border: 2px solid #fff;
  background-color: #f7f7f9;
  padding: 5%;
}

.stick-slide-image-container {
  padding: 6%;
  position: relative;
  min-height: 155px;
  height: 1px;
}

.new-arrivals-single-slide img {
  display: block;
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.stick-slide-copy-container,
.stick-slide-copy-container .price {
  font-size: 14px;
  line-height: 1.29;
  text-align: left;
  float: left;
}

.gif-brand-container {
  height: auto;
  padding: 20px 0;
  margin: 0 20px;
  border-bottom: 1px solid #dadada;
}

.gif-brand-container a {
  display: block;
  margin: 0 auto;
}

.gif-brand-container img {
  height: 100%;
  width: 100%;
}

.insurance-link-container {
  padding: 15px 30px 10px;
}

.insurance-link-container .insurance-link-copy-container {
  padding: 15px 0;
}

.insurance-link-container .insurance-link-copy,
.insurance-link-container .insurance-link a {
  font-size: 16px;
  color: #000;
}

.insurance-link-container .insurance-link a:hover,
.insurance-link-container .insurance-link a:visited,
.insurance-link-container .insurance-link a:focus,
.insurance-link-container .insurance-link a:active {
  color: #000;
  text-decoration: none;
}

.insurance-link-container .insurance-link-copy {
  font-family: 'noto_sansregular';
  line-height: 1.13;
  margin-bottom: 7px;
}

.insurance-link-container .insurance-link a {
  font-family: 'noto_sansbold';
  font-weight: bold;
}

.copy-home-title-container {
  font-family: 'noto_sansregular';
  font-size: 16px;
  line-height: 1.13;
  color: #000;
  padding: 0;
  margin: 0;
  text-align: center;
}

.copy-delivery-container {
  font-family: 'noto_sansregular';
  font-size: 16px;
  line-height: 1.13;
  color: #000;
  padding: 10px 0;
  margin: 0 20px;
  border-bottom: 1px solid #dadada;
  text-align: center;
}

.site-ajaxcall {
  position: fixed;
  top: 0;
  width: 100vw;
  height: 100vh;
  background: #FFF;
  z-index: 3;
}

.site-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.site-spinner i {
  font-size: 50px;
}

.site-sunglasses {
  right: 100%;
}

.site-eyeglasses {
  left: 100%;
}

.modal-favorites-container {
  position: absolute;
  left: 100%;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: #FFF;
  padding: 77px 18px 50px;
  box-sizing: border-box;
  z-index: 110;
  overflow-y: auto;
  overflow-x: hidden;
}

.modal-favorites-box-grid {
  background: #f6f6f8;
  height: 258px;
  width: 186px;
  padding-top: 12px;
  padding-left: 12px;
  display: inline-block;
  display: inline-flex;
  flex-direction: column;
}

.modal-favorites-box-grid-container {
  display: block;
  white-space: nowrap;
  width: 100%;
  margin-bottom: 40px;
  padding-bottom: 15px;
}

#lens-selection-popup {
  overflow: hidden;
  -webkit-overflow-scrolling: unset;
  padding-bottom: 0;
}

#privacy-policy-modal,
#terms-and-conditions-modal,
#update-password-modal {
  display: none;
  margin: auto;
  z-index: 1012;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  overflow: auto;
}

#use-insurance-modal {
  display: none;
}

#cart-checkout-modal {
  padding: 0;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #FFF;
  z-index: 1010;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

.cart-checkout-modal-container {
  height: 100vh;
}

#cart-checkout-modal .checkout-header-container {
  height: 51px;
}

.cart-checkout-modal-header .checkout-header-logo-box-container {
  width: auto;
  position: absolute;
  left: 20px;
  top: 20px;
}

.cart-checkout-modal-header .checkout-header-logo-box-container a,
.cart-checkout-modal-header .checkout-header-logo-box-container a:active,
.cart-checkout-modal-header .checkout-header-logo-box-container a:focus,
.cart-checkout-modal-header .checkout-header-logo-box-container a:visited {
  color: #000;
  text-decoration: none;
}

.cart-checkout-modal-header .checkout-header-logo-box-container .glasses-logo-container {
  font-size: 16px;
}

.hide {
  display: none!important;
}

.tag-cloud-wrapper {
  width: 100%;
}

.detail_box {
  position: fixed;
  width: 100%;
  display: flex;
  flex-flow: column;
  background-color: #FFF;
  z-index: 999;
  overflow: hidden;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.fullwidth {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  max-width: initial;
}

.pdp-slick-slider {
  margin: 0;
}

.modal-favorites-box-grid .item {
  width: 100%;
  height: 100%;
  position: relative;
}

.modal-favorites-box-grid .item .image-holder {
  position: absolute;
  left: 50%;
  top: 40%;
  transform: translate(-50%,-50%);
  margin: 0;
  max-height: 100%;
  width: 100%;
  text-align: center;
}

.modal-favorites-box-grid .item .image-holder img {
  width: 90%;
  height: auto;
}

.modal-favorites-box-grid .item .image-holder img.item-thumbnail--qt {
  display: none!important;
}

.modal-my-account-container {
  height: 100%;
  background-color: #fff;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  padding: 78px 38px 30px;
  font-family: 'noto_sansregular';
  font-size: 16px;
  color: #222;
  z-index: 11;
}

.modal-address-container {
  height: 100%;
  background-color: #fff;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  font-family: 'noto_sansregular';
  font-size: 16px;
  color: #222;
  padding: 76px 19px 50px;
  z-index: 6;
}

.modal-see-detail-container {
  height: 100vh!important;
  background-color: #fff;
  overflow: scroll;
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  font-family: 'noto_sansregular';
  font-size: 16px;
  color: #222;
  padding: 50px 15px 16px 19px;
  z-index: 6;
}

.c-modal-photos {
  background: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: none;
  opacity: 0;
  z-index: 1000;
}

@media only screen and (min-device-width: 768px) and (max-device-width:1024px) {
    .arrows-left-container .arrows-copy {
        left:-4% !important;
        top: 57% !important;
    }

    .arrows-right-container .arrows-copy {
        right: -4% !important;
        top: 51% !important;
    }

    .arrows-right-icon {
        top: 62% !important;
    }

    .arrows-left-icon {
        top: 47% !important;
    }
}
