 :root {
  --bg: #0b1220;
  --bg-2: #132238;
  --text: #14213d;
  --muted: #5f6b7a;
  --light: #f5f7fb;
  --white: #ffffff;
  --primary: #f4be2a;
  --primary-dark: #d9a514;
  --accent: #17365d;
  --border: #dbe3ef;
  --container: 1220px;
  --radius: 12px;
  --shadow: 0 14px 36px rgba(15, 37, 68, .10);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family: Arial, Helvetica, sans-serif; color:var(--text); background:var(--white); line-height:1.5; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
.container { width:min(var(--container), calc(100% - 32px)); margin:0 auto; }
.narrow { width:min(900px, calc(100% - 32px)); }
.center { text-align:center; }
.topbar { background:#10151d; color:#d8dde5; font-size:14px; }
.topbar-inner,.nav-wrap { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.topbar-inner { padding:10px 0; }
.topbar-links,.header-actions { display:flex; gap:16px; align-items:center; }
.site-header { position:sticky; top:0; z-index:200; overflow:visible; background:rgba(14,17,22,.96); border-bottom:1px solid rgba(255,255,255,.08); backdrop-filter:blur(8px); }
.nav-wrap { padding:18px 0; }
.brand { color:#fff; font-size:36px; font-weight:900; letter-spacing:1px; font-style:italic; }
.main-nav > ul, .main-nav { display:flex; gap:28px; color:#e5e7eb; font-weight:600; list-style:none; padding:0; margin:0; }
.main-nav a { opacity:.92; }
.main-nav a:hover, .topbar a:hover, .account-link:hover, .site-footer a:hover { color:var(--primary); }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 22px; border-radius:8px; font-weight:800; transition:.2s ease; border:1px solid transparent; cursor:pointer; }
.btn:hover { transform:translateY(-1px); }
.btn-primary { background:var(--primary); color:#111; }
.btn-primary:hover { background:var(--primary-dark); }
.btn-secondary { background:var(--white); color:#111; }
.btn-secondary:hover { background:#eceff3; }
.btn-dark { background:#233047; color:#fff; }
.btn-small { padding:11px 16px; font-size:14px; }
.hero { background:linear-gradient(90deg, rgba(10,14,20,.88) 0%, rgba(10,14,20,.72) 42%, rgba(10,14,20,.25) 100%), radial-gradient(circle at top right, rgba(255,255,255,.08), transparent 40%), linear-gradient(180deg, #2a313c 0%, #171d24 100%); color:#fff; padding:54px 0 42px; }
.hero-grid { display:grid; grid-template-columns:1fr 1.7fr; align-items:center; gap:40px; }
.eyebrow { color:#d1d5db; text-transform:uppercase; letter-spacing:.08em; font-size:13px; font-weight:700; }
.hero h1 { font-size:clamp(38px, 5vw, 64px); line-height:1.02; margin:14px 0 18px; max-width:720px; }
.hero p { font-size:20px; color:#e5e7eb; max-width:650px; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; margin-top:26px; }
.hero-proof { color:#d1d5db; font-weight:700; margin-top:22px; font-size:15px; }
.hero-visual img { width:100%; filter:drop-shadow(0 28px 44px rgba(0,0,0,.45)); }
.trustbar { background:#10151d; color:#fff; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
.trust-items { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding:16px 0; text-align:center; font-weight:700; }
.section { padding:72px 0; }
.section-light { background:var(--light); }
.section-title { text-align:center; margin:0 0 30px; font-size:clamp(30px, 4vw, 44px); line-height:1.08; }
.section-title.left { text-align:left; margin-bottom:0; }
.section-head.split { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.section-link { font-weight:800; color:#233047; }
.cards { display:grid; gap:22px; }
.cards-5 { grid-template-columns:repeat(5,1fr); }
.cards-4 { grid-template-columns:repeat(4,1fr); }
.cards-3 { grid-template-columns:repeat(3,1fr); }
.card { background:#fff; border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); }
.card-body { padding:18px; }
.card h3 { margin:0 0 10px; font-size:21px; line-height:1.15; }
.card p { margin:0 0 14px; color:var(--muted); }
.category-card img,.product-card img,.industry-tile img,.post-card img { width:100%; aspect-ratio:16/11; object-fit:cover; background:#e9edf2; }
.product-grid .product-actions { display:flex; gap:10px; flex-wrap:wrap; }
.why-buy { background:#fff; }
.feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.feature-item { background:#f7f8fa; border:1px solid var(--border); padding:22px; border-radius:12px; min-height:144px; }
.feature-item strong { display:block; font-size:18px; margin-bottom:8px; }
.feature-item span { color:var(--muted); display:block; }
.price { font-size:28px; font-weight:900; margin:10px 0 16px; color:#111827; }
.price ins { text-decoration:none; }
.industry-tile { position:relative; overflow:hidden; border-radius:12px; box-shadow:var(--shadow); }
.industry-label { position:absolute; inset:auto 0 0 0; padding:18px; color:#fff; font-weight:900; font-size:22px; background:linear-gradient(180deg, transparent, rgba(0,0,0,.78)); }
.button-row { display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
.resource-card { min-height:180px; }
.cta-section { padding:78px 0; color:#fff; background:linear-gradient(180deg, rgba(14,17,22,.9), rgba(14,17,22,.92)), linear-gradient(135deg, #293241 0%, #111827 100%); }
.cta-section h2 { margin:0 0 12px; font-size:clamp(32px, 4vw, 50px); }
.cta-section p { color:#d1d5db; font-size:20px; margin:0 0 24px; }
.center-actions { justify-content:center; }
.site-footer { background:#0e1116; color:#c7d0db; padding:58px 0 24px; }
.footer-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:28px; align-items:start; }
.footer-brand { margin-bottom:10px; }
.site-footer h4 { color:#fff; margin:0 0 10px; }
.site-footer ul { list-style:none; padding:0; margin:0; }
.site-footer li { margin:8px 0; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.08); margin-top:28px; padding-top:16px; font-size:14px; }
.empty-state { background:#fff7db; border:1px solid #f2d165; padding:18px; border-radius:12px; }
.shop-layout .shop-container { display:grid; grid-template-columns:minmax(0, 1fr) 300px; gap:28px; }
.shop-sidebar .widget, .shop-widget { background:#fff; border:1px solid var(--border); padding:18px; border-radius:12px; margin-bottom:18px; }
.woocommerce .products { display:grid !important; grid-template-columns:repeat(3, 1fr); gap:22px; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { width:auto !important; float:none !important; margin:0 !important; background:#fff; border:1px solid var(--border); border-radius:12px; overflow:hidden; box-shadow:var(--shadow); padding:0 0 16px !important; }
.woocommerce ul.products li.product a img { margin:0 0 14px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding:0 16px; font-size:20px !important; }
.woocommerce ul.products li.product .price { padding:0 16px; font-size:22px; }
.woocommerce ul.products li.product .button { margin:0 16px !important; display:inline-flex !important; background:var(--primary) !important; color:#111 !important; border-radius:8px !important; font-weight:800 !important; }
.woocommerce div.product { background:#fff; border:1px solid var(--border); border-radius:12px; padding:24px; box-shadow:var(--shadow); margin-bottom: 40px; }
.product-single-wrap .related.products {
  display: block !important;
  width: 100% !important;
  max-width: 1220px !important;
  clear: both !important;
  margin-top: 50px !important;
  float: none !important;
}
.product-single-wrap .related.products h2 {
  font-size: 28px !important;
  font-weight: 800 !important;
  margin-bottom: 25px !important;
}
.product-single-wrap .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
.product-single-wrap .related.products ul.products::before,
.product-single-wrap .related.products ul.products::after {
  display: none !important;
}
.product-single-wrap .related.products ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
}
@media (max-width: 1024px) {
  .product-single-wrap .related.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .product-single-wrap .related.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 15px !important;
  }
}
.woocommerce div.product form.cart .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background:var(--primary) !important; color:#111 !important; border-radius:8px !important; font-weight:800 !important; }
.woocommerce-tabs, .related.products { margin-top:28px; }
@media (max-width:1200px) { .cards-5{grid-template-columns:repeat(3,1fr);} .cards-4,.feature-grid,.footer-grid,.trust-items,.woocommerce .products{grid-template-columns:repeat(2,1fr);} }
@media (max-width:900px) { .topbar-inner,.nav-wrap,.hero-grid,.shop-layout .shop-container{grid-template-columns:1fr; display:grid;} .main-nav > ul,.main-nav{flex-wrap:wrap; gap:16px;} .brand{font-size:30px;} .hero{padding-top:36px;} .hero p{font-size:18px;} }
@media (max-width:700px) { .cards-5,.cards-4,.cards-3,.feature-grid,.footer-grid,.trust-items,.woocommerce .products{grid-template-columns:1fr;} .topbar-links,.header-actions{display:none;} .main-nav{display:none;} .section{padding:56px 0;} .hero-actions,.button-row,.product-grid .product-actions{flex-direction:column;} .btn{width:100%;} .mobile-menu-toggle{display:flex !important;} .nav-wrap{flex-wrap:nowrap !important; align-items:center !important;} }

/* ── Mobile Hamburger Menu ── */
.mobile-menu-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  z-index: 9999999;
  position: relative;
  margin-left: auto;
}
.mobile-menu-toggle .burger-line {
  display: block;
  width: 26px;
  height: 3px;
  background: #fff;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.mobile-menu-toggle.is-open .burger-line:nth-child(1) {
  transform: rotate(45deg) translate(5px, 6px);
}
.mobile-menu-toggle.is-open .burger-line:nth-child(2) {
  opacity: 0;
}
.mobile-menu-toggle.is-open .burger-line:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -6px);
}

/* Mobile nav overlay */
@media (max-width:700px) {
  .nav-wrap {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
  }
  .main-nav.is-open {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #1b2a4a !important;
    z-index: 999999 !important;
    padding: 80px 24px 40px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box !important;
    margin: 0 !important;
  }
  .main-nav.is-open ul.exact-menu {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
  }
  .main-nav.is-open ul.exact-menu li {
    border-bottom: 1px solid rgba(255,255,255,0.1);
    list-style: none;
    width: 100%;
  }
  .main-nav.is-open ul.exact-menu li a {
    display: block !important;
    padding: 16px 0 !important;
    font-size: 18px !important;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600;
  }
  .main-nav.is-open ul.exact-menu li a:hover,
  .main-nav.is-open ul.exact-menu li a:active {
    color: #f5c518 !important;
  }
  .main-nav.is-open .mega-arrow {
    display: none !important;
  }
}


.brand-image{display:inline-flex;align-items:center}
.brand-image img{display:block;height:64px;width:auto;max-width:320px;object-fit:contain}
.exact-menu{display:flex;gap:28px;list-style:none;padding:0;margin:0}
.exact-menu li{list-style:none}
.exact-menu a{color:#e5e7eb;font-weight:600;opacity:.92;white-space:nowrap}
.exact-menu a:hover{color:var(--primary)}
.feature-grid-icons{grid-template-columns:repeat(4,1fr);gap:18px}
.feature-mini{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 18px;min-height:72px}
.feature-mini span,.feature-mini strong{display:inline}
.feature-mini span{font-size:26px;line-height:1}
.feature-mini strong{font-size:18px}
.industry-tile img{width:100%;height:132px;object-fit:cover}
.footer-bottom{padding-top:16px}

@media (max-width: 980px){
  .brand-image img{height:48px;max-width:230px}
  .exact-menu{gap:16px;flex-wrap:wrap}
  .feature-grid-icons{grid-template-columns:repeat(2,1fr)}
}


.hub-cards.cards-4{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:20px;
}
.hub-cards .card-body{min-height:185px}
@media (max-width: 1100px){
  .hub-cards.cards-4{grid-template-columns:repeat(3, minmax(0,1fr));}
}
@media (max-width: 800px){
  .hub-cards.cards-4{grid-template-columns:repeat(2, minmax(0,1fr));}
}
@media (max-width: 560px){
  .hub-cards.cards-4{grid-template-columns:1fr;}
}


.trust-items{
  display:flex;
  gap:32px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}


/* Smaller Featured Products / Best Sellers boxes */
.product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  padding: 12px !important;
}

.product-card img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
  max-height: 180px !important;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  object-fit: contain;
}

.product-card .card-body,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  padding-top: 8px !important;
}

.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  font-size: 16px !important;
  line-height: 1.25 !important;
}

.product-card .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  font-size: 15px !important;
  margin: 6px 0 !important;
}

.product-card .btn,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  padding: 10px 14px !important;
  font-size: 14px !important;
}

.section .cards .product-card{
  min-height: auto !important;
}


.trust-items{
  display:flex;
  gap:32px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}
.trust-items > div{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  color:#fff;
}
.trust-emoji{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  line-height:1;
}
.industry-tile img{
  width:100%;
  height:132px;
  object-fit:cover;
}


/* Cleaner ultra-HD Industries We Serve section */
.industries .cards.cards-4{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:18px;
}
.industry-tile{
  overflow:hidden;
  border-radius:10px;
  background:#fff;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
}
.industry-tile img{
  width:100%;
  height:148px !important;
  object-fit:cover;
  display:block;
}
.industry-label{
  position:relative;
  margin-top:-42px;
  padding:10px 12px 12px;
  color:#fff;
  font-weight:800;
  font-size:18px;
  line-height:1.1;
  text-shadow:0 2px 6px rgba(0,0,0,.45);
  background:linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,0));
}
@media (max-width: 900px){
  .industries .cards.cards-4{grid-template-columns:repeat(2, minmax(0,1fr));}
}
@media (max-width: 560px){
  .industries .cards.cards-4{grid-template-columns:1fr;}
  .industry-tile img{height:170px !important;}
}


/* Fit expanded top navigation */
.exact-menu{
  gap:18px !important;
}
.exact-menu a{
  font-size:15px;
}
@media (max-width: 1200px){
  .exact-menu{
    gap:12px !important;
  }
  .exact-menu a{
    font-size:14px;
  }
}


/* Fit expanded top navigation v2 */
.exact-menu{
  gap:14px !important;
}
.exact-menu a{
  font-size:14px;
}
@media (max-width: 1200px){
  .exact-menu{
    gap:10px !important;
  }
  .exact-menu a{
    font-size:13px;
  }
}


/* Prominent free shipping trust item */
.trust-items{
  display:flex;
  gap:28px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}
.trust-items > div{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  color:#fff;
}
.trust-highlight{
  background: linear-gradient(180deg, #ffd24d 0%, #f5b400 100%);
  color:#111 !important;
  padding:8px 16px;
  border-radius:999px;
  box-shadow:0 6px 18px rgba(245,180,0,.35);
  letter-spacing:.3px;
  transform:translateY(-1px);
}
.trust-highlight .trust-emoji{
  font-size:18px;
}
@media (max-width: 700px){
  .trust-highlight{
    width:100%;
    justify-content:center;
  }
}


/* Footer security bar */
.footer-security-wrap{
  margin-top: 10px;
  padding-bottom: 6px;
}
.footer-security-bar{
  display:flex;
  align-items:center;
  gap:12px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  border-radius:8px;
  padding:6px 14px;
}
.security-item{
  display:flex;
  align-items:center;
  gap:7px;
  color:#fff;
  min-width: 0;
}
.security-icon{
  font-size:15px;
  line-height:1;
}
.security-copy{
  display:flex;
  flex-direction:column;
  gap:0px;
}
.security-copy strong{
  font-size:11px;
  line-height:1.2;
}
.security-copy span{
  color:#cfd7e3;
  font-size:10px;
  line-height:1.2;
}
.security-divider{
  width:1px;
  height:24px;
  background:rgba(255,255,255,.12);
  flex-shrink:0;
}
.security-payments{
  margin-left:auto;
}
.security-payments img{
  display:block;
  width:100%;
  max-width:360px;
  height:auto;
}
@media (max-width: 900px){
  .footer-security-bar{
    flex-direction:column;
    align-items:flex-start;
  }
  .security-divider{
    display:none;
  }
  .security-payments{
    margin-left:0;
    width:100%;
  }
}


/* Extra compact Featured Products / Best Sellers cards */
.product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  padding: 10px !important;
  border-radius: 10px !important;
}

.product-card img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
  max-height: 135px !important;
  min-height: 135px !important;
  width: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  object-fit: contain !important;
}

.product-card .card-body{
  padding: 6px 4px 2px !important;
}

.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  font-size: 14px !important;
  line-height: 1.2 !important;
  min-height: 52px !important;
  margin: 6px 0 !important;
}

.product-card .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  font-size: 14px !important;
  margin: 4px 0 8px !important;
}

.product-card .btn,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  padding: 8px 12px !important;
  font-size: 13px !important;
  border-radius: 7px !important;
  min-height: auto !important;
}

.woocommerce ul.products li.product .button + .button,
.woocommerce-page ul.products li.product .button + .button{
  margin-top: 6px !important;
}

.product-card .button,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  display: inline-block !important;
}

.section .cards .product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  min-height: auto !important;
}

.woocommerce ul.products,
.woocommerce-page ul.products{
  column-gap: 18px !important;
  row-gap: 18px !important;
}

@media (max-width: 900px){
  .product-card img,
  .woocommerce ul.products li.product img,
  .woocommerce-page ul.products li.product img{
    max-height: 120px !important;
    min-height: 120px !important;
  }
}


.brand-image{display:inline-flex;align-items:center}
.brand-image img{display:block;height:58px;width:auto;max-width:300px;object-fit:contain}
.footer-brand-image img{display:block;height:46px;width:auto;max-width:260px;object-fit:contain}

.hub-cards.cards-4{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:20px;
}
.hub-cards .card-body{min-height:185px}
@media (max-width: 1100px){
  .hub-cards.cards-4{grid-template-columns:repeat(3, minmax(0,1fr));}
}
@media (max-width: 800px){
  .hub-cards.cards-4{grid-template-columns:repeat(2, minmax(0,1fr));}
}
@media (max-width: 560px){
  .hub-cards.cards-4{grid-template-columns:1fr;}
}

/* Fit extended top navigation */
.exact-menu{gap:14px !important; flex-wrap:wrap;}
.exact-menu a{font-size:14px;}
@media (max-width: 1200px){
  .exact-menu{gap:10px !important;}
  .exact-menu a{font-size:13px;}
}


/* Final premium color system */
body{
  background: linear-gradient(180deg, #f7f9fc 0%, #eef3f9 100%);
  color: var(--text);
}
.topbar{
  background: linear-gradient(90deg, #0a1323 0%, #13233a 100%);
  color:#eef4ff;
}
.site-header{
  background: linear-gradient(90deg, rgba(10,19,35,.96) 0%, rgba(19,35,58,.96) 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-wrap{
  padding:16px 0;
}
.brand-image img{
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.18));
}
.exact-menu a{
  color:#f3f6fb;
  font-weight:700;
}
.exact-menu a:hover{
  color: var(--primary);
}
.account-link{
  color:#f3f6fb;
}
.btn-primary{
  background: linear-gradient(180deg, #ffd14c 0%, #f4be2a 100%);
  color:#101625;
  box-shadow: 0 8px 20px rgba(244,190,42,.22);
}
.btn-primary:hover{
  background: linear-gradient(180deg, #ffda66 0%, #e7b116 100%);
}
.btn-secondary{
  background:#ffffff;
  color:#16253f;
  border:1px solid #d7e0ed;
}
.hero{
  background:
    linear-gradient(90deg, rgba(13,24,42,.92) 0%, rgba(16,31,53,.78) 38%, rgba(20,40,69,.48) 100%),
    radial-gradient(circle at top left, rgba(72,120,191,.28), transparent 34%),
    linear-gradient(180deg, #1d3557 0%, #0f1e33 100%);
  color:#fff;
  padding:58px 0 44px;
}
.hero h1{
  color:#ffffff;
  letter-spacing:-.02em;
}
.hero p, .hero-proof, .eyebrow{
  color:#e7edf8;
}
.hero-visual img{
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.22));
}
.trustbar{
  background: linear-gradient(90deg, #10203a 0%, #0d1728 100%);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.trust-items > div{
  color:#fff;
}
.trust-highlight{
  background: linear-gradient(180deg, #ffd14c 0%, #f4be2a 100%);
  color:#0d1421 !important;
  box-shadow: 0 10px 22px rgba(244,190,42,.28);
}
.section-light{
  background: transparent;
}
.section-title{
  color:#12284a;
  letter-spacing:-.02em;
}
.card,
.product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:#ffffff;
  border:1px solid #d9e2ef;
  box-shadow: 0 10px 26px rgba(23,54,93,.07);
}
.category-card .card-body p,
.card p{
  color:#5d6c80;
}
.feature-grid .feature-item,
.feature-mini{
  background:#ffffff;
  border:1px solid #dce5f1;
  box-shadow: 0 8px 18px rgba(23,54,93,.06);
}
.feature-mini strong{
  color:#12284a;
}
.section-head .section-link,
.section-link{
  color:#17365d;
  font-weight:700;
}
.section-link:hover{
  color:#f4be2a;
}
.resources .card,
.resource-card{
  background:#ffffff;
}
.cta-section{
  background:
    linear-gradient(180deg, rgba(10,19,35,.92) 0%, rgba(14,28,47,.95) 100%),
    radial-gradient(circle at top right, rgba(72,120,191,.22), transparent 30%);
  color:#fff;
}
.cta-section h2,
.cta-section p{
  color:#fff;
}
.site-footer{
  background: linear-gradient(180deg, #0a1323 0%, #0d1728 100%);
  color:#f5f8ff;
}
.site-footer h4,
.site-footer .brand,
.site-footer strong{
  color:#ffffff;
}
.site-footer p,
.site-footer li,
.site-footer a,
.footer-bottom{
  color:#dce5f3;
}
.footer-security-bar{
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
}
.security-copy span{
  color:#dce5f3;
}
.footer-brand-image img{
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.18));
}

/* stronger product merchandising spacing */
.product-card .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  color:#12284a;
  font-weight:800;
}
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  color:#12284a;
}
.industry-tile{
  background:#fff;
  border:1px solid #dbe4f0;
  box-shadow:0 10px 24px rgba(23,54,93,.08);
}
.industry-label{
  background:linear-gradient(to top, rgba(9,18,33,.72), rgba(9,18,33,0));
}


/* Better quality reduced industries image block */
.industries-image-wrap-clean-reduced{
  width:100%;
  max-width:920px !important;
  margin:0 auto !important;
}
.industries-image-wrap-clean-reduced img{
  display:block;
  width:100%;
  height:auto;
  border-radius:12px;
}
@media (max-width: 1200px){
  .industries-image-wrap-clean-reduced{
    max-width:820px !important;
  }
}
@media (max-width: 900px){
  .industries-image-wrap-clean-reduced{
    max-width:100% !important;
  }
}


/* Global compact spacing / reduce box sizes */
.section{
  padding: 28px 0 !important;
}
.section-light{
  padding: 24px 0 !important;
}
.section-title{
  margin-bottom: 18px !important;
}
.container{
  width:min(var(--container), calc(100% - 24px)) !important;
}

/* Cards closer together */
.cards{
  gap: 14px !important;
}
.cards.cards-5,
.cards.cards-4,
.cards.cards-3{
  gap: 14px !important;
}

/* Category cards smaller */
.category-card,
.card{
  border-radius: 10px !important;
}
.category-card .card-body,
.card .card-body{
  padding: 12px 12px 14px !important;
}
.category-card h3,
.card h3{
  font-size: 18px !important;
  line-height: 1.15 !important;
  margin: 0 0 6px !important;
}
.category-card p,
.card p{
  font-size: 14px !important;
  line-height: 1.35 !important;
  margin: 0 0 10px !important;
}
.category-card img{
  max-height: 150px !important;
  min-height: 150px !important;
  object-fit: contain !important;
}

/* Product boxes smaller and tighter */
.product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  padding: 8px !important;
  border-radius: 10px !important;
}
.product-card img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
  max-height: 120px !important;
  min-height: 120px !important;
  object-fit: contain !important;
}
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  font-size: 13px !important;
  line-height: 1.18 !important;
  min-height: 46px !important;
  margin: 5px 0 !important;
}
.product-card .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  font-size: 13px !important;
  margin: 4px 0 6px !important;
}
.product-card .btn,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  padding: 7px 10px !important;
  font-size: 12px !important;
  border-radius: 7px !important;
}
.woocommerce ul.products,
.woocommerce-page ul.products{
  column-gap: 14px !important;
  row-gap: 14px !important;
}

/* Industries image closer and smaller */
.industries-image-wrap-clean-reduced{
  max-width: 860px !important;
  margin: 0 auto !important;
}
.industries-image-wrap-clean-reduced img{
  border-radius: 10px !important;
}

/* Feature / why buy boxes closer */
.feature-grid{
  gap: 12px !important;
}
.feature-item,
.feature-mini{
  padding: 12px 14px !important;
  min-height: auto !important;
}
.feature-mini strong{
  font-size: 16px !important;
}

/* CTA and trust tighter */
.hero-actions{
  gap: 10px !important;
}
.button-row{
  gap: 10px !important;
}
.trust-items{
  gap: 18px !important;
}
.trust-items > div{
  gap: 8px !important;
  font-size: 15px !important;
}

/* Footer more compact */
.site-footer{
  padding-top: 26px !important;
}
.footer-grid{
  gap: 18px !important;
}
.footer-security-wrap{
  margin-top: 12px !important;
}

/* Responsive */
@media (max-width: 1200px){
  .industries-image-wrap-clean-reduced{
    max-width: 760px !important;
  }
}
@media (max-width: 900px){
  .section{
    padding: 22px 0 !important;
  }
  .section-light{
    padding: 20px 0 !important;
  }
  .cards{
    gap: 12px !important;
  }
  .industries-image-wrap-clean-reduced{
    max-width: 100% !important;
  }
}


/* Reference-based sizing and spacing refinement */
.section{
  padding: 34px 0 !important;
}
.section-light{
  padding: 30px 0 !important;
}
.section-title{
  margin-bottom: 22px !important;
  font-size: 34px !important;
  line-height: 1.08 !important;
}
.container{
  width:min(var(--container), calc(100% - 40px)) !important;
}

/* Category and general card rhythm closer to approved mockup */
.cards,
.cards.cards-5,
.cards.cards-4,
.cards.cards-3{
  gap: 18px !important;
}
.category-card,
.card{
  border-radius: 12px !important;
}
.category-card img{
  max-height: 165px !important;
  min-height: 165px !important;
}
.category-card .card-body,
.card .card-body{
  padding: 14px 14px 16px !important;
}
.category-card h3,
.card h3{
  font-size: 20px !important;
  line-height: 1.14 !important;
  margin: 0 0 8px !important;
}
.category-card p,
.card p{
  font-size: 14px !important;
  line-height: 1.38 !important;
  margin: 0 0 10px !important;
}
.category-card .btn,
.card .btn{
  padding: 9px 14px !important;
  font-size: 13px !important;
}

/* Product boxes balanced like the reference */
.product-card,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  padding: 10px !important;
  border-radius: 10px !important;
}
.product-card img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img{
  max-height: 130px !important;
  min-height: 130px !important;
  object-fit: contain !important;
}
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  font-size: 14px !important;
  line-height: 1.2 !important;
  min-height: 48px !important;
  margin: 6px 0 !important;
}
.product-card .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  font-size: 14px !important;
  margin: 4px 0 8px !important;
}
.product-card .btn,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  padding: 8px 12px !important;
  font-size: 12px !important;
}
.woocommerce ul.products,
.woocommerce-page ul.products{
  column-gap: 18px !important;
  row-gap: 18px !important;
}

/* Industries block sized like approved reference */
.industries-image-wrap-clean-reduced{
  max-width: 980px !important;
  margin: 4px auto 0 !important;
}
.industries-image-wrap-clean-reduced img{
  border-radius: 12px !important;
  box-shadow: 0 10px 24px rgba(18,40,74,.08);
}

/* Keep trust/feature rhythm tidy */
.feature-grid{
  gap: 14px !important;
}
.feature-item,
.feature-mini{
  padding: 13px 15px !important;
}
.trust-items{
  gap: 20px !important;
}
.hero-actions,
.button-row{
  gap: 12px !important;
}

/* Footer */
.site-footer{
  padding-top: 30px !important;
}
.footer-grid{
  gap: 22px !important;
}

@media (max-width: 1200px){
  .industries-image-wrap-clean-reduced{
    max-width: 860px !important;
  }
}
@media (max-width: 900px){
  .section{
    padding: 26px 0 !important;
  }
  .section-light{
    padding: 24px 0 !important;
  }
  .container{
    width:min(var(--container), calc(100% - 24px)) !important;
  }
  .cards,
  .cards.cards-5,
  .cards.cards-4,
  .cards.cards-3{
    gap: 12px !important;
  }
  .industries-image-wrap-clean-reduced{
    max-width: 100% !important;
  }
}


/* === Single Product Page: centralizado === */
.product-single-wrap { max-width: 1220px; margin: 0 auto; }
.product-single-wrap .woocommerce div.product,
.product-single-wrap div.product { 
    max-width: 1220px; 
    margin: 0 auto; 
}

/* =====================================================
   MEGA MENU — painel renderizado no body, controlado por JS
   ===================================================== */

/* Seta discreta no link */
.mega-arrow { font-size: 10px; opacity: .6; margin-left: 2px; display: inline-block; transition: transform .2s; }
.main-nav li.has-mega.mega-open .mega-arrow { transform: rotate(180deg); }

/* Painel flutuante — fixo no viewport, posicionado por JS */
#mega-panel {
  display: none;
  position: fixed;
  top: 0; left: 0;
  z-index: 99999;
  pointer-events: none;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s ease;
  min-width: 320px;
}
#mega-panel.active {
  display: block;
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0);
}
#mega-panel-inner {
  background: #fff;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 12px;
  box-shadow: 0 16px 48px rgba(0,0,0,.22);
  padding: 18px 20px;
  width: min(800px, 92vw);
}
#mega-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #e8ecf1;
}
#mega-panel-title {
  font-size: 14px;
  font-weight: 800;
  color: #12284a;
}
#mega-panel-viewall {
  font-size: 12px;
  font-weight: 700;
  color: var(--primary);
  text-decoration: none;
}
#mega-panel-viewall:hover { text-decoration: underline; }
#mega-panel-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}
.mega-item {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 10px 8px;
  border-radius: 8px;
  text-decoration: none;
  color: inherit;
  transition: background .14s;
}
.mega-item:hover { background: #f4f6f9; }
.mega-item-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: 6px;
  background: #e9edf2;
  display: block;
}
.mega-item-placeholder {
  width: 100%;
  aspect-ratio: 4/3;
  border-radius: 6px;
  background: linear-gradient(135deg, #e9edf2 60%, #d5dbe4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
}
.mega-item-name {
  font-size: 12px;
  font-weight: 700;
  color: #12284a;
  line-height: 1.3;
}
.mega-item-count { font-size: 10px; color: #6b7a90; }

@media (max-width: 900px) {
  #mega-panel-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
  #mega-panel { display: none !important; }
}

/* =====================================================
   RELATED PRODUCTS & UPSELLS — Single Product Page
   ===================================================== */
.related.products,
.upsells.products {
  margin-top: 40px;
  clear: both;
}
.related.products > h2,
.upsells.products > h2 {
  font-size: 22px;
  font-weight: 800;
  color: var(--dark);
  margin-bottom: 18px;
}

/* Force proper grid — override any floated WC defaults */
.product-single-wrap .related.products ul.products,
.product-single-wrap .upsells.products ul.products,
.related.products ul.products,
.upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 18px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  width: 100% !important;
}

.related.products ul.products li.product,
.upsells.products ul.products li.product {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--shadow);
  padding: 0 0 14px !important;
  display: flex !important;
  flex-direction: column;
}

