/* SMM child theme — main styles */
:root {
	--smm-primary: #6d28d9;
	--smm-primary-light: #8b5cf6;
	--smm-secondary: #ec4899;
	--smm-accent: #06b6d4;
	--smm-dark: #0f172a;
	--smm-light: #f8fafc;
	--smm-success: #10b981;
	--smm-warning: #f59e0b;
	--smm-danger: #ef4444;
	--smm-gradient-hero: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	--smm-gradient-card: linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,255,255,.7));
	--smm-shadow-sm: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06);
	--smm-shadow-md: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05);
	--smm-shadow-lg: 0 20px 25px -5px rgba(0,0,0,.1), 0 10px 10px -5px rgba(0,0,0,.04);
}

body {
	font-family: 'Heebo', 'Assistant', 'Rubik', system-ui, -apple-system, Arial, sans-serif;
	background: var(--smm-light);
	overflow-x: hidden;
}

/* -----------------------------------------------------------------------------
 * Full-width layout — applies to ALL pages
 * (per-page max-width comes back via inner wrappers below)
 * -------------------------------------------------------------------------- */
.grid-container.container.hfeed,
.site-content > .grid-container,
.content-area.grid-container,
.site-content,
.site-content > .container {
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.inside-article,
.site-main,
article.page,
article.post {
	padding: 0 !important;
	background: transparent !important;
}

/* Hide page title on landing-style pages (home/FAQ/contact). Keep on legal pages. */
body.home .entry-header,
body.page-id-62 .entry-header,
body.page-id-63 .entry-header,
body.page-id-64 .entry-header { display: none !important; }

/* For pages built from .smm-section blocks — strip default block margins */
body.home .entry-content > *,
body.page-id-62 .entry-content > *,
body.page-id-63 .entry-content > *,
body.page-id-64 .entry-content > * {
	margin-block: 0 !important;
}

/* Section breakout — viewport-wide bleed */
.entry-content .smm-hero,
.entry-content .smm-section,
.entry-content .smm-trust-bar {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	max-width: none !important;
}

/* Inner content of sections constrained */
.smm-section > h2,
.smm-section > .smm-section-subtitle {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
}
.smm-section .smm-features,
.smm-section .smm-steps,
.smm-section .smm-faq,
.smm-section .smm-testimonial,
.smm-section .wp-block-woocommerce-product-collection,
.smm-section .smm-platforms {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
}

/* -----------------------------------------------------------------------------
 * Per-page-type internal max-widths
 * -------------------------------------------------------------------------- */

/* Legal pages (terms/privacy/cookies/accessibility) — readable text width */
body.page-id-16 .entry-content,
body.page-id-17 .entry-content,
body.page-id-18 .entry-content,
body.page-id-19 .entry-content {
	max-width: 820px;
	margin: 40px auto !important;
	padding: 40px 24px;
	background: #fff;
	border-radius: 16px;
	box-shadow: var(--smm-shadow-sm);
}
body.page-id-16 .entry-header,
body.page-id-17 .entry-header,
body.page-id-18 .entry-header,
body.page-id-19 .entry-header {
	max-width: 820px;
	margin: 40px auto 0;
	padding: 0 24px;
	text-align: center;
}
body.page-id-16 .entry-title,
body.page-id-17 .entry-title,
body.page-id-18 .entry-title,
body.page-id-19 .entry-title {
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 900;
	color: var(--smm-dark);
	margin: 0;
	letter-spacing: -.02em;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
body.page-id-16 .entry-title,
body.page-id-17 .entry-title,
body.page-id-18 .entry-title,
body.page-id-19 .entry-title {
	font-size: 36px;
	color: var(--smm-dark);
	font-weight: 800;
	margin: 0;
}

/* =============================================================================
 * SHOP PAGES LAYOUT RESET
 * Single Product / Shop / Category / Tag — strip all default WP/GP wrapper
 * styling so our internal blocks (hero, buybox, products grid, etc.) own
 * the layout 100%. Internal blocks have their own max-width + margin:auto.
 * ========================================================================== */

/* Kill the flex on .site-content — we don't have sidebars; flex creates
 * unpredictable child sizing on shop pages. */
body.single-product .site-content,
body.woocommerce.archive .site-content,
body.tax-product_cat .site-content,
body.post-type-archive-product .site-content,
body.tax-product_tag .site-content,
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.woocommerce-account .site-content {
	display: block !important;
}

/* Strip ALL container wrappers on shop pages — let internal blocks own width */
body.single-product .site-main,
body.single-product .content-area,
body.single-product article.product,
body.single-product .inside-article,
body.single-product .smm-product-wrap,
body.single-product .product,
body.woocommerce.archive .site-main,
body.woocommerce.archive .content-area,
body.woocommerce.archive .inside-article,
body.woocommerce.archive .entry-content,
body.woocommerce.archive .woocommerce-archive-wrapper,
body.tax-product_cat .site-main,
body.tax-product_cat .content-area,
body.tax-product_cat .inside-article,
body.tax-product_cat .entry-content,
body.tax-product_cat .woocommerce-archive-wrapper,
body.tax-product_tag .site-main,
body.tax-product_tag .content-area,
body.tax-product_tag .inside-article,
body.tax-product_tag .entry-content,
body.tax-product_tag .woocommerce-archive-wrapper,
body.post-type-archive-product .site-main,
body.post-type-archive-product .content-area,
body.post-type-archive-product .inside-article,
body.post-type-archive-product .entry-content,
body.post-type-archive-product .woocommerce-archive-wrapper {
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	max-width: none !important;
	width: 100% !important;
	min-width: 0;
}

/* Empty default WC products header — we render our own hero */
.woocommerce-products-header { display: none !important; }

/* Empty notices wrapper */
body.woocommerce.archive .woocommerce-notices-wrapper:empty,
body.tax-product_cat .woocommerce-notices-wrapper:empty,
body.post-type-archive-product .woocommerce-notices-wrapper:empty,
body.single-product .woocommerce-notices-wrapper:empty { display: none; }

/* In-content sections on archives — centered band */
body.woocommerce.archive .smm-type-filter,
body.woocommerce.archive .smm-sort-bar,
body.tax-product_cat .smm-type-filter,
body.tax-product_cat .smm-sort-bar,
body.post-type-archive-product .smm-type-filter,
body.post-type-archive-product .smm-sort-bar {
	max-width: 1280px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Products grid — centered with breathing room */
body.woocommerce.archive ul.products,
body.tax-product_cat ul.products,
body.post-type-archive-product ul.products {
	max-width: 1280px;
	margin: 24px auto !important;
	padding: 0 24px !important;
	box-sizing: border-box;
}

/* Pagination centered */
body.woocommerce.archive .woocommerce-pagination,
body.tax-product_cat .woocommerce-pagination,
body.post-type-archive-product .woocommerce-pagination {
	max-width: 1280px;
	margin: 32px auto !important;
	padding: 0 24px;
	box-sizing: border-box;
}

/* "No products found" message — centered */
.woocommerce-info,
.woocommerce-no-products-found {
	max-width: 1280px;
	margin: 24px auto !important;
}

/* Cart, checkout, my-account — narrower for forms */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main {
	max-width: 1100px;
	margin: 0 auto !important;
	padding: 32px 24px !important;
	box-sizing: border-box;
}

/* WC archive page title (e.g. "Shop", category names) */
.woocommerce-products-header__title,
.woocommerce-products-header {
	max-width: 1280px;
	margin: 24px auto 16px !important;
	padding: 0 24px;
	font-size: 32px !important;
	font-weight: 800 !important;
	color: var(--smm-dark);
}

/* -----------------------------------------------------------------------------
 * Site Header — sticky on every breakpoint, RTL flex row.
 * Layout: [logo] [primary nav (≥981px)] [account] [cart] [burger (≤980px)]
 * -------------------------------------------------------------------------- */
.site-header {
	background: #fff !important;
	box-shadow: 0 2px 12px rgba(0,0,0,.06);
	position: sticky !important;
	top: 0 !important;
	z-index: 1000; /* must beat .smm-menu-backdrop (998) so drawer (child) renders above it */
	border-bottom: 1px solid rgba(0,0,0,.04);
}
/* Frosted-glass header — desktop only. On mobile this would create a containing
   block for the fixed drawer, anchoring it to the header instead of the viewport. */
@media (min-width: 981px) {
	@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
		.site-header {
			background: rgba(255,255,255,.9) !important;
			-webkit-backdrop-filter: saturate(180%) blur(10px);
			backdrop-filter: saturate(180%) blur(10px);
		}
	}
}
.site-header .inside-header {
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 10px 20px !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: nowrap !important;
	min-height: 64px;
}
.site-header .site-branding {
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 auto;
}
.site-title { margin: 0 !important; line-height: 1.1 !important; }
.site-title a {
	font-size: 24px !important;
	font-weight: 900 !important;
	background: var(--smm-gradient-hero);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-decoration: none !important;
	letter-spacing: -.02em;
}
.site-description {
	color: #6b7280 !important;
	font-size: 12px !important;
	margin: 2px 0 0 !important;
	font-weight: 500;
}

/* GP's external mobile-menu-control-wrapper is disabled via filter — hide if it
   reappears via a plugin/customizer override so we never get a duplicate burger. */
#mobile-menu-control-wrapper { display: none !important; }

/* -----------------------------------------------------------------------------
 * Header actions row (account + cart + burger) — pinned to flex end (left in RTL)
 * -------------------------------------------------------------------------- */
.smm-header-actions {
	display: inline-flex !important;
	gap: 8px !important;
	align-items: center !important;
	margin-inline-start: auto !important;
	flex: 0 0 auto;
}
.smm-header-account {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--smm-dark) !important;
	text-decoration: none !important;
	font-weight: 600;
	font-size: 14px;
	padding: 10px 14px;
	border-radius: 12px;
	transition: background .15s ease, transform .15s ease;
	white-space: nowrap;
}
.smm-header-account:hover { background: rgba(109, 40, 217, .08); }
.smm-header-account .icon { font-size: 16px; line-height: 1; }

.smm-header-cart {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--smm-gradient-hero);
	color: #fff !important;
	padding: 10px 18px;
	border-radius: 999px;
	text-decoration: none !important;
	font-weight: 700;
	font-size: 14px;
	box-shadow: 0 4px 12px rgba(109, 40, 217, .25);
	transition: transform .15s ease, box-shadow .15s ease;
	white-space: nowrap;
}
.smm-header-cart:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(109, 40, 217, .35); }
.smm-header-cart .icon { font-size: 16px; line-height: 1; }
.smm-header-cart .count {
	background: #fff;
	color: var(--smm-primary);
	border-radius: 999px;
	padding: 2px 8px;
	font-size: 12px;
	font-weight: 800;
	min-width: 22px;
	text-align: center;
	line-height: 1.4;
}

/* -----------------------------------------------------------------------------
 * Burger button — animated 3-bar → X. Hidden ≥981px, shown ≤980px.
 * -------------------------------------------------------------------------- */
.smm-burger {
	display: none;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 12px;
	background: linear-gradient(135deg, var(--smm-primary), var(--smm-secondary));
	color: #fff;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(109, 40, 217, .25);
	transition: transform .15s ease, box-shadow .15s ease;
	-webkit-tap-highlight-color: transparent;
	flex: 0 0 auto;
	position: relative;
	z-index: 1001;
}
.smm-burger:hover { transform: scale(1.05); box-shadow: 0 6px 16px rgba(109, 40, 217, .35); }
.smm-burger:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 5px rgba(109, 40, 217, .35); }
.smm-burger-box {
	display: inline-block;
	position: relative;
	width: 22px;
	height: 16px;
}
.smm-burger-bar {
	position: absolute;
	left: 0;
	right: 0;
	height: 2px;
	background: #fff;
	border-radius: 2px;
	transition: transform .25s cubic-bezier(.4, 0, .2, 1), opacity .2s ease, top .25s cubic-bezier(.4, 0, .2, 1);
}
.smm-burger-bar:nth-child(1) { top: 0; }
.smm-burger-bar:nth-child(2) { top: 7px; }
.smm-burger-bar:nth-child(3) { top: 14px; }
.smm-burger.is-active .smm-burger-bar:nth-child(1) { top: 7px; transform: rotate(45deg); }
.smm-burger.is-active .smm-burger-bar:nth-child(2) { opacity: 0; }
.smm-burger.is-active .smm-burger-bar:nth-child(3) { top: 7px; transform: rotate(-45deg); }

/* -----------------------------------------------------------------------------
 * Primary nav (#site-navigation) — desktop pill bar inside the sticky header
 * -------------------------------------------------------------------------- */
#site-navigation {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	flex: 1 1 auto;
	min-width: 0;
}
#site-navigation .inside-navigation {
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	gap: 4px;
	background: transparent !important;
}
#site-navigation > .inside-navigation > .menu-toggle { display: none !important; }
#site-navigation .main-nav { width: 100%; }
#site-navigation .menu,
#site-navigation .main-nav > ul {
	display: flex !important;
	flex-wrap: wrap;
	gap: 2px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	background: transparent !important;
}
#site-navigation .menu > li { margin: 0 !important; position: relative; }
#site-navigation .menu > li > a {
	display: flex;
	align-items: center;
	padding: 12px 14px !important;
	color: var(--smm-dark) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	border-radius: 10px;
	transition: background .15s ease, color .15s ease;
	line-height: 1.2 !important;
	text-decoration: none !important;
	background: transparent !important;
	white-space: nowrap;
	height: auto !important;
}
#site-navigation .menu > li > a:hover,
#site-navigation .menu > li > a:focus {
	background: rgba(109, 40, 217, .08) !important;
	color: var(--smm-primary) !important;
}
#site-navigation .menu > li.current-menu-item > a,
#site-navigation .menu > li.current_page_item > a,
#site-navigation .menu > li.current-menu-ancestor > a {
	background: linear-gradient(135deg, rgba(109, 40, 217, .14), rgba(236, 72, 153, .14)) !important;
	color: var(--smm-primary) !important;
}

/* Sub-menu */
#site-navigation .menu .sub-menu {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	background: #fff;
	min-width: 240px;
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(0,0,0,.14);
	padding: 8px !important;
	margin: 0 !important;
	border: 1px solid rgba(0,0,0,.05);
	display: none;
	list-style: none;
	z-index: 110;
}
#site-navigation .menu li:hover > .sub-menu,
#site-navigation .menu li.focus > .sub-menu,
#site-navigation .menu li.sfHover > .sub-menu { display: block; }
#site-navigation .menu .sub-menu li { width: 100% !important; }
#site-navigation .menu .sub-menu a {
	display: block !important;
	padding: 10px 14px !important;
	border-radius: 8px;
	color: var(--smm-dark) !important;
	font-weight: 500 !important;
	font-size: 14px !important;
}
#site-navigation .menu .sub-menu a:hover {
	background: rgba(109, 40, 217, .08) !important;
	color: var(--smm-primary) !important;
}

/* Mobile drawer backdrop */
.smm-menu-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, .55);
	-webkit-backdrop-filter: blur(2px);
	backdrop-filter: blur(2px);
	z-index: 998;
	opacity: 0;
	pointer-events: none;
	transition: opacity .25s ease;
}
.smm-menu-backdrop.is-open { opacity: 1; pointer-events: auto; }

/* -----------------------------------------------------------------------------
 * Cart drawer — premium slide-in side panel (mobile + desktop)
 * Anchored to inline-end (left in RTL, right in LTR) so it emerges from where
 * the cart icon lives in the actions row.
 * -------------------------------------------------------------------------- */
.smm-cart-drawer-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, .55);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	z-index: 9990;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease;
}
.smm-cart-drawer-backdrop.is-open { opacity: 1; pointer-events: auto; }

.smm-cart-drawer {
	position: fixed;
	top: 0;
	inset-inline-end: 0;
	inset-inline-start: auto;
	bottom: 0;
	width: 440px;
	max-width: 92vw;
	height: 100vh;
	height: 100dvh;
	background: #fff;
	box-shadow: 0 0 64px rgba(15, 23, 42, .35);
	transform: translateX(-105%); /* RTL default — cart icon is on the left, slides off-left */
	transition: transform .4s cubic-bezier(.4, 0, .2, 1);
	z-index: 9999;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
[dir="ltr"] .smm-cart-drawer { transform: translateX(105%); }
.smm-cart-drawer.is-open { transform: translateX(0) !important; }

body.smm-cart-drawer-open { overflow: hidden; }

/* Header */
.smm-cart-drawer__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px 22px;
	background: var(--smm-gradient-hero);
	color: #fff;
	flex: 0 0 auto;
	position: relative;
}
.smm-cart-drawer__header::after {
	content: '';
	position: absolute;
	left: 0; right: 0; bottom: -1px;
	height: 24px;
	background: linear-gradient(to bottom, transparent, rgba(0,0,0,.05));
	pointer-events: none;
}
.smm-cart-drawer__header-text { min-width: 0; }
.smm-cart-drawer__header-text h2 {
	margin: 0 !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	color: #fff !important;
	line-height: 1.2 !important;
	letter-spacing: -.01em;
}
.smm-cart-drawer__header-sub {
	margin: 4px 0 0 !important;
	font-size: 13px !important;
	opacity: .9;
	color: #fff !important;
	font-weight: 500 !important;
}
.smm-cart-drawer__header-sub .smm-cart-drawer__count {
	background: rgba(255,255,255,.22);
	border-radius: 999px;
	padding: 2px 10px;
	font-weight: 800;
	font-size: 12px;
	margin-inline-end: 4px;
}
.smm-cart-drawer__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px; height: 40px;
	background: rgba(255,255,255,.18);
	border: 0;
	border-radius: 12px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s ease, transform .15s ease;
	flex: 0 0 auto;
}
.smm-cart-drawer__close:hover { background: rgba(255,255,255,.3); transform: scale(1.05); }
.smm-cart-drawer__close:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

/* Body */
.smm-cart-drawer__body {
	flex: 1 1 auto;
	overflow-y: auto;
	overscroll-behavior: contain;
	background: #f8fafc;
}

/* Empty state */
.smm-cart-drawer__empty {
	padding: 60px 28px;
	text-align: center;
	color: var(--smm-dark);
}
.smm-cart-drawer__empty-icon {
	font-size: 56px;
	margin-bottom: 14px;
	opacity: .85;
}
.smm-cart-drawer__empty h3 {
	margin: 0 0 8px !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
}
.smm-cart-drawer__empty p {
	margin: 0 0 22px !important;
	color: #6b7280 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
}
.smm-cart-drawer__shop-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 12px 26px;
	background: var(--smm-gradient-hero);
	color: #fff !important;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none !important;
	box-shadow: 0 6px 16px rgba(109, 40, 217, .3);
	transition: transform .15s ease, box-shadow .15s ease;
}
.smm-cart-drawer__shop-cta:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(109, 40, 217, .4); }

/* Items */
.smm-cart-drawer__items {
	list-style: none !important;
	margin: 0 !important;
	padding: 12px !important;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.smm-cart-drawer__item {
	display: flex;
	gap: 12px;
	padding: 12px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 1px 3px rgba(15, 23, 42, .06);
	border: 1px solid #eef0f3;
	transition: opacity .25s ease, transform .25s ease;
	position: relative;
}
.smm-cart-drawer__item.is-removing { opacity: .35; pointer-events: none; }
.smm-cart-drawer__item-thumb {
	flex: 0 0 auto;
	width: 64px; height: 64px;
	border-radius: 10px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	color: #fff;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}
.smm-cart-drawer__item-thumb img {
	width: 100%; height: 100%; object-fit: cover; display: block;
}
.smm-cart-drawer__item-info {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
}
.smm-cart-drawer__item-name {
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--smm-dark) !important;
	line-height: 1.35 !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.smm-cart-drawer__item-meta {
	margin: 0 !important;
	font-size: 12px !important;
	color: #6b7280 !important;
	display: flex;
	gap: 4px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.smm-cart-drawer__item-meta-key { font-weight: 600; flex-shrink: 0; }
.smm-cart-drawer__item-meta-val {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
}
.smm-cart-drawer__item-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 4px;
}
.smm-cart-drawer__item-qty {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	background: #f1f5f9;
	padding: 3px 10px;
	border-radius: 999px;
}
.smm-cart-drawer__item-price {
	font-size: 15px;
	font-weight: 800;
	color: var(--smm-primary);
	white-space: nowrap;
}
.smm-cart-drawer__item-price .woocommerce-Price-amount,
.smm-cart-drawer__item-price bdi { color: inherit !important; font-weight: inherit !important; }
.smm-cart-drawer__item-remove {
	flex: 0 0 auto;
	align-self: flex-start;
	width: 28px; height: 28px;
	background: transparent;
	border: 0;
	border-radius: 8px;
	color: #94a3b8;
	font-size: 14px;
	cursor: pointer;
	transition: background .15s ease, color .15s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.smm-cart-drawer__item-remove:hover {
	background: rgba(239, 68, 68, .08);
	color: var(--smm-danger);
}

/* Summary */
.smm-cart-drawer__summary {
	padding: 16px 20px 20px;
	background: #fff;
	border-top: 1px solid #eef0f3;
	flex: 0 0 auto;
	box-shadow: 0 -8px 20px rgba(15, 23, 42, .06);
}
.smm-cart-drawer__row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 4px 0;
	font-size: 14px;
	color: var(--smm-dark);
}
.smm-cart-drawer__row--mute { color: #6b7280; font-size: 13px; }
.smm-cart-drawer__row--mute .woocommerce-Price-amount,
.smm-cart-drawer__row--mute bdi { color: inherit !important; }
.smm-cart-drawer__row--total {
	margin-top: 6px;
	padding-top: 10px;
	border-top: 1px dashed #e5e7eb;
	font-size: 16px;
	font-weight: 700;
}
.smm-cart-drawer__row--total strong {
	font-size: 20px !important;
	color: var(--smm-primary) !important;
	font-weight: 900 !important;
}
.smm-cart-drawer__row--total strong .woocommerce-Price-amount,
.smm-cart-drawer__row--total strong bdi { color: inherit !important; font-weight: inherit !important; }
.smm-cart-drawer__checkout {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 14px 0 8px;
	padding: 14px 20px;
	background: var(--smm-gradient-hero);
	color: #fff !important;
	border-radius: 14px;
	font-weight: 800;
	font-size: 15px;
	text-decoration: none !important;
	box-shadow: 0 8px 22px rgba(109, 40, 217, .3);
	transition: transform .15s ease, box-shadow .15s ease;
}
.smm-cart-drawer__checkout:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(109, 40, 217, .4); }
.smm-cart-drawer__checkout-arrow {
	transition: transform .25s ease;
	font-size: 18px;
}
.smm-cart-drawer__checkout:hover .smm-cart-drawer__checkout-arrow { transform: translateX(-4px); }
[dir="ltr"] .smm-cart-drawer__checkout-arrow { transform: scaleX(-1); }
[dir="ltr"] .smm-cart-drawer__checkout:hover .smm-cart-drawer__checkout-arrow { transform: translateX(4px) scaleX(-1); }
.smm-cart-drawer__view-cart {
	display: block;
	text-align: center;
	padding: 8px;
	color: #6b7280 !important;
	text-decoration: none !important;
	font-size: 13px;
	font-weight: 600;
	transition: color .15s ease;
}
.smm-cart-drawer__view-cart:hover { color: var(--smm-primary) !important; }
.smm-cart-drawer__trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px 14px;
	margin-top: 10px;
	padding-top: 12px;
	border-top: 1px solid #f1f5f9;
	font-size: 11px;
	color: #94a3b8;
	font-weight: 600;
}

/* Mobile cart drawer */
@media (max-width: 540px) {
	.smm-cart-drawer { width: 100vw; max-width: 100vw; }
	.smm-cart-drawer__header { padding: 16px 18px; }
	.smm-cart-drawer__header-text h2 { font-size: 18px !important; }
	.smm-cart-drawer__items { padding: 10px !important; }
	.smm-cart-drawer__item { padding: 10px; gap: 10px; }
	.smm-cart-drawer__item-thumb { width: 56px; height: 56px; }
	.smm-cart-drawer__summary { padding: 14px 18px 18px; }
}

/* -----------------------------------------------------------------------------
 * Tablet — compact desktop menu (981-1200)
 * -------------------------------------------------------------------------- */
@media (min-width: 981px) and (max-width: 1200px) {
	.site-header .inside-header { padding: 10px 16px !important; gap: 8px !important; }
	#site-navigation .menu > li > a { padding: 10px 10px !important; font-size: 13px !important; }
	.smm-header-cart { padding: 8px 14px; font-size: 13px; }
	.smm-header-account { padding: 8px 10px; font-size: 13px; }
	.smm-header-account .label { display: none; }
}

/* -----------------------------------------------------------------------------
 * Mobile + small tablet (≤980) — burger + right-side slide-in drawer
 * -------------------------------------------------------------------------- */
@media (max-width: 980px) {
	/* Three-column grid: burger (right) | logo (centered, fills middle) | actions (left).
	   #site-navigation is position:fixed in drawer mode → drops out of grid flow. */
	.site-header .inside-header {
		padding: 10px 14px !important;
		gap: 8px !important;
		min-height: 60px;
		display: grid !important;
		grid-template-columns: auto 1fr auto !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
	}
	.site-title a { font-size: 20px !important; }
	.site-description { display: none !important; }

	/* Logo column — centered, may truncate on tiny screens */
	.site-header .site-branding {
		text-align: center;
		min-width: 0;
		margin: 0 !important;
	}

	.smm-burger { display: inline-flex !important; }

	/* Actions column — no longer needs margin-auto (grid handles placement) */
	.smm-header-actions { gap: 6px !important; margin: 0 !important; justify-content: flex-end; }
	.smm-header-account .label { display: none; }
	.smm-header-account { padding: 0 !important; width: 44px; height: 44px; justify-content: center; font-size: 18px; border-radius: 12px; }
	.smm-header-account:hover { background: rgba(109, 40, 217, .08); }
	.smm-header-cart { padding: 9px 12px; font-size: 13px; gap: 6px; }
	.smm-header-cart .count { padding: 1px 6px; font-size: 11px; min-width: 20px; }

	/* Drawer — slides from inline-start (right in RTL, left in LTR) */
	#site-navigation {
		position: fixed !important;
		top: 0 !important;
		inset-inline-start: 0 !important;
		inset-inline-end: auto !important;
		width: 320px !important;
		max-width: 86vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		background: #fff !important;
		box-shadow: 0 0 48px rgba(15, 23, 42, .25);
		transform: translateX(105%); /* RTL default — slides off to the right */
		transition: transform .35s cubic-bezier(.4, 0, .2, 1);
		z-index: 1010; /* above .site-header (1000) so drawer beats logo/cart in shared stacking context */
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: 0 !important;
		border: 0 !important;
		flex: none !important;
		direction: rtl;
		text-align: right;
	}
	[dir="ltr"] #site-navigation { transform: translateX(-105%); direction: ltr; text-align: left; }
	#site-navigation.toggled { transform: translateX(0) !important; }
	#site-navigation .inside-navigation {
		flex-direction: column !important;
		align-items: stretch !important;
		padding: 0 !important;
		gap: 0;
		min-height: 100%;
		display: flex !important;
		direction: rtl;
	}
	[dir="ltr"] #site-navigation .inside-navigation { direction: ltr; }
	/* Drawer brand strip */
	#site-navigation .inside-navigation::before {
		content: '';
		display: block;
		height: 56px;
		background: var(--smm-gradient-hero);
		flex: 0 0 auto;
		order: 0;
	}
	/* GP-rendered close button — repositioned absolutely as X over the brand strip */
	#site-navigation > .inside-navigation > .menu-toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		position: absolute !important;
		top: 8px;
		inset-inline-end: 8px;
		width: 40px; height: 40px;
		margin: 0 !important;
		background: rgba(255, 255, 255, .15) !important;
		border: 0 !important;
		padding: 0 !important;
		cursor: pointer;
		color: #fff !important;
		font-size: 0 !important;
		border-radius: 10px;
		transition: background .15s ease, transform .15s ease;
		flex: 0 0 auto;
		z-index: 2;
	}
	#site-navigation > .inside-navigation > .menu-toggle:hover { background: rgba(255, 255, 255, .25) !important; transform: scale(1.05); }
	/* GP outputs both menu-bars + X SVGs in this button — hide the bars, only show X */
	#site-navigation > .inside-navigation > .menu-toggle .gp-icon svg:nth-child(1) { display: none !important; }
	#site-navigation > .inside-navigation > .menu-toggle .gp-icon svg:nth-child(2) { display: block !important; }
	#site-navigation > .inside-navigation > .menu-toggle svg {
		width: 18px !important; height: 18px !important; fill: #fff !important; display: block;
	}
	#site-navigation > .inside-navigation > .menu-toggle .mobile-menu { display: none !important; }
	/* Brand strip label */
	#site-navigation .inside-navigation::after {
		content: 'תפריט';
		position: absolute;
		top: 16px;
		inset-inline-start: 20px;
		color: #fff;
		font-weight: 800;
		font-size: 18px;
		letter-spacing: -.01em;
		z-index: 1;
	}
	#site-navigation .main-nav {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		min-height: 0;
	}
	#site-navigation .menu,
	#site-navigation .main-nav > ul {
		flex-direction: column !important;
		gap: 0 !important;
		padding: 8px 0 12px !important;
		width: 100% !important;
		background: #fff !important;
		flex: 0 0 auto;
	}
	#site-navigation .menu > li { width: 100%; background: #fff; }
	#site-navigation .menu > li > a {
		padding: 16px 24px !important;
		font-size: 16px !important;
		border-radius: 0 !important;
		border-bottom: 1px solid #f3f4f6;
		justify-content: flex-start;
		color: var(--smm-dark) !important;
		background: #fff !important;
		text-align: start;
	}
	#site-navigation .menu > li > a:hover {
		background: rgba(109, 40, 217, .06) !important;
		color: var(--smm-primary) !important;
	}
	#site-navigation .menu > li.current-menu-item > a,
	#site-navigation .menu > li.current_page_item > a {
		border-inline-start: 4px solid var(--smm-primary) !important;
		background: linear-gradient(to var(--smm-grad-dir, left), rgba(109, 40, 217, .08), transparent) !important;
		color: var(--smm-primary) !important;
		font-weight: 700 !important;
	}
	#site-navigation .menu .sub-menu {
		position: static !important;
		box-shadow: none !important;
		padding: 0 !important;
		margin: 0 !important;
		background: rgba(109, 40, 217, .04) !important;
		border: 0 !important;
		border-radius: 0;
	}
	#site-navigation .menu .sub-menu a {
		padding: 12px 36px !important;
		font-size: 14px !important;
		border-bottom: 1px solid #eef0f3;
		color: var(--smm-dark) !important;
		text-align: start;
	}
	#site-navigation .menu .dropdown-menu-toggle {
		padding: 16px 14px !important;
	}

	/* Drawer footer — quick actions + trust badges, filling the bottom */
	.smm-drawer-footer {
		margin-top: auto;
		padding: 16px 18px 22px;
		background: linear-gradient(to bottom, #fff, #f8fafc);
		border-top: 1px solid #f1f5f9;
		display: flex;
		flex-direction: column;
		gap: 12px;
		flex: 0 0 auto;
	}
	.smm-drawer-footer__cta {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		padding: 14px 18px;
		background: var(--smm-gradient-hero);
		color: #fff !important;
		border-radius: 14px;
		font-weight: 800;
		font-size: 15px;
		text-decoration: none !important;
		box-shadow: 0 8px 22px rgba(109, 40, 217, .3);
		transition: transform .15s ease, box-shadow .15s ease;
	}
	.smm-drawer-footer__cta:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(109, 40, 217, .4); }
	.smm-drawer-footer__cta-icon { font-size: 18px; }
	.smm-drawer-footer__row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}
	.smm-drawer-footer__pill {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		padding: 11px 12px;
		background: #fff;
		color: var(--smm-dark) !important;
		border-radius: 12px;
		font-size: 13px;
		font-weight: 700;
		text-decoration: none !important;
		border: 1px solid #e5e7eb;
		transition: border-color .15s ease, background .15s ease, color .15s ease;
	}
	.smm-drawer-footer__pill:hover {
		border-color: rgba(109, 40, 217, .4);
		background: rgba(109, 40, 217, .04);
		color: var(--smm-primary) !important;
	}
	.smm-drawer-footer__pill--cart { position: relative; }
	.smm-drawer-footer__count {
		background: var(--smm-primary);
		color: #fff;
		border-radius: 999px;
		min-width: 20px;
		height: 20px;
		padding: 0 6px;
		font-size: 11px;
		font-weight: 800;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		line-height: 1;
	}
	.smm-drawer-footer__trust {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 6px 12px;
		padding-top: 10px;
		border-top: 1px dashed #e5e7eb;
		font-size: 11px;
		color: #94a3b8;
		font-weight: 600;
	}

	body.smm-menu-open { overflow: hidden; }
}

