/** Shopify CDN: Minification failed

Line 7:0 Unexpected "/"

**/

/
















Kopstorm · CSS
/* Make table full width inside accordion */
.accordion__content.prose .table-scroller {
  width: 100%;
  margin: 0 !important;
}
 
.accordion__content.prose table {
  width: 100% !important;
  table-layout: fixed;
  margin: 0 !important;
}
 
.accordion__content.prose table td {
  width: auto !important;
  padding: 0.75rem 1rem !important;
  text-align: left !important;
}
 
.accordion__content.prose table td:first-child {
  width: 35%;
}
 
/* Kill the spacer <p>&nbsp;</p>s — only inside accordions that contain a table */
.accordion__content.prose:has(.table-scroller) > p {
  display: none !important;
  margin: 0 !important;
}
 
div[data-block-type="icons-with-text"] .icon {
    width: 14px!important;
    height: auto!important;
}
 
 
 
line-item .product_title {
font-family: var(--heading-font-family);
font-weight: var(--heading-font-weight);
font-style: var(--heading-font-style);
letter-spacing: var(--heading-letter-spacing);
text-transform: var(--heading-text-transform);
line-height: var(--heading-line-height);
overflow-wrap: anywhere;
-webkit-font-smoothing: antialiased;
padding-bottom: 3px;
}
 
.shopify-policy__body h3 {
        font-size: 24px;
}
 
.shopify-policy__body h2 {
        font-size: 24px;
}
 
.shopify-policy__body h4 {
        font-size: 24px;
}
 
.section-split__column img {
border-radius: 20px;
overflow: hidden;
}
 
.blog-post-card__image-container {
        border-radius: 20px;
}
 
.blog-post-card__image-container img {
        height: 100%;
}
 
.cart_gap {
gap: 25px;
}
 
.faq__footer a {
text-decoration: underline !important;
}
 
.menu-promo__item .has_image {
position: relative;
}
 
.menu-promo__item .has_image .overflow-hidden {
position: relative;
}
 
.menu-promo__item .has_image .overflow-hidden::after {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: linear-gradient(to top, #0f0f0f, #0000 90%);
pointer-events: none;
z-index: 1;
}
 
header-mega-menu .underline_links:last-child {
text-decoration: underline;
}
 
.product-info__block-item .accordion__disclosure h2 {
font-size: 16px;
text-align: left!important;
margin: 0;
}
 
#looxReviews {
padding-top: 50px;
}
 
.prose table td {
text-align: left!important;
padding-left: 0!important;
padding-right: 0!important;
}
 
.product-info__block-item .accordion__disclosure h1 {
font-size: 16px;
text-align: left!important;
margin: 0;
}
 
.product-info__block-item .accordion__disclosure h3 {
font-size: 16px;
text-align: left!important;
margin: 0;
}
 
.product-info__block-item .accordion__disclosure h4 {
font-size: 16px;
text-align: left!important;
margin: 0;
}
 
svg.loox-icon {
    width: 15px!important;
    height: auto!important;
    flex-shrink: 0!important;
}
 
.loox-rating .loox-rating-content {
    font-size: 14px!important;
}
 
announcement-bar .subheading {
text-transform: uppercase;
}
 
 
 
 
.cart_footer {
display: flex;
align-items: center;
justify-content: center;
text-align: center;
margin: 0 auto;
max-width: 300px;
} 
 
.promo-author {
width: 100%;
margin-top: 16px;
}
 
.promo-author__divider {
border: none;
border-top: 1px solid rgb(255 255 255 / 15%);
margin: 0 0 10px;
}
 
.product-list__promo .content-box .place-self-end-start {
margin-bottom: -10px;
margin-left: -10px;
}
 
.promo-author__info {
display: flex;
align-items: center;
gap: 12px;
}
 
.promo-author__avatar {
width: 36px;
height: 36px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
}
 
.promo-author__avatar img {
width: 100%;
height: 100%;
object-fit: cover;
margin: 0;
}
 
.promo-author__name {
margin: 0;
font-weight: 600;
font-size: 12px;
line-height: 1;
}
 
.promo-author__title {
margin: 3px 0 0;
font-size: 10px;
text-transform: uppercase;
opacity: .7;
}
 
.product-list__promo .prose * {
word-break: break-word;
overflow-wrap: break-word;
}
 
.social-media__item svg {
color: white;
width: 20px;
}
 
