/* === 统一首页 Testimonials / Blog 框架的响应式字号 === */
/* Hear From Our Members (Testimonials) – desktop/tablet only, let mobile rule override below 768px */
@media (min-width: 768px){
  .testimonials-style3 .sec-title h2,
  .testimonials-style3 .sec-title .title-animation{
    /* font-size: 56px !important; */
    line-height: 1.2em !important;
    font-weight: 700 !important;
    font-family: var(--thm-font-2, inherit) !important;
    text-transform: uppercase !important;
    color: #111 !important;
    text-align: center !important;
  }
  /* 强制整个 sec-title 居中 */
  .testimonials-style3 .sec-title,
  .testimonials-style3 .sec-title.text-left,
  .testimonials-style3 .sec-title.text-center{
    text-align: center !important;
  }
  .testimonials-style3 .sub-title{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .testimonials-style3 .sub-title .border-line{
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Club News and Updates (Blog) – desktop/tablet only */
@media (min-width: 768px){
  .blog-style1 .sec-title h2{
    /* font-size: 56px !important; */
    line-height: 1.2em !important;
    font-weight: 700 !important;
    font-family: var(--thm-font-2, inherit) !important;
    text-transform: uppercase !important;
    color: #111 !important;
    text-align: center !important;
  }
  .blog-style1 .sec-title,
  .blog-style1 .sec-title.text-left,
  .blog-style1 .sec-title.text-center{
    text-align: center !important;
  }
  .blog-style1 .sub-title{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
.blog-style1 .sub-title .border-line{
  margin-left: auto !important;
  margin-right: auto !important;
}
}

/* PDP feature list: single column on mobile, no gaps or padding */
/* PDP feature list: reduce *real* item height (icon/text), not just gap */
.wd-list.feature-list-enhanced{
  --pdp-feature-icon: 28px;
  --pdp-feature-icon-mobile: 24px;
}
.elementor-element-d0c4073.e-con{
  padding: 0 !important;
  min-height: 0 !important;
}
.elementor-element-d0c4073{
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}
.elementor-element-d0c4073 > .e-con-inner{
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
.elementor-element-d0c4073 .elementor-widget,
.elementor-element-d0c4073 .elementor-widget-container{
  margin: 0 !important;
  padding: 0 !important;
}
.wd-list.feature-list-enhanced .feature-list-item{
  padding-block: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
.wd-list.feature-list-enhanced .feature-icon{
  width: var(--pdp-feature-icon) !important;
  height: var(--pdp-feature-icon) !important;
  min-width: var(--pdp-feature-icon) !important;
}
.wd-list.feature-list-enhanced .feature-icon svg{
  width: 18px !important;
  height: 18px !important;
}
.wd-list.feature-list-enhanced .feature-list-item .list-content{
  line-height: 1.25 !important;
}
@media (max-width: 767.98px){
  .elementor-element-d0c4073 > .e-con-inner > .e-con-child{
    margin-bottom: 6px !important;
  }
  .elementor-element-d0c4073 > .e-con-inner > .e-con-child:last-child{
    margin-bottom: 0 !important;
  }
  .wd-list.feature-list-enhanced .feature-icon{
    width: var(--pdp-feature-icon-mobile) !important;
    height: var(--pdp-feature-icon-mobile) !important;
    min-width: var(--pdp-feature-icon-mobile) !important;
  }
  .wd-list.feature-list-enhanced .feature-icon svg{
    width: 16px !important;
    height: 16px !important;
  }
}
@media (max-width: 767.98px){
  .elementor-element-d0c4073 .wd-list.feature-list-enhanced{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .elementor-element-d0c4073 .wd-list.feature-list-enhanced .feature-list-item{
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Brand carousel: restore flex layout so widths from brand-carousel.php work correctly */
.brand-carousel .bc-rail,
.brand-carousel .bc-track{
  display: flex !important;
}
.brand-carousel .bc-track .swiper-wrapper,
.brand-carousel .bc-rail .swiper-wrapper,
.brand-carousel .bc-track .owl-stage-outer,
.brand-carousel .bc-rail .owl-stage-outer{
  display: block !important;
}
.brand-carousel .bc-card,
.brand-carousel .bc-track .bc-card,
.brand-carousel .swiper-slide,
.brand-carousel .bc-track .swiper-slide{
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
}

/* Brand sections (PARD / Nocpix / DNT optics): mobile 2-per-view, each minus half a gap */
@media (max-width: 767px){
  #brand-sunwayfoto .bc-card,
  #brand-fitbit   .bc-card,
  #brand-cp-plus  .bc-card{
    width: 100% !important;
    min-width: 100% !important;
  }
}

/* Brand sections (PARD / Nocpix / DNT optics): tablet/desktop width = current minus gap/visible-count */
@media (min-width: 768px) and (max-width: 1399px){
  #brand-sunwayfoto .bc-rail .bc-card,
  #brand-fitbit   .bc-rail .bc-card,
  #brand-cp-plus  .bc-rail .bc-card{
    flex:0 0 calc(50% - (var(--bc-gap) / 2)) !important;
    width: calc(50% - (var(--bc-gap) / 2)) !important;
    max-width: calc(50% - (var(--bc-gap) / 2)) !important;
    min-width: calc(50% - (var(--bc-gap) / 2)) !important;
  }
}
@media (min-width: 1400px){
  #brand-sunwayfoto .bc-rail .bc-card,
  #brand-fitbit   .bc-rail .bc-card,
  #brand-cp-plus  .bc-rail .bc-card{
    flex:0 0 calc(25% - (var(--bc-gap) / 4)) !important;
    width: calc(25% - (var(--bc-gap) / 4)) !important;
    max-width: calc(25% - (var(--bc-gap) / 4)) !important;
    min-width: calc(25% - (var(--bc-gap) / 4)) !important;
  }
}
/* Mobile Overrides: rich, theme-colored effects (≤ 767px focus) */

/* Theme color variables (try to read from existing ones; fallback provided) */
:root{
  --ow-accent: #ff4b0c;
  --ow-accent-2: #ffb58a;
  --ow-dark: #0f0f0f;
  --ow-muted: #bdbdbd;
}

/* === Pad 768-991: Testimonials intro line centered, black === */
@media only screen and (min-width: 768px) and (max-width: 991px){
  .testimonials-style3 .sec-title::before{
    content: 'Hear From Our Members';
    display: block;
    font-weight: 700;
    font-size: clamp(24px, 2.6vw, 36px);
    line-height: 1.25;
    color: #111 !important;
    text-align: center !important;
    justify-self: center;
  }
}

/* === 移动端兜底：强制 Testimonials / Blog 标题缩小到 24px === */
@media (max-width: 767px){
  .testimonials-style3 .sec-title h2,
  .testimonials-style3 .sec-title .title-animation,
  .blog-style1 .sec-title h2{
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 30px !important;
    height: 30px !important;
    color: #111 !important;
    text-align: center !important;
  }
}

@media (min-width: 1200px) and (max-width: 1400px){
  /* Footer layout: first two side-by-side, others full width */
  .footer-style1 .footer-single-line{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important; }
  /* PAD (768–1399): 2x2 grid */
  /* Row 1 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1),
  .footer-style1 .footer-single-line > .single-widget:nth-child(2),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2){ flex:0 0 50% !important; max-width:50% !important; padding-left:10px !important; padding-right:10px !important; }
  /* Row 2 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3),
  .footer-style1 .footer-single-line > .single-widget:nth-child(4),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(3),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(4){ flex:0 0 50% !important; max-width:50% !important; padding-left:10px !important; padding-right:10px !important; }

  /* Center Shop at Optics World (1) and About Optics World (2) */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .single-footer-widget,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .single-footer-widget{ text-align:center !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .title h3,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .title h3{ text-align:center !important; margin-left:auto !important; margin-right:auto !important; display:block !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .border-line,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .border-line{ margin-left:auto !important; margin-right:auto !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul{ display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; margin-left:auto !important; margin-right:auto !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul li a,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul li a{ text-align:center !important; }

  /* Center Get in Touch (3) and Newsletter Subscription (4) titles on PAD */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .title h3,
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .title h3{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:block !important;
  }

  /* Newsletter 和 Get in Touch 居中处理 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3),
  .footer-style1 .footer-single-line > .single-widget:nth-child(4){
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .single-footer-widget,
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .single-footer-widget{
    text-align:center !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }

  /* 社交图标强制居中 */
  .footer-style1 .footer-social-links-style1.rich-icons,
  .footer-style1 .footer-brand-social .footer-social-links-style1.rich-icons{
    display:flex !important;
    justify-content:center !important;
    width:100% !important;
  }
  .footer-style1 .footer-social-links-style1.rich-icons ul{ justify-content:center !important; margin:0 auto !important; display:flex !important; }
  .footer-style1 .footer-social-links-style1.rich-icons ul li{ display:flex !important; align-items:center !important; justify-content:center !important; }
  .footer-style1 .footer-social-links-style1.rich-icons ul li a{ display:flex !important; align-items:center !important; justify-content:center !important; }
}

/* Mobile + PAD: ≤1399px 使用移动端布局 */
@media (min-width: 1200px) and (max-width: 1400px){
  /* Footer layout on PAD: 2x2 grid */
  .footer-style1 .footer-single-line{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important; }
  /* Row 1 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1),
  .footer-style1 .footer-single-line > .single-widget:nth-child(2),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2){ flex:0 0 50% !important; max-width:50% !important; padding-left:10px !important; padding-right:10px !important; }
  /* Row 2 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3),
  .footer-style1 .footer-single-line > .single-widget:nth-child(4),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(3),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(4){ flex:0 0 50% !important; max-width:50% !important; padding-left:10px !important; padding-right:10px !important; }

  /* Center Shop & About content */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .single-footer-widget,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .single-footer-widget{ text-align:center !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .title h3,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .title h3{ text-align:center !important; margin-left:auto !important; margin-right:auto !important; display:block !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .border-line,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .border-line{ margin-left:auto !important; margin-right:auto !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul{ display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; margin-left:auto !important; margin-right:auto !important; }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul li a,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul li a{ text-align:center !important; }

  /* Newsletter 和 Get in Touch 居中处理 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3),
  .footer-style1 .footer-single-line > .single-widget:nth-child(4){
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .single-footer-widget,
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .single-footer-widget{
    text-align:center !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }

  /* 社交图标强制居中 */
  .footer-style1 .footer-social-links-style1.rich-icons,
  .footer-style1 .footer-brand-social .footer-social-links-style1.rich-icons{
    display:flex !important;
    justify-content:center !important;
    width:100% !important;
  }
  .footer-style1 .footer-social-links-style1.rich-icons ul{ justify-content:center !important; margin:0 auto !important; display:flex !important; }
  .footer-style1 .footer-social-links-style1.rich-icons ul li{ display:flex !important; align-items:center !important; justify-content:center !important; }
  .footer-style1 .footer-social-links-style1.rich-icons ul li a{ display:flex !important; align-items:center !important; justify-content:center !important; }
}

/* Price auto-fit helper: keep price on one line without clipping */
.bc-body .bc-price{ overflow: visible; }
.bc-body .bc-price .bc-price-fit{
  display: inline-block;
  transform-origin: left center;
  will-change: transform;
  line-height: 1;
}

/* Tablet safety: keep 2-per-view only on 768–991px */
@media (min-width: 768px) and (max-width: 991px){
  .bc-rail .bc-card{ flex:0 0 50% !important; max-width:50% !important; width:50% !important; min-width:50% !important; }
  .bc-rail .swiper-wrapper .swiper-slide{ flex:0 0 50% !important; max-width:50% !important; }
  .bc-rail .products .product{ flex:0 0 50% !important; max-width:50% !important; }
}

/* 移动端（≤767px）：强制单列，只展示 1 个产品 */
@media (max-width: 767px){
  .bc-rail .bc-card,
  .bc-rail .swiper-wrapper .swiper-slide,
  .bc-rail .products .product{
    flex:0 0 100% !important;
    max-width:100% !important;
  }
}

/* Auto-scroll hint for horizontal carousels on touch */
@media (pointer: coarse) and (max-width: 991px){
  .owl-stage-outer, .bc-track{
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
  }
  .owl-stage-outer::after, .bc-track::after{
    content:none !important;
    display:none !important;
  }
}

/* Mobile: Tidio bubble up 40px */
@media (max-width: 767.98px){
  /* Tidio injects its UI dynamically; move the whole widget up above fixed bars */
  #tidio-chat,
  #tidio-chat-code,
  [id^="tidio-chat"]{
    bottom: 40px !important;
  }
  iframe#tidio-chat-code,
  iframe#tidio-chat-iframe,
  iframe[id^="tidio-chat"]{
    bottom: 40px !important;
  }
}

/* Shop + Category: mobile 1 product per row (theme body has no WP body_class; scope by wrapper id) */
@media (max-width: 1024px){
  [id^="ow-shop-"] [data-grid].products-grid,
  [id^="ow-shop-"] [data-grid].products-grid.cols-3,
  [id^="ow-shop-"] [data-grid].products-grid.cols-4,
  [id^="ow-shop-"] [data-grid].products-grid.cols-5,
  [id^="ow-shop-"] [data-grid].grid,
  [id^="ow-shop-"] [data-grid].grid.cols-3,
  [id^="ow-shop-"] [data-grid].grid.cols-4,
  [id^="ow-shop-"] [data-grid].grid.cols-5{
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  [id^="ow-shop-"] [data-grid].products-grid > *,
  [id^="ow-shop-"] [data-grid].grid > *{
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Fallback for classic Woo markup (if a page uses ul.products columns-*) */
  [id^="ow-shop-"] .woocommerce ul.products{
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  [id^="ow-shop-"] .woocommerce ul.products li.product{
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }
}

/* Cookie banner: make all 3 buttons full width on mobile */
@media (max-width: 900px){
  /* Make the cookie container span near-full viewport width with small gutters */
  #ow-cookie .owc-wrap{ max-width:none !important; padding-left:10px !important; padding-right:10px !important; }
  #ow-cookie .owc-btns{ width:100%; display:flex !important; flex-direction:column !important; gap:10px; }
  #ow-cookie .owc-btns .btn{ width:100% !important; min-width:0; }
}

/* Footer: two modules per row on small screens */
@media (max-width: 767px){
  /* 移除旧的两列布局规则 */
  .footer-single-line{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important; gap:0 !important; }
  
  /* 前两个模块：并排显示，各占约 45% */
  .footer-single-line > .single-widget:nth-child(1),
  .footer-single-line > .single-widget:nth-child(2),
  .footer-single-line > [class*="col-"]:nth-child(1),
  .footer-single-line > [class*="col-"]:nth-child(2){ 
    flex:0 0 50% !important; 
    max-width:50% !important; 
    padding-left:5px !important; 
    padding-right:5px !important; 
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  
  /* 第三个模块（Get in Touch）：独占一行，相对于 container 垂直居中 */
  .footer-single-line > .single-widget:nth-child(3),
  .footer-single-line > [class*="col-"]:nth-child(3){
    flex:0 0 100% !important;
    max-width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:10px !important;
    padding-right:10px !important;
    box-sizing:border-box !important;
  }
  
  /* 第四个模块（Newsletter）：独占一行，相对于 container 垂直居中 */
  .footer-single-line > .single-widget:nth-child(4),
  .footer-single-line > [class*="col-"]:nth-child(4){
    flex:0 0 100% !important;
    max-width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:10px !important;
    padding-right:10px !important;
    box-sizing:border-box !important;
  }
  
  /* 前两个模块内容居中 */
  .footer-single-line > .single-widget:nth-child(1) .single-footer-widget,
  .footer-single-line > .single-widget:nth-child(2) .single-footer-widget,
  .footer-single-line > [class*="col-"]:nth-child(1) .single-footer-widget,
  .footer-single-line > [class*="col-"]:nth-child(2) .single-footer-widget{
    text-align:center !important;
    width:100% !important;
  }
  
  /* 前两个模块标题居中 */
  .footer-single-line > .single-widget:nth-child(1) .title h3,
  .footer-single-line > .single-widget:nth-child(2) .title h3,
  .footer-single-line > [class*="col-"]:nth-child(1) .title h3,
  .footer-single-line > [class*="col-"]:nth-child(2) .title h3{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  
  /* 前两个模块菜单链接居中 */
  .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul,
  .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul,
  .footer-single-line > [class*="col-"]:nth-child(1) .footer-widget-links ul,
  .footer-single-line > [class*="col-"]:nth-child(2) .footer-widget-links ul{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }
  
  /* Get in Touch 内容垂直居中 */
  .footer-single-line > .single-widget:nth-child(3) .single-footer-widget,
  .footer-single-line > [class*="col-"]:nth-child(3) .single-footer-widget{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .title,
  .footer-single-line > [class*="col-"]:nth-child(3) .title{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .title h3,
  .footer-single-line > [class*="col-"]:nth-child(3) .title h3{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .border-line,
  .footer-single-line > [class*="col-"]:nth-child(3) .border-line{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info,
  .footer-single-line > [class*="col-"]:nth-child(3) .footer-widget-contact-info{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info .contact-line,
  .footer-single-line > [class*="col-"]:nth-child(3) .footer-widget-contact-info .contact-line{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info .contact-address,
  .footer-single-line > [class*="col-"]:nth-child(3) .footer-widget-contact-info .contact-address{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    white-space:normal !important;
    width:100% !important;
  }
  
  /* Newsletter Subscription 内容垂直居中 */
  .footer-single-line > .single-widget:nth-child(4) .single-footer-widget,
  .footer-single-line > [class*="col-"]:nth-child(4) .single-footer-widget{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .title,
  .footer-single-line > [class*="col-"]:nth-child(4) .title{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .title h3,
  .footer-single-line > [class*="col-"]:nth-child(4) .title h3{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    width:100% !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .border-line,
  .footer-single-line > [class*="col-"]:nth-child(4) .border-line{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .newsletter-box,
  .footer-single-line > [class*="col-"]:nth-child(4) .newsletter-box{
    display:flex !important;
    flex-direction:row !important; /* inline */
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    width:100% !important;
    max-width:680px !important;
    margin:0 auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .newsletter-box input[type="email"],
  .footer-single-line > [class*="col-"]:nth-child(4) .newsletter-box input[type="email"],
  #newsletterEmail{
    flex:1 1 auto !important;
    width:auto !important;
    max-width:520px !important;
    min-width:260px !important;
    margin:0 !important;
    display:block !important;
    box-sizing:border-box !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .newsletter-btn,
  .footer-single-line > [class*="col-"]:nth-child(4) .newsletter-btn,
  #newsletterSubmit.newsletter-btn{
    margin-left:10px !important;
    margin-right:0 !important;
    display:inline-flex !important;
    align-self:center !important;
    width:auto !important;
  }
  
  .footer-single-line > .single-widget:nth-child(4) .nl-note,
  .footer-single-line > [class*="col-"]:nth-child(4) .nl-note{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
    width:100% !important;
  }
  
  #newsletterBox{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    width:100% !important;
  }
  
  /* 强化：移动端将第 1、2 列整体与内容都居中（容器内居中/相对屏幕等效） */
@media (max-width: 767.98px){
  /* 列本身水平居中承载内容 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1),
  .footer-style1 .footer-single-line > .single-widget:nth-child(2),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2){
    display:flex !important;
    justify-content:center !important;
  }

  /* 内层模块宽度与文本居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .single-footer-widget,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .single-footer-widget,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1) .single-footer-widget,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2) .single-footer-widget{
    width:100% !important;
    text-align:center !important;
    margin:0 auto !important;
  }

  /* 标题与分隔线居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .title h3,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .title h3,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1) .title h3,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2) .title h3{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .border-line,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .border-line,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1) .border-line,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2) .border-line{
    margin-left:auto !important;
    margin-right:auto !important;
  }

  /* 链接列表改为纵向 + 居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(1) .footer-widget-links ul,
  .footer-style1 .footer-single-line > .single-widget:nth-child(2) .footer-widget-links ul,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(1) .footer-widget-links ul,
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(2) .footer-widget-links ul{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 auto !important;
  }
}

/* 全局安全：PAD 768–1399 两列卡片 */
@media (min-width:768px) and (max-width:1399px){
  .bc-rail .bc-card{ flex:0 0 50% !important; max-width:50% !important; width:50% !important; min-width:50% !important; }
  .bc-rail .swiper-wrapper .swiper-slide{ flex:0 0 50% !important; max-width:50% !important; }
  .bc-rail .products .product{ flex:0 0 50% !important; max-width:50% !important; }
}

/* Mobile-only centered social block moved out of Newsletter */
@media (max-width: 767px){
  .footer-social-mobile-center{ display:flex; justify-content:center; padding:8px 0 16px; }
  .footer-social-mobile-center .footer-social-links-style1 ul{ justify-content:center; display:flex; }
  .footer-social-mobile-center .footer-social-links-style1 ul li{ display:flex; align-items:center; justify-content:center; }
  .footer-social-mobile-center .footer-social-links-style1 ul li a{ display:flex; align-items:center; justify-content:center; }
}

/* Strong override: make 3rd (Get in Touch) and 4th (Newsletter) full width on mobile */
@media (max-width: 767px){
  /* 使用之前定义的规则，这里只是确保优先级 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(3),
  .footer-style1 .footer-single-line > .single-widget:nth-child(4),
  .footer-style1 .footer-single-line > [class*="col-"]:nth-child(4){
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Newsletter Subscription: 强化垂直居中，但不使用 100vw */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4),
  .footer-style1 .footer-single-line > .single-widget.newsletter-widget,
  .footer-style1 .footer-single-line > [class*="col-"]:has(.newsletter-box){
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }
  
  /* single-footer-widget 内所有内容居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .single-footer-widget,
  .footer-style1 .single-footer-widget:has(.newsletter-box){
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }
  
  /* 标题居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .title,
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .title h3,
  .single-footer-widget:has(.newsletter-box) .title,
  .single-footer-widget:has(.newsletter-box) .title h3{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    width: 100% !important;
  }
  
  /* border-line 居中显示 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .border-line,
  .single-footer-widget:has(.newsletter-box) .border-line{
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  /* Newsletter box 容器居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .newsletter-box,
  .single-footer-widget .newsletter-box{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    text-align: center !important;
  }
  
  /* 邮箱输入框居中且响应式宽度 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .newsletter-box input[type="email"],
  .single-footer-widget .newsletter-box input[type="email"],
  #newsletterEmail{
    width: 100% !important; 
    max-width: 100% !important; 
    margin: 0 auto 10px !important; 
    display: block !important;
    box-sizing: border-box !important;
  }
  
  /* Newsletter 按钮居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .newsletter-btn,
  .single-footer-widget .newsletter-btn,
  #newsletterSubmit.newsletter-btn{
    margin-left: auto !important; 
    margin-right: auto !important;
    display: inline-flex !important;
    align-self: center !important;
    width: auto !important;
  }
  
  /* nl-note 文本居中 */
  .footer-style1 .footer-single-line > .single-widget:nth-child(4) .nl-note,
  .single-footer-widget .nl-note{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }

  /* 最高优先级：使用 ID 选择器确保 Newsletter 元素居中 */
  #newsletterBox{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  
  /* Get in Touch: 同样垂直居中处理，但不使用 100vw */
  .footer-style1 .footer-single-line > .single-widget:nth-child(3){
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .single-footer-widget{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 520px !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .title{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .title h3{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .border-line{
    margin-left: auto !important;
    margin-right: auto !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info .contact-line{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
  }
  
  .footer-style1 .footer-single-line > .single-widget:nth-child(3) .footer-widget-contact-info .contact-address{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal !important;
    width: 100% !important;
  }
}

/* =========================
   最终强制覆盖区（放在文件最末尾）
   ========================= */

/* 1) 三大标题：Our Best Sellers / Hear From Our Members / Club News and Updates 统一字号
      - 桌面 56px
      - <1200 48px
      - <992  40px
      - <768  32px
 */
.home .best-seller.obw .sec-title h2,
.home .testimonials-style3 .sec-title h2,
.home .testimonials-style3 .sec-title .title-animation,
.home .blog-style1 .sec-title h2{
  font-size:56px !important;
  line-height:1.2em !important;
  font-weight:700 !important;
  font-family:var(--thm-font-2, inherit) !important;
  text-transform:uppercase !important;
  color:#111 !important;
  text-align:center !important;
}

/* <1200: 48px */
@media (max-width:1199.98px){
  .home .best-seller.obw .sec-title h2,
  .home .testimonials-style3 .sec-title h2,
  .home .testimonials-style3 .sec-title .title-animation,
  .home .blog-style1 .sec-title h2{
    font-size:48px !important;
  }
}
/* <992: 40px */
@media (max-width:991.98px){
  .home .best-seller.obw .sec-title h2,
  .home .testimonials-style3 .sec-title h2,
  .home .testimonials-style3 .sec-title .title-animation,
  .home .blog-style1 .sec-title h2{
    font-size:40px !important;
  }
}
/* <768: 32px —— 保证移动端一定是 32px */
@media (max-width:767.98px){
  .home .best-seller.obw .sec-title h2,
  .home .testimonials-style3 .sec-title h2,
  .home .testimonials-style3 .sec-title .title-animation,
  .home .blog-style1 .sec-title h2{
    font-size:32px !important;
  }
}

/* 3) 移动端 Toolbar 排序区域自适应换行/可滚动 */
@media (max-width:767.98px){
  .toolbar.container{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
  .toolbar .bar{
    width:100% !important;
    flex-wrap:wrap !important;
    gap:8px !important;
  }
  .toolbar .seg{
    width:100% !important;
    overflow-x:auto !important;
    padding:0 2px;
  }
  .toolbar .seg button{
    white-space:nowrap !important;
    flex:1 0 auto;
  }
}

/* 4) 移动端 bc-actions 上下堆叠占满行（Shop、分类、首页品牌等全部统一） */
@media (max-width:767.98px){
  .bc-actions{
    flex-direction:column !important;
    align-items:stretch !important;
    width:100% !important;
    gap:8px !important;
  }
  .bc-actions > *{
    width:100% !important;
    min-height:38px !important;
    padding:10px 12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
}

/* 5) BEST SELLERS 轮播在窄屏留出内边距，避免左侧被裁剪 */
@media (max-width:767.98px){
  .best-seller.obw .owl-stage-outer{
    padding-left:16px !important;
    padding-right:16px !important;
    overflow:hidden !important;
  }
  .best-seller.obw .owl-item{
    box-sizing:border-box !important;
  }
}

/* 6) 移动端：缩小顶部 logo，避免与菜单重叠 */
@media (max-width:767.98px){
  .main-header-style2__bottom-left{
    gap:8px !important;
  }
  .main-header-style2__bottom-left .logo-box-style1{
    max-width:140px !important;
    flex:0 0 auto !important;
  }
  .main-header-style2__bottom-left .logo-box-style1 img{
    max-width:120px !important;
    height:auto !important;
  }
  /* 移动端卡片高度解锁，避免内容被压扁 */
  .home .bc-card,
  body.home .bc-card{
    height:auto !important;
    min-height:unset !important;
    max-height:none !important;
  }
  /* Best Sellers：移动端标题强制可见（避免被全局样式覆盖导致看不到名称） */
  .best-seller.obw .bc-card{
    height:auto !important;
    min-height:unset !important;
    max-height:none !important;
  }
  .best-seller.obw .bc-name{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    height:auto !important;
    max-height:none !important;
    min-height:0 !important;
    margin:0 0 6px !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }
  .best-seller.obw .bc-name a{
    color:#111 !important;
    text-decoration:none !important;
    font-weight:700 !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  /* 首页品牌区：压低图片高度，保证下方按钮可见但保持统一比例 */
  #brand-sunwayfoto .bc-img,
  #brand-fitbit .bc-img,
  #brand-cp-plus .bc-img{
    max-height:180px !important;
    min-height:160px !important;
    height:180px !important;
  }
  #brand-sunwayfoto .bc-card,
  #brand-fitbit .bc-card,
  #brand-cp-plus .bc-card{
    height:auto !important;
  }
  /* 品牌区与列表页按钮区域全宽堆叠，库存独占一行避免重叠 */
  .brand-carousel .bc-actions,
  .products-grid .bc-actions{
    flex-direction:column !important;
    align-items:stretch !important;
    width:100% !important;
    gap:8px !important;
  }
  .brand-carousel .bc-actions > *,
  .products-grid .bc-actions > *{
    width:100% !important;
    min-height:38px !important;
    padding:10px 12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .brand-carousel .bc-stock,
  .products-grid .bc-stock{
    justify-content:flex-start !important;
        margin-top: 35px !important;
  }
}

/* 7) 强制移动端 Shop/Category 页面网格为单列 (1fr) */
@media (max-width: 768px) {
  /* 提升优先级：使用 body 前缀 + !important，覆盖内联 ID 样式 */
  body [id^="ow-shop-"] .grid,
  body [id^="ow-shop-"] .grid.cols-2,
  body [id^="ow-shop-"] .grid.cols-3,
  body [id^="ow-shop-"] .grid.cols-4,
  body [id^="ow-shop-"] .grid.cols-5,
  /* 兼容可能存在的通用类 */
  body .products-grid,
  body .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: 100% !important;
  }

  /* 确保卡片宽度占满 */
  body [id^="ow-shop-"] .grid > *,
  body .products-grid > *,
  body .woocommerce ul.products > li,
  body .woocommerce ul.products > .product {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    flex: 0 0 100% !important;
  }
}
}
