/** Shopify CDN: Minification failed

Line 442:35 Unexpected "!"

**/
:root {
  --price-bar-offset: 10px;
}
.button {
  border-radius: 10px;
}
.product-price-block {
  display: flex;
  position: relative;
  width: 100%;
  background-color: #FFFFFF;
  border-radius: 10px;
  flex-direction: column;
  margin-bottom: calc(14px + var(--price-bar-offset));
}
.product-price {
    padding: 16px 24px 10px;
}
.stock-product-price {
  padding: 16px 24px 16px;
}  
.price-item-pc {
  font-weight: 900;
  font-size: 48px;
  color: var(--price-color);
  line-height: 1.1;
}
.price-item-pc.price--on-sale {
  display: flex;
  align-items: flex-end;
}
.old_price_wrapper {
  position: relative;
  top: -30px;
  left: -40px;
  z-index: 2;
  font-size: 25px;
  font-weight: 600;
  color: #E2E2E2
}
.price-item-pc .suffix {
  font-size: 25px;
  color: #979797;
  font-weight: 400;
}
.sales-badge {
  display: inline-block;
  padding: 2px 12px;
  margin: 0px 8px;
  color: white;
  font-size: calc(var(--body-font-size) * .75);
  font-weight: 500;
  line-height: 1.1;
  text-align: center;
  font-style: normal;
  text-transform: capitalize;
  border-radius: 4px;
}
  .sales-badge-link {
    display: inline-flex;
    text-decoration: none !important;
    border: none !important;
    line-height: 0;
    vertical-align: middle;
  }
  .description {
    font-size: 16px;
    color: #555;
    margin: 0 0 2px 0;
  }
  .price-description {
    font-size: 15px;
    color: #555;
    font-weight: 400;
    padding-top: 4px;
  }
  .price-list-description {
    font-size: 15px;
    color: #555;
    font-weight: 400;
    padding-top: 6px;
    text-align: center;
  }
  /* Price List Accordion (Table Content Container) */
  .price-list-accordion-wrapper,
  .price-list-accordion {
    border-radius: 8px;
    padding: 0;
    overflow: hidden;
    position: relative;
    margin-bottom: 0;
  }
  .accordion-content {
    max-height: var(--accordion-tease-height);
    overflow: hidden;
    transition: max-height .5s ease, padding 0.3s ease-out;
    padding: 0px 64px 35px;
  }