.related.products ul.products li.product a img,
.upsells.products ul.products li.product a img {
  width: 100% !important;
  height: 180px !important;
  object-fit: cover !important;
  margin: 0 0 10px !important;
  display: block !important;
}

.related.products ul.products li.product .woocommerce-loop-product__title,
.upsells.products ul.products li.product .woocommerce-loop-product__title {
  padding: 0 12px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: var(--dark) !important;
  flex: 1;
}

.related.products ul.products li.product .price,
.upsells.products ul.products li.product .price {
  padding: 6px 12px 0 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
}

.related.products ul.products li.product .button,
.upsells.products ul.products li.product .button {
  margin: 8px 12px 0 !important;
  display: inline-flex !important;
  background: var(--primary) !important;
  color: #111 !important;
  border-radius: 6px !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  padding: 8px 14px !important;
}

@media (max-width: 900px) {
  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 500px) {
  .related.products ul.products,
  .upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }
}


/* =====================================================
   RELATED PRODUCTS — homepage card layout on single product
   ===================================================== */

/* Break out of div.product box so related products use full container width */
.woocommerce div.product .related-products-home-style,
.related-products-home-style,
.product-single-wrap .related-products-home-style,
section.related.products.related-products-home-style {
  display: block !important;
  width: 100% !important;
  max-width: 1220px !important;
  box-sizing: border-box;
  margin-top: 40px !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
}

.related-products-home-style > h2 {
  display: block !important;
  width: 100% !important;
  margin-bottom: 25px !important;
  font-size: 28px !important;
  font-weight: 800 !important;
}

.single-related-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  overflow: visible !important;
}
.single-related-grid > li,
.single-related-grid > article,
.single-related-grid .related-product-card {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  overflow: hidden;
}
.related-products-home-style .related-product-card {
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
  padding: 0 !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  overflow: hidden;
  background: #fff;
  box-shadow: var(--shadow) !important;
}
.related-products-home-style .related-product-card .product-thumb {
  display: block;
  padding: 16px 16px 0;
}
.related-products-home-style .related-product-card img {
  width: 100% !important;
  height: 180px !important;
  object-fit: contain !important;
  display: block;
  background: #eef1f5;
  border-radius: 8px !important;
  margin: 0 !important;
}
.related-products-home-style .related-product-card .card-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  height: 100%;
}
.related-products-home-style .related-product-card h3,
.related-products-home-style .related-product-card .woocommerce-loop-product__title {
  margin: 0;
  font-size: 15px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.related-products-home-style .related-product-card h3 a {
  color: inherit;
  text-decoration: none;
}
.related-products-home-style .related-product-card .price {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
}
.related-products-home-style .related-product-card .product-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: auto;
}
.related-products-home-style .related-product-card .product-actions .btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center;
  text-decoration: none;
  line-height: 1.2;
}
.related-products-home-style .related-product-card .btn-primary {
  background: var(--primary) !important;
  color: #111 !important;
  border: 1px solid var(--primary) !important;
}
.related-products-home-style .related-product-card .btn-secondary {
  background: #fff !important;
  color: var(--dark) !important;
  border: 1px solid var(--border) !important;
}
@media (max-width: 1200px) {
  .single-related-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}
@media (max-width: 900px) {
  .single-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .related-products-home-style .related-product-card h3,
  .related-products-home-style .related-product-card .woocommerce-loop-product__title,
  .related-products-home-style .related-product-card .price {
    font-size: 14px !important;
  }
  .related-products-home-style .related-product-card .product-actions .btn {
    min-height: 42px;
    font-size: 12px !important;
  }
}
@media (max-width: 640px) {
  .single-related-grid {
    grid-template-columns: 1fr !important;
  }
  .related-products-home-style .related-product-card img {
    height: 200px !important;
  }
}




/* =====================================================
   MY ACCOUNT — WooCommerce account pages
   ===================================================== */
.myaccount-wrap {
  max-width: 1220px;
  margin: 0 auto;
  padding-top: 10px;
}
.myaccount-page-title {
  font-size: 32px;
  font-weight: 800;
  color: #1b2a4a;
  margin-bottom: 30px;
}

/* Grid: sidebar nav + content */
.myaccount-content .woocommerce {
  display: grid !important;
  grid-template-columns: 260px 1fr !important;
  gap: 30px !important;
  align-items: start;
}
.myaccount-content .woocommerce::after,
.myaccount-content .woocommerce::before {
  display: none !important;
}

/* ── Sidebar navigation ── */
.myaccount-content .woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  background: #1b2a4a !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
}
.myaccount-content .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 8px 0 !important;
}
.myaccount-content .woocommerce-MyAccount-navigation ul li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.myaccount-content .woocommerce-MyAccount-navigation ul li:last-child {
  border-bottom: none;
}
.myaccount-content .woocommerce-MyAccount-navigation ul li a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 22px !important;
  color: rgba(255,255,255,0.8) !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  transition: all 0.2s ease;
}
.myaccount-content .woocommerce-MyAccount-navigation ul li a:hover {
  color: #fff !important;
  background: rgba(255,255,255,0.08) !important;
}
.myaccount-content .woocommerce-MyAccount-navigation ul li.is-active a {
  color: #f5c518 !important;
  background: rgba(255,255,255,0.06) !important;
  font-weight: 800 !important;
}

/* Icons via ::before — specific selectors first, generic fallback last */
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard a::before { content: '🏠'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders a::before { content: '📦'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads a::before { content: '⬇️'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address a::before { content: '📍'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--payment-methods a::before { content: '💳'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account a::before { content: '👤'; }
.myaccount-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: '🚪'; }
/* Fallback icon for plugins adding extra items (My Coupons, etc) */
.myaccount-content .woocommerce-MyAccount-navigation ul li a::before { content: '📄'; }

/* ── Main content area ── */
.myaccount-content .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  background: #fff !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  padding: 30px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
  min-height: 400px;
}
.myaccount-content .woocommerce-MyAccount-content > p:first-child {
  font-size: 16px;
  line-height: 1.7;
  color: #14213d;
}
.myaccount-content .woocommerce-MyAccount-content mark {
  background: none !important;
  color: #f5c518 !important;
  font-weight: 800;
}

/* Orders table */
.myaccount-content .woocommerce-MyAccount-content table {
  width: 100% !important;
  border-collapse: collapse;
  font-size: 14px;
}
.myaccount-content .woocommerce-MyAccount-content table th {
  background: #f0f3f7 !important;
  color: #1b2a4a;
  font-weight: 800;
  padding: 12px 16px;
  text-align: left;
  border-bottom: 2px solid var(--border);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.myaccount-content .woocommerce-MyAccount-content table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
}
.myaccount-content .woocommerce-MyAccount-content table tr:hover td {
  background: rgba(0,0,0,0.015);
}

/* Buttons */
.myaccount-content .woocommerce-MyAccount-content .woocommerce-Button,
.myaccount-content .woocommerce-MyAccount-content .button,
.myaccount-content .woocommerce-MyAccount-content a.button {
  background: #f5c518 !important;
  color: #1b2a4a !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: opacity 0.2s;
}
.myaccount-content .woocommerce-MyAccount-content .button:hover,
.myaccount-content .woocommerce-MyAccount-content a.button:hover {
  opacity: 0.9;
}

/* Forms */
.myaccount-content .woocommerce-MyAccount-content form .form-row {
  margin-bottom: 16px;
}
.myaccount-content .woocommerce-MyAccount-content form label {
  display: block;
  font-weight: 700;
  font-size: 14px;
  color: #1b2a4a;
  margin-bottom: 6px;
}
.myaccount-content .woocommerce-MyAccount-content form input[type="text"],
.myaccount-content .woocommerce-MyAccount-content form input[type="email"],
.myaccount-content .woocommerce-MyAccount-content form input[type="tel"],
.myaccount-content .woocommerce-MyAccount-content form input[type="password"],
.myaccount-content .woocommerce-MyAccount-content form select,
.myaccount-content .woocommerce-MyAccount-content form textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-size: 15px;
  color: #1b2a4a;
  background: #fff;
  transition: border-color 0.2s;
  box-sizing: border-box;
}
.myaccount-content .woocommerce-MyAccount-content form input:focus,
.myaccount-content .woocommerce-MyAccount-content form select:focus,
.myaccount-content .woocommerce-MyAccount-content form textarea:focus {
  border-color: #f5c518;
  outline: none;
  box-shadow: 0 0 0 3px rgba(245,197,24,0.15);
}

/* Address cards */
.myaccount-content .woocommerce-MyAccount-content .woocommerce-Addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.myaccount-content .woocommerce-MyAccount-content .woocommerce-Address {
  background: #f0f3f7;
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 20px;
}

/* Empty / info states */
.myaccount-content .woocommerce-MyAccount-content .woocommerce-message,
.myaccount-content .woocommerce-MyAccount-content .woocommerce-info {
  background: #f0f3f7 !important;
  border-left: 4px solid #f5c518;
  border-radius: 10px;
  padding: 16px 20px;
  font-size: 15px;
  color: #1b2a4a !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .myaccount-content .woocommerce {
    grid-template-columns: 1fr !important;
  }
  .myaccount-content .woocommerce-MyAccount-navigation {
    margin-bottom: 20px !important;
  }
  .myaccount-content .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px;
    padding: 10px !important;
  }
  .myaccount-content .woocommerce-MyAccount-navigation ul li {
    border-bottom: none !important;
  }
  .myaccount-content .woocommerce-MyAccount-navigation ul li a {
    padding: 10px 14px !important;
    font-size: 13px !important;
    border-radius: 8px;
  }
  .myaccount-content .woocommerce-MyAccount-content .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   ALL PARTS / PRODUCT TABLE — Plugin styling
   ===================================================== */

/* Page wrapper — full width container */
.parts-page-wrap {
  max-width: 1220px;
  margin: 0 auto;
  padding-top: 10px;
}
.parts-page-title {
  font-size: 32px;
  font-weight: 800;
  color: #1b2a4a;
  margin-bottom: 24px;
}
.parts-page-content {
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  padding: 28px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

/* Search Box — styled card layout */
.parts-page-content h2,
.parts-page-content h3 {
  font-size: 18px;
  font-weight: 800;
  color: #1b2a4a;
  margin: 0 0 16px 0;
  padding-bottom: 12px;
  border-bottom: 2px solid #f5c518;
  display: inline-block;
}

/* Layout: make search fields into a clean grid */
.parts-page-content input[type="text"],
.parts-page-content input[type="search"] {
  width: 100%;
  padding: 12px 16px !important;
  border: 1px solid #dbe3ef !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  color: #1b2a4a !important;
  background: #f7f9fc !important;
  box-sizing: border-box;
  transition: border-color 0.2s, background 0.2s;
  margin-bottom: 12px;
}
.parts-page-content input[type="text"]:focus,
.parts-page-content input[type="search"]:focus {
  border-color: #f5c518 !important;
  background: #fff !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(245,197,24,0.15) !important;
}

.parts-page-content select {
  width: 100%;
  padding: 12px 16px !important;
  border: 1px solid #dbe3ef !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  color: #1b2a4a !important;
  background: #f7f9fc !important;
  box-sizing: border-box;
  transition: border-color 0.2s;
  margin-bottom: 12px;
  appearance: auto;
  cursor: pointer;
}
.parts-page-content select:focus {
  border-color: #f5c518 !important;
  background: #fff !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(245,197,24,0.15) !important;
}

/* Search button */
.parts-page-content input[type="submit"],
.parts-page-content button[type="submit"],
.parts-page-content input[value="Search"] {
  background: #f5c518 !important;
  color: #1b2a4a !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 32px !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  cursor: pointer;
  transition: opacity 0.2s;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 4px;
}
.parts-page-content input[type="submit"]:hover,
.parts-page-content button[type="submit"]:hover {
  opacity: 0.85;
}

/* Checkbox */
.parts-page-content input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #f5c518;
  cursor: pointer;
  margin-right: 8px;
  vertical-align: middle;
}

/* Select All / Add to Cart links */
.parts-page-content a {
  color: #1b2a4a;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s;
}
.parts-page-content a:hover {
  color: #f5c518;
}

/* Showing / Page info text */
.parts-page-content p,
.parts-page-content > div {
  font-size: 14px;
  color: #5f6b7a;
  line-height: 1.6;
}

/* ── REMOVE GAP between search section and table ── */
.parts-page-content br {
  display: none;
}
.parts-page-content > * {
  margin-bottom: 0;
}
.parts-page-content table {
  margin-top: 16px !important;
}

/* Product table */
.parts-page-content table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  font-size: 14px;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #dbe3ef;
}

