/* ==========================================================================
   BeSlim4ever: store pages (shop, product, cart, checkout, account, pages)
   Same values as the approved /front/ design (assets/css/front.css).
   Header/footer rules are scoped to .bs-chrome so they cannot collide with
   the parent theme's classes; WooCommerce rules restyle the parent's markup.
   ========================================================================== */
:root{
  --f:#f70873;--fd:#cf005c;--ink:#111;--muted:#6d6670;--soft:#fff3f8;--soft2:#ffe4ef;
  --line:#eadde4;--white:#fff;--shadow:0 18px 55px rgba(75,12,42,.12);--r:26px;--max:1220px;
  --bs-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  /* Parent theme tokens follow the design */
  --olv-primary:var(--f);--olv-primary-rgb:247,8,115;--olv-text:var(--ink);--olv-text-muted:var(--muted);
  --olv-border:var(--line);--olv-border-15:var(--line);--olv-font-body:var(--bs-font);--olv-font-heading:var(--bs-font);
  --olv-font-menu:var(--bs-font);--olv-star:var(--f);--olv-sale:var(--f);--olv-danger:var(--f);--olv-success:var(--f);
  --olv-radius-form:999px;--olv-container:1220px;
}
body{font-family:var(--bs-font);color:var(--ink);line-height:1.45}

