/*--- Site-specific Variables ---*/
:root {
  --navBgColor: 255, 255, 255;
  --logoInvert: 1;
  --headerColor: #000;
  
  --headerBtnHeight: 40px;
  --headerBtnFill: transparent;
  --headerBtnColor: #000;
  --headerBtnBorderColor: #000;
  --headerBtnHoverTintAlpha: 0;
  --headerBtnHoverFill: #000;
  --headerBtnHoverColor: #FFF;
  --headerBtnHoverBorderColor: transparent;
  
  --navBtnBorderColor: #000;
  --navBtnInnerColor: transparent;

  --widthOffset: 0px;
  --mobileWidthOffset: 0px;
  --navMenuHeightOffset: 0px;
  
  --footerBtnFill: #FFF;
  --footerBtnColor: #000;
  --footerBtnBorderColor: #FFF;
  --footerBtnIconInvert: 0;
  --footerBtnHoverFill: #000;
  --footerBtnHoverColor: #FFF;
  --footerBtnHoverBorderColor: #FFF;
}


/* Fix for bad product page width on tablet */
main .shopify-section .builder-e1121b972f3b454db5c0050e35bc9efc {
  width: 100%;
}


/* LensAdvizor tweaks */
/* .la-modal-open .la-modal-wrapper .font-detail {
  font-family: "Neue Haas Grotesk Display Pro - 55 Roman",sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 20px !important;
} */

.la-modal-wrapper .la-iso-bootstrap .la-modal {
  left: auto;
  width: 33.98vw;
}
.la-modal .la-modal-content .la-modal-columns {
  flex: 1;
  max-width: 33.98vw;
}
.la-modal .la-modal-body .header {
  padding: 56px 32px 0;
  height: 80px;
}
.la-modal-open .la-modal-body .header .close {
  top: auto;
  right: 32px;
  opacity: 1;
  font-size: 14px;
}
.la-modal-body .header .la-nav-pills {
  height: fit-content;
  justify-self: flex-start;
}
.la-modal-open .la-modal-body .header .la-error-popdown {
  top: 40px;
  left: 50%;
  transform: translate(-50%, -50%);
  width: fit-content;
  max-width: calc(100% - 64px);
  padding: 8px 24px !important;
  border-radius: 8px;
  white-space: nowrap;
}
/* Rx entry */
.la-modal-open .la-modal-wrapper .la-tab-pane {
  padding: 0 32px !important;
}
.la-modal-open .la-modal-wrapper #la_Rx_manual_title {
  padding: 0;
  margin: 0;
  text-transform: none;
  line-height: 24px;
}
.la-modal-open .la-modal-wrapper .od-container--modifier {
  padding-bottom: 0;
  margin-bottom: 0;
  border-color: #DFDFDF;
}
.la-modal-open .la-modal-wrapper .od-container--modifier h6 {
  padding: 0;
  margin: 0 !important;
  margin-bottom: 0 !important;
  line-height: 18px;
  color: #000;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .od-left,
.la-modal-open .la-modal-wrapper .od-container--modifier .od-right {
  margin: 0 !important;
  padding: 0 !important;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown {
  flex: 0 0 calc((100% - (16px * 3)) / 4);
  margin: 0 !important;
  padding: 0 !important;
  line-height: 16px;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown-text {
  padding: 0;
  margin: 0;
  color: #000;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown>select {
  padding: 8px 20px;
  border-radius: 80px;
  background-position: top 50% right 16px !important;
  background-size: 10px !important;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .upload-paragraph {
  margin-bottom: 0 !important;
  font-size: 14px;
  text-align: center;
  line-height: 14px;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .js-manually-selected-file {
  margin-bottom: 12px;
  color: #787E81;
}
.la-modal-open .la-modal-wrapper #prescription_upload_manually_wrapper #label-prescription-upload-manually {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 82.67% !important;
  height: 48px !important;
  margin-bottom: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border-radius: 80px !important;
  border-color: #DFDFDF !important;
}
.la-modal-open .la-modal-wrapper #prescription_upload_manually_wrapper #label-prescription-upload-manually:hover {
  border-color: #000 !important;
}
.la-modal-open .la-modal-wrapper .od-container--modifier .choose-file-image-container {
    left: 16px;
    top: 50%;
    transform: translateY(-51%);
    padding: 6px;
    border: none;
}
.la-modal-open .la-modal-wrapper .save-continue--modifier {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 82.67% !important;
  height: 64px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 1px solid #000 !important;
  border-radius: 80px !important;
}
.la-modal-open .la-modal-wrapper .save-continue--modifier:hover {
  background: transparent !important;
}
.la-modal-open .la-modal-wrapper .save-continue--modifier:hover>p {
  color: #000 !important;
}
/* Rx review */
.la-modal-open .la-modal-wrapper #la_review_title {
  padding: 0;
  margin: 0;
  text-align: left !important;
  text-transform: none;
  line-height: 24px;
}
.la-modal-open .la-modal-wrapper #review_selection .review-item-title {
  margin: 0;
  color: #000;
  line-height: 18px;
}
.la-modal-open .la-modal-wrapper #review_selection .review-item .review-right {
  display: flex;
  justify-content: flex-end;
}
.la-modal-open .la-modal-wrapper #review_selection #review-variant-price {
  margin: 0;
  color: #787E81;
  line-height: 18px;
}
.la-modal-open .la-modal-wrapper #review_selection .review-item-variant {
  margin: 0;
  color: #787E81;
}
.la-modal-open .la-modal-wrapper #review_selection hr {
  margin: 0;
  border-color: #DFDFDF;
}
.la-modal-open .la-modal-wrapper .subtotal .row {
  align-items: center;
}
.la-modal-open .la-modal-wrapper .subtotal #la_review_subtotal_label {
  color: #000;
  line-height: 15px;
}
.la-modal-open .la-modal-wrapper .subtotal #la_review_subtotal_label+.col {
  display: flex;
  flex: 0;
}
.la-modal-open .la-modal-wrapper .subtotal #reivew-subtotal {
  color: #000;
  line-height: 18px;
}