/* Table header */
.parts-page-content table thead th,
.parts-page-content table th {
  background: #1b2a4a !important;
  color: #fff !important;
  font-weight: 700 !important;
  padding: 14px 16px !important;
  text-align: left !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  border: none !important;
  white-space: nowrap;
}
.parts-page-content table thead th a {
  color: #fff !important;
  text-decoration: none !important;
}

/* Table rows */
.parts-page-content table tbody td {
  padding: 12px 16px !important;
  border-bottom: 1px solid #eef1f5 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  vertical-align: middle !important;
  color: #1b2a4a;
  background: #fff;
  font-size: 14px;
}
.parts-page-content table tbody tr:nth-child(even) td {
  background: #f9fafb;
}
.parts-page-content table tbody tr:hover td {
  background: #eef3fa;
}

/* Table product images */
.parts-page-content table img {
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
  border-radius: 6px;
  background: #f0f3f7;
  padding: 4px;
}

/* Table buttons */
.parts-page-content table .button,
.parts-page-content table a.button,
.parts-page-content table input[type="submit"] {
  background: #f5c518 !important;
  color: #1b2a4a !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  text-decoration: none !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  transition: opacity 0.2s;
  white-space: nowrap;
}
.parts-page-content table .button:hover,
.parts-page-content table a.button:hover {
  opacity: 0.85;
}

/* Quantity inputs */
.parts-page-content table input[type="number"] {
  width: 65px !important;
  padding: 8px !important;
  border: 1px solid #dbe3ef !important;
  border-radius: 6px !important;
  text-align: center !important;
  font-size: 14px !important;
  color: #1b2a4a !important;
  background: #f7f9fc !important;
}
.parts-page-content table input[type="number"]:focus {
  border-color: #f5c518 !important;
  background: #fff !important;
  outline: none !important;
}

/* Price column */
.parts-page-content table .price,
.parts-page-content table td:nth-child(3) {
  font-weight: 700;
  white-space: nowrap;
}

/* Pagination */
.parts-page-content .pagination,
.parts-page-content .page-numbers,
.parts-page-content nav.woocommerce-pagination {
  margin-top: 20px;
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}
.parts-page-content .page-numbers a,
.parts-page-content .pagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #1b2a4a;
  text-decoration: none;
  transition: all 0.2s;
}
.parts-page-content .page-numbers a:hover,
.parts-page-content .pagination a:hover {
  background: #f5c518;
  border-color: #f5c518;
}
.parts-page-content .page-numbers .current,
.parts-page-content .pagination .current {
  background: #1b2a4a;
  color: #fff;
  border-color: #1b2a4a;
  border-radius: 8px;
  min-width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .parts-page-content {
    padding: 16px;
  }
  .parts-page-content table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* Hide only stray native WooCommerce mini-cart fragments below the footer.
   The previous rule hid nearly every DIV after the footer on WooCommerce pages,
   which also hid floating side-cart launchers on category/product pages. */
.site-footer ~ .widget_shopping_cart,
.site-footer ~ .widget_shopping_cart_content,
.site-footer ~ .woocommerce-mini-cart,
.site-footer ~ ul.cart_list,
.site-footer ~ ul.product_list_widget {
  display: none !important;
}

/* Keep common floating side-cart launchers/containers visible above the footer. */
.xoo-wsc-basket,
.xoo-wsc-container,
.xoo-wsc-modal,
.woofc-area,
.woofc-overlay,
.xt_woofc,
.xt_woofc-wrapper,
.mwb-wooc-notification-container,
[class*="side-cart"],
[id*="side-cart"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* =====================================================
   DOWNLOAD PAGE — Literature / Specs
   ===================================================== */
.download-page-wrap {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
}
.download-hero {
  background: #1b2a4a;
  padding: 40px 32px 20px;
  text-align: center;
}
.download-hero-title {
  color: #fff;
  font-size: 32px;
  font-weight: 800;
  margin: 0 0 24px;
}
/* ── Download content grid ── */
.download-content {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0 24px;
  box-shadow: none;
  max-width: 1220px;
  margin: 0 auto;
  display: block !important;
}

/* TOC */
.download-content .ez-toc-container {
  max-width: 500px;
  margin: 0 auto 20px !important;
  background: #fff !important;
  border: 1px solid #dbe3ef !important;
  border-radius: 10px !important;
  padding: 20px 24px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}
.download-content .ez-toc-title {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #1b2a4a !important;
}
.download-content .ez-toc-list a {
  color: #1b2a4a !important;
  text-decoration: none !important;
  font-weight: 600;
  font-size: 14px;
}
.download-content .ez-toc-list a:hover {
  color: #f5c518 !important;
}

/* h2 = section heading */
.download-content h2 {
  color: #1b2a4a !important;
  font-weight: 800 !important;
  font-size: 24px !important;
  text-align: center !important;
  margin: 24px 0 16px !important;
  padding: 0 !important;
  border: none !important;
}

/* h3 = category label — MUST be directly under the image */
.download-content h3 {
  color: #1b2a4a !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-align: center !important;
  margin: -4px auto 24px !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  border: none !important;
  max-width: 160px;
}
.download-content h3 a {
  font-size: 14px !important;
}

/* Images — centered, small, with shadow */
.download-content figure,
.download-content .wp-block-image {
  display: block !important;
  text-align: center !important;
  margin: 0 auto 4px !important;
  max-width: 160px;
}

.download-content img {
  width: 130px !important;
  height: 110px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 10px !important;
  display: inline-block !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.download-content figcaption {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #1b2a4a !important;
  text-align: center !important;
  margin-top: 6px !important;
  line-height: 1.3 !important;
}

/* Paragraphs */
.download-content p {
  text-align: center;
  margin: 8px 0;
  color: #5f6b7a;
}

/* Links */
.download-content a {
  color: #1b2a4a;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: #f5c518;
  text-underline-offset: 3px;
}
.download-content a:hover {
  color: #f5c518;
}

/* ── JS-powered grid: wrap each figure+h3 pair into a card ── */
.download-card-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 20px 16px !important;
  margin: 20px 0 !important;
  justify-items: center;
}
.download-card-grid .download-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 6px;
}
.download-card-grid .download-card img {
  width: 130px !important;
  height: 110px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  background: #fff !important;
  padding: 10px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.download-card-grid .download-card .download-card-label {
  font-size: 14px;
  font-weight: 700;
  color: #1b2a4a;
  line-height: 1.3;
  max-width: 150px;
}
.download-card-grid .download-card .download-card-label a {
  color: #1b2a4a;
  text-decoration: underline;
  text-decoration-color: #f5c518;
}

@media (max-width: 900px) {
  .download-card-grid {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .download-card-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  .download-card-grid .download-card img {
    width: 90px !important;
    height: 75px !important;
  }
  .download-card-grid .download-card .download-card-label {
    font-size: 11px;
  }
}

/* =====================================================
   ARTICLES PAGE
   ===================================================== */
.articles-page-wrap {
  max-width: 1220px;
  margin: 0 auto;
}
.articles-hero {
  background: #1b2a4a;
  border-radius: 12px 12px 0 0;
  padding: 48px 32px;
  text-align: center;
}
.articles-hero-title {
  color: #fff;
  font-size: 36px;
  font-weight: 800;
  margin: 0;
}
.articles-content {
  background: #fff;
  border: 1px solid #dbe3ef;
  border-top: none;
  border-radius: 0 0 12px 12px;
  padding: 40px 32px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

/* Article cards grid */
.articles-content .wp-block-post-template,
.articles-content .wp-block-query .wp-block-post-template,
.articles-content > ul,
.articles-content > div > ul {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 28px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Individual article card */
.articles-content .wp-block-post,
.articles-content article,
.articles-content > ul > li,
.articles-content .wp-block-post-template > li {
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  transition: box-shadow 0.2s;
}
.articles-content .wp-block-post:hover,
.articles-content article:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,0.12);
}

/* Article featured image */
.articles-content .wp-block-post-featured-image img,
.articles-content article img,
.articles-content .attachment-post-thumbnail {
  width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  display: block;
  border-radius: 0 !important;
}

/* Article title */
.articles-content .wp-block-post-title,
.articles-content article h2,
.articles-content h2 a {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1b2a4a !important;
  padding: 16px 20px 8px !important;
  margin: 0 !important;
  text-decoration: none !important;
  text-align: center;
  line-height: 1.3;
}
.articles-content h2 a:hover {
  color: #f5c518 !important;
}

/* Article excerpt */
.articles-content .wp-block-post-excerpt,
.articles-content article p,
.articles-content .entry-summary {
  padding: 0 20px 20px !important;
  font-size: 14px;
  color: #5f6b7a;
  line-height: 1.6;
  text-align: center;
}

/* Article read more link */
.articles-content .wp-block-post-excerpt__more-link,
.articles-content a.more-link {
  display: inline-block;
  background: #f5c518;
  color: #1b2a4a !important;
  padding: 10px 20px;
  border-radius: 8px;
  font-weight: 800;
  font-size: 13px;
  text-decoration: none !important;
  margin: 0 20px 20px;
}

@media (max-width: 768px) {
  .articles-content .wp-block-post-template,
  .articles-content > ul {
    grid-template-columns: 1fr !important;
  }
  .download-hero, .articles-hero {
    padding: 28px 20px;
  }
  .download-hero-title, .articles-hero-title {
    font-size: 24px;
  }
  .download-content, .articles-content {
    padding: 20px 16px;
  }
}

/* =====================================================
   ELEMENTOR COMPATIBILITY
   ===================================================== */
.elementor-page-wrap { max-width: 100%; padding: 0; }
.elementor-fullwidth-main { width: 100%; max-width: 100%; }
.elementor-page .section { padding: 0; }
.elementor-page .container { width: 100%; max-width: 100%; }
.elementor-section.elementor-section-boxed > .elementor-container { max-width: 1220px; }
.elementor-section.elementor-section-full_width > .elementor-container { max-width: 100%; }
body.elementor-page main.section { padding: 0; }
body.elementor-canvas-page { margin: 0; padding: 0; }

/* Ensure Elementor widgets inherit theme fonts */
.elementor-widget-text-editor,
.elementor-widget-heading .elementor-heading-title {
  font-family: inherit;
}

/* Elementor buttons match theme style */
.elementor-button {
  border-radius: 10px !important;
  font-weight: 700 !important;
}

/* Header search */
.header-actions{position:relative}
.header-search-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
  transition:.2s ease;
}
.header-search-toggle:hover,
.header-search-toggle[aria-expanded="true"]{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.26);
}
.header-search-toggle svg{width:22px;height:22px}
.header-search-panel{
  position:absolute;
  right:0;
  top:calc(100% + 12px);
  width:min(420px, calc(100vw - 32px));
  padding:14px;
  border-radius:16px;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 18px 42px rgba(15,37,68,.16);
  z-index:260;
}
.header-search-form{display:flex;gap:10px;align-items:center}
.header-search-input{
  flex:1;
  min-width:0;
  height:48px;
  padding:0 14px;
  border:1px solid var(--border);
  border-radius:12px;
  font-size:15px;
}
.header-search-submit{
  height:48px;
  padding:0 18px;
  border:0;
  border-radius:12px;
  background:var(--primary);
  color:#111;
  font-weight:800;
  cursor:pointer;
}

/* Checkout improvements */
.woocommerce-checkout .woocommerce,
.woocommerce-cart .woocommerce{
  font-size:16px;
}
.woocommerce-checkout form.checkout,
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-checkout-review-order,
.woocommerce-checkout #payment{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
}
.woocommerce-checkout form.checkout{
  padding:28px;
  box-shadow:var(--shadow);
}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout .wc_payment_methods{
  color:var(--text);
}
.woocommerce-checkout .col2-set{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:28px;
  margin-bottom:28px;
}
.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2{
  width:100% !important;
  float:none !important;
}
.woocommerce form .form-row{
  margin:0 0 16px;
  width:100%;
}
.woocommerce form .form-row label{font-weight:700;color:var(--text);margin-bottom:8px}
.woocommerce form .input-text,
.woocommerce form select,
.woocommerce form textarea{
  min-height:48px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  font-size:15px;
}
.woocommerce form textarea{min-height:112px}
.woocommerce-checkout .shop_table{
  border:0 !important;
  margin:0 !important;
  border-radius:16px;
  overflow:hidden;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  padding:14px 16px !important;
  border-color:#edf2f7 !important;
}
.woocommerce-checkout #payment{
  background:#f8fafc !important;
  padding:20px;
  margin-top:18px;
}
.woocommerce-checkout #payment ul.payment_methods{
  border:0 !important;
  margin:0 0 14px !important;
  padding:0 !important;
}
.woocommerce-checkout #payment ul.payment_methods > li{
  list-style:none;
  margin:0 0 14px !important;
  padding:16px !important;
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
}
.woocommerce-checkout #payment ul.payment_methods > li > label{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  font-weight:800;
  color:var(--text);
}
.woocommerce-checkout #payment div.payment_box{
  background:#fff !important;
  border:1px solid #e7edf5 !important;
  border-radius:14px;
  box-shadow:none !important;
  margin:14px 0 0 !important;
  padding:16px !important;
  color:var(--muted);
}
.woocommerce-checkout #payment div.payment_box:before{display:none !important}
.woocommerce-checkout #payment img,
.woocommerce-checkout #payment .payment_method_paypal img,
.woocommerce-checkout #payment .payment_method_ppcp-gateway img,
.woocommerce-checkout #payment .payment_method_stripe img,
.woocommerce-checkout #payment .wc-credit-card-form-card-number + img,
.woocommerce-checkout .payment_methods img{
  display:inline-block !important;
  vertical-align:middle;
  width:auto !important;
  max-width:120px !important;
  max-height:32px !important;
  height:auto !important;
  object-fit:contain !important;
  margin:0 0 0 8px !important;
}
.woocommerce-checkout #payment .payment_method_ppcp-gateway .ppc-button-wrapper img,
.woocommerce-checkout #payment .payment_method_paypal .paypal-button img,
.woocommerce-checkout #payment .gpay-card-info-container img,
.woocommerce-checkout #payment .google-pay-button img,
.woocommerce-checkout #payment .wc-stripe-payment-request-wrapper img{
  max-width:100% !important;
  max-height:44px !important;
  margin:0 !important;
}
.woocommerce-checkout .wc_payment_method .payment_box .form-row,
.woocommerce-checkout #payment .form-row{
  margin-bottom:14px;
}
.woocommerce-checkout #payment .place-order{
  padding-top:8px !important;
}
.woocommerce-checkout #place_order{
  width:100%;
  min-height:54px;
  font-size:18px !important;
  border-radius:14px !important;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  font-size:14px;
  color:var(--muted);
}
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message{
  border-radius:14px;
}

@media (max-width: 1024px){
  .woocommerce-checkout .col2-set{grid-template-columns:1fr}
}
@media (max-width: 700px){
  .header-search-panel{left:0;right:auto;width:min(100vw - 32px, 420px)}
  .header-search-form{flex-direction:column;align-items:stretch}
  .header-search-submit{width:100%}
  .woocommerce-checkout form.checkout{padding:18px}
  .woocommerce-checkout #payment ul.payment_methods > li{padding:14px !important}
}




/* Header search icon final fix */
.header-search-toggle{
  font-size:0;
  line-height:1;
}
.header-search-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  line-height:1;
  width:22px;
  height:22px;
  color:#fff;
}
.header-search-toggle svg,
.header-search-icon::before,
.header-search-icon::after{
  display:none !important;
  content:none !important;
}


/* Checkout definitive layout fix */
body.woocommerce-checkout .site-main,
body.woocommerce-cart .site-main{
  padding-top:24px;
  padding-bottom:40px;
}
body.woocommerce-checkout .woocommerce,
body.woocommerce-cart .woocommerce{
  font-size:16px !important;
  line-height:1.5;
}
body.woocommerce-checkout form.checkout{
  display:grid !important;
  grid-template-columns:minmax(0, 1.15fr) minmax(360px, .85fr);
  gap:32px;
  align-items:start;
}
body.woocommerce-checkout .col2-set{
  display:block !important;
  margin:0 !important;
  min-width:0;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  margin:0 !important;
}
body.woocommerce-checkout #order_review{
  position:sticky;
  top:24px;
  align-self:start;
}
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:22px;
  box-shadow:var(--shadow);
  margin-bottom:22px;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3,
body.woocommerce-checkout #order_review_heading{
  margin:0 0 18px !important;
  font-size:28px !important;
  line-height:1.15;
  color:var(--text);
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .shipping_address{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px 16px;
}
body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last,
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout .form-row-address,
body.woocommerce-checkout .validate-required{
  width:100% !important;
  float:none !important;
  clear:none !important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #order_comments_field{
  grid-column:1 / -1;
}
body.woocommerce-checkout .woocommerce form .form-row{
  margin:0 !important;
}
body.woocommerce-checkout .woocommerce form .form-row label{
  display:block;
  font-size:14px;
}
body.woocommerce-checkout .woocommerce form .input-text,
body.woocommerce-checkout .woocommerce form select,
body.woocommerce-checkout .woocommerce form textarea{
  width:100% !important;
  min-height:50px !important;
  font-size:16px !important;
}
body.woocommerce-checkout .woocommerce form textarea{
  min-height:120px !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout #payment{
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:18px !important;
  box-shadow:var(--shadow);
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  overflow:hidden;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  font-size:15px !important;
}
body.woocommerce-checkout #payment{
  padding:20px !important;
  margin-top:18px !important;
}
body.woocommerce-checkout #payment ul.payment_methods > li{
  padding:16px !important;
}
body.woocommerce-checkout #payment ul.payment_methods > li > label{
  font-size:16px !important;
  line-height:1.35;
}
body.woocommerce-checkout #payment div.payment_box{
  margin-top:14px !important;
  padding:16px !important;
}
body.woocommerce-checkout #payment .payment_box p,
body.woocommerce-checkout #payment .payment_box label,
body.woocommerce-checkout #payment .payment_box span{
  font-size:14px !important;
}
body.woocommerce-checkout #payment img,
body.woocommerce-checkout .payment_methods img,
body.woocommerce-checkout #payment .payment_box img{
  max-width:72px !important;
  max-height:28px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  vertical-align:middle !important;
}
body.woocommerce-checkout #payment .payment_method_paypal .payment_box img,
body.woocommerce-checkout #payment .payment_method_ppcp-gateway .payment_box img,
body.woocommerce-checkout #payment .payment_method_stripe .payment_box img,
body.woocommerce-checkout #payment .wc-stripe-payment-request-wrapper img,
body.woocommerce-checkout #payment .gpay-card-info-container img,
body.woocommerce-checkout #payment .google-pay-button img,
body.woocommerce-checkout #payment .paypal-button img,
body.woocommerce-checkout #payment .ppc-button-wrapper img{
  max-width:220px !important;
  max-height:52px !important;
}
body.woocommerce-checkout #payment .wc-stripe-payment-request-wrapper,
body.woocommerce-checkout #payment .paypal-button-container,
body.woocommerce-checkout #payment .ppc-button-wrapper,
body.woocommerce-checkout #payment .google-pay-button,
body.woocommerce-checkout #payment .gpay-card-info-container{
  max-width:240px !important;
  width:100% !important;
  overflow:hidden !important;
}
body.woocommerce-checkout #payment .wc-stripe-payment-request-button,
body.woocommerce-checkout #payment .google-pay-button,
body.woocommerce-checkout #payment .paypal-button{
  max-width:240px !important;
}
body.woocommerce-checkout #payment .wc-stripe-payment-request-wrapper *,
body.woocommerce-checkout #payment .paypal-button-container *,
body.woocommerce-checkout #payment .ppc-button-wrapper *,
body.woocommerce-checkout #payment .google-pay-button *,
body.woocommerce-checkout #payment .gpay-card-info-container *{
  max-width:100% !important;
  box-sizing:border-box;
}
body.woocommerce-checkout #payment .wc-stripe-card-icons,
body.woocommerce-checkout #payment .wc-credit-card-form-card-icons{
  display:flex !important;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin:6px 0 10px !important;
}
body.woocommerce-checkout #payment .wc-stripe-card-icons img,
body.woocommerce-checkout #payment .wc-credit-card-form-card-icons img,
body.woocommerce-checkout #payment img.stripe-card-icon,
body.woocommerce-checkout #payment .stripe-card-group img{
  width:34px !important;
  max-width:34px !important;
  height:22px !important;
  max-height:22px !important;
  padding:2px !important;
  border:1px solid #d8e0ea;
  border-radius:6px;
  background:#fff;
  object-fit:contain !important;
  margin:0 !important;
}
body.woocommerce-checkout #payment .wc-stripe-elements-field,
body.woocommerce-checkout #payment #stripe-card-element,
body.woocommerce-checkout #payment .StripeElement{
  padding:12px 14px !important;
  border:1px solid var(--border) !important;
  border-radius:12px !important;
  background:#fff !important;
  min-height:48px;
}
body.woocommerce-checkout #place_order{
  width:100% !important;
}
@media (max-width: 1100px){
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-checkout #order_review{
    position:static;
  }
}
@media (max-width: 700px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address{
    grid-template-columns:1fr;
  }
}


