
    :root{
      --bd-font-sans: var(--font-body);
      --bd-font-display: var(--font-heading);

      --bd-navy: #1f2a44;
      --bd-text: #111;
      --bd-muted: #6b7280;
      --bd-line: rgba(0,0,0,.10);
      --bd-card: #f4f4f5;
      --bd-radius: 16px;
      --bd-success: #16a34a;
      --bd-danger: #c62828;
    }

    body{
      background:#fff;
      color:#111;
      font-family: var(--bd-font-sans);
    }

    .hidden{
      display:none !important;
    }

    .breadcrumb {
      padding: 110px 0 20px;
    }

    .breadcrumb-list{
      list-style:none;
      padding:0;
      margin:0;
      display:flex;
      align-items:center;
      gap:10px;
      font-family: var(--bd-font-sans);
      font-size:13px;
      color: var(--bd-muted);
    }

    .breadcrumb-list a{
      color: var(--bd-muted);
      text-decoration:none;
    }

    .breadcrumb-list a:hover{
      color: var(--bd-text);
    }

    .breadcrumb-sep{
      color:#9aa0a6;
    }

    .breadcrumb-current{
      color: var(--bd-text);
      font-weight:600;
    }

    .product-page{
      padding: 20px 0 160px;
    }

    .product-grid{
      display:grid;
      grid-template-columns: 1.1fr 0.9fr;
      gap: 48px;
      align-items:start;
    }

    @media (max-width: 980px){
      .product-grid{
        grid-template-columns:1fr;
      }
    }

    .gallery-main{
  border-radius:18px;
  overflow:hidden;
  background: var(--bd-card);
  position:relative;
  width:100%;
  aspect-ratio: 1 / 1;
  height:auto;
}

    .gallery-main img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

    @media (max-width: 768px){
      .gallery-main{
        height: auto;
        aspect-ratio: 1 / 1;
      }

      .gallery-main img{
        object-fit: contain;
      }
    }
      
      .gallery-viewport{
  width:100%;
  height:100%;
  overflow:hidden;
}

@media (max-width: 768px){
  .gallery-viewport{
    touch-action: pan-y;
  }

  .gallery-main.is-dragging{
    cursor: grabbing;
  }
}

.gallery-track{
  height:100%;
  display:flex;
  will-change:transform;
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
}

.gallery-slide{
  min-width:100%;
  height:100%;
  flex:0 0 100%;
}

.gallery-slide img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

@media (max-width: 768px){
  .gallery-slide img{
    object-fit:contain;
  }
}

    .gallery-badge{
      position:absolute;
      top:16px;
      left:16px;
      background: var(--bd-navy);
      color:#fff;
      font-size:11px;
      letter-spacing:.12em;
      text-transform:uppercase;
      padding:8px 12px;
      border-radius:999px;
      font-family: var(--bd-font-sans);
      font-weight:700;
      z-index: 2;
    }

    .gallery-arrow{
      position:absolute;
      top:50%;
      transform:translateY(-50%);
      width:46px;
      height:46px;
      border:none;
      border-radius:999px;
      background:rgba(255,255,255,0.92);
      color:#111;
      font-size:24px;
      font-weight:700;
      cursor:pointer;
      z-index:3;
      display:flex;
      align-items:center;
      justify-content:center;
      box-shadow:0 8px 20px rgba(0,0,0,.12);
      transition:background .2s ease, transform .2s ease;
    }

    .gallery-arrow:hover{
      background:#fff;
    }

    .gallery-arrow-left{
      left:16px;
    }

    .gallery-arrow-right{
      right:16px;
    }

    .thumbs{
      margin-top:14px;
      display:grid;
      grid-template-columns: repeat(5, 118px);
      gap:12px;
      justify-content:flex-start;
    }

    .thumbs-row-2{
      margin-top:12px;
    }

    .thumb{
      position:relative;
      width:118px;
      height:118px;
      border-radius:14px;
      overflow:hidden;
      background: var(--bd-card);
      border:2px solid transparent;
      cursor:pointer;
      display:block;
      padding:0;
      appearance:none;
      -webkit-appearance:none;
    }

    .thumb.active{
      border-color: var(--bd-navy);
    }

    .thumb img{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
    }

    .thumb-more img{
  filter: blur(2.5px) brightness(0.65);
  transform: scale(1.05);
  transition: filter .2s ease, transform .2s ease;
}

