/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */
#zoid-paypal-message-uid_439c4ebc20_mtc6ndg6nti > iframe{
 display: none;
}

/* BB Design Milano — luxury accessibility layer, 2026-08-20 */
:root {
  --bb-black: #17130f;
  --bb-black-soft: #241d18;
  --bb-wood: #56331f;
  --bb-wood-dark: #3a2115;
  --bb-bronze: #b98245;
  --bb-gold: #e0b36d;
  --bb-beige: #ead3aa;
  --bb-beige-soft: #f2e2c5;
  --bb-surface: #fbf3e5;
  --bb-text: #2b2119;
  --bb-muted: #5d5146;
  --bb-line: #896541;
  --bb-success: #235c38;
  --bb-danger: #702b25;
  --bb-focus: #efb858;
}

html { scroll-behavior: smooth; }
body {
  background: var(--bb-beige);
  color: var(--bb-text);
  font-size: 16px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

#wrapper,
#content-wrapper,
.page-home,
.page-content,
.product-container,
.tabs,
.card,
.card-block { background-color: transparent; }

p, li, label, .label, .help-block, .form-control-comment,
.product-description, .product-information, .cms-page { color: var(--bb-text); }
.text-muted, small, .small, .product-reference, .breadcrumb { color: var(--bb-muted) !important; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.page-header h1, .products-section-title {
  color: var(--bb-black);
  font-weight: 700;
  letter-spacing: .025em;
  line-height: 1.25;
}

a { color: var(--bb-wood-dark); text-decoration-thickness: .08em; text-underline-offset: .15em; }
a:visited { color: #543044; }
a:hover, a:active { color: #1f120c; text-decoration: underline; }
.header-nav .phone span, header .phone span { color: #f6e7ce !important; }
#footer .phone span { color: #f1dfc3 !important; }
.psgdpr_consent_message, .psgdpr_consent_message span:not(#bb-contrast-anchor) { color: #3d332b !important; }
#footer .psgdpr_consent_message span:not(#bb-contrast-anchor) { color: #f1dfc3 !important; }
.psgdpr_consent_message a, .psgdpr_consent_message a:visited { color: #4c2b19 !important; text-decoration: underline; font-weight: 700; }

:where(a, button, input, select, textarea, [role="button"], [tabindex]):focus,
:where(a, button, input, select, textarea, [role="button"], [tabindex]):focus-visible {
  outline: 3px solid var(--bb-focus) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 2px var(--bb-black) !important;
}

.btn, button, input[type="button"], input[type="submit"],
.button, .add-to-cart, .add-cart, .view-more, .link-view {
  border: 2px solid var(--bb-wood-dark);
  border-radius: 2px;
  background: var(--bb-wood);
  color: #fff !important;
  font-weight: 700;
  letter-spacing: .045em;
  min-height: 42px;
  text-shadow: none;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .15s ease;
}
.btn:hover, button:hover, input[type="button"]:hover, input[type="submit"]:hover,
.button:hover, .add-to-cart:hover, .add-cart:hover, .view-more:hover, .link-view:hover {
  background: var(--bb-black);
  border-color: var(--bb-black);
  color: #fff !important;
  text-decoration: none;
}
.btn:active, button:active, input[type="button"]:active, input[type="submit"]:active,
.button:active, .add-to-cart:active, .add-cart:active {
  background: #080706;
  border-color: var(--bb-gold);
  transform: translateY(1px);
}
.btn:disabled, button:disabled, input:disabled, .disabled, .btn.disabled {
  background: #d0c2aa !important;
  border-color: #776b5b !important;
  color: #51483e !important;
  cursor: not-allowed;
  opacity: 1;
}
.btn-outline-primary, .btn-outline-secondary, .btn-secondary {
  background: var(--bb-surface);
  border-color: var(--bb-wood-dark);
  color: var(--bb-wood-dark) !important;
}
.btn-outline-primary:hover, .btn-outline-secondary:hover, .btn-secondary:hover {
  background: var(--bb-wood-dark);
  color: #fff !important;
}

.form-control, input[type="text"], input[type="email"], input[type="password"],
input[type="number"], input[type="tel"], textarea, select {
  background: #fffaf0;
  border: 2px solid #6e5741;
  color: var(--bb-black);
  min-height: 44px;
}
::placeholder { color: #6b5c4e !important; opacity: 1; }
.input-group-text, .input-group-addon { background: #dfc69d; border-color: #6e5741; color: var(--bb-black); }
.products-sort-order .select-title, .products-sort-order .select-title span {
  color: var(--bb-black) !important;
  background: #fffaf0 !important;
  border-color: #6f5438 !important;
}

.alert, .message, .notification { border: 2px solid currentColor; font-weight: 600; }
.alert-success { background: #e2f1e7; border-color: var(--bb-success); color: #173d27; }
.alert-danger, .alert-error { background: #f7e2df; border-color: var(--bb-danger); color: #541f1a; }
.alert-warning { background: #fff0c7; border-color: #755015; color: #51370e; }
.alert-info { background: #e2edf2; border-color: #315c70; color: #214253; }

/* Header and navigation */
#header, #header .header-nav, #header .header-top, #header .menu,
#_desktop_top_menu, .top-menu { background: var(--bb-black); color: #f4e8d5; }
#header a, #header a:visited, #header .top-menu a, #header .header-nav a { color: #f4e8d5; }
#header a:hover, #header .top-menu a:hover { color: var(--bb-gold); text-decoration: none; }
#header .header-nav { border-bottom: 1px solid #785a3a; }
#header .top-menu a { font-weight: 650; letter-spacing: .055em; }
#header .sub-menu { background: var(--bb-black-soft); border: 1px solid #8a6845; }
#header .sub-menu a { color: #f2e5d1; }
#search_widget input { background: #fffaf0; color: var(--bb-black); }

/* Homepage: eliminate dead space and turn the hidden category carousel into a balanced grid. */
#index .topcolumn-section { margin-bottom: 0; }
#index .headerslider,
#index .headerslider .owl-stage-outer,
#index .headerslider .owl-stage,
#index .headerslider .owl-item,
#index .headerslider .header-slide,
#index .headerslider figure {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}
#index .headerslider { overflow: hidden; background: var(--bb-black); }
#index .headerslider .owl-item.active { width: 100% !important; }
#index .headerslider .headerslider-img { display: block; width: 100%; height: auto; object-fit: cover; }

#index #htmlbanners1 { margin: 34px auto 18px; }
#index #htmlbanners1 .htmlbanners1-inner,
#index #htmlbanners1 .owl-stage {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  width: 100% !important;
  transform: none !important;
}
#index #htmlbanners1 .owl-stage-outer { height: auto !important; overflow: visible; }
#index #htmlbanners1 .owl-item { width: auto !important; margin: 0 !important; }
#index #htmlbanners1 .top-banner {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0;
  padding: 0;
}
#index #htmlbanners1 .banner-link {
  overflow: hidden;
  border: 1px solid #8a6845;
  box-shadow: 0 8px 22px rgba(35, 22, 13, .18);
  min-height: 100%;
}
#index #htmlbanners1 .img-banner { aspect-ratio: 4 / 3; object-fit: cover; }
#index #htmlbanners1 .banner-description {
  background: rgba(20, 15, 11, .82);
  border-color: var(--bb-gold);
  color: #fff;
  min-width: 0;
  width: calc(100% - 20px);
}
#index #htmlbanners1 .banner-description p,
#index #htmlbanners1 .banner-description .content,
#index #htmlbanners1 .banner-description p:not(#bb-contrast-anchor) { color: #fff !important; font-weight: 700; margin: 0; }
#index #htmlbanners1 .owl-nav, #index #htmlbanners1 .owl-dots { display: none !important; }

#index #htmlbanners1 .bb-category-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}

/* Duplicate legacy promotional carousel: content is already represented by the laboratory section. */
#index #htmlbanners2 { display: none !important; }
#index .productstabs-section { margin-top: 34px !important; }
#index .home-tabs, #index .featured-products, #index #custom-text { margin-top: 48px; }

/* Homepage editorial gallery */
#index #htmlbanners3 .htmlbanners3-inner,
#index #htmlbanners3 .owl-stage {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
  width: 100% !important;
  transform: none !important;
  align-items: stretch;
}
#index #htmlbanners3 .owl-stage-outer { overflow: visible; height: auto !important; }
#index #htmlbanners3 .owl-item { width: auto !important; margin: 0 !important; }
#index #htmlbanners3 .home-banner { width: 100% !important; max-width: none; margin: 0; padding: 0; }
#index #htmlbanners3 .banner-link { height: 100%; background: var(--bb-black-soft); overflow: hidden; }
#index #htmlbanners3 .img-banner { width: 100%; height: 100%; min-height: 320px; max-height: 620px; object-fit: cover; }
#index #htmlbanners3 .owl-nav, #index #htmlbanners3 .owl-dots { display: none !important; }
#index #htmlbanners3 .bb-luxury-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
}
.bb-luxury-gallery {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 26px !important;
  width: min(1140px, calc(100% - 32px)) !important;
  margin: 48px auto 0 !important;
}
.bb-luxury-gallery > .home-banner {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.bb-luxury-gallery .banner-link { height: 100%; overflow: hidden; }
.bb-luxury-gallery .img-banner { width: 100%; height: 100%; object-fit: cover; }

#index .featured-products .js-carousel-products,
#index .featured-products .owl-stage {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  width: 100% !important;
  transform: none !important;
  height: auto !important;
}
#index .featured-products .owl-wrapper-outer { width: 100% !important; overflow: visible !important; height: auto !important; }
#index .featured-products .owl-wrapper {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  height: auto !important;
  transform: none !important;
}
#index .featured-products .owl-wrapper > .owl-item { width: auto !important; height: auto !important; }
#index .featured-products .owl-wrapper > .owl-item:nth-child(n+5) { display: none !important; }
#index .featured-products .js-carousel-products {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
#index .featured-products .owl-stage-outer { height: auto !important; overflow: visible !important; }
#index .featured-products .owl-item { display: block !important; width: auto !important; margin: 0 !important; }
#index .featured-products .owl-item.cloned { display: none !important; }
#index .featured-products .owl-nav, #index .featured-products .owl-dots { display: none !important; }

#index #custom-text {
  background: var(--bb-surface);
  border: 1px solid #9b754d;
  box-shadow: 0 12px 30px rgba(51, 32, 18, .15);
  padding: 32px;
}
#index #custom-text img { max-width: 100%; height: auto; }

/* Product cards and category grids */
.product-miniature .thumbnail-container,
.product-miniature .thumbnail-wrapper,
.featured-products .product-miniature,
.product-accessories .product-miniature {
  background: var(--bb-surface);
  border-radius: 3px;
}
.product-miniature .thumbnail-container {
  border: 1px solid #9b754d;
  box-shadow: 0 7px 18px rgba(45, 28, 16, .13);
  overflow: hidden;
}
.product-miniature .product-description { padding: 14px 16px 18px; }
.product-miniature .product-title,
.product-miniature .product-title a { color: var(--bb-black); font-weight: 700; line-height: 1.35; }
.price, .current-price, .product-price, .product-price-and-shipping .price {
  color: var(--bb-wood-dark) !important;
  font-weight: 800;
}
.product-miniature .link-view, .product-miniature .link-view span,
#page .product-miniature [id^="product-list-cart-id-product"] span,
#page .product-miniature .link-view span { color: #fff !important; }
.regular-price { color: #62574c !important; }
.product-availability, .product-available { color: var(--bb-success) !important; font-weight: 700; }
.product-unavailable { color: var(--bb-danger) !important; font-weight: 700; }
.product-cover img, .product-images img, .category-cover img { background: var(--bb-surface); object-fit: contain; }

#product .product-container,
#cart .cart-grid-body, #cart .cart-grid-right,
#checkout .checkout-step,
#authentication .login-form,
#contact .contact-form,
#stores .store-item,
.page-customer-account #content,
.page-addresses .address,
.cms-page .page-content {
  background: var(--bb-surface);
  border: 1px solid #9b754d;
  box-shadow: 0 10px 26px rgba(47, 29, 16, .12);
  padding: 28px;
}

.tabs .nav-tabs .nav-link { color: var(--bb-wood-dark); border-bottom: 3px solid transparent; font-weight: 700; }
.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover { color: var(--bb-black); border-color: var(--bb-bronze); }
.breadcrumb a { color: var(--bb-wood-dark); text-decoration: underline; }
.pagination a, .pagination span { min-width: 38px; min-height: 38px; color: var(--bb-black); border: 1px solid #74583c; background: var(--bb-surface); }
.pagination .current a, .pagination .active a { background: var(--bb-wood); color: #fff; }

/* Cart, checkout and account */
.cart-summary, .cart-overview, .checkout-step, .order-confirmation-table { color: var(--bb-text); }
.cart-summary-line .value, .cart-total .value, .product-line-info .value { color: var(--bb-black); font-weight: 700; }
.custom-radio input[type="radio"] + span, .custom-checkbox input[type="checkbox"] + span { border: 2px solid #5d4936; background: #fffaf0; }
.custom-radio input[type="radio"]:checked + span, .custom-checkbox input[type="checkbox"]:checked + span { background: var(--bb-wood); border-color: var(--bb-black); }

/* Footer */
#footer, footer, .footer-container {
  background: var(--bb-black) !important;
  color: #e8dcc9 !important;
  font-size: 15px;
  line-height: 1.6;
}
/* The first footer hook duplicates the laboratory block already present in the page body. */
#footer > .container:first-child { display: none !important; }
#footer .container, footer .container { padding-top: 18px; padding-bottom: 18px; }
#footer h1, #footer h2, #footer h3, #footer h4, #footer h5,
footer h1, footer h2, footer h3, footer h4, footer h5 {
  color: #fff4e2 !important;
  font-size: 16px;
  letter-spacing: .055em;
  margin-bottom: 16px;
}
#footer .links .title .h3, footer .links .title .h3,
#footer .block_newsletter .title .h3, footer .block_newsletter .title .h3 { color: #fff4e2 !important; }
#footer p, #footer li, #footer span, #footer label,
footer p, footer li, footer span, footer label { color: #e8dcc9 !important; }
#footer a, #footer a:visited, footer a, footer a:visited { color: #f1dfc3 !important; font-size: 15px; line-height: 1.7; }
#footer a:hover, footer a:hover { color: #fff !important; text-decoration: underline; }
#footer .block-contact li, footer .block-contact li { padding-bottom: 8px; }
#footer .footer-after, footer .footer-after { border-top: 1px solid #7b5d3d; margin-top: 24px; padding-top: 20px; }
#footer input[type="email"], footer input[type="email"] { background: #fffaf0; color: var(--bb-black); border-color: var(--bb-gold); }
#footer button, footer button { background: var(--bb-gold); color: var(--bb-black) !important; border-color: #f3d39e; }
#page .owl-prev:not(#bb-contrast-anchor), #page .owl-next:not(#bb-contrast-anchor) { background: #17130f !important; color: #fff !important; border-color: var(--bb-gold) !important; opacity: 1 !important; }
.buttonText:not(#bb-contrast-anchor) { color: #fff !important; }

@media (min-width: 992px) {
  #footer .footer-one > .container > .row {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 26px;
    align-items: start;
  }
  #footer .footer-one .col-lg-4.links,
  #footer .footer-one .col-lg-4.links > .row { display: contents !important; }
  #footer .footer-one .wrapper {
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    padding: 0 !important;
  }
}

/* Keep the chat available without covering content. */
#widgetButtonFrame { right: 18px !important; bottom: 18px !important; }
#widgetPopupFrame { right: 18px !important; bottom: 88px !important; max-width: calc(100vw - 36px) !important; }

@media (max-width: 991px) {
  body { font-size: 16px; }
  #index #htmlbanners1 .htmlbanners1-inner,
  #index #htmlbanners1 .owl-stage,
  #index #htmlbanners1 .bb-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #index #htmlbanners3 .htmlbanners3-inner,
  #index #htmlbanners3 .owl-stage { gap: 18px; }
  #widgetPopupFrame { display: none !important; }
  #footer .links .title, footer .links .title { color: #fff4e2 !important; border-bottom: 1px solid #6e553b; padding: 12px 0; }
}

@media (max-width: 767px) {
  #index #htmlbanners1 { margin-top: 22px; padding: 0 14px; }
  #index #htmlbanners1 .htmlbanners1-inner,
  #index #htmlbanners1 .owl-stage,
  #index #htmlbanners1 .bb-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  #index #htmlbanners1 .banner-description { font-size: 12px; padding: 10px 6px; }
  #index #htmlbanners3 .htmlbanners3-inner,
  #index #htmlbanners3 .owl-stage,
  #index #htmlbanners3 .bb-luxury-gallery,
  .bb-luxury-gallery { grid-template-columns: 1fr !important; gap: 22px !important; }
  #index .featured-products .js-carousel-products,
  #index .featured-products .owl-stage,
  #index .featured-products .owl-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  #index #htmlbanners3 .img-banner { min-height: 0; max-height: none; height: auto; }
  #index #custom-text { padding: 22px 18px; }
  #index .productstabs-section, #index .home-tabs, #index .featured-products { margin-top: 30px !important; }
  .product-miniature .product-title, .product-miniature .product-title a { font-size: 14px; }
  .product-miniature .product-description { padding: 12px; }
  #product .product-container,
  #cart .cart-grid-body, #cart .cart-grid-right,
  #checkout .checkout-step,
  #authentication .login-form,
  #contact .contact-form,
  #stores .store-item,
  .page-customer-account #content,
  .cms-page .page-content { padding: 20px 16px; }
  .btn, button, input[type="button"], input[type="submit"] { min-height: 46px; }
  #widgetButtonFrame { right: 10px !important; bottom: 10px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Visual refinement pass: remove legacy animation blanks and unify the luxury component language. */
.wow { visibility: visible !important; opacity: 1 !important; animation: none !important; }
body:not(#index) .bb-luxury-gallery { display: none !important; }
#smartsupp-widget-container > div:has(> #widgetPopupFrame) { display: none !important; }
.form-footer {
  background: transparent !important;
  color: var(--bb-text) !important;
  padding: 18px 0 0 !important;
  text-align: right !important;
}
.form-footer .btn { min-width: 170px; }

.product-miniature .thumbnail-container,
.product-miniature .product-description {
  background: #f8ecd8 !important;
}
.product-miniature .thumbnail-container {
  border: 1px solid rgba(94, 62, 36, .38) !important;
  border-radius: 3px !important;
  box-shadow: 0 10px 28px rgba(39, 25, 15, .10) !important;
  overflow: hidden;
}
.product-miniature:hover .thumbnail-container {
  border-color: #9a6a3d !important;
  box-shadow: 0 14px 34px rgba(39, 25, 15, .17) !important;
  transform: translateY(-2px);
}
.product-miniature img { background: #f7efe2; }
.product-miniature .product-title,
.product-miniature .product-title a { letter-spacing: .025em; line-height: 1.38; }

#index #htmlbanners5 {
  margin: 56px auto 18px;
  padding: 34px 0 24px;
  border-top: 1px solid rgba(94, 62, 36, .42);
  border-bottom: 1px solid rgba(94, 62, 36, .28);
}
#index #htmlbanners5 .headline-section { margin-bottom: 26px; }
#index #htmlbanners5 .feature-item-inner {
  height: 100%;
  background: rgba(248, 236, 216, .72);
  border: 1px solid rgba(94, 62, 36, .30);
  padding: 16px;
}
#index #htmlbanners5 .img-banner { background: #f7efe2; object-fit: contain; }
#index #htmlbanners5 h4 { font-size: 17px; line-height: 1.35; margin: 14px 0 0; }

#index .productstabs-section,
#index .featured-products {
  padding-top: 30px;
  padding-bottom: 34px;
}
#index .products-section-title,
#index .headline-section {
  font-size: 22px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#category .subcategory-image a,
#category #subcategories li,
#category .block-categories,
#category #left-column .block {
  background: rgba(248, 236, 216, .68) !important;
  border-color: rgba(94, 62, 36, .35) !important;
}

#product .product-container,
#product .tabs,
#cart .cart-grid-body,
#cart .cart-grid-right,
#checkout .checkout-step,
#authentication .login-form,
#contact .contact-form,
#stores .store-item,
.page-customer-account #content,
.cms-page .page-content {
  background: rgba(248, 236, 216, .78) !important;
  border: 1px solid rgba(94, 62, 36, .34) !important;
  box-shadow: 0 14px 36px rgba(39, 25, 15, .10) !important;
}

#product #main > .row {
  background: rgba(242, 226, 197, .64);
  border: 1px solid rgba(94, 62, 36, .30);
  box-shadow: 0 18px 44px rgba(39, 25, 15, .09);
  padding: 28px 18px 34px;
  margin-top: 22px;
}
#product #customization {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: #f8ecd8;
  border: 1px solid rgba(94, 62, 36, .36);
  padding: 20px;
  margin: 20px 0 26px;
}
#product #customization p { font-weight: 650; margin-bottom: 14px; }
#product #customization label { display: block; font-weight: 700; margin-bottom: 8px; }
#product #customization textarea { min-height: 104px; resize: vertical; }
#product .product-actions {
  background: rgba(248, 236, 216, .72);
  border-top: 1px solid rgba(94, 62, 36, .34);
  border-bottom: 1px solid rgba(94, 62, 36, .34);
  padding: 22px 18px;
}
#product #block-reassurance { margin-top: 26px; }
#product #block-reassurance ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
#product #block-reassurance li { background: #f8ecd8; border: 1px solid rgba(94, 62, 36, .30); }

@media (min-width: 992px) {
  #product #main > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 30px;
    align-items: start;
  }
  #product #main > .row > .col-md-6 { width: auto; max-width: none; padding: 0; }
  #product #main > .row > .col-md-6:first-child { grid-column: 1; grid-row: 1 / span 6; }
  #product #main > .row > .col-md-6:nth-child(2),
  #product #main .product-information { display: contents; }
  #product #main > .row > .col-md-6:nth-child(2) > h1 { grid-column: 2; grid-row: 1; }
  #product #main .product-prices { grid-column: 2; grid-row: 2; }
  #product [id^="product-description-short-"] { grid-column: 2; grid-row: 3; }
  #product #customization { grid-column: 2; grid-row: 4; }
  #product .product-actions { grid-column: 2; grid-row: 5; }
  #product #block-reassurance { grid-column: 2; grid-row: 6; }
  #product .product-information > .tabs { grid-column: 1 / -1; grid-row: 7; margin-top: 30px; }
}

#cart .cart-grid { align-items: flex-start !important; }
#cart .cart-grid-body,
#cart .cart-grid-right,
#cart .cart-overview,
#cart .card { height: auto !important; min-height: 0 !important; }
#cart .cart-grid-body { padding-bottom: 30px; }
#cart .cart-summary { background: #f8ecd8 !important; border: 1px solid rgba(94, 62, 36, .34); }

body#checkout #page .checkout-step .step-title,
body#checkout #page .checkout-step .step-title .step-number,
body#checkout #page .checkout-step .step-title i {
  background: var(--bb-black) !important;
  color: #fff4e2 !important;
}
body#checkout #page .checkout-step.-current .step-title,
body#checkout #page .checkout-step.js-current-step .step-title {
  background: var(--bb-wood-dark) !important;
  border-left: 4px solid var(--bb-gold) !important;
}
#checkout .checkout-step .content { padding: 20px 28px 28px; }

@media (max-width: 767px) {
  #product #main > .row { padding: 18px 10px 24px; margin: 10px 0 0; }
  #product #block-reassurance ul { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  #index #htmlbanners5 { margin-top: 34px; padding: 24px 14px 18px; }
  #index #htmlbanners5 .feature-item-inner { padding: 10px; }
  #index #htmlbanners5 h4 { font-size: 15px; }
  .product-miniature:hover .thumbnail-container { transform: none; }
  .bb-luxury-gallery {
    width: calc(100vw - 24px) !important;
    max-width: none !important;
  }
  #smartsupp-widget-container > div:has(> #widgetButtonFrame) {
    transform: scale(.82);
    transform-origin: right bottom;
  }
}