/* Checkout layout v009 - match reference two-column distribution */
body.woocommerce-checkout .site-main .container{
  max-width:1240px !important;
}
body.woocommerce-checkout form.checkout{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 430px !important;
  gap:34px !important;
  align-items:start !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
body.woocommerce-checkout .col2-set{
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
}
body.woocommerce-checkout #order_review_heading{
  display:none !important;
}
body.woocommerce-checkout #order_review{
  position:sticky;
  top:24px;
  align-self:start;
}
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 0 22px 0 !important;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  font-size:22px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  text-transform:uppercase !important;
  margin:0 0 22px 0 !important;
  padding:0 !important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .shipping_address{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:18px 20px !important;
}
body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last,
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout .validate-required{
  width:100% !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #order_comments_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #shipping_method{
  grid-column:1 / -1 !important;
}
body.woocommerce-checkout .woocommerce form .form-row label{
  display:block !important;
  margin:0 0 8px 0 !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:#1f2937 !important;
}
body.woocommerce-checkout .woocommerce form .input-text,
body.woocommerce-checkout .woocommerce form select,
body.woocommerce-checkout .woocommerce form textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single{
  width:100% !important;
  min-height:46px !important;
  height:46px !important;
  padding:10px 14px !important;
  border:2px solid #e5e7eb !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  font-size:15px !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:24px !important;
  padding-left:0 !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:42px !important;
  right:10px !important;
}
body.woocommerce-checkout .woocommerce form textarea{
  min-height:110px !important;
  height:auto !important;
  resize:vertical;
}
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .create-account{
  margin-top:18px !important;
}
body.woocommerce-checkout #ship-to-different-address{
  margin:8px 0 0 !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-transform:none !important;
}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
body.woocommerce-checkout #order_review{
  background:#f5f5f5 !important;
  border:1px solid #ececec !important;
  padding:28px !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.woocommerce-checkout #order_review .shop_table{
  background:#fff !important;
  border:1px solid #ebebeb !important;
  border-radius:0 !important;
  overflow:hidden !important;
  margin:0 0 20px 0 !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  font-size:14px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  color:#222 !important;
  background:#fff !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  padding:16px 18px !important;
  border-bottom:1px solid #ededed !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{
  font-weight:700 !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  font-weight:800 !important;
}
body.woocommerce-checkout #payment{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  margin:0 0 16px 0 !important;
  padding:0 !important;
  border:0 !important;
}
body.woocommerce-checkout #payment ul.payment_methods > li{
  background:#fff !important;
  border:1px solid #e6e6e6 !important;
  border-radius:0 !important;
  padding:14px 16px !important;
  margin:0 0 12px 0 !important;
}
body.woocommerce-checkout #payment ul.payment_methods > li > label{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  font-size:15px !important;
  font-weight:700 !important;
}
body.woocommerce-checkout #payment div.payment_box{
  background:#fff !important;
  border:1px solid #eaeaea !important;
  border-radius:0 !important;
  margin:12px 0 0 0 !important;
  padding:14px !important;
}
body.woocommerce-checkout #payment img,
body.woocommerce-checkout .payment_methods img,
body.woocommerce-checkout #payment .payment_box img{
  width:auto !important;
  max-width:78px !important;
  max-height:26px !important;
  height:auto !important;
  object-fit:contain !important;
}
body.woocommerce-checkout #payment .payment_method_paypal .payment_box img,
body.woocommerce-checkout #payment .payment_method_ppcp-gateway .payment_box img,
body.woocommerce-checkout #payment .wc-stripe-payment-request-wrapper img,
body.woocommerce-checkout #payment .google-pay-button img,
body.woocommerce-checkout #payment .gpay-card-info-container img,
body.woocommerce-checkout #payment .paypal-button img,
body.woocommerce-checkout #payment .ppc-button-wrapper img{
  max-width:180px !important;
  max-height:42px !important;
}
body.woocommerce-checkout #payment .wc-stripe-card-icons,
body.woocommerce-checkout #payment .wc-credit-card-form-card-icons{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  margin:8px 0 10px !important;
}
body.woocommerce-checkout #payment .wc-stripe-card-icons img,
body.woocommerce-checkout #payment .wc-credit-card-form-card-icons img,
body.woocommerce-checkout #payment img.stripe-card-icon{
  width:32px !important;
  max-width:32px !important;
  height:20px !important;
  max-height:20px !important;
  border:1px solid #d8dce2 !important;
  background:#fff !important;
  padding:2px !important;
  margin:0 !important;
  object-fit:contain !important;
}
body.woocommerce-checkout #payment .StripeElement,
body.woocommerce-checkout #payment .wc-stripe-elements-field,
body.woocommerce-checkout #payment #stripe-card-element{
  border:2px solid #e5e7eb !important;
  border-radius:0 !important;
  min-height:46px !important;
  padding:10px 14px !important;
  background:#fff !important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  font-size:13px !important;
  line-height:1.6 !important;
  color:#4b5563 !important;
}
body.woocommerce-checkout #place_order{
  width:100% !important;
  min-height:50px !important;
  font-size:18px !important;
  font-weight:800 !important;
  border-radius:0 !important;
}
@media (max-width: 1100px){
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-checkout #order_review{
    position:static !important;
  }
}
@media (max-width: 700px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .shipping_address{
    grid-template-columns:1fr !important;
  }
}


/* Checkout clean page rendering - remove generic article layout interference */
body.woocommerce-checkout .checkout-page-wrap{
  max-width:1240px;
}
body.woocommerce-checkout .checkout-clean-layout{
  background:transparent;
  border:0;
  box-shadow:none;
}
body.woocommerce-checkout .checkout-page-header{
  margin-bottom:22px;
}
body.woocommerce-checkout .checkout-page-header .section-title{
  margin:0;
}
body.woocommerce-checkout .checkout-clean-layout > .lwptoc,
body.woocommerce-checkout .checkout-clean-layout .toc,
body.woocommerce-checkout .checkout-clean-layout .ez-toc-container{
  display:none !important;
}


/* Mega menu without subcategory images */
.mega-item-img,
.mega-item-placeholder{
  display:none !important;
}
.mega-item{
  min-height:auto !important;
  padding:14px 12px !important;
}


/* Mega menu hard fix - remove subcategory image area */
#mega-panel-grid .mega-item-img,
#mega-panel-grid .mega-item-placeholder,
#mega-panel-grid .mega-item > img,
#mega-panel-grid .mega-item > .thumb,
#mega-panel-grid .mega-item > .image,
#mega-panel-grid .mega-item::before{
  display:none !important;
  content:none !important;
}
#mega-panel-grid .mega-item{
  min-height:unset !important;
  padding-top:14px !important;
}


/* Home category carousel */
.home-category-carousel{
  position:relative;
  overflow:hidden;
}
.home-category-track{
  display:flex;
  gap:22px;
  overflow-x:auto;
  padding:4px 2px 14px;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.home-category-track::-webkit-scrollbar{
  height:10px;
}
.home-category-track::-webkit-scrollbar-thumb{
  background:#cfd8e3;
  border-radius:999px;
}
.category-carousel-card{
  flex:0 0 370px;
  min-width:370px;
  scroll-snap-align:start;
}
.category-carousel-card .category-card-media{
  display:block;
}
.category-carousel-card img{
  width:100%;
  aspect-ratio:16/11;
  object-fit:contain;
  padding:18px;
  background:#eef2f6;
}
.category-carousel-card .card-body{
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.category-carousel-card .card-body p{
  flex:1 1 auto;
}
@media (max-width: 900px){
  .category-carousel-card{
    flex:0 0 320px;
    min-width:320px;
  }
}
@media (max-width: 640px){
  .category-carousel-card{
    flex:0 0 86%;
    min-width:86%;
  }
}


/* Home category carousel v016 definitive */
.home-category-carousel{
  position:relative !important;
  width:100% !important;
  padding:0 44px !important;
}
.home-category-carousel .home-category-track{
  --home-category-gap:22px;
  --home-category-card-width:calc((100% - (var(--home-category-gap) * 3)) / 4);
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:var(--home-category-gap) !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  width:100% !important;
  margin:0 !important;
  padding:6px 2px 14px !important;
  scroll-snap-type:x proximity !important;
  -webkit-overflow-scrolling:touch !important;
  align-items:stretch !important;
  box-sizing:border-box !important;
}
.home-category-carousel .home-category-track > article,
.home-category-carousel .home-category-track > .category-carousel-card{
  display:flex !important;
  flex:0 0 var(--home-category-card-width) !important;
  flex-direction:column !important;
  width:var(--home-category-card-width) !important;
  min-width:var(--home-category-card-width) !important;
  max-width:var(--home-category-card-width) !important;
  float:none !important;
  margin:0 !important;
  scroll-snap-align:start !important;
  box-sizing:border-box !important;
}
.home-category-carousel .category-carousel-card{
  overflow:hidden !important;
}
.home-category-carousel .category-carousel-card .category-card-media{
  display:block !important;
}
.home-category-carousel .category-carousel-card img{
  display:block !important;
  width:100% !important;
  height:265px !important;
  max-width:100% !important;
  object-fit:contain !important;
  background:#eef2f6 !important;
  padding:18px !important;
}
.home-category-carousel .category-carousel-card .card-body{
  min-height:250px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
.home-category-carousel .category-carousel-card .card-body p{
  flex:1 1 auto !important;
}
.home-category-carousel .home-category-nav{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:3 !important;
  width:36px !important;
  height:36px !important;
  border:1px solid #d7dfeb !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#102a56 !important;
  font-size:28px !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  box-shadow:0 8px 20px rgba(0,0,0,.08) !important;
}
.home-category-carousel .home-category-prev{ left:0 !important; }
.home-category-carousel .home-category-next{ right:0 !important; }
.home-category-carousel .home-category-track::-webkit-scrollbar{ height:10px; }
.home-category-carousel .home-category-track::-webkit-scrollbar-thumb{ background:#cfd8e3; border-radius:999px; }

@media (max-width: 1200px){
  .home-category-carousel .home-category-track{
    --home-category-card-width:calc((100% - (var(--home-category-gap) * 2)) / 3);
  }
}
@media (max-width: 900px){
  .home-category-carousel{ padding:0 18px !important; }
  .home-category-carousel .home-category-track{
    --home-category-card-width:320px;
  }
  .home-category-carousel .home-category-track > article,
  .home-category-carousel .home-category-track > .category-carousel-card{
    width:320px !important;
    min-width:320px !important;
    max-width:320px !important;
    flex-basis:320px !important;
  }
}
@media (max-width: 640px){
  .home-category-carousel .home-category-nav{ display:none !important; }
  .home-category-carousel{ padding:0 !important; }
  .home-category-carousel .home-category-track{
    --home-category-card-width:86%;
  }
  .home-category-carousel .home-category-track > article,
  .home-category-carousel .home-category-track > .category-carousel-card{
    width:86% !important;
    min-width:86% !important;
    max-width:86% !important;
    flex-basis:86% !important;
  }
}


/* Home category carousel - prevent image-protection overlay while sliding */
#categories .home-category-carousel .category-card-media{
  display:block !important;
  -webkit-user-drag:none !important;
  user-select:none !important;
}
#categories .home-category-carousel .category-card-media img{
  pointer-events:none !important;
  -webkit-user-drag:none !important;
  user-select:none !important;
}


/* Hide injected copy-protection alert inside category carousel interactions */
#categories .home-category-carousel{
  isolation:isolate !important;
}
#categories .home-category-carousel img{
  -webkit-user-drag:none !important;
  user-select:none !important;
}
#categories .home-category-carousel *[style*="Content is protected"],
#categories .home-category-carousel .alert,
#categories .home-category-carousel .warning,
#categories .home-category-carousel .protected-alert{
  display:none !important;
}


