/* =========================================================
   BELBET LUXURY WOOCOMMERCE
   Scoped UI system for shop, product pages, menu and forms
========================================================= */

body.belbet-luxury-ui{
  --blw-radius:16px;
  --blw-radius-sm:11px;
  --blw-shadow:0 24px 60px rgba(20,20,20,.075);
  --blw-serif:Georgia,"Times New Roman",serif;
  --blw-sans:Arial,Helvetica,sans-serif;
  background:var(--blw-surface,#fff);
  color:var(--blw-ink,#111);
}

body.belbet-luxury-type{
  font-family:var(--blw-sans);
}
body.belbet-luxury-type h1,
body.belbet-luxury-type h2,
body.belbet-luxury-type h3,
body.belbet-luxury-type h4,
body.belbet-luxury-type h5,
body.belbet-luxury-type .woocommerce-loop-product__title,
body.belbet-luxury-type .product_title,
body.belbet-luxury-type .elementor-heading-title{
  font-family:var(--blw-serif)!important;
  font-weight:400;
  letter-spacing:-.035em;
}
body.belbet-luxury-type p,
body.belbet-luxury-type li,
body.belbet-luxury-type input,
body.belbet-luxury-type select,
body.belbet-luxury-type textarea,
body.belbet-luxury-type button{
  font-family:var(--blw-sans);
}

/* MENU / HEADER ------------------------------------------------ */
body.belbet-luxury-menu .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item,
body.belbet-luxury-menu .e-n-menu .e-n-menu-title-text,
body.belbet-luxury-menu .wp-block-navigation-item__content{
  font-family:var(--blw-sans)!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  color:var(--blw-ink)!important;
  transition:color .25s ease, opacity .25s ease!important;
}
body.belbet-luxury-menu .elementor-nav-menu--main .elementor-item:after{
  height:1px!important;
  background:var(--blw-accent)!important;
}
body.belbet-luxury-menu .elementor-nav-menu--dropdown,
body.belbet-luxury-menu .e-n-menu-content{
  border:1px solid var(--blw-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:var(--blw-shadow)!important;
  overflow:hidden;
}
body.belbet-luxury-menu .elementor-nav-menu--dropdown a,
body.belbet-luxury-menu .e-n-menu-content a{
  background:#fff!important;
  color:var(--blw-ink)!important;
}
body.belbet-luxury-menu .elementor-nav-menu--dropdown a:hover,
body.belbet-luxury-menu .e-n-menu-content a:hover{
  background:var(--blw-accent-soft)!important;
}
body.belbet-luxury-menu .elementor-menu-toggle{
  border:1px solid var(--blw-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:var(--blw-ink)!important;
}

/* CORE WOOCOMMERCE WIDTH -------------------------------------- */
body.woocommerce .site-main,
body.woocommerce-page .site-main,
body.woocommerce main,
body.woocommerce-page main{
  color:var(--blw-ink);
}
body.woocommerce .woocommerce-breadcrumb{
  margin:0 0 28px!important;
  color:#999!important;
  font:600 8px/1.4 var(--blw-sans)!important;
  letter-spacing:.14em!important;
  text-transform:uppercase;
}
body.woocommerce .woocommerce-breadcrumb a{color:#666!important;text-decoration:none!important;}
body.woocommerce .woocommerce-breadcrumb a:hover{color:var(--blw-accent)!important;}

/* SHOP INTRO --------------------------------------------------- */
.blw-shop-intro{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  align-items:end;
  gap:clamp(35px,6vw,90px);
  margin:0 0 clamp(45px,6vw,85px);
  padding:clamp(35px,5vw,70px) 0 clamp(35px,5vw,65px);
  border-bottom:1px solid var(--blw-border);
}
.blw-kicker{
  display:inline-block;
  margin-bottom:16px;
  font:600 8px/1 var(--blw-sans);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--blw-accent);
}
.blw-shop-intro h1{
  max-width:850px;
  margin:0;
  font:400 clamp(50px,6vw,90px)/.94 var(--blw-serif)!important;
  letter-spacing:-.055em;
  color:var(--blw-ink);
}
.blw-shop-intro h1 em{display:block;color:#979797;font-weight:400;}
.blw-shop-intro p{max-width:670px;margin:24px 0 0;color:var(--blw-muted);font:400 14px/1.8 var(--blw-sans);}
.blw-shop-intro__meta{display:grid;gap:0;border-top:1px solid var(--blw-border);}
.blw-shop-intro__meta span{display:flex;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--blw-border);font:600 9px/1.4 var(--blw-sans);letter-spacing:.12em;text-transform:uppercase;color:#777;}
.blw-shop-intro__meta b{font-weight:400;color:var(--blw-accent);}

/* SHOP TOOLBAR ------------------------------------------------- */
body.post-type-archive-product .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count{
  font:600 8px/40px var(--blw-sans)!important;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#999;
}
body.post-type-archive-product .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select{
  min-height:44px;
  border:1px solid var(--blw-border)!important;
  border-radius:999px!important;
  padding:0 38px 0 16px!important;
  background-color:#fff!important;
  color:#555!important;
  font:600 9px var(--blw-sans)!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  outline:none!important;
}

/* PRODUCT GRID ------------------------------------------------- */
body.woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin:0!important;
}
body.woocommerce ul.products::before,
body.woocommerce ul.products::after{display:none!important;}
body.woocommerce ul.products li.product{
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:0 0 28px!important;
  overflow:hidden;
  border:1px solid var(--blw-border)!important;
  border-radius:var(--blw-radius)!important;
  background:#fff!important;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .35s ease!important;
}
body.woocommerce ul.products li.product:hover{
  transform:translateY(-6px);
  border-color:var(--blw-accent-line)!important;
  box-shadow:var(--blw-shadow);
}
body.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:block;
  color:inherit!important;
  text-decoration:none!important;
}
body.woocommerce ul.products li.product a img{
  width:100%!important;
  aspect-ratio:1/1.05;
  object-fit:cover;
  margin:0 0 24px!important;
  background:var(--blw-surface-alt);
  transition:transform .8s cubic-bezier(.2,.8,.2,1)!important;
}
body.woocommerce ul.products li.product:hover a img{transform:scale(1.025);}
body.woocommerce ul.products li.product .woocommerce-loop-product__title{
  padding:0 26px!important;
  margin:0 0 9px!important;
  font:400 clamp(25px,2.8vw,40px)/1.03 var(--blw-serif)!important;
  color:var(--blw-ink)!important;
}
body.woocommerce ul.products li.product .price{
  padding:0 26px!important;
  margin:0!important;
  color:var(--blw-ink)!important;
  font:400 22px/1.2 var(--blw-serif)!important;
}
body.woocommerce ul.products li.product .price del{color:#aaa!important;font-size:14px!important;opacity:1!important;}
body.woocommerce ul.products li.product .price ins{color:var(--blw-ink)!important;text-decoration:none!important;font-weight:400!important;}
body.woocommerce ul.products li.product .onsale{
  top:18px!important;left:18px!important;right:auto!important;
  min-width:0!important;min-height:0!important;line-height:1!important;
  margin:0!important;padding:9px 12px!important;
  border:1px solid var(--blw-accent-line)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--blw-accent)!important;
  font:600 8px/1 var(--blw-sans)!important;
  letter-spacing:.14em;text-transform:uppercase;
}
body.woocommerce ul.products li.product .button{
  margin:22px 26px 0!important;
  min-height:52px;
  display:flex!important;align-items:center;justify-content:space-between;gap:14px;
  padding:7px 8px 7px 20px!important;
  border:1px solid var(--blw-accent-line)!important;
  border-radius:999px!important;
  background:var(--blw-accent-soft)!important;
  color:var(--blw-ink)!important;
  font:600 9px/1 var(--blw-sans)!important;
  letter-spacing:.12em;text-transform:uppercase;
  box-shadow:none!important;
}

/* BUTTON ICON -------------------------------------------------- */
.blw-inline-arrow{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:50%;background:#111;}
.blw-inline-arrow svg{width:15px;fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.woocommerce a.button:hover .blw-inline-arrow svg,
.woocommerce button.button:hover .blw-inline-arrow svg{transform:translateX(2px);}

/* SINGLE PRODUCT ---------------------------------------------- */
body.single-product div.product{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
  column-gap:clamp(45px,7vw,95px);
  row-gap:50px;
  align-items:start;
}
body.single-product div.product > .woocommerce-product-gallery{grid-column:1;position:relative!important;margin:0!important;width:auto!important;float:none!important;}
body.single-product div.product > .summary{grid-column:2;margin:0!important;width:auto!important;float:none!important;position:sticky;top:110px;}
body.single-product div.product > .woocommerce-tabs,
body.single-product div.product > .related,
body.single-product div.product > .upsells,
body.single-product div.product > .blw-assurance{grid-column:1/-1;width:100%;}
body.single-product .woocommerce-product-gallery__wrapper{overflow:hidden;border-radius:var(--blw-radius);background:var(--blw-surface-alt);}
body.single-product .woocommerce-product-gallery__image img{width:100%!important;border-radius:var(--blw-radius);}
body.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px!important;}
body.single-product .flex-control-thumbs li{width:auto!important;float:none!important;}
body.single-product .flex-control-thumbs img{border:1px solid var(--blw-border);border-radius:9px;opacity:.7!important;transition:opacity .2s,border-color .2s;}
body.single-product .flex-control-thumbs img.flex-active,
body.single-product .flex-control-thumbs img:hover{opacity:1!important;border-color:var(--blw-accent)!important;}
.blw-product-gallery-badge{position:absolute;z-index:8;top:18px;left:18px;padding:9px 12px;border:1px solid var(--blw-accent-line);border-radius:999px;background:rgba(255,255,255,.93);color:var(--blw-accent);font:600 8px/1 var(--blw-sans);letter-spacing:.14em;text-transform:uppercase;pointer-events:none;}

body.single-product .summary .product_title{
  margin:0 0 18px!important;
  font:400 clamp(48px,5vw,78px)/.94 var(--blw-serif)!important;
  letter-spacing:-.055em!important;
  color:var(--blw-ink)!important;
}
body.single-product .summary .price{
  margin:0 0 25px!important;
  color:var(--blw-ink)!important;
  font:400 clamp(27px,3vw,38px)/1 var(--blw-serif)!important;
}
body.single-product .summary .price del{font-size:16px;color:#aaa!important;opacity:1!important;}
body.single-product .summary .price ins{font-weight:400!important;text-decoration:none!important;}
body.single-product .woocommerce-product-details__short-description{padding:0 0 27px;margin:0 0 26px;border-bottom:1px solid var(--blw-border);color:var(--blw-muted);font:400 14px/1.8 var(--blw-sans);}
body.single-product .summary form.cart{display:flex;gap:10px;align-items:stretch;margin:0 0 25px!important;}
body.single-product .quantity .qty{height:58px!important;width:76px!important;border:1px solid var(--blw-border)!important;border-radius:999px!important;background:#fff!important;color:#111!important;font:600 12px var(--blw-sans)!important;}
body.single-product .single_add_to_cart_button{
  min-height:58px!important;flex:1;
  display:flex!important;align-items:center;justify-content:space-between;gap:15px;
  padding:8px 9px 8px 23px!important;
  border:1px solid #111!important;border-radius:999px!important;
  background:#111!important;color:#fff!important;
  font:600 9px/1 var(--blw-sans)!important;letter-spacing:.12em;text-transform:uppercase;
}
body.single-product .product_meta{padding-top:22px;border-top:1px solid var(--blw-border);font:600 8px/1.8 var(--blw-sans)!important;letter-spacing:.11em;text-transform:uppercase;color:#aaa!important;}
body.single-product .product_meta a{color:#555!important;text-decoration:none!important;}

.blw-product-benefits{display:grid;grid-template-columns:1fr;gap:9px;margin:0 0 25px;padding:18px;border:1px solid var(--blw-border);border-radius:12px;background:var(--blw-surface-alt);}
.blw-product-benefits span{display:flex;align-items:center;gap:10px;color:#666;font:600 9px/1.4 var(--blw-sans);letter-spacing:.08em;text-transform:uppercase;}
.blw-product-benefits i{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--blw-accent-line);border-radius:50%;background:#fff;color:var(--blw-accent);font-style:normal;}

/* TABS --------------------------------------------------------- */
body.single-product .woocommerce-tabs{margin-top:25px!important;padding-top:55px;border-top:1px solid var(--blw-border);}
body.single-product .woocommerce-tabs ul.tabs{display:flex!important;gap:9px;flex-wrap:wrap;padding:0!important;margin:0 0 28px!important;border:0!important;}
body.single-product .woocommerce-tabs ul.tabs::before{display:none!important;}
body.single-product .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:1px solid var(--blw-border)!important;border-radius:999px!important;background:#fff!important;}
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after{display:none!important;}
body.single-product .woocommerce-tabs ul.tabs li a{padding:12px 17px!important;color:#777!important;font:600 8px/1 var(--blw-sans)!important;letter-spacing:.12em;text-transform:uppercase;}
body.single-product .woocommerce-tabs ul.tabs li.active{border-color:var(--blw-accent-line)!important;background:var(--blw-accent-soft)!important;}
body.single-product .woocommerce-tabs .panel{margin:0!important;padding:clamp(25px,4vw,45px)!important;border:1px solid var(--blw-border);border-radius:var(--blw-radius);background:#fff;}
body.single-product .woocommerce-tabs .panel h2{font:400 clamp(30px,3.5vw,48px)/1 var(--blw-serif)!important;color:var(--blw-ink);}
body.single-product .woocommerce-tabs .panel p{color:var(--blw-muted);font:400 14px/1.8 var(--blw-sans);}

/* REVIEWS ------------------------------------------------------ */
body.single-product #reviews #comments ol.commentlist{padding:0!important;}
body.single-product #reviews #comments ol.commentlist li{padding:20px 0!important;border-bottom:1px solid var(--blw-border);}
body.single-product #review_form_wrapper{margin-top:35px;padding-top:30px;border-top:1px solid var(--blw-border);}
body.single-product #review_form input[type="text"],
body.single-product #review_form input[type="email"],
body.single-product #review_form textarea{
  width:100%;border:1px solid var(--blw-border)!important;border-radius:10px!important;background:#fff!important;padding:13px 14px!important;outline:none!important;
}
body.single-product #review_form input:focus,
body.single-product #review_form textarea:focus{border-color:var(--blw-accent)!important;box-shadow:0 0 0 3px var(--blw-accent-soft)!important;}

/* ASSURANCE ---------------------------------------------------- */
.blw-assurance{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:clamp(28px,4vw,45px);border:1px solid var(--blw-accent-line);border-radius:var(--blw-radius);background:linear-gradient(110deg,#fff,var(--blw-accent-soft),#fff);}
.blw-assurance h2{max-width:800px;margin:0;font:400 clamp(30px,3.8vw,52px)/1 var(--blw-serif);letter-spacing:-.04em;color:var(--blw-ink);}
.blw-assurance h2 em{display:block;color:#999;font-weight:400;}
.blw-pill-link{min-width:180px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 10px 9px 20px;border-radius:999px;background:#111;color:#fff!important;text-decoration:none!important;font:600 9px/1 var(--blw-sans);letter-spacing:.12em;text-transform:uppercase;}
.blw-pill-link i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#111;font-style:normal;}

/* RELATED PRODUCTS -------------------------------------------- */
body.single-product .related.products > h2,
body.single-product .upsells.products > h2{margin:0 0 35px!important;font:400 clamp(38px,5vw,68px)/.95 var(--blw-serif)!important;letter-spacing:-.05em;color:var(--blw-ink);}

/* NOTICES / CART MINI UI -------------------------------------- */
body.belbet-luxury-ui .woocommerce-message,
body.belbet-luxury-ui .woocommerce-info,
body.belbet-luxury-ui .woocommerce-error{
  border:1px solid var(--blw-border)!important;border-top:1px solid var(--blw-border)!important;border-radius:12px!important;background:#fff!important;color:#444!important;box-shadow:0 12px 35px rgba(0,0,0,.05);font:400 12px/1.6 var(--blw-sans)!important;
}
body.belbet-luxury-ui .woocommerce-message::before,
body.belbet-luxury-ui .woocommerce-info::before{color:var(--blw-accent)!important;}
body.belbet-luxury-ui .woocommerce a.remove{color:#777!important;border:1px solid var(--blw-border);background:#fff!important;}
body.belbet-luxury-ui .woocommerce a.remove:hover{color:#111!important;border-color:var(--blw-accent-line);}

/* FORMS / ACCOUNT / CART -------------------------------------- */
body.belbet-luxury-ui .woocommerce input.input-text,
body.belbet-luxury-ui .woocommerce textarea,
body.belbet-luxury-ui .woocommerce select{
  border:1px solid var(--blw-border)!important;border-radius:10px!important;background:#fff!important;color:#222!important;padding:12px 14px!important;outline:none!important;
}
body.belbet-luxury-ui .woocommerce input.input-text:focus,
body.belbet-luxury-ui .woocommerce textarea:focus,
body.belbet-luxury-ui .woocommerce select:focus{border-color:var(--blw-accent)!important;box-shadow:0 0 0 3px var(--blw-accent-soft)!important;}
body.belbet-luxury-ui .woocommerce table.shop_table{border:1px solid var(--blw-border)!important;border-radius:12px!important;overflow:hidden;background:#fff;}
body.belbet-luxury-ui .woocommerce table.shop_table th{font:600 8px var(--blw-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:#888;}

/* MOBILE STICKY CART ------------------------------------------ */
.blw-mobile-cartbar{display:none;}

/* REVEAL ------------------------------------------------------- */
body.belbet-luxury-motion .blw-reveal{opacity:0;transform:translateY(16px);transition:opacity .65s cubic-bezier(.2,.8,.2,1),transform .65s cubic-bezier(.2,.8,.2,1);}
body.belbet-luxury-motion .blw-reveal.blw-reveal--in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){body.belbet-luxury-motion .blw-reveal{opacity:1!important;transform:none!important;transition:none!important;}}

/* TABLET ------------------------------------------------------- */
@media(max-width:1024px){
  .blw-shop-intro{grid-template-columns:1fr;}
  body.single-product div.product{grid-template-columns:1fr 1fr;column-gap:35px;}
  body.single-product div.product > .summary{position:static;}
}

/* MOBILE ------------------------------------------------------- */
@media(max-width:767px){
  .blw-shop-intro h1{font-size:clamp(44px,13vw,62px)!important;}
  body.woocommerce ul.products{grid-template-columns:1fr!important;gap:14px!important;}
  body.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:34px!important;}
  body.single-product div.product{display:block!important;}
  body.single-product div.product > .woocommerce-product-gallery,
  body.single-product div.product > .summary{width:100%!important;margin:0 0 42px!important;}
  body.single-product .summary .product_title{font-size:clamp(44px,13vw,62px)!important;}
  body.single-product .summary form.cart{flex-wrap:wrap;}
  body.single-product .quantity .qty{width:72px!important;}
  body.single-product .single_add_to_cart_button{min-width:calc(100% - 82px);}
  .blw-assurance{align-items:flex-start;flex-direction:column;}
  .blw-pill-link{width:100%;}
  .blw-mobile-cartbar{position:fixed;z-index:99999;left:10px;right:10px;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border:1px solid var(--blw-border);border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 18px 45px rgba(0,0,0,.14);}
  .blw-mobile-cartbar small{display:block;margin-bottom:3px;color:var(--blw-accent);font:600 7px var(--blw-sans);letter-spacing:.13em;text-transform:uppercase;}
  .blw-mobile-cartbar strong{display:block;max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111;font:400 14px var(--blw-serif);}
  .blw-mobile-cartbar button{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 15px;border:0;border-radius:999px;background:#111;color:#fff;font:600 8px var(--blw-sans);letter-spacing:.11em;text-transform:uppercase;}
  .blw-mobile-cartbar button span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#111;}
}

/* =========================================================
   V1.1 LAYOUT REPAIR + ELEMENTOR HEADER / POPUP MENU
   The live shop uses a legacy theme sidebar beside WooCommerce.
   This section removes that sidebar, restores a centered content
   canvas, and scopes menu styling so the popup can stay editorial.
========================================================= */

/* WooCommerce should own the full content canvas. */
body.woocommerce-page #secondary,
body.woocommerce-page #left-sidebar,
body.woocommerce-page #right-sidebar,
body.woocommerce-page .widget-area.secondary,
body.woocommerce-page .sidebar-container,
body.woocommerce-page .site-sidebar,
body.woocommerce-page aside.woocommerce-sidebar,
body.woocommerce-page .woocommerce-sidebar{
  display:none!important;
}

body.woocommerce-page #primary,
body.woocommerce-page .content-area,
body.woocommerce-page .site-content > .content-area,
body.woocommerce-page .site-main{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

body.post-type-archive-product .site-content,
body.tax-product_cat .site-content,
body.single-product .site-content{
  display:block!important;
}

body.post-type-archive-product main .woocommerce,
body.tax-product_cat main .woocommerce{
  width:min(1320px,calc(100% - 48px))!important;
  max-width:1320px!important;
  margin:0 auto!important;
  padding:clamp(48px,6vw,86px) 0 clamp(80px,8vw,120px)!important;
}

body.single-product main .woocommerce{
  width:min(1320px,calc(100% - 48px))!important;
  max-width:1320px!important;
  margin:0 auto!important;
  padding:clamp(48px,6vw,86px) 0 clamp(80px,8vw,120px)!important;
}

/* Keep the toolbar aligned to the product cards. */
body.post-type-archive-product .woocommerce-result-count,
body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering{
  margin-top:0!important;
  margin-bottom:26px!important;
}

body.post-type-archive-product .woocommerce-ordering,
body.tax-product_cat .woocommerce-ordering{
  float:right!important;
}

/* Product grid: still spacious, but no enormous full-viewport labels. */
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products{
  clear:both!important;
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  gap:22px!important;
}

body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product{
  min-width:0!important;
}

body.post-type-archive-product ul.products li.product a img,
body.tax-product_cat ul.products li.product a img{
  width:100%!important;
  height:auto!important;
  max-height:520px!important;
  aspect-ratio:1.08 / 1!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Slightly smaller titles on archive so two products read as products,
   not as full-width hero panels. */
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title{
  font-size:clamp(24px,2.25vw,34px)!important;
}

/* Prevent product card buttons from inheriting odd theme widths. */
body.post-type-archive-product ul.products li.product .button,
body.tax-product_cat ul.products li.product .button{
  width:calc(100% - 52px)!important;
  max-width:none!important;
}

/* ---------------------------------------------------------
   ELEMENTOR HEADER
   Only the actual header is styled here; popup nav is handled below.
--------------------------------------------------------- */
body.belbet-luxury-menu .elementor-location-header{
  position:relative;
  z-index:9990;
}

body.belbet-luxury-menu .elementor-location-header .elementor-menu-toggle{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid #111!important;
  border-radius:50%!important;
  background:#111!important;
  color:#fff!important;
  box-shadow:none!important;
}

body.belbet-luxury-menu .elementor-location-header .elementor-menu-toggle svg,
body.belbet-luxury-menu .elementor-location-header .elementor-menu-toggle i{
  color:#fff!important;
  fill:#fff!important;
}

/* If the header uses Elementor's Icon widget for the hamburger, make it
   match the same Belbet circular control. */
body.belbet-luxury-menu .elementor-location-header .elementor-widget-icon .elementor-icon{
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  padding:0!important;
  border:1px solid #111!important;
  border-radius:50%!important;
  background:#111!important;
  color:#fff!important;
  transition:transform .3s ease,box-shadow .3s ease!important;
}
body.belbet-luxury-menu .elementor-location-header .elementor-widget-icon .elementor-icon:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
}
body.belbet-luxury-menu .elementor-location-header .elementor-widget-icon .elementor-icon svg{
  fill:currentColor!important;
}

/* Header navigation, when a normal desktop nav exists. This intentionally
   does NOT target the popup nav. */
body.belbet-luxury-menu .elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item,
body.belbet-luxury-menu .elementor-location-header .e-n-menu .e-n-menu-title-text{
  font-family:var(--blw-sans)!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--blw-ink)!important;
}

/* ---------------------------------------------------------
   ELEMENTOR POPUP / FULL SCREEN MENU
--------------------------------------------------------- */
body.belbet-luxury-menu .elementor-location-popup,
body.belbet-luxury-menu .elementor-location-popup .elementor,
body.belbet-luxury-menu .dialog-widget-content:has(.elementor-location-popup){
  background:#f3f3f1!important;
  color:#111!important;
}

body.belbet-luxury-menu .dialog-widget-content:has(.elementor-location-popup){
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--main .elementor-item,
body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--dropdown .elementor-item,
body.belbet-luxury-menu .elementor-location-popup .e-n-menu-title-text{
  font-family:var(--blw-serif)!important;
  font-size:clamp(30px,3.1vw,52px)!important;
  font-weight:400!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  color:#171717!important;
  padding:12px 0!important;
  background:transparent!important;
}

body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--main .elementor-item:hover,
body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--dropdown .elementor-item:hover{
  color:var(--blw-accent)!important;
  background:transparent!important;
}

body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--main .elementor-item:after{
  height:1px!important;
  background:var(--blw-accent)!important;
}

body.belbet-luxury-menu .elementor-location-popup .elementor-widget-image img{
  border-radius:10px!important;
  object-fit:cover!important;
  box-shadow:0 18px 50px rgba(0,0,0,.06)!important;
}

body.belbet-luxury-menu .dialog-close-button,
body.belbet-luxury-menu .elementor-location-popup .dialog-close-button{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #d8d8d8!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111!important;
  transition:transform .3s ease,border-color .3s ease!important;
}
body.belbet-luxury-menu .dialog-close-button:hover{
  transform:rotate(6deg)!important;
  border-color:var(--blw-accent-line)!important;
}

/* Popup buttons and text links can inherit the new sans micro-label system
   without making the large navigation tiny. */
body.belbet-luxury-menu .elementor-location-popup .elementor-widget-button .elementor-button{
  border:1px solid var(--blw-border)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#111!important;
  font:600 9px/1 var(--blw-sans)!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  padding:14px 18px!important;
}

/* WooCommerce menu/account/cart links inside popup. */
body.belbet-luxury-menu .elementor-location-popup a[href*="my-account"],
body.belbet-luxury-menu .elementor-location-popup a[href*="cart"],
body.belbet-luxury-menu .elementor-location-popup a[href*="checkout"]{
  color:#111!important;
}

/* ---------------------------------------------------------
   Responsive archive layout
--------------------------------------------------------- */
@media(max-width:1024px){
  body.post-type-archive-product main .woocommerce,
  body.tax-product_cat main .woocommerce,
  body.single-product main .woocommerce{
    width:min(100% - 32px,1180px)!important;
  }
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products{
    max-width:100%!important;
  }
}

@media(max-width:767px){
  body.post-type-archive-product main .woocommerce,
  body.tax-product_cat main .woocommerce,
  body.single-product main .woocommerce{
    width:calc(100% - 28px)!important;
    padding-top:38px!important;
  }
  body.post-type-archive-product .woocommerce-ordering,
  body.tax-product_cat .woocommerce-ordering{
    float:none!important;
    width:100%!important;
  }
  body.post-type-archive-product .woocommerce-ordering select,
  body.tax-product_cat .woocommerce-ordering select{
    width:100%!important;
  }
  body.post-type-archive-product ul.products li.product a img,
  body.tax-product_cat ul.products li.product a img{
    max-height:none!important;
    aspect-ratio:1/1!important;
  }
  body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--main .elementor-item,
  body.belbet-luxury-menu .elementor-location-popup .elementor-nav-menu--dropdown .elementor-item,
  body.belbet-luxury-menu .elementor-location-popup .e-n-menu-title-text{
    font-size:clamp(28px,9vw,42px)!important;
  }
}

/* =========================================================
   BELBET HEADER + POPUP MENU V1.2
   DOM-tagged by belbet-luxury.js so this works even when the
   Elementor template is not inside .elementor-location-header.
========================================================= */
body.belbet-luxury-menu .bskNav2026-header{
  --bsknav-pink:#f6dfe6;
  --bsknav-pink-soft:#fff8fa;
  --bsknav-pink-line:#efd7df;
  --bsknav-pink-text:#c28e9d;
  position:relative!important;
  z-index:9990!important;
  width:100%!important;
  background:#fff!important;
  border-bottom:1px solid #ededed!important;
  box-shadow:0 8px 30px rgba(0,0,0,.025)!important;
  padding-top:14px!important;
  padding-bottom:14px!important;
}

body.belbet-luxury-menu .bskNav2026-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{
  width:clamp(145px,14vw,190px)!important;
  max-width:190px!important;
  height:auto!important;
}

/* Social links in the actual header row */
body.belbet-luxury-menu .bskNav2026-header a[href*="facebook.com/belbetskincare"],
body.belbet-luxury-menu .bskNav2026-header a[href*="instagram.com/belbet_skincare"],
body.belbet-luxury-menu .bskNav2026-header a[href*="tiktok.com/@belbet_skincare"],
body.belbet-luxury-menu .bskNav2026-header a[href*="google.com/maps"]{
  width:34px!important;
  height:34px!important;
  display:inline-grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid var(--bsknav-pink-line)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--bsknav-pink-text)!important;
  transition:transform .25s ease,background .25s ease,color .25s ease!important;
}
body.belbet-luxury-menu .bskNav2026-header a[href*="facebook.com/belbetskincare"]:hover,
body.belbet-luxury-menu .bskNav2026-header a[href*="instagram.com/belbet_skincare"]:hover,
body.belbet-luxury-menu .bskNav2026-header a[href*="tiktok.com/@belbet_skincare"]:hover,
body.belbet-luxury-menu .bskNav2026-header a[href*="google.com/maps"]:hover{
  transform:translateY(-2px)!important;
  background:var(--bsknav-pink-soft)!important;
  color:#111!important;
}

/* The menu trigger is tagged by JS so social icon widgets are not mistaken
   for the hamburger. */
body.belbet-luxury-menu .bskNav2026-trigger{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid #111!important;
  border-radius:50%!important;
  background:#111!important;
  color:#fff!important;
  box-shadow:none!important;
  transition:transform .25s ease,box-shadow .25s ease!important;
}
body.belbet-luxury-menu .bskNav2026-trigger:hover{
  transform:translateY(-2px) rotate(2deg)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
}
body.belbet-luxury-menu .bskNav2026-trigger svg,
body.belbet-luxury-menu .bskNav2026-trigger i{
  width:20px!important;
  height:20px!important;
  color:#fff!important;
  fill:#fff!important;
}

/* Popup / off-canvas dialog, dynamically tagged by JS */
body.belbet-luxury-menu .bskNav2026-panel{
  --bsknav-pink:#f6dfe6;
  --bsknav-pink-soft:#fff8fa;
  --bsknav-pink-line:#efd7df;
  --bsknav-pink-text:#bf8798;
  background:#f8f8f6!important;
  color:#111!important;
}
body.belbet-luxury-menu .bskNav2026-panel .dialog-widget-content,
body.belbet-luxury-menu .bskNav2026-panel .elementor,
body.belbet-luxury-menu .bskNav2026-panel .elementor-section,
body.belbet-luxury-menu .bskNav2026-panel .e-con,
body.belbet-luxury-menu .bskNav2026-panel .elementor-widget-wrap{
  background-color:transparent!important;
}
body.belbet-luxury-menu .bskNav2026-panel .dialog-widget-content{
  border:0!important;
  box-shadow:-30px 0 70px rgba(0,0,0,.10)!important;
}

/* Branded strip injected at the top of the popup */
body.belbet-luxury-menu .bskNav2026-menuBrand{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:30px 28px 22px!important;
  margin:0 0 12px!important;
  border-bottom:1px solid #e6e6e6!important;
  background:#fff!important;
}
body.belbet-luxury-menu .bskNav2026-menuBrand img{
  width:145px!important;
  max-width:145px!important;
  height:auto!important;
}
body.belbet-luxury-menu .bskNav2026-menuBrand span{
  font:600 7px/1.3 var(--blw-sans)!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
  color:var(--bsknav-pink-text)!important;
  text-align:right!important;
}

/* Popup menu links. Elementor can render either standard nav-menu or nested
   menu widgets, so target both only inside the JS-tagged panel. */
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu a.elementor-item,
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu--dropdown a,
body.belbet-luxury-menu .bskNav2026-panel .e-n-menu a,
body.belbet-luxury-menu .bskNav2026-panel .menu a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:58px!important;
  padding:12px 28px!important;
  margin:0!important;
  border-bottom:1px solid #e9e9e9!important;
  background:transparent!important;
  color:#171717!important;
  font-family:var(--blw-serif)!important;
  font-size:clamp(24px,2.2vw,34px)!important;
  font-weight:400!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  transition:padding .25s ease,color .25s ease,background .25s ease!important;
}
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu a.elementor-item:hover,
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu--dropdown a:hover,
body.belbet-luxury-menu .bskNav2026-panel .e-n-menu a:hover,
body.belbet-luxury-menu .bskNav2026-panel .menu a:hover{
  padding-left:36px!important;
  background:var(--bsknav-pink-soft)!important;
  color:#111!important;
}
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu a.elementor-item::after,
body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu--dropdown a::after{
  content:'↗'!important;
  position:static!important;
  width:32px!important;
  height:32px!important;
  display:grid!important;
  place-items:center!important;
  margin-left:14px!important;
  border:1px solid var(--bsknav-pink-line)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111!important;
  font:400 12px/1 var(--blw-sans)!important;
  opacity:1!important;
  transform:none!important;
}

/* Close control */
body.belbet-luxury-menu .bskNav2026-panel .dialog-close-button,
body.belbet-luxury-menu .bskNav2026-panel [aria-label*="Close" i]{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  top:18px!important;
  right:18px!important;
  border:1px solid #dcdcdc!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 8px 20px rgba(0,0,0,.06)!important;
}

/* CTA injected at bottom of popup */
body.belbet-luxury-menu .bskNav2026-menuCta{
  margin:22px 28px 30px!important;
  padding:22px!important;
  border:1px solid var(--bsknav-pink-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
body.belbet-luxury-menu .bskNav2026-menuCta small{
  display:block!important;
  margin-bottom:7px!important;
  font:600 7px/1 var(--blw-sans)!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:var(--bsknav-pink-text)!important;
}
body.belbet-luxury-menu .bskNav2026-menuCta strong{
  display:block!important;
  margin-bottom:15px!important;
  font:400 22px/1.08 var(--blw-serif)!important;
  color:#111!important;
}
body.belbet-luxury-menu .bskNav2026-menuCta a{
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:8px 9px 8px 18px!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  font:600 8px/1 var(--blw-sans)!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
body.belbet-luxury-menu .bskNav2026-menuCta a span{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111!important;
}

@media(max-width:767px){
  body.belbet-luxury-menu .bskNav2026-header{
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body.belbet-luxury-menu .bskNav2026-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{
    width:135px!important;
  }
  body.belbet-luxury-menu .bskNav2026-trigger{
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  }
  body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu a.elementor-item,
  body.belbet-luxury-menu .bskNav2026-panel .elementor-nav-menu--dropdown a,
  body.belbet-luxury-menu .bskNav2026-panel .e-n-menu a,
  body.belbet-luxury-menu .bskNav2026-panel .menu a{
    font-size:28px!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  body.belbet-luxury-menu .bskNav2026-menuBrand{padding-left:22px!important;padding-right:22px!important;}
  body.belbet-luxury-menu .bskNav2026-menuCta{margin-left:22px!important;margin-right:22px!important;}
}

/* =========================================================
   BELBET POPUP MENU V1.3 — ROBUST OFF-CANVAS TARGETING
   Thin blush frame + editorial panel, never a large pink fill.
========================================================= */
body.belbet-luxury-menu .bskMenuR13-panel,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]),
body.belbet-luxury-menu .dialog-widget:has(a[href*="miami-skincare-appointments"]),
body.belbet-luxury-menu [role="dialog"]:has(a[href*="miami-skincare-appointments"]){
  --bskm13-pink:#e9b9c7;
  --bskm13-pink-soft:#fff7f9;
  --bskm13-line:#efcfd8;
  --bskm13-ink:#151515;
}

/* Actual off-canvas surface. The border is intentionally only on the edge
   facing the page so the panel feels framed rather than boxed in pink. */
body.belbet-luxury-menu .bskMenuR13-surface,
body.belbet-luxury-menu .bskMenuR13-panel > .dialog-widget-content,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) > .dialog-widget-content,
body.belbet-luxury-menu .dialog-widget:has(a[href*="miami-skincare-appointments"]) > .dialog-widget-content{
  position:relative!important;
  background:#fbfbfa!important;
  border:0!important;
  border-left:2px solid var(--bskm13-pink,#e9b9c7)!important;
  box-shadow:-26px 0 70px rgba(16,16,16,.11)!important;
  overflow:auto!important;
}

body.belbet-luxury-menu .bskMenuR13-surface::before,
body.belbet-luxury-menu .bskMenuR13-panel > .dialog-widget-content::before,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) > .dialog-widget-content::before{
  content:""!important;
  position:absolute!important;
  z-index:20!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:3px!important;
  background:linear-gradient(90deg,var(--bskm13-pink,#e9b9c7),#f6dfe6 55%,transparent)!important;
  pointer-events:none!important;
}

/* Make Elementor's existing menu itself look editorial even if the injected
   brand/CTA nodes are blocked by a popup template implementation. */
body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu a.elementor-item,
body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu--dropdown a,
body.belbet-luxury-menu .bskMenuR13-panel .e-n-menu a,
body.belbet-luxury-menu .bskMenuR13-panel .menu a,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .elementor-nav-menu a.elementor-item,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .elementor-nav-menu--dropdown a,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .e-n-menu a,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .menu a{
  min-height:62px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:13px 30px!important;
  margin:0!important;
  border-bottom:1px solid #e8e8e8!important;
  background:transparent!important;
  color:var(--bskm13-ink,#151515)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(23px,2vw,32px)!important;
  font-weight:400!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  transition:background .25s ease,padding .25s ease,color .25s ease!important;
}
body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu a.elementor-item:hover,
body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu--dropdown a:hover,
body.belbet-luxury-menu .bskMenuR13-panel .e-n-menu a:hover,
body.belbet-luxury-menu .bskMenuR13-panel .menu a:hover,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .elementor-nav-menu a.elementor-item:hover,
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .elementor-nav-menu--dropdown a:hover{
  padding-left:38px!important;
  background:var(--bskm13-pink-soft,#fff7f9)!important;
  color:#111!important;
}

/* Existing plain menu widgets sometimes use text widgets / icon lists rather
   than Elementor Nav Menu. Catch the direct menu anchors without touching CTA
   buttons or social links. */
body.belbet-luxury-menu .bskMenuR13-panel .bskMenuR13-navlink{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:58px!important;
  padding:11px 30px!important;
  border-bottom:1px solid #e8e8e8!important;
  background:transparent!important;
  color:#151515!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(22px,2vw,31px)!important;
  font-weight:400!important;
  letter-spacing:-.03em!important;
  text-transform:none!important;
  text-decoration:none!important;
}
body.belbet-luxury-menu .bskMenuR13-panel .bskMenuR13-navlink:hover{
  background:var(--bskm13-pink-soft,#fff7f9)!important;
  padding-left:38px!important;
}
body.belbet-luxury-menu .bskMenuR13-panel .bskMenuR13-navlink::after{
  content:"↗"!important;
  width:32px!important;
  height:32px!important;
  flex:0 0 32px!important;
  display:grid!important;
  place-items:center!important;
  margin-left:16px!important;
  border:1px solid var(--bskm13-line,#efcfd8)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111!important;
  font:400 12px/1 Arial,Helvetica,sans-serif!important;
}

body.belbet-luxury-menu .bskMenuR13-panel .dialog-close-button,
body.belbet-luxury-menu .bskMenuR13-panel [aria-label*="Close" i],
body.belbet-luxury-menu .elementor-popup-modal:has(a[href*="miami-skincare-appointments"]) .dialog-close-button{
  border:1px solid var(--bskm13-line,#efcfd8)!important;
  background:#fff!important;
  color:#111!important;
}

/* V1.3 injected header/CTA use a new namespace so old cached menu CSS cannot
   override the new components. */
body.belbet-luxury-menu .bskMenuR13-brand{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:30px 30px 22px!important;
  border-bottom:1px solid #e7e7e7!important;
  background:#fff!important;
}
body.belbet-luxury-menu .bskMenuR13-brand img{width:150px!important;height:auto!important;display:block!important;}
body.belbet-luxury-menu .bskMenuR13-brand span{
  font:600 7px/1.45 Arial,Helvetica,sans-serif!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
  text-align:right!important;
  color:#b77e90!important;
}
body.belbet-luxury-menu .bskMenuR13-cta{
  margin:24px 30px 32px!important;
  padding:22px!important;
  border:1px solid var(--bskm13-line,#efcfd8)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 15px 40px rgba(20,20,20,.045)!important;
}
body.belbet-luxury-menu .bskMenuR13-cta small{
  display:block!important;margin-bottom:7px!important;
  font:600 7px/1 Arial,Helvetica,sans-serif!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;color:#b77e90!important;
}
body.belbet-luxury-menu .bskMenuR13-cta strong{
  display:block!important;margin-bottom:15px!important;
  font:400 22px/1.08 Georgia,"Times New Roman",serif!important;color:#111!important;
}
body.belbet-luxury-menu .bskMenuR13-cta a{
  min-height:50px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  padding:8px 9px 8px 18px!important;border-radius:999px!important;background:#111!important;color:#fff!important;
  font:600 8px/1 Arial,Helvetica,sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase!important;text-decoration:none!important;
}
body.belbet-luxury-menu .bskMenuR13-cta a span{
  width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:50%!important;
  background:#fff!important;color:#111!important;
}

@media(max-width:767px){
  body.belbet-luxury-menu .bskMenuR13-brand{padding:25px 22px 18px!important;}
  body.belbet-luxury-menu .bskMenuR13-brand img{width:135px!important;}
  body.belbet-luxury-menu .bskMenuR13-cta{margin:20px 22px 28px!important;}
  body.belbet-luxury-menu .bskMenuR13-panel .bskMenuR13-navlink,
  body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu a.elementor-item,
  body.belbet-luxury-menu .bskMenuR13-panel .elementor-nav-menu--dropdown a{padding-left:22px!important;padding-right:22px!important;font-size:27px!important;}
}

/* =========================================================
   V1.4 MENU SAFETY FIX
   Elementor keeps ownership of all click/open behavior.
========================================================= */
body.belbet-luxury-menu .bskR14-header{
  background:#fff!important;
  border-bottom:1px solid #ececec!important;
  box-shadow:0 8px 26px rgba(0,0,0,.025)!important;
}
body.belbet-luxury-menu .bskR14-menu-trigger{
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;border:1px solid #edcbd5!important;border-radius:999px!important;
  background:#fff!important;color:#111!important;cursor:pointer!important;pointer-events:auto!important;
  position:relative!important;z-index:5!important;transition:background .25s ease,transform .25s ease,border-color .25s ease!important;
}
body.belbet-luxury-menu .bskR14-menu-trigger:hover{background:#fff7f9!important;border-color:#dba9b7!important;transform:translateY(-2px)!important;}
body.belbet-luxury-menu .bskR14-menu-trigger svg,
body.belbet-luxury-menu .bskR14-menu-trigger i{color:#111!important;fill:#111!important;stroke:#111!important;pointer-events:none!important;}

/* Popup: style only. No injected markup, no rewritten links, no JS click logic. */
body.belbet-luxury-menu .bskR14-popup{--r14-pink:#e7b3c1;--r14-soft:#fff7f9;--r14-line:#efcfd8;--r14-ink:#151515;}
body.belbet-luxury-menu .bskR14-popup > .dialog-widget-content,
body.belbet-luxury-menu .bskR14-popup .dialog-widget-content{
  background:#fbfbfa!important;border:0!important;border-left:2px solid var(--r14-pink)!important;
  box-shadow:-28px 0 70px rgba(0,0,0,.11)!important;overflow:auto!important;
}
body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu a.elementor-item,
body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--dropdown a,
body.belbet-luxury-menu .bskR14-popup .menu a{
  min-height:58px!important;padding:12px 30px!important;border-bottom:1px solid #e9e9e9!important;
  background:transparent!important;color:var(--r14-ink)!important;font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(22px,2vw,31px)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.03em!important;text-transform:none!important;
}
body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu a.elementor-item:hover,
body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--dropdown a:hover,
body.belbet-luxury-menu .bskR14-popup .menu a:hover{background:var(--r14-soft)!important;color:#111!important;}
body.belbet-luxury-menu .bskR14-popup .dialog-close-button,
body.belbet-luxury-menu .bskR14-popup [aria-label*="Close" i]{border:1px solid var(--r14-line)!important;border-radius:50%!important;background:#fff!important;color:#111!important;}

/* =========================================================
   V1.5 RESPONSIVE HEADER + MENU LAYOUT
   Desktop stays one horizontal header row. Mobile popup gets
   its own compact single-column presentation.
========================================================= */

/* Keep the detected desktop/tablet header in one visual row. */
@media (min-width:768px){
  body.belbet-luxury-menu .bskR14-header,
  body.belbet-luxury-menu .bskR14-header > .e-con-inner,
  body.belbet-luxury-menu .bskR14-header > .elementor-container{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
  }
  body.belbet-luxury-menu .bskR14-header .elementor-element,
  body.belbet-luxury-menu .bskR14-header .e-con{
    min-width:0!important;
  }
  body.belbet-luxury-menu .bskR14-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{
    width:clamp(155px,16vw,245px)!important;
    max-width:245px!important;
    height:auto!important;
  }

  /* Desktop popup may use a multi-column Elementor template, but each menu
     list itself must remain a clean single vertical stack rather than 3 rows. */
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu,
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--main,
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--dropdown,
  body.belbet-luxury-menu .bskR14-popup .menu{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    width:100%!important;
  }
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu > li,
  body.belbet-luxury-menu .bskR14-popup .menu > li{
    display:block!important;
    width:100%!important;
    flex:0 0 100%!important;
  }
}

/* Mobile has its own visual system: full-width off-canvas, one-column nav,
   tighter logo/close area, and touch-friendly links. */
@media (max-width:767px){
  body.belbet-luxury-menu .bskR14-header,
  body.belbet-luxury-menu .bskR14-header > .e-con-inner,
  body.belbet-luxury-menu .bskR14-header > .elementor-container{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
  }
  body.belbet-luxury-menu .bskR14-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{
    width:132px!important;
    max-width:44vw!important;
    height:auto!important;
  }
  body.belbet-luxury-menu .bskR14-menu-trigger{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    flex:0 0 44px!important;
  }

  body.belbet-luxury-menu .bskR14-popup,
  body.belbet-luxury-menu .bskR14-popup > .dialog-widget-content,
  body.belbet-luxury-menu .bskR14-popup .dialog-widget-content{
    width:min(92vw,430px)!important;
    max-width:92vw!important;
    min-width:0!important;
    height:100dvh!important;
    max-height:100dvh!important;
  }
  body.belbet-luxury-menu .bskR14-popup > .dialog-widget-content,
  body.belbet-luxury-menu .bskR14-popup .dialog-widget-content{
    border-left:2px solid var(--r14-pink)!important;
    border-top:0!important;
    border-right:0!important;
    border-bottom:0!important;
    border-radius:0!important;
    background:#fbfbfa!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* Override any Elementor row/grid menu layout on mobile. */
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu,
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--main,
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--dropdown,
  body.belbet-luxury-menu .bskR14-popup .e-n-menu,
  body.belbet-luxury-menu .bskR14-popup .menu,
  body.belbet-luxury-menu .bskR14-popup ul{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:0!important;
    margin:0!important;
  }
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu > li,
  body.belbet-luxury-menu .bskR14-popup .e-n-menu > li,
  body.belbet-luxury-menu .bskR14-popup .menu > li,
  body.belbet-luxury-menu .bskR14-popup ul > li{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    flex:0 0 auto!important;
    margin:0!important;
  }
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu a.elementor-item,
  body.belbet-luxury-menu .bskR14-popup .elementor-nav-menu--dropdown a,
  body.belbet-luxury-menu .bskR14-popup .e-n-menu a,
  body.belbet-luxury-menu .bskR14-popup .menu a{
    width:100%!important;
    min-height:58px!important;
    padding:13px 22px!important;
    font-size:clamp(24px,8vw,32px)!important;
    line-height:1.05!important;
    white-space:normal!important;
  }
  body.belbet-luxury-menu .bskR14-popup .dialog-close-button,
  body.belbet-luxury-menu .bskR14-popup [aria-label*="Close" i]{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    top:16px!important;
    right:16px!important;
  }

  /* Mobile CTA/buttons should never form multiple columns. */
  body.belbet-luxury-menu .bskR14-popup .elementor-widget-button,
  body.belbet-luxury-menu .bskR14-popup .elementor-button-wrapper{
    width:100%!important;
  }
  body.belbet-luxury-menu .bskR14-popup .elementor-widget-button .elementor-button{
    width:calc(100% - 44px)!important;
    margin-left:22px!important;
    margin-right:22px!important;
    justify-content:center!important;
  }
}

/* =========================================================
   V1.9 SAFE WOOCOMMERCE ENDPOINT GEOMETRY REPAIR
   IMPORTANT: this patch does NOT style #page, body, header,
   Elementor popup wrappers, footer, or generic widget areas.
   It only repairs the legacy WooCommerce content columns.
========================================================= */

/* Legacy theme sidebars that push WooCommerce off-center. */
body.blw-wc-endpoint #secondary,
body.blw-wc-endpoint #left-sidebar,
body.blw-wc-endpoint #right-sidebar,
body.blw-wc-endpoint .site-sidebar,
body.blw-wc-endpoint .sidebar-container,
body.blw-wc-endpoint aside.woocommerce-sidebar,
body.blw-wc-endpoint .woocommerce-sidebar {
  display:none!important;
}

/* Give the actual content column the full available width. */
body.blw-wc-endpoint #primary,
body.blw-wc-endpoint .content-area,
body.blw-wc-endpoint .site-content > #primary,
body.blw-wc-endpoint .site-content > .content-area {
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Center only the WooCommerce application itself. */
body.blw-wc-endpoint #primary > .woocommerce,
body.blw-wc-endpoint .content-area > .woocommerce,
body.blw-wc-endpoint .site-main > .woocommerce,
body.blw-wc-endpoint main > .woocommerce {
  box-sizing:border-box!important;
  width:min(1320px,calc(100% - 48px))!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Do not re-center nested WooCommerce wrappers. */
body.blw-wc-endpoint .woocommerce .woocommerce {
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* SHOP / PRODUCT ARCHIVES ----------------------------------- */
body.blw-wc-endpoint.post-type-archive-product .woocommerce-result-count,
body.blw-wc-endpoint.tax-product_cat .woocommerce-result-count,
body.blw-wc-endpoint.tax-product_tag .woocommerce-result-count {
  float:left!important;
  width:auto!important;
  margin:8px 0 26px!important;
}

body.blw-wc-endpoint.post-type-archive-product .woocommerce-ordering,
body.blw-wc-endpoint.tax-product_cat .woocommerce-ordering,
body.blw-wc-endpoint.tax-product_tag .woocommerce-ordering {
  float:right!important;
  width:auto!important;
  margin:0 0 26px!important;
}

body.blw-wc-endpoint.post-type-archive-product ul.products,
body.blw-wc-endpoint.tax-product_cat ul.products,
body.blw-wc-endpoint.tax-product_tag ul.products {
  clear:both!important;
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* CART ------------------------------------------------------- */
body.blw-wc-endpoint.woocommerce-cart .woocommerce-cart-form,
body.blw-wc-endpoint.woocommerce-cart .cart-collaterals {
  float:none!important;
  width:100%!important;
  max-width:none!important;
}

body.blw-wc-endpoint.woocommerce-cart .cart-collaterals .cart_totals {
  float:none!important;
  width:min(520px,100%)!important;
  margin:36px 0 0 auto!important;
}

/* CHECKOUT --------------------------------------------------- */
body.blw-wc-endpoint.woocommerce-checkout form.checkout {
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr)!important;
  gap:clamp(30px,5vw,70px)!important;
  align-items:start!important;
}

body.blw-wc-endpoint.woocommerce-checkout #customer_details,
body.blw-wc-endpoint.woocommerce-checkout #order_review,
body.blw-wc-endpoint.woocommerce-checkout #order_review_heading {
  float:none!important;
  width:100%!important;
  max-width:none!important;
}

body.blw-wc-endpoint.woocommerce-checkout #order_review_heading,
body.blw-wc-endpoint.woocommerce-checkout #order_review {
  grid-column:2!important;
}

/* MY ACCOUNT / LOGIN ---------------------------------------- */
body.blw-wc-endpoint.woocommerce-account #customer_login {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(24px,4vw,52px)!important;
  width:100%!important;
  max-width:1060px!important;
  margin:0 auto!important;
}

body.blw-wc-endpoint.woocommerce-account #customer_login > .u-column1,
body.blw-wc-endpoint.woocommerce-account #customer_login > .u-column2 {
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

body.blw-wc-endpoint.woocommerce-account #customer_login > .u-column1:only-child {
  grid-column:1 / -1!important;
  width:min(620px,100%)!important;
  justify-self:center!important;
}

body.blw-wc-endpoint.woocommerce-account .woocommerce-form-login,
body.blw-wc-endpoint.woocommerce-account .woocommerce-form-register,
body.blw-wc-endpoint.woocommerce-account .woocommerce-ResetPassword {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:620px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Signed-in account pages: navigation + content, nothing global. */
body.blw-wc-endpoint.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
  float:left!important;
  width:240px!important;
  margin:0 42px 0 0!important;
}

body.blw-wc-endpoint.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  float:none!important;
  width:auto!important;
  min-width:0!important;
  overflow:hidden!important;
}

/* Tables/forms should stay inside the repaired WooCommerce canvas. */
body.blw-wc-endpoint .woocommerce table,
body.blw-wc-endpoint .woocommerce form,
body.blw-wc-endpoint .woocommerce .woocommerce-notices-wrapper,
body.blw-wc-endpoint .woocommerce .woocommerce-Addresses,
body.blw-wc-endpoint .woocommerce .woocommerce-address-fields,
body.blw-wc-endpoint .woocommerce .woocommerce-EditAccountForm {
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Explicit safety: never alter the geometry or background of the
   Elementor header, popup menu, or footer from this endpoint patch. */
body.blw-wc-endpoint .elementor-location-header,
body.blw-wc-endpoint .elementor-location-popup,
body.blw-wc-endpoint .elementor-location-footer,
body.blw-wc-endpoint [data-elementor-type="header"],
body.blw-wc-endpoint [data-elementor-type="popup"],
body.blw-wc-endpoint [data-elementor-type="footer"] {
  max-width:none;
}

@media(max-width:900px) {
  body.blw-wc-endpoint #primary > .woocommerce,
  body.blw-wc-endpoint .content-area > .woocommerce,
  body.blw-wc-endpoint .site-main > .woocommerce,
  body.blw-wc-endpoint main > .woocommerce {
    width:calc(100% - 32px)!important;
  }

  body.blw-wc-endpoint.woocommerce-checkout form.checkout {
    display:block!important;
  }

  body.blw-wc-endpoint.woocommerce-checkout #order_review_heading,
  body.blw-wc-endpoint.woocommerce-checkout #order_review {
    margin-top:30px!important;
  }

  body.blw-wc-endpoint.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
    float:none!important;
    width:100%!important;
    margin:0 0 28px!important;
  }

  body.blw-wc-endpoint.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    overflow:visible!important;
  }
}

@media(max-width:700px) {
  body.blw-wc-endpoint #primary > .woocommerce,
  body.blw-wc-endpoint .content-area > .woocommerce,
  body.blw-wc-endpoint .site-main > .woocommerce,
  body.blw-wc-endpoint main > .woocommerce {
    width:calc(100% - 28px)!important;
  }

  body.blw-wc-endpoint.woocommerce-account #customer_login {
    grid-template-columns:1fr!important;
  }

  body.blw-wc-endpoint.post-type-archive-product .woocommerce-result-count,
  body.blw-wc-endpoint.tax-product_cat .woocommerce-result-count,
  body.blw-wc-endpoint.tax-product_tag .woocommerce-result-count,
  body.blw-wc-endpoint.post-type-archive-product .woocommerce-ordering,
  body.blw-wc-endpoint.tax-product_cat .woocommerce-ordering,
  body.blw-wc-endpoint.tax-product_tag .woocommerce-ordering {
    float:none!important;
    width:100%!important;
  }
}
/* =========================================================
   V1.10 RESTORED MODERN BELBET HEADER + POPUP MENU
   Restored from the preferred v1.6 design.
========================================================= */
body.belbet-luxury-menu .bskM16-header{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:12px 16px!important;
  position:relative!important;
  z-index:9990!important;
}
body.belbet-luxury-menu .bskM16-headerbar{
  width:min(1380px,calc(100% - 8px))!important;
  margin:0 auto!important;
  min-height:70px!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:10px 14px 10px 22px!important;
  border:1px solid #eed4dc!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 38px rgba(20,20,20,.065), inset 0 1px 0 rgba(255,255,255,.9)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.belbet-luxury-menu .bskM16-headerbar::before{
  content:""!important;
  width:8px!important;height:8px!important;flex:0 0 8px!important;
  border-radius:50%!important;background:#e6b4c2!important;
  box-shadow:0 0 0 5px #fff5f8!important;
  order:-1!important;
}
body.belbet-luxury-menu .bskM16-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{
  width:clamp(150px,14vw,210px)!important;
  max-width:210px!important;height:auto!important;
}
body.belbet-luxury-menu .bskM16-header a[href*="facebook.com/belbetskincare"],
body.belbet-luxury-menu .bskM16-header a[href*="instagram.com/belbet_skincare"],
body.belbet-luxury-menu .bskM16-header a[href*="tiktok.com/@belbet_skincare"],
body.belbet-luxury-menu .bskM16-header a[href*="google.com/maps"]{
  width:36px!important;height:36px!important;display:inline-grid!important;place-items:center!important;
  padding:0!important;border:1px solid #ead5dc!important;border-radius:999px!important;
  background:#fff!important;color:#b77e90!important;
}
body.belbet-luxury-menu .bskM16-trigger{
  min-width:112px!important;height:46px!important;padding:0 13px 0 18px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
  border:1px solid #111!important;border-radius:999px!important;background:#111!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(0,0,0,.10)!important;cursor:pointer!important;pointer-events:auto!important;
}
body.belbet-luxury-menu .bskM16-trigger::before{
  content:"Menu"!important;font:600 8px/1 Arial,Helvetica,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#fff!important;
}
body.belbet-luxury-menu .bskM16-trigger svg,
body.belbet-luxury-menu .bskM16-trigger i{width:18px!important;height:18px!important;color:#fff!important;fill:#fff!important;stroke:#fff!important;pointer-events:none!important;}

body.belbet-luxury-menu .bskM16-popup{--m16pink:#e6b4c2;--m16line:#efd4dc;--m16soft:#fff7f9;--m16ink:#171717;}
body.belbet-luxury-menu .bskM16-popupSurface{
  width:min(480px,92vw)!important;max-width:92vw!important;
  min-height:100dvh!important;margin-left:auto!important;
  padding:0!important;overflow-y:auto!important;
  background:#fbfbfa!important;
  border:0!important;border-left:2px solid var(--m16pink)!important;
  border-radius:30px 0 0 30px!important;
  box-shadow:-32px 0 80px rgba(0,0,0,.14)!important;
}
body.belbet-luxury-menu .bskM16-popupSurface::before{
  content:"BELBET · MIAMI"!important;
  display:block!important;
  margin:28px 28px 0!important;padding:15px 18px!important;
  border:1px solid var(--m16line)!important;border-radius:999px!important;
  background:#fff!important;color:#b77e90!important;
  font:600 7px/1 Arial,Helvetica,sans-serif!important;letter-spacing:.18em!important;text-transform:uppercase!important;
}
body.belbet-luxury-menu .bskM16-menuTitle{
  margin:34px 28px 18px!important;padding:0!important;
  font:400 clamp(38px,5vw,58px)/.95 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.05em!important;color:#111!important;text-transform:none!important;
}
body.belbet-luxury-menu .bskM16-popup .elementor-widget-button,
body.belbet-luxury-menu .bskM16-popup .elementor-button-wrapper{width:100%!important;}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuBook,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuShop,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuAccount{
  width:calc(100% - 56px)!important;min-height:62px!important;
  margin:7px 28px!important;padding:10px 14px 10px 22px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;
  border-radius:18px!important;text-decoration:none!important;
  font:400 22px/1 Georgia,"Times New Roman",serif!important;letter-spacing:-.025em!important;
  transition:transform .25s ease,background .25s ease,border-color .25s ease!important;
}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuBook{background:#111!important;color:#fff!important;border:1px solid #111!important;}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuShop,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuAccount{background:#fff!important;color:#111!important;border:1px solid #e5e5e5!important;}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuBook::after,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuShop::after,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuAccount::after{
  content:"↗"!important;width:36px!important;height:36px!important;flex:0 0 36px!important;display:grid!important;place-items:center!important;
  border-radius:50%!important;background:#fff!important;color:#111!important;border:1px solid #ead5dc!important;
  font:400 12px/1 Arial,Helvetica,sans-serif!important;
}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuShop:hover,
body.belbet-luxury-menu .bskM16-popup .bskM16-menuAccount:hover{background:var(--m16soft)!important;border-color:var(--m16line)!important;transform:translateX(-3px)!important;}
body.belbet-luxury-menu .bskM16-popup .bskM16-menuBook:hover{transform:translateY(-2px)!important;}
body.belbet-luxury-menu .bskM16-popup .dialog-close-button,
body.belbet-luxury-menu .bskM16-popup [aria-label*="Close" i]{
  width:44px!important;height:44px!important;top:22px!important;right:22px!important;
  display:grid!important;place-items:center!important;border:1px solid var(--m16line)!important;border-radius:50%!important;
  background:#fff!important;color:#111!important;box-shadow:0 8px 20px rgba(0,0,0,.06)!important;
}
body.belbet-luxury-menu .bskM16-popup .elementor-widget-image img{
  width:calc(100% - 56px)!important;max-width:none!important;margin:24px 28px!important;border-radius:18px!important;border:1px solid #ececec!important;
}

@media(max-width:767px){
  body.belbet-luxury-menu .bskM16-header{padding:8px 10px!important;}
  body.belbet-luxury-menu .bskM16-headerbar{width:100%!important;min-height:62px!important;padding:8px 9px 8px 15px!important;border-radius:20px!important;gap:10px!important;}
  body.belbet-luxury-menu .bskM16-headerbar::before{display:none!important;}
  body.belbet-luxury-menu .bskM16-header img[src*="4bde3192e2ff490a95486ba37e71cebc"]{width:126px!important;max-width:40vw!important;}
  body.belbet-luxury-menu .bskM16-trigger{min-width:48px!important;width:48px!important;height:48px!important;padding:0!important;border-radius:16px!important;}
  body.belbet-luxury-menu .bskM16-trigger::before{display:none!important;}
  body.belbet-luxury-menu .bskM16-popupSurface{width:min(94vw,430px)!important;max-width:94vw!important;border-radius:24px 0 0 24px!important;}
  body.belbet-luxury-menu .bskM16-popupSurface::before{margin:20px 20px 0!important;padding:13px 15px!important;}
  body.belbet-luxury-menu .bskM16-menuTitle{margin:30px 20px 16px!important;font-size:44px!important;}
  body.belbet-luxury-menu .bskM16-popup .bskM16-menuBook,
  body.belbet-luxury-menu .bskM16-popup .bskM16-menuShop,
  body.belbet-luxury-menu .bskM16-popup .bskM16-menuAccount{width:calc(100% - 40px)!important;margin:7px 20px!important;min-height:58px!important;font-size:20px!important;}
  body.belbet-luxury-menu .bskM16-popup .dialog-close-button,
  body.belbet-luxury-menu .bskM16-popup [aria-label*="Close" i]{top:14px!important;right:14px!important;}
}

/* =========================================================
   V1.10 MOBILE HORIZONTAL DRIFT GUARD
   Prevents finger-drag side movement without changing vertical scroll.
========================================================= */
body.belbet-luxury-ui{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
body.belbet-luxury-menu .bskM16-header,
body.belbet-luxury-menu .bskM16-headerbar{
  max-width:100%!important;
}
body.belbet-luxury-menu .bskM16-popup,
body.belbet-luxury-menu .bskM16-popupSurface{
  max-width:100vw!important;
}
@supports (overflow:clip){
  body.belbet-luxury-ui{overflow-x:clip!important;}
}
@media(max-width:767px){
  body.belbet-luxury-ui .woocommerce,
  body.belbet-luxury-ui .elementor,
  body.belbet-luxury-ui .elementor-section,
  body.belbet-luxury-ui .e-con{
    max-width:100%!important;
  }
  body.belbet-luxury-menu .bskM16-header{width:100%!important;}
  body.belbet-luxury-menu .bskM16-headerbar{width:100%!important;}
}

/* =========================================================
   V1.11 WOOCOMMERCE GEOMETRY REPAIR
   DOM-tagged, endpoint-only. This fixes theme sidebar/content
   columns without touching Elementor header, popup, or footer.
========================================================= */

body.blw-wc-endpoint{
  overflow-x:hidden!important;
}

/* JS tags only the actual content ancestry around WooCommerce. */
body.blw-wc-endpoint .blw111-wc-host{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:both!important;
  flex:1 1 100%!important;
  flex-basis:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Kill only sidebars discovered beside the WooCommerce content ancestry. */
body.blw-wc-endpoint .blw111-wc-sidebar-kill{
  display:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  flex:0 0 0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

body.blw-wc-endpoint .blw111-wc-canvas{
  box-sizing:border-box!important;
  width:min(1320px,calc(100vw - 48px))!important;
  max-width:1320px!important;
  min-width:0!important;
  float:none!important;
  clear:both!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Prevent old float pseudo-elements from resurrecting a two-column layout. */
body.blw-wc-endpoint .blw111-wc-canvas::before,
body.blw-wc-endpoint .blw111-wc-canvas::after{
  content:none!important;
  display:none!important;
}

/* Shop / taxonomy toolbar stays inside the same canvas. */
body.blw-wc-endpoint.post-type-archive-product .blw111-wc-canvas .woocommerce-result-count,
body.blw-wc-endpoint.tax-product_cat .blw111-wc-canvas .woocommerce-result-count,
body.blw-wc-endpoint.tax-product_tag .blw111-wc-canvas .woocommerce-result-count{
  float:left!important;
  width:auto!important;
  margin:0 0 24px!important;
}
body.blw-wc-endpoint.post-type-archive-product .blw111-wc-canvas .woocommerce-ordering,
body.blw-wc-endpoint.tax-product_cat .blw111-wc-canvas .woocommerce-ordering,
body.blw-wc-endpoint.tax-product_tag .blw111-wc-canvas .woocommerce-ordering{
  float:right!important;
  width:auto!important;
  margin:0 0 24px!important;
}
body.blw-wc-endpoint.post-type-archive-product .blw111-wc-canvas ul.products,
body.blw-wc-endpoint.tax-product_cat .blw111-wc-canvas ul.products,
body.blw-wc-endpoint.tax-product_tag .blw111-wc-canvas ul.products{
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
}

/* Signed-in My Account is an explicit two-column app shell. */
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas{
  display:grid!important;
  grid-template-columns:230px minmax(0,1fr)!important;
  column-gap:clamp(28px,4vw,56px)!important;
  align-items:start!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas > .woocommerce-notices-wrapper,
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas > .woocommerce-message,
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas > .woocommerce-error,
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas > .woocommerce-info{
  grid-column:1 / -1!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation{
  grid-column:1!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-content{
  grid-column:2!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation ul{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  border:1px solid var(--blw-border)!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  border-bottom:1px solid var(--blw-border)!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation li:last-child{
  border-bottom:0!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation a{
  display:block!important;
  padding:15px 17px!important;
  background:#fff!important;
  color:#444!important;
  text-decoration:none!important;
  font:600 9px/1.3 var(--blw-sans)!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation .is-active a,
body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation a:hover{
  background:var(--blw-accent-soft)!important;
  color:#111!important;
}

/* Logged-out account/login stays centered instead of inheriting theme columns. */
body.blw-wc-endpoint.woocommerce-account:not(.logged-in) .blw111-wc-canvas{
  display:block!important;
}
body.blw-wc-endpoint.woocommerce-account:not(.logged-in) .blw111-wc-canvas #customer_login{
  width:min(1060px,100%)!important;
  max-width:1060px!important;
  margin:0 auto!important;
}

/* Cart / checkout explicitly ignore old theme floats. */
body.blw-wc-endpoint.woocommerce-cart .blw111-wc-canvas .woocommerce-cart-form,
body.blw-wc-endpoint.woocommerce-cart .blw111-wc-canvas .cart-collaterals,
body.blw-wc-endpoint.woocommerce-checkout .blw111-wc-canvas form.checkout,
body.blw-wc-endpoint.woocommerce-checkout .blw111-wc-canvas #customer_details,
body.blw-wc-endpoint.woocommerce-checkout .blw111-wc-canvas #order_review,
body.blw-wc-endpoint.woocommerce-checkout .blw111-wc-canvas #order_review_heading{
  box-sizing:border-box!important;
  max-width:100%!important;
}

/* Hard safety boundaries: geometry patch never styles these surfaces. */
body.blw-wc-endpoint .elementor-location-header,
body.blw-wc-endpoint .elementor-location-popup,
body.blw-wc-endpoint .elementor-location-footer,
body.blw-wc-endpoint [data-elementor-type="header"],
body.blw-wc-endpoint [data-elementor-type="popup"],
body.blw-wc-endpoint [data-elementor-type="footer"],
body.blw-wc-endpoint .bskM16-header,
body.blw-wc-endpoint .bskM16-popup{
  flex-basis:auto;
}

@media(max-width:900px){
  body.blw-wc-endpoint .blw111-wc-canvas{
    width:calc(100vw - 32px)!important;
  }
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas{
    grid-template-columns:1fr!important;
    row-gap:28px!important;
  }
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation,
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-content{
    grid-column:1!important;
  }
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation ul{
    display:flex!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{
    display:none!important;
  }
  body.blw-wc-endpoint.woocommerce-account.logged-in .blw111-wc-canvas .woocommerce-MyAccount-navigation li{
    flex:0 0 auto!important;
    border-bottom:0!important;
    border-right:1px solid var(--blw-border)!important;
  }
}

@media(max-width:700px){
  body.blw-wc-endpoint .blw111-wc-canvas{
    width:calc(100vw - 28px)!important;
  }
  body.blw-wc-endpoint.post-type-archive-product .blw111-wc-canvas .woocommerce-result-count,
  body.blw-wc-endpoint.tax-product_cat .blw111-wc-canvas .woocommerce-result-count,
  body.blw-wc-endpoint.tax-product_tag .blw111-wc-canvas .woocommerce-result-count,
  body.blw-wc-endpoint.post-type-archive-product .blw111-wc-canvas .woocommerce-ordering,
  body.blw-wc-endpoint.tax-product_cat .blw111-wc-canvas .woocommerce-ordering,
  body.blw-wc-endpoint.tax-product_tag .blw111-wc-canvas .woocommerce-ordering{
    float:none!important;
    width:100%!important;
  }
}