/*- MOBILE LensAdvizor tweaks -*/
@media only screen and (max-width: 991.98px) {
  .la-modal-wrapper .la-iso-bootstrap .la-modal {
    top: 90px;
    width: 100%;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
  }
  .la-modal-wrapper .la-modal .la-modal-dialog {
    max-width: 100% !important;
  }
  .la-modal .la-modal-content .la-modal-columns {
    flex: 1;
    max-width: 100%;
  }
  .la-modal-wrapper .la-modal .la-modal-body {
    height: calc(100vh - 90px);
  }
  .la-modal .la-modal-body .header {
    padding: 40px 12px 0;
    height: 89px;
  }
  .la-modal-open .la-modal-body .header .close {
    right: 16px;
  }
  .la-modal-body .header .la-nav-pills {
    position: absolute;
    left: 12px;
  }
  /* Rx entry */
  .la-modal-open .la-modal-wrapper .la-tab-pane {
    padding: 89px 12px 32px !important;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier h6 {
    line-height: 16px;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown {
    flex: 1;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown:not(:last-child) {
    margin-right: 8px !important;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown-text {
    font-size: 14px;
    line-height: 14px;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown>select {
    height: 32px;
    padding: 6px 12px;
    background-position: top 50% right 12px !important;
  }
  .la-modal-open .la-modal-wrapper .save-continue--modifier {
    width: 100% !important;
  }
  /* Rx review */
  .la-modal-open .la-modal-wrapper #review_selection .review-item-title {
    line-height: 16px;
  }
  .la-modal-open .la-modal-wrapper #review_selection #review-variant-price {
    line-height: 16px;
  }
}
/*- TINY LensAdvisor tweaks -*/
@media only screen and (max-width: 339px) {
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-dropdown {
    flex: 1 0 45%;
    margin-bottom: 12px !important;
  }
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-left+[class*="spacer-"],
  .la-modal-open .la-modal-wrapper .od-container--modifier .od-right+[class*="spacer-"] {
    margin-top: -12px;
  }
}
@media only screen and (max-width: 339px),
@media only screen and (max-height: 639px) {
  .la-modal-wrapper .la-iso-bootstrap .la-modal {
    top: 58px;
  }
  .la-modal-wrapper .la-modal .la-modal-body {
    height: calc(100vh - 58px);
  }
}


/*--- Site-specific Style Changes ---*/
.header-btn-frame {
  height: 152px !important;
}
.header-btn-frame>div {
  flex-wrap: wrap;
  justify-content: flex-end !important;
  align-content: flex-start;
  align-items: stretch !important;
  width: 100%;
  height: 100%;
}
.header-btn-frame .header-btn {
  margin: 28px 0;
}
.nav-mobile-btm a.footer-btn {
    background: var(--headerBtnFill);
    color: var(--headerBtnColor);
    border: 1px solid var(--headerBtnBorderColor);
}
.nav-mobile-btm a.footer-btn:hover {
    background: var(--headerBtnHoverFill);
    color: var(--headerBtnHoverColor);
    border: 1px solid var(--headerBtnHoverBorderColor);
}
button.disclosure__button {
  width: 100%;
  padding: 0;
  border: none;
  border-bottom: 1px solid #787E81;
  color: #FFF;
}
button.disclosure__button:hover, button.disclosure__button:focus {
  color: #787E81;
}
button.disclosure__button>div {
  visibility: visible;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  height: 100%;
  text-decoration: none !important;
}
button.disclosure__button>div>svg {
  width: 14px;
}
div.locale-selectors__container {
  display: none;
}
.footer-social + .footer-spacer {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  max-width: 100%;
  padding-bottom: 20px;
}

/*- MOBILE Changes -*/
@media only screen and (max-width: 991.98px) {
    .header-btn-frame {
      height: 104px !important;
    }
    .header-btn-frame .header-btn {
      margin: 16px 0 16px 100%;
      transform: translateX(-100%);
      white-space: nowrap;
    }
    .nav-mobile {
      padding-top: 71px !important;
    }
    .footer-social + .footer-spacer {
      height: 160px;
      max-height: 160px;
    }
}

.klaviyo-form-style { 
    border-bottom: 1px solid #787E81;
    width:100%;
}

input.kl-private-reset-css-Xuajs1 {
    padding-left: 0px !important;
}


/*- TINY Cart Button -*/
@media only screen and (max-width: 339px) {
  header>div>a.header-btn {
    z-index: 2 !important;
    display: flex !important;
    padding: 0 12px !important;
  }
  header>div>a.header-btn>span {
    display: none;
  }
  .nav-mobile-btm .base-grid + .spacer-64 {
    max-height: 24px;
  }
}


/* HEADER Marquee V2 */
@keyframes mv2scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - var(--gapWidth)));
  }
}
.mv2-scroll {
  animation: mv2scroll var(--ad) linear infinite;
}
.mv2-reverse {
  animation-direction: reverse;
}

