/* ==========================================================================
   DISCOUNT MANTRA - GEN Z DESIGN LAYER  (14-11-2026)
   Loaded last, only when inc/boss-genz.php says the new design is on.
   Every rule hangs off  body.gz  so nothing here can touch the old design.
   Look only: no content is hidden from search engines, no link is changed.
   ========================================================================== */

body.gz {
	--gz-bg: #f1eeff;
	--gz-card: #ffffff;
	--gz-ink: #1a1438;
	--gz-muted: #6a6686;
	--gz-line: #e4dffb;
	--gz-pri: #5b3cf5;
	--gz-pri-d: #4527d6;
	--gz-pri-soft: #ebe6ff;
	--gz-lime: #d6f65b;
	--gz-navy: #1a1440;
	--gz-red: #d32f4f;
	--gz-green: #12805c;
	--gz-r: 20px;
	--gz-r-sm: 14px;
	--gz-shadow: 0 1px 2px rgba(26, 20, 64, .04), 0 8px 24px rgba(91, 60, 245, .07);
	--gz-font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

	background: var(--gz-bg) !important;
	color: var(--gz-ink);
	font-family: var(--gz-font);
	-webkit-font-smoothing: antialiased;
}

body.gz,
body.gz button,
body.gz input,
body.gz select,
body.gz textarea,
body.gz h1, body.gz h2, body.gz h3, body.gz h4, body.gz h5, body.gz h6 {
	font-family: var(--gz-font);
}

