/*
Theme Name: SlimBurn LABS
Theme URI: https://example.com/slimburn
Author: SlimBurn LABS
Description: A block theme for the SlimBurn LABS 4-Product Total System. Warm orange-and-cream design with editable homepage patterns: hero, trust bar, product system, ingredients, lifestyle and newsletter sections.
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: slimburn
Tags: block-patterns, full-site-editing, one-column, wide-blocks, custom-colors, editor-style
*/

/* ---------- Eyebrow label: "— A COMPLETE SYSTEM FOR —" ---------- */
.sb-eyebrow {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	color: var(--wp--preset--color--accent);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.35;
}
.sb-eyebrow::before,
.sb-eyebrow::after {
	content: "";
	flex: 0 0 2.5rem;
	height: 1px;
	background: currentColor;
}
.sb-eyebrow.has-text-align-center { justify-content: center; }

/* ---------- Circular icons ---------- */
.wp-block-image.sb-icon img {
	box-sizing: border-box;
	width: 64px;
	height: 64px;
	padding: 14px;
	border: 2px solid var(--wp--preset--color--accent);
	border-radius: 50% !important;
	background: var(--wp--preset--color--base);
}
.wp-block-image.sb-icon--filled img {
	width: 84px;
	height: 84px;
	padding: 20px;
	border: 0;
	border-radius: 50% !important;
	background: radial-gradient(circle at 30% 30%, #4fb35a, var(--wp--preset--color--leaf));
	box-shadow: 0 8px 20px rgba(46, 139, 58, 0.25);
}
.wp-block-image.sb-icon--plain img {
	width: 36px;
	height: 36px;
	border-radius: 0 !important;
}
.wp-block-image.sb-icon,
.wp-block-image.sb-icon--filled,
.wp-block-image.sb-icon--plain { margin-bottom: 0; }

.sb-icon-label {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.3;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink);
}

/* Icon rows keep two-up on phones instead of a long single column */
@media (max-width: 781px) {
	.wp-block-columns.sb-icon-row { flex-wrap: wrap !important; }
	.wp-block-columns.sb-icon-row > .wp-block-column { flex-basis: calc(50% - 1rem) !important; flex-grow: 0; }
	.wp-block-columns.sb-ingredients > .wp-block-column { flex-basis: calc(33.333% - 1rem) !important; }
	.wp-block-columns.sb-photos > .wp-block-column { flex-basis: calc(50% - 0.5rem) !important; }
	.wp-block-columns.sb-photos > .wp-block-column:last-child { flex-basis: 100% !important; }
}

/* ---------- Product cards ---------- */
.sb-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.sb-card:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(17, 17, 17, 0.1); }
.sb-card > .wp-block-buttons { margin-top: auto; }
.sb-card .wp-block-image img { border-radius: 10px; }

/* ---------- Header ---------- */
.sb-header .wp-block-navigation a:hover,
.sb-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--primary); }
.sb-header .wp-block-navigation .current-menu-item > a {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 8px;
}
.sb-header .wp-block-site-title a { color: var(--wp--preset--color--base); text-decoration: none; }
.sb-header .wp-block-site-title a::first-letter { color: inherit; }
.sb-header .wp-block-search__button {
	background: transparent;
	color: var(--wp--preset--color--base);
	border: 0;
	padding: 0.4rem;
}
.sb-header .wp-block-search__button svg { fill: currentColor; }
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--ink) !important;
	color: var(--wp--preset--color--base) !important;
}

/* ---------- Newsletter form ---------- */
.sb-newsletter { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.sb-newsletter input[type="email"] {
	flex: 1 1 220px;
	min-width: 0;
	padding: 0.9rem 1rem;
	border: 1px solid var(--wp--preset--color--sand);
	border-radius: 6px;
	background: var(--wp--preset--color--base);
	font: inherit;
	font-size: 0.95rem;
}
.sb-newsletter button {
	flex: 0 0 auto;
	padding: 0.9rem 1.75rem;
	border: 0;
	border-radius: 6px;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font: inherit;
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	cursor: pointer;
}
.sb-newsletter button:hover { background: var(--wp--preset--color--accent); }

/* ---------- Footer ---------- */
.sb-footer a { color: var(--wp--preset--color--base); text-decoration: none; }
.sb-footer a:hover { color: var(--wp--preset--color--primary); }
.sb-footer .wp-block-list { list-style: none; padding-left: 0; }
.sb-footer .wp-block-list li { margin-bottom: 0.35rem; }

/* Buttons: add arrow to elements tagged sb-arrow */
.sb-arrow .wp-block-button__link::after { content: " \2192"; }

/* Photo tiles */
.sb-photos .wp-block-image img { aspect-ratio: 1; object-fit: cover; width: 100%; }

/* Keep icons round inside flex rows */
.wp-block-image.sb-icon,
.wp-block-image.sb-icon--filled,
.wp-block-image.sb-icon--plain { flex-shrink: 0; }

/* Eyebrow hugs its text */
.sb-eyebrow { width: fit-content; max-width: 100%; }
.sb-eyebrow.has-text-align-center { margin-left: auto !important; margin-right: auto !important; }

/* CTA: centre the newsletter content vertically */
.sb-cta > .wp-block-column { display: flex; flex-direction: column; justify-content: center; }
.sb-cta .wp-block-cover { height: 100%; }

/* Accessibility helper (used by the search block and newsletter label) */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

/* Header, main and footer sit flush against each other */
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Footer social icons stay on one line */
.sb-footer .wp-block-social-links { flex-wrap: nowrap; }

@media (max-width: 781px) {
	/* Photo strip: two per row, last one full width */
	.wp-block-columns.sb-photos { flex-wrap: wrap !important; }
	.wp-block-columns.sb-photos > .wp-block-column { flex-grow: 0 !important; }
}

@media (max-width: 600px) {
	/* Compact one-line header on phones: logo, menu button, Shop Now */
	.sb-header > .is-layout-flex { flex-wrap: nowrap !important; gap: 0.75rem; }
	.sb-header .wp-block-site-title { font-size: 1.3rem !important; white-space: nowrap; }
	.sb-header .wp-block-search { display: none; }
	.sb-header .wp-block-navigation { margin-left: auto; }
	.sb-header .wp-block-button__link { padding: 0.55rem 0.9rem !important; font-size: 0.75rem !important; white-space: nowrap; }
	.sb-eyebrow::before, .sb-eyebrow::after { flex-basis: 1.25rem; }
}
@media (max-width: 781px) {
	.wp-block-columns.sb-photos > .wp-block-column:last-child img { aspect-ratio: 2 / 1; }
}