.header-nav-background {
  --marqHeight: 56px;
}
.marqueev2 {
  --gapWidth: var(--gap);
  --ad: var(--stime);
  overflow: hidden;
  position: absolute;
  top: 96px;
  width: 100%;
  height: var(--marqHeight);
  display: flex;
  align-items: center;
  column-gap: var(--gapWidth);
  background-color: #4D1EF7;
}
.mv2-image {
  -webkit-transform: translateZ(0);
}
.mv2-content {
  display: flex;
  min-width: 100%;
  justify-content: space-around;
  flex: 0 0 auto;
  column-gap: var(--gapWidth);
}
.mv2-content>span {
  color: #fff;
}
.header-btn-frame {
  --marqHeight: 56px;
  --marqFlex: 100%;
}
.header-btn-frame>div:after {
  display: block;
  content: '';
  flex: 0 0 var(--marqFlex);
  width: 0;
  height: var(--marqHeight);
}
/*- MOBILE Marquee V2 -*/
@media only screen and (max-width: 991.98px) {
  .header-nav-background {
    --marqHeight: 32px;
  }
  .marqueev2 {
    --gapWidth: var(--mgap);
    --ad: var(--mstime);
    top: 72px;
    height: 32px;
  }
  .header-btn-frame {
    --marqHeight: 32px;
    --marqFlex: 32px;
  }
}


/* HEADER Note Marquee */
.marquee {
  --marqHeight: 56px;
  --tw: var(--width);
  --gapWidth: var(--gap);
  overflow: hidden;
  position: absolute;
  top: 96px;
  right: 0px;
/*   transform: translateX(max(0px, calc(calc(100% - 1648px)/2))); */
  width: 100%;
  height: var(--marqHeight);
  display: flex;
  align-items: center;
  background: #4D1EF7;
  color: #fff;
}
.marquee>span {   
    display: inline-block;
    white-space: nowrap;
    width: var(--tw);
    text-shadow: var(--tw) 0 currentColor, 
                 calc(var(--tw) * 2) 0 currentColor, 
                 calc(var(--tw) * 3) 0 currentColor,
                 calc(var(--tw) * -1) 0 currentColor;
   
    will-change: transform;
    animation: marquee var(--ad) linear infinite;
    animation-play-state: running;
}
.marquee>span>span {
    margin: 0 var(--gapWidth);
}
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}
/*- MOBILE Marquee -*/
@media only screen and (max-width: 991.98px) {
  .marquee {
    --tw: var(--mwidth);
    --gapWidth: var(--mgap);
    top: 72px;
    height: 32px;
  }
}