.product-cross-sell--vertical {
padding: 15px;
border: 1px solid #e8e8e8;
border-radius: 10px;
}
 
compare-at-price {
font-weight: 400!important;
}
 
.product-cross-sell {
padding: 15px;
border: 1px solid #e8e8e8;
border-radius: 10px;
}
 
product-recommendations p {
text-transform: uppercase;
font-weight: 600;
}
 
.product-cross-sell .button {
padding: 10px 30px;
width: max-content;
}
 
.has_image {
height: 100%;
display: flex;
}
 
.menu-promo--with-spacing .menu-promo__item {
position: relative;
overflow: hidden;
border-radius: 20px;
}
 
.has_image .absolute_content {
position: absolute;
bottom: 0;
color: white;
padding: 25px;
z-index: 2;
}
 
.menu-promo--with-spacing img {
object-fit: cover;
width: auto;
height: auto;
}
 
.mega_link {
color: #0871e6;
font-weight: 600;
}
 
.mega_title {
color: #a9a8a6;
}
 
 
@media screen and (min-width: 1000px) {
.product {
gap: 0;
max-width: 1500px;
margin: 0 auto;
}
}
 
.product-info__block-item .vendor {
text-transform: uppercase;
}
 
.variant-picker__option-info .h-stack {
width: 100%;
padding-bottom: 5px;
justify-content: start;
}
 
.variant-picker__option-info legend {
color: black;
font-weight: 600;
text-transform: uppercase;
}
 
.product-gallery__carousel {
border-radius: 20px;
}
 
.product-gallery__media>* {
width: 100%;
background: #e6e3df;
border-radius: 20px;
}
 
.product-card {
background: transparent!important;
}
 
.product-list__promo {
display: flex;
border-radius: 20px;
overflow: hidden;
}
 
.product-card__media {
border-radius: 20px;
}
 
carousel-navigation img {
background: #e6e3df;
border-radius: 10px;
}
 
.product-list {
padding-left: 10px;
padding-right: 10px;
}
 
.product-card__image {
border-radius: 20px;
}
 
.subheading-badge--with-icon:before {
display: none!important;
}
 
.shopify-section--text-with-media, 
.shopify-section--specifications, 
.shopify-section--faq, 
.shopify-section--trust-icons, 
.shopify-section--newsletter, 
.shopify-section--footer, 
.shopify-section--image-with-text-overlay, 
.shopify-section--ambassadors,
.shopify-section--compare-models,
.shopify-section--featured-collections {
overflow: hidden;
padding: 10px;
}
 
.padded_container {
border-radius: 20px;
overflow: hidden;
}
 
.padded {
padding-top: 10px;
padding-bottom: 10px;
}
 
.text-on-sale {
font-weight: 600;
}
 
.product-card__info   .vendor {
font-size: 12px;
}
 
.header__primary-nav .link-reversed {
text-transform: uppercase;
}
 
.link.subheading {
text-transform: uppercase;
}
 
.mega-menu {
border-top: 1px solid #f2f2f2;
}
 
.rating-badge svg path {
fill-opacity: 1!important;
fill: #0770E6!important;
}
 
compare-at-price {
font-weight: 300;
color: #6B6965;
}
 
.button-arrow {
width: 19px;
height: 19px;
margin: 0px!important;
}
 
a.menu-promo__item {
background: #f2f1f0;
border-radius: 20px;
padding: 25px;
}
 
.menu-promo__item .subheading {
font-weight: 700;
font-size: 14px;
}
 
.mega-menu .menu-promo:not(.menu-promo--without-spacing) .menu-promo__carousel {
gap: 20px;
}
 
.text_image {
width: 133px;
}
 
.menu-promo--with-spacing img {
border-radius: 20px;
height: 100%;
}
 
.footer .subheading {
text-transform: uppercase;
color:rgb(83, 83, 83);
}
 
.footer {
color: #898989;
}
 
.button_promo {
background: #0271e6;
height: auto;
font-size: 10px;
min-height: auto;
width: auto;
padding: 0 !important;
margin-top: 10px;
}
 
.absolute_content .subheading {
font-size: 14px;
}
 
.absolute_content button-content {
padding: 12px 20px;
}
 
.octane-ai-quiz-rendered, #octane-quiz-outer-wrapper {
        min-height: auto!important;
}
 
#octane-quiz-outer-wrapper {
        padding-top: 0px;
}
 
