/* ===== MEEXCO global polish ===== */

/* side floating contact buttons: clean circles, no white plate, no overlap */
.fu{position:fixed!important;right:20px!important;z-index:9998;background:transparent!important;
  box-shadow:none!important;border:0!important;padding:0!important;margin:0!important;
  width:auto!important;height:auto!important;display:block!important;}
.fu.fu1{bottom:104px!important;}
.fu.fu2{bottom:24px!important;}
.fu .fu-btn{display:block!important;width:56px!important;height:56px!important;border-radius:50%!important;
  overflow:hidden;background:#ff8714;box-shadow:0 10px 26px rgba(0,0,0,.32);
  transition:transform .25s ease;}
.fu .fu-btn:hover{transform:translateY(-2px);}
.fu .fu-btn img{width:100%!important;height:100%!important;object-fit:cover!important;
  display:block!important;border-radius:50%!important;margin:0!important;}
.fu .icon-guanbi,.fu i{position:absolute!important;top:-5px!important;right:-5px!important;
  width:18px!important;height:18px!important;line-height:18px!important;text-align:center;
  border-radius:50%;background:rgba(17,17,20,.9);color:#fff!important;font-size:11px!important;
  cursor:pointer;display:block!important;}
@media(max-width:900px){.fu .fu-btn{width:48px!important;height:48px!important;}.fu.fu1{bottom:92px!important;}}

/* ===== product page purchase panel ===== */
body.single-product .buy{max-width:560px!important;margin:34px auto 0!important;
  background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.14)!important;
  border-radius:20px!important;padding:30px 28px!important;text-align:left!important;}
body.single-product .buy h1.product_title{display:none!important;}
body.single-product .buy .price{display:block!important;margin:0 0 14px!important;}
body.single-product .buy .price,
body.single-product .buy .price bdi,
body.single-product .buy .price .amount{color:#ff8714!important;font-size:30px!important;
  font-weight:900!important;letter-spacing:-.5px;}
body.single-product .buy .price del,body.single-product .buy .price del .amount{color:rgba(255,255,255,.3)!important;font-size:16px!important;}
body.single-product .buy .woocommerce-product-details__short-description p{color:rgba(255,255,255,.6)!important;
  font-size:14px!important;line-height:1.7!important;margin:0 0 14px!important;}
body.single-product .buy button:not(.meexco-swatch),
body.single-product .buy .single_add_to_cart_button,
body.single-product .buy .wp-element-button{background:#ff8714!important;background-image:none!important;
  background-color:#ff8714!important;color:#fff!important;border:0!important;border-radius:40px!important;
  padding:15px 36px!important;font-weight:800!important;font-size:15px!important;
  box-shadow:none!important;text-shadow:none!important;letter-spacing:.3px;}