/* CART */
.offcanvas {
  color: #000;
}
.offcanvas .child-divider {
  border-color: #DFDFDF;
}
.product-list>li:not(:last-child) {
  margin-bottom: 8px;
}
.product-list-item>div {
  gap: 16px;
}
.product-list-item>div>a {
  min-width: 96px;
  min-height: 96px;
  width: calc(calc(calc(100vw / 12) * 1) - 32px);
  height: calc(calc(calc(100vw / 12) * 1) - 32px);
}
.product-list-item>div>a>img {
  min-height: 96px;
  height: calc(calc(calc(100vw / 12) * 1) - 32px);
  background: #F4F3F3;
}
.product-title>a.cart-item__name {
  color: #000 !important;
}
.product-title>div.product-option {
  color: #787E81;
}
.product-details {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 16px;
}
.quantity__input {
  z-index: 1;
  flex: 0 0;
  width: fit-content;
  height: fit-content;
  padding: 10px 44px 10px 20px;
  border: 0;
  border-radius: 40px;
  text-align: center;
  color: currentColor;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
.quantity>svg {
  display: block;
  position: absolute;
  top: 50%;
  right: 21px;
  transform: translateY(-50%);
  width: 10px;
  height: 6px;
}
cart-remove-button {
  max-width: 24px;
  max-height: 24px;
  margin-left: 16px;
}
cart-remove-button>a.button {
  padding: 0;
  min-width: 24px;
  min-height: 24px;
  color: #787E81;
}
cart-remove-button>a.button:hover {
  color: #000;
}
.addon-bundle>div:first-child {
    margin-bottom: 8px;
}
.product-list-item>div:first-child img {
    padding: 8px;
}
.product-title .bundle-text {
    color: #4D1EF7;
}
.product-title+div>.product-option {
    color: #787e81;
}
.product-list-item>.addon {
    margin-bottom: 4px;
}
.product-list-item>.addon>div:first-child { /* change the "a" to "div" */
    display: flex;
    justify-content: flex-end;
    min-width: 96px;
    min-height: 56px;
    width: calc(calc(calc(100vw / 12) * 1) - 32px);
    height: calc(calc(calc(100vw / 12) * .58333) - 18px);
}
.product-list-item>.addon>div:first-child>img { /* change the "a" to "div" */
    display: block;
    min-height: 56px;
    height: calc(calc(calc(100vw / 12) * .58333) - 18px);
    padding: 4px;
    background: #f4f3f3;
}
.addon-bundle>.bundle-total {
    margin-top: 12px;
}
.addon-bundle>.bundle-options {
    margin-top: 16px;
}
.cart-total {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.cart-delivery {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  color: #787E81;
}
.offcanvas-body>.offcanvas-cart-empty {
  height: 50vh !important;
}
.offcanvas-footer>div[class*="spacer"] {
  flex-shrink: 0;
}
.offcanvas-footer .font-detail {
  font-size: 14px;
}
.offcanvas-footer .cart__checkout-button {
  height: 64px;
  width: 82.67%;
  margin: 0 auto;
}
.offcanvas-footer .cart__checkout-button:hover {
  background: transparent;
  color: #000;
}
.offcanvas-footer .cart__checkout-button:hover::after {
  box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text), var(--border-opacity)),
    0 0 0 var(--buttons-border-width) rgba(var(--color-button), var(--alpha-button-background));
}
.payment-icons-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  margin: 0 -16px;
}
.payment-icons-wrapper>ul {
  gap: 10px;
}
.payment-icons-wrapper>ul>li {
  flex: 1 1;
}

/*- MOBILE Cart -*/
@media only screen and (max-width: 991.98px) {
  .product-list>li:not(:last-child) {
    margin-bottom: 16px;
  }
  .product-list-item>div>a {
    min-width: 64px;
    min-height: 100%;
    width: 24.62vw;
    height: 24.62vw;
    max-width: 104px;
    max-height: 104px;
  }
  .product-list-item>div>a>img {
    min-height: 100%;
    height: 24.62vw;
    max-height: 104px;
  }
  .product-details {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .product-title {
    display: flex;
    flex-direction: column;
  }
  .addon-bundle .product-title+div {
    align-self: stretch;
  }
  .quantity__input {
    padding: 8px 36px 8px 16px;
  }
  .quantity>svg {
    right: 17px;
  }
  .offcanvas-footer .cart__checkout-button {
    height: 64px;
    width: 100%;
    margin: 0 auto;
  }
  .payment-icons-wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    margin: 0;
  }
  .payment-icons-wrapper>div {
    text-align: center;
  }
  .payment-icons-wrapper>ul {
    justify-content: center!important;
    gap: 6px;
  }
  .payment-icons-wrapper>ul>li {
    flex: 0 1 46px;
    position: relative;
  }
  .payment-icons-wrapper>ul>li:before {
    content: '';
    width: 100%;
    padding-top: 69.06%;
  }
  .payment-icons-wrapper>ul>li>svg {
    position: absolute;
  }
}

/*- TINY Cart -*/
@media only screen and (max-width: 339px) {
}


/*- ACCOUNT -*/
div#shopify-section-header {
  grid-row-start: 1;
}
main#MainContent {
  grid-row-start: 2;
}


/*- KLAVIO NEWSLETTER MODAL: legacy dark skin removed — the popup is restyled
    to the light store system in bs-chrome.css (section 6). -*/