.accordion-content.active {
   max-height: 500px;
}
.accordion-content::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 47px;
  background: linear-gradient(to bottom, rgba(247, 247, 247, 0) 0%, rgba(226, 226, 226, 1) 100%);
  pointer-events: none;
  opacity: 1;
  transition: opacity 2s cubic-bezier(0.11, 0.55, 0.36, 1);
  z-index: 1;
}
.accordion-content.active::after {
  opacity: 0;
}
.price-list-bottom-bar-wrapper {
  display: flex;
  position: relative;
  height: 35px;
  margin-top: -35px;
  justify-content: center;
  align-items: flex-end;
}
.price-list-bottom-bar-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #38B000;
  border-radius: 0 0 8px 8px;
  transform: translateY(var(--price-bar-offset));
  z-index: -1;
}
.bss-b2b-qb-table-wrapper th, .bss-b2b-qb-table-wrapper-ef th {
  padding: 6px;
}
.bss-b2b-cart-item-qty-table {
transform: none !important;
}
.bss-b2b-qty-table-wrapper {
  border: none !important;
}
.quantity_break_table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  border: none !important;
}
.quantity_break_table thead th {
  background-color: #f9f9f9 !important;
   font-weight: 600 !important;
}
.bss-b2b-cart-item-qty-table table td {
  padding: 8px !important;
  font-size: 14px !important;
}
.view-price-list-button {
  display: flex;
  background-color: #38B000;
  color: white;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 6px 32px 0px;
  border-radius: 8px 8px 0px 0px;
  position: absolute;
  z-index: 2;
  align-items: center;
}
.view-price-list-button svg {
  width: 15px;
  height: 15px;
  margin-left: 8px;
  fill: currentColor;
  transition: transform 0.3s ease;
}
.view-price-list-button.active .icon-caret-down {
  transform: rotate(180deg);
}
.blanket-order-form {
  background-color: #ffffff;
  border-radius: 10px;
  color: #ffffff;
}
.calconic-calculator {
  width: 100% !important;
}
.cssTransforms {
  width: 100% !important;
}
#ref-r1.calconic-formula.calconic-element.relative-controls {
  padding: 16px 24px 0px !important;
}
[data-ref="#1"] .p-p-fix,
[data-ref="#1"] .result span {
  font-family: Poppins, sans-serif;
  font-weight: 900 !important;
  font-size: 48px !important;
  color: #38b000 !important;
  line-height: 1.1 !important;
  display: inline-block !important;
}
[data-ref="#1"] .calconic-element-controls .p-p-fix:last-child,
[data-ref="#1"] .calconic-element-controls p > span:last-child {
  font-size: 25px !important;
  color: #979797 !important;
  font-weight: 400 !important;
  vertical-align: middle !important;
  margin-left: 4px !important;
}
[data-ref="#1"] .calconic-element-label label {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #000000 !important;
  margin-bottom: 5px !important;
}
calconic-element-label__collapsable {
  padding: 5px 16px 5px !important;
}
#ref-s1.calconic-group-wrapper.calconic-element {
    margin: 5px 16px 5px !important;
    border: solid 1px #e9e9e9 !important;
    border-radius: 8px !important;
}
#ref-s1 .calconic-element-label__collapsable {
    background: #f8f8f8 !important;
    border-bottom: solid 1px #e9e9e9 !important;
    border-radius: 8px !important;
    padding: 2px !important;
    font-size: 16px !important;
    color: #555 !important;
    font-weight: 400 !important;
    display: flex !important;
    align-items: center !important;
}
.calconic-element__height-layer--collapsed {
  overflow: unset !important;
}
[data-ref="*2"].react-grid-item {
    margin-top: 12px !important;
}
#ref-s2.calconic-group-wrapper.calconic-element {
    margin: 5px 16px 5px !important;
    border: solid 1px #e9e9e9 !important;
    border-radius: 8px !important;
}
#ref-s2 .calconic-element-label__collapsable {
    display: flex !important;
    justify-content: center !important;
    background: #f8f8f8 !important;
    border-bottom: solid 1px #e9e9e9 !important;
    border-radius: 8px !important;
    padding: 2px !important;
    font-size: 16px !important;
    color: #555 !important;
    font-weight: 400 !important;
    align-items: center !important;
}
.calconic-order-form button {
  margin: 4px 0 0 !important;
}
/* Specifically target the Submit/Order section container */
[data-ref="*3"].react-grid-item {
    z-index: 1 !important;
    margin-top: 20px;
}
.react-grid-layout.calconic-elements {
    margin-bottom: 30px;
}
.react-grid-item.cssTransforms {
    width: 100% !important;
}
[id^="lumi-calculator-"] {
    overflow: visible !important;
}
.calconic-order-form>div.calconic-form-visibility {
    background: none !important;
    overflow: visible !important;
}
variant-swatch-king ul,
variant-swatch-king li,
variant-swatch-king fieldset,
variant-swatch-king legend,
variant-swatch-king label,
variant-swatch-king input,
variant-swatch-king span,
variant-swatch-king div {
  all: unset;
}
.purchase-customizable-wrapper {
  position: absolute;
  display: flex;
  flex-direction: column;
  width: 100%;
  background: #ffff;
  padding: 16px;
  border-radius: 10px;
}
.purchase-stock-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
  background: #ffff;
  border: 1px solid #e5e5e5;
  padding: 16px;
  border-radius: 10px;
}
.customizables-heading {
  display: flex;
  justify-content: center;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  background: #f8f8f8;
  border: solid 1px #e9e9e9;
  border-bottom: none;
  padding: 2px;
  font-size: 16px !important;
  color: #555 !important;
  font-weight: 400 !important;
}
.customizable-options {
  border: solid 1px #e9e9e9;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  padding: 16px 16px 8px;
  margin-bottom: 12px;
}
.swatch-navigable {
  display: flex !important;
  width: 100% !important;
}
.swatch-view.swatch-view-image {
  width: 100%;
}
variant-swatch-king .swatch-single.swatch-view-slide .swatch-navigation-wrapper[navigation="left"] {
  left: 0px !important;
}
variant-swatch-king .swatch-single.swatch-view-slide .swatch-navigation-wrapper[navigation="right"] {
  right: 0px !important;
}
.swatch-navigation-wrapper {
  left: unset !important;
  right: unset !important;
}
.swatch-label.swatch-label-button {
  font-size: 16px !important;
  color: #555 !important;
  font-weight: 400 !important;
}
variant-swatch-king .swatch-label {
  font-size: 16px !important;
  color: #555 !important;
  font-weight: 400 !important;
}
ul.swatch-view {
  display: flex !important;
  gap: 8px;
}
.swatch-view.swatch-view-image {
  overflow: overlay !important;
  overflow-x: auto !important;
  scrollbar-width: auto !important;
  padding-bottom: 6px !important;
  margin-bottom: 4px !important;
}
variant-swatch-king ul.swatch-view li {
  display: flex !important;
}
ul.swatch-view li {
  flex: 1;
  gap: 8px;
}
.swatch-view-item {
  margin: 0px !important;
}
.swatch-title-and-icon-container {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
}
variant-swatch-king div.swatch-img-text-adjacent p {
  white-space: unset !important;
  text-align: center;
  max-width: 70% !important;
}
.swatch-view.swatch-view-button {
  margin-top: 8px !important;
  margin-bottom: 0px !important;
  flex-wrap: wrap !important;
}
ul.swatch-view.swatch-view-button > .swatch-view-item {
  flex: 1 1 calc(50% - 4px) !important;
  margin: 0 !important;
}
.swatch-button {
  flex: 1 !important;
  margin-bottom: 10px;
  width: 100%;
}
.swatch-button-title-text {
    font-size: .875rem;
    font-weight: 500;
}
.swatch-price-adjacent swatch-button-price {
    font-size: .875rem;
}
div.swatch-button.button {
  border-radius: 8px;
  display: flex;
  padding: 4px 8px;
}
ul.swatch-view.swatch-view-button > .swatch-view-item:last-child:nth-child(odd) {
  flex-basis: 100% !important;
}
@media (max-width: 768px) {
  ul.swatch-view {
    flex-wrap: unset !important;
  }
  ul.swatch-view.swatch-view-button {
    flex-wrap: wrap !important;
  }
  .swatch-view-item {
    min-width: 90px;
  }
}
@media (max-width: 550px) {
  ul.swatch-view.swatch-view-button {
    flex-direction: column !important;
  }
  ul.swatch-view.swatch-view-button > .swatch-view-item {
    flex-basis: 100% !important;
  }
  ul.swatch-view.swatch-view-image !important{
    flex-direction: row !important;
  }
}
/*--------------------------------------------------------*/
div.swatch-button.button.button--primary-border {
  background-color: #38B000;
  color: #FFFFFF;
  border: 2px solid #38B000;
}
div.swatch-button.button.button--primary-border::before {
  background-color: #38B000;
}
div.swatch-button.button.button--primary-border::after {
  background-color: #70E000;
}
div.swatch-button.button.button--primary-border:focus-visible {
  outline: 2px solid #38B000;
  outline-offset: 2px;
}
@media (-moz-touch-enabled: 0), (hover: hover), (pointer: fine) {
  div.swatch-button.button.button--primary-border:hover {
    background-color: #70E000;
    color: #38B000;
    border: 2px solid #70E000;
  }
}
/*--------------------------------------------------------*/
.button.button--secondary-border {
  background-color: #FFFFFF;
  color: #004B23;
  border: 2px solid #e2e2e2;
}
.button.button--secondary-border::before {
  background-color: #FFFFFF;
}
.button.button--secondary-border::after {
  background-color: #008000;
}
.button.button--secondary-border:focus-visible {
  outline: 2px solid #e2e2e2;
  outline-offset: 2px;
}
/*--------------------------------------------------------*/
@media (-moz-touch-enabled: 0), (hover: hover), (pointer: fine) {
  .button.button--secondary-border:hover {
    background-color: #008000;;
    color: #FFFFFF;
    border: 2px solid #008000;
  }
}
.swatch-image-wrapper {
  display: flex;
  justify-content: center;
  width: 100% !important;
}
variant-swatch-king .swatch-image {
  display: flex;
  flex-direction: column;
  align-items: center;
}
variant-swatch-king div.swatch-preset-1063465 .swatch-img-text-adjacent {
  justify-content: center;
}
variant-swatch-king div.swatch-preset-1063465 .swatch-price-adjacent {
  justify-content: center;
}
.product-customization-purchase {
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: #FFFFFF;
  border: solid 1px #e9e9e9;
  border-bottom: none;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  padding: 16px;
}
.product-stock-purchase {
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: #FFFFFF;
  border: solid 1px #e9e9e9;
  border-bottom: none;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  padding: 16px;
}
.quote-description-footer {
  display: flex;
  justify-content: center;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  background: #f8f8f8;
  border: solid 1px #e9e9e9;
  padding: 4px 24px 6px;
  font-size: 16px;
  color: #555;
  font-weight: 400;
  text-align: center;
}
@property --gp {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
@keyframes freeform-shift {
  0%   { --gp: 0%; }
  50%  { --gp: 100%; }
  100% { --gp: 0%; }
}
:root{
  --qstomizer-gradient: linear-gradient(13deg, #FEDE00, #f4ac00, #D00000, #03071E, #25730b, #9ac700, #FEDE00);
}
#qstomizer-product-button {
  height: 100%;
  background-image:
    var(--qstomizer-gradient),   /* fill */
    var(--qstomizer-gradient);   /* border */
  background-size: 400% 400%, 400% 400%;
  background-position: var(--gp) 50%, var(--gp) 50%;
  animation: freeform-shift 15s ease infinite;

  color: #FFFFFF !important;
  border: 2px solid transparent;
  background-origin: padding-box, border-box;
  background-clip: padding-box, border-box;

  border-radius: 10px;
  margin-top: unset;
  margin-bottom: unset;
}

/* replaces background-color:#F48C06 */
#qstomizer-product-button::before {
  background-image: var(--qstomizer-gradient);
  background-size: 400% 400%;
  background-position: var(--gp) 50%;
  animation: freeform-shift 15s ease infinite;
}