/* Final mobile UX pass: preserve the approved luxury language while fixing composition. */
@media (max-width: 767px) {
  #index #htmlbanners1 .banner-link {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    min-height: 0;
  }
  #index #htmlbanners1 .img-banner {
    display: block;
    width: 100%;
    height: 100% !important;
    aspect-ratio: auto;
    object-fit: cover;
  }
  #index #htmlbanners1 .banner-description {
    inset: auto 0 0 0 !important;
    width: 100% !important;
    min-height: 48px;
    padding: 18px 8px 9px !important;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background: linear-gradient(to top, rgba(13, 10, 8, .54) 0, rgba(13, 10, 8, .26) 58%, transparent 100%) !important;
    border: 0 !important;
    top: auto !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
  }
  #index #htmlbanners1 .banner-description p,
  #index #htmlbanners1 .banner-description .content {
    text-align: center;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .95), 0 0 8px rgba(0, 0, 0, .55);
    line-height: 1.28;
  }

  #index .productstabs-section .owl-wrapper-outer {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  #index .productstabs-section .owl-wrapper {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
  }
  #index .productstabs-section .owl-wrapper > .owl-item {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    transform: none !important;
  }
  #index .productstabs-section .owl-wrapper > .owl-item:nth-child(n+5) { display: none !important; }
  #index .productstabs-section .owl-controls { display: none !important; }

  .product-miniature,
  .product-miniature .thumbnail-container { height: 100% !important; }
  .product-miniature .thumbnail-container {
    display: flex;
    flex-direction: column;
  }
  .product-miniature .thumbnail-wrapper {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f7efe2;
  }
  .product-miniature .product-thumbnail {
    display: block;
    width: 100%;
    height: 100%;
  }
  .product-miniature .product-thumbnail img,
  .product-miniature .thumbnail-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .product-miniature .product-description {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 158px;
  }
  .product-miniature .product-title {
    min-height: 3.9em;
    max-height: 3.9em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .product-miniature .product-price-and-shipping { margin-top: auto; }

  #index #htmlbanners5 .htmlbanners5-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px;
    width: 100% !important;
    margin: 0 !important;
  }
  #index #htmlbanners5 .feature-item {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }
  #index #htmlbanners5 .feature-item-inner {
    min-height: 112px;
    padding: 14px 18px !important;
    display: block;
  }
  #index #htmlbanners5 .banner-link {
    width: 100% !important;
    min-height: 84px;
    display: flex !important;
    align-items: center;
    gap: 16px;
    overflow: visible;
  }
  #index #htmlbanners5 .banner-link figure {
    width: 100%;
    margin: 0;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
  }
  #index #htmlbanners5 .img-banner {
    position: static !important;
    width: 72px !important;
    height: 72px !important;
    transform: none !important;
  }
  #index #htmlbanners5 .banner-description {
    position: static !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    transform: none !important;
    text-align: left;
  }
  #index #htmlbanners5 h4 { margin: 0; text-align: left; font-size: 16px; line-height: 1.35; }

  .product-miniature .highlighted-informations { display: none !important; }

  #index #page > div:has(> .bb-luxury-gallery) {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 12px !important;
  }
  #index .bb-luxury-gallery {
    width: 100% !important;
    max-width: 100% !important;
    margin: 42px auto 0 !important;
  }
  #index .bb-luxury-gallery > .home-banner {
    width: 100% !important;
    justify-self: center;
  }

  #footer .container, footer .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    padding-inline: 15px !important;
  }
  #footer .links .title, footer .links .title,
  #footer .block_newsletter .title, footer .block_newsletter .title {
    min-height: 48px;
    display: flex;
    align-items: center;
  }
  #footer a, footer a, #footer button, footer button { min-height: 44px; }
  #smartsupp-widget-container > div:has(> #widgetButtonFrame) {
    transform: scale(.72);
    transform-origin: right bottom;
  }
  #widgetButtonFrame { right: 8px !important; bottom: 12px !important; }
}

