/* ===================================================================
 * CATEGORIES BENTO
 * =================================================================== */
.gk-categories {
	padding: var(--gk-sp-section) 0;
}
.gk-categories__inner {
	max-width: var(--gk-container);
	margin: 0 auto;
	padding: 0 var(--gk-px);
}
.gk-categories__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	grid-auto-rows: minmax(220px, auto);
}
@media (min-width: 768px) {
	.gk-categories__grid {
		grid-template-columns: repeat(12, 1fr);
		gap: 20px;
		grid-auto-rows: 280px;
	}
	.gk-categories__tile--wide { grid-column: span 8; }
	.gk-categories__tile--narrow { grid-column: span 4; }
}
.gk-categories__tile {
	position: relative;
	display: block;
	border-radius: var(--gk-radius-lg);
	overflow: hidden;
	border: 1px solid var(--gk-color-border);
	cursor: pointer;
	transition: box-shadow var(--gk-dur-base), transform var(--gk-dur-base);
}
.gk-categories__tile:hover {
	transform: translateY(-2px);
	box-shadow: 0 20px 40px rgba(31, 61, 20, 0.10);
}
.gk-categories__tile img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--gk-dur-slow) var(--gk-ease-out);
}
.gk-categories__tile:hover img { transform: scale(1.08); }
.gk-categories__tile-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.1) 60%, transparent 100%);
}
.gk-categories__tile-text {
	position: absolute;
	bottom: 28px;
	left: 28px;
	color: #fff;
}
.gk-categories__tile-text h3 {
	font-size: clamp(22px, 2.5vw, 32px);
	font-weight: 700;
	color: #fff;
	margin: 0 0 4px;
}
.gk-categories__tile-text p {
	font-size: 14px;
	color: rgba(255,255,255,0.85);
	margin: 0;
}

/* ===================================================================
 * BESTSELLERS
 * =================================================================== */
.gk-bestsellers {
	padding: var(--gk-sp-section) 0;
	background: var(--gk-color-surface-low);
}
.gk-bestsellers__inner {
	max-width: var(--gk-container);
	margin: 0 auto;
	padding: 0 var(--gk-px);
}
.gk-bestsellers__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 40px;
	gap: 16px;
	flex-wrap: wrap;
}
.gk-bestsellers__title {
	font-size: var(--gk-fs-h2);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0;
}
.gk-bestsellers__view-all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--gk-color-primary);
}
.gk-bestsellers__view-all .material-symbols-outlined {
	transition: transform var(--gk-dur-fast);
}
.gk-bestsellers__view-all:hover .material-symbols-outlined { transform: translateX(4px); }

/* ===================================================================
 * STORYTELLING BANNER (Adaptogeny)
 * =================================================================== */
.gk-story {
	position: relative;
	overflow: hidden;
	padding: var(--gk-sp-section-lg) 0;
}
.gk-story__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 3s ease;
}
.gk-story:hover .gk-story__bg { transform: scale(1.05); }
.gk-story__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(31, 61, 20, 0.55) 0%, rgba(31, 61, 20, 0.75) 100%);
	backdrop-filter: blur(2px);
}
.gk-story__inner {
	position: relative;
	z-index: 10;
	max-width: var(--gk-container);
	margin: 0 auto;
	padding: 0 var(--gk-px);
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-items: center;
}
.gk-story__title {
	font-size: clamp(34px, 4.6vw, 58px);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: #fff;
	margin: 0;
	max-width: 880px;
}
.gk-story__lead {
	font-size: var(--gk-fs-lead);
	color: rgba(255,255,255,0.85);
	max-width: 600px;
	line-height: 1.6;
	margin: 0;
}

/* ===================================================================
 * SCIENCE SECTION
 * =================================================================== */
.gk-science {
	padding: var(--gk-sp-section) 0;
}
.gk-science__inner {
	max-width: var(--gk-container);
	margin: 0 auto;
	padding: 0 var(--gk-px);
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: center;
}
@media (min-width: 1024px) {
	.gk-science__inner { grid-template-columns: 1fr 1fr; gap: 80px; }
}
.gk-science__copy {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.gk-science__brand {
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--gk-color-primary);
	margin: 0;
}
.gk-science__title {
	font-size: var(--gk-fs-h2);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin: 0;
}
.gk-science__lead {
	font-size: var(--gk-fs-lead);
	color: var(--gk-color-text-muted);
	line-height: 1.7;
	margin: 0;
}
.gk-science__bullets {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.gk-science__bullets li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: var(--gk-fs-body);
	font-weight: 600;
}
.gk-science__bullets .material-symbols-outlined {
	color: var(--gk-color-primary);
	font-size: 24px;
	font-variation-settings: 'FILL' 1;
}
.gk-science__visual {
	border-radius: var(--gk-radius-xl);
	overflow: hidden;
	box-shadow: var(--gk-shadow-lg);
	aspect-ratio: 16 / 9;
	position: relative;
}
.gk-science__visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--gk-dur-slow);
}
.gk-science__visual:hover img { transform: scale(1.05); }