body.gz ::selection { background: var(--gz-pri); color: #fff; }
body.gz li::marker { color: var(--gz-pri); }

body.gz a { color: var(--gz-pri-d); }
body.gz .content p a:link,
body.gz .content p a:visited { color: var(--gz-pri-d) !important; font-weight: 700; }
body.gz .content p a:link:hover { color: var(--gz-ink) !important; }

body.gz :focus-visible { outline: 3px solid var(--gz-pri); outline-offset: 2px; border-radius: 6px; }

/* ── Page frame ─────────────────────────────────────────────────────────── */
body.gz .site-container { background: transparent; box-shadow: none; border: 0; }
body.gz .site-inner { background: transparent; border: 0; }
body.gz .content-sidebar-wrap,
body.gz .content { border: 0; background: transparent; }
body.gz .content { padding-left: 12px; padding-right: 12px; box-sizing: border-box; }

/* ── Header (logo stays as it is) ───────────────────────────────────────── */
body.gz .site-header { background: transparent; border: 0; }
body.gz .site-header .wrap { padding: 10px 0 6px; background: transparent; }

/* ── Main menu (UberMenu) ───────────────────────────────────────────────── */
body.gz .nav-primary { background: transparent; border: 0; height: auto; }
body.gz .nav-primary > .wrap { background: transparent; }

body.gz .ubermenu.ubermenu-main {
	background: var(--gz-navy) !important;
	border: 0 !important;
	border-radius: 18px;
	box-shadow: var(--gz-shadow);
}
body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0 > .ubermenu-target {
	color: #fff !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	font-family: var(--gz-font);
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
	border-radius: 12px;
}
body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0:hover > .ubermenu-target,
body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0.ubermenu-active > .ubermenu-target,
body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0.ubermenu-current-menu-item > .ubermenu-target,
body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0.ubermenu-current-menu-ancestor > .ubermenu-target {
	color: var(--gz-navy) !important;
	background: var(--gz-lime) !important;
}
body.gz .ubermenu.ubermenu-main .ubermenu-submenu {
	background: #fff !important;
	border: 0 !important;
	border-radius: 16px;
	box-shadow: 0 18px 48px rgba(26, 20, 64, .2) !important;
	overflow: hidden;
}
body.gz .ubermenu.ubermenu-main .ubermenu-submenu .ubermenu-target {
	color: var(--gz-ink) !important;
	font-family: var(--gz-font);
	font-weight: 600;
	border-radius: 10px;
	background: transparent !important;
}
body.gz .ubermenu.ubermenu-main .ubermenu-submenu .ubermenu-target:hover,
body.gz .ubermenu.ubermenu-main .ubermenu-submenu .ubermenu-current-menu-item > .ubermenu-target {
	color: var(--gz-pri-d) !important;
	background: var(--gz-pri-soft) !important;
}
body.gz .ubermenu.ubermenu-main .ubermenu-submenu .ubermenu-item-header > .ubermenu-target {
	color: var(--gz-pri-d) !important;
	font-weight: 800;
}

/* "Menu" button on phones */
body.gz .ubermenu-responsive-toggle.ubermenu-responsive-toggle-main {
	align-items: center;
	gap: 8px;
	height: 46px !important;
	margin: 0 12px;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 16px;
	background: var(--gz-navy) !important;
	color: #fff !important;
	font-family: var(--gz-font);
	font-weight: 700;
	font-size: 15px;
	text-transform: none;
	text-shadow: none !important;
	box-shadow: none !important;
	float: none;
	width: calc(100% - 24px);
	box-sizing: border-box;
}
@media (max-width: 959px) {
	body.gz .ubermenu-responsive-toggle.ubermenu-responsive-toggle-main { display: flex; }
	body.gz .ubermenu.ubermenu-main { margin: 6px 12px 0; }
	body.gz .ubermenu.ubermenu-main:not(.ubermenu-responsive-collapse) { padding: 6px; }
	body.gz .ubermenu.ubermenu-main .ubermenu-item-level-0 > .ubermenu-target { border-radius: 10px; }
	body.gz .ubermenu.ubermenu-main .ubermenu-submenu { box-shadow: none !important; border-radius: 12px; margin: 2px 0 6px; }
}
body.gz .smk-stuck { box-shadow: none; }
body.gz .smk-stuck .ubermenu.ubermenu-main,
body.gz .ubermenu-responsive-toggle.smk-stuck { box-shadow: 0 10px 28px rgba(26, 20, 64, .22) !important; }

/* ── Search ─────────────────────────────────────────────────────────────── */
body.gz .dm-srch-bar { background: transparent; border: 0; box-shadow: none; padding: 10px 12px 4px; }
body.gz .dm-srch-bar > .wrap { background: transparent; }
body.gz .dm-srch-box {
	background: #fff;
	border: 2px solid transparent;
	border-radius: 18px;
	box-shadow: var(--gz-shadow);
	min-height: 52px;
}
body.gz .dm-srch-box:focus-within { border-color: var(--gz-pri); }
body.gz .dm-srch-input { font-family: var(--gz-font); font-weight: 500; color: var(--gz-ink); background: transparent; }
body.gz .dm-srch-input::placeholder { color: var(--gz-muted); opacity: 1; }
body.gz .dm-srch-glass { stroke: var(--gz-muted); }
body.gz .dm-srch-go {
	background: var(--gz-pri);
	color: #fff;
	border: 0;
	border-radius: 14px;
	font-family: var(--gz-font);
	font-weight: 700;
}
body.gz .dm-srch-go:hover { background: var(--gz-pri-d); }
body.gz .dm-srch-pop { border: 0; border-radius: 18px; box-shadow: 0 18px 48px rgba(26, 20, 64, .2); overflow: hidden; font-family: var(--gz-font); }

/* ── Homepage: "deals updated" pill, round categories, hero ─────────────── */
body.gz .boss-home-updated-wrap { margin: 8px 0 4px; text-align: left; }
body.gz .boss-last-updated {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 7px 14px;
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: var(--gz-ink);
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
	max-width: 100%;
	box-sizing: border-box;
	box-shadow: var(--gz-shadow);
}
body.gz .boss-last-updated time { font-weight: 700; color: var(--gz-ink); }
body.gz .boss-last-updated .boss-dot { background: #1fbf75; box-shadow: 0 0 0 4px rgba(31, 191, 117, .18); }

/* the old picture banner for WhatsApp - the new "Join" card under the deals replaces it */
body.gz.home .content > a.social { display: none; }

body.gz .gz-cats {
	display: flex;
	gap: 14px;
	margin: 6px -12px 14px;
	padding: 6px 12px 4px;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x proximity;
}
body.gz .gz-cats::-webkit-scrollbar { display: none; }
body.gz .gz-cat {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	width: 66px;
	color: var(--gz-ink);
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	scroll-snap-align: start;
}
body.gz .gz-cat-ring {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	border-radius: 50%;
	border: 2.5px solid transparent;
	background: linear-gradient(#fff, #fff) padding-box, linear-gradient(135deg, var(--gz-pri), #e0569b) border-box;
	color: var(--gz-pri);
	transition: transform .15s ease;
}
body.gz .gz-cat-ring .gz-ic { width: 26px; height: 26px; }
body.gz .gz-cat:hover .gz-cat-ring,
body.gz .gz-cat:active .gz-cat-ring { transform: scale(1.06); }

body.gz .gz-hero {
	position: relative;
	margin: 0 0 18px;
	padding: 18px;
	border-radius: 26px;
	background: linear-gradient(140deg, #6a4bff 0%, #5b3cf5 45%, #4423d4 100%);
	color: #fff;
	box-shadow: 0 16px 36px rgba(91, 60, 245, .32);
	overflow: hidden;
}
body.gz .gz-hero::before {
	content: "";
	position: absolute;
	right: -70px;
	top: -70px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .09);
	pointer-events: none;
}
body.gz .gz-hero-top { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
body.gz .gz-tag {
	display: inline-block;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--gz-lime);
	color: var(--gz-navy);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
	line-height: 1.2;
}
body.gz .gz-hero-more { color: #fff !important; font-size: 13px; font-weight: 700; text-decoration: none; opacity: .92; white-space: nowrap; }
body.gz .gz-hero-more:hover { text-decoration: underline; opacity: 1; }
body.gz .gz-hero-body { position: relative; display: flex; align-items: center; gap: 14px; margin: 12px 0 14px; }
body.gz .gz-hero-txt { flex: 1 1 auto; min-width: 0; }
body.gz .gz-hero p { margin: 0; padding: 0; color: #fff; }
body.gz .gz-hero-off { display: flex; align-items: baseline; gap: 4px; line-height: .95; font-weight: 800; letter-spacing: -.03em; }
body.gz .gz-hero-off b { font-size: 60px; font-weight: 800; }
body.gz .gz-hero-off span { font-size: 24px; letter-spacing: -.01em; }
body.gz .gz-hero-title { margin-top: 8px !important; font-size: 16px; font-weight: 700; line-height: 1.3; }
body.gz .gz-hero .gz-hero-title a:link,
body.gz .gz-hero .gz-hero-title a:visited,
body.gz .gz-hero .gz-hero-title a:hover {
	color: #fff !important;
	font-weight: 700;
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
body.gz .gz-hero-price { margin-top: 8px !important; font-size: 26px; font-weight: 800; letter-spacing: -.01em; line-height: 1.1; }
body.gz .gz-hero-price del { margin-left: 6px; font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, .75); }
body.gz .gz-hero-img {
	flex: 0 0 112px;
	width: 112px;
	height: 112px;
	border-radius: 20px;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
body.gz .gz-hero-img img { width: 100% !important; height: 100% !important; object-fit: contain; padding: 8px; box-sizing: border-box; float: none !important; margin: 0; }
body.gz .gz-hero-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 18px;
	border-radius: 16px;
	background: #fff;
	color: var(--gz-pri-d) !important;
	font-size: 16px;
	font-weight: 800;
	text-decoration: none !important;
	transition: transform .15s ease, background .15s ease;
}
body.gz .gz-hero-btn:hover { background: var(--gz-lime); color: var(--gz-navy) !important; transform: translateY(-1px); }

/* ── Listing head: H1, shop-for, intro, chips, sort & filter ────────────── */
body.gz .boss-shop-container { background: transparent; }
body.gz h1,
body.gz .woocommerce-products-header__title {
	font-style: normal;
	font-weight: 800;
	letter-spacing: -.02em;
	color: var(--gz-ink) !important;
	line-height: 1.15;
	padding: 0;
}
body.gz .woocommerce-products-header__title { font-size: clamp(1.45rem, 5.4vw, 2.1rem); margin: 10px 0 12px; }

body.gz .dm-aud span { color: var(--gz-muted); font-weight: 700; }
body.gz .dm-aud a,
body.gz .boss-pc-chip,
body.gz .dm-chip {
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: var(--gz-ink) !important;
	font-family: var(--gz-font);
	font-weight: 700;
	box-shadow: 0 1px 2px rgba(26, 20, 64, .06);
	transition: background .15s ease, color .15s ease, transform .15s ease;
}
body.gz .boss-pc-chip { padding: 10px 16px; font-size: 14px; }
body.gz .dm-aud a { padding: 9px 16px; }
body.gz .dm-aud a:hover,
body.gz .boss-pc-chip:hover,
body.gz .dm-chip:hover { background: var(--gz-pri-soft); color: var(--gz-pri-d) !important; }
body.gz .dm-aud a.is-on,
body.gz .boss-pc-chip.is-active,
body.gz .dm-chip.is-active,
body.gz .dm-chip[aria-pressed="true"] { background: var(--gz-pri); color: #fff !important; box-shadow: 0 6px 14px rgba(91, 60, 245, .3); }
body.gz .boss-pc-chips { margin-left: -12px; margin-right: -12px; padding: 4px 12px 14px; }

body.gz .dm-home-intro,
body.gz .term-description,
body.gz .archive-description { color: var(--gz-muted); font-size: 14.5px; line-height: 1.6; background: transparent; border: 0; }
body.gz .dm-intro-more { color: var(--gz-pri-d) !important; font-family: var(--gz-font); font-weight: 700; }

body.gz .dm-toolbar { background: transparent; border: 0; box-shadow: none; }
body.gz .dm-toolbar-label { color: var(--gz-muted); font-weight: 700; }
body.gz .dm-toolbar-toggle,
body.gz .dm-toolbar > button {
	border: 0;
	border-radius: 999px;
	background: var(--gz-navy);
	color: #fff;
	font-family: var(--gz-font);
	font-weight: 700;
	padding: 10px 16px;
	box-shadow: none;
}

body.gz .dm-trust-strip { background: #e3f7ec; color: #0d5f43; border-radius: var(--gz-r-sm); padding: 10px 14px; font-weight: 500; }
body.gz .dm-trust-strip a { color: #0a4a35 !important; font-weight: 700; }

/* ── Deal cards: tall cards in a grid ───────────────────────────────────── */
body.gz ul.products,
body.gz.woocommerce ul.products,
body.gz.woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px !important;
	padding: 0 !important;
	margin: 0 0 6px !important;
	grid-auto-flow: row dense; /* a full-width strip between cards never leaves holes in a row */
}
body.gz ul.products::before,
body.gz ul.products::after { content: none !important; display: none !important; }
@media (min-width: 640px)  { body.gz ul.products, body.gz.woocommerce ul.products, body.gz.woocommerce-page ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px !important; } }
@media (min-width: 960px)  { body.gz ul.products, body.gz.woocommerce ul.products, body.gz.woocommerce-page ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px !important; } }
@media (min-width: 1240px) { body.gz ul.products, body.gz.woocommerce ul.products, body.gz.woocommerce-page ul.products { grid-template-columns: repeat(5, minmax(0, 1fr)); } }

body.gz ul.products li.product,
body.gz.woocommerce ul.products li.product,
body.gz.woocommerce-page ul.products li.product {
	width: auto !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}
/* full-width rows the toolkit drops between cards (WhatsApp strip etc.) */
body.gz ul.products > li:not(.product) { grid-column: 1 / -1; }
body.gz ul.products > li.dm-strip { border: 0; border-radius: var(--gz-r); background: var(--gz-navy); color: #fff; padding: 12px 14px; }
body.gz ul.products > li.dm-strip .dm-strip-text { color: #fff; font-weight: 700; }
body.gz ul.products > li.dm-strip .dm-strip-btn { border-radius: 999px; font-weight: 800; }

body.gz .boss-product-card {
	display: flex;
	background: var(--gz-card);
	border: 0;
	border-radius: var(--gz-r);
	box-shadow: var(--gz-shadow);
	min-height: 0;
	transition: transform .18s ease, box-shadow .18s ease;
}
body.gz .boss-product-card:hover { transform: translateY(-3px); box-shadow: 0 2px 4px rgba(26, 20, 64, .05), 0 16px 34px rgba(91, 60, 245, .14); }
body.gz .boss-card-inner {
	flex: 1 1 auto;
	min-width: 0;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
	padding: 8px 8px 12px;
}

body.gz .boss-image-wrapper {
	flex: 0 0 auto;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	align-self: stretch;
	border-radius: 14px;
	background: #f1edff;
	overflow: hidden;
}
/* soft colour behind each photo, cycling through five tints */
body.gz ul.products li.product:nth-child(5n+2) .boss-image-wrapper { background: #ffe9ef; }
body.gz ul.products li.product:nth-child(5n+3) .boss-image-wrapper { background: #e6f6ec; }
body.gz ul.products li.product:nth-child(5n+4) .boss-image-wrapper { background: #fff1dc; }
body.gz ul.products li.product:nth-child(5n+5) .boss-image-wrapper { background: #e3f0ff; }
body.gz .boss-main-image-link { display: block; width: 100%; height: 100%; }
body.gz .boss-main-image {
	width: 100% !important;
	height: 100% !important;
	padding: 9%;
	box-sizing: border-box;
	object-fit: contain;
	border-radius: 0;
	background: transparent;
	mix-blend-mode: multiply; /* white photo backgrounds melt into the tint */
	transition: transform .25s ease;
}
body.gz .boss-product-card:hover .boss-main-image { transform: scale(1.05); }

body.gz .boss-discount-badge {
	top: 8px;
	left: 8px;
	width: auto;
	height: auto;
	flex-direction: row;
	align-items: baseline;
	gap: 3px;
	padding: 6px 10px;
	border: 0;
	border-radius: 999px;
	background: var(--gz-red);
	box-shadow: none;
	line-height: 1;
}
body.gz .boss-discount-percent { font-size: 12.5px; font-weight: 800; letter-spacing: 0; }
body.gz .boss-discount-text { font-size: 10.5px; font-weight: 800; margin: 0; letter-spacing: .03em; }

body.gz .boss-content-right { flex: 1 1 auto; gap: 7px; padding: 0 4px; }
body.gz .boss-product-title { margin: 0; font-size: 14px; font-weight: 700; line-height: 1.32; color: var(--gz-ink); }
body.gz .boss-product-title a { color: var(--gz-ink) !important; min-height: 2.64em; }
body.gz .boss-product-title a:hover { color: var(--gz-pri-d) !important; }

body.gz .boss-price-row { gap: 2px 7px; align-items: baseline; }
body.gz .boss-sale-price { font-size: 20px; font-weight: 800; color: var(--gz-ink); letter-spacing: -.01em; line-height: 1.1; }
body.gz .boss-regular-price { font-size: 12.5px; font-weight: 500; color: var(--gz-muted); }
body.gz .boss-updated-time { flex: 1 0 100%; margin: 2px 0 0; font-size: 11.5px; font-weight: 500; color: var(--gz-muted); }
body.gz .boss-updated-time svg { stroke: var(--gz-muted); }

body.gz .dm-card-facts { font-size: 12px; color: var(--gz-muted); gap: 2px 8px; }
body.gz .boss-coupon-badge {
	align-self: flex-start;
	border: 0;
	border-radius: 999px;
	background: var(--gz-lime);
	color: var(--gz-navy);
	font-size: 11.5px;
	font-weight: 800;
	padding: 5px 10px;
}
body.gz .boss-coupon-badge .boss-coupon-icon { stroke: var(--gz-navy); }

body.gz .boss-brand-row { margin-top: auto; padding-top: 2px; gap: 8px; min-height: 0; }
body.gz .boss-brand-row > img { mix-blend-mode: multiply; }
body.gz .boss-brand-text { font-style: normal; color: var(--gz-muted); font-size: 12px; font-weight: 600; }
body.gz .boss-brand-row .boss-action-row { flex: 1 1 100%; }

body.gz .boss-buy-btn {
	justify-content: center;
	width: 100%;
	box-sizing: border-box;
	min-height: 40px;
	padding: 9px 12px;
	border-radius: 999px;
	background: var(--gz-pri);
	color: #fff !important;
	font-family: var(--gz-font);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	white-space: nowrap;
	transition: background .15s ease, transform .15s ease;
}
body.gz .boss-buy-btn:hover { background: var(--gz-pri-d); color: #fff !important; transform: translateY(-1px); }
body.gz .boss-buy-btn .boss-cart-icon { width: 14px; height: 14px; }
@media (max-width: 380px) {
	body.gz ul.products .boss-buy-btn .boss-cart-icon { display: none; }
	body.gz .boss-sale-price { font-size: 18px; }
}

/* ── Pagination ─────────────────────────────────────────────────────────── */
body.gz .boss-pagination { margin: 18px 0 8px; gap: 10px; }
body.gz .boss-pagination-view-more .boss-buy-btn {
	min-height: 54px;
	border-radius: 18px;
	background: var(--gz-navy);
	font-size: 16px;
}
body.gz .boss-pagination-view-more .boss-buy-btn:hover { background: var(--gz-pri); }
body.gz .boss-page-btn {
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: var(--gz-ink) !important;
	font-family: var(--gz-font);
	font-weight: 700;
	box-shadow: var(--gz-shadow);
}
body.gz a.boss-page-btn:hover { background: var(--gz-pri); color: #fff !important; }
body.gz .boss-page-btn.boss-next { background: var(--gz-pri); color: #fff !important; }
body.gz .boss-page-btn.boss-page-disabled { opacity: .45; background: #fff; color: var(--gz-muted) !important; }

/* ── "Join" card under the deals ────────────────────────────────────────── */
body.gz .gz-join {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 16px 0;
	padding: 18px;
	border-radius: 24px;
	background: var(--gz-navy);
	color: #fff;
}
body.gz .gz-join-txt { flex: 1 1 auto; min-width: 0; }
body.gz .gz-join-txt b { display: block; font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; }
body.gz .gz-join-txt span { display: block; margin-top: 4px; font-size: 13.5px; line-height: 1.45; color: #cfc9ee; }
body.gz .gz-join-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 76px;
	min-height: 52px;
	padding: 0 20px;
	border-radius: 16px;
	background: var(--gz-lime);
	color: var(--gz-navy) !important;
	font-size: 16px;
	font-weight: 800;
	text-decoration: none !important;
	transition: transform .15s ease;
}
body.gz .gz-join-btn:hover { transform: scale(1.05); }

/* ── FAQ blocks, long text blocks, breadcrumb ───────────────────────────── */
body.gz .dm-cat-faq,
body.gz .termandcond,
body.gz .category-footer-content,
body.gz .dm-top-picks,
body.gz .dm-tp {
	background: #fff;
	border: 0;
	border-radius: var(--gz-r);
	box-shadow: var(--gz-shadow);
	padding: 18px 16px;
	margin: 16px 12px;
	color: var(--gz-ink);
	box-sizing: border-box;
}
body.gz .content .dm-cat-faq,
body.gz .content .dm-top-picks,
body.gz .content .dm-tp { margin-left: 0; margin-right: 0; }
body.gz .termandcond,
body.gz .category-footer-content { max-width: 1140px; }
@media (min-width: 1164px) { body.gz .termandcond, body.gz .category-footer-content { margin-left: auto; margin-right: auto; } }
body.gz h2, body.gz h3, body.gz h4 { color: var(--gz-ink); font-weight: 800; letter-spacing: -.01em; }
body.gz .dm-cat-faq h2,
body.gz .termandcond h2,
body.gz .category-footer-content h2 { font-size: 1.2rem; margin: 14px 0 8px; }
body.gz .dm-cat-faq h2:first-child,
body.gz .termandcond > h2:first-child { margin-top: 0; }
body.gz .termandcond h3 { font-size: 1rem; margin: 14px 0 4px; }
body.gz .termandcond p,
body.gz .termandcond li { color: #3d3859; font-size: 14.5px; line-height: 1.65; }
body.gz .dm-cat-faq details {
	border: 0;
	border-radius: var(--gz-r-sm);
	background: var(--gz-bg);
	margin: 8px 0;
	padding: 0;
}
body.gz .dm-cat-faq summary { padding: 13px 14px; font-weight: 700; color: var(--gz-ink); cursor: pointer; border-radius: var(--gz-r-sm); }
body.gz .dm-cat-faq details[open] summary { color: var(--gz-pri-d); }
body.gz .dm-cat-faq details > *:not(summary) { padding: 0 14px 13px; margin: 0; color: #3d3859; font-size: 14.5px; line-height: 1.6; }

body.gz .boss-breadcrumb { padding: 10px 0 10px; font-weight: 600; }
body.gz .boss-breadcrumb li { color: var(--gz-muted); }
body.gz .boss-breadcrumb a { color: var(--gz-muted) !important; font-weight: 600; }
body.gz .boss-breadcrumb a:hover { color: var(--gz-pri-d) !important; }
body.gz .boss-breadcrumb li[aria-current="page"],
body.gz .boss-breadcrumb li span[aria-current="page"] { color: var(--gz-ink); font-weight: 700; }

/* ── Deal page ──────────────────────────────────────────────────────────── */
body.gz.single-product div.product { background: transparent; border: 0; padding: 0; }
body.gz.single-product .entry { border: 0; padding: 0; }

body.gz.single-product .woocommerce-product-gallery {
	background: #fff;
	border-radius: 24px;
	box-shadow: var(--gz-shadow);
	padding: 12px;
	box-sizing: border-box;
	overflow: hidden;
}
body.gz.single-product .woocommerce-product-gallery__image img { border-radius: 14px; }

body.gz.single-product .summary.entry-summary { box-sizing: border-box; }
body.gz.single-product .product_title.entry-title {
	font-size: clamp(1.2rem, 4.8vw, 1.7rem);
	font-style: normal;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -.015em;
	color: var(--gz-ink) !important;
	padding: 0;
	margin: 14px 0 8px !important;
}
body.gz .entry-header h1::before,
body.gz .entry-header h1::after { content: none; }
body.gz .dm-product-meta { color: var(--gz-muted); font-size: 13px; font-weight: 600; }
body.gz .dm-product-meta .dm-muted { color: var(--gz-muted); }
body.gz.single-product .woocommerce-product-details__short-description p { color: #3d3859; font-size: 15px; line-height: 1.6; }
body.gz .dm-stale-note { border: 0; border-radius: var(--gz-r-sm); background: #fff4d9; color: #6b4a00; padding: 10px 14px; font-size: 13.5px; }

body.gz .boss-single-price-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 12px 0;
	padding: 16px 18px;
	border: 0;
	border-radius: var(--gz-r);
	background: #fff;
	box-shadow: var(--gz-shadow);
}
body.gz .boss-single-prices { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
body.gz .boss-single-sale-price { font-size: 34px; font-weight: 800; letter-spacing: -.02em; color: var(--gz-ink); line-height: 1.05; }
body.gz .boss-single-mrp { font-size: 14px; font-weight: 600; color: var(--gz-muted); }
body.gz .boss-single-mrp del { color: var(--gz-muted); }
body.gz .boss-single-discount-badge {
	flex: 0 0 auto;
	display: inline-flex;
	flex-direction: row;
	align-items: baseline;
	gap: 4px;
	width: auto;
	height: auto;
	padding: 8px 14px;
	border: 0;
	border-radius: 999px;
	background: var(--gz-red);
	color: #fff;
	box-shadow: none;
	line-height: 1;
}
body.gz .boss-single-discount-percent { font-size: 16px; font-weight: 800; }
body.gz .boss-single-discount-text { font-size: 12px; font-weight: 800; letter-spacing: .04em; }

body.gz .boss-single-coupon {
	border: 0;
	border-radius: var(--gz-r-sm);
	background: var(--gz-lime);
	color: var(--gz-navy);
	padding: 12px 14px;
}
body.gz .boss-single-coupon svg { stroke: var(--gz-navy); }
body.gz .boss-single-coupon-label,
body.gz .boss-single-coupon-value { color: var(--gz-navy); font-weight: 800; }
body.gz .boss-single-coupon-hint { color: #3a4416; }

body.gz .boss-single-buy-row { margin: 12px 0; }
body.gz .boss-single-buy-btn {
	min-height: 58px;
	border-radius: 18px;
	font-size: 17px;
	box-shadow: 0 12px 26px rgba(91, 60, 245, .34);
}
body.gz .boss-single-buy-btn .boss-cart-icon { width: 18px; height: 18px; }

body.gz .dm-wa-share { border-radius: 16px; min-height: 50px; font-family: var(--gz-font); font-weight: 800; box-sizing: border-box; }
body.gz .dm-wa-share.is-mini { min-height: 0; border-radius: 999px; }

body.gz .dm-pa {
	border: 0;
	border-radius: var(--gz-r);
	background: #fff;
	box-shadow: var(--gz-shadow);
	font-family: var(--gz-font);
	color: var(--gz-ink);
	padding: 16px;
}
body.gz .dm-pa-ic { background: var(--gz-pri-soft); box-shadow: none; border-radius: 14px; }
body.gz .dm-pa-head small { color: var(--gz-muted); }
body.gz .dm-pa-watch { background: var(--gz-pri-soft); color: var(--gz-pri-d); }
body.gz .dm-pa-chip { border: 0; background: var(--gz-bg); color: var(--gz-ink); font-family: var(--gz-font); }
body.gz .dm-pa-chip:hover { background: var(--gz-pri-soft); }
body.gz .dm-pa-chip.is-on { background: var(--gz-pri); color: #fff; box-shadow: none; }
body.gz .dm-pa-chip.is-on i { color: var(--gz-lime); }
body.gz .dm-pa-btn {
	min-height: 52px;
	border-radius: 16px;
	background: var(--gz-navy);
	box-shadow: none;
	font-family: var(--gz-font);
	font-weight: 800;
}
body.gz .dm-pa-btn:hover { background: var(--gz-pri); filter: none; }
body.gz .dm-pa.is-on { background: #e3f7ec; box-shadow: none; }

body.gz .dm-disclosure { color: var(--gz-muted); font-size: 12.5px; }
body.gz .dm-disclosure-wrap { background: transparent; }
body.gz .dm-report-btn { color: var(--gz-muted); font-family: var(--gz-font); }
body.gz .dm-report-btn:hover { color: var(--gz-red); }
body.gz .boss-single-cat-banner img,
body.gz .boss-single-brand img { mix-blend-mode: multiply; }

/* price history box (toolkit) */
body.gz .dm-ph,
body.gz .dm-ph-box {
	border: 0;
	border-radius: var(--gz-r);
	background: #fff;
	box-shadow: var(--gz-shadow);
	font-family: var(--gz-font);
}

/* description + tabs */
body.gz.single-product .woocommerce-tabs {
	clear: both;
	background: #fff;
	border-radius: var(--gz-r);
	box-shadow: var(--gz-shadow);
	padding: 16px;
	margin: 18px 0;
	box-sizing: border-box;
}
body.gz.single-product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 12px; border: 0; }
body.gz.single-product .woocommerce-tabs ul.tabs::before,
body.gz.single-product .woocommerce-tabs ul.tabs li::before,
body.gz.single-product .woocommerce-tabs ul.tabs li::after { content: none; border: 0; box-shadow: none; display: none; }
body.gz.single-product .woocommerce-tabs ul.tabs li {
	border: 0;
	border-radius: 999px;
	background: var(--gz-bg);
	margin: 0 6px 6px 0;
	padding: 0;
}
body.gz.single-product .woocommerce-tabs ul.tabs li a { padding: 9px 16px; color: var(--gz-ink) !important; font-weight: 700; }
body.gz.single-product .woocommerce-tabs ul.tabs li.active { background: var(--gz-pri); }
body.gz.single-product .woocommerce-tabs ul.tabs li.active a { color: #fff !important; }
body.gz.single-product .woocommerce-tabs .panel { margin: 0; padding: 0; color: #3d3859; line-height: 1.65; }
body.gz.single-product .woocommerce-tabs .panel h2 { font-size: 1.15rem; }
body.gz .dm-more-links a {
	display: inline-block;
	margin: 3px 4px 3px 0;
	padding: 7px 13px;
	border-radius: 999px;
	background: var(--gz-pri-soft);
	color: var(--gz-pri-d) !important;
	font-size: 13.5px;
	font-weight: 700;
	text-decoration: none;
}
body.gz .dm-more-links a:hover { background: var(--gz-pri); color: #fff !important; }

body.gz table { box-shadow: 0 0 0 1px var(--gz-line); border-radius: var(--gz-r-sm); font-family: var(--gz-font); overflow: hidden; }
body.gz td, body.gz th { border-color: var(--gz-line); padding: 8px 10px; }
body.gz th { background: var(--gz-bg); color: var(--gz-ink); font-weight: 700; }

body.gz .dm-related { clear: both; margin: 22px 0 8px; }
body.gz .dm-related-title { font-size: 1.25rem; margin: 0 0 12px; }
body.gz .dm-related-all a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	margin-top: 12px;
	border-radius: 18px;
	background: var(--gz-navy);
	color: #fff !important;
	font-weight: 800;
	text-decoration: none;
}
body.gz .dm-related-all a:hover { background: var(--gz-pri); }

/* sticky buy bar on phones (toolkit) */
body.gz .dm-buybar {
	left: 10px;
	right: 10px;
	bottom: calc(10px + env(safe-area-inset-bottom));
	padding: 8px 8px 8px 16px;
	border: 0;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 12px 34px rgba(26, 20, 64, .26);
	font-family: var(--gz-font);
}
body.gz .dm-buybar-price { color: var(--gz-ink); font-size: 21px; letter-spacing: -.01em; }
body.gz .dm-buybar-off { color: var(--gz-red); }
body.gz .dm-buybar-btn { min-height: 52px; border-radius: 16px; background: var(--gz-pri); font-weight: 800; }
body.gz .dm-buybar-btn:active { background: var(--gz-pri-d); }
body.gz.dm-has-appnav .dm-buybar { bottom: calc(74px + env(safe-area-inset-bottom)); padding-bottom: 8px; }

/* ── Ordinary pages & posts ─────────────────────────────────────────────── */
body.gz.page .content > .entry,
body.gz.single-post .content > .entry,
body.gz.error404 .content > .entry,
body.gz.search-no-results .content > .entry {
	background: #fff;
	border: 0;
	border-radius: var(--gz-r);
	box-shadow: var(--gz-shadow);
	padding: 18px 16px;
	margin-top: 12px;
}
body.gz .entry-title { color: var(--gz-ink) !important; font-weight: 800; padding-top: 0; }
body.gz .entry-title a { color: var(--gz-ink) !important; }
body.gz .entry-content { color: #3d3859; line-height: 1.7; }
body.gz .widget-title { color: var(--gz-ink) !important; font-weight: 800; }

body.gz button,
body.gz input[type="button"],
body.gz input[type="reset"],
body.gz input[type="submit"],
body.gz .button { border-radius: 14px; font-family: var(--gz-font); font-weight: 700; }
body.gz .entry-content input[type="submit"],
body.gz .entry-content .button,
body.gz .wpforms-submit { background: var(--gz-pri) !important; color: #fff !important; border: 0 !important; }
body.gz input[type="text"],
body.gz input[type="email"],
body.gz input[type="tel"],
body.gz input[type="number"],
body.gz input[type="url"],
body.gz textarea,
body.gz select { border: 1.5px solid var(--gz-line); border-radius: 14px; font-family: var(--gz-font); color: var(--gz-ink); }
body.gz input:focus,
body.gz textarea:focus,
body.gz select:focus { border-color: var(--gz-pri); outline: 0; }
body.gz .dm-srch-input,
body.gz .dm-srch-input:focus,
body.gz .dm-pa .dm-pa-own input { border: 0 !important; border-radius: 0; }

/* ── Footer ─────────────────────────────────────────────────────────────── */
body.gz .footer-widgets {
	background: #fff;
	border: 0;
	border-radius: 24px;
	box-shadow: var(--gz-shadow);
	margin: 16px 12px;
	padding: 18px 12px 16px;
	color: var(--gz-ink);
}
body.gz .footer-widgets .wrap { background: transparent; }
body.gz .footer-widgets .footer-widgets-1::before { font-weight: 800; font-size: 16px; color: var(--gz-ink); }
body.gz .site-footer {
	background: var(--gz-navy);
	border: 0;
	border-radius: 26px 26px 0 0;
	margin-top: 18px;
	padding: 24px 16px 28px;
	color: #cfc9ee;
	font-size: 13.5px;
	line-height: 1.9;
}
body.gz .site-footer .wrap { background: transparent; }
body.gz .site-footer a { color: #fff !important; font-weight: 600; text-decoration: none; }
body.gz .site-footer a:hover { color: var(--gz-lime) !important; }
body.gz .dm-footer-links { color: #cfc9ee; }

/* ── Floating bits (toolkit) ────────────────────────────────────────────── */
body.gz .dm-lr-pill { background: var(--gz-navy); border-radius: 999px; font-family: var(--gz-font); font-weight: 800; }
body.gz .dm-lr-pill:hover { background: var(--gz-pri); }
body.gz .dm-wa,
body.gz .dm-app { border-radius: 22px; font-family: var(--gz-font); }
body.gz .dm-wa-go,
body.gz .dm-app-go { border-radius: 16px; }
body.gz .dm-appnav {
	left: 10px;
	right: 10px;
	bottom: calc(8px + env(safe-area-inset-bottom));
	padding: 6px;
	border: 0;
	border-radius: 22px;
	box-shadow: 0 12px 34px rgba(26, 20, 64, .24);
	font-family: var(--gz-font);
}
body.gz .dm-appnav a { color: var(--gz-muted) !important; font-weight: 700; border-radius: 16px; }
body.gz .dm-appnav a.is-on { color: var(--gz-pri-d) !important; background: var(--gz-pri-soft); }

/* ── Bottom bar on phones ───────────────────────────────────────────────── */
body.gz .gz-nav { display: none; }
@media (max-width: 768px) {
	body.gz .gz-nav {
		position: fixed;
		z-index: 99950;
		left: 10px;
		right: 10px;
		bottom: calc(8px + env(safe-area-inset-bottom));
		display: flex;
		justify-content: space-around;
		gap: 2px;
		padding: 6px;
		border-radius: 22px;
		background: rgba(255, 255, 255, .96);
		-webkit-backdrop-filter: blur(12px);
		backdrop-filter: blur(12px);
		box-shadow: 0 12px 34px rgba(26, 20, 64, .24);
	}
	body.gz .gz-nav-a {
		flex: 1 1 0;
		min-width: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 3px;
		padding: 7px 2px 6px;
		border-radius: 16px;
		color: var(--gz-muted) !important;
		font-size: 11px;
		font-weight: 700;
		line-height: 1.1;
		text-decoration: none !important;
	}
	body.gz .gz-nav-a .gz-ic { width: 22px; height: 22px; }
	body.gz .gz-nav-a.is-on { color: var(--gz-pri-d) !important; background: var(--gz-pri-soft); }
	body.gz .gz-nav-a:active { background: var(--gz-pri-soft); }

	/* the installed app has its own bar; a deal page has the Buy bar; search open covers the screen */
	body.gz.dm-has-appnav .gz-nav,
	body.gz.dm-buybar-on .gz-nav,
	body.gz.single-product .gz-nav,
	body.gz.dm-bar-open .gz-nav { display: none; }

	/* leave room for the bar and lift the floating buttons above it */
	body.gz:not(.dm-has-appnav):not(.single-product) { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
	body.gz:not(.dm-has-appnav):not(.dm-buybar-on):not(.single-product) .dm-wa-float { bottom: calc(86px + env(safe-area-inset-bottom)); }
	body.gz:not(.dm-has-appnav):not(.dm-buybar-on):not(.single-product) .dm-lr-pill { bottom: calc(90px + env(safe-area-inset-bottom)); }
	/* 14-11-2026: only while they are OPEN. These boxes hide by sliding down off the screen; lifting them
	   while closed left the empty "app is offline" box (black, with an X) peeking above the bottom bar. */
	/* (the WhatsApp and install-app bars need no lift: the bottom bar hides itself while one is open) */
	body.gz:not(.dm-has-appnav):not(.dm-buybar-on):not(.single-product) .dm-pa-card.is-in,
	body.gz.snackbar--show:not(.dm-has-appnav):not(.dm-buybar-on):not(.single-product) .snackbar { bottom: calc(86px + env(safe-area-inset-bottom)); }
	body.gz.dm-buybar-on .dm-wa-float.dm-wa-float { bottom: calc(88px + env(safe-area-inset-bottom)); }
	body.gz.single-product .site-footer { padding-bottom: 96px; }
}

/* ── Wider screens ──────────────────────────────────────────────────────── */
@media (min-width: 769px) {
	body.gz .gz-cats { justify-content: center; gap: 22px; margin-left: 0; margin-right: 0; flex-wrap: wrap; overflow: visible; }
	body.gz .gz-cat { width: 78px; font-size: 13.5px; }
	body.gz .gz-cat-ring { width: 70px; height: 70px; }
	body.gz .gz-hero { padding: 26px 30px; }
	body.gz .gz-hero-body { gap: 28px; margin: 16px 0 20px; }
	body.gz .gz-hero-off b { font-size: 84px; }
	body.gz .gz-hero-off span { font-size: 32px; }
	body.gz .gz-hero-title { font-size: 20px; }
	body.gz .gz-hero-price { font-size: 34px; }
	body.gz .gz-hero-img { flex-basis: 170px; width: 170px; height: 170px; }
	body.gz .gz-hero-btn { max-width: 340px; }
	body.gz .gz-join { padding: 26px 30px; }
	body.gz .gz-join-txt b { font-size: 22px; }
	body.gz .boss-product-title { font-size: 14.5px; }
	body.gz .boss-home-updated-wrap { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
	body.gz *,
	body.gz *::before,
	body.gz *::after { transition: none !important; animation: none !important; }
}

/* ── Category page header ───────────────────────────────────────────────── */
body.gz .archive-description,
body.gz .taxonomy-archive-description {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 6px 0 10px;
	padding: 0 !important;
}
body.gz .archive-description .archive-title,
body.gz h1.archive-title {
	display: block;
	height: auto;
	margin: 6px 0 8px;
	font-size: clamp(1.45rem, 5.4vw, 2.1rem);
}
body.gz h1.archive-title::before,
body.gz h1.archive-title::after,
body.gz .woocommerce-products-header__title::before,
body.gz .woocommerce-products-header__title::after,
body.gz .page .entry-title::before,
body.gz .page .entry-title::after { content: none !important; display: none !important; }
body.gz .archive-description p { color: var(--gz-muted); font-size: 14.5px; line-height: 1.6; margin: 0 0 8px; padding: 0; }
body.gz .woocommerce-products-header { background: transparent; border: 0; padding: 0; margin: 0 0 6px; }

/* ── "Today's top 5" strip on category pages (toolkit) ──────────────────── */
body.gz .dm-top-picks h2 { font-size: 1.1rem; font-weight: 800; color: var(--gz-ink); margin: 0 0 12px; }
body.gz .dm-tp-row { gap: 10px; }
body.gz .dm-tp-card { border: 0; border-radius: 16px; background: var(--gz-bg); box-shadow: none; }
body.gz .dm-tp-card a { color: var(--gz-ink) !important; padding: 8px 8px 10px; }
body.gz .dm-tp-card a:hover .dm-tp-name { color: var(--gz-pri-d); }
body.gz .dm-tp-pic { background: #fff; border-radius: 12px; height: auto; padding: 6px; }
body.gz .dm-tp-pic img { float: none !important; }
body.gz .dm-tp-badge {
	left: 6px;
	top: 6px;
	width: auto;
	height: auto;
	padding: 5px 8px;
	border: 0;
	border-radius: 999px;
	background: var(--gz-red);
	box-shadow: none;
	flex-direction: row;
	gap: 3px;
	align-items: baseline;
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1;
}
body.gz .dm-tp-badge b { font-size: 11.5px; }
body.gz .dm-tp-name { color: var(--gz-ink); font-weight: 700; }
body.gz .dm-tp-price { color: var(--gz-ink); font-weight: 800; font-size: 17px; }
body.gz .dm-tp-prices { color: var(--gz-muted); }
body.gz .dm-tp-rating { color: var(--gz-muted); }
body.gz .dm-tp-note { color: var(--gz-muted); }

/* ── All Categories page (toolkit) ──────────────────────────────────────── */
body.gz .dmx { --ink: #1a1438; --muted: #6a6686; --line: #e4dffb; --soft: #f1eeff; font-family: var(--gz-font); }
body.gz .dmx-hero { background: linear-gradient(140deg, #6a4bff 0%, #5b3cf5 45%, #4423d4 100%); border-radius: 24px; }
body.gz .dmx-hero::after { background: rgba(255, 255, 255, .1); }
body.gz .dmx-stats span { background: rgba(255, 255, 255, .16); color: #fff; }
body.gz .dmx-stats b { color: var(--gz-lime); }
body.gz .dmx-find input { border-radius: 16px; box-shadow: 0 10px 30px rgba(26, 20, 64, .25); font-family: var(--gz-font); }
body.gz .dmx-h { font-weight: 800; color: var(--gz-ink); }
body.gz .dmx-stores a,
body.gz .dmx-pop a { border: 0; border-radius: 18px; box-shadow: var(--gz-shadow); }
body.gz .dmx-chips a { border: 0; background: #fff; color: var(--gz-ink) !important; box-shadow: 0 1px 2px rgba(26, 20, 64, .08); }
body.gz .dmx-chips a:hover { background: var(--gz-pri-soft); color: var(--gz-pri-d) !important; }
body.gz .dmx-chips a.is-hot { background: var(--gz-pri); color: #fff !important; box-shadow: 0 6px 14px rgba(91, 60, 245, .3); }
body.gz .dmx-az a { border: 0; border-radius: 12px; }
body.gz .dmx-az a:hover { background: var(--gz-pri); color: #fff !important; }
body.gz.page .content > .entry .dmx { margin: 0; }

/* ── Small leftovers ────────────────────────────────────────────────────── */
body.gz.woocommerce span.onsale,
body.gz .woocommerce span.onsale {
	min-width: 0;
	min-height: 0;
	width: auto;
	height: auto;
	top: 14px;
	left: 14px;
	right: auto;
	margin: 0;
	padding: 7px 12px;
	border-radius: 999px;
	background: var(--gz-lime);
	color: var(--gz-navy);
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .04em;
	text-transform: uppercase;
}
@media (min-width: 769px) {
	body.gz .dm-buybar { max-width: 560px; margin: 0 auto; }
}

/* 14-11-2026: header logo on deal pages. An old rule floats EVERY image on a deal page to the
   left (it was meant for the product photos) - that pulled the logo to the left there. */
body.gz .site-header .header-widget-area img.logo,
body.gz.single-product .site-header img {
	float: none !important;
	height: auto !important;
	display: block;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* ==========================================================================
   14-11-2026 (round 2): install button, bigger category circles, list bullets,
   ringing bell, coupon box, effective price
   ========================================================================== */

/* ── "Get app" pill in the header + "Install app" card above the footer ─── */
body.gz .site-header > .wrap { position: relative; }
body.gz .gz-install-pill { position: absolute; top: 50%; right: 12px; transform: translateY(-50%); z-index: 2; }
body.gz .dm-app-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 0;
	border-radius: 999px;
	background: var(--gz-lime);
	color: var(--gz-navy);
	font-family: var(--gz-font);
	font-weight: 800;
	cursor: pointer;
	box-shadow: 0 6px 16px rgba(26, 20, 64, .16);
	transition: transform .15s ease;
}
body.gz .dm-app-btn[hidden] { display: none; }
body.gz .dm-app-btn:hover { transform: scale(1.05); }
body.gz .dm-app-btn::before {
	content: "";
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 11l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 11l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.gz .gz-install-pill .dm-app-btn { min-height: 38px; padding: 0 14px; font-size: 13px; }
@media (max-width: 420px) {
	/* narrow phones: the logo keeps the middle, the pill tucks into the corner */
	body.gz .gz-install-pill { right: 8px; }
	body.gz .gz-install-pill .dm-app-btn { min-height: 34px; padding: 0 11px; font-size: 12px; }
}

body.gz .gz-app {
	display: flex;
	align-items: center;
	gap: 14px;
	max-width: 1140px;
	margin: 16px 12px;
	padding: 18px;
	border-radius: 24px;
	background: linear-gradient(140deg, #6a4bff 0%, #5b3cf5 45%, #4423d4 100%);
	color: #fff;
	box-sizing: border-box;
}
@media (min-width: 1164px) { body.gz .gz-app { margin-left: auto; margin-right: auto; } }
body.gz .gz-app:has(.dm-app-btn[hidden]) { display: none; } /* nothing to install here (already the app, or the browser can't) */
body.gz .gz-app-txt { flex: 1 1 auto; min-width: 0; }
body.gz .gz-app-txt b { display: block; font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; }
body.gz .gz-app-txt span { display: block; margin-top: 4px; font-size: 13.5px; line-height: 1.45; color: #e2dcff; }
body.gz .gz-app .dm-app-btn { flex: 0 0 auto; min-height: 52px; padding: 0 20px; border-radius: 16px; font-size: 16px; }

/* ── Bigger category circles ────────────────────────────────────────────── */
body.gz .gz-cats { gap: 16px; }
body.gz .gz-cat { width: 80px; font-size: 13.5px; }
body.gz .gz-cat-ring { width: 76px; height: 76px; border-width: 3px; }
body.gz .gz-cat-ring .gz-ic { width: 36px; height: 36px; }
@media (min-width: 769px) {
	body.gz .gz-cats { gap: 18px 30px; margin-top: 12px; margin-bottom: 20px; }
	body.gz .gz-cat { width: 108px; font-size: 15px; gap: 10px; }
	body.gz .gz-cat-ring { width: 100px; height: 100px; }
	body.gz .gz-cat-ring .gz-ic { width: 46px; height: 46px; }
}

/* ── Bullet lists: room on the left so the dots don't touch the card edge ─ */
body.gz .entry-content ul:not([class]),
body.gz .entry-content ol:not([class]),
body.gz .woocommerce-Tabs-panel ul:not([class]),
body.gz .woocommerce-Tabs-panel ol:not([class]),
body.gz .woocommerce-product-details__short-description ul,
body.gz .termandcond ul:not([class]),
body.gz .termandcond ol:not([class]),
body.gz .category-footer-content ul:not([class]),
body.gz .category-footer-content ol:not([class]),
body.gz .dm-cat-faq ul:not([class]),
body.gz .archive-description ul:not([class]) {
	margin: 8px 0 12px;
	padding-left: 24px;
	list-style-position: outside;
}
body.gz .entry-content ul:not([class]) > li,
body.gz .woocommerce-Tabs-panel ul:not([class]) > li,
body.gz .woocommerce-product-details__short-description ul > li,
body.gz .termandcond ul:not([class]) > li,
body.gz .category-footer-content ul:not([class]) > li,
body.gz .dm-cat-faq ul:not([class]) > li,
body.gz .archive-description ul:not([class]) > li {
	margin-left: 0;
	padding-left: 2px;
	list-style-type: disc;
}
body.gz .entry-content ol:not([class]) > li,
body.gz .woocommerce-Tabs-panel ol:not([class]) > li,
body.gz .termandcond ol:not([class]) > li { margin-left: 0; padding-left: 2px; }

/* ── Price-alert bell: rings for ~2 s, rests ~3 s, again ────────────────── */
@keyframes gz-bell {
	0%, 40%, 100% { transform: rotate(0); }
	4%  { transform: rotate(18deg); }
	8%  { transform: rotate(-16deg); }
	12% { transform: rotate(14deg); }
	16% { transform: rotate(-12deg); }
	20% { transform: rotate(10deg); }
	24% { transform: rotate(-8deg); }
	28% { transform: rotate(6deg); }
	32% { transform: rotate(-4deg); }
	36% { transform: rotate(2deg); }
}
body.gz .dm-pa-ic { transform-origin: 50% 12%; animation: gz-bell 5s ease-in-out 1s infinite; }
body.gz .dm-pa.is-on .dm-pa-ic { animation: none; } /* alert already set - no need to nag */

/* ── Coupon box on the deal page: white ticket, dashed edge ─────────────── */
body.gz .boss-single-coupon {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
	margin: 12px 0;
	padding: 14px 16px;
	border: 2px dashed var(--gz-pri);
	border-radius: var(--gz-r-sm);
	background: #fff;
	color: var(--gz-ink);
}
body.gz .boss-single-coupon svg { flex: 0 0 20px; width: 20px; height: 20px; stroke: var(--gz-pri); }
body.gz .boss-single-coupon-label { color: var(--gz-ink); font-size: 14px; font-weight: 700; }
body.gz .boss-single-coupon-value {
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--gz-pri);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
}
body.gz .boss-single-coupon-hint { flex: 1 0 100%; color: var(--gz-muted); font-size: 12.5px; font-weight: 500; line-height: 1.45; }

/* coupon chip on the cards: same purple family instead of lime-on-white */
body.gz .boss-coupon-badge { background: var(--gz-pri-soft); color: var(--gz-pri-d); }
body.gz .boss-coupon-badge .boss-coupon-icon { stroke: var(--gz-pri-d); }

/* ── Effective price (after the coupon) ─────────────────────────────────── */
body.gz .boss-single-eff-note {
	flex: 1 0 100%;
	order: 3;
	color: var(--gz-green);
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1.3;
}
body.gz .boss-single-prices .boss-eff-price ~ .boss-single-mrp { flex: 1 0 100%; order: 4; font-size: 13.5px; }
body.gz .gz-hero-price small { font-size: 12px; font-weight: 700; color: var(--gz-lime); margin-left: 4px; }

/* fallback: Amazon's dead "See more product details" link (also removed in the HTML) */
body.gz [data-csa-c-content-id="voyager-product-details-jumplink"] { display: none; }

/* phones and tablets: the "Get app" pill sits at the right end of the dark Menu bar (the logo keeps the whole header) */
@media (max-width: 959px) {
	body.gz .gz-install-pill { top: calc(100% + 6px); right: 20px; transform: none; }
	body.gz .gz-install-pill .dm-app-btn { min-height: 34px; padding: 0 12px; font-size: 12.5px; box-shadow: none; }
}

/* description lists already draw their own dot - drop the browser's second one that hung outside the card */
body.gz.single-product .woocommerce-tabs .panel ul > li { list-style: none !important; }
body.gz.single-product .woocommerce-tabs .panel ul > li::marker { content: none; }
body.gz.single-product .woocommerce-tabs .panel ul > li::before { background-color: var(--gz-pri); }

/* ── Price-history box (toolkit): purple instead of blue, card look ─────── */
body.gz .dm-phc { --ph-blue: #5b3cf5; --ph-ink: #1a1438; --ph-muted: #6a6686; --ph-line: #e4dffb; --ph-soft: #f1eeff; font-family: var(--gz-font); }
body.gz .dm-phc:not(.is-popup) { background: #fff; border: 0; border-radius: var(--gz-r); box-shadow: var(--gz-shadow); }
body.gz .dm-phc-g1,
body.gz .dm-phc-g2 { stop-color: #5b3cf5; }
body.gz .dm-phc-stats div { border-radius: 14px; }
body.gz .dm-phc-head h2 { font-weight: 800; }

/* ==========================================================================
   14-11-2026 (round 3)
   ========================================================================== */

/* store logo on a card: fixed small size. On deal pages an old rule made every image "height:100%",
   which blew this logo up to ~78px and pushed the Buy button out of the card (Similar deals). */
body.gz .boss-brand-row > img {
	height: 20px !important;
	width: auto !important;
	max-width: 72px;
	flex: 0 0 auto;
	float: none !important;
	object-fit: contain;
}

/* category circles: back to the first size, with a bigger icon inside */
body.gz .gz-cats { gap: 14px; }
body.gz .gz-cat { width: 66px; font-size: 12.5px; gap: 7px; }
body.gz .gz-cat-ring { width: 62px; height: 62px; border-width: 2.5px; }
body.gz .gz-cat-ring .gz-ic { width: 36px; height: 36px; }
@media (min-width: 769px) {
	body.gz .gz-cats { gap: 22px; margin-top: 6px; margin-bottom: 14px; }
	body.gz .gz-cat { width: 78px; font-size: 13.5px; gap: 7px; }
	body.gz .gz-cat-ring { width: 70px; height: 70px; }
	body.gz .gz-cat-ring .gz-ic { width: 40px; height: 40px; }
}

/* the sum under the effective price */
body.gz .boss-single-calc {
	flex: 1 0 100%;
	order: 4;
	align-self: flex-start;
	padding: 8px 12px;
	border-radius: 12px;
	background: var(--gz-bg);
	color: var(--gz-ink);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	font-variant-numeric: tabular-nums;
}
body.gz .boss-single-calc strong { font-weight: 800; color: var(--gz-green); }
body.gz .boss-single-prices .boss-eff-price ~ .boss-single-mrp { order: 5; }

/* "Install app" card: app icon, three points, big button */
body.gz .gz-app {
	position: relative;
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	align-items: center;
	gap: 14px 14px;
	padding: 20px 18px;
	border-radius: 26px;
	background: linear-gradient(135deg, #1a1440 0%, #3a1fb8 55%, #6a4bff 100%);
	box-shadow: 0 16px 36px rgba(58, 31, 184, .3);
	overflow: hidden;
}
body.gz .gz-app::before,
body.gz .gz-app::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}
body.gz .gz-app::before { right: -60px; top: -80px; width: 220px; height: 220px; background: rgba(214, 246, 91, .14); }
body.gz .gz-app::after { right: 70px; bottom: -70px; width: 140px; height: 140px; background: rgba(255, 255, 255, .07); }
body.gz .gz-app > * { position: relative; z-index: 1; }
body.gz .gz-app-ic {
	width: 64px !important;
	height: 64px !important;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 20px rgba(0, 0, 0, .28), 0 0 0 3px rgba(255, 255, 255, .18);
	float: none !important;
	margin: 0;
	object-fit: cover;
}
body.gz .gz-app-txt b { font-size: 19px; }
body.gz .gz-app-txt > span { color: #ddd6ff; }
body.gz .gz-app-pts { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 10px 0 0; padding: 0; }
body.gz .gz-app-pts li {
	margin: 0;
	padding: 5px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	list-style: none;
}
body.gz .gz-app-pts li::before { content: "\2713\00a0"; color: var(--gz-lime); font-weight: 800; }
body.gz .gz-app-pts li::marker { content: none; }
body.gz .gz-app .dm-app-btn {
	grid-column: 1 / -1;
	width: 100%;
	min-height: 54px;
	border-radius: 16px;
	font-size: 17px;
	box-shadow: 0 10px 24px rgba(214, 246, 91, .28);
}
body.gz .gz-app .dm-app-btn::before { width: 20px; height: 20px; flex-basis: 20px; }
@media (min-width: 700px) {
	body.gz .gz-app { grid-template-columns: 72px minmax(0, 1fr) auto; padding: 24px 28px; gap: 20px; }
	body.gz .gz-app-ic { width: 72px !important; height: 72px !important; }
	body.gz .gz-app-txt b { font-size: 22px; }
	body.gz .gz-app .dm-app-btn { grid-column: auto; width: auto; padding: 0 30px; }
}

/* ── Footer "Follow us" row: a dark card with three brand tiles ─────────────────────────────
   Drawn in CSS over the three footer widgets (WhatsApp, Facebook, Telegram). The widgets, their
   links and their pictures stay in the page - the pictures are only hidden to the eye. */
body.gz .footer-widgets {
	position: relative;
	max-width: 1140px;
	padding: 26px 16px 20px;
	border-radius: 28px;
	background:
		radial-gradient(120% 90% at 100% 0%, rgba(214, 246, 91, .22) 0%, rgba(214, 246, 91, 0) 55%),
		radial-gradient(90% 80% at 0% 100%, rgba(106, 75, 255, .55) 0%, rgba(106, 75, 255, 0) 60%),
		var(--gz-navy);
	box-shadow: 0 18px 40px rgba(26, 20, 64, .28);
	color: #fff;
	overflow: hidden;
	box-sizing: border-box;
}
@media (min-width: 1164px) { body.gz .footer-widgets { margin-left: auto; margin-right: auto; } }
body.gz .footer-widgets > .wrap::before {
	content: "Follow Discount Mantra";
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto 10px;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--gz-lime);
	color: var(--gz-navy);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	line-height: 1.2;
}
body.gz .footer-widgets .footer-widgets-1 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	max-width: 620px;
	margin: 0 auto;
	float: none;
}
body.gz .footer-widgets .footer-widgets-1::before {
	content: "Never miss a loot deal";
	grid-column: 1 / -1;
	margin: 0 0 4px;
	color: #fff;
	font-size: clamp(22px, 6.4vw, 30px);
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.15;
	text-align: center;
}
body.gz .footer-widgets .footer-widgets-1::after {
	content: "Deals drop on our channels first. Pick your app.";
	grid-column: 1 / -1;
	grid-row: 2;
	margin: 0 0 10px;
	color: #cfc9ee;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	text-align: center;
}
body.gz .footer-widgets .footer-widgets-1 .widget { width: auto; min-width: 0; grid-row: 3; }
body.gz .footer-widgets .footer-widgets-1 a.social {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	min-height: 118px;
	padding: 12px !important;
	border-radius: 22px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 16 16 8M9.5 8H16v6.5'/%3E%3C/svg%3E"), var(--gz-soc-bg, linear-gradient(#2a2260, #2a2260));
	background-position: right 10px top 10px, 0 0;
	background-size: 22px 22px, 100% 100%;
	background-repeat: no-repeat;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), 0 10px 22px rgba(0, 0, 0, .25);
	color: #fff !important;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	text-align: left;
	text-decoration: none !important;
	overflow: hidden;
	transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
body.gz .footer-widgets .footer-widgets-1 a.social:hover,
body.gz .footer-widgets .footer-widgets-1 a.social:focus-visible {
	transform: translateY(-4px) rotate(-1deg);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), 0 18px 30px rgba(0, 0, 0, .35);
	filter: saturate(1.15);
}
body.gz .footer-widgets .footer-widgets-1 a.social img {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0;
	pointer-events: none;
}
body.gz .footer-widgets .footer-widgets-1 a.social::before {
	content: "";
	width: 46px;
	height: 46px;
	flex: 0 0 46px;
	border-radius: 50%;
	background: #fff var(--gz-soc) center / 26px no-repeat;
	box-shadow: 0 6px 14px rgba(0, 0, 0, .22);
}
body.gz .footer-widgets .footer-widgets-1 a.social::after { content: "Follow"; }

body.gz .footer-widgets a.social[href*="whatsapp"] {
	--gz-soc-bg: linear-gradient(150deg, #1fae63 0%, #0b7a5c 60%, #075e54 100%);
	--gz-soc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%230b7a5c' d='M16 3C9 3 3.3 8.6 3.3 15.6c0 2.4.7 4.7 1.9 6.7L3 29l6.9-2.1c1.9 1 4 1.6 6.1 1.6 7 0 12.7-5.7 12.7-12.6S23 3 16 3zm0 23.1c-2 0-3.9-.6-5.6-1.6l-.4-.2-4.1 1.2 1.2-4-.3-.4c-1.1-1.7-1.7-3.6-1.7-5.6C5.1 9.9 10 5 16 5s10.9 4.9 10.9 10.6S22 26.1 16 26.1zm6-7.9c-.3-.2-1.9-.9-2.2-1s-.5-.2-.7.2-.8 1-1 1.2-.4.2-.7.1c-.3-.2-1.4-.5-2.6-1.6-1-.9-1.6-1.9-1.8-2.2s0-.5.1-.7l.5-.6.3-.5c.1-.2 0-.4 0-.6l-1-2.4c-.3-.6-.5-.5-.7-.5h-.6c-.2 0-.6.1-.9.4s-1.2 1.1-1.2 2.8 1.2 3.2 1.4 3.4 2.4 3.6 5.7 5c.8.3 1.4.5 1.9.7.8.3 1.5.2 2.1.1.6-.1 1.9-.8 2.2-1.5s.3-1.4.2-1.5-.3-.2-.6-.4z'/%3E%3C/svg%3E");
}
body.gz .footer-widgets a.social[href*="whatsapp"]::after { content: "WhatsApp"; }
body.gz .footer-widgets a.social[href*="facebook"] {
	--gz-soc-bg: linear-gradient(150deg, #2f80ff 0%, #1463d8 55%, #0d47a1 100%);
	--gz-soc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231463d8' d='M13.5 21v-7.5H16l.4-3h-2.9V8.6c0-.9.3-1.5 1.5-1.5h1.5V4.4c-.3 0-1.2-.1-2.2-.1-2.2 0-3.7 1.3-3.7 3.8v2.4H8v3h2.6V21z'/%3E%3C/svg%3E");
}
body.gz .footer-widgets a.social[href*="facebook"]::after { content: "Facebook"; }
body.gz .footer-widgets a.social[href*="t.me"],
body.gz .footer-widgets a.social[href*="telegram"] {
	--gz-soc-bg: linear-gradient(150deg, #1f9fe0 0%, #0e76b8 55%, #0a5a8f 100%);
	--gz-soc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%230e76b8' d='M21.5 3.5 2.8 10.7c-.9.4-.9 1 .1 1.3l4.7 1.5 1.8 5.6c.2.6.4.8.9.8.4 0 .6-.2.9-.4l2.3-2.2 4.7 3.5c.9.5 1.5.2 1.7-.8l3.1-14.7c.3-1.3-.5-1.9-1.5-1.5z'/%3E%3C/svg%3E");
}
body.gz .footer-widgets a.social[href*="t.me"]::after,
body.gz .footer-widgets a.social[href*="telegram"]::after { content: "Telegram"; }
body.gz .footer-widgets a.social[href*="instagram"] { --gz-soc-bg: linear-gradient(150deg, #f77737 0%, #c1307a 55%, #833ab4 100%); }
body.gz .footer-widgets a.social[href*="instagram"]::after { content: "Instagram"; }
body.gz .footer-widgets a.social[href*="youtube"] { --gz-soc-bg: linear-gradient(150deg, #ef4444 0%, #c81e1e 100%); }
body.gz .footer-widgets a.social[href*="youtube"]::after { content: "YouTube"; }
@media (min-width: 700px) {
	body.gz .footer-widgets { padding: 34px 28px 30px; }
	body.gz .footer-widgets .footer-widgets-1 { gap: 14px; }
	body.gz .footer-widgets .footer-widgets-1 a.social { min-height: 132px; padding: 16px !important; font-size: 18px; }
	body.gz .footer-widgets .footer-widgets-1 a.social::before { width: 54px; height: 54px; flex-basis: 54px; background-size: 30px; }
}

/* the hero's rating line */
body.gz .gz-hero .gz-hero-rate { margin-top: 6px !important; font-size: 13px; font-weight: 700; color: #fff; opacity: .95; }
body.gz .gz-hero-rate span { color: var(--gz-lime); }

/* ── Rotating deal card: several cards, one shown, dots to flip ─────────── */
body.gz .gz-heroes { margin: 0 0 18px; }
body.gz .gz-heroes .gz-hero { margin-bottom: 0; }
body.gz .gz-hero[hidden] { display: none !important; }
body.gz .gz-hero:not([hidden]) { animation: gz-hero-in .35s ease both; }
@keyframes gz-hero-in { from { opacity: .4; transform: translateY(6px); } to { opacity: 1; transform: none; } }
body.gz .gz-hero-dots { display: flex; justify-content: center; align-items: center; gap: 4px; margin-top: 4px; }
body.gz .gz-hero-dot {
	position: relative;
	width: 28px;
	height: 28px;       /* a comfortable tap area; the visible dot is drawn inside */
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
}
body.gz .gz-hero-dot::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 8px;
	height: 8px;
	margin: -4px 0 0 -4px;
	border-radius: 999px;
	background: #c9c0f5;
	transition: width .2s ease, margin .2s ease, background .2s ease;
}
body.gz .gz-hero-dot.is-on::before { width: 22px; margin-left: -11px; background: var(--gz-pri); }

/* ── Pop-up bars at the bottom (toolkit): WhatsApp "Follow" and "Install app" ────────────────
   Dark glass bar, glowing round icon, lime button. Same parts, new clothes. */
body.gz .dm-wa,
body.gz .dm-app {
	left: 10px;
	right: 10px;
	bottom: calc(10px + env(safe-area-inset-bottom));
	max-width: 460px;
	gap: 12px;
	padding: 12px 12px 12px 14px;
	border-radius: 24px;
	background:
		radial-gradient(120% 140% at 0% 0%, rgba(37, 211, 102, .30) 0%, rgba(37, 211, 102, 0) 55%),
		radial-gradient(110% 130% at 100% 100%, rgba(106, 75, 255, .55) 0%, rgba(106, 75, 255, 0) 60%),
		#1a1440;
	box-shadow: 0 18px 44px rgba(26, 20, 64, .45), inset 0 1px 0 rgba(255, 255, 255, .16);
	color: #fff;
	font-family: var(--gz-font);
	overflow: visible;
}
body.gz .dm-app {
	background:
		radial-gradient(120% 140% at 0% 0%, rgba(214, 246, 91, .26) 0%, rgba(214, 246, 91, 0) 55%),
		radial-gradient(110% 130% at 100% 100%, rgba(106, 75, 255, .55) 0%, rgba(106, 75, 255, 0) 60%),
		#1a1440;
}

/* round WhatsApp icon with a soft ring that breathes */
body.gz .dm-wa-ic {
	position: relative;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: linear-gradient(145deg, #3fe07f 0%, #25d366 45%, #0b9a55 100%);
	color: #fff;
	box-shadow: 0 8px 18px rgba(37, 211, 102, .45);
}
body.gz .dm-wa-ic svg { width: 28px; height: 28px; }
body.gz .dm-wa-ic::after {
	content: "";
	position: absolute;
	inset: -5px;
	border-radius: 50%;
	border: 2px solid rgba(37, 211, 102, .65);
	animation: gz-wa-ring 2.4s ease-out infinite;
	pointer-events: none;
}
@keyframes gz-wa-ring {
	0%   { transform: scale(.85); opacity: .9; }
	70%  { transform: scale(1.25); opacity: 0; }
	100% { transform: scale(1.25); opacity: 0; }
}
body.gz .dm-app img { border-radius: 14px; box-shadow: 0 8px 18px rgba(0, 0, 0, .35), 0 0 0 2px rgba(255, 255, 255, .18); flex-basis: 48px; width: 48px; height: 48px; }

/* text: bold line + a quiet second line */
body.gz .dm-wa-t,
body.gz .dm-app-t { color: #fff; font-size: 15.5px; font-weight: 800; line-height: 1.25; letter-spacing: -.01em; }
body.gz .dm-wa-t small { color: #cfc9ee; font-weight: 600; }
body.gz .dm-wa-t::after,
body.gz .dm-app-t::after {
	display: block;
	margin-top: 3px;
	color: #cfc9ee;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
}
body.gz .dm-wa-t::after { content: "Free \00b7  deals drop here first"; }
body.gz .dm-app-t::after { content: "Free \00b7  opens in one tap"; }
body.gz .dm-wa-t:has(small)::after { content: none; } /* the bar already has its own second line */

/* the button: lime pill with an arrow, a slow shine across it */
body.gz .dm-wa-go,
body.gz .dm-app-go {
	position: relative;
	gap: 6px;
	min-width: 0;
	min-height: 48px;
	padding: 0 18px;
	border-radius: 16px;
	background: var(--gz-lime);
	color: var(--gz-navy) !important;
	font-family: var(--gz-font);
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .04em;
	box-shadow: 0 8px 20px rgba(214, 246, 91, .30);
	overflow: hidden;
	animation: none;
	transition: transform .15s ease;
}
body.gz .dm-wa-go:hover,
body.gz .dm-app-go:hover { background: var(--gz-lime); filter: none; transform: scale(1.05); }
body.gz .dm-wa-go::after,
body.gz .dm-app-go::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -60%;
	width: 45%;
	background: linear-gradient(100deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .7) 50%, rgba(255, 255, 255, 0) 100%);
	transform: skewX(-18deg);
	animation: gz-shine 3.2s ease-in-out 1s infinite;
	pointer-events: none;
}
@keyframes gz-shine {
	0%, 55% { left: -60%; }
	85%, 100% { left: 130%; }
}

/* close button: small, calm, inside the corner */
body.gz .dm-wa-x,
body.gz .dm-app-x {
	top: -9px;
	right: -4px;
	width: 26px;
	height: 26px;
	border: 2px solid #f1eeff;
	background: #2c2460;
	color: #fff;
	font-size: 15px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, .3);
}
body.gz .dm-app-how { background: rgba(255, 255, 255, .12); color: #fff; border-radius: 14px; }
body.gz .dm-app-how i { background: #fff; color: var(--gz-navy); box-shadow: none; }

/* the round WhatsApp button that floats at the bottom left */
body.gz .dm-wa-float {
	background: linear-gradient(145deg, #3fe07f 0%, #25d366 45%, #0b9a55 100%);
	box-shadow: 0 10px 22px rgba(37, 211, 102, .45), 0 0 0 4px rgba(255, 255, 255, .7);
}
