/*
 Theme Name:   GymSuplementi
 Theme URI:    https://gymsuplementi.com
 Description:  Standalone tema – premium suplementi, WooCommerce, sve stranice uključene
 Author:       GymSuplementi
 Version:      1.0.0
 Text Domain:  gymsuplementi
 Requires at least: 5.0
 Tested up to: 6.4
 Requires PHP: 7.4
 License:      GPL v2 or later
*/

/* Font i osnova kao na preview-u – layout prati širinu prozora */
html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}
body {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
	color: #111;
	background: #fff;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}
/* WordPress wrapperi ne smeju da ograniče širinu – layout prati prozor */
#page,
.wp-site-blocks,
.site,
body .site-header,
body .main-nav {
	max-width: none !important;
}
/* Sekcije puna širina – prate prozor */
.topbar,
.site-header,
.main-nav,
#main-content,
.hero-slider,
.site-footer {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box;
}
body.page-template-front-page,
body.home,
body.page {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-to-content {
	position: absolute;
	top: -100%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100000;
	padding: 14px 28px;
	background: #111;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	border-radius: 0 0 8px 8px;
	transition: top 0.2s;
}

.skip-to-content:focus {
	top: 0;
}


/* Širi kontejner – bolje iskorišćen prostor sa obe strane */
.container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 24px;
	box-sizing: border-box;
}

/* ===== TOP BAR ===== */
.topbar {
	background: #111 !important;
	color: rgba(255,255,255,0.8);
	font-size: 11.5px;
	padding: 8px 20px;
	letter-spacing: 0.03em;
	width: 100%;
}
.topbar-inner {
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.topbar-left {
	display: flex;
	align-items: center;
	gap: 7px;
	font-weight: 500;
}
.topbar-left svg { opacity: 0.7; flex-shrink: 0; }
.topbar-right {
	display: flex;
	align-items: center;
	gap: 0;
	color: rgba(255,255,255,0.6);
	font-size: 11px;
}
.topbar-sep { margin: 0 8px; opacity: 0.4; }
#wpadminbar { background: #000 !important; }

/* ===== HEADER ===== */
.site-header {
	background: #fff !important;
	border-bottom: 1px solid #f0f0f0;
	width: 100%;
	position: sticky;
	top: 0;
	z-index: 600;
	box-shadow: 0 2px 12px rgba(0,0,0,0.07);
	transition: box-shadow 0.2s;
}
.site-header.scrolled {
	box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}

/* =============================================
   HEADER LAYOUT — OGISTRA STYLE
   Logo left | Search center (dominant) | Icons right
   ============================================= */
.header-inner {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 40px;
	padding: 14px 32px;
	max-width: 1440px;
}

/* LOGO — LARGE, prominent, far-left like OGISTRA */
.logo {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
}
.logo img {
	height: 72px;
	width: auto;
	display: block;
}

/* SEARCH — fills ALL space between logo and icons */
.header-search {
	flex: 1 1 auto;
	min-width: 0;
	position: relative;
}
.header-search form,
.header-search form * { box-sizing: border-box; }
.header-search form { width: 100%; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.header-search-wrap {
	display: flex;
	align-items: center;
	height: 44px;
	background: #fff;
	border-radius: 999px;
	overflow: visible;
	border: 1.5px solid #ddd;
	transition: border-color 0.2s, box-shadow 0.2s;
	position: relative;
}
.header-search-wrap:focus-within {
	border-color: #ccc;
	box-shadow: 0 0 0 3px rgba(232, 86, 10, 0.08);
}
.header-search-wrap input[type='search'],
.header-search-wrap input[type='search']:focus,
.header-search-wrap input[type='search']:active {
	-webkit-appearance: none;
	appearance: none;
	flex: 1;
	height: 42px;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 0 20px;
	font-size: 14px;
	color: #333;
	min-width: 0;
}
.header-search-wrap input[type='search']::placeholder { color: #aaa; }

/* Search button — OGISTRA orange circle inside pill */
.header-search-btn,
.header-search-btn:focus,
.header-search-btn:active {
	-webkit-appearance: none;
	appearance: none;
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	background: #E8560A;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	margin: 0 3px 0 0;
	border-radius: 50%;
	transition: background 0.2s, transform 0.15s;
}
.header-search-btn:hover {
	background: #d14a08;
	transform: scale(1.05);
}
.header-search-btn svg { width: 17px; height: 17px; display: block; pointer-events: none; }

/* ICONS — compact row, far-right like OGISTRA */
.header-icons {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
}

.icon-link {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #333;
	text-decoration: none;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	transition: background 0.15s, color 0.15s;
	position: relative;
}
.icon-link:hover {
	background: #f5f5f5;
	color: #E8560A;
}

.icon-wrap {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.icon-wrap svg {
	width: 22px;
	height: 22px;
}

/* Hide text labels on desktop — icon-only like OGISTRA */
.icon-label {
	display: none;
}

.cart-icon { position: relative; }

.cart-count,
.wishlist-count {
	position: absolute;
	top: -4px;
	right: -6px;
	min-width: 16px;
	height: 16px;
	border-radius: 999px;
	background: #E8560A;
	color: #fff;
	font-size: 9px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 3px;
	border: 2px solid #fff;
	line-height: 1;
}

/* ===== NAVIGATION ===== */
.main-nav {
	background: #111 !important;
	position: relative;
	z-index: 500;
	margin-bottom: 0;
	border-top: none;
	border-bottom: none;
	box-shadow: 0 2px 12px rgba(0,0,0,0.18);
}

/* Bez bele crte / separatora između stavki menija (desktop) */
.main-nav .nav-list > li {
	border: none !important;
}
.main-nav .nav-list > li::before,
.main-nav .nav-list > li::after {
	display: none !important;
	content: none !important;
}

h1.sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0,0,0,0) !important;
}

.nav-container {
	position: static;
}

.nav-list {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap; /* jedan red na velikom desktopu */
	gap: 0;
}

/* Na ekranima manjim od 1400px dozvoli prelom u drugi red */
@media (max-width: 1399px) {
	.nav-list {
		flex-wrap: wrap;
		row-gap: 0;
	}
}

.nav-list li a {
	display: flex;
	align-items: center;
	gap: 0;
	padding: 12px 11px;
	color: rgba(255,255,255,0.85);
	font-size: 11.5px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	white-space: nowrap;
	transition: color 0.15s, background 0.15s;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	border: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	position: relative;
}

.nav-list > li > a::after {
	content: '';
	position: absolute;
	bottom: 0; left: 50%; right: 50%;
	height: 2px;
	background: #E8560A;
	transition: left 0.2s, right 0.2s;
}

.nav-list > li:hover > a::after,
.nav-list > li.mega-open > a::after {
	left: 12px; right: 12px;
}

.nav-list li a:hover {
	color: #fff;
	background: transparent;
}

.nav-sale-item a {
	color: #ff6b35 !important;
	font-weight: 800 !important;
}

.nav-sale-item a:hover {
	background: rgba(255, 107, 53, 0.12) !important;
	color: #fff !important;
}

/* Hamburger button – na desktopu sakriven, na mobilnom prikazan u MQ */
.hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 32px;
	height: 32px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	z-index: 310;
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

.hamburger:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

.hamburger span {
	display: block;
	width: 100%;
	height: 2px;
	background: #fff;
	border-radius: 2px;
	transition: transform 0.3s, opacity 0.3s;
}

.hamburger.active span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
	opacity: 0;
}

.hamburger.active span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.nav-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.nav-overlay.open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* Kada meni NIJE otvoren, overlay mora biti ispod sadržaja da ne blokira klikove */
@media (max-width: 992px) {
	.nav-overlay:not(.open) {
		z-index: -1 !important;
		pointer-events: none !important;
		visibility: hidden !important;
	}
}

/* Na desktopu drawer je samo kontejner, nav-list ostaje u traci; zaglavlje sakriveno */
.mobile-drawer {
	display: contents;
}

.mobile-drawer-header {
	display: none;
}

body.nav-open {
	overflow: hidden;
}

/* Kad je mobilni meni otvoren, overlay i drawer moraju biti IZNAD headera i topbara */
body.nav-open .topbar,
body.nav-open .site-header {
	z-index: 1000 !important;
}

/* Cookie consent mora biti ISPOD drawer-a kada je meni otvoren */
body.nav-open .cookie-consent,
body.nav-open #cookieConsent {
	z-index: 1 !important;
	pointer-events: none !important;
}

body.nav-open .nav-overlay {
	z-index: 100001 !important;
}

body.nav-open .main-nav {
	z-index: 100002 !important;
}

body.nav-open .main-nav .mobile-drawer {
	z-index: 100002 !important;
}

/* ===== HERO SLIDER ===== (skrol stranice prolazi – ne hvata touch/wheel) */
.hero-slider,
.hero-slider *,
.hero-slider .slider-track,
.hero-slider .slide,
.hero-slider .slide-link,
.hero-slider .slide-bg,
.hero-slider img {
	touch-action: pan-y !important;
	-ms-touch-action: pan-y !important;
}
/* ===== JEDINI H1 — SEO optimizovan ===== */
/* Desktop: vizualno skriven ali čitljiv za Google (nije display:none) */
.gs-seo-h1 {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	margin: 0;
}
.gs-seo-sub {
	display: block;
}
/* Mobilni: vidljiv ispod hero slike, pre trust bedževa */
@media (max-width: 767px) {
	.gs-seo-h1 {
		position: static;
		width: auto;
		height: auto;
		overflow: visible;
		clip: auto;
		white-space: normal;
		background: #111;
		color: #fff;
		font-size: 1.25rem;
		font-weight: 800;
		text-transform: uppercase;
		line-height: 1.2;
		margin: 0;
		padding: 18px 20px 14px;
	}
	.gs-seo-sub {
		font-size: 0.8rem;
		font-weight: 400;
		color: rgba(255,255,255,0.55);
		text-transform: none;
		margin-top: 6px;
	}
}

/* Početna — SEO uvod ispod hero-a (ne konkurira slideru) */
.gs-home-seo-strip {
	background: linear-gradient(180deg, #fafafa 0%, #fff 100%);
	border-bottom: 1px solid #f0f0f0;
	padding: 18px 0 20px;
	text-align: center;
}
.gs-home-seo-text {
	margin: 0 auto;
	max-width: 52rem;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: #6b7280;
	font-weight: 500;
	letter-spacing: 0.01em;
}
@media (max-width: 600px) {
	.gs-home-seo-strip { padding: 14px 0 16px; }
	.gs-home-seo-text { font-size: 0.875rem; line-height: 1.6; padding: 0 4px; }
}

/* Mobile static hero */
.hero-mobile-static {
	display: none;
	position: relative;
	overflow: clip;
	background: #111;
}
.hero-mobile-static img {
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center 30%;
	display: block;
	pointer-events: none;
	touch-action: pan-y !important;
	-webkit-user-drag: none;
	user-select: none;
}
.hero-mobile-cta {
	position: absolute !important;
	bottom: 20px !important;
	right: 16px !important;
	left: auto !important;
	transform: none !important;
	font-size: 12px !important;
	padding: 10px 18px !important;
	pointer-events: auto !important;
}
@media (max-width: 767px) {
	.hero-mobile-static {
		display: block;
		touch-action: pan-y !important;
	}
	.hero-desktop-slider {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		min-height: 0 !important;
		max-height: 0 !important;
		overflow: clip !important;
		position: absolute !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}
}

.hero-slider {
	position: relative;
	overflow: clip;
	background: #000;
	touch-action: pan-y !important;
}

.slider-track {
	position: relative;
	width: 100%;
	aspect-ratio: 2.4 / 1;
	overflow: clip;
	background: #000;
}

.slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.6s ease;
	overflow: clip;
}

.slide.active {
	opacity: 1;
	z-index: 1;
}

.slide-link {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: clip;
	cursor: default;
	touch-action: pan-y !important;
}
.slide-cta-brutal { pointer-events: auto !important; }

.slide-bg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
	-webkit-user-drag: none;
	user-select: none;
	touch-action: pan-y !important;
	pointer-events: none;
}

/* <picture> u slajdu – isto ponašanje kao običan <img> */
.hero-slider .slide-link picture,
#main-content .slide-link picture {
	display: block;
	width: 100%;
	height: 100%;
}

.hero-slider .slide-link picture .slide-bg,
#main-content .slide-link picture .slide-bg {
	height: 100%;
}

/* Ozbiljno CTA na slajdu (npr. proteini) – bez pulse/shimmer */
.slide-cta-brutal.slide-cta--serious {
	animation: none;
	background: #0a0a0a;
	border: 1px solid rgba(255, 255, 255, 0.22);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
	font-weight: 700;
	letter-spacing: 0.14em;
	font-size: 12px;
	padding: 14px 28px;
}

.slide-cta-brutal.slide-cta--serious .cta-brutal-bg {
	display: none;
}

.slide-cta-brutal.slide-cta--serious .cta-brutal-text {
	text-shadow: none;
}

.slide-cta-brutal.slide-cta--serious .cta-brutal-arrow {
	background: rgba(255, 255, 255, 0.08);
	animation: none;
	width: 32px;
	height: 32px;
}

.slide-cta-brutal.slide-cta--serious:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 255, 255, 0.4);
	background: #141414;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
	animation: none;
}

@keyframes brutalPulse {
	0%, 100% { box-shadow: 0 0 20px rgba(255, 102, 0, 0.5), 0 0 40px rgba(255, 102, 0, 0.2), inset 0 0 0 0 transparent; }
	50% { box-shadow: 0 0 30px rgba(255, 102, 0, 0.8), 0 0 60px rgba(255, 102, 0, 0.35), inset 0 0 0 0 transparent; }
}

@keyframes brutalShimmer {
	0% { transform: translateX(-100%) skewX(-15deg); }
	100% { transform: translateX(300%) skewX(-15deg); }
}

@keyframes brutalArrowBounce {
	0%, 100% { transform: translateX(0); }
	50% { transform: translateX(6px); }
}