/* Final corrective pass: mobile density, purchasing controls and editorial media. */
@media (max-width: 767px) {
  #index .productstabs-section .owl-wrapper,
  #index .featured-products .owl-wrapper {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  #index .productstabs-section .owl-wrapper > .owl-item,
  #index .featured-products .owl-wrapper > .owl-item {
    width: 100% !important;
    max-width: 100% !important;
  }
  #index .productstabs-section .product-miniature .thumbnail-container,
  #index .featured-products .product-miniature .thumbnail-container {
    display: grid !important;
    grid-template-columns: minmax(132px, 43%) minmax(0, 1fr);
    align-items: stretch;
    min-height: 0 !important;
  }
  #index .productstabs-section .product-miniature .thumbnail-wrapper,
  #index .featured-products .product-miniature .thumbnail-wrapper {
    height: 100% !important;
    min-height: 152px;
    aspect-ratio: 1 / 1;
  }
  .product-miniature,
  .product-miniature .thumbnail-container { height: auto !important; }
  .product-miniature .product-description {
    flex: 0 1 auto;
    min-height: 0 !important;
    padding: 14px !important;
  }
  .product-miniature .product-title {
    min-height: 0 !important;
    max-height: none !important;
    margin-bottom: 10px;
    font-size: 14px !important;
    line-height: 1.38 !important;
    -webkit-line-clamp: 3;
  }
  .product-miniature .product-price-and-shipping {
    margin-top: 8px !important;
  }

  #product .product-quantity {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
  }
  #product .product-quantity .qty {
    display: block !important;
    padding: 0 !important;
  }
  #product .bootstrap-touchspin {
    display: flex !important;
    align-items: stretch;
    width: 146px !important;
    height: 48px;
  }
  #product .bootstrap-touchspin input.form-control {
    order: 2;
    width: 50px !important;
    height: 48px !important;
    padding: 0 4px !important;
    border: 1px solid rgba(94, 62, 36, .48) !important;
    text-align: center;
  }
  #product .bootstrap-touchspin .input-group-btn-vertical {
    display: contents !important;
  }
  #product .bootstrap-touchspin .btn.btn-touchspin {
    width: 48px !important;
    height: 48px !important;
    border: 1px solid var(--bb-wood-dark) !important;
    font-size: 0 !important;
    line-height: 46px !important;
  }
  #product .bootstrap-touchspin .touchspin-down { order: 1; }
  #product .bootstrap-touchspin .touchspin-up { order: 3; }
  #product .bootstrap-touchspin .touchspin-down::after {
    content: '\2212' !important;
    font: 700 24px/46px Arial, sans-serif !important;
  }
  #product .bootstrap-touchspin .touchspin-up::after {
    content: '+' !important;
    font: 700 22px/46px Arial, sans-serif !important;
  }
  #product .product-quantity .add {
    display: block !important;
    margin: 0 !important;
  }
  #product .product-quantity .add-to-cart {
    min-height: 48px;
    margin: 0 !important;
  }

  #product .tabs .nav-tabs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
  #product .tabs .nav-tabs .nav-item { width: auto !important; margin: 0 !important; }
  #product .tabs .nav-tabs .nav-link {
    min-height: 48px;
    padding: 11px 6px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
    text-align: center;
  }

  .cms-page .page-content,
  #product .product-description,
  #product .tab-content { font-size: 16px !important; line-height: 1.62 !important; }
  .cms-page .page-content p,
  .cms-page .page-content li,
  #product .product-description p,
  #product .product-description li,
  #product .tab-content p,
  #product .tab-content li {
    font-size: 16px !important;
    line-height: 1.62 !important;
    margin-bottom: 12px !important;
  }
  .cms-page .page-content h1, #product .tab-content h1 { font-size: 28px !important; line-height: 1.2 !important; margin: 24px 0 14px !important; }
  .cms-page .page-content h2, #product .tab-content h2 { font-size: 23px !important; line-height: 1.25 !important; margin: 22px 0 12px !important; }
  .cms-page .page-content h3, #product .tab-content h3 { font-size: 20px !important; line-height: 1.3 !important; margin: 20px 0 10px !important; }
  .cms-page .page-content h4, #product .tab-content h4 { font-size: 18px !important; line-height: 1.35 !important; margin: 18px 0 9px !important; }
  .cms-page .page-content img,
  #product .tab-content img,
  #index .bb-luxury-gallery img {
    display: block;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin-inline: auto !important;
  }
  .cms-page .page-content h1:has(> img),
  .cms-page .page-content h2:has(> img),
  .cms-page .page-content h3:has(> img),
  .cms-page .page-content h4:has(> img) {
    width: 100%;
    margin-inline: auto !important;
    text-align: center;
  }

  .btn-to-top {
    right: 14px !important;
    bottom: 82px !important;
    width: 32px !important;
    height: 32px !important;
    font-size: 15px !important;
    line-height: 32px !important;
    border-radius: 50%;
    z-index: 3;
  }
  #smartsupp-widget-container > div:has(> #widgetButtonFrame) {
    transform: scale(.68) !important;
    transform-origin: right bottom !important;
  }
}