/* Hide drawer footer on desktop — it lives only inside the mobile slide-in panel */
@media (min-width: 981px) {
	.smm-drawer-footer { display: none !important; }
}

/* -----------------------------------------------------------------------------
 * Strip default WooCommerce chrome — replaced by branded equivalents below.
 * -------------------------------------------------------------------------- */
.woocommerce-products-header,
.woocommerce-products-header__title,
.woocommerce-result-count,
.woocommerce-ordering,
.woocommerce-tabs,
.term-description { display: none !important; }

/* WC success notice ("Product added to cart") — hidden everywhere because we
   show toasts for that. Errors + info stay visible (shipping/stock/coupon). */
.woocommerce-message { display: none !important; }
/* Hide WC's "View cart" inline button that comes packaged with the message */
.woocommerce-notices-wrapper:empty { display: none !important; }
.woocommerce-notices-wrapper { margin: 0 !important; padding: 0 !important; }
.woocommerce-info,
.woocommerce-error {
	border-radius: 14px !important;
	border: 0 !important;
	padding: 14px 18px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	box-shadow: 0 4px 14px rgba(15,23,42,.08) !important;
	margin: 12px 16px !important;
}
.woocommerce-info  { background: linear-gradient(135deg, #eff6ff, #dbeafe) !important; color: #1e3a8a !important; }
.woocommerce-error { background: linear-gradient(135deg, #fef2f2, #fee2e2) !important; color: #991b1b !important; }
.woocommerce-info::before,
.woocommerce-error::before { color: inherit !important; }

/* -----------------------------------------------------------------------------
 * Archive hero — platform-aware gradient banner for shop / category / tag
 * -------------------------------------------------------------------------- */
.smm-archive-hero {
	color: #fff;
	padding: 56px 24px 48px;
	text-align: center;
	position: relative;
	overflow: hidden;
	margin: 0 0 0;
	border-radius: 0 0 32px 32px;
	box-shadow: 0 14px 40px rgba(15, 23, 42, .12);
	/* Full-bleed */
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: none;
	box-sizing: border-box;
}
.smm-archive-hero__inner {
	max-width: 1280px;
	margin: 0 auto;
}
.smm-archive-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 20% 10%, rgba(255,255,255,.28) 0, transparent 45%),
		radial-gradient(circle at 80% 90%, rgba(255,255,255,.18) 0, transparent 50%);
	pointer-events: none;
}
.smm-archive-hero__shimmer {
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.18) 50%, transparent 70%);
	transform: translateX(-100%);
	animation: smm-hero-shimmer 6s ease-in-out 1.5s infinite;
	pointer-events: none;
}
@keyframes smm-hero-shimmer {
	0%, 100% { transform: translateX(-100%); }
	50%      { transform: translateX(100%); }
}
.smm-archive-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 920px;
	margin: 0 auto;
}
.smm-archive-hero__icon {
	font-size: 64px;
	line-height: 1;
	filter: drop-shadow(0 6px 18px rgba(0,0,0,.3));
	margin-bottom: 12px;
	animation: smm-hero-icon-float 4s ease-in-out infinite;
}
@keyframes smm-hero-icon-float {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(-6px); }
}
.smm-archive-hero__title {
	font-size: 38px;
	font-weight: 900;
	margin: 0 0 8px;
	letter-spacing: -.02em;
	color: #fff;
	text-shadow: 0 2px 6px rgba(0,0,0,.18);
	line-height: 1.1;
}
.smm-archive-hero__subtitle {
	margin: 0 auto 20px;
	max-width: 640px;
	font-size: 16px;
	font-weight: 500;
	opacity: .95;
	line-height: 1.5;
	color: #fff;
}
.smm-archive-hero__chips {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 12px;
}
.smm-archive-hero__chip {
	background: rgba(255,255,255,.18);
	color: #fff;
	padding: 7px 14px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	border: 1px solid rgba(255,255,255,.22);
	white-space: nowrap;
}

/* -----------------------------------------------------------------------------
 * Sort bar — sticky chip filter under the hero
 * -------------------------------------------------------------------------- */
.smm-sort-bar {
	background: transparent;
	padding: 8px 0 6px;
	margin: 0 auto;
	max-width: 1280px;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
}
.smm-sort-bar__inner {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
}
.smm-sort-bar__count {
	font-size: 13px;
	font-weight: 700;
	color: #6b7280;
	flex: 0 0 auto;
	margin-inline-start: auto;
}
.smm-sort-bar__chips {
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	flex: 0 1 auto;
	justify-content: flex-start;
}
.smm-sort-bar__chips::-webkit-scrollbar { display: none; }
.smm-sort-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	background: #fff;
	color: var(--smm-dark);
	border-radius: 999px;
	border: 1px solid #e5e7eb;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
	scroll-snap-align: start;
	flex: 0 0 auto;
}
.smm-sort-chip:hover {
	border-color: rgba(109, 40, 217, .35);
	background: rgba(109, 40, 217, .04);
	color: var(--smm-primary);
}
.smm-sort-chip.is-active {
	background: var(--smm-gradient-hero);
	color: #fff;
	border-color: transparent;
	box-shadow: 0 6px 14px rgba(109, 40, 217, .3);
}
.smm-sort-chip__icon { font-size: 14px; line-height: 1; }

/* -----------------------------------------------------------------------------
 * Branded breadcrumb — pill chips with arrow dividers
 * -------------------------------------------------------------------------- */
.smm-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	padding: 12px 24px;
	max-width: 1280px;
	margin: 0 auto;
	font-size: 13px;
	color: #6b7280;
}
.smm-breadcrumb a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	background: #f1f5f9;
	color: var(--smm-dark) !important;
	border-radius: 999px;
	text-decoration: none !important;
	font-weight: 600;
	transition: background .15s ease, color .15s ease;
}
.smm-breadcrumb a:hover {
	background: rgba(109, 40, 217, .08);
	color: var(--smm-primary) !important;
}
.smm-breadcrumb .smm-crumb__home { font-size: 14px; line-height: 1; }
.smm-breadcrumb .smm-crumb-arrow {
	color: #cbd5e1;
	font-size: 16px;
	font-weight: 700;
	margin: 0 2px;
	transform: scaleX(-1); /* RTL-aware: arrow points right-to-left visually */
}
.smm-breadcrumb .smm-crumb:last-child {
	color: var(--smm-primary);
	font-weight: 700;
}

/* Hide GP's own breadcrumb wrapper styling so ours rules */
.woocommerce-breadcrumb { padding: 0 !important; margin: 0 !important; font-size: inherit !important; color: inherit !important; }

/* -----------------------------------------------------------------------------
 * Custom WC pagination — pill buttons
 * -------------------------------------------------------------------------- */
.woocommerce nav.woocommerce-pagination {
	margin: 32px auto !important;
	max-width: 1280px;
	padding: 0 16px;
	text-align: center;
}
.woocommerce nav.woocommerce-pagination ul {
	display: inline-flex !important;
	gap: 6px;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	flex-wrap: wrap;
	justify-content: center;
}
.woocommerce nav.woocommerce-pagination ul li {
	border: 0 !important;
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 40px;
	height: 40px;
	padding: 0 14px !important;
	background: #fff !important;
	color: var(--smm-dark) !important;
	border-radius: 12px !important;
	border: 1px solid #e5e7eb !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease;
	line-height: 1 !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
	border-color: rgba(109, 40, 217, .35) !important;
	background: rgba(109, 40, 217, .04) !important;
	color: var(--smm-primary) !important;
	transform: translateY(-1px);
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li .page-numbers.current {
	background: var(--smm-gradient-hero) !important;
	color: #fff !important;
	border-color: transparent !important;
	box-shadow: 0 6px 14px rgba(109, 40, 217, .3);
}
.woocommerce nav.woocommerce-pagination .smm-pag-arrow {
	font-size: 18px;
	font-weight: 900;
	line-height: 1;
}

/* -----------------------------------------------------------------------------
 * Mobile responsive — archive hero + sort bar
 * -------------------------------------------------------------------------- */
@media (max-width: 768px) {
	.smm-archive-hero {
		padding: 36px 16px 30px;
		border-radius: 0 0 24px 24px;
	}
	.smm-archive-hero__icon { font-size: 48px; margin-bottom: 8px; }
	.smm-archive-hero__title { font-size: 26px; }
	.smm-archive-hero__subtitle { font-size: 14px; margin-bottom: 14px; }
	.smm-archive-hero__chip { font-size: 12px; padding: 5px 11px; }

	.smm-sort-bar { padding: 12px 16px 4px; }
	.smm-sort-bar__inner { gap: 10px; }
	.smm-sort-bar__count { font-size: 12px; }
	.smm-sort-chip { padding: 7px 12px; font-size: 12px; }

	.smm-breadcrumb { padding: 10px 16px; font-size: 12px; }
	.smm-breadcrumb a { padding: 3px 8px; }

	.woocommerce nav.woocommerce-pagination { margin: 24px auto !important; }
}

/* Phone (≤480) — even tighter */
@media (max-width: 480px) {
	.site-title a { font-size: 18px !important; }
	.site-header .inside-header { padding: 8px 12px !important; gap: 6px !important; }
	.smm-header-cart { padding: 8px 10px; font-size: 12px; }
	.smm-header-cart .icon { font-size: 14px; }
	.smm-burger { width: 40px; height: 40px; border-radius: 10px; }
}

/* =============================================================================
 * PRODUCT SLIDER (single product summary) — PREMIUM REDESIGN
 * The slider IS a quantity slider. Quantity is the hero. Price supports.
 * Big editable qty number → animated gradient track → presets → link input
 * ========================================================================== */
.smm-product-slider {
	display: flex;
	flex-direction: column;
	gap: 16px;
	background: transparent;
	padding: 0 !important;
	margin: 16px 0 !important;
	border: 0;
}

/* PRICEBOX — qty is the dominant visual; price is a small line below */
.smm-pricebox {
	position: relative;
	padding: 28px 24px 22px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 18% 0%, rgba(168,85,247,.16), transparent 55%),
		radial-gradient(circle at 82% 100%, rgba(236,72,153,.16), transparent 55%),
		linear-gradient(180deg, #fff 0%, #faf7ff 100%);
	border: 1px solid rgba(168,85,247,.20);
	box-shadow:
		0 20px 40px -16px rgba(168,85,247,.22),
		0 4px 12px -4px rgba(15,23,42,.06),
		0 0 0 1px rgba(255,255,255,.6) inset;
	text-align: center;
	overflow: hidden;
}
.smm-pricebox::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.5) 50%, transparent 70%);
	transform: translateX(-100%);
	animation: smm-hero-shimmer 9s ease-in-out infinite;
	pointer-events: none;
}

/* QTY MAIN — the centerpiece */
.smm-pricebox__main {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
	position: relative;
	margin-bottom: 6px;
}
.smm-pricebox__qty-input {
	/* Bigger — this is the focal point */
	font-size: clamp(56px, 8vw, 80px) !important;
	font-weight: 900 !important;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 45%, #fbbf24 100%) !important;
	background-size: 200% 100% !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	border: 0 !important;
	background-color: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto !important;
	min-width: 100px;
	max-width: 320px;
	text-align: center;
	letter-spacing: -.04em;
	line-height: 1;
	font-family: inherit;
	cursor: text;
	box-shadow: none !important;
	border-radius: 0 !important;
	animation: smm-btn-shimmer 7s ease-in-out infinite;
	transition: transform .25s cubic-bezier(.4,0,.2,1);
}
.smm-pricebox__qty-input:hover { transform: scale(1.02); }
.smm-pricebox__qty-input:focus {
	outline: 0 !important;
	transform: scale(1.05);
}
.smm-pricebox__qty-input::-webkit-outer-spin-button,
.smm-pricebox__qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.smm-pricebox__unit-name {
	font-size: clamp(22px, 2.8vw, 30px);
	font-weight: 900;
	color: var(--smm-dark);
	letter-spacing: -.02em;
}

/* Subtle "edit" hint that fades on focus */
.smm-pricebox__main::after {
	content: '✏ הקלד';
	position: absolute;
	bottom: -18px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 10px;
	font-weight: 700;
	color: rgba(168,85,247,.55);
	letter-spacing: .05em;
	pointer-events: none;
	opacity: 0;
	transition: opacity .2s ease;
}
.smm-pricebox:hover .smm-pricebox__main::after { opacity: 1; }
.smm-pricebox:focus-within .smm-pricebox__main::after { opacity: 0; }

/* Price row — small supporting info */
.smm-pricebox__price-row {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 14px;
	position: relative;
}
.smm-pricebox__price {
	font-size: 15px;
	font-weight: 800;
	color: #4b5563;
	letter-spacing: -.01em;
}
.smm-pricebox__per-unit {
	font-size: 11px;
	color: #9ca3af;
	font-weight: 600;
}
.smm-pricebox__footnote {
	font-size: 10px;
	color: #9ca3af;
	font-weight: 600;
	margin-top: 6px;
	position: relative;
	letter-spacing: .02em;
}