.thumb-more.open img{
  filter: none;
  transform: scale(1);
}

    .thumb-more-overlay{
      position:absolute;
      inset:0;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      font-size:24px;
      font-weight:800;
      font-family: var(--bd-font-sans);
      background:rgba(0,0,0,0.18);
      pointer-events:none;
      transition:opacity .2s ease;
    }

    .thumb-more.open .thumb-more-overlay{
      opacity:0;
    }

    @media (max-width: 768px){
      .gallery-arrow{
        width:40px;
        height:40px;
        font-size:20px;
      }

      .gallery-arrow-left{
        left:10px;
      }

      .gallery-arrow-right{
        right:10px;
      }

      .thumbs{
        grid-template-columns: repeat(5, 60px);
        gap:8px;
      }

      .thumb{
        width:60px;
        height:60px;
      }

      .thumb-more-overlay{
        font-size:18px;
      }
    }

    .product-info{
      padding-top: 6px;
    }

    .kicker{
      font-size:12px;
      letter-spacing:.18em;
      text-transform:uppercase;
      color:#9aa0a6;
      font-family: var(--bd-font-sans);
      margin-bottom:10px;
    }

    .product-title{
      font-family: var(--bd-font-display);
      font-size:40px;
      line-height:1.1;
      margin:0 0 14px;
      color: var(--bd-text);
      font-weight:700;
    }

    .product-price{
      font-family: var(--bd-font-display);
      font-size:28px;
      font-weight:700;
      margin-bottom:18px;
      color: var(--bd-text);
    }
      
      .price-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
}

.price-original{
  font-family: var(--bd-font-sans);
  font-size:16px;
  color: var(--bd-muted);
  text-decoration: line-through;
}

.price-row .product-price{
  margin-bottom:0;
}