a.slide-cta-brutal,
.slide-cta-brutal {
	position: absolute;
	bottom: 48px;
	right: 48px;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 18px 38px;
	background: linear-gradient(135deg, #ff6600 0%, #ff8c00 40%, #ff4500 100%);
	color: #fff;
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	border-radius: 8px;
	border: 2px solid rgba(255, 255, 255, 0.25);
	cursor: pointer;
	overflow: hidden;
	z-index: 2;
	text-decoration: none;
	touch-action: manipulation;
	transition: transform 0.3s cubic-bezier(.34,1.56,.64,1), border-color 0.3s;
	animation: brutalPulse 2.5s ease-in-out infinite;
}

.cta-brutal-bg {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
	width: 40%;
	animation: brutalShimmer 3s ease-in-out infinite;
	pointer-events: none;
}

.cta-brutal-text {
	position: relative;
	z-index: 1;
	text-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

.cta-brutal-arrow {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background: rgba(0, 0, 0, 0.2);
	border-radius: 50%;
	flex-shrink: 0;
	animation: brutalArrowBounce 1.5s ease-in-out infinite;
}

a.slide-cta-brutal:hover,
.slide-cta-brutal:hover {
	transform: scale(1.07) translateY(-3px);
	border-color: rgba(255, 255, 255, 0.6);
	animation: none;
	box-shadow: 0 0 40px rgba(255, 102, 0, 0.9), 0 0 80px rgba(255, 102, 0, 0.4), 0 8px 32px rgba(0,0,0,0.3);
	color: #fff;
}

a.slide-cta-brutal:hover .cta-brutal-arrow,
.slide-cta-brutal:hover .cta-brutal-arrow {
	animation: none;
	transform: translateX(4px);
	background: rgba(0, 0, 0, 0.35);
}

a.slide-cta-brutal:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

@media (max-width: 600px) {
	a.slide-cta-brutal,
	.slide-cta-brutal {
		bottom: 22px;
		right: 16px;
		padding: 13px 22px;
		font-size: 12px;
		gap: 10px;
		letter-spacing: 0.05em;
	}
	.cta-brutal-arrow {
		width: 28px;
		height: 28px;
	}
	.cta-brutal-arrow svg {
		width: 16px;
		height: 16px;
	}
}

.btn-primary {
	display: inline-block;
	background: #fff;
	color: #111;
	padding: 14px 32px;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border: none;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.btn-primary:hover {
	background: #111;
	color: #fff;
	outline: 2px solid #fff;
}

.slider-dots {
	position: absolute;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
	display: flex;
	gap: 10px;
}

.dot {
	width: 12px;
	height: 12px;
	border-radius: 999px;
	border: 2px solid #fff;
	background: transparent;
	cursor: pointer;
	transition: background 0.15s;
}

.dot.active {
	background: #fff;
}

.slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	background: rgba(0, 0, 0, 0.5);
	color: #fff;
	border: none;
	width: 44px;
	height: 44px;
	font-size: 24px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
}

.slider-arrow:hover {
	background: rgba(0, 0, 0, 0.8);
}

.slider-prev {
	left: 16px;
}

.slider-next {
	right: 16px;
}

/* ===== PRODUCT SHOWCASE GRID ===== */
.gs-showcase-grid-section {
	background: #fff;
	padding: 0;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
}
.gs-showcase-grid-wrap {
	display: grid;
	grid-template-columns: 340px 1fr;
	min-height: 360px;
	max-width: 1400px;
	margin: 0 auto;
}
.gs-sgrid-left {
	background: linear-gradient(160deg, #111 0%, #1c1c1c 100%);
	padding: 48px 44px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	overflow: hidden;
}
.gs-sgrid-left::after {
	content: '';
	position: absolute;
	bottom: -60px;
	left: -60px;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	border: 1px solid rgba(232,86,10,0.2);
	pointer-events: none;
}
.gs-sgrid-eyebrow {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: #E8560A;
	margin-bottom: 12px;
}
.gs-sgrid-title {
	font-family: 'Oswald', 'Arial Black', sans-serif;
	font-size: 44px;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
	line-height: 0.95;
	margin-bottom: 16px;
}
.gs-sgrid-hl { color: #E8560A; }
.gs-sgrid-desc {
	font-size: 13px;
	color: rgba(255,255,255,0.5);
	line-height: 1.6;
	flex: 1;
	margin-bottom: 28px;
}
.gs-sgrid-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #E8560A;
	border: 2px solid #E8560A;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 14px 28px;
	border-radius: 4px;
	text-decoration: none;
	width: fit-content;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.gs-sgrid-btn:hover {
	background: transparent;
	border-color: #E8560A;
	color: #E8560A;
	text-decoration: none;
}
.gs-sgrid-right {
	padding: 32px 36px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
	align-content: start;
	background: #fafafa;
}

/* Product cards */
.gs-prod-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 18px 12px 14px;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #f0f0f0;
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
	cursor: pointer;
	position: relative;
	text-decoration: none;
	overflow: hidden;
}
.gs-prod-card:hover {
	border-color: rgba(232,86,10,0.35);
	box-shadow: 0 8px 28px rgba(232,86,10,0.1);
	transform: translateY(-4px);
	text-decoration: none;
}
.gs-prod-card .gs-prod-img-wrap {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px 4px 0;
}
.gs-prod-card img {
	width: auto;
	max-width: 90%;
	max-height: 130px;
	height: auto;
	object-fit: contain;
	transition: transform 0.25s ease;
	position: relative;
	z-index: 1;
	display: block;
}
.gs-prod-card:hover img { transform: scale(1.05); }
.gs-prod-name {
	font-size: 11px;
	font-weight: 600;
	color: #1a1a1a;
	text-align: center;
	line-height: 1.3;
}
.gs-prod-brand {
	font-size: 10px;
	color: #999;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.gs-prod-tag {
	position: absolute;
	top: 8px;
	right: 8px;
	background: #E8560A;
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	padding: 3px 8px;
	border-radius: 3px;
	z-index: 10;
}
.gs-prod-tag--dark { background: #111; }

/* ===== BREADCRUMBS ===== */
.gs-breadcrumbs {
	background: #f9f9f7 !important;
	border-bottom: 1px solid #eee !important;
	padding: 14px 0 !important;
	display: block !important;
	visibility: visible !important;
	position: relative !important;
	z-index: 10 !important;
	width: 100% !important;
}
.gs-breadcrumbs ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex !important;
	flex-wrap: wrap;
	gap: 0;
	font-size: 12px;
}
.gs-breadcrumbs li {
	display: flex;
	align-items: center;
	color: #999;
	font-size: 14px;
}
.gs-breadcrumbs li::after {
	content: '›';
	margin: 0 10px;
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
}
.gs-breadcrumbs li:last-child::after { content: none; }
.gs-breadcrumbs a {
	color: #888;
	text-decoration: none;
	font-weight: 500;
	transition: color .15s;
}
.gs-breadcrumbs a:hover { color: #111; }
.gs-bc-current { color: #111; font-weight: 700; font-size: 15px; }

/* ===== 404 PAGE ===== */
.gs-404-section { padding: 80px 0 100px; background: #fff; }
.gs-404-inner { text-align: center; max-width: 560px; margin: 0 auto; }
.gs-404-badge {
	display: inline-block;
	background: #fef2f2;
	color: #dc2626;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: 100px;
	margin-bottom: 16px;
}
.gs-404-code {
	font-size: 9rem;
	font-weight: 900;
	color: #111;
	line-height: 1;
	margin-bottom: 8px;
	letter-spacing: -4px;
}
.gs-404-title { font-size: 1.6rem; font-weight: 800; color: #111; margin: 0 0 12px; }
.gs-404-sub { font-size: 0.9rem; color: #777; margin: 0 0 36px; line-height: 1.7; }
.gs-404-search { margin-bottom: 36px; }
.gs-404-search form {
	display: flex;
	max-width: 440px;
	margin: 0 auto;
	border: 2px solid #111;
	border-radius: 10px;
	overflow: hidden;
	border-radius: 6px;
	overflow: hidden;
}
.gs-404-search input[type="search"] {
	flex: 1; border: none; padding: 13px 18px;
	font-size: 14px; outline: none; background: #fff;
}
.gs-404-search button {
	background: #111; color: #fff; border: none;
	padding: 0 20px; cursor: pointer;
	display: flex; align-items: center;
	transition: background 0.2s;
}
.gs-404-search button:hover { background: #E8560A; }
.gs-404-cats { margin-bottom: 36px; }
.gs-404-cats-label { font-size: 0.75rem; font-weight: 700; color: #aaa; text-transform: uppercase; letter-spacing: 2px; margin: 0 0 14px; }
.gs-404-cats-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.gs-404-cat-link {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 9px 18px; border: 1.5px solid #e5e7eb;
	border-radius: 100px; color: #333; font-size: 13px;
	font-weight: 600; text-decoration: none; transition: all 0.2s;
	background: #fff;
}
.gs-404-cat-icon { font-size: 15px; }
.gs-404-cat-link:hover { border-color: #E8560A; color: #E8560A; background: rgba(232,86,10,0.04); }
.gs-404-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.gs-404-btn {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 13px 28px; border-radius: 8px;
	font-weight: 700; font-size: 13px;
	text-decoration: none; text-transform: uppercase;
	letter-spacing: 0.5px; transition: all 0.2s; cursor: pointer;
}
.gs-404-btn--primary { background: #111; color: #fff; }
.gs-404-btn--primary:hover { background: #E8560A; color: #fff; }
.gs-404-btn--secondary { background: transparent; color: #111; border: 2px solid #111; }
.gs-404-btn--secondary:hover { border-color: #E8560A; color: #E8560A; }
.gs-btn-primary { display: inline-block; background: #111; color: #fff; padding: 13px 28px; border-radius: 6px; font-weight: 700; font-size: 13px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.5px; }
.gs-btn-primary:hover { background: #E8560A; color: #fff; }
.gs-btn-secondary { display: inline-block; background: transparent; color: #111; border: 2px solid #111; padding: 11px 28px; border-radius: 6px; font-weight: 700; font-size: 13px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.5px; }
.gs-btn-secondary:hover { border-color: #E8560A; color: #E8560A; }

/* ===== CATEGORY SEO DESC (bottom) ===== */
.gs-cat-seo-desc {
	margin-top: 48px;
	padding: 36px 0 0;
	border-top: 1px solid #eee;
	font-size: 0.88rem;
	color: #666;
	line-height: 1.75;
}
.gs-cat-desc-inner {
	overflow: hidden;
	transition: max-height 0.4s ease;
}
.gs-cat-desc-collapsed {
	max-height: 110px;
	-webkit-mask-image: linear-gradient(to bottom, black 40%, transparent 100%);
	mask-image: linear-gradient(to bottom, black 40%, transparent 100%);
}
.gs-cat-desc-expanded {
	max-height: 2000px;
	-webkit-mask-image: none;
	mask-image: none;
}
.gs-cat-desc-toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 10px;
	background: none;
	border: none;
	padding: 0;
	font-size: 0.85rem;
	font-weight: 700;
	color: #111;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color 0.15s;
}
.gs-cat-desc-toggle:hover { color: #E8560A; }
.gs-cat-desc-arrow {
	transition: transform 0.3s ease;
	flex-shrink: 0;
}
.gs-cat-seo-desc h2,
.gs-cat-seo-desc h3 {
	font-size: 1rem;
	font-weight: 700;
	color: #222;
	margin: 20px 0 8px;
}
.gs-cat-seo-desc p {
	margin: 0 0 12px;
}
.gs-cat-seo-desc strong {
	color: #333;
}

/* ===== SEO TEXT SECTION ===== */
.gs-seo-section {
	background: #f8f8f6;
	border-top: 1px solid #ebebeb;
	padding: 56px 0 48px;
}
.gs-seo-inner {
	max-width: 1200px;
}
.gs-seo-intro {
	margin-bottom: 36px;
	padding-bottom: 28px;
	border-bottom: 1px solid #e5e5e5;
}
.gs-seo-intro h2 {
	font-size: 1.25rem;
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
	text-transform: none;
	letter-spacing: 0;
}
.gs-seo-intro p {
	font-size: 0.92rem;
	color: #444;
	line-height: 1.75;
	max-width: 820px;
	margin: 0;
}
.gs-seo-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 36px 52px;
}
.gs-seo-block h2 {
	font-size: 1rem;
	font-weight: 700;
	color: #111;
	margin: 0 0 10px;
	line-height: 1.3;
	text-transform: none;
	letter-spacing: 0;
}
.gs-seo-block p {
	font-size: 0.88rem;
	color: #555;
	line-height: 1.7;
	margin: 0;
}
@media (max-width: 767px) {
	.gs-seo-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.gs-seo-section {
		padding: 36px 0 28px;
	}
}

/* ===== TICKER ===== */
.gs-ticker-wrap {
	overflow: hidden;
	background: #E8560A;
	padding: 13px 0;
}
.gs-ticker {
	display: flex;
	width: max-content;
	animation: gs-ticker-scroll 28s linear infinite;
	white-space: nowrap;
}
.gs-ticker:hover { animation-play-state: paused; }
@keyframes gs-ticker-scroll {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}
.gs-ticker-item {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255,255,255,0.92);
	padding: 0 36px;
	flex-shrink: 0;
}
.gs-ticker-dot {
	color: rgba(255,255,255,0.45);
	flex-shrink: 0;
	font-size: 9px;
	align-self: center;
}

@media (max-width: 1023px) {
	.gs-showcase-grid-section,
	.gs-ticker-wrap {
		display: none !important;
	}
	.gs-showcase-grid-wrap {
		grid-template-columns: 1fr;
	}
	.gs-sgrid-left {
		padding: 36px 28px;
	}
	.gs-sgrid-title {
		font-size: 36px;
	}
	.gs-sgrid-right {
		grid-template-columns: repeat(2, 1fr);
		padding: 24px 20px;
		gap: 14px;
	}
}

/* ===== CSS HERO SLIDE (protein) ===== */
.slide-link--css-hero {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 480px;
	background: #0a0a0a;
	overflow: hidden;
	display: flex;
	align-items: center;
}

/* Decorative background layers */
.slide-css-hero {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

/* Subtle noise texture via SVG data-url */
.sch-noise {
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
	opacity: 0.4;
}

/* Two diagonal accent lines */
.sch-line {
	position: absolute;
	background: linear-gradient(90deg, transparent, rgba(255,100,20,0.18), transparent);
	height: 1px;
	width: 70%;
}
.sch-line-1 {
	top: 28%;
	right: -10%;
	transform: rotate(-8deg);
}
.sch-line-2 {
	bottom: 28%;
	right: -5%;
	transform: rotate(-5deg);
}

/* Dot grid on the right */
.sch-dot-grid {
	position: absolute;
	right: 0;
	top: 0;
	width: 55%;
	height: 100%;
	background-image: radial-gradient(circle, rgba(255,255,255,0.07) 1px, transparent 1px);
	background-size: 28px 28px;
	mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,0.9) 40%, rgba(0,0,0,0.9) 100%);
	-webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,0.9) 40%, rgba(0,0,0,0.9) 100%);
}

/* Content */
.slide-css-content {
	position: relative;
	z-index: 3;
	padding: 48px 5% 48px 7%;
	max-width: 620px;
	flex: 1 1 auto;
}

.sch-eyebrow {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #e05a0a;
	margin: 0 0 18px;
}

.sch-title {
	font-size: clamp(2rem, 5vw, 3.4rem);
	font-weight: 900;
	line-height: 1.05;
	color: #fff;
	margin: 0 0 24px;
	text-transform: uppercase;
	letter-spacing: -0.01em;
}

.sch-accent {
	display: block;
	color: #ff6014;
}

.sch-pills {
	list-style: none;
	margin: 0 0 32px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sch-pills li {
	background: rgba(255,255,255,0.07);
	border: 1px solid rgba(255,255,255,0.12);
	color: rgba(255,255,255,0.82);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	padding: 5px 14px;
	border-radius: 100px;
	text-transform: uppercase;
}

.sch-cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #ff6014;
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 15px 28px;
	border-radius: 4px;
	transition: background 0.2s, transform 0.15s;
}
.sch-cta:hover,
.sch-cta:focus {
	background: #e04d00;
	transform: translateX(3px);
	color: #fff;
	text-decoration: none;
}

/* Stats panel */
.slide-css-numbers {
	position: absolute;
	right: 6%;
	bottom: 40px;
	z-index: 4;
	display: flex;
	align-items: center;
	gap: 0;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: 8px;
	padding: 16px 24px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.sch-stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0 20px;
}

.sch-stat-num {
	font-size: 1.6rem;
	font-weight: 900;
	color: #fff;
	line-height: 1;
}
.sch-stat-num small {
	font-size: 1rem;
	color: #ff6014;
}
.sch-stat-label {
	font-size: 10px;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-top: 4px;
	white-space: nowrap;
}

.sch-stat-sep {
	width: 1px;
	height: 36px;
	background: rgba(255,255,255,0.12);
	flex-shrink: 0;
}

/* Mobile adjustments */
@media (max-width: 768px) {
	.slide-link--css-hero {
		min-height: 380px;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	.slide-css-content {
		padding: 36px 24px 100px;
		max-width: 100%;
	}
	.sch-title {
		font-size: 2rem;
	}
	.slide-css-numbers {
		bottom: 16px;
		right: 50%;
		transform: translateX(50%);
		padding: 10px 14px;
		gap: 0;
	}
	.sch-stat {
		padding: 0 12px;
	}
	.sch-stat-num {
		font-size: 1.2rem;
	}
	.sch-stat-label {
		font-size: 9px;
	}
	.sch-dot-grid {
		width: 100%;
	}
}

/* ===== TRUST BADGES ===== */
.trust-badges {
	border-bottom: none;
	padding: 12px 0;
}

.badges-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.badge-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.badge-item svg {
	flex-shrink: 0;
	margin-top: 2px;
}

.badge-item strong {
	display: block;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.badge-item span {
	font-size: 12px;
	color: #6b7280;
}

/* ===== CATEGORY SHOWCASE ===== */
.category-showcase {
	background: #1a1a1a;
	padding: 24px 0;
	touch-action: pan-y;
	overscroll-behavior-x: contain;
}

.showcase-layout {
	display: grid;
	grid-template-columns: 2.2fr 1fr;
	gap: 28px;
	align-items: stretch;
}

.showcase-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.showcase-card {
	background: linear-gradient(165deg, #ffffff 0%, #f8f9fa 100%);
	border-radius: 16px;
	padding: 14px 16px 12px;
	text-align: center;
	transition: transform 0.35s cubic-bezier(.22,.68,0,1.2), box-shadow 0.35s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.showcase-card::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 20px;
	padding: 2px;
	background: linear-gradient(135deg, rgba(220,38,38,0.15), rgba(245,158,11,0.1), transparent);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.35s ease;
}

.showcase-card:hover::before {
	opacity: 1;
}

.showcase-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 24px 48px rgba(0, 0, 0, 0.25), 0 0 30px rgba(220, 38, 38, 0.08);
}

.showcase-card-img {
	width: 100%;
	height: 220px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	position: relative;
}

.showcase-card-img::after {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 20%;
	right: 20%;
	height: 12px;
	background: radial-gradient(ellipse, rgba(0,0,0,0.08) 0%, transparent 70%);
	border-radius: 50%;
}

.showcase-card-img img {
	max-width: 90%;
	max-height: 90%;
	object-fit: contain;
	transition: transform 0.4s cubic-bezier(.22,.68,0,1.2);
	filter: drop-shadow(0 6px 12px rgba(0,0,0,0.1));
}

.showcase-card:hover .showcase-card-img img {
	transform: scale(1.1) translateY(-4px);
}

.showcase-card h3 {
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #111;
	padding: 8px 20px;
	border-radius: 20px;
	background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
	transition: all 0.3s ease;
}

.showcase-card:hover h3 {
	background: linear-gradient(135deg, #111, #222);
	color: #fff;
}

.showcase-promo {
	background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);
	border-radius: 14px;
	padding: 40px 32px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.showcase-promo.showcase-promo-brutal {
	background: linear-gradient(160deg, #111 0%, #1a1a1a 40%, #222 100%);
	position: relative;
	overflow: hidden;
	padding: 24px 24px;
}

.showcase-promo.showcase-promo-brutal::before {
	content: '';
	position: absolute;
	top: -60%;
	right: -40%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(220, 38, 38, 0.08) 0%, transparent 60%);
	pointer-events: none;
}

.showcase-promo.showcase-promo-brutal::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, transparent, #dc2626, #f59e0b, #dc2626, transparent);
	opacity: 0.85;
}

.promo-brutal-badge {
	display: inline-block;
	padding: 4px 12px;
	background: rgba(220, 38, 38, 0.15);
	border: 1px solid rgba(220, 38, 38, 0.4);
	border-radius: 4px;
	color: #ef4444;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	margin-bottom: 16px;
	width: fit-content;
}

.showcase-promo-brutal h2 {
	font-size: 22px;
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 10px;
	color: #fff;
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.promo-accent {
	color: transparent;
	background: linear-gradient(135deg, #dc2626, #f59e0b);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

.showcase-promo-brutal p {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 16px;
	line-height: 1.6;
}

.btn-brutal-cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 24px;
	background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	transition: transform 0.2s, box-shadow 0.3s;
	box-shadow: 0 4px 20px rgba(220, 38, 38, 0.35), 0 0 40px rgba(220, 38, 38, 0.1);
	text-align: center;
	justify-content: center;
	touch-action: manipulation;
}

.btn-brutal-cta::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
	transition: left 0.5s;
}

.btn-brutal-cta:hover::before {
	left: 100%;
}

.btn-brutal-cta:hover {
	transform: translateY(-2px) scale(1.03);
	box-shadow: 0 8px 35px rgba(220, 38, 38, 0.5), 0 0 60px rgba(220, 38, 38, 0.25);
	animation: none;
}

.btn-brutal-text {
	position: relative;
	z-index: 1;
}

.btn-brutal-arrow {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
	transition: transform 0.2s;
}

.btn-brutal-cta:hover .btn-brutal-arrow {
	transform: translateX(4px);
}

.promo-brutal-stats {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.promo-stat {
	display: flex;
	flex-direction: column;
}

.promo-stat strong {
	font-size: 18px;
	font-weight: 900;
	color: #fff;
	letter-spacing: -0.02em;
}

.promo-stat span {
	font-size: 11px;
	color: rgba(255, 255, 255, 0.4);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.promo-stat-sep {
	width: 1px;
	height: 30px;
	background: rgba(255, 255, 255, 0.1);
}

.btn-outline {
	display: inline-block;
	padding: 14px 28px;
	border: 2px solid #111;
	color: #111;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	transition: background 0.2s, color 0.2s;
	text-align: center;
}

.btn-outline:hover {
	background: #111;
	color: #fff;
}

/* ===== BRENDOVI (logo bar) ===== */
.brands-section {
	padding: 36px 0;
	border-bottom: 1px solid #e5e7eb;
	overflow: hidden;
}

.brands-title {
	text-align: center;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #9ca3af;
	margin-bottom: 24px;
}

.brands-track {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 44px;
	flex-wrap: wrap;
}

.brand-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
	padding: 10px 16px;
	transition: opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1), filter 0.35s;
	opacity: 0.45;
}

.brand-logo:hover {
	opacity: 1;
	transform: scale(1.22);
}

.brand-logo img {
	max-height: 56px;
	max-width: 150px;
	object-fit: contain;
	filter: grayscale(100%);
	transition: filter 0.35s cubic-bezier(.4,0,.2,1);
}

.brand-logo:hover img {
	filter: grayscale(0%) drop-shadow(0 2px 8px rgba(0,0,0,.12));
}

/* ===== GLOBAL SECTION ===== */
.section {
	padding: 60px 0;
}

.section-title {
	font-size: 28px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	margin-bottom: 8px;
}

.section-subtitle {
	font-size: 15px;
	color: #6b7280;
	max-width: 600px;
	margin-bottom: 32px;
}

.section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 28px;
}

.view-all {
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
	transition: color 0.15s;
}

.view-all:hover {
	color: #555;
}

/* ===== SCROLL ANIMATIONS ===== (blago – manje „knedle“ pri skrolu) */
.anim-section {
	opacity: 0;
	transform: translateY(14px);
	transition: opacity 0.45s ease, transform 0.45s ease;
}

.anim-section.anim-visible {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.anim-section {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* ===== KATEGORIJE ===== */
.categories-section {
	background: #fafafa;
	padding-top: 24px;
	padding-bottom: 40px;
}

.categories-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 16px;
	align-items: start;
}

.category-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 8px 8px 14px;
	border-radius: 12px;
	background: #fff;
	border: 1px solid #e5e7eb;
	transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
	text-align: center;
}

.category-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
	border-color: #111;
}

.category-img {
	width: 56px;
	height: 56px;
	border-radius: 999px;
	background: #111;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 800;
}

.category-card span {
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

/* ===== ISTAKNUTI PROIZVODI ===== */
.products-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.product-card {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
	transition: transform 0.15s, box-shadow 0.15s;
}

.product-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.product-img {
	height: 220px;
	background: #f3f4f6;
	position: relative;
	overflow: hidden;
}

.product-card:hover .product-img {
	background: #eaeaea;
}

/* Product overlay (quick view) */
.product-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity 0.25s;
	z-index: 3;
}

.product-card:hover .product-overlay {
	opacity: 1;
}

.overlay-btn {
	display: inline-block;
	padding: 10px 24px;
	background: #fff;
	color: #111;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-radius: 4px;
	transform: translateY(8px);
	transition: transform 0.25s, background 0.15s;
}

.product-card:hover .overlay-btn {
	transform: translateY(0);
}

.overlay-btn:hover {
	background: #111;
	color: #fff;
}

/* Product badges */
.product-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	padding: 4px 10px;
	border-radius: 4px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	z-index: 2;
}

.badge-bestseller {
	background: #111;
	color: #fff;
}

.badge-new {
	background: #fff;
	color: #111;
	border: 1.5px solid #111;
}

.badge-sale {
	background: #dc2626;
	color: #fff;
}

.product-body {
	padding: 16px;
}

.product-cat {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9ca3af;
	margin-bottom: 4px;
	display: block;
}

.product-body h3 {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 8px;
}

.product-price {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
}

.price-current {
	font-size: 16px;
	font-weight: 800;
}

.price-old {
	font-size: 13px;
	color: #9ca3af;
	text-decoration: line-through;
}

.btn-add-cart {
	width: 100%;
	padding: 10px;
	background: #111;
	color: #fff;
	border: none;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	border-radius: 6px;
	transition: background 0.15s;
}

.btn-add-cart:hover {
	background: #333;
}

/* ===== ZAŠTO GYMSUPLEMENTI ===== */
.why-section {
	background: #000;
	color: #fff;
}

.why-section-compact {
	padding: 24px 0;
}

.why-section-compact .section-title {
	font-size: 17px;
	margin-bottom: 4px;
}

.why-section-compact .section-subtitle {
	font-size: 12px;
	margin-bottom: 14px;
}

.why-section .section-title {
	color: #fff;
}

.why-section .section-subtitle {
	color: #9ca3af;
}

.why-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

.why-card {
	padding: 14px;
	border: 1px solid #333;
	border-radius: 8px;
	transition: border-color 0.15s, transform 0.15s;
}

.why-card:hover {
	border-color: #fff;
	transform: translateY(-2px);
}

.why-icon {
	font-size: 18px;
	margin-bottom: 6px;
}

.why-card h3 {
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 4px;
}

.why-card p {
	font-size: 11px;
	color: #9ca3af;
	line-height: 1.4;
}

/* ===== RECENZIJE ===== */
.reviews-section {
	background: #fafafa;
}

.reviews-compact {
	padding: 36px 0;
}

.reviews-compact .section-title {
	font-size: 20px;
	margin-bottom: 20px;
}

.reviews-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.review-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 18px;
	transition: transform 0.15s, box-shadow 0.15s;
}

.review-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.review-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}

.review-stars {
	color: #111;
	font-size: 13px;
	letter-spacing: 1px;
}

.review-verified {
	font-size: 10px;
	color: #16a34a;
	font-weight: 600;
}

.review-card p {
	font-size: 13px;
	color: #374151;
	margin-bottom: 14px;
	line-height: 1.5;
}

.review-author {
	display: flex;
	align-items: center;
	gap: 10px;
}

.review-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #374151, #111);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.review-author-info {
	display: flex;
	flex-direction: column;
}

.review-author-info strong {
	font-size: 13px;
}

.review-author-info span {
	font-size: 11px;
	color: #9ca3af;
}

/* ===== BLOG ===== */
.blog-compact {
	padding: 36px 0;
}

.blog-compact .section-title {
	font-size: 20px;
}

.blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.blog-card {
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	transition: transform 0.15s, box-shadow 0.15s;
}

.blog-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.blog-img {
	height: 130px;
	background: #e5e7eb;
	overflow: hidden;
}

.blog-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.blog-body {
	padding: 14px;
}

.blog-date {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #9ca3af;
	margin-bottom: 4px;
	display: block;
}

.blog-body h3 {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 4px;
}

.blog-body p {
	font-size: 12px;
	color: #6b7280;
	margin-bottom: 8px;
}

.read-more {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
}

.read-more:hover {
	text-decoration: underline;
}

/* ===== NEWSLETTER ===== */
.newsletter-section {
	background: #111;
	color: #fff;
	padding: 24px 0;
}

.newsletter-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
}

.newsletter-copy h2 {
	font-size: 16px;
	font-weight: 800;
	text-transform: uppercase;
	margin-bottom: 4px;
}

.newsletter-copy p {
	font-size: 12px;
	color: #9ca3af;
	max-width: 400px;
	line-height: 1.4;
}

.newsletter-form {
	display: flex;
	gap: 0;
}

.newsletter-form input[type='email'] {
	padding: 10px 14px;
	border: 1.5px solid #fff;
	border-right: none;
	background: transparent;
	color: #fff;
	font-size: 13px;
	min-width: 240px;
	outline: none;
}

.newsletter-form input[type='email']::placeholder {
	color: #9ca3af;
}

.newsletter-form button {
	padding: 10px 20px;
	background: #fff;
	color: #111;
	border: 1.5px solid #fff;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}

.newsletter-form button:hover {
	background: #111;
	color: #fff;
}

/* ===== FOOTER ===== */
.site-footer {
	background: #000;
	color: #e5e7eb;
	padding-top: 60px;
}

.footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 40px;
	padding-bottom: 40px;
}

.footer-logo {
	display: inline-block;
	margin-bottom: 18px;
}
.footer-logo img {
	height: 70px;
	width: auto;
	transition: opacity 0.2s;
	background: transparent;
	/* Ukloni eventualnu belu pozadinu na tamnoj podlozi */
	mix-blend-mode: screen;
}
.footer-logo:hover img {
	opacity: 0.85;
}

.footer-about {
	font-size: 13px;
	color: #9ca3af;
	line-height: 1.6;
	margin-bottom: 18px;
}

.footer-social {
	display: flex;
	gap: 12px;
}

.footer-social a {
	width: 36px;
	height: 36px;
	border-radius: 999px;
	border: 1px solid #555;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #e5e7eb;
	transition: background 0.15s, border-color 0.15s;
}

.footer-social a:hover {
	background: #fff;
	border-color: #fff;
	color: #111;
}

.footer-col h4 {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 18px;
	color: #fff;
}

.footer-col ul li {
	margin-bottom: 10px;
}

.footer-col ul li a {
	font-size: 13px;
	color: #9ca3af;
	transition: color 0.15s;
}

.footer-col ul li a:hover {
	color: #fff;
}

.footer-contact li {
	display: flex;
	align-items: center;
	gap: 8px;
}

.footer-contact svg {
	flex-shrink: 0;
	color: #9ca3af;
}

/* Nacini placanja u footeru */
.footer-payments {
	border-top: 1px solid #222;
	padding: 20px 0;
}

.footer-payments-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
	flex-wrap: wrap;
}

.footer-payments-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #6b7280;
}

.payment-icons {
	display: flex;
	align-items: center;
	gap: 20px;
}

.payment-icon {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #9ca3af;
	padding: 6px 12px;
	border: 1px solid #333;
	border-radius: 6px;
}

.payment-icon svg {
	flex-shrink: 0;
}

.footer-bottom {
	border-top: 1px solid #222;
	padding: 18px 0;
}

.footer-bottom p {
	font-size: 12px;
	color: #6b7280;
	text-align: center;
}

/* ===== PAGE HERO / BREADCRUMB ===== */
.page-hero {
	background: #f5f5f5;
	padding: 40px 0;
	text-align: center;
	border-bottom: 1px solid #e5e7eb;
}

.page-hero-title {
	font-size: 28px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin-bottom: 8px;
}

.breadcrumb {
	font-size: 13px;
	color: #6b7280;
}

.breadcrumb a {
	color: #6b7280;
	transition: color 0.15s;
}

.breadcrumb a:hover {
	color: #111;
}

.breadcrumb-sep {
	margin: 0 6px;
	color: #9ca3af;
}

.breadcrumb-current {
	color: #c45500;
	font-weight: 600;
}

/* ===== PAGE CONTENT (Dostava) ===== */
.page-content {
	padding: 50px 0 60px;
}

.content-layout {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 40px;
	align-items: start;
}

.sidebar-title {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
	padding: 14px 0;
	border-bottom: 2px solid #111;
}

.content-main {
	max-width: 780px;
}

.content-heading {
	font-size: 30px;
	font-weight: 800;
	margin-bottom: 24px;
}

.content-main p {
	font-size: 14px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 18px;
}

.content-main p strong {
	color: #111;
}

/* ===== SHIPPING TABS ===== */
.shipping-tabs-section {
	padding: 50px 0 70px;
	background: #fff;
}

.shipping-tabs-title {
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 28px;
	letter-spacing: 0.02em;
}

.tabs-nav {
	display: flex;
	border-bottom: 2px solid #e5e7eb;
	gap: 0;
	flex-wrap: wrap;
}

.tab-btn {
	flex: 1;
	min-width: 0;
	padding: 14px 10px;
	background: none;
	border: 1px solid #e5e7eb;
	border-bottom: none;
	font-size: 12px;
	font-weight: 700;
	text-align: left;
	cursor: pointer;
	color: #374151;
	line-height: 1.4;
	transition: background 0.15s, color 0.15s;
	position: relative;
}

.tab-btn:hover {
	background: #fafafa;
}

.tab-btn.active {
	background: #fff;
	color: #111;
	border-bottom: 2px solid #fff;
	margin-bottom: -2px;
	font-weight: 800;
}

.tabs-content {
	border: 1px solid #e5e7eb;
	border-top: none;
	padding: 28px 24px;
	min-height: 120px;
}

.tab-panel {
	display: none;
}

.tab-panel.active {
	display: block;
}

.tab-panel p {
	font-size: 14px;
	color: #374151;
	line-height: 1.7;
	margin-bottom: 12px;
}

.tab-panel p:last-child {
	margin-bottom: 0;
}

/* ===== INFO SIDEBAR NAV ===== */
.sidebar-nav {
	list-style: none;
	margin-top: 16px;
}

.sidebar-nav li {
	margin-bottom: 0;
}

.sidebar-nav li a {
	display: block;
	padding: 11px 0;
	font-size: 13px;
	font-weight: 600;
	color: #6b7280;
	border-bottom: 1px solid #e5e7eb;
	transition: color 0.15s, padding-left 0.15s;
}

.sidebar-nav li a:hover {
	color: #111;
	padding-left: 6px;
}

.sidebar-nav li a.active {
	color: #111;
	font-weight: 700;
}

/* ===== CONTENT SECTIONS (info pages) ===== */
.content-section {
	margin-bottom: 36px;
	padding-bottom: 36px;
	border-bottom: 1px solid #e5e7eb;
}

.content-section:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.content-section h3 {
	font-size: 17px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin-bottom: 14px;
	color: #111;
}

.content-main ol {
	padding-left: 20px;
	margin-bottom: 18px;
}

.content-main ol li {
	font-size: 14px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 4px;
}

.content-main ul.info-list {
	list-style: none;
	padding: 0;
	margin-bottom: 18px;
}

.content-main ul.info-list li {
	font-size: 14px;
	color: #374151;
	line-height: 1.8;
	padding: 6px 0;
	padding-left: 18px;
	position: relative;
}

.content-main ul.info-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 14px;
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: #111;
}

/* ===== PAGE RESPONSIVE ===== */
@media (max-width: 992px) {
	.content-layout {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.content-sidebar {
		order: -1;
	}
}

@media (max-width: 768px) {
	.tabs-nav {
		flex-wrap: wrap;
	}

	.tab-btn {
		flex: 0 0 50%;
		font-size: 11px;
		padding: 12px 8px;
	}

	.tabs-content {
		padding: 20px 16px;
	}

	.page-hero-title {
		font-size: 22px;
	}

	.content-heading {
		font-size: 24px;
	}
}

@media (max-width: 480px) {
	.tab-btn {
		flex: 0 0 50%;
	}
}

/* ===== O NAMA (ABOUT) PAGE ===== */
.about-intro {
	padding: 60px 0 40px;
}

.about-intro-inner {
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}

.about-intro h2 {
	font-size: 26px;
	font-weight: 800;
	line-height: 1.3;
	margin-bottom: 8px;
}

.about-lead {
	font-size: 18px;
	font-weight: 600;
	color: #111;
	margin-bottom: 24px;
}

.about-intro p {
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 14px;
}

.about-goals {
	padding: 0 0 60px;
}

.goals-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	max-width: 800px;
	margin: 0 auto 32px;
}

.goal-card {
	background: #111;
	color: #fff;
	border-radius: 12px;
	padding: 28px 16px;
	text-align: center;
	transition: transform 0.15s;
}

.goal-card:hover {
	transform: translateY(-3px);
}

.goal-icon {
	font-size: 32px;
	display: block;
	margin-bottom: 10px;
}

.goal-card h3 {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.about-offer-text {
	text-align: center;
	font-size: 15px;
	color: #374151;
	max-width: 700px;
	margin: 0 auto;
	line-height: 1.8;
}

.about-why {
	background: #fafafa;
	padding: 60px 0;
}

.about-why h2 {
	font-size: 26px;
	font-weight: 800;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 32px;
}

.about-why-list {
	max-width: 540px;
	margin: 0 auto 28px;
}

.about-why-item {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 0;
	border-bottom: 1px solid #e5e7eb;
	font-size: 15px;
	color: #374151;
}

.about-why-item:last-child {
	border-bottom: none;
}

.check-icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #111;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 700;
}

.about-why-note {
	text-align: center;
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
}

.about-philosophy {
	padding: 60px 0;
	text-align: center;
}

.about-philosophy h2 {
	font-size: 26px;
	font-weight: 800;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.philosophy-formula {
	font-size: 16px;
	color: #374151;
	margin-bottom: 8px;
	line-height: 1.7;
}

.about-philosophy > .container > p {
	font-size: 15px;
	color: #6b7280;
	margin-bottom: 28px;
}

.philosophy-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	max-width: 700px;
	margin: 0 auto;
}

.philosophy-item {
	padding: 24px 12px;
	border: 2px solid #e5e7eb;
	border-radius: 12px;
	text-align: center;
	transition: border-color 0.15s, transform 0.15s;
}

.philosophy-item:hover {
	border-color: #111;
	transform: translateY(-3px);
}

.philosophy-item span {
	font-size: 32px;
	display: block;
	margin-bottom: 8px;
}

.philosophy-item h3 {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.about-slogan {
	background: #111;
	color: #fff;
	padding: 60px 0;
	text-align: center;
}

.slogan-inner h2 {
	font-size: 36px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 8px;
}

.slogan-tagline {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #9ca3af;
}

.about-community {
	padding: 60px 0;
	text-align: center;
}

.about-community h2 {
	font-size: 26px;
	font-weight: 800;
	text-transform: uppercase;
	margin-bottom: 12px;
}

.community-lead {
	font-size: 17px;
	color: #374151;
	margin-bottom: 24px;
}

.community-values {
	display: flex;
	justify-content: center;
	gap: 32px;
	margin-bottom: 28px;
	flex-wrap: wrap;
}

.community-values span {
	font-size: 16px;
	font-weight: 700;
	color: #111;
	padding: 10px 20px;
	border: 2px solid #111;
	border-radius: 8px;
}

.community-cta {
	font-size: 16px;
	color: #374151;
	line-height: 1.7;
}

/* ===== KONTAKT (CONTACT) PAGE ===== */
.contact-section {
	padding: 60px 0 48px;
}

.contact-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: center;
	max-width: 900px;
	margin: 0 auto;
}

.contact-text h2 {
	font-size: 28px;
	font-weight: 800;
	margin-bottom: 16px;
}

.contact-text p {
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 16px;
}

.contact-cta-text {
	font-size: 18px;
}

.contact-card {
	background: #111;
	color: #fff;
	border-radius: 16px;
	padding: 48px 32px;
	text-align: center;
}

.contact-card-icon {
	margin-bottom: 16px;
}

.contact-card-icon svg {
	color: #fff;
}

.contact-label {
	display: block;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #9ca3af;
	margin-bottom: 8px;
}

.contact-email {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	word-break: break-all;
	transition: color 0.15s;
}

.contact-email:hover {
	color: #9ca3af;
}

/* ===== CONTACT FORM ===== */
.contact-form-section {
	padding: 0 0 80px;
}

.contact-form-wrapper {
	max-width: 720px;
	margin: 0 auto;
	background: #f9fafb;
	border-radius: 16px;
	padding: 48px 40px;
}

.contact-form-title {
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 8px;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.contact-form-subtitle {
	font-size: 15px;
	color: #6b7280;
	margin-bottom: 32px;
}

.form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.form-group {
	margin-bottom: 20px;
}

.form-group label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #1f2937;
	margin-bottom: 6px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.form-group label .required {
	color: #e74c3c;
}

.form-group input,
.form-group select,
.form-group textarea {
	width: 100%;
	padding: 12px 16px;
	border: 1.5px solid #d1d5db;
	border-radius: 8px;
	font-size: 15px;
	font-family: inherit;
	color: #1f2937;
	background: #fff;
	transition: border-color 0.2s, box-shadow 0.2s;
	box-sizing: border-box;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
	color: #9ca3af;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
	outline: none;
	border-color: #111;
	box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.08);
}

.form-group select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 40px;
	cursor: pointer;
}

.form-group textarea {
	resize: vertical;
	min-height: 120px;
}

.form-group.has-error input,
.form-group.has-error select,
.form-group.has-error textarea {
	border-color: #e74c3c;
}

.form-group .field-error {
	font-size: 12px;
	color: #e74c3c;
	margin-top: 4px;
}

.form-footer {
	margin-top: 8px;
}

.contact-submit-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 36px;
	background: #111;
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 700;
	font-family: inherit;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: background 0.2s, transform 0.15s;
}

.contact-submit-btn:hover {
	background: #333;
}

.contact-submit-btn:active {
	transform: scale(0.97);
}

.contact-submit-btn.sending {
	opacity: 0.7;
	pointer-events: none;
}

.form-status {
	margin-top: 16px;
	font-size: 14px;
	font-weight: 600;
}

.form-status.success {
	color: #059669;
}

.form-status.error {
	color: #e74c3c;
}

@media (max-width: 768px) {
	.goals-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.philosophy-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.contact-inner {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.community-values {
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	.slogan-inner h2 {
		font-size: 28px;
	}

	.about-intro h2 {
		font-size: 22px;
	}
}

@media (max-width: 480px) {
	.goals-grid {
		grid-template-columns: 1fr 1fr;
	}

	.philosophy-grid {
		grid-template-columns: 1fr 1fr;
	}
}

/* ===== BLOG PAGE ===== */
.blog-page-intro {
	padding: 40px 0 10px;
	text-align: center;
}

.blog-page-subtitle {
	font-size: 16px;
	color: #6b7280;
	max-width: 600px;
	margin: 0 auto;
	line-height: 1.7;
}

/* Featured post */
.blog-featured-section {
	padding: 30px 0 50px;
}

.blog-featured-card {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 0;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	background: #fff;
	transition: transform 0.2s, box-shadow 0.2s;
}

.blog-featured-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
}

.blog-featured-img {
	min-height: 340px;
	background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
	position: relative;
}

.blog-featured-badge {
	position: absolute;
	top: 16px;
	left: 16px;
	background: #fff;
	color: #111;
	padding: 5px 14px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	border-radius: 4px;
}

.blog-featured-content {
	padding: 40px 36px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.blog-featured-content h2 {
	font-size: 24px;
	font-weight: 800;
	line-height: 1.3;
	margin-bottom: 14px;
	color: #111;
}

.blog-featured-content p {
	font-size: 14px;
	color: #6b7280;
	line-height: 1.7;
	margin-bottom: 20px;
}

.blog-featured-link {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
	transition: color 0.15s;
}

.blog-featured-card:hover .blog-featured-link {
	color: #555;
}

/* Blog meta */
.blog-meta {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
	flex-wrap: wrap;
}

.blog-meta-cat {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #fff;
	background: #111;
	padding: 3px 10px;
	border-radius: 3px;
}

.blog-meta-date,
.blog-meta-read {
	font-size: 12px;
	color: #9ca3af;
}

/* Blog page grid */
.blog-page-section {
	padding: 0 0 60px;
}

.blog-page-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.blog-page-grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.blog-page-card {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
	transition: transform 0.2s, box-shadow 0.2s;
	display: flex;
	flex-direction: column;
}

.blog-page-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.1);
}

.blog-page-card-img {
	height: 200px;
	background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
	position: relative;
	overflow: hidden;
}

.blog-page-card-img > img:not(.blog-card-product-img) {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.blog-card-cat {
	position: absolute;
	bottom: 12px;
	left: 12px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #fff;
	background: #111;
	padding: 4px 12px;
	border-radius: 3px;
	z-index: 2;
}

.blog-page-card-body {
	padding: 20px;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.blog-page-card-body h3 {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 8px;
	color: #111;
}

.blog-page-card-body p {
	font-size: 13px;
	color: #6b7280;
	line-height: 1.6;
	margin-bottom: 16px;
	flex: 1;
}

.blog-card-link {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
	margin-top: auto;
	transition: color 0.15s;
}

.blog-page-card:hover .blog-card-link {
	color: #555;
}

/* ===== BLOG ARTICLE (single post) ===== */
.blog-article {
	padding: 50px 0 60px;
}

.article-layout {
	display: grid;
	grid-template-columns: 1fr 300px;
	gap: 48px;
	align-items: start;
}

.article-header {
	margin-bottom: 28px;
}

.article-title {
	font-size: 32px;
	font-weight: 800;
	line-height: 1.25;
	margin-bottom: 12px;
	color: #111;
}

.article-excerpt {
	font-size: 16px;
	color: #6b7280;
	line-height: 1.7;
}

.article-featured-img {
	width: 100%;
	height: 360px;
	background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
	border-radius: 12px;
	margin-bottom: 36px;
}

.article-body h2 {
	font-size: 22px;
	font-weight: 800;
	margin-top: 36px;
	margin-bottom: 14px;
	color: #111;
}

.article-body h3 {
	font-size: 17px;
	font-weight: 700;
	margin-top: 24px;
	margin-bottom: 10px;
	color: #111;
}

.article-body p {
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 16px;
}

.article-body a {
	color: #111;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: color 0.15s;
}

.article-body a:hover {
	color: #555;
}

.article-body ol {
	padding-left: 20px;
	margin-bottom: 18px;
}

.article-body ol li {
	font-size: 15px;
	color: #374151;
	line-height: 1.8;
	margin-bottom: 6px;
}

.article-body .info-list {
	margin-bottom: 18px;
}

.article-body .info-list li {
	font-size: 15px;
}

.article-highlight {
	background: #f9fafb;
	border-left: 4px solid #111;
	padding: 24px 28px;
	border-radius: 0 10px 10px 0;
	margin: 24px 0;
}

.article-highlight h3 {
	margin-top: 0;
	font-size: 16px;
}

.article-highlight p {
	margin-bottom: 0;
}

.article-highlight .info-list {
	margin-bottom: 0;
}

.article-highlight .info-list li:last-child {
	padding-bottom: 0;
}

/* Article share */
.article-share {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-top: 32px;
	margin-top: 40px;
	border-top: 1px solid #e5e7eb;
	flex-wrap: wrap;
}

.article-share-label {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
}

.article-share-links {
	display: flex;
	gap: 8px;
}

.share-btn {
	padding: 8px 16px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #374151;
	transition: background 0.15s, border-color 0.15s;
}

.share-btn:hover {
	background: #111;
	border-color: #111;
	color: #fff;
}

/* Article sidebar */
.article-sidebar {
	position: sticky;
	top: 80px;
}

.sidebar-widget {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 20px;
}

.sidebar-widget-title {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #111;
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 2px solid #111;
}

.sidebar-posts {
	list-style: none;
}

.sidebar-posts li {
	margin-bottom: 0;
}

.sidebar-posts li a {
	display: block;
	padding: 12px 0;
	border-bottom: 1px solid #e5e7eb;
	transition: padding-left 0.15s;
}

.sidebar-posts li:last-child a {
	border-bottom: none;
	padding-bottom: 0;
}

.sidebar-posts li:first-child a {
	padding-top: 0;
}

.sidebar-posts li a:hover {
	padding-left: 6px;
}

.sidebar-post-title {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #111;
	margin-bottom: 2px;
	line-height: 1.4;
}

.sidebar-post-date {
	font-size: 12px;
	color: #9ca3af;
}

.sidebar-cta {
	background: #111;
	color: #fff;
	border-color: #111;
	text-align: center;
}

.sidebar-cta h4 {
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 8px;
}

.sidebar-cta p {
	font-size: 13px;
	color: #9ca3af;
	margin-bottom: 18px;
	line-height: 1.6;
}

.sidebar-cta .btn-outline {
	border-color: #fff;
	color: #fff;
	display: block;
}

.sidebar-cta .btn-outline:hover {
	background: #fff;
	color: #111;
}

.sidebar-categories {
	list-style: none;
}

.sidebar-categories li {
	margin-bottom: 0;
}

.sidebar-categories li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 0;
	border-bottom: 1px solid #e5e7eb;
	font-size: 14px;
	font-weight: 600;
	color: #374151;
	transition: color 0.15s, padding-left 0.15s;
}

.sidebar-categories li:last-child a {
	border-bottom: none;
}

.sidebar-categories li a:hover {
	color: #111;
	padding-left: 6px;
}

.sidebar-categories li a span {
	font-size: 12px;
	color: #9ca3af;
	font-weight: 400;
}

/* Related posts section */
.related-posts-section {
	background: #fafafa;
	padding: 50px 0 60px;
	border-top: 1px solid #e5e7eb;
}

.related-posts-section .section-title {
	margin-bottom: 28px;
}

/* Article images */
.article-featured-img {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.article-hero-banner {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 12px;
}

.article-hero-product {
	max-height: 280px;
	width: auto;
	object-fit: contain;
}

.article-featured-products {
	gap: 24px;
	flex-wrap: wrap;
}

.article-featured-products .article-hero-product {
	max-height: 240px;
}

.article-featured-dark {
	flex-direction: column;
	gap: 12px;
}

.article-featured-text {
	text-align: center;
	color: #fff;
}

.article-featured-text span {
	display: block;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #9ca3af;
	margin-bottom: 4px;
}

.article-featured-text strong {
	font-size: 28px;
	font-weight: 900;
	letter-spacing: 0.06em;
}

.article-img-block {
	margin: 28px 0;
	border-radius: 12px;
	overflow: hidden;
}

.article-img-block img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 12px;
}

.article-product-img {
	max-width: 300px;
	margin: 0 auto;
}

.article-img-products {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	background: #f9fafb;
	border-radius: 12px;
	padding: 24px;
	border: 1px solid #e5e7eb;
}

.article-img-products .article-product-img {
	max-height: 200px;
	max-width: 180px;
}

/* Blog card with product image */
.blog-featured-img-has-product {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.blog-featured-product-img {
	max-height: 260px;
	width: auto;
	object-fit: contain;
}

.blog-card-img-has-product {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}

.blog-card-product-img {
	max-height: 140px;
	width: auto;
	object-fit: contain;
}

/* Blog page responsive */
@media (max-width: 992px) {
	.blog-featured-card {
		grid-template-columns: 1fr;
	}

	.blog-featured-img {
		min-height: 220px;
	}

	.blog-featured-content {
		padding: 28px 24px;
	}

	.blog-page-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.article-layout {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.article-sidebar {
		position: static;
	}

	.blog-page-grid-3 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.blog-page-grid {
		grid-template-columns: 1fr;
	}

	.blog-page-grid-3 {
		grid-template-columns: 1fr;
	}

	.blog-featured-content h2 {
		font-size: 20px;
	}

	.article-title {
		font-size: 24px;
	}

	.article-featured-img {
		height: 220px;
	}

	.article-body h2 {
		font-size: 19px;
	}

	.article-highlight {
		padding: 18px 20px;
	}

	.article-share {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ===== BACK TO TOP ===== */
.back-to-top {
	position: fixed;
	bottom: 28px;
	right: 28px;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	background: #111;
	color: #fff;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transform: translateY(12px);
	transition: opacity 0.3s, visibility 0.3s, transform 0.3s, background 0.15s;
	z-index: 200;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}

.back-to-top.visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.back-to-top:hover {
	background: #333;
}

/* ===== DELIVERY PROGRESS BAR ===== */
.delivery-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	border-top: 1px solid #e5e7eb;
	padding: 12px 0;
	z-index: 180;
	box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.06);
	display: none;
}

.delivery-bar-inner {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.delivery-bar-inner svg {
	flex-shrink: 0;
	color: #111;
}

.delivery-bar-inner span {
	font-size: 13px;
	white-space: nowrap;
}

.delivery-progress {
	flex: 1;
	height: 6px;
	background: #e5e7eb;
	border-radius: 999px;
	overflow: hidden;
	min-width: 120px;
}

.delivery-progress-fill {
	height: 100%;
	background: #111;
	border-radius: 999px;
	transition: width 0.5s ease;
}

/* ===== MOBILE STICKY CTA ===== */
.mobile-sticky-cta {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #111;
	padding: 12px 20px;
	z-index: 190;
	box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
}

.mobile-cta-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 14px;
	background: #fff;
	color: #111;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-radius: 8px;
	transition: background 0.15s;
}

.mobile-cta-btn:hover {
	background: #e5e7eb;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 992px) {
	.badges-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.showcase-layout {
		grid-template-columns: 1fr;
	}

	.showcase-promo {
		padding: 32px 24px;
	}

	.showcase-promo-brutal h2 {
		font-size: 24px;
	}

	.btn-brutal-cta {
		width: 100%;
	}

	.products-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.why-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.reviews-grid {
		grid-template-columns: 1fr;
	}

	.blog-grid {
		grid-template-columns: 1fr;
	}

	.newsletter-inner {
		flex-direction: column;
		text-align: center;
	}

	.newsletter-form {
		width: 100%;
	}

	.newsletter-form input[type='email'] {
		min-width: 0;
		flex: 1;
	}

	.footer-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.brands-track {
		gap: 24px;
	}

	.slider-track {
		aspect-ratio: 16 / 9;
	}

	.section-title {
		font-size: 22px;
	}
}

@media (max-width: 600px) {
	.topbar {
		font-size: 10px;
		padding: 6px 0;
	}

	.topbar-sep {
		display: none;
	}

	.topbar .container {
		display: flex;
		flex-direction: column;
		gap: 2px;
	}

	.slider-track {
		aspect-ratio: 16 / 9;
	}

	.slider-dots {
		bottom: 12px;
		gap: 6px;
	}

	.dot {
		width: 10px;
		height: 10px;
	}

	.slider-arrow {
		width: 36px;
		height: 36px;
		font-size: 20px;
	}

	.slider-prev {
		left: 8px;
	}

	.slider-next {
		right: 8px;
	}

	/* Trust badges – u jednom redu na telefonu, kompaktno i čitljivo */
	.badges-grid {
		display: grid !important;
		grid-template-columns: repeat(4, 1fr) !important;
		gap: 8px !important;
		align-items: start;
	}
	.badge-item {
		padding: 4px 2px !important;
		flex-direction: column !important;
		align-items: center !important;
		text-align: center;
		gap: 4px !important;
		min-width: 0;
	}
	.badge-item svg {
		width: 20px !important;
		height: 20px !important;
		min-width: 20px;
		margin-top: 0;
	}
	.badge-item strong {
		font-size: 9px !important;
		line-height: 1.2;
		letter-spacing: 0.02em;
	}
	.badge-item span {
		font-size: 9px !important;
		line-height: 1.25;
	}

	.showcase-cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.showcase-card {
		padding: 24px 20px 20px;
		border-radius: 16px;
	}

	.showcase-card-img {
		height: 220px;
	}

	.category-showcase {
		padding: 24px 0;
	}

	.showcase-promo.showcase-promo-brutal {
		padding: 20px 18px;
	}

	.showcase-promo-brutal h2 {
		font-size: 20px;
	}

	.categories-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
	}

	.category-card {
		padding: 6px 6px 10px;
		gap: 6px;
	}

	.category-card span {
		font-size: 10px;
	}

	.products-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.product-img {
		height: 170px;
	}

	.product-body {
		padding: 10px;
	}

	.product-body h3 {
		font-size: 13px;
	}

	.price-current {
		font-size: 14px;
	}

	.price-old {
		font-size: 11px;
	}

	.btn-add-cart {
		padding: 8px;
		font-size: 11px;
	}

	.product-badge {
		padding: 3px 8px;
		font-size: 9px;
	}

	.section-title {
		font-size: 20px;
	}

	.section {
		padding: 36px 0;
	}

	.why-grid {
		grid-template-columns: 1fr;
	}

	.why-section-compact .section-title {
		font-size: 16px;
	}

	.reviews-compact {
		padding: 28px 0;
	}

	.review-card {
		padding: 14px;
	}

	.review-card p {
		font-size: 12px;
	}

	.blog-compact {
		padding: 28px 0;
	}

	.blog-img {
		height: 110px;
	}

	.blog-body h3 {
		font-size: 13px;
	}

	.counters-section {
		padding: 16px 0;
	}

	.newsletter-section {
		padding: 20px 0;
	}

	.newsletter-copy h2 {
		font-size: 14px;
	}

	.newsletter-copy p {
		font-size: 11px;
	}

	.footer-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.site-footer {
		padding-top: 36px;
		padding-bottom: 80px;
	}

	.newsletter-form {
		flex-direction: column;
	}

	.newsletter-form input[type='email'] {
		border-right: 1.5px solid #fff;
	}

	.brands-section {
		padding: 24px 0;
	}

	.brands-track {
		gap: 16px;
	}

	.brand-logo img {
		max-height: 40px;
		max-width: 110px;
	}

	.payment-icons {
		flex-direction: column;
		gap: 10px;
	}

	/* Mobile sticky CTA visible */
	.mobile-sticky-cta {
		display: block;
	}

	/* Back to top moves up above CTA */
	.back-to-top {
		bottom: 90px;
		right: 16px;
		width: 40px;
		height: 40px;
	}

	/* Product overlay hidden on touch devices (no hover) */
	.product-overlay {
		opacity: 0;
	}

	.goals-nav-section {
		padding: 30px 0;
	}

	.recommended-section {
		padding: 36px 0;
	}

	.page-hero {
		padding: 24px 0;
	}

	.page-content {
		padding: 30px 0 40px;
	}

	.content-heading {
		font-size: 22px;
	}

	.shipping-tabs-section {
		padding: 30px 0 40px;
	}

	.shipping-tabs-title {
		font-size: 17px;
	}

	.about-intro {
		padding: 36px 0 24px;
	}

	.about-intro h2 {
		font-size: 20px;
	}

	.about-lead {
		font-size: 15px;
	}

	.about-why {
		padding: 36px 0;
	}

	.about-why h2 {
		font-size: 20px;
	}

	.about-philosophy {
		padding: 36px 0;
	}

	.about-philosophy h2 {
		font-size: 20px;
	}

	.about-slogan {
		padding: 36px 0;
	}

	.slogan-inner h2 {
		font-size: 22px;
	}

	.slogan-tagline {
		font-size: 13px;
	}

	.about-community {
		padding: 36px 0;
	}

	.about-community h2 {
		font-size: 20px;
	}

	.community-lead {
		font-size: 14px;
	}

	.contact-section {
		padding: 36px 0 48px;
	}

	.contact-text h2 {
		font-size: 22px;
	}

	.contact-card {
		padding: 32px 24px;
	}

	.contact-form-section {
		padding: 0 0 48px;
	}

	.contact-form-wrapper {
		padding: 32px 20px;
	}

	.contact-form-title {
		font-size: 20px;
	}

	.form-row {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.contact-submit-btn {
		width: 100%;
		justify-content: center;
	}

	.blog-article {
		padding: 30px 0 40px;
	}

	.faq-section {
		padding: 30px 0 40px;
	}
}

@media (max-width: 380px) {
	.logo img {
		height: 36px;
	}

	.products-grid {
		gap: 8px;
	}

	.product-body {
		padding: 8px;
	}

	.product-body h3 {
		font-size: 12px;
	}

	.btn-add-cart {
		font-size: 10px;
		padding: 7px;
	}

	.categories-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 6px;
	}

	.category-card span {
		font-size: 9px;
	}

	.tab-btn {
		font-size: 10px;
		padding: 10px 6px;
	}
}

/* ==============================================
   NEW COMPONENTS
   ============================================== */

/* Preloader removed for faster perceived load time */

/* OLD COOKIE CONSENT removed — see bottom of file for modern redesign */

/* ===== MEGA MENU ===== */
.nav-list > li {
	position: static;
}

.has-mega > a {
	position: relative;
}

.nav-arrow {
	font-size: 9px;
	margin-left: 4px;
	display: inline-block;
	transition: transform 0.3s;
}

.has-mega.mega-open > a .nav-arrow {
	transform: rotate(180deg);
}

.has-mega.mega-open > a {
	background: #fff;
	color: #111;
}

.mega-menu {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border-top: 3px solid #111;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.18);
	padding: 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
	z-index: 500;
	pointer-events: none;
}

.has-mega.mega-open > .mega-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.mega-menu-inner {
	max-width: 1400px;
	margin: 0 auto;
	padding: 28px 20px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 32px;
}

.mega-menu-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 32px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 28px 20px;
}

.mega-col h4 {
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #111;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 2px solid #111;
}

.mega-col ul {
	list-style: none;
}

.mega-col ul li a {
	display: block;
	padding: 6px 0;
	font-size: 13px;
	font-weight: 500;
	color: #6b7280;
	transition: color 0.15s, padding-left 0.15s;
	white-space: nowrap;
}

.mega-col ul li a:hover {
	color: #111;
	padding-left: 6px;
	background: transparent;
}

/* Overlay za zatvaranje padajućeg menija – nevidljiv da ne pravi sivu pozadinu */
.mega-menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: transparent;
	z-index: 499;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.25s, visibility 0.25s;
}

.mega-menu-overlay.visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* ===== STAR RATINGS ===== */
.star-rating {
	display: flex;
	align-items: center;
	gap: 1px;
	margin-bottom: 6px;
}

.star-rating .star {
	color: #111;
	font-size: 12px;
	line-height: 1;
}

.star-rating .star.empty {
	color: #d1d5db;
}

.star-rating .rating-count {
	font-size: 11px;
	color: #9ca3af;
	margin-left: 6px;
}

/* ===== PRODUCT WISHLIST HEART ===== */
.product-wishlist {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 4;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #fff;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
	transition: transform 0.2s, box-shadow 0.2s;
}

.product-wishlist:hover {
	transform: scale(1.12);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}

.product-wishlist svg {
	width: 16px;
	height: 16px;
	stroke: #111;
	fill: none;
	stroke-width: 2;
	transition: fill 0.2s, stroke 0.2s;
}

.product-wishlist.active svg {
	fill: #dc2626;
	stroke: #dc2626;
}

/* ===== CART DRAWER ===== */
.cart-drawer-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 800;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}

.cart-drawer-overlay.open {
	opacity: 1;
	visibility: visible;
}

.cart-drawer {
	position: fixed;
	top: 0;
	right: -420px;
	width: 400px;
	max-width: 92vw;
	height: 100vh;
	height: 100dvh;
	background: #fff;
	z-index: 810;
	display: flex;
	flex-direction: column;
	transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: -8px 0 30px rgba(0, 0, 0, 0.15);
}

.cart-drawer.open {
	right: 0;
}

.cart-drawer-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	border-bottom: 1px solid #e5e7eb;
	flex-shrink: 0;
}

.cart-drawer-header h3 {
	font-size: 18px;
	font-weight: 800;
	text-transform: uppercase;
}

.cart-drawer-close {
	background: none;
	border: none;
	font-size: 28px;
	cursor: pointer;
	color: #111;
	line-height: 1;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	transition: background 0.15s;
}

.cart-drawer-close:hover {
	background: #f3f4f6;
}

.cart-drawer-body {
	flex: 1;
	overflow-y: auto;
	padding: 0;
}

.cart-empty {
	text-align: center;
	padding: 80px 24px;
}

.cart-empty svg {
	color: #d1d5db;
	margin-bottom: 16px;
}

.cart-empty p {
	font-size: 16px;
	font-weight: 600;
	color: #374151;
	margin-bottom: 4px;
}

.cart-empty span {
	font-size: 13px;
	color: #9ca3af;
}

.cart-item {
	display: flex;
	gap: 16px;
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.cart-item-img {
	width: 72px;
	height: 72px;
	background: #f3f4f6;
	border-radius: 8px;
	flex-shrink: 0;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cart-item-img img {
	max-width: 90%;
	max-height: 90%;
	object-fit: contain;
}

.cart-item-info {
	flex: 1;
}

.cart-item-name {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 2px;
	line-height: 1.3;
}

.cart-item-cat {
	font-size: 11px;
	color: #9ca3af;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.cart-item-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 10px;
}

.cart-item-qty {
	display: flex;
	align-items: center;
	gap: 0;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	overflow: hidden;
}

.cart-item-qty button {
	width: 28px;
	height: 28px;
	border: none;
	background: #fff;
	cursor: pointer;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
	color: #111;
}

.cart-item-qty button:hover {
	background: #f3f4f6;
}

.cart-item-qty span {
	font-size: 13px;
	font-weight: 700;
	min-width: 28px;
	text-align: center;
	border-left: 1px solid #e5e7eb;
	border-right: 1px solid #e5e7eb;
	height: 28px;
	line-height: 28px;
}

.cart-item-price {
	font-size: 15px;
	font-weight: 800;
}

.cart-item-remove {
	color: #9ca3af;
	font-size: 11px;
	cursor: pointer;
	background: none;
	border: none;
	margin-top: 6px;
	transition: color 0.15s;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.cart-item-remove:hover {
	color: #dc2626;
}

.cart-drawer-footer {
	padding: 20px 24px;
	border-top: 1px solid #e5e7eb;
	background: #fafafa;
	flex-shrink: 0;
}

.cart-subtotal {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6px;
}

.cart-subtotal-label {
	font-size: 14px;
	color: #6b7280;
}

.cart-subtotal-value {
	font-size: 20px;
	font-weight: 800;
}

.cart-shipping-note {
	font-size: 12px;
	color: #9ca3af;
	margin-bottom: 16px;
}

.cart-checkout-btn {
	width: 100%;
	padding: 14px;
	background: #111;
	color: #fff;
	border: none;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	border-radius: 8px;
	transition: background 0.15s;
}

.cart-checkout-btn:hover {
	background: #333;
}

.cart-continue {
	width: 100%;
	padding: 10px;
	background: none;
	border: none;
	font-size: 13px;
	font-weight: 600;
	color: #6b7280;
	cursor: pointer;
	margin-top: 8px;
	transition: color 0.15s;
}

.cart-continue:hover {
	color: #111;
}

/* ===== QUICK VIEW MODAL ===== */
.quickview-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	z-index: 900;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}

.quickview-overlay.open {
	opacity: 1;
	visibility: visible;
}

.quickview-modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.95);
	background: #fff;
	border-radius: 16px;
	z-index: 910;
	width: 92%;
	max-width: 820px;
	max-height: 90vh;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.3);
}

.quickview-modal.open {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, -50%) scale(1);
}

.quickview-close {
	position: absolute;
	top: 16px;
	right: 16px;
	background: #fff;
	border: 1px solid #e5e7eb;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	font-size: 20px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	transition: background 0.15s;
	color: #111;
}

.quickview-close:hover {
	background: #f3f4f6;
}

.quickview-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.quickview-img {
	background: #f3f4f6;
	min-height: 420px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px 0 0 16px;
	padding: 32px;
}

.quickview-img img {
	max-width: 100%;
	max-height: 340px;
	object-fit: contain;
}

.quickview-info {
	padding: 40px 32px;
}

.quickview-cat {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9ca3af;
	margin-bottom: 6px;
	display: block;
}

.quickview-info h2 {
	font-size: 22px;
	font-weight: 800;
	margin-bottom: 10px;
	line-height: 1.3;
}

.quickview-info .star-rating {
	margin-bottom: 16px;
}

.quickview-price-wrap {
	margin-bottom: 20px;
}

.quickview-price {
	font-size: 26px;
	font-weight: 800;
}

.quickview-price-old {
	font-size: 16px;
	color: #9ca3af;
	text-decoration: line-through;
	margin-right: 10px;
}

.quickview-desc {
	font-size: 14px;
	color: #6b7280;
	line-height: 1.7;
	margin-bottom: 24px;
}

.quickview-quantity {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
}

.quickview-quantity label {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.qty-control {
	display: flex;
	align-items: center;
	border: 2px solid #111;
	border-radius: 6px;
	overflow: hidden;
}

.qty-control button {
	width: 38px;
	height: 38px;
	border: none;
	background: #fff;
	font-size: 16px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
	color: #111;
}

.qty-control button:hover {
	background: #f3f4f6;
}

.qty-control span {
	width: 44px;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	border-left: 2px solid #111;
	border-right: 2px solid #111;
	height: 38px;
	line-height: 38px;
}

.quickview-add-cart {
	width: 100%;
	padding: 14px;
	background: #111;
	color: #fff;
	border: none;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	border-radius: 8px;
	transition: background 0.15s;
	margin-bottom: 10px;
}

.quickview-add-cart:hover {
	background: #333;
}

.quickview-wishlist-btn {
	width: 100%;
	padding: 12px;
	background: #fff;
	color: #111;
	border: 2px solid #e5e7eb;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	border-radius: 8px;
	transition: border-color 0.15s;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.quickview-wishlist-btn:hover {
	border-color: #111;
}

/* ===== BRAND MODAL ===== */
.brand-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	z-index: 900;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}

.brand-modal-overlay.open {
	opacity: 1;
	visibility: visible;
}

.brand-modal {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.95);
	background: #fff;
	border-radius: 16px;
	z-index: 910;
	width: 94%;
	max-width: 960px;
	max-height: 88vh;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.3);
	padding: 40px 36px 36px;
}

