/* =========================================================================
   Mallbg redesign – "Crazyshop" look (TemplateMela PRS220530, Megashop layout)
   Loaded after the legacy style.css and overrides it where needed.
   ========================================================================= */
@import url("https://fonts.googleapis.com/css2?family=Exo+2:wght@400;500;600;700;800&display=swap");

:root{
	--cz-primary:#ed5e43;
	--cz-primary-dark:#d64a30;
	--cz-dark:#1a1a1a;
	--cz-text:#1a1a1a;
	--cz-text-2:#555;
	--cz-muted:#888;
	--cz-border:#e5e5e5;
	--cz-bg:#f7f7f7;
	--cz-bg-2:#f2f2f2;
	--cz-white:#fff;
	--cz-green:#44b367;
	--cz-red:#ef2d2d;
	--cz-star:#ffab00;
	--cz-radius:5px;
	--cz-shadow:5px 0 30px 0 rgba(0,0,0,.08);
	--cz-font:"Exo 2","Bai Jamjuree",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	--cz-container:1430px;
	--cz-vmenu-w:22.5%;
}

/* ---------- base overrides of legacy style.css ---------- */
html{ -webkit-text-size-adjust:100%; }
body.cz{ background:var(--cz-white) !important; font-family:var(--cz-font); font-size:14px; font-weight:500; line-height:24px; color:var(--cz-text); letter-spacing:.3px; }
/* low specificity on purpose (:where) so component rules like .cz-footer a win */
:where(body.cz) a{ color:var(--cz-text); transition:color .25s; }
:where(body.cz) a:hover, :where(body.cz) a:focus{ color:var(--cz-primary); text-decoration:none; }
:where(body.cz) :is(h1,h2,h3,h4,h5,h6){ font-family:var(--cz-font); font-weight:700; color:var(--cz-text); line-height:1.2; margin:0 0 10px; }
:where(body.cz) h1{ font-size:30px; }
:where(body.cz) h2{ font-size:26px; }
:where(body.cz) h3{ font-size:22px; }
:where(body.cz) h4{ font-size:18px; }
body.cz img{ max-width:100%; height:auto; }
body.cz input, body.cz select, body.cz textarea, body.cz button{ font-family:var(--cz-font); }
body.cz *{ box-sizing:border-box; }
body.cz ::selection{ background:var(--cz-primary); color:#fff; }

.cz-container{ max-width:var(--cz-container); margin:0 auto; padding:0 15px; width:100%; }
.cz-hidden{ display:none !important; }
.cz-clearfix:after{ content:""; display:table; clear:both; }

/* ---------- buttons ---------- */
.cz-btn{ display:inline-block; height:44px; line-height:44px; padding:0 25px; border:0; border-radius:var(--cz-radius); font-family:var(--cz-font); font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; cursor:pointer; transition:all .3s; text-align:center; white-space:nowrap; -webkit-appearance:none; }
.cz-btn-primary{ background:var(--cz-primary); color:#fff !important; }
.cz-btn-primary:hover{ background:var(--cz-dark); color:#fff !important; }
.cz-btn-dark{ background:var(--cz-dark); color:#fff !important; }
.cz-btn-dark:hover{ background:var(--cz-primary); color:#fff !important; }
.cz-btn-light{ background:#ebebeb; color:var(--cz-dark) !important; }
.cz-btn-light:hover{ background:var(--cz-primary); color:#fff !important; }
/* legacy style.css paints .product_details .to-cart button[type=button] with an image - neutralise it */
body.cz .product_details .to-cart button.cz-btn[type="button"]{ background-image:none; width:auto; height:44px; line-height:44px; padding:0 25px; text-align:center; font-size:14px; letter-spacing:.5px; }
body.cz .product_details .to-cart button.cz-btn-primary[type="button"]{ background-color:var(--cz-primary); }
body.cz .product_details .to-cart button.cz-btn-primary[type="button"]:hover{ background-color:var(--cz-dark); }
body.cz .product_details .to-cart button.cz-btn-dark[type="button"]{ background-color:var(--cz-dark); }
body.cz .product_details .to-cart button.cz-btn-dark[type="button"]:hover{ background-color:var(--cz-primary); }
.cz-btn-outline{ background:#fff; color:var(--cz-dark) !important; border:1px solid var(--cz-border); line-height:42px; }
.cz-btn-outline:hover{ border-color:var(--cz-primary); color:var(--cz-primary) !important; }
.cz-btn-sm{ height:36px; line-height:36px; padding:0 16px; font-size:12px; }
.cz-btn-block{ display:block; width:100%; }
.cz-btn[disabled]{ opacity:.5; cursor:not-allowed; }

/* ---------- forms ---------- */
.cz-input, body.cz .cz-form .form-control{ height:44px; padding:8px 15px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); background:#fff; font-size:14px; width:100%; color:var(--cz-text); box-shadow:none; transition:border-color .25s; }
.cz-input:focus, body.cz .cz-form .form-control:focus{ outline:0; border-color:var(--cz-primary); box-shadow:none; }
textarea.cz-input, body.cz .cz-form textarea.form-control{ height:auto; min-height:110px; }
select.cz-input{ -webkit-appearance:none; appearance:none; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23555' stroke-width='1.5'/></svg>"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; }
.cz-check{ display:flex; align-items:flex-start; gap:10px; cursor:pointer; font-weight:500; }
.cz-check input{ margin:5px 0 0; flex:0 0 auto; width:16px; height:16px; accent-color:var(--cz-primary); }
.cz-alert{ padding:12px 16px; border-radius:var(--cz-radius); margin-bottom:20px; font-weight:500; }
.cz-alert-danger{ background:#fbe9e7; color:#c62828; border:1px solid #f6c5bf; }
.cz-alert-success{ background:#e6f7e6; color:#2a7a25; border:1px solid #bfe5bf; }
.cz-alert-info{ background:#e0f7fa; color:#0288d1; border:1px solid #b2e5f0; }

/* ---------- top bar (L) ---------- */
.cz-topbar{ background:var(--cz-dark); color:#fff; font-size:13px; line-height:38px; border-bottom:1px solid rgba(255,255,255,.08); }
.cz-topbar .cz-container{ display:flex; align-items:center; justify-content:space-between; gap:20px; }
.cz-topbar a{ color:#fff; }
.cz-topbar a:hover{ color:var(--cz-primary); }
.cz-topbar .cz-topbar-info{ flex:1 1 auto; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cz-topbar .cz-topbar-info a{ text-decoration:underline; }
.cz-topbar .cz-topbar-right{ display:flex; align-items:center; gap:0; flex:0 0 auto; }
.cz-topbar .cz-topbar-right > *{ padding:0 15px; border-left:1px solid rgba(255,255,255,.15); }
.cz-topbar .cz-topbar-right > *:first-child{ border-left:0; }
.cz-topbar .cz-topbar-right > *:last-child{ padding-right:0; }
.cz-topbar .cz-topbar-email i{ font-size:14px; vertical-align:-1px; margin-right:6px; }
.cz-dropdown{ position:relative; }
.cz-dropdown .cz-dropdown-toggle{ cursor:pointer; display:inline-flex; align-items:center; gap:6px; color:#fff; }
.cz-dropdown .cz-dropdown-toggle:after{ content:""; width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin-top:-4px; }
.cz-dropdown .cz-dropdown-menu{ display:none; position:absolute; top:100%; right:0; min-width:150px; background:#fff; border-radius:var(--cz-radius); box-shadow:var(--cz-shadow); border:1px solid var(--cz-border); z-index:1200; padding:6px 0; line-height:30px; margin-top:8px; }
.cz-dropdown.open .cz-dropdown-menu{ display:block; }
.cz-dropdown .cz-dropdown-menu a{ display:block; padding:3px 15px; color:var(--cz-text); white-space:nowrap; }
.cz-dropdown .cz-dropdown-menu a:hover{ color:var(--cz-primary); background:var(--cz-bg); }
.cz-dropdown .cz-dropdown-menu img.flag, .cz-topbar img.flag{ width:16px; height:11px; vertical-align:-1px; margin-right:6px; }
.cz-notification-bar{ text-align:center; padding:6px 10px; font-weight:600; }
.cz-notification-bar a{ color:inherit; text-decoration:underline; }

/* ---------- header ---------- */
.cz-header{ background:var(--cz-dark); color:#fff; }
.cz-header-main{ display:flex; align-items:center; gap:30px; padding:22px 15px; }
.cz-header-logo{ flex:0 0 auto; }
.cz-header-logo img{ max-height:60px; width:auto; display:block; }
.cz-header-search{ flex:1 1 auto; display:flex; justify-content:center; }
.cz-search{ display:flex; width:100%; max-width:640px; background:#fff; border-radius:var(--cz-radius); overflow:hidden; height:48px; }
.cz-search select{ border:0; border-right:1px solid var(--cz-border); background:#fff; padding:0 30px 0 15px; font-size:14px; color:var(--cz-text); max-width:190px; min-width:150px; -webkit-appearance:none; appearance:none; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23555' stroke-width='1.5'/></svg>"); background-repeat:no-repeat; background-position:right 12px center; outline:0; }
.cz-search input[type=text]{ flex:1 1 auto; border:0; padding:0 15px; font-size:14px; outline:0; min-width:0; color:var(--cz-text); }
.cz-search button{ border:0; background:var(--cz-primary); color:#fff; padding:0 22px; font-weight:700; text-transform:uppercase; font-size:13px; letter-spacing:.5px; cursor:pointer; transition:background .25s; }
.cz-search button:hover{ background:var(--cz-primary-dark); }
.cz-header-actions{ flex:0 0 auto; display:flex; align-items:center; gap:22px; }
.cz-header-actions .cz-action{ position:relative; }
.cz-header-actions .cz-action > a, .cz-header-actions .cz-action > .cz-action-btn{ display:flex; flex-direction:column; align-items:center; color:#fff; cursor:pointer; font-size:11px; line-height:14px; text-transform:uppercase; letter-spacing:.3px; font-weight:600; gap:4px; }
.cz-header-actions .cz-action > a:hover, .cz-header-actions .cz-action > .cz-action-btn:hover{ color:var(--cz-primary); }
.cz-header-actions .cz-action i.cz-i{ font-size:27px; line-height:28px; display:block; }
.cz-header-actions .cz-action .cz-badge{ position:absolute; top:-6px; right:-6px; min-width:18px; height:18px; line-height:18px; padding:0 5px; background:var(--cz-primary); color:#fff; font-size:11px; font-weight:700; border-radius:9px; text-align:center; }
.cz-header-actions .cz-action .cz-icon-wrap{ position:relative; display:block; }
.cz-action-panel{ display:none; position:absolute; top:100%; right:0; margin-top:16px; width:320px; background:#fff; color:var(--cz-text); border-radius:var(--cz-radius); box-shadow:var(--cz-shadow); border:1px solid var(--cz-border); z-index:1300; padding:18px; text-align:left; }
.cz-action-panel:before{ content:""; position:absolute; top:-7px; right:22px; width:12px; height:12px; background:#fff; border-left:1px solid var(--cz-border); border-top:1px solid var(--cz-border); transform:rotate(45deg); }
.cz-action.open .cz-action-panel{ display:block; }
.cz-action-panel .title{ font-size:18px; font-weight:700; margin-bottom:12px; display:block; }
.cz-action-panel label{ display:block; font-weight:600; margin:0 0 4px; font-size:13px; }
.cz-action-panel input[type=text], .cz-action-panel input[type=password]{ width:100%; height:40px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:0 12px; margin-bottom:10px; }
.cz-action-panel .buttons{ display:flex; flex-direction:column; gap:8px; margin:8px 0; }
.cz-action-panel .buttons .cz-btn{ width:100%; }
.cz-action-panel .buttons .fb-login, .cz-action-panel .buttons .gp-login{ height:40px; border:0; border-radius:var(--cz-radius); color:#fff; font-weight:600; cursor:pointer; width:100%; }
.cz-action-panel .buttons .fb-login{ background:#3b5998; }
.cz-action-panel .buttons .gp-login{ background:#dd4b39; }
.cz-action-panel .links{ font-size:13px; text-align:center; }
.cz-action-panel .links a{ color:var(--cz-primary); }
.cz-action-panel ul{ list-style:none; margin:10px 0 0; padding:0; }
.cz-action-panel ul li{ border-top:1px solid var(--cz-border); }
.cz-action-panel ul li a{ display:block; padding:8px 0; }
.cz-action-panel .cz-cart-item{ display:flex; gap:12px; padding:10px 0; border-bottom:1px solid var(--cz-border); font-size:13px; line-height:18px; }
.cz-action-panel .cz-cart-item img{ width:60px; height:60px; object-fit:contain; border:1px solid var(--cz-border); border-radius:var(--cz-radius); flex:0 0 auto; }
.cz-action-panel .cz-cart-item .cartprice{ color:var(--cz-primary); font-weight:700; margin-top:4px; }
.cz-action-panel .totals{ display:flex; justify-content:space-between; padding:12px 0; font-size:16px; font-weight:700; }
.cz-action-panel .totals .sum{ color:var(--cz-primary); }
.cz-action-panel .cz-cart-buttons{ display:flex; gap:10px; }
.cz-action-panel .cz-cart-buttons .cz-btn{ flex:1 1 50%; padding:0 10px; font-size:12px; }
.cz-action-panel .empty{ display:block; color:var(--cz-muted); text-align:center; padding:10px 0; }
.cz-action-panel .cz-cart-items{ max-height:300px; overflow:auto; }

/* ---------- main navigation ---------- */
.cz-nav{ background:var(--cz-primary); position:relative; z-index:900; }
.cz-nav .cz-container{ display:flex; align-items:stretch; height:50px; }
.cz-vmenu{ position:relative; width:var(--cz-vmenu-w); flex:0 0 auto; }
.cz-vmenu-btn{ display:flex; align-items:center; gap:12px; height:50px; padding:0 20px; background:transparent; color:#fff; font-weight:700; text-transform:uppercase; font-size:14px; letter-spacing:.5px; cursor:pointer; user-select:none; }
.cz-vmenu-btn i.cz-i{ font-size:20px; }
.cz-vmenu-btn:hover, .cz-vmenu.open .cz-vmenu-btn{ background:var(--cz-primary-dark); }
.cz-vmenu-panel{ display:none; position:absolute; top:100%; left:0; width:100%; background:#fff; border:2px solid var(--cz-primary); border-top:0; border-radius:0 0 var(--cz-radius) var(--cz-radius); z-index:950; }
/* on the home page the panel is open by default; items that do not fit next to the hero are collapsed behind "more" */
.cz-vmenu-panel > ul > li.has-sub:hover{ z-index:2; }
.cz-vmenu.open .cz-vmenu-panel{ display:block; }
.cz-vmenu-panel > ul{ list-style:none; margin:0; padding:5px 15px; }
.cz-vmenu-panel > ul > li{ position:relative; border-bottom:1px solid var(--cz-border); }
.cz-vmenu-panel > ul > li:last-child{ border-bottom:0; }
.cz-vmenu-panel > ul > li > a{ display:flex; align-items:center; justify-content:space-between; padding:0 2px; height:43px; line-height:43px; font-size:14px; font-weight:600; color:var(--cz-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cz-vmenu-panel > ul > li.has-sub > a:after{ content:""; width:7px; height:7px; border-right:1.5px solid #999; border-top:1.5px solid #999; transform:rotate(45deg); flex:0 0 auto; margin-left:8px; }
.cz-vmenu-panel > ul > li:hover > a{ color:var(--cz-primary); }
.cz-vmenu-panel > ul > li .megamenu{ display:none; position:absolute; top:-2px; left:100%; margin-left:17px; width:860px; min-height:100%; background:#fff; border:2px solid var(--cz-primary); border-radius:var(--cz-radius); padding:20px 20px 20px 25px; z-index:960; box-shadow:var(--cz-shadow); }
.cz-vmenu-panel > ul > li .megamenu:before{ content:""; position:absolute; left:-22px; top:-2px; bottom:-2px; width:22px; }
.cz-vmenu-panel > ul > li:hover > .megamenu{ display:flex; flex-wrap:wrap; gap:0 20px; }
.cz-vmenu-panel .megamenu .bgimage{ position:absolute; right:0; bottom:0; z-index:1; max-width:45%; }
.cz-vmenu-panel .megamenu .col{ flex:0 0 31%; position:relative; z-index:2; }
.cz-vmenu-panel .megamenu .category{ margin-bottom:18px; }
.cz-vmenu-panel .megamenu .category h2{ font-size:15px; font-weight:700; margin:0 0 8px; padding-bottom:6px; border-bottom:1px solid var(--cz-border); color:var(--cz-text); }
.cz-vmenu-panel .megamenu .category a:hover h2{ color:var(--cz-primary); }
.cz-vmenu-panel .megamenu ul{ list-style:none; margin:0; padding:0; }
.cz-vmenu-panel .megamenu ul li{ font-size:13px; line-height:20px; margin-bottom:6px; }
.cz-vmenu-panel .megamenu ul li a{ color:var(--cz-text-2); }
.cz-vmenu-panel .megamenu ul li a:hover{ color:var(--cz-primary); }
.cz-vmenu-panel .megamenu .miniCat{ padding:4px 0 0 12px; }
.cz-vmenu-panel .megamenu .miniCat.expandable{ display:none; }
.cz-vmenu-panel .megamenu a.expand:after{ content:" +"; color:var(--cz-primary); font-weight:700; }
.cz-hmenu{ display:flex; align-items:center; list-style:none; margin:0; padding:0 0 0 20px; gap:0; flex:1 1 auto; }
.cz-hmenu > li > a{ display:block; padding:0 18px; line-height:50px; color:#fff; font-weight:700; text-transform:uppercase; font-size:13px; letter-spacing:.5px; }
.cz-hmenu > li > a:hover, .cz-hmenu > li.active > a{ color:var(--cz-dark); }
.cz-hmenu > li > a .tag{ display:inline-block; margin-left:6px; padding:0 6px; font-size:9px; line-height:16px; border-radius:3px; background:#1aa38d; color:#fff; vertical-align:2px; }
.cz-hmenu > li > a .tag.hot{ background:#e42d7b; }
.cz-nav-contacts{ margin-left:auto; display:flex; align-items:center; gap:8px; color:#fff; font-weight:700; font-size:13px; }
.cz-nav-contacts i.cz-i{ font-size:18px; }
.cz-mobile-toggle{ display:none; align-items:center; gap:10px; color:#fff; font-weight:700; text-transform:uppercase; font-size:13px; padding:0 15px; cursor:pointer; height:50px; }
.cz-mobile-toggle i.cz-i{ font-size:22px; }

/* ---------- page wrapper ---------- */
.cz-main{ padding:0 0 50px; min-height:400px; }
.cz-main > .cz-container > main{ display:block; width:auto; float:none; }
.cz-page-head{ background:var(--cz-bg); text-align:center; padding:30px 15px; margin-bottom:30px; }
.cz-page-head h1{ margin:0; font-size:30px; }
.cz-breadcrumb{ padding:16px 0 0; font-size:13px; color:var(--cz-muted); background:none; margin:0 0 18px; display:flex; flex-wrap:wrap; align-items:center; gap:4px; border-radius:0; }
.cz-breadcrumb:before{ content:""; width:14px; height:14px; margin-right:6px; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23777'><path d='M12 3 2 12h3v8h5v-6h4v6h5v-8h3z'/></svg>") no-repeat center/contain; }
.cz-breadcrumb a{ color:var(--cz-text-2); }
.cz-breadcrumb a.last, .cz-breadcrumb .current{ color:var(--cz-text); font-weight:600; }
.cz-breadcrumb .separator{ padding:0 6px; color:#bbb; }
.cz-breadcrumb span[itemprop=itemListElement] + span[itemprop=itemListElement]:before{ content:"\00bb"; padding:0 8px; color:#bbb; }
body.cz .breadcrumb{ background:none; padding:16px 0 0; margin:0 0 18px; font-size:13px; color:var(--cz-muted); }
body.cz .breadcrumb a{ color:var(--cz-text-2); }
body.cz .breadcrumb a.last{ color:var(--cz-text); font-weight:600; }
body.cz .breadcrumb .separator{ padding:0 6px; color:#bbb; }

/* ---------- section title ---------- */
.cz-section{ margin:40px 0 0; position:relative; }
.cz-section-title{ display:flex; align-items:center; gap:16px; margin-bottom:22px; flex-wrap:wrap; }
.cz-section-title h2{ font-size:26px; margin:0; }
.cz-section-title .sub{ color:var(--cz-muted); font-size:13px; padding-left:16px; border-left:1px solid var(--cz-border); line-height:18px; }
.cz-section-title .cz-nav-arrows{ margin-left:auto; }
.cz-section-title .all{ margin-left:auto; font-weight:600; font-size:14px; }
.cz-nav-arrows{ display:flex; gap:6px; }
.cz-nav-arrows .cz-arrow{ width:32px; height:32px; border:1px solid var(--cz-border); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; background:#fff; color:var(--cz-text); transition:all .25s; }
.cz-nav-arrows .cz-arrow:after{ content:""; width:7px; height:7px; border-right:1.5px solid currentColor; border-top:1.5px solid currentColor; transform:rotate(45deg); margin-left:-3px; }
.cz-nav-arrows .cz-arrow.prev:after{ transform:rotate(-135deg); margin-left:3px; }
.cz-nav-arrows .cz-arrow:hover{ background:var(--cz-primary); border-color:var(--cz-primary); color:#fff; }
.cz-nav-arrows .cz-arrow.swiper-button-disabled{ opacity:.35; cursor:default; }

/* ---------- home hero ---------- */
.cz-hero{ display:grid; grid-template-columns:minmax(0,1fr) 25%; gap:20px; padding-top:20px; align-items:stretch; min-height:440px; }
.cz-hero > *{ min-width:0; }
.cz-hero .cz-hero-menu-space{ display:none; }
.cz-hero .cz-hero-slider{ width:100%; border-radius:var(--cz-radius); overflow:hidden; position:relative; min-height:200px; background:var(--cz-bg); }
.cz-hero .cz-hero-slider .swiper{ height:100%; }
.cz-hero .cz-hero-slider .swiper-slide a{ display:block; height:100%; }
.cz-hero .cz-hero-slider .swiper-slide img{ width:100%; height:100%; object-fit:cover; display:block; }
.cz-hero .cz-hero-banners{ display:flex; flex-direction:column; gap:20px; }
.cz-hero .cz-hero-banners > div{ flex:1 1 0; min-height:0; }
.cz-hero .cz-hero-banners .cz-banner{ background:#fff; border:1px solid var(--cz-border); }
.cz-hero .cz-hero-banners .cz-banner img{ position:absolute; left:0; top:0; width:100%; height:100%; object-fit:contain; }
.cz-banner{ display:block; border-radius:var(--cz-radius); overflow:hidden; position:relative; height:100%; }
.cz-banner img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s; }
.cz-banner:hover img{ transform:scale(1.05); }
.cz-banner-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:40px; }
.cz-banner-row .cz-banner{ aspect-ratio:410/210; }
.cz-banner-row .cz-banner img{ height:100%; }
.swiper-pagination-bullet{ background:#fff; opacity:.6; }
.swiper-pagination-bullet-active{ background:var(--cz-primary); opacity:1; }
.cz-hero .swiper-button-next, .cz-hero .swiper-button-prev{ color:#fff; width:40px; height:40px; background:rgba(0,0,0,.35); border-radius:50%; }
.cz-hero .swiper-button-next:after, .cz-hero .swiper-button-prev:after{ font-size:14px; font-weight:700; }
.cz-hero .swiper-button-next:hover, .cz-hero .swiper-button-prev:hover{ background:var(--cz-primary); }

/* ---------- product card ---------- */
.cz-product{ position:relative; background:#fff; border:1px solid var(--cz-border); border-radius:var(--cz-radius); transition:box-shadow .3s, border-color .3s; display:flex; flex-direction:column; height:100%; overflow:hidden; }
.cz-product:hover{ box-shadow:var(--cz-shadow); border-color:#ddd; }
.cz-product .cz-product-thumb{ position:relative; padding:15px 15px 0; text-align:center; }
.cz-product .cz-product-thumb a{ display:block; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.cz-product .cz-product-thumb img{ max-height:100%; width:auto; max-width:100%; transition:transform .5s; }
.cz-product:hover .cz-product-thumb img{ transform:scale(1.05); }
.cz-product .cz-flags{ position:absolute; top:12px; left:12px; display:flex; flex-direction:column; gap:4px; z-index:2; }
.cz-flag{ display:inline-block; padding:0 7px; line-height:20px; font-size:11px; font-weight:700; text-transform:uppercase; color:#fff; border-radius:3px; background:var(--cz-red); }
.cz-flag.new{ background:var(--cz-green); }
.cz-flag.delivery{ background:#2d8fd5; }
.cz-flag.promo{ background:var(--cz-primary); }
.cz-flag.out{ background:#ff8e3e; }
.cz-product .cz-product-gift{ position:absolute; right:10px; bottom:10px; max-width:60px; z-index:2; }
.cz-product .cz-product-body{ padding:15px; display:flex; flex-direction:column; flex:1 1 auto; position:relative; }
.cz-product .cz-product-body:before{ content:""; position:absolute; top:0; left:15px; right:15px; height:1px; background:var(--cz-border); }
.cz-product .cz-product-title{ font-size:14px; font-weight:500; line-height:20px; margin:8px 0 8px; min-height:40px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-transform:none; overflow-wrap:anywhere; }
.cz-product .cz-product-title a{ color:var(--cz-text); }
.cz-product .cz-product-title a:hover{ color:var(--cz-primary); }
.cz-product .cz-product-status{ font-size:12px; color:var(--cz-muted); margin-bottom:6px; min-height:18px; }
.cz-product .cz-product-status .status-icon{ display:inline-flex; align-items:center; gap:4px; }
.cz-product .cz-product-status img{ height:14px; width:auto; }
.cz-price{ font-weight:700; font-size:15px; line-height:24px; display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; }
.cz-price .old{ color:var(--cz-muted); font-weight:500; text-decoration:line-through; font-size:13px; }
.cz-price .new{ color:var(--cz-primary); }
.cz-price .new .eur, .cz-price .old .eur{ font-weight:500; font-size:12px; color:var(--cz-muted); margin-left:4px; }
.cz-price .old .eur{ display:none; }
.cz-product .cz-product-actions{ margin-top:auto; padding-top:12px; }
.cz-product .cz-product-actions .cz-btn{ width:100%; height:40px; line-height:40px; font-size:12px; padding:0 10px; }
.cz-product:hover .cz-product-actions .cz-btn-light{ background:var(--cz-primary); color:#fff !important; }
.cz-product .cz-quick{ position:absolute; right:12px; top:12px; display:flex; flex-direction:column; gap:6px; opacity:0; transform:translateX(10px); transition:all .3s; z-index:3; }
.cz-product:hover .cz-quick{ opacity:1; transform:none; }
.cz-product .cz-quick a{ width:34px; height:34px; border-radius:50%; background:#fff; border:1px solid var(--cz-border); display:flex; align-items:center; justify-content:center; color:var(--cz-text); }
.cz-product .cz-quick a:hover{ background:var(--cz-primary); border-color:var(--cz-primary); color:#fff; }
.cz-product .cz-quick i.cz-i{ font-size:16px; }
.cz-product .cz-product-features{ display:none; }
.cz-product-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:20px; }
.cz-product-grid.cols-4{ grid-template-columns:repeat(4,1fr); }
.cz-product-grid.cols-5{ grid-template-columns:repeat(5,1fr); }
.cz-product-grid.cols-3{ grid-template-columns:repeat(3,1fr); }
.cz-product-grid.cols-2{ grid-template-columns:repeat(2,1fr); }
.cz-product-grid .cz-product{ height:100%; }
/* list variant */
.cz-product.list{ flex-direction:row; align-items:stretch; }
.cz-product.list .cz-product-thumb{ flex:0 0 220px; padding:15px; }
.cz-product.list .cz-product-thumb a{ aspect-ratio:1/1; }
.cz-product.list .cz-product-body{ padding:20px 20px 20px 10px; }
.cz-product.list .cz-product-body:before{ display:none; }
.cz-product.list .cz-product-title{ font-size:17px; font-weight:600; min-height:0; -webkit-line-clamp:3; margin-top:0; }
.cz-product.list .cz-product-features{ display:block; list-style:disc; margin:4px 0 10px 18px; padding:0; font-size:13px; line-height:20px; color:var(--cz-text-2); max-height:120px; overflow:hidden; }
.cz-product.list .cz-product-features li{ margin:0; }
.cz-product.list .cz-price{ font-size:20px; }
.cz-product.list .cz-product-actions{ margin-top:12px; display:flex; gap:10px; align-items:center; }
.cz-product.list .cz-product-actions .cz-btn{ width:auto; min-width:180px; }
.cz-product.list .cz-quick{ top:auto; bottom:12px; right:12px; flex-direction:row; opacity:1; transform:none; }

/* mini product (image left, text right) */
.cz-product-mini{ display:flex; align-items:center; gap:14px; background:#fff; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:12px; height:100%; position:relative; transition:box-shadow .3s; }
.cz-product-mini:hover{ box-shadow:var(--cz-shadow); }
.cz-product-mini .thumb{ flex:0 0 110px; width:110px; height:110px; display:flex; align-items:center; justify-content:center; border:1px solid var(--cz-border); border-radius:var(--cz-radius); overflow:hidden; }
.cz-product-mini .thumb img{ max-height:100%; width:auto; }
.cz-product-mini .info{ flex:1 1 auto; min-width:0; }
.cz-product-mini .info .title{ font-size:14px; font-weight:500; line-height:20px; margin:0 0 6px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.cz-product-mini .cz-flags{ position:absolute; top:10px; left:10px; }
.cz-product-mini .cz-price{ font-size:14px; }
.cz-mini-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }

/* deal cards (СД) */
.cz-deals{ border:1px solid var(--cz-primary); border-radius:var(--cz-radius); padding:20px; }
.cz-deal{ display:flex; gap:16px; align-items:center; background:#fff; height:100%; }
.cz-deal .thumb{ flex:0 0 46%; border:1px solid var(--cz-border); border-radius:var(--cz-radius); aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; padding:10px; position:relative; overflow:hidden; }
.cz-deal .thumb img{ max-height:100%; width:auto; }
.cz-deal .thumb .cz-flags{ position:absolute; top:10px; left:10px; }
.cz-deal .info{ flex:1 1 auto; min-width:0; }
.cz-deal .info .title{ font-size:14px; font-weight:500; line-height:20px; margin:0 0 6px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.cz-deal .info .warn{ font-size:11px; text-transform:uppercase; color:var(--cz-red); font-weight:700; margin:8px 0 4px; }
.cz-deal .cz-price{ font-size:15px; }
.cz-deal .cz-price .percent{ color:var(--cz-primary); font-size:22px; }
.cz-deal .cz-btn{ margin-top:12px; height:38px; line-height:38px; font-size:12px; padding:0 16px; }
.cz-countdown{ display:inline-flex; gap:4px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:4px 6px; background:#fff; }
.cz-countdown span{ display:flex; flex-direction:column; align-items:center; min-width:34px; padding:0 4px; font-weight:700; font-size:14px; line-height:16px; border-right:1px solid var(--cz-border); }
.cz-countdown span:last-child{ border-right:0; }
.cz-countdown span b{ font-weight:700; }
.cz-countdown span small{ font-size:9px; font-weight:500; color:var(--cz-muted); text-transform:uppercase; line-height:12px; }
.cz-countdown span.sec b{ color:var(--cz-primary); }

/* swiper product sliders */
.cz-slider{ position:relative; }
.cz-slider .swiper{ padding:2px; }
.cz-slider .swiper-slide{ height:auto; }
.cz-slider .swiper-slide > *{ height:100%; }

/* ---------- category listing ---------- */
.cz-listing{ display:grid; grid-template-columns:280px 1fr; gap:30px; align-items:start; }
.cz-sidebar{ position:relative; }
.cz-sidebar-block{ border:1px solid var(--cz-border); border-radius:var(--cz-radius); margin-bottom:20px; background:#fff; }
.cz-sidebar-block > .title{ display:flex; justify-content:space-between; align-items:center; padding:12px 18px; font-size:17px; font-weight:700; border-bottom:1px solid var(--cz-border); }
.cz-sidebar-block > .title .controls{ display:flex; gap:6px; }
.cz-sidebar-block > .title .controls button{ background:none; border:1px solid var(--cz-border); border-radius:4px; font-size:11px; padding:2px 8px; cursor:pointer; color:var(--cz-text-2); font-family:inherit; }
.cz-sidebar-block > .title .controls button:hover{ border-color:var(--cz-primary); color:var(--cz-primary); }
.cz-sidebar-block .frow{ padding:12px 18px; border-bottom:1px solid var(--cz-border); font-size:13px; }
.cz-sidebar-block .frow:last-child{ border-bottom:0; }
/* long option lists scroll inside the block instead of stretching the sidebar */
.cz-sidebar-block .frow .param_box, .cz-sidebar-block .frow .cz-scroll{ max-height:230px; overflow-y:auto; scrollbar-width:thin; padding-right:4px; }
.cz-sidebar-block .frow > label{ display:block; font-size:14px; font-weight:600; margin:0 0 8px; cursor:pointer; position:relative; }
.cz-sidebar-block .frow > label.orange{ color:var(--cz-primary); font-weight:600; }
.cz-sidebar-block .frow > label.orange input{ margin-right:6px; accent-color:var(--cz-primary); }
.cz-sidebar-block .frow .price-range{ display:flex; gap:10px; align-items:center; }
.cz-sidebar-block .frow .price-range span{ display:flex; align-items:center; gap:6px; flex:1 1 50%; color:var(--cz-muted); }
.cz-sidebar-block .frow .price-range input{ width:100%; height:36px; border:1px solid var(--cz-border); border-radius:4px; padding:0 8px; font-size:13px; }
.cz-sidebar-block .frow select{ width:100%; height:38px; border:1px solid var(--cz-border); border-radius:4px; padding:0 10px; font-size:13px; background:#fff; }
.cz-sidebar-block .frow .param_box, .cz-sidebar-block .frow .check-list{ max-height:190px; overflow:auto; padding-right:4px; }
.cz-sidebar-block .frow .col1row, .cz-sidebar-block .frow .col2row{ display:flex; align-items:flex-start; gap:8px; margin-bottom:6px; line-height:18px; color:var(--cz-text-2); float:none; width:auto; overflow:visible; }
.cz-sidebar-block .frow .col1row input, .cz-sidebar-block .frow .col2row input{ margin:2px 0 0; accent-color:var(--cz-primary); flex:0 0 auto; }
.cz-sidebar-block .frow .col1row label{ display:inline; font-weight:500; font-size:13px; margin:0; cursor:pointer; }
.cz-sidebar-block .frow .col1row:hover, .cz-sidebar-block .frow .col2row:hover{ color:var(--cz-primary); }
.cz-sidebar .cz-cat-buttons{ display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:14px; }
.cz-sidebar .cz-cat-buttons a{ display:block; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:8px; text-align:center; }
.cz-sidebar .cz-cat-buttons img{ max-height:40px; width:auto; }
.cz-sidebar-toggle{ display:none; align-items:center; gap:6px; }
.cz-i{ display:inline-block; vertical-align:middle; top:0; line-height:1; }
.cz-i-img{ width:1em; height:1em; }
.cz-toolbar{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:10px 16px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); margin-bottom:20px; background:#fff; font-size:13px; }
.cz-toolbar .cz-views{ display:flex; gap:4px; }
.cz-toolbar .cz-views a{ width:32px; height:32px; border:1px solid var(--cz-border); border-radius:4px; display:flex; align-items:center; justify-content:center; color:#999; }
.cz-toolbar .cz-views a.active, .cz-toolbar .cz-views a:hover{ border-color:var(--cz-primary); color:var(--cz-primary); }
.cz-toolbar .cz-views i.cz-i{ font-size:16px; }
.cz-toolbar .count{ color:var(--cz-muted); }
.cz-toolbar .right{ margin-left:auto; display:flex; align-items:center; gap:10px; }
.cz-toolbar select{ height:34px; border:1px solid var(--cz-border); border-radius:4px; padding:0 8px; font-size:13px; background:#fff; }
.cz-cat-head{ margin-bottom:20px; }
.cz-cat-head.cz-top-head{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.cz-cat-head.cz-top-head .cz-top-jump select{ height:44px; min-width:260px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:0 12px; font-family:inherit; }
.cz-top-offers{ position:relative; }
.cz-top-offers .cz-top-cat{ margin-top:30px; }
.cz-top-offers .cz-top-more{ text-align:center; margin-top:18px; }
.cz-top-offers .cz-top-more .cz-btn{ white-space:normal; height:auto; line-height:1.4; padding:12px 20px; max-width:100%; }
.cz-product .cz-product-extra{ margin:4px 0 8px; font-size:12px; color:var(--cz-text-2); }
.cz-product .cz-product-extra .gift{ margin-bottom:6px; line-height:16px; }
.cz-product .cz-product-extra .until{ color:var(--cz-primary); font-weight:600; }
.cz-product .cz-product-extra .cz-countdown{ padding:2px 4px; }
.cz-product .cz-product-extra .cz-countdown span{ min-width:26px; font-size:12px; line-height:14px; padding:0 2px; }
.cz-product .cz-product-extra .cz-countdown span small{ font-size:8px; }
.cz-cat-head h1{ font-size:28px; margin:0 0 6px; }
.cz-cat-head .desc{ color:var(--cz-text-2); font-size:13px; }
.cz-category-text{ margin-top:30px; padding-top:20px; border-top:1px solid var(--cz-border); font-size:12px; line-height:19px; color:var(--cz-text-2); }
.cz-category-text h1, .cz-category-text h2, .cz-category-text h3, .cz-category-text h4{ font-size:14px; font-weight:700; margin:12px 0 6px; color:var(--cz-text); }
.cz-category-text p{ margin:0 0 8px; }
.cz-category-text ul, .cz-category-text ol{ margin:0 0 8px 18px; padding:0; }
.cz-category-text a{ color:var(--cz-primary); }
.cz-products-wrap{ position:relative; min-height:200px; }
#prodloader{ display:none; position:absolute; inset:0; background:rgba(255,255,255,.7); z-index:50; text-align:center; padding-top:80px; }
.cz-pagination{ display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; padding-top:20px; border-top:1px solid var(--cz-border); }
.cz-pagination .paginate{ display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
.cz-pagination .paginate a, .cz-pagination .paginate span.current{ min-width:36px; height:36px; line-height:34px; padding:0 10px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); text-align:center; font-weight:600; font-size:13px; display:inline-block; }
.cz-pagination .paginate span.current{ background:var(--cz-primary); border-color:var(--cz-primary); color:#fff; }
.cz-pagination .paginate a:hover{ border-color:var(--cz-primary); color:var(--cz-primary); }
.cz-pagination .paginate span.more{ padding:0 4px; }
.cz-pagination .showCount{ margin-left:auto; display:flex; align-items:center; gap:8px; font-size:13px; color:var(--cz-muted); }
.cz-pagination .showCount select{ height:34px; border:1px solid var(--cz-border); border-radius:4px; padding:0 8px; }
body.cz .cz-pagination .paginate{ background:none; border:0; padding:0; margin:0; font-size:13px; }
body.cz .cz-pagination .paginate a, body.cz .cz-pagination .paginate span.current{ margin:0; color:var(--cz-text); }
body.cz .cz-pagination .paginate span.current{ color:#fff; }
body.cz .cz-pagination .paginate a.prev, body.cz .cz-pagination .paginate a.next{ background-image:none; padding:0 14px; display:inline-flex; align-items:center; gap:8px; text-transform:none; }
body.cz .cz-pagination .paginate a.next:after, body.cz .cz-pagination .paginate a.prev:before{ content:""; width:7px; height:7px; border-right:1.5px solid currentColor; border-top:1.5px solid currentColor; transform:rotate(45deg); flex:0 0 auto; }
body.cz .cz-pagination .paginate a.prev:before{ transform:rotate(-135deg); }
body.cz .cz-pagination .paginate a:hover{ color:var(--cz-primary); border-color:var(--cz-primary); }
body.cz .cz-pagination .paginate span.more{ border:0; padding:0 4px; }
.cz-category-text{ margin-top:30px; padding:20px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); font-size:12px; line-height:20px; color:var(--cz-text-2); }
.cz-category-text h1, .cz-category-text h2, .cz-category-text h3{ font-size:16px; }
.cz-empty{ padding:40px; text-align:center; color:var(--cz-muted); font-size:16px; border:1px dashed var(--cz-border); border-radius:var(--cz-radius); }
.cz-special-offers{ margin-bottom:25px; }

/* ---------- product details page ---------- */
.cz-pdp{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; margin-bottom:40px; align-items:start; }
.cz-pdp > *{ min-width:0; }
body.cz .cz-pdp-gallery{ display:flex; gap:14px; position:sticky; top:20px; min-width:0; max-width:100%; text-align:left; }
body.cz .cz-pdp-gallery .thumbs{ flex:0 0 62px; display:flex; flex-direction:column; gap:8px; max-height:560px; overflow:auto; }
body.cz .cz-pdp-gallery .thumbs a{ display:block; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:4px; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; }
body.cz .cz-pdp-gallery .thumbs a:hover, .cz-pdp-gallery .thumbs a.active{ border-color:var(--cz-primary); }
body.cz .cz-pdp-gallery .thumbs img{ max-height:100%; width:auto; }
body.cz .cz-pdp-gallery .mainimg{ flex:1 1 auto; min-width:0; border:1px solid var(--cz-border); border-radius:var(--cz-radius); display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; max-height:560px; padding:20px; position:relative; cursor:zoom-in; overflow:hidden; }
body.cz .cz-pdp-gallery .mainimg img#pic{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
body.cz .cz-pdp-gallery .mainimg img.over{ display:none; }
body.cz .cz-pdp-gallery .cz-flags{ position:absolute; top:12px; left:88px; z-index:2; display:flex; flex-direction:column; gap:4px; }
body.cz .cz-pdp-gallery .promoimg{ position:absolute; right:14px; bottom:14px; max-width:90px; z-index:2; }
.cz-pdp-info .brand{ font-size:13px; color:var(--cz-primary); font-weight:600; text-transform:uppercase; letter-spacing:.5px; }
.cz-pdp-info h1{ font-size:25px; line-height:1.25; margin:4px 0 6px; }
.cz-pdp-info .seller{ font-size:13px; color:var(--cz-text-2); margin-bottom:12px; }
.cz-pdp-info .seller b{ color:var(--cz-text); }
.cz-pdp-info .cz-price{ font-size:24px; margin-bottom:6px; }
.cz-pdp-info .cz-price .old{ font-size:16px; }
.cz-pdp-info .cz-price .new .eur{ font-size:14px; }
.cz-pdp-info .cz-delivery{ font-size:13px; color:var(--cz-text-2); margin:0 0 12px; }
.cz-pdp-info .cz-delivery span{ color:var(--cz-primary); font-weight:700; }
.cz-pdp-info .cz-delivery .eta{ display:inline-block; margin-left:6px; }
.cz-payicons{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 14px; }
.cz-payicons .pi{ height:30px; width:58px; border:1px solid var(--cz-border); border-radius:4px; background-color:#fff; background-repeat:no-repeat; background-position:center; background-size:contain; background-origin:content-box; padding:3px; display:block; position:relative; }
.cz-payicons .pi.off{ opacity:.25; filter:grayscale(1); }
.pi.pay_in_cash{ background-image:url(../images/payments/cashicon.gif); }
.pi.pay_bank{ background-image:url(../images/payments/pmw_bank.gif); }
.pi.pay_stripe, .pi.pay_paysera, .pi.pay_revolut, .pi.pay_borika, .pi.pay_creditcard, .pi.pay_epay{ background-image:url(../images/payments/payment_card.gif); }
.pi.pay_paypal{ background-image:url(../images/payments/pmw_paypal.gif); }
.pi.pay_tbi{ background-image:url(../images/payments/pmw_tbi.png); }
.pi.pay_unicredit{ background-image:url(../images/payments/pmw_unicredit.png); }
.pi.pay_bnp{ background-image:url(../images/payments/pmw_bnp.png); }
.pi.pay_bitcoin{ background-image:url(../images/payments/pmw_bitcoin.png); }
.pi.pay_platiposle{ background-image:url(../images/payments/pmw_platiposle.png); }
.pi.pay_transcard{ background-image:url(../images/payments/pmw_transcard.gif); }
.pi.pay_epay{ background-image:url(../images/payments/pmw_epay.gif); }
.cz-pdp-info .features{ list-style:disc; margin:0 0 16px 18px; padding:0; font-size:13px; line-height:21px; color:var(--cz-text-2); }
.cz-pdp-info .features li b, .cz-pdp-info .features li strong{ color:var(--cz-text); }
.cz-pdp-info .features .red{ color:var(--cz-primary); }
.cz-pdp-info .cz-dotd{ display:flex; align-items:center; gap:12px; margin-bottom:14px; font-size:13px; font-weight:600; }
.cz-pdp-info .options{ display:flex; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
.cz-pdp-info .options select{ height:42px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:0 12px; min-width:180px; background:#fff; }
.cz-pdp-buy{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.cz-qty{ display:inline-flex; align-items:stretch; border:1px solid var(--cz-border); border-radius:var(--cz-radius); overflow:hidden; height:44px; }
.cz-qty a{ width:34px; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:700; color:var(--cz-text); background:#fff; user-select:none; }
.cz-qty a:hover{ background:var(--cz-bg); color:var(--cz-primary); }
.cz-qty input{ width:50px; border:0; border-left:1px solid var(--cz-border); border-right:1px solid var(--cz-border); text-align:center; font-weight:700; font-size:15px; outline:0; }
.cz-pdp-buy .cz-btn{ min-width:170px; }
.cz-pdp-info .cz-stock{ display:inline-flex; align-items:center; gap:6px; padding:0 10px; line-height:28px; border-radius:4px; font-size:12px; font-weight:600; background:#e6f7e6; color:#2a7a25; margin-bottom:14px; }
.cz-pdp-info .cz-stock.warn{ background:#fff3e0; color:#f57c00; }
.cz-pdp-info .cz-stock.out{ background:#fbe9e7; color:#c62828; }
.cz-pdp-info .cz-stock img{ height:14px; width:auto; }
.cz-pdp-info .cz-stock i.cz-i{ font-size:13px; }
.cz-pdp-info .cz-share{ display:flex; align-items:center; gap:10px; font-size:13px; font-weight:600; margin-top:10px; flex-wrap:wrap; }
.cz-pdp-info .cz-share .addthis_toolbox{ display:inline-flex; gap:4px; }
.cz-pdp-info .cz-social-fb{ margin-top:10px; }
.cz-pdp-info .cz-social-fb iframe{ max-width:100%; }

/* legacy price markup (display_price) on the product page */
.cz-price-legacy .new, .cz-price-legacy .old{ display:inline-flex; align-items:baseline; gap:2px; }
.cz-price-legacy sup{ font-size:60%; top:-.5em; }
.cz-price-legacy sub{ font-size:55%; bottom:0; color:var(--cz-muted); font-weight:500; margin-right:10px; }
.cz-price-legacy .old sup, .cz-price-legacy .old span{ text-decoration:line-through; }
.cz-cart-line .thumb i.cz-i{ font-size:34px; color:var(--cz-green); }
body.cz .sidr .cz-mobile-links{ background:var(--cz-primary); }
body.cz .sidr .cz-mobile-links ul li{ border-top:1px solid rgba(255,255,255,.15); }
body.cz .sidr .cz-mobile-links ul li a{ display:block; padding:10px 15px; color:#fff; font-weight:700; text-transform:uppercase; font-size:13px; }

/* offers list */
.cz-offers{ margin:16px 0 0; border-top:2px solid var(--cz-dark); }
.cz-offers .cz-offers-title{ font-size:14px; font-weight:700; text-transform:uppercase; margin:14px 0 8px; letter-spacing:.5px; }
.cz-offer{ border-bottom:2px solid var(--cz-dark); padding:16px 0 18px; }
.cz-offer .name{ font-size:16px; font-weight:700; margin:0 0 2px; }
.cz-offer .seller{ font-size:12px; color:var(--cz-text-2); margin-bottom:8px; }
.cz-offer .seller b{ color:var(--cz-text); }
.cz-offer .line{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:8px; }
.cz-offer .line .cz-price{ font-size:17px; }
.cz-offer .line .eta{ font-size:12px; color:var(--cz-text-2); }
.cz-offer .line .eta span{ color:var(--cz-primary); font-weight:700; }
.cz-offer .cz-payicons{ margin-bottom:12px; }
.cz-offer .cz-payicons .pi{ height:24px; width:46px; }
.cz-offer .cz-btn{ width:100%; max-width:360px; }
.cz-offer .chosen{ display:none; font-size:12px; font-weight:700; color:var(--cz-green); }
.cz-offer.is-top{ border-left:3px solid var(--cz-primary); padding-left:14px; background:#fffaf8; }
.cz-offer.is-top .choose{ display:none; }
.cz-offer.is-top .chosen{ display:inline-flex; align-items:center; gap:6px; }
.cz-offer .line .stock .cz-stock{ font-size:11px; padding:0 8px; line-height:22px; margin:0; }
.cz-offer.unavailable{ opacity:.6; }

/* reassurance */
.cz-reassurance{ background:var(--cz-bg); border-radius:var(--cz-radius); padding:20px 22px; display:flex; flex-direction:column; gap:16px; }
.cz-reassurance .item{ display:flex; gap:14px; align-items:flex-start; }
.cz-reassurance .item .ico{ width:44px; height:44px; flex:0 0 auto; display:flex; align-items:center; justify-content:center; font-size:34px; color:var(--cz-dark); }
.cz-reassurance .item b{ display:block; font-size:14px; }
.cz-reassurance .item span{ font-size:13px; color:var(--cz-text-2); }
.cz-reassurance.row{ flex-direction:row; justify-content:space-around; }

/* tabs */
.cz-tabs{ margin:10px 0 40px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); background:#fff; }
.cz-tabs .cz-tabs-nav{ display:flex; flex-wrap:wrap; list-style:none; margin:0; padding:0 10px; border-bottom:1px solid var(--cz-border); }
.cz-tabs .cz-tabs-nav li a{ display:block; padding:0 18px; line-height:54px; font-size:15px; font-weight:700; text-transform:uppercase; color:var(--cz-text-2); position:relative; }
.cz-tabs .cz-tabs-nav li.active a, .cz-tabs .cz-tabs-nav li a:hover{ color:var(--cz-primary); }
.cz-tabs .cz-tabs-nav li.active a:after{ content:""; position:absolute; left:18px; right:18px; bottom:-1px; height:2px; background:var(--cz-primary); }
.cz-tabs .tab-content{ padding:24px; font-size:14px; line-height:24px; color:var(--cz-text-2); }
.cz-tabs .tab-content .tab-pane{ display:none; }
.cz-tabs .tab-content .tab-pane.active{ display:block; }
.cz-tabs .tab-content img{ max-width:100%; height:auto; }
.cz-tabs .tab-content h2, .cz-tabs .tab-content h3{ font-size:18px; margin:16px 0 8px; }
.cz-tabs .tab-content table{ max-width:100%; }
.cz-tabs .tab-content .heading{ display:none; }
.cz-tabs .tab-content ul.features{ padding-left:18px; }
.cz-tabs .tab-content .manufacturer-logo{ display:block; margin-top:20px; }
.cz-tabs .tab-content .manufacturer-logo img{ max-height:60px; width:auto; }
.cz-tabs .tab-content .cz-feature-table{ width:100%; border-collapse:collapse; margin-bottom:20px; font-size:13px; }
.cz-tabs .tab-content .cz-feature-table td{ padding:8px 12px; border-bottom:1px solid var(--cz-border); }
.cz-tabs .tab-content .cz-feature-table td:first-child{ font-weight:600; color:var(--cz-text); width:35%; }
.cz-tabs .tab-content .table{ font-size:13px; }

/* ---------- cart ---------- */
.cz-cart{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:30px; align-items:start; }
.cz-card{ background:#fff; border:1px solid var(--cz-border); border-radius:var(--cz-radius); margin-bottom:20px; }
.cz-card > .cz-card-title{ padding:16px 22px; border-bottom:1px solid var(--cz-border); font-size:20px; font-weight:700; margin:0; display:flex; align-items:center; gap:10px; }
.cz-card > .cz-card-body{ padding:22px; }
.cz-card .group-title{ font-size:15px; font-weight:700; margin:0; padding:12px 22px; background:var(--cz-bg); border-bottom:1px solid var(--cz-border); }
.cz-card .group-info{ padding:8px 22px 0; font-size:13px; color:var(--cz-text-2); }
.cz-card .group-info span{ color:var(--cz-primary); font-weight:700; }
.cz-cart-line{ display:grid; grid-template-columns:100px minmax(0,1fr) 110px 120px 40px; gap:16px; align-items:center; padding:16px 22px; border-bottom:1px solid var(--cz-border); }
.cz-cart-line:last-child{ border-bottom:0; }
.cz-cart-line .thumb{ width:100px; height:100px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); display:flex; align-items:center; justify-content:center; padding:4px; }
.cz-cart-line .thumb img{ max-height:100%; width:auto; }
.cz-cart-line .name{ font-size:14px; font-weight:600; line-height:20px; margin-bottom:6px; }
.cz-cart-line .meta{ font-size:12px; color:var(--cz-text-2); }
.cz-cart-line .meta .cz-price{ display:inline-flex; font-size:14px; margin-top:4px; }
.cz-cart-line .discount{ color:var(--cz-green); font-size:12px; }
.cz-cart-line .qty .cz-qty{ height:40px; }
.cz-cart-line .qty .cz-qty input{ width:46px; }
.cz-cart-line .total{ font-weight:700; color:var(--cz-primary); font-size:16px; text-align:right; }
.cz-cart-line .total small{ display:block; font-size:12px; color:var(--cz-muted); font-weight:500; }
.cz-cart-line .del a{ display:flex; width:32px; height:32px; align-items:center; justify-content:center; border-radius:50%; color:#999; }
.cz-cart-line .del a:hover{ background:#fbe9e7; color:var(--cz-red); }
.cz-cart-line .del i.cz-i{ font-size:17px; }
.cz-cart-line.voucher .name{ color:var(--cz-green); }
.cz-cart-line .cz-mobile-label{ display:none; }
.cz-cart-continue{ display:inline-flex; align-items:center; gap:6px; font-weight:600; margin:4px 0 20px; }
.cz-cart-continue:before{ content:""; width:7px; height:7px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); }
.cz-summary{ background:var(--cz-bg); border-radius:var(--cz-radius); padding:22px; margin-bottom:20px; }
.cz-summary .row-line{ display:flex; justify-content:space-between; align-items:baseline; padding:6px 0; font-size:14px; color:var(--cz-text-2); gap:10px; }
.cz-summary .row-line .val{ color:var(--cz-primary); font-weight:600; text-align:right; }
.cz-summary .row-line .val small{ display:block; font-size:11px; color:var(--cz-muted); font-weight:500; }
.cz-summary .row-line.total{ border-top:1px solid #e0e0e0; margin-top:8px; padding-top:14px; font-size:18px; font-weight:700; color:var(--cz-text); }
.cz-summary .row-line.total .val{ font-size:20px; }
.cz-summary .cz-promo{ display:flex; gap:8px; margin:16px 0 8px; }
.cz-summary .cz-promo input{ flex:1 1 auto; height:44px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:0 12px; min-width:0; }
.cz-summary .cz-promo .cz-btn{ padding:0 18px; }
.cz-summary .cz-promo-active{ font-size:13px; text-align:center; color:var(--cz-green); margin:4px 0 8px; }
.cz-summary .cz-promo-active b{ color:var(--cz-primary); }
.cz-summary .cz-btn-block{ margin-top:12px; }
.cz-summary .cz-summary-products{ margin:0 0 12px; border-bottom:1px solid #e0e0e0; padding-bottom:8px; }
.cz-summary .cz-summary-products .toggle{ font-size:13px; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:6px; margin-bottom:8px; }
.cz-summary .cz-summary-products .toggle:after{ content:""; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin-top:-3px; transition:transform .3s; }
.cz-summary .cz-summary-products.open .toggle:after{ transform:rotate(-135deg); margin-top:3px; }
.cz-summary .cz-summary-products .items{ display:none; }
.cz-summary .cz-summary-products.open .items{ display:block; }
.cz-summary .cz-summary-products .item{ display:flex; gap:10px; padding:8px 0; font-size:12px; line-height:17px; align-items:center; }
.cz-summary .cz-summary-products .item img{ width:50px; height:50px; object-fit:contain; border:1px solid var(--cz-border); border-radius:4px; background:#fff; flex:0 0 auto; }
.cz-summary .cz-summary-products .item .nm{ flex:1 1 auto; min-width:0; }
.cz-summary .cz-summary-products .item .pr{ color:var(--cz-primary); font-weight:700; white-space:nowrap; }
.cz-summary .cz-summary-products .item .pr small{ display:block; color:var(--cz-muted); font-weight:500; font-size:11px; text-align:right; }
.cz-summary .cz-count{ font-size:13px; color:var(--cz-text-2); margin-bottom:8px; }

/* ---------- checkout ---------- */
.cz-checkout{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:30px; align-items:start; }
.cz-steps{ background:#fff; border:1px solid var(--cz-border); border-radius:var(--cz-radius); }
.cz-step{ border-bottom:1px solid var(--cz-border); }
.cz-step:last-child{ border-bottom:0; }
.cz-step > .cz-step-head{ display:flex; align-items:center; gap:14px; padding:16px 22px; font-size:19px; font-weight:700; color:var(--cz-text); }
.cz-step > .cz-step-head .num{ font-size:17px; color:var(--cz-text-2); font-weight:600; }
.cz-step > .cz-step-head .check{ width:24px; height:24px; border-radius:50%; border:2px solid #cfcfcf; display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; }
.cz-step.done > .cz-step-head .check{ background:#2fb84f; border-color:#2fb84f; }
.cz-step.done > .cz-step-head .check:after{ content:""; width:6px; height:10px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(45deg); margin-top:-3px; }
.cz-step.current > .cz-step-head .check{ border-color:var(--cz-primary); }
.cz-step.current > .cz-step-head .check:after{ content:""; width:10px; height:10px; border-radius:50%; background:var(--cz-primary); }
.cz-step.current > .cz-step-head .num{ color:var(--cz-primary); }
.cz-step.locked > .cz-step-head{ color:#aaa; }
.cz-step.locked > .cz-step-head .num{ color:#aaa; }
.cz-step > .cz-step-head .edit{ margin-left:auto; font-size:13px; font-weight:500; color:var(--cz-text-2); display:inline-flex; align-items:center; gap:4px; }
.cz-step > .cz-step-head .edit:hover{ color:var(--cz-primary); }
.cz-step > .cz-step-head .edit i.cz-i{ font-size:13px; }
.cz-step > .cz-step-body{ padding:6px 22px 24px; }
.cz-step.done > .cz-step-body{ display:none; }
.cz-step .cz-step-summary{ padding:0 22px 16px 60px; font-size:13px; color:var(--cz-text-2); line-height:20px; margin-top:-6px; }
.cz-step .cz-step-summary b{ color:var(--cz-text); }
.cz-guest-login{ font-size:14px; font-weight:600; margin-bottom:16px; display:flex; gap:10px; align-items:center; }
.cz-guest-login .active{ color:var(--cz-primary); }
.cz-guest-login .sep{ color:#ccc; }
.cz-form .cz-field{ display:grid; grid-template-columns:200px minmax(0,1fr); gap:10px 20px; align-items:center; margin-bottom:14px; }
.cz-form .cz-field > label{ font-size:14px; font-weight:600; margin:0; }
.cz-form .cz-field > label .opt{ font-weight:400; color:var(--cz-muted); font-size:12px; }
.cz-form .cz-field .hint{ grid-column:2; font-size:12px; color:var(--cz-muted); margin-top:-6px; }
.cz-form .cz-field .cz-input, .cz-form .cz-field .form-control{ max-width:460px; }
.cz-form .cz-field .inline{ display:flex; gap:20px; align-items:center; }
.cz-form .cz-field .inline label{ display:inline-flex; gap:6px; align-items:center; font-weight:500; margin:0; cursor:pointer; }
.cz-form .cz-field .inline input{ accent-color:var(--cz-primary); }
.cz-form .cz-field.checks{ grid-template-columns:1fr; padding-left:220px; }
.cz-form .cz-field.checks .cz-check{ margin-bottom:8px; }
.cz-form .cz-actions{ display:flex; justify-content:flex-end; gap:12px; margin-top:10px; align-items:center; }
.cz-form .cz-actions .back{ margin-right:auto; }
.cz-radio-cards{ display:flex; flex-direction:column; gap:10px; margin-bottom:14px; }
.cz-radio-cards label{ display:grid; grid-template-columns:28px 44px minmax(0,1fr) auto; align-items:center; gap:16px; padding:14px 18px; background:var(--cz-bg); border:1px solid transparent; border-radius:var(--cz-radius); cursor:pointer; font-weight:500; margin:0; transition:border-color .25s; }
.cz-radio-cards label:hover{ border-color:#ddd; }
.cz-radio-cards label.checked{ border-color:var(--cz-primary); background:#fff5f2; }
.cz-radio-cards label input{ accent-color:var(--cz-primary); width:16px; height:16px; margin:0; }
.cz-radio-cards label .ico{ width:44px; height:34px; background:#fff; border-radius:4px; display:flex; align-items:center; justify-content:center; }
.cz-radio-cards label .ico i.cz-i{ font-size:24px; color:var(--cz-dark); }
.cz-radio-cards label .lbl{ font-size:15px; font-weight:700; }
.cz-radio-cards label .lbl small{ display:block; font-size:12px; font-weight:500; color:var(--cz-text-2); }
.cz-radio-cards label .price{ font-weight:700; color:var(--cz-primary); white-space:nowrap; border:0; background:none; width:auto; height:auto; padding:0; margin:0; }
.cz-radio-cards label .price:empty{ display:none; }
.cz-pay-options{ display:flex; flex-direction:column; gap:6px; margin-bottom:14px; }
.cz-pay-options label{ display:grid; grid-template-columns:22px 70px minmax(0,1fr); align-items:center; gap:14px; padding:10px 14px; border:1px solid transparent; border-radius:var(--cz-radius); cursor:pointer; margin:0; font-weight:500; }
.cz-pay-options label:hover{ background:var(--cz-bg); }
.cz-pay-options label.checked{ border-color:var(--cz-primary); background:#fff5f2; }
.cz-pay-options label input{ accent-color:var(--cz-primary); width:16px; height:16px; margin:0; }
.cz-pay-options label .pi{ height:34px; width:70px; border:1px solid var(--cz-border); border-radius:4px; background-color:#fff; background-repeat:no-repeat; background-position:center; background-size:contain; background-origin:content-box; padding:3px; }
.cz-pay-options label .lbl{ font-size:14px; font-weight:600; }
.cz-pay-options label .lbl small{ display:block; font-size:12px; font-weight:500; color:var(--cz-text-2); }
.cz-pay-extra{ background:var(--cz-bg); border-radius:var(--cz-radius); padding:18px; margin:0 0 16px; font-size:13px; }
.cz-pay-extra .tbi_warning{ margin-bottom:12px; }
.cz-pay-extra .tbi_warning ul{ margin:6px 0 0 18px; }
.cz-pay-extra .tbi_data{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:20px; }
.cz-pay-extra .tbi_data > div{ float:none; width:auto; padding:0; }
.cz-pay-extra table{ width:100%; }
.cz-pay-extra table td{ padding:4px 6px; vertical-align:top; }
.cz-pay-extra input[type=text], .cz-pay-extra select, .cz-pay-extra textarea{ width:100%; max-width:220px; height:34px; border:1px solid var(--cz-border); border-radius:4px; padding:0 8px; background:#fff; }
.cz-pay-extra textarea{ height:70px; }
.cz-pay-extra .InputGeneric{ max-width:120px; }
.cz-pay-extra a{ color:var(--cz-primary); }
.cz-pay-extra .bold{ font-weight:700; }
.cz-review-table{ width:100%; border-collapse:collapse; font-size:14px; }
.cz-review-table th{ text-align:left; padding:10px 12px; border-bottom:2px solid var(--cz-border); font-size:13px; text-transform:uppercase; }
.cz-review-table td{ padding:12px; border-bottom:1px solid var(--cz-border); vertical-align:middle; }
.cz-review-table td.pr{ color:var(--cz-primary); font-weight:700; white-space:nowrap; }
.cz-review-table td.pr small, .cz-review-table td small{ display:block; font-size:11px; color:var(--cz-muted); font-weight:500; }
.cz-review-table tr.total td{ font-weight:700; font-size:16px; }
.cz-review-table .thumb{ width:64px; height:64px; border:1px solid var(--cz-border); border-radius:4px; display:flex; align-items:center; justify-content:center; }
.cz-review-table .thumb img{ max-height:100%; width:auto; }
.cz-review-block{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px; }
.cz-review-block .box{ background:var(--cz-bg); border-radius:var(--cz-radius); padding:18px; font-size:13px; line-height:21px; }
.cz-review-block .box h4{ font-size:15px; margin:0 0 8px; display:flex; justify-content:space-between; align-items:center; }
.cz-review-block .box h4 a{ font-size:12px; font-weight:500; color:var(--cz-primary); }
.cz-review-block .box b{ color:var(--cz-text); }
.cz-order-ok{ display:flex; align-items:center; gap:14px; font-size:26px; font-weight:700; margin-bottom:6px; }
.cz-order-ok .check{ width:32px; height:32px; border-radius:50%; background:#2fb84f; display:inline-flex; align-items:center; justify-content:center; }
.cz-order-ok .check:after{ content:""; width:8px; height:14px; border-right:3px solid #fff; border-bottom:3px solid #fff; transform:rotate(45deg); margin-top:-4px; }
.cz-order-text{ font-size:14px; line-height:24px; color:var(--cz-text-2); }
.cz-order-text p{ margin:0 0 10px; }
.cz-order-text .cz-warranty{ margin-top:20px; padding-top:20px; border-top:1px solid var(--cz-border); font-size:13px; }

/* ---------- newsletter + footer ---------- */
.cz-newsletter{ background:var(--cz-primary) url(../images/redesign/newsletter-img.jpg) no-repeat right center/cover; margin-top:60px; }
.cz-newsletter .cz-container{ display:flex; align-items:center; min-height:240px; padding-top:40px; padding-bottom:40px; }
.cz-newsletter .inner{ max-width:560px; color:#fff; }
.cz-newsletter h2{ color:#fff; font-size:28px; margin:0 0 6px; }
.cz-newsletter p{ margin:0 0 18px; font-size:14px; opacity:.95; }
.cz-newsletter form .line{ display:flex; gap:12px; }
.cz-newsletter form input[type=text], .cz-newsletter form input[type=email]{ flex:1 1 auto; height:46px; border:0; border-radius:var(--cz-radius); padding:0 16px; font-size:14px; min-width:0; }
.cz-newsletter form input[type=submit], .cz-newsletter form button{ height:46px; border:0; border-radius:var(--cz-radius); background:var(--cz-dark); color:#fff; font-weight:700; text-transform:uppercase; padding:0 26px; cursor:pointer; letter-spacing:.5px; }
.cz-newsletter form input[type=submit]:hover, .cz-newsletter form button:hover{ background:#000; }
.cz-newsletter form .cz-check{ color:#fff; margin-top:12px; font-size:13px; }
.cz-newsletter form .cz-check a{ color:#fff; text-decoration:underline; }
.cz-footer{ background:var(--cz-dark); color:#b2b2b2; font-size:13px; line-height:24px; }
.cz-footer a{ color:#b2b2b2; }
.cz-footer a:hover{ color:var(--cz-primary); }
.cz-footer .cz-footer-main{ display:grid; grid-template-columns:1.4fr 1fr 1.3fr 1fr 1fr; gap:30px; padding:55px 15px 40px; }
.cz-footer .cz-footer-about .logo{ display:inline-block; margin-bottom:16px; }
.cz-footer .cz-footer-about .logo img{ max-height:52px; width:auto; }
.cz-footer .cz-footer-about p{ margin:0 0 16px; }
.cz-footer .cz-footer-about .apps{ display:flex; gap:10px; }
.cz-footer .cz-footer-about .apps img{ height:42px; width:auto; }
.cz-footer h3{ color:#fff; font-size:18px; font-weight:600; margin:0 0 18px; }
.cz-footer ul{ list-style:none; margin:0; padding:0; }
.cz-footer ul li{ margin-bottom:6px; }
.cz-footer ul li a{ position:relative; }
.cz-footer .cz-footer-news .news{ margin-bottom:14px; }
.cz-footer .cz-footer-news .news p{ margin:0; }
.cz-footer .cz-footer-news .news .date{ font-size:12px; color:#777; }
.cz-footer .cz-footer-bottom{ border-top:1px solid rgba(255,255,255,.1); padding:22px 15px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.cz-footer .cz-footer-bottom .social{ display:flex; gap:8px; }
.cz-footer .cz-footer-bottom .social a{ width:34px; height:34px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; color:var(--cz-dark); }
.cz-footer .cz-footer-bottom .social a:hover{ background:var(--cz-primary); color:#fff; }
.cz-footer .cz-footer-bottom .social i.cz-i{ font-size:16px; }
.cz-footer .cz-footer-bottom .copy{ text-align:center; font-size:13px; }
.cz-footer .cz-footer-bottom .copy small{ display:block; font-size:9px; color:#666; }
.cz-footer .cz-footer-bottom .payments{ display:flex; gap:8px; align-items:center; }
.cz-footer .cz-footer-bottom .payments img{ height:30px; width:auto; background:#fff; border-radius:4px; padding:2px 4px; }

/* ---------- modals ---------- */
body.cz .modal-content{ border-radius:var(--cz-radius); border:0; box-shadow:0 10px 40px rgba(0,0,0,.25); }
body.cz .modal-header{ border-bottom:1px solid var(--cz-border); padding:16px 22px; }
body.cz .modal-header .modal-title{ font-size:18px; font-weight:700; }
body.cz .modal-footer{ border-top:1px solid var(--cz-border); padding:14px 22px; }
body.cz .modal-body{ padding:22px; }
body.cz .modal .btn{ border-radius:var(--cz-radius); font-family:var(--cz-font); font-weight:600; text-transform:uppercase; font-size:12px; letter-spacing:.5px; padding:9px 18px; }
body.cz .modal .btn-primary{ background:var(--cz-primary); border-color:var(--cz-primary); }
body.cz .modal .btn-primary:hover{ background:var(--cz-dark); border-color:var(--cz-dark); }
body.cz .modal .form-control{ height:42px; border-radius:var(--cz-radius); box-shadow:none; }
.cz-quickview .modal-dialog{ width:900px; max-width:95%; }
.cz-quickview .cz-qv{ display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.cz-quickview .cz-qv .img{ border:1px solid var(--cz-border); border-radius:var(--cz-radius); display:flex; align-items:center; justify-content:center; padding:20px; min-height:300px; }
.cz-quickview .cz-qv .img img{ max-height:360px; width:auto; }
.cz-quickview .cz-qv h3{ font-size:20px; margin:0 0 8px; }
.cz-quickview .cz-qv .cz-price{ font-size:22px; margin-bottom:8px; }
.cz-quickview .cz-qv .features{ list-style:disc; margin:0 0 14px 18px; padding:0; font-size:13px; line-height:20px; color:var(--cz-text-2); max-height:140px; overflow:auto; }
.cz-quickview .cz-qv .cz-delivery{ font-size:13px; color:var(--cz-text-2); margin-bottom:12px; }
.cz-quickview .cz-qv .cz-delivery span{ color:var(--cz-primary); font-weight:700; }
.cz-quickview .cz-qv .options{ display:flex; gap:10px; margin-bottom:12px; flex-wrap:wrap; }
.cz-quickview .cz-qv .options select{ height:40px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:0 10px; min-width:160px; }
.cz-quickview .cz-qv .cz-pdp-buy .cz-btn{ min-width:150px; }
.cz-quickview .cz-qv .more{ display:inline-block; margin-top:14px; font-weight:600; color:var(--cz-primary); }
.cz-quickview .close{ font-size:28px; opacity:.6; }

/* ---------- legacy inner pages: give them the card look ---------- */
body.cz .products-listing.cart{ background:#fff; border:1px solid var(--cz-border); border-radius:var(--cz-radius); margin-bottom:24px; }
body.cz .products-listing.cart > .title, body.cz .products-listing.cart > h1.title{ padding:16px 22px; border-bottom:1px solid var(--cz-border); font-size:20px; font-weight:700; margin:0; background:none; height:auto; line-height:1.3; color:var(--cz-text); border-left:0; border-right:0; border-top:0; }
body.cz .products-listing.cart > .products{ padding:22px; border:0; background:none; }
body.cz .products-listing.cart .form-horizontal .control-label{ font-weight:600; }
body.cz .products-listing.cart .form-control{ height:42px; border-radius:var(--cz-radius); box-shadow:none; border-color:var(--cz-border); }
body.cz .products-listing.cart .form-control:focus{ border-color:var(--cz-primary); box-shadow:none; }
body.cz .products-listing.cart input[type=submit], body.cz .products-listing.cart button[type=submit], body.cz .products-listing.cart .cart-next, body.cz .products-listing.cart input[type=button]{ background:var(--cz-primary); color:#fff; border:0; border-radius:var(--cz-radius); height:42px; line-height:42px; padding:0 22px; font-weight:600; text-transform:uppercase; font-size:13px; cursor:pointer; width:auto; text-align:center; letter-spacing:.5px; }
body.cz .products-listing.cart input[type=submit]:hover, body.cz .products-listing.cart button[type=submit]:hover, body.cz .products-listing.cart .cart-next:hover{ background:var(--cz-dark); background-position:0 0; }
body.cz .products-listing.cart input[type=button]{ background:#ebebeb; color:var(--cz-dark); }
body.cz .products-listing.cart h3{ font-size:18px; }
body.cz .products-listing.cart .news-row{ padding:12px 0; border-bottom:1px solid var(--cz-border); }
body.cz .products-listing.cart .paginate a, body.cz .paginate a{ display:inline-block; min-width:36px; height:36px; line-height:34px; padding:0 10px; border:1px solid var(--cz-border); border-radius:var(--cz-radius); text-align:center; font-weight:600; font-size:13px; margin:2px; }
body.cz .paginate span.current{ display:inline-block; min-width:36px; height:36px; line-height:34px; padding:0 10px; border-radius:var(--cz-radius); background:var(--cz-primary); color:#fff; text-align:center; font-weight:600; font-size:13px; margin:2px; }
body.cz .products-listing.cart .steps{ display:none; }
body.cz .notification{ background:var(--cz-primary); }
body.cz .cookies{ background:var(--cz-dark); color:#fff; font-size:13px; padding:10px 15px; }
body.cz .cookies a{ color:var(--cz-primary); font-weight:600; }
body.cz .cookies a.confirm{ display:inline-block; margin-left:10px; padding:2px 12px; background:var(--cz-primary); color:#fff; border-radius:4px; }
body.cz .paginate{ margin-top:20px; }
body.cz .showCount select{ height:34px; border:1px solid var(--cz-border); border-radius:4px; }

/* legacy mobile sidr menu */
body.cz .sidr.left{ margin-top:0; width:280px; left:-280px; }
body.cz .sidr.left.sidr-open, html.sidr-open body.cz .sidr.left{ left:0; }
.cz-sidr-overlay{ display:none; position:fixed; left:0; top:0; right:0; bottom:0; background:rgba(0,0,0,.45); z-index:999990; }
html.sidr-open .cz-sidr-overlay{ display:block; }
html.sidr-open, html.sidr-open body{ overflow:hidden; }
body.cz .sidr{ font-family:var(--cz-font); background:var(--cz-dark); color:#fff; }
body.cz .sidr ul li{ border-top:1px solid rgba(255,255,255,.08); border-bottom:0; }
body.cz .sidr ul li a{ color:#fff; padding:10px 15px; line-height:20px; font-weight:600; }
body.cz .sidr ul li ul{ border:0; background:rgba(0,0,0,.25); }
body.cz .sidr ul li ul li a{ font-weight:500; font-size:13px; }
body.cz .sidr ul li ul{ display:none; }

/* back to top */
.cz-totop{ position:fixed; right:20px; bottom:20px; width:42px; height:42px; border-radius:50%; background:var(--cz-dark); color:#fff; display:none; align-items:center; justify-content:center; z-index:1000; cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.2); }
.cz-totop:hover{ background:var(--cz-primary); color:#fff; }
.cz-totop:after{ content:""; width:9px; height:9px; border-left:2px solid #fff; border-top:2px solid #fff; transform:rotate(45deg); margin-top:4px; }
.cz-totop.show{ display:flex; }

/* ---------- responsive ---------- */
@media (max-width:1366px){
	:root{ --cz-vmenu-w:24%; }
	.cz-product-grid{ grid-template-columns:repeat(5,1fr); }
	.cz-product-grid.cols-4{ grid-template-columns:repeat(4,1fr); }
	.cz-vmenu-panel > ul > li .megamenu{ width:720px; }
	.cz-footer .cz-footer-main{ grid-template-columns:1.3fr 1fr 1.2fr 1fr 1fr; }
}
@media (max-width:1199px){
	:root{ --cz-vmenu-w:26%; }
	.cz-header-main{ gap:20px; }
	.cz-search select{ max-width:140px; min-width:120px; }
	.cz-hmenu > li > a{ padding:0 12px; font-size:12px; }
	.cz-product-grid{ grid-template-columns:repeat(4,1fr); }
	.cz-product-grid.cols-5{ grid-template-columns:repeat(4,1fr); }
	.cz-product-grid.cols-4{ grid-template-columns:repeat(3,1fr); }
	.cz-mini-grid{ grid-template-columns:repeat(3,1fr); }
	.cz-listing{ grid-template-columns:250px 1fr; gap:20px; }
	.cz-vmenu-panel > ul > li .megamenu{ width:600px; }
	.cz-cart, .cz-checkout{ grid-template-columns:minmax(0,1fr) 320px; gap:20px; }
	.cz-footer .cz-footer-main{ grid-template-columns:1fr 1fr 1fr; }
	.cz-pdp{ gap:24px; }
}
@media (max-width:991px){
	.cz-topbar .cz-topbar-info{ font-size:12px; }
	.cz-header-main{ flex-wrap:wrap; gap:14px; padding:16px 15px; }
	.cz-header-logo{ order:1; }
	.cz-header-actions{ order:2; margin-left:auto; gap:16px; }
	.cz-header-search{ order:3; flex:1 1 100%; }
	.cz-search{ max-width:none; height:44px; }
	.cz-hmenu{ display:none; }
	.cz-nav-contacts{ display:none; }
	.cz-mobile-toggle{ display:flex; }
	.cz-vmenu{ width:auto; }
	.cz-vmenu-panel{ width:300px; }
	.cz-vmenu-panel > ul > li .megamenu{ display:none !important; }
	.cz-hero{ grid-template-columns:1fr; gap:16px; }
	.cz-hero .cz-hero-menu-space{ display:none; }
	.cz-hero .cz-hero-slider{ aspect-ratio:16/7; }
	.cz-hero .cz-hero-banners{ flex-direction:row; }
	.cz-hero .cz-hero-banners > div{ flex:1 1 0; }
	.cz-hero .cz-hero-banners .cz-banner{ aspect-ratio:auto; height:auto; }
	.cz-hero .cz-hero-banners .cz-banner img{ position:static; height:auto; }
	.cz-banner-row{ gap:16px; }
	.cz-product-grid{ grid-template-columns:repeat(3,1fr); gap:14px; }
	.cz-product-grid.cols-5, .cz-product-grid.cols-4{ grid-template-columns:repeat(3,1fr); }
	.cz-mini-grid{ grid-template-columns:repeat(2,1fr); }
	.cz-listing{ grid-template-columns:1fr; }
	.cz-sidebar{ display:none; }
	.cz-sidebar.open{ display:block; }
	.cz-sidebar-toggle{ display:inline-flex; }
	.cz-pdp{ grid-template-columns:1fr; }
	body.cz .cz-pdp-gallery{ position:static; }
	body.cz .cz-pdp-gallery .mainimg{ max-height:420px; }
	.cz-cart, .cz-checkout{ grid-template-columns:1fr; }
	.cz-form .cz-field{ grid-template-columns:1fr; gap:4px; }
	.cz-form .cz-field.checks{ padding-left:0; }
	.cz-form .cz-field .hint{ grid-column:1; }
	.cz-review-block{ grid-template-columns:1fr; }
	.cz-pay-extra .tbi_data{ grid-template-columns:1fr; }
	.cz-footer .cz-footer-main{ grid-template-columns:1fr 1fr; padding:40px 15px 30px; }
	.cz-newsletter{ background-position:70% center; }
	.cz-newsletter .inner{ background:rgba(237,94,67,.85); padding:20px; border-radius:var(--cz-radius); }
	.cz-section{ margin-top:30px; }
	.cz-section-title h2{ font-size:22px; }
	.cz-deals{ padding:14px; }
	.cz-deal{ flex-direction:column; align-items:stretch; }
	.cz-deal .thumb{ flex:0 0 auto; width:100%; aspect-ratio:auto; height:160px; }
}
@media (max-width:767px){
	.cz-topbar{ line-height:32px; font-size:12px; }
	.cz-topbar .cz-topbar-email{ display:none; }
	.cz-header-actions .cz-action > a > span:not(.cz-icon-wrap), .cz-header-actions .cz-action > .cz-action-btn > span:not(.cz-icon-wrap){ display:none; }
	.cz-action-panel{ width:290px; right:-40px; }
	.cz-action-panel:before{ right:60px; }
	.cz-search select{ display:none; }
	.cz-hero .cz-hero-banners{ gap:10px; }
	.cz-hero .cz-hero-slider{ aspect-ratio:16/8; }
	.cz-banner-row{ grid-template-columns:1fr; }
	.cz-product-grid, .cz-product-grid.cols-5, .cz-product-grid.cols-4, .cz-product-grid.cols-3{ grid-template-columns:repeat(2,1fr); gap:10px; }
	.cz-mini-grid{ grid-template-columns:1fr; }
	.cz-product .cz-product-body{ padding:10px; }
	.cz-product .cz-product-thumb{ padding:10px 10px 0; }
	.cz-product.list{ flex-direction:column; }
	.cz-product.list .cz-product-thumb{ flex:0 0 auto; }
	.cz-product.list .cz-product-actions .cz-btn{ width:100%; }
	.cz-toolbar{ gap:8px; padding:8px 10px; }
	.cz-toolbar .count{ display:none; }
	body.cz .cz-pdp-gallery{ flex-direction:column-reverse; }
	body.cz .cz-pdp-gallery .thumbs{ flex-direction:row; flex:0 0 auto; max-height:none; overflow-x:auto; }
	body.cz .cz-pdp-gallery .thumbs a{ flex:0 0 70px; }
	body.cz .cz-pdp-gallery .cz-flags{ left:12px; }
	.cz-pdp-info h1{ font-size:20px; }
	.cz-tabs .cz-tabs-nav li a{ padding:0 12px; line-height:44px; font-size:13px; }
	.cz-tabs .tab-content{ padding:16px; }
	.cz-cart-line{ grid-template-columns:80px minmax(0,1fr) 40px; gap:10px; padding:14px; }
	.cz-cart-line .thumb{ width:80px; height:80px; grid-row:span 2; }
	.cz-cart-line .qty, .cz-cart-line .total{ grid-column:2; text-align:left; display:flex; align-items:center; gap:10px; }
	.cz-cart-line .del{ grid-row:1; grid-column:3; }
	.cz-cart-line .cz-mobile-label{ display:inline; font-size:12px; color:var(--cz-muted); font-weight:500; }
	.cz-radio-cards label{ grid-template-columns:22px 36px minmax(0,1fr); gap:10px; padding:12px; }
	.cz-radio-cards label .price{ grid-column:3; }
	.cz-pay-options label{ grid-template-columns:20px 54px minmax(0,1fr); gap:10px; padding:8px; }
	.cz-pay-options label .pi{ width:54px; }
	.cz-review-table th:nth-child(3), .cz-review-table td:nth-child(3){ display:none; }
	.cz-footer .cz-footer-main{ grid-template-columns:1fr; gap:24px; }
	.cz-footer .cz-footer-bottom{ flex-direction:column; text-align:center; }
	.cz-newsletter h2{ font-size:22px; }
	.cz-newsletter form .line{ flex-direction:column; }
	.cz-page-head{ padding:20px 15px; }
	.cz-page-head h1{ font-size:24px; }
	.cz-reassurance.row{ flex-direction:column; }
	.cz-quickview .cz-qv{ grid-template-columns:1fr; }
	.cz-form .cz-actions{ flex-wrap:wrap; }
	.cz-form .cz-actions .cz-btn{ flex:1 1 100%; }
}
@media (max-width:479px){
	.cz-product-grid, .cz-product-grid.cols-5, .cz-product-grid.cols-4, .cz-product-grid.cols-3{ grid-template-columns:repeat(2,1fr); gap:8px; }
	.cz-product .cz-product-title{ font-size:13px; }
	.cz-header-logo img{ max-height:44px; }
	.cz-header-actions{ gap:12px; }
	.cz-header-actions .cz-action i.cz-i{ font-size:23px; }
}