.discount-badge{
  background: var(--bd-danger);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  padding:4px 8px;
  border-radius:6px;
  font-family: var(--bd-font-sans);
}

    .product-desc{
      color: var(--bd-muted);
      line-height:1.8;
      margin-bottom:22px;
      font-family: var(--bd-font-sans);
      font-size:14px;
    }

    .details-row{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:12px;
      border-top:1px solid #eee;
      border-bottom:1px solid #eee;
      padding:16px 0;
      margin-bottom:18px;
    }

    .detail{
      text-align:center;
      font-family: var(--bd-font-sans);
    }

    .detail small{
      display:block;
      font-size:11px;
      letter-spacing:.14em;
      text-transform:uppercase;
      color:#9aa0a6;
      font-weight:700;
      margin-bottom:6px;
    }

    .detail strong{
      font-size:13px;
      color: var(--bd-text);
      font-weight:700;
    }

    .option-group{
      margin: 16px 0;
    }

    .option-head{
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:10px;
      font-family: var(--bd-font-sans);
      font-size:12px;
      letter-spacing:.18em;
      text-transform:uppercase;
      font-weight:800;
      color: var(--bd-text);
    }

    .selected-value{
      letter-spacing:0;
      text-transform:none;
      font-weight:600;
      color: var(--bd-muted);
      font-size:12px;
    }

    .colors{
      display:flex;
      gap:10px;
    }

    .color-btn{
      width:38px;
      height:38px;
      border-radius:999px;
      border:2px solid transparent;
      cursor:pointer;
      outline:none;
      background: var(--bd-navy);
    }

    .color-btn.active{
      border-color: var(--bd-navy);
    }

    .color-btn.solo{
      border-color: var(--bd-navy);
      box-shadow: 0 0 0 3px rgba(31,42,68,.18);
      cursor: default;
    }

    .sizes{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
    }

    .size-btn{
      position: relative;
      height:44px;
      min-width:48px;
      padding:0 14px;
      border-radius:12px;
      border:1.5px solid #e6e6e6;
      background:#fff;
      font-weight:800;
      cursor:pointer;
      font-family: var(--bd-font-sans);
      font-size:13px;
      color: var(--bd-text);
      transition: .2s ease;
      overflow:hidden;
    }

    .size-btn.active{
      background: var(--bd-navy);
      border-color: var(--bd-navy);
      color:#fff;
    }

    .size-btn.out-of-stock{
      background:#eef3fb;
      border-color:#c9d5ea;
      color:#8b96a8;
      cursor:pointer;
    }

    .size-btn.out-of-stock::after{
      content:"";
      position:absolute;
      left:-10%;
      top:50%;
      width:120%;
      height:1.5px;
      background:#8ea3c7;
      transform:rotate(-18deg);
      transform-origin:center;
      pointer-events:none;
    }

    .size-btn.out-of-stock:hover{
      background:#e8eef9;
      border-color:#b9c9e5;
    }

    .size-btn.out-of-stock.active{
      background:#dfe9f8;
      border-color:#9eb4d8;
      color:#6f7f97;
      box-shadow: 0 0 0 2px rgba(142,163,199,.18);
    }

    .size-error{
      color: var(--bd-danger);
      font-size:12px;
      margin-top:8px;
      display:none;
      font-family: var(--bd-font-sans);
    }

    .qty-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin: 18px 0;
      font-family: var(--bd-font-sans);
    }

    .qty-label{
      font-size:12px;
      letter-spacing:.18em;
      text-transform:uppercase;
      font-weight:800;
      color: var(--bd-text);
    }

    .qty{
      display:flex;
      align-items:center;
      border:1.5px solid #e6e6e6;
      border-radius:12px;
      overflow:hidden;
      height:44px;
      background:#fff;
    }

    .qty button{
      width:44px;
      height:44px;
      font-size:18px;
      font-weight:800;
      cursor:pointer;
      background:#fff;
      border:0;
      color: var(--bd-text);
    }

    .qty span{
      width:56px;
      text-align:center;
      font-weight:800;
      font-family: var(--bd-font-sans);
      color: var(--bd-text);
    }

    .cta-row{
      display:flex;
      gap:12px;
      margin-top:10px;
    }

    .cta-row .btn{
      flex:1;
    }

    .btn.btn-primary:hover{
      filter: brightness(1.08);
    }

    #addToCartBtn.disabled{
      opacity:.55;
      cursor:default;
    }

    .top-toast{
      position: fixed;
      top: 86px;
      left: 50%;
      transform: translateX(-50%) translateY(-20px);
      background: var(--bd-success);
      color: #fff;
      padding: 10px 14px;
      border-radius: 12px;
      font-family: var(--bd-font-sans);
      font-weight: 800;
      font-size: 13px;
      opacity: 0;
      pointer-events: none;
      transition: opacity .2s ease, transform .2s ease;
      z-index: 9999;
      box-shadow: 0 10px 25px rgba(0,0,0,.15);
    }

    .top-toast.show{
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }

    .bd-cart{
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .bd-cart-badge{
      position: absolute;
      top: -6px;
      right: -8px;
      min-width: 18px;
      height: 18px;
      padding: 0 5px;
      border-radius: 999px;
      background: #000;
      color: #fff;
      font-size: 11px;
      font-weight: 700;
      line-height: 18px;
      text-align: center;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
    }

    .stock-info{
      margin-top:10px;
      font-size:13px;
      color: var(--bd-muted);
      font-family: var(--bd-font-sans);
      font-weight:600;
      min-height:20px;
      transition: color .25s ease, transform .25s ease, opacity .25s ease;
    }

    .stock-info.low-stock{
      color:#c62828;
      font-weight:800;
      animation:stockPulse 1.05s ease-in-out infinite;
      transform:none;
      filter:none;
      text-shadow:none;
      -webkit-font-smoothing:auto;
      text-rendering:optimizeLegibility;
    }

    .stock-info.out-of-stock{
      color:#c62828;
      font-weight:800;
    }

    /* Keep the warning visibly animated without scaling the glyphs.
       Scaling text was what made the red warning look soft/blurry. */
    @keyframes stockPulse{
      0%,100%{ opacity:1; color:#c62828; }
      50%{ opacity:.58; color:#ff1f1f; }
    }

    .qty-hint{
      margin:6px 0 0;
      font-size:12px;
      color: var(--bd-muted);
      font-family: var(--bd-font-sans);
    }

    .cart-stock-message{
      margin-top:10px;
      font-size:13px;
      color: var(--bd-danger);
      font-family: var(--bd-font-sans);
      min-height:18px;
    }

    .notify-wrap{
      margin-top:16px;
      padding:16px;
      border:1px solid #e5e7eb;
      border-radius:14px;
      background:#f8fafc;
      display:none;
    }

    .notify-title{
      margin:0 0 6px;
      font-size:14px;
      font-weight:800;
      color: var(--bd-text);
      font-family: var(--bd-font-sans);
    }

    .notify-text{
      margin:0 0 12px;
      font-size:13px;
      color: var(--bd-muted);
      font-family: var(--bd-font-sans);
      line-height:1.5;
    }

    .notify-form{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
    }

    .notify-input{
      flex:1;
      min-width:220px;
      height:44px;
      border:1.5px solid #dbe1ea;
      border-radius:12px;
      padding:0 14px;
      font-size:14px;
      font-family: var(--bd-font-sans);
      outline:none;
      background:#fff;
    }

    .notify-input:focus{
      border-color: var(--bd-navy);
    }

    .notify-btn{
      height:44px;
      padding:0 18px;
      border:0;
      border-radius:12px;
      background: var(--bd-navy);
      color:#fff;
      font-weight:800;
      cursor:pointer;
      font-family: var(--bd-font-sans);
      transition: filter 0.2s ease;
    }

    .notify-btn:hover{
      filter: brightness(1.08);
    }

    .notify-btn:disabled{
      opacity: 0.6;
      cursor: default;
    }

    .notify-message{
      margin:10px 0 0;
      font-size:13px;
      font-family: var(--bd-font-sans);
      color: var(--bd-muted);
      min-height:18px;
    }

    .notify-message.success{
      color: var(--bd-success);
      font-weight: 600;
    }

    .notify-message.error{
      color: var(--bd-danger);
      font-weight: 600;
    }
      
      .shipping-strip{
  position:fixed;
  top:80px;
  left:0;
  width:100%;
  background:#000;
  color:#fff;
  text-align:center;
  font-family:var(--bd-font-sans);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:7px 12px;
  z-index:10;
}
      
      .header{
  z-index:1000;
}

.breadcrumb{
  padding: 145px 0 20px;
}
      
   .image-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.92);
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.image-lightbox.open{
  display:flex;
}

.image-lightbox-img{
  max-width:100%;
  max-height:90vh;
  object-fit:contain;
  cursor:zoom-in;
  user-select:none;
  -webkit-user-select:none;
  will-change:transform;
  transition:transform .22s ease, opacity .22s ease;
}

.image-lightbox-img.zoomed{
  cursor:grab;
  touch-action:none;
  transition:none;
}

.image-lightbox-img.zoomed.dragging{
  cursor:grabbing;
}
      
      .image-lightbox-img.lightbox-changing{
  opacity:0;
  transform:translate3d(18px,0,0) scale(0.98);
}

.image-lightbox-close{
  position:absolute;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:#fff;
  color:#000;
  font-size:28px;
  line-height:44px;
  cursor:pointer;
  font-weight:700;
}
      
      @media (max-width: 768px){
  .image-lightbox{
    touch-action:none;
    overscroll-behavior:contain;
  }

  .image-lightbox-img{
    touch-action:none;
  }
}
      
      .preorder-note{
  margin-top:14px;
  padding:12px 14px;
  background:#f5f5f5;
  border:1px solid #e5e5e5;
  border-radius:10px;
  font-size:14px;
  line-height:1.6;
  color:#000;
  font-family: var(--bd-font-sans);
  text-align:center;
  font-weight:700;
}
     
      
      .payment-notice {
  margin-top: 14px;
  padding: 14px 16px;
  background: #fff8e1;
  border: 1px solid #f0c040;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.6;
  color: #7a5c00;
  font-family: var(--bd-font-sans);
  text-align: center;
  font-weight: 600;
}

.payment-notice a {
  color: #7a5c00;
  font-weight: 800;
  text-decoration: underline;
}
  
/* V4: preserve original static product-page presentation while WooCommerce powers data/cart. */
.product-rating-stars{font-size:17px;letter-spacing:2px;color:#111;line-height:1}
.product-rating-text{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--bd-muted)}
.bd-native-add-to-cart{margin-top:10px}
.bd-native-add-to-cart .single_variation_wrap{margin-top:0!important}
.bd-native-add-to-cart .single_add_to_cart_button{width:100%;min-height:52px;border:0!important;background:var(--bd-navy)!important;color:#fff!important;border-radius:10px!important;padding:14px 20px!important;font-family:var(--bd-font-sans)!important;font-size:13px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important;transition:filter .2s ease,opacity .2s ease!important}
.bd-native-add-to-cart .single_add_to_cart_button:hover{filter:brightness(1.08)}
.bd-native-add-to-cart .single_add_to_cart_button.disabled,.bd-native-add-to-cart .single_add_to_cart_button:disabled{opacity:.45!important;cursor:default!important}
.bd-native-add-to-cart .woocommerce-variation-description,.bd-native-add-to-cart .woocommerce-variation-availability{display:none!important}
.woocommerce div.product form.cart{margin:0!important}
.woocommerce div.product form.cart::before,.woocommerce div.product form.cart::after{display:none!important}
.shipping-strip{display:block}
@media(max-width:768px){
  .product-title{font-size:32px}
  .product-grid{gap:28px}
  .details-row{gap:6px}
  .detail strong{font-size:11px}
  .product-page{padding-bottom:90px}
}
.bd-native-add-to-cart .single_add_to_cart_button.bd-adding-to-cart{opacity:.65!important;cursor:wait!important}
\n\n/* ==========================================================\n   V47 - Native WooCommerce product reviews\n   ========================================================== */\n.bd-reviews-section{\n  padding:72px 0 96px;\n  border-top:1px solid #e9e9e9;\n  background:#fff;\n}\n.bd-reviews-header{\n  display:flex;\n  align-items:flex-end;\n  justify-content:space-between;\n  gap:32px;\n  margin-bottom:34px;\n}\n.bd-reviews-kicker{\n  margin:0 0 6px;\n  color:#8a8a8a;\n  font-size:11px;\n  font-weight:700;\n  letter-spacing:.18em;\n  text-transform:uppercase;\n}\n.bd-reviews-title{\n  margin:0;\n  font-size:34px;\n  line-height:1.05;\n  color:#0c0c0c;\n}\n.bd-reviews-summary{\n  display:grid;\n  grid-template-columns:auto auto;\n  column-gap:10px;\n  align-items:center;\n  text-align:right;\n}\n.bd-reviews-summary strong{\n  grid-row:1 / span 2;\n  font-size:34px;\n  line-height:1;\n  color:#111;\n}\n.bd-summary-stars{\n  font-size:15px;\n  letter-spacing:2px;\n  line-height:1;\n  color:#111;\n}\n.bd-review-count{\n  color:#777;\n  font-size:12px;\n}\n\n.bd-reviews-native #reviews{\n  margin:0!important;\n}\n.bd-reviews-native .woocommerce-Reviews-title{\n  display:none;\n}\n.bd-reviews-native #comments,\n.bd-reviews-native #review_form_wrapper{\n  margin:0;\n}\n.bd-reviews-native .commentlist{\n  list-style:none;\n  margin:0!important;\n  padding:0!important;\n}\n.bd-reviews-native .commentlist > li{\n  margin:0!important;\n  padding:24px 0!important;\n  border-top:1px solid #ececec;\n}\n.bd-reviews-native .commentlist > li:last-child{\n  border-bottom:1px solid #ececec;\n}\n.bd-reviews-native .comment_container{\n  display:grid;\n  grid-template-columns:48px 1fr;\n  gap:16px;\n  align-items:start;\n}\n.bd-reviews-native .avatar{\n  width:48px!important;\n  height:48px!important;\n  margin:0!important;\n  border:1px solid #e5e5e5!important;\n  border-radius:50%;\n  object-fit:cover;\n  padding:0!important;\n  float:none!important;\n}\n.bd-reviews-native .comment-text{\n  margin:0!important;\n  padding:0!important;\n  border:0!important;\n}\n.bd-reviews-native .meta{\n  margin:0 0 8px!important;\n  color:#777!important;\n  font-size:12px!important;\n}\n.bd-reviews-native .woocommerce-review__author{\n  color:#111;\n  font-size:14px;\n  font-weight:800;\n}\n.bd-reviews-native .woocommerce-review__verified{\n  color:#777;\n  font-size:11px;\n}\n.bd-reviews-native .description p{\n  margin:0;\n  color:#222;\n  font-size:14px;\n  line-height:1.7;\n}\n\n/* Existing-review star display without relying on WooCommerce's default stylesheet. */\n.bd-reviews-native .star-rating{\n  position:relative;\n  width:5.65em;\n  height:1.15em;\n  overflow:hidden;\n  margin:0 0 8px!important;\n  font-size:14px;\n  line-height:1.15;\n  letter-spacing:1px;\n  color:#111;\n  float:none!important;\n}\n.bd-reviews-native .star-rating:before{\n  content:'★★★★★';\n  position:absolute;\n  inset:0 auto auto 0;\n  color:#d6d6d6;\n}\n.bd-reviews-native .star-rating span{\n  position:absolute;\n  inset:0 auto auto 0;\n  height:1.15em;\n  overflow:hidden;\n  padding-top:1.15em;\n}\n.bd-reviews-native .star-rating span:before{\n  content:'★★★★★';\n  position:absolute;\n  top:0;\n  left:0;\n  color:#111;\n}\n\n.bd-reviews-native #review_form_wrapper{\n  max-width:760px;\n  margin-top:44px;\n  padding:30px;\n  border:1px solid #e6e6e6;\n  border-radius:12px;\n  background:#fafafa;\n}\n.bd-reviews-native #reply-title{\n  display:block;\n  margin:0 0 8px;\n  color:#111;\n  font-size:24px;\n  font-weight:800;\n}\n.bd-reviews-native .comment-notes,\n.bd-reviews-native .must-log-in{\n  margin:0 0 18px;\n  color:#666;\n  font-size:13px;\n}\n.bd-reviews-native .comment-form-rating{\n  margin:0 0 20px;\n}\n.bd-reviews-native .comment-form-rating > label,\n.bd-reviews-native .comment-form-comment > label,\n.bd-reviews-native .comment-form-author > label,\n.bd-reviews-native .comment-form-email > label{\n  display:block;\n  margin:0 0 7px;\n  color:#111;\n  font-size:11px;\n  font-weight:800;\n  letter-spacing:.12em;\n  text-transform:uppercase;\n}\n.bd-reviews-native textarea,\n.bd-reviews-native input[type="text"],\n.bd-reviews-native input[type="email"]{\n  width:100%;\n  border:1px solid #ddd;\n  border-radius:8px;\n  background:#fff;\n  color:#111;\n  padding:12px 14px;\n  outline:none;\n  transition:border-color .2s ease,box-shadow .2s ease;\n}\n.bd-reviews-native textarea{\n  min-height:130px;\n  resize:vertical;\n}\n.bd-reviews-native textarea:focus,\n.bd-reviews-native input[type="text"]:focus,\n.bd-reviews-native input[type="email"]:focus{\n  border-color:#1d2c4d;\n  box-shadow:0 0 0 2px rgba(29,44,77,.08);\n}\n.bd-reviews-native .comment-form-author,\n.bd-reviews-native .comment-form-email{\n  margin:16px 0;\n}\n.bd-reviews-native .comment-form-cookies-consent{\n  display:flex;\n  align-items:flex-start;\n  gap:8px;\n  margin:16px 0;\n  color:#666;\n  font-size:12px;\n}\n.bd-reviews-native .form-submit{\n  margin:22px 0 0!important;\n}\n.bd-reviews-native .form-submit .submit{\n  min-height:48px;\n  border:0!important;\n  border-radius:8px!important;\n  background:#1d2c4d!important;\n  color:#fff!important;\n  padding:13px 24px!important;\n  font-size:12px!important;\n  font-weight:800!important;\n  letter-spacing:.08em!important;\n  text-transform:uppercase!important;\n  cursor:pointer!important;\n}\n.bd-reviews-native .form-submit .submit:hover{\n  filter:brightness(1.08);\n}\n\n/* Clickable review-rating stars created by WooCommerce's review script. */\n.bd-reviews-native p.stars{\n  display:block;\n  margin:7px 0 0!important;\n}\n.bd-reviews-native p.stars a{\n  position:relative;\n  display:inline-block;\n  width:1.25em;\n  height:1.25em;\n  margin-right:4px;\n  overflow:hidden;\n  color:transparent!important;\n  font-size:25px;\n  line-height:1;\n  text-indent:-9999px;\n}\n.bd-reviews-native p.stars a:before{\n  content:'★';\n  position:absolute;\n  top:0;\n  left:0;\n  color:#cfcfcf;\n  text-indent:0;\n}\n.bd-reviews-native p.stars:hover a:before,\n.bd-reviews-native p.stars.selected a:before{\n  color:#111;\n}\n.bd-reviews-native p.stars a:hover ~ a:before,\n.bd-reviews-native p.stars.selected a.active ~ a:before{\n  color:#cfcfcf;\n}\n.bd-reviews-native .woocommerce-noreviews{\n  margin:0 0 28px;\n  color:#666;\n  font-size:14px;\n}\n.bd-reviews-native .woocommerce-pagination{\n  margin-top:24px;\n}\n.bd-reviews-native .woocommerce-pagination ul{\n  display:flex;\n  gap:6px;\n  list-style:none;\n  margin:0!important;\n  padding:0!important;\n  border:0!important;\n}\n.bd-reviews-native .woocommerce-pagination li{\n  border:0!important;\n}\n.bd-reviews-native .woocommerce-pagination a,\n.bd-reviews-native .woocommerce-pagination span{\n  display:flex;\n  width:36px;\n  height:36px;\n  align-items:center;\n  justify-content:center;\n  border:1px solid #ddd;\n  border-radius:7px;\n}\n\n@media(max-width:768px){\n  .bd-reviews-section{padding:52px 0 72px}\n  .bd-reviews-header{align-items:flex-start;flex-direction:column;gap:16px}\n  .bd-reviews-title{font-size:29px}\n  .bd-reviews-summary{text-align:left}\n  .bd-reviews-native #review_form_wrapper{padding:22px 18px}\n  .bd-reviews-native .comment_container{grid-template-columns:38px 1fr;gap:12px}\n  .bd-reviews-native .avatar{width:38px!important;height:38px!important}\n}\n
/* ==========================================================
   V51 - Full-screen review photo lightbox
   ========================================================== */
.bd-review__media-link{display:inline-block;cursor:zoom-in}
.bd-review__media-image{display:block}
.bd-review-lightbox[hidden]{display:none!important}
.bd-review-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:28px}
.bd-review-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.92)}
.bd-review-lightbox__content{position:relative;z-index:1;margin:0;max-width:min(94vw,1400px);max-height:92vh;display:flex;align-items:center;justify-content:center}
.bd-review-lightbox__image{display:block;max-width:100%;max-height:92vh;width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:0 20px 70px rgba(0,0,0,.45)}
.bd-review-lightbox__close{position:fixed;top:18px;right:22px;z-index:2;width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font:400 34px/42px Arial,sans-serif;text-align:center;cursor:pointer;backdrop-filter:blur(8px)}
.bd-review-lightbox__close:hover{background:rgba(255,255,255,.24)}
body.bd-review-lightbox-open{overflow:hidden}
@media(max-width:600px){.bd-review-lightbox{padding:14px}.bd-review-lightbox__close{top:10px;right:10px;width:42px;height:42px;font-size:31px}}
\n\n/* ==========================================================\n   V52 - Product gallery full-screen lightbox\n   Matches the supplied static HTML product experience.\n   ========================================================== */\n.gallery-viewport{cursor:zoom-in}\n.image-lightbox{\n  position:fixed;\n  inset:0;\n  background:rgba(0,0,0,.92);\n  z-index:999999;\n  display:none;\n  align-items:center;\n  justify-content:center;\n  padding:24px;\n  overflow:hidden;\n}\n.image-lightbox.open{display:flex}\n.image-lightbox-img{\n  display:block;\n  max-width:100%;\n  max-height:90vh;\n  width:auto;\n  height:auto;\n  object-fit:contain;\n  cursor:zoom-in;\n  user-select:none;\n  -webkit-user-select:none;\n  -webkit-user-drag:none;\n  will-change:transform;\n  transition:transform .22s ease,opacity .22s ease;\n}\n.image-lightbox-img.zoomed{cursor:grab;touch-action:none;transition:none}\n.image-lightbox-img.zoomed.dragging{cursor:grabbing}\n.image-lightbox-img.lightbox-changing{opacity:0;transform:translate3d(18px,0,0) scale(.98)}\n.image-lightbox-close{\n  position:absolute;\n  top:18px;\n  right:18px;\n  width:44px;\n  height:44px;\n  border:0;\n  border-radius:999px;\n  background:#fff;\n  color:#000;\n  font:700 28px/44px Arial,sans-serif;\n  text-align:center;\n  padding:0;\n  cursor:pointer;\n  z-index:4;\n}\n.image-lightbox .image-lightbox-arrow{z-index:4}\n.image-lightbox .gallery-arrow-left{left:14px}\n.image-lightbox .gallery-arrow-right{right:14px}\nbody.bd-product-lightbox-open{overflow:hidden!important}\n@media(max-width:768px){\n  .image-lightbox{padding:10px;touch-action:none;overscroll-behavior:contain}\n  .image-lightbox-img{max-width:100%;max-height:88vh;touch-action:none}\n  .image-lightbox-close{top:12px;right:12px;width:44px;height:44px}\n  .image-lightbox .gallery-arrow-left{left:10px}\n  .image-lightbox .gallery-arrow-right{right:10px}\n}\n