.brand-modal.open {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, -50%) scale(1);
}

.brand-modal-close {
	position: absolute;
	top: 16px;
	right: 16px;
	background: #fff;
	border: 1px solid #e5e7eb;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	font-size: 20px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	transition: background 0.15s;
	color: #111;
}

.brand-modal-close:hover {
	background: #f3f4f6;
}

.brand-modal-header {
	text-align: center;
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e7eb;
}

.brand-modal-logo {
	max-height: 48px;
	max-width: 160px;
	object-fit: contain;
	margin-bottom: 12px;
}

.brand-modal-header h2 {
	font-size: 22px;
	font-weight: 800;
	color: #111;
	margin: 0 0 6px;
}

.brand-modal-desc {
	font-size: 14px;
	line-height: 1.6;
	color: #6b7280;
	margin: 0 auto 12px;
	max-width: 680px;
}

.brand-modal-count {
	font-size: 13px;
	color: #9ca3af;
}

.brand-modal-products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}
.brand-modal-loading {
	grid-column: 1 / -1;
	text-align: center;
	padding: 40px 0;
}
.gs-spinner {
	display: inline-block;
	width: 28px; height: 28px;
	border: 3px solid #e5e7eb;
	border-top-color: #111;
	border-radius: 50%;
	animation: gs-spin 0.6s linear infinite;
}
@keyframes gs-spin { to { transform: rotate(360deg); } }

.brand-modal-product {
	display: flex; flex-direction: column;
	align-items: center;
	text-decoration: none; color: #111;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 12px;
	transition: transform 0.2s, box-shadow 0.2s;
	cursor: pointer;
}
.brand-modal-product:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}
.brand-modal-product-img {
	width: 100%; aspect-ratio: 1 / 1;
	display: flex; align-items: center; justify-content: center;
	margin-bottom: 8px;
}
.brand-modal-product-img img {
	max-width: 100%; max-height: 100%;
	object-fit: contain;
}
.brand-modal-product-name {
	font-size: 12px; font-weight: 600; text-align: center;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
	line-height: 1.3; margin-bottom: 4px;
}
.brand-modal-product-price {
	font-size: 13px; font-weight: 700; color: #111; text-align: center;
}
.brand-modal-product-price del { color: #999; font-size: 11px; font-weight: 400; }
.brand-modal-product-price ins { text-decoration: none; color: #dc2626; }

.brand-modal-products .brand-product-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	overflow: hidden;
	transition: transform 0.2s, box-shadow 0.2s;
	cursor: pointer;
}

.brand-modal-products .brand-product-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.brand-product-img {
	background: #f9fafb;
	height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	position: relative;
}

.brand-product-img img {
	max-width: 100%;
	max-height: 140px;
	object-fit: contain;
}

.brand-product-img .brand-product-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 3px 10px;
	border-radius: 4px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.brand-product-badge.badge-sale {
	background: #ef4444;
	color: #fff;
}

.brand-product-badge.badge-new {
	background: #10b981;
	color: #fff;
}

.brand-product-badge.badge-bestseller {
	background: #f59e0b;
	color: #fff;
}

.brand-product-body {
	padding: 16px;
}

.brand-product-body .brand-product-cat {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9ca3af;
	display: block;
	margin-bottom: 4px;
}

.brand-product-body h4 {
	font-size: 14px;
	font-weight: 700;
	color: #111;
	margin: 0 0 8px;
	line-height: 1.3;
}

.brand-product-body .star-rating {
	margin-bottom: 8px;
	font-size: 12px;
}

.brand-product-price {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
}

.brand-product-price .price-old {
	font-size: 13px;
	color: #9ca3af;
	text-decoration: line-through;
}

.brand-product-price .price-current {
	font-size: 16px;
	font-weight: 800;
	color: #111;
}

.brand-product-body .btn-add-cart {
	width: 100%;
	padding: 10px;
	background: #111;
	color: #fff;
	border: none;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	border-radius: 6px;
	transition: background 0.15s;
}

.brand-product-body .btn-add-cart:hover {
	background: #333;
}

.brand-modal-empty {
	text-align: center;
	padding: 60px 20px;
	color: #9ca3af;
	grid-column: 1 / -1;
}

.brand-modal-empty svg {
	margin-bottom: 16px;
	opacity: 0.4;
}

.brand-modal-empty p {
	font-size: 16px;
	font-weight: 600;
	color: #6b7280;
	margin: 0 0 4px;
}

.brand-modal-empty span {
	font-size: 13px;
}

@media (max-width: 768px) {
	.brand-modal {
		width: 96%;
		padding: 32px 20px 24px;
		max-height: 92vh;
	}

	.brand-modal-products {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.brand-product-img,
	.brand-modal-product-img {
		height: 140px;
		aspect-ratio: auto;
	}
}

@media (max-width: 480px) {
	.brand-modal-products {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ===== GOALS NAVIGATION ===== */
.goals-nav-section {
	padding: 50px 0;
	background: #fff;
}

.goals-nav-section .section-title {
	text-align: center;
	margin-bottom: 32px;
}

.goals-nav-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 16px;
}

.goal-nav-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 28px 12px 20px;
	background: #fafafa;
	border: 2px solid #e5e7eb;
	border-radius: 14px;
	text-align: center;
	transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
}

.goal-nav-card:hover {
	transform: translateY(-5px);
	border-color: #111;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
}

.goal-nav-icon {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #111;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.goal-nav-label {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #111;
	line-height: 1.3;
}

/* ===== CATEGORY CARDS WITH IMAGES ===== */
.category-icon-wrap {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 8px;
	background: #f3f4f6;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: background 0.2s;
}

.category-card:hover .category-icon-wrap {
	background: #e5e7eb;
}

.category-icon-wrap img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 10%;
	box-sizing: border-box;
}

.category-icon-wrap svg {
	width: 48px;
	height: 48px;
	color: #111;
}

/* ===== RASPRODAJA / AKCIJA CARD ===== */
.category-card--sale {
	background: linear-gradient(135deg, #e74c3c, #c0392b) !important;
	border-color: #c0392b !important;
	position: relative;
	overflow: visible;
}

.category-card--sale span {
	color: #fff !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em;
	display: block !important;
	font-size: 11px !important;
	text-transform: uppercase;
}

.category-card--sale:hover {
	border-color: #e74c3c;
	box-shadow: 0 12px 30px rgba(231, 76, 60, 0.35);
	transform: translateY(-3px) scale(1.03);
}

.category-icon-wrap--sale {
	background: rgba(255, 255, 255, 0.2);
	border: 2px solid rgba(255, 255, 255, 0.4);
}

.category-card--sale:hover .category-icon-wrap--sale {
	background: rgba(255, 255, 255, 0.3);
	border-color: rgba(255, 255, 255, 0.6);
}

.category-icon-wrap--sale svg {
	width: 52px;
	height: 52px;
}

@keyframes salePulse {
	0%, 100% { box-shadow: 0 4px 15px rgba(231, 76, 60, 0.2); }
	50% { box-shadow: 0 4px 25px rgba(231, 76, 60, 0.45); }
}

/* ===== ANIMATED COUNTERS ===== */
.counters-section {
	background: linear-gradient(135deg, #111 0%, #1a1a1a 100%);
	color: #fff;
	padding: 20px 0;
}

.counters-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	text-align: center;
}

.counter-item {
	padding: 4px 8px;
}

.counter-icon {
	margin-bottom: 4px;
}

.counter-icon svg {
	color: #fff;
	opacity: 0.5;
}

.counter-value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 0;
	margin-bottom: 2px;
}

.counter-number {
	font-size: 26px;
	font-weight: 900;
	line-height: 1;
}

.counter-suffix {
	font-size: 18px;
	font-weight: 900;
}

.counter-label {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9ca3af;
}

/* ===== RECOMMENDED / RECENTLY VIEWED ===== */
.recommended-section {
	padding: 60px 0;
	background: #fafafa;
}

.recommended-tabs {
	display: flex;
	gap: 0;
	margin-bottom: 28px;
	border-bottom: 2px solid #e5e7eb;
}

.rec-tab {
	padding: 12px 24px;
	background: none;
	border: none;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	color: #9ca3af;
	position: relative;
	transition: color 0.15s;
}

.rec-tab.active {
	color: #111;
}

.rec-tab.active::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 2px;
	background: #111;
}

.rec-tab:hover {
	color: #111;
}

.rec-panel {
	display: none;
}

.rec-panel.active {
	display: block;
}

/*
 * Početna: „Izdvojeno za vas“ + „Istaknuti proizvodi“.
 * - Grid: više kartica u redu (ne jedna široka kolona).
 * - Slika: object-fit contain (bez crop-a) — SAMO link ka proizvodu, ne dugme „Dodaj u korpu“
 *   (li.product > a pogađa oba <a> i lomi layout + razbukta dugme).
 */
.recommended-section .woocommerce ul.products,
#main-content .products-section .woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 20px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	float: none !important;
}

.recommended-section .woocommerce ul.products li.product,
#main-content .products-section .woocommerce ul.products li.product {
	min-width: 0 !important;
	width: 100% !important;
	float: none !important;
}

.recommended-section .woocommerce ul.products li.product a.woocommerce-loop-product__link,
.recommended-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
#main-content .products-section .woocommerce ul.products li.product a.woocommerce-loop-product__link,
#main-content .products-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	text-decoration: none !important;
	min-height: 0 !important;
	background: linear-gradient(180deg, #fafafa 0%, #f3f4f6 100%) !important;
	overflow: hidden !important;
}

.recommended-section .woocommerce ul.products li.product a.woocommerce-loop-product__link img,
.recommended-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
#main-content .products-section .woocommerce ul.products li.product a.woocommerce-loop-product__link img,
#main-content .products-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: 220px !important;
	margin: 0 auto !important;
	object-fit: contain !important;
	object-position: center !important;
	padding: 16px !important;
	box-sizing: border-box !important;
	display: block !important;
}

/* Kompaktnije dugme ispod kartice */
.recommended-section .woocommerce ul.products li.product a.button,
.recommended-section .woocommerce ul.products li.product a.add_to_cart_button,
#main-content .products-section .woocommerce ul.products li.product a.button,
#main-content .products-section .woocommerce ul.products li.product a.add_to_cart_button {
	min-height: 0 !important;
	width: calc(100% - 24px) !important;
	margin: 0 12px 12px !important;
	padding: 9px 12px !important;
	font-size: 11px !important;
	line-height: 1.25 !important;
	border-radius: 8px !important;
}

@media (max-width: 1024px) {
	.recommended-section .woocommerce ul.products,
	#main-content .products-section .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}
}

@media (max-width: 768px) {
	.recommended-section .woocommerce ul.products li.product a.woocommerce-loop-product__link img,
	.recommended-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
	#main-content .products-section .woocommerce ul.products li.product a.woocommerce-loop-product__link img,
	#main-content .products-section .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
		max-height: 200px !important;
		padding: 12px !important;
	}
}

/* ===== FAQ ACCORDION ===== */
.faq-section {
	padding: 50px 0 70px;
}

.faq-section .faq-section-title {
	text-align: center;
	margin-bottom: 12px;
}

.faq-section .faq-section-subtitle {
	text-align: center;
	margin: 0 auto 40px;
}

.faq-list {
	max-width: 800px;
	margin: 0 auto;
}

.faq-item {
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	margin-bottom: 12px;
	overflow: hidden;
	transition: box-shadow 0.2s;
	background: #fff;
}

.faq-item.open {
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.faq-question {
	width: 100%;
	padding: 20px 24px;
	background: #fff;
	border: none;
	text-align: left;
	font-size: 15px;
	font-weight: 700;
	color: #111;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	transition: background 0.15s;
	line-height: 1.4;
}

.faq-question:hover {
	background: #fafafa;
}

.faq-toggle {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 2px solid #111;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 400;
	transition: transform 0.3s, background 0.3s, color 0.3s;
	color: #111;
}

.faq-item.open .faq-toggle {
	transform: rotate(45deg);
	background: #111;
	color: #fff;
}

.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

.faq-answer-inner {
	padding: 0 24px 24px;
	font-size: 14px;
	color: #6b7280;
	line-height: 1.8;
}

/* ===== WIDE PROMO BANNER ===== */
.wide-promo {
	position: relative;
	overflow: hidden;
}

.wide-promo img {
	width: 100%;
	height: auto;
	display: block;
}

/* ===== WISHLIST COUNT IN HEADER ===== */
.wishlist-count {
	display: none;
}
.wishlist-count.has-items {
	display: flex;
}

/* ===== TOAST NOTIFICATION ===== */
.toast {
	position: fixed;
	bottom: 80px;
	left: 50%;
	transform: translateX(-50%) translateY(20px);
	background: #111;
	color: #fff;
	padding: 14px 28px;
	border-radius: 10px;
	font-size: 13px;
	font-weight: 600;
	z-index: 9500;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, transform 0.3s, visibility 0.3s;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
	white-space: nowrap;
}

.toast.visible {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

/* ===== NEW RESPONSIVE ADDITIONS ===== */
@media (max-width: 992px) {
	.mega-menu {
		position: static;
		transform: none;
		border: none;
		box-shadow: none;
		border-radius: 0;
		padding: 0;
		background: #1a1a1a;
		border-top: none;
		display: none;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.has-mega.mobile-open > .mega-menu {
		display: block;
	}

	.has-mega.mega-open > .mega-menu {
		display: block;
		opacity: 1;
		visibility: visible;
	}

	.mega-menu-grid {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 0;
		max-width: none;
	}

	.mega-col {
		border-bottom: 1px solid #333;
	}

	.mega-col h4 {
		padding: 10px 24px;
		margin: 0;
		border-bottom: 1px solid #333;
		color: #9ca3af;
		font-size: 11px;
	}

	.mega-col ul li a {
		padding: 10px 24px 10px 40px;
		border-bottom: 1px solid #222;
		color: #aaa;
		font-size: 13px;
	}

	.mega-col ul li a:hover {
		color: #fff;
		background: #222;
	}

	.nav-arrow {
		display: inline-block;
	}

	.has-mega.mobile-open > a .nav-arrow {
		transform: rotate(180deg);
	}

	.mega-menu-overlay {
		display: none !important;
	}

	.goals-nav-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.counters-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.quickview-grid {
		grid-template-columns: 1fr;
	}

	.quickview-img {
		min-height: 260px;
		border-radius: 16px 16px 0 0;
	}

	.quickview-info {
		padding: 28px 24px;
	}
}

@media (max-width: 600px) {
	.goals-nav-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	.goal-nav-card {
		padding: 20px 10px 16px;
	}

	.goal-nav-icon {
		width: 48px;
		height: 48px;
	}

	.goal-nav-icon svg {
		width: 22px;
		height: 22px;
	}

	.counters-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.counter-number {
		font-size: 22px;
	}

	.counter-suffix {
		font-size: 15px;
	}

	.quickview-info h2 {
		font-size: 18px;
	}

	.quickview-price {
		font-size: 22px;
	}

	/* old cookie consent mobile rule removed */

	.recommended-tabs {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		scroll-snap-type: none;
	}

	.rec-tab {
		padding: 10px 16px;
		font-size: 11px;
		white-space: nowrap;
	}

	.faq-question {
		font-size: 14px;
		padding: 16px 18px;
	}

	.faq-answer-inner {
		padding: 0 18px 18px;
	}
}

/* =============================================
   GLOBAL SEARCH DROPDOWN
   ============================================= */
.header-search {
	position: relative;
}

.search-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 2px solid #111;
	border-top: none;
	border-radius: 0 0 8px 8px;
	max-height: 460px;
	overflow-y: auto;
	z-index: 9999;
	box-shadow: 0 12px 40px rgba(0,0,0,.15);
	display: none;
	scrollbar-width: thin;
}

.search-dropdown.visible {
	display: block;
	animation: searchSlideDown .2s ease;
}

@keyframes searchSlideDown {
	from { opacity: 0; transform: translateY(-6px); }
	to { opacity: 1; transform: translateY(0); }
}

.search-group {
	border-bottom: 1px solid #eee;
}

.search-group:last-child {
	border-bottom: none;
}

.search-group-title {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 16px 6px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #888;
}

.search-group-count {
	background: #f0f0f0;
	padding: 1px 7px;
	border-radius: 10px;
	font-size: 10px;
	margin-left: 4px;
}

.search-result-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	text-decoration: none;
	color: #111;
	transition: background .12s;
	cursor: pointer;
}

.search-result-item:hover,
.search-result-item.active {
	background: #f5f5f5;
}

.search-result-img {
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	background: #f9f9f9;
	border-radius: 6px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.search-result-img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 4px;
}

.search-result-info {
	flex: 1;
	min-width: 0;
}

.search-result-name {
	display: block;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.search-result-name mark {
	background: #fff3cd;
	color: #111;
	padding: 0 1px;
	border-radius: 2px;
}

.search-result-cat,
.search-result-meta {
	display: block;
	font-size: 11px;
	color: #888;
	margin-top: 2px;
}

.search-result-price {
	flex-shrink: 0;
	text-align: right;
	font-size: 13px;
	font-weight: 700;
}

.search-result-oldprice {
	display: block;
	font-size: 11px;
	color: #999;
	text-decoration: line-through;
	font-weight: 400;
}

.search-no-results {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 28px 20px;
	text-align: center;
	color: #888;
	font-size: 14px;
}

/* =============================================
   PRODUCT FILTER & SORT TOOLBAR
   ============================================= */
.product-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-bottom: 24px;
	padding: 16px 20px;
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 10px;
}

.product-toolbar .filter-group {
	display: flex;
	align-items: center;
	gap: 6px;
}

.product-toolbar label {
	font-size: 12px;
	font-weight: 600;
	color: #555;
	white-space: nowrap;
}

.product-toolbar select,
.product-toolbar .filter-input {
	padding: 8px 12px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 13px;
	background: #fff;
	color: #111;
	cursor: pointer;
	transition: border-color .15s;
	-webkit-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 28px;
}

.product-toolbar select:hover,
.product-toolbar select:focus,
.product-toolbar .filter-input:focus {
	border-color: #111;
	outline: none;
}

.product-toolbar .filter-input {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='11' r='8' stroke='%23999' stroke-width='2'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65' stroke='%23999' stroke-width='2'/%3E%3C/svg%3E");
	background-position: right 10px center;
	padding-right: 32px;
	min-width: 160px;
}

.product-toolbar .filter-sep {
	width: 1px;
	height: 28px;
	background: #ddd;
	margin: 0 4px;
}

.product-toolbar .product-count {
	margin-left: auto;
	font-size: 12px;
	color: #888;
	font-weight: 500;
}

/* =============================================
   BLOG FILTER TOOLBAR
   ============================================= */
.blog-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 24px;
	padding: 14px 20px;
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 10px;
}

.blog-filter-btn {
	padding: 7px 16px;
	border: 1px solid #ddd;
	border-radius: 20px;
	background: #fff;
	font-size: 12px;
	font-weight: 600;
	color: #555;
	cursor: pointer;
	transition: all .15s;
}

.blog-filter-btn:hover {
	border-color: #111;
	color: #111;
}

.blog-filter-btn.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

.blog-toolbar .blog-toolbar-right {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 8px;
}

.blog-toolbar select {
	padding: 7px 12px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 12px;
	background: #fff;
	color: #111;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-right: 28px;
}

.blog-toolbar .blog-count {
	font-size: 12px;
	color: #888;
}

/* =============================================
   FAQ SEARCH
   ============================================= */
.faq-search-wrap {
	max-width: 500px;
	margin: 0 auto 28px;
	position: relative;
}

.faq-search-wrap input {
	width: 100%;
	padding: 12px 18px 12px 44px;
	border: 2px solid #111;
	border-radius: 8px;
	font-size: 14px;
	background: #fff;
	transition: border-color .15s;
}

.faq-search-wrap input:focus {
	outline: none;
	border-color: #333;
}

.faq-search-wrap .faq-search-icon {
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #999;
	pointer-events: none;
}

.faq-count {
	text-align: center;
	font-size: 12px;
	color: #888;
	margin-bottom: 16px;
	display: none;
}

/* =============================================
   FILTER ANIMATIONS & STATES
   ============================================= */
.filter-animate {
	animation: filterFadeIn .3s ease;
}

@keyframes filterFadeIn {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

.filter-no-results {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding: 48px 20px;
	text-align: center;
	color: #888;
}

.filter-no-results p {
	font-size: 15px;
	font-weight: 500;
}

.filter-reset-btn {
	padding: 10px 24px;
	border: 2px solid #111;
	border-radius: 6px;
	background: transparent;
	color: #111;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all .15s;
}

.filter-reset-btn:hover {
	background: #111;
	color: #fff;
}

/* =============================================
   FILTER & SEARCH RESPONSIVE
   ============================================= */
@media (max-width: 768px) {
	.product-toolbar {
		padding: 12px 14px;
		gap: 8px;
	}

	.product-toolbar .filter-group {
		flex: 1 1 calc(50% - 4px);
	}

	.product-toolbar select,
	.product-toolbar .filter-input {
		width: 100%;
		font-size: 12px;
		padding: 7px 10px;
	}

	.product-toolbar .filter-sep {
		display: none;
	}

	.product-toolbar .product-count {
		flex-basis: 100%;
		text-align: center;
		margin-left: 0;
	}

	.product-toolbar label {
		display: none;
	}

	.blog-toolbar {
		padding: 10px 12px;
		gap: 6px;
	}

	.blog-filter-btn {
		padding: 6px 12px;
		font-size: 11px;
	}

	.blog-toolbar .blog-toolbar-right {
		flex-basis: 100%;
		margin-left: 0;
		justify-content: space-between;
		margin-top: 4px;
	}

	.search-dropdown {
		max-height: 70vh;
	}

	.search-result-item {
		padding: 8px 12px;
		gap: 10px;
	}

	.search-result-img {
		width: 36px;
		height: 36px;
	}
}

/* =============================================
   SHOPTIMIZER COMPATIBILITY OVERRIDES
   Forces custom GymSuplementi styles over parent
   theme defaults that override display/layout.
   ============================================= */

/* --- Scoped resets (replaces removed global resets) --- */
#main-content,
#main-content *,
#main-content *::before,
#main-content *::after {
	box-sizing: border-box;
}

#main-content {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

#main-content > section {
	margin: 0;
}

#main-content .hero-slider + .trust-badges,
#main-content .hero-slider + .section,
#main-content .trust-badges + .section {
	margin-top: 0 !important;
}
/* Bez belog prostora između slidera i kategorija */
#main-content .trust-badges {
	padding: 12px 0 !important;
	border-bottom: none !important;
	margin-bottom: 0 !important;
}
#main-content .categories-section {
	padding-top: 24px !important;
	padding-bottom: 40px !important;
	margin-top: 0 !important;
}

#main-content a,
#main-content button {
	touch-action: manipulation;
	cursor: pointer;
}

#main-content a {
	color: inherit;
	text-decoration: none;
}

#main-content ul,
#main-content ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

#main-content img {
	max-width: 100%;
	height: auto;
	display: block;
}

#main-content svg {
	flex-shrink: 0;
}

#main-content h1,
#main-content h2,
#main-content h3,
#main-content h4,
#main-content h5,
#main-content h6,
#main-content p {
	margin-top: 0;
}
/* Font kao na preview-u – sve sekcije nasleđuju */
.site-header,
.main-nav,
.topbar,
.site-footer,
#main-content {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

/* --- Container inside full-width main --- */
#main-content > .section .container,
#main-content > section .container,
#main-content .container {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
}

/* --- Hero slider force (opacity fade approach matching JS) --- */
#main-content .hero-slider,
#main-content .hero-slider .slider-track,
#main-content .hero-slider .slide,
#main-content .hero-slider .slide-link {
	touch-action: pan-y !important;
}
#main-content .hero-slider {
	position: relative;
	width: 100%;
	overflow: clip;
	background: #000;
}

#main-content .slider-track {
	position: relative;
	width: 100%;
	aspect-ratio: 2.4 / 1;
	overflow: clip;
	background: #000;
}

#main-content .slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.6s ease;
}

#main-content .slide.active {
	opacity: 1;
	z-index: 1;
}

#main-content .slide-link {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	cursor: default;
}

#main-content .slide-bg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	-webkit-user-drag: none;
	user-select: none;
	touch-action: pan-y;
}

#main-content a.slide-cta-brutal,
#main-content .slide-cta-brutal {
	position: absolute;
	bottom: 48px;
	right: 48px;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 16px 28px;
	background: rgba(255, 102, 0, 0.92);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 1px;
	border: 2px solid rgba(255,255,255,0.25);
	border-radius: 6px;
	z-index: 2;
	cursor: pointer;
	text-decoration: none;
	touch-action: manipulation;
	box-shadow: 0 4px 24px rgba(255, 102, 0, 0.5), 0 2px 12px rgba(0,0,0,0.3);
	animation: brutalPulse 2.5s ease-in-out infinite;
}

#main-content a.slide-cta-brutal.slide-cta--serious,
#main-content .slide-cta-brutal.slide-cta--serious {
	background: #0a0a0a !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35) !important;
	animation: none !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	letter-spacing: 0.14em !important;
	padding: 14px 28px !important;
}

#main-content .slide-cta-brutal.slide-cta--serious .cta-brutal-bg {
	display: none !important;
}

#main-content .slide-cta-brutal.slide-cta--serious:hover {
	background: #141414 !important;
	border-color: rgba(255, 255, 255, 0.4) !important;
	animation: none !important;
}

#main-content .slider-dots {
	display: flex;
	justify-content: center;
	gap: 8px;
	position: absolute;
	bottom: 18px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

#main-content .dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 2px solid rgba(255,255,255,.6);
	background: transparent;
	cursor: pointer;
	padding: 0;
	transition: background 0.2s;
}

#main-content .dot.active {
	background: #fff;
}

#main-content .slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	background: rgba(255,255,255,.85);
	border: none;
	font-size: 32px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #111;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	transition: background 0.15s;
}

#main-content .slider-arrow:hover {
	background: #fff;
}

#main-content .slider-prev { left: 16px; }
#main-content .slider-next { right: 16px; }

/* --- Trust badges grid force --- */
#main-content .trust-badges {
	padding: 20px 0;
}

#main-content .badges-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 20px;
	align-items: center;
}

#main-content .badge-item {
	display: flex !important;
	align-items: center;
	gap: 10px;
	font-size: 13px;
}

#main-content .badge-item svg {
	width: 20px;
	height: 20px;
	min-width: 20px;
}

/* --- Categories grid force --- */
#main-content .categories-section {
	padding: 60px 0;
	background: #fafafa;
}

#main-content .categories-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important;
	gap: 16px;
	align-items: start;
}

#main-content .category-card {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 8px 8px 14px;
	background: #fff;
	border-radius: 10px;
	text-decoration: none;
	color: #111;
	border: 1px solid #e5e7eb;
	transition: box-shadow 0.18s, border-color 0.18s;
}

