/* Shared components, desktop and mobile. */
:root { --paper: #fff; }
body { background: #fff; }
.bl-shopify-header .desktop-navigation .bootlg124-menu > summary { padding-block: 24px; }
.bl-shopify-header .desktop-navigation .bootlg124-submenu a,
.bl-drawer-navigation .bootlg124-submenu a { padding: 10px 14px; border-radius: 3px; }
.bl-shopify-header .desktop-navigation .bootlg124-submenu { gap: 6px 18px; }
.bl-shopify-header .desktop-navigation .bootlg124-submenu a:hover,
.bl-shopify-header .desktop-navigation .bootlg124-submenu a:focus-visible { outline-offset: 2px; }
.single-product .variations tr { display: flex; flex-direction: column; margin-bottom: 12px; }
.single-product .variations tr > :is(th,td) { display: block; width: 100%; text-align: left; padding-inline: 0; }
.single-product .variations tr th label { text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }
.single-product .variations select { width: 100%; max-width: 100%; min-height: 44px; padding: 10px 12px; }
.bl-fixed-option { display: block; padding: 5px 0; font-size: 16px; }
.bootlg-mobile-product .bl-product-mobile-price { display: block; color: #1f1f1f; font: 400 24px/1.2 var(--display); margin: 12px 0; }
.bootlg-mobile-product .summary:has(> .bl-product-mobile-price) > .price,
.bootlg-mobile-product .bl-product-mobile-live-price .woocommerce-variation-price { display: none; }
.bl-wide-panel { clear: both; margin: 24px 0; border-top: 1px solid #ddd; }
.bl-wide-panel > summary { min-height: 60px; font-size: 19px; }
.bl-wide-panel .bl-panel-content { padding: 20px 0; }
.woocommerce #reviews #comments .commentlist { padding-left: 0; }
.woocommerce #reviews #comments .commentlist li .comment-text { margin-left: 0; border: 1px solid #dedbd4; padding: 20px; border-radius: 0; }
.woocommerce #reviews #comments h2 { font-size: 20px; }
.woocommerce #review_form #respond :is(input:not([type=checkbox]):not([type=submit]),textarea,select) { padding: 12px; border: 1px solid #aaa; background: #fff; font: inherit; max-width: 100%; }
.woocommerce #review_form #respond label { display: block; margin-bottom: 5px; }
.woocommerce #review_form #respond .comment-form-cookies-consent label { display: inline; }
.woocommerce #review_form #respond .form-submit input { background: #ffdb58; color: #1f1f1f; border: 1px solid #1f1f1f; padding: 14px 22px; border-radius: 0; }
/* Shopify collection.json: unframed square media, plain title, Dela h6 price. */
.woocommerce ul.products li.product { border: 0; background: transparent; overflow: visible; }
.woocommerce ul.products li.product a img { margin: 0 0 8px; background: #f6f6f6; aspect-ratio: 1; object-fit: contain; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; margin: 0 0 4px; font: 400 14px/1.5 var(--body); color: #1f1f1f; }
.woocommerce ul.products li.product .price { padding: 0; margin: 0; color: #1f1f1f; font: 400 12px/1.4 var(--display); }
.woocommerce ul.products li.product .star-rating { margin: 4px 0; color: #1f1f1f; }
.woocommerce ul.products li.product .price del { opacity: .6; }
.woocommerce ul.products li.product .price ins { font-weight: inherit; text-decoration: none; }
.woocommerce div.product .summary > .price { color: #1f1f1f; font: 400 24px/1.2 var(--display); }
.woocommerce span.onsale { background: #ffdb58; color: #1f1f1f; min-height: 0; line-height: 1.3; padding: 8px 12px; border-radius: 0; }
/* The original home grid has a separate card design. */
.bootlg124-home .product-card { border: 1.5px solid #1f1f1f; background: #f4f1ea; overflow: hidden; }
.bootlg124-home .product-image { background: #fff; }
.bootlg124-home .product-card-body { background: #f4f1ea; border-top: 1.5px solid #1f1f1f; padding: 12px 12px 14px; }
.bootlg124-home .product-card h3 { font: 700 15px/1.15 var(--body); margin: 0; min-height: 2.3em; }
.bootlg124-home .product-card-price { color: #1f1f1f; font: 400 15px/1.4 var(--display); margin-top: 8px; }
.bootlg124-highlight .product-card, .bootlg124-highlight .product-card-body { background: #fff; }
.woocommerce-products-header:has(.bl-collection-hero) > .page-title { display: none; }
.bl-collection-hero { position: relative; isolation: isolate; min-height: clamp(210px, 25vw, 370px); display: grid; align-items: end; background: #1f1f1f; color: white; margin-bottom: 24px; }
.bl-collection-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.bl-collection-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, #000b, #0000 80%); }
.bl-collection-hero-copy { padding: clamp(24px, 4vw, 56px); }
.bl-collection-hero h1 { font: clamp(25px, 3.6vw, 48px)/1.1 var(--display); margin: 0; color: #fff; max-width: 20ch; }
.bl-collection-intro { max-width: 1000px; margin: 0 auto 32px; font-size: 17px; line-height: 1.6; }
.bootlg124-facets { border-block: 1px solid #ddd; padding-block: 18px; gap: 12px; }
.bootlg124-facets select, .woocommerce .woocommerce-ordering select { padding: 10px 30px 10px 12px; background: white; border: 1px solid #aaa; border-radius: 0; font: inherit; }
.bootlg124-facets.bl-auto-filter > button { display: none; }
.bl-community { background: #1f1f1f; color: #fff; padding: 48px 0; border-bottom: 1px solid #555; }
.bl-community h2 { color: #fff; font: clamp(21px, 2.1vw, 30px)/1.2 var(--display); margin: 0 0 10px; }
.bl-community .section-heading p { margin: 0; }
.bl-community .section-heading > a { color: #ffdb58; text-underline-offset: 4px; }
.bl-community-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.bl-community-grid a { display: block; overflow: hidden; }
.bl-community-grid img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; display: block; transition: transform .2s; }
.bl-community-grid a:hover img { transform: scale(1.03); }
#bootlg-newsletter { display: grid; grid-template-columns: 1fr 1.25fr; gap: 32px; padding-block: 36px; margin-top: 32px; border-top: 1px solid #555; }
#bootlg-newsletter h2 { margin: 0 0 10px; color: #ffdb58; font: clamp(22px,2.6vw,34px)/1.2 var(--display); }
#bootlg-newsletter .bl-newsletter-copy p { font-size: 16px; }
#bootlg-newsletter > form { grid-column: 2; grid-row: 1 / span 3; }
#bootlg-newsletter > p { grid-column: 1; }
.bl-newsletter-fields { display: grid; grid-template-columns: 1fr auto; gap: 0; }
.bl-newsletter-fields label { grid-column: 1/-1; margin-bottom: 8px; font-size: 14px; }
.bl-newsletter-fields input { min-width: 0; border: 1px solid #fff; border-radius: 0; padding: 14px 16px; font: inherit; color: #1f1f1f; background: #fff; }
.bl-newsletter-fields button { background: #ffdb58; color: #1f1f1f; padding: 14px 22px; font: 700 16px/1.2 var(--body); border: 1px solid #ffdb58; cursor: pointer; white-space: nowrap; }
#bootlg-newsletter form > p { font-size: 12px; line-height: 1.5; color: #c7c7c7; max-width: 65ch; margin: 12px 0 0; }
.bootlg-fx-attribution { background: #1f1f1f; color: #bdbdbd; font-size: 11px; padding: 10px 18px; text-align: center; }
.bl-search-dialog { width: min(800px,calc(100% - 32px)); max-height: 88dvh; overflow: auto; border: 1px solid #1f1f1f; }
#bl-store-search [hidden] { display: none !important; }
.bl-search-dialog .woocommerce-product-search { padding: 22px 24px 14px; margin: 0; }
.bl-search-dialog .search-field { padding: 14px 16px; border: 1px solid #777; background: #faf9f6; font: inherit; font-size: 18px; }
.bl-search-dialog button[type=submit] { border: 1px solid #1f1f1f; background: #ffdb58; color: #1f1f1f; padding: 12px 18px; font: 700 16px var(--body); cursor: pointer; }
.bl-search-content { padding: 0 24px 24px; }
.bl-search-status { margin: 4px 0 16px; color: #666; font-size: 14px; }
.bl-search-suggestions { display: flex; flex-wrap: wrap; gap: 8px; }
.bl-search-suggestions a { border: 1px solid #ddd; padding: 8px 12px; text-decoration: none; }
.bl-search-results { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 20px; list-style: none; padding: 0; margin: 0; }
.bl-search-results li a { display: flex; gap: 12px; align-items: center; padding: 8px; text-decoration: none; border: 1px solid transparent; }
.bl-search-results li a:is(:hover,:focus-visible) { background: #f4f0e6; border-color: #1f1f1f; outline: 0; }
.bl-search-results img { width: 72px; height: 84px; object-fit: contain; background: #f5f4f0; }
.bl-search-results strong { display: block; font: 700 16px/1.3 var(--body); }
.bl-search-results span span { display: block; margin-top: 6px; font-size: 14px; }
.bl-search-all { display: block; border-top: 1px solid #ddd; margin-top: 18px; padding-top: 18px; font-weight: 700; text-underline-offset: 4px; }
@media(min-width:750px) {
  .woocommerce div.product div.woocommerce-product-gallery { display: grid; grid-template-columns: 76px minmax(0,1fr); gap: 12px; align-items: start; }
  .woocommerce-product-gallery .flex-viewport { grid-column: 2; grid-row: 1; min-width: 0; }
  .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { grid-column: 2; }
  .woocommerce div.product div.images .flex-control-thumbs { grid-column: 1; grid-row: 1; display: grid; gap: 8px; max-height: 620px; overflow-y: auto; }
  .woocommerce div.product div.images .flex-control-thumbs li { float: none; width: 100%; }
  .woocommerce div.product div.images .flex-control-thumbs li img { width: 100%; height: 82px; object-fit: contain; opacity: .7; border: 1px solid #ddd; }
  .woocommerce div.product div.images .flex-control-thumbs li img.flex-active { border-color: #1f1f1f; opacity: 1; }
}
@media(max-width:749px) {
  .bl-community { padding: 30px 0; }
  .bl-community .section-heading { display: block; }
  .bl-community .section-heading > a { display: inline-block; margin-top: 14px; }
  .bl-community-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  #bootlg-newsletter { grid-template-columns: 1fr; gap: 12px; }
  #bootlg-newsletter > form { grid-column: 1; grid-row: auto; }
  .bl-newsletter-fields button { padding-inline: 12px; }
  .bl-search-results { grid-template-columns: 1fr; }
  .bl-search-dialog .woocommerce-product-search { padding-inline: 16px; gap: 6px; }
  .bl-search-content { padding-inline: 16px; }
  .bl-search-dialog .search-field { padding: 12px; font-size: 16px; }
  .bl-search-dialog button[type=submit] { padding-inline: 12px; }
  .bl-collection-intro { font-size: 16px; }
  .bootlg124-facets { display: grid; grid-template-columns: 1fr 1fr; }
  .bootlg124-facets select { max-width: 100%; width: 100%; }
}
@media(prefers-reduced-motion:reduce) { .bl-community-grid img { transition: none; } }