@media screen and (max-width: 1000px) {
.product-card__info .vendor {
font-size: 11px;
}
 
.shopify-policy__body h3 {
        font-size: 18px;
}
.shopify-policy__body h4 {
        font-size: 18px;
}
.shopify-policy__body h2 {
        font-size: 18px;
}
.has_image img {
        object-fit: cover;
        height: 100% !important;
        width: 100%;
}
.menu-promo--with-spacing img {
        object-fit: cover;
        height: 150px;
}
.menu-promo__item .has_image .overflow-hidden {
    width: 100%;
}
div[data-block-type="icons-with-text"] .icon {
    width: 13px!important;
    height: auto!important;
}
  svg.loox-icon {
    width: 14px !important;
}
.h7 {
line-height: 1.1;
}
.rating-badge__stars {
column-gap: .075rem;
display: flex;
}
.product-list__promo {
padding-bottom: 20px;
}
.product-list__promo .content-box__background-media {
border-radius: 15px;
}
 
carousel-player-button {
display: none!important;
}
 
.menu-promo__carousel {
gap: 4px!important;
}
 
 
.featured-collections-header__tab-list [role=tab] {
max-width: max-content;
}
.featured-collections-header__tab-list {
align-items: center;
justify-content: center;
padding-top: 10px;
}
 
.cart-reservation-timer {
background-color: #f5f5f7;
padding: 13px 25px!important;
text-align: center;
margin-left: -20px!important;
margin-right: -20px!important;
margin-top: -20px!important;
}
.prose :where(.subheading,.icon)+:where(h1,h2,h3,h4,h5,h6,.display-xl,.display-l,.display-m,.h1,.h2,.h3,.h4,.h5,.h6,.h7,.subheading,.icon) {
    margin-block-start: 10px;
}
.prose :where(p,ol,ul,form,hr,table,.accordion) {
    margin-block-start: 10px;
}
}
/* Sticky ATC — global */
.product-sticky-add-to-cart {
  z-index: 9999 !important;
  overflow: hidden;
}
 
/* Mobile — bottom pill (keep as-is) */
@media screen and (max-width: 699px) {
  .product-sticky-add-to-cart {
    border-radius: 12px !important;
  }
/* Hide mobile sticky ATC while a drawer/menu is open */
@media screen and (max-width: 699px) {
  body:has(.drawer[open]) .product-sticky-add-to-cart,
  body:has(drawer-menu[open]) .product-sticky-add-to-cart,
  body:has([id*="menu-drawer"][open]) .product-sticky-add-to-cart,
  body:has([id*="Drawer"][open]) .product-sticky-add-to-cart {
    display: none !important;
  }
}
}
 