#main-content .category-card:hover {
	box-shadow: 0 4px 16px rgba(0,0,0,.08);
	border-color: #111;
}

#main-content .category-icon-wrap {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 8px;
	background: #f3f4f6;
	display: flex !important;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: background 0.2s;
}

#main-content .category-icon-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#main-content .category-icon-wrap svg {
	width: 48px;
	height: 48px;
}

#main-content .category-card--sale {
	background: linear-gradient(135deg, #e74c3c, #c0392b) !important;
	border-color: #c0392b !important;
}
#main-content .category-card--sale span {
	color: #fff !important;
	display: block !important;
	font-size: 11px !important;
	text-transform: uppercase;
	font-weight: 700 !important;
}

#main-content .category-icon-wrap--sale {
	background: rgba(255,255,255,0.2);
}

#main-content .category-icon-wrap--sale svg {
	width: 48px;
	height: 48px;
}

#main-content .category-placeholder {
	font-size: 32px;
	font-weight: 800;
	color: #bbb;
	text-transform: uppercase;
}

/* --- Category showcase force --- */
#main-content .category-showcase .showcase-grid {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

/* --- Brands grid force --- */
#main-content .brands-section {
	padding: 36px 0;
	background: #fafafa;
	border-top: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
}

#main-content .brands-grid {
	display: flex !important;
	flex-wrap: wrap;
	gap: 32px;
	justify-content: center;
	align-items: center;
}

#main-content .brand-logo img {
	height: 38px;
	width: auto;
	object-fit: contain;
}

/* --- Goals grid force --- */
#main-content .goals-nav-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 16px;
}

#main-content .goal-card {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 24px 16px;
	background: #fafafa;
	border-radius: 10px;
	text-decoration: none;
	color: #111;
	border: 1px solid #e5e7eb;
	text-align: center;
	transition: box-shadow 0.18s, border-color 0.18s;
}

/* --- Products section force --- */
#main-content .products-section {
	padding: 60px 0;
}

/* --- Recommended tabs force --- */
#main-content .rec-tabs {
	display: flex !important;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 28px;
}

#main-content .rec-tab-btn {
	padding: 8px 20px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	transition: background 0.15s, border-color 0.15s;
}

#main-content .rec-tab-btn.active {
	background: #111;
	color: #fff;
	border-color: #111;
}

/* --- Reviews grid force --- */
#main-content .reviews-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

#main-content .review-card {
	background: #fafafa;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 24px;
}

/* --- Blog grid force --- */
#main-content .blog-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

#main-content .blog-card {
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	background: #fff;
	transition: box-shadow 0.18s;
}

#main-content .blog-card-body {
	padding: 16px;
}

/* --- Counters grid force --- */
#main-content .counters-section {
	padding: 50px 0;
	background: #111;
	color: #fff;
}

#main-content .counters-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	text-align: center;
}

/* --- Why section grid force --- */
#main-content .why-section {
	padding: 60px 0;
	background: #1a1a1a;
	color: #fff;
}

#main-content .why-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

#main-content .why-card {
	background: #222;
	border-radius: 10px;
	padding: 28px 20px;
	text-align: center;
}

/* --- Newsletter force --- */
#main-content .newsletter-section {
	padding: 50px 0;
	background: #111;
	color: #fff;
}

#main-content .newsletter-inner {
	display: flex !important;
	align-items: center;
	gap: 40px;
}

#main-content .newsletter-form {
	display: flex !important;
	gap: 0;
	flex-shrink: 0;
}

#main-content .newsletter-form input[type="email"] {
	padding: 12px 16px;
	border: 1px solid #444;
	border-radius: 8px 0 0 8px;
	background: #222;
	color: #fff;
	font-size: 14px;
	min-width: 260px;
}

#main-content .newsletter-form button {
	padding: 12px 24px;
	background: #fff;
	color: #111;
	border: none;
	border-radius: 0 8px 8px 0;
	font-weight: 700;
	cursor: pointer;
	font-size: 14px;
}

/* --- Section base with higher specificity --- */
#main-content .section {
	padding: 60px 0;
}

#main-content .section-title {
	font-size: 28px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	margin-bottom: 8px;
}

#main-content .section-subtitle {
	color: #6b7280;
	margin-bottom: 32px;
}

/* --- Responsive with higher specificity --- */
@media (max-width: 900px) {
	#main-content .badges-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	#main-content .showcase-grid {
		grid-template-columns: 1fr !important;
	}

	#main-content .why-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	#main-content .reviews-grid,
	#main-content .blog-grid {
		grid-template-columns: 1fr !important;
	}

	#main-content .counters-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	#main-content .newsletter-inner {
		flex-direction: column;
		text-align: center;
	}
}

@media (max-width: 600px) {
	/* Trust badges u jednom redu na telefonu */
	#main-content .trust-badges {
		padding: 10px 8px !important;
	}
	#main-content .trust-badges .container {
		padding-left: 8px;
		padding-right: 8px;
	}
	#main-content .badges-grid {
		grid-template-columns: repeat(4, 1fr) !important;
		gap: 6px !important;
		align-items: start;
	}
	#main-content .badge-item {
		flex-direction: column !important;
		align-items: center !important;
		text-align: center;
		gap: 4px !important;
		padding: 0 !important;
		min-width: 0;
	}
	#main-content .badge-item svg {
		width: 18px !important;
		height: 18px !important;
		min-width: 18px;
	}
	#main-content .badge-item strong {
		font-size: 9px !important;
		line-height: 1.2;
	}
	#main-content .badge-item span {
		font-size: 8px !important;
		line-height: 1.2;
	}

	/* Na vrlo uskim ekranima – jedan red, horizontalni skrol ako treba */
	@media (max-width: 380px) {
		#main-content .trust-badges .badges-grid {
			display: flex !important;
			flex-wrap: nowrap !important;
			gap: 10px !important;
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			overscroll-behavior-x: contain;
			padding-bottom: 4px;
		}
		#main-content .trust-badges .badge-item {
			flex: 0 0 auto;
			min-width: 72px;
		}
	}

	#main-content .categories-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 6px;
	}

	#main-content .goals-nav-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	#main-content .why-grid {
		grid-template-columns: 1fr !important;
	}

	#main-content .counters-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	#main-content .section-title {
		font-size: 20px;
	}

	#main-content .section {
		padding: 36px 0;
	}

	#main-content a.slide-cta-brutal,
	#main-content .slide-cta-brutal {
		bottom: 14px;
		right: 14px;
	}

	#main-content .slider-arrow {
		width: 36px;
		height: 36px;
		font-size: 24px;
	}
}

/* --- Page template overrides (FAQ, Dostava, Kontakt, etc.) --- */
#main-content .page-hero {
	background: #f5f5f5;
	padding: 40px 0;
	text-align: center;
	border-bottom: 1px solid #e5e7eb;
}

#main-content .page-hero-title {
	font-size: 28px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
}

#main-content .content-layout {
	display: grid !important;
	grid-template-columns: 220px 1fr;
	gap: 40px;
	align-items: start;
}

#main-content .sidebar-nav li a {
	display: block;
	padding: 10px 16px;
	border-radius: 6px;
	color: #374151;
	font-size: 14px;
	transition: background 0.15s;
}

#main-content .sidebar-nav li a:hover,
#main-content .sidebar-nav li a.active {
	background: #f3f4f6;
	color: #111;
	font-weight: 600;
}

#main-content .faq-list {
	max-width: 800px;
	margin: 0 auto;
}

#main-content .faq-question {
	display: flex !important;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 18px 0;
	border: none;
	background: none;
	cursor: pointer;
	font-size: 15px;
	font-weight: 600;
	text-align: left;
	border-bottom: 1px solid #e5e7eb;
}

#main-content .faq-answer {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.3s ease;
	padding: 0 0 0 0;
}

#main-content .faq-item.open .faq-answer {
	max-height: 500px;
	padding-bottom: 18px;
}

@media (max-width: 992px) {
	#main-content .content-layout {
		grid-template-columns: 1fr !important;
		gap: 20px;
	}
}

/* --- Footer overrides (prevent Shoptimizer conflict) --- */
footer.site-footer {
	background: #000 !important;
	color: #e5e7eb !important;
	padding-top: 60px !important;
}

footer.site-footer,
footer.site-footer *,
footer.site-footer *::before,
footer.site-footer *::after {
	box-sizing: border-box;
}

footer.site-footer a {
	color: inherit;
	text-decoration: none;
}

footer.site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

footer.site-footer img {
	max-width: 100%;
	height: auto;
	display: block;
}

footer.site-footer .footer-grid {
	display: grid !important;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 40px;
	padding-bottom: 40px;
	max-width: 1400px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
}

footer.site-footer .footer-col h4 {
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 16px;
	color: #fff;
}

footer.site-footer .footer-col ul li {
	margin-bottom: 8px;
}

footer.site-footer .footer-col ul li a {
	color: #9ca3af;
	font-size: 14px;
	transition: color 0.15s;
}

footer.site-footer .footer-col ul li a:hover {
	color: #fff;
}

footer.site-footer .footer-logo img {
	height: 60px;
	width: auto;
	margin-bottom: 14px;
	background: transparent;
	mix-blend-mode: screen;
}

footer.site-footer .footer-about {
	color: #9ca3af;
	font-size: 13px;
	line-height: 1.6;
	margin-bottom: 16px;
}

footer.site-footer .footer-social {
	display: flex;
	gap: 12px;
}

footer.site-footer .footer-social a {
	color: #9ca3af;
	transition: color 0.15s;
}

footer.site-footer .footer-social a:hover {
	color: #fff;
}

footer.site-footer .footer-payments {
	border-top: 1px solid #222;
	padding: 20px 0;
}

footer.site-footer .footer-payments-inner {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 24px;
}

footer.site-footer .payment-icons {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
}

footer.site-footer .payment-icon {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #9ca3af;
	font-size: 12px;
}

footer.site-footer .footer-bottom {
	border-top: 1px solid #222;
	padding: 20px 0;
	text-align: center;
	font-size: 12px;
	color: #6b7280;
}

@media (max-width: 900px) {
	footer.site-footer .footer-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 600px) {
	footer.site-footer .footer-grid {
		grid-template-columns: 1fr !important;
		gap: 28px;
	}

	footer.site-footer {
		padding-top: 36px !important;
	}
}

/* =============================================
   WOOCOMMERCE PAGE STYLES
   Styling for shop, category, product pages
   when using the custom header/footer.
   ============================================= */

.gs-woo-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 30px 24px 60px;
}

.gs-woo-container *,
.gs-woo-container *::before,
.gs-woo-container *::after {
	box-sizing: border-box;
}

.gs-woo-container {
	max-width: 1400px !important;
	margin: 0 auto !important;
	padding: 24px 24px 60px !important;
}

.gs-woo-container img {
	max-width: 100%;
	height: auto;
}

.gs-woo-container .woocommerce-breadcrumb {
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 20px;
	padding: 12px 0;
	border-bottom: 1px solid #e5e7eb;
}

.gs-woo-container .woocommerce-breadcrumb a {
	color: #6b7280;
	text-decoration: none;
	transition: color 0.15s;
}

.gs-woo-container .woocommerce-breadcrumb a:hover {
	color: #111;
}

/* Shop/Category archive – jedan red: naslov + broj rezultata + sortiranje */
.gs-woo-container .woocommerce {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
	padding: 16px 0 32px;
}

.gs-woo-container .woocommerce .woocommerce-notices-wrapper {
	flex: 1 1 100%;
	width: 100%;
	order: -1;
}

.gs-woo-container .woocommerce .woocommerce-products-header {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	order: 0;
}

.gs-woo-container .woocommerce .woocommerce-result-count {
	flex: 0 0 auto;
	margin: 0;
	font-size: 13px;
	color: #6b7280;
	order: 1;
}

.gs-woo-container .woocommerce .woocommerce-ordering {
	flex: 0 0 auto;
	order: 2;
}

.gs-woo-container .woocommerce ul.products {
	flex: 1 1 100%;
	width: 100%;
	margin-top: 8px;
	order: 10;
	padding-top: 24px;
	border-top: 1px solid #e5e7eb;
}

.gs-woo-container .woocommerce-result-count {
	font-size: 13px;
	color: #6b7280;
}

.gs-woo-container .woocommerce-ordering select {
	padding: 8px 12px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 14px;
}

.gs-woo-container .page-title,
.gs-woo-container .woocommerce-products-header__title {
	font-size: 22px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	margin: 0;
	color: #111;
}

/* Glavna prodavnica: sakrij veliki naslov (npr. eng. demo tekst iz Shop stranice) – duplikat uz PHP filter */
body.woocommerce-shop .gs-woo-container .woocommerce-products-header__title {
	display: none !important;
}

/* --- Product grid (category/shop) – ULTRA MODERN --- */
/*
 * WooCommerce dodaje ul.products::before i ::after (clearfix za float).
 * Kada je ul.products display:grid, ta pseudo deca postaju prve ćelije mreže
 * → prazno mesto u prvoj koloni. Moraju biti uklonjena sa grid layouta.
 */
.woocommerce ul.products::before,
.woocommerce ul.products::after {
	content: none !important;
	display: none !important;
}

.gs-woo-container ul.products,
body .gs-woo-container .woocommerce ul.products,
body .woocommerce .gs-woo-container ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
	gap: 28px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 24px 0 0 !important;
	float: none !important;
	width: 100% !important;
}

.gs-woo-container ul.products li.product,
body .gs-woo-container ul.products li.product,
body .woocommerce ul.products li.product {
	border: none !important;
	border-radius: 20px !important;
	overflow: hidden !important;
	background: #fff !important;
	box-shadow: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.06) !important;
	transition: all 0.3s cubic-bezier(.4,0,.2,1) !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
	width: 100% !important;
	float: none !important;
	position: relative !important;
}

.gs-woo-container ul.products li.product:hover {
	box-shadow: 0 20px 40px rgba(0,0,0,.1), 0 4px 12px rgba(0,0,0,.05) !important;
	transform: translateY(-4px) !important;
}

.gs-woo-container ul.products li.product > a {
	position: relative !important;
	overflow: hidden !important;
	display: block !important;
}

.gs-woo-container ul.products li.product a img,
body .woocommerce ul.products li.product a img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	max-width: 100% !important;
	object-fit: contain !important;
	aspect-ratio: 1 / 1;
	padding: 8px !important;
	box-sizing: border-box !important;
	transition: transform 0.4s cubic-bezier(.4,0,.2,1) !important;
}

.gs-woo-container ul.products li.product:hover a img {
	transform: scale(1.06) !important;
}

/* Bedž akcije – ugao, pill, blaga senka (klasa gs-onsale-badge iz functions.php) */
.woocommerce span.onsale.gs-onsale-badge,
.gs-woo-container ul.products li.product .onsale,
body .woocommerce ul.products li.product span.onsale,
.woocommerce div.product span.onsale {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	margin: 0 !important;
	min-width: 0 !important;
	min-height: 0 !important;
	width: auto !important;
	max-width: calc(100% - 24px) !important;
	background: linear-gradient(145deg, #f87171 0%, #dc2626 45%, #b91c1c 100%) !important;
	color: #fff !important;
	padding: 6px 12px !important;
	border-radius: 999px !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	font-family: inherit !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	line-height: 1.2 !important;
	z-index: 5 !important;
	text-align: center !important;
	border: 1px solid rgba(255, 255, 255, 0.35) !important;
	box-shadow: 0 4px 16px rgba(220, 38, 38, 0.35), 0 1px 0 rgba(255, 255, 255, 0.2) inset !important;
	backdrop-filter: blur(4px);
	pointer-events: none;
}

.gs-woo-container ul.products li.product .woocommerce-loop-product__title,
body .woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 14px !important;
	font-weight: 600 !important;
	padding: 18px 18px 6px !important;
	margin: 0 !important;
	white-space: normal !important;
	word-break: break-word !important;
	color: #1f2937 !important;
	line-height: 1.4 !important;
}

.gs-woo-container ul.products li.product .price,
body .woocommerce ul.products li.product .price {
	padding: 4px 18px 6px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #111 !important;
	margin: 0 !important;
}

.gs-woo-container ul.products li.product .price del {
	color: #d1d5db !important;
	font-weight: 400 !important;
	font-size: 14px !important;
}

.gs-woo-container ul.products li.product .price ins {
	text-decoration: none !important;
	color: #ef4444 !important;
	font-weight: 800 !important;
}

.gs-woo-container ul.products li.product .button,
.gs-woo-container ul.products li.product .add_to_cart_button,
.gs-woo-container ul.products li.product a.button,
.gs-woo-container ul.products li.product a.add_to_cart_button,
body .woocommerce ul.products li.product .button,
body .woocommerce ul.products li.product a.button {
	display: block !important;
	width: calc(100% - 36px) !important;
	margin: auto 18px 18px !important;
	padding: 13px !important;
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	text-align: center !important;
	border: none !important;
	border-radius: 8px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	cursor: pointer !important;
	text-decoration: none !important;
	transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
}

.gs-woo-container ul.products li.product .button:hover,
.gs-woo-container ul.products li.product .add_to_cart_button:hover,
body .woocommerce ul.products li.product .button:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
	transform: translateY(-2px) !important;
}

.gs-woo-container .woocommerce-info {
	padding: 16px 20px;
	background: #f0f9ff;
	border: 1px solid #bae6fd;
	border-radius: 8px;
	color: #0369a1;
	font-size: 14px;
}

.gs-woo-container .woocommerce-pagination {
	margin-top: 40px;
	text-align: center;
}

.gs-woo-container .woocommerce-pagination ul {
	display: inline-flex;
	gap: 4px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.gs-woo-container .woocommerce-pagination ul li a,
.gs-woo-container .woocommerce-pagination ul li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	font-size: 14px;
	color: #111;
	text-decoration: none;
	transition: background 0.15s;
}

.gs-woo-container .woocommerce-pagination ul li span.current {
	background: #111;
	color: #fff;
	border-color: #111;
}

.gs-woo-container .single-product .product {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: start;
}

.gs-woo-container .single-product .product .woocommerce-product-gallery {
	width: 100%;
}

.gs-woo-container .single-product .product .summary {
	width: 100%;
}

.gs-woo-container .single-product .product .product_title {
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 12px;
}

/* --- Single product: moderan form (select, quantity, dugme) --- */
.gs-woo-container .single-product form.cart,
body .woocommerce .gs-woo-container form.cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 16px !important;
	margin-top: 24px !important;
	margin-bottom: 24px !important;
}

.gs-woo-container .single-product .variations,
body .woocommerce .variations {
	margin-bottom: 0 !important;
}

.gs-woo-container .single-product .variations tr,
body .woocommerce .variations tr {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 16px !important;
}

.gs-woo-container .single-product .variations .label,
body .woocommerce .variations .label {
	padding: 0 !important;
	width: auto !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: #374151 !important;
}

.gs-woo-container .single-product .variations .value,
body .woocommerce .variations .value {
	padding: 0 !important;
}

.gs-woo-container .single-product .reset_variations {
	font-size: 13px !important;
	color: #6b7280 !important;
	margin-left: 8px !important;
	text-decoration: none !important;
}

.gs-woo-container .single-product .reset_variations:hover {
	color: #111 !important;
}

.gs-woo-container .single-product .single_variation_wrap {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 16px !important;
	margin-top: 16px !important;
}

.gs-woo-container .single-product form.cart select,
.gs-woo-container .single-product .single_variation_wrap select,
body .woocommerce form.cart select,
body .woocommerce .variations select {
	min-width: 200px !important;
	padding: 12px 40px 12px 14px !important;
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #111 !important;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 14px center !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	cursor: pointer !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}

.gs-woo-container .single-product form.cart select:hover,
.gs-woo-container .single-product form.cart select:focus,
body .woocommerce form.cart select:hover,
body .woocommerce form.cart select:focus {
	border-color: #111 !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.08) !important;
}

.gs-woo-container .single-product .quantity,
body .woocommerce .quantity {
	display: inline-flex !important;
	align-items: stretch !important;
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	overflow: hidden !important;
}

.gs-woo-container .single-product .quantity .qty,
body .woocommerce .quantity .qty {
	width: 56px !important;
	padding: 12px 8px !important;
	border: none !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-align: center !important;
	-moz-appearance: textfield !important;
}

.gs-woo-container .single-product .quantity .qty::-webkit-outer-spin-button,
.gs-woo-container .single-product .quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.gs-woo-container .single-product .single_add_to_cart_button,
body .woocommerce .single_add_to_cart_button,
body .woocommerce button.single_add_to_cart_button {
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	border: none !important;
	padding: 16px 36px !important;
	border-radius: 14px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
}

.gs-woo-container .single-product .single_add_to_cart_button:hover,
body .woocommerce .single_add_to_cart_button:hover,
body .woocommerce button.single_add_to_cart_button:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
}

/* --- Šifra, kategorije, oznake, brend linija — see TRUST SIGNALS section --- */

/* --- WooCommerce tabovi (Opis, Dodatne informacije, Recenzije) --- */
.gs-woo-container .woocommerce-tabs,
body .woocommerce div.product .woocommerce-tabs {
	margin-top: 48px !important;
	padding-top: 32px !important;
	border-top: 1px solid #e5e7eb !important;
}

.gs-woo-container .woocommerce-tabs ul.tabs,
.gs-woo-container .woocommerce-tabs ul.wc-tabs,
body .woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	list-style: none !important;
	margin: 0 0 28px 0 !important;
	padding: 6px !important;
	border: none !important;
	border-bottom: none !important;
	background: #f3f4f6 !important;
	border-radius: 12px !important;
}

.gs-woo-container .woocommerce-tabs ul.tabs li,
.gs-woo-container .woocommerce-tabs ul.wc-tabs li,
body .woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	border-radius: 8px !important;
}

.gs-woo-container .woocommerce-tabs ul.tabs li::before,
.gs-woo-container .woocommerce-tabs ul.tabs li::after,
body .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none !important;
}

.gs-woo-container .woocommerce-tabs ul.tabs li a,
body .woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: inline-block !important;
	padding: 10px 20px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #6b7280 !important;
	text-decoration: none !important;
	transition: color 0.2s, background 0.2s !important;
	background: transparent !important;
}

.gs-woo-container .woocommerce-tabs ul.tabs li.active a,
.gs-woo-container .woocommerce-tabs ul.tabs li a:hover,
body .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: #111 !important;
	background: #fff !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
}

.gs-woo-container .woocommerce-tabs .woocommerce-Tabs-panel,
.gs-woo-container .woocommerce-tabs .panel,
body .woocommerce div.product .woocommerce-tabs .panel {
	padding: 24px 0 0 !important;
	margin: 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.gs-woo-container .woocommerce-tabs .panel h2,
body .woocommerce div.product .woocommerce-tabs .panel h2 {
	font-size: 18px !important;
	font-weight: 700 !important;
	margin: 0 0 16px 0 !important;
	color: #111 !important;
}

.gs-woo-container .woocommerce-tabs .panel p {
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #374151 !important;
}

.gs-woo-container .woocommerce-tabs .panel .shop_attributes {
	border: none !important;
	width: 100% !important;
}

.gs-woo-container .woocommerce-tabs .panel .shop_attributes tr {
	border-bottom: 1px solid #e5e7eb !important;
}

.gs-woo-container .woocommerce-tabs .panel .shop_attributes th,
.gs-woo-container .woocommerce-tabs .panel .shop_attributes td {
	padding: 12px 0 !important;
	font-size: 14px !important;
}

.gs-woo-container .woocommerce-tabs .panel .shop_attributes th {
	font-weight: 600 !important;
	color: #111 !important;
	width: 40% !important;
}

@media (max-width: 768px) {
	.gs-woo-container ul.products,
	body .woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
	}

	.gs-woo-container .single-product .product {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

@media (max-width: 480px) {
	.gs-woo-container ul.products,
	body .woocommerce ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* =============================================
   STICKY ADD TO CART BAR (single product)
   ============================================= */
/* Old sticky ATC styles removed — see unified block near mini-cart section */

/* =============================================
   404 PAGE
   ============================================= */
.gs-404-section {
	padding: 80px 0;
	text-align: center;
}

.gs-404-inner {
	max-width: 560px;
	margin: 0 auto;
}

.gs-404-code {
	font-size: 120px;
	font-weight: 900;
	line-height: 1;
	color: #111;
	margin-bottom: 16px;
	letter-spacing: -4px;
}

.gs-404-inner h2 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 12px;
}

.gs-404-inner p {
	color: #6b7280;
	font-size: 15px;
	margin-bottom: 32px;
	line-height: 1.6;
}

.gs-404-actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}

.gs-btn-primary {
	display: inline-flex;
	align-items: center;
	padding: 14px 28px;
	background: #111;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	border-radius: 8px;
	text-decoration: none;
	transition: background 0.15s;
}

.gs-btn-primary:hover {
	background: #333;
	color: #fff;
}

.gs-btn-secondary {
	display: inline-flex;
	align-items: center;
	padding: 14px 28px;
	background: #fff;
	color: #111;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	border: 2px solid #111;
	border-radius: 8px;
	text-decoration: none;
	transition: background 0.15s;
}

.gs-btn-secondary:hover {
	background: #f3f4f6;
	color: #111;
}

/* =============================================
   BLOG ARCHIVE
   ============================================= */
.page-hero-subtitle {
	font-size: 15px;
	color: #6b7280;
	margin-top: 8px;
}

.gs-blog-archive {
	padding: 40px 0 60px;
}

.gs-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.gs-blog-card {
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	background: #fff;
	transition: box-shadow 0.2s, transform 0.2s;
}

.gs-blog-card:hover {
	box-shadow: 0 8px 32px rgba(0,0,0,.1);
	transform: translateY(-4px);
}

.gs-blog-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.gs-blog-card-img {
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #1a1a1a;
}

.gs-blog-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s;
}

.gs-blog-card:hover .gs-blog-card-img img {
	transform: scale(1.05);
}

.gs-blog-card-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
	color: #555;
}

.gs-blog-card-body {
	padding: 20px;
}

.gs-blog-card-meta {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	color: #9ca3af;
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.gs-blog-card-cat {
	background: #111;
	color: #fff;
	padding: 2px 8px;
	border-radius: 4px;
	font-size: 10px;
	font-weight: 700;
}

.gs-blog-card-title {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35;
	margin-bottom: 8px;
	color: #111;
}

.gs-blog-card-excerpt {
	font-size: 13px;
	color: #6b7280;
	line-height: 1.5;
	margin-bottom: 14px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.gs-blog-card-readmore {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	color: #111;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.gs-blog-card:hover .gs-blog-card-readmore {
	color: #c0392b;
}

.gs-blog-card-readmore svg {
	transition: transform 0.2s;
}

.gs-blog-card:hover .gs-blog-card-readmore svg {
	transform: translateX(4px);
}

.gs-blog-pagination {
	margin-top: 48px;
	text-align: center;
}

.gs-blog-pagination .nav-links {
	display: inline-flex;
	gap: 4px;
}

.gs-blog-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	color: #111;
	text-decoration: none;
	transition: background 0.15s;
}

.gs-blog-pagination .page-numbers.current {
	background: #111;
	color: #fff;
	border-color: #111;
}

.gs-blog-pagination .page-numbers:hover:not(.current) {
	background: #f3f4f6;
}

.gs-blog-empty {
	text-align: center;
	padding: 60px 0;
	color: #6b7280;
	font-size: 16px;
}

/* =============================================
   MOBILE RESPONSIVE OVERRIDES
   Global mobile fixes for custom header/footer
   ============================================= */

/* Tablet + mobilni: hamburger meni od 992px nadole */
@media (max-width: 992px) {
	.main-nav {
		min-height: 52px;
	}

	.main-nav .nav-container {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		width: 100%;
		min-height: 52px;
		padding: 10px 16px;
	}

	.main-nav .hamburger {
		display: flex !important;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		z-index: 10001;
	}

	.nav-overlay {
		display: block !important;
	}

	/* Drawer panel – desna strana */
	.mobile-drawer {
		display: flex !important;
		flex-direction: column !important;
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 280px !important;
		max-width: 85vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		background: #111 !important;
		z-index: 100002 !important;
		box-shadow: -4px 0 24px rgba(0,0,0,.4) !important;
		transform: translateX(100%) !important;
		transition: transform 0.3s ease !important;
		overflow: hidden !important;
	}

	.mobile-drawer.open {
		transform: translateX(0);
	}

	/* Mobile submenu toggle dugme — pored linka kategorije */
	.gs-mobile-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 24px;
		height: 24px;
		background: #E8560A;
		border: none;
		border-radius: 50%;
		cursor: pointer;
		flex-shrink: 0;
		margin-left: auto;
		margin-right: 12px;
		color: #fff;
		transition: background 0.2s;
	}
	.gs-mobile-toggle:hover { background: #d14a08; }
	.gs-mobile-toggle svg { transition: transform 0.25s ease; }

	/* Li red: link levo, toggle desno */
	.has-mega {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
	}
	.has-mega > a {
		flex: 1;
	}
	.has-mega > .gs-mobile-toggle {
		flex-shrink: 0;
	}
	/* Submenu se prikazuje ispod celog reda */
	.has-mega .mega-menu {
		width: 100%;
		flex-basis: 100%;
	}

	.mobile-drawer-header {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		padding: 16px 20px;
		background: #0d0d0d;
		border-bottom: 1px solid #222;
		flex-shrink: 0;
	}

	.mobile-drawer-logo-wrap {
		display: block;
		flex: 1;
		min-width: 0;
	}

	.mobile-drawer-logo {
		display: block;
		height: 32px;
		width: auto;
		max-width: 180px;
		object-fit: contain;
		object-position: left center;
	}

	.mobile-drawer-title {
		font-size: 18px;
		font-weight: 700;
		color: #fff;
		text-transform: uppercase;
		letter-spacing: 0.02em;
	}

	.mobile-drawer-close {
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: none;
		border: none;
		color: #fff;
		font-size: 28px;
		line-height: 1;
		cursor: pointer;
		padding: 0;
		-webkit-tap-highlight-color: transparent;
		opacity: 0.9;
	}

	.mobile-drawer-close:hover,
	.mobile-drawer-close:focus {
		opacity: 1;
	}

	.mobile-drawer .nav-list {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		flex: 1;
		overflow-y: auto;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
		padding: 0;
		margin: 0;
		list-style: none !important;
		border: none;
		box-shadow: none;
		position: static;
		transform: none;
		width: 100%;
		height: auto;
		min-height: 0;
	}

	.mobile-drawer .nav-list li {
		list-style: none !important;
		margin: 0;
		padding: 0;
		border: none;
		border-bottom: 1px solid #222;
	}

	.mobile-drawer .nav-list li::before,
	.mobile-drawer .nav-list li::after {
		display: none !important;
		content: none !important;
	}

	.mobile-drawer .nav-list li a {
		display: block;
		padding: 16px 20px;
		font-size: 14px;
		font-weight: 600;
		color: #fff !important;
		text-decoration: none;
		text-transform: uppercase;
		letter-spacing: 0.02em;
		white-space: nowrap;
		transition: background 0.15s, color 0.15s;
	}

	.mobile-drawer .nav-list li a:hover,
	.mobile-drawer .nav-list li a:focus {
		background: #222 !important;
		color: #fff !important;
	}

	.mobile-drawer .nav-list .nav-sale-item a {
		color: #ff6b6b !important;
	}

	.mobile-drawer .nav-list .nav-arrow {
		opacity: 0.8;
		margin-left: 6px;
		transition: transform 0.2s ease;
	}

	.mobile-drawer .has-mega.mega-open .nav-arrow {
		transform: rotate(180deg);
	}

	/* Mega-menu u draweru — accordion, ne absolute */
	.mobile-drawer .mega-menu {
		display: none;
		position: static !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: 100% !important;
		order: 3 !important;
		padding: 8px 0 12px;
		background: #f4f4f4;
		border: none;
		border-top: 1px solid #e0e0e0;
		box-shadow: none !important;
		overflow: hidden;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		pointer-events: auto !important;
		animation: none !important;
	}

	.mobile-drawer .has-mega.mega-open .mega-menu {
		display: block;
	}

	/* has-mega item mora biti flex da mega-menu ide u novi red ispod */
	.mobile-drawer .has-mega {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		overflow: hidden !important;
	}
	.mobile-drawer .has-mega > a {
		flex: 1 !important;
		min-width: 0 !important;
	}
	.mobile-drawer .has-mega > .gs-mobile-toggle {
		flex-shrink: 0 !important;
		order: 2 !important;
	}
	.mobile-drawer .has-mega > .mega-menu {
		order: 3 !important;
		flex-basis: 100% !important;
		width: 100% !important;
	}

	.mobile-drawer .mega-menu h4 {
		font-size: 11px;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: #888;
		margin: 0 0 10px 0;
		padding: 0;
		font-weight: 600;
	}

	.mobile-drawer .mega-menu ul {
		list-style: none !important;
		margin: 0 0 12px 0;
		padding: 0;
	}

	.mobile-drawer .mega-menu ul:last-child {
		margin-bottom: 0;
	}

	.mobile-drawer .mega-menu ul li {
		border: none;
		list-style: none !important;
	}

	.mobile-drawer .mega-menu ul li a {
		padding: 8px 0;
		font-size: 13px;
		font-weight: 500;
		color: #ccc !important;
		text-transform: none;
		letter-spacing: 0;
	}

	.mobile-drawer .mega-menu .mega-menu-grid {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 0 !important;
		width: 100% !important;
		grid-template-columns: none !important;
		padding: 0 !important;
	}

	.mobile-drawer .mega-menu .mega-col {
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 0;
	}
}

@media (max-width: 900px) {
	#main-content .slider-track {
		aspect-ratio: 16 / 9;
	}
	#main-content .slide-bg {
		object-fit: cover;
		object-position: center center;
		width: 100%;
		height: 100%;
	}

	.gs-blog-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.gs-404-code {
		font-size: 80px;
	}
}

@media (max-width: 768px) {
	/* ─── Header: jedan red – Logo | Search | Ikone ─── */
	.site-header .header-inner {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		padding: 8px 12px !important;
		gap: 0 !important;
	}
	.logo { flex: 0 0 auto; order: 1; }
	.site-header .logo img { height: 44px; width: auto; }
	.site-header .header-search {
		order: 2;
		flex: 1 1 auto !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 8px !important;
	}
	.header-search-wrap {
		height: 38px !important;
		border-radius: 999px !important;
	}
	.header-search-wrap input[type='search'],
	.header-search-wrap input[type='search']:focus,
	.header-search-wrap input[type='search']:active {
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
		padding: 0 12px !important;
		font-size: 13px !important;
	}
	.header-search-btn,
	.header-search-btn:focus,
	.header-search-btn:active {
		width: 40px !important;
		height: 38px !important;
		min-width: 40px !important;
		min-height: 38px !important;
		max-width: 40px !important;
		max-height: 38px !important;
		border-radius: 0 999px 999px 0 !important;
	}
	.header-search-btn svg { width: 15px !important; height: 15px !important; }
	.header-icons { flex: 0 0 auto; order: 3; gap: 0 !important; }
	.icon-label { display: none !important; }
	.icon-link { padding: 6px 7px !important; }
	.topbar-right { display: none; }
	.topbar-inner { justify-content: center; }

	/* Mobilna navigacija – crna traka sa hamburgerom */
	.main-nav {
		min-height: 52px;
	}

	.main-nav .nav-container {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		width: 100%;
		min-height: 52px;
		padding: 10px 16px;
		position: relative;
	}

	.main-nav .hamburger {
		display: flex !important;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		align-items: center;
		justify-content: center;
		padding: 10px;
		z-index: 10001;
		position: relative;
	}

	.main-nav .hamburger span {
		width: 22px;
		height: 2px;
		background: #fff;
	}

	/* Klikabilnost: kategorije i sadržaj iznad overlay-a kada meni zatvoren */
	#main-content .category-card,
	#main-content .showcase-card,
	#main-content .slide-link {
		min-height: 44px;
		touch-action: pan-y;
		cursor: default;
	}
	#main-content .slider-arrow {
		min-width: 44px;
		min-height: 44px;
		touch-action: manipulation;
	}
	/* Tačkice slidera – male i diskretne */
	#main-content .slider-dots {
		bottom: 10px;
		gap: 5px;
	}
	#main-content .dot {
		width: 8px !important;
		height: 8px !important;
		min-width: 0 !important;
		min-height: 0 !important;
		padding: 0 !important;
		border-width: 1.5px;
		touch-action: manipulation;
		box-sizing: border-box !important;
	}

	/* Drawer na 768px nasleđuje 992px – eventualni override ovde */
	.gs-blog-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.gs-blog-card-title {
		font-size: 16px;
	}

	footer.site-footer .footer-grid,
	.site-footer .footer-grid {
		grid-template-columns: 1fr !important;
		gap: 28px;
	}
}

