/** Shopify CDN: Minification failed

Line 24:16 Unexpected "("

**/
.h1 {
  font-family: 'MomoTrustDisplay', sans-serif;
}

.h2 {
  font-family: 'MomoTrustDisplay', sans-serif;
}

div.ct-available-in-rx a{
  color: #ED7006;
  text-decoration:underline;
}

[data-swatch_style=round] div.variant-wrapper .color-swatch{
  border-radius: 0;
  padding: 40px;
}

only screen and (max-width: 768px){
  label.ct-variant__label {
    text-align: left;
    padding-left: 15px;
  }
}
/* Add margin to the bottom of the thumbnail images on PDP */
.product__thumbs--beside .product__thumb-item {
  margin-bottom: 25px;
}

.jdgm-widget.jdgm-preview-badge.jdgm-preview-badge--with-link, .product-block.ct-available-in-rx, .product-block.product-block--price {
  margin-bottom: 12px;
}

/*moved the breadcrumb, so had to edit the padding at the top of the site. */
.page-content.page-content--product {
  padding-top: 25px;
  padding-bottom: 4px;
}

/*Nowel wanted price to be orange and bolder, and compare at to be grey*/
span.product__price {
  font-weight: 1000;
  color: #ED7006;
}

span.product__price.product__price--compare {
  color: #B9B9B9;
  font-weight: 1000;
}

/*taylor programmed a separator block in the product section*/
div.product-block.ct-separator{
  display: block;
  height: 25px;
  margin-bottom: 5px;
}

.ct-variant__label .variant__label,
.ct-addon-variant__label .addon-variant__label {
  /* font-weight: 800; */
  letter-spacing: 0.15em;
}

/*ltv value block on pdp*/
span.ct-variant__label-wrapper {
  display: block;
  border: 1px solid #dddddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
  padding: 15px;
  background-color: #fafafa; /* optional card background */
  margin: 10px 0px;
  max-width: 365px;
}

.label,label:not(.variant__button-label):not(.text-label){
  text-transform:uppercase;
  letter-spacing:0.07em;
  font-size:.85em;
  line-height: 1.2rem;
}

span.ct-variant__label-wrapper .variant__label-info {
  display: block;
  width: 100%;
  padding: 5px 0px;
}

.grey {
  color: #999999;
}

span.ct-variant__label-wrapper .variant__label-info[ct-variant-metafield="light-transmission-icons"] {
  width: 121px;
  margin: auto;
  padding: 5px 0px;
}

img.ct-weather-icon{
  height: 37px;
  width: auto;
}

img.ct-weather-icon.range-spreader {
  width: 38px;
  padding: 0px 4px;
}

label.ct-variant__label,
label.ct-addon-variant__label {
  margin-bottom: 10px;
}

/*available in rx link below product variant picker*/
.ct-available-in-rx-variant-picker-wrapper {
  display: block;
  margin-top: 10px;
}

.ct-available-in-rx-variant-picker-wrapper a{
  padding:5px 10px;
  margin-top:10px;
  background-color: #B2B2B2;
}
span.ct-available-in-rx-variant-picker{
  color:white;
}

/*fixing the template's product block bugs*/
.product-block--sales-point+.product-block--sales-point{
  margin-top:unset;
}
.shopify-block.shopify-app-block{
  margin-bottom:-16px;
  margin-top:40px;
}
.product-block.product-block--sales-point {
  margin-bottom: -16px !important;
}

/*button styles*/
.product-block[data-shopify-editor-block="{\"id\":\"buy_buttons\",\"type\":\"buy_buttons\"}"] div.payment-buttons button {
  background-color: #ED7006;
  border-color: #ED7006;
}

.product-block[data-shopify-editor-block="{\"id\":\"buy_buttons\",\"type\":\"buy_buttons\"}"] span {
  color: white;
  font-weight: 800;
}

.product-block[data-shopify-editor-block="{\"id\":\"buy_buttons\",\"type\":\"buy_buttons\"}"] {
    margin-top: 45px;
}

[data-swatch_style=round] div.variant-wrapper .color-swatch {
  box-shadow: 0 0 0 1px black;
}