@media (max-width: 374px) {
  #index .productstabs-section .product-miniature .thumbnail-container,
  #index .featured-products .product-miniature .thumbnail-container {
    grid-template-columns: minmax(120px, 41%) minmax(0, 1fr);
  }
  #product .product-quantity { flex-direction: column; }
}

/* BB Design Milano — desktop customer journey refinement, 2026-08-21 */

/* Header: make the cart unmistakably interactive without changing navigation. */
@media (min-width: 992px) {
  #_desktop_cart,
  #_desktop_cart .blockcart,
  #_desktop_cart .blockcart .header,
  #_desktop_cart .blockcart .header a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 62px;
    min-height: 52px;
    visibility: visible !important;
    opacity: 1 !important;
  }
  #_desktop_cart .blockcart .header a {
    position: relative;
    color: #fff4e2 !important;
    cursor: pointer !important;
    border: 1px solid transparent;
    border-radius: 3px;
  }
  #_desktop_cart .blockcart .header a:hover,
  #_desktop_cart .blockcart .header a:focus-visible {
    color: #efb858 !important;
    border-color: #9a6a3d;
    background: rgba(255,255,255,.05);
    text-decoration: none;
  }
  #_desktop_cart .blockcart .header a::after {
    content: 'Carrello';
    position: absolute;
    left: 50%;
    top: calc(100% - 5px);
    transform: translateX(-50%);
    font-size: 10px;
    line-height: 1;
    letter-spacing: .04em;
    color: #f6e7ce;
    white-space: nowrap;
  }
  #_desktop_cart .cart-products-count,
  #_desktop_cart .blockcart .header a > span:last-child {
    color: #17130f !important;
    background: #efb858 !important;
    border: 2px solid #17130f;
    border-radius: 999px;
    min-width: 22px;
    height: 22px;
    padding: 0 5px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 800;
  }

  /* Product quantity: one coherent control, aligned with the purchase CTA. */
  #product .product-add-to-cart .product-quantity {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 14px;
  }
  #product .product-add-to-cart .qty { margin: 0 !important; }
  #product .bootstrap-touchspin {
    display: grid !important;
    grid-template-columns: 62px 36px;
    grid-template-rows: 23px 23px;
    width: 98px !important;
    height: 46px !important;
  }
  #product .bootstrap-touchspin input.form-control,
  #product .bootstrap-touchspin #quantity_wanted {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 62px !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 8px !important;
    text-align: center;
    border: 1px solid #6e5741 !important;
    border-radius: 2px 0 0 2px !important;
  }
  #product .bootstrap-touchspin .input-group-btn-vertical {
    display: contents !important;
  }
  #product .bootstrap-touchspin .btn.btn-touchspin {
    position: static !important;
    width: 36px !important;
    height: 23px !important;
    min-height: 23px !important;
    padding: 0 !important;
    border: 1px solid #3a2115 !important;
    border-radius: 0 !important;
    line-height: 21px !important;
  }
  #product .bootstrap-touchspin .touchspin-up { grid-column: 2; grid-row: 1; }
  #product .bootstrap-touchspin .touchspin-down { grid-column: 2; grid-row: 2; }
  #product .product-quantity .add,
  #product .product-quantity .add-to-cart { margin: 0 !important; }
  #product .product-quantity .add-to-cart {
    min-height: 46px;
    padding-inline: 28px;
    box-shadow: 0 5px 14px rgba(39,25,15,.16);
  }

  /* Product reassurance: balanced two-column cards instead of narrow text strips. */
  #product #block-reassurance ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 24px 0 0 !important;
  }
  #product #block-reassurance li {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 124px;
    margin: 0 !important;
    padding: 0 !important;
    background: #fffaf2;
    border: 1px solid #c9aa7b;
  }
  #product #block-reassurance .block-reassurance-item {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    width: 100%;
    min-height: 122px;
    margin: 0 !important;
    padding: 14px !important;
  }
  #product #block-reassurance .block-reassurance-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    background: #f1e5d2;
  }
  #product #block-reassurance .block-reassurance-icon img {
    width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
  }
  #product #block-reassurance .block-reassurance-copy { display: block; min-width: 0; }
  #product #block-reassurance .block-title {
    display: block;
    margin: 0 0 5px !important;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 800;
  }
  #product #block-reassurance .block-description {
    display: block;
    font-size: 13px;
    line-height: 1.45;
  }
  #product #block-reassurance .block-description p { margin: 0 !important; font: inherit !important; color: inherit !important; }

  /* Homepage categories: concise caption band, photograph remains dominant. */
  #index #htmlbanners1 .banner-description {
    top: auto !important;
    bottom: 10px !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    min-height: 48px;
    padding: 9px 8px !important;
    transform: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(18,13,10,.76) !important;
    border: 1px solid rgba(224,179,109,.76) !important;
  }

  /* Product cards: regular media geometry and compact, aligned content. */
  .product-miniature .thumbnail-container { height: 100% !important; }
  .product-miniature .thumbnail-wrapper {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    min-height: 0 !important;
    overflow: hidden;
    background: #f7efe2;
  }
  .product-miniature .thumbnail-wrapper img,
  .product-miniature .product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .product-miniature .product-description { min-height: 152px; }
  .product-miniature .product-title {
    min-height: 3.7em;
    margin-bottom: 10px;
  }

  /* Editorial/CMS rhythm, including Consegna and video pages. */
  .cms-page .page-content {
    max-width: 1140px;
    margin-inline: auto;
  }
  .cms-page .page-content img,
  .cms-page .page-content video {
    display: block;
    max-width: 100% !important;
    height: auto !important;
    margin: 22px auto !important;
  }
  .cms-page .page-content video {
    width: min(100%, 920px);
    aspect-ratio: 16 / 9;
    background: #17130f;
    border: 1px solid #896541;
  }
  .cms-page .page-content > :is(h1,h2,h3,h4,p,ul,ol) { max-width: 980px; margin-left: auto; margin-right: auto; }
  body[id*='cms'] .page-content h1 { margin-bottom: 24px; }
}