/* Desktop — thin top bar matching header height */
@media screen and (min-width: 700px) {
  .product-sticky-add-to-cart {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
    inset-block-end: auto !important;
    inset-block-start: 0 !important;
    inset-inline-start: 0 !important;
    inset-inline-end: 0 !important;
    padding: 0.9rem 2.5rem !important;
    border-width: 0 0 1px 0 !important;
    border-color: #e8e8e8 !important;
    box-shadow: none !important;
  }
 
  /* Title — bold brand heading, like the screenshot */
  .product-sticky-add-to-cart .v-stack > .subheading:first-child {
    font-family: var(--heading-font-family) !important;
    font-weight: var(--heading-font-weight) !important;
    text-transform: uppercase !important;
    font-size: 0.95rem !important;
  }
 
  /* Nav — grouped on the right, before the button */
  .sticky-atc-nav {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-left: auto;
    margin-right: 2.5rem;
  }
  .sticky-atc-nav__link {
    font-size: 0.875rem;
    color: inherit;
    opacity: 0.65;
    text-decoration: none;
    transition: opacity 0.2s;
    white-space: nowrap;
  }
  .sticky-atc-nav__link:hover { opacity: 1; }
  .sticky-atc-nav__link:focus { outline: none; }
 
  /* Button — compact */
  .product-sticky-add-to-cart .button {
    width: auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    --button-padding-block: 0.55rem !important;
    --button-padding-inline: 1.5rem !important;
    font-size: 0.75rem !important;
  }
  /* Hide variant line on desktop */
  .product-sticky-add-to-cart .v-stack > .subheading.text-subdued {
    display: none !important;
  }
}
@media screen and (max-width: 749px) {
  .product {
    row-gap: 16px !important;
  }
}
/* Loox rating spacing (mobile only) */
@media screen and (max-width: 749px) {
  .product-info__block-item:has(.loox-rating) {
    margin-top: 20px !important;
    margin-bottom: -5px !important; /* lower this until the gap below matches the gap above */
  }
}
/* Center logo-list heading — force full width, kill side offsets */
.shopify-section--logo-list .prose,
.shopify-section--logo-list .prose > * {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  text-align: center !important;
}
/* Site header — grey bottom border only when solid */
x-header { border-bottom: 1px solid #E2E2E2; margin-bottom: -1px; transition: border-color 0.3s ease; }
.shopify-section--header:has(+ .shopify-section-group-template--gradient_overlay) x-header,
.shopify-section--header:has(~ * .section-image-banner:first-child) x-header { border-bottom-color: transparent; }
 
/* ---- Tag-driven badges (badge:Text) ---- */
.product-card__figure { position: relative; }
 
.gp-card-badge,
.gp-gallery-badge {
  position: absolute;
  z-index: 3;
  display: inline-block;
  background: #0770E6;
  color: #fff;
  font-family: inherit;
  font-weight: 400;
  line-height: 1;
  border-radius: 8px;
  pointer-events: none;
 
  /* 3) CASING: none = as typed | uppercase = ALL CAPS | capitalize = Title Case */
  text-transform: none;
}
 
/* 1) SIZE — collection card (font-size = text, padding = box) */
.gp-card-badge     { top: 12px; right: 12px; font-size: 13px; padding: 7px 12px; }
 
/* 1) SIZE — PDP gallery */
.gp-gallery-badge { top: 14px; left: 14px;  font-size: 12px; padding: 8px 14px; }
 
@media (max-width: 749px) {
  .gp-card-badge    { top: 10px; right: 10px; font-size: 8px; padding: 6px 10px; }
  .gp-gallery-badge { top: 12px; left: 12px;  font-size: 10px; padding: 6px 11px; }
}
.cart-drawer__cross-sell { border-top: none !important; }
.cart-drawer__cross-sell {
  margin-top: -28px !important;   /* more negative = tighter */
}
.cart-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  margin-left: 6px;
  border-radius: 999px;
  background: #eeeeee;   /* adjust color */
  color: #000000ff;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  vertical-align: middle;
}
#cart-drawer [slot="header"] svg {
  display: none !important;
}
#cart-drawer::part(header) {
  display: flex;
  align-items: center;
}
#cart-drawer::part(close-button) {
  order: 1;
  margin-left: auto;   
}
#cart-drawer [slot="header"] {
  order: 0;
  justify-content: flex-start;
  text-align: left;
}
#cart-drawer::part(header) {
  display: flex !important;
  align-items: center !important;   
}
#cart-drawer::part(close-button) {
  order: 1;
  margin-left: auto;                
}
#cart-drawer [slot="header"] {
  order: 0;
  display: flex;
  align-items: center;
}
#cart-drawer [slot="header"] h2 {
  display: inline-flex;
  align-items: center;              
  margin: 0;                        
  line-height: 1;
}
@media (min-width: 750px) {
  #cart-drawer::part(header) {
    padding-left: 32px;
    padding-right: 32px;
  }
  #cart-drawer .cart-free-shipping-bar {
    margin-top: -32px;
  }
}
@media (max-width: 749px) {
  #cart-drawer::part(header) {
    padding-left: 20px;
    padding-right: 20px;
  }
  #cart-drawer .cart-free-shipping-bar {
    margin-top: -20px;   
  }
}
.cart-total-amount {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  font-size: 18px;        /* desktop */
  font-weight: 600;
}
@media (max-width: 749px) {
  .cart-total-amount { font-size: 16px; }   /* mobile */
}
.cart-total-compare {
  font-size: 0.8em;
  font-weight: 400;
  color: #6b6b6b;
  text-decoration: line-through;
}
.line-item .line-item__line-price {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}
.line-item__compare-price {
  color: #6b6b6b;
  text-decoration: line-through;
}
.line-item .line-item__media img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
/* Cart drawer footer: white with grey top border */
#cart-drawer .cart-drawer__footer-wrapper {
  background: #ffffff !important;
  border-top: 1px solid #E5E3E0 !important;
}
#cart-drawer .cart-drawer__footer-inner {
  background: transparent !important;
}
#cart-drawer .cart-drawer__cross-sell button,
#cart-drawer .cart-drawer__cross-sell .button,
#cart-drawer .cart-drawer__cross-sell button-content,
#cart-drawer .cart-drawer__cross-sell .button__content {
  font-weight: var(--heading-font-weight, 600) !important;
}
@media (max-width: 749px) {
  #cart-drawer .line-item__line-price {
    flex-shrink: 0;
    white-space: nowrap;
    margin-left: 12px;
  }
  #cart-drawer .line-item__title,
  #cart-drawer .line-item__title a {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