.variant-input-wrap input[type=radio]:checked+label{
  box-shadow: 0 0 0 3px #ED7006;
}

span.ct-variant__label-wrapper[ct-status="collapsed"] {
  max-height: 0px;
  padding: 0px;
  border: 0px;
  overflow: hidden;
  -webkit-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -moz-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -o-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -ms-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
}

span.ct-variant__label-wrapper[ct-status="visible"] {
  border: 1px solid #dddddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
  padding: 15px;
  background-color: #fafafa; /* optional card background */
  margin: 10px 0px;
  max-width: 365px;
  -webkit-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -moz-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -o-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  -ms-transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
  transition: max-height 0.3s ease-in-out, padding .3s ease-in-out;
}

span.ct-variant-learn-more .bi.bi-triangle-fill{
  transform: rotate(90deg);
  padding-left: 3px;
  -webkit-transition: transform 0.3s ease-in-out;
  -moz-transition: transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out;
  -ms-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
}
span.ct-variant-learn-more{
  text-transform:none;
  color: #B2B2B2;
  letter-spacing: normal;
}

svg.bi.bi-triangle-fill.rotated{
  transform:rotate(180deg);
  -webkit-transition: transform 0.3s ease-in-out;
  -moz-transition: transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out;
  -ms-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
}

span.ct-variant-learn-more:hover {
  cursor: pointer;
}
span.ltv-info {
  letter-spacing: normal;
  text-transform: none;
  padding-top:10px;
}

/*mobile LTV block*/
@media only screen and (max-width: 768px){
  .page-content.page-content--product {
    /* padding-top: 145px; Spacing to move title below image on mobile*/
    position: relative;
    padding-bottom: 4px;
  }
  span.ct-variant__label-wrapper{
    width:100%;
  }
  label#ct-variant-label {
    text-align:left;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
  }
  div.product-block.ct-separator{
    height: 10px;
    margin-bottom:2px;
  }
  .product-block{
    margin-bottom: 10px;
    margin-top: -10px !important;
  }
  .product-block.product-block--header {
    text-align: left;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    /* position: absolute; Spacing to move title below image on mobile*/
    /* bottom: calc(100% - 225px); */
  }
  div.product-block.product-block--header div.product__policies.rte.small--text-center{
    text-align:left !important;
  }
  .main-content{
    overflow-x: hidden;
  }
  .product-block {
    text-align: left;
  }
  .product-block .variant-wrapper.js:nth-child(1) {
    margin-top: 28px;
  }
  .product-block .variant-wrapper.js {
    padding-left: 18px;
  }
  .product-single__meta h1.h2.product-single__title {
    margin-top: 10px;
  }
  .site-footer .grid__item[data-type="menu"] h4 {
    display: none;
  }
  button.btn.btn--full.add-to-cart.btn--secondary.disabled {
    margin-top: 20px;
  }
}
/* 9/23/25 - BWH - FILTER COLUMN ELEMENTS */
.filter-form {
  background: #fafafa;
  padding: 10px;
}
.tag__text {
  font-size: 0.8rem;
}
.text-label {
  font-size: 0.7rem;
}
.collapsible-trigger-btn {
  letter-spacing: normal;
}
/* Start Sunglass PDP Size Container Styles */
.size-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  background: #fafafa;
  padding: 20px;
  margin: 30px 0px;
  margin-top: 30px;
  box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
}
.size-container-white-rounded {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  background: #ffffff;
  padding: 20px;
  margin: 30px 0px;
  box-sizing: border-box;
  border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
}
.size-container-white {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.size-container-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  padding: 10px;
}
.size-container-column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
  padding: 10px;
  font-size: 1.25rem;
  line-height: 1.65rem;
  justify-content: center;
  align-items: center;
}
.size-container-column-flex {
  flex: 1 1 325px;           /* grow, shrink, base width */
  box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  /* border-radius: 8px;        /* optional rounded corners */
  padding: 35px;
  background-color: #ffffff; /* optional card background */
  font-size: 1.25rem;
  line-height: 1.65rem;
  justify-content: center;
  align-items: center;
}
.smaller {
  font-size: .95rem;
  line-height: 1.2rem;
  font-style: italic;
}
.eyewear-fit {
  display: flex;
  flex-direction: row;
  padding: 10px;
}
.size-container h2 {
  /* color: #cf2e26; */
  color: #b4b4b4;
  font-family: 'MomoTrustDisplay', sans-serif;
}
@media all and (max-width: 768px) {
  .size-container {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }
  .size-container-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    padding: 5px;
  }
  .size-container-column {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    flex: 1;
    padding: 5px;
    justify-items: center;
    align-items: center;
  }
}
/* 
- PDP Product Features Block Styles
- product-features-list.liquid
*/
.product-features-container {
  display: flex;
  flex-wrap: wrap;           /* allows items to wrap to next row */
  gap: 20px;                 /* space between items */
  max-width: 1500px;         /* main container width */
  margin: 0 auto;            /* center container horizontally */
  padding: 40px;             /* optional padding */
}