/* Center product-category archive content */
body.tax-product_cat .shop-container,
body.post-type-archive-product .shop-container{
  max-width:1240px !important;
  margin:0 auto !important;
}
body.tax-product_cat .shop-main,
body.post-type-archive-product .shop-main{
  width:100% !important;
  max-width:100% !important;
}
body.tax-product_cat .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header,
body.tax-product_cat .woocommerce-notices-wrapper,
body.post-type-archive-product .woocommerce-notices-wrapper,
body.tax-product_cat .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .products,
body.post-type-archive-product .products{
  max-width:1120px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.tax-product_cat .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering{
  float:right !important;
}
body.tax-product_cat .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count{
  float:left !important;
}
body.tax-product_cat .woocommerce:after,
body.post-type-archive-product .woocommerce:after{
  content:"";
  display:block;
  clear:both;
}
@media (max-width: 900px){
  body.tax-product_cat .woocommerce-result-count,
  body.post-type-archive-product .woocommerce-result-count,
  body.tax-product_cat .woocommerce-ordering,
  body.post-type-archive-product .woocommerce-ordering{
    float:none !important;
    max-width:1120px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* Full-width product archive/category layout */
.shop-layout-fullwidth .shop-container-fullwidth{
  max-width:1240px !important;
  margin:0 auto !important;
  display:block !important;
}
.shop-layout-fullwidth .shop-main-fullwidth{
  width:100% !important;
  max-width:100% !important;
  margin:0 auto !important;
}
body.tax-product_cat .shop-widget,
body.post-type-archive-product .shop-widget,
body.tax-product_cat aside,
body.post-type-archive-product aside{
  display:none !important;
}
body.tax-product_cat .woocommerce,
body.post-type-archive-product .woocommerce{
  max-width:1240px !important;
  margin:0 auto !important;
}
body.tax-product_cat .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header,
body.tax-product_cat .woocommerce-notices-wrapper,
body.post-type-archive-product .woocommerce-notices-wrapper,
body.tax-product_cat .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat ul.products,
body.post-type-archive-product ul.products{
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}


/* Category/shop single-column layout hard fix */
.shop-layout-single-column .shop-container-single-column{
  display:block !important;
  grid-template-columns:none !important;
  max-width:1240px !important;
  width:100% !important;
  margin:0 auto !important;
}
.shop-layout-single-column .shop-container-single-column::before,
.shop-layout-single-column .shop-container-single-column::after{
  display:none !important;
  content:none !important;
}
body.tax-product_cat .shop-layout-single-column .woocommerce,
body.post-type-archive-product .shop-layout-single-column .woocommerce,
body.tax-product_tag .shop-layout-single-column .woocommerce{
  display:block !important;
  width:100% !important;
  max-width:1240px !important;
  margin:0 auto !important;
}
body.tax-product_cat .shop-layout-single-column .woocommerce > * ,
body.post-type-archive-product .shop-layout-single-column .woocommerce > * ,
body.tax-product_tag .shop-layout-single-column .woocommerce > * {
  max-width:1240px !important;
}
body.tax-product_cat .shop-layout-single-column aside,
body.post-type-archive-product .shop-layout-single-column aside,
body.tax-product_tag .shop-layout-single-column aside,
body.tax-product_cat .shop-layout-single-column .sidebar,
body.post-type-archive-product .shop-layout-single-column .sidebar,
body.tax-product_tag .shop-layout-single-column .sidebar,
body.tax-product_cat .shop-layout-single-column .shop-sidebar,
body.post-type-archive-product .shop-layout-single-column .shop-sidebar,
body.tax-product_tag .shop-layout-single-column .shop-sidebar,
body.tax-product_cat .shop-layout-single-column .widget-area,
body.post-type-archive-product .shop-layout-single-column .widget-area,
body.tax-product_tag .shop-layout-single-column .widget-area{
  display:none !important;
  width:0 !important;
  max-width:0 !important;
  flex:0 0 0 !important;
}
body.tax-product_cat .shop-layout-single-column ul.products,
body.post-type-archive-product .shop-layout-single-column ul.products,
body.tax-product_tag .shop-layout-single-column ul.products{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:28px !important;
  width:100% !important;
  max-width:1240px !important;
  margin:0 auto !important;
}
body.tax-product_cat .shop-layout-single-column .woocommerce-products-header,
body.post-type-archive-product .shop-layout-single-column .woocommerce-products-header,
body.tax-product_tag .shop-layout-single-column .woocommerce-products-header,
body.tax-product_cat .shop-layout-single-column .woocommerce-result-count,
body.post-type-archive-product .shop-layout-single-column .woocommerce-result-count,
body.tax-product_tag .shop-layout-single-column .woocommerce-result-count,
body.tax-product_cat .shop-layout-single-column .woocommerce-ordering,
body.post-type-archive-product .shop-layout-single-column .woocommerce-ordering,
body.tax-product_tag .shop-layout-single-column .woocommerce-ordering{
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
@media (max-width: 1100px){
  body.tax-product_cat .shop-layout-single-column ul.products,
  body.post-type-archive-product .shop-layout-single-column ul.products,
  body.tax-product_tag .shop-layout-single-column ul.products{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width: 700px){
  body.tax-product_cat .shop-layout-single-column ul.products,
  body.post-type-archive-product .shop-layout-single-column ul.products,
  body.tax-product_tag .shop-layout-single-column ul.products{
    grid-template-columns:1fr !important;
  }
}


/* Product archive true single-column layout v022 */
.product-archive-layout .product-archive-single-column{
  display:block !important;
  max-width:1240px !important;
  width:100% !important;
  margin:0 auto !important;
}
.product-archive-layout .product-archive-single-column::before,
.product-archive-layout .product-archive-single-column::after{
  display:none !important;
  content:none !important;
}
.product-archive-layout .product-archive-single-column > *{
  width:100% !important;
}
.product-archive-layout .product-archive-single-column .woocommerce{
  display:block !important;
  width:100% !important;
  max-width:1240px !important;
  margin:0 auto !important;
}
.product-archive-layout .product-archive-single-column aside,
.product-archive-layout .product-archive-single-column .sidebar,
.product-archive-layout .product-archive-single-column .shop-sidebar,
.product-archive-layout .product-archive-single-column .widget-area,
.product-archive-layout .product-archive-single-column .shop-widget{
  display:none !important;
  width:0 !important;
  max-width:0 !important;
  flex:0 0 0 !important;
}
.product-archive-layout .woocommerce-products-header,
.product-archive-layout .woocommerce-result-count,
.product-archive-layout .woocommerce-ordering,
.product-archive-layout .woocommerce-notices-wrapper,
.product-archive-layout ul.products{
  width:100% !important;
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.product-archive-layout ul.products{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:28px !important;
}
@media (max-width:1100px){
  .product-archive-layout ul.products{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width:700px){
  .product-archive-layout ul.products{
    grid-template-columns:1fr !important;
  }
}


/* Contact page */
.contact-page-wrap{
  max-width:1240px !important;
}
.contact-page-hero{
  display:grid;
  grid-template-columns:minmax(0, 1.25fr) minmax(320px, .75fr);
  gap:28px;
  align-items:stretch;
  margin-bottom:28px;
}
.contact-page-copy,
.contact-info-card,
.contact-form-card,
.contact-side-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:var(--shadow);
}
.contact-page-copy{
  padding:34px;
}
.contact-page-copy .section-title{
  margin:8px 0 14px;
}
.contact-page-intro{
  max-width:720px;
  margin:0 0 20px;
  font-size:18px;
  color:var(--muted);
}
.contact-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.contact-info-card{
  padding:28px;
  height:100%;
}
.contact-info-card h3,
.contact-form-card h2,
.contact-side-card h3{
  margin:0 0 14px;
  font-size:26px;
  line-height:1.15;
}
.contact-info-list,
.contact-bullet-list{
  list-style:none;
  padding:0;
  margin:0;
}
.contact-info-list li{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:14px 0;
  border-bottom:1px solid #e9eef5;
}
.contact-info-list li:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.contact-info-list strong{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#6b7a90;
}
.contact-info-list a,
.contact-info-list span{
  color:var(--text);
  font-size:18px;
  line-height:1.5;
}
.contact-content-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:28px;
  align-items:start;
}
.contact-form-card{
  padding:30px;
}
.contact-card-head{
  margin-bottom:20px;
}
.contact-card-head p{
  margin:0;
  color:var(--muted);
}
.contact-page-content .lwptoc,
.contact-page-content .ez-toc-container,
.contact-page-content [class*="toc"],
.contact-page-content nav[aria-label*="Table of Contents"],
.contact-page-content .rank-math-toc-block{
  display:none !important;
}
.contact-page-content ul:empty,
.contact-page-content p:empty{
  display:none !important;
}
.contact-page-content > h1,
.contact-page-content > h2,
.contact-page-content > h3{
  display:none;
}
.contact-page-content > *:first-child{
  margin-top:0 !important;
}
.contact-page-content form,
.contact-page-content .wpforms-container,
.contact-page-content .wpcf7,
.contact-page-content .gform_wrapper{
  width:100%;
  max-width:100%;
}
.contact-page-content input[type="text"],
.contact-page-content input[type="email"],
.contact-page-content input[type="tel"],
.contact-page-content input[type="url"],
.contact-page-content input[type="number"],
.contact-page-content textarea,
.contact-page-content select{
  width:100% !important;
  min-height:52px;
  border:1px solid var(--border);
  border-radius:14px;
  padding:12px 14px;
  font-size:16px;
  background:#fff;
}
.contact-page-content textarea{
  min-height:150px;
}
.contact-page-content button,
.contact-page-content input[type="submit"],
.contact-page-content .wpforms-submit,
.contact-page-content .wpcf7-submit{
  background:var(--primary) !important;
  color:#111 !important;
  border:0 !important;
  border-radius:12px !important;
  font-weight:800 !important;
  min-height:50px;
  padding:0 22px !important;
  box-shadow:0 12px 28px rgba(245,181,0,.22);
}
.contact-side-cards{
  display:grid;
  gap:20px;
}
.contact-side-card{
  padding:24px;
}
.contact-bullet-list li{
  position:relative;
  padding-left:18px;
  margin:0 0 12px;
  color:var(--muted);
}
.contact-bullet-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.6em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--primary);
}
@media (max-width: 980px){
  .contact-page-hero,
  .contact-content-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 700px){
  .contact-page-copy,
  .contact-info-card,
  .contact-form-card,
  .contact-side-card{
    padding:22px;
    border-radius:16px;
  }
  .contact-info-card h3,
  .contact-form-card h2,
  .contact-side-card h3{
    font-size:22px;
  }
  .contact-page-intro{
    font-size:16px;
  }
}


/* Contact page v024 cleanup and stronger form styling */
.contact-page-section .section-title.left{
  text-align:left !important;
}
.contact-page-content{
  position:relative;
}
.contact-page-content > img,
.contact-page-content > svg,
.contact-page-content > figure,
.contact-page-content > ul,
.contact-page-content > ol{
  display:none !important;
}
.contact-page-content .wpforms-container,
.contact-page-content .wpcf7,
.contact-page-content .gform_wrapper,
.contact-page-content form{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
}
.contact-page-content .wpforms-field-container,
.contact-page-content .wpcf7 form,
.contact-page-content .gform_fields{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px 18px;
}
.contact-page-content .wpforms-field,
.contact-page-content .wpcf7 form p,
.contact-page-content .gfield{
  margin:0 !important;
}
.contact-page-content .wpforms-field-textarea,
.contact-page-content .wpforms-field-html,
.contact-page-content .wpforms-field-full,
.contact-page-content .wpcf7 form p:has(textarea),
.contact-page-content .gfield--type-textarea,
.contact-page-content .gfield--width-full{
  grid-column:1 / -1 !important;
}
.contact-page-content .wpforms-field-label,
.contact-page-content .wpcf7-form label,
.contact-page-content .gfield_label{
  display:block !important;
  margin:0 0 8px !important;
  font-size:15px !important;
  font-weight:700 !important;
  color:var(--text) !important;
}
.contact-page-content input[type="text"],
.contact-page-content input[type="email"],
.contact-page-content input[type="tel"],
.contact-page-content input[type="url"],
.contact-page-content input[type="number"],
.contact-page-content textarea,
.contact-page-content select{
  width:100% !important;
  min-height:52px !important;
  border:1px solid var(--border) !important;
  border-radius:14px !important;
  padding:12px 14px !important;
  font-size:16px !important;
  box-shadow:none !important;
  outline:none !important;
  background:#fff !important;
}
.contact-page-content textarea{
  min-height:170px !important;
  resize:vertical !important;
}
.contact-page-content input:focus,
.contact-page-content textarea:focus,
.contact-page-content select:focus{
  border-color:#c9a100 !important;
  box-shadow:0 0 0 4px rgba(245,181,0,.14) !important;
}
.contact-page-content .wpforms-submit-container,
.contact-page-content .wpcf7 form .wpcf7-spinner,
.contact-page-content .wpcf7 form p:last-child,
.contact-page-content .gform_footer,
.contact-page-content .wpforms-field-html{
  grid-column:1 / -1 !important;
}
.contact-page-content .wpforms-submit,
.contact-page-content .wpcf7-submit,
.contact-page-content .gform_button,
.contact-page-content button[type="submit"],
.contact-page-content input[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:52px !important;
  padding:0 24px !important;
  border-radius:12px !important;
  background:var(--primary) !important;
  color:#111 !important;
  border:0 !important;
  font-weight:800 !important;
  cursor:pointer !important;
}
.contact-page-content .wpforms-field-html,
.contact-page-content .wpforms-field-description,
.contact-page-content .wpcf7-not-valid-tip,
.contact-page-content .gfield_description{
  font-size:14px !important;
  color:var(--muted) !important;
}
.contact-page-content .wpforms-field-html *{
  font-size:14px !important;
  line-height:1.6 !important;
}
@media (max-width: 780px){
  .contact-page-content .wpforms-field-container,
  .contact-page-content .wpcf7 form,
  .contact-page-content .gform_fields{
    grid-template-columns:1fr !important;
  }
}


/* Contact page v025 - centered content and stronger form presence */
.contact-page-wrap{
  max-width:1100px !important;
}
.contact-page-hero{
  grid-template-columns:1fr !important;
  max-width:920px !important;
  margin:0 auto 28px !important;
}
.contact-page-copy,
.contact-page-info{
  width:100% !important;
}
.contact-page-copy{
  text-align:center !important;
}
.contact-page-copy .section-title.left{
  text-align:center !important;
}
.contact-page-intro{
  margin:0 auto 20px !important;
  max-width:820px !important;
}
.contact-quick-actions{
  justify-content:center !important;
}
.contact-page-info{
  max-width:760px !important;
  margin:0 auto !important;
}
.contact-info-card{
  text-align:center !important;
}
.contact-info-list li{
  align-items:center !important;
}
.contact-content-grid{
  grid-template-columns:1fr !important;
  max-width:820px !important;
  margin:0 auto !important;
}
.contact-form-card{
  max-width:820px !important;
  margin:0 auto !important;
  padding:34px !important;
}
.contact-card-head{
  text-align:center !important;
}
.contact-card-head p{
  max-width:680px !important;
  margin:0 auto !important;
}
.contact-page-content form,
.contact-page-content .wpforms-container,
.contact-page-content .wpcf7,
.contact-page-content .gform_wrapper{
  max-width:760px !important;
  margin:0 auto !important;
}
.contact-page-content .wpforms-field-container,
.contact-page-content .wpcf7 form,
.contact-page-content .gform_fields{
  max-width:760px !important;
  margin:0 auto !important;
}
.contact-page-content input[type="text"],
.contact-page-content input[type="email"],
.contact-page-content input[type="tel"],
.contact-page-content input[type="url"],
.contact-page-content input[type="number"],
.contact-page-content textarea,
.contact-page-content select{
  min-height:56px !important;
  border-radius:16px !important;
  padding:14px 16px !important;
  font-size:17px !important;
}
.contact-page-content textarea{
  min-height:190px !important;
}
.contact-page-content .wpforms-submit-container,
.contact-page-content .gform_footer,
.contact-page-content .wpcf7 form p:last-child{
  text-align:center !important;
}
.contact-page-content .wpforms-submit,
.contact-page-content .wpcf7-submit,
.contact-page-content .gform_button,
.contact-page-content button[type="submit"],
.contact-page-content input[type="submit"]{
  min-height:56px !important;
  min-width:220px !important;
  font-size:17px !important;
}
.contact-side-cards{
  max-width:760px !important;
  margin:0 auto !important;
}
.contact-side-card{
  text-align:center !important;
}
.contact-bullet-list{
  display:inline-block !important;
  text-align:left !important;
}
@media (max-width: 700px){
  .contact-form-card{
    padding:24px !important;
  }
}


/* Contact page v026 */
.contact-v026-wrap{
  max-width:1240px !important;
}
.contact-v026-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(420px, 520px);
  gap:28px;
  align-items:start;
}
.contact-v026-left,
.contact-v026-form-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:var(--shadow);
}
.contact-v026-left{
  padding:34px 38px;
  position:relative;
}
.contact-v026-toc-mask{
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:120px;
  background:#fff;
  border-radius:20px 20px 0 0;
  z-index:3;
}
.contact-v026-title,
.contact-v026-subtitle,
.contact-v026-divider,
.contact-v026-main-list,
.contact-v026-action-row,
.contact-v026-address-block{
  position:relative;
  z-index:4;
}
.contact-v026-title{
  margin:0 0 14px;
  font-size:42px;
  line-height:1.1;
  color:#1b2a4a;
  font-weight:700;
}
.contact-v026-subtitle{
  margin:0;
  font-size:22px;
  line-height:1.3;
  color:#5c6677;
  font-style: italic;
}
.contact-v026-divider{
  width:100%;
  height:1px;
  background:#d1d5db;
  margin:24px 0;
}
.contact-v026-main-list,
.contact-v026-address-list{
  list-style:none;
  padding:0;
  margin:0;
}
.contact-v026-main-list li{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 12px;
  font-size:18px;
  color:#1b2a4a;
}
.contact-icon {
  font-size: 20px;
  width: 28px;
  text-align: center;
  flex-shrink: 0;
}
.contact-v026-main-list strong{
  min-width:92px;
  font-weight:800;
}
.contact-v026-main-list a{
  color:var(--text);
}
.contact-v026-action-row{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin:28px 0 34px;
}
.contact-v026-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  min-width:180px;
  min-height:48px;
  padding:0 24px;
  border-radius:999px;
  font-weight:700;
  font-size: 16px;
  color:#fff;
  text-decoration:none;
  box-shadow:0 4px 12px rgba(0,0,0,.12);
  transition: opacity 0.2s;
}
.contact-v026-chip:hover { opacity: 0.9; }
.chip-icon { font-size: 18px; }
.contact-v026-chip-sms{ background:#1b2a4a; }
.contact-v026-chip-wa{ background:#25d366; }
.contact-v026-address-block h3,
.contact-v026-address-block .address-main{
  margin:0 0 14px;
  font-size:16px;
  line-height:1.4;
  color:#1b2a4a;
  font-weight:700;
}
.contact-v026-address-list li{
  position:relative;
  padding-left:0;
  margin:0 0 10px;
  font-size:16px;
  line-height:1.45;
  color:#1b2a4a;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.loc-icon {
  font-size: 16px;
  flex-shrink: 0;
}
.contact-v026-address-list li::before{
  display: none;
}
.contact-v026-right{
  align-self:start;
}
.contact-v026-form-card{
  padding:34px;
}
.contact-v026-form-card .contact-page-content > h1,
.contact-v026-form-card .contact-page-content > h2,
.contact-v026-form-card .contact-page-content > h3,
.contact-v026-form-card .contact-page-content > p:first-child,
.contact-v026-form-card .contact-page-content > ul:first-child,
.contact-v026-form-card .contact-page-content .lwptoc,
.contact-v026-form-card .contact-page-content .ez-toc-container,
.contact-v026-form-card .contact-page-content [class*="toc"]{
  display:none !important;
}
.contact-v026-form-card .contact-page-content img,
.contact-v026-form-card .contact-page-content svg,
.contact-v026-form-card .contact-page-content figure,
.contact-v026-form-card .contact-page-content iframe,
.contact-v026-form-card .contact-page-content .wp-block-embed,
.contact-v026-form-card .contact-page-content .map-box{
  display:none !important;
}
.contact-v026-form-card .contact-page-content form,
.contact-v026-form-card .contact-page-content .wpforms-container,
.contact-v026-form-card .contact-page-content .wpcf7,
.contact-v026-form-card .contact-page-content .gform_wrapper{
  width:100%;
  max-width:100%;
  margin:0;
}
.contact-v026-form-card .contact-page-content label,
.contact-v026-form-card .contact-page-content .wpforms-field-label,
.contact-v026-form-card .contact-page-content .gfield_label{
  display:block;
  margin:0 0 8px;
  font-size:17px;
  font-weight:700;
  color:var(--text);
}
.contact-v026-form-card .contact-page-content input[type="text"],
.contact-v026-form-card .contact-page-content input[type="email"],
.contact-v026-form-card .contact-page-content input[type="tel"],
.contact-v026-form-card .contact-page-content input[type="url"],
.contact-v026-form-card .contact-page-content input[type="number"],
.contact-v026-form-card .contact-page-content select,
.contact-v026-form-card .contact-page-content textarea{
  width:100% !important;
  min-height:56px;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  font-size:17px;
  box-shadow:none;
}
.contact-v026-form-card .contact-page-content textarea{
  min-height:180px;
  resize:vertical;
}
.contact-v026-form-card .contact-page-content input:focus,
.contact-v026-form-card .contact-page-content textarea:focus,
.contact-v026-form-card .contact-page-content select:focus{
  border-color:#c9a100 !important;
  box-shadow:0 0 0 4px rgba(245,181,0,.14) !important;
  outline:none !important;
}
.contact-v026-form-card .contact-page-content .wpforms-field,
.contact-v026-form-card .contact-page-content .wpcf7 form p,
.contact-v026-form-card .contact-page-content .gfield{
  margin:0 0 16px !important;
}
.contact-v026-form-card .contact-page-content button[type="submit"],
.contact-v026-form-card .contact-page-content input[type="submit"],
.contact-v026-form-card .contact-page-content .wpforms-submit,
.contact-v026-form-card .contact-page-content .wpcf7-submit,
.contact-v026-form-card .contact-page-content .gform_button{
  min-width:180px;
  min-height:54px;
  padding:0 24px !important;
  border-radius:12px !important;
  border:0 !important;
  background:var(--primary) !important;
  color:#111 !important;
  font-weight:800 !important;
  box-shadow:0 12px 28px rgba(245,181,0,.22);
}
.contact-v026-form-card .contact-page-content .wpforms-submit-container,
.contact-v026-form-card .contact-page-content .gform_footer{
  margin-top:12px;
}
@media (max-width: 980px){
  .contact-v026-grid{
    grid-template-columns:1fr;
  }
  .contact-v026-title{
    font-size:44px;
  }
}
@media (max-width: 700px){
  .contact-v026-left,
  .contact-v026-form-card{
    padding:24px;
    border-radius:16px;
  }
  .contact-v026-title{
    font-size:38px;
  }
  .contact-v026-subtitle{
    font-size:24px;
  }
  .contact-v026-main-list li,
  .contact-v026-address-list li{
    font-size:16px;
  }
  .contact-v026-action-row{
    flex-direction:column;
  }
  .contact-v026-chip{
    width:100%;
    min-width:0;
  }
}


/* Product category archive with subcategory sidebar */
.category-archive-wrap{
  display:grid !important;
  grid-template-columns:300px 1fr !important;
  gap:34px !important;
  align-items:start !important;
  max-width:1280px !important;
  margin:0 auto !important;
}
.category-archive-layout .woocommerce-products-header{
  text-align: left;
  margin-bottom: 24px !important;
}

/* Hide the duplicate title that WooCommerce generates inside the content area */
.category-archive-main .woocommerce-products-header,
.category-archive-main > .woocommerce > header,
.category-archive-main .page-title:first-child {
  display: none !important;
}

/* Make result count and ordering sit in one row above products */
.category-archive-main .woocommerce {
  display: flex !important;
  flex-wrap: wrap !important;
}
.category-archive-main .woocommerce-result-count {
  flex: 1;
  margin-bottom: 16px !important;
}
.category-archive-main .woocommerce-ordering {
  margin-bottom: 16px !important;
}
.category-archive-main ul.products {
  width: 100% !important;
  flex-basis: 100% !important;
}
.category-sidebar{
  position:sticky;
  top:24px;
}
.category-sidebar-box{
  background:#1b2a4a;
  border-radius:0;
  padding:0 0 24px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.category-sidebar-title{
  padding:22px 26px;
  color:#f3c63a;
  font-size:22px;
  font-weight:800;
  text-transform:uppercase;
  border-bottom:1px solid rgba(243,198,58,.5);
}
.category-sidebar-current{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:22px 26px 14px;
  color:#fff;
  font-size:17px;
  font-weight:800;
}
.category-sidebar-current a{
  color:#fff;
  text-decoration:none;
}
.category-sidebar-list{
  list-style:none;
  margin:0;
  padding:0 26px 12px;
}
.category-sidebar-list li{
  margin:0;
  border:0;
}
.category-sidebar-list li a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 0;
  color:#dbe8f5;
  text-decoration:none;
  font-size:16px;
  line-height:1.35;
}
.category-sidebar-list li a strong{
  color:#fff;
  font-weight:700;
}
.category-sidebar-list li.is-active a,
.category-sidebar-list li a:hover{
  color:#fff;
}
.category-sidebar-list li.is-active a span::before,
.category-sidebar-list li a:hover span::before{
  opacity:1;
}
.category-sidebar-list li a span{
  position:relative;
  padding-left:18px;
}
.category-sidebar-list li a span::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#f3c63a;
  opacity:.35;
}
.category-sidebar-cta-group{
  display:grid;
  gap:14px;
  padding:18px 26px 0;
}
.category-sidebar-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  text-align:center;
  border:2px solid #f3c63a;
  color:#fff;
  text-decoration:none;
  font-weight:800;
  padding:0 18px;
}
.category-sidebar-cta:hover{
  background:#f3c63a;
  color:#102a56;
}

/* Focused Category Sidebar Styles */
.category-sidebar-focused{
  display:flex;
  flex-direction:column;
}

.category-focused-header{
  padding:22px 26px;
  background-color:rgba(255,255,255,.05);
  border-bottom:1px solid rgba(243,198,58,.3);
}

.category-focused-title{
  display:flex;
  align-items:center;
  gap:12px;
  color:#f3c63a;
  text-decoration:none;
  font-size:18px;
  font-weight:800;
  transition:color .2s ease;
}

.category-focused-title:hover{
  color:#fff;
}

.focus-icon{
  transform:rotate(-90deg);
  color:#f3c63a;
}

.category-focused-name{
  flex:1;
}

.category-focused-count{
  color:#fff;
  font-weight:700;
  font-size:16px;
}

.category-focused-list{
  list-style:none;
  margin:0;
  padding:12px 26px 24px;
}

.category-focused-list li{
  margin:0;
  border:0;
}

.category-focused-list li a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 0 12px 20px;
  color:#dbe8f5;
  text-decoration:none;
  font-size:16px;
  line-height:1.35;
  position:relative;
  transition:color .2s ease;
}

.category-focused-list li a::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:7px;
  height:7px;
  border-radius:999px;
  background:#f3c63a;
  opacity:.35;
  transition:opacity .2s ease, transform .2s ease;
}

.category-focused-list li a:hover::before{
  opacity:1;
  transform:translateY(-50%) scale(1.2);
}

.category-focused-list li a:hover{
  color:#fff;
}

.category-focused-list li a strong{
  color:#fff;
  font-weight:700;
}

.category-focused-list li.is-active a{
  color:#fff;
  font-weight:700;
}

.category-focused-list li.is-active a::before{
  opacity:1;
  background:#f3c63a;
}