.cart-drawer__cross-sell { border-top: none !important; }
.cart-drawer__cross-sell {
  margin-top: -28px !important;   /* more negative = tighter */
}
.cart-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  margin-left: 6px;
  border-radius: 999px;
  background: #eeeeee;   /* adjust color */
  color: #000000ff;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  vertical-align: middle;
}
#cart-drawer [slot="header"] svg {
  display: none !important;
}
#cart-drawer::part(header) {
  display: flex;
  align-items: center;
}
#cart-drawer::part(close-button) {
  order: 1;
  margin-left: auto;   
}
#cart-drawer [slot="header"] {
  order: 0;
  justify-content: flex-start;
  text-align: left;
}
#cart-drawer::part(header) {
  display: flex !important;
  align-items: center !important;   
}
#cart-drawer::part(close-button) {
  order: 1;
  margin-left: auto;                
}
#cart-drawer [slot="header"] {
  order: 0;
  display: flex;
  align-items: center;
}
#cart-drawer [slot="header"] h2 {
  display: inline-flex;
  align-items: center;              
  margin: 0;                        
  line-height: 1;
}
@media (min-width: 750px) {
  #cart-drawer::part(header) {
    padding-left: 32px;
    padding-right: 32px;
  }
  #cart-drawer .cart-free-shipping-bar {
    margin-top: -32px;
  }
}
@media (max-width: 749px) {
  #cart-drawer::part(header) {
    padding-left: 20px;
    padding-right: 20px;
  }
  #cart-drawer .cart-free-shipping-bar {
    margin-top: -20px;   
  }
}
.cart-total-amount {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  font-size: 18px;        /* desktop */
  font-weight: 600;
}
@media (max-width: 749px) {
  .cart-total-amount { font-size: 16px; }   /* mobile */
}
.cart-total-compare {
  font-size: 0.8em;
  font-weight: 400;
  color: #6b6b6b;
  text-decoration: line-through;
}
.line-item .line-item__line-price {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}
.line-item__compare-price {
  color: #6b6b6b;
  text-decoration: line-through;
}
.line-item .line-item__media img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
/* Cart drawer footer: white with grey top border */
#cart-drawer .cart-drawer__footer-wrapper {
  background: #ffffff !important;
  border-top: 1px solid #E5E3E0 !important;
}
#cart-drawer .cart-drawer__footer-inner {
  background: transparent !important;
}
#cart-drawer .cart-drawer__cross-sell button,
#cart-drawer .cart-drawer__cross-sell .button,
#cart-drawer .cart-drawer__cross-sell button-content,
#cart-drawer .cart-drawer__cross-sell .button__content {
  font-weight: var(--heading-font-weight, 600) !important;
}
@media (max-width: 749px) {
  #cart-drawer .line-item__line-price {
    flex-shrink: 0;
    white-space: nowrap;
    margin-left: 12px;
  }
  #cart-drawer .line-item__title,
  #cart-drawer .line-item__title a {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
 
/* Klarna on-site messaging — borderless, left-aligned, tight under price */
klarna-placement::part(osm-container) {
  border: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
  min-height: 0 !important;
}
klarna-placement::part(osm-message) {
  text-align: left !important;
}
klarna-placement::part(osm-legal) {
  display: none !important;
}
klarna-placement {
  display: block !important;
  margin-top: -24px !important;
  margin-bottom: 0 !important;
}
 
/* Klarna / payment terms — Stretch (native <payment-terms> element) */
.product-info__block-item:has(payment-terms) {
  height: auto !important;
  min-height: 0 !important;
}
payment-terms.payment-terms {
  display: block !important;
  text-align: left !important;
}
payment-terms.payment-terms .shopify-payment-terms__link,
payment-terms.payment-terms a {
  text-align: left !important;
}
.product-card on-sale-badge,
.product-card .badge--on-sale,
.product-list on-sale-badge,
.product-list .badge--on-sale {
  display: none !important;
}
/* Price — MAIN PRODUCT PRICE BLOCK ONLY.
   Scoped to the price block so complementary products, product cards
   and the cart keep their normal price styling. */