.product-features-container-header {
  max-width: 1500px;         /* main container width */
  margin: 0 auto;            /* center container horizontally */
  padding-top: 60px;             /* optional padding */
  padding-left: 40px;
}

.product-feature-card {
  flex: 1 1 250px;           /* grow, shrink, base width */
  box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
  padding: 15px;
  background-color: #fafafa; /* optional card background */
  text-align: center;        /* optional center text */
}

.product-feature-card img {
  max-width: 100%;
  height: auto;
  margin-top: 10px;
  border-radius: 4px;
}

.product-feature-card h3 {
  margin-bottom: 10px;
  font-size: 1.1rem;
}

.product-feature-card .feature-description {
  font-size: 0.95rem;
  line-height: 1.4;
}

.product-feature-description {
  font-size: .9rem;
}

/* Custom Content PDP Section that displays product details, what's included, sizing, etc... */
.product-details-section-container {
  display: flex;
  flex-direction: column;
  padding: 40px;
  max-width: 1500px;
  margin-top: 10px;
  background: #fafafa;
  box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
}
.product-details-group {
  padding-top: 40px;
}
.product-details-section {
  font-size: 1.15rem;
  line-height: 1.65rem;
}
/* 
- PDP Variant Lens Details Block Styles
- variant-lens-technology-block.liquid
- Lens detail block via ct.js script 
*/
.lens-details-container {
  display: flex;
  flex-direction: column;
  max-width: 1500px;
  margin: 0 auto;
  gap: 20px;
   box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
  padding: 35px;
  background-color: #fafafa; /* optional card background */
}

/* First Row: Two columns */
.lens-details-row {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
}

.lens-details-row .lens-details-col-1 {
  flex: 0 0 400px; /* fixed width */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  /* align-items: center; /* align content center */
  padding: 20px;
}

.lens-details-row .lens-details-col-2 {
  flex: 1; /* takes the rest of the space */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  /* align-items: center; /* align content center */
  padding: 20px;
  font-size: 1.05rem;
  line-height: 1.75rem;
}

/* Second Row: Full width */
.lens-details-row-2 .lens-details-col-full {
  width: 100%;
  padding: 30px;
  text-align: left;
}
.lens_titles {
  text-align: center;
}

/* Responsive stacking for mobile */
@media (max-width: 768px) {
  .lens-details-row-1 {
    flex-direction: column;
  }
}
.lens-weather {
  margin-top: 12px;
}

.lens-weather__title {
  font-weight: 600;
  margin-bottom: 6px;
}

/* default (desktop/tablet) */
.lens-weather__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(125px, 1fr));
  gap: 10px;
  align-items: start;
  justify-items: center; /* keeps items centered in their cells */
}

.lens-weather__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.lens-weather__label {
  font-size: 1rem;
  line-height: 1.2rem;
}

/* images scale but cap at 125px */
.lens-weather__img {
  width: 100%;
  max-width: 125px;
  height: auto;
  object-fit: contain;
  border: none;
  border-radius: 0;
  margin-bottom: 6px;
}