/* SLIDER WRAP — premium track with progress fill */
.smm-slider-wrap {
	padding: 8px 8px 4px;
	position: relative;
}
.smm-qty-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 12px;
	background: linear-gradient(90deg, #ece5f6 0%, #ece5f6 100%);
	border-radius: 999px;
	outline: none;
	margin: 0 0 8px !important;
	box-shadow: 0 2px 6px rgba(15,23,42,.08) inset;
	cursor: pointer;
	position: relative;
}
/* Webkit thumb — premium with double-ring glow */
.smm-qty-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background:
		radial-gradient(circle, #fff 0 38%, transparent 39%),
		linear-gradient(135deg, #6d28d9 0%, #ec4899 50%, #fbbf24 100%);
	background-size: 100% 100%;
	border: 0;
	cursor: grab;
	box-shadow:
		0 8px 24px -4px rgba(109,40,217,.45),
		0 0 0 4px rgba(255,255,255,.95),
		0 0 0 8px rgba(168,85,247,.25),
		0 0 24px rgba(236,72,153,.30);
	transition: transform .15s ease, box-shadow .15s ease;
}
.smm-qty-range::-webkit-slider-thumb:hover {
	transform: scale(1.10);
	box-shadow:
		0 12px 32px -4px rgba(109,40,217,.55),
		0 0 0 4px rgba(255,255,255,.95),
		0 0 0 12px rgba(168,85,247,.30),
		0 0 32px rgba(236,72,153,.40);
}
.smm-qty-range:focus::-webkit-slider-thumb {
	box-shadow:
		0 12px 32px -4px rgba(109,40,217,.55),
		0 0 0 4px rgba(255,255,255,.95),
		0 0 0 14px rgba(168,85,247,.35),
		0 0 32px rgba(236,72,153,.45);
}
.smm-qty-range::-webkit-slider-thumb:active { cursor: grabbing; }
.smm-qty-range::-moz-range-thumb {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 50%, #fbbf24 100%);
	border: 4px solid #fff;
	cursor: grab;
	box-shadow: 0 8px 24px -4px rgba(109,40,217,.45);
}
/* Firefox track + progress (using ::-moz-range-progress) */
.smm-qty-range::-moz-range-progress {
	background: linear-gradient(90deg, #6d28d9, #ec4899, #fbbf24);
	height: 12px;
	border-radius: 999px;
}
.smm-slider-edges {
	display: flex;
	justify-content: space-between;
	font-size: 11px;
	color: #9ca3af;
	font-weight: 700;
	letter-spacing: .04em;
	padding: 0 6px;
}

/* Quick-qty presets — premium chips with active gradient */
.smm-presets {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.smm-presets-label {
	font-size: 10px;
	color: #9ca3af;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.smm-presets-buttons {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}
.smm-preset-btn {
	background: #fff;
	color: var(--smm-dark);
	border: 1.5px solid #ece5f6;
	border-radius: 14px;
	padding: 12px 8px;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
	font-family: inherit;
	min-width: 0;
	text-align: center;
	box-shadow: 0 2px 8px -2px rgba(15,23,42,.04);
}
.smm-preset-btn:hover:not(.is-active) {
	border-color: rgba(168,85,247,.50);
	background: rgba(168,85,247,.06);
	color: var(--smm-primary);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px -6px rgba(109,40,217,.20);
}
.smm-preset-btn.is-active {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff;
	border-color: transparent;
	box-shadow: 0 10px 22px -6px rgba(109,40,217,.50);
	transform: translateY(-1px);
}

/* Link / username input below */
.smm-slider-input { display: block; margin-top: 4px; }
.smm-slider-input__lbl {
	display: block;
	font-size: 10px;
	font-weight: 800;
	color: #6b7280;
	margin-bottom: 6px;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.smm-slider-input input[type="text"],
.smm-slider-input input[type="url"],
.smm-slider-input input[type="number"] {
	width: 100% !important;
	padding: 13px 16px !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 14px !important;
	background: #fafafa !important;
	font-size: 14px !important;
	color: var(--smm-dark) !important;
	box-sizing: border-box;
	transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.smm-slider-input input:focus {
	border-color: var(--smm-primary) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(109, 40, 217, .12) !important;
	outline: 0 !important;
}

/* Mobile */
@media (max-width: 480px) {
	.smm-presets-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.smm-pricebox { padding: 22px 18px 18px; }
	.smm-pricebox__qty-input { font-size: clamp(48px, 12vw, 64px) !important; }
	.smm-pricebox__unit-name { font-size: 22px; }
	.smm-qty-range::-webkit-slider-thumb { width: 28px; height: 28px; }
}

/* Slider area — minimalist track + thumb, edges below */
.smm-slider-wrap { padding: 4px 6px 0; }
.smm-qty-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 8px;
	background: linear-gradient(90deg, #6d28d9, #ec4899, #fbbf24);
	border-radius: 999px;
	outline: none;
	margin: 0 0 8px !important;
	box-shadow: 0 2px 6px rgba(109,40,217,.20) inset;
}
.smm-qty-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 26px; height: 26px;
	border-radius: 50%;
	background: #fff;
	border: 4px solid var(--smm-primary, #6d28d9);
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(109,40,217,.35), 0 0 0 6px rgba(168,85,247,.15);
	transition: transform .15s ease, box-shadow .15s ease;
}
.smm-qty-range::-webkit-slider-thumb:hover,
.smm-qty-range:focus::-webkit-slider-thumb {
	transform: scale(1.12);
	box-shadow: 0 6px 18px rgba(109,40,217,.45), 0 0 0 10px rgba(168,85,247,.18);
}
.smm-qty-range::-moz-range-thumb {
	width: 26px; height: 26px;
	border-radius: 50%;
	background: #fff;
	border: 4px solid var(--smm-primary, #6d28d9);
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(109,40,217,.35);
}
.smm-slider-edges {
	display: flex;
	justify-content: space-between;
	font-size: 11px;
	color: #9ca3af;
	font-weight: 700;
	letter-spacing: .04em;
	padding: 0 4px;
}

/* Quick-qty presets */
.smm-presets {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.smm-presets-label {
	font-size: 11px;
	color: #9ca3af;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.smm-presets-buttons {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 6px;
}
.smm-preset-btn {
	background: #fff;
	color: var(--smm-dark);
	border: 1.5px solid #ece5f6;
	border-radius: 12px;
	padding: 10px 8px;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
	font-family: inherit;
	min-width: 0;
	text-align: center;
}
.smm-preset-btn:hover:not(.is-active) {
	border-color: rgba(168,85,247,.45);
	background: rgba(168,85,247,.05);
	color: var(--smm-primary);
	transform: translateY(-1px);
}
.smm-preset-btn.is-active {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff;
	border-color: transparent;
	box-shadow: 0 8px 16px -4px rgba(109,40,217,.40);
}

/* Link / username input below */
.smm-slider-input {
	display: block;
	margin-top: 4px;
}
.smm-slider-input__lbl {
	display: block;
	font-size: 12px;
	font-weight: 800;
	color: #4b5563;
	margin-bottom: 6px;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.smm-slider-input input[type="text"],
.smm-slider-input input[type="url"],
.smm-slider-input input[type="number"] {
	width: 100% !important;
	padding: 12px 14px !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 12px !important;
	background: #fafafa !important;
	font-size: 14px !important;
	color: var(--smm-dark) !important;
	box-sizing: border-box;
	transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.smm-slider-input input:focus {
	border-color: var(--smm-primary) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(109, 40, 217, .12) !important;
	outline: 0 !important;
}

/* Mobile — keep grid layout snug */
@media (max-width: 480px) {
	.smm-presets-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.smm-price-box { padding: 18px 18px !important; }
	.smm-price-box__amount { font-size: 36px !important; }
}

/* "Buy First" — Buy Now is the PRIMARY CTA (gradient, animated, dominant).
 * Add to Cart is a secondary outlined button below it. The form is a
 * vertical flex container so we can order children: hero info first,
 * Buy Now sits ABOVE the WC Add-to-Cart button. */
.single-product .summary form.cart {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.single-product .summary form.cart .smm-included    { order: 1; }
.single-product .summary form.cart .smm-product-slider { order: 2; }
.single-product .summary form.cart .smm-pup         { order: 3; }
.single-product .summary form.cart .smm-urgency     { order: 4; }
.single-product .summary form.cart .smm-product-trust { order: 5; }
.single-product .summary form.cart .smm-buy-now-btn { order: 6; }
.single-product .summary form.cart .single_add_to_cart_button { order: 7; }
.single-product .summary form.cart .quantity       { display: none !important; order: 99; }

/* Add-to-cart = secondary (outlined), full width, sits below Buy Now */
.single-product .summary .single_add_to_cart_button {
	width: 100% !important;
	font-size: 15px !important;
	padding: 14px 16px !important;
	border-radius: 14px !important;
	background: #fff !important;
	color: var(--smm-primary) !important;
	font-weight: 800 !important;
	border: 2px solid var(--smm-primary) !important;
	box-shadow: 0 2px 8px rgba(109, 40, 217, .08) !important;
	transition: background .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease !important;
	margin-top: 10px !important;
	animation: none !important;
}
.single-product .summary .single_add_to_cart_button:hover {
	background: linear-gradient(135deg, rgba(109,40,217,.06), rgba(236,72,153,.06)) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 6px 14px rgba(109, 40, 217, .15) !important;
}
.single-product .summary .single_add_to_cart_button::after { display: none; }
.single-product .summary form.cart .quantity { display: none !important; }

/* Single product layout polish */
.woocommerce div.product .product_title {
	color: var(--smm-dark);
	font-weight: 800;
}
.woocommerce div.product .summary > .price {
	display: none;  /* hidden — slider shows the live price */
}
.woocommerce-product-gallery {
	background: #fff;
	border-radius: 16px;
	padding: 24px;
	box-shadow: var(--smm-shadow-sm);
}

/* Shop archive enhancements */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
	display: block;
	text-decoration: none;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	color: var(--smm-dark) !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	min-height: 56px;
}
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price bdi {
	font-weight: 800;
}
.woocommerce ul.products li.product .price::before {
	content: 'החל מ-';
	font-size: 13px;
	color: #6b7280;
	display: block;
	font-weight: 400;
	margin-bottom: 4px;
}
.woocommerce ul.products li.product .button {
	display: block !important;
	text-align: center !important;
	margin-top: 12px !important;
	width: 100%;
}

/* Transparency / honesty notice — top of product summary */
.smm-honest-notice {
	display: flex;
	gap: 12px;
	background: linear-gradient(135deg, #fef3c7, #fde68a);
	border: 2px solid #f59e0b;
	border-radius: 14px;
	padding: 14px 16px;
	margin: 0 0 16px;
	align-items: flex-start;
}
.smm-honest-notice-icon { font-size: 20px; flex-shrink: 0; }
.smm-honest-notice-text { flex: 1; font-size: 13px; line-height: 1.5; color: #78350f; }
.smm-honest-notice-text strong { display: block; font-size: 14px; color: #92400e; margin-bottom: 4px; }
.smm-honest-notice-text p { margin: 0 !important; color: #78350f !important; }
.smm-honest-notice-text a { color: var(--smm-primary); font-weight: 700; text-decoration: underline; }

/* Transparency table card on product page (left column) */
.smm-pcard-transparent .smm-transparent-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	line-height: 1.5;
}
.smm-pcard-transparent .smm-transparent-table th {
	padding: 10px 12px;
	text-align: right;
	font-weight: 800;
	background: #fafafa;
	border-bottom: 2px solid #e5e7eb;
}
.smm-pcard-transparent .smm-transparent-table th:first-child { color: var(--smm-success); border-bottom-color: #a7f3d0; }
.smm-pcard-transparent .smm-transparent-table th:last-child  { color: var(--smm-danger);  border-bottom-color: #fecaca; }
.smm-pcard-transparent .smm-transparent-table td {
	padding: 10px 12px;
	vertical-align: top;
	border-bottom: 1px solid #f3f4f6;
	width: 50%;
}
.smm-pcard-transparent .smm-transparent-table tr:last-child td { border-bottom: 0; }

/* Trust micro-badges on product */
.smm-product-trust {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 16px 0;
	padding: 12px 16px;
	background: #ecfdf5;
	border-radius: 10px;
	border: 1px solid #a7f3d0;
	font-size: 14px;
	color: #065f46;
}
.smm-product-trust span { display: inline-flex; align-items: center; gap: 6px; }

/* Product page mobile fixes */
@media (max-width: 768px) {
	.smm-product-slider { padding: 20px !important; }
	.smm-product-slider #smm_total_price { font-size: 32px !important; }
	.woocommerce div.product .images,
	.woocommerce div.product .summary { float: none !important; width: 100% !important; }
}

/* -----------------------------------------------------------------------------
 * SHOP / CATEGORY — custom product cards with mini-slider per item
 * -------------------------------------------------------------------------- */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid !important;
	/* Deterministic 4-col grid on desktop. Column count drops at breakpoints
	 * below — defined further down. Avoids auto-fill row-count ambiguity. */
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* CRITICAL: WooCommerce injects ::before / ::after pseudo-elements on
 * ul.products as a legacy clearfix for the OLD float-based layout. With
 * CSS Grid, those pseudos become grid items — they consume the first cell
 * of row 1, making it appear that "row 1 has only 3 products". KILL them. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none !important;
	content: none !important;
}
@media (max-width: 1100px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 768px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}
}
@media (max-width: 480px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* Wipe legacy WC float-grid classes (.first/.last/.columns-*) — the grid
 * decides placement, not the legacy column counter. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last {
	float: none !important;
	clear: none !important;
	margin: 0 !important;
	width: auto !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	background: #fff !important;
	border-radius: 20px !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,.06) !important;
	overflow: hidden !important;
	transition: transform .2s ease, box-shadow .2s ease !important;
	display: flex !important;
	flex-direction: column !important;
	width: auto !important;
	float: none !important;
	clear: none !important;
	position: relative;
}
.woocommerce ul.products li.product:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 16px 40px rgba(0,0,0,.12) !important;
}

/* Visual area (gradient + icon/image) */
.smm-loop-link {
	display: block;
	text-decoration: none !important;
	color: inherit !important;
}
.smm-loop-visual {
	position: relative;
	height: 160px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.smm-loop-visual::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.18) 0, transparent 60%);
	pointer-events: none;
}
.smm-loop-icon {
	font-size: 72px;
	filter: drop-shadow(0 4px 12px rgba(0,0,0,.2));
	z-index: 1;
}
.smm-loop-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.smm-loop-badges {
	position: absolute;
	top: 12px;
	right: 12px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 2;
}
.smm-loop-badge {
	display: inline-block;
	background: rgba(255,255,255,.95);
	color: var(--smm-dark);
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	box-shadow: 0 2px 6px rgba(0,0,0,.1);
}

/* Card body */
.woocommerce ul.products li.product .smm-loop-title {
	margin: 0 !important;
	padding: 16px 20px 4px !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--smm-dark) !important;
	line-height: 1.35 !important;
	min-height: 0 !important;
}
.woocommerce ul.products li.product .smm-loop-title a {
	color: inherit !important;
	text-decoration: none !important;
}
.woocommerce ul.products li.product .smm-loop-title a:hover {
	color: var(--smm-primary) !important;
}
.smm-loop-desc {
	margin: 0 !important;
	padding: 0 20px !important;
	font-size: 13px !important;
	color: #6b7280 !important;
	line-height: 1.5 !important;
	min-height: 36px !important;
}

/* Meta row (rating, delivery, warranty) */
.smm-loop-meta-row {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	padding: 4px 20px 8px;
	font-size: 11px;
	color: #6b7280;
}
.smm-loop-meta-row span {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	background: #f9fafb;
	padding: 3px 8px;
	border-radius: 999px;
	border: 1px solid #f3f4f6;
	font-weight: 600;
}
.smm-loop-rating  { color: #b45309 !important; background: #fef3c7 !important; border-color: #fde68a !important; }
.smm-loop-delivery { color: #047857 !important; background: #ecfdf5 !important; border-color: #a7f3d0 !important; }
.smm-loop-warranty { color: #1e40af !important; background: #eff6ff !important; border-color: #bfdbfe !important; }

/* =============================================================================
 * LOOP CARD SLIDER — compact qty-first design (category page).
 * Layout: BIG qty + service unit name → small ₪price → slider → edges.
 * Same hierarchy as single product slider: qty is the focal point.
 * ========================================================================== */
.smm-loop-slider-wrap {
	padding: 14px 16px;
	background: linear-gradient(135deg, rgba(243,232,255,.5), rgba(252,231,243,.45));
	margin: 12px 16px;
	border-radius: 14px;
	border: 1px solid rgba(168,85,247,.18);
}
.smm-loop-pricebox {
	text-align: center;
	margin-bottom: 10px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	align-items: center;
}
.smm-loop-pricebox__qty {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	flex-wrap: wrap;
	justify-content: center;
	line-height: 1.05;
}
.smm-loop-pricebox__qty .smm-loop-qty-val {
	font-size: 24px;
	font-weight: 900;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 50%, #fbbf24 100%);
	background-size: 200% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.02em;
	animation: smm-btn-shimmer 6s ease-in-out infinite;
}
.smm-loop-pricebox__unit {
	font-size: 14px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-loop-pricebox__price {
	font-size: 12px;
	font-weight: 700;
	color: #6b7280;
	margin-top: 2px;
}
.smm-loop-pricebox__price .smm-loop-price-val {
	color: var(--smm-primary);
	font-weight: 900;
}
.smm-loop-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 6px;
	background: linear-gradient(90deg, var(--smm-primary), var(--smm-secondary));
	border-radius: 999px;
	margin: 8px 0 4px;
	box-shadow: 0 2px 4px rgba(109,40,217,.15) inset;
}
.smm-loop-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 20px; height: 20px;
	border-radius: 50%;
	background: #fff;
	border: 3px solid var(--smm-primary);
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(109,40,217,.30), 0 0 0 4px rgba(168,85,247,.12);
	transition: transform .15s ease;
}
.smm-loop-range::-webkit-slider-thumb:hover { transform: scale(1.10); }
.smm-loop-range::-moz-range-thumb {
	width: 20px; height: 20px;
	border-radius: 50%;
	background: #fff;
	border: 3px solid var(--smm-primary);
	cursor: pointer;
}
.smm-loop-range-edges {
	display: flex;
	justify-content: space-between;
	font-size: 10px;
	color: #9ca3af;
	font-weight: 700;
	letter-spacing: .04em;
}

/* Category card actions — two buttons (quick-add primary + details secondary) */
.smm-loop-actions {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
	padding: 0 16px 16px;
	margin-top: 4px;
}
.smm-loop-quickadd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 12px 16px !important;
	background: var(--smm-gradient-hero) !important;
	color: #fff !important;
	text-align: center;
	border: 0 !important;
	border-radius: 12px !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	cursor: pointer;
	transition: transform .15s ease, box-shadow .15s ease;
	box-shadow: 0 4px 12px rgba(109, 40, 217, .25);
	text-decoration: none !important;
}
.smm-loop-quickadd-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(109, 40, 217, .35);
}
.smm-loop-details-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 16px !important;
	background: #fff !important;
	color: var(--smm-primary) !important;
	border: 2px solid var(--smm-primary) !important;
	border-radius: 12px !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	text-decoration: none !important;
	transition: background .15s ease;
}
.smm-loop-details-btn:hover {
	background: rgba(109, 40, 217, .08) !important;
}

/* -----------------------------------------------------------------------------
 * Quick-add modal
 * -------------------------------------------------------------------------- */
.smm-modal {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, .6);
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	backdrop-filter: blur(4px);
}
.smm-modal[hidden] { display: none; }
body.smm-modal-open { overflow: hidden; }

.smm-modal-card {
	background: #fff;
	border-radius: 24px;
	max-width: 480px;
	width: 100%;
	padding: 32px;
	box-shadow: 0 24px 64px rgba(0,0,0,.3);
	position: relative;
	max-height: 90vh;
	overflow-y: auto;
	animation: smmModalIn .25s cubic-bezier(.4,0,.2,1);
}
@keyframes smmModalIn {
	from { opacity: 0; transform: translateY(20px) scale(.96); }
	to   { opacity: 1; transform: translateY(0) scale(1); }
}
.smm-modal-close {
	position: absolute;
	top: 12px;
	left: 12px;
	background: #f3f4f6 !important;
	border: 0 !important;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	font-size: 22px !important;
	color: #6b7280 !important;
	cursor: pointer;
	transition: all .15s ease;
	padding: 0 !important;
	line-height: 1;
}
.smm-modal-close:hover { background: #e5e7eb !important; color: var(--smm-dark) !important; }

.smm-modal-card h3 {
	margin: 0 0 8px !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
	padding-left: 40px;
}
.smm-modal-card #smm-modal-desc {
	margin: 0 0 20px !important;
	color: #6b7280 !important;
	font-size: 14px !important;
}
.smm-modal-card label {
	display: block;
	font-weight: 700;
	color: var(--smm-dark);
	margin-bottom: 8px;
	font-size: 14px;
}
.smm-modal-card input[type="text"],
.smm-modal-card input[type="url"] {
	width: 100% !important;
	padding: 14px 16px !important;
	font-size: 16px !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 12px !important;
	box-sizing: border-box;
	transition: all .15s ease;
}
.smm-modal-card input:focus {
	border-color: var(--smm-primary) !important;
	box-shadow: 0 0 0 4px rgba(109, 40, 217, .12) !important;
	outline: none !important;
}
.smm-modal-hint {
	font-size: 12px !important;
	color: #6b7280 !important;
	margin: 6px 0 0 !important;
	line-height: 1.5;
}
.smm-modal-actions {
	display: flex;
	gap: 12px;
	margin-top: 20px;
}
.smm-modal-btn-primary,
.smm-modal-btn-secondary {
	flex: 1;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	border: 0 !important;
	cursor: pointer;
	transition: all .15s ease;
}
.smm-modal-btn-primary {
	background: var(--smm-gradient-hero) !important;
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(109, 40, 217, .25);
}
.smm-modal-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(109, 40, 217, .35); }
.smm-modal-btn-secondary {
	background: #f3f4f6 !important;
	color: var(--smm-dark) !important;
}
.smm-modal-btn-secondary:hover { background: #e5e7eb !important; }

.smm-modal-status {
	margin-top: 12px;
	padding: 10px 14px;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}
.smm-modal-status.is-loading { background: #f3e8ff; color: var(--smm-primary); }
.smm-modal-status.is-error   { background: #fee2e2; color: #991b1b; }

/* Toast notification */
.smm-toast {
	position: fixed;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--smm-dark);
	color: #fff;
	padding: 14px 24px;
	border-radius: 999px;
	font-weight: 600;
	box-shadow: 0 12px 40px rgba(0,0,0,.3);
	z-index: 10001;
	animation: smmToastIn .3s ease;
}
.smm-toast[hidden] { display: none; }
.smm-toast.is-success { background: var(--smm-success); }
.smm-toast.is-error   { background: var(--smm-danger); }
@keyframes smmToastIn {
	from { transform: translate(-50%, 40px); opacity: 0; }
	to   { transform: translate(-50%, 0); opacity: 1; }
}

/* -----------------------------------------------------------------------------
 * Related products on single product page — clean grid
 * -------------------------------------------------------------------------- */
.related.products,
.upsells.products {
	margin: 48px 0 0 !important;
	max-width: none !important;
	padding: 0 !important;
}
.related.products > h2,
.upsells.products > h2 {
	text-align: right;
	font-size: 24px !important;
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 20px !important;
	padding-bottom: 12px;
	border-bottom: 2px solid #f3e8ff;
}
.related.products ul.products,
.upsells.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
	gap: 20px !important;
}
.related.products ul.products li.product .smm-loop-visual,
.upsells.products ul.products li.product .smm-loop-visual {
	height: 120px !important;
}
.related.products ul.products li.product .smm-loop-icon,
.upsells.products ul.products li.product .smm-loop-icon {
	font-size: 56px !important;
}

/* Hide WC sale flash on cards (we use our badges) */
.woocommerce ul.products li.product .onsale {
	display: none !important;
}

/* -----------------------------------------------------------------------------
 * SINGLE PRODUCT — premium app-feel polish
 * Live activity strip + rating row + sticky CTA + animations
 * -------------------------------------------------------------------------- */

/* ---- Rating row (under title, before honest notice) ---- */
.smm-rating-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin: 4px 0 12px;
	font-size: 14px;
}
.smm-rating-stars {
	position: relative;
	display: inline-block;
	font-size: 18px;
	letter-spacing: 1px;
	line-height: 1;
}
.smm-rating-stars__bg { color: #e5e7eb; }
.smm-rating-stars__fg {
	position: absolute;
	top: 0; right: 0;
	overflow: hidden;
	white-space: nowrap;
	color: #f59e0b;
	text-shadow: 0 1px 2px rgba(245, 158, 11, .25);
}
.smm-rating-value {
	font-size: 16px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-rating-count {
	color: #6b7280 !important;
	font-weight: 600;
	text-decoration: none !important;
	transition: color .15s ease;
}
.smm-rating-count:hover { color: var(--smm-primary) !important; }
.smm-rating-verified {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-size: 12px;
	font-weight: 700;
	color: #065f46;
	background: #ecfdf5;
	padding: 3px 9px;
	border-radius: 999px;
	margin-inline-start: auto;
}

/* ---- Live activity strip (pulsing dot + rotating message) ---- */
.smm-live-strip {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 14px;
	margin: 0 0 12px;
	background: linear-gradient(135deg, #ecfdf5, #f0fdf4);
	border: 1px solid #a7f3d0;
	border-radius: 12px;
	font-size: 13px;
	color: #065f46;
	overflow: hidden;
}
.smm-live-strip__dot {
	position: relative;
	flex: 0 0 auto;
	width: 8px; height: 8px;
	border-radius: 50%;
	background: #10b981;
	box-shadow: 0 0 0 0 rgba(16, 185, 129, .55);
	animation: smm-live-pulse 1.6s ease-in-out infinite;
}
@keyframes smm-live-pulse {
	0%   { box-shadow: 0 0 0 0   rgba(16, 185, 129, .55); }
	70%  { box-shadow: 0 0 0 10px rgba(16, 185, 129, 0); }
	100% { box-shadow: 0 0 0 0   rgba(16, 185, 129, 0); }
}
.smm-live-strip__msg {
	position: relative;
	flex: 1 1 auto;
	height: 18px;
	min-width: 0;
}
.smm-live-strip__item {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .35s ease, transform .35s ease;
	font-weight: 600;
}
.smm-live-strip__item.is-active { opacity: 1; transform: translateY(0); }
.smm-live-strip__item strong { color: #064e3b; font-weight: 800; }

/* ---- CTA button breathe pulse ---- */
.single-product .summary .single_add_to_cart_button {
	position: relative;
	animation: smm-cta-breathe 2.6s ease-in-out infinite;
}
@keyframes smm-cta-breathe {
	0%, 100% {
		box-shadow: 0 8px 20px rgba(109, 40, 217, .3), 0 0 0 0 rgba(109, 40, 217, .45);
	}
	50% {
		box-shadow: 0 8px 20px rgba(109, 40, 217, .3), 0 0 0 14px rgba(109, 40, 217, 0);
	}
}
.single-product .summary .single_add_to_cart_button:hover {
	animation: none;
}
.single-product .summary .single_add_to_cart_button::after {
	content: ' ←';
	display: inline-block;
	margin-inline-start: 6px;
	transition: transform .25s ease;
	font-weight: 900;
}
.single-product .summary .single_add_to_cart_button:hover::after {
	transform: translateX(-5px);
}

/* ---- Mobile sticky CTA bar ---- */
.smm-sticky-cta {
	position: fixed;
	left: 0; right: 0;
	bottom: 0;
	z-index: 990;
	background: #fff;
	box-shadow: 0 -8px 28px rgba(15, 23, 42, .15);
	border-top: 1px solid #eef0f3;
	padding: 10px 14px env(safe-area-inset-bottom) 10px;
	transform: translateY(110%);
	transition: transform .35s cubic-bezier(.4, 0, .2, 1);
	display: none;
	pointer-events: none;
}
.smm-sticky-cta.is-visible {
	transform: translateY(0);
	pointer-events: auto;
}
.smm-sticky-cta__inner {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: 600px;
	margin: 0 auto;
}
.smm-sticky-cta__price {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.smm-sticky-cta__price-label {
	font-size: 11px;
	color: #6b7280;
	font-weight: 600;
}
.smm-sticky-cta__price-val {
	font-size: 22px;
	font-weight: 900;
	background: var(--smm-gradient-hero);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	line-height: 1.1;
}
.smm-sticky-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 22px;
	background: var(--smm-gradient-hero);
	color: #fff;
	border: 0;
	border-radius: 14px;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
	box-shadow: 0 8px 22px rgba(109, 40, 217, .35);
	transition: transform .15s ease, box-shadow .15s ease;
	flex: 0 0 auto;
	white-space: nowrap;
}
.smm-sticky-cta__btn:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(109, 40, 217, .45); }
.smm-sticky-cta__btn:active { transform: translateY(0); }

@media (max-width: 980px) {
	.smm-sticky-cta { display: block; }
	/* Reserve space at the bottom of single-product pages so the sticky CTA
	   doesn't cover the legal footer / last money-back card */
	body.single-product { padding-bottom: 76px; }
}

/* ---- BUY NOW — PRIMARY CTA. Big, gradient, animated, dominant. ---- */
.smm-buy-now-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	margin-top: 18px;
	padding: 22px 24px;
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	background-size: 200% 100%;
	color: #fff;
	border: 0;
	border-radius: 16px;
	font-size: 19px;
	font-weight: 900;
	cursor: pointer;
	letter-spacing: -.01em;
	transition: transform .15s ease, box-shadow .15s ease;
	box-shadow: 0 16px 32px -10px rgba(236,72,153,.55), 0 0 0 1px rgba(255,255,255,.10) inset;
	position: relative;
	overflow: hidden;
	animation: smm-btn-shimmer 4s ease-in-out infinite, smm-cta-breathe 2.6s ease-in-out infinite;
	font-family: inherit;
}
.smm-buy-now-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 22px 44px -12px rgba(236,72,153,.65), 0 0 0 1px rgba(255,255,255,.14) inset;
	animation-play-state: paused;
}
.smm-buy-now-btn:active { transform: translateY(0); }
.smm-buy-now-btn:focus-visible { outline: 3px solid rgba(251,191,36,.55); outline-offset: 3px; }
.smm-buy-now-btn::after {
	content: ' ←';
	display: inline-block;
	margin-inline-start: 4px;
	transition: transform .25s ease;
	font-weight: 900;
	font-size: 22px;
}
.smm-buy-now-btn:hover::after { transform: translateX(-6px); }
.smm-buy-now-btn__icon { font-size: 22px; line-height: 1; }
.smm-buy-now-btn__label { font-size: 19px; font-weight: 900; color: #fff; }
.smm-buy-now-btn__hint {
	font-size: 12px;
	font-weight: 700;
	color: rgba(255,255,255,.85);
	margin-inline-start: 8px;
	padding-inline-start: 10px;
	border-inline-start: 1px solid rgba(255,255,255,.30);
}
@media (max-width: 480px) {
	.smm-buy-now-btn { padding: 18px 18px; font-size: 17px; }
	.smm-buy-now-btn__label { font-size: 17px; }
	.smm-buy-now-btn__hint { display: none; }
}

/* -----------------------------------------------------------------------------
 * Cart page — card layout (overrides default WC table)
 * Each item is a card showing: branded thumb, service name, "X עוקבים" pill,
 * target link/username, optional discount badge, line total, remove. No more
 * confusing per-unit "0.08 ₪ × 125" math.
 * -------------------------------------------------------------------------- */

/* Hide the WC default cart fragments that we don't render in the new template */
.woocommerce-cart .shop_table.cart,
.woocommerce-cart table.shop_table_responsive { display: none !important; }
/* When woocommerce.css applies its mobile data-title labels, suppress them */
.woocommerce-cart .smm-cart-card td::before { display: none !important; }

.smm-cart-form { width: 100%; }

.smm-cart-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0 0 24px;
}

.smm-cart-card {
	display: flex;
	gap: 14px;
	padding: 14px;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 14px rgba(15, 23, 42, .06);
	border: 1px solid #eef0f3;
	transition: box-shadow .2s ease, transform .2s ease;
	position: relative;
}
.smm-cart-card:hover {
	box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
}

.smm-cart-card__thumb {
	flex: 0 0 auto;
	width: 88px;
	height: 88px;
	border-radius: 14px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 36px;
	color: #fff;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
	position: relative;
}
.smm-cart-card__thumb img {
	width: 100%; height: 100%; object-fit: cover; display: block;
}

.smm-cart-card__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.smm-cart-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
.smm-cart-card__title {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
	line-height: 1.3 !important;
	flex: 1 1 auto;
	min-width: 0;
}
.smm-cart-card__title a {
	color: inherit !important;
	text-decoration: none !important;
}
.smm-cart-card__title a:hover { color: var(--smm-primary) !important; }

.smm-cart-card__qty-pill {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	padding: 5px 12px;
	background: linear-gradient(135deg, rgba(109,40,217,.08), rgba(236,72,153,.08));
	color: var(--smm-primary);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	border: 1px solid rgba(109, 40, 217, .15);
	flex: 0 0 auto;
}
.smm-cart-card__qty-pill strong { font-size: 14px; font-weight: 900; color: var(--smm-primary); }
.smm-cart-card__qty-pill span { font-weight: 600; color: var(--smm-dark); opacity: .8; }

.smm-cart-card__discount-row {
	display: flex;
	align-items: center;
	gap: 8px;
}
.smm-cart-card__discount-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 11px;
	background: linear-gradient(135deg, #ecfdf5, #d1fae5);
	color: #065f46;
	border: 1px solid #a7f3d0;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
}

.smm-cart-card__field {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #4b5563;
	min-width: 0;
}
.smm-cart-card__field-label {
	font-weight: 700;
	color: #6b7280;
	flex: 0 0 auto;
}
.smm-cart-card__field-value {
	background: #f8fafc;
	padding: 3px 10px;
	border-radius: 8px;
	font-family: 'SFMono-Regular', Menlo, monospace;
	font-size: 12px;
	color: var(--smm-dark);
	border: 1px solid #eef0f3;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
	max-width: 100%;
}

.smm-cart-card__foot {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 8px;
	padding-top: 10px;
	border-top: 1px dashed #f1f5f9;
}
.smm-cart-card__edit-qty {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #f8fafc;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 4px 10px;
	flex: 0 0 auto;
}
.smm-cart-card__qty-input {
	width: 90px;
	border: 0 !important;
	background: transparent !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--smm-dark) !important;
	padding: 4px 0 !important;
	-moz-appearance: textfield;
}
.smm-cart-card__qty-input:focus { outline: none !important; box-shadow: none !important; }
.smm-cart-card__qty-input::-webkit-outer-spin-button,
.smm-cart-card__qty-input::-webkit-inner-spin-button { -webkit-appearance: auto; }
.smm-cart-card__qty-unit {
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
}

.smm-cart-card__total {
	margin-inline-start: auto;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	flex: 0 0 auto;
}
.smm-cart-card__total-label {
	font-size: 11px;
	color: #6b7280;
	font-weight: 600;
}
.smm-cart-card__total-amount {
	font-size: 22px !important;
	font-weight: 900 !important;
	background: var(--smm-gradient-hero);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	line-height: 1.1;
}
.smm-cart-card__total-amount .woocommerce-Price-amount,
.smm-cart-card__total-amount bdi { color: inherit !important; font-weight: inherit !important; }

.smm-cart-card__remove {
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: #94a3b8;
	border: 1px solid #eef0f3;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.smm-cart-card__remove:hover {
	background: rgba(239, 68, 68, .08);
	color: var(--smm-danger) !important;
	border-color: rgba(239, 68, 68, .25);
}

/* Coupon + update-cart actions */
.smm-cart-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	padding: 14px 16px;
	background: #f8fafc;
	border-radius: 14px;
	border: 1px dashed #e5e7eb;
	margin-top: 4px;
}
.smm-cart-coupon {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1 1 280px;
	min-width: 0;
}
.smm-cart-coupon__input {
	flex: 1 1 auto;
	min-width: 0;
	padding: 9px 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	background: #fff !important;
	font-size: 13px !important;
	color: var(--smm-dark) !important;
}
.smm-cart-coupon__input:focus {
	border-color: rgba(109, 40, 217, .35) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(109, 40, 217, .12) !important;
}
.smm-cart-coupon__btn {
	background: #fff !important;
	color: var(--smm-primary) !important;
	border: 1px solid rgba(109, 40, 217, .35) !important;
	border-radius: 10px !important;
	padding: 9px 16px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	cursor: pointer;
	flex: 0 0 auto;
	transition: background .15s ease;
}
.smm-cart-coupon__btn:hover {
	background: rgba(109, 40, 217, .04) !important;
}
.smm-cart-update {
	background: #fff !important;
	color: var(--smm-dark) !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	padding: 9px 18px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease;
	flex: 0 0 auto;
}
.smm-cart-update:hover {
	background: rgba(109, 40, 217, .04) !important;
	border-color: rgba(109, 40, 217, .35) !important;
	color: var(--smm-primary) !important;
}

/* Mobile cart cards */
@media (max-width: 600px) {
	.smm-cart-card { padding: 12px; gap: 10px; }
	.smm-cart-card__thumb { width: 64px; height: 64px; font-size: 28px; }
	.smm-cart-card__title { font-size: 14px !important; }
	.smm-cart-card__qty-pill { font-size: 12px; padding: 4px 10px; }
	.smm-cart-card__field-value { font-size: 11px; }
	.smm-cart-card__total-amount { font-size: 18px !important; }
	.smm-cart-card__foot { flex-wrap: wrap; gap: 8px; }
	.smm-cart-card__edit-qty { flex: 1 1 100%; justify-content: center; }
	.smm-cart-card__total { margin-inline-start: 0; flex: 1 1 auto; align-items: flex-start; }
	.smm-cart-card__remove { margin-inline-start: auto; }
	.smm-cart-actions { padding: 12px; }
	.smm-cart-coupon { flex: 1 1 100%; }
	.smm-cart-update { flex: 1 1 100%; }
}

/* ---- Pre-checkout upsell — appears above "Proceed to Checkout" on cart ---- */
.smm-upsell {
	margin: 0 0 20px;
	padding: 22px;
	background: linear-gradient(135deg, #fff, #faf5ff);
	border-radius: 18px;
	border: 1px solid rgba(109, 40, 217, .15);
	box-shadow: 0 8px 24px rgba(109, 40, 217, .08);
	position: relative;
	overflow: hidden;
}
.smm-upsell::before {
	content: '';
	position: absolute;
	inset: 0 0 auto 0;
	height: 4px;
	background: var(--smm-gradient-hero);
}
.smm-upsell__header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}
.smm-upsell__icon {
	flex: 0 0 auto;
	width: 44px; height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	background: var(--smm-gradient-hero);
	color: #fff;
	border-radius: 12px;
	box-shadow: 0 6px 14px rgba(109, 40, 217, .35);
}
.smm-upsell__title {
	margin: 0 0 2px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
	line-height: 1.2 !important;
}
.smm-upsell__subtitle {
	margin: 0 !important;
	font-size: 13px !important;
	color: #6b7280 !important;
	font-weight: 500 !important;
}

.smm-upsell__item {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px dashed #e5e7eb;
}
.smm-upsell__item:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.smm-upsell__item-name {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
	font-size: 14px;
	font-weight: 700;
	color: var(--smm-dark);
}
.smm-upsell__current-qty {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	background: #f1f5f9;
	padding: 3px 10px;
	border-radius: 999px;
}
.smm-upsell__applied-badge {
	font-size: 12px;
	font-weight: 700;
	color: #065f46;
	background: #ecfdf5;
	padding: 4px 10px;
	border-radius: 999px;
	border: 1px solid #a7f3d0;
}

.smm-upsell__tiers {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 10px;
}
.smm-upsell__tier {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px 14px 12px;
	background: #fff;
	border: 2px solid #e5e7eb;
	border-radius: 14px;
	cursor: pointer;
	text-align: start;
	font-family: inherit;
	transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
	position: relative;
	min-height: 130px;
}
.smm-upsell__tier:hover {
	border-color: rgba(109, 40, 217, .5);
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(109, 40, 217, .14);
}
.smm-upsell__tier:active { transform: translateY(0); }
.smm-upsell__tier:focus-visible { outline: 3px solid rgba(109, 40, 217, .35); outline-offset: 2px; }
.smm-upsell__tier.is-recommended {
	border-color: var(--smm-primary);
	background: linear-gradient(135deg, #fff, rgba(109, 40, 217, .04));
	box-shadow: 0 8px 22px rgba(109, 40, 217, .15);
}
.smm-upsell__tier.is-loading {
	opacity: .5;
	cursor: wait;
}
.smm-upsell__tier-badge {
	position: absolute;
	top: -10px;
	inset-inline-start: 14px;
	background: var(--smm-gradient-hero);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	padding: 3px 10px;
	border-radius: 999px;
	box-shadow: 0 4px 10px rgba(109, 40, 217, .3);
}
.smm-upsell__tier-discount {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	background: var(--smm-success);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	padding: 3px 8px;
	border-radius: 8px;
}
.smm-upsell__tier-label {
	font-size: 13px;
	font-weight: 700;
	color: var(--smm-primary);
	margin-top: 4px;
}
.smm-upsell__tier-qty {
	font-size: 18px;
	font-weight: 900;
	color: var(--smm-dark);
	line-height: 1.1;
}
.smm-upsell__tier-savings {
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
}
.smm-upsell__tier-total {
	margin-top: auto;
	font-size: 16px;
	font-weight: 800;
	background: var(--smm-gradient-hero);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}
.smm-upsell__tier-total .woocommerce-Price-amount,
.smm-upsell__tier-total bdi { color: inherit !important; }

@media (max-width: 540px) {
	.smm-upsell { padding: 18px 14px; }
	.smm-upsell__tiers { grid-template-columns: 1fr; }
	.smm-upsell__tier { min-height: 0; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 8px 12px; }
	.smm-upsell__tier-badge { position: static; align-self: flex-start; }
	.smm-upsell__tier-discount { position: static; }
	.smm-upsell__tier-total { margin-inline-start: auto; margin-top: 0; }
}

/* ---- Card fade-in on scroll ---- */
.smm-fade-in-init {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .45s ease, transform .55s cubic-bezier(.2, .8, .2, 1);
	will-change: opacity, transform;
}
.smm-fade-in-on {
	opacity: 1;
	transform: translateY(0);
}

/* Single product wrapper — full width, content blocks self-constrain */
.smm-product-wrap {
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

/* Buy-first layout (DESKTOP ≥1100): 2-col split via grid-template-areas
 * so content placement is deterministic regardless of DOM order.
 *  - "content" area spans full height (2 rows) on the LEFT
 *  - "buybox" area on the RIGHT row 1 (sticky)
 *  - "anchors" area on the RIGHT row 2 (below buybox)
 * MOBILE/TABLET (≤1100): collapses to single-column stack. */
.smm-product-stack {
	max-width: 1440px;
	margin: 24px auto 0;
	padding: 0 32px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 520px;
	grid-template-areas:
		"content buybox"
		"content anchors";
	gap: 28px 36px;
	align-items: start;
}

.smm-product-buybox {
	grid-area: buybox;
	max-width: none;
	margin: 0;
	position: sticky;
	top: 88px;
	z-index: 5;
	min-width: 0;
	align-self: start;
}

.smm-product-content {
	grid-area: content;
	max-width: none;
	margin: 0;
	min-width: 0;
	align-self: start;
}

.smm-product-anchors {
	grid-area: anchors;
	margin: 0 !important;
	max-width: none !important;
	align-self: start;
}

@media (max-width: 1100px) {
	.smm-product-stack {
		grid-template-columns: 1fr;
		grid-template-areas:
			"buybox"
			"anchors"
			"content";
		gap: 20px;
		padding: 0 20px;
	}
	.smm-product-buybox {
		position: static;
		max-width: 760px;
		margin: 0 auto;
	}
	.smm-product-content {
		max-width: 820px;
		margin: 0 auto;
	}
	.smm-product-anchors {
		max-width: 760px !important;
		margin: 16px auto 0 !important;
	}
}
@media (max-width: 640px) {
	.smm-product-stack { padding: 0 14px; }
}

/* Anchor nav between buybox and long-form content (NOT sticky — would
 * compete with the buybox for attention. Sits inline as a navigational
 * separator between purchase and info sections.) */
.smm-product-anchors {
	display: flex;
	gap: 6px;
	overflow-x: auto;
	scrollbar-width: none;
	margin: 36px auto 8px;
	padding: 6px;
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 999px;
	box-shadow: 0 4px 14px -6px rgba(15,23,42,.06);
	max-width: 760px;
}
.smm-product-anchors::-webkit-scrollbar { display: none; }
.smm-product-anchors a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px 14px;
	background: transparent;
	color: var(--smm-dark);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .15s ease, color .15s ease;
	scroll-snap-align: start;
	flex: 0 0 auto;
}
.smm-product-anchors a:hover {
	background: rgba(168,85,247,.08);
	color: var(--smm-primary);
}
.smm-product-anchors__cta {
	margin-right: auto;
	background: linear-gradient(135deg, #6d28d9, #ec4899) !important;
	color: #fff !important;
	box-shadow: 0 6px 14px -4px rgba(109,40,217,.4);
}
.smm-product-anchors__cta:hover {
	background: linear-gradient(135deg, #6d28d9, #ec4899) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.smm-product-content {
	max-width: 820px;
	margin: 24px auto 0;
}
.smm-product-content [id] {
	scroll-margin-top: 130px;
}

@media (max-width: 1024px) {
	.smm-product-stack { padding: 0 16px; }
	.smm-product-anchors { top: 60px; padding: 8px 10px; }
	.smm-product-anchors a { font-size: 12px; padding: 7px 12px; }
}

/* Legacy 2-col grid kept for backward-compat — collapsed to a stack */
.smm-product-grid { display: block; }
.smm-product-summary-col,
.smm-product-content-col {
	display: block;
	position: static;
}

/* BUY BOX — the dominant element on the page. Big, bold, can't-miss-it.
 * Strong shadow, gradient outer ring, generous padding. */
.single-product div.product .summary {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	background: #fff !important;
	border-radius: 24px !important;
	padding: 28px 28px 32px !important;
	box-shadow:
		0 24px 60px -16px rgba(109,40,217,.18),
		0 8px 24px -8px rgba(15,23,42,.08),
		0 0 0 1px rgba(15,23,42,.04) !important;
	border: 0 !important;
	position: relative;
}
/* Gradient ring on top edge — visual cue: "this is the action zone" */
.single-product div.product .summary::before {
	content: '';
	position: absolute;
	top: 0; right: 0; left: 0;
	height: 4px;
	background: linear-gradient(90deg, #fbbf24, #ec4899, #a855f7, #6d28d9);
	background-size: 200% 100%;
	border-radius: 24px 24px 0 0;
	animation: smm-btn-shimmer 6s ease-in-out infinite;
	pointer-events: none;
}
.single-product div.product .product_title {
	font-size: 22px !important;
	font-weight: 800 !important;
	margin: 0 0 6px !important;
	line-height: 1.3 !important;
	color: var(--smm-dark) !important;
}
.single-product div.product .woocommerce-product-details__short-description {
	color: #4b5563;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 16px;
}
.single-product div.product .product_meta { display: none !important; }

/* Left column cards */
.smm-pcard {
	background: #fff;
	border-radius: 18px;
	padding: 24px 26px;
	margin-bottom: 18px;
	box-shadow: 0 4px 12px rgba(15,23,42,.04), 0 0 0 1px rgba(15,23,42,.04);
	border: 0;
}
.smm-pcard h2 {
	font-size: 20px;
	font-weight: 800;
	margin: 0 0 16px;
	color: var(--smm-dark);
	border-bottom: 2px solid #f3e8ff;
	padding-bottom: 12px;
}
.smm-pcard-body { color: #374151; line-height: 1.7; font-size: 15px; }
.smm-pcard-body p { margin: 0 0 14px; }
.smm-pcard-body p:last-child { margin-bottom: 0; }
.smm-pcard-body strong { color: var(--smm-primary); }

/* Spec table */
.smm-spec-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.smm-spec-table th,
.smm-spec-table td {
	padding: 10px 12px;
	text-align: right;
	border-bottom: 1px solid #f3f4f6;
}
.smm-spec-table th {
	color: #6b7280;
	font-weight: 600;
	width: 40%;
	background: #fafafa;
}
.smm-spec-table td { color: var(--smm-dark); font-weight: 600; }
.smm-spec-table tr:last-child th,
.smm-spec-table tr:last-child td { border-bottom: 0; }

/* Stats strip (after summary) */
.smm-stats-strip {
	margin: 36px auto 28px;
	padding: 28px 24px;
	background: var(--smm-dark);
	border-radius: 24px;
	color: #fff;
	max-width: 1100px;
}
.smm-stats-inner {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 24px;
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.smm-stat-num {
	font-size: 32px;
	font-weight: 900;
	background: var(--smm-gradient-hero);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-bottom: 4px;
}
.smm-stat-label {
	font-size: 13px;
	color: #cbd5e1;
}

/* Section after-product wrappers */
.smm-product-section {
	margin: 36px auto;
	max-width: 1100px;
}
.smm-product-section > h2 {
	text-align: center;
	font-size: 28px;
	font-weight: 800;
	margin: 0 0 12px;
	color: var(--smm-dark);
}
.smm-product-section > .smm-section-subtitle {
	text-align: center;
	color: #6b7280;
	font-size: 16px;
	margin: 0 auto 32px;
	max-width: 600px;
}

/* How it works */
.smm-how-steps {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 24px;
}
.smm-how-step {
	background: #fff;
	border-radius: 18px;
	padding: 28px 24px;
	text-align: center;
	box-shadow: var(--smm-shadow-sm);
	border: 1px solid #f1f5f9;
}
.smm-how-num {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--smm-gradient-hero);
	color: #fff;
	font-size: 24px;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	box-shadow: 0 8px 20px rgba(109, 40, 217, .25);
}
.smm-how-step h3 {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 8px;
	color: var(--smm-dark);
}
.smm-how-step p { color: #6b7280; line-height: 1.6; margin: 0; }

/* Why us grid */
.smm-why-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 20px;
}
.smm-why-card {
	background: #fff;
	border-radius: 16px;
	padding: 24px;
	text-align: center;
	box-shadow: var(--smm-shadow-sm);
	border: 1px solid #f1f5f9;
	transition: transform .2s ease;
}
.smm-why-card:hover { transform: translateY(-4px); }
.smm-why-icon { font-size: 40px; margin-bottom: 12px; }
.smm-why-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 8px; color: var(--smm-dark); }
.smm-why-card p { color: #6b7280; font-size: 14px; line-height: 1.5; margin: 0; }

/* Product FAQ accordion */
.smm-product-faq {
	max-width: 760px;
	margin: 0 auto;
}
.smm-product-faq details {
	background: #fff;
	border-radius: 12px;
	padding: 18px 24px;
	margin-bottom: 12px;
	box-shadow: var(--smm-shadow-sm);
	cursor: pointer;
}
.smm-product-faq summary {
	font-weight: 700;
	font-size: 16px;
	color: var(--smm-dark);
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.smm-product-faq summary::after {
	content: '+';
	font-size: 24px;
	color: var(--smm-primary);
	transition: transform .15s ease;
}
.smm-product-faq details[open] summary::after { content: '−'; }
.smm-product-faq details > p { margin: 12px 0 0; color: #4b5563; line-height: 1.6; }

/* Testimonials */
.smm-testimonials-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 24px;
}
.smm-testimonial-card {
	background: #fff;
	border-radius: 18px;
	padding: 28px 24px;
	box-shadow: var(--smm-shadow-sm);
	border: 1px solid #f1f5f9;
}
.smm-testimonial-card .smm-stars { color: var(--smm-warning); font-size: 18px; margin-bottom: 12px; }
.smm-testimonial-card blockquote {
	font-size: 15px;
	line-height: 1.6;
	color: #1f2937;
	margin: 0 0 16px;
	font-style: italic;
}
.smm-testimonial-card cite {
	font-style: normal;
	font-size: 13px;
	color: #6b7280;
}

/* Money-back guarantee card */
.smm-money-back-card {
	background: linear-gradient(135deg, #ecfdf5, #d1fae5);
	border: 2px solid #10b981;
	border-radius: 20px;
	padding: 28px;
	display: flex;
	gap: 20px;
	align-items: center;
}
.smm-money-back-icon { font-size: 56px; }
.smm-money-back-card h3 { margin: 0 0 8px; color: #065f46; font-size: 20px; font-weight: 800; }
.smm-money-back-card p { margin: 0; color: #047857; line-height: 1.6; }

/* Related products styling — inherit from shop loop */
.related.products,
.upsells.products {
	max-width: 1280px;
	margin: 48px auto !important;
}
.related.products > h2,
.upsells.products > h2 {
	text-align: center;
	font-size: 24px;
	font-weight: 800;
	color: var(--smm-dark);
	margin-bottom: 24px;
}

/* Mobile tweaks for single product rich sections — full-bleed layout */
@media (max-width: 768px) {
	/* Remove the outer "container" feel: wrap + WC product wrapper go edge-to-edge */
	.smm-product-wrap {
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	.single-product .product { padding: 0 !important; max-width: 100% !important; margin: 0 !important; }
	.single-product .site-main,
	.single-product .inside-article,
	.single-product article.product,
	.single-product .entry-content { padding: 0 !important; margin: 0 !important; }

	/* Hero v2 mobile tweaks handled in its own media query */

	/* Grid: collapse to single column with 12px gutters from screen edges */
	.smm-product-grid {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
		margin-top: 0 !important;
		padding: 0 12px !important;
	}

	/* Cards on the left/right cols — tighter padding, smaller radius */
	.single-product div.product .summary {
		padding: 18px 16px !important;
		border-radius: 14px !important;
	}
	.smm-pcard {
		padding: 18px 16px !important;
		border-radius: 14px !important;
		margin-bottom: 12px !important;
	}

	/* Full-bleed sections below the grid — kill the side margins/borders */
	.smm-stats-strip {
		padding: 24px 16px;
		border-radius: 0 !important;
		margin: 12px 0 0 !important;
	}
	.smm-stat-num { font-size: 26px; }
	.smm-product-section {
		padding-left: 16px !important;
		padding-right: 16px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.smm-money-back-card {
		flex-direction: column;
		text-align: center;
		padding: 20px;
		border-radius: 14px !important;
		margin: 12px !important;
	}

	/* Breadcrumb above the hero — flush with the side gutter */
	.single-product .woocommerce-breadcrumb { padding: 12px 16px !important; margin: 0 !important; font-size: 13px; }
}

/* Phone (≤480) — even tighter side gutters */
@media (max-width: 480px) {
	.smm-product-grid { padding: 0 8px !important; gap: 8px !important; }
	.single-product div.product .summary,
	.smm-pcard { padding: 16px 14px !important; }
}

/* Hero section */
.smm-hero {
	background: var(--smm-gradient-hero);
	color: #fff;
	padding: 80px 24px;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.smm-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 20% 50%, rgba(255,255,255,.15) 0, transparent 50%),
	            radial-gradient(circle at 80% 80%, rgba(255,255,255,.1) 0, transparent 50%);
	pointer-events: none;
}
.smm-hero h1 { font-size: clamp(32px, 5vw, 56px); margin: 0 0 16px; font-weight: 800; }
.smm-hero p  { font-size: clamp(18px, 2vw, 22px); margin: 0 auto 32px; max-width: 720px; opacity: .95; }
.smm-hero .smm-cta {
	display: inline-block;
	background: #fff;
	color: var(--smm-primary);
	padding: 14px 36px;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
	font-size: 18px;
	box-shadow: var(--smm-shadow-md);
	transition: transform .15s ease;
}
.smm-hero .smm-cta:hover { transform: translateY(-2px); }

/* Platform pills (horizontal scroll) */
.smm-platforms {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	padding: 24px 16px;
	justify-content: center;
	flex-wrap: wrap;
}
.smm-platform-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #fff;
	border: 2px solid transparent;
	border-radius: 999px;
	padding: 10px 20px;
	font-weight: 600;
	color: var(--smm-dark);
	text-decoration: none;
	box-shadow: var(--smm-shadow-sm);
	transition: all .2s ease;
	white-space: nowrap;
}
.smm-platform-pill:hover {
	border-color: var(--smm-primary);
	transform: translateY(-2px);
	box-shadow: var(--smm-shadow-md);
}
.smm-platform-pill .icon { font-size: 22px; }

/* Glass cards */
.smm-card {
	background: var(--smm-gradient-card);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 16px;
	padding: 24px;
	box-shadow: var(--smm-shadow-sm);
	transition: transform .2s ease, box-shadow .2s ease;
}
.smm-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--smm-shadow-md);
}

/* Section headings */
.smm-section { padding: 64px 24px; }
.smm-section h2 {
	text-align: center;
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 800;
	margin: 0 auto 12px;
	color: var(--smm-dark);
}
.smm-section .smm-section-subtitle {
	text-align: center;
	color: #6b7280;
	font-size: 18px;
	margin: 0 auto 48px;
	max-width: 640px;
}

/* Feature grid */
.smm-features {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	max-width: 1200px;
	margin: 0 auto;
}
.smm-feature {
	background: #fff;
	border-radius: 16px;
	padding: 32px 24px;
	text-align: center;
	box-shadow: var(--smm-shadow-sm);
}
.smm-feature .icon {
	font-size: 40px;
	margin-bottom: 16px;
	display: block;
}
.smm-feature h3 {
	font-size: 20px;
	margin: 0 0 8px;
	font-weight: 700;
}
.smm-feature p {
	margin: 0;
	color: #6b7280;
	line-height: 1.6;
}

/* How-it-works steps */
.smm-steps {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 32px;
	max-width: 1100px;
	margin: 0 auto;
}
.smm-step {
	text-align: center;
	position: relative;
}
.smm-step .step-num {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--smm-gradient-hero);
	color: #fff;
	font-size: 24px;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
}
.smm-step h3 { font-size: 20px; margin: 0 0 8px; font-weight: 700; }
.smm-step p { color: #6b7280; }

/* Testimonials */
.smm-testimonial {
	background: #fff;
	border-radius: 16px;
	padding: 28px;
	box-shadow: var(--smm-shadow-sm);
	max-width: 800px;
	margin: 0 auto;
}
.smm-testimonial .stars { color: var(--smm-warning); font-size: 20px; }
.smm-testimonial blockquote {
	font-size: 18px;
	font-style: italic;
	color: var(--smm-dark);
	margin: 16px 0;
	line-height: 1.6;
}
.smm-testimonial cite { font-weight: 600; color: var(--smm-primary); font-style: normal; }

/* WooCommerce overrides */
.woocommerce-page .button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.woocommerce-page #place_order {
	background: var(--smm-gradient-hero) !important;
	color: #fff !important;
	border-radius: 999px !important;
	padding: 12px 32px !important;
	font-weight: 700 !important;
	border: 0 !important;
	box-shadow: var(--smm-shadow-sm);
	transition: transform .15s ease, box-shadow .15s ease;
}
.woocommerce-page .button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover,
.woocommerce-page #place_order:hover {
	transform: translateY(-2px);
	box-shadow: var(--smm-shadow-md);
}

.woocommerce ul.products li.product {
	background: #fff;
	border-radius: 16px;
	padding: 20px !important;
	box-shadow: var(--smm-shadow-sm);
	transition: transform .2s ease, box-shadow .2s ease;
}
.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: var(--smm-shadow-md);
}
.woocommerce ul.products li.product .price {
	color: var(--smm-primary) !important;
	font-weight: 800 !important;
	font-size: 22px !important;
}

/* Trust bar */
.smm-trust-bar {
	background: var(--smm-dark);
	color: #fff;
	padding: 16px 24px;
	text-align: center;
	font-size: 14px;
	display: flex;
	justify-content: center;
	gap: 32px;
	flex-wrap: wrap;
}
.smm-trust-bar span { display: inline-flex; align-items: center; gap: 8px; }

/* FAQ */
.smm-faq {
	max-width: 820px;
	margin: 0 auto;
}
.smm-faq details {
	background: #fff;
	border-radius: 12px;
	padding: 16px 24px;
	margin-bottom: 12px;
	box-shadow: var(--smm-shadow-sm);
	cursor: pointer;
}
.smm-faq summary {
	font-weight: 700;
	font-size: 18px;
	color: var(--smm-dark);
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.smm-faq summary::after { content: '+'; font-size: 24px; color: var(--smm-primary); }
.smm-faq details[open] summary::after { content: '−'; }
.smm-faq details > p {
	margin: 12px 0 0;
	color: #4b5563;
	line-height: 1.7;
}

/* Footer enhancements */
.site-footer { background: var(--smm-dark) !important; color: #cbd5e1; }
.site-footer a { color: #f8fafc; }
.site-footer a:hover { color: var(--smm-secondary); }

/* Responsive */
@media (max-width: 640px) {
	.smm-hero { padding: 56px 20px; }
	.smm-section { padding: 48px 16px; }
}

/* =============================================================================
 * HOMEPAGE V2 — Premium dark hero, KPIs, platform cards, live feed,
 * testimonials grid, guarantee, final CTA, sticky mobile bar
 * ========================================================================== */

:root {
	--smm-hero-bg: radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%);
	--smm-neon-purple: #a855f7;
	--smm-neon-pink: #ec4899;
	--smm-neon-cyan: #06b6d4;
	--smm-text-soft: #cbd5e1;
}

/* ---------------------------------------------------------------------------
 * HERO V2 (dark, neon, animated)
 * ------------------------------------------------------------------------- */
.smm-hero.v2 {
	background: var(--smm-hero-bg);
	color: #fff;
	padding: clamp(72px, 11vw, 120px) 24px clamp(64px, 9vw, 96px);
	text-align: center;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}
.smm-hero.v2::before { display: none; }
.smm-hero.v2 .smm-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-hero.v2 .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: .55;
	animation: smm-orb-float 14s ease-in-out infinite;
}
.smm-hero.v2 .smm-orb--1 {
	width: 540px; height: 540px;
	background: radial-gradient(circle, var(--smm-neon-purple), transparent 65%);
	top: -120px; right: -100px;
	animation-delay: 0s;
}
.smm-hero.v2 .smm-orb--2 {
	width: 460px; height: 460px;
	background: radial-gradient(circle, var(--smm-neon-pink), transparent 65%);
	bottom: -160px; left: -80px;
	animation-delay: -4s;
}
.smm-hero.v2 .smm-orb--3 {
	width: 320px; height: 320px;
	background: radial-gradient(circle, var(--smm-neon-cyan), transparent 65%);
	top: 30%; left: 50%;
	transform: translateX(-50%);
	opacity: .35;
	animation-delay: -8s;
}
@keyframes smm-orb-float {
	0%, 100% { transform: translate(0, 0) scale(1); }
	33%      { transform: translate(40px, -30px) scale(1.08); }
	66%      { transform: translate(-30px, 25px) scale(.95); }
}
.smm-hero.v2 .smm-orb--2 { transform-origin: center; }
.smm-hero.v2 .smm-grid-overlay {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
	background-size: 56px 56px;
	mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 30%, transparent 75%);
	-webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 30%, transparent 75%);
	pointer-events: none;
}
.smm-hero.v2 .smm-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 960px;
	margin: 0 auto;
}

.smm-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 24px;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.smm-pulse {
	width: 8px; height: 8px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 0 rgba(34,197,94,.7);
	animation: smm-pulse-anim 2s infinite;
}
@keyframes smm-pulse-anim {
	0%   { box-shadow: 0 0 0 0 rgba(34,197,94,.7); }
	70%  { box-shadow: 0 0 0 12px rgba(34,197,94,0); }
	100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); }
}

.smm-hero.v2 .smm-hero__title {
	font-size: clamp(34px, 6.4vw, 76px);
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: -.025em;
	margin: 0 0 20px;
	color: #fff;
	text-shadow: 0 2px 30px rgba(0,0,0,.25);
}
.smm-gradient-text {
	display: inline-block;
	background: linear-gradient(120deg, #fbbf24 0%, #ec4899 35%, #a855f7 70%, #06b6d4 100%);
	background-size: 250% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	animation: smm-gradient-shift 6s ease-in-out infinite;
}
@keyframes smm-gradient-shift {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

.smm-hero.v2 .smm-hero__lead {
	font-size: clamp(16px, 2vw, 21px);
	line-height: 1.55;
	color: var(--smm-text-soft);
	margin: 0 auto 28px;
	max-width: 720px;
}
.smm-hero.v2 .smm-hero__lead strong { color: #fbbf24; font-weight: 800; }

.smm-hero__rating {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 32px;
	flex-wrap: wrap;
	justify-content: center;
}
.smm-hero__rating .smm-stars {
	color: #fbbf24;
	font-size: 22px;
	letter-spacing: 2px;
	text-shadow: 0 0 12px rgba(251,191,36,.6);
}
.smm-hero__rating .smm-rating-text {
	color: var(--smm-text-soft);
	font-size: 14px;
}
.smm-hero__rating .smm-rating-text strong { color: #fff; font-weight: 800; }

.smm-hero__cta {
	display: flex;
	gap: 14px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 40px;
}

/* Buttons */
.smm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 16px 32px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 16px;
	text-decoration: none !important;
	transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
	cursor: pointer;
	white-space: nowrap;
}
.smm-btn--primary {
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	background-size: 200% 100%;
	color: #fff !important;
	box-shadow: 0 14px 30px -10px rgba(236,72,153,.55), 0 0 0 1px rgba(255,255,255,.08) inset;
	animation: smm-btn-shimmer 4s ease-in-out infinite;
}
@keyframes smm-btn-shimmer {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}
.smm-btn--primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 22px 40px -10px rgba(236,72,153,.65), 0 0 0 1px rgba(255,255,255,.12) inset;
}
.smm-btn--ghost {
	background: rgba(255,255,255,.08);
	color: #fff !important;
	border: 1.5px solid rgba(255,255,255,.18);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.smm-btn--ghost:hover {
	background: rgba(255,255,255,.14);
	transform: translateY(-2px);
}
.smm-btn--lg { padding: 18px 38px; font-size: 17px; }
.smm-btn__arrow {
	display: inline-block;
	transition: transform .2s ease;
	font-size: 18px;
}
.smm-btn:hover .smm-btn__arrow { transform: translateX(-4px); }

/* Hero brand strip */
.smm-hero__brands {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.smm-hero__brands-label {
	font-size: 12px;
	font-weight: 700;
	color: rgba(255,255,255,.5);
	letter-spacing: .12em;
	text-transform: uppercase;
}
.smm-hero__brands-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
}
.smm-brand-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 999px;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform .15s ease, background .15s ease, border-color .15s ease;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.smm-brand-chip:hover {
	transform: translateY(-2px);
	background: rgba(255,255,255,.12);
	border-color: rgba(255,255,255,.25);
}

/* ---------------------------------------------------------------------------
 * TRUST BAR V2 — sleek dark band right under hero
 * ------------------------------------------------------------------------- */
.smm-trust-bar.v2 {
	background: linear-gradient(180deg, #050214 0%, #0a0420 100%);
	color: #cbd5e1;
	padding: 16px 24px;
	font-size: 14px;
	font-weight: 600;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 28px;
	border-top: 1px solid rgba(255,255,255,.06);
	border-bottom: 1px solid rgba(255,255,255,.06);
}
.smm-trust-bar.v2 span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}
.smm-trust-bar.v2 .ico { font-size: 16px; }

/* ---------------------------------------------------------------------------
 * KPI strip
 * ------------------------------------------------------------------------- */
.smm-kpis {
	background: linear-gradient(180deg, #fff 0%, #faf7ff 100%);
	padding: 48px 24px;
	border-bottom: 1px solid #f1ecf9;
}
.smm-kpis__inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
.smm-kpi {
	text-align: center;
	padding: 12px 8px;
	border-right: 1px solid #ece5f6;
}
.smm-kpi:first-child { border-right: 0; }
.smm-kpi__num {
	font-size: clamp(28px, 4.4vw, 48px);
	font-weight: 900;
	line-height: 1;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.02em;
}
.smm-kpi__num .plus { font-size: .65em; color: #ec4899; -webkit-text-fill-color: #ec4899; }
.smm-kpi__lbl {
	font-size: 13px;
	color: #6b7280;
	margin-top: 6px;
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * PLATFORMS GRID
 * ------------------------------------------------------------------------- */
.smm-section--platforms { background: #fff; }
.smm-platforms-grid {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 18px;
	box-sizing: border-box;
}
.smm-platform-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding: 28px 24px 22px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 20px;
	color: var(--smm-dark) !important;
	text-decoration: none !important;
	overflow: hidden;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	isolation: isolate;
}
.smm-platform-card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--platform-glow, linear-gradient(135deg, rgba(168,85,247,.08), rgba(236,72,153,.08)));
	opacity: 0;
	transition: opacity .25s ease;
	z-index: -1;
}
.smm-platform-card:hover {
	transform: translateY(-6px);
	border-color: transparent;
	box-shadow: 0 24px 40px -16px rgba(109, 40, 217, .25), 0 0 0 1.5px rgba(168,85,247,.4);
}
.smm-platform-card:hover::before { opacity: 1; }
.smm-platform-card__ico {
	font-size: 38px;
	line-height: 1;
	margin-bottom: 8px;
	filter: drop-shadow(0 4px 12px rgba(109,40,217,.2));
	transition: transform .25s ease;
}
.smm-platform-card:hover .smm-platform-card__ico { transform: scale(1.12) rotate(-4deg); }
.smm-platform-card__name {
	font-size: 19px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-platform-card__meta {
	font-size: 13px;
	color: #6b7280;
	font-weight: 600;
}
.smm-platform-card__cta {
	margin-top: 14px;
	font-size: 13px;
	font-weight: 800;
	color: var(--smm-primary);
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.smm-platform-card__cta span { transition: transform .2s ease; display: inline-block; }
.smm-platform-card:hover .smm-platform-card__cta span { transform: translateX(-4px); }

/* Per-platform glow tints */
.platform--ig       { --platform-glow: linear-gradient(135deg, rgba(225,48,108,.10), rgba(255,221,77,.10), rgba(131,58,180,.10)); }
.platform--tt       { --platform-glow: linear-gradient(135deg, rgba(0,0,0,.06), rgba(37,244,238,.10), rgba(254,44,85,.10)); }
.platform--yt       { --platform-glow: linear-gradient(135deg, rgba(255,0,0,.10), rgba(0,0,0,.06)); }
.platform--fb       { --platform-glow: linear-gradient(135deg, rgba(24,119,242,.12), rgba(24,119,242,.05)); }
.platform--x        { --platform-glow: linear-gradient(135deg, rgba(0,0,0,.10), rgba(75,75,75,.06)); }
.platform--tg       { --platform-glow: linear-gradient(135deg, rgba(34,158,217,.12), rgba(34,158,217,.05)); }
.platform--bundles  { --platform-glow: linear-gradient(135deg, rgba(251,191,36,.14), rgba(236,72,153,.10)); }

/* ---------------------------------------------------------------------------
 * Section variants — alternate background
 * ------------------------------------------------------------------------- */
.smm-section--alt { background: linear-gradient(180deg, #faf7ff 0%, #fff 100%); }
.smm-section h2 .smm-fire,
.smm-section h2 .smm-badge-save {
	display: inline-block;
	margin-right: 8px;
	vertical-align: middle;
}
.smm-badge-save {
	font-size: 14px;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 4px 12px;
	border-radius: 999px;
	font-weight: 800;
	vertical-align: middle;
	box-shadow: 0 6px 14px -4px rgba(236,72,153,.45);
}

/* ---------------------------------------------------------------------------
 * LIVE FEED
 * ------------------------------------------------------------------------- */
.smm-section--live { background: linear-gradient(180deg, #0f0823 0%, #1a0d3d 100%); color: #fff; padding: 64px 24px; }
.smm-section--live h2 { color: #fff !important; }
.smm-section--live .smm-section-subtitle { color: rgba(255,255,255,.7) !important; }
.smm-live {
	max-width: 760px;
	margin: 0 auto;
}
.smm-live__header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 24px;
	flex-wrap: wrap;
	justify-content: center;
}
.smm-live__header h2 {
	margin: 0 !important;
	font-size: clamp(22px, 3vw, 32px) !important;
	color: #fff !important;
}
.smm-live__dot {
	width: 12px; height: 12px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 0 rgba(34,197,94,.7), 0 0 18px rgba(34,197,94,.5);
	animation: smm-pulse-anim 2s infinite;
}
.smm-live__sub {
	font-size: 13px;
	color: rgba(255,255,255,.55);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .1em;
}
.smm-live__feed {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.smm-live__feed li {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	background: rgba(255,255,255,.04);
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 14px;
	font-size: 14px;
	color: var(--smm-text-soft);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	transition: background .2s ease, border-color .2s ease;
	animation: smm-live-in .55s ease both;
}
.smm-live__feed li:nth-child(2) { animation-delay: .1s; }
.smm-live__feed li:nth-child(3) { animation-delay: .2s; }
.smm-live__feed li:nth-child(4) { animation-delay: .3s; }
.smm-live__feed li:nth-child(5) { animation-delay: .4s; }
.smm-live__feed li:nth-child(6) { animation-delay: .5s; }
.smm-live__feed li:hover { background: rgba(255,255,255,.08); border-color: rgba(168,85,247,.35); }
@keyframes smm-live-in {
	from { opacity: 0; transform: translateY(8px); }
	to   { opacity: 1; transform: translateY(0); }
}
.smm-live__when {
	font-size: 12px;
	color: rgba(255,255,255,.5);
	font-weight: 600;
	white-space: nowrap;
	min-width: 96px;
}
.smm-live__what strong { color: #fff; font-weight: 700; }
.smm-live__plat { font-size: 22px; line-height: 1; }

/* ---------------------------------------------------------------------------
 * STEPS V2 — connecting line between cards on desktop
 * ------------------------------------------------------------------------- */
.smm-steps.v2 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
}
.smm-steps.v2::before {
	content: '';
	position: absolute;
	top: 32px;
	right: calc(16.66% + 32px);
	left: calc(16.66% + 32px);
	height: 2px;
	background: linear-gradient(90deg, transparent, #ec489955, #a855f755, #ec489955, transparent);
	z-index: 0;
}
.smm-steps.v2 .smm-step {
	background: #fff;
	border-radius: 20px;
	padding: 32px 24px 28px;
	text-align: center;
	box-shadow: var(--smm-shadow-sm);
	border: 1.5px solid #ece5f6;
	position: relative;
	z-index: 1;
	transition: transform .2s ease, box-shadow .2s ease;
}
.smm-steps.v2 .smm-step:hover {
	transform: translateY(-4px);
	box-shadow: 0 24px 40px -16px rgba(109,40,217,.2);
}
.smm-steps.v2 .smm-step__num {
	width: 64px; height: 64px;
	margin: -56px auto 18px;
	border-radius: 50%;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	color: #fff;
	font-size: 26px;
	font-weight: 900;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 14px 28px -8px rgba(109,40,217,.45);
	border: 4px solid #fff;
}
.smm-steps.v2 .smm-step h3 { font-size: 21px; margin: 0 0 8px; font-weight: 800; }
.smm-steps.v2 .smm-step p { color: #6b7280; line-height: 1.65; margin: 0; }

/* ---------------------------------------------------------------------------
 * FEATURES V2 — 3-col grid with hover lift
 * ------------------------------------------------------------------------- */
.smm-features.v2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 20px;
	max-width: 1200px;
	margin: 0 auto;
}
.smm-features.v2 .smm-feature {
	background: #fff;
	border-radius: 18px;
	padding: 28px 24px;
	text-align: right;
	box-shadow: var(--smm-shadow-sm);
	border: 1.5px solid #ece5f6;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	position: relative;
	overflow: hidden;
}
.smm-features.v2 .smm-feature::after {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, #6d28d9, #ec4899, #06b6d4);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .3s ease;
}
.smm-features.v2 .smm-feature:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 40px -16px rgba(109,40,217,.2);
	border-color: rgba(168,85,247,.3);
}
.smm-features.v2 .smm-feature:hover::after { transform: scaleX(1); }
.smm-features.v2 .smm-feature__ico {
	font-size: 36px;
	display: inline-block;
	margin-bottom: 14px;
	filter: drop-shadow(0 4px 10px rgba(109,40,217,.2));
}
.smm-features.v2 .smm-feature h3 { font-size: 19px; margin: 0 0 6px; font-weight: 800; }
.smm-features.v2 .smm-feature p { color: #6b7280; margin: 0; line-height: 1.6; }

/* ---------------------------------------------------------------------------
 * TESTIMONIALS GRID V2
 * ------------------------------------------------------------------------- */
.smm-testimonials-grid.v2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 18px;
	max-width: 1200px;
	margin: 0 auto;
}
.smm-tcard {
	background: #fff;
	border-radius: 18px;
	padding: 24px;
	border: 1.5px solid #ece5f6;
	box-shadow: var(--smm-shadow-sm);
	transition: transform .2s ease, box-shadow .2s ease;
}
.smm-tcard:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 36px -14px rgba(109,40,217,.18);
}
.smm-tcard__head {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.smm-tcard__avatar {
	width: 44px; height: 44px;
	border-radius: 50%;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
	font-size: 18px;
	box-shadow: 0 6px 14px -4px rgba(109,40,217,.4);
}
.smm-tcard__who { line-height: 1.3; }
.smm-tcard__name { font-weight: 800; font-size: 15px; color: var(--smm-dark); }
.smm-tcard__role { font-size: 12px; color: #6b7280; font-weight: 600; }
.smm-tcard__stars { color: var(--smm-warning); font-size: 14px; letter-spacing: 1px; }
.smm-tcard blockquote {
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
	color: #374151;
	font-style: normal;
	position: relative;
	padding-right: 18px;
}
.smm-tcard blockquote::before {
	content: '”';
	position: absolute;
	right: -4px;
	top: -10px;
	font-size: 36px;
	color: rgba(168,85,247,.25);
	font-family: Georgia, serif;
	line-height: 1;
}

/* ---------------------------------------------------------------------------
 * GUARANTEE STRIP — vibrant section
 * ------------------------------------------------------------------------- */
.smm-guarantee {
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 50%, #f59e0b 100%);
	background-size: 200% 200%;
	animation: smm-gradient-shift 12s ease-in-out infinite;
	color: #fff;
	padding: 72px 24px;
	position: relative;
	overflow: hidden;
}
.smm-guarantee::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 20% 30%, rgba(255,255,255,.15) 0, transparent 40%),
		radial-gradient(circle at 80% 70%, rgba(255,255,255,.12) 0, transparent 45%);
	pointer-events: none;
}
.smm-guarantee__inner {
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
}
.smm-guarantee__head { text-align: center; margin-bottom: 40px; }
.smm-guarantee__head h2 {
	font-size: clamp(28px, 4vw, 42px);
	font-weight: 900;
	margin: 0 0 10px;
	color: #fff;
	letter-spacing: -.02em;
}
.smm-guarantee__head p { font-size: 17px; color: rgba(255,255,255,.85); margin: 0; }
.smm-guarantee__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
}
.smm-guarantee__card {
	background: rgba(255,255,255,.10);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 20px;
	padding: 32px 24px;
	text-align: center;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	transition: transform .25s ease, background .25s ease;
}
.smm-guarantee__card:hover { transform: translateY(-6px); background: rgba(255,255,255,.16); }
.smm-guarantee__num {
	font-size: 56px;
	font-weight: 900;
	line-height: 1;
	color: #fff;
	margin-bottom: 8px;
	text-shadow: 0 4px 18px rgba(0,0,0,.2);
}
.smm-guarantee__num span { font-size: .6em; opacity: .85; }
.smm-guarantee__lbl {
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	margin-bottom: 12px;
}
.smm-guarantee__card p { color: rgba(255,255,255,.85); margin: 0; line-height: 1.55; font-size: 14px; }

/* ---------------------------------------------------------------------------
 * FAQ V2
 * ------------------------------------------------------------------------- */
.smm-faq.v2 details {
	border: 1.5px solid #ece5f6;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 6px -2px rgba(15,23,42,.05);
	transition: border-color .2s ease, box-shadow .2s ease;
}
.smm-faq.v2 details[open] {
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 12px 24px -10px rgba(109,40,217,.18);
}
.smm-faq.v2 summary { font-size: 17px; }
.smm-faq.v2 details > p { font-size: 15px; }

/* ---------------------------------------------------------------------------
 * FINAL CTA
 * ------------------------------------------------------------------------- */
.smm-final-cta {
	background: var(--smm-hero-bg);
	color: #fff;
	padding: clamp(72px, 10vw, 110px) 24px;
	text-align: center;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}
.smm-final-cta__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-final-cta .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(90px);
	opacity: .55;
	animation: smm-orb-float 16s ease-in-out infinite;
}
.smm-final-cta .smm-orb--1 {
	width: 480px; height: 480px;
	background: radial-gradient(circle, var(--smm-neon-purple), transparent 65%);
	top: -120px; right: -80px;
}
.smm-final-cta .smm-orb--2 {
	width: 420px; height: 420px;
	background: radial-gradient(circle, var(--smm-neon-pink), transparent 65%);
	bottom: -120px; left: -60px;
	animation-delay: -5s;
}
.smm-final-cta__inner { position: relative; z-index: 1; max-width: 820px; margin: 0 auto; }
.smm-final-cta h2 {
	font-size: clamp(30px, 5vw, 56px);
	font-weight: 900;
	margin: 0 0 14px;
	color: #fff;
	letter-spacing: -.02em;
	line-height: 1.1;
}
.smm-final-cta p {
	font-size: clamp(16px, 2vw, 19px);
	color: var(--smm-text-soft);
	margin: 0 auto 32px;
	max-width: 600px;
	line-height: 1.6;
}
.smm-final-cta__buttons {
	display: flex;
	gap: 14px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 24px;
}
.smm-final-cta__sub {
	font-size: 13px;
	color: rgba(255,255,255,.55);
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * STICKY MOBILE CTA — bottom bar
 * ------------------------------------------------------------------------- */
.smm-sticky-cta {
	display: none;
	position: fixed;
	left: 0; right: 0; bottom: 0;
	z-index: 90;
	padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
	background: rgba(15,8,35,.94);
	-webkit-backdrop-filter: saturate(180%) blur(16px);
	backdrop-filter: saturate(180%) blur(16px);
	border-top: 1px solid rgba(255,255,255,.08);
	gap: 10px;
	box-shadow: 0 -8px 24px rgba(0,0,0,.25);
}
.smm-sticky-cta a {
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 16px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 15px;
	text-decoration: none !important;
	white-space: nowrap;
}
.smm-sticky-cta__primary {
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	color: #fff !important;
	box-shadow: 0 10px 24px -8px rgba(236,72,153,.5);
}
.smm-sticky-cta__ghost {
	background: rgba(255,255,255,.10);
	color: #fff !important;
	border: 1px solid rgba(255,255,255,.15);
}

/* ---------------------------------------------------------------------------
 * Force-cancel any built-in homepage padding nodes that fight the layout
 * ------------------------------------------------------------------------- */
body.home .entry-content > .smm-kpis,
body.page-id-62 .entry-content > .smm-kpis,
body.home .entry-content > .smm-guarantee,
body.page-id-62 .entry-content > .smm-guarantee,
body.home .entry-content > .smm-final-cta,
body.page-id-62 .entry-content > .smm-final-cta,
body.home .entry-content > .smm-trust-bar,
body.page-id-62 .entry-content > .smm-trust-bar {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	max-width: none !important;
}

/* ---------------------------------------------------------------------------
 * RESPONSIVE — mobile / tablet / desktop tuning
 * ------------------------------------------------------------------------- */

/* Tablet ≤1024 */
@media (max-width: 1024px) {
	.smm-kpis__inner { grid-template-columns: repeat(4, 1fr); gap: 8px; }
	.smm-kpi { padding: 8px 4px; }
	.smm-platforms-grid { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
	.smm-steps.v2 { gap: 24px; }
	.smm-steps.v2::before { display: none; }
}

/* Mobile ≤640 */
@media (max-width: 640px) {
	.smm-hero.v2 { padding: 72px 18px 64px; }
	.smm-hero.v2 .smm-orb--1 { width: 340px; height: 340px; right: -120px; top: -80px; }
	.smm-hero.v2 .smm-orb--2 { width: 320px; height: 320px; left: -100px; bottom: -120px; }
	.smm-hero.v2 .smm-orb--3 { display: none; }
	.smm-hero.v2 .smm-hero__title { font-size: clamp(30px, 9vw, 42px); }
	.smm-hero.v2 .smm-hero__lead { font-size: 16px; }
	.smm-hero__rating { gap: 8px; }
	.smm-hero__rating .smm-rating-text { font-size: 13px; }
	.smm-hero__cta { flex-direction: column; width: 100%; gap: 10px; }
	.smm-hero__cta .smm-btn { width: 100%; }

	.smm-trust-bar.v2 { gap: 6px 14px; font-size: 13px; padding: 14px 16px; }

	.smm-kpis { padding: 32px 16px; }
	.smm-kpis__inner { grid-template-columns: repeat(2, 1fr); gap: 10px 4px; }
	.smm-kpi { border-right: 0; border-bottom: 1px solid #ece5f6; padding: 14px 6px; }
	.smm-kpi:nth-child(odd) { border-right: 1px solid #ece5f6; }
	.smm-kpi:nth-last-child(-n+2) { border-bottom: 0; }

	.smm-platforms-grid { grid-template-columns: 1fr 1fr; gap: 10px; padding: 0 16px; }
	.smm-platform-card { padding: 22px 16px 18px; border-radius: 16px; }
	.smm-platform-card__ico { font-size: 32px; }
	.smm-platform-card__name { font-size: 16px; }
	.smm-platform-card__meta { font-size: 12px; }
	.smm-platform-card__cta { font-size: 12px; margin-top: 10px; }

	.smm-section--live { padding: 56px 16px; }
	.smm-live__feed li {
		grid-template-columns: 1fr auto;
		gap: 6px 12px;
		padding: 12px 14px;
		font-size: 13px;
	}
	.smm-live__when {
		grid-column: 1 / -1;
		min-width: 0;
		font-size: 11px;
		order: -1;
	}
	.smm-live__plat { font-size: 20px; }

	.smm-steps.v2 { grid-template-columns: 1fr; gap: 50px 0; padding: 56px 16px 24px; }
	.smm-steps.v2 .smm-step__num { margin-top: -32px; }

	.smm-features.v2 { gap: 12px; }
	.smm-features.v2 .smm-feature { padding: 22px 18px; }

	.smm-testimonials-grid.v2 { grid-template-columns: 1fr; gap: 12px; }
	.smm-tcard { padding: 20px; }

	.smm-guarantee { padding: 56px 16px; }
	.smm-guarantee__num { font-size: 44px; }
	.smm-guarantee__card { padding: 24px 18px; }

	.smm-final-cta { padding: 64px 18px; }
	.smm-final-cta__buttons { flex-direction: column; }
	.smm-final-cta__buttons .smm-btn { width: 100%; }
	.smm-final-cta__sub { font-size: 12px; }

	/* Show sticky CTA only on mobile */
	.smm-sticky-cta { display: flex; }
	/* Add bottom padding so footer/content isn't hidden behind the bar */
	body.home,
	body.page-id-62 { padding-bottom: 80px; }
}

/* Hide brand chips horizontal overflow gracefully */
.smm-hero__brands-list::-webkit-scrollbar { display: none; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.smm-orb,
	.smm-pulse,
	.smm-gradient-text,
	.smm-btn--primary,
	.smm-guarantee,
	.smm-live__feed li {
		animation: none !important;
	}
}

/* =============================================================================
 * ARCHIVE V2 — Hero KPIs, type-filter, ribbon, social-proof, related cats, FAQ, finalCTA
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * Archive Hero V2 — KPI strip + shortcut chips
 * ------------------------------------------------------------------------- */
.smm-archive-hero.v2 { padding: 56px 24px 40px; }
.smm-archive-hero__kpis {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
	max-width: 920px;
	margin: 18px auto 0;
}
.smm-akpi {
	background: rgba(255,255,255,.14);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,.20);
	border-radius: 14px;
	padding: 12px 10px;
	text-align: center;
	color: #fff;
}
.smm-akpi__num {
	font-size: clamp(15px, 2vw, 22px);
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -.01em;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.smm-akpi__lbl {
	font-size: 11px;
	color: rgba(255,255,255,.75);
	font-weight: 700;
	margin-top: 4px;
	letter-spacing: .03em;
}

.smm-archive-hero__shortcuts {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
	margin-top: 18px;
}
.smm-archive-hero__shortcuts-label {
	font-size: 12px;
	font-weight: 800;
	color: rgba(255,255,255,.78);
	letter-spacing: .08em;
	text-transform: uppercase;
}
.smm-archive-hero__shortcut {
	display: inline-flex;
	align-items: center;
	padding: 7px 14px;
	background: rgba(255,255,255,.18);
	border: 1px solid rgba(255,255,255,.28);
	border-radius: 999px;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	transition: background .15s ease, transform .15s ease;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	cursor: pointer;
}
.smm-archive-hero__shortcut:hover {
	background: rgba(255,255,255,.28);
	transform: translateY(-2px);
}

/* Hide the legacy chips row on v2 hero */
.smm-archive-hero.v2 .smm-archive-hero__chips { display: none; }

/* ---------------------------------------------------------------------------
 * Type-filter chip bar (above sort bar)
 * ------------------------------------------------------------------------- */
.smm-type-filter {
	max-width: 1280px;
	margin: 18px auto 0;
	padding: 0 24px;
}
.smm-type-filter__inner {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding: 4px 0;
}
.smm-type-filter__inner::-webkit-scrollbar { display: none; }
.smm-type-chip {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 18px;
	background: #fff;
	color: var(--smm-dark);
	border: 1.5px solid #e5e7eb;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	scroll-snap-align: start;
	flex: 0 0 auto;
	transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
	font-family: inherit;
}
.smm-type-chip:hover {
	border-color: rgba(168,85,247,.4);
	background: rgba(168,85,247,.05);
	color: var(--smm-primary);
}
.smm-type-chip.is-active {
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	color: #fff;
	border-color: transparent;
	box-shadow: 0 8px 18px -6px rgba(109,40,217,.45);
}
.smm-type-chip__ico { font-size: 16px; line-height: 1; }

/* Filtering — hide non-matching cards */
[data-smm-grid].smm-grid-filtered-followers li.product:not(.smm-stype-followers),
[data-smm-grid].smm-grid-filtered-likes li.product:not(.smm-stype-likes),
[data-smm-grid].smm-grid-filtered-views li.product:not(.smm-stype-views),
[data-smm-grid].smm-grid-filtered-comments li.product:not(.smm-stype-comments),
[data-smm-grid].smm-grid-filtered-shares li.product:not(.smm-stype-shares),
[data-smm-grid].smm-grid-filtered-saves li.product:not(.smm-stype-saves),
[data-smm-grid].smm-grid-filtered-watchtime li.product:not(.smm-stype-watchtime),
[data-smm-grid].smm-grid-filtered-reactions li.product:not(.smm-stype-reactions),
[data-smm-grid].smm-grid-filtered-votes li.product:not(.smm-stype-votes),
[data-smm-grid].smm-grid-filtered-auto li.product:not(.smm-stype-auto),
[data-smm-grid].smm-grid-filtered-bundle li.product:not(.smm-stype-bundle),
[data-smm-grid].smm-grid-filtered-other li.product:not(.smm-stype-other) {
	display: none !important;
}

/* ---------------------------------------------------------------------------
 * Product card upgrades — ribbon, social-proof, "starting from"
 * ------------------------------------------------------------------------- */
.smm-loop-ribbon {
	position: absolute;
	top: 14px;
	left: -38px;
	transform: rotate(-35deg);
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 4px 40px;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .05em;
	box-shadow: 0 4px 10px rgba(236,72,153,.4);
	z-index: 3;
	pointer-events: none;
	white-space: nowrap;
}

.smm-loop-social {
	margin: 0 !important;
	padding: 0 20px 6px !important;
	font-size: 12px !important;
	color: #16a34a !important;
	font-weight: 700 !important;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.smm-loop-social__pulse {
	width: 7px; height: 7px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 0 rgba(34,197,94,.6);
	animation: smm-pulse-anim 2s infinite;
	display: inline-block;
}

.smm-loop-startfrom {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dashed rgba(168,85,247,.25);
}
.smm-loop-startfrom__lbl {
	font-size: 12px;
	color: #6b7280;
	font-weight: 700;
}
.smm-loop-startfrom__price {
	font-size: 20px;
	font-weight: 900;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.01em;
}

/* Per-platform card hover-glow on product cards */
.woocommerce ul.products li.product { transition: transform .2s ease, box-shadow .25s ease !important; }
.woocommerce ul.products li.product.smm-stype-followers:hover,
.woocommerce ul.products li.product.smm-stype-likes:hover,
.woocommerce ul.products li.product.smm-stype-views:hover,
.woocommerce ul.products li.product.smm-stype-comments:hover {
	box-shadow: 0 24px 48px -16px rgba(168,85,247,.28), 0 0 0 1.5px rgba(168,85,247,.35) !important;
}

/* ---------------------------------------------------------------------------
 * BELOW-ARCHIVE — Trust strip
 * ------------------------------------------------------------------------- */
.smm-archive-trust {
	background: linear-gradient(180deg, #faf7ff 0%, #fff 100%);
	padding: 36px 24px;
	margin: 32px 0 0;
	border-top: 1px solid #f1ecf9;
	border-bottom: 1px solid #f1ecf9;
}
.smm-archive-trust__inner {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 16px;
}
.smm-archive-trust__item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 4px;
}
.smm-archive-trust__item > span {
	font-size: 28px;
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, rgba(168,85,247,.10), rgba(236,72,153,.10));
	border-radius: 12px;
}
.smm-archive-trust__item > div { line-height: 1.3; }
.smm-archive-trust__item strong {
	display: block;
	font-size: 14px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-archive-trust__item span:not(:first-child) {
	display: block;
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
}
.smm-archive-trust__item div span {
	display: block;
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * BELOW-ARCHIVE — Related platforms
 * ------------------------------------------------------------------------- */
.smm-archive-related {
	padding: 56px 24px;
	background: #fff;
}
.smm-archive-related__inner {
	max-width: 1200px;
	margin: 0 auto;
}
.smm-archive-related header {
	text-align: center;
	margin-bottom: 28px;
}
.smm-archive-related header h2 {
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 800;
	margin: 0 0 8px;
	color: var(--smm-dark);
}
.smm-archive-related header p {
	color: #6b7280;
	margin: 0;
	font-size: 15px;
}
.smm-archive-related__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 14px;
}
.smm-archive-related__card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 14px;
	padding: 18px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 16px;
	color: var(--smm-dark) !important;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	overflow: hidden;
	position: relative;
	isolation: isolate;
}
.smm-archive-related__card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--platform-glow, linear-gradient(135deg, rgba(168,85,247,.08), rgba(236,72,153,.08)));
	opacity: 0;
	transition: opacity .25s ease;
	z-index: -1;
}
.smm-archive-related__card:hover {
	transform: translateY(-4px);
	border-color: transparent;
	box-shadow: 0 18px 36px -16px rgba(109,40,217,.25), 0 0 0 1.5px rgba(168,85,247,.35);
}
.smm-archive-related__card:hover::before { opacity: 1; }
.smm-archive-related__ico {
	font-size: 32px;
	line-height: 1;
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, rgba(168,85,247,.10), rgba(236,72,153,.10));
	border-radius: 12px;
	flex-shrink: 0;
}
.smm-archive-related__name {
	font-size: 16px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-archive-related__sub {
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
	margin-top: 2px;
}
.smm-archive-related__arrow {
	color: var(--smm-primary);
	font-size: 18px;
	font-weight: 800;
	transition: transform .2s ease;
}
.smm-archive-related__card:hover .smm-archive-related__arrow { transform: translateX(-4px); }

/* ---------------------------------------------------------------------------
 * BELOW-ARCHIVE — Category FAQ
 * ------------------------------------------------------------------------- */
.smm-archive-faq-section {
	padding: 56px 24px;
	background: linear-gradient(180deg, #faf7ff 0%, #fff 100%);
}
.smm-archive-faq-section__inner {
	max-width: 820px;
	margin: 0 auto;
}
.smm-archive-faq-section header {
	text-align: center;
	margin-bottom: 28px;
}
.smm-archive-faq-section header h2 {
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 800;
	margin: 0 0 8px;
	color: var(--smm-dark);
}
.smm-archive-faq-section header p {
	color: #6b7280;
	margin: 0;
	font-size: 15px;
}

/* ---------------------------------------------------------------------------
 * BELOW-ARCHIVE — Final CTA (dark, dramatic)
 * ------------------------------------------------------------------------- */
.smm-archive-finalcta {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #fff;
	padding: clamp(56px, 8vw, 88px) 24px;
	text-align: center;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}
.smm-archive-finalcta__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-archive-finalcta .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: .55;
	animation: smm-orb-float 16s ease-in-out infinite;
}
.smm-archive-finalcta .smm-orb--1 {
	width: 420px; height: 420px;
	background: radial-gradient(circle, var(--smm-neon-purple, #a855f7), transparent 65%);
	top: -100px; right: -80px;
}
.smm-archive-finalcta .smm-orb--2 {
	width: 380px; height: 380px;
	background: radial-gradient(circle, var(--smm-neon-pink, #ec4899), transparent 65%);
	bottom: -100px; left: -60px;
	animation-delay: -5s;
}
.smm-archive-finalcta__inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
}
.smm-archive-finalcta h2 {
	font-size: clamp(24px, 4vw, 40px);
	font-weight: 900;
	margin: 0 0 12px;
	color: #fff;
	letter-spacing: -.02em;
	line-height: 1.15;
}
.smm-archive-finalcta p {
	font-size: clamp(15px, 2vw, 17px);
	color: var(--smm-text-soft, #cbd5e1);
	margin: 0 auto 28px;
	max-width: 560px;
	line-height: 1.6;
}
.smm-archive-finalcta__buttons {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}

/* ---------------------------------------------------------------------------
 * RESPONSIVE — archive-specific tuning
 * ------------------------------------------------------------------------- */

/* Tablet ≤1024 */
@media (max-width: 1024px) {
	.smm-archive-hero__kpis { grid-template-columns: repeat(5, 1fr); gap: 8px; }
	.smm-akpi { padding: 10px 6px; }
	.smm-akpi__num { font-size: clamp(14px, 1.8vw, 18px); }
	.smm-archive-trust__inner { grid-template-columns: repeat(3, 1fr); }
}

/* Mobile ≤640 */
@media (max-width: 640px) {
	.smm-archive-hero.v2 { padding: 44px 18px 32px; border-radius: 0 0 24px 24px; }
	.smm-archive-hero__kpis {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
		margin-top: 14px;
	}
	.smm-archive-hero__kpis .smm-akpi:nth-child(n+4) { grid-column: span 1; }
	.smm-akpi { padding: 10px 6px; border-radius: 12px; }
	.smm-akpi__num { font-size: 15px; }
	.smm-akpi__lbl { font-size: 10px; }
	.smm-archive-hero__shortcuts { gap: 6px; margin-top: 14px; }
	.smm-archive-hero__shortcut { font-size: 12px; padding: 6px 12px; }
	.smm-archive-hero__shortcuts-label { width: 100%; text-align: center; }

	.smm-type-filter { padding: 0 12px; margin: 12px auto 4px; }
	.smm-type-chip { padding: 9px 14px; font-size: 13px; }

	.smm-loop-ribbon { font-size: 10px; padding: 3px 36px; left: -42px; top: 12px; }
	.smm-loop-startfrom__price { font-size: 18px; }

	.smm-archive-trust { padding: 28px 16px; }
	.smm-archive-trust__inner { grid-template-columns: 1fr 1fr; gap: 12px; }
	.smm-archive-trust__item { gap: 10px; }
	.smm-archive-trust__item > span { width: 40px; height: 40px; font-size: 22px; }
	.smm-archive-trust__item strong { font-size: 13px; }

	.smm-archive-related { padding: 40px 16px; }
	.smm-archive-related__grid { grid-template-columns: 1fr; gap: 10px; }
	.smm-archive-related__card { padding: 14px; gap: 12px; }
	.smm-archive-related__ico { width: 42px; height: 42px; font-size: 26px; }

	.smm-archive-faq-section { padding: 40px 16px; }

	.smm-archive-finalcta { padding: 56px 18px; }
	.smm-archive-finalcta__buttons { flex-direction: column; }
	.smm-archive-finalcta__buttons .smm-btn { width: 100%; }
}

/* Small phones ≤360 — keep grid usable */
@media (max-width: 360px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
	}
	.smm-archive-hero__kpis { grid-template-columns: repeat(2, 1fr); }
	.smm-archive-trust__inner { grid-template-columns: 1fr; }
}

/* Per-platform glow tints for related-cards (re-uses --platform-glow var) */
.smm-archive-related__card.platform--ig,
.smm-archive-related__card.platform--instagram  { --platform-glow: linear-gradient(135deg, rgba(225,48,108,.10), rgba(255,221,77,.10), rgba(131,58,180,.10)); }
.smm-archive-related__card.platform--tt,
.smm-archive-related__card.platform--tiktok     { --platform-glow: linear-gradient(135deg, rgba(0,0,0,.06), rgba(37,244,238,.10), rgba(254,44,85,.10)); }
.smm-archive-related__card.platform--yt,
.smm-archive-related__card.platform--youtube    { --platform-glow: linear-gradient(135deg, rgba(255,0,0,.10), rgba(0,0,0,.06)); }
.smm-archive-related__card.platform--fb,
.smm-archive-related__card.platform--facebook   { --platform-glow: linear-gradient(135deg, rgba(24,119,242,.12), rgba(24,119,242,.05)); }
.smm-archive-related__card.platform--x,
.smm-archive-related__card.platform--twitter-x  { --platform-glow: linear-gradient(135deg, rgba(0,0,0,.10), rgba(75,75,75,.06)); }
.smm-archive-related__card.platform--tg,
.smm-archive-related__card.platform--telegram   { --platform-glow: linear-gradient(135deg, rgba(34,158,217,.12), rgba(34,158,217,.05)); }
.smm-archive-related__card.platform--bundles    { --platform-glow: linear-gradient(135deg, rgba(251,191,36,.14), rgba(236,72,153,.10)); }

/* =============================================================================
 * SINGLE PRODUCT V2 — Hero, included-checklist, slider polish, presets,
 * sticky mobile bar, final CTA
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * Product Hero V2 — dark animated hero with breadcrumb, big icon, big price
 * ------------------------------------------------------------------------- */
.smm-product-hero.v2 {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #fff;
	padding: clamp(40px, 6vw, 64px) 24px;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	border-radius: 0;
	/* Full-bleed: escape any parent container */
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: none;
	box-sizing: border-box;
}
/* Constrain inner content to a centered band */
.smm-product-hero.v2 .smm-product-hero__inner {
	max-width: 1280px;
	margin: 0 auto;
	box-sizing: border-box;
}
.smm-product-hero.v2::before,
.smm-product-hero.v2::after { display: none; }
.smm-product-hero.v2 .smm-product-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-product-hero.v2 .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: .55;
	animation: smm-orb-float 14s ease-in-out infinite;
}
.smm-product-hero.v2 .smm-orb--1 {
	width: 460px; height: 460px;
	top: -120px; right: -100px;
}
.smm-product-hero.v2 .smm-orb--2 {
	width: 400px; height: 400px;
	bottom: -140px; left: -80px;
	animation-delay: -5s;
}
.smm-product-hero.v2 .smm-grid-overlay {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
	background-size: 56px 56px;
	mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 30%, transparent 75%);
	-webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 30%, transparent 75%);
	pointer-events: none;
}

.smm-product-hero.v2 .smm-product-hero__inner {
	position: relative;
	z-index: 1;
	max-width: 1280px;
	margin: 0 auto;
}

.smm-product-hero.v2 .smm-breadcrumb--on-dark {
	margin-bottom: 18px;
}
.smm-product-hero.v2 .smm-breadcrumb--on-dark .smm-crumb {
	background: rgba(255,255,255,.08);
	color: rgba(255,255,255,.85);
	border-color: rgba(255,255,255,.15);
}
.smm-product-hero.v2 .smm-breadcrumb--on-dark .smm-crumb a {
	color: rgba(255,255,255,.85) !important;
}
.smm-product-hero.v2 .smm-breadcrumb--on-dark .smm-crumb-arrow {
	color: rgba(255,255,255,.4);
}

.smm-product-hero__top {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
}

.smm-product-hero__icon-wrap {
	width: 96px;
	height: 96px;
	border-radius: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 18px 36px -12px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.08) inset;
	flex-shrink: 0;
}
.smm-product-hero__icon {
	font-size: 56px;
	line-height: 1;
	filter: drop-shadow(0 4px 12px rgba(0,0,0,.4));
}

.smm-product-hero__head { min-width: 0; }
.smm-product-hero__platform {
	font-size: 13px;
	font-weight: 800;
	color: rgba(255,255,255,.6);
	letter-spacing: .12em;
	text-transform: uppercase;
	margin-bottom: 6px;
}
.smm-product-hero__title {
	font-size: clamp(24px, 3.6vw, 42px);
	font-weight: 900;
	color: #fff;
	margin: 0 0 12px;
	letter-spacing: -.02em;
	line-height: 1.15;
	text-shadow: 0 2px 16px rgba(0,0,0,.25);
}
.smm-product-hero__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 4px;
}
.smm-product-hero__badge {
	background: rgba(255,255,255,.10);
	border: 1px solid rgba(255,255,255,.18);
	color: #fff;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.smm-product-hero__price {
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 18px;
	padding: 16px 22px;
	text-align: center;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	flex-shrink: 0;
	min-width: 140px;
	max-width: 220px;
	white-space: nowrap;
}
.smm-product-hero__price-lbl {
	font-size: 12px;
	font-weight: 800;
	color: rgba(255,255,255,.65);
	letter-spacing: .08em;
	text-transform: uppercase;
	display: block;
	margin-bottom: 4px;
}
.smm-product-hero__price-val {
	font-size: clamp(24px, 3.5vw, 38px);
	font-weight: 900;
	background: linear-gradient(120deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	background-size: 200% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.02em;
	display: inline-block;
	animation: smm-gradient-shift 6s ease-in-out infinite;
}

.smm-product-hero__range {
	margin-top: 18px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 18px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 999px;
	font-size: 13px;
	color: var(--smm-text-soft, #cbd5e1);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.smm-product-hero__range strong { color: #fff; font-weight: 800; }

/* ---------------------------------------------------------------------------
 * "What you get" — green checklist
 * ------------------------------------------------------------------------- */
.smm-included {
	background: linear-gradient(135deg, rgba(16,185,129,.06), rgba(34,197,94,.04));
	border: 1.5px solid rgba(16,185,129,.18);
	border-radius: 16px;
	padding: 18px 20px;
	margin: 16px 0;
}
.smm-included__title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 800;
	color: #047857;
	margin-bottom: 12px;
}
.smm-included__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}
.smm-included__list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	color: #064e3b;
	font-weight: 600;
	line-height: 1.5;
}
.smm-included__check {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: linear-gradient(135deg, #10b981, #22c55e);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 900;
	box-shadow: 0 4px 10px -2px rgba(16,185,129,.4);
}

/* (Old slider polish CSS removed — see PRODUCT SLIDER block above for the
 * new price-first design that handles all states. */

/* Trust badges → upgrade to colorful chips */
.smm-product-trust {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 16px 0 !important;
	justify-content: center;
}
.smm-product-trust span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	background: linear-gradient(135deg, rgba(168,85,247,.06), rgba(236,72,153,.04));
	border: 1px solid rgba(168,85,247,.18);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	color: var(--smm-primary, #6d28d9);
}

/* ---------------------------------------------------------------------------
 * Sticky mobile purchase bar (single product)
 * ------------------------------------------------------------------------- */
.smm-product-stickybar {
	display: none;
	position: fixed;
	left: 0; right: 0; bottom: 0;
	z-index: 92;
	padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
	background: rgba(15,8,35,.94);
	-webkit-backdrop-filter: saturate(180%) blur(16px);
	backdrop-filter: saturate(180%) blur(16px);
	border-top: 1px solid rgba(255,255,255,.10);
	box-shadow: 0 -8px 24px rgba(0,0,0,.30);
	gap: 12px;
	align-items: center;
	transform: translateY(120%);
	transition: transform .25s cubic-bezier(.4,0,.2,1);
}
.smm-product-stickybar.is-visible { transform: translateY(0); }
.smm-product-stickybar__info {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}
.smm-product-stickybar__qty {
	font-size: 11px;
	font-weight: 700;
	color: rgba(255,255,255,.65);
	letter-spacing: .05em;
	text-transform: uppercase;
}
.smm-product-stickybar__price {
	font-size: 20px;
	font-weight: 900;
	background: linear-gradient(120deg, #fbbf24, #ec4899, #a855f7);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.01em;
}
.smm-product-stickybar__buy {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 22px;
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	color: #fff !important;
	border: 0;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 900;
	cursor: pointer;
	box-shadow: 0 10px 24px -8px rgba(236,72,153,.5);
	font-family: inherit;
}

/* ---------------------------------------------------------------------------
 * Final CTA on product page (after testimonials)
 * ------------------------------------------------------------------------- */
.smm-product-finalcta {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #fff;
	padding: clamp(56px, 8vw, 88px) 24px;
	text-align: center;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	margin-top: 32px;
}
.smm-product-finalcta__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-product-finalcta .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: .55;
	animation: smm-orb-float 16s ease-in-out infinite;
}
.smm-product-finalcta .smm-orb--1 {
	width: 420px; height: 420px;
	background: radial-gradient(circle, var(--smm-neon-purple, #a855f7), transparent 65%);
	top: -100px; right: -80px;
}
.smm-product-finalcta .smm-orb--2 {
	width: 380px; height: 380px;
	background: radial-gradient(circle, var(--smm-neon-pink, #ec4899), transparent 65%);
	bottom: -100px; left: -60px;
	animation-delay: -5s;
}
.smm-product-finalcta__inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
}
.smm-product-finalcta h2 {
	font-size: clamp(26px, 4vw, 40px);
	font-weight: 900;
	margin: 0 0 12px;
	color: #fff;
	letter-spacing: -.02em;
	line-height: 1.15;
}
.smm-product-finalcta p {
	font-size: clamp(15px, 2vw, 17px);
	color: var(--smm-text-soft, #cbd5e1);
	margin: 0 auto 28px;
	max-width: 540px;
	line-height: 1.6;
}
.smm-product-finalcta__buttons {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 16px;
}
.smm-product-finalcta__sub {
	font-size: 13px;
	color: rgba(255,255,255,.55);
	font-weight: 600;
}

/* ---------------------------------------------------------------------------
 * Single product RESPONSIVE
 * ------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.smm-product-hero__top { gap: 18px; }
	.smm-product-hero__icon-wrap { width: 80px; height: 80px; border-radius: 18px; }
	.smm-product-hero__icon { font-size: 46px; }
}

@media (max-width: 760px) {
	.smm-product-hero.v2 { padding: 28px 18px 24px; }
	.smm-product-hero.v2 .smm-orb--1 { width: 280px; height: 280px; right: -120px; top: -100px; }
	.smm-product-hero.v2 .smm-orb--2 { width: 260px; height: 260px; left: -100px; bottom: -120px; }

	.smm-product-hero.v2 .smm-breadcrumb--on-dark { margin-bottom: 14px; font-size: 11px; }

	/* Hero top — stack vertically on mobile, centered, balanced */
	.smm-product-hero__top {
		grid-template-columns: 1fr;
		gap: 14px;
		text-align: center;
		justify-items: center;
	}
	.smm-product-hero__icon-wrap {
		width: 64px;
		height: 64px;
		border-radius: 14px;
	}
	.smm-product-hero__icon { font-size: 34px; }
	.smm-product-hero__head { width: 100%; }
	.smm-product-hero__title {
		font-size: clamp(20px, 5.6vw, 28px);
		margin: 0 0 8px;
		overflow-wrap: anywhere;
	}
	.smm-product-hero__platform {
		font-size: 10px;
		letter-spacing: .14em;
		margin-bottom: 4px;
	}
	.smm-product-hero__badges { justify-content: center; }
	.smm-product-hero__badge { font-size: 11px; padding: 4px 10px; }

	/* Price — full-width row across the hero, NOT a side chip */
	.smm-product-hero__price {
		grid-column: 1 / -1;
		min-width: 0 !important;
		max-width: none !important;
		width: 100%;
		display: flex;
		align-items: center;
		gap: 12px;
		justify-content: space-between;
		padding: 12px 18px;
		text-align: right;
		border-radius: 14px;
		white-space: normal;
	}
	.smm-product-hero__price-lbl { margin: 0; flex: 0 0 auto; }
	.smm-product-hero__price-val { font-size: clamp(22px, 6vw, 30px); }
	.smm-product-hero__range { font-size: 12px; padding: 8px 14px; }

	.smm-included { padding: 14px 16px; }
	.smm-included__list li { font-size: 13px; }

	.smm-product-trust span { font-size: 11px; padding: 6px 11px; }
	.smm-product-slider .smm-preset-btn { font-size: 12px; padding: 9px 8px; min-width: 60px; }

	/* Show sticky bar */
	.smm-product-stickybar { display: flex; }
	body.single-product { padding-bottom: 90px; }

	.smm-product-finalcta { padding: 56px 18px; }
	.smm-product-finalcta__buttons { flex-direction: column; }
	.smm-product-finalcta__buttons .smm-btn { width: 100%; }
}

/* =============================================================================
 * UPSELL EVERYWHERE — On-page tiers, ATC interceptor modal, quick-add upsell
 * step, drawer cross-sells, checkout order-bump, thank-you OTO, exit-intent
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * On-page upgrade tiers (single product) — also reused inside quick-add modal
 * ------------------------------------------------------------------------- */
.smm-pup {
	margin: 14px 0;
	padding: 18px 18px 14px;
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 60%, #ede9fe 100%);
	border: 1.5px solid rgba(168,85,247,.30);
	border-radius: 18px;
	position: relative;
	overflow: hidden;
}
.smm-pup__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
}
.smm-pup__bolt {
	width: 36px; height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	flex-shrink: 0;
	box-shadow: 0 6px 14px -4px rgba(236,72,153,.45);
}
.smm-pup__head strong {
	display: block;
	font-size: 15px;
	font-weight: 800;
	color: var(--smm-dark);
	line-height: 1.3;
}
.smm-pup__sub {
	display: block;
	font-size: 12px;
	color: #6b7280;
	font-weight: 600;
	margin-top: 2px;
}
.smm-pup__tiers {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
	gap: 8px;
}
.smm-pup__tier {
	position: relative;
	padding: 14px 10px 12px;
	background: #fff;
	border: 1.5px solid #e5e7eb;
	border-radius: 14px;
	font-family: inherit;
	cursor: pointer;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 4px;
	transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease, background .15s ease;
	color: var(--smm-dark);
}
.smm-pup__tier:hover:not(.is-disabled):not(.is-active) {
	transform: translateY(-2px);
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 8px 18px -6px rgba(109,40,217,.20);
}
.smm-pup__tier.is-active {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff;
	border-color: transparent;
	box-shadow: 0 12px 24px -8px rgba(109,40,217,.45);
}
.smm-pup__tier.is-active .smm-pup__tier-label,
.smm-pup__tier.is-active .smm-pup__tier-qty,
.smm-pup__tier.is-active .smm-pup__tier-price,
.smm-pup__tier.is-active .smm-pup__tier-save,
.smm-pup__tier.is-active .smm-pup__tier-mult { color: #fff !important; }
.smm-pup__tier.is-recommended:not(.is-active) {
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 6px 14px -4px rgba(168,85,247,.20);
}
.smm-pup__tier.is-disabled {
	opacity: .4;
	cursor: not-allowed;
}
.smm-pup__badge {
	position: absolute;
	top: -10px;
	right: 50%;
	transform: translateX(50%);
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .04em;
	box-shadow: 0 4px 8px rgba(236,72,153,.4);
	white-space: nowrap;
}
.smm-pup__tier-mult {
	font-size: 11px;
	font-weight: 900;
	color: #16a34a;
	letter-spacing: .04em;
}
.smm-pup__tier-label {
	font-size: 13px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-pup__tier-qty {
	font-size: 12px;
	color: #6b7280;
	font-weight: 700;
}
.smm-pup__tier-price {
	font-size: 14px;
	font-weight: 900;
	color: var(--smm-primary);
	margin-top: 2px;
}
.smm-pup__tier-save {
	font-size: 11px;
	font-weight: 700;
	color: #16a34a;
}

/* ---------------------------------------------------------------------------
 * Add-to-Cart interceptor modal (single product)
 * ------------------------------------------------------------------------- */
.smm-atc-modal {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, .65);
	z-index: 10001;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	animation: smm-atc-fadein .25s ease;
}
@keyframes smm-atc-fadein { from { opacity: 0; } to { opacity: 1; } }
.smm-atc-modal[hidden] { display: none; }
.smm-atc-modal__card {
	background: #fff;
	border-radius: 24px;
	max-width: 540px;
	width: 100%;
	padding: 32px 28px;
	box-shadow: 0 24px 64px rgba(0,0,0,.3);
	position: relative;
	max-height: 90vh;
	overflow-y: auto;
	text-align: center;
	animation: smm-atc-pop .35s cubic-bezier(.4,0,.2,1);
}
@keyframes smm-atc-pop {
	from { opacity: 0; transform: scale(.85); }
	to   { opacity: 1; transform: scale(1); }
}
.smm-atc-modal__close {
	position: absolute;
	top: 14px; left: 14px;
	width: 36px; height: 36px;
	border-radius: 50%;
	background: #f3f4f6;
	border: 0;
	font-size: 22px;
	cursor: pointer;
	color: #6b7280;
	transition: background .15s ease, color .15s ease;
}
.smm-atc-modal__close:hover { background: #e5e7eb; color: var(--smm-dark); }
.smm-atc-modal__bolt {
	width: 64px; height: 64px;
	margin: 0 auto 16px;
	border-radius: 50%;
	background: linear-gradient(135deg, #fbbf24, #ec4899, #a855f7);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	box-shadow: 0 14px 28px -8px rgba(236,72,153,.45);
}
.smm-atc-modal h3 {
	font-size: clamp(20px, 3vw, 26px);
	font-weight: 900;
	margin: 0 0 10px;
	color: var(--smm-dark);
}
.smm-atc-modal__lead {
	font-size: 15px;
	color: #6b7280;
	margin: 0 0 20px;
	line-height: 1.55;
}
.smm-atc-modal__lead strong { color: var(--smm-primary); font-weight: 800; }
.smm-atc-modal__compare {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 20px;
}
.smm-atc-modal__opt {
	padding: 18px 14px;
	border-radius: 16px;
	border: 1.5px solid #e5e7eb;
	background: #fafaf7;
	text-align: center;
	position: relative;
}
.smm-atc-modal__opt--upgrade {
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 60%, #ede9fe 100%);
	border-color: rgba(168,85,247,.4);
	box-shadow: 0 12px 24px -10px rgba(168,85,247,.25);
}
.smm-atc-modal__opt-badge {
	position: absolute;
	top: -10px;
	right: 50%;
	transform: translateX(50%);
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 3px 12px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 900;
	box-shadow: 0 4px 8px rgba(236,72,153,.4);
}
.smm-atc-modal__opt-label {
	font-size: 12px;
	font-weight: 800;
	color: #6b7280;
	letter-spacing: .04em;
	margin-bottom: 6px;
}
.smm-atc-modal__opt-qty {
	font-size: 16px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-atc-modal__opt-price {
	font-size: 22px;
	font-weight: 900;
	color: var(--smm-primary);
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	margin-top: 4px;
}
.smm-atc-modal__opt-save {
	font-size: 12px;
	font-weight: 800;
	color: #16a34a;
	margin-top: 4px;
}
.smm-atc-modal__actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.smm-atc-modal__actions .smm-btn { width: 100%; justify-content: center; }

/* The ATC modal has a WHITE card background, so .smm-btn--ghost (designed for
 * dark backgrounds with white text) becomes invisible. Scope-override here. */
.smm-atc-modal .smm-btn--ghost {
	background: #f3f4f6 !important;
	color: #374151 !important;
	border: 1.5px solid #d1d5db !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
.smm-atc-modal .smm-btn--ghost:hover {
	background: #e5e7eb !important;
	color: #111827 !important;
	transform: translateY(-1px);
	border-color: #9ca3af !important;
}

/* ---------------------------------------------------------------------------
 * Quick-add modal — upsell step
 * ------------------------------------------------------------------------- */
.smm-quickadd-upsell { text-align: center; }
.smm-quickadd-upsell__bolt {
	width: 56px; height: 56px;
	margin: 0 auto 12px;
	border-radius: 50%;
	background: linear-gradient(135deg, #fbbf24, #ec4899, #a855f7);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	box-shadow: 0 14px 28px -8px rgba(236,72,153,.45);
}
.smm-quickadd-upsell h3 { font-size: 20px; font-weight: 900; margin: 0 0 6px; color: var(--smm-dark); }
.smm-quickadd-upsell__lead { font-size: 14px; color: #6b7280; margin: 0 0 16px; }
.smm-quickadd-upsell__tiers {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 8px;
	margin-bottom: 16px;
}
.smm-quickadd-upsell__tiers .smm-pup__tier { padding: 14px 8px; }

.smm-modal-step--upsell .smm-modal-actions { display: flex; gap: 10px; }
.smm-modal-step--upsell .smm-modal-btn-secondary,
.smm-modal-step--upsell .smm-modal-btn-primary { flex: 1; }

/* ---------------------------------------------------------------------------
 * Cart drawer cross-sells
 * ------------------------------------------------------------------------- */
.smm-cart-drawer__crosssell {
	margin: 16px 12px 0;
	padding: 14px;
	background: linear-gradient(135deg, #faf7ff 0%, rgba(252,231,243,.4) 100%);
	border: 1.5px solid rgba(168,85,247,.20);
	border-radius: 14px;
}
.smm-cart-drawer__crosssell-head {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 800;
	color: var(--smm-primary);
	margin-bottom: 10px;
}
.smm-cart-drawer__crosssell-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.smm-cart-drawer__crosssell-item {
	display: grid;
	grid-template-columns: 44px 1fr auto;
	gap: 10px;
	align-items: center;
	padding: 8px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 2px 6px -2px rgba(0,0,0,.05);
}
.smm-cart-drawer__crosssell-thumb {
	width: 44px; height: 44px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	color: #fff;
}
.smm-cart-drawer__crosssell-name {
	font-size: 13px;
	font-weight: 800;
	color: var(--smm-dark);
	text-decoration: none !important;
	display: block;
	line-height: 1.3;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.smm-cart-drawer__crosssell-name:hover { color: var(--smm-primary); }
.smm-cart-drawer__crosssell-price {
	font-size: 12px;
	color: #6b7280;
	font-weight: 700;
	margin-top: 2px;
}
.smm-cart-drawer__crosssell-add {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 6px 12px;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff !important;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none !important;
	white-space: nowrap;
}
.smm-cart-drawer__crosssell-add:hover { transform: translateY(-1px); }

/* ---------------------------------------------------------------------------
 * Checkout order-bump
 * ------------------------------------------------------------------------- */
.smm-bump {
	margin: 16px 0 12px;
}
.smm-bump__label {
	display: grid;
	grid-template-columns: auto 64px 1fr;
	gap: 14px;
	align-items: center;
	padding: 16px;
	background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
	border: 2px dashed rgba(245,158,11,.45);
	border-radius: 16px;
	cursor: pointer;
	transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.smm-bump__label:hover { transform: translateY(-1px); }
.smm-bump__label.is-checked {
	background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
	border-color: rgba(16,185,129,.55);
	border-style: solid;
	box-shadow: 0 12px 24px -10px rgba(16,185,129,.25);
}
.smm-bump__label.is-loading { opacity: .7; pointer-events: none; }
.smm-bump__cb {
	width: 24px;
	height: 24px;
	cursor: pointer;
	accent-color: var(--smm-primary);
	flex-shrink: 0;
}
.smm-bump__visual {
	width: 64px; height: 64px;
	border-radius: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	color: #fff;
	flex-shrink: 0;
	box-shadow: 0 8px 16px -4px rgba(0,0,0,.2);
}
.smm-bump__body { line-height: 1.35; }
.smm-bump__head { margin-bottom: 6px; }
.smm-bump__badge {
	display: inline-block;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .04em;
	box-shadow: 0 4px 8px rgba(236,72,153,.35);
}
.smm-bump__name {
	font-size: 16px;
	font-weight: 800;
	color: var(--smm-dark);
	margin-bottom: 4px;
}
.smm-bump__desc {
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 8px;
}
.smm-bump__pricing {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.smm-bump__price {
	font-size: 18px;
	font-weight: 900;
	color: var(--smm-primary);
}
.smm-bump__strike {
	font-size: 13px;
	color: #9ca3af;
	text-decoration: line-through;
}
.smm-bump__save {
	font-size: 12px;
	font-weight: 800;
	color: #16a34a;
	background: rgba(34,197,94,.12);
	padding: 3px 8px;
	border-radius: 999px;
}

/* ---------------------------------------------------------------------------
 * Thank-you OTO
 * ------------------------------------------------------------------------- */
.smm-oto {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #fff;
	padding: clamp(40px, 6vw, 64px) 24px;
	margin: 24px 0 32px;
	border-radius: 24px;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	text-align: center;
}
.smm-oto.is-expired { display: none; }
.smm-oto__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-oto .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: .55;
	animation: smm-orb-float 14s ease-in-out infinite;
}
.smm-oto .smm-orb--1 {
	width: 400px; height: 400px;
	background: radial-gradient(circle, var(--smm-neon-purple, #a855f7), transparent 65%);
	top: -100px; right: -80px;
}
.smm-oto .smm-orb--2 {
	width: 360px; height: 360px;
	background: radial-gradient(circle, var(--smm-neon-pink, #ec4899), transparent 65%);
	bottom: -100px; left: -60px;
	animation-delay: -5s;
}
.smm-oto__inner {
	position: relative;
	z-index: 1;
	max-width: 640px;
	margin: 0 auto;
}
.smm-oto__badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 18px;
	background: rgba(255,255,255,.10);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 800;
	margin-bottom: 18px;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.smm-oto__badge #smm-oto-timer { color: #fbbf24; font-variant-numeric: tabular-nums; }
.smm-oto__title {
	font-size: clamp(22px, 3.6vw, 36px);
	font-weight: 900;
	margin: 0 0 12px;
	color: #fff;
	line-height: 1.2;
	letter-spacing: -.01em;
}
.smm-oto__title strong {
	background: linear-gradient(120deg, #fbbf24, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-oto__lead {
	font-size: 15px;
	color: var(--smm-text-soft, #cbd5e1);
	margin: 0 auto 24px;
	max-width: 540px;
	line-height: 1.6;
}
.smm-oto__product {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 14px 20px;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 16px;
	margin-bottom: 20px;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.smm-oto__visual {
	width: 56px; height: 56px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	color: #fff;
}
.smm-oto__product-name {
	font-size: 15px;
	font-weight: 800;
	color: #fff;
	text-align: right;
}
.smm-oto__product-price {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-top: 4px;
}
.smm-oto__product-price-now {
	font-size: 18px;
	font-weight: 900;
	color: #fbbf24;
}
.smm-oto__product-price-was {
	font-size: 13px;
	color: rgba(255,255,255,.55);
	text-decoration: line-through;
}
.smm-oto__coupon {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 6px 6px 18px;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 999px;
	margin-bottom: 18px;
}
.smm-oto__coupon-lbl { font-size: 12px; color: rgba(255,255,255,.7); font-weight: 700; }
.smm-oto__coupon-code {
	font-family: 'SF Mono', monospace;
	font-size: 16px;
	font-weight: 900;
	color: #fbbf24;
	background: transparent;
	letter-spacing: .08em;
}
.smm-oto__coupon-copy {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff;
	border: 0;
	padding: 8px 14px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
	font-family: inherit;
}
.smm-oto__cta { margin-top: 8px; }
.smm-oto__cta .smm-btn { display: inline-flex; }

/* ---------------------------------------------------------------------------
 * Exit-intent popup
 * ------------------------------------------------------------------------- */
.smm-exit-modal {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, .68);
	z-index: 10002;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	animation: smm-atc-fadein .3s ease;
}
.smm-exit-modal[hidden] { display: none; }
.smm-exit-modal__card {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #fff;
	border-radius: 24px;
	max-width: 480px;
	width: 100%;
	padding: 36px 32px 32px;
	box-shadow: 0 24px 64px rgba(0,0,0,.4);
	position: relative;
	max-height: 90vh;
	overflow-y: auto;
	text-align: center;
	animation: smm-atc-pop .35s cubic-bezier(.4,0,.2,1);
}
.smm-exit-modal__close {
	position: absolute;
	top: 14px; left: 14px;
	width: 36px; height: 36px;
	border-radius: 50%;
	background: rgba(255,255,255,.10);
	border: 0;
	font-size: 22px;
	cursor: pointer;
	color: rgba(255,255,255,.7);
}
.smm-exit-modal__close:hover { background: rgba(255,255,255,.18); color: #fff; }
.smm-exit-modal__bolt {
	width: 64px; height: 64px;
	margin: 0 auto 16px;
	border-radius: 50%;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	box-shadow: 0 14px 28px -8px rgba(236,72,153,.45);
}
.smm-exit-modal h3 {
	font-size: 24px;
	font-weight: 900;
	margin: 0 0 8px;
	color: #fff;
}
.smm-exit-modal__lead {
	font-size: 15px;
	color: var(--smm-text-soft, #cbd5e1);
	margin: 0 0 20px;
}
.smm-exit-modal__lead strong {
	background: linear-gradient(120deg, #fbbf24, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-exit-modal__coupon {
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: center;
	padding: 14px 16px;
	background: rgba(255,255,255,.08);
	border: 1px dashed rgba(255,255,255,.30);
	border-radius: 14px;
	margin-bottom: 16px;
}
.smm-exit-modal__coupon code {
	font-family: 'SF Mono', monospace;
	font-size: 22px;
	font-weight: 900;
	color: #fbbf24;
	background: transparent;
	letter-spacing: .12em;
}

/* Mobile tuning */
@media (max-width: 540px) {
	.smm-pup__tiers { grid-template-columns: 1fr 1fr; }
	.smm-atc-modal__compare { grid-template-columns: 1fr; }
	.smm-bump__label { grid-template-columns: auto 1fr; }
	.smm-bump__visual { display: none; }
	.smm-oto__product { flex-direction: column; gap: 8px; }
	.smm-oto__coupon { flex-wrap: wrap; gap: 6px; }
}

/* =============================================================================
 * CART REWARD PROGRESS BAR + FREQUENTLY BOUGHT TOGETHER
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * Cart reward progress bar (cart page + drawer)
 * ------------------------------------------------------------------------- */
.smm-reward {
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 60%, #ede9fe 100%);
	border: 1.5px solid rgba(168,85,247,.25);
	border-radius: 16px;
	padding: 18px 18px 32px;
	margin: 0 0 24px;
	position: relative;
}
.smm-reward.has-reward {
	background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 50%, #fef9c3 100%);
	border-color: rgba(16,185,129,.30);
}
.smm-reward__head {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	font-size: 14px;
	color: var(--smm-dark);
}
.smm-reward__bolt {
	width: 36px; height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	flex-shrink: 0;
	box-shadow: 0 6px 14px -4px rgba(236,72,153,.45);
}
.smm-reward__msg { line-height: 1.4; }
.smm-reward__msg strong { color: var(--smm-primary); font-weight: 800; }
.smm-reward__msg--max { color: #047857; }
.smm-reward__msg--max strong { color: #047857; }

.smm-reward__bar {
	position: relative;
	height: 10px;
	background: rgba(255,255,255,.6);
	border-radius: 999px;
	box-shadow: 0 2px 4px rgba(0,0,0,.04) inset;
	overflow: visible;
}
.smm-reward__fill {
	position: absolute;
	top: 0; right: 0; bottom: 0;
	background: linear-gradient(90deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	border-radius: 999px;
	transition: width .5s cubic-bezier(.4,0,.2,1);
	box-shadow: 0 4px 10px -2px rgba(236,72,153,.35);
}
.smm-reward__milestone {
	position: absolute;
	top: 50%;
	transform: translate(50%, -50%);
}
.smm-reward__milestone-dot {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid #d1d5db;
	color: #6b7280;
	font-size: 11px;
	font-weight: 900;
	box-shadow: 0 2px 6px rgba(0,0,0,.08);
	transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease;
}
.smm-reward__milestone.is-reached .smm-reward__milestone-dot {
	background: linear-gradient(135deg, #10b981, #22c55e);
	border-color: transparent;
	color: #fff;
	transform: scale(1.15);
	box-shadow: 0 6px 14px -4px rgba(16,185,129,.45);
}
.smm-reward__milestone-lbl {
	position: absolute;
	top: 26px;
	right: 50%;
	transform: translateX(50%);
	white-space: nowrap;
	font-size: 11px;
	font-weight: 700;
	text-align: center;
	color: #6b7280;
	line-height: 1.25;
}
.smm-reward__milestone-lbl strong {
	display: block;
	font-size: 12px;
	font-weight: 900;
	color: var(--smm-dark);
}
.smm-reward__milestone.is-reached .smm-reward__milestone-lbl,
.smm-reward__milestone.is-reached .smm-reward__milestone-lbl strong { color: #047857; }

/* Drawer-scoped tightening */
.smm-cart-drawer .smm-reward {
	margin: 12px 14px 18px;
	padding: 14px 14px 28px;
	border-radius: 14px;
}
.smm-cart-drawer .smm-reward__head { font-size: 13px; margin-bottom: 14px; }
.smm-cart-drawer .smm-reward__bolt { width: 30px; height: 30px; font-size: 16px; }
.smm-cart-drawer .smm-reward__milestone-lbl { font-size: 10px; top: 22px; }
.smm-cart-drawer .smm-reward__milestone-lbl strong { font-size: 11px; }

/* ---------------------------------------------------------------------------
 * Frequently Bought Together
 * ------------------------------------------------------------------------- */
.smm-fbt {
	background: linear-gradient(180deg, #fff 0%, #faf7ff 100%);
	padding: clamp(40px, 5vw, 64px) 24px;
	margin-top: 24px;
}
.smm-fbt__inner {
	max-width: 1100px;
	margin: 0 auto;
}
.smm-fbt__head { text-align: center; margin-bottom: 32px; }
.smm-fbt__head h2 {
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 800;
	margin: 0 0 8px;
	color: var(--smm-dark);
}
.smm-fbt__head p { font-size: 15px; color: #6b7280; margin: 0; }
.smm-fbt__head strong {
	color: var(--smm-primary);
	font-weight: 800;
}

.smm-fbt__chain {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 8px;
	margin-bottom: 28px;
	flex-wrap: nowrap;
}
.smm-fbt__item {
	flex: 1 1 0;
	min-width: 0;
	max-width: 240px;
	padding: 18px 14px 14px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 18px;
	text-align: center;
	position: relative;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.smm-fbt__item.is-main {
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 12px 24px -10px rgba(109,40,217,.25);
}
.smm-fbt__visual {
	width: 80px; height: 80px;
	margin: 0 auto 12px;
	border-radius: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 38px;
	color: #fff;
	box-shadow: 0 8px 16px -4px rgba(0,0,0,.15);
	position: relative;
}
.smm-fbt__main-badge {
	position: absolute;
	top: -10px;
	right: 50%;
	transform: translateX(50%);
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .04em;
	white-space: nowrap;
	box-shadow: 0 4px 8px rgba(236,72,153,.35);
}
.smm-fbt__name {
	font-size: 14px;
	font-weight: 800;
	color: var(--smm-dark);
	margin-bottom: 4px;
	line-height: 1.3;
	min-height: 36px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.smm-fbt__price {
	font-size: 18px;
	font-weight: 900;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-fbt__check {
	display: block;
	margin-top: 10px;
	cursor: pointer;
}
.smm-fbt__check input { display: none; }
.smm-fbt__check-box {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid #d1d5db;
	color: transparent;
	font-size: 14px;
	font-weight: 900;
	transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}
.smm-fbt__check input:checked + .smm-fbt__check-box {
	background: linear-gradient(135deg, #10b981, #22c55e);
	border-color: transparent;
	color: #fff;
	transform: scale(1.06);
	box-shadow: 0 4px 10px -2px rgba(16,185,129,.45);
}
.smm-fbt__plus {
	font-size: 28px;
	font-weight: 200;
	color: #d1d5db;
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

.smm-fbt__summary {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 24px;
	align-items: center;
	max-width: 800px;
	margin: 0 auto;
	padding: 24px 28px;
	background: linear-gradient(135deg, #faf7ff 0%, rgba(252,231,243,.4) 100%);
	border: 1.5px solid rgba(168,85,247,.18);
	border-radius: 18px;
}
.smm-fbt__pricing-row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	font-size: 14px;
	color: #6b7280;
	font-weight: 600;
	margin-bottom: 6px;
}
.smm-fbt__pricing-row--total {
	margin: 8px 0 0;
	padding-top: 10px;
	border-top: 1px dashed rgba(168,85,247,.30);
	font-size: 16px;
	color: var(--smm-dark);
	font-weight: 700;
}
.smm-fbt__total-bundle {
	font-size: 22px;
	font-weight: 900;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-fbt__total-base {
	text-decoration: line-through;
	color: #9ca3af;
}
.smm-fbt__save {
	margin-top: 6px;
	display: inline-block;
	font-size: 12px;
	font-weight: 800;
	color: #16a34a;
	background: rgba(34,197,94,.12);
	padding: 4px 10px;
	border-radius: 999px;
}
.smm-fbt__cta { white-space: nowrap; }

@media (max-width: 760px) {
	.smm-fbt { padding: 36px 16px; }
	.smm-fbt__chain { flex-wrap: wrap; gap: 12px; }
	.smm-fbt__item { flex: 1 1 calc(50% - 16px); max-width: none; }
	.smm-fbt__plus { display: none; }
	.smm-fbt__visual { width: 64px; height: 64px; font-size: 32px; }
	.smm-fbt__summary { grid-template-columns: 1fr; gap: 16px; padding: 18px 18px; text-align: center; }
	.smm-fbt__cta { width: 100%; justify-content: center; }
}
@media (max-width: 540px) {
	.smm-reward__milestone-lbl { font-size: 9px; }
	.smm-reward__milestone-lbl strong { font-size: 10px; }
	.smm-fbt__item { flex: 1 1 100%; }
}

/* =============================================================================
 * TOP PROMO BAR + MEGA FOOTER
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * Top promo bar
 * ------------------------------------------------------------------------- */
.smm-promo {
	background: linear-gradient(90deg, #050214 0%, #1e0a45 50%, #050214 100%);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	position: relative;
	z-index: 95;
	overflow: hidden;
	border-bottom: 1px solid rgba(255,255,255,.06);
}
.smm-promo::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 30%, rgba(168,85,247,.18) 50%, transparent 70%);
	transform: translateX(-100%);
	animation: smm-hero-shimmer 8s ease-in-out infinite;
	pointer-events: none;
}
.smm-promo__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 9px 44px 9px 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	position: relative;
}
.smm-promo__close {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(255,255,255,.10);
	border: 0;
	color: rgba(255,255,255,.85);
	font-size: 16px;
	cursor: pointer;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: inherit;
	transition: background .15s ease, color .15s ease;
}
.smm-promo__close:hover { background: rgba(255,255,255,.18); color: #fff; }
.smm-promo__rotator {
	position: relative;
	min-height: 20px;
	flex: 1;
	text-align: center;
}
.smm-promo__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	opacity: 0;
	transition: opacity .4s ease;
	position: absolute;
	left: 0;
	right: 0;
	pointer-events: none;
}
.smm-promo__item.is-active { opacity: 1; pointer-events: auto; position: relative; }
.smm-promo__item strong {
	background: linear-gradient(120deg, #fbbf24, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	font-weight: 900;
	letter-spacing: .04em;
}
.smm-promo__bolt { font-size: 14px; }

@media (max-width: 540px) {
	.smm-promo { font-size: 12px; }
	.smm-promo__inner { padding: 8px 36px 8px 12px; min-height: 36px; }
	.smm-promo__item { gap: 6px; }
}

/* ---------------------------------------------------------------------------
 * Mega footer
 * ------------------------------------------------------------------------- */
.smm-mega-footer {
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	color: #cbd5e1;
	position: relative;
	overflow: hidden;
	margin-top: 0;
	isolation: isolate;
}
.smm-mega-footer__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.smm-mega-footer .smm-orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(100px);
	opacity: .35;
	animation: smm-orb-float 18s ease-in-out infinite;
}
.smm-mega-footer .smm-orb--1 {
	width: 480px; height: 480px;
	background: radial-gradient(circle, var(--smm-neon-purple, #a855f7), transparent 65%);
	top: -180px; right: -120px;
}
.smm-mega-footer .smm-orb--2 {
	width: 420px; height: 420px;
	background: radial-gradient(circle, var(--smm-neon-pink, #ec4899), transparent 65%);
	bottom: -160px; left: -100px;
	animation-delay: -6s;
}

/* Newsletter band */
.smm-newsletter {
	position: relative;
	z-index: 1;
	padding: clamp(36px, 5vw, 56px) 24px;
	border-bottom: 1px solid rgba(255,255,255,.08);
}
.smm-newsletter__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
	align-items: center;
}
.smm-newsletter__text h3 {
	font-size: clamp(20px, 2.6vw, 26px);
	font-weight: 900;
	color: #fff;
	margin: 0 0 8px;
	letter-spacing: -.01em;
}
.smm-newsletter__text p {
	font-size: 14px;
	color: rgba(203,213,225,.85);
	margin: 0;
	line-height: 1.55;
}
.smm-newsletter__form {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	position: relative;
}
.smm-newsletter__form input[type="email"] {
	flex: 1;
	min-width: 0;
	padding: 14px 18px;
	background: rgba(255,255,255,.10);
	border: 1.5px solid rgba(255,255,255,.18);
	border-radius: 999px;
	color: #fff;
	font-size: 15px;
	font-family: inherit;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.smm-newsletter__form input[type="email"]::placeholder { color: rgba(255,255,255,.45); }
.smm-newsletter__form input[type="email"]:focus {
	outline: 0;
	border-color: rgba(168,85,247,.6);
	background: rgba(255,255,255,.14);
}
.smm-newsletter__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 24px;
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	color: #fff !important;
	border: 0;
	border-radius: 999px;
	font-weight: 800;
	font-size: 14px;
	cursor: pointer;
	font-family: inherit;
	box-shadow: 0 10px 24px -8px rgba(236,72,153,.5);
	transition: transform .15s ease, box-shadow .15s ease;
	white-space: nowrap;
}
.smm-newsletter__submit:hover { transform: translateY(-2px); }
.smm-newsletter__status {
	width: 100%;
	margin: 8px 0 0;
	font-size: 12px;
	color: rgba(203,213,225,.85);
}
.smm-newsletter__status.is-success { color: #6ee7b7; font-weight: 700; }
.smm-newsletter__status.is-success strong { color: #fbbf24; font-weight: 900; letter-spacing: .08em; }
.smm-newsletter__status.is-error { color: #fca5a5; }

/* Main columns */
.smm-mega-footer__inner {
	position: relative;
	z-index: 1;
	max-width: 1280px;
	margin: 0 auto;
	padding: 56px 24px 32px;
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr 1fr;
	gap: 40px;
}
.smm-mega-footer__col h4 {
	font-size: 14px;
	font-weight: 800;
	color: #fff;
	margin: 0 0 18px;
	letter-spacing: .04em;
	text-transform: uppercase;
	position: relative;
	padding-right: 14px;
}
.smm-mega-footer__col h4::before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 16px;
	background: linear-gradient(180deg, #fbbf24, #ec4899);
	border-radius: 999px;
}
.smm-mega-footer__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.smm-mega-footer__col li a {
	color: rgba(203,213,225,.85);
	text-decoration: none;
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: color .15s ease, transform .15s ease;
}
.smm-mega-footer__col li a:hover {
	color: #fff;
	transform: translateX(-3px);
}

.smm-mega-footer__brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 14px;
}
.smm-mega-footer__logo {
	width: 40px; height: 40px;
	border-radius: 12px;
	background: linear-gradient(135deg, #fbbf24, #ec4899, #a855f7);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	box-shadow: 0 8px 18px -4px rgba(236,72,153,.45);
}
.smm-mega-footer__name {
	font-size: 22px;
	font-weight: 900;
	color: #fff;
	letter-spacing: -.01em;
}
.smm-mega-footer__tagline {
	font-size: 14px;
	color: rgba(203,213,225,.85);
	line-height: 1.6;
	margin: 0 0 18px;
	max-width: 380px;
}
.smm-mega-footer__rating {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	color: rgba(203,213,225,.8);
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.smm-mega-footer__rating strong { color: #fff; font-weight: 800; }
.smm-mega-footer__stars {
	color: #fbbf24;
	font-size: 16px;
	letter-spacing: 1px;
	text-shadow: 0 0 10px rgba(251,191,36,.5);
}
.smm-mega-footer__social {
	display: flex;
	gap: 10px;
}
.smm-mega-footer__social a {
	width: 38px; height: 38px;
	border-radius: 50%;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.12);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	text-decoration: none;
	transition: background .15s ease, transform .15s ease, border-color .15s ease;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
.smm-mega-footer__social a:hover {
	background: rgba(255,255,255,.16);
	transform: translateY(-2px);
	border-color: rgba(255,255,255,.25);
}

/* Trust strip */
.smm-mega-footer__trust {
	position: relative;
	z-index: 1;
	border-top: 1px solid rgba(255,255,255,.08);
	border-bottom: 1px solid rgba(255,255,255,.08);
	padding: 22px 24px;
	background: rgba(0,0,0,.20);
}
.smm-mega-footer__trust-inner {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px 24px;
}
.smm-mega-footer__trust-item {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: rgba(203,213,225,.85);
	font-size: 12px;
}
.smm-mega-footer__trust-item strong {
	display: block;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
}
.smm-mega-footer__trust-item span span { font-size: 11px; opacity: .8; }
.smm-mega-footer__trust-ico {
	width: 36px; height: 36px;
	border-radius: 10px;
	background: linear-gradient(135deg, rgba(168,85,247,.20), rgba(236,72,153,.15));
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	flex-shrink: 0;
}
.smm-mega-footer__paymethods { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.smm-paychip {
	display: inline-block;
	padding: 4px 10px;
	background: rgba(255,255,255,.10);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 6px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .04em;
	color: #fff;
	text-transform: uppercase;
}

/* Bottom bar */
.smm-mega-footer__bottom {
	position: relative;
	z-index: 1;
	padding: 18px 24px;
	background: rgba(0,0,0,.30);
}
.smm-mega-footer__bottom-inner {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	gap: 16px;
	align-items: center;
	flex-wrap: wrap;
	font-size: 12px;
	color: rgba(203,213,225,.65);
}
.smm-mega-footer__copy { font-weight: 600; }
.smm-mega-footer__law { font-size: 11px; }

/* Responsive */
@media (max-width: 1024px) {
	.smm-mega-footer__inner { grid-template-columns: 1fr 1fr; gap: 32px; }
	.smm-mega-footer__col--brand { grid-column: 1 / -1; }
	.smm-newsletter__inner { grid-template-columns: 1fr; gap: 18px; text-align: center; }
	.smm-newsletter__form { justify-content: center; }
}
@media (max-width: 640px) {
	.smm-mega-footer__inner { grid-template-columns: 1fr; padding: 40px 20px 24px; gap: 28px; }
	.smm-mega-footer__trust-inner { gap: 14px; justify-content: flex-start; }
	.smm-mega-footer__trust-item--cards { width: 100%; flex-wrap: wrap; }
	.smm-mega-footer__bottom-inner { flex-direction: column; text-align: center; gap: 6px; }
	.smm-newsletter__form input[type="email"] { width: 100%; flex: 1 1 100%; }
	.smm-newsletter__submit { width: 100%; }
}

/* =============================================================================
 * URGENCY + LIVE NOTIFICATIONS + RECENTLY VIEWED + VOLUME + FLASH DEAL
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * Live purchase notifications — bottom-left corner toaster (RTL: end-side)
 * ------------------------------------------------------------------------- */
.smm-livenotif {
	position: fixed;
	left: 16px;
	bottom: 16px;
	z-index: 91;
	max-width: 360px;
	padding: 12px 36px 12px 14px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 12px 32px -8px rgba(15,23,42,.20), 0 0 0 1px rgba(15,23,42,.04);
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	color: #1f2937;
	transform: translateY(20px) scale(.92);
	opacity: 0;
	transition: transform .35s cubic-bezier(.4,0,.2,1), opacity .25s ease;
}
.smm-livenotif.is-visible {
	transform: translateY(0) scale(1);
	opacity: 1;
}
.smm-livenotif[hidden] { display: none !important; }
.smm-livenotif__close {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 22px; height: 22px;
	border-radius: 50%;
	background: #f3f4f6;
	border: 0;
	font-size: 14px;
	cursor: pointer;
	color: #6b7280;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: inherit;
}
.smm-livenotif__close:hover { background: #e5e7eb; color: #111827; }
.smm-livenotif__pulse {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 0 rgba(34,197,94,.6), 0 0 14px rgba(34,197,94,.45);
	flex-shrink: 0;
	animation: smm-pulse-anim 2s infinite;
}
.smm-livenotif__body { line-height: 1.35; min-width: 0; }
.smm-livenotif__msg { font-weight: 600; }
.smm-livenotif__msg strong { color: var(--smm-primary, #6d28d9); font-weight: 800; }
.smm-livenotif__msg .smm-livenotif__ico {
	display: inline-block;
	margin-left: 4px;
	font-size: 14px;
}
.smm-livenotif__when {
	font-size: 11px;
	color: #6b7280;
	font-weight: 700;
	margin-top: 2px;
}

@media (max-width: 540px) {
	.smm-livenotif {
		left: 8px;
		right: 8px;
		bottom: 80px; /* clear sticky CTA bar on mobile */
		max-width: none;
		padding: 10px 32px 10px 12px;
		font-size: 12px;
	}
}

/* ---------------------------------------------------------------------------
 * Volume discount visualizer — single product (large badge)
 * ------------------------------------------------------------------------- */
.smm-volprice {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
	border: 1.5px solid rgba(16,185,129,.28);
	border-radius: 12px;
	margin: 12px 0;
	font-size: 13px;
	color: #064e3b;
	font-weight: 700;
	transition: background .25s ease, border-color .25s ease;
}
.smm-volprice.is-volume {
	background: linear-gradient(135deg, #fef9c3 0%, #ecfdf5 100%);
	border-color: rgba(16,185,129,.45);
}
.smm-volprice.is-discounted {
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 50%, #ede9fe 100%);
	border-color: rgba(168,85,247,.45);
	color: var(--smm-primary, #6d28d9);
}
.smm-volprice__lbl {
	font-size: 11px;
	color: inherit;
	opacity: .8;
	font-weight: 700;
	letter-spacing: .04em;
}
.smm-volprice__val {
	font-size: 18px;
	font-weight: 900;
	color: inherit;
	letter-spacing: -.01em;
}
.smm-volprice.is-discounted .smm-volprice__val {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-volprice__hint {
	margin-right: auto;
	font-size: 11px;
	font-weight: 700;
	color: inherit;
	opacity: .7;
}

/* Compact mini variant inside loop card slider */
.smm-volprice--mini {
	font-size: 11px;
	color: #047857;
	font-weight: 700;
	padding: 4px 8px;
	background: rgba(16,185,129,.10);
	border-radius: 6px;
	display: inline-flex;
	gap: 4px;
	align-items: center;
	margin-bottom: 8px;
}
.smm-volprice--mini.is-volume {
	background: rgba(168,85,247,.12);
	color: var(--smm-primary, #6d28d9);
}
.smm-volprice--mini strong { font-weight: 900; }

/* ---------------------------------------------------------------------------
 * Stock counter + delivery countdown (single product summary)
 * ------------------------------------------------------------------------- */
.smm-urgency {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 16px 0;
}
.smm-urgency__row {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 16px;
	background: linear-gradient(135deg, #fef2f2 0%, #fff1f2 100%);
	border: 1.5px solid rgba(239,68,68,.20);
	border-radius: 14px;
}
.smm-urgency__bolt {
	font-size: 20px;
	flex-shrink: 0;
	margin-top: 2px;
}
.smm-urgency__body { flex: 1; min-width: 0; line-height: 1.35; }
.smm-urgency__title {
	font-size: 13px;
	font-weight: 800;
	color: #991b1b;
	margin-bottom: 6px;
}
.smm-urgency__title strong {
	color: #dc2626;
	font-weight: 900;
	font-size: 16px;
}
.smm-urgency__bar {
	width: 100%;
	height: 6px;
	background: rgba(255,255,255,.6);
	border-radius: 999px;
	overflow: hidden;
	margin-bottom: 6px;
}
.smm-urgency__fill {
	height: 100%;
	background: linear-gradient(90deg, #fbbf24, #ef4444);
	border-radius: 999px;
	transition: width .3s ease;
	box-shadow: 0 2px 6px rgba(239,68,68,.3) inset;
}
.smm-urgency__sub {
	font-size: 11px;
	color: #b91c1c;
	font-weight: 700;
	opacity: .85;
}

.smm-urgency__delivery {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	background: linear-gradient(135deg, #ecfeff 0%, #ecfdf5 100%);
	border: 1.5px solid rgba(6,182,212,.30);
	border-radius: 14px;
	font-size: 13px;
	color: #064e3b;
	font-weight: 700;
}
.smm-urgency__pulse {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 0 0 rgba(34,197,94,.6), 0 0 12px rgba(34,197,94,.4);
	animation: smm-pulse-anim 2s infinite;
	flex-shrink: 0;
}
.smm-urgency__deliv-text strong {
	color: var(--smm-primary, #6d28d9);
	font-weight: 900;
	font-variant-numeric: tabular-nums;
	margin: 0 4px;
}

/* ---------------------------------------------------------------------------
 * Recently Viewed strip
 * ------------------------------------------------------------------------- */
.smm-recent {
	background: linear-gradient(180deg, #fff 0%, #faf7ff 100%);
	padding: clamp(32px, 4vw, 48px) 24px;
	border-top: 1px solid #f1ecf9;
}
.smm-recent__inner {
	max-width: 1280px;
	margin: 0 auto;
}
.smm-recent__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
}
.smm-recent__head h3 {
	font-size: clamp(18px, 2.2vw, 22px);
	font-weight: 800;
	color: var(--smm-dark);
	margin: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.smm-recent__clear {
	background: transparent;
	border: 0;
	color: #6b7280;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	padding: 6px 12px;
	border-radius: 999px;
	transition: background .15s ease, color .15s ease;
	font-family: inherit;
}
.smm-recent__clear:hover { background: rgba(168,85,247,.08); color: var(--smm-primary); }
.smm-recent__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 14px;
}
.smm-recent__card {
	display: block;
	padding: 14px 14px 16px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 14px;
	color: var(--smm-dark) !important;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	text-align: center;
}
.smm-recent__card:hover {
	transform: translateY(-3px);
	border-color: rgba(168,85,247,.40);
	box-shadow: 0 14px 28px -10px rgba(109,40,217,.20);
}
.smm-recent__visual {
	width: 56px; height: 56px;
	border-radius: 12px;
	margin: 0 auto 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	color: #fff;
	box-shadow: 0 6px 14px -4px rgba(0,0,0,.15);
}
.smm-recent__name {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 34px;
}
.smm-recent__price {
	font-size: 12px;
	font-weight: 800;
	margin-top: 6px;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

@media (max-width: 540px) {
	.smm-recent__list { grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.smm-recent__card { padding: 12px 10px 14px; }
	.smm-recent__visual { width: 48px; height: 48px; font-size: 22px; }
	.smm-recent__name { font-size: 12px; min-height: 30px; }
}

/* ---------------------------------------------------------------------------
 * Flash deal banner (sitewide on shop/category pages)
 * ------------------------------------------------------------------------- */
.smm-flash {
	background: linear-gradient(120deg, #1e0a45 0%, #6d28d9 35%, #ec4899 70%, #fbbf24 100%);
	background-size: 200% 100%;
	animation: smm-gradient-shift 8s ease-in-out infinite;
	color: #fff;
	padding: 12px 44px 12px 16px;
	position: relative;
	font-size: 14px;
	overflow: hidden;
}
.smm-flash::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.20) 50%, transparent 70%);
	transform: translateX(-100%);
	animation: smm-hero-shimmer 6s ease-in-out infinite;
	pointer-events: none;
}
.smm-flash__close {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(255,255,255,.18);
	border: 0;
	color: #fff;
	font-size: 16px;
	cursor: pointer;
	font-family: inherit;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.smm-flash__close:hover { background: rgba(255,255,255,.30); }
.smm-flash__inner {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 14px;
	position: relative;
	flex-wrap: wrap;
}
.smm-flash__icon {
	font-size: 28px;
	flex-shrink: 0;
	animation: smm-orb-float 3s ease-in-out infinite;
}
.smm-flash__text { flex: 1; line-height: 1.35; min-width: 0; }
.smm-flash__title {
	font-size: 15px;
	font-weight: 800;
}
.smm-flash__title strong {
	background: linear-gradient(135deg, #fef9c3, #ffffff);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	font-weight: 900;
	letter-spacing: -.01em;
}
.smm-flash__sub {
	font-size: 12px;
	color: rgba(255,255,255,.85);
	font-weight: 600;
}
.smm-flash__sub code {
	background: rgba(255,255,255,.20);
	border: 1px dashed rgba(255,255,255,.40);
	color: #fef9c3;
	padding: 1px 8px;
	border-radius: 6px;
	font-family: monospace;
	letter-spacing: .06em;
	font-weight: 800;
	margin: 0 4px;
}
.smm-flash__sub #smm-flash-timer {
	font-variant-numeric: tabular-nums;
	font-weight: 800;
	color: #fef9c3;
}
.smm-flash__cta {
	background: rgba(255,255,255,.20);
	border: 1px solid rgba(255,255,255,.35);
	color: #fff !important;
	padding: 8px 18px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none !important;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	transition: background .15s ease, transform .15s ease;
	white-space: nowrap;
}
.smm-flash__cta:hover {
	background: rgba(255,255,255,.30);
	transform: translateY(-1px);
}

@media (max-width: 640px) {
	.smm-flash { padding: 10px 38px 10px 12px; }
	.smm-flash__inner { gap: 10px; }
	.smm-flash__icon { font-size: 22px; }
	.smm-flash__title { font-size: 13px; }
	.smm-flash__sub { font-size: 11px; }
	.smm-flash__cta { font-size: 12px; padding: 6px 14px; width: 100%; text-align: center; }
}

/* =============================================================================
 * MEGA MENU — Hover dropdown under platform menu items (desktop) +
 * inline accordion expand on mobile.
 * ========================================================================== */

/* Anchor mega menu to the navigation bar so it can span full nav width */
#site-navigation { position: relative; }
.smm-has-megamenu { position: static !important; }
.smm-has-megamenu > a > .smm-megamenu-caret {
	display: inline-block;
	margin-right: 4px;
	font-size: 10px;
	opacity: .5;
	transition: opacity .15s ease, transform .2s ease;
}
.smm-has-megamenu:hover > a > .smm-megamenu-caret,
.smm-has-megamenu.is-open > a > .smm-megamenu-caret {
	opacity: 1;
	transform: rotate(180deg);
}

.smm-megamenu {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	width: 100%;
	z-index: 95;
	background: #fff;
	box-shadow: 0 24px 48px -12px rgba(15,23,42,.18), 0 0 0 1px rgba(15,23,42,.04);
	border-radius: 0 0 24px 24px;
	visibility: hidden;
	opacity: 0;
	transform: translateY(-8px);
	transition: opacity .22s ease, transform .22s ease, visibility 0s .22s;
	pointer-events: none;
	overflow: hidden;
}
.smm-has-megamenu:hover .smm-megamenu,
.smm-has-megamenu:focus-within .smm-megamenu {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
	transition: opacity .22s ease, transform .22s ease, visibility 0s 0s;
	pointer-events: auto;
}

.smm-megamenu__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 28px 32px;
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 28px;
}

/* Intro panel (right side in RTL) — gradient with platform branding */
.smm-megamenu__intro {
	background: var(--smm-gradient-hero, linear-gradient(135deg,#6d28d9,#ec4899));
	color: #fff;
	border-radius: 18px;
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 240px;
	position: relative;
	overflow: hidden;
}
.smm-megamenu__intro::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 30% 20%, rgba(255,255,255,.18), transparent 60%);
	pointer-events: none;
}
.smm-megamenu__intro-icon {
	font-size: 56px;
	line-height: 1;
	filter: drop-shadow(0 6px 18px rgba(0,0,0,.3));
	margin-bottom: 12px;
	position: relative;
}
.smm-megamenu__intro-name {
	font-size: 22px;
	font-weight: 900;
	color: #fff;
	letter-spacing: -.01em;
	position: relative;
}
.smm-megamenu__intro-meta {
	font-size: 13px;
	color: rgba(255,255,255,.85);
	margin-top: 4px;
	position: relative;
}
.smm-megamenu__intro-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 18px;
	margin-top: 16px;
	background: rgba(255,255,255,.18);
	border: 1px solid rgba(255,255,255,.28);
	border-radius: 999px;
	color: #fff !important;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none !important;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	transition: background .15s ease, transform .15s ease;
	align-self: flex-start;
	position: relative;
}
.smm-megamenu__intro-cta:hover { background: rgba(255,255,255,.30); transform: translateY(-1px); }

/* Product cards grid */
.smm-megamenu__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
.smm-megamenu__card {
	position: relative;
	display: block;
	padding: 14px 14px 12px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 14px;
	color: var(--smm-dark, #0f172a) !important;
	text-decoration: none !important;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.smm-megamenu__card:hover {
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 12px 24px -8px rgba(109,40,217,.20);
	transform: translateY(-2px);
}
.smm-megamenu__card-badge {
	display: inline-block;
	background: linear-gradient(135deg, #fbbf24, #ec4899);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 999px;
	margin-bottom: 6px;
	letter-spacing: .03em;
}
.smm-megamenu__card-name {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 34px;
	color: var(--smm-dark);
}
.smm-megamenu__card-price {
	font-size: 12px;
	font-weight: 800;
	margin-top: 4px;
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

/* Shop mega menu — single grid of platform cards */
.smm-megamenu__inner--shop {
	grid-template-columns: 1fr;
}
.smm-megamenu__shop-head { margin-bottom: 18px; }
.smm-megamenu__shop-head h4 {
	font-size: 18px;
	font-weight: 900;
	color: var(--smm-dark);
	margin: 0 0 4px;
}
.smm-megamenu__shop-head p {
	font-size: 13px;
	color: #6b7280;
	margin: 0;
}
.smm-megamenu__shop-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}
.smm-megamenu__shop-card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px;
	background: #fff;
	border: 1.5px solid #ece5f6;
	border-radius: 14px;
	color: var(--smm-dark) !important;
	text-decoration: none !important;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.smm-megamenu__shop-card:hover {
	border-color: rgba(168,85,247,.45);
	box-shadow: 0 12px 24px -8px rgba(109,40,217,.20);
	transform: translateY(-2px);
}
.smm-megamenu__shop-ico {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	color: #fff;
	flex-shrink: 0;
}
.smm-megamenu__shop-name {
	font-size: 14px;
	font-weight: 800;
	color: var(--smm-dark);
}
.smm-megamenu__shop-meta {
	font-size: 12px;
	color: #6b7280;
	font-weight: 700;
	margin-top: 2px;
}

/* Tablet: tighter grids */
@media (max-width: 1024px) and (min-width: 769px) {
	.smm-megamenu__inner { grid-template-columns: 220px minmax(0, 1fr); padding: 22px 24px; gap: 20px; }
	.smm-megamenu__grid { grid-template-columns: repeat(2, 1fr); }
	.smm-megamenu__shop-grid { grid-template-columns: repeat(3, 1fr); }
	.smm-megamenu__intro { min-height: 200px; padding: 20px 18px; }
}

/* Mobile / tablet ≤768: nav drawer is open as full-width column.
 * Mega menu becomes inline accordion under the toggled item. */
@media (max-width: 768px) {
	.smm-megamenu {
		position: static !important;
		width: 100%;
		max-height: 0;
		overflow: hidden;
		transition: max-height .35s ease;
		visibility: visible;
		opacity: 1;
		transform: none;
		pointer-events: none;
		background: rgba(15, 23, 42, .04);
		box-shadow: none;
		border-radius: 0;
	}
	.smm-has-megamenu.is-open .smm-megamenu {
		max-height: 1200px;
		pointer-events: auto;
	}
	.smm-megamenu__inner {
		grid-template-columns: 1fr;
		padding: 16px;
		gap: 14px;
		max-width: none;
	}
	.smm-megamenu__intro {
		min-height: 0;
		padding: 18px 18px 14px;
		text-align: center;
		align-items: center;
	}
	.smm-megamenu__intro-icon { font-size: 40px; margin-bottom: 6px; }
	.smm-megamenu__intro-cta { align-self: center; }
	.smm-megamenu__grid { grid-template-columns: repeat(2, 1fr); }
	.smm-megamenu__shop-grid { grid-template-columns: repeat(2, 1fr); }
	.smm-megamenu__card { padding: 12px 10px; }
	.smm-megamenu__card-name { font-size: 12px; min-height: 30px; }

	/* Mobile: hover-show should not fire on touch */
	.smm-has-megamenu:hover .smm-megamenu,
	.smm-has-megamenu:focus-within .smm-megamenu {
		opacity: 1;
		transform: none;
	}
}

/* Phone ≤480: single column for cards */
@media (max-width: 480px) {
	.smm-megamenu__grid,
	.smm-megamenu__shop-grid { grid-template-columns: 1fr; }
}

/* When nav is toggled (drawer open), make the mega menu visible inline,
 * even on tablet ≤768 where touch is the primary input */
@media (max-width: 768px) {
	#site-navigation.toggled .smm-megamenu { pointer-events: auto; }
}

/* =============================================================================
 * CHECKOUT PAGE — premium redesign matching site brand.
 * 2-col on desktop (billing on right, review/payment on left in RTL),
 * stacked on mobile. Glass cards, gradient borders, animated CTA.
 * ========================================================================== */

/* Page-level container — wider, comfortable padding */
body.woocommerce-checkout .site-main,
body.woocommerce-cart .site-main {
	max-width: 1280px !important;
	margin: 24px auto 48px !important;
	padding: 0 24px !important;
	box-sizing: border-box;
}

/* Page title styling */
body.woocommerce-checkout .entry-title,
body.woocommerce-cart .entry-title {
	font-size: clamp(26px, 3.4vw, 38px);
	font-weight: 900;
	color: var(--smm-dark);
	margin: 0 0 22px;
	letter-spacing: -.02em;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

/* Coupon form — clean compact strip */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	background: linear-gradient(135deg, #faf7ff 0%, rgba(252,231,243,.4) 100%) !important;
	border: 1.5px dashed rgba(168,85,247,.30) !important;
	border-radius: 14px !important;
	padding: 14px 18px !important;
	color: var(--smm-dark) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle a.showcoupon {
	color: var(--smm-primary) !important;
	font-weight: 800 !important;
	text-decoration: underline !important;
}
body.woocommerce-checkout .checkout_coupon {
	background: #fff !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 16px !important;
	padding: 18px !important;
	margin: 12px 0 24px !important;
	box-shadow: 0 8px 24px -10px rgba(15,23,42,.08);
}
body.woocommerce-checkout .checkout_coupon p:first-child { display: none; }
body.woocommerce-checkout .checkout_coupon input[type="text"] {
	background: #fafafa !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 12px !important;
	padding: 12px 16px !important;
	font-size: 14px !important;
}
body.woocommerce-checkout .checkout_coupon button {
	background: linear-gradient(135deg, #6d28d9, #ec4899) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 12px !important;
	padding: 12px 22px !important;
	font-weight: 800 !important;
}

/* MAIN FORM — 2-col grid on desktop.
 * WC's actual structure is:
 *   form.checkout > .col2-set > .col-1 (billing + account-fields)
 *                              > .col-2 (shipping + additional-fields, hidden)
 *                 > #order_review (table + payment + place-order)
 * So .col2-set IS the billing column; #order_review is the review column. */
body.woocommerce-checkout form.checkout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 480px;
	grid-template-areas: "billing review";
	gap: 28px;
	align-items: start;
	margin-top: 16px;
}
body.woocommerce-checkout form.checkout > .col2-set { grid-area: billing; min-width: 0; }
body.woocommerce-checkout form.checkout > #order_review { grid-area: review; min-width: 0; }
body.woocommerce-checkout form.checkout > #order_review_heading { display: none; }
body.woocommerce-checkout form.checkout > *:not(.col2-set):not(#order_review):not(#order_review_heading):not(input[type="hidden"]) {
	grid-column: 1 / -1;
}
body.woocommerce-checkout form.checkout > input[type="hidden"] { display: none; }

/* Inside .col2-set — collapse legacy float-2col, since we only have billing */
body.woocommerce-checkout form.checkout .col2-set {
	display: block !important;
	width: 100% !important;
}
body.woocommerce-checkout form.checkout .col2-set::before,
body.woocommerce-checkout form.checkout .col2-set::after { display: none !important; content: none !important; }
body.woocommerce-checkout form.checkout .col2-set .col-1,
body.woocommerce-checkout form.checkout .col2-set .col-2 {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
/* Hide empty/unused sections */
body.woocommerce-checkout form.checkout .woocommerce-shipping-fields,
body.woocommerce-checkout form.checkout .col2-set .col-2:empty {
	display: none !important;
}

@media (max-width: 1024px) {
	body.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"billing"
			"review";
		gap: 20px;
	}
}

/* Billing fields card */
body.woocommerce-checkout .woocommerce-billing-fields {
	grid-area: billing;
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 22px;
	padding: 28px 28px 24px;
	box-shadow:
		0 14px 32px -16px rgba(15,23,42,.10),
		0 0 0 1px rgba(255,255,255,.6) inset;
	position: relative;
	overflow: hidden;
	min-width: 0;
}
body.woocommerce-checkout .woocommerce-billing-fields::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 4px;
	background: linear-gradient(90deg, #fbbf24, #ec4899, #a855f7);
	border-radius: 22px 22px 0 0;
}
body.woocommerce-checkout .woocommerce-billing-fields h3 {
	font-size: 20px !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 4px !important;
	letter-spacing: -.01em;
}
body.woocommerce-checkout .woocommerce-billing-fields h3::before {
	content: '👤 ';
	font-size: 22px;
}
body.woocommerce-checkout .woocommerce-billing-fields h3 + p,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p:first-child {
	color: #6b7280;
	font-size: 13px;
	margin: 0 0 18px;
}

/* Form fields grid — name+lastname side by side, email/phone full width */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}
body.woocommerce-checkout .form-row.notes,
body.woocommerce-checkout .form-row[id*="email"],
body.woocommerce-checkout .form-row[id*="phone"] {
	grid-column: 1 / -1;
}

/* Field labels */
body.woocommerce-checkout .form-row label {
	font-size: 12px !important;
	font-weight: 800 !important;
	color: #4b5563 !important;
	margin-bottom: 6px !important;
	letter-spacing: .04em;
	display: block;
}
body.woocommerce-checkout .required {
	color: #ec4899 !important;
	font-weight: 900;
}

/* Inputs */
body.woocommerce-checkout .woocommerce-input-wrapper input[type="text"],
body.woocommerce-checkout .woocommerce-input-wrapper input[type="email"],
body.woocommerce-checkout .woocommerce-input-wrapper input[type="tel"],
body.woocommerce-checkout .woocommerce-input-wrapper input[type="number"],
body.woocommerce-checkout .woocommerce-input-wrapper textarea,
body.woocommerce-checkout .woocommerce-input-wrapper select {
	width: 100% !important;
	padding: 13px 16px !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 14px !important;
	background: #fafafa !important;
	font-size: 15px !important;
	color: var(--smm-dark) !important;
	box-sizing: border-box !important;
	transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
	font-family: inherit !important;
}
body.woocommerce-checkout .woocommerce-input-wrapper input:focus,
body.woocommerce-checkout .woocommerce-input-wrapper textarea:focus,
body.woocommerce-checkout .woocommerce-input-wrapper select:focus {
	border-color: var(--smm-primary) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(109, 40, 217, .12) !important;
	outline: 0 !important;
}

/* ORDER REVIEW PANEL (sticky on desktop) */
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review {
	grid-area: review;
}
body.woocommerce-checkout #order_review_heading { display: none; }
body.woocommerce-checkout #order_review {
	background: linear-gradient(180deg, #fff 0%, #faf7ff 100%);
	border: 1px solid rgba(168,85,247,.20);
	border-radius: 22px;
	padding: 26px 26px 22px;
	box-shadow:
		0 20px 40px -16px rgba(168,85,247,.18),
		0 0 0 1px rgba(255,255,255,.6) inset;
	position: sticky;
	top: 88px;
	min-width: 0;
	overflow: hidden;
}
body.woocommerce-checkout #order_review::before {
	content: '🛒 סיכום ההזמנה';
	display: block;
	font-size: 18px;
	font-weight: 900;
	color: var(--smm-dark);
	letter-spacing: -.01em;
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px dashed rgba(168,85,247,.25);
}
@media (max-width: 1024px) {
	body.woocommerce-checkout #order_review { position: static; }
}

/* Order review table — clean rows */
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
	width: 100% !important;
	border: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
	border: 0 !important;
	padding: 10px 0 !important;
	background: transparent !important;
	font-size: 14px !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #9ca3af !important;
	text-transform: uppercase;
	letter-spacing: .08em;
	padding-bottom: 8px !important;
	border-bottom: 1px solid #ece5f6 !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td {
	border-bottom: 1px dashed #ece5f6 !important;
	padding: 14px 0 !important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td:last-child {
	font-weight: 900;
	color: var(--smm-primary);
}
body.woocommerce-checkout .product-name {
	color: var(--smm-dark) !important;
	font-weight: 700 !important;
}
body.woocommerce-checkout .product-name strong {
	color: var(--smm-primary) !important;
	font-weight: 900;
}
body.woocommerce-checkout .product-quantity {
	color: #6b7280 !important;
	font-weight: 700 !important;
	margin-right: 4px;
}
body.woocommerce-checkout .wc-item-meta {
	margin: 6px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
	font-size: 12px;
	color: #6b7280;
}
body.woocommerce-checkout .wc-item-meta li {
	margin: 2px 0 !important;
	padding: 0 !important;
}
body.woocommerce-checkout .wc-item-meta strong { color: #4b5563; font-weight: 700; }

/* Totals rows (subtotal / shipping / discount / total) */
body.woocommerce-checkout .cart-subtotal th,
body.woocommerce-checkout .cart-subtotal td,
body.woocommerce-checkout .cart-discount th,
body.woocommerce-checkout .cart-discount td,
body.woocommerce-checkout .tax-total th,
body.woocommerce-checkout .tax-total td,
body.woocommerce-checkout tr.fee th,
body.woocommerce-checkout tr.fee td {
	font-size: 14px !important;
	color: #4b5563 !important;
	padding: 10px 0 !important;
	border: 0 !important;
}
body.woocommerce-checkout .cart-discount th { color: #16a34a !important; }
body.woocommerce-checkout .cart-discount td { color: #16a34a !important; font-weight: 900 !important; }
body.woocommerce-checkout .order-total th,
body.woocommerce-checkout .order-total td {
	font-size: 18px !important;
	color: var(--smm-dark) !important;
	font-weight: 900 !important;
	border-top: 2px solid #ece5f6 !important;
	padding-top: 14px !important;
}
body.woocommerce-checkout .order-total td .woocommerce-Price-amount {
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: 26px;
	letter-spacing: -.01em;
}

/* Payment methods */
body.woocommerce-checkout #payment {
	background: transparent !important;
	border: 0 !important;
	border-top: 1px dashed rgba(168,85,247,.25);
	padding-top: 18px !important;
	margin-top: 18px !important;
}
body.woocommerce-checkout #payment ul.payment_methods {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 0 14px !important;
}
body.woocommerce-checkout #payment ul.payment_methods li {
	background: #fff !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 14px !important;
	padding: 14px 16px !important;
	margin-bottom: 8px !important;
	transition: border-color .15s ease, box-shadow .15s ease;
}
body.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) {
	border-color: rgba(168,85,247,.50) !important;
	box-shadow: 0 8px 18px -6px rgba(109,40,217,.20) !important;
}
body.woocommerce-checkout #payment ul.payment_methods li label {
	font-weight: 800 !important;
	color: var(--smm-dark) !important;
	margin-right: 8px !important;
}
body.woocommerce-checkout #payment ul.payment_methods li img {
	max-height: 28px !important;
	margin: 0 6px !important;
	vertical-align: middle;
}
body.woocommerce-checkout #payment .payment_box {
	background: rgba(168,85,247,.04) !important;
	border-radius: 10px !important;
	margin: 10px 0 0 !important;
	padding: 12px !important;
	font-size: 13px !important;
	color: #4b5563 !important;
}
body.woocommerce-checkout #payment .payment_box::before { display: none !important; }

/* Terms checkbox */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 14px 0 !important;
	font-size: 13px !important;
	color: #4b5563 !important;
}
body.woocommerce-checkout .woocommerce-form__input-checkbox {
	width: 18px;
	height: 18px;
	accent-color: var(--smm-primary);
	margin-inline-end: 8px;
}

/* PLACE ORDER BUTTON — the climax */
body.woocommerce-checkout .form-row.place-order {
	padding: 0 !important;
	margin: 0 !important;
}
body.woocommerce-checkout #place_order,
body.woocommerce-page #place_order {
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	padding: 20px 24px !important;
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%) !important;
	background-size: 200% 100% !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 16px !important;
	font-size: 18px !important;
	font-weight: 900 !important;
	letter-spacing: -.01em;
	cursor: pointer;
	box-shadow:
		0 16px 32px -10px rgba(236,72,153,.55),
		0 0 0 1px rgba(255,255,255,.10) inset !important;
	transition: transform .15s ease, box-shadow .15s ease !important;
	animation: smm-btn-shimmer 4s ease-in-out infinite, smm-cta-breathe 2.6s ease-in-out infinite;
	font-family: inherit !important;
	margin-top: 8px !important;
}
body.woocommerce-checkout #place_order::before {
	content: '🔒 ';
	font-size: 18px;
}
body.woocommerce-checkout #place_order::after {
	content: ' →';
	font-size: 22px;
	font-weight: 900;
}
body.woocommerce-checkout #place_order:hover {
	transform: translateY(-2px) !important;
	box-shadow:
		0 22px 44px -12px rgba(236,72,153,.65),
		0 0 0 1px rgba(255,255,255,.14) inset !important;
}

/* Trust strip below the place order button */
body.woocommerce-checkout #order_review .woocommerce-terms-and-conditions-wrapper + .form-row,
body.woocommerce-checkout #order_review .form-row.place-order {
	position: relative;
}
body.woocommerce-checkout #order_review .form-row.place-order::after {
	content: '🔒 SSL · 📄 חשבונית אוטומטית · 🛡️ אחריות drop · 💬 תמיכה בעברית';
	display: block;
	margin-top: 12px;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: #9ca3af;
	letter-spacing: .04em;
}

/* Notices on checkout */
body.woocommerce-checkout .woocommerce-NoticeGroup,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info {
	background: #fff !important;
	border: 0 !important;
	border-radius: 14px !important;
	padding: 14px 18px !important;
	margin: 0 0 16px !important;
	box-shadow: 0 8px 18px -6px rgba(15,23,42,.08), 0 0 0 1px rgba(15,23,42,.04);
	color: var(--smm-dark) !important;
	font-size: 14px !important;
}
body.woocommerce-checkout .woocommerce-error {
	border-right: 4px solid #ef4444 !important;
	color: #991b1b !important;
}
body.woocommerce-checkout .woocommerce-message {
	border-right: 4px solid #22c55e !important;
	color: #166534 !important;
}
body.woocommerce-checkout .woocommerce-info {
	border-right: 4px solid var(--smm-primary) !important;
}
body.woocommerce-checkout .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-message::before,
body.woocommerce-checkout .woocommerce-info::before { display: none !important; }

/* =============================================================================
 * MY ACCOUNT / LOGIN / REGISTER — premium redesign matching site brand
 * ========================================================================== */

body.woocommerce-account .site-main {
	max-width: 1200px !important;
	margin: 24px auto 60px !important;
	padding: 0 24px !important;
	box-sizing: border-box;
}

body.woocommerce-account .entry-title {
	font-size: clamp(26px, 3.4vw, 38px);
	font-weight: 900;
	margin: 0 0 22px;
	letter-spacing: -.02em;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}

/* LOGIN + REGISTER — 2-col page when logged out */
body.woocommerce-account #customer_login {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	margin: 24px 0 !important;
}
body.woocommerce-account #customer_login::before { display: none !important; }
body.woocommerce-account #customer_login::after  { display: none !important; }
body.woocommerce-account #customer_login .u-column1,
body.woocommerce-account #customer_login .u-column2 {
	float: none !important;
	width: auto !important;
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 22px;
	padding: 32px 32px 28px;
	box-shadow: 0 14px 32px -16px rgba(15,23,42,.12), 0 0 0 1px rgba(255,255,255,.6) inset;
	position: relative;
	overflow: hidden;
}
body.woocommerce-account #customer_login .u-column1::before,
body.woocommerce-account #customer_login .u-column2::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 4px;
	background: linear-gradient(90deg, #fbbf24, #ec4899, #a855f7);
	border-radius: 22px 22px 0 0;
}
body.woocommerce-account #customer_login h2 {
	font-size: 22px !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 6px !important;
	letter-spacing: -.01em;
}
body.woocommerce-account #customer_login .u-column1 h2::before { content: '👤 '; font-size: 22px; }
body.woocommerce-account #customer_login .u-column2 h2::before { content: '✨ '; font-size: 22px; }
body.woocommerce-account #customer_login h2 + p,
body.woocommerce-account #customer_login form > p:first-of-type {
	font-size: 13px;
	color: #6b7280;
	margin: 0 0 18px;
}

body.woocommerce-account .form-row label {
	font-size: 12px !important;
	font-weight: 800 !important;
	color: #4b5563 !important;
	margin-bottom: 6px !important;
	letter-spacing: .04em;
	display: block;
}
body.woocommerce-account .required { color: #ec4899 !important; font-weight: 900; }

body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account input[type="url"],
body.woocommerce-account textarea {
	width: 100% !important;
	padding: 13px 16px !important;
	border: 1.5px solid #ece5f6 !important;
	border-radius: 14px !important;
	background: #fafafa !important;
	font-size: 15px !important;
	color: var(--smm-dark) !important;
	box-sizing: border-box !important;
	transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
	font-family: inherit !important;
}
body.woocommerce-account input:focus,
body.woocommerce-account textarea:focus {
	border-color: var(--smm-primary) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(109, 40, 217, .12) !important;
	outline: 0 !important;
}

body.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: #4b5563;
	margin: 6px 0;
}
body.woocommerce-account .woocommerce-form__input-checkbox {
	width: 18px;
	height: 18px;
	accent-color: var(--smm-primary);
}

/* Submit buttons (login / register) */
body.woocommerce-account .woocommerce-form-login__submit,
body.woocommerce-account .woocommerce-form-register__submit,
body.woocommerce-account .woocommerce-Button {
	display: flex !important;
	width: 100% !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	padding: 16px 24px !important;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 14px !important;
	font-size: 16px !important;
	font-weight: 900 !important;
	letter-spacing: -.01em !important;
	cursor: pointer;
	box-shadow: 0 12px 24px -8px rgba(109,40,217,.45) !important;
	transition: transform .15s ease, box-shadow .15s ease !important;
	font-family: inherit !important;
	margin-top: 12px !important;
}
body.woocommerce-account .woocommerce-form-login__submit:hover,
body.woocommerce-account .woocommerce-form-register__submit:hover,
body.woocommerce-account .woocommerce-Button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 18px 32px -8px rgba(109,40,217,.55) !important;
}

body.woocommerce-account .lost_password a {
	color: var(--smm-primary) !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-decoration: underline !important;
}

/* MY ACCOUNT DASHBOARD (logged in) */
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
	display: block !important;
}
body.woocommerce-account.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
body.woocommerce-account.woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
}
body.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 24px;
	align-items: start;
}
@media (max-width: 1024px) {
	body.woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}

/* Sidebar nav */
body.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 18px;
	padding: 12px;
	box-shadow: 0 8px 24px -10px rgba(15,23,42,.08);
	position: sticky;
	top: 88px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0 !important;
	list-style: none !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	color: var(--smm-dark) !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
	font-size: 16px;
	line-height: 1;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a::before { content: '🏠'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a::before { content: '📦'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a::before { content: '⬇️'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a::before { content: '📍'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account a::before { content: '👤'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: '🚪'; }
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	background: rgba(168,85,247,.08);
	color: var(--smm-primary) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: linear-gradient(135deg, #6d28d9, #ec4899);
	color: #fff !important;
	box-shadow: 0 8px 16px -4px rgba(109,40,217,.40);
}

/* Content area (right) */
body.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 22px;
	padding: 28px 32px;
	box-shadow: 0 14px 32px -16px rgba(15,23,42,.10);
	min-width: 0;
}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
	font-size: 20px !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 16px !important;
	letter-spacing: -.01em;
}
body.woocommerce-account .woocommerce-MyAccount-content p {
	color: #4b5563;
	font-size: 14px;
	line-height: 1.7;
}
body.woocommerce-account .woocommerce-MyAccount-content a {
	color: var(--smm-primary) !important;
	font-weight: 700 !important;
}

/* Orders table inside account */
body.woocommerce-account .woocommerce-orders-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 8px !important;
	border: 0 !important;
}
body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td {
	padding: 14px 16px !important;
	background: #fafafa !important;
	border: 0 !important;
	font-size: 14px !important;
	color: var(--smm-dark) !important;
}
body.woocommerce-account .woocommerce-orders-table thead th {
	background: transparent !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #9ca3af !important;
	text-transform: uppercase;
	letter-spacing: .08em;
	padding: 6px 16px !important;
}
body.woocommerce-account .woocommerce-orders-table tbody tr {
	border: 1px solid #ece5f6 !important;
	border-radius: 12px;
	overflow: hidden;
}
body.woocommerce-account .woocommerce-orders-table tbody tr td:first-child {
	border-radius: 0 12px 12px 0;
}
body.woocommerce-account .woocommerce-orders-table tbody tr td:last-child {
	border-radius: 12px 0 0 12px;
}
body.woocommerce-account .woocommerce-orders-table .order-status,
body.woocommerce-account .order-status {
	display: inline-block;
	padding: 4px 12px;
	background: rgba(168,85,247,.12);
	color: var(--smm-primary);
	border-radius: 999px;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: .04em;
}
body.woocommerce-account .order-status.status-completed,
body.woocommerce-account .order-status.completed {
	background: rgba(34,197,94,.12); color: #166534;
}
body.woocommerce-account .order-status.status-processing,
body.woocommerce-account .order-status.processing {
	background: rgba(251,191,36,.16); color: #92400e;
}
body.woocommerce-account .order-status.status-cancelled,
body.woocommerce-account .order-status.cancelled,
body.woocommerce-account .order-status.status-failed {
	background: rgba(239,68,68,.12); color: #991b1b;
}

/* "View" / "Pay" buttons on orders */
body.woocommerce-account .woocommerce-orders-table .button {
	background: linear-gradient(135deg, #6d28d9, #ec4899) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 8px 18px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

/* No-orders message */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message {
	background: linear-gradient(135deg, #faf7ff 0%, rgba(252,231,243,.4) 100%) !important;
	border: 1.5px dashed rgba(168,85,247,.30) !important;
	border-radius: 16px !important;
	padding: 24px !important;
	text-align: center;
	color: var(--smm-dark) !important;
}

/* =============================================================================
 * ORDER RECEIVED (thank-you page) — premium card-based layout
 * ========================================================================== */

body.woocommerce-order-received .site-main {
	max-width: 920px !important;
	margin: 24px auto 60px !important;
	padding: 0 24px !important;
}
body.woocommerce-order-received .entry-title { display: none; }
body.woocommerce-order-received .woocommerce-notice--success,
body.woocommerce-order-received .woocommerce-thankyou-order-received {
	background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%) !important;
	border: 2px solid rgba(16,185,129,.30) !important;
	border-radius: 22px !important;
	padding: 28px 28px !important;
	margin: 0 0 24px !important;
	font-size: 17px !important;
	font-weight: 800 !important;
	color: #065f46 !important;
	text-align: center;
	position: relative;
	overflow: hidden;
}
body.woocommerce-order-received .woocommerce-thankyou-order-received::before {
	content: '✅';
	display: block;
	font-size: 48px;
	margin-bottom: 8px;
}

/* Order details summary card */
body.woocommerce-order-received .woocommerce-order-overview {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
	gap: 12px;
	background: #fff !important;
	border: 1px solid #ece5f6 !important;
	border-radius: 18px !important;
	padding: 20px !important;
	margin: 0 0 24px !important;
	list-style: none !important;
	box-shadow: 0 8px 24px -10px rgba(15,23,42,.08) !important;
}
body.woocommerce-order-received .woocommerce-order-overview li {
	border: 0 !important;
	padding: 12px 14px !important;
	background: #fafafa !important;
	border-radius: 12px !important;
	font-size: 12px !important;
	color: #6b7280 !important;
	font-weight: 700 !important;
	letter-spacing: .04em;
	text-transform: uppercase;
}
body.woocommerce-order-received .woocommerce-order-overview li strong {
	display: block;
	font-size: 16px !important;
	color: var(--smm-dark) !important;
	margin-top: 4px;
	letter-spacing: -.01em;
	font-weight: 900;
	text-transform: none;
}

/* Order details table */
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details {
	background: #fff !important;
	border: 1px solid #ece5f6 !important;
	border-radius: 22px !important;
	padding: 26px 28px !important;
	margin: 0 0 24px !important;
	box-shadow: 0 14px 32px -16px rgba(15,23,42,.10);
}
body.woocommerce-order-received .woocommerce-order-details h2,
body.woocommerce-order-received .woocommerce-customer-details h2 {
	font-size: 20px !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 16px !important;
}
body.woocommerce-order-received .woocommerce-table--order-details,
body.woocommerce-order-received .woocommerce-table--customer-details {
	width: 100% !important;
	border: 0 !important;
}
body.woocommerce-order-received .woocommerce-table--order-details th,
body.woocommerce-order-received .woocommerce-table--order-details td {
	border: 0 !important;
	padding: 12px 0 !important;
	font-size: 14px !important;
	border-bottom: 1px dashed #ece5f6 !important;
}
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child td {
	font-size: 18px !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	border: 0 !important;
	padding-top: 16px !important;
	border-top: 2px solid #ece5f6 !important;
}
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child td .woocommerce-Price-amount {
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	font-size: 24px;
}

/* =============================================================================
 * 404 PAGE — premium "lost in space" with smart suggestions
 * ========================================================================== */
body.error404 .site-main {
	max-width: 800px !important;
	margin: 40px auto 60px !important;
	padding: 0 24px !important;
	text-align: center;
}
body.error404 .page-content {
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 50%, #ede9fe 100%);
	border: 2px dashed rgba(168,85,247,.30);
	border-radius: 24px;
	padding: 56px 32px 48px;
	box-shadow: 0 18px 40px -16px rgba(168,85,247,.22);
}
body.error404 .entry-title,
body.error404 h1 {
	font-size: clamp(80px, 14vw, 140px) !important;
	font-weight: 900 !important;
	margin: 0 0 8px !important;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 50%, #fbbf24 100%);
	background-size: 200% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
	line-height: 1;
	letter-spacing: -.04em;
	animation: smm-btn-shimmer 6s ease-in-out infinite;
}
body.error404 .page-content::before {
	content: '🚀';
	display: block;
	font-size: 64px;
	margin-bottom: 12px;
	animation: smm-orb-float 4s ease-in-out infinite;
}
body.error404 .page-content p {
	font-size: 17px;
	color: #4b5563;
	margin: 0 auto 16px;
	max-width: 480px;
	line-height: 1.6;
}
body.error404 .page-content .search-form,
body.error404 .search-form {
	display: flex;
	gap: 8px;
	max-width: 480px;
	margin: 24px auto;
}
body.error404 .search-form input[type="search"] {
	flex: 1;
	padding: 14px 18px !important;
	border: 1.5px solid rgba(168,85,247,.30) !important;
	border-radius: 14px !important;
	font-size: 15px !important;
	background: #fff !important;
}
body.error404 .search-form button {
	background: linear-gradient(135deg, #6d28d9, #ec4899) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 14px !important;
	padding: 14px 24px !important;
	font-weight: 800 !important;
	cursor: pointer;
}

/* =============================================================================
 * MOBILE: tighter spacing for all premium pages
 * ========================================================================== */
@media (max-width: 640px) {
	body.woocommerce-account #customer_login {
		grid-template-columns: 1fr !important;
		gap: 16px;
	}
	body.woocommerce-account #customer_login .u-column1,
	body.woocommerce-account #customer_login .u-column2 {
		padding: 24px 22px 22px;
	}
	body.woocommerce-account .woocommerce-MyAccount-content {
		padding: 22px 18px;
	}
	body.woocommerce-account .woocommerce-orders-table th,
	body.woocommerce-account .woocommerce-orders-table td {
		padding: 12px 10px !important;
		font-size: 13px !important;
	}
	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details {
		padding: 22px 18px !important;
	}
	body.error404 .page-content { padding: 40px 22px 36px; }
}

/* =============================================================================
 * MOBILE RESPONSIVENESS — final pass, defensive overrides for product page
 * Prevents any horizontal overflow, ensures buybox + slider stay within frame.
 * ========================================================================== */

/* Lock horizontal overflow on key product page wrappers */
body.single-product .smm-product-wrap,
body.single-product .smm-product-stack,
body.single-product .smm-product-buybox,
body.single-product .smm-product-content,
body.single-product .smm-product-anchors,
body.single-product .smm-product-slider,
body.single-product .smm-pricebox,
body.single-product .smm-pricebox__main,
body.single-product .smm-pricebox__price-row {
	max-width: 100%;
	box-sizing: border-box;
}

/* Tablet & smaller — ensure pricebox + presets fit gracefully */
@media (max-width: 760px) {
	body.single-product .smm-product-stack {
		gap: 16px;
		padding: 0 16px;
	}
	body.single-product .smm-pricebox {
		padding: 22px 16px 18px;
	}
	body.single-product .smm-pricebox__main {
		gap: 8px;
	}
	body.single-product .smm-pricebox__qty-input {
		font-size: clamp(44px, 11vw, 60px) !important;
		min-width: 60px;
		max-width: 100%;
	}
	body.single-product .smm-pricebox__unit-name {
		font-size: clamp(18px, 4.5vw, 22px);
	}
	body.single-product .smm-pricebox__price { font-size: 14px; }
	body.single-product .smm-pricebox__per-unit { font-size: 11px; }
	body.single-product .smm-pricebox__footnote { font-size: 10px; }

	body.single-product .smm-presets-buttons {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
	}
	body.single-product .smm-preset-btn {
		font-size: 12px;
		padding: 10px 4px;
	}
	body.single-product .smm-qty-range::-webkit-slider-thumb {
		width: 28px; height: 28px;
	}

	/* Buy box card — slimmer on mobile */
	body.single-product div.product .summary {
		padding: 22px 18px 24px !important;
		border-radius: 18px !important;
	}

	/* Anchor nav — fits viewport */
	body.single-product .smm-product-anchors {
		padding: 4px;
		max-width: none !important;
		width: 100%;
	}
	body.single-product .smm-product-anchors a {
		padding: 8px 10px;
		font-size: 12px;
		gap: 3px;
	}
}

@media (max-width: 480px) {
	body.single-product .smm-product-stack {
		padding: 0 10px;
	}
	body.single-product .smm-pricebox__qty-input {
		font-size: clamp(38px, 13vw, 52px) !important;
	}
	body.single-product .smm-pricebox__unit-name { font-size: 18px; }
	body.single-product .smm-presets-buttons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	body.single-product .smm-preset-btn { font-size: 13px; padding: 11px 6px; }

	/* Hero icon smaller */
	body.single-product .smm-product-hero__icon-wrap { width: 56px !important; height: 56px !important; }
	body.single-product .smm-product-hero__icon { font-size: 30px !important; }
	body.single-product .smm-product-hero__title { font-size: clamp(18px, 5.5vw, 24px) !important; }
}

/* Defense: stop any element on the product page from overflowing horizontally */
body.single-product .smm-product-stack,
body.single-product .smm-product-stack * {
	min-width: 0;
}

/* Auto Likes/Views — back/forward posts in a 2-col grid */
.smm-auto-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-top: 6px;
}
.smm-auto-grid .smm-slider-input { margin-top: 0; }
.smm-auto-grid input[type="number"] {
	width: 100% !important;
	text-align: center;
	font-size: 18px !important;
	font-weight: 800;
	color: var(--smm-primary) !important;
}
.smm-slider-input__hint {
	display: block;
	margin-top: 6px;
	font-size: 10px;
	font-weight: 600;
	color: #9ca3af;
	letter-spacing: .02em;
	line-height: 1.4;
}
@media (max-width: 540px) {
	.smm-auto-grid { grid-template-columns: 1fr; gap: 10px; }
}

/* =============================================================================
 * BLOG — premium article layout + blog index
 * ========================================================================== */

/* Blog list / archive — full-width container, card grid (1/2/3 cols) */
body.blog .site-main,
body.archive.category .site-main,
body.archive.tag .site-main,
body.archive.author .site-main,
body.search-results .site-main {
	max-width: 1440px !important;
	margin: 24px auto 60px !important;
	padding: 0 32px !important;
	box-sizing: border-box;
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 22px;
}
body.blog .site-main > .smm-blog-intro,
body.blog .site-main > .page-header,
body.blog .site-main > nav,
body.archive .site-main > .page-header,
body.archive .site-main > nav,
body.blog .site-main > header,
body.archive .site-main > header { grid-column: 1 / -1; }

body.blog .entry-title,
body.archive .entry-title { display: block; }

body.blog .site-main > article,
body.archive.category .site-main > article,
body.archive.tag .site-main > article {
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 20px;
	padding: 28px 30px 26px;
	margin: 0;
	box-shadow: 0 12px 28px -12px rgba(15,23,42,.10);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
body.blog .site-main > article::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 4px;
	background: linear-gradient(90deg, #fbbf24, #ec4899, #a855f7);
}
body.blog .site-main > article:hover {
	transform: translateY(-4px);
	border-color: rgba(168,85,247,.40);
	box-shadow: 0 24px 44px -16px rgba(109,40,217,.22);
}
body.blog .site-main > article .entry-header { margin-bottom: 6px; }
body.blog .entry-title a,
body.archive .entry-title a {
	color: var(--smm-dark) !important;
	font-weight: 800;
	font-size: clamp(18px, 1.8vw, 22px);
	line-height: 1.3;
	letter-spacing: -.01em;
	text-decoration: none !important;
	display: block;
}
body.blog .entry-title a:hover,
body.archive .entry-title a:hover {
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}
body.blog .entry-meta,
body.archive .entry-meta {
	font-size: 11px;
	color: #9ca3af;
	margin: 6px 0 10px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}
body.blog .entry-summary,
body.archive .entry-summary {
	color: #4b5563;
	font-size: 14px;
	line-height: 1.65;
	flex: 1 1 auto;
}
body.blog .entry-summary p { margin: 0 0 12px; }

/* Tablet: 2 cols. Desktop ≥1100: 3 cols */
@media (min-width: 769px) and (max-width: 1099px) {
	body.blog .site-main,
	body.archive.category .site-main,
	body.archive.tag .site-main,
	body.archive.author .site-main,
	body.search-results .site-main { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 1100px) {
	body.blog .site-main,
	body.archive.category .site-main,
	body.archive.tag .site-main,
	body.archive.author .site-main,
	body.search-results .site-main { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 640px) {
	body.blog .site-main,
	body.archive.category .site-main,
	body.archive.tag .site-main,
	body.archive.author .site-main,
	body.search-results .site-main { padding: 0 16px !important; gap: 14px; }
	body.blog .site-main > article { padding: 22px 20px 20px; border-radius: 16px; }
}

/* Single article (post) — full layout reset + centered reading column */
body.single-post .site-content,
body.blog .site-content,
body.archive .site-content,
body.search-results .site-content,
body.error404 .site-content {
	display: block !important;
}
body.single-post .content-area,
body.blog .content-area,
body.archive .content-area,
body.search-results .content-area,
body.error404 .content-area {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}
body.single-post .inside-article,
body.single-post article.post,
body.blog .inside-article,
body.archive .inside-article {
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	max-width: none !important;
	width: 100% !important;
}
body.single-post .site-main {
	max-width: 1200px !important;
	margin: 24px auto 60px !important;
	padding: 0 32px !important;
	width: auto !important;
}
body.single-post .entry-header,
body.single-post .smm-article {
	max-width: 940px;
	margin-left: auto !important;
	margin-right: auto !important;
}
body.single-post .entry-header { margin-bottom: 12px; }
@media (max-width: 640px) {
	body.single-post .site-main { padding: 0 16px !important; }
}

/* Comments — completely hidden on posts (visual fallback if PHP didn't run) */
body.single-post .comments-area,
body.single-post #comments,
body.single-post #respond,
body.single-post .comment-respond,
body.blog .comments-link { display: none !important; }
body.single-post .entry-title {
	font-size: clamp(28px, 4.4vw, 44px) !important;
	font-weight: 900 !important;
	color: var(--smm-dark) !important;
	margin: 0 0 12px !important;
	letter-spacing: -.02em;
	line-height: 1.2;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent !important;
}
body.single-post .entry-meta {
	font-size: 13px;
	color: #6b7280;
	margin: 0 0 24px;
}

.smm-article {
	background: #fff;
	border: 1px solid #ece5f6;
	border-radius: 22px;
	padding: 36px 36px 32px;
	box-shadow: 0 14px 32px -16px rgba(15,23,42,.10);
	font-size: 16px;
	line-height: 1.75;
	color: #374151;
}
.smm-article h2 {
	font-size: clamp(22px, 2.6vw, 28px);
	font-weight: 900;
	color: var(--smm-dark);
	margin: 28px 0 12px;
	letter-spacing: -.01em;
}
.smm-article h2::before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 22px;
	background: linear-gradient(180deg, #fbbf24, #ec4899);
	border-radius: 999px;
	vertical-align: -3px;
	margin-inline-end: 10px;
}
.smm-article h3 {
	font-size: 18px;
	font-weight: 800;
	color: var(--smm-dark);
	margin: 18px 0 8px;
}
.smm-article p { margin: 0 0 14px; }
.smm-article ul, .smm-article ol {
	margin: 0 0 16px;
	padding-inline-start: 24px;
}
.smm-article li { margin-bottom: 6px; }
.smm-article a {
	color: var(--smm-primary);
	font-weight: 700;
	text-decoration: underline;
}
.smm-article a:hover { color: var(--smm-secondary); }
.smm-article strong { color: var(--smm-dark); font-weight: 800; }
.smm-article-lead {
	font-size: 18px !important;
	font-weight: 600 !important;
	color: #4b5563 !important;
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 100%);
	border-right: 4px solid var(--smm-primary);
	padding: 18px 22px !important;
	border-radius: 0 16px 16px 0;
	margin: 0 0 28px !important;
	line-height: 1.6 !important;
}
.smm-article table {
	width: 100% !important;
	border-collapse: collapse;
	margin: 16px 0;
	background: #fff;
	border: 1px solid #ece5f6 !important;
	border-radius: 12px;
	overflow: hidden;
}
.smm-article table th { background: #faf7ff; font-weight: 800; color: var(--smm-dark); padding: 12px !important; text-align: right; }
.smm-article table td { padding: 12px !important; border-top: 1px solid #ece5f6 !important; }

.smm-article-cta {
	margin: 32px 0 0;
	padding: 28px 28px;
	background: var(--smm-hero-bg, radial-gradient(125% 125% at 50% 10%, #1e0a45 0%, #0f0823 45%, #050214 100%));
	border-radius: 18px;
	text-align: center;
	color: #fff;
}
.smm-article-cta h3 {
	font-size: 22px;
	font-weight: 900;
	color: #fff !important;
	margin: 0 0 8px !important;
	letter-spacing: -.01em;
}
.smm-article-cta p {
	color: rgba(255,255,255,.75) !important;
	margin: 0 0 18px !important;
	font-size: 14px;
}
.smm-article-cta a.smm-btn--primary {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 14px 28px;
	background: linear-gradient(135deg, #fbbf24 0%, #ec4899 50%, #a855f7 100%);
	background-size: 200% 100%;
	color: #fff !important;
	border-radius: 999px;
	font-weight: 900;
	font-size: 15px;
	text-decoration: none !important;
	box-shadow: 0 14px 30px -10px rgba(236,72,153,.55);
	animation: smm-btn-shimmer 4s ease-in-out infinite;
}
.smm-article-cta a.smm-btn--primary:hover { transform: translateY(-2px); }
.smm-article-cta__links {
	list-style: none;
	margin: 0 auto 18px !important;
	padding: 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	max-width: 560px;
}
.smm-article-cta__links li { margin: 0 !important; }
.smm-article-cta__links a {
	display: inline-block;
	padding: 8px 14px;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 999px;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	transition: background .15s ease, border-color .15s ease;
}
.smm-article-cta__links a:hover {
	background: rgba(255,255,255,.16);
	border-color: rgba(255,255,255,.28);
}
.smm-article-cta__action { margin: 4px 0 0 !important; }

@media (max-width: 640px) {
	.smm-article { padding: 22px 18px 20px; border-radius: 16px; }
	.smm-article-lead { padding: 14px 16px !important; font-size: 16px !important; }
	.smm-article-cta { padding: 22px 18px; }
}

.smm-blog-intro {
	background: linear-gradient(135deg, #fef9c3 0%, #fce7f3 50%, #ede9fe 100%);
	border: 1px solid rgba(168,85,247,.18);
	border-radius: 22px;
	padding: 36px 32px;
	margin: 0 0 28px;
	text-align: center;
}
.smm-blog-intro h1 {
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 900;
	color: var(--smm-dark);
	margin: 0 0 8px;
	letter-spacing: -.02em;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.smm-blog-intro p { color: #6b7280; font-size: 16px; margin: 0; }

/* -----------------------------------------------------------------------------
 * Home-page product cards (.smm-home-card) — sales-focused, no slider.
 * Sliders make sense on category pages where the user is in shopping mode;
 * on the home grid they're visual noise. This is the cleaner alternative.
 * -------------------------------------------------------------------------- */
.smm-home-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	max-width: 1200px;
	margin: 24px auto 0;
	padding: 0 24px;
}
.smm-section .smm-home-grid { padding: 0; }
.smm-section--bestsellers,
.smm-section--bundles { padding-bottom: 80px; }
.smm-section--bestsellers > .smm-home-grid,
.smm-section--bundles > .smm-home-grid {
	max-width: 1200px;
	padding: 0 24px;
}

.smm-home-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 8px 24px -12px rgba(15,8,35,.18), 0 2px 6px -2px rgba(15,8,35,.06);
	border: 1px solid rgba(168,85,247,.10);
	text-decoration: none !important;
	color: inherit !important;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
	position: relative;
	isolation: isolate;
}
.smm-home-card:hover,
.smm-home-card:focus-visible {
	transform: translateY(-4px);
	box-shadow: 0 24px 48px -16px rgba(108,42,213,.30), 0 4px 12px -2px rgba(15,8,35,.08);
	border-color: rgba(168,85,247,.28);
	text-decoration: none !important;
}
.smm-home-card:focus-visible { outline: 3px solid #6d28d9; outline-offset: 2px; }

.smm-home-card__visual {
	position: relative;
	aspect-ratio: 16 / 9;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.smm-home-card__visual::before {
	content: "";
	position: absolute; inset: 0;
	background: radial-gradient(120% 80% at 50% 0%, rgba(255,255,255,.18) 0%, transparent 60%);
	pointer-events: none;
}
.smm-home-card__icon {
	font-size: 56px;
	line-height: 1;
	filter: drop-shadow(0 6px 14px rgba(0,0,0,.30));
	z-index: 1;
}
.smm-home-card__badges {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 6px;
	z-index: 2;
}
.smm-home-card__badge {
	display: inline-block;
	background: rgba(255,255,255,.96);
	color: #1f0a45;
	font-size: 11px;
	font-weight: 800;
	padding: 5px 10px;
	border-radius: 999px;
	letter-spacing: -.01em;
	box-shadow: 0 4px 10px -3px rgba(0,0,0,.18);
	white-space: nowrap;
}

.smm-home-card__body {
	padding: 18px 20px 20px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}
.smm-home-card__title {
	font-size: 17px;
	font-weight: 900;
	line-height: 1.3;
	color: #1a0e3a;
	margin: 0 !important;
	letter-spacing: -.01em;
	min-height: 44px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.smm-home-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	margin: 0 !important;
	line-height: 1.2;
}
.smm-home-card__meta > span:not([aria-hidden]) {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	white-space: nowrap;
}

.smm-home-card__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px;
	padding: 12px 14px;
	background: linear-gradient(135deg, #faf5ff 0%, #fdf2f8 100%);
	border-radius: 12px;
	border: 1px solid rgba(168,85,247,.14);
	margin-top: auto;
}
.smm-home-card__price-from {
	font-size: 12px;
	font-weight: 700;
	color: #6b7280;
	letter-spacing: -.005em;
}
.smm-home-card__price-amt {
	font-size: 28px;
	font-weight: 900;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	letter-spacing: -.02em;
	line-height: 1;
}
.smm-home-card__price-unit {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	margin-inline-start: auto;
	white-space: nowrap;
}

.smm-home-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 18px;
	background: linear-gradient(135deg, #6d28d9 0%, #ec4899 100%);
	color: #fff !important;
	border-radius: 999px;
	font-weight: 800;
	font-size: 14px;
	letter-spacing: -.005em;
	box-shadow: 0 8px 18px -6px rgba(108,42,213,.45);
	transition: box-shadow .15s ease;
}
.smm-home-card:hover .smm-home-card__cta {
	box-shadow: 0 12px 24px -6px rgba(236,72,153,.50);
}
.smm-home-card__cta-arrow {
	font-size: 16px;
	font-weight: 900;
	transition: transform .15s ease;
}
.smm-home-card:hover .smm-home-card__cta-arrow {
	transform: translateX(-3px);
}

/* Bundle variant — slightly bolder framing since prices are bigger */
.smm-home-card--bundle .smm-home-card__price {
	background: linear-gradient(135deg, #fef3c7 0%, #fce7f3 50%, #ede9fe 100%);
	border-color: rgba(251,191,36,.30);
}
.smm-home-card--bundle .smm-home-card__price-amt {
	background: linear-gradient(135deg, #f59e0b 0%, #ec4899 50%, #6d28d9 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

/* Responsive — tablet 2 cols, phone 1 col */
@media (max-width: 1024px) {
	.smm-home-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
}
@media (max-width: 560px) {
	.smm-home-grid { grid-template-columns: 1fr; gap: 16px; padding: 0 12px; }
	.smm-home-card__icon { font-size: 48px; }
	.smm-home-card__title { font-size: 16px; min-height: 0; }
	.smm-home-card__price-amt { font-size: 26px; }
}

/* -----------------------------------------------------------------------------
 * Heading/subtitle alignment harmonization.
 * Rule: if a heading is followed by a centered subtitle, the heading is
 * centered too. This patches RTL contexts where parent rules leak through.
 * Uses strong selectors + !important to outrank cascading parent-theme rules.
 * -------------------------------------------------------------------------- */

/* Section title + subtitle pair — centered together, sitewide */
.smm-section > h1,
.smm-section > h2,
.smm-section > h3,
.smm-section > .smm-section-title,
.smm-section > .smm-section-subtitle,
.smm-section > p:not(.smm-section-subtitle):not(.smm-loop-desc):not(.smm-loop-social):not(.smm-loop-price-row) {
	text-align: center !important;
}

/* Live activity — header is flex-centered already, harden it */
.smm-section--live .smm-live__header { justify-content: center !important; }
.smm-section--live h2 { text-align: center !important; }

/* Guarantee head + final CTA + hero — already centered, lock it in */
.smm-guarantee__head,
.smm-guarantee__head h2,
.smm-guarantee__head p { text-align: center !important; }
.smm-final-cta,
.smm-final-cta h2,
.smm-final-cta p,
.smm-final-cta__sub { text-align: center !important; }
.smm-hero__inner,
.smm-hero__title,
.smm-hero__lead { text-align: center !important; }
.smm-hero__brands,
.smm-hero__cta,
.smm-hero__rating,
.smm-hero__brands-list { justify-content: center !important; }
.smm-trust-bar { text-align: center !important; }

/* Archive (category) sections — match the same convention */
.smm-archive-related header,
.smm-archive-related header h2,
.smm-archive-related header .smm-archive-related__sub,
.smm-archive-faq-section header,
.smm-archive-faq-section header h2,
.smm-archive-faq-section header .smm-archive-faq__sub,
.smm-archive-finalcta,
.smm-archive-finalcta h2,
.smm-archive-finalcta p { text-align: center !important; }

/* Single-product sections — same convention */
.smm-product-section,
.smm-product-section > h2,
.smm-product-section > .smm-section-subtitle,
.smm-product-finalcta,
.smm-product-finalcta h2,
.smm-product-finalcta p { text-align: center !important; }

/* FBT (frequently-bought-together) header */
.smm-fbt__head,
.smm-fbt__head h2 { text-align: center !important; }

/* KPIs row — keep centered */
.smm-kpis,
.smm-kpis__inner { text-align: center !important; }

/* Steps + Features grids — section heading above is centered, grid items
 * keep their own internal alignment (icons centered, text left in card) */