.product-info__block-item[data-block-type="price"] .price-list sale-price {
  font-weight: 600 !important;
}
.product-info__block-item[data-block-type="price"] .price-list compare-at-price {
  font-weight: 400 !important;
}
 
/* Mobile only — bump price up */
@media (max-width: 749px) {
  .product-info__block-item[data-block-type="price"] .price-list sale-price {
    font-size: 26px !important;
    line-height: 1.1 !important;
  }
  .product-info__block-item[data-block-type="price"] .price-list compare-at-price {
    font-size: 19px !important;
  }
  .product-info__block-item[data-block-type="price"] .price-list {
    align-items: baseline !important;
  }
}
/* Legal disclosures: same rounded, inset card look as the footer */
.shopify-section--disclosures,
[id^="shopify-section-"][id*="disclosures"] {
  margin: 0 10px 10px !important;   /* mobile: side inset + gap above the footer */
  border-radius: 20px !important;   /* same corner rounding as the footer */
  overflow: hidden !important;      /* dark background follows the rounded corners */
}
@media (min-width: 750px) {
  .shopify-section--disclosures,
  [id^="shopify-section-"][id*="disclosures"] {
    margin: 0 4px 8px !important;   /* desktop: tighter inset, like the footer */
  }
}
/* ===== Cart drawer tweaks ===== */
 
/* 1. Item title: balance the lines on mobile so a single word ("3") never drops alone */
@media (max-width: 749px) {
  #cart-drawer line-item .product_title,
  #cart-drawer line-item .product_title a {
    text-wrap: balance;
  }
}
 
/* 2. Item price: a bit larger (strike-through price scales with it) */
#cart-drawer .line-item__line-price {
  font-size: 14px !important;
}
@media (max-width: 749px) {
  #cart-drawer .line-item__line-price {
    font-size: 14px !important;
  }
}
 
/* 3. Free-shipping message: 16px (the CARRELLO title is not touched) */
#cart-drawer .cart-free-shipping-bar,
#cart-drawer .cart-free-shipping-bar :is(p, span, div) {
  font-size: 14px !important;
}
/* Cart drawer: item title 16px */
html body #cart-drawer line-item .product_title,
html body #cart-drawer line-item .product_title a {
  font-size: 16px !important;
}
/* Cart drawer cross-sell button: same text weight as CHECKOUT (500).
   The doubled #cart-drawer ID outranks every class-based weight rule */
#cart-drawer#cart-drawer .cart-drawer__cross-sell .button,
#cart-drawer#cart-drawer .cart-drawer__cross-sell .button *,
#cart-drawer#cart-drawer .cart-drawer__cross-sell button[type="submit"],
#cart-drawer#cart-drawer .cart-drawer__cross-sell button[type="submit"] * {
  font-weight: 500 !important;
}
/* Cart drawer cross-sell button: hover slide-up animation */
#cart-drawer#cart-drawer .cart-drawer__cross-sell .button {
  overflow: hidden !important;   /* hides the waiting copy of the text */
}
#cart-drawer .cart-drawer__cross-sell .button .gp-anim {
  display: inline-block;
  position: relative;
  transition: transform 0.2s ease-in-out;
}
#cart-drawer .cart-drawer__cross-sell .button .gp-anim::before {
  content: attr(data-text);
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + var(--gp-offset, 12px));
}
#cart-drawer .cart-drawer__cross-sell .button:hover:not([aria-busy="true"]) .gp-anim {
  transform: translateY(calc(-100% - var(--gp-offset, 12px)));
}
@media (prefers-reduced-motion: reduce) {
  #cart-drawer .cart-drawer__cross-sell .button .gp-anim { transition: none; }
}
 
/* ===== Complementary products (PDP): equal-height cards, aligned price + button =====
   .complementary-products only exists on the product page; the cart drawer
   cross-sell uses a different carousel, so it is not affected.
   "html body" raises specificity above the theme's own carousel/card rules. */
 
/* Carousel defaulted to align-items: start -> each card only as tall as its content */
html body scroll-carousel.complementary-products {
  align-items: stretch !important;
}
 
/* Card = [image link, info stack]: the info stack fills the remaining height */
html body .complementary-products .product-cross-sell {
  grid-template-rows: auto 1fr !important;
}
html body .complementary-products .product-cross-sell > .v-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  align-self: stretch !important;
  height: 100% !important;
}
 