/* mobile: force exactly 2 columns */
@media (max-width: 600px) {
  .lens-weather__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}

/* 
- PDP Product Feature Large Callouts Block Styles
- Uses custom content on each PDP, styled by these selectors
*/
.pdp-feature-large-callout {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  font-size: 1.45rem;
  line-height: 2rem;
  padding: 60px;
}
@media all and (max-width: 768px) {
    .pdp-feature-large-callout {
      display: flex;
      flex-wrap: wrap;
      flex-direction: column;
      align-items: center;
      font-size: 1.45rem;
      line-height: 2rem;
      padding: 20px;
    }
    .pdp-feature-large-callout .p {
      align-items: center;
    }
}
/* 
- PDP Callout Sections 
- Used on Spinshield Pro
*/
.pdp-callouts-dark-container {
  display: flex;
  flex-direction: row;
  padding: 40px;
  max-width: 1500px;
  margin-top: 10px;
  background: #000000;
  box-sizing: border-box;
  /* border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
}
.pdp-callouts-white-container {
  display: flex;
  flex-direction: row;
  padding: 40px;
  max-width: 1500px;
  margin-top: 10px;
  background: #ffffff;
  box-sizing: border-box;
  border: 1px solid #ddd;    /* optional card border */
  border-radius: 8px;        /* optional rounded corners */
}
.pdp-callouts-dark-container .pdp-callouts-col-1 {
  flex: 0 0 750px; /* fixed width */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  /* align-items: center; /* align content center */
  padding: 60px;
}
.pdp-callouts-dark-container .pdp-callouts-col-2 {
  flex: 1; /* takes the rest of the space */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  align-items: center; /* align content center */
  padding: 20px;
}
.pdp-callouts-white-container .pdp-callouts-white-col-1 {
  flex: 0 0 600px; /* fixed width */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  /* align-items: center; /* align content center */
  padding: 60px;
}
.pdp-callouts-white-container .pdp-callouts-white-col-2 {
  flex: 1; /* takes the rest of the space */
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical center */
  /* align-items: center; /* align content center */
  padding: 20px;
}
.pdp-callouts-white-copy {
  font-size: 1.15rem;
  line-height: 1.75rem;
  color: #ffffff;
}
.pdp-callouts-bold-white-copy {
  font-size: 2rem;
  line-height: 2.15rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #ffffff;
}
.pdp-callouts-black-copy {
  font-size: 1.15rem;
  line-height: 1.75rem;
  color: #000000;
}
.pdp-callouts-bold-black-copy {
  font-size: 2rem;
  line-height: 2.15rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #000000;
}
@media all and (max-width: 768px) {
  .pdp-callouts-dark-container {
    flex-direction: column;
    width: 100%;
    padding: 20px;
    margin-top: 0px;
  }
  .pdp-callouts-dark-container .pdp-callouts-col-1 {
    flex: 1; /* fixed width */
    display: flex;
    flex-direction: column;
    justify-content: center; /* vertical center */
    /* align-items: center; /* align content center */
    padding: 6px;
  }
  .pdp-callouts-dark-container .pdp-callouts-col-2 {
    flex: 1; /* takes the rest of the space */
    display: flex;
    flex-direction: column;
    justify-content: center; /* vertical center */
    /* align-items: center; /* align content center */
    padding: 6px;
  }
  pdp-callouts-white-container {
    flex-direction: column;
    width: 100%;
    padding: 20px;
    margin-top: 0px;
  }
}
.pdp-copy {
  font-size: 1.25rem;
  line-height: 1.75rem;
  padding: 20px;
}
.pdp-bold-copy {
  font-family: 'MomoTrustDisplay', sans-serif;
  font-size: 3.25rem;
  line-height: 3.25rem;
  font-weight: 900;
  text-transform: uppercase;
  padding: 40px;
}
@media all and (max-width: 768px) {
  .pdp-copy {
    font-size: 1.25rem;
    line-height: 1.75rem;
    padding: 20px;
  }
  .pdp-bold-copy {
    font-size: 2.25rem;
    line-height: 2.65rem;
    padding: 15px;
  }
}