/* ---- Shared chrome (copied from front.css, scoped) ---------------------- */
.bs-chrome .wrap{width:min(var(--max),calc(100% - 38px));margin:auto}
.bs-chrome a{color:inherit;text-decoration:none}
.bs-chrome button{font:inherit}
.bs-chrome .topbar{background:#111;color:#fff;text-align:center;padding:10px 16px;font-size:12px;font-weight:900;letter-spacing:.08em}
.bs-chrome .offerbar{background:var(--f);color:#fff;overflow:hidden;white-space:nowrap}
.bs-chrome .marquee{display:inline-block;padding:10px 0;font-size:13px;font-weight:950;animation:bs-scroll 20s linear infinite}
.bs-chrome .marquee span{padding-right:54px}
@keyframes bs-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.bs-chrome .marquee{animation:none}}
header.bs-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.admin-bar header.bs-header{top:32px}
.bs-header .nav{height:74px;display:flex;align-items:center;gap:24px}
.bs-chrome .logo{font-size:24px;font-weight:950;letter-spacing:-.05em;white-space:nowrap}.bs-chrome .logo b{color:var(--f)}
.bs-header .links{display:flex;gap:24px;margin:auto;font-size:14px;font-weight:800}.bs-header .links a:hover{color:var(--f)}
.bs-header .iconbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:900;cursor:pointer;position:relative;color:var(--ink)}
.bs-header .cartcount{position:absolute;top:-5px;right:-5px;background:var(--f);color:#fff;width:21px;height:21px;border-radius:50%;font-size:11px;display:grid;place-items:center}
.bs-chrome .btn{border:0;border-radius:999px;padding:16px 25px;font-weight:950;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s;text-decoration:none}
.bs-chrome .btn:hover{transform:translateY(-2px)}
.bs-chrome .primary{background:var(--f);color:#fff;box-shadow:0 10px 28px rgba(247,8,115,.24)}.bs-chrome .primary:hover{background:var(--fd);color:#fff}
.bs-chrome .secondary{background:#fff;border:1px solid var(--line)}.bs-chrome .tiny{padding:11px 16px;font-size:13px}
.bs-chrome .eyebrow{color:var(--f);font-size:12px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.bs-chrome .sub{font-size:18px;color:var(--muted)}
.bs-chrome .price{margin:16px 0 15px;font-size:23px;font-weight:950;color:var(--f)}
.bs-chrome .price small{font-size:13px;color:#8b8187;font-weight:700;margin-left:7px;text-decoration:line-through}
.bs-chrome .learn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;font-weight:950;cursor:pointer;color:var(--ink)}
.bs-chrome .footer{background:#111;color:#fff;padding:56px 0 110px}.bs-chrome .footergrid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:30px}
.bs-chrome .footer a,.bs-chrome .footer p{color:#c8c1c5;font-size:14px}.bs-chrome .footer a:hover{color:#fff}.bs-chrome .footer h4{margin:0 0 12px;color:#fff;font-size:16px;letter-spacing:0}
.bs-chrome .disclaimer{border-top:1px solid #333;margin-top:36px;padding-top:22px;color:#8f898c;font-size:12px}
.bs-chrome .paymentwrap{margin-top:16px}.bs-chrome .paymentlabel{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#776d73;margin-bottom:8px}
.bs-chrome .paymentrow{display:flex;flex-wrap:wrap;gap:7px}.bs-chrome .paybadge{background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px 10px;font-size:12px;font-weight:900;color:#111;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.bs-chrome .drawerback{position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:9998;opacity:0;pointer-events:none;transition:.2s}
.bs-chrome .drawerback.show{opacity:1;pointer-events:auto}
.bs-chrome .drawer{position:fixed;right:0;top:0;bottom:0;width:min(440px,100%);background:#fff;color:var(--ink);z-index:9999;transform:translateX(102%);transition:.25s;display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(0,0,0,.2)}
.bs-chrome .drawer.show{transform:translateX(0)}.bs-chrome .drawerhead{padding:20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.bs-chrome .drawerbody{padding:18px;overflow:auto;flex:1}.bs-chrome .cartline{display:grid;grid-template-columns:68px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0}
.bs-chrome .cartline img{width:68px;height:68px;object-fit:cover;border-radius:14px;background:#f5f1ef}.bs-chrome .qty{display:flex;align-items:center;gap:8px;margin-top:7px}
.bs-chrome .qty button{width:25px;height:25px;border:1px solid var(--line);background:#fff;border-radius:50%;cursor:pointer;padding:0;color:var(--ink)}
.bs-chrome .drawerfoot{border-top:1px solid var(--line);padding:18px}.bs-chrome .sumrow{display:flex;justify-content:space-between;margin:7px 0}.bs-chrome .sumrow.total{font-size:20px;font-weight:950;margin-top:13px}
.bs-chrome .checkout{width:100%;margin-top:12px}.bs-chrome .fine{font-size:11px;color:var(--muted);text-align:center;margin-top:10px}
.bs-chrome .cartupsell{margin:16px 0 2px;border:1px solid var(--line);border-radius:18px;padding:14px;background:#fff7fb}.bs-chrome .cartupsell h4{margin:0 0 6px;font-size:15px;letter-spacing:0}
.bs-chrome .cartupsell p{margin:0 0 10px;color:var(--muted);font-size:12px}.bs-chrome .cartupsell button{width:100%;border:0;background:#111;color:#fff;border-radius:12px;padding:10px 12px;font-weight:900;cursor:pointer}
.bs-chrome .modalback{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:10000;display:none;place-items:center;padding:20px}.bs-chrome .modalback.show{display:grid}
.bs-chrome .modal{background:#fff;color:var(--ink);border-radius:30px;width:min(930px,100%);max-height:92vh;overflow:auto;display:grid;grid-template-columns:.9fr 1.1fr;position:relative}
.bs-chrome .modalmedia{background:#f6f1ef;min-height:480px}.bs-chrome .modalmedia img{width:100%;height:100%;object-fit:cover}.bs-chrome .modalcopy{padding:42px}
.bs-chrome .modalcopy h3{font-size:38px;letter-spacing:-.05em;margin:8px 0 12px;line-height:1}
.bs-chrome .close{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:20px;padding:0}
.bs-chrome .bullets{padding:0;list-style:none;display:grid;gap:9px;margin:22px 0}.bs-chrome .bullets li:before{content:"✓";color:var(--f);font-weight:950;margin-right:8px}
.bs-chrome .mobilebar,.bs-chrome .mobile-shopbar{display:none}
@media(max-width:980px){.bs-header .links{display:none}.bs-chrome .footergrid{grid-template-columns:1fr 1fr}.bs-chrome .modal{grid-template-columns:1fr}.bs-chrome .modalmedia{min-height:300px;max-height:360px}}
@media(max-width:620px){.bs-chrome .wrap{width:min(var(--max),calc(100% - 26px))}.bs-header .nav{height:66px}.bs-chrome .logo{font-size:21px}.bs-chrome .footergrid{grid-template-columns:1fr}.bs-chrome .modalcopy{padding:28px 20px 34px}.bs-chrome .modalcopy h3{font-size:31px}}
@media(max-width:900px){.bs-chrome .mobile-shopbar{display:flex;position:fixed;z-index:88;left:10px;right:10px;bottom:10px;background:#111;color:#fff;border-radius:18px;padding:9px;gap:8px;box-shadow:0 14px 42px rgba(0,0,0,.25)}
.bs-chrome .mobile-shopbar a,.bs-chrome .mobile-shopbar button{flex:1;border:0;border-radius:12px;padding:13px 10px;font-weight:950;text-align:center;cursor:pointer}
.bs-chrome .mobile-shopbar a{background:var(--f);color:#fff}.bs-chrome .mobile-shopbar button{background:#fff;color:#111}body{padding-bottom:76px}}

/* ---- Parent pieces the design replaces ---------------------------------- */
.klb-mobile-bottom{display:none!important}

/* ---- Page type ---------------------------------------------------------- */
.site-content h1,.site-content .page-title,.site-content .entry-title,.product_title{font-weight:950;letter-spacing:-.055em;line-height:.95;text-transform:uppercase}
.site-content h1,.site-content .page-title h1{font-size:clamp(36px,5vw,62px)}
.site-content h2{font-weight:950;letter-spacing:-.05em;line-height:.98}
.site-content a:hover{color:var(--f)}
.woocommerce-breadcrumb,.breadcrumb{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ---- Buttons (WooCommerce + parent) ------------------------------------- */
.site-content .button,.site-content button.button,.site-content input[type=submit],.wc-block-components-button:not(.is-link),.single_add_to_cart_button.button.alt{
  border:0;border-radius:999px;background:var(--f);color:#fff;font-weight:950;letter-spacing:0;height:auto;min-height:48px;padding:14px 25px;line-height:1.2;
  box-shadow:0 10px 28px rgba(247,8,115,.24);transition:.2s}
.site-content .button:hover,.site-content input[type=submit]:hover,.wc-block-components-button:not(.is-link):hover,.single_add_to_cart_button.button.alt:hover{background:var(--fd);color:#fff;transform:translateY(-2px)}

/* ---- Forms -------------------------------------------------------------- */
.site-content input[type=text],.site-content input[type=email],.site-content input[type=tel],.site-content input[type=password],.site-content input[type=number],.site-content input[type=search],.site-content select,.site-content textarea,.select2-container .select2-selection--single{
  border:1px solid var(--line);border-radius:14px;background:#fff;min-height:48px}
.site-content input:focus,.site-content select:focus,.site-content textarea:focus{border-color:var(--f);outline:3px solid rgba(247,8,115,.18)}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(247,8,115,.5);outline-offset:2px}

/* ---- Shop grid: product cards like the design --------------------------- */
.products .product-wrapper{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 12px 35px rgba(70,16,42,.07)}
.products .product-wrapper .product-inner{display:flex;flex-direction:column;flex:1}
.products .product-wrapper .thumbnail-wrapper{background:#f5f1ef}
.products .product-wrapper .thumbnail-wrapper img{aspect-ratio:1/1;object-fit:cover}
.products .product-wrapper .content-wrapper{display:flex;flex-direction:column;flex:1;padding:20px}
.products .product-wrapper .product-rating{order:0}
.products .product-wrapper .product-title{order:1;font-size:22px;line-height:1.05;letter-spacing:-.03em;font-weight:950;margin:0 0 8px}
.products .product-wrapper .price{order:2;margin:auto 0 0;padding-top:12px;font-size:23px;font-weight:950;color:var(--f);align-items:baseline}
.products .product-wrapper .price ins{color:var(--f);text-decoration:none}
.products .product-wrapper .price del{order:2;font-size:13px;color:#8b8187;font-weight:700}
.products .product-wrapper .badge{border-radius:999px;background:#111;padding:7px 10px;font-size:11px;font-weight:950;letter-spacing:.05em}
.products .product-wrapper .badge.sale,.products .product-wrapper .badge.onsale{background:var(--f)}
.products .product-wrapper .content-wrapper>.product-buttons,.products .product-wrapper .product-cart-wrapper{order:3;margin-top:12px}
.products .product-wrapper .product-buttons .button{width:100%;min-height:44px;padding:11px 16px;font-size:13px;border-radius:999px;background:var(--f);color:#fff;border:0}
.product-rating .star-rating>span{color:var(--f)}
@media(max-width:620px){.products .product-wrapper .content-wrapper{padding:14px}.products .product-wrapper .product-rating{order:0}
.products .product-wrapper .product-title{order:1;font-size:17px}.products .product-wrapper .price{font-size:19px}}

/* ---- Single product ----------------------------------------------------- */
.single-product .product-detail-inner .price,.single-product .summary .price{color:var(--f);font-size:30px;font-weight:950}
.single-product .product-detail-inner .price del{font-size:15px;color:#8b8187;font-weight:700}
.single-product .woocommerce-product-gallery img,.single-product .product-gallery img{border-radius:28px}
.single-product .woocommerce-tabs .tabs li a{font-weight:900}
.single-product .woocommerce-tabs .tabs li.active a{color:var(--f)}

/* ---- Cart, checkout (blocks) and account -------------------------------- */
.wc-block-cart,.wc-block-checkout{--wp--preset--color--contrast:var(--ink)}
.wc-block-components-sidebar-layout .wc-block-components-sidebar,.wc-block-cart__sidebar,.wc-block-checkout__sidebar{border:1px solid var(--line);border-radius:26px;padding:24px;background:#fff;box-shadow:var(--shadow)}
.wc-block-components-totals-discount .wc-block-components-totals-item__value,.wc-block-components-product-price__value{color:var(--f);font-weight:900}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input{border-color:var(--line)!important;border-radius:14px!important}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;display:grid;gap:6px}
.woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;border:1px solid var(--line);border-radius:999px;font-weight:800}
.woocommerce-MyAccount-navigation .is-active a{background:#111;color:#fff;border-color:#111}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{border-radius:18px;border:1px solid var(--line);background:var(--soft);color:var(--ink)}
.site-content button[type=submit]{border:0;border-radius:999px;background:var(--f);color:#fff;font-weight:950;min-height:48px;padding:12px 26px;box-shadow:0 10px 28px rgba(247,8,115,.24)}
.site-content button[type=submit]:hover{background:var(--fd);color:#fff}
.site-content .actions .button,.site-content button[name=apply_coupon],.site-content button[name=update_cart]{border:0;border-radius:999px;background:#111;color:#fff;font-weight:950;min-height:48px;padding:12px 22px;box-shadow:none}
.site-content button[name=apply_coupon]:hover,.site-content .actions .button:hover{background:var(--f);color:#fff}
.cart-collaterals .cart_totals,.site-content .cart_totals,.woocommerce-checkout-review-order{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow)}
.cart_totals .order-total .amount,.cart_totals .order-total td{color:var(--f);font-weight:950}
.woocommerce-cart-form .product-name a{font-weight:900}
.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword{max-width:520px;border:1px solid var(--line);border-radius:26px;padding:28px;background:#fff;box-shadow:var(--shadow)}
/* Long supplier product names: keep cards even (full name stays on the product page). */
.products .product-wrapper .product-title a{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