.category-archive-main{
  min-width:0;
}
.category-archive-layout .woocommerce{
  max-width:100% !important;
  margin:0 !important;
}
.category-archive-layout .woocommerce-products-header{
  text-align: center;
  margin-bottom: 40px !important;
}
.category-archive-layout .woocommerce-products-header__title{
  font-size: 36px !important;
  font-weight: 900 !important;
  margin: 0 !important;
}
.category-archive-layout .woocommerce-result-count,
.category-archive-layout .woocommerce-ordering,
.category-archive-layout ul.products{
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.category-archive-layout ul.products{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:20px !important;
}
@media (max-width: 1024px){
  .category-archive-layout ul.products{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width: 900px){
  .category-archive-wrap{
    grid-template-columns:1fr !important;
  }
  .category-sidebar{
    position:static;
    margin-bottom: 30px;
  }
}
@media (max-width: 700px){
  .category-archive-layout ul.products{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap: 15px !important;
  }
}


/* Category archive sidebar + normal product card widths v028 */
.category-archive-layout .category-archive-wrap{
  display:grid !important;
  grid-template-columns:300px minmax(0, 1fr) !important;
  gap:34px !important;
  align-items:start !important;
  max-width:1360px !important;
  width:100% !important;
  margin:0 auto !important;
}
.category-archive-layout .category-sidebar{
  display:block !important;
  width:300px !important;
  min-width:300px !important;
  max-width:300px !important;
  position:sticky !important;
  top:24px !important;
  align-self:start !important;
}
.category-archive-layout .category-sidebar-box{
  background:#1b2a4a !important;
  display:block !important;
  width:100% !important;
}
.category-archive-layout .category-sidebar-current{
  padding:22px 26px 14px !important;
}
.category-archive-layout .category-sidebar-current a{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:17px !important;
  font-weight:800 !important;
}
.category-archive-layout .category-sidebar-list{
  display:block !important;
}
.category-archive-layout .category-sidebar-empty{
  padding:0 26px 12px !important;
  color:#dbe8f5 !important;
  font-size:15px !important;
}
.category-archive-layout .category-archive-main{
  min-width:0 !important;
  width:100% !important;
  max-width:none !important;
}
.category-archive-layout .woocommerce{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.category-archive-layout .woocommerce-result-count,
.category-archive-layout .woocommerce-ordering{
  margin-bottom:28px !important;
}
.category-archive-layout .woocommerce-ordering{
  float:right !important;
}
.category-archive-layout .woocommerce-result-count{
  float:left !important;
}
.category-archive-layout .woocommerce::after{
  content:"";
  display:block;
  clear:both;
}
.category-archive-layout ul.products,
.category-archive-layout .products{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:20px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
/* Hide WooCommerce pseudo-elements that can take grid slots */
.category-archive-layout ul.products::before,
.category-archive-layout ul.products::after {
  display: none !important;
  content: none !important;
}
.category-archive-layout ul.products li.product,
.category-archive-layout .products li.product{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  float:none !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.category-archive-layout ul.products li.product img,
.category-archive-layout .products li.product img{
  width:100% !important;
  height:260px !important;
  object-fit:contain !important;
  padding:18px !important;
  background:#f2f5f9 !important;
}
.category-archive-layout ul.products li.product .woocommerce-loop-product__title,
.category-archive-layout .products li.product .woocommerce-loop-product__title{
  font-size:22px !important;
  line-height:1.25 !important;
  padding:0 20px !important;
  min-height:84px !important;
  overflow:visible !important;
  word-break:break-word !important;
}
.category-archive-layout ul.products li.product .price,
.category-archive-layout .products li.product .price{
  padding:0 20px !important;
  font-size:18px !important;
  line-height:1.5 !important;
}
.category-archive-layout ul.products li.product .button,
.category-archive-layout .products li.product .button{
  margin:18px 20px 20px !important;
  align-self:flex-start !important;
}
@media (max-width: 1280px){
  .category-archive-layout .category-archive-wrap{
    grid-template-columns:280px minmax(0, 1fr) !important;
  }
  .category-archive-layout .category-sidebar{
    width:280px !important;
    min-width:280px !important;
    max-width:280px !important;
  }
  .category-archive-layout ul.products,
  .category-archive-layout .products{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 900px){
  .category-archive-layout .category-archive-wrap{
    grid-template-columns:1fr !important;
  }
  .category-archive-layout .category-sidebar{
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }
}
@media (max-width: 700px){
  .category-archive-layout .woocommerce-ordering,
  .category-archive-layout .woocommerce-result-count{
    float:none !important;
  }
  .category-archive-layout ul.products,
  .category-archive-layout .products{
    grid-template-columns:1fr !important;
  }
}

/* ── Contact Page Enhancements (Maps & Icons) ── */
.contact-icon, .chip-icon, .loc-icon, .map-icon {
  margin-right: 10px;
  font-size: 1.1em;
}

.address-main {
  font-weight: 700;
  margin-bottom: 15px;
  color: var(--text);
}

.contact-v026-address-list li {
  display: flex;
  align-items: flex-start;
  padding-left: 0 !important;
}

.contact-v026-address-list li::before {
  display: none !important;
}

.contact-maps-section {
  margin-top: 60px;
  padding-top: 40px;
  border-top: 1px solid var(--border);
}

.contact-maps-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
}

.map-group {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.map-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 24px;
  font-weight: 800;
  color: #1b2a4a;
  margin: 0;
  justify-content: center;
}
.map-icon {
  font-size: 28px;
}

.map-grid-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.map-box {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

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

@media (max-width: 600px) {
  .map-grid-inner {
    grid-template-columns: 1fr;
  }
}


/* =====================================================
   CIT financing widget — single product page
   ===================================================== */
.single-product div.product .summary .schulz-product-financing,
.product-single-wrap .schulz-product-financing {
  width: 100%;
  clear: both;
  margin: 22px 0 10px;
}

.schulz-product-financing .CIT-widget {
  width: 100%;
  max-width: 100%;
}

.schulz-product-financing .CIT-error__content {
  margin: 0;
}

.schulz-product-financing .CIT-button--link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 74px;
  padding: 14px 28px;
  border: 3px solid #0c7a55;
  border-radius: 999px;
  color: #0c7a55;
  text-decoration: none;
  font-size: clamp(20px, 3vw, 26px);
  font-weight: 800;
  line-height: 1.2;
  background: #fff;
  box-sizing: border-box;
}

.schulz-product-financing iframe,
.schulz-product-financing .CIT-widget > div,
.schulz-product-financing .CIT-widget > span {
  max-width: 100%;
}

@media (max-width: 767px) {
  .schulz-product-financing .CIT-button--link {
    min-height: 64px;
    padding: 12px 20px;
    font-size: 18px;
  }
}

/* Blog layout refresh v058 */
.blog-landing,
.blog-single-page{
  background:linear-gradient(180deg, #f5f7fb 0%, #ffffff 100%);
}
.blog-page-wrap,
.blog-single-wrap{
  max-width:1220px;
}
.blog-hero-card{
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:28px;
  box-shadow:0 22px 60px rgba(15, 23, 42, 0.08);
  padding:40px 44px;
  margin-bottom:26px;
}
.blog-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  background:#eff5ff;
  color:#1d4ed8;
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.blog-hero-title{
  margin:16px 0 12px;
}
.blog-hero-copy,
.blog-archive-description,
.blog-empty-state p{
  margin:0;
  max-width:820px;
  color:#52637b;
  font-size:18px;
  line-height:1.7;
}
.blog-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 30px;
}
.blog-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border:1px solid #d8e2ee;
  border-radius:999px;
  background:#fff;
  color:#233047;
  font-weight:700;
  text-decoration:none;
  transition:all .2s ease;
}
.blog-chip:hover,
.blog-chip.is-active{
  border-color:#143d78;
  background:#143d78;
  color:#fff;
}
.blog-post-feed{
  display:flex;
  flex-direction:column;
  gap:28px;
}
.blog-featured-card{
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(320px, .92fr);
  gap:0;
  overflow:hidden;
  border-radius:28px;
  border:1px solid #dbe4ef;
  background:#fff;
  box-shadow:0 24px 60px rgba(15, 23, 42, 0.08);
}
.blog-featured-media,
.blog-card-media{
  display:block;
  text-decoration:none;
}
.blog-featured-media img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  background:#edf2f7;
}
.blog-featured-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:34px 36px;
}
.blog-meta-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color:#66758d;
  font-size:14px;
  font-weight:700;
}
.blog-taxonomy-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.blog-taxonomy-row a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 12px;
  border-radius:999px;
  background:#eef4ff;
  color:#143d78;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
.blog-featured-heading,
.blog-card h3{
  margin:0;
  line-height:1.1;
}
.blog-featured-heading{
  font-size:clamp(32px, 4vw, 46px);
}
.blog-featured-heading a,
.blog-card h3 a,
.single-post-title,
.single-post-navigation a{
  color:#13294b;
  text-decoration:none;
}
.blog-featured-copy p,
.blog-card-body p{
  margin:0;
  color:#52637b;
  line-height:1.7;
}
.blog-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
}
.blog-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  border:1px solid #dbe4ef;
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 18px 40px rgba(15, 23, 42, 0.06);
}
.blog-card-media img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  background:#edf2f7;
}
.blog-card-body{
  display:flex;
  flex-direction:column;
  gap:14px;
  flex:1 1 auto;
  padding:24px;
}
.blog-card h3{
  font-size:28px;
}
.blog-readmore{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:auto;
  color:#143d78;
  font-weight:800;
  text-decoration:none;
}
.blog-readmore::after{
  content:'→';
}
.blog-pagination-wrap{
  margin-top:34px;
}
.blog-pagination-wrap .nav-links,
.blog-pagination-wrap .page-numbers{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.blog-pagination-wrap .page-numbers{
  justify-content:center;
}
.blog-pagination-wrap a.page-numbers,
.blog-pagination-wrap span.page-numbers{
  min-width:44px;
  min-height:44px;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid #dbe4ef;
  background:#fff;
  color:#13294b;
  font-weight:800;
  text-decoration:none;
}
.blog-pagination-wrap .current,
.blog-pagination-wrap a.page-numbers:hover{
  background:#143d78;
  border-color:#143d78;
  color:#fff;
}
.blog-empty-state{
  padding:48px 32px;
  border:1px dashed #cdd8e5;
  border-radius:24px;
  background:#fff;
  text-align:center;
}
.single-post-article{
  width:100%;
}
.single-post-shell{
  max-width:920px;
  margin:0 auto;
  padding:40px 46px;
  border:1px solid #dbe4ef;
  border-radius:28px;
  background:#fff;
  box-shadow:0 24px 60px rgba(15, 23, 42, 0.08);
}
.single-post-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
  color:#66758d;
  font-size:14px;
  font-weight:700;
}
.single-post-breadcrumbs a{
  color:#143d78;
  text-decoration:none;
}
.single-post-title{
  margin:0 0 14px;
  font-size:clamp(34px, 5vw, 56px);
  line-height:1.05;
}
.single-post-meta{
  margin-bottom:22px;
}
.single-post-media{
  margin:26px 0 30px;
  border-radius:24px;
  overflow:hidden;
}
.single-post-media img{
  width:100%;
  height:auto;
  display:block;
}
.single-post-content{
  color:#233047;
  font-size:18px;
  line-height:1.8;
}
.single-post-content > *:first-child{
  margin-top:0;
}
.single-post-content h2,
.single-post-content h3,
.single-post-content h4{
  color:#13294b;
  margin-top:1.8em;
  margin-bottom:.55em;
  line-height:1.15;
}
.single-post-content h2{font-size:34px;}
.single-post-content h3{font-size:28px;}
.single-post-content h4{font-size:24px;}
.single-post-content p,
.single-post-content ul,
.single-post-content ol,
.single-post-content blockquote{
  margin:0 0 1.1em;
}
.single-post-content ul,
.single-post-content ol{
  padding-left:1.2em;
}
.single-post-content a{
  color:#143d78;
  text-decoration:underline;
  text-underline-offset:2px;
}
.single-post-content blockquote{
  padding:20px 22px;
  border-left:4px solid #143d78;
  border-radius:0 18px 18px 0;
  background:#f7faff;
  color:#334155;
}
.single-post-content img{
  max-width:100%;
  height:auto;
  border-radius:18px;
}
.single-post-content table{
  width:100%;
  border-collapse:collapse;
  margin:0 0 1.25em;
}
.single-post-content table th,
.single-post-content table td{
  padding:12px 14px;
  border:1px solid #dbe4ef;
}
.single-post-content table th{
  background:#f7faff;
  color:#13294b;
}
.single-post-tags-wrap{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid #e2e8f0;
}
.single-post-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.single-post-tags a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 14px;
  border-radius:999px;
  background:#edf5ff;
  color:#143d78;
  font-weight:700;
  text-decoration:none;
}
.single-post-navigation{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  max-width:920px;
  margin:24px auto 0;
}
.single-post-nav-card{
  min-height:72px;
  padding:22px 24px;
  border:1px solid #dbe4ef;
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 30px rgba(15, 23, 42, 0.05);
}
.single-post-nav-card a{
  font-weight:800;
}
.single-post-related{
  margin-top:34px;
}
.single-post-related-head{
  margin-bottom:18px;
}
.single-post-related-head h2{
  margin:14px 0 0;
  color:#13294b;
  font-size:clamp(28px, 4vw, 40px);
}
.single-post-related-grid .blog-card h3{
  font-size:24px;
}
body.blog .section,
body.archive .section,
body.single-post .section{
  padding-top:56px;
  padding-bottom:72px;
}
@media (max-width:1100px){
  .blog-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .blog-featured-card{
    grid-template-columns:1fr;
  }
  .blog-featured-media img{
    min-height:300px;
  }
}
@media (max-width:700px){
  .blog-hero-card,
  .single-post-shell{
    padding:28px 22px;
    border-radius:22px;
  }
  .blog-hero-copy,
  .blog-archive-description,
  .single-post-content{
    font-size:16px;
  }
  .blog-grid,
  .single-post-navigation{
    grid-template-columns:1fr;
  }
  .blog-card h3{
    font-size:24px;
  }
  .blog-featured-heading{
    font-size:clamp(28px, 8vw, 36px);
  }
  .blog-featured-copy,
  .blog-card-body{
    padding:22px;
  }
  .blog-featured-media img{
    min-height:220px;
  }
  .single-post-title{
    font-size:clamp(30px, 10vw, 40px);
  }
}


@media (min-width:701px) {
  .mobile-submenu-toggle,
  .mobile-submenu {
    display: none !important;
  }
  .main-nav li.has-mobile-submenu {
    display: list-item;
  }
}

/* Mobile submenu support inside the overlay menu */
.mobile-submenu-toggle,
.mobile-submenu {
  display: none;
}

@media (max-width:700px) {
  .main-nav.is-open ul.exact-menu li.has-mobile-submenu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .main-nav.is-open ul.exact-menu li.has-mobile-submenu > a {
    flex: 1 1 calc(100% - 48px);
    min-width: 0;
    padding-right: 12px !important;
    white-space: normal !important;
  }
  .main-nav.is-open .mobile-submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-left: auto;
    background: transparent;
    border: 0;
    color: #fff;
    cursor: pointer;
    padding: 0;
  }
  .main-nav.is-open .mobile-submenu-icon {
    width: 12px;
    height: 12px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    margin-top: -4px;
  }
  .main-nav.is-open li.submenu-open > .mobile-submenu-toggle .mobile-submenu-icon {
    transform: rotate(-135deg);
    margin-top: 4px;
  }
  .main-nav.is-open .mobile-submenu {
    display: none;
    width: 100%;
    margin: 0 0 12px;
    padding: 0 0 0 18px;
    list-style: none;
  }
  .main-nav.is-open .mobile-submenu[hidden] {
    display: none !important;
  }
  .main-nav.is-open li.submenu-open > .mobile-submenu {
    display: block;
  }
  .main-nav.is-open .mobile-submenu li {
    border-bottom: 0 !important;
  }
  .main-nav.is-open .mobile-submenu li a {
    display: block;
    padding: 10px 0 !important;
    font-size: 15px !important;
    font-weight: 500;
    color: rgba(255,255,255,0.86) !important;
    white-space: normal !important;
  }
}


/* Header language switcher */
.header-language-switcher{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.header-language-switcher .gt-lang-item > *{
  display:inline-flex;
}
.header-language-switcher a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:38px;
  padding:0 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1;
  opacity:1;
  transition:.2s ease;
}
.header-language-switcher a:hover,
.header-language-switcher .glink.nturl.gt-current-lang,
.header-language-switcher .glink.gt-current-lang{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.22);
  color:var(--primary);
}
.header-language-switcher--mobile{
  display:none;
}

@media (max-width:700px){
  .header-language-switcher--desktop{
    display:none;
  }
  .main-nav.is-open .header-language-switcher--mobile{
    display:flex;
    width:100%;
    padding:18px 0 4px;
    margin-top:8px;
    border-top:1px solid rgba(255,255,255,.08);
  }
  .main-nav.is-open .header-language-switcher--mobile a{
    flex:0 0 auto;
    min-width:54px;
    height:42px;
  }
}