/* Purchase feedback generated by the resilient cart client. */
.bbd-cart-feedback {
  position: fixed;
  z-index: 10020;
  right: 24px;
  top: 96px;
  width: min(390px, calc(100vw - 32px));
  padding: 18px 20px;
  background: #17130f;
  color: #fff4e2;
  border: 1px solid #efb858;
  box-shadow: 0 16px 38px rgba(0,0,0,.3);
}
.bbd-cart-feedback strong { display: block; color: #fff; margin-bottom: 6px; }
body#product .bbd-cart-feedback > span,
.bbd-cart-feedback > span { color: #fff4e2 !important; }
.bbd-cart-feedback a { color: #efb858 !important; font-weight: 800; text-decoration: underline; }
.bbd-cart-feedback button {
  position: absolute;
  right: 8px;
  top: 6px;
  min-width: 38px;
  min-height: 38px;
  padding: 0;
  background: transparent;
  border: 0;
  color: #fff !important;
}

/* Fixed controls must never compete with checkout actions. */
@media (min-width: 768px) {
  .btn-to-top { right: 24px !important; bottom: 96px !important; }
  #widgetButtonFrame { right: 22px !important; bottom: 20px !important; }
}

/* Safari/WebKit-safe media and grid behavior. */
img, video { -webkit-user-select: none; }
.product-miniature .thumbnail-wrapper,
#index #htmlbanners1 .banner-link { -webkit-transform: translateZ(0); }
@supports not (aspect-ratio: 1 / 1) {
  .product-miniature .thumbnail-wrapper { height: 220px; }
  .cms-page .page-content video { height: 0; padding-bottom: 56.25%; }
}

@media (max-width: 767px) {
  .bbd-cart-feedback { top: 76px; right: 16px; }
  #_mobile_cart .blockcart a { cursor: pointer; }

  /* Product tabs: two full-width controls, never competing for one row. */
  #product .tabs .nav-tabs {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 28px 0 22px !important;
  }
  #product .tabs .nav-tabs .nav-item {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #product .tabs .nav-tabs .nav-link {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100% !important;
    min-height: 48px;
    padding: 12px 16px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    text-align: left !important;
    border: 1px solid #6e5741 !important;
    border-radius: 2px !important;
  }
  #product .tabs .nav-tabs .nav-link::after {
    content: '\203a';
    flex: 0 0 auto;
    margin-left: 12px;
    font-size: 22px;
    line-height: 1;
  }
  #product .tabs .nav-tabs .nav-link.active::after { transform: rotate(90deg); }

  /* Quantity: preserve TouchSpin events while presenting [-] [1] [+]. */
  #product .product-add-to-cart .product-quantity {
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100%;
  }
  #product .product-add-to-cart .qty {
    align-self: flex-start;
    width: 140px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #product .bootstrap-touchspin {
    display: grid !important;
    grid-template-columns: 44px 52px 44px !important;
    grid-template-rows: 44px !important;
    align-items: stretch !important;
    width: 140px !important;
    height: 44px !important;
  }
  #product .bootstrap-touchspin .input-group-btn-vertical { display: contents !important; }
  #product .bootstrap-touchspin input.form-control,
  #product .bootstrap-touchspin #quantity_wanted {
    grid-column: 2 !important;
    grid-row: 1 !important;
    order: initial !important;
    width: 52px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    text-align: center !important;
    border: 1px solid #6e5741 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
    background: #fffaf2 !important;
    color: #17130f !important;
    font-size: 16px !important;
    line-height: 42px !important;
  }
  #product .bootstrap-touchspin .btn.btn-touchspin {
    position: static !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #3a2115 !important;
    border-radius: 0 !important;
    background: #2d2118 !important;
    color: #fff4e2 !important;
    font-size: 0 !important;
    line-height: 1 !important;
  }
  #product .bootstrap-touchspin button.bootstrap-touchspin-down {
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: initial !important;
    border-radius: 3px 0 0 3px !important;
  }
  #product .bootstrap-touchspin button.bootstrap-touchspin-up {
    grid-column: 3 !important;
    grid-row: 1 !important;
    order: initial !important;
    border-radius: 0 3px 3px 0 !important;
  }
  #product .bootstrap-touchspin .btn.btn-touchspin i { display: none !important; }
  #product .bootstrap-touchspin button.bootstrap-touchspin-down::after {
    content: '\2212' !important;
    display: block !important;
    color: #fff4e2 !important;
    font: 700 22px/1 Arial, sans-serif !important;
  }
  #product .bootstrap-touchspin button.bootstrap-touchspin-up::after {
    content: '+' !important;
    display: block !important;
    color: #fff4e2 !important;
    font: 700 21px/1 Arial, sans-serif !important;
  }
  #product .product-quantity .add { width: 100%; margin: 0 !important; }
  #product .product-quantity .add-to-cart {
    width: 100%;
    min-height: 48px;
    margin: 0 !important;
  }
  #product #product-availability {
    display: block;
    margin: 9px 0 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
  }
  #product #product-availability .material-icons {
    font-size: 16px !important;
    line-height: 1 !important;
    vertical-align: -3px;
  }
}