@media (max-width: 600px) {
	/* Slider – 16:9 proporcije, slika se ne iseca */
	#main-content .hero-slider {
		aspect-ratio: 16 / 9;
		height: auto !important;
	}
	#main-content .slider-track {
		position: relative;
		aspect-ratio: 16 / 9;
	}
	#main-content .slide {
		position: absolute;
		inset: 0;
	}
	#main-content .slide-bg {
		object-fit: cover;
		object-position: center center;
		width: 100%;
		height: 100%;
	}

	#main-content a.slide-cta-brutal,
	#main-content .slide-cta-brutal {
		bottom: 48px;
		right: 12px;
		padding: 10px 16px;
		font-size: 11px;
		gap: 8px;
	}

	#main-content .slider-dots {
		bottom: 8px;
		gap: 4px;
	}
	#main-content .dot {
		width: 7px !important;
		height: 7px !important;
		min-width: 0 !important;
		min-height: 0 !important;
		padding: 0 !important;
		border-width: 1px;
		box-sizing: border-box !important;
	}

	#main-content .slider-arrow {
		width: 34px;
		height: 34px;
		font-size: 22px;
	}

	#main-content .slider-prev { left: 6px; }
	#main-content .slider-next { right: 6px; }

	.topbar {
		font-size: 10px;
		padding: 6px 0;
	}

	.site-header .header-inner {
		padding: 6px 8px !important;
	}
	.site-header .logo img { height: 36px !important; }
	.site-header .header-search { margin: 0 6px !important; }
	.header-search-wrap { height: 34px !important; }
	.header-search-wrap input[type='search'],
	.header-search-wrap input[type='search']:focus { height: 34px !important; min-height: 34px !important; max-height: 34px !important; padding: 0 8px !important; font-size: 12px !important; }
	.header-search-btn,
	.header-search-btn:focus { width: 36px !important; height: 34px !important; min-width: 36px !important; min-height: 34px !important; max-width: 36px !important; max-height: 34px !important; }
	.header-search-btn svg { width: 14px !important; height: 14px !important; }

	.gs-404-code {
		font-size: 60px;
	}

	.gs-404-inner h2 {
		font-size: 18px;
	}

	.gs-404-actions {
		flex-direction: column;
	}

	.gs-btn-primary,
	.gs-btn-secondary {
		width: 100%;
		justify-content: center;
	}
}

@media (max-width: 480px) {
	.site-header .header-icons .icon-link svg {
		width: 20px;
		height: 20px;
	}
}

/* WordPress Admin Bar – mobilni drawer visina */
body.admin-bar .mobile-drawer {
	top: 32px;
	height: calc(100vh - 32px);
	height: calc(100dvh - 32px);
}

@media (max-width: 782px) {
	body.admin-bar .mobile-drawer {
		top: 46px;
		height: calc(100vh - 46px);
		height: calc(100dvh - 46px);
	}
}

/* Mali mobilni (do 480px) – širi drawer, veći domet */
@media (max-width: 480px) {
	.mobile-drawer {
		width: 90vw;
		max-width: 320px;
	}

	.mobile-drawer .nav-list li a {
		padding: 18px 20px;
		font-size: 15px;
		min-height: 48px;
		display: flex;
		align-items: center;
	}

	.main-nav .hamburger {
		width: 48px;
		height: 48px;
		min-width: 48px;
		min-height: 48px;
	}
}

/* Search page form */
.gs-search-form-wrap {
	margin-bottom: 32px;
}

.gs-search-form {
	display: flex;
	gap: 0;
	max-width: 500px;
}

.gs-search-form input[type="search"] {
	flex: 1;
	padding: 12px 16px;
	border: 2px solid #e5e7eb;
	border-right: none;
	border-radius: 8px 0 0 8px;
	font-size: 14px;
	outline: none;
	transition: border-color 0.2s;
}

.gs-search-form input[type="search"]:focus {
	border-color: #111;
}

.gs-search-form button {
	padding: 12px 24px;
	background: #111;
	color: #fff;
	border: 2px solid #111;
	border-radius: 0 8px 8px 0;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s;
}

.gs-search-form button:hover {
	background: #333;
}

/* Generic page content styling */
.content-layout--full .content-main {
	max-width: 800px;
	margin: 0 auto;
	font-size: 15px;
	line-height: 1.8;
	color: #374151;
}

.content-layout--full .content-main h2 {
	font-size: 22px;
	font-weight: 800;
	margin-top: 36px;
	margin-bottom: 14px;
	color: #111;
}

.content-layout--full .content-main h3 {
	font-size: 17px;
	font-weight: 700;
	margin-top: 24px;
	margin-bottom: 10px;
	color: #111;
}

.content-layout--full .content-main p {
	margin-bottom: 16px;
}

.content-layout--full .content-main img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
	margin: 20px 0;
}

.content-layout--full .content-main ul,
.content-layout--full .content-main ol {
	padding-left: 20px;
	margin-bottom: 18px;
}

.content-layout--full .content-main li {
	margin-bottom: 6px;
	line-height: 1.8;
}

/* =============================================
   MOBILNI MENI – JAKI OVERRIDE (mora biti na kraju)
   Forsira tamni drawer, iznad headera, bez tačkica.
   Overlay kada ZATVOREN mora biti ispod sadržaja da ne blokira klikove.
   ============================================= */
@media (max-width: 992px) {
	body .nav-overlay:not(.open) {
		z-index: -1 !important;
		pointer-events: none !important;
		visibility: hidden !important;
	}

	body .main-nav .mobile-drawer {
		display: flex !important;
		flex-direction: column !important;
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 280px !important;
		max-width: 85vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		background: #111 !important;
		z-index: 100002 !important;
		box-shadow: -4px 0 24px rgba(0,0,0,.4) !important;
		transform: translateX(100%) !important;
		transition: transform 0.3s ease !important;
		overflow: hidden !important;
	}

	body .main-nav .mobile-drawer.open {
		transform: translateX(0) !important;
	}

	body.nav-open .main-nav {
		z-index: 100002 !important;
	}

	body.nav-open .nav-overlay {
		z-index: 100001 !important;
	}

	body .main-nav .mobile-drawer-header {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		padding: 16px 20px !important;
		background: #0d0d0d !important;
		border-bottom: 1px solid #222 !important;
		flex-shrink: 0 !important;
	}

	body .main-nav .mobile-drawer-logo {
		height: 36px !important;
		width: auto !important;
		max-width: 160px !important;
		max-height: 36px !important;
		display: block !important;
		object-fit: contain !important;
		object-position: left center !important;
	}

	body .main-nav .mobile-drawer-header {
		padding: 14px 16px !important;
		min-height: 0 !important;
	}

	body .main-nav .mobile-drawer .nav-list,
	body .main-nav .mobile-drawer ul.nav-list {
		display: flex !important;
		flex-direction: column !important;
		flex: 1 !important;
		min-height: 0 !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
		background: transparent !important;
		list-style: none !important;
		padding: 0 !important;
		margin: 0 !important;
		position: static !important;
		transform: none !important;
		box-shadow: none !important;
		border: none !important;
	}

	body .main-nav .mobile-drawer .nav-list li,
	body .main-nav .mobile-drawer ul.nav-list li {
		list-style: none !important;
		border-bottom: 1px solid #222 !important;
		background: transparent !important;
	}

	body .main-nav .mobile-drawer .nav-list li::before,
	body .main-nav .mobile-drawer .nav-list li::after {
		display: none !important;
		content: none !important;
	}

	body .main-nav .mobile-drawer .nav-list li a,
	body .main-nav .mobile-drawer ul.nav-list li a {
		color: #fff !important;
		background: transparent !important;
		padding: 16px 20px !important;
		font-size: 14px !important;
		font-weight: 600 !important;
	}

	body .main-nav .mobile-drawer .nav-list li a:hover,
	body .main-nav .mobile-drawer .nav-list li a:focus {
		background: #222 !important;
		color: #fff !important;
	}

	body .main-nav .mobile-drawer .nav-list .nav-sale-item a,
	body .main-nav .mobile-drawer .nav-sale-item a {
		color: #ff6b6b !important;
	}

	body .main-nav .mobile-drawer .mega-menu {
		background: #1a1a1a !important;
		border: none !important;
		border-top: 1px solid #222 !important;
		padding: 12px 20px 16px !important;
	}

	body .main-nav .mobile-drawer .mega-menu h4 {
		color: #888 !important;
	}

	body .main-nav .mobile-drawer .mega-menu ul li a {
		color: #ccc !important;
	}
}

/* =============================================
   WOOCOMMERCE OVERRIDE – FINAL
   ============================================= */

/* --- Cart & Checkout: full-width layout --- */
.gs-woo-container .wc-block-cart,
.gs-woo-container .wc-block-checkout,
.gs-woo-container .wp-block-woocommerce-cart,
.gs-woo-container .wp-block-woocommerce-checkout {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

/* --- Cart page --- */
.gs-woo-container .wc-block-cart .wc-block-cart__main,
.gs-woo-container .wp-block-woocommerce-cart .wc-block-cart__main {
	flex: 1 !important;
	min-width: 0 !important;
}

.gs-woo-container .wc-block-cart .wc-block-cart__sidebar,
.gs-woo-container .wp-block-woocommerce-cart .wc-block-cart__sidebar {
	flex: 0 0 360px !important;
	min-width: 300px !important;
}

/* Cart table items */
.gs-woo-container .wc-block-cart-items .wc-block-cart-items__row {
	padding: 20px 0 !important;
	border-bottom: 1px solid #e5e7eb !important;
}

.gs-woo-container .wc-block-cart-items .wc-block-cart-items__row:last-child {
	border-bottom: none !important;
}

.gs-woo-container .wc-block-cart-item__image img {
	border-radius: 8px !important;
	border: 1px solid #e5e7eb !important;
}

.gs-woo-container .wc-block-components-product-name {
	font-weight: 600 !important;
	color: #111 !important;
	font-size: 15px !important;
}

/* Cart totals sidebar */
.gs-woo-container .wc-block-cart__totals-title,
.gs-woo-container .wc-block-components-totals-wrapper {
	font-size: 15px !important;
}

/* --- Checkout page --- */
.gs-woo-container .wc-block-checkout .wc-block-checkout__main,
.gs-woo-container .wp-block-woocommerce-checkout .wc-block-checkout__main {
	flex: 1 !important;
	min-width: 0 !important;
	max-width: none !important;
}

.gs-woo-container .wc-block-checkout .wc-block-checkout__sidebar,
.gs-woo-container .wp-block-woocommerce-checkout .wc-block-checkout__sidebar {
	flex: 0 0 380px !important;
	min-width: 320px !important;
}

/* Checkout form fields */
.gs-woo-container .wc-block-components-text-input input,
.gs-woo-container .wc-block-components-text-input textarea,
.gs-woo-container .wc-block-checkout input[type="text"],
.gs-woo-container .wc-block-checkout input[type="email"],
.gs-woo-container .wc-block-checkout input[type="tel"],
.gs-woo-container .wc-block-checkout select {
	width: 100% !important;
	min-width: 0 !important;
	padding: 12px 14px !important;
	border: 1px solid #d1d5db !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	color: #111 !important;
	background: #fff !important;
	box-sizing: border-box !important;
}

.gs-woo-container .wc-block-components-text-input input:focus,
.gs-woo-container .wc-block-checkout input:focus,
.gs-woo-container .wc-block-checkout select:focus {
	border-color: #111 !important;
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(17,17,17,0.06) !important;
}

/* Checkout headings */
.gs-woo-container .wc-block-checkout .wc-block-components-checkout-step__title,
.gs-woo-container .wc-block-checkout h2,
.gs-woo-container .wp-block-woocommerce-checkout h2 {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #111 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

/* Checkout sections */
.gs-woo-container .wc-block-components-checkout-step {
	margin-bottom: 24px !important;
	padding-bottom: 24px !important;
	border-bottom: 1px solid #e5e7eb !important;
}

/* Payment box */
.gs-woo-container .wc-block-components-radio-control__option,
.gs-woo-container .wc-block-checkout__payment-method {
	padding: 16px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	margin-bottom: 8px !important;
	background: #fff !important;
}

/* --- All WooCommerce buttons (classic + block) --- */

/* Block checkout/cart buttons */
.gs-woo-container .wc-block-components-button,
.gs-woo-container .wc-block-cart__submit-button,
.gs-woo-container .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
body .wc-block-components-checkout-place-order-button,
body .wc-block-cart__submit-button,
body .wc-block-components-button:not(.is-link) {
	background: #111 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 16px 32px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	cursor: pointer !important;
	transition: background 0.2s, transform 0.15s !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;
	width: 100% !important;
}

body .wc-block-components-checkout-place-order-button:hover,
body .wc-block-cart__submit-button:hover,
body .wc-block-components-button:not(.is-link):hover {
	background: #333 !important;
	transform: translateY(-1px) !important;
}

/* --- Classic WooCommerce buttons --- */
body.woocommerce button.button,
body.woocommerce a.button,
body.woocommerce input.button,
body.woocommerce #respond input#submit,
body .woocommerce button.button,
body .woocommerce a.button,
body .woocommerce input.button,
body .woocommerce #respond input#submit,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
body .woocommerce button.button.alt,
body .woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
body .woocommerce .single_add_to_cart_button,
body .woocommerce button.single_add_to_cart_button,
body.woocommerce .single_add_to_cart_button {
	background-color: #111 !important;
	background-image: none !important;
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	cursor: pointer !important;
	transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
}

body.woocommerce button.button:hover,
body.woocommerce a.button:hover,
body .woocommerce button.button:hover,
body .woocommerce a.button:hover,
body .woocommerce button.button.alt:hover,
body .woocommerce a.button.alt:hover,
body .woocommerce .single_add_to_cart_button:hover,
body .woocommerce button.single_add_to_cart_button:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
	color: #fff !important;
}

/* --- Single product: dugme veće --- */
body .woocommerce .single-product .single_add_to_cart_button,
body .woocommerce div.product form.cart button.single_add_to_cart_button {
	padding: 16px 40px !important;
	font-size: 15px !important;
}

/* --- Single product: select moderan --- */
body .woocommerce .single-product form.cart select,
body .woocommerce .variations select,
body .woocommerce div.product form.cart select {
	min-width: 220px !important;
	padding: 12px 40px 12px 16px !important;
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #111 !important;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 14px center !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	cursor: pointer !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}

body .woocommerce .single-product form.cart select:hover,
body .woocommerce .single-product form.cart select:focus {
	border-color: #111 !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.06) !important;
}

/* --- Single product: quantity moderan --- */
body .woocommerce .single-product .quantity,
body .woocommerce div.product .quantity {
	display: inline-flex !important;
	align-items: stretch !important;
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	overflow: hidden !important;
}

body .woocommerce .single-product .quantity .qty,
body .woocommerce div.product .quantity .qty {
	width: 60px !important;
	padding: 12px 8px !important;
	border: none !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-align: center !important;
	-moz-appearance: textfield !important;
}

body .woocommerce .single-product .quantity .qty::-webkit-outer-spin-button,
body .woocommerce .single-product .quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

/* --- Single product: cena istaknuta --- */
body .woocommerce div.product p.price,
body .woocommerce div.product span.price {
	font-size: 28px !important;
	font-weight: 800 !important;
	color: #111 !important;
	margin: 16px 0 !important;
}

body .woocommerce div.product p.price del,
body .woocommerce div.product span.price del {
	font-size: 18px !important;
	color: #9ca3af !important;
	font-weight: 400 !important;
}

body .woocommerce div.product p.price ins,
body .woocommerce div.product span.price ins {
	text-decoration: none !important;
	color: #c0392b !important;
}

/* --- Kartica proizvoda: cena istaknuta --- */
body .woocommerce ul.products li.product .price {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #111 !important;
	padding: 4px 14px 16px !important;
}

body .woocommerce ul.products li.product .price .woocommerce-Price-amount {
	font-weight: 800 !important;
}

/* --- Kartica proizvoda: dugme "Kupi" --- */
body .woocommerce ul.products li.product a.button,
body .woocommerce ul.products li.product a.add_to_cart_button,
body .woocommerce ul.products li.product .button {
	display: block !important;
	width: calc(100% - 28px) !important;
	margin: 0 14px 14px !important;
	padding: 13px !important;
	background: #111 !important;
	color: #fff !important;
	text-align: center !important;
	border: none !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	text-decoration: none !important;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1) !important;
	transition: background 0.15s, transform 0.15s !important;
}

body .woocommerce ul.products li.product a.button:hover,
body .woocommerce ul.products li.product .button:hover {
	background: #333 !important;
	transform: translateY(-1px) !important;
}

/* --- Tabovi moderniji --- */
body .woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	list-style: none !important;
	margin: 0 0 28px 0 !important;
	padding: 6px !important;
	border: none !important;
	border-bottom: none !important;
	background: #f3f4f6 !important;
	border-radius: 12px !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body .woocommerce div.product .woocommerce-tabs ul.tabs::after {
	display: none !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 8px !important;
	background: transparent !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none !important;
	content: none !important;
	border: none !important;
	box-shadow: none !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block !important;
	padding: 10px 20px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #6b7280 !important;
	text-decoration: none !important;
	background: transparent !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs li.active,
body .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	background: #fff !important;
	color: #111 !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
	border-radius: 8px !important;
}

body .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: #111 !important;
	background: rgba(255,255,255,0.5) !important;
}

body .woocommerce div.product .woocommerce-tabs .panel {
	padding: 24px 0 0 !important;
	margin: 0 !important;
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* --- Product meta — see TRUST SIGNALS section --- */

/* --- WooCommerce notices (dodato u korpu, greška) --- */
.gs-woo-container .woocommerce-message,
.gs-woo-container .wc-block-components-notice-banner,
body .woocommerce-message {
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	border-left: 5px solid #22c55e !important;
	color: #111 !important;
	padding: 16px 24px !important;
	border-radius: 10px !important;
	margin-bottom: 24px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	box-shadow: 0 4px 16px rgba(0,0,0,.08) !important;
}

.gs-woo-container .woocommerce-message .button,
body .woocommerce-message .button {
	background: #111 !important;
	color: #fff !important;
	border: none !important;
	padding: 10px 22px !important;
	border-radius: 8px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: .05em !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	box-shadow: 0 2px 8px rgba(0,0,0,.12) !important;
	transition: all .2s ease !important;
	margin-left: auto !important;
	flex-shrink: 0 !important;
}
.gs-woo-container .woocommerce-message .button:hover,
body .woocommerce-message .button:hover {
	background: #333 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,.18) !important;
}

/* --- Cart & checkout: prevent word break on headings --- */
.gs-woo-container h1,
.gs-woo-container h2,
.gs-woo-container h3,
.gs-woo-container h4 {
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
}

/* --- Classic cart table --- */
body .woocommerce table.shop_table {
	width: 100% !important;
	border-collapse: collapse !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 12px !important;
	overflow: hidden !important;
}

body .woocommerce table.shop_table th,
body .woocommerce table.shop_table td {
	padding: 14px 16px !important;
	border-bottom: 1px solid #e5e7eb !important;
	font-size: 14px !important;
	text-align: left !important;
}

body .woocommerce table.shop_table th {
	background: #f9fafb !important;
	font-weight: 700 !important;
	color: #111 !important;
}

/* Classic checkout form */
body .woocommerce form .form-row {
	margin-bottom: 16px !important;
}

body .woocommerce form .form-row label {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #374151 !important;
	margin-bottom: 6px !important;
}

body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce form .form-row select {
	width: 100% !important;
	padding: 12px 14px !important;
	border: 1px solid #d1d5db !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	color: #111 !important;
	box-sizing: border-box !important;
}

body .woocommerce form .form-row input.input-text:focus,
body .woocommerce form .form-row select:focus {
	border-color: #111 !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}

/* Classic checkout: Place order button */
body .woocommerce #place_order,
body .woocommerce button#place_order {
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	border: none !important;
	padding: 18px 32px !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: .04em;
	width: 100% !important;
	cursor: pointer !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
	transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
}

body .woocommerce #place_order:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
	transform: translateY(-2px) !important;
}

/* Classic checkout: order review */
body .woocommerce .woocommerce-checkout-review-order-table {
	width: 100% !important;
}

/* Coupon form */
body .woocommerce .coupon .input-text {
	min-width: 200px !important;
}

/* Classic cart: update cart */
body .woocommerce .cart button[name="update_cart"],
body .woocommerce button[name="apply_coupon"] {
	background: #111 !important;
	color: #fff !important;
	border: none !important;
	padding: 12px 24px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: .04em;
	box-shadow: 0 2px 8px rgba(0,0,0,.12) !important;
	transition: all .25s cubic-bezier(.34,1.56,.64,1) !important;
}
body .woocommerce .cart button[name="update_cart"]:hover,
body .woocommerce button[name="apply_coupon"]:hover {
	background: #333 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 14px rgba(0,0,0,.2) !important;
}

/* Proceed to checkout */
body .woocommerce .wc-proceed-to-checkout a.checkout-button {
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	border: none !important;
	padding: 18px !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: .04em;
	text-align: center !important;
	display: block !important;
	text-decoration: none !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
	transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
}

body .woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
	transform: translateY(-2px) !important;
}

/* My Account page */
body .woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body .woocommerce-MyAccount-navigation ul li a {
	display: block !important;
	padding: 12px 16px !important;
	border-bottom: 1px solid #e5e7eb !important;
	color: #374151 !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	transition: background 0.15s !important;
}

body .woocommerce-MyAccount-navigation ul li.is-active a,
body .woocommerce-MyAccount-navigation ul li a:hover {
	background: #f3f4f6 !important;
	color: #111 !important;
	font-weight: 700 !important;
}


/* ==========================================================================
   CUSTOM WOOCOMMERCE TEMPLATES – CLEAN PREMIUM
   ========================================================================== */

/* ── CART ────────────────────────────────────────────────────────────────── */
.gs-cart { max-width: 1280px; margin: 0 auto; padding: 48px 24px; }