/* unchanged */
#qstomizer-product-button::after {
  background-color: #FFFFFF;
}

/* replaces outline color #F48C06 (outline can't be gradient) */
#qstomizer-product-button:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

/* HOVER — keep white bg; animate border; sync text to the same position */
@media (-moz-touch-enabled: 0), (hover: hover), (pointer: fine) {
  #qstomizer-product-button:hover {
    background-color: #FFFFFF;
    color: inherit !important;

    border: 2px solid transparent;
    background-image:
      linear-gradient(#FFFFFF, #FFFFFF), /* white fill */
      var(--qstomizer-gradient);         /* animated border */
    background-size: auto, 400% 400%;
    background-position: 0 0, var(--gp) 50%;
    background-origin: padding-box, border-box;
    background-clip: padding-box, border-box;
    animation: freeform-shift 15s ease infinite;
  }
}
#qstomizer-product-button span {
  color: #FFFFFF;
}
/* HOVER text — gradient text synced via --gp (no new animation on span) */
@media (-moz-touch-enabled: 0), (hover: hover), (pointer: fine) {
  #qstomizer-product-button:hover span {
    background-image: var(--qstomizer-gradient);
    background-size: 400% 400%;
    background-position: var(--gp) 50%; /* sync with button */
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    display: inline-block;
  }
}
.omgrfq-btn-quotes.omgrfq-btn {
  border-width: 2px !important;
}
.SmartPack_request_a_quote {
  display: none;
}
.omgrfq-product-button {
  margin-top: unset;
  margin-bottom: unset;
}
.pack-price-amount {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: baseline;
  gap: 6px;                
  font-size: 16px;
  font-weight: 500;
  color: #008000;
}
.stock {
  margin-bottom: 16px;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(0px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sp-modal-overlay {
  content: "";
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: var(--layer-overlay);
  display: block;
  background-color: rgba(0, 0, 0, 0.3);
  transition: opacity var(--timing-base) var(--easing-ease-in-out);
  pointer-events: auto;
  justify-content: center;
  align-items: flex-start;
  overflow-y: auto;
}
.sp-modal-content {
  position: relative;
  width: 100%;
  max-width: 800px;
  height: 100vh;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  padding: 44px 16px;
}
.sp-modal-close {
  position: absolute;
  top: 10px;
  right: 8px;
  background: none;
  border: none;
  font-size: 32px;
  cursor: pointer;
  z-index: 10;
  color: #333;
}
.sp-iframe-wrapper {
  width: 100%;
  height: 100%;
}
.sp-iframe-wrapper iframe {
  width: 100%;
  height: 100%;
  border: none;
}
.blanket-modal {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: center;
  align-items: center;
  margin-top: 64px;
  gap: 16px;
}
.blanket-info {
  display: flex;
  flex-direction: column;
  width: 40%;
  height: 100vh;
  max-width: 800px;
  gap: 16px;
}
.blanket-info-container { padding: 40px 0; }
.blanket-info-grid { display: flex; flex-grow: 1; overflow: auto; flex-wrap: wrap; background: #ffffff; border-radius: 10px; align-items: center; padding: 32px;}
.blanket-info-media, .blanket-info-text { flex: 1; min-width: 300px; }
.blanket-media-element { width: 100%; height: auto; border-radius: 8px; }
.blanket-info-text h2 { margin-bottom: 10px; font-size: 1.8rem; }
.blanket-info-text .subheading { font-weight: bold; margin-bottom: 20px; color: #555; }
.rich-text-content p { line-height: 1.6; }
/* Base Skeleton Engine */
/* The Movement Engine - Apply to anything that needs to move */
.shimmer {
  background-image: linear-gradient(
    90deg, 
    rgba(255, 255, 255, 0) 0%, 
    rgba(255, 255, 255, 255) 50%, 
    rgba(255, 255, 255, 0) 100%
  ) !important;
  background-repeat: no-repeat !important;
  background-size: 50% 100% !important;
  animation: skeleton-shimmer 1.5s infinite cubic-bezier(0.5, 0, 0.55, 1) !important;
}

@keyframes skeleton-shimmer {
  0% { background-position: -150% 0; }
  100% { background-position: 150% 0; }
}

/* Base structural classes (No colors or shimmer here) */
.skeleton-mirror {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  z-index: 10;
  pointer-events: none;
  overflow: hidden;
  height: calc(var(--raw-height) * 1.1765 * 1px) !important;
  animation: skeleton-fade-out 0.4s forwards;
  animation-delay: calc(var(--reveal-delay) * 1.1);
}

.skeleton-mirror-container {
  height: calc(var(--raw-height) * 1.1765 * 1px); 
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.skeleton-fill {
  flex: 1 1 auto !important;
  height: auto !important; 
  min-height: 0 !important;
}

.skeleton-bone {
  height: calc(var(--raw-height) * 1.1765 * 1px) !important;
  background-color: #f0f0f0;
  position: relative;
  overflow: hidden;
  /* Apply shimmer to individual bones */
  background-image: linear-gradient(90deg, rgba(70, 33, 33, 0) 0, rgba(255,255,255,0.6) 50%, rgba(255,255,255,0) 100%);
  background-repeat: no-repeat;
  background-size: 200px 100%;
  background-position: -200px 0;
  animation: skeleton-shimmer 1.5s infinite linear;
}

@keyframes skeleton-shimmer {
  to { background-position: calc(100% + 200px) 0; }
}

@keyframes skeleton-fade-out {
  to { opacity: 0; visibility: hidden;}
}
.skeleton-mirror.force-hide {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.purchase_option {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: end;
  width: 100%;
}
.purchase_option_dropdown {
  display: flex;
  width: 70%;
  height: stretch;
}
#qstomizer-button-block-container {
  display: flex;
  width: 100%;
  height: 100%;
}
.order-type-select {
  width: 100%;
  height: 100%;
  padding: 12px 16px;
  font-size: 16px;
  font-weight: 600;
  border: 1px solid var(--color-border, #e0e0e0);
  border-radius: var(--global-border-radius, 4px);
  background-color: #ffffff;
  cursor: pointer;
  transition: border-color 0.3s ease;
}
.order-type-select:focus {
  outline: none;
  border-color: var(--color-primary);
}
@media (max-width: 1199.98px) {
  .star-set-image {
    width: 12vw !important;
    height: 12vw !important; 
  }
  .blanket-info {
    flex-direction: column;
    width: 100%;
    height: 100%
  }
  .blanket-modal {
    flex-direction: column;
    width: 100%;
  }
  .blanket-info-grid{
    flex-grow: 1px;
  }
}