body.single-product .buy button:not(.meexco-swatch):hover{background:#ff9b3d!important;}
body.single-product .buy .sku_wrapper,
body.single-product .buy .posted_in,
body.single-product .buy .reset_variations{display:none!important;}
body.single-product .buy .variations{width:100%!important;border:0!important;margin:0 0 12px!important;}
body.single-product .buy .variations th,
body.single-product .buy .variations td{border:0!important;background:transparent!important;
  padding:0 0 6px!important;display:block!important;}
body.single-product .buy .variations label{color:rgba(255,255,255,.45)!important;font-size:11px!important;
  font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important;}
body.single-product .buy .value{display:flex!important;flex-wrap:wrap!important;gap:8px!important;}
body.single-product .buy form.cart{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important;}
body.single-product .buy .quantity input{background:#16161a!important;color:#fff!important;
  border:1px solid rgba(255,255,255,.2)!important;border-radius:10px!important;padding:12px!important;}

/* flavour swatches on the dark purchase panel */
body.single-product .buy .meexco-swatches{margin:16px 0 14px!important;}
body.single-product .buy .meexco-swatches-label{color:rgba(255,255,255,.42)!important;font-size:11px!important;
  font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important;margin-bottom:10px!important;}
body.single-product .buy .meexco-swatches-grid{gap:8px!important;}
body.single-product .buy .meexco-swatch{width:82px!important;background:#16161a!important;
  border:2px solid rgba(255,255,255,.12)!important;border-radius:14px!important;padding:6px 5px 7px!important;
  box-shadow:none!important;}
body.single-product .buy .meexco-swatch:hover{border-color:rgba(255,255,255,.3)!important;transform:translateY(-1px);}
body.single-product .buy .meexco-swatch.is-selected,
body.single-product .buy .meexco-swatch.selected,
body.single-product .buy .meexco-swatch[aria-pressed="true"]{border-color:#ff8714!important;background:#1d1a16!important;}
body.single-product .buy .meexco-swatch img{width:64px!important;height:64px!important;border-radius:10px!important;}
body.single-product .buy .meexco-swatch .meexco-swatch-name{color:rgba(255,255,255,.6)!important;font-size:10px!important;}
body.single-product .buy .meexco-swatch.is-selected .meexco-swatch-name{color:#fff!important;}

/* ===== floating contact rail (replaces the old image badges) ===== */
.mx-rail{position:fixed!important;right:20px!important;bottom:26px!important;z-index:9997;
  display:flex!important;flex-direction:column;gap:12px;align-items:flex-end;}
.mx-rail-btn{position:relative;display:flex!important;align-items:center;justify-content:center;
  width:52px!important;height:52px!important;border-radius:50%!important;border:0!important;
  background:#ff8714!important;color:#fff!important;cursor:pointer;padding:0!important;
  box-shadow:0 10px 26px rgba(0,0,0,.28);transition:transform .2s ease,background .2s ease;}
.mx-rail-btn svg{width:24px!important;height:24px!important;display:block;}
.mx-rail-btn:hover{transform:translateY(-2px);background:#ff9b3d!important;}
.mx-rail-tip{position:absolute;right:64px;top:50%;transform:translateY(-50%) translateX(6px);
  background:#15151a;color:#fff;font-size:12px;font-weight:700;white-space:nowrap;
  padding:7px 12px;border-radius:8px;opacity:0;pointer-events:none;transition:all .2s ease;}
.mx-rail-btn:hover .mx-rail-tip{opacity:1;transform:translateY(-50%) translateX(0);}
.mx-rail-top{opacity:0;visibility:hidden;transform:translateY(8px);transition:all .25s ease;background:rgba(21,21,26,.92)!important;}
.mx-rail-top.is-on{opacity:1;visibility:visible;transform:none;}
/* retire the legacy image badges */
.fu{display:none!important;}
@media(max-width:900px){.mx-rail{right:14px!important;bottom:18px!important;gap:10px;}
  .mx-rail-btn{width:46px!important;height:46px!important;}.mx-rail-btn svg{width:21px!important;height:21px!important;}
  .mx-rail-tip{display:none;}}

/* ===== header utility bar (Shop / Cart / Account / languages) ===== */
body .fp-utility{
  position:absolute!important;right:28px!important;top:12px!important;z-index:70;
  display:flex!important;align-items:center!important;gap:0!important;
  padding:7px 16px!important;border-radius:999px!important;
  background:rgba(12,12,15,.62)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22);
  font-size:12px!important;line-height:1!important;letter-spacing:.02em;}
body .fp-utility a{color:rgba(255,255,255,.86)!important;text-decoration:none!important;
  font-weight:600!important;padding:4px 6px!important;border-radius:6px;transition:color .18s;}
body .fp-utility a:hover{color:#ff8714!important;}
body .fp-utility .fp-utility-sep{color:rgba(255,255,255,.28)!important;padding:0 2px!important;}
body .fp-utility .fp-utility-langs{display:flex!important;align-items:center!important;gap:1px;margin-left:2px;}
body .fp-utility .fp-utility-langs a{font-size:11px!important;color:rgba(255,255,255,.55)!important;font-weight:700!important;
  padding:3px 5px!important;}
body .fp-utility .fp-utility-langs a[style]{color:#ff8714!important;font-weight:800!important;text-decoration:none!important;}
body .fp-utility .fp-utility-count{display:inline-flex!important;align-items:center;justify-content:center;
  min-width:16px;height:16px;padding:0 4px;margin-left:4px;border-radius:9px;
  background:#ff8714!important;color:#fff!important;font-size:10px!important;font-weight:800!important;line-height:16px;}
@media(max-width:900px){body .fp-utility{right:12px!important;top:8px!important;padding:5px 10px!important;font-size:11px!important;}
  body .fp-utility .fp-utility-langs a{font-size:10px!important;padding:2px 4px!important;}}

/* ===== alignment system ===== */
/* About: readable measure + stop the headline clipping off-screen */
.nexa-site-page .slog-box{max-width:1120px!important;margin:0 auto!important;padding:0 28px!important;}
.nexa-site-page .slog-box p{font-size:clamp(20px,2.1vw,34px)!important;line-height:1.45!important;}
.nexa-site-page .con.pc{max-width:1440px;margin:0 auto;padding:0 28px;}
.nexa-site-page .con.pc h2{font-size:clamp(34px,6vw,104px)!important;line-height:.98!important;
  letter-spacing:-1.5px!important;white-space:normal!important;overflow-wrap:break-word;}
.nexa-site-page .con .map{min-height:420px;background-size:cover!important;background-position:center!important;}
/* About: the three feature rows line up on one grid */
.nexa-site-page .part4 .con{max-width:1440px;margin:0 auto;padding:0 28px;}

/* Contact: FAQ + form share one centred measure */
.nexa-site-page .faq .faq-box{max-width:1080px!important;margin:0 auto!important;}
.nexa-site-page .contact .con{max-width:1080px!important;margin:0 auto!important;}
.fp-native.fp-contact{max-width:900px!important;margin:0 auto 90px!important;padding:0 28px!important;}
.fp-native.fp-contact h2{font-size:34px!important;font-weight:900!important;color:#111!important;margin:0 0 24px!important;text-align:left!important;}
.fp-native.fp-contact form p{margin:0 0 18px!important;}
.fp-native.fp-contact input[type=text],.fp-native.fp-contact input[type=email],
.fp-native.fp-contact input[type=tel],.fp-native.fp-contact textarea{
  width:100%!important;padding:14px 16px!important;border:1px solid #e4e4e6!important;border-radius:12px!important;
  font-size:15px!important;background:#fafafa!important;color:#1a1a1a!important;box-sizing:border-box!important;}
.fp-native.fp-contact textarea{min-height:150px!important;}
.fp-native.fp-contact input[type=submit],.fp-native.fp-contact button[type=submit]{
  background:#ff8714!important;color:#fff!important;border:0!important;border-radius:40px!important;
  padding:14px 36px!important;font-weight:800!important;font-size:15px!important;cursor:pointer;}

/* about: hard-stop the headline overflow */
.nexa-site-page .con.pc{overflow:hidden!important;}
.nexa-site-page .con.pc h2{font-size:clamp(30px,5.2vw,88px)!important;line-height:1!important;letter-spacing:-1px!important;}
/* about: make the find-us map visible even before lazy resolution */
.nexa-site-page .con .map{min-height:460px!important;background-color:#12121a!important;border-radius:18px!important;}

/* about: the giant statement headline (part3) must not clip */
.nexa-site-page .part3{overflow:hidden!important;padding:0 28px!important;box-sizing:border-box!important;}
.nexa-site-page .part3 .con{max-width:1440px!important;margin:0 auto!important;padding:0!important;}
.nexa-site-page .part3 .con h2{font-size:clamp(30px,5vw,84px)!important;line-height:1.04!important;
  letter-spacing:-1.5px!important;white-space:normal!important;overflow-wrap:break-word!important;margin:0!important;}
/* about: keep the three pinned feature rows on one measure */
.nexa-site-page .part4 .con{max-width:1440px!important;margin:0 auto!important;padding:0 28px!important;}
.nexa-site-page .part4 .con-item .img-box{border-radius:22px!important;overflow:hidden!important;}
.nexa-site-page .part4 .con-item h3{letter-spacing:-.5px!important;}
.nexa-site-page .part4 .con-item p{max-width:560px;}

/* ===== homepage OEM/ODM band ===== */
.mx-oem-band{background:linear-gradient(180deg,#ffffff 0%,#fdf6ef 100%)!important;padding:100px 24px!important;}
.mx-oem-inner{max-width:1180px;margin:0 auto;text-align:center;}
.mx-oem-eyebrow{font-size:12px;letter-spacing:6px;color:#ff8714;font-weight:800;margin-bottom:14px;}
.mx-oem-band h2{font-size:clamp(28px,3.8vw,52px)!important;font-weight:900!important;margin:0 0 16px!important;
  color:#111!important;letter-spacing:-1px;line-height:1.05;}
.mx-oem-band h2 .orange{color:#ff8714!important;}
.mx-oem-inner > p{max-width:660px;margin:0 auto 40px!important;color:#666!important;font-size:16px!important;line-height:1.75!important;}
.mx-oem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:38px;}
.mx-oem-card{background:#fff;border:1px solid #eee;border-radius:18px;padding:26px 22px;text-align:left;
  box-shadow:0 6px 22px rgba(0,0,0,.05);transition:transform .25s ease,box-shadow .25s ease;}
.mx-oem-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.09);}
.mx-oem-card span{font-size:11px;font-weight:800;letter-spacing:2px;color:#ff8714;}
.mx-oem-card h3{font-size:17px!important;font-weight:800!important;margin:10px 0 8px!important;color:#111!important;}
.mx-oem-card p{font-size:13px!important;line-height:1.65!important;color:#6b6b6b!important;margin:0!important;}
.mx-oem-btn{display:inline-block;padding:15px 40px;border-radius:40px;background:#ff8714!important;color:#fff!important;
  font-weight:800!important;font-size:15px;text-decoration:none!important;box-shadow:0 10px 24px rgba(255,135,20,.28);}
.mx-oem-btn:hover{filter:brightness(1.07);}
@media(max-width:900px){.mx-oem-grid{grid-template-columns:repeat(2,1fr);}.mx-oem-band{padding:64px 18px!important;}}

/* homepage OEM band: factory photo strip */
.mx-oem-shots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 34px;}
.mx-oem-shots img{width:100%;height:178px;object-fit:cover;border-radius:16px;display:block;
  filter:brightness(.94) saturate(1.04);box-shadow:0 8px 24px rgba(0,0,0,.08);}
@media(max-width:900px){.mx-oem-shots{grid-template-columns:1fr;}.mx-oem-shots img{height:150px;}}

/* ============================================================
   MEEXCO — unified design for the WooCommerce account / cart /
   checkout pages so they match the rest of the site.
   ============================================================ */

/* ---------- page shell ---------- */
.woocommerce-account .woocommerce,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce{
  max-width:1160px!important;
  margin:0 auto!important;
  padding:56px 24px 90px!important;
  color:#1a1a1a;
}
.woocommerce-account .woocommerce > h2:first-child,
.woocommerce-account h1.page-title,
.woocommerce-cart h1.page-title,
.woocommerce-checkout h1.page-title{
  font-size:clamp(28px,3.4vw,42px)!important;
  font-weight:900!important;
  letter-spacing:-.8px!important;
  color:#111!important;
  margin:0 0 30px!important;
  line-height:1.1!important;
}
.woocommerce h2{
  font-size:22px!important;
  font-weight:800!important;
  letter-spacing:-.3px!important;
  color:#111!important;
  margin:0 0 16px!important;
}
.woocommerce h3{font-size:17px!important;font-weight:800!important;color:#111!important;}

/* ---------- login / register cards ---------- */
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password{
  background:#fff!important;
  border:1px solid #ededed!important;
  border-radius:20px!important;
  padding:30px 28px!important;
  box-shadow:0 8px 30px rgba(0,0,0,.05)!important;
  margin:0!important;
}
.woocommerce-account .u-column1.col-1,
.woocommerce-account .u-column2.col-2{padding:0!important;max-width:100%!important;}
.woocommerce-account .u-columns{display:grid!important;grid-template-columns:1fr 1fr;gap:26px!important;}
@media(max-width:820px){.woocommerce-account .u-columns{grid-template-columns:1fr!important;}}

/* ---------- form controls ---------- */
.woocommerce input[type=text],
.woocommerce input[type=email],
.woocommerce input[type=password],
.woocommerce input[type=tel],
.woocommerce input[type=number],
.woocommerce input[type=search],
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container .select2-selection{
  width:100%!important;
  padding:13px 15px!important;
  border:1px solid #e4e4e6!important;
  border-radius:12px!important;
  background:#fafafa!important;
  color:#1a1a1a!important;
  font-size:15px!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
  height:auto!important;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus{border-color:#ff8714!important;background:#fff!important;outline:none!important;}
.woocommerce label{font-size:13px!important;font-weight:700!important;color:#444!important;margin-bottom:6px!important;display:block;}
.woocommerce .form-row{margin:0 0 16px!important;padding:0!important;}

/* ---------- buttons ---------- */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button.alt,
.woocommerce-checkout #place_order,
.woocommerce .wc-forward{
  background:#ff8714!important;
  background-image:none!important;
  color:#fff!important;
  border:0!important;
  border-radius:40px!important;
  padding:14px 32px!important;
  font-weight:800!important;
  font-size:15px!important;
  line-height:1.2!important;
  letter-spacing:.2px!important;
  box-shadow:0 8px 22px rgba(255,135,20,.24)!important;
  text-decoration:none!important;
  transition:transform .18s ease,filter .18s ease;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover{filter:brightness(1.07)!important;transform:translateY(-1px);}
.woocommerce a.button.ghost,
.woocommerce .button.wc-backward{
  background:#fff!important;color:#111!important;border:1px solid #e2e2e2!important;
  box-shadow:none!important;
}
.woocommerce .button:disabled,
.woocommerce button:disabled{opacity:.5!important;box-shadow:none!important;}

/* ---------- notices ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  background:#fdf6ef!important;
  border:1px solid #f3e2cf!important;
  border-left:4px solid #ff8714!important;
  border-radius:14px!important;
  padding:16px 20px!important;
  color:#4a3b2c!important;
  font-size:14px!important;
  margin:0 0 22px!important;
  list-style:none!important;
}
.woocommerce-error{border-left-color:#d63638!important;background:#fdf0f0!important;border-color:#f6dada!important;color:#7a2e2e!important;}

/* ---------- tables (cart / orders) ---------- */
.woocommerce table.shop_table{
  border:1px solid #ededed!important;
  border-radius:16px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden!important;
  background:#fff!important;
}
.woocommerce table.shop_table th{
  background:#fafafa!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#777!important;
  padding:14px 16px!important;
  border:0!important;
}
.woocommerce table.shop_table td{
  padding:16px!important;
  border-top:1px solid #f0f0f0!important;
  font-size:14px!important;
  vertical-align:middle!important;
}
.woocommerce table.cart img{width:74px!important;border-radius:10px!important;}
.woocommerce-cart .cart-collaterals{max-width:420px!important;margin-left:auto!important;margin-top:26px!important;}
.woocommerce-cart .cart_totals{
  background:#fff!important;border:1px solid #ededed!important;border-radius:18px!important;
  padding:22px 24px!important;box-shadow:0 8px 30px rgba(0,0,0,.05)!important;
}
.woocommerce-cart .cart_totals h2{font-size:16px!important;margin-bottom:14px!important;}
.woocommerce .quantity input.qty{
  width:74px!important;text-align:center!important;border-radius:10px!important;padding:10px!important;
}

/* ---------- checkout ---------- */
.woocommerce-checkout form.checkout{display:block;}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review{
  background:#fff!important;border:1px solid #ededed!important;border-radius:18px!important;
  padding:26px!important;margin-bottom:22px!important;box-shadow:0 8px 30px rgba(0,0,0,.05)!important;
}
.woocommerce-checkout #order_review_heading{margin-top:0!important;}
.woocommerce-checkout ul.wc_payment_methods{list-style:none!important;margin:0!important;padding:0!important;}
.woocommerce-checkout ul.wc_payment_methods li{
  border:1px solid #ededed!important;border-radius:12px!important;padding:14px 16px!important;
  margin-bottom:10px!important;background:#fafafa!important;font-size:14px!important;
}
#add_payment_method #payment,
.woocommerce-checkout #payment{background:transparent!important;border-radius:0!important;}

/* ---------- account navigation ---------- */
.woocommerce-MyAccount-navigation{
  float:none!important;width:100%!important;margin-bottom:26px!important;
}
.woocommerce-MyAccount-navigation ul{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;
  list-style:none!important;margin:0!important;padding:0!important;border:0!important;
}
.woocommerce-MyAccount-navigation ul li{
  border:0!important;background:#fff!important;border:1px solid #ededed!important;
  border-radius:40px!important;overflow:hidden;
}
.woocommerce-MyAccount-navigation ul li a{padding:10px 18px!important;display:block!important;font-size:13px!important;font-weight:700!important;color:#444!important;text-decoration:none!important;}
.woocommerce-MyAccount-navigation ul li.is-active{background:#ff8714!important;border-color:#ff8714!important;}
.woocommerce-MyAccount-navigation ul li.is-active a{color:#fff!important;}
.woocommerce-MyAccount-content{float:none!important;width:100%!important;}

/* ---------- empty states ---------- */
.woocommerce-cart .cart-empty,
.woocommerce .woocommerce-info.cart-empty{
  text-align:center!important;font-size:16px!important;padding:30px!important;background:#fff!important;
  border:1px dashed #e6e6e6!important;border-radius:18px!important;margin-bottom:18px!important;
}
@media(max-width:820px){
  .woocommerce-account .woocommerce,
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce{padding:34px 16px 60px!important;}
  .woocommerce table.shop_table td{padding:12px 10px!important;font-size:13px!important;}
}


/* ===== catalogue cards ===== */
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;font-weight:800!important;
  color:#111!important;margin:12px 0 6px!important;line-height:1.3!important;}
.woocommerce ul.products li.product img{aspect-ratio:1/1;object-fit:cover;border-radius:14px!important;
  width:100%!important;height:auto!important;display:block;background:#f4f4f5;}
.woocommerce ul.products li.product .price{color:#ff8714!important;font-weight:800!important;font-size:15px!important;}
.woocommerce ul.products li.product .button{margin-top:10px!important;font-size:13px!important;padding:11px 20px!important;}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:26px 22px!important;}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:18px 14px!important;}}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr!important;}}


/* ===== mobile fixes ===== */
@media(max-width:900px){
  /* utility bar must not cover the logo / hamburger */
  body .fp-utility{
    top:86px!important;right:10px!important;left:auto!important;
    padding:5px 11px!important;font-size:10px!important;gap:0!important;
    background:rgba(12,12,15,.72)!important;border-radius:999px!important;
  }
  body .fp-utility a{padding:2px 4px!important;font-size:10px!important;}
  body .fp-utility .fp-utility-langs a{font-size:9.5px!important;padding:2px 3px!important;}
  body .fp-utility .fp-utility-sep{padding:0!important;}
  body .fp-utility .fp-utility-count{min-width:14px;height:14px;line-height:14px;font-size:9px!important;}

  /* cookie banner: compact */
  #mx-cookie{left:10px!important;right:10px!important;bottom:10px!important;padding:15px 16px!important;max-width:none!important;}
  #mx-cookie h4{font-size:14px!important;}
  #mx-cookie p{font-size:12px!important;margin-bottom:12px!important;}

  /* floating rail must clear the cookie card */
  .mx-rail{right:10px!important;bottom:auto!important;top:auto!important;position:fixed!important;
    bottom:max(14px, env(safe-area-inset-bottom))!important;}
  .mx-rail .mx-rail-btn{width:44px!important;height:44px!important;}
  .mx-rail .mx-rail-btn svg{width:19px!important;height:19px!important;}
}
/* stop the OEM page from overflowing sideways */
body.nexa-site-page{overflow-x:hidden!important;}
.nexa-site-page .part2,.nexa-site-page .part3,.nexa-site-page .part4{overflow-x:hidden!important;max-width:100%!important;}


/* the nicotine ticker must never widen the page */
html,body{overflow-x:hidden!important;}
.warning-bar{overflow:hidden!important;max-width:100vw!important;}
.warning-bar .info{max-width:100%!important;}
@media(max-width:900px){
  .warning-bar{height:auto!important;}
  .warning-bar .info{width:auto!important;min-width:100vw!important;}
}


/* nicotine ticker: single line on mobile */
@media(max-width:900px){
  .warning-bar{height:34px!important;overflow:hidden!important;display:flex!important;align-items:center!important;}
  .warning-bar .info{width:auto!important;min-width:100vw!important;white-space:nowrap!important;
    font-size:11px!important;line-height:34px!important;padding:0 14px!important;}
  .warning-bar .info *{white-space:nowrap!important;}
}
@media(max-width:900px){
  .fp-story .st{min-height:72vh!important;}
  .fp-story .inner{padding:0 18px!important;}
  .fp-story .big{font-size:clamp(52px,18vw,96px)!important;letter-spacing:-3px!important;}
  .fp-story .grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;}
  .fp-story .oem-shots{grid-template-columns:1fr!important;}
  .fp-story .oem-shots img{height:130px!important;}
  .fp-story .oem-grid{grid-template-columns:repeat(2,1fr)!important;}
  .fp-story .buy{padding:22px 18px!important;}
}


/* when the fullscreen mobile menu is open, float UI must step back */
body:has(.nav-m.active) .fp-utility,
body:has(.nav-m.active) .mx-rail{opacity:0!important;pointer-events:none!important;transition:opacity .2s ease;}
body:has(.nav-m.active) .warning-bar{opacity:.35;}
@media(max-width:900px){
  .nav-m.active{position:fixed!important;inset:0!important;z-index:9990!important;overflow-y:auto!important;background:#ff8714!important;padding-top:96px!important;box-sizing:border-box!important;}
  .nav-m.active .navBg{display:none!important;}
}


/* checkout must never overflow on small screens */
@media(max-width:900px){
  .woocommerce-checkout .form-row,
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last,
  .woocommerce-checkout .form-row-wide{width:100%!important;float:none!important;padding:0!important;clear:both!important;}
  .woocommerce-checkout select,
  .woocommerce-checkout input,
  .woocommerce-checkout textarea{max-width:100%!important;width:100%!important;box-sizing:border-box!important;}
  .woocommerce-checkout .select2-container{width:100%!important;max-width:100%!important;}
  .woocommerce-checkout .select2-container .select2-selection{width:100%!important;}
  .select2-container{max-width:100%!important;}
  .woocommerce-checkout #customer_details,
  .woocommerce-checkout #order_review{width:100%!important;box-sizing:border-box!important;overflow:hidden!important;}
  .woocommerce-checkout table.shop_table{width:100%!important;display:block!important;overflow-x:auto!important;}
  .mx-rail{position:fixed!important;right:10px!important;bottom:16px!important;left:auto!important;}
}


@media(max-width:900px){
  .woocommerce-checkout .col-1,
  .woocommerce-checkout .col-2,
  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2{width:100%!important;float:none!important;padding:0!important;margin:0 0 18px!important;}
  .woocommerce-checkout .col2-set{width:100%!important;}
  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-shipping-fields,
  .woocommerce-checkout .woocommerce-additional-fields{width:100%!important;float:none!important;}
  .woocommerce-checkout h3{font-size:18px!important;}
  .woocommerce-checkout .woocommerce-info{font-size:13px!important;}
  .woocommerce-checkout #customer_details,#order_review,#order_review_heading{padding:20px 16px!important;}
  body .fp-utility{top:82px!important;}
}


/* select2 keeps its native select visually hidden — never give it a width */
.select2-hidden-accessible,
.woocommerce select.select2-hidden-accessible{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  border:0!important;
}
html{overflow-x:hidden!important;}


/* native page wrapper: 104px side padding is a desktop value */
@media(max-width:900px){
  main.fp-native,.fp-native{padding-left:16px!important;padding-right:16px!important;}
  body .fp-utility{top:88px!important;}
}
@media(max-width:1200px){
  main.fp-native,.fp-native{padding-left:40px!important;padding-right:40px!important;}
}


@media(max-width:900px){
  /* keep the page title clear of the floating utility pill */
  .woocommerce-account .woocommerce,
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce{padding-top:118px!important;}
  .woocommerce-account h1.page-title,
  .woocommerce-cart h1.page-title,
  .woocommerce-checkout h1.page-title{margin-top:0!important;}
}


/* the theme replaces body_class, so target page types structurally */
@media(max-width:900px){
  body:has(main.fp-native) main.fp-native{padding-top:150px!important;}
  body:has(main.fp-native) .fp-utility{top:118px!important;}
}


/* ===== utility strip: a normal header bar, not a floating pill ===== */
body .fp-utility{
  position:static!important;
  display:flex!important;justify-content:flex-end!important;align-items:center!important;
  height:34px!important;min-height:34px!important;
  padding:0 30px!important;margin:0!important;
  background:#f7f7f8!important;
  border:0!important;border-bottom:1px solid #e9e9ec!important;
  border-radius:0!important;box-shadow:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  font-size:12px!important;line-height:34px!important;letter-spacing:.01em;
  top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;
}
body .fp-utility a{color:#4a4a4a!important;font-weight:600!important;padding:0 7px!important;
  text-decoration:none!important;font-size:12px!important;background:none!important;}
body .fp-utility a:hover{color:#ff8714!important;}
body .fp-utility .fp-utility-sep{color:#cfcfd4!important;padding:0 1px!important;font-size:11px!important;}
body .fp-utility .fp-utility-langs{display:flex!important;align-items:center!important;gap:0!important;margin-left:6px!important;}
body .fp-utility .fp-utility-langs a{font-size:11px!important;color:#8b8b92!important;padding:0 5px!important;font-weight:700!important;}
body .fp-utility .fp-utility-langs a[style]{color:#ff8714!important;font-weight:800!important;}
body .fp-utility .fp-utility-count{display:inline-block;min-width:15px;height:15px;line-height:15px;
  padding:0 4px;margin-left:4px;border-radius:9px;background:#ff8714!important;color:#fff!important;
  font-size:10px!important;font-weight:800!important;text-align:center;vertical-align:middle;}
@media(max-width:900px){
  body .fp-utility{height:30px!important;min-height:30px!important;line-height:30px!important;
    padding:0 10px!important;justify-content:center!important;font-size:11px!important;}
  body .fp-utility a{font-size:11px!important;padding:0 5px!important;}
  body .fp-utility .fp-utility-langs a{font-size:10px!important;padding:0 3px!important;}
  /* the strip is in flow now, so drop the old clearance paddings */
  body:has(main.fp-native) main.fp-native{padding-top:34px!important;}
}


/* ===== NEW ARRIVALS: real swipe row, sharper, smaller ===== */
.container-fluid .hotProduct{height:auto!important;padding-bottom:46px!important;}
.container-fluid .hotProduct .hotProduct-swiper{
  width:100%!important;height:auto!important;display:block!important;
  overflow-x:auto!important;overflow-y:hidden!important;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;padding:0 0 8px!important;}
.container-fluid .hotProduct .hotProduct-swiper::-webkit-scrollbar{display:none;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-wrapper{
  display:flex!important;gap:24px;transform:none!important;width:max-content!important;
  padding:0 clamp(20px,6vw,80px)!important;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide{
  width:min(1250px,84vw)!important;height:auto!important;aspect-ratio:1250/544!important;
  flex:0 0 auto!important;scroll-snap-align:center!important;
  filter:none!important;-webkit-filter:none!important;
  box-shadow:0 18px 44px rgba(84,42,7,.18)!important;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide img{
  width:100%!important;height:100%!important;object-fit:cover!important;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.swiper-slide-active{filter:none!important;}
@media(max-width:900px){
  .container-fluid .hotProduct{padding-top:36px!important;padding-bottom:30px!important;}
  .container-fluid .hotProduct .hotProduct-swiper .swiper-slide{width:72vw!important;}
  .container-fluid .hotProduct .hotProduct-swiper .swiper-wrapper{gap:14px!important;padding:0 14vw!important;}
}
@media(max-width:600px){
  .container-fluid .hotProduct .hotProduct-swiper .swiper-slide{width:82vw!important;}
  .container-fluid .hotProduct .hotProduct-swiper .swiper-wrapper{gap:12px!important;padding:0 9vw!important;}
}


/* ===== 21+ age gate & newsletter overlay: self-contained styling ===== */
#warning-message.overlay-full, .overlay-full{
  font-family:inherit!important;
  position:fixed!important;inset:0!important;width:100%!important;height:100%!important;
  z-index:99999!important;display:none;
  background:rgba(8,8,10,.86)!important;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  background-image:none!important;
  align-items:center;justify-content:center;
  padding:24px;box-sizing:border-box;overflow-y:auto!important;
}
#warning-message.overlay-full[style*="block"], .overlay-full.show{display:flex!important;}
.overlay-full .warning-frame{
  font-family:inherit!important;
  position:relative!important;z-index:2;width:min(560px,100%)!important;max-width:560px!important;
  margin:auto!important;height:auto!important;
  background:#131317!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:22px!important;
  padding:44px 40px!important;box-shadow:0 30px 80px rgba(0,0,0,.55)!important;
  text-align:center;color:#fff!important;
}
.overlay-full .warning-title{
  font-size:13px!important;letter-spacing:8px!important;font-weight:800!important;
  color:#ff8714!important;margin:0 0 22px!important;text-transform:uppercase;
}
.overlay-full .warning-content p{
  font-size:15px!important;line-height:1.7!important;color:rgba(255,255,255,.78)!important;
  margin:0 0 14px!important;max-width:none!important;
}
.overlay-full .warning-content .warning-p{
  font-size:12px!important;line-height:1.6!important;color:rgba(255,255,255,.45)!important;
  margin:0 0 28px!important;
}
.overlay-full .warning-footer{display:flex!important;gap:12px!important;justify-content:center!important;flex-wrap:wrap!important;}
.overlay-full .warning-footer-button{margin:0!important;}
.overlay-full .line-button{
  display:inline-block!important;cursor:pointer;border-radius:40px!important;
  padding:15px 34px!important;font-size:14px!important;font-weight:800!important;
  letter-spacing:.02em;text-decoration:none;transition:filter .18s ease,background .18s ease;
}
.overlay-full .line-button.confirm{background:#ff8714!important;color:#fff!important;border:0!important;}
.overlay-full .line-button.confirm:hover{filter:brightness(1.08);}
.overlay-full .line-button.cancel{background:transparent!important;color:rgba(255,255,255,.75)!important;
  border:1px solid rgba(255,255,255,.28)!important;}
.overlay-full .line-button.cancel:hover{border-color:rgba(255,255,255,.55)!important;}
@media(max-width:600px){
  .overlay-full .warning-frame{padding:32px 22px!important;border-radius:18px!important;}
  .overlay-full .warning-title{letter-spacing:5px!important;font-size:12px!important;}
  .overlay-full .warning-footer .line-button{width:100%!important;padding:14px 20px!important;}
}
/* newsletter overlay shares the same shell */
.subscribe-full{position:fixed!important;inset:0!important;z-index:99998!important;
  background:rgba(8,8,10,.88)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  display:none;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;}
.subscribe-full.show{display:flex!important;}


/* ===== mobile hero must not swallow the whole screen ===== */
@media(max-width:900px){
  .banner{height:62vh!important;min-height:360px!important;max-height:540px!important;}
  .banner .swiper-container,.banner .swiper-wrapper,.banner .swiper-slide{height:100%!important;}
  .banner img,.banner video,.banner picture{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
  .banner .swiper-slide{width:100%!important;}
  .fp-story .st{min-height:58vh!important;}
}


/* while the 21+ gate is open, the cookie card must not cover its buttons */
body:has(#warning-message[style*="block"]) #mx-cookie{
  opacity:0!important;pointer-events:none!important;transform:translateY(20px)!important;}


/* ===== NEW ARRIVALS: clean white product cards ===== */
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{
  width:min(340px,78vw)!important;height:auto!important;aspect-ratio:auto!important;
  background:#ffffff!important;border-radius:20px!important;padding:16px 16px 12px!important;
  box-shadow:0 12px 34px rgba(84,42,7,.12)!important;filter:none!important;
}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card a{display:block!important;text-decoration:none!important;}
.mx-new-img{background:#f7f7f8;border-radius:14px;aspect-ratio:1/1;display:flex!important;
  align-items:center;justify-content:center;overflow:hidden;}
.mx-new-img img{width:90%!important;height:90%!important;object-fit:contain!important;border-radius:0!important;}
.mx-new-card .hotProduct-con{padding:14px 4px 6px!important;text-align:left!important;}
.mx-new-card .hotProduct-name{font-size:15px!important;font-weight:800!important;color:#161618!important;}
.mx-new-card .hotProduct-p{font-size:12.5px!important;color:#7a7a80!important;margin-top:5px!important;line-height:1.4!important;}
@media(max-width:900px){
  .container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{width:64vw!important;padding:12px!important;}
  .mx-new-card .hotProduct-name{font-size:14px!important;}
}


/* align the NEW ARRIVALS cards on one baseline */
.container-fluid .hotProduct .hotProduct-swiper .swiper-wrapper{align-items:flex-start!important;}
.container-fluid .hotProduct .hotProduct-swiper{overflow-y:visible!important;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{display:flex!important;flex-direction:column!important;}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card > a{display:flex!important;flex-direction:column!important;height:100%!important;}
.mx-new-card .mx-new-img{flex:0 0 auto!important;}
.mx-new-card .hotProduct-con{margin-top:auto!important;}


/* equal-height NEW ARRIVALS cards */
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{height:auto!important;}
.mx-new-card .mx-new-img{height:210px!important;aspect-ratio:auto!important;}
.mx-new-card .hotProduct-con{min-height:56px!important;}
@media(max-width:900px){.mx-new-card .mx-new-img{height:170px!important;}}


/* fixed-height NEW ARRIVALS cards so every card lines up */
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{height:322px!important;overflow:hidden!important;}
.mx-new-card .mx-new-img{height:206px!important;}
.mx-new-card .hotProduct-con{height:78px!important;overflow:hidden!important;}
.mx-new-card .hotProduct-p{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
@media(max-width:900px){
  .container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{height:268px!important;}
  .mx-new-card .mx-new-img{height:164px!important;}
  .mx-new-card .hotProduct-con{height:70px!important;}
}


/* ===== shop category filter chips ===== */
.mx-shop-filter{display:flex!important;flex-wrap:wrap;gap:10px;margin:0 0 28px!important;}
.mx-shop-filter .mx-chip{display:inline-block;padding:11px 22px;border-radius:40px;border:1px solid #e6e6e8;
  background:#fff;color:#3a3a3c!important;font-size:13px!important;font-weight:700!important;
  text-decoration:none!important;transition:all .18s ease;}
.mx-shop-filter .mx-chip:hover{border-color:#ff8714;color:#ff8714!important;}
.mx-shop-filter .mx-chip.is-active{background:#ff8714!important;border-color:#ff8714!important;color:#fff!important;
  box-shadow:0 8px 20px rgba(255,135,20,.24);}
@media(max-width:900px){.mx-shop-filter .mx-chip{padding:9px 16px;font-size:12px!important;}}


/* ===== NEW ARRIVALS: tighten spacing, more cards visible, no empty bands ===== */
.container-fluid .hotProduct{
  height:auto!important;min-height:0!important;
  padding:48px 0 34px!important;
}
.container-fluid .hotProduct .hotProduct-tit{margin-bottom:26px!important;}
.container-fluid .hotProduct .hotProduct-swiper{
  padding:0!important;
  overflow-x:auto!important;overflow-y:hidden!important;
}
.container-fluid .hotProduct .hotProduct-swiper .swiper-wrapper{
  gap:16px!important;
  padding:6px clamp(16px,4vw,56px) 18px!important;
  align-items:flex-start!important;
}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{
  width:250px!important;height:300px!important;
  transform:none!important;flex:0 0 auto!important;
}
.mx-new-card .mx-new-img{height:190px!important;}
.mx-new-card .hotProduct-con{height:74px!important;}
.mx-new-card .hotProduct-name{font-size:14px!important;}
.mx-new-card .hotProduct-p{font-size:12px!important;}
@media(max-width:900px){
  .container-fluid .hotProduct{padding:32px 0 24px!important;}
  .container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card{width:64vw!important;height:280px!important;}
  .mx-new-card .mx-new-img{height:170px!important;}
}


/* every NEW ARRIVALS card shows its name + specs, and the photo is never cropped */
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card .mx-new-img img{
  width:100%!important;height:100%!important;object-fit:contain!important;padding:10px!important;
  box-sizing:border-box!important;border-radius:0!important;
}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card .hotProduct-con{
  transform:none!important;
}
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card .hotProduct-name,
.container-fluid .hotProduct .hotProduct-swiper .swiper-slide.mx-new-card .hotProduct-p{
  opacity:1!important;transform:none!important;visibility:visible!important;
}