/* ── EMPTY CATEGORY — modern redesign ── */
.gs-empty-category {
	max-width: 480px; margin: 0 auto;
	text-align: center; padding: 64px 24px 80px;
}
.gs-ec-icon { margin-bottom: 24px; }
.gs-ec-icon svg { display: inline-block; }
.gs-ec-title {
	font-size: 22px; font-weight: 800; color: #111;
	margin: 0 0 10px; letter-spacing: -.02em;
}
.gs-ec-text {
	font-size: 15px; color: #777; line-height: 1.6;
	margin: 0 0 28px;
}
.gs-ec-btn {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 14px 32px; background: #E8560A; color: #fff !important;
	border-radius: 10px; font-size: 14px; font-weight: 700;
	text-decoration: none !important; transition: all .2s;
	letter-spacing: .02em;
}
.gs-ec-btn:hover { background: #d04a09; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(232,86,10,0.25); }
.gs-ec-btn svg { flex-shrink: 0; }
@media (max-width: 600px) {
	.gs-empty-category { padding: 48px 20px 64px; }
	.gs-ec-title { font-size: 20px; }
	.gs-ec-btn { padding: 13px 28px; font-size: 13px; width: 100%; justify-content: center; }
}

/* ── EMPTY CART — modern redesign ── */
.gs-empty-cart {
	max-width: 560px;
	margin: 0 auto;
	text-align: center;
	padding: 80px 24px 100px;
}
.gs-empty-cart-icon {
	margin-bottom: 28px;
}
.gs-empty-cart-icon svg {
	display: inline-block;
}
.gs-empty-cart-title {
	font-size: 28px;
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
	letter-spacing: -0.02em;
}
.gs-empty-cart-text {
	font-size: 15px;
	line-height: 1.7;
	color: #6b7280;
	margin: 0 0 32px;
}
.gs-empty-cart-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 36px;
	background: #E8560A;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	border-radius: 999px;
	text-decoration: none !important;
	transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
	box-shadow: 0 4px 16px rgba(232,86,10,0.25);
}
.gs-empty-cart-btn:hover {
	background: #d04a08;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(232,86,10,0.35);
}
.gs-empty-cart-features {
	display: flex;
	justify-content: center;
	gap: 32px;
	margin-top: 56px;
	padding-top: 32px;
	border-top: 1px solid #f0f0f0;
}
.gs-ecf-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}
.gs-ecf-item span {
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* ── Hide WooCommerce default empty cart elements ── */
.woocommerce-cart .woocommerce-notices-wrapper + .cart-empty,
.woocommerce-cart .woocommerce-notices-wrapper + p.cart-empty,
.woocommerce-cart p.cart-empty,
.woocommerce-cart .return-to-shop,
.woocommerce-cart .wc-empty-cart-message {
	display: none !important;
}
body.woocommerce-cart .woocommerce .gs-empty-cart ~ .return-to-shop {
	display: none !important;
}
body.woocommerce-cart .entry-title,
body.woocommerce-cart .page-title,
body.woocommerce-cart .woocommerce-products-header__title {
	display: none !important;
}

@media (max-width: 600px) {
	.gs-empty-cart {
		padding: 48px 20px 64px;
	}
	.gs-empty-cart-icon svg {
		width: 64px;
		height: 64px;
	}
	.gs-empty-cart-title {
		font-size: 22px;
	}
	.gs-empty-cart-text {
		font-size: 14px;
	}
	.gs-empty-cart-features {
		flex-direction: column;
		gap: 16px;
		align-items: center;
	}
	.gs-ecf-item {
		flex-direction: row;
		gap: 10px;
	}
}

.gs-cart-empty {
	text-align: center; padding: 100px 20px;
}
.gs-cart-empty svg { margin-bottom: 24px; opacity: .5; }
.gs-cart-empty h2 { font-size: 26px; font-weight: 800; color: #111; margin: 0 0 10px; }
.gs-cart-empty p { color: #6b7280; margin: 0 0 28px; font-size: 15px; }

/* ── ADD TO CART POPUP MODAL ─────────────────────────────────────── */
.gs-atc-modal {
	position: fixed; inset: 0; z-index: 999999;
	display: none; align-items: center; justify-content: center;
	pointer-events: none;
}
.gs-atc-modal.gs-atc-open { display: flex; pointer-events: auto; }
.gs-atc-modal .gs-atc-overlay {
	position: absolute; inset: 0;
	background: rgba(0,0,0,0.45);
	backdrop-filter: blur(3px);
	cursor: pointer;
}
.gs-atc-popup {
	position: relative; z-index: 2;
	background: #fff; border-radius: 16px;
	width: 92%; max-width: 480px;
	box-shadow: 0 20px 60px rgba(0,0,0,0.25);
	padding: 0; overflow: hidden;
	animation: gsAtcSlideIn .3s ease;
}
@keyframes gsAtcSlideIn {
	from { opacity: 0; transform: translateY(30px) scale(0.97); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}
.gs-atc-close {
	position: absolute; top: 12px; right: 14px;
	background: none; border: none; font-size: 26px;
	color: #999; cursor: pointer; line-height: 1;
	width: 36px; height: 36px; display: flex;
	align-items: center; justify-content: center;
	border-radius: 50%; transition: all .2s;
}
.gs-atc-close:hover { background: #f5f5f5; color: #333; }
.gs-atc-header {
	display: flex; align-items: center; gap: 10px;
	padding: 20px 24px 16px;
	border-bottom: 1px solid #f0f0f0;
}
.gs-atc-header svg { flex-shrink: 0; }
.gs-atc-header span {
	font-size: 16px; font-weight: 700; color: #111;
}
.gs-atc-product {
	display: flex; gap: 16px; padding: 20px 24px;
	align-items: center;
}
.gs-atc-img {
	width: 90px; height: 90px; object-fit: contain;
	border-radius: 10px; background: #f8f8f8;
	border: 1px solid #eee; flex-shrink: 0;
}
.gs-atc-info { flex: 1; min-width: 0; }
.gs-atc-name {
	font-size: 15px; font-weight: 700; color: #111;
	margin: 0 0 4px; line-height: 1.35;
	overflow: hidden; text-overflow: ellipsis;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.gs-atc-meta {
	font-size: 12px; color: #888; margin: 0 0 6px;
}
.gs-atc-price {
	font-size: 15px; font-weight: 700; color: #E8560A;
}
.gs-atc-price del { color: #bbb; font-weight: 400; font-size: 13px; }
.gs-atc-price ins { text-decoration: none; }
.gs-atc-qty {
	font-size: 12px; color: #888; margin-top: 4px;
}
.gs-atc-summary {
	background: #fafafa; padding: 14px 24px;
	border-top: 1px solid #f0f0f0;
	border-bottom: 1px solid #f0f0f0;
}
.gs-atc-summary-row {
	display: flex; justify-content: space-between;
	align-items: center; font-size: 14px; color: #555;
	padding: 4px 0;
}
.gs-atc-total-row { font-size: 15px; color: #111; }
.gs-atc-total-row strong { color: #111; font-size: 16px; }
.gs-atc-actions {
	display: flex; gap: 10px; padding: 20px 24px;
}
.gs-atc-continue {
	flex: 1; padding: 13px 16px;
	background: #fff; color: #333;
	border: 2px solid #e5e5e5; border-radius: 10px;
	font-size: 14px; font-weight: 700; cursor: pointer;
	transition: all .2s; text-align: center;
}
.gs-atc-continue:hover {
	border-color: #ccc; background: #fafafa;
}
.gs-atc-checkout {
	flex: 1; padding: 13px 16px;
	background: #E8560A; color: #fff !important;
	border: none; border-radius: 10px;
	font-size: 14px; font-weight: 700; cursor: pointer;
	transition: all .2s; text-decoration: none !important;
	display: flex; align-items: center; justify-content: center; gap: 6px;
	text-align: center;
}
.gs-atc-checkout:hover { background: #d04a09; }
.gs-atc-checkout svg { flex-shrink: 0; }

/* Loading spinner for ATC buttons */
.gs-btn-loading {
	position: relative !important;
	pointer-events: none !important;
	color: transparent !important;
}
.gs-btn-loading::after {
	content: '';
	position: absolute; top: 50%; left: 50%;
	width: 20px; height: 20px;
	margin: -10px 0 0 -10px;
	border: 2.5px solid rgba(255,255,255,0.35);
	border-top-color: #fff;
	border-radius: 50%;
	animation: gsSpinBtn .6s linear infinite;
}
.gs-spinner {
	display: inline-block; width: 16px; height: 16px;
	border: 2.5px solid rgba(255,255,255,0.35);
	border-top-color: #fff;
	border-radius: 50%;
	animation: gsSpinBtn .6s linear infinite;
	vertical-align: middle; margin-right: 6px;
}
@keyframes gsSpinBtn {
	to { transform: rotate(360deg); }
}

/* Single product ATC loading state */
.single_add_to_cart_button.gs-btn-loading {
	min-height: 48px;
}

/* Mobile responsiveness for ATC popup */
@media (max-width: 600px) {
	.gs-atc-popup {
		width: 96%; max-width: none;
		border-radius: 14px;
		margin: 0 8px;
	}
	.gs-atc-header { padding: 16px 18px 14px; }
	.gs-atc-product { padding: 16px 18px; gap: 14px; }
	.gs-atc-img { width: 72px; height: 72px; }
	.gs-atc-name { font-size: 14px; }
	.gs-atc-summary { padding: 12px 18px; }
	.gs-atc-actions {
		flex-direction: column; gap: 8px;
		padding: 16px 18px;
	}
	.gs-atc-continue,
	.gs-atc-checkout { padding: 14px 16px; font-size: 14px; }
}

/* ── CART TABLE REDESIGN v2 ──────────────────────────────────────── */
.gs-cart { max-width: 1100px; margin: 0 auto; padding: 32px 20px; }

.gs-cart-header-row {
	display: flex; justify-content: space-between; align-items: center;
	margin-bottom: 24px;
}
.gs-cart-title {
	font-size: 28px; font-weight: 800; color: #111; margin: 0; letter-spacing: -.02em;
}
.gs-cart-checkout-top {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 12px 28px; background: #111; color: #fff !important;
	border-radius: 8px; font-size: 13px; font-weight: 700;
	text-transform: uppercase; text-decoration: none !important;
	letter-spacing: .04em;
	transition: all .2s;
}
.gs-cart-checkout-top:hover { background: #333; color: #fff !important; }
.gs-cart-checkout-top:visited { color: #fff !important; }
.gs-cart-checkout-top svg { stroke: #fff !important; }

.gs-cart-table { width: 100%; border-top: 2px solid #111; }

.gs-cart-thead {
	display: grid; grid-template-columns: 2fr 1fr 100px 90px 1fr;
	gap: 12px; padding: 14px 0;
	border-bottom: 1px solid #e5e7eb;
	font-size: 12px; font-weight: 700; color: #6b7280;
	text-transform: uppercase; letter-spacing: .04em;
}

.gs-cart-row {
	display: grid; grid-template-columns: 2fr 1fr 100px 90px 1fr;
	gap: 12px; padding: 20px 0; align-items: center;
	border-bottom: 1px solid #e5e7eb;
	transition: background .15s;
}
.gs-cart-row:hover { background: #fafafa; }

.gs-td-product {
	display: flex; align-items: center; gap: 14px;
}
.gs-cart-img {
	width: 64px; height: 64px; flex-shrink: 0;
	border-radius: 8px; overflow: hidden; background: #f9f9f7;
	border: 1px solid #eee;
}
.gs-cart-img img { width: 100% !important; height: 100% !important; object-fit: contain !important; }
.gs-cart-name { font-size: 14px; font-weight: 600; color: #111; line-height: 1.4; }
.gs-cart-name a { color: inherit; text-decoration: none; }
.gs-cart-name a:hover { text-decoration: underline; }
.gs-cart-name dl { font-size: 12px; color: #999; margin: 4px 0 0; }

.gs-td-price { font-size: 14px; color: #111; font-weight: 500; }
.gs-td-subtotal { font-size: 15px; font-weight: 700; color: #111; text-align: right; }

.gs-td-qty { display: flex; justify-content: center; }

.gs-cart-qty {
	display: inline-flex; align-items: center;
	border: 1.5px solid #ddd; border-radius: 6px; overflow: hidden;
}
.gs-qty-btn {
	width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
	font-size: 16px; font-weight: 600; color: #555; background: #f5f5f5;
	border: none; cursor: pointer; transition: all 0.15s;
}
.gs-qty-btn:hover { background: #111; color: #fff; }
.gs-qty-input {
	width: 40px; height: 32px; text-align: center; font-size: 14px; font-weight: 600;
	border: none; border-left: 1.5px solid #ddd; border-right: 1.5px solid #ddd;
	color: #111; background: #fff; -moz-appearance: textfield;
}
.gs-qty-input::-webkit-outer-spin-button,
.gs-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.gs-td-actions {
	display: flex; align-items: center; gap: 8px; justify-content: center;
}
.gs-row-update, .gs-row-remove {
	width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
	border-radius: 6px; border: none; cursor: pointer;
	background: #f5f5f5; transition: all 0.15s; text-decoration: none;
}
.gs-row-update:hover { background: #dcfce7; }
.gs-row-remove:hover { background: #fee2e2; }

.gs-cart-summary {
	padding: 20px 0; border-bottom: 1px solid #e5e7eb;
}
.gs-cart-summary-rows {
	max-width: 400px; margin-left: auto;
}
.gs-summary-row {
	display: flex; justify-content: space-between; align-items: center;
	padding: 8px 0; font-size: 14px; color: #374151;
}
.gs-summary-total {
	border-top: 2px solid #111; margin-top: 8px; padding-top: 14px !important;
	font-size: 18px !important; font-weight: 800 !important; color: #111 !important;
}

.gs-cart-coupon-row {
	display: flex; align-items: center; gap: 16px;
	padding: 20px 0; border-bottom: 1px solid #e5e7eb;
	flex-wrap: wrap;
}
.gs-coupon-label { font-size: 13px; color: #555; }
.gs-coupon-inline { display: flex; gap: 8px; }
.gs-coupon-input {
	padding: 10px 14px; border: 1.5px solid #ddd; border-radius: 6px;
	font-size: 14px; width: 180px; outline: none;
}
.gs-coupon-input:focus { border-color: #111; }
.gs-coupon-btn {
	padding: 10px 20px; background: #111; color: #fff;
	border: none; border-radius: 6px; font-size: 12px;
	font-weight: 700; cursor: pointer; text-transform: uppercase;
	letter-spacing: .04em; transition: background .15s;
}
.gs-coupon-btn:hover { background: #333; }

.gs-cart-footer-row {
	display: flex; justify-content: space-between; align-items: center;
	padding: 24px 0; gap: 16px;
}
.gs-cart-continue {
	display: inline-flex; align-items: center; gap: 8px;
	color: #111; font-size: 14px; font-weight: 600;
	text-decoration: none; transition: color .15s;
}
.gs-cart-continue:hover { color: #555; }
.gs-cart-checkout-bottom {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 14px 32px; background: #111; color: #fff !important;
	border-radius: 8px; font-size: 14px; font-weight: 700;
	text-transform: uppercase; text-decoration: none !important;
	letter-spacing: .04em; transition: all .2s;
}
.gs-cart-checkout-bottom:hover { background: #333; color: #fff !important; }
.gs-cart-checkout-bottom:visited { color: #fff !important; }
.gs-cart-checkout-bottom svg { stroke: #fff !important; }

/* ── CHECKOUT ──────────────────────────────────────────────────────────── */

/* Override global .content-main max-width and .content-layout grid for checkout */
.woocommerce-checkout .content-main,
body.woocommerce-checkout .content-main {
	max-width: 100% !important;
	width: 100% !important;
}
.woocommerce-checkout .content-layout,
body.woocommerce-checkout .content-layout {
	display: block !important;
	grid-template-columns: unset !important;
}

.gs-checkout-form { max-width: 100%; margin: 0 auto; padding: 28px 20px; }

.gs-checkout-layout {
	display: grid; 
	grid-template-columns: 1fr 360px; 
	gap: 40px; 
	align-items: start;
	width: 100%;
}

@media (max-width: 1023px) {
	.gs-checkout-layout {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
	.gs-checkout-main {
		display: block !important;
		width: 100% !important;
		visibility: visible !important;
		height: auto !important;
		overflow: visible !important;
	}
	.gs-checkout-sidebar {
		position: static !important;
	}
}

.gs-checkout-title {
	font-size: 26px; font-weight: 800; color: #111; margin: 0 0 24px; letter-spacing: -.01em;
}

.gs-checkout-section {
	margin-bottom: 24px; padding-bottom: 24px;
	border-bottom: 1px solid #e5e7eb;
}
.gs-checkout-section:last-child { border-bottom: none; margin-bottom: 0; }

.gs-section-heading {
	display: flex; align-items: center; gap: 12px;
	font-size: 18px; font-weight: 800; color: #111; margin: 0 0 18px;
	letter-spacing: -.01em;
}
.gs-section-number {
	display: flex; align-items: center; justify-content: center;
	width: 32px; height: 32px; border-radius: 50%;
	background: #111; color: #fff;
	font-size: 13px; font-weight: 700; flex-shrink: 0;
}

/* Checkout billing/shipping fields grid */
.gs-checkout-form .woocommerce-billing-fields__field-wrapper,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px !important;
	width: 100% !important;
}

.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row {
	margin-bottom: 0 !important;
	display: block !important;
	width: 100% !important;
}

.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row-wide,
.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row.form-row-wide,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row-wide,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row.form-row-wide {
	grid-column: 1 / -1 !important;
}

/* Create 2-column grid for paired fields */
.gs-checkout-form .gs-checkout-section {
	display: block !important;
}

.gs-checkout-form .gs-checkout-section > h2 {
	margin-bottom: 24px !important;
}

.gs-checkout-form .form-row label {
	display: block; font-size: 12px; font-weight: 700;
	color: #333; margin-bottom: 8px;
	text-transform: uppercase; letter-spacing: .03em;
}
.gs-checkout-form .form-row label .required { color: #ef4444; }

/* Ensure all inputs inherit from form-row */
.gs-checkout-form .form-row {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 8px !important;
	align-items: start !important;
	width: 100% !important;
}

.gs-checkout-form .form-row input[type="text"],
.gs-checkout-form .form-row input[type="email"],
.gs-checkout-form .form-row input[type="tel"],
.gs-checkout-form .form-row input[type="number"],
.gs-checkout-form .form-row input[type="password"],
.gs-checkout-form .form-row select,
.gs-checkout-form .form-row textarea,
.gs-checkout-form .woocommerce-input-wrapper input,
.gs-checkout-form .woocommerce-input-wrapper select,
.gs-checkout-form .woocommerce-input-wrapper textarea,
.gs-checkout-form .select2-container .select2-selection--single {
	width: 100% !important; padding: 14px 16px !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 8px !important; font-size: 14px !important;
	color: #111 !important; background: #fff !important;
	outline: none !important; transition: border-color 0.2s, box-shadow 0.2s !important;
	box-sizing: border-box !important;
	height: auto !important;
	min-height: 50px !important;
}

/* Woocommerce input wrapper - display block */
.gs-checkout-form .woocommerce-input-wrapper {
	display: block !important;
	width: 100% !important;
}

/* All field inputs */
.gs-checkout-form .form-row input,
.gs-checkout-form .form-row select,
.gs-checkout-form .form-row textarea {
	width: 100% !important;
	box-sizing: border-box !important;
}
.gs-checkout-form .form-row input:focus,
.gs-checkout-form .form-row select:focus,
.gs-checkout-form .form-row textarea:focus,
.gs-checkout-form .woocommerce-input-wrapper input:focus,
.gs-checkout-form .select2-container--focus .select2-selection--single {
	border-color: #111 !important;
	box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}

.gs-checkout-form .form-row textarea { min-height: 100px !important; resize: vertical !important; }

.gs-checkout-form .select2-container { width: 100% !important; }
.gs-checkout-form .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0 !important; line-height: 1.4 !important; color: #111 !important;
}
.gs-checkout-form .select2-container .select2-selection--single .select2-selection__arrow {
	height: 100% !important; right: 12px !important;
}

.gs-checkout-form .woocommerce-input-wrapper { display: block !important; width: 100% !important; }

.gs-checkout-form h3 {
	font-size: 16px !important; font-weight: 700 !important;
	color: #111 !important; margin: 0 0 16px !important;
}

.gs-checkout-form .woocommerce-shipping-fields #ship-to-different-address label {
	font-size: 14px !important; font-weight: 600 !important; color: #374151 !important;
	cursor: pointer !important;
}

.gs-order-notes .form-row { margin: 0 !important; }

/* Override WC payment methods */
.gs-payment-methods .wc_payment_methods,
.gs-checkout-form #payment ul.payment_methods {
	list-style: none !important; padding: 0 !important; margin: 0 !important;
}
.gs-checkout-form #payment ul.payment_methods li {
	margin-bottom: 10px !important; padding: 18px !important;
	border: 2px solid #e5e7eb !important; border-radius: 10px !important;
	background: #fff !important; transition: all 0.2s;
}
.gs-checkout-form #payment ul.payment_methods li:hover {
	border-color: #ccc !important;
}
.gs-checkout-form #payment ul.payment_methods li.wc_payment_method input:checked ~ * {
	border-color: #111 !important;
}
.gs-checkout-form #payment ul.payment_methods li label {
	font-weight: 600 !important; color: #111 !important; cursor: pointer;
}
.gs-checkout-form #payment div.payment_box {
	background: #f9fafb !important; border-radius: 8px !important;
	padding: 14px !important; margin-top: 12px !important;
	font-size: 13px !important; color: #6b7280 !important;
}
.gs-checkout-form #payment div.payment_box::before { display: none !important; }

/* Force WooCommerce billing/shipping fields to be proper grid */
.gs-checkout-form .woocommerce-billing-fields,
.gs-checkout-form .woocommerce-shipping-fields {
	margin-bottom: 24px !important;
}

.gs-checkout-form .woocommerce-billing-fields__field-wrapper,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px !important;
	width: 100% !important;
}

.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row {
	margin-bottom: 0 !important;
	display: block !important;
}

.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row.form-row-wide,
.gs-checkout-form .woocommerce-billing-fields__field-wrapper .form-row-wide,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row.form-row-wide,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper .form-row-wide {
	grid-column: 1 / -1 !important;
}

.gs-checkout-form #place_order,
.gs-checkout-form button.button.alt {
	width: 100%; padding: 18px !important;
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important; border: none !important; border-radius: 10px !important;
	font-size: 15px !important; font-weight: 700 !important;
	text-transform: uppercase !important; cursor: pointer !important;
	letter-spacing: .04em;
	transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
	box-shadow: 0 4px 15px rgba(0,0,0,.2) !important;
}
.gs-checkout-form #place_order:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,.35) !important;
	transform: translateY(-2px) !important;
}

/* ── CHECKOUT SIDEBAR (RIGHT) ──────────────────────────────────────── */
.gs-checkout-sidebar { position: sticky; top: 24px; }

.gs-order-review {
	background: #f9f9f7;
	border-radius: 12px;
	padding: 22px;
	border: 1px solid #e5e7eb;
	word-wrap: break-word;
}
.gs-order-review h2 {
	font-size: 15px; font-weight: 800; color: #111;
	margin: 0 0 16px; letter-spacing: -.01em;
}

.gs-review-items { margin-bottom: 16px; }

.gs-review-item {
	display: flex; align-items: center; gap: 12px;
	padding: 10px 0; border-bottom: 1px solid #eee;
}
.gs-review-item:last-child { border-bottom: none; }

.gs-review-item-img {
	width: 50px; height: 50px; flex-shrink: 0;
	border-radius: 6px; overflow: hidden; background: #fff;
	border: 1px solid #eee;
}
.gs-review-item-img img { width: 100% !important; height: 100% !important; object-fit: contain !important; }

.gs-review-item-info { flex: 1; line-height: 1.4; }
.gs-review-item-name {
	display: block; font-size: 13px; font-weight: 600; color: #111;
	margin-bottom: 2px; line-height: 1.3;
}
.gs-review-item-qty-label { font-size: 12px; color: #999; }
.gs-review-item-info dl { font-size: 11px; color: #999; margin: 2px 0 0; }

.gs-review-item-price { font-size: 14px; font-weight: 700; color: #111; white-space: nowrap; }

.gs-review-totals { border-top: 1px solid #ddd; padding-top: 14px; }

.gs-totals-row {
	display: flex; justify-content: space-between; align-items: center;
	padding: 8px 0; font-size: 13px; color: #555;
}
.gs-totals-row:last-of-type { border-bottom: none; }
.gs-totals-total {
	border-top: 2px solid #111 !important; border-bottom: none !important;
	margin-top: 8px; padding-top: 14px !important;
	font-size: 17px !important; font-weight: 800 !important; color: #111 !important;
}
.gs-totals-tax { font-size: 12px !important; color: #999 !important; }

.gs-review-notes { padding: 14px 0; border-top: 1px solid #eee; }
.gs-review-notes label {
	display: flex; align-items: center; gap: 8px;
	font-size: 13px; color: #555; cursor: pointer;
}
.gs-review-notes input[type="checkbox"] { accent-color: #111; }
.gs-order-note-field {
	width: 100%; min-height: 70px; margin-top: 10px;
	padding: 10px; border: 1px solid #ddd; border-radius: 6px;
	font-size: 13px; resize: vertical;
}

.gs-review-consent { padding: 14px 0; border-top: 1px solid #eee; }
.gs-review-consent label {
	display: flex; align-items: flex-start; gap: 8px;
	font-size: 12px; color: #555; cursor: pointer;
	margin-bottom: 10px; line-height: 1.5;
}
.gs-review-consent input[type="checkbox"] { margin-top: 2px; accent-color: #111; }
.gs-review-consent a { color: #111; text-decoration: underline; }

.gs-review-submit { padding-top: 14px; border-top: 1px solid #eee; }
.gs-place-order-btn {
	width: 100%; padding: 16px;
	background: #111; color: #fff;
	border: none; border-radius: 8px;
	font-size: 14px; font-weight: 700;
	text-transform: uppercase; letter-spacing: .04em;
	cursor: pointer; transition: background .15s;
}
.gs-place-order-btn:hover { background: #333; }

/* Mobile sticky submit button – only visible on mobile */
.gs-mobile-sticky-submit { display: none; }
@media (max-width: 900px) {
	.gs-mobile-sticky-submit {
		display: block; position: fixed; bottom: 0; left: 0; right: 0;
		z-index: 9999; padding: 12px 16px;
		background: #fff; border-top: 1px solid #e5e7eb;
		box-shadow: 0 -4px 20px rgba(0,0,0,.1);
	}
	.gs-mobile-sticky-submit .gs-place-order-btn {
		width: 100%; padding: 16px; font-size: 15px;
		border-radius: 10px;
	}
	.gs-checkout-form { padding-bottom: 80px !important; }
}
.gs-submit-note {
	text-align: center; font-size: 11px; color: #999;
	margin: 8px 0 0;
}

.gs-coupon-section { padding-top: 14px; border-top: 1px solid #eee; }
.gs-coupon-toggle {
	background: none; border: none; color: #111;
	font-size: 13px; font-weight: 600; cursor: pointer;
	text-decoration: underline; padding: 0;
}
.gs-coupon-form {
	display: flex; gap: 6px; margin-top: 10px;
}

.gs-checkout-secure {
	display: flex; align-items: center; justify-content: center; gap: 6px;
	margin-top: 16px; font-size: 12px; color: #9ca3af;
}

/* Hide default WC place order button since we have our own */
.gs-checkout-form #payment .place-order { display: none !important; }

/* ── Checkout: Login toggle + Create account redesign ── */

/* Login toggle bar → modern card */
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	background: #f9fafb !important; border: 2px solid #e5e7eb !important;
	border-radius: 12px !important; padding: 16px 20px !important;
	color: #111 !important; font-size: 14px !important; font-weight: 500 !important;
	display: flex !important; align-items: center !important; gap: 10px !important;
	margin-bottom: 20px !important;
	box-shadow: none !important;
}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
	content: "" !important; display: none !important;
}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a {
	color: #111 !important; font-weight: 700 !important;
	text-decoration: underline !important; text-underline-offset: 3px !important;
}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a:hover {
	color: #333 !important;
}

/* Login form dropdown → modern card */
.woocommerce-checkout .woocommerce-form-login {
	background: #f9fafb !important; border: 2px solid #e5e7eb !important;
	border-radius: 12px !important; padding: 24px !important;
	margin-bottom: 24px !important;
}
.woocommerce-checkout .woocommerce-form-login p {
	font-size: 14px !important; color: #555 !important; line-height: 1.5 !important;
}
.woocommerce-checkout .woocommerce-form-login label {
	font-size: 12px !important; font-weight: 700 !important;
	text-transform: uppercase !important; letter-spacing: .04em !important;
	color: #333 !important; margin-bottom: 6px !important;
}
.woocommerce-checkout .woocommerce-form-login input[type="text"],
.woocommerce-checkout .woocommerce-form-login input[type="password"] {
	width: 100% !important; padding: 12px 14px !important;
	border: 2px solid #e5e7eb !important; border-radius: 8px !important;
	font-size: 14px !important; color: #111 !important; background: #fff !important;
	box-sizing: border-box !important; transition: border-color .2s !important;
}
.woocommerce-checkout .woocommerce-form-login input:focus {
	border-color: #111 !important; outline: none !important;
	box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}
.woocommerce-checkout .woocommerce-form-login .button {
	background: #111 !important; color: #fff !important;
	border: none !important; border-radius: 8px !important;
	padding: 12px 24px !important; font-size: 13px !important;
	font-weight: 700 !important; text-transform: uppercase !important;
	letter-spacing: .04em !important; cursor: pointer !important;
	transition: background .15s !important;
}
.woocommerce-checkout .woocommerce-form-login .button:hover {
	background: #333 !important;
}
.woocommerce-checkout .woocommerce-form-login .lost_password a {
	color: #6b7280 !important; font-size: 13px !important;
	text-decoration: none !important;
}
.woocommerce-checkout .woocommerce-form-login .lost_password a:hover {
	color: #111 !important; text-decoration: underline !important;
}

/* Checkout main flex for reordering sections */
.gs-checkout-main {
	display: flex !important; flex-direction: column !important;
}
.gs-checkout-main > .gs-checkout-section:nth-child(1) { order: 1; }
.gs-checkout-main > .gs-checkout-section--ship-pay { order: 2; }
.gs-checkout-main > .gs-checkout-account-section { order: 3; }

/* "Create account" / "Login" → modern card after shipping/payment */
.gs-checkout-account-section {
	padding: 16px 20px !important;
	background: #f9fafb !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 12px !important;
	margin-bottom: 24px !important;
}
.gs-account-card-row {
	display: flex; align-items: center; gap: 12px;
}
.gs-account-card-icon {
	width: 36px; height: 36px; border-radius: 50%;
	background: #111; display: flex; align-items: center; justify-content: center;
	flex-shrink: 0;
}
.gs-account-card-text {
	flex: 1; font-size: 14px; color: #333; line-height: 1.4;
}
.gs-account-card-text strong { color: #111; }
.gs-account-card-text a {
	color: #111; font-weight: 700;
	text-decoration: underline; text-underline-offset: 3px;
}
.gs-account-card-text a:hover { color: #555; }

/* Hide WC's default account-fields rendering inside billing */
.woocommerce-checkout .woocommerce-account-fields {
	display: none !important;
}
.woocommerce-checkout .woocommerce-account-fields .create-account {
	margin-top: 12px !important;
}
.woocommerce-checkout .woocommerce-account-fields label {
	display: flex !important; align-items: center !important; gap: 10px !important;
	font-size: 14px !important; font-weight: 600 !important; color: #111 !important;
	cursor: pointer !important;
}
.woocommerce-checkout .woocommerce-account-fields input[type="checkbox"] {
	width: 18px !important; height: 18px !important;
	accent-color: #111 !important; cursor: pointer !important;
}
.woocommerce-checkout .woocommerce-account-fields input[type="password"] {
	width: 100% !important; padding: 12px 14px !important;
	border: 2px solid #e5e7eb !important; border-radius: 8px !important;
	font-size: 14px !important; margin-top: 8px !important;
	box-sizing: border-box !important;
}

/* Hide WC coupon toggle from before_checkout (we have our own in sidebar) */
.woocommerce-checkout .woocommerce-form-coupon-toggle { display: none !important; }

/* Hide default WC login toggle bar (replaced by our custom card) */
.woocommerce-checkout .woocommerce-form-login-toggle { display: none !important; }
.woocommerce-checkout > .woocommerce-form-login { display: none !important; }

/* ── Back to cart link ── */
.gs-back-to-cart {
	display: inline-flex; align-items: center; gap: 6px;
	font-size: 13px; font-weight: 600; color: #e67e22;
	text-decoration: none; margin-bottom: 16px;
	transition: color .15s;
}
.gs-back-to-cart:hover { color: #d35400; }
.gs-back-to-cart svg { flex-shrink: 0; }

/* ── Shipping + Payment side by side ── */
.gs-ship-pay-grid {
	display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
}
.gs-ship-pay-col .gs-section-heading { margin-bottom: 14px; }

/* ── Shipping method box ── */
.gs-shipping-method-box {
	border: 2px solid #e5e7eb; border-radius: 10px;
	overflow: hidden;
}
.gs-shipping-method-selected {
	display: flex; align-items: center; gap: 12px;
	padding: 14px 16px; background: #f9fafb;
}
.gs-ship-icon { flex-shrink: 0; display: flex; }
.gs-ship-name { flex: 1; font-size: 14px; font-weight: 600; color: #111; }
.gs-ship-check { flex-shrink: 0; display: flex; }

/* ── Payment wrap (hide WC shipping calc) ── */
.gs-payment-wrap .woocommerce-shipping-totals,
.gs-payment-wrap #shipping_method,
.gs-checkout-form .woocommerce-shipping-fields { display: none !important; }

/* Payment box compact to match shipping height */
.gs-payment-wrap #payment { background: transparent !important; border: none !important; padding: 0 !important; }
.gs-payment-wrap #payment ul.payment_methods { margin: 0 !important; padding: 0 !important; }
.gs-payment-wrap #payment ul.payment_methods li {
	padding: 14px 16px !important; margin-bottom: 0 !important;
	border: 2px solid #e5e7eb !important; border-radius: 10px !important;
}

@media (max-width: 640px) {
	.gs-ship-pay-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* ── THANK YOU ─────────────────────────────────────────────────────────── */
.gs-thankyou { max-width: 700px; margin: 0 auto; padding: 60px 20px; }

.gs-thankyou-success { text-align: center; margin-bottom: 40px; }
.gs-thankyou-icon { margin-bottom: 20px; }
.gs-thankyou-success h1 { font-size: 28px; font-weight: 800; color: #111; margin: 0 0 8px; }
.gs-thankyou-msg { font-size: 15px; color: #6b7280; margin: 0; }

.gs-thankyou-failed { text-align: center; padding: 60px 20px; }
.gs-thankyou-failed h2 { font-size: 24px; font-weight: 700; color: #111; margin: 16px 0 8px; }
.gs-thankyou-failed p { color: #6b7280; margin: 0 0 24px; }

.gs-order-details-card,
.gs-order-items-card,
.gs-order-note-card {
	background: #f9fafb; border-radius: 16px; padding: 24px;
	margin-bottom: 20px; border: 1px solid #f3f4f6;
}
.gs-order-details-card h2,
.gs-order-items-card h3,
.gs-order-note-card h3 {
	font-size: 16px; font-weight: 700; color: #111; margin: 0 0 16px;
}

.gs-order-meta-grid {
	display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
}
.gs-order-meta-item { display: flex; flex-direction: column; gap: 2px; }
.gs-meta-label { font-size: 12px; color: #9ca3af; text-transform: uppercase; font-weight: 600; letter-spacing: 0.5px; }
.gs-meta-value { font-size: 14px; font-weight: 600; color: #111; }
.gs-meta-total { font-size: 18px; font-weight: 800; color: #111; }

.gs-order-items-list { display: flex; flex-direction: column; gap: 0; }

.gs-order-item-row {
	display: flex; align-items: center; gap: 12px;
	padding: 12px 0; border-bottom: 1px solid #e5e7eb;
}
.gs-order-item-row:last-child { border-bottom: none; }

.gs-order-item-img {
	width: 48px; height: 48px; flex-shrink: 0;
	border-radius: 8px; overflow: hidden; background: #fff;
}
.gs-order-item-img img {
	width: 100% !important; height: 100% !important; object-fit: cover !important;
}

.gs-order-item-info { flex: 1; }
.gs-order-item-name { display: block; font-size: 13px; font-weight: 600; color: #111; }
.gs-order-item-qty { display: block; font-size: 12px; color: #9ca3af; }
.gs-order-item-total { font-size: 14px; font-weight: 700; color: #111; }

.gs-thankyou-actions {
	display: flex; gap: 12px; justify-content: center; margin-top: 32px;
}

/* ── MY ACCOUNT ────────────────────────────────────────────────────────── */
.gs-account { max-width: 1100px; margin: 0 auto; padding: 40px 20px; }

.gs-account-layout {
	display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: start;
}

.gs-account-nav {
	background: #f9fafb; border-radius: 16px; padding: 24px;
	border: 1px solid #f3f4f6; position: sticky; top: 24px;
}

.gs-account-user {
	display: flex; align-items: center; gap: 12px;
	padding-bottom: 20px; margin-bottom: 16px;
	border-bottom: 1px solid #e5e7eb;
}
.gs-account-avatar img {
	width: 48px !important; height: 48px !important;
	border-radius: 50% !important; object-fit: cover !important;
}
.gs-account-user-info { display: flex; flex-direction: column; }
.gs-account-user-info strong { font-size: 14px; color: #111; }
.gs-account-user-info span { font-size: 12px; color: #9ca3af; }

.gs-account-menu { display: flex; flex-direction: column; gap: 2px; }

.gs-account-menu-item {
	display: flex; align-items: center; gap: 10px;
	padding: 10px 12px; border-radius: 10px;
	color: #374151; font-size: 14px; font-weight: 500;
	text-decoration: none; transition: all 0.15s;
}
.gs-account-menu-item:hover { background: #e5e7eb; color: #111; }
.gs-account-menu-item.is-active {
	background: #111; color: #fff; font-weight: 600;
}
.gs-account-menu-item.is-active svg { stroke: #fff; }

.gs-account-content {
	min-height: 400px;
}
.gs-account-content h2,
.gs-account-content h3 {
	font-size: 20px; font-weight: 700; color: #111; margin: 0 0 20px;
}

.gs-account-content table {
	width: 100%; border-collapse: collapse;
}
.gs-account-content table th,
.gs-account-content table td {
	padding: 12px 16px; text-align: left; border-bottom: 1px solid #f3f4f6;
	font-size: 14px;
}
.gs-account-content table th {
	font-weight: 600; color: #6b7280; font-size: 12px;
	text-transform: uppercase; letter-spacing: 0.5px;
}

.gs-account-content .woocommerce-Button,
.gs-account-content .button {
	padding: 10px 20px !important;
	background: #111 !important;
	color: #fff !important; border: none !important; border-radius: 8px !important;
	font-size: 13px !important; font-weight: 600 !important;
	cursor: pointer !important; text-decoration: none !important;
	transition: all .25s cubic-bezier(.34,1.56,.64,1) !important; display: inline-block !important;
	box-shadow: 0 2px 8px rgba(0,0,0,.12) !important;
}
.gs-account-content .woocommerce-Button:hover,
.gs-account-content .button:hover {
	background: #333 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 14px rgba(0,0,0,.2) !important;
}

/* ── AUTH (Login / Register) ───────────────────────────────────────────── */
.gs-auth {
	max-width: 900px; margin: 0 auto; padding: 60px 20px;
	display: grid; grid-template-columns: 1fr 1fr; gap: 32px;
}

.gs-auth-card {
	background: #f9fafb; border-radius: 16px; padding: 32px;
	border: 1px solid #f3f4f6;
}
.gs-auth-card h2 { font-size: 22px; font-weight: 700; color: #111; margin: 0 0 4px; }
.gs-auth-subtitle { font-size: 14px; color: #9ca3af; margin: 0 0 24px; }

.gs-form-group { margin-bottom: 16px; }
.gs-form-group label {
	display: block; font-size: 13px; font-weight: 600;
	color: #374151; margin-bottom: 6px;
}
.gs-form-group input {
	width: 100%; padding: 12px 14px; border: 1.5px solid #e5e7eb;
	border-radius: 10px; font-size: 14px; color: #111; background: #fff;
	outline: none; transition: border-color 0.2s; box-sizing: border-box;
}
.gs-form-group input:focus { border-color: #111; }

.gs-form-row { margin-bottom: 16px; }
.gs-form-row-between { display: flex; justify-content: space-between; align-items: center; }

.gs-checkbox-label {
	display: flex; align-items: center; gap: 6px;
	font-size: 13px; color: #374151; cursor: pointer;
}
.gs-checkbox-label input[type="checkbox"] {
	width: 16px; height: 16px; accent-color: #111;
}

.gs-forgot-link { font-size: 13px; color: #6b7280; text-decoration: none; }
.gs-forgot-link:hover { color: #111; text-decoration: underline; }

/* ── SHARED BUTTONS ────────────────────────────────────────────────────── */
.gs-btn-primary {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 14px 28px;
	background: linear-gradient(135deg, #111 0%, #333 100%);
	color: #fff;
	border: none; border-radius: 10px; font-size: 14px; font-weight: 700;
	text-transform: uppercase; text-decoration: none; cursor: pointer;
	letter-spacing: .04em;
	transition: all .3s cubic-bezier(.34,1.56,.64,1);
	box-shadow: 0 4px 15px rgba(0,0,0,.2);
}
.gs-btn-primary:hover {
	background: linear-gradient(135deg, #333 0%, #111 100%);
	color: #fff;
	box-shadow: 0 8px 25px rgba(0,0,0,.35);
	transform: translateY(-2px);
}

.gs-btn-secondary {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 14px 28px; background: #fff; color: #111;
	border: 2px solid #e5e7eb; border-radius: 10px; font-size: 14px; font-weight: 600;
	text-decoration: none; cursor: pointer; transition: all 0.2s;
}
.gs-btn-secondary:hover { border-color: #111; background: #f9fafb; }

.gs-btn-full { width: 100%; }

/* ── RESPONSIVE ────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
	.gs-cart { padding: 20px 16px; }
	.gs-cart-thead { display: none; }
	.gs-cart-row {
		display: flex; flex-wrap: wrap; gap: 12px;
		grid-template-columns: none;
	}
	.gs-td-product { width: 100%; }
	.gs-td-price, .gs-td-qty, .gs-td-actions, .gs-td-subtotal {
		flex: 1; text-align: center;
	}
	.gs-td-price::before, .gs-td-subtotal::before {
		display: block; font-size: 10px; color: #999;
		text-transform: uppercase; font-weight: 700;
		letter-spacing: .04em; margin-bottom: 4px;
	}
	.gs-td-price::before { content: attr(data-label); }
	.gs-td-subtotal::before { content: attr(data-label); }
	.gs-cart-summary-rows { max-width: none; }
	.gs-cart-coupon-row { flex-direction: column; align-items: flex-start; }
	.gs-cart-footer-row { flex-direction: column; gap: 12px; }
	.gs-cart-checkout-bottom { width: 100%; justify-content: center; }
	.gs-cart-checkout-top { width: 100%; justify-content: center; }
	.gs-cart-header-row { flex-direction: column; gap: 12px; align-items: stretch; }

	.gs-checkout-layout { grid-template-columns: 1fr !important; gap: 20px !important; }
	.gs-checkout-sidebar { position: static !important; order: -1 !important; }
	.gs-checkout-main { order: 1 !important; display: block !important; width: 100% !important; visibility: visible !important; height: auto !important; }
	.gs-checkout-form { padding: 16px 12px !important; }
	.gs-account-layout { grid-template-columns: 1fr; gap: 24px; }
	.gs-account-nav { position: static; }
	.gs-auth { grid-template-columns: 1fr; }

	.gs-checkout-section {
		display: block !important;
		margin-bottom: 24px !important;
		width: 100% !important;
	}

	.gs-checkout-section .woocommerce-billing-fields,
	.gs-checkout-section .woocommerce-shipping-fields {
		display: block !important;
		width: 100% !important;
	}

	.gs-checkout-form .woocommerce-billing-fields__field-wrapper,
	.gs-checkout-form .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr !important;
	}

	.gs-checkout-form .form-row,
	.woocommerce-checkout .form-row,
	body.woocommerce-checkout .form-row {
		width: 100% !important;
		display: block !important;
		margin-bottom: 12px !important;
		float: none !important;
	}

	.gs-checkout-form .form-row input,
	.gs-checkout-form .form-row select,
	.gs-checkout-form .form-row textarea,
	.gs-checkout-form .woocommerce-input-wrapper input,
	.gs-checkout-form .woocommerce-input-wrapper select,
	.woocommerce-checkout input,
	.woocommerce-checkout select,
	.woocommerce-checkout textarea {
		width: 100% !important;
		box-sizing: border-box !important;
		display: block !important;
	}

	.gs-checkout-form .woocommerce-billing-fields__field-wrapper,
	.gs-checkout-form .woocommerce-shipping-fields__field-wrapper {
		display: block !important;
		grid-template-columns: unset !important;
	}

	.gs-checkout-form .form-row-first,
	.gs-checkout-form .form-row-last {
		width: 100% !important;
		float: none !important;
		clear: both !important;
	}

	.gs-payment-methods {
		display: block !important;
	}
}

@media (max-width: 600px) {
	.gs-cart-title { font-size: 22px; }
	.gs-cart-item { gap: 12px; }
	.gs-cart-item-img { width: 72px; height: 72px; }
	.gs-cart-item-top { flex-direction: column; }
	.gs-cart-item-subtotal { margin-top: 4px; }
	.gs-cart-actions { flex-direction: column; }
	.gs-coupon-wrap { width: 100%; }
	.gs-coupon-input { flex: 1; width: auto; }
	.gs-update-cart { width: 100%; text-align: center; }
	.gs-checkout-title { font-size: 22px; }
	.gs-order-meta-grid { grid-template-columns: 1fr; }
	.gs-thankyou h1 { font-size: 22px; }
	.gs-thankyou-actions { flex-direction: column; }
	.gs-auth { padding: 40px 16px; }
	.gs-auth-card { padding: 24px; }
	.gs-account-menu-item { font-size: 13px; padding: 8px 10px; }
}


/* Old ATC sidebar popup — removed, replaced by modern modal */


/* ==========================================================================
   KUPI ODMAH - SAKRIVENO + WISHLIST LINK
   ========================================================================== */
.gs-buy-now-btn {
	display: none !important;
	border: none !important; border-radius: 12px !important;
	font-size: 15px !important; font-weight: 700 !important;
	text-transform: uppercase !important; cursor: pointer !important;
	transition: all .2s !important; letter-spacing: .5px;
}
.gs-buy-now-btn:hover {
	background: #333 !important;
	transform: translateY(-1px) !important;
}

.gs-wishlist-link {
	text-align: center; margin-top: 12px;
}
.gs-wishlist-link a {
	color: #6b7280; font-size: 14px; text-decoration: none;
	transition: color .15s;
}
.gs-wishlist-link a:hover { color: #111; }

/* WC form.cart layout fix for single product */
body .woocommerce div.product form.cart {
	display: flex !important; flex-direction: column !important; gap: 0 !important;
}
body .woocommerce div.product form.cart .variations {
	width: 100% !important; margin-bottom: 16px !important;
}
body .woocommerce div.product form.cart .single_variation_wrap {
	width: 100% !important;
}
body .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
	display: flex !important; gap: 12px !important; align-items: stretch !important;
	width: 100% !important;
}
body .woocommerce div.product form.cart .quantity {
	flex-shrink: 0 !important;
}
body .woocommerce div.product form.cart .single_add_to_cart_button {
	flex: 1 !important;
}


/* ==========================================================================
   CHECKOUT BADGES & COUPON TOGGLE
   ========================================================================== */
.gs-checkout-badges {
	margin-top: 20px; padding-top: 20px; border-top: 1px solid #e5e7eb;
	display: flex; flex-direction: column; gap: 14px;
}
.gs-checkout-badge {
	display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: #374151;
}
.gs-checkout-badge svg { flex-shrink: 0; margin-top: 1px; }
.gs-checkout-badge strong { display: block; font-weight: 600; }
.gs-checkout-badge span { display: block; color: #9ca3af; font-size: 12px; }

.gs-coupon-section {
	margin-top: 20px; padding-top: 16px; border-top: 1px solid #e5e7eb;
}
.gs-coupon-toggle {
	background: none; border: 2px solid #e5e7eb; border-radius: 10px;
	padding: 12px 20px; width: 100%; font-size: 13px; font-weight: 600;
	color: #374151; cursor: pointer; transition: all .15s;
	text-align: center;
}
.gs-coupon-toggle:hover { border-color: #111; color: #111; }

.gs-coupon-form {
	display: flex; gap: 8px; margin-top: 10px;
}

.gs-review-items-toggle { margin-bottom: 16px; }
.gs-review-toggle {
	display: flex; align-items: center; justify-content: space-between;
	width: 100%; padding: 10px 0; background: none; border: none;
	font-size: 14px; color: #374151; cursor: pointer;
	border-bottom: 1px solid #e5e7eb;
}
.gs-review-toggle svg { transition: transform .2s; }
.gs-review-toggle.open svg { transform: rotate(180deg); }

.gs-review-item-qty-label { display: block; font-size: 12px; color: #9ca3af; margin-top: 2px; }


/* ==========================================================================
   BROADER WC OVERRIDES – NUCLEAR SPECIFICITY
   ========================================================================== */

/* --- The #1 fix: woocommerce-input-wrapper MUST be block/full-width --- */
.woocommerce-input-wrapper,
span.woocommerce-input-wrapper,
.woocommerce form .form-row .woocommerce-input-wrapper,
.woocommerce form .form-row span.woocommerce-input-wrapper,
body .woocommerce form .form-row .woocommerce-input-wrapper,
body .woocommerce form .form-row span.woocommerce-input-wrapper,
body .woocommerce-page form .form-row .woocommerce-input-wrapper,
.gs-checkout-form .form-row .woocommerce-input-wrapper,
.gs-checkout-form .woocommerce-input-wrapper,
.gs-checkout-main .woocommerce-input-wrapper {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* --- Form rows: full width, proper spacing --- */
body .woocommerce form p.form-row,
body .woocommerce-page form p.form-row,
body .woocommerce form .form-row,
body .woocommerce-page form .form-row,
.gs-checkout-form p.form-row,
.gs-checkout-form .form-row,
.gs-checkout-main p.form-row {
	padding: 0 !important;
	margin: 0 0 14px 0 !important;
	box-sizing: border-box !important;
}

body .woocommerce form p.form-row-first,
body .woocommerce-page form p.form-row-first,
.gs-checkout-form p.form-row-first,
.gs-checkout-main p.form-row-first {
	width: 48% !important;
	float: left !important;
	clear: left !important;
}
body .woocommerce form p.form-row-last,
body .woocommerce-page form p.form-row-last,
.gs-checkout-form p.form-row-last,
.gs-checkout-main p.form-row-last {
	width: 48% !important;
	float: right !important;
	clear: right !important;
}
body .woocommerce form p.form-row-wide,
body .woocommerce-page form p.form-row-wide,
.gs-checkout-form p.form-row-wide,
.gs-checkout-main p.form-row-wide {
	width: 100% !important;
	float: none !important;
	clear: both !important;
}

/* --- ALL inputs, selects, textareas: FULL WIDTH --- */
body .woocommerce form .form-row input[type="text"],
body .woocommerce form .form-row input[type="email"],
body .woocommerce form .form-row input[type="tel"],
body .woocommerce form .form-row input[type="number"],
body .woocommerce form .form-row input[type="password"],
body .woocommerce form .form-row input[type="url"],
body .woocommerce form .form-row input[type="search"],
body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row select,
body .woocommerce form .form-row textarea,
body .woocommerce-page form .form-row input.input-text,
body .woocommerce-page form .form-row select,
body .woocommerce-page form .form-row textarea,
.gs-checkout-form .form-row input[type="text"],
.gs-checkout-form .form-row input[type="email"],
.gs-checkout-form .form-row input[type="tel"],
.gs-checkout-form .form-row input[type="number"],
.gs-checkout-form .form-row input[type="password"],
.gs-checkout-form .form-row input.input-text,
.gs-checkout-form .form-row select,
.gs-checkout-form .form-row textarea,
.gs-checkout-main input[type="text"],
.gs-checkout-main input[type="email"],
.gs-checkout-main input[type="tel"],
.gs-checkout-main input[type="number"],
.gs-checkout-main input[type="password"],
.gs-checkout-main input.input-text,
.gs-checkout-main select,
.gs-checkout-main textarea,
.gs-checkout-form .woocommerce-input-wrapper input,
.gs-checkout-form .woocommerce-input-wrapper select,
.gs-checkout-form .woocommerce-input-wrapper textarea {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 13px 16px !important;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	color: #111 !important;
	background: #fff !important;
	box-sizing: border-box !important;
	min-height: 48px !important;
	height: auto !important;
	outline: none !important;
	transition: border-color .2s, box-shadow .2s !important;
	-webkit-appearance: none !important;
}

body .woocommerce form .form-row input:focus,
body .woocommerce form .form-row select:focus,
body .woocommerce form .form-row textarea:focus,
.gs-checkout-form input:focus,
.gs-checkout-form select:focus,
.gs-checkout-form textarea:focus {
	border-color: #111 !important;
	box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}

body .woocommerce form .form-row textarea,
.gs-checkout-form textarea {
	min-height: 100px !important;
	resize: vertical !important;
}

/* --- Labels --- */
body .woocommerce form .form-row label,
body .woocommerce-page form .form-row label,
.gs-checkout-form .form-row label,
.gs-checkout-main .form-row label {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #374151 !important;
	margin-bottom: 6px !important;
	display: block !important;
	width: 100% !important;
}
.gs-checkout-form .form-row label .required,
body .woocommerce form .form-row label .required {
	color: #ef4444 !important;
}

/* --- Select2 --- */
body .woocommerce .select2-container,
.gs-checkout-form .select2-container,
.gs-checkout-main .select2-container {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}
body .woocommerce .select2-container .select2-selection--single,
.gs-checkout-form .select2-container .select2-selection--single {
	height: 48px !important;
	padding: 10px 16px !important;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 12px !important;
	display: flex !important;
	align-items: center !important;
	background: #fff !important;
}
body .woocommerce .select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 26px !important;
	color: #111 !important;
	padding: 0 !important;
}
body .woocommerce .select2-container .select2-selection--single .select2-selection__arrow {
	height: 100% !important;
	right: 12px !important;
}
body .woocommerce .select2-container--focus .select2-selection--single,
.gs-checkout-form .select2-container--focus .select2-selection--single {
	border-color: #111 !important;
	box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}

/* --- Clearfix for float rows --- */
body .woocommerce form .woocommerce-billing-fields__field-wrapper::after,
body .woocommerce form .woocommerce-shipping-fields__field-wrapper::after,
.gs-checkout-form .woocommerce-billing-fields__field-wrapper::after,
.gs-checkout-form .woocommerce-shipping-fields__field-wrapper::after {
	content: '' !important;
	display: table !important;
	clear: both !important;
}

/* --- Hide page title on checkout (WC adds its own) --- */
.woocommerce-checkout .gs-woo-container > .page-title,
.woocommerce-checkout .gs-woo-content > h1,
.woocommerce-checkout .entry-title {
	display: none !important;
}

/* --- Single product: form layout fix --- */
body .woocommerce div.product form.cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-end !important;
	gap: 0 !important;
}
body .woocommerce div.product form.cart .variations {
	width: 100% !important;
	margin-bottom: 16px !important;
}
body .woocommerce div.product form.cart .single_variation_wrap {
	width: 100% !important;
}
body .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
	display: flex !important;
	gap: 10px !important;
	align-items: stretch !important;
	width: 100% !important;
	flex-wrap: nowrap !important;
}
body .woocommerce div.product form.cart .quantity {
	flex-shrink: 0 !important;
	width: auto !important;
	margin: 0 !important;
}
body .woocommerce div.product form.cart .quantity .qty {
	width: 60px !important;
	min-height: 48px !important;
	text-align: center !important;
	border: 1.5px solid #e5e7eb !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
}
body .woocommerce div.product form.cart .single_add_to_cart_button {
	flex: 1 !important;
	min-height: 48px !important;
}

/* "KUPI ODMAH" full-width below - SAKRIVENO */
body .woocommerce div.product form.cart .gs-buy-now-btn {
	display: none !important;
}
body .woocommerce div.product form.cart .gs-wishlist-link {
	width: 100% !important;
	flex-basis: 100% !important;
	order: 11 !important;
}

/* ==========================================================================
   DESKTOP-ONLY FIXES (mobile already OK)
   ========================================================================== */
@media (min-width: 901px) {
	/* Checkout: form left (wider), sidebar right */
	.woocommerce-checkout .gs-checkout-layout,
	body.woocommerce-checkout .gs-checkout-layout {
		display: grid !important;
		grid-template-columns: 1fr 360px !important;
		gap: 40px !important;
		align-items: start !important;
	}

	.woocommerce-checkout .gs-checkout-sidebar,
	body.woocommerce-checkout .gs-checkout-sidebar {
		position: sticky !important;
		top: 24px !important;
		align-self: start !important;
	}

	.woocommerce-checkout .gs-checkout-main,
	body.woocommerce-checkout .gs-checkout-main {
		min-width: 0 !important;
		order: 0 !important;
	}

	body.woocommerce-checkout .woocommerce-input-wrapper,
	body.woocommerce-checkout span.woocommerce-input-wrapper,
	body.woocommerce-checkout .woocommerce form .form-row .woocommerce-input-wrapper {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.woocommerce-checkout input[type="text"],
	body.woocommerce-checkout input[type="email"],
	body.woocommerce-checkout input[type="tel"],
	body.woocommerce-checkout input[type="number"],
	body.woocommerce-checkout input[type="password"],
	body.woocommerce-checkout input.input-text,
	body.woocommerce-checkout select,
	body.woocommerce-checkout textarea {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 50px !important;
	}

	/* Single product desktop alignment */
	body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
		display: grid !important;
		grid-template-columns: auto minmax(0, 1fr) !important;
		gap: 10px !important;
	}

	body.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
		width: 100% !important;
	}
}

/* ===== MODERNA WOOCOMMERCE PRILAGODBA ===== */

/* Kategorija iznad naslova */
.gs-product-category {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #9ca3af;
	margin: 0 0 4px 0;
}

/* Stock badge — see SINGLE PRODUCT polished layout section */

/* Single Product - Moderan "Dodaj u korpu" dugme */
.woocommerce div.product form.cart .single_add_to_cart_button,
body.single-product .single_add_to_cart_button {
	padding: 16px 32px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	border-radius: 8px !important;
	cursor: pointer !important;
	transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	background: linear-gradient(135deg, #111 0%, #333 100%) !important;
	color: #fff !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	min-height: 52px !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.35) !important;
	background: linear-gradient(135deg, #333 0%, #111 100%) !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:active,
body.single-product .single_add_to_cart_button:active {
	transform: translateY(0) !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2) !important;
}

/* Moderna kontrola kolicine sa +/- dugmadima */
.woocommerce div.product form.cart .quantity,
body.single-product .quantity {
	display: inline-flex !important;
	align-items: center !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background: #fff !important;
	margin-right: 12px !important;
}

.gs-qty-btn {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f9fafb;
	border: none;
	font-size: 18px;
	font-weight: 600;
	color: #333;
	cursor: pointer;
	transition: all 0.2s ease;
	flex-shrink: 0;
	padding: 0;
	line-height: 1;
}

.gs-qty-btn:hover {
	background: #111;
	color: #fff;
}

.woocommerce div.product form.cart .quantity input.qty,
body.single-product .quantity input.qty {
	width: 50px !important;
	height: 44px !important;
	border: none !important;
	border-left: 1px solid #e5e7eb !important;
	border-right: 1px solid #e5e7eb !important;
	text-align: center !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	background: #fff !important;
	padding: 0 !important;
	-moz-appearance: textfield !important;
	margin: 0 !important;
}

.woocommerce div.product form.cart .quantity input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

/* Raspored kolicina + dugme */
.woocommerce div.product form.cart,
body.single-product form.cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-end !important;
	gap: 12px !important;
	margin-top: 20px !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
	flex: 1 !important;
}

/* Swatch dugmadi za ukuse/boje (JS-generisano) */
.gs-swatch-group {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 6px;
}

.gs-swatch-btn {
	padding: 10px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 6px;
	background: #fff;
	color: #333;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
	white-space: nowrap;
}

.gs-swatch-btn:hover {
	border-color: #333;
	transform: translateY(-2px);
}

.gs-swatch-btn.active {
	border-color: #111;
	background: #111;
	color: #fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	transform: scale(1.05);
}

/* Variation dropdown - lepši ako JS ne radi */
.woocommerce div.product form.cart table.variations select {
	padding: 10px 40px 10px 14px !important;
	border: 2px solid #e5e7eb !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #333 !important;
	background-color: #fff !important;
	cursor: pointer !important;
	transition: border-color 0.2s ease !important;
	appearance: none !important;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;
	background-repeat: no-repeat !important;
	background-position: right 10px center !important;
	background-size: 18px !important;
}

.woocommerce div.product form.cart table.variations select:hover,
.woocommerce div.product form.cart table.variations select:focus {
	border-color: #111 !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05) !important;
}

/* Variation labels */
.woocommerce div.product form.cart table.variations label {
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: #333 !important;
}

/* Variation tabela */
.woocommerce div.product form.cart table.variations {
	margin-bottom: 16px !important;
	border: none !important;
}

.woocommerce div.product form.cart table.variations td {
	padding: 8px 0 !important;
	border: none !important;
}

/* Single product cena */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #111 !important;
}

/* Shop kartice - moderna hover animacija */
.woocommerce ul.products li.product {
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	overflow: hidden !important;
	transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	background: #fff !important;
}

.woocommerce ul.products li.product:hover {
	border-color: #111 !important;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1) !important;
	transform: translateY(-4px) !important;
}

.woocommerce ul.products li.product img {
	transition: transform 0.4s ease !important;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.05) !important;
}

/* Shop kartice - Dodaj u korpu dugme */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button {
	padding: 11px 14px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	border-radius: 6px !important;
	border: 2px solid #111 !important;
	background: #111 !important;
	color: #fff !important;
	transition: all 0.2s ease !important;
	text-align: center !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover {
	background: #fff !important;
	color: #111 !important;
}

/* Sakri "Kupi odmah" dugme */
.shoptimizer-buy-now-btn,
button.buy-now-button,
.buy-now-btn,
.gs-buy-now-btn,
button.gs-buy-now-btn {
	display: none !important;
}

@media (max-width: 768px) {
	.gs-swatch-btn {
		padding: 8px 12px;
		font-size: 12px;
	}

	.gs-swatch-btn.active {
		transform: scale(1.02);
	}

	.woocommerce div.product form.cart .single_add_to_cart_button,
	body.single-product .single_add_to_cart_button {
		padding: 14px 20px !important;
		font-size: 14px !important;
	}

	.woocommerce div.product form.cart {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.woocommerce div.product form.cart .quantity {
		margin-right: 0 !important;
		margin-bottom: 8px !important;
		max-width: 180px !important;
	}
}

/* (duplicate checkout block removed – styles defined earlier) */

/* ===== TRUST SIGNALS (product page) ===== */
.gs-trust-signals {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin-top: 24px;
	border: 1px solid #eee;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}
.gs-trust-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid #f0f0f0;
}
.gs-trust-item:nth-child(odd) { border-right: 1px solid #f0f0f0; }
.gs-trust-item:nth-last-child(-n+2) { border-bottom: none; }
.gs-trust-icon {
	width: 38px; height: 38px; flex-shrink: 0;
	display: flex; align-items: center; justify-content: center;
	background: rgba(232,86,10,0.06); border-radius: 10px;
}
.gs-trust-icon svg { flex-shrink: 0; }
.gs-trust-text { display: flex; flex-direction: column; gap: 1px; }
.gs-trust-text strong {
	font-size: 13px; font-weight: 700; color: #111; line-height: 1.3;
}
.gs-trust-text span {
	font-size: 11.5px; color: #999; line-height: 1.3;
}
@media (max-width: 480px) {
	.gs-trust-signals { grid-template-columns: 1fr; }
	.gs-trust-item { border-right: none !important; border-bottom: 1px solid #f0f0f0; }
	.gs-trust-item:last-child { border-bottom: none; }
}

/* ===== SINGLE PRODUCT — polished layout ===== */

/* Brand label above title */
.gs-brand-label {
	font-size: 12px; color: #999; margin-bottom: 2px;
	text-transform: uppercase; letter-spacing: .06em;
}
.gs-brand-label strong { color: #E8560A; font-weight: 700; }

/* Category labels above title */
body .woocommerce div.product .posted_in,
.gs-woo-container .posted_in {
	font-size: 11px !important; text-transform: uppercase !important;
	letter-spacing: .06em !important; color: #bbb !important;
	margin-bottom: 2px !important;
}

/* Price spacing */
body .woocommerce div.product p.price,
body .woocommerce div.product span.price {
	margin-bottom: 8px !important;
}

/* Stock badge — clean pill style */
body .woocommerce div.product .stock,
.gs-stock-badge,
.gs-in-stock {
	display: inline-flex !important; align-items: center !important; gap: 4px !important;
	font-size: 12px !important; font-weight: 600 !important;
	padding: 5px 12px !important; border-radius: 20px !important;
	margin-bottom: 14px !important;
}
body .woocommerce div.product .stock.in-stock,
.gs-in-stock {
	background: #ecfdf5 !important; color: #059669 !important;
	border: 1px solid #a7f3d0 !important;
}
body .woocommerce div.product .stock.out-of-stock,
.gs-out-of-stock {
	background: #fef2f2 !important; color: #dc2626 !important;
	border: 1px solid #fecaca !important;
}

/* Short description spacing */
body .woocommerce div.product .woocommerce-product-details__short-description,
.gs-woo-container .woocommerce-product-details__short-description {
	margin-top: 6px !important;
	margin-bottom: 20px !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
	color: #444 !important;
}
body .woocommerce div.product .woocommerce-product-details__short-description p {
	margin-bottom: 8px !important;
}

/* Hide default WooCommerce product_meta (replaced by gs_custom_product_meta) */
body .woocommerce div.product .product_meta { display: none !important; }

/* Custom product meta */
.gs-product-meta {
	margin-top: 20px; padding-top: 16px;
	border-top: 1px solid #f0f0f0;
	display: flex; flex-direction: column; gap: 8px;
}
.gs-meta-row {
	display: flex; align-items: baseline; gap: 6px;
	font-size: 13px; line-height: 1.5;
}
.gs-meta-label {
	color: #aaa; font-weight: 500; white-space: nowrap;
}
.gs-meta-value {
	color: #555;
}
.gs-meta-value a {
	color: #555; text-decoration: none;
	transition: color .15s;
}
.gs-meta-value a:hover { color: #E8560A; }

/* ===== PRODUCT FILTERS (category pages) ===== */
.gs-filters-bar {
	display: flex; align-items: center; gap: 12px;
	margin-bottom: 20px; flex-wrap: wrap;
}
.gs-filter-toggle {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 10px 20px; background: #fff;
	border: 1.5px solid #e5e5e5; border-radius: 10px;
	font-size: 13px; font-weight: 700; color: #333;
	cursor: pointer; transition: all .2s;
}
.gs-filter-toggle:hover { border-color: #E8560A; color: #E8560A; }
.gs-filter-toggle.gs-filter-open { border-color: #E8560A; color: #E8560A; background: #fff5f0; }
.gs-active-filters {
	display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
}
.gs-filter-chip {
	display: inline-block; padding: 5px 12px;
	background: #f5f5f5; border-radius: 20px;
	font-size: 12px; font-weight: 600; color: #555;
}
.gs-filter-result {
	font-size: 12px; color: #999; font-weight: 500;
}
.gs-filter-panel {
	background: #fff; border: 1.5px solid #eee;
	border-radius: 14px; padding: 24px;
	margin-bottom: 24px;
	display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 24px; align-items: start;
}
.gs-filter-group {}
.gs-filter-title {
	font-size: 13px; font-weight: 800; color: #111;
	text-transform: uppercase; letter-spacing: .04em;
	margin: 0 0 12px; padding-bottom: 8px;
	border-bottom: 2px solid #f0f0f0;
}
.gs-price-range {
	display: flex; align-items: center; gap: 8px;
}
.gs-price-input {
	width: 90px; padding: 9px 12px;
	border: 1.5px solid #e5e5e5; border-radius: 8px;
	font-size: 13px; font-weight: 600; color: #333;
	outline: none; transition: border-color .15s;
}
.gs-price-input:focus { border-color: #E8560A; }
.gs-price-sep { color: #ccc; font-weight: 700; }
.gs-price-currency { font-size: 12px; color: #999; font-weight: 600; }
.gs-filter-checkboxes {
	display: flex; flex-direction: column; gap: 6px;
	max-height: 180px; overflow-y: auto;
}
.gs-filter-check {
	display: flex; align-items: center; gap: 8px;
	font-size: 13px; color: #444; cursor: pointer;
	padding: 4px 0; transition: color .15s;
}
.gs-filter-check:hover { color: #E8560A; }
.gs-filter-check input[type="checkbox"] {
	width: 16px; height: 16px; accent-color: #E8560A;
	border-radius: 4px; cursor: pointer;
}
.gs-filter-count { color: #bbb; font-size: 11px; }
.gs-filter-actions {
	display: flex; gap: 10px; align-items: center;
	grid-column: 1 / -1;
}
.gs-filter-apply {
	padding: 11px 28px; background: #E8560A; color: #fff;
	border: none; border-radius: 10px;
	font-size: 13px; font-weight: 700; cursor: pointer;
	transition: background .2s;
}
.gs-filter-apply:hover { background: #d04a09; }
.gs-filter-reset {
	padding: 11px 20px; background: none; color: #999;
	border: 1.5px solid #e5e5e5; border-radius: 10px;
	font-size: 13px; font-weight: 600; cursor: pointer;
	transition: all .2s;
}
.gs-filter-reset:hover { border-color: #ccc; color: #555; }
@media (max-width: 600px) {
	.gs-filter-panel { grid-template-columns: 1fr; padding: 20px 16px; gap: 20px; }
	.gs-filter-actions { flex-direction: row; }
	.gs-filter-apply { flex: 1; }
}

/* ===== PRODUCT TABS → ACCORDION (mobile) ===== */
@media (max-width: 768px) {
	.woocommerce-tabs,
	.woocommerce div.product .woocommerce-tabs,
	body .woocommerce-tabs { display: none !important; }
}
.gs-accordion {
	margin-top: 32px; border: 1px solid #eee; border-radius: 14px; overflow: hidden;
}
.gs-acc-item { border-bottom: 1px solid #f0f0f0; }
.gs-acc-item:last-child { border-bottom: none; }
.gs-acc-header {
	display: flex; align-items: center; justify-content: space-between;
	width: 100%; padding: 16px 20px;
	background: #fff; border: none;
	font-size: 15px; font-weight: 700; color: #111;
	cursor: pointer; text-align: left;
	transition: background .15s;
}
.gs-acc-header:hover { background: #fafafa; }
.gs-acc-header svg {
	flex-shrink: 0; transition: transform .25s;
	color: #999;
}
.gs-acc-item.gs-acc-open .gs-acc-header { background: #fafafa; }
.gs-acc-item.gs-acc-open .gs-acc-header svg { transform: rotate(180deg); color: #E8560A; }
.gs-acc-content {
	max-height: 0; overflow: hidden;
	transition: max-height .35s ease;
}
.gs-acc-item.gs-acc-open .gs-acc-content { max-height: 2000px; }
.gs-acc-inner { padding: 0 20px 20px; font-size: 14px; line-height: 1.7; color: #444; }
.gs-acc-inner p { margin: 0 0 10px; }
.gs-acc-inner h2 { display: none !important; }

/* ===== STICKY ADD TO CART (mobile) ===== */
.gs-sticky-atc {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9990;
	background: #fff;
	border-top: 1px solid #e5e7eb;
	box-shadow: 0 -4px 24px rgba(0,0,0,0.12);
	transform: translateY(100%);
	transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
	display: block;
}
.gs-sticky-atc.gs-sticky-visible { transform: translateY(0); }
.gs-sticky-atc-inner {
	display: flex;
	align-items: center;
	padding: 8px 16px;
	max-width: 1200px;
	margin: 0 auto;
	gap: 14px;
}
.gs-sticky-atc-thumb {
	flex-shrink: 0;
	width: 56px; height: 56px;
	border-radius: 8px;
	overflow: hidden;
	background: #f5f5f5;
	border: 1px solid #eee;
}
.gs-sticky-atc-thumb img {
	width: 100%; height: 100%;
	object-fit: contain;
}
.gs-sticky-atc-info {
	display: flex;
	flex-direction: column;
	min-width: 0;
	flex: 1;
	gap: 2px;
}
.gs-sticky-atc-name {
	font-size: 13px;
	font-weight: 600;
	color: #111;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.3;
}
.gs-sticky-atc-price {
	font-size: 15px;
	font-weight: 800;
	color: #E8560A;
	line-height: 1.3;
}
.gs-sticky-atc-price del {
	color: #9ca3af;
	font-size: 12px;
	font-weight: 400;
	margin-right: 4px;
}
.gs-sticky-atc-price ins { text-decoration: none; color: #E8560A; }
.gs-sticky-atc-price .woocommerce-Price-amount { color: inherit; }
.gs-sticky-atc-btn {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #E8560A;
	color: #fff;
	border: none;
	padding: 12px 24px;
	border-radius: 8px;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	cursor: pointer;
	white-space: nowrap;
	text-decoration: none;
	transition: background 0.2s, transform 0.15s;
}
.gs-sticky-atc-btn:hover { background: #d14a08; }
.gs-sticky-atc-btn:active { transform: scale(0.97); }
.gs-sticky-atc-btn svg { stroke: #fff; flex-shrink: 0; }
@media (max-width: 600px) {
	.gs-sticky-atc-inner { padding: 8px 12px; gap: 10px; }
	.gs-sticky-atc-thumb { width: 48px; height: 48px; }
	.gs-sticky-atc-name { font-size: 12px; }
	.gs-sticky-atc-price { font-size: 14px; }
	.gs-sticky-atc-btn { padding: 11px 16px; font-size: 12px; gap: 6px; }
	.gs-sticky-atc-btn svg { width: 16px; height: 16px; }
}

/* ===== RECENTLY VIEWED PRODUCTS ===== */
.gs-recently-viewed {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 1px solid #eee;
}
.gs-recently-viewed > h2 {
	font-size: 1rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 16px;
	color: #111;
}
.gs-rv-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}
.gs-rv-card {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid #eee;
	border-radius: 8px; overflow: hidden;
	text-decoration: none; padding: 12px;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.gs-rv-card:hover { border-color: #ddd; box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.gs-rv-card img { width: 100%; height: 120px; object-fit: contain; margin-bottom: 8px; }
.gs-rv-name {
	font-size: 12px; font-weight: 600; color: #111;
	display: -webkit-box; -webkit-line-clamp: 2;
	-webkit-box-orient: vertical; overflow: hidden;
	margin-bottom: 4px;
}
.gs-rv-price { font-size: 13px; font-weight: 700; color: #111; }
.gs-rv-price del { color: #999; font-weight: 400; font-size: 11px; }
.gs-rv-price ins { text-decoration: none; color: #dc2626; }
@media (max-width: 767px) {
	.gs-rv-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ===== URGENCY – LOW STOCK ===== */
.gs-urgency-stock {
	display: inline-block;
	padding: 6px 14px;
	background: #fef2f2;
	border: 1px solid #fecaca;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #dc2626;
	margin-top: 8px;
}

/* ===== SHIPPING PROGRESS BAR ===== */
.gs-shipping-progress {
	margin-bottom: 20px;
	padding: 14px 18px;
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	border-radius: 8px;
}
.gs-shipping-msg {
	font-size: 13px;
	color: #333;
	margin-bottom: 8px;
	font-weight: 500;
}
.gs-shipping-msg strong { color: #111; }
.gs-shipping-free {
	color: #16a34a;
	font-weight: 700;
	font-size: 14px;
}
.gs-shipping-bar {
	height: 8px;
	background: #e5e7eb;
	border-radius: 100px;
	overflow: hidden;
}
.gs-shipping-fill {
	height: 100%;
	background: linear-gradient(90deg, #22c55e, #16a34a);
	border-radius: 100px;
	transition: width 0.5s ease;
}

/* ===== MINI-CART SIDEBAR ===== */
.gs-mc-overlay {
	position: fixed; inset: 0;
	background: rgba(0,0,0,0.45);
	z-index: 99998;
	opacity: 0; visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}
.gs-mc-overlay.gs-mc-open { opacity: 1; visibility: visible; }
.gs-mc-sidebar {
	position: fixed; top: 0; right: 0; bottom: 0;
	width: 380px; max-width: 90vw;
	background: #fff;
	z-index: 99999;
	display: flex; flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.35s cubic-bezier(0.4,0,0.2,1);
	box-shadow: -8px 0 30px rgba(0,0,0,0.12);
}
.gs-mc-sidebar.gs-mc-open { transform: translateX(0); }
.gs-mc-header {
	display: flex; align-items: center; justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid #eee;
}
.gs-mc-title { font-size: 16px; font-weight: 700; color: #111; }
.gs-mc-count { font-weight: 400; color: #888; font-size: 14px; }
.gs-mc-close {
	background: none; border: none;
	font-size: 28px; color: #888; cursor: pointer;
	width: 36px; height: 36px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%;
}
.gs-mc-close:hover { background: #f5f5f5; color: #111; }
.gs-mc-shipping-bar { padding: 10px 20px; border-bottom: 1px solid #eee; }
.gs-mc-ship-msg { font-size: 12px; color: #555; margin-bottom: 5px; }
.gs-mc-ship-msg strong { color: #111; }
.gs-mc-ship-free { color: #16a34a; font-weight: 700; }
.gs-mc-ship-track { height: 5px; background: #e5e7eb; border-radius: 100px; overflow: hidden; }
.gs-mc-ship-fill { height: 100%; background: linear-gradient(90deg,#22c55e,#16a34a); border-radius: 100px; transition: width 0.5s; }
.gs-mc-items {
	flex: 1; overflow-y: auto;
	padding: 12px 20px;
}
.gs-mc-empty {
	text-align: center; padding: 40px 0;
	color: #999; font-size: 14px;
}
.gs-mc-item {
	display: flex; gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid #f0f0f0;
	position: relative;
	transition: opacity 0.2s;
}
.gs-mc-item:last-child { border-bottom: none; }
.gs-mc-remove {
	position: absolute; top: 8px; right: 0;
	width: 24px; height: 24px;
	background: none; border: none;
	font-size: 18px; line-height: 1;
	color: #bbb; cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%;
	transition: color 0.15s, background 0.15s;
	padding: 0;
}
.gs-mc-remove:hover { color: #dc2626; background: #fef2f2; }
.gs-mc-item-img { width: 64px; height: 64px; flex-shrink: 0; border-radius: 6px; overflow: hidden; background: #f9f9f7; }
.gs-mc-item-img img { width: 100%; height: 100%; object-fit: contain; }
.gs-mc-item-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; padding-right: 24px; }
.gs-mc-item-name {
	font-size: 13px; font-weight: 600; color: #111;
	text-decoration: none;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.gs-mc-item-name:hover { color: #E8560A; }
.gs-mc-item-meta { font-size: 11px; color: #888; }
.gs-mc-qty-row {
	display: inline-flex; align-items: center;
	border: 1px solid #e5e7eb; border-radius: 6px;
	overflow: hidden; margin: 4px 0 2px; align-self: flex-start;
}
.gs-mc-qty-btn {
	width: 30px; height: 28px;
	background: #f9fafb; border: none;
	font-size: 15px; font-weight: 600; color: #555;
	cursor: pointer; display: flex;
	align-items: center; justify-content: center;
	transition: background 0.15s, color 0.15s;
	padding: 0; line-height: 1;
}
.gs-mc-qty-btn:hover { background: #111; color: #fff; }
.gs-mc-qty-val {
	width: 32px; text-align: center;
	font-size: 13px; font-weight: 700; color: #111;
	background: #fff;
	border-left: 1px solid #e5e7eb;
	border-right: 1px solid #e5e7eb;
	line-height: 28px;
}
.gs-mc-item-price { font-size: 13px; font-weight: 700; color: #111; }
.gs-mc-item-price del { color: #999; font-weight: 400; font-size: 11px; }
.gs-mc-item-price ins { text-decoration: none; color: #dc2626; }
.gs-mc-footer {
	padding: 16px 20px;
	border-top: 1px solid #eee;
	background: #fafafa;
}
.gs-mc-subtotal {
	display: flex; justify-content: space-between;
	font-size: 15px; color: #111;
	margin-bottom: 12px;
}
.gs-mc-subtotal strong { font-size: 16px; }
.gs-mc-checkout-btn {
	display: block; text-align: center;
	background: #111; color: #fff;
	padding: 13px; border-radius: 6px;
	font-weight: 700; font-size: 13px;
	text-decoration: none; text-transform: uppercase;
	letter-spacing: 0.5px; margin-bottom: 8px;
}
.gs-mc-checkout-btn:hover { background: #E8560A; color: #fff; }
.gs-mc-viewcart-btn {
	display: block; text-align: center;
	color: #555; font-size: 12px;
	text-decoration: underline; font-weight: 500;
}
.gs-mc-viewcart-btn:hover { color: #111; }

/* ===== SEARCH AUTOCOMPLETE ===== */
/* Desktop dropdown — appended to body, positioned via JS */
.gs-search-dropdown--body {
	position: fixed;
	z-index: 999999;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.15);
	max-height: 380px;
	overflow-y: auto;
	display: none;
}
.gs-search-dropdown--body.gs-sd-open { display: block; }

/* Mobile dropdown — inside overlay, static */
.gs-search-dropdown {
	position: static;
	background: #fff;
	border: none;
	border-top: 1px solid #f0f0f0;
	border-radius: 0;
	box-shadow: none;
	max-height: 60vh;
	overflow-y: auto;
	display: none;
}
.gs-search-dropdown.gs-sd-open { display: block; }

/* Mobilni dropdown — unutar overlay-a, ne apsolutno */
.gs-search-dropdown--mob {
	position: static;
	border-radius: 0;
	border: none;
	border-top: 1px solid #f0f0f0;
	box-shadow: none;
	max-height: 60vh;
}
.gs-sd-item {
	display: flex; align-items: center; gap: 12px;
	padding: 10px 14px;
	text-decoration: none;
	border-bottom: 1px solid #f5f5f5;
	transition: background 0.15s;
}
.gs-sd-item:last-child { border-bottom: none; }
.gs-sd-item:hover { background: #f9f9f7; }
.gs-sd-img {
	width: 48px; height: 48px;
	object-fit: contain;
	border-radius: 4px;
	background: #f5f5f3;
	flex-shrink: 0;
}
.gs-sd-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.gs-sd-name {
	font-size: 13px; font-weight: 600; color: #111;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.gs-sd-price { font-size: 12px; color: #555; font-weight: 500; }
.gs-sd-price del { color: #999; }
.gs-sd-price ins { text-decoration: none; color: #dc2626; font-weight: 700; }
.gs-sd-empty { padding: 20px; text-align: center; color: #999; font-size: 13px; }

/* ===== BACK TO TOP ===== */
.gs-btt {
	position: fixed;
	bottom: 24px; right: 24px;
	width: 44px; height: 44px;
	background: #111; color: #fff;
	border: none; border-radius: 50%;
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	z-index: 9989;
	opacity: 0; visibility: hidden;
	transform: translateY(12px);
	transition: all 0.3s ease;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}
.gs-btt.gs-btt-show {
	opacity: 1; visibility: visible; transform: translateY(0);
}
.gs-btt:hover { background: #E8560A; transform: translateY(-2px); }
@media (max-width: 767px) {
	.gs-btt { bottom: 80px; right: 16px; width: 40px; height: 40px; }
}

/* ===== CROSS-SELL ===== */
.gs-cross-sells { margin-top: 32px; }
.gs-cross-sells h2 {
	font-size: 1rem; font-weight: 700;
	text-transform: uppercase; letter-spacing: 0.5px;
	margin-bottom: 16px; color: #111;
}
.gs-cross-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}
.gs-cross-card {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid #eee;
	border-radius: 8px; overflow: hidden;
	text-decoration: none; transition: border-color 0.2s, box-shadow 0.2s;
	padding: 12px;
}
.gs-cross-card:hover {
	border-color: #ddd;
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.gs-cross-card img {
	width: 100%; height: 120px;
	object-fit: contain; margin-bottom: 8px;
}
.gs-cross-name {
	font-size: 12px; font-weight: 600; color: #111;
	display: -webkit-box; -webkit-line-clamp: 2;
	-webkit-box-orient: vertical; overflow: hidden;
	margin-bottom: 4px;
}
.gs-cross-price { font-size: 13px; font-weight: 700; color: #111; }
.gs-cross-price del { color: #999; font-weight: 400; font-size: 11px; }
.gs-cross-price ins { text-decoration: none; color: #dc2626; }
@media (max-width: 767px) {
	.gs-cross-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ===== QUICK VIEW BUTTON ===== */
.gs-qv-btn {
	position: absolute;
	top: 10px; right: 10px;
	width: 36px; height: 36px;
	background: rgba(255,255,255,0.92);
	border: 1px solid #e5e5e5;
	border-radius: 50%;
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	z-index: 5;
	opacity: 0; transform: scale(0.8);
	transition: all 0.2s ease;
	color: #333;
}
li.product:hover .gs-qv-btn,
li.product:focus-within .gs-qv-btn {
	opacity: 1; transform: scale(1);
}
.gs-qv-btn:hover { background: #111; color: #fff; border-color: #111; }
li.product { position: relative; }

/* ===== QUICK VIEW MODAL ===== */
.gs-qv-overlay {
	position: fixed; inset: 0;
	background: rgba(0,0,0,0.5);
	z-index: 99998;
	opacity: 0; visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
}
.gs-qv-overlay.gs-qv-open { opacity: 1; visibility: visible; }
.gs-qv-modal {
	position: fixed;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%) scale(0.95);
	width: 750px; max-width: 92vw;
	max-height: 85vh;
	background: #fff;
	border-radius: 12px;
	z-index: 99999;
	overflow-y: auto;
	opacity: 0; visibility: hidden;
	transition: all 0.3s ease;
	box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}
.gs-qv-modal.gs-qv-open {
	opacity: 1; visibility: visible;
	transform: translate(-50%, -50%) scale(1);
}
.gs-qv-close {
	position: absolute; top: 12px; right: 12px;
	background: #f5f5f5; border: none;
	width: 36px; height: 36px;
	border-radius: 50%; font-size: 22px;
	cursor: pointer; color: #555;
	display: flex; align-items: center; justify-content: center;
	z-index: 2;
}
.gs-qv-close:hover { background: #111; color: #fff; }
.gs-qv-body { padding: 28px; }
.gs-qv-loading { text-align: center; padding: 60px 0; color: #999; font-size: 14px; }
.gs-qv-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	align-items: start;
}
.gs-qv-img { border-radius: 8px; overflow: hidden; background: #f9f9f7; }
.gs-qv-img img { width: 100%; height: auto; object-fit: contain; display: block; }
.gs-qv-info { display: flex; flex-direction: column; gap: 8px; }
.gs-qv-cats { font-size: 11px; color: #888; text-transform: uppercase; letter-spacing: 0.5px; }
.gs-qv-cats a { color: #888; text-decoration: none; }
.gs-qv-title { font-size: 1.2rem; font-weight: 700; color: #111; margin: 0; line-height: 1.3; }
.gs-qv-price { font-size: 1.1rem; font-weight: 700; color: #111; }
.gs-qv-price del { color: #999; font-weight: 400; font-size: 0.9rem; }
.gs-qv-price ins { text-decoration: none; color: #dc2626; }
.gs-qv-stock { font-size: 12px; font-weight: 600; }
.gs-qv-low { font-size: 12px; color: #dc2626; font-weight: 600; margin-left: 8px; }
.gs-qv-desc { font-size: 13px; color: #555; line-height: 1.6; margin-top: 4px; }
.gs-qv-view-btn {
	display: inline-block;
	background: #111; color: #fff;
	padding: 12px 24px; border-radius: 6px;
	font-weight: 700; font-size: 13px;
	text-decoration: none; text-align: center;
	text-transform: uppercase; letter-spacing: 0.5px;
	margin-top: 8px;
}
.gs-qv-view-btn:hover { background: #E8560A; color: #fff; }
.gs-qv-atc-btn {
	display: inline-block;
	background: transparent; color: #111;
	border: 2px solid #111;
	padding: 10px 24px; border-radius: 6px;
	font-weight: 700; font-size: 13px;
	text-decoration: none; text-align: center;
	text-transform: uppercase; letter-spacing: 0.5px;
}
.gs-qv-atc-btn:hover { border-color: #E8560A; color: #E8560A; }
@media (max-width: 600px) {
	.gs-qv-grid { grid-template-columns: 1fr; gap: 16px; }
	.gs-qv-body { padding: 20px; }
}

/* ===== ACCORDION TABS (mobile) ===== */
.gs-accordion { margin-top: 24px; }
.gs-acc-header {
	display: flex; justify-content: space-between; align-items: center;
	width: 100%; padding: 14px 16px;
	background: #f9f9f7; border: 1px solid #eee;
	border-bottom: none; cursor: pointer;
	font-size: 14px; font-weight: 700; color: #111;
	text-align: left; text-transform: uppercase;
	letter-spacing: 0.3px;
}
.gs-acc-header:first-child { border-radius: 8px 8px 0 0; }
.gs-acc-header:last-of-type { border-bottom: 1px solid #eee; }
.gs-acc-header svg {
	transition: transform 0.3s;
	flex-shrink: 0;
}
.gs-acc-header.gs-acc-open svg { transform: rotate(180deg); }
.gs-acc-header.gs-acc-open { background: #111; color: #fff; border-color: #111; }
.gs-acc-header.gs-acc-open svg { stroke: #fff; }
.gs-acc-content {
	padding: 16px;
	border: 1px solid #eee;
	border-top: none;
	font-size: 14px;
	line-height: 1.7;
	color: #444;
}
.gs-acc-content:last-child { border-radius: 0 0 8px 8px; }

/* ===== WISHLIST ===== */
.gs-wishlist-toggle {
	display: inline-flex; align-items: center; gap: 6px;
	background: none; border: 1.5px solid #e5e7eb;
	padding: 10px 18px; border-radius: 8px;
	font-size: 13px; font-weight: 600; color: #555;
	cursor: pointer; transition: all 0.2s; margin-top: 8px;
	width: 100%;
	justify-content: center;
}
.gs-wishlist-toggle:hover { border-color: #e74c3c; color: #e74c3c; }
.gs-wishlist-toggle.gs-wl-active { border-color: #e74c3c; color: #e74c3c; }
.gs-wishlist-toggle.gs-wl-active .gs-wl-heart { fill: #e74c3c; stroke: #e74c3c; }
.gs-wishlist-toggle.gs-wl-active .gs-wl-text::after { content: ' ✓'; }

.gs-wishlist-card-btn {
	position: absolute; top: 50px; right: 8px; z-index: 15;
	width: 32px; height: 32px;
	background: rgba(255,255,255,0.92); border: none;
	border-radius: 50%; cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
	transition: all 0.2s;
}
.gs-wishlist-card-btn:hover { transform: scale(1.15); }
.gs-wishlist-card-btn svg { stroke: #999; transition: all 0.2s; }
.gs-wishlist-card-btn:hover svg { stroke: #e74c3c; }
.gs-wishlist-card-btn.gs-wl-active svg { fill: #e74c3c; stroke: #e74c3c; }
.gs-wishlist-card-btn.gs-wl-active { background: #fff; }

.gs-wishlist-page { padding: 20px 0; }
.gs-wl-empty {
	text-align: center; padding: 60px 20px;
	color: #999;
}
.gs-wl-empty svg { margin-bottom: 16px; }
.gs-wl-empty p { font-size: 16px; margin: 0 0 16px; }
.gs-wl-shop-btn {
	display: inline-block; padding: 12px 32px;
	background: #111; color: #fff;
	border-radius: 8px; text-decoration: none;
	font-weight: 600; font-size: 14px;
}
.gs-wl-grid {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.gs-wl-card {
	position: relative; background: #fff;
	border: 1px solid #eee; border-radius: 12px;
	overflow: hidden; transition: box-shadow 0.2s;
}
.gs-wl-card:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.08); }
.gs-wl-remove {
	position: absolute; top: 8px; right: 8px; z-index: 10;
	width: 28px; height: 28px;
	background: rgba(0,0,0,0.6); color: #fff;
	border: none; border-radius: 50%; cursor: pointer;
	font-size: 16px; display: flex;
	align-items: center; justify-content: center;
}
.gs-wl-card-link { text-decoration: none; color: inherit; display: block; }
.gs-wl-card-link img {
	width: 100%; height: 200px;
	object-fit: contain; background: #f9f9f7;
}
.gs-wl-card-link h3 {
	padding: 12px 14px 4px; margin: 0;
	font-size: 13px; font-weight: 600; color: #111;
	line-height: 1.4;
}
.gs-wl-price {
	display: block; padding: 0 14px 8px;
	font-size: 14px; font-weight: 700; color: #111;
}
.gs-wl-atc {
	display: block; text-align: center;
	padding: 10px; background: #111; color: #fff;
	text-decoration: none; font-size: 12px;
	font-weight: 700; text-transform: uppercase;
	letter-spacing: 0.5px;
	border-top: 1px solid #eee;
}
.gs-wl-atc:hover { background: #333; }
@media (max-width: 767px) {
	.gs-wl-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}

/* ===== CART BADGE BOUNCE ===== */
@keyframes gs-bounce {
	0%   { transform: scale(1); }
	30%  { transform: scale(1.5); }
	50%  { transform: scale(0.9); }
	70%  { transform: scale(1.2); }
	100% { transform: scale(1); }
}
.cart-count.gs-badge-bounce {
	animation: gs-bounce 0.5s ease;
	background: #e74c3c !important;
}

/* ===== LOAD MORE ===== */
.gs-load-more-wrap {
	text-align: center; padding: 32px 0 16px;
	display: flex; flex-direction: column;
	align-items: center; gap: 10px;
}
.gs-load-more-btn {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 14px 40px;
	background: #111; color: #fff;
	border: none; border-radius: 8px;
	font-size: 14px; font-weight: 700;
	letter-spacing: 0.3px; cursor: pointer;
	transition: all 0.2s; min-width: 220px;
}
.gs-load-more-btn:hover:not(:disabled) { background: #333; transform: translateY(-1px); }
.gs-load-more-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.gs-load-more-info {
	font-size: 12px; color: #999;
	font-weight: 500;
}

/* ===== COOKIE CONSENT REDESIGN ===== */
.cookie-consent {
	position: fixed; bottom: 0; left: 0; right: 0;
	z-index: 9999;
	transform: translateY(100%);
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	padding: 0;
	background: none;
	box-shadow: none;
}
.cookie-consent.visible { transform: translateY(0); }

.gs-cc-inner {
	max-width: 520px; margin: 0 0 20px 20px;
	background: #111; color: #fff;
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 8px 40px rgba(0,0,0,0.25);
	display: flex; flex-wrap: wrap;
	gap: 16px; align-items: flex-start;
}
.gs-cc-icon { flex-shrink: 0; opacity: 0.7; padding-top: 2px; }
.gs-cc-text { flex: 1; min-width: 200px; }
.gs-cc-text strong {
	display: block; font-size: 15px;
	margin-bottom: 4px; letter-spacing: -0.2px;
}
.gs-cc-text p {
	font-size: 13px; line-height: 1.5;
	color: #aaa; margin: 0;
}
.gs-cc-text a {
	color: #fff; text-decoration: underline;
	text-underline-offset: 2px;
}
.gs-cc-prefs {
	margin-top: 12px; display: flex;
	flex-direction: column; gap: 8px;
}
.gs-cc-prefs label {
	display: flex; align-items: center; gap: 8px;
	font-size: 13px; color: #ccc; cursor: pointer;
}
.gs-cc-prefs input[type="checkbox"] {
	width: 16px; height: 16px;
	accent-color: #22c55e;
}
.gs-cc-actions {
	width: 100%; display: flex; gap: 8px;
}
.gs-cc-accept {
	flex: 1; padding: 12px 20px;
	background: #fff; color: #111;
	border: none; border-radius: 8px;
	font-size: 13px; font-weight: 700;
	cursor: pointer; transition: background 0.15s;
}
.gs-cc-accept:hover { background: #e5e7eb; }
.gs-cc-reject {
	flex: 1; padding: 12px 20px;
	background: transparent; color: #fff;
	border: 1px solid #444; border-radius: 8px;
	font-size: 13px; font-weight: 600;
	cursor: pointer; transition: border-color 0.15s;
}
.gs-cc-reject:hover { border-color: #fff; }

@media (max-width: 767px) {
	.gs-cc-inner {
		margin: 0 12px 12px; max-width: none;
		padding: 20px;
	}
	.gs-cc-icon { display: none; }
	.gs-cc-actions { flex-direction: column; }
}

/* =============================================
   SOCIAL PROOF POPUP
   ============================================= */
.gs-sp-popup {
	position: fixed;
	bottom: 24px;
	left: 24px;
	z-index: 9999;
	display: flex;
	align-items: center;
	gap: 12px;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.13);
	padding: 14px 40px 14px 16px;
	max-width: 320px;
	min-width: 260px;
	pointer-events: all;
}
.gs-sp-popup.gs-sp-show {
	animation: gsSpSlideIn 0.4s cubic-bezier(0.34,1.56,0.64,1) forwards;
}
.gs-sp-popup.gs-sp-hide {
	animation: gsSpSlideOut 0.35s ease forwards;
}
@keyframes gsSpSlideIn {
	from { transform: translateX(-110%); opacity: 0; }
	to   { transform: translateX(0);    opacity: 1; }
}
@keyframes gsSpSlideOut {
	from { transform: translateX(0);    opacity: 1; }
	to   { transform: translateX(-110%); opacity: 0; }
}
.gs-sp-icon {
	width: 36px; height: 36px; flex-shrink: 0;
	background: #16a34a;
	color: #fff;
	border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	font-size: 16px; font-weight: 800;
}
.gs-sp-text {
	display: flex; flex-direction: column; gap: 2px;
	min-width: 0;
}
.gs-sp-name {
	font-size: 13px; font-weight: 700; color: #111;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.gs-sp-msg {
	font-size: 12px; color: #555; line-height: 1.4;
}
.gs-sp-close {
	position: absolute; top: 8px; right: 10px;
	background: none; border: none;
	font-size: 18px; color: #bbb; cursor: pointer;
	line-height: 1; padding: 0;
	transition: color 0.15s;
}
.gs-sp-close:hover { color: #555; }
@media (max-width: 480px) {
	.gs-sp-popup {
		bottom: 80px; left: 12px; right: 12px;
		max-width: none;
	}
}

/* =============================================
   HEADER – ADMIN BAR OFFSET (sticky)
   ============================================= */
.admin-bar .site-header {
	top: 32px;
}
@media screen and (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}
}

/* ===== NAV ICONS (emoji) – sakriveni na desktopu, vidljivi samo u mobilnom draweru ===== */
.nav-list .nav-icon {
	display: none;
}
/* U mobilnom draweru prikazujemo emoji ikone */
.mobile-drawer .nav-list .nav-icon {
	display: inline-block;
	font-size: 14px;
	line-height: 1;
	margin-right: 6px;
	flex-shrink: 0;
}

/* =============================================
   MOBILE DRAWER — GARANTOVANO VIDLJIVI LINKOVI
   ============================================= */
@media (max-width: 992px) {
	/* Obični li — blok */
	#mobileDrawer .nav-list li:not(.has-mega),
	#mobileDrawer ul li:not(.has-mega) {
		display: block !important;
		list-style: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	/* has-mega li — flex da toggle ostane u istom redu kao link */
	#mobileDrawer .nav-list li.has-mega,
	#mobileDrawer ul li.has-mega {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		list-style: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	#mobileDrawer .nav-list li.has-mega > a {
		flex: 1 !important;
		min-width: 0 !important;
	}
	#mobileDrawer .nav-list li.has-mega > .gs-mobile-toggle {
		flex-shrink: 0 !important;
		order: 2 !important;
	}
	#mobileDrawer .nav-list li.has-mega > .mega-menu {
		flex-basis: 100% !important;
		order: 3 !important;
		width: 100% !important;
	}

	/* Svi linkovi */
	#mobileDrawer .nav-list li a,
	#mobileDrawer ul li a {
		display: flex !important;
		align-items: center !important;
		padding: 16px 16px 16px 20px !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		text-decoration: none !important;
		background: transparent !important;
		min-height: 52px !important;
		-webkit-tap-highlight-color: transparent;
		touch-action: manipulation;
	}

	/* nav-icon (emoji) — sakriveni */
	#mobileDrawer .nav-icon { display: none !important; }

	/* nav-arrow (▼) — desno u linku */
	#mobileDrawer .nav-arrow {
		margin-left: auto;
		font-size: 10px;
		opacity: 0.4;
		flex-shrink: 0;
	}
}

/* =============================================
   MOBILE HEADER — Logo levo | Korpa+Lupa+Hamburger desno
   ============================================= */

/* Desktop: sakrij mobile-only elemente */
.gs-mob-right,
.logo--mobile {
	display: none !important;
}
.gs-mob-search-overlay { display: none; }
.gs-drawer-account { display: none; }

@media (max-width: 768px) {

	/* Sakrij desktop elemente */
	.logo--desktop,
	.header-search--desktop,
	.header-icons--desktop {
		display: none !important;
	}

	/* Header: logo LEVO, ikone DESNO — kao GIV SPORT */
	.site-header .header-inner {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		padding: 0 14px !important;
		height: 64px !important;
		gap: 0 !important;
		background: #fff !important;
	}

	/* Logo — LEVO */
	.logo--mobile {
		display: flex !important;
		align-items: center !important;
		flex-shrink: 0 !important;
		order: 1 !important;
	}
	.logo--mobile img {
		height: 42px;
		width: auto;
		display: block;
	}

	/* Ikone — DESNO: korpa, lupa, hamburger */
	.gs-mob-right {
		display: flex !important;
		align-items: center !important;
		gap: 12px !important;
		flex-shrink: 0 !important;
		order: 2 !important;
	}

	/* Zajednički stil svih mobilnih ikona */
	.gs-mob-icon,
	.gs-mob-search-btn,
	.gs-mob-hamburger {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		background: none;
		border: none;
		color: #333;
		cursor: pointer;
		padding: 0;
		border-radius: 8px;
		-webkit-tap-highlight-color: transparent;
		touch-action: manipulation;
		flex-shrink: 0;
		text-decoration: none;
		position: relative;
		transition: background 0.15s ease;
	}
	.gs-mob-icon svg,
	.gs-mob-search-btn svg,
	.gs-mob-hamburger svg {
		width: 24px;
		height: 24px;
	}
	.gs-mob-icon:hover,
	.gs-mob-search-btn:hover,
	.gs-mob-hamburger:hover { background: #f5f5f5; }
	.gs-mob-icon:active,
	.gs-mob-search-btn:active,
	.gs-mob-hamburger:active { background: #eee; }

	/* Cart badge */
	.gs-mob-cart .cart-count {
		position: absolute;
		top: 5px;
		right: 4px;
		min-width: 16px;
		height: 16px;
		border-radius: 999px;
		background: #E8560A;
		color: #fff;
		font-size: 9px;
		font-weight: 800;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 3px;
		border: 2px solid #fff;
		line-height: 1;
		pointer-events: none;
	}

	/* Search overlay */
	.gs-mob-search-overlay {
		display: block;
		position: absolute;
		top: 100%;
		left: 0; right: 0;
		background: #fff;
		border-top: 2px solid #E8560A;
		box-shadow: 0 6px 20px rgba(0,0,0,0.12);
		z-index: 601;
		transform: translateY(-4px);
		opacity: 0;
		pointer-events: none;
		transition: transform 0.2s ease, opacity 0.2s ease;
	}
	.gs-mob-search-overlay.open {
		transform: translateY(0);
		opacity: 1;
		pointer-events: auto;
	}
	.gs-mob-search-inner {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 12px 16px;
		color: #bbb;
	}
	.gs-mob-search-inner svg { flex-shrink: 0; }
	#gsMobSearchInput {
		flex: 1;
		border: none !important;
		outline: none !important;
		box-shadow: none !important;
		background: transparent;
		font-size: 16px;
		color: #111;
		min-width: 0;
		-webkit-appearance: none;
		appearance: none;
	}
	#gsMobSearchInput::placeholder { color: #bbb; }
	.gs-mob-search-close {
		background: none;
		border: none;
		font-size: 24px;
		color: #999;
		cursor: pointer;
		line-height: 1;
		padding: 4px;
		flex-shrink: 0;
		-webkit-tap-highlight-color: transparent;
	}

	/* Nav traka — sakrij, drawer ostaje funkcionalan */
	.main-nav {
		min-height: 0 !important;
		height: 0 !important;
		overflow: visible !important;
		padding: 0 !important;
		box-shadow: none !important;
	}
	.main-nav .nav-container {
		height: 0 !important;
		min-height: 0 !important;
		overflow: visible !important;
		padding: 0 !important;
	}
	.main-nav .hamburger { display: none !important; }
	.main-nav .nav-container > .nav-list,
	.main-nav > .nav-container > ul { display: none !important; }

	/* Account links u drawer-u */
	.gs-drawer-account {
		display: flex !important;
		align-items: center;
		justify-content: center;
		padding: 11px 20px;
		border-bottom: 1px solid #e8e8e8;
		background: #fafafa;
	}
	.gs-drawer-account a {
		font-size: 13px;
		font-weight: 600;
		color: #444;
		text-decoration: none;
		padding: 0 10px;
	}
	.gs-drawer-account a:active { color: #E8560A; }
	.gs-drawer-account-sep {
		color: #ccc;
		font-size: 13px;
	}
}

/* =============================================
   MOBILE DRAWER — BELI TEMA
   Bela pozadina, tamni tekst, Rasprodaja narandžasta
   ============================================= */
@media (max-width: 992px) {

	/* ── Drawer pozadina ── */
	#mobileDrawer,
	body .main-nav .mobile-drawer {
		background: #fff !important;
		box-shadow: 4px 0 24px rgba(0,0,0,0.15) !important;
	}

	/* ── Drawer header: samo X dugme, bez loga ── */
	body .main-nav .mobile-drawer-header,
	#mobileDrawer .mobile-drawer-header {
		background: #fff !important;
		border-bottom: 1px solid #e8e8e8 !important;
		padding: 10px 14px !important;
		min-height: 48px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
	}
	/* Sakrij logo u draweru ako postoji */
	body .main-nav .mobile-drawer-logo-wrap,
	#mobileDrawer .mobile-drawer-logo-wrap {
		display: none !important;
	}
	body .main-nav .mobile-drawer-logo,
	#mobileDrawer .mobile-drawer-logo {
		height: 34px !important;
		max-height: 34px !important;
		width: auto !important;
		max-width: 140px !important;
		display: block !important;
		object-fit: contain !important;
	}
	#mobileDrawer .mobile-drawer-close,
	body .main-nav .mobile-drawer-close {
		width: 36px !important;
		height: 36px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		color: #555 !important;
		background: #f5f5f5 !important;
		border: none !important;
		border-radius: 50% !important;
		font-size: 0 !important;
		cursor: pointer !important;
		flex-shrink: 0 !important;
	}

	/* ── Li elementi ── */
	#mobileDrawer .nav-list li,
	body .main-nav .mobile-drawer .nav-list li {
		background: #fff !important;
		border-bottom: 1px solid #eee !important;
		transition: background 0.15s ease !important;
	}
	#mobileDrawer .nav-list > li:hover,
	body .main-nav .mobile-drawer .nav-list > li:hover {
		background: #f5f5f5 !important;
	}

	/* ── Svi glavni linkovi ── */
	#mobileDrawer .nav-list > li > a,
	body .main-nav .mobile-drawer .nav-list > li > a {
		color: #111 !important;
		background: transparent !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.04em !important;
		padding: 16px 16px 16px 20px !important;
		min-height: 52px !important;
		display: flex !important;
		align-items: center !important;
		flex: 1 !important;
		transition: background 0.15s ease, color 0.15s ease !important;
		-webkit-tap-highlight-color: rgba(232,86,10,0.08) !important;
	}
	#mobileDrawer .nav-list > li > a:hover,
	body .main-nav .mobile-drawer .nav-list > li > a:hover,
	#mobileDrawer .nav-list > li > a:active,
	body .main-nav .mobile-drawer .nav-list > li > a:active {
		background: #f0f0f0 !important;
		color: #E8560A !important;
	}
	#mobileDrawer .nav-list .mega-menu a:hover,
	#mobileDrawer .nav-list .sub-menu a:hover,
	#mobileDrawer .nav-list .mega-menu a:active,
	#mobileDrawer .nav-list .sub-menu a:active {
		background: #f0f0f0 !important;
		color: #E8560A !important;
	}

	/* ── nav-arrow u linku ── */
	#mobileDrawer .nav-list > li > a .nav-arrow {
		display: inline-block !important;
		margin-left: auto !important;
		padding-left: 12px !important;
		color: #bbb !important;
		font-size: 10px !important;
		opacity: 1 !important;
		flex-shrink: 0 !important;
	}

	/* ── Toggle dugme (chevron) ── */
	#mobileDrawer .gs-mobile-toggle {
		width: 36px !important;
		height: 36px !important;
		min-width: 36px !important;
		background: #f0f0f0 !important;
		border-radius: 6px !important;
		color: #777 !important;
		margin-right: 8px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-shrink: 0 !important;
		transition: background 0.15s ease, color 0.15s ease !important;
	}
	#mobileDrawer .gs-mobile-toggle:hover,
	#mobileDrawer .gs-mobile-toggle:active {
		background: #ddd !important;
		color: #E8560A !important;
	}

	/* ── RASPRODAJA — narandžasta ── */
	#mobileDrawer .nav-sale-item,
	body .main-nav .mobile-drawer .nav-sale-item,
	#mobileDrawer .nav-list li.nav-sale-item {
		background: #E8560A !important;
		border-bottom: 1px solid rgba(255,255,255,0.15) !important;
	}
	#mobileDrawer .nav-sale-item > a,
	#mobileDrawer .nav-list .nav-sale-item > a,
	body .main-nav .mobile-drawer .nav-list .nav-sale-item > a {
		color: #fff !important;
		background: transparent !important;
	}
	#mobileDrawer .nav-sale-item > a .nav-arrow,
	#mobileDrawer .nav-sale-item .nav-arrow {
		color: rgba(255,255,255,0.6) !important;
	}
	#mobileDrawer .nav-sale-item .gs-mobile-toggle {
		background: rgba(255,255,255,0.2) !important;
		color: #fff !important;
	}

	/* ── Mega menu — accordion, bela tema ── */
	#mobileDrawer .mega-menu,
	body .main-nav .mobile-drawer .mega-menu {
		display: none;
		position: static !important;
		background: #f7f7f7 !important;
		border: none !important;
		border-top: 1px solid #e8e8e8 !important;
		padding: 6px 0 10px !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: 100% !important;
		order: 3 !important;
		box-shadow: none !important;
		overflow: hidden !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		animation: gsMegaSlideIn 0.22s ease !important;
	}
	#mobileDrawer .has-mega.mega-open > .mega-menu,
	body .main-nav .mobile-drawer .has-mega.mega-open > .mega-menu {
		display: block !important;
	}
	/* has-mega flex layout */
	#mobileDrawer .has-mega,
	body .main-nav .mobile-drawer .has-mega {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		overflow: visible !important;
	}
	#mobileDrawer .has-mega > a {
		flex: 1 !important;
		min-width: 0 !important;
		order: 1 !important;
	}
	#mobileDrawer .has-mega > .gs-mobile-toggle {
		order: 2 !important;
		flex-shrink: 0 !important;
	}
	#mobileDrawer .has-mega > .mega-menu {
		order: 3 !important;
	}

	/* Toggle SVG transition */
	#mobileDrawer .gs-mobile-toggle svg {
		transition: transform 0.22s ease !important;
	}

	#mobileDrawer .mega-menu h4 {
		color: #aaa !important;
		font-size: 10px !important;
		letter-spacing: 0.1em !important;
		padding: 10px 20px 4px 20px !important;
		text-transform: uppercase !important;
		display: block !important;
	}
	#mobileDrawer .mega-menu ul {
		list-style: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	#mobileDrawer .mega-menu li {
		display: block !important;
		background: transparent !important;
		border-bottom: none !important;
	}
	#mobileDrawer .mega-menu li a {
		color: #333 !important;
		text-transform: none !important;
		font-weight: 500 !important;
		font-size: 13px !important;
		padding: 9px 20px 9px 28px !important;
		min-height: 0 !important;
		letter-spacing: 0 !important;
		display: block !important;
		transition: background 0.15s ease, color 0.15s ease !important;
		text-decoration: none !important;
		background: transparent !important;
		-webkit-tap-highlight-color: rgba(232,86,10,0.08) !important;
	}
	#mobileDrawer .mega-menu li a:hover,
	#mobileDrawer .mega-menu li a:active {
		background: #eeeeee !important;
		color: #E8560A !important;
	}

	/* ── PROTEINI / VITAMINI / STIMULATORI: jedna kolona kao „Zdrava hrana“ ──
	   Grid minmax(180px) pravi 2+ kolone → izgled „podeljenog“ ekrana */
	#mobileDrawer .mega-menu .mega-menu-grid,
	body .main-nav .mobile-drawer .mega-menu .mega-menu-grid {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		grid-template-columns: none !important;
	}

	#mobileDrawer .mega-menu .mega-col,
	body .main-nav .mobile-drawer .mega-menu .mega-col {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 0 0 auto !important;
		display: block !important;
		border-bottom: 1px solid #e8e8e8 !important;
		padding: 0 0 4px !important;
		margin: 0 !important;
	}

	#mobileDrawer .mega-menu .mega-col:last-child {
		border-bottom: none !important;
	}

	#mobileDrawer .mega-menu .mega-col h4 {
		margin: 0 !important;
		padding: 12px 20px 6px !important;
		border-bottom: none !important;
		background: #ececec !important;
		color: #888 !important;
		font-size: 10px !important;
		font-weight: 700 !important;
		letter-spacing: 0.08em !important;
	}

	#mobileDrawer .mega-menu .mega-col ul li a {
		white-space: normal !important;
		word-break: break-word !important;
	}

	/* Jedna strelica (toggle), ne i ▼ u tekstu */
	#mobileDrawer .has-mega > a .nav-arrow {
		display: none !important;
	}

	/* Ukloni desktop narandžastu crtu ispod reda u draweru */
	#mobileDrawer .nav-list > li > a::after,
	#mobileDrawer .nav-list > li:hover > a::after,
	#mobileDrawer .nav-list > li.mega-open > a::after {
		display: none !important;
		content: none !important;
	}
}

@keyframes gsMegaSlideIn {
	from { opacity: 0; transform: translateY(-6px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* =============================================
   NUCLEAR FIX — DRAWER MEGA-MENU
   Ovo je na KRAJU fajla sa maksimalnom specifičnošću
   da pobedi SVE prethodne konflikte.
   ============================================= */
@media (max-width: 992px) {
	/* Drawer ne sme da pušta sadržaj van okvira */
	body .main-nav #mobileDrawer,
	body .main-nav .mobile-drawer {
		overflow-x: hidden !important;
	}
	body .main-nav #mobileDrawer .nav-list,
	body .main-nav #mobileDrawer ul.nav-list {
		overflow-x: hidden !important;
	}

	/* SVAKI mega-menu u draweru: STATIC, nikad absolute, sakriveno po defaultu */
	body .main-nav #mobileDrawer .mega-menu,
	body .main-nav #mobileDrawer .has-mega > .mega-menu,
	body .main-nav .mobile-drawer .mega-menu,
	body .main-nav .mobile-drawer .has-mega > .mega-menu,
	#mobileDrawer .mega-menu,
	#mobileDrawer .has-mega > .mega-menu {
		position: static !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		transform: none !important;
		display: none !important;
		flex-basis: 100% !important;
		order: 99 !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
	}

	/* Otvoren mega-menu — VIDLJIV */
	body .main-nav #mobileDrawer .has-mega.mega-open > .mega-menu,
	body .main-nav .mobile-drawer .has-mega.mega-open > .mega-menu,
	#mobileDrawer .has-mega.mega-open > .mega-menu {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
	}

	/* has-mega = flex da mega-menu ide u novi red */
	body .main-nav #mobileDrawer .has-mega,
	body .main-nav .mobile-drawer .has-mega,
	#mobileDrawer .has-mega {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		position: relative !important;
		overflow: visible !important;
	}
	body .main-nav #mobileDrawer .has-mega > a,
	#mobileDrawer .has-mega > a {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		order: 1 !important;
	}
	body .main-nav #mobileDrawer .has-mega > .gs-mobile-toggle,
	#mobileDrawer .has-mega > .gs-mobile-toggle {
		flex: 0 0 auto !important;
		order: 2 !important;
	}
	body .main-nav #mobileDrawer .has-mega > .mega-menu,
	#mobileDrawer .has-mega > .mega-menu {
		order: 99 !important;
		flex-basis: 100% !important;
		width: 100% !important;
	}

	/* Grid JEDNOKOLONSKI — block umesto grid/flex */
	body .main-nav #mobileDrawer .mega-menu-grid,
	body .main-nav #mobileDrawer div.mega-menu-grid,
	body .main-nav .mobile-drawer .mega-menu-grid,
	#mobileDrawer .mega-menu-grid,
	#mobileDrawer div.mega-menu-grid {
		display: block !important;
		grid-template-columns: none !important;
		columns: unset !important;
		gap: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	body .main-nav #mobileDrawer .mega-col,
	#mobileDrawer .mega-col {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: none !important;
		margin: 0 !important;
		padding: 0 !important;
		box-sizing: border-box !important;
	}

	body .main-nav #mobileDrawer .mega-col h4,
	#mobileDrawer .mega-col h4 {
		margin: 0 !important;
		padding: 10px 20px 5px !important;
		border-bottom: none !important;
		font-size: 10px !important;
		color: #999 !important;
		letter-spacing: 0.08em !important;
		text-transform: uppercase !important;
		background: #efefef !important;
	}

	body .main-nav #mobileDrawer .mega-col ul,
	#mobileDrawer .mega-col ul {
		list-style: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	body .main-nav #mobileDrawer .mega-col ul li,
	#mobileDrawer .mega-col ul li {
		display: block !important;
		border-bottom: 1px solid #eee !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}
	body .main-nav #mobileDrawer .mega-col ul li:last-child,
	#mobileDrawer .mega-col ul li:last-child {
		border-bottom: none !important;
	}

	body .main-nav #mobileDrawer .mega-col ul li a,
	#mobileDrawer .mega-col ul li a {
		display: block !important;
		padding: 11px 20px 11px 28px !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		color: #333 !important;
		text-transform: none !important;
		text-decoration: none !important;
		letter-spacing: 0 !important;
		white-space: normal !important;
		background: transparent !important;
		min-height: 0 !important;
	}
	body .main-nav #mobileDrawer .mega-col ul li a:active,
	#mobileDrawer .mega-col ul li a:active {
		background: #e8e8e8 !important;
		color: #E8560A !important;
	}

	/* Sakrij duplu ▼ strelicu u tekstu — ostaje samo toggle dugme */
	body .main-nav #mobileDrawer .has-mega > a .nav-arrow,
	#mobileDrawer .has-mega > a .nav-arrow {
		display: none !important;
	}

	/* Desktop narandžasta crta ispod linka — ne treba u draweru */
	body .main-nav #mobileDrawer .nav-list > li > a::after,
	#mobileDrawer .nav-list > li > a::after {
		display: none !important;
		content: none !important;
	}
}

/* =============================================
   APSOLUTNI FINALNI OVERRIDE — DRAWER NAV-LIST
   Rešava problem: flex-wrap: wrap + flex-direction: column
   pravi 2 kolone umesto vertikalne liste.
   ============================================= */
@media (max-width: 992px) {
	body .main-nav #mobileDrawer .nav-list,
	body .main-nav #mobileDrawer ul.nav-list,
	body .main-nav .mobile-drawer .nav-list,
	body .main-nav .mobile-drawer ul.nav-list,
	#mobileDrawer .nav-list,
	#mobileDrawer ul.nav-list {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		width: 100% !important;
		max-width: 100% !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
	}

	body .main-nav #mobileDrawer .nav-list > li,
	#mobileDrawer .nav-list > li,
	#mobileDrawer ul.nav-list > li {
		width: 100% !important;
		max-width: 100% !important;
		flex-shrink: 0 !important;
		box-sizing: border-box !important;
	}

	body .main-nav #mobileDrawer .nav-list > li.has-mega,
	#mobileDrawer .nav-list > li.has-mega,
	#mobileDrawer ul.nav-list > li.has-mega {
		display: flex !important;
		flex-wrap: wrap !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body .main-nav #mobileDrawer .nav-list > li.has-mega > a,
	#mobileDrawer .nav-list > li.has-mega > a {
		flex: 1 1 0% !important;
		min-width: 0 !important;
		order: 1 !important;
	}

	body .main-nav #mobileDrawer .nav-list > li.has-mega > .gs-mobile-toggle,
	#mobileDrawer .nav-list > li.has-mega > .gs-mobile-toggle {
		flex: 0 0 auto !important;
		order: 2 !important;
	}

	body .main-nav #mobileDrawer .nav-list > li.has-mega > .mega-menu,
	#mobileDrawer .nav-list > li.has-mega > .mega-menu {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		order: 3 !important;
		position: static !important;
		display: none !important;
	}

	body .main-nav #mobileDrawer .nav-list > li.has-mega.mega-open > .mega-menu,
	#mobileDrawer .nav-list > li.has-mega.mega-open > .mega-menu {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body .main-nav #mobileDrawer .mega-menu .mega-menu-grid,
	#mobileDrawer .mega-menu .mega-menu-grid,
	#mobileDrawer .mega-menu div.mega-menu-grid {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		grid-template-columns: none !important;
	}

	body .main-nav #mobileDrawer .mega-menu .mega-col,
	#mobileDrawer .mega-menu .mega-col {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* =============================================
   DESKTOP HEADER — OGISTRA FINAL OVERRIDE
   Pobjeđuje SVE ranije konflikte.
   Važi samo na ekranima > 769px.
   ============================================= */
@media (min-width: 769px) {
	/* Header puna širina, bela, stikovana */
	body .site-header,
	.site-header {
		background: #fff !important;
		border-bottom: 1px solid #eee !important;
		width: 100% !important;
		position: sticky !important;
		top: 0 !important;
		z-index: 600 !important;
	}

	/* Header inner — 3-zonski flex layout, OGISTRA kompaktna visina */
	body .site-header .header-inner,
	.site-header .header-inner {
		display: flex !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		flex-direction: row !important;
		gap: 40px !important;
		padding: 6px 40px !important;
		width: 100% !important;
		max-width: 1440px !important;
		box-sizing: border-box !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* LOGO — levo, VELIK */
	body .site-header .logo--desktop,
	.site-header .logo--desktop {
		display: flex !important;
		flex: 0 0 auto !important;
		align-items: center !important;
		order: 1 !important;
	}
	body .site-header .logo--desktop img,
	body .site-header .logo img,
	.site-header .logo--desktop img {
		height: 68px !important;
		width: auto !important;
		display: block !important;
	}

	/* SEARCH — centar, popunjava SVE slobodnog prostora */
	body .site-header .header-search,
	body .site-header .header-search--desktop,
	.site-header .header-search {
		display: block !important;
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: none !important;
		width: auto !important;
		order: 2 !important;
		margin: 0 !important;
		position: relative !important;
	}
	body .site-header .header-search-wrap,
	.site-header .header-search-wrap {
		display: flex !important;
		align-items: center !important;
		height: 46px !important;
		background: #fff !important;
		border-radius: 999px !important;
		border: 1.5px solid #ddd !important;
		overflow: visible !important;
		width: 100% !important;
		position: relative !important;
	}
	/* Desktop search dropdown is appended to body — no header override needed */
	body .site-header .header-search-wrap:focus-within,
	.site-header .header-search-wrap:focus-within {
		border-color: #ccc !important;
		box-shadow: 0 0 0 3px rgba(232,86,10,0.08) !important;
	}
	body .site-header .header-search-wrap input[type='search'],
	.site-header .header-search-wrap input[type='search'] {
		flex: 1 !important;
		height: 44px !important;
		min-height: 44px !important;
		border: 0 !important;
		outline: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		padding: 0 20px !important;
		font-size: 15px !important;
		color: #333 !important;
		min-width: 0 !important;
		width: 100% !important;
		-webkit-appearance: none !important;
		appearance: none !important;
	}
	body .site-header .header-search-btn,
	.site-header .header-search-btn {
		flex-shrink: 0 !important;
		width: 40px !important;
		height: 40px !important;
		min-width: 40px !important;
		min-height: 40px !important;
		background: #E8560A !important;
		border: 0 !important;
		outline: 0 !important;
		box-shadow: none !important;
		border-radius: 50% !important;
		margin: 0 3px 0 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		cursor: pointer !important;
		color: #fff !important;
	}
	body .site-header .header-search-btn svg,
	.site-header .header-search-btn svg {
		width: 18px !important;
		height: 18px !important;
	}

	/* IKONE — desno, kompaktno */
	body .site-header .header-icons,
	body .site-header .header-icons--desktop,
	.site-header .header-icons {
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
		flex: 0 0 auto !important;
		order: 3 !important;
	}
	body .site-header .icon-link,
	.site-header .icon-link {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		border-radius: 50% !important;
		color: #333 !important;
		text-decoration: none !important;
		transition: background 0.15s, color 0.15s !important;
		position: relative !important;
		flex-direction: row !important;
	}
	body .site-header .icon-link:hover,
	.site-header .icon-link:hover {
		background: #f5f5f5 !important;
		color: #E8560A !important;
	}
	body .site-header .icon-label,
	.site-header .icon-label {
		display: none !important;
	}
	body .site-header .icon-wrap svg,
	.site-header .icon-wrap svg {
		width: 24px !important;
		height: 24px !important;
	}

	/* Sakrij mobilne elemente na desktopu */
	body .site-header .logo--mobile,
	body .site-header .gs-mob-right {
		display: none !important;
	}
}