/* Price (with the button right below it) pushed to the bottom of every card,
   so price and button line up across cards whatever the title length */
html body .complementary-products .product-cross-sell > .v-stack > price-list,
html body .complementary-products .product-cross-sell > .v-stack > :has(price-list) {
  margin-top: auto !important;
}
 
/* Button row spans the card (width/alignment only; never touches display,
   which would open the hidden quick-add drawer inside each card) */
html body .complementary-products .product-cross-sell > .v-stack > :has(> .button),
html body .complementary-products .product-cross-sell > .v-stack > :has(> button[type="submit"]) {
  align-self: stretch !important;
  text-align: center !important;
}
 
/* Same, longer button on every card (overrides width: max-content above) */
html body .complementary-products .product-cross-sell .button,
html body .complementary-products .product-cross-sell button[type="submit"] {
  width: 200px !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}
 
/* Mobile: one wide card plus a peek of the next (theme default is 50% each) */
@media (max-width: 749px) {
  html body scroll-carousel.complementary-products {
    grid-auto-columns: 80% !important;
  }
}
/* Complementary products (PDP) button: hover slide-up animation */
html body .complementary-products .product-cross-sell .button {
  overflow: hidden !important;   /* hides the waiting copy of the text */
}
.complementary-products .product-cross-sell .button .gp-anim {
  display: inline-block;
  position: relative;
  transition: transform 0.2s ease-in-out;
}
.complementary-products .product-cross-sell .button .gp-anim::before {
  content: attr(data-text);
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + var(--gp-offset, 12px));
}
.complementary-products .product-cross-sell .button:hover:not([aria-busy="true"]) .gp-anim {
  transform: translateY(calc(-100% - var(--gp-offset, 12px)));
}
@media (prefers-reduced-motion: reduce) {
  .complementary-products .product-cross-sell .button .gp-anim { transition: none; }
}
/* ===== Cart drawer: long prices (e.g. AED) stack instead of crushing the title ===== */

/* New price on top, old price underneath, right-aligned.
   Each price stays on one line, so the price column is only as wide as one price */
#cart-drawer#cart-drawer .line-item__line-price {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 2px !important;
  white-space: nowrap !important;
  font-weight: 600 !important;   /* new price slightly bolder */
}

/* Old (struck-through) price: regular weight, a touch smaller, brand grey */
#cart-drawer#cart-drawer .line-item__line-price :is(compare-at-price, s, del) {
  font-weight: 400 !important;
  font-size: 0.85em !important;
  color: #8A8681 !important;
  text-decoration-thickness: 1px !important;
}

/* Title: break between words, never inside a word ("GAR / D") */
#cart-drawer#cart-drawer line-item .product_title,
#cart-drawer#cart-drawer line-item .product_title a {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* ===== Cart drawer total: old total small on the LEFT, new total on the right ===== */
#cart-drawer#cart-drawer .cart-total-amount {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  white-space: nowrap !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #282521 !important;
}
#cart-drawer#cart-drawer .cart-total-compare {
  display: inline !important;    /* undoes any earlier rule that hid it */
  order: 1 !important;           /* old total after the new total */
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #8A8681 !important;
  text-decoration: line-through !important;
  text-decoration-thickness: 1px !important;
}
@media (max-width: 749px) {
  #cart-drawer#cart-drawer .cart-total-amount { font-size: 16px !important; gap: 8px !important; }
  #cart-drawer#cart-drawer .cart-total-compare { font-size: 12px !important; }
}
/* Twini chat row: stay hidden until Twini's script has built it (no unstyled flash).
   Sizing and position are handled entirely by the block's Custom CSS. */
twini-chat-with-product:not(:defined) {
  visibility: hidden;
}
/* ===== Product page Add to cart: 48px tall =====
   Height is set through the theme's own padding variable, which keeps the hover
   text animation in sync. The padding is calculated from the text's line height,
   so the result is exactly 48px whatever the font size. */

html body .product-info buy-buttons .button,
html body .product-info buy-buttons .button__content {
  --button-padding-block: 15.5px !important;   /* fallback for older browsers: ~48px with 14px text */
}

@supports (height: 1lh) {
  html body .product-info buy-buttons .button,
  html body .product-info buy-buttons .button__content {
    --button-padding-block: calc((48px - 1lh) / 2) !important;   /* exactly 48px */
  }
}