/* CSV-powered parts table */
.schulz-parts-search-form{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:center;margin:0 0 14px}
.schulz-parts-search-form input[type="search"]{width:100%;min-height:52px;padding:0 16px;border:1px solid #d7e0ea;border-radius:12px;background:#fff}
.schulz-parts-search-form button,.schulz-parts-clear{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:12px;font-weight:700}
.schulz-parts-search-form button{border:none;cursor:pointer;background:var(--primary);color:#fff}
.schulz-parts-clear{background:#f3f6fa;color:#0f172a;text-decoration:none}
.schulz-parts-results-count{margin:0 0 14px;font-weight:700;color:#334155}
.schulz-parts-table-wrap{overflow:auto;border:1px solid #dbe3ee;border-radius:16px;background:#fff}
.schulz-parts-table{width:100%;border-collapse:collapse}
.schulz-parts-table th,.schulz-parts-table td{padding:14px 16px;border-bottom:1px solid #e7edf5;text-align:left}
.schulz-parts-table thead th{background:#f8fafc;font-weight:800}
.schulz-parts-table tbody tr:hover td{background:#f8fbff}
.schulz-parts-no-results{padding:14px 16px;margin:14px 0;border:1px solid #dbe3ee;border-radius:12px;background:#fff}
@media (max-width: 800px){.schulz-parts-search-form{grid-template-columns:1fr}.schulz-parts-search-form button,.schulz-parts-clear{width:100%}}


/* Blog page cleanup */
.blog-post-feed{gap:22px;}
.blog-featured-card{
  grid-template-columns:minmax(0,1fr) minmax(300px,.86fr);
  border-radius:22px;
  box-shadow:0 12px 30px rgba(15, 23, 42, 0.07);
}
.blog-featured-media,
.blog-card-media{
  background:#edf2f7;
}
.blog-featured-media img{
  min-height:300px;
  max-height:420px;
}
.blog-featured-copy{
  gap:12px;
  padding:28px 30px;
}
.blog-featured-heading{
  font-size:clamp(26px,3.2vw,38px);
}
.blog-featured-copy p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.blog-grid{
  gap:20px;
}
.blog-card{
  border-radius:18px;
  box-shadow:0 10px 24px rgba(15, 23, 42, 0.05);
}
.blog-card-media img{
  aspect-ratio:16/9;
  min-height:200px;
}
.blog-card-body{
  gap:10px;
  padding:18px 18px 20px;
}
.blog-card h3{
  font-size:22px;
  line-height:1.18;
}
.blog-card h3 a,
.blog-featured-heading a{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.blog-card-body p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.blog-card-media img,
.blog-featured-media img{
  display:block;
}
@media (max-width: 1024px){
  .blog-featured-card{grid-template-columns:1fr;}
  .blog-featured-media img{max-height:none;}
}


/* Blog cards: remove top image block and keep clean white content cards */
.blog-landing .blog-card,
.blog-archive-page .blog-card,
body.page-template-default.page .blog-card{
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.blog-landing .blog-card-media,
.blog-archive-page .blog-card-media,
body.page-template-default.page .blog-card-media,
.blog-landing .blog-featured-media,
.blog-archive-page .blog-featured-media,
body.page-template-default.page .blog-featured-media{
  display:none !important;
}
.blog-landing .blog-featured-card,
.blog-archive-page .blog-featured-card,
body.page-template-default.page .blog-featured-card{
  display:block;
  border-radius:22px;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
.blog-landing .blog-featured-copy,
.blog-archive-page .blog-featured-copy,
body.page-template-default.page .blog-featured-copy{
  padding:28px 30px;
}
.blog-landing .blog-grid,
.blog-archive-page .blog-grid,
body.page-template-default.page .blog-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.blog-landing .blog-card-body,
.blog-archive-page .blog-card-body,
body.page-template-default.page .blog-card-body{
  padding:24px 26px 26px;
  gap:12px;
}
.blog-landing .blog-card h3,
.blog-archive-page .blog-card h3,
body.page-template-default.page .blog-card h3{
  font-size:24px;
  line-height:1.16;
}
@media (max-width: 900px){
  .blog-landing .blog-grid,
  .blog-archive-page .blog-grid,
  body.page-template-default.page .blog-grid{
    grid-template-columns:1fr;
  }
}


/* Blog cards final: remove top image/media area completely */
.blog-featured-media,.blog-card-media{display:none !important;visibility:hidden !important;height:0 !important;max-height:0 !important;overflow:hidden !important;margin:0 !important;padding:0 !important;border:0 !important;}
.blog-featured-card{display:block !important;}
.blog-featured-card,.blog-card{background:#fff;}
.blog-featured-copy,.blog-card-body{padding-top:24px !important;}


.resource-card-link{display:block;color:inherit;text-decoration:none;height:100%;}
.resource-card-link:hover h3{text-decoration:underline;}
.blog-featured-card,.blog-card,.related-blog-card{display:block !important;min-height:0 !important;grid-template-columns:1fr !important;}
.blog-featured-media,.blog-card-media{display:none !important;height:0 !important;max-height:0 !important;min-height:0 !important;overflow:hidden !important;margin:0 !important;padding:0 !important;border:0 !important;}
.blog-featured-copy,.blog-card-body{padding:26px 28px !important;}
.blog-featured-card .blog-featured-copy{background:#fff;border-radius:22px;}
.blog-card{background:#fff;border-radius:22px;box-shadow:0 10px 24px rgba(15,23,42,.05);overflow:hidden;}
.blog-grid{align-items:start;}


/* ══════════════════════════════════════════════════════
   SCHULZ PRODUCTS — ECOMMERCE UPGRADE CSS
   All improvements: trust signals, social proof,
   product page, mobile sticky bar, FAQ, footer
   ══════════════════════════════════════════════════════ */

/* ── Authorized Distributor Badge (header) ──────────────── */
.auth-badge {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 700;
  color: #4ade80;
  background: rgba(74,222,128,.12);
  border: 1px solid rgba(74,222,128,.25);
  border-radius: 99px;
  padding: 3px 10px;
  margin-left: 10px;
  white-space: nowrap;
  letter-spacing: .02em;
}
@media (max-width: 900px) { .auth-badge { display: none; } }

/* ── Cart Icon in header ────────────────────────────────── */
.cart-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  padding: 6px 8px;
  border-radius: 6px;
  transition: background .15s;
}
.cart-link:hover { background: rgba(255,255,255,.08); }
.cart-icon { font-size: 18px; line-height: 1; }
.cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px; height: 18px;
  background: var(--primary);
  color: #111;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

/* ── Hero Stock Signal ──────────────────────────────────── */
.hero-stock-signal {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 13px;
  color: #b5e5c5;
  font-weight: 600;
}
.stock-dot {
  display: inline-block;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: #4ade80;
  animation: pulse-green 2s infinite;
  flex-shrink: 0;
}
@keyframes pulse-green {
  0%,100% { box-shadow: 0 0 0 0 rgba(74,222,128,.5); }
  50% { box-shadow: 0 0 0 5px rgba(74,222,128,0); }
}

/* ── Why Buy — 6-column improved grid ───────────────────── */
.feature-grid-why {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px !important;
}
.feature-why {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  padding: 18px 20px !important;
  min-height: auto !important;
  border-radius: 10px !important;
}
.feature-why .feature-emoji {
  font-size: 26px;
  line-height: 1;
}
.feature-why strong {
  display: block;
  font-size: 15px !important;
  color: #12284a;
  margin: 0 !important;
}
.feature-why span {
  display: block;
  font-size: 13px;
  color: #5d6c80;
  line-height: 1.45;
}
@media (max-width: 900px) { .feature-grid-why { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .feature-grid-why { grid-template-columns: 1fr; } }

/* ── Testimonials Section ───────────────────────────────── */
.testimonials-section { background: #f0f5fc; }
.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 18px;
}
.testimonial-card {
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 12px;
  padding: 22px 20px;
  box-shadow: 0 4px 16px rgba(23,54,93,.06);
}
.stars { color: #f4be2a; font-size: 16px; margin-bottom: 10px; letter-spacing: 1px; }
.testimonial-text {
  font-size: 14px;
  color: #374151;
  line-height: 1.6;
  margin: 0 0 16px;
  font-style: italic;
}
.testimonial-author {
  display: flex;
  align-items: center;
  gap: 10px;
}
.author-initial {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px; height: 36px;
  border-radius: 50%;
  background: #17365d;
  color: #fff;
  font-weight: 800;
  font-size: 16px;
  flex-shrink: 0;
}
.testimonial-author strong { display: block; font-size: 14px; color: #12284a; }
.testimonial-author span { font-size: 12px; color: #6b7280; }
.testimonials-note {
  text-align: center;
  font-size: 13px;
  color: #6b7280;
  margin: 0;
}
@media (max-width: 900px) { .testimonials-grid { grid-template-columns: 1fr; } }

/* ── Industries Tag Row ─────────────────────────────────── */
.trusted-by-section { padding: 24px 0 !important; }
.trusted-by-title { font-size: 22px !important; margin-bottom: 14px !important; }
.industries-tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.ind-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 99px;
  padding: 7px 14px;
  font-size: 13px;
  font-weight: 600;
  color: #17365d;
  white-space: nowrap;
}
.ind-tag:hover { border-color: var(--primary); background: #fffdf0; }

/* ── Resource Cards improved ────────────────────────────── */
.resource-card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  font-size: 32px;
  background: #f0f5fc;
  border-bottom: 1px solid #dbe3ef;
}
.resource-read-more {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--primary-dark);
}
.resource-card-link:hover .resource-read-more { text-decoration: underline; }
.resource-card .card-body { padding-bottom: 18px !important; }

/* ── CTA Improvements ───────────────────────────────────── */
.cta-detail-row {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
  margin: 12px 0 20px;
  font-size: 14px;
  color: #9ca3af;
  font-weight: 600;
}
.cta-small-print {
  margin-top: 16px;
  font-size: 13px;
  color: #6b7280;
}

/* ── Footer Improvements ────────────────────────────────── */
.footer-grid-5 {
  grid-template-columns: 1.4fr 1fr 1fr 1fr 0.9fr !important;
}
.footer-brand-col p {
  font-size: 13px;
  line-height: 1.5;
  color: #b0bccf;
  margin: 10px 0 14px;
}
.footer-contact-quick {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.footer-phone {
  font-size: 17px;
  font-weight: 800;
  color: var(--primary) !important;
}
.footer-hours {
  font-size: 12px;
  color: #6b7280;
}
.footer-trust-badges {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 14px;
}
.footer-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #4ade80;
  background: rgba(74,222,128,.08);
  border: 1px solid rgba(74,222,128,.18);
  border-radius: 6px;
  padding: 4px 8px;
  width: fit-content;
}
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}
.footer-bottom-links {
  display: flex;
  gap: 16px;
}
.footer-bottom-links a {
  font-size: 13px;
  color: #9ca3af;
}
.footer-bottom-links a:hover { color: var(--primary); }
@media (max-width: 1100px) { .footer-grid-5 { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 700px) { .footer-grid-5 { grid-template-columns: 1fr 1fr !important; } .footer-brand-col { grid-column: 1 / -1; } }

/* ── Product Page Improvements ──────────────────────────── */
.product-availability-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #f0fdf4;
  border: 1px solid #86efac;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 600;
  color: #14532d;
  margin: 8px 0 0;
}
.avail-dot {
  width: 10px; height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  animation: pulse-green 2s infinite;
}
.avail-green { background: #22c55e; }
.avail-confirm-link {
  margin-left: auto;
  font-size: 13px;
  color: #15803d;
  font-weight: 700;
}
.avail-confirm-link:hover { text-decoration: underline; }

.product-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid #e5eaf2;
  margin-bottom: 20px;
}
.ptrust-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: #374151;
}
.ptrust-item span { color: #22c55e; font-size: 15px; }
.ptrust-item a { color: var(--primary-dark); font-weight: 700; }

/* Product FAQ */
.product-faq-section {
  margin: 28px 0;
  padding: 28px 0;
  border-top: 1px solid #e5eaf2;
}
.product-faq-title {
  font-size: 22px;
  font-weight: 800;
  color: #12284a;
  margin: 0 0 18px;
}
.faq-list { display: flex; flex-direction: column; gap: 8px; }
.faq-item {
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 8px;
  overflow: hidden;
}
.faq-item[open] { border-color: #17365d; }
.faq-question {
  list-style: none;
  padding: 14px 18px;
  font-size: 15px;
  font-weight: 700;
  color: #12284a;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  user-select: none;
}
.faq-question::-webkit-details-marker { display: none; }
.faq-question::after {
  content: '+';
  font-size: 20px;
  color: #17365d;
  font-weight: 400;
  margin-left: 12px;
  flex-shrink: 0;
}
.faq-item[open] .faq-question::after { content: '−'; }
.faq-question:hover { color: #17365d; background: #f7f9fc; }
.faq-answer {
  padding: 0 18px 14px;
  font-size: 14px;
  color: #4b5563;
  line-height: 1.6;
  border-top: 1px solid #e5eaf2;
  padding-top: 12px;
}

/* Product bottom CTA bar */
.product-cta-bar {
  margin: 0 0 40px;
}
.product-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: linear-gradient(90deg, #0a1323, #17365d);
  border-radius: 12px;
  padding: 20px 24px;
  flex-wrap: wrap;
}
.product-cta-inner strong {
  display: block;
  color: #fff;
  font-size: 16px;
  margin-bottom: 4px;
}
.product-cta-inner span {
  color: #b0c4de;
  font-size: 13px;
}
.product-cta-actions {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  flex-wrap: wrap;
}

/* ── Mobile Sticky CTA Bar ──────────────────────────────── */
.mobile-sticky-cta {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  background: #0a1323;
  border-top: 2px solid var(--primary);
  transform: translateY(100%);
  transition: transform .25s ease;
}
.mobile-sticky-cta.visible { transform: translateY(0); }
.mobile-sticky-cta a {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  padding: 14px 6px;
  font-size: 14px;
  font-weight: 800;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.1);
}
.mobile-sticky-cta a:last-child { border-right: none; }
.sticky-cta-call { color: #fff; background: #17365d; }
.sticky-cta-quote { color: #111; background: var(--primary); }
.sticky-cta-cart { color: #fff; background: #233047; }
.sticky-cta-call:hover { background: #1e4375; }
.sticky-cta-quote:hover { background: var(--primary-dark); }
@media (max-width: 768px) {
  .mobile-sticky-cta { display: flex; }
  body { padding-bottom: 56px; }
}

/* ── Category Archive: Stock signal on category pages ───── */
.category-archive-layout .stock-notice {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: #14532d;
  background: #f0fdf4;
  border: 1px solid #86efac;
  border-radius: 6px;
  padding: 4px 10px;
  margin-left: 12px;
  vertical-align: middle;
}

/* ── WooCommerce Product Cards: Add availability label ───── */
.woocommerce ul.products li.product .in-stock-tag,
.product-card .in-stock-tag {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  color: #15803d;
  background: #dcfce7;
  border-radius: 4px;
  padding: 2px 6px;
  margin: 0 16px 4px;
}

/* ── Comparison prompt on category pages ────────────────── */
.compare-hint {
  display: none;
  text-align: center;
  font-size: 13px;
  color: #6b7280;
  margin: 8px 0 0;
  padding: 10px;
  background: #f7f9fc;
  border-radius: 8px;
  border: 1px dashed #d9e2ef;
}

/* ── Search panel improvements ──────────────────────────── */
.header-search-panel {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  width: 340px;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 10px;
  padding: 12px;
  box-shadow: 0 12px 32px rgba(23,54,93,.14);
  z-index: 500;
}
.header-search-input {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #d9e2ef;
  border-radius: 7px;
  font-size: 14px;
  outline: none;
  color: #12284a;
}
.header-search-input:focus { border-color: var(--primary); }
.header-search-submit {
  margin-top: 8px;
  width: 100%;
  background: var(--primary);
  color: #111;
  border: none;
  border-radius: 7px;
  padding: 9px;
  font-weight: 800;
  font-size: 14px;
  cursor: pointer;
}

/* ── Homepage title tag fix label ───────────────────────── */
/* Title is set via PHP filter in functions.php */

/* ── Category sidebar improvements ─────────────────────── */
.category-sidebar-box {
  border-radius: 10px;
  overflow: hidden;
}
.category-focused-header a {
  font-size: 15px !important;
}
.category-sidebar-cta {
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* ── Topbar: Make phone more prominent ───────────────────── */
.topbar a[href^="tel"] {
  font-weight: 800;
  color: var(--primary) !important;
}
.topbar a[href^="tel"]:hover {
  color: #fff !important;
}

/* ── Product page: Make add-to-cart more prominent ─────── */
.woocommerce div.product form.cart .button,
.woocommerce-page div.product form.cart .button {
  font-size: 16px !important;
  padding: 14px 28px !important;
  letter-spacing: .02em !important;
}

/* ── Financing text on product pages (more prominent) ───── */
.woocommerce div.product .wc-financing-text,
.woocommerce div.product .price + small {
  display: block;
  font-size: 13px;
  color: #4b6cb7;
  font-weight: 600;
  margin-top: 4px;
}

/* ── Print / mobile adjustments ─────────────────────────── */
@media (max-width: 768px) {
  .product-trust-row { gap: 8px; }
  .product-cta-inner { flex-direction: column; align-items: flex-start; }
  .product-availability-bar { font-size: 13px; flex-wrap: wrap; }
  .avail-confirm-link { margin-left: 0; }
  .testimonials-grid { grid-template-columns: 1fr; }
  .industries-tag-row { gap: 8px; }
  .ind-tag { font-size: 12px; padding: 5px 10px; }
}

@media print {
  .mobile-sticky-cta,
  .topbar,
  .site-header,
  .cta-section { display: none !important; }
}

/* ── Cart trigger button — matches anchor style exactly ─── */
button.cart-link {
  background: none;
  border: none;
  padding: 6px 8px;
  cursor: pointer;
  font-family: inherit;
  line-height: 1;
}
button.sticky-cta-cart {
  flex: 1;
  background: #233047;
  border: none;
  color: #fff;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  padding: 14px 6px;
  text-align: center;
}
button.sticky-cta-cart:hover { background: #2d3e5c; }

/* ══════════════════════════════════════════════════════
   ROUND 2 — Professional polish
   Hero, trust bar, comparison table, industries grid,
   specs tiles, footer recently-viewed bar
   ══════════════════════════════════════════════════════ */

/* ── Section subtitle (used by multiple sections) ─────── */
.section-subtitle {
  text-align: center;
  font-size: 16px;
  color: #5d6c80;
  max-width: 760px;
  margin: -8px auto 26px;
  line-height: 1.55;
}

/* ── Hero refinements ─────────────────────────────────── */
.hero .eyebrow {
  display: inline-flex;
  align-items: center;
  background: rgba(74, 222, 128, .14);
  border: 1px solid rgba(74, 222, 128, .35);
  padding: 6px 14px;
  border-radius: 99px;
  color: #b6f0c8;
  font-size: 12px;
  letter-spacing: .04em;
  font-weight: 700;
  text-transform: none;
}

.hero h1 {
  font-size: clamp(34px, 4.6vw, 56px) !important;
  letter-spacing: -.022em;
  font-weight: 800;
  margin-top: 16px;
  margin-bottom: 16px;
  line-height: 1.06;
  max-width: 720px;
}
.hero p {
  font-size: 17px !important;
  color: #cdd5e6 !important;
  max-width: 580px;
  line-height: 1.55;
}

.hero-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 26px;
  max-width: 560px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.hero-trust-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.hero-trust-item strong {
  display: block;
  font-size: 22px;
  color: #fff;
  font-weight: 800;
  letter-spacing: -.01em;
  line-height: 1;
}
.hero-trust-item span {
  font-size: 11px;
  color: #9aa6bd;
  letter-spacing: .03em;
  text-transform: uppercase;
  margin-top: 4px;
}
@media (max-width: 700px) {
  .hero-trust-strip { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .hero-trust-item strong { font-size: 18px; }
}

/* ── Trust bar redesign — cleaner, no emoji-yellow boxes ── */
.trustbar {
  padding: 14px 0;
  background: linear-gradient(90deg, #0d1a2e 0%, #102342 100%) !important;
  border-top: 1px solid rgba(255, 255, 255, .07);
  border-bottom: 1px solid rgba(255, 255, 255, .07);
}
.trust-items {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  gap: 14px !important;
  flex-wrap: wrap;
}
.trust-item {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #cdd5e6 !important;
  letter-spacing: .01em;
  white-space: nowrap;
}
.trust-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  background: rgba(255, 255, 255, .08);
  font-size: 12px;
  color: #f4be2a;
  font-weight: 700;
  flex-shrink: 0;
}
.trust-item.trust-highlight {
  background: linear-gradient(180deg, #ffd14c 0%, #f4be2a 100%) !important;
  color: #0a1323 !important;
  font-weight: 800 !important;
  padding: 6px 14px !important;
  border-radius: 99px !important;
  letter-spacing: .04em !important;
  font-size: 12px !important;
  box-shadow: 0 6px 18px rgba(244, 190, 42, .3) !important;
  transform: none !important;
}
.trust-item.trust-highlight .trust-icon {
  background: rgba(0, 0, 0, .08);
  color: #0a1323;
}

@media (max-width: 1100px) {
  .trust-item:nth-child(5) { display: none !important; }
}
@media (max-width: 800px) {
  .trust-item:nth-child(4) { display: none !important; }
  .trust-items { gap: 10px !important; }
}

/* ── Comparison Table ─────────────────────────────────── */
.comparison-section { background: #f7f9fc; }
.comparison-table-wrap {
  max-width: 880px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 28px rgba(23, 54, 93, .08);
}
.comparison-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.comparison-table thead th {
  background: linear-gradient(180deg, #f7f9fc, #ecf1f7);
  padding: 16px 20px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  color: #12284a;
  border-bottom: 1px solid #d9e2ef;
  vertical-align: middle;
}
.comparison-table thead th:first-child { background: transparent; text-align: left; }
.comparison-table thead .col-us {
  background: linear-gradient(180deg, #102745, #16335e);
  color: #fff;
}
.comparison-table thead .col-us span:not(.col-us-badge) {
  font-weight: 600;
  color: #cdd5e6;
  font-size: 12px;
  display: block;
  margin-top: 2px;
}
.col-us-badge {
  display: inline-block;
  background: var(--primary);
  color: #0a1323;
  padding: 3px 10px;
  border-radius: 99px;
  font-size: 11px;
  letter-spacing: .05em;
  font-weight: 800;
}
.comparison-table thead .col-them {
  background: #f7f9fc;
  color: #5d6c80;
}
.comparison-table tbody td {
  padding: 13px 20px;
  border-bottom: 1px solid #eef2f7;
  font-size: 14px;
}
.comparison-table tbody tr:last-child td { border-bottom: none; }
.comparison-table tbody td:first-child {
  font-weight: 600;
  color: #2c3e50;
}
.comparison-table tbody .cell-yes,
.comparison-table tbody .cell-no {
  text-align: center;
  font-weight: 700;
}
.comparison-table tbody .cell-yes {
  color: #15803d;
  background: rgba(34, 197, 94, .04);
}
.comparison-table tbody .cell-no {
  color: #b22d2d;
  background: rgba(178, 45, 45, .03);
}
.comparison-table tbody .cell-yes span { font-size: 16px; }
.comparison-table tbody .cell-no span { font-size: 13px; }
.comparison-footnote {
  text-align: center;
  font-size: 12px;
  color: #8a96a8;
  margin-top: 14px;
  font-style: italic;
}

@media (max-width: 720px) {
  .comparison-table { font-size: 12.5px; }
  .comparison-table thead th { padding: 12px 10px; font-size: 12px; }
  .comparison-table tbody td { padding: 10px 10px; }
}

/* ── Industries grid (replace the flat image) ─────────── */
.industries-grid-pro {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  max-width: 1100px;
  margin: 0 auto;
}
.industry-pro-tile {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px;
  padding: 22px 22px 24px;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 12px;
  text-align: left;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  text-decoration: none;
  color: inherit;
}
.industry-pro-tile:hover {
  transform: translateY(-3px);
  border-color: var(--primary);
  box-shadow: 0 14px 28px rgba(23, 54, 93, .12);
}
.industry-pro-icon {
  font-size: 32px;
  line-height: 1;
}
.industry-pro-tile strong {
  display: block;
  font-size: 17px;
  color: #12284a;
  font-weight: 800;
  margin-top: 6px;
}
.industry-pro-tile span:last-child {
  font-size: 13px;
  color: #5d6c80;
  line-height: 1.5;
}
@media (max-width: 900px) { .industries-grid-pro { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .industries-grid-pro { grid-template-columns: 1fr; } }

/* ── Specs tile grid ──────────────────────────────────── */
.specs-section { padding: 28px 0 !important; background: transparent; }
.specs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  max-width: 1100px;
  margin: 18px auto 0;
}
.specs-tile {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px;
  padding: 18px 16px;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 10px;
  text-align: left;
  text-decoration: none;
  color: inherit;
  transition: border-color .15s, transform .15s;
}
.specs-tile:hover {
  border-color: var(--primary);
  transform: translateY(-2px);
}
.specs-icon { font-size: 22px; line-height: 1; }
.specs-tile strong {
  display: block;
  font-size: 14px;
  color: #12284a;
  margin-top: 4px;
  font-weight: 800;
}
.specs-tile span:last-child {
  font-size: 12px;
  color: #5d6c80;
  line-height: 1.4;
}
@media (max-width: 900px) { .specs-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .specs-grid { grid-template-columns: 1fr; } }

/* ── Footer "Recently Viewed" / Help bar ──────────────── */
.footer-recently-viewed-bar {
  background: linear-gradient(90deg, #f4be2a, #ffd14c);
  padding: 18px 0;
  color: #0a1323;
}
.footer-recently-viewed-bar .container {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
}
.footer-recently-viewed-bar strong {
  font-size: 17px;
  font-weight: 800;
  color: #0a1323;
}
.footer-recently-viewed-bar span {
  font-size: 14px;
  color: #1a2845;
  flex: 1;
  min-width: 240px;
}
.frv-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  background: #0a1323;
  color: #fff !important;
  font-weight: 800;
  font-size: 14px;
  border-radius: 8px;
  text-decoration: none;
  transition: background .15s;
}
.frv-cta:hover { background: #16243f; color: #fff !important; }
.frv-cta-alt { background: rgba(10, 19, 35, .12); color: #0a1323 !important; }
.frv-cta-alt:hover { background: rgba(10, 19, 35, .2); color: #0a1323 !important; }
@media (max-width: 700px) {
  .footer-recently-viewed-bar { padding: 14px 0; }
  .footer-recently-viewed-bar .container { flex-direction: column; text-align: center; gap: 10px; }
  .footer-recently-viewed-bar span { min-width: 0; }
}

/* ── Cookie banner styling override (in case theme uses default) ── */
.cli-bar-container,
#cookie-notice,
.cookie-notice-container {
  background: #0a1323 !important;
  color: #fff !important;
  font-size: 13px !important;
  padding: 10px 18px !important;
  box-shadow: 0 -4px 18px rgba(0,0,0,.15) !important;
}
.cli-bar-container .cli_action_button,
#cookie-notice .cn-button,
.cookie-notice-container .cn-button {
  background: var(--primary) !important;
  color: #0a1323 !important;
  font-weight: 800 !important;
  padding: 7px 16px !important;
  border-radius: 6px !important;
  margin-left: 12px !important;
  border: none !important;
}

/* ── Empty cart panel (better empty state) ─────────────── */
.xoo-wsc-empty-cart-text,
.empty-cart-message,
.cart-empty {
  font-size: 15px !important;
  color: #5d6c80 !important;
  text-align: center;
  padding: 30px 20px !important;
}

/* ── Better focus ring (accessibility) ─────────────────── */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--primary) !important;
  outline-offset: 2px;
  border-radius: 4px;
}

/* ── Subtle shadow on category carousel cards ──────────── */
#categories .category-carousel-card {
  transition: transform .18s ease, box-shadow .18s ease;
}
#categories .category-carousel-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(15, 42, 84, .14) !important;
}

/* ── Tighten "Why Buy" descriptions for desktop polish ─── */
.feature-grid-why .feature-why span {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
}

/* ── Section title tighter ────────────────────────────── */
.section-title {
  font-size: clamp(26px, 3.2vw, 36px) !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  line-height: 1.1 !important;
}

/* ── Hero: less-yellow primary button (more refined) ──── */
.hero-actions .btn-primary {
  background: linear-gradient(180deg, #f4be2a 0%, #d9a514 100%) !important;
  color: #0a1323 !important;
  font-weight: 800 !important;
  padding: 14px 24px !important;
  font-size: 15px !important;
  letter-spacing: .01em !important;
}
.hero-actions .btn-primary:hover {
  background: linear-gradient(180deg, #ffd14c 0%, #f4be2a 100%) !important;
}
.hero-actions .btn-secondary {
  background: rgba(255, 255, 255, .08) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .25) !important;
  padding: 14px 24px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}
.hero-actions .btn-secondary:hover {
  background: rgba(255, 255, 255, .14) !important;
  border-color: rgba(255, 255, 255, .4) !important;
}

/* ── Hide the old industries flat image just in case it persists ── */
.industries-image-wrap-clean,
.industries-image-wrap-clean-reduced {
  display: none !important;
}

/* ── Best Sellers / Featured: cleaner price display ───── */
.woocommerce ul.products li.product .price del,
.product-card .price del {
  color: #9aa6bd !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  margin-right: 6px;
}
.woocommerce ul.products li.product .price ins,
.product-card .price ins {
  background: transparent !important;
  color: #15803d !important;
  font-weight: 800 !important;
}

/* ── "Free shipping" badge on best-seller cards ───────── */
.woocommerce ul.products li.product::before,
.product-card::before {
  content: "";
}

/* ── Reduce letter-shouting on emojis in nav ──────────── */
.exact-menu .mega-arrow {
  font-size: 9px;
  margin-left: 3px;
  opacity: .7;
}

/* ── More breathing room around section heads ─────────── */
.section-head.split {
  margin-bottom: 24px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(23, 54, 93, .08);
}

/* ══════════════════════════════════════════════════════
   FEATURED COMPRESSORS STRIP — high-converting product
   showcase that sits between the trust bar and the
   "Shop by Category" carousel
   ══════════════════════════════════════════════════════ */

.featured-strip {
  background: #ffffff;
  padding: 38px 0 32px !important;
}

.featured-strip-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 22px;
  gap: 16px;
  flex-wrap: wrap;
}

.featured-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #d9a514;
  margin-bottom: 6px;
}

.featured-strip-title {
  font-size: clamp(22px, 2.4vw, 30px) !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  color: #12284a !important;
  margin: 0 !important;
  line-height: 1.1;
}

.featured-strip-link {
  font-size: 14px;
  font-weight: 700;
  color: #17365d;
  text-decoration: none;
  white-space: nowrap;
}
.featured-strip-link:hover { color: #d9a514; }

/* Grid of 4 featured cards */
.featured-strip-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.featured-strip-card {
  display: flex !important;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e5eaf2;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  position: relative;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.featured-strip-card:hover {
  transform: translateY(-4px);
  border-color: #f4be2a;
  box-shadow: 0 20px 36px rgba(15, 42, 84, .14);
}
.featured-strip-card:focus-visible {
  outline: 2px solid #f4be2a;
  outline-offset: 3px;
}

.featured-sale-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  background: #ef4444;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .04em;
  padding: 4px 9px;
  border-radius: 99px;
  text-transform: uppercase;
  box-shadow: 0 4px 10px rgba(239, 68, 68, .3);
}

.featured-strip-card-media {
  background: #f7f9fc;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border-bottom: 1px solid #eef2f7;
}
.featured-strip-card-media img {
  max-width: 100%;
  max-height: 168px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.featured-strip-card-body {
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

.featured-strip-card-title {
  font-size: 14px;
  font-weight: 700;
  color: #12284a;
  line-height: 1.35;
  margin: 0;
  /* Two-line clamp for clean alignment */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 38px;
}

.featured-strip-card-price {
  font-size: 18px;
  font-weight: 800;
  color: #16335e;
  line-height: 1.1;
  margin-top: auto;
}
.featured-strip-card-price del {
  color: #9aa6bd !important;
  font-size: 13px;
  font-weight: 600;
  margin-right: 6px;
}
.featured-strip-card-price ins {
  background: transparent !important;
  color: #15803d !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}
.featured-strip-card-price .woocommerce-Price-amount {
  font-weight: 800;
  font-size: 18px;
  color: #16335e;
}

.featured-strip-card-cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  color: #17365d;
  letter-spacing: .02em;
  margin-top: 4px;
}
.featured-strip-card-cta .arrow {
  transition: transform .15s ease;
  display: inline-block;
}
.featured-strip-card:hover .featured-strip-card-cta {
  color: #d9a514;
}
.featured-strip-card:hover .featured-strip-card-cta .arrow {
  transform: translateX(3px);
}

.featured-strip-empty {
  text-align: center;
  font-size: 14px;
  color: #5d6c80;
  padding: 20px;
}

@media (max-width: 1000px) {
  .featured-strip-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .featured-strip-grid { grid-template-columns: 1fr; gap: 12px; }
  .featured-strip-card-media { height: 180px; }
}

/* ══════════════════════════════════════════════════════
   HERO VIDEO — replaces static image with looping mp4
   ══════════════════════════════════════════════════════ */

.hero-video-wrap {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 30px 64px rgba(0,0,0,.6);
  aspect-ratio: 4 / 3;
  background: #0a1323;
  max-width: 1500px;
  width: 100%;
  margin-left: auto;
  margin-right: -60px;
  transform: translateX(60px);
}

.hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 14px;
}

/* Subtle gradient overlay on video so it doesn't overpower the copy */
.hero-video-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    rgba(10, 19, 35, .18) 0%,
    rgba(10, 19, 35, 0) 60%
  );
  pointer-events: none;
  border-radius: 14px;
}

/* "Live equipment" badge bottom-left of video */
.hero-video-badge {
  position: absolute;
  bottom: 14px;
  left: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(10, 19, 35, .72);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255, 255, 255, .12);
  color: #e5edf8;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  padding: 6px 12px;
  border-radius: 99px;
}

.hero-video-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4ade80;
  animation: pulse-green 2s infinite;
  flex-shrink: 0;
}

/* Override old hero-visual img rules so they don't interfere */
.hero-visual img {
  display: none !important; /* hidden — video takes over */
}

/* On mobile, constrain the video height so it doesn't tower */
@media (max-width: 900px) {
  .hero-video-wrap {
    aspect-ratio: 4 / 3;
    border-radius: 10px;
    max-width: 760px;
    width: 100%;
    margin: 0 auto;
    transform: none;
  }
  .hero-video-badge { font-size: 10px; padding: 3px 8px; }
}

/* Respect reduced-motion preference — pause video if OS setting enabled */
@media (prefers-reduced-motion: reduce) {
  .hero-video { animation: none; }
}


/* ══════════════════════════════════════════════════════
   SHOP BY CFM — interactive picker section
   ══════════════════════════════════════════════════════ */

.cfm-picker-section {
  background: #f7f9fc;
  padding: 48px 0 44px !important;
}

.cfm-picker-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 28px;
  gap: 20px;
  flex-wrap: wrap;
}

.cfm-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #d9a514;
  margin-bottom: 6px;
}

.cfm-picker-title {
  font-size: clamp(24px, 2.6vw, 32px) !important;
  font-weight: 800 !important;
  color: #12284a !important;
  letter-spacing: -.022em !important;
  margin: 0 !important;
  line-height: 1.1;
}

.cfm-picker-sub {
  font-size: 15px;
  color: #5d6c80;
  margin: 8px 0 0;
  max-width: 600px;
  line-height: 1.5;
}

.cfm-all-link {
  font-size: 14px;
  font-weight: 700;
  color: #17365d;
  white-space: nowrap;
  flex-shrink: 0;
}
.cfm-all-link:hover { color: #d9a514; }

/* ── Tabs ────────────────────────────────────────────── */
.cfm-tabs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 0;
}

.cfm-tab {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 16px 18px;
  background: #fff;
  border: 2px solid #d9e2ef;
  border-radius: 10px;
  cursor: pointer;
  text-align: left;
  transition: border-color .15s, background .15s, transform .15s;
  font-family: inherit;
}

.cfm-tab:hover {
  border-color: #f4be2a;
  background: #fffdf0;
  transform: translateY(-2px);
}

.cfm-tab.active {
  border-color: #17365d;
  background: #17365d;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(23, 54, 93, .22);
}

.cfm-tab-range {
  display: block;
  font-size: 16px;
  font-weight: 800;
  color: #12284a;
  line-height: 1.1;
}
.cfm-tab.active .cfm-tab-range { color: #f4be2a; }

.cfm-tab-label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #374151;
  margin-top: 2px;
}
.cfm-tab.active .cfm-tab-label { color: #fff; }

.cfm-tab-hint {
  display: block;
  font-size: 11.5px;
  color: #6b7280;
  line-height: 1.4;
  margin-top: 2px;
}
.cfm-tab.active .cfm-tab-hint { color: #b0c4de; }

/* ── Panels ──────────────────────────────────────────── */
.cfm-panels { margin-top: 0; }

.cfm-panel {
  display: none;
  background: #fff;
  border: 1px solid #d9e2ef;
  border-top: none;
  border-radius: 0 0 12px 12px;
  overflow: hidden;
}
.cfm-panel.active { display: block; }

/* ── Table ───────────────────────────────────────────── */
.cfm-table-wrap { overflow-x: auto; }

.cfm-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.cfm-table thead th {
  background: #f0f4f9;
  padding: 12px 16px;
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  color: #5d6c80;
  letter-spacing: .04em;
  text-transform: uppercase;
  border-bottom: 1px solid #d9e2ef;
}

.cfm-table tbody td {
  padding: 12px 16px;
  border-bottom: 1px solid #eef2f7;
  color: #374151;
  font-size: 14px;
  vertical-align: middle;
}

.cfm-table tbody tr:last-child td { border-bottom: none; }

.cfm-table tbody tr:hover { background: #f7f9fc; }

.cfm-table tbody td:nth-child(2) {
  font-weight: 700;
  color: #17365d;
  white-space: nowrap;
}

.cfm-table tbody td:nth-child(3) {
  color: #5d6c80;
  font-size: 13px;
}

.cfm-shop-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 14px;
  background: #f4be2a;
  color: #0a1323 !important;
  font-size: 12px;
  font-weight: 800;
  border-radius: 6px;
  text-decoration: none;
  white-space: nowrap;
  transition: background .12s, transform .12s;
}
.cfm-shop-btn:hover {
  background: #d9a514;
  transform: translateY(-1px);
}

/* ── Panel CTA bar ───────────────────────────────────── */
.cfm-panel-cta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 14px 18px;
  background: linear-gradient(90deg, #f0f4f9, #e8eef7);
  border-top: 1px solid #d9e2ef;
  font-size: 14px;
  color: #12284a;
}

.cfm-panel-cta strong { font-weight: 700; }

.btn-sm-primary {
  display: inline-flex;
  align-items: center;
  padding: 9px 18px;
  background: #f4be2a;
  color: #0a1323 !important;
  font-size: 13px;
  font-weight: 800;
  border-radius: 7px;
  text-decoration: none;
  transition: background .12s;
}
.btn-sm-primary:hover { background: #d9a514; }

.btn-sm-secondary {
  display: inline-flex;
  align-items: center;
  padding: 9px 18px;
  background: #17365d;
  color: #fff !important;
  font-size: 13px;
  font-weight: 700;
  border-radius: 7px;
  text-decoration: none;
  transition: background .12s;
}
.btn-sm-secondary:hover { background: #0f2442; }

/* ── Footer note ─────────────────────────────────────── */
.cfm-footer-note {
  margin-top: 18px;
  font-size: 14px;
  color: #5d6c80;
  text-align: center;
}
.cfm-footer-note a { color: #17365d; font-weight: 700; }
.cfm-footer-note a:hover { color: #d9a514; }

/* ── Responsive ──────────────────────────────────────── */
@media (max-width: 900px) {
  .cfm-tabs { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .cfm-tabs { grid-template-columns: 1fr; }
  .cfm-tab { padding: 12px 14px; }
  .cfm-table { font-size: 13px; }
  .cfm-table thead th,
  .cfm-table tbody td { padding: 10px 10px; }
  .cfm-panel-cta { flex-direction: column; align-items: flex-start; }
  .cfm-picker-head { flex-direction: column; align-items: flex-start; }
}

/* ══════════════════════════════════════════════════════
   GREEN PRICES — global highlight on every product card
   Matches the SMC dryer treatment: bold, dark green
   ══════════════════════════════════════════════════════ */

/* Product archive / category / shop pages */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .amount,
.woocommerce ul.products li.product .price .woocommerce-Price-amount,
.woocommerce ul.products li.product .price .woocommerce-Price-amount bdi,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins .amount,
.woocommerce ul.products li.product .price ins .woocommerce-Price-amount {
  color: #15803d !important;          /* same green as sale prices */
  font-weight: 800 !important;
  background: transparent !important;
  text-decoration: none !important;
}

/* Strikethrough (was-price) stays gray */
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del .amount,
.woocommerce ul.products li.product .price del .woocommerce-Price-amount,
.woocommerce ul.products li.product .price del bdi {
  color: #9aa6bd !important;
  font-weight: 600 !important;
  font-size: 0.88em !important;
  text-decoration: line-through !important;
}

/* Custom product-card class (used by featured strip + best sellers) */
.product-card .price,
.product-card .price .amount,
.product-card .price .woocommerce-Price-amount,
.product-card .price ins,
.product-card .price ins .amount {
  color: #15803d !important;
  font-weight: 800 !important;
  background: transparent !important;
}

.product-card .price del,
.product-card .price del .amount,
.product-card .price del .woocommerce-Price-amount {
  color: #9aa6bd !important;
  font-weight: 600 !important;
}

/* Single product page price (header price under title) */
.woocommerce div.product .price,
.woocommerce div.product .price .amount,
.woocommerce div.product .price .woocommerce-Price-amount,
.woocommerce div.product .price ins,
.woocommerce div.product .price ins .amount,
.woocommerce div.product p.price,
.woocommerce div.product p.price .amount,
.woocommerce div.product p.price .woocommerce-Price-amount,
.woocommerce div.product span.price,
.woocommerce div.product span.price .amount {
  color: #15803d !important;
  font-weight: 800 !important;
  background: transparent !important;
}

.woocommerce div.product .price del,
.woocommerce div.product .price del .amount,
.woocommerce div.product .price del .woocommerce-Price-amount,
.woocommerce div.product p.price del {
  color: #9aa6bd !important;
  font-weight: 600 !important;
  font-size: 0.78em !important;
}

/* Cart, mini-cart, checkout — keep prices green for consistency */
.woocommerce-cart .product-price .amount,
.woocommerce-cart .product-subtotal .amount,
.woocommerce-checkout .amount,
.woocommerce ul.cart_list li .amount,
.woocommerce ul.product_list_widget li .amount,
.xoo-wsc-product .xoo-wsc-product-price,
.xoo-wsc-product-price .amount {
  color: #15803d !important;
  font-weight: 700 !important;
}

/* Related products + upsell sections also green */
.related .price,
.related .price .amount,
.upsells .price,
.upsells .price .amount,
.cross-sells .price,
.cross-sells .price .amount {
  color: #15803d !important;
  font-weight: 800 !important;
}

/* Featured strip cards (homepage) — already green via earlier rules, reinforce */
.featured-strip-card-price,
.featured-strip-card-price .amount,
.featured-strip-card-price .woocommerce-Price-amount,
.featured-strip-card-price ins,
.featured-strip-card-price ins .amount {
  color: #15803d !important;
  font-weight: 800 !important;
}

/* ══════════════════════════════════════════════════════
   HEADER ICONS — proper SVGs replacing colored emoji
   ══════════════════════════════════════════════════════ */

/* Search button — clean magnifying glass icon */
.header-search-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  padding: 8px 10px;
  cursor: pointer;
  border-radius: 6px;
  color: #ffffff;
  transition: background .15s ease, color .15s ease;
}
.header-search-toggle:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #f4be2a;
}
.header-search-toggle:focus-visible {
  outline: 2px solid #f4be2a;
  outline-offset: 2px;
}
.header-search-svg {
  width: 20px;
  height: 20px;
  display: block;
  stroke: currentColor;
}
/* hide any old emoji-based icon that might still render */
.header-search-icon { display: none !important; }

/* Search panel — make sure it appears above everything when open */
.header-search-panel {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 6px;
  width: 340px;
  max-width: calc(100vw - 32px);
  z-index: 9999;
  background: #ffffff;
  border: 1px solid #d9e2ef;
  border-radius: 10px;
  padding: 12px;
  box-shadow: 0 16px 40px rgba(10, 19, 35, 0.2);
}
.header-search-panel[hidden] {
  display: none !important;
}
.header-search-form {
  display: flex;
  gap: 8px;
  align-items: center;
}
.header-search-input {
  flex: 1;
  padding: 10px 12px;
  border: 1px solid #d9e2ef;
  border-radius: 7px;
  font-size: 14px;
  outline: none;
  color: #12284a;
  background: #ffffff;
  min-width: 0;
}
.header-search-input::placeholder { color: #9ca3af; }
.header-search-input:focus {
  border-color: #f4be2a;
  box-shadow: 0 0 0 3px rgba(244, 190, 42, 0.18);
}
.header-search-submit {
  background: #f4be2a;
  color: #0a1323;
  border: none;
  border-radius: 7px;
  padding: 10px 14px;
  font-weight: 800;
  font-size: 14px;
  cursor: pointer;
  white-space: nowrap;
  transition: background .12s ease;
}
.header-search-submit:hover { background: #d9a514; }

/* Make sure the parent header-actions container is positioned so the panel anchors to it */
.header-actions {
  position: relative;
}

/* Cart icon SVG — replaces the 🛒 emoji */
.cart-icon-svg {
  width: 22px;
  height: 22px;
  display: block;
  stroke: currentColor;
}
/* Cart link button styling refinement now that icon is SVG */
.cart-link {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  color: #ffffff;
  background: transparent;
  border: none;
  padding: 8px 10px;
  cursor: pointer;
  border-radius: 6px;
  font-weight: 600;
  transition: background .15s ease, color .15s ease;
  position: relative;
}
.cart-link:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #f4be2a;
}
.cart-link:focus-visible {
  outline: 2px solid #f4be2a;
  outline-offset: 2px;
}
.cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  background: #f4be2a;
  color: #0a1323;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

/* Mobile — search panel becomes full-width drop */
@media (max-width: 600px) {
  .header-search-panel {
    width: calc(100vw - 24px);
    right: -8px;
  }
  .header-search-svg,
  .cart-icon-svg { width: 18px; height: 18px; }
}

/* ══════════════════════════════════════════════════════
   ALWAYS-VISIBLE SEARCH BAR IN HEADER
   Professional ecommerce pattern: search is one of the
   first things visitors look for. Don't hide it.
   ══════════════════════════════════════════════════════ */

.header-search-bar {
  display: inline-flex;
  align-items: stretch;
  flex: 0 1 360px;             /* preferred width 360px, can shrink */
  max-width: 420px;
  min-width: 220px;
  height: 40px;
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: box-shadow .15s ease, border-color .15s ease;
  margin: 0 6px;
}
.header-search-bar:hover,
.header-search-bar:focus-within {
  box-shadow: 0 4px 14px rgba(244, 190, 42, 0.32);
  border-color: rgba(244, 190, 42, 0.6);
}

/* magnifying glass icon at left of input */
.header-search-bar-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  flex-shrink: 0;
  background: #ffffff;
  color: #6b7280;
}
.header-search-bar-icon svg {
  width: 16px;
  height: 16px;
}

/* the actual input */
.header-search-bar-input {
  flex: 1;
  min-width: 0;
  padding: 0 10px 0 0;
  background: #ffffff;
  border: none;
  outline: none;
  font-size: 14px;
  font-family: inherit;
  color: #12284a;
  height: 100%;
  line-height: 1;
}
.header-search-bar-input::placeholder {
  color: #9ca3af;
  font-size: 13.5px;
}
.header-search-bar-input:focus { outline: none; }
/* hide native search input clear-X for cleaner look */
.header-search-bar-input::-webkit-search-decoration,
.header-search-bar-input::-webkit-search-cancel-button { display: none; }

/* the gold "Search" submit button on the right */
.header-search-bar-submit {
  flex-shrink: 0;
  background: #f4be2a;
  color: #0a1323;
  border: none;
  padding: 0 18px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .02em;
  cursor: pointer;
  text-transform: uppercase;
  transition: background .15s ease;
  font-family: inherit;
  line-height: 1;
}
.header-search-bar-submit:hover { background: #d9a514; }
.header-search-bar-submit:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: -3px;
}

/* ── Header layout — give search bar room ────────────── */
/* On standard desktop the order is: nav → search bar → cart → CTA → my account
   We want the search bar to take noticeable space without crushing the rest. */
.header-actions {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;                    /* tighter to give search room */
  flex-wrap: nowrap;
}

/* ── Responsive behavior ─────────────────────────────── */
/* Tablet: shrink search a bit so cart and CTA still fit */
@media (max-width: 1200px) {
  .header-search-bar {
    flex: 0 1 260px;
    min-width: 180px;
  }
  .header-search-bar-submit { padding: 0 12px; font-size: 12px; }
}

/* Smaller laptops — make submit icon-only to save room */
@media (max-width: 1050px) {
  .header-search-bar {
    flex: 0 1 220px;
    min-width: 160px;
  }
  .header-search-bar-submit span { display: none; }
  .header-search-bar-submit::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a1323' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat center / contain;
  }
  .header-search-bar-submit { padding: 0 12px; }
}

/* Mobile: search bar drops to its own full-width row below the nav */
@media (max-width: 768px) {
  .header-search-bar {
    order: 99;                          /* push to last position in flex */
    flex: 1 1 100%;
    width: 100%;
    max-width: 100%;
    margin: 8px 0 0;
    height: 38px;
  }
  .header-actions { flex-wrap: wrap; }
  .header-search-bar-submit span { display: inline; }
  .header-search-bar-submit::before { display: none; }
}

/* Hide any leftover toggle button styling so nothing weird remains */
.header-search-toggle,
.header-search-panel,
.header-search-icon { display: none !important; }

/* ══════════════════════════════════════════════════════
   FULL-WIDTH SEARCH ROW BELOW MAIN NAVIGATION
   Clean, professional, doesn't crowd the header.
   ══════════════════════════════════════════════════════ */

/* The colored band behind the search */
.header-searchrow {
  background: #1a2338;        /* slightly lighter than header for visual separation */
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
  padding: 14px 0;
  position: relative;
  z-index: 50;
}

/* The pill-shaped form */
.header-searchrow-form {
  display: flex;
  align-items: stretch;
  width: 100%;
  max-width: 880px;            /* generous but not overpowering */
  margin: 0 auto;
  height: 46px;
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.22);
  transition: box-shadow .15s ease;
}
.header-searchrow-form:focus-within {
  box-shadow: 0 6px 20px rgba(244, 190, 42, 0.35);
}

/* Magnifying glass on the left */
.header-searchrow-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  flex-shrink: 0;
  color: #6b7280;
  background: #ffffff;
}
.header-searchrow-icon svg {
  width: 18px;
  height: 18px;
}

/* The input */
.header-searchrow-input {
  flex: 1;
  min-width: 0;
  padding: 0 14px 0 0;
  background: #ffffff;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: 15px;
  color: #12284a;
  height: 100%;
  line-height: 1;
}
.header-searchrow-input::placeholder {
  color: #9ca3af;
  font-size: 14.5px;
}
.header-searchrow-input::-webkit-search-decoration,
.header-searchrow-input::-webkit-search-cancel-button { display: none; }

/* Gold submit button on the right */
.header-searchrow-submit {
  flex-shrink: 0;
  background: #f4be2a;
  color: #0a1323;
  border: none;
  padding: 0 28px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .15s ease;
}
.header-searchrow-submit:hover { background: #d9a514; }
.header-searchrow-submit:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: -3px;
}

/* ── Disable the old inline header-search-bar (now unused) ──── */
.header-search-bar {
  display: none !important;
}

/* ── Responsive ──────────────────────────────────────── */
@media (max-width: 768px) {
  .header-searchrow { padding: 10px 0; }
  .header-searchrow-form {
    height: 42px;
    max-width: 100%;
    border-radius: 8px;
  }
  .header-searchrow-icon { width: 40px; }
  .header-searchrow-icon svg { width: 16px; height: 16px; }
  .header-searchrow-input { font-size: 14px; }
  .header-searchrow-submit {
    padding: 0 16px;
    font-size: 12.5px;
    letter-spacing: .02em;
  }
}
@media (max-width: 480px) {
  .header-searchrow-submit span { display: none; }
  .header-searchrow-submit::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a1323' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat center / contain;
  }
  .header-searchrow-submit { padding: 0 14px; }
}
