/* 1. Variables */
:root {
	--samirarte-cream: #F5EFE6;
	--samirarte-ivory: #FBF8F2;
	--samirarte-taupe: #D7CABC;
	--samirarte-brown: #3F2D27;
	--samirarte-cacao: #5E4A3E;
	--samirarte-burgundy: #6B2F32;
	--samirarte-burgundy-dark: #552326;
	--samirarte-border: rgba(63, 45, 39, 0.16);
	--samirarte-shadow: rgba(63, 45, 39, 0.10);
	--sam-cream: var(--samirarte-cream);
	--sam-parchment: var(--samirarte-ivory);
	--sam-taupe: var(--samirarte-taupe);
	--sam-brown: var(--samirarte-brown);
	--sam-warm-brown: var(--samirarte-cacao);
	--sam-burgundy: var(--samirarte-burgundy);
	--sam-burgundy-dark: var(--samirarte-burgundy-dark);
	--sam-clay: var(--samirarte-burgundy);
	--sam-ink: var(--samirarte-brown);
	--sam-white: var(--samirarte-ivory);
	--sam-shadow: 0 24px 60px var(--samirarte-shadow);
	--sam-border: var(--samirarte-border);
	--sam-container: 1180px;
}

/* 2. Base */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

section[id] {
	scroll-margin-top: 110px;
}

body {
	margin: 0;
	background: var(--sam-cream);
	color: var(--sam-ink);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 17px;
	line-height: 1.7;
	overflow-x: hidden;
}

body.sam-gift-modal-open {
	overflow: hidden;
	touch-action: none;
}

body,
button,
input,
select,
textarea {
	font-family: Georgia, "Times New Roman", serif;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover,
a:focus-visible {
	color: var(--sam-burgundy);
}

:focus-visible {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 4px;
}

.sam-container {
	width: min(100% - 40px, var(--sam-container));
	margin-inline: auto;
}

.sam-main {
	background:
		radial-gradient(circle at top left, rgba(107, 47, 50, 0.08), transparent 32rem),
		linear-gradient(180deg, var(--sam-cream) 0%, #FBF8F2 42%, var(--sam-parchment) 100%);
	min-height: 60vh;
}

.sam-section {
	padding: 86px 0;
}

.sam-eyebrow {
	margin: 0 0 14px;
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sam-button,
.button,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 22px;
	border: 1px solid var(--sam-burgundy);
	border-radius: 999px;
	background: var(--sam-burgundy);
	color: var(--sam-white);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.sam-button:hover,
.sam-button:focus-visible,
.button:hover,
button:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	border-color: var(--sam-burgundy-dark);
	background: var(--sam-burgundy-dark);
	color: var(--sam-white);
	transform: translateY(-1px);
}

.sam-button:active,
.button:active,
button:active,
input[type="submit"]:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active,
.woocommerce #respond input#submit:active {
	transform: translateY(0);
	box-shadow: inset 0 2px 8px rgba(63, 45, 39, 0.18);
}

.sam-button--ghost {
	background: transparent;
	color: var(--sam-brown);
	border-color: var(--sam-warm-brown);
}

.sam-button--outline {
	background: transparent;
	color: var(--sam-brown);
	border-color: var(--sam-warm-brown);
}

.sam-button--light {
	background: var(--sam-cream);
	color: var(--sam-brown);
	border-color: var(--sam-warm-brown);
}

.sam-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	margin-top: 30px;
}

.sam-actions--center {
	justify-content: center;
}

.sam-section-heading {
	max-width: 760px;
	margin-bottom: 34px;
}

.sam-section-heading h2,
.sam-editorial-split h2,
.sam-contact-band h2,
.sam-page-hero h1 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 5vw, 4rem);
	line-height: 1.04;
	font-weight: 500;
}

.sam-image-placeholder {
	display: grid;
	min-height: 430px;
	place-items: center;
	border: 1px solid var(--sam-border);
	border-radius: 26px;
	background:
		linear-gradient(135deg, rgba(63, 45, 39, 0.2), rgba(107, 47, 50, 0.18)),
		repeating-linear-gradient(45deg, rgba(63, 45, 39, 0.05) 0 1px, transparent 1px 16px),
		var(--sam-parchment);
	color: rgba(63, 45, 39, 0.48);
	font-size: 2rem;
}

.sam-image-placeholder--small {
	min-height: 0;
	width: 100%;
	height: 100%;
	border-radius: 0;
}

/* 3. Header */
.sam-header {
	position: sticky;
	top: 0;
	z-index: 30;
	background: rgba(251, 248, 242, 0.96);
	border-bottom: 1px solid var(--sam-border);
	backdrop-filter: blur(14px);
}

.sam-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	width: min(100% - 40px, var(--sam-container));
	min-height: 92px;
	margin-inline: auto;
}

.sam-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	color: var(--sam-brown);
	min-width: max-content;
}

.sam-brand__logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(150px, 12vw, 170px);
	height: auto;
	flex: 0 0 auto;
	overflow: visible;
}

.custom-logo-link {
	text-decoration: none;
}

.custom-logo-link:focus-visible {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 3px;
}

.sam-brand__logo img,
.sam-mobile-brand__logo img,
.sam-footer__logo img,
.custom-logo {
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none;
	object-fit: contain;
	display: block;
}

.sam-brand__logo__frame,
.sam-mobile-brand__logo__frame,
.sam-footer__logo__frame {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
}

.site-branding,
.site-branding-compact {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
	width: auto;
	max-width: max-content;
	text-align: left;
}

.site-logo-link,
.site-branding .custom-logo-link,
.site-branding-compact .site-logo-link,
.site-branding-compact .custom-logo-link {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 0;
}

.site-logo-link__frame {
	display: block;
	width: auto;
	height: auto;
	overflow: visible;
}

.site-branding .custom-logo,
.site-branding-compact .custom-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 46px;
	max-height: 46px;
	object-fit: contain;
}

.site-branding-text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px;
	line-height: 1;
}

.site-title {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: var(--sam-brown);
	font-family: inherit;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.05;
	opacity: 1;
	overflow: visible;
	text-decoration: none;
	text-indent: 0;
	text-transform: none;
	visibility: visible;
}

.site-title:hover,
.site-title:focus-visible {
	color: var(--sam-burgundy);
}

.site-description {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: var(--sam-cacao);
	font-size: 8px;
	font-weight: 600;
	letter-spacing: 0.18em;
	line-height: 1.1;
	opacity: 1;
	overflow: visible;
	text-indent: 0;
	text-transform: none;
	visibility: visible;
}

.sam-desktop-site-branding {
	min-width: max-content;
}

.sam-brand__copy {
	display: grid;
	line-height: 1;
}

.sam-brand__name {
	font-size: 2rem;
	font-weight: 500;
}

.sam-brand__tagline {
	margin-top: 5px;
	color: var(--sam-warm-brown);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: none;
}

.sam-navigation {
	flex: 1 1 auto;
}

.sam-site-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(12px, 1.2vw, 20px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-site-menu a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding-inline: clamp(6px, 0.8vw, 12px);
	color: var(--sam-warm-brown);
	font-size: 0.9rem;
	text-decoration: none;
}

.sam-site-menu a:hover,
.sam-site-menu a:focus-visible {
	color: var(--sam-burgundy);
}

.sam-site-menu a:active,
.sam-header-actions__link:active {
	color: var(--sam-brown);
	background: rgba(63, 45, 39, 0.18);
}

.sam-mobile-strip__list {
	display: flex;
	gap: inherit;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-header-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	flex: 0 0 auto;
}

.sam-header-actions__link {
	color: var(--sam-warm-brown);
	font-size: 0.9rem;
	white-space: nowrap;
}

.sam-header-actions .sam-button {
	min-height: 38px;
	padding: 9px 16px;
	border-color: rgba(107, 47, 50, 0.42);
	background: transparent;
	color: var(--sam-brown);
	box-shadow: none;
	font-size: 0.82rem;
	font-weight: 700;
}

.sam-header-actions .sam-button--account {
	border-color: var(--sam-burgundy);
	background: var(--sam-burgundy);
	color: var(--sam-white);
	white-space: nowrap;
}

.sam-header-actions .sam-button--account:hover,
.sam-header-actions .sam-button--account:focus-visible {
	border-color: var(--sam-burgundy-dark);
	background: var(--sam-burgundy-dark);
	color: var(--sam-white);
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.samirarte-header-icons {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.samirarte-account-icon,
.samirarte-cart-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	border: 1px solid rgba(107, 47, 50, 0.35);
	border-radius: 999px;
	background: rgba(251, 248, 242, 0.78);
	color: var(--sam-brown);
	text-decoration: none;
	transition: background-color 200ms ease, border-color 200ms ease, transform 200ms ease;
}

.samirarte-account-icon:hover,
.samirarte-cart-icon:hover {
	border-color: rgba(107, 47, 50, 0.65);
	background: #F5EFE6;
	color: var(--sam-brown);
	transform: translateY(-1px);
}

.samirarte-account-icon:focus-visible,
.samirarte-cart-icon:focus-visible {
	outline: 2px solid rgba(107, 47, 50, 0.8);
	outline-offset: 3px;
}

.samirarte-account-icon svg,
.samirarte-cart-icon svg {
	display: block;
	width: 22px;
	height: 22px;
}

.samirarte-cart-icon .cart-count {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 16px;
	height: 16px;
	padding: 0 5px;
	border-radius: 999px;
	background: var(--sam-burgundy);
	color: var(--sam-white);
	font-size: 10px;
	font-weight: 700;
	line-height: 16px;
	text-align: center;
	transform: translate(25%, -25%);
}

.sam-mobile-shell {
	display: none;
}

.sam-mobile-secondary {
	display: none;
}

/* 4. Home */
/* SAMIRARTE HERO BACKGROUND REDESIGN 2026-05-26 */
.sam-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: calc(100vh - 86px);
	overflow: hidden;
	padding: clamp(82px, 8vw, 130px) clamp(24px, 7vw, 120px);
	background:
		linear-gradient(
			90deg,
			rgba(245, 239, 230, 0.98) 0%,
			rgba(245, 239, 230, 0.94) 38%,
			rgba(245, 239, 230, 0.7) 58%,
			rgba(245, 239, 230, 0.28) 100%
		),
		url("../img/hero.webp") center right / cover no-repeat;
}

.sam-hero__grid {
	position: relative;
	z-index: 2;
	display: block;
	width: min(100%, var(--sam-container));
	margin-inline: auto;
}

.sam-hero__content {
	position: relative;
	z-index: 2;
	max-width: 720px;
}

.sam-hero h1 {
	max-width: 720px;
	margin: 0 0 24px;
	color: var(--sam-brown);
	font-size: clamp(3.625rem, 6.2vw, 6.5rem);
	font-weight: 500;
	line-height: 0.94;
	letter-spacing: -0.045em;
}

.sam-hero__text {
	max-width: 620px;
	margin: 0 0 30px;
	color: var(--sam-warm-brown);
	font-size: clamp(1.125rem, 1.15vw, 1.3125rem);
	line-height: 1.65;
}

.sam-hero__media {
	position: relative;
	aspect-ratio: 16 / 10;
	padding: 12px;
	border: 1px solid rgba(63, 45, 39, 0.35);
	border-radius: 34px;
	background: linear-gradient(145deg, var(--sam-cream), var(--sam-taupe));
	box-shadow: 0 28px 80px rgba(63, 45, 39, 0.1);
	overflow: hidden;
}

.sam-hero__media::before {
	position: absolute;
	inset: 38px -12px -12px 38px;
	z-index: -1;
	border: 1px solid rgba(63, 45, 39, 0.45);
	border-radius: 32px;
	content: "";
}

.sam-hero__media img {
	width: 100%;
	height: 100%;
	display: block;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center right;
	border-radius: 24px;
}

.sam-hero .sam-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 0;
}

.sam-hero .sam-button {
	min-height: 50px;
	padding: 13px 24px;
	transition: transform 220ms ease, box-shadow 220ms ease, background-color 220ms ease, border-color 220ms ease, color 220ms ease;
}

.sam-hero .sam-button:hover {
	transform: translateY(-2px);
}

.sam-hero .sam-button:focus-visible {
	outline: 2px solid rgba(107, 47, 50, 0.75);
	outline-offset: 4px;
}

.sam-hero.hero-bg-mode {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(245, 239, 230, 0.98) 0%, rgba(245, 239, 230, 0.92) 45%, rgba(245, 239, 230, 0.58) 100%),
		url("../img/hero.webp") center right / cover no-repeat;
}

.sam-hero.hero-bg-mode .sam-hero__media {
	display: none;
}

.sam-hero.hero-bg-mode .sam-hero__content {
	position: relative;
	z-index: 2;
	max-width: 760px;
}

/* Semantic aliases for alternate hero markup. */
.hero-section {
	--hero-cream: #F5EFE6;
	--hero-parchment: #FBF8F2;
	--hero-brown: #3F2D27;
	--hero-warm-brown: #5E4A3E;
	--hero-burgundy: #6B2F32;
	--hero-burgundy-dark: #552326;

	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
	align-items: center;
	gap: clamp(36px, 5vw, 72px);
	min-height: calc(100vh - 92px);
	padding: clamp(64px, 8vw, 110px) clamp(24px, 7vw, 120px);
	background: var(--hero-cream);
	overflow-x: hidden;
}

.hero-text-container {
	max-width: 790px;
}

.hero-section h1 {
	max-width: 780px;
	margin: 0;
	color: var(--hero-brown);
	font-size: clamp(3.625rem, 6.5vw, 6.75rem);
	font-weight: 500;
	line-height: 0.92;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.hero-section .hero-desc,
.hero-text-container p {
	max-width: 640px;
	margin-top: 28px;
	color: var(--hero-warm-brown);
	font-size: clamp(1.125rem, 1.25vw, 1.375rem);
	line-height: 1.65;
}

.hero-image-container {
	min-width: 0;
}

.rounded-card-frame {
	position: relative;
	aspect-ratio: 4 / 5;
	padding: 18px;
	border: 1px solid rgba(63, 45, 39, 0.36);
	border-radius: 34px;
	background: linear-gradient(145deg, var(--hero-cream), var(--hero-parchment));
	box-shadow: 0 28px 80px rgba(63, 45, 39, 0.1);
	overflow: hidden;
}

.rounded-card-frame img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center 55%;
	border-radius: 24px;
}

.hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin-top: 32px;
}

.hero-buttons a,
.btn-dark,
.btn-light {
	min-height: 50px;
	padding: 13px 24px;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
	transition: transform 220ms ease, box-shadow 220ms ease, background-color 220ms ease, border-color 220ms ease, color 220ms ease;
}

.btn-dark {
	border: 1px solid var(--hero-burgundy);
	background: var(--hero-burgundy);
	color: var(--hero-parchment);
}

.btn-light {
	border: 1px solid var(--hero-warm-brown);
	background: transparent;
	color: var(--hero-brown);
}

.hero-buttons a:hover,
.btn-dark:hover,
.btn-light:hover {
	transform: translateY(-2px);
}

.hero-buttons a:focus-visible,
.btn-dark:focus-visible,
.btn-light:focus-visible,
.main-navigation a:focus-visible,
.header-actions .btn-cta:focus-visible {
	outline: 2px solid rgba(107, 47, 50, 0.85);
	outline-offset: 4px;
}

.main-navigation a {
	padding-inline: clamp(8px, 1vw, 14px);
	color: var(--hero-warm-brown);
	text-decoration: none;
}

.main-navigation a:hover {
	color: var(--hero-burgundy);
}

.header-actions .btn-cta {
	min-height: 38px;
	padding: 9px 16px;
	border: 1px solid rgba(107, 47, 50, 0.65);
	border-radius: 999px;
	background: transparent;
	color: var(--hero-brown);
	box-shadow: none;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
}

.header-actions .btn-cta:hover {
	border-color: var(--hero-burgundy-dark);
	background: var(--hero-burgundy);
	color: var(--hero-parchment);
}

.hero-section.hero-bg-mode {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(90deg, rgba(245, 239, 230, 0.98) 0%, rgba(245, 239, 230, 0.92) 45%, rgba(245, 239, 230, 0.58) 100%),
		url("../img/hero.webp") center right / cover no-repeat;
}

.hero-section.hero-bg-mode .hero-image-container {
	display: none;
}

.hero-section.hero-bg-mode .hero-text-container {
	position: relative;
	z-index: 2;
	max-width: 760px;
}

@media (max-width: 900px) {
	.hero-section {
		grid-template-columns: 1fr;
		min-height: auto;
		gap: 32px;
		padding: 48px 22px 64px;
	}

	.hero-section h1 {
		max-width: 12ch;
		font-size: clamp(3rem, 13vw, 4.75rem);
		line-height: 0.95;
		letter-spacing: -0.03em;
	}

	.rounded-card-frame {
		aspect-ratio: 4 / 3;
		max-width: 620px;
		margin-inline: auto;
		padding: 12px;
		border-radius: 24px;
	}

	.rounded-card-frame img {
		border-radius: 18px;
	}
}

@media (max-width: 520px) {
	.hero-section {
		padding: 36px 20px 54px;
	}

	.hero-section h1 {
		font-size: clamp(2.625rem, 11vw, 3.5rem);
	}

	.hero-buttons {
		display: grid;
		gap: 12px;
	}

	.hero-buttons a,
	.btn-dark,
	.btn-light {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.header-actions .btn-cta {
		padding: 8px 14px;
		font-size: 13px;
	}
}

.sam-values {
	padding: 72px 0;
	background:
		radial-gradient(circle at 12% 0%, rgba(215, 202, 188, 0.16), transparent 24rem),
		var(--sam-brown);
	color: var(--sam-cream);
}

.sam-section-heading--light {
	max-width: 780px;
	margin-bottom: 30px;
}

.sam-section-heading--light h2 {
	margin: 0;
	color: var(--sam-cream);
	font-size: clamp(2rem, 5vw, 3.8rem);
	font-weight: 500;
	line-height: 1.04;
}

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

.sam-value-card {
	position: relative;
	display: grid;
	align-content: start;
	gap: 12px;
	min-height: 220px;
	padding: 24px;
	border: 1px solid rgba(215, 202, 188, 0.22);
	border-radius: 26px;
	background: linear-gradient(145deg, rgba(245, 239, 230, 0.1), rgba(251, 248, 242, 0.045));
	color: var(--sam-parchment);
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.1);
	transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.sam-value-card:hover {
	border-color: rgba(215, 202, 188, 0.46);
	background: linear-gradient(145deg, rgba(245, 239, 230, 0.14), rgba(251, 248, 242, 0.07));
	transform: translateY(-2px);
}

.sam-value-card h3 {
	margin: 0;
	color: var(--sam-parchment);
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sam-value-card p {
	margin: 0;
	color: rgba(245, 239, 230, 0.84);
	font-size: 0.96rem;
	line-height: 1.6;
}

.sam-value-card .sam-mini-icon {
	background: rgba(245, 239, 230, 0.08);
}

.sam-featured-carousel-section {
	padding: 72px 0 36px;
	background: linear-gradient(180deg, rgba(245, 239, 230, 0.96), rgba(251, 248, 242, 0.46));
}

.sam-featured-carousel-heading {
	margin-bottom: 24px;
}

.sam-featured-carousel-heading h2 {
	max-width: 760px;
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 5vw, 3.8rem);
	font-weight: 500;
	line-height: 1.05;
}

.sam-featured-carousel-heading p {
	max-width: 620px;
	margin: 12px 0 0;
	color: var(--sam-warm-brown);
	font-size: 1.05rem;
	line-height: 1.55;
}

.sam-featured-carousel {
	display: grid;
	grid-auto-columns: minmax(240px, 300px);
	grid-auto-flow: column;
	gap: 22px;
	width: min(100% - 40px, var(--sam-container));
	margin-inline: auto;
	padding: 4px 0 24px;
	overflow-x: auto;
	scroll-padding-inline: max(20px, calc((100vw - var(--sam-container)) / 2));
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}

.sam-box-builder {
	overflow-x: clip;
}

.sam-box-builder__summary {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.sam-featured-carousel:focus-visible {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 6px;
	border-radius: 20px;
}

.sam-featured-carousel::-webkit-scrollbar {
	height: 9px;
}

.sam-featured-carousel::-webkit-scrollbar-track {
	background: rgba(251, 248, 242, 0.68);
	border-radius: 999px;
}

.sam-featured-carousel::-webkit-scrollbar-thumb {
	background: rgba(107, 47, 50, 0.55);
	border-radius: 999px;
}

.sam-featured-card {
	display: grid;
	scroll-snap-align: start;
	overflow: hidden;
	border: 1px solid var(--sam-border);
	border-radius: 26px;
	background: rgba(245, 239, 230, 0.92);
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.09);
	color: var(--sam-ink);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.sam-featured-card__image {
	display: block;
	aspect-ratio: 1 / 1;
	background: var(--sam-parchment);
}

.sam-featured-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sam-featured-card__body {
	display: grid;
	gap: 8px;
	padding: 18px;
}

.sam-featured-card__body strong {
	color: var(--sam-brown);
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.22;
}

.sam-featured-card__body span {
	color: var(--sam-burgundy);
	font-size: 0.86rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.sam-featured-card__body .sam-coming-soon-price {
	justify-self: start;
}

.sam-featured-card__description {
	color: var(--sam-ink) !important;
	font-size: 0.96rem !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.55;
	text-transform: none !important;
}

.sam-featured-card:focus-visible {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 4px;
}

.sam-featured-card:active {
	transform: translateY(1px) scale(0.99);
}

.sam-selection-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.sam-product-card {
	display: grid;
	overflow: hidden;
	border: 1px solid var(--sam-border);
	border-radius: 28px;
	background: rgba(245, 239, 230, 0.74);
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.08);
	color: var(--sam-ink);
}

.sam-product-card__image {
	display: block;
	aspect-ratio: 4 / 3;
	background: var(--sam-parchment);
}

.sam-product-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sam-product-card__body {
	display: grid;
	gap: 10px;
	padding: 24px;
}

.sam-product-card__body strong {
	color: var(--sam-brown);
	font-size: 1.55rem;
	font-weight: 500;
	line-height: 1.15;
}

.sam-coming-soon-price {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	min-height: 32px;
	padding: 0.38rem 0.82rem;
	border: 1px solid rgba(107, 47, 50, 0.58);
	border-radius: 999px;
	background: rgba(255, 247, 232, 0.92);
	color: var(--sam-brown) !important;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56), 0 8px 18px rgba(63, 45, 39, 0.08);
}

.sam-product-card__body span {
	color: var(--sam-warm-brown);
}

.sam-editorial-split {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
	gap: 54px;
	align-items: center;
}

.sam-editorial-split--reverse .sam-editorial-split__media {
	order: 2;
}

.sam-editorial-split__media {
	padding: 18px;
	border: 1px solid var(--sam-border);
	border-radius: 30px;
	background: rgba(245, 239, 230, 0.74);
}

.sam-editorial-split__media img {
	width: 100%;
	aspect-ratio: 5 / 4;
	object-fit: cover;
	border-radius: 22px;
}

.sam-editorial-split__content {
	max-width: 620px;
}

.sam-editorial-split__content p:not(.sam-eyebrow) {
	color: var(--sam-warm-brown);
	font-size: 1.06rem;
}

.sam-contact-band {
	padding-bottom: 110px;
}

.sam-contact-band__inner {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 24px;
	align-items: center;
	padding: 42px;
	border: 1px solid var(--sam-border);
	border-radius: 32px;
	background: var(--sam-brown);
	color: var(--sam-cream);
}

.sam-contact-band h2 {
	color: var(--sam-cream);
	font-size: clamp(2rem, 4vw, 3.6rem);
}

.sam-contact-band img {
	width: 130px;
	height: 130px;
	border-radius: 50%;
	object-fit: cover;
	border: 1px solid rgba(63, 45, 39, 0.46);
}

/* 5. WooCommerce visual */
.woocommerce-shop .sam-main,
.post-type-archive-product .sam-main,
.tax-product_cat .sam-main,
.single-product .sam-main {
	background:
		radial-gradient(circle at 12% 0%, rgba(63, 45, 39, 0.16), transparent 34rem),
		linear-gradient(180deg, var(--sam-cream) 0%, #FBF8F2 38%, var(--sam-parchment) 100%);
}

.woocommerce .site-main,
.woocommerce-page .site-main,
.woocommerce .content-area,
.woocommerce-page .content-area {
	background: var(--sam-cream);
}

.woocommerce .woocommerce-breadcrumb {
	width: min(100% - 40px, var(--sam-container));
	margin: 56px auto 16px;
	color: var(--sam-warm-brown);
	font-size: 0.92rem;
}

.woocommerce .woocommerce-products-header,
.woocommerce .woocommerce-notices-wrapper,
.woocommerce .products,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce div.product,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.sam-checkout-account-note {
	width: min(100% - 40px, var(--sam-container));
	margin-inline: auto;
}

.woocommerce .woocommerce-products-header {
	position: relative;
	margin-top: 42px;
	margin-bottom: 32px;
	padding: clamp(34px, 5vw, 64px);
	border: 1px solid var(--sam-border);
	border-radius: 34px;
	background:
		linear-gradient(135deg, rgba(63, 45, 39, 0.18), rgba(245, 239, 230, 0.72)),
		radial-gradient(circle at 92% 18%, rgba(63, 45, 39, 0.18), transparent 14rem),
		rgba(245, 239, 230, 0.84);
	box-shadow: 0 20px 48px rgba(63, 45, 39, 0.1);
	overflow: hidden;
}

.woocommerce .woocommerce-products-header::before {
	display: block;
	margin-bottom: 12px;
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	content: "Colección Samirarte";
}

.woocommerce .woocommerce-products-header::after {
	position: absolute;
	right: 32px;
	bottom: 28px;
	width: 78px;
	height: 78px;
	border-right: 1px solid rgba(63, 45, 39, 0.38);
	border-bottom: 1px solid rgba(63, 45, 39, 0.38);
	border-radius: 0 0 28px 0;
	content: "";
}

.woocommerce .woocommerce-products-header__title,
.woocommerce div.product .product_title {
	color: var(--sam-brown);
	font-size: clamp(2.4rem, 5vw, 4.4rem);
	font-weight: 500;
	line-height: 1.04;
}

.woocommerce .woocommerce-products-header__title {
	margin: 0;
	max-width: 760px;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	float: none;
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin: 0 0 30px;
	color: var(--sam-warm-brown);
}

.woocommerce .woocommerce-result-count {
	margin-right: 18px;
	padding: 8px 0;
	font-size: 0.95rem;
	opacity: 0.78;
}

.woocommerce .woocommerce-ordering select {
	min-height: 44px;
	padding: 8px 44px 8px 16px;
	border: 1px solid rgba(94, 74, 62, 0.22);
	border-radius: 999px;
	background-color: rgba(245, 239, 230, 0.92);
	color: var(--sam-brown);
	box-shadow: 0 10px 24px rgba(63, 45, 39, 0.06);
}

.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
	clear: both;
	padding: 12px 0 104px;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	display: flex;
	flex-direction: column;
	float: none;
	width: auto;
	margin: 0;
	padding: 22px;
	border: 1px solid var(--sam-border);
	border-radius: 30px;
	background:
		linear-gradient(180deg, rgba(245, 239, 230, 0.96), rgba(251, 248, 242, 0.78));
	box-shadow: 0 22px 48px rgba(63, 45, 39, 0.1);
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: rgba(107, 47, 50, 0.58);
	box-shadow: 0 26px 56px rgba(63, 45, 39, 0.14);
	transform: translateY(-3px);
}

.woocommerce ul.products li.product a img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	margin: 0 0 22px;
	border: 1px solid rgba(63, 45, 39, 0.22);
	border-radius: 24px;
	background:
		radial-gradient(circle at center, rgba(63, 45, 39, 0.18), transparent 55%),
		linear-gradient(135deg, rgba(245, 239, 230, 0.88), rgba(251, 248, 242, 0.94));
}

.woocommerce ul.products li.product a img.woocommerce-placeholder {
	object-fit: contain;
	padding: 16%;
	opacity: 0.58;
	filter: sepia(0.25) saturate(0.78);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0;
	color: var(--sam-brown);
	font-size: 1.42rem;
	font-weight: 500;
	line-height: 1.2;
	min-height: 3.4rem;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--sam-burgundy-dark);
	font-size: 1.22rem;
	font-weight: 700;
}

.woocommerce ul.products li.product .price .sam-coming-soon-price,
.woocommerce div.product p.price .sam-coming-soon-price,
.woocommerce div.product span.price .sam-coming-soon-price {
	font-size: 0.82rem;
	vertical-align: middle;
}

.woocommerce ul.products li.product .button {
	align-self: stretch;
	margin-top: auto;
	text-align: center;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	width: min(100% - 40px, var(--sam-container));
	margin: 28px auto;
	border-top-color: var(--sam-burgundy);
	border-radius: 18px;
	background: rgba(251, 248, 242, 0.88);
	color: var(--sam-ink);
	box-shadow: 0 16px 34px rgba(63, 45, 39, 0.08);
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--sam-burgundy-dark);
}

.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(340px, 0.8fr);
	gap: clamp(28px, 5vw, 58px);
	align-items: start;
	padding: 66px 0 104px;
}

.woocommerce div.product::before,
.woocommerce div.product::after {
	display: none;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
	float: none;
	width: auto;
}

.woocommerce div.product div.images {
	margin-bottom: 0;
}

.woocommerce div.product div.images img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 1px solid var(--sam-border);
	border-radius: 32px;
	background:
		radial-gradient(circle at center, rgba(63, 45, 39, 0.14), transparent 58%),
		var(--sam-parchment);
	box-shadow: 0 24px 64px rgba(63, 45, 39, 0.15);
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin-top: 14px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	float: none;
	width: auto;
}

.woocommerce div.product div.images .flex-control-thumbs img {
	aspect-ratio: 1 / 1;
	border-radius: 14px;
	box-shadow: none;
}

.woocommerce div.product .summary {
	position: sticky;
	top: 124px;
	padding: clamp(26px, 4vw, 42px);
	border: 1px solid var(--sam-border);
	border-radius: 32px;
	background:
		linear-gradient(180deg, rgba(245, 239, 230, 0.96), rgba(251, 248, 242, 0.72));
	box-shadow: 0 22px 52px rgba(63, 45, 39, 0.1);
}

.woocommerce div.product .product_title {
	margin: 0 0 18px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	display: block;
	margin: 0 0 22px;
	font-size: clamp(1.45rem, 3vw, 2rem);
}

.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .product_meta {
	color: var(--sam-warm-brown);
}

.woocommerce div.product .woocommerce-product-details__short-description {
	margin: 22px 0;
	font-size: 1.04rem;
	line-height: 1.75;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: stretch;
	margin: 26px 0;
}

.woocommerce div.product form.cart div.quantity {
	margin: 0;
}

.woocommerce div.product form.cart .quantity .qty {
	width: 86px;
	min-height: 50px;
	border-radius: 999px;
	text-align: center;
}

.woocommerce div.product form.cart .button {
	flex: 1 1 220px;
	min-height: 52px;
	padding-inline: 28px;
}

.woocommerce div.product .product_meta {
	display: grid;
	gap: 6px;
	padding-top: 18px;
	border-top: 1px solid rgba(63, 45, 39, 0.28);
	font-size: 0.92rem;
}

.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: 10px;
	padding: clamp(24px, 4vw, 40px);
	border: 1px solid var(--sam-border);
	border-radius: 30px;
	background: rgba(245, 239, 230, 0.78);
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.08);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	margin: 0 0 24px;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	border-bottom-color: rgba(63, 45, 39, 0.32);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border-color: var(--sam-border);
	border-radius: 999px;
	background: rgba(251, 248, 242, 0.72);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	color: var(--sam-brown);
}

.woocommerce table.shop_table,
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
	border: 1px solid var(--sam-border);
	border-radius: 22px;
	background: rgba(245, 239, 230, 0.74);
	overflow: hidden;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .quantity .qty {
	min-height: 44px;
	border: 1px solid rgba(94, 74, 62, 0.22);
	border-radius: 12px;
	background: #FBF8F2;
	color: var(--sam-ink);
}

/* 6. Paginas internas */
.sam-page-hero {
	padding: 76px 0 50px;
	background:
		linear-gradient(135deg, rgba(63, 45, 39, 0.18), transparent),
		var(--sam-cream);
}

.sam-page-hero--visual {
	padding: 60px 0;
}

.sam-page-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.72fr);
	gap: 44px;
	align-items: center;
}

.sam-page-hero__copy {
	max-width: 760px;
}

.sam-page-hero__media {
	position: relative;
	padding: 14px;
	border: 1px solid var(--sam-border);
	border-radius: 28px;
	background: rgba(245, 239, 230, 0.7);
	box-shadow: 0 20px 48px rgba(63, 45, 39, 0.12);
}

.sam-page-hero__media::after {
	position: absolute;
	inset: 26px -10px -10px 26px;
	z-index: -1;
	border: 1px solid rgba(63, 45, 39, 0.42);
	border-radius: 28px;
	content: "";
}

.sam-page-hero__media img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 20px;
}

.sam-page-hero--account {
	padding: clamp(26px, 3.2vw, 38px) 0 clamp(20px, 2.4vw, 28px);
}

.sam-page-hero--account .sam-page-hero__grid {
	display: block;
}

.sam-page-hero--account .sam-page-hero__copy {
	max-width: 780px;
}

.sam-page-hero--account h1 {
	font-size: clamp(2.35rem, 4.2vw, 3.75rem);
	line-height: 0.98;
	letter-spacing: -0.025em;
}

.sam-page-hero--account p:not(.sam-eyebrow) {
	margin-top: 10px;
	font-size: clamp(0.98rem, 1.4vw, 1.06rem);
	line-height: 1.45;
}

.sam-page--account .sam-page__content {
	padding-top: 0;
	padding-bottom: clamp(64px, 8vw, 100px);
}

.sam-account-content {
	width: 100%;
}

.sam-account-access {
	margin-top: 0;
}

.sam-account-forms {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: clamp(18px, 2.2vw, 26px);
	align-items: stretch;
}

.sam-account-forms--login-only {
	grid-template-columns: minmax(0, 620px);
	justify-content: center;
}

.sam-account-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: clamp(22px, 2.5vw, 30px);
	border: 1px solid rgba(63, 45, 39, 0.16);
	border-radius: 26px;
	background: rgba(251, 248, 242, 0.92);
	box-shadow: 0 18px 44px rgba(63, 45, 39, 0.08);
	scroll-margin-top: 150px;
}

.sam-account-card--register {
	position: relative;
	background:
		linear-gradient(145deg, rgba(251, 248, 242, 0.98), rgba(245, 239, 230, 0.92));
	border-color: rgba(107, 47, 50, 0.42);
	box-shadow: 0 22px 52px rgba(63, 45, 39, 0.12);
}

.sam-account-card--register::before {
	position: absolute;
	top: -1px;
	right: 34px;
	left: 34px;
	height: 3px;
	border-radius: 0 0 999px 999px;
	background: var(--sam-burgundy);
	content: "";
}

.sam-account-card:focus {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 5px;
}

.sam-account-card__eyebrow,
.sam-account-gift__eyebrow {
	margin: 0 0 6px;
	color: var(--sam-burgundy-dark);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sam-account-card__badge {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	min-height: 24px;
	margin: 0 0 7px;
	padding: 3px 9px;
	border: 1px solid rgba(107, 47, 50, 0.3);
	border-radius: 999px;
	background: rgba(107, 47, 50, 0.06);
	color: var(--sam-burgundy-dark);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1;
}

.sam-account-card h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(1.8rem, 3vw, 2.35rem);
	font-weight: 500;
	line-height: 1.08;
}

.sam-account-card__intro {
	margin: 8px 0 16px;
	color: var(--sam-warm-brown);
	font-size: 0.98rem;
	line-height: 1.55;
}

.woocommerce .sam-account-card form.woocommerce-form,
.woocommerce-page .sam-account-card form.woocommerce-form {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.woocommerce .sam-account-card form.woocommerce-form .form-row,
.woocommerce-page .sam-account-card form.woocommerce-form .form-row {
	float: none;
	width: 100%;
	margin: 0 0 12px;
	padding: 0;
}

.sam-account-card label {
	display: block;
	margin-bottom: 5px;
	color: var(--sam-brown);
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.35;
}

.sam-account-card .woocommerce-form__label-for-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-weight: 500;
}

.sam-account-card input[type="checkbox"] {
	width: 17px;
	height: 17px;
	margin: 0;
	accent-color: var(--sam-burgundy);
}

.sam-account-card .required {
	color: var(--sam-burgundy-dark);
}

.sam-account-card input.input-text {
	width: 100%;
	min-height: 46px;
	padding: 10px 13px;
	border: 1px solid rgba(63, 45, 39, 0.22);
	border-radius: 13px;
	background: #fffdf9;
	box-shadow: none;
	color: var(--sam-brown);
	font-size: 16px;
	-webkit-appearance: none;
	appearance: none;
}

.sam-account-card .password-input {
	display: block;
	width: 100%;
}

.sam-account-card .show-password-input {
	right: 14px;
	color: var(--sam-brown);
}

.sam-account-card input.input-text:focus {
	border-color: var(--sam-burgundy);
	outline: 2px solid rgba(107, 47, 50, 0.15);
	outline-offset: 1px;
}

.sam-account-card__actions {
	display: block;
	margin: 12px 0 0 !important;
}

.sam-account-card .button {
	min-height: 46px;
	padding: 10px 20px;
	border: 1px solid var(--sam-burgundy);
	border-radius: 999px;
	background: var(--sam-burgundy);
	color: var(--sam-white);
	box-shadow: none;
}

.sam-account-card .button:hover,
.sam-account-card .button:focus-visible {
	border-color: var(--sam-burgundy-dark);
	background: var(--sam-burgundy-dark);
	color: var(--sam-white);
}

.sam-account-card--login .woocommerce-form-login__submit {
	width: 100%;
	border-color: rgba(63, 45, 39, 0.58);
	background: transparent;
	color: var(--sam-brown);
}

.sam-account-card--login .woocommerce-form-login__submit:hover,
.sam-account-card--login .woocommerce-form-login__submit:focus-visible {
	border-color: var(--sam-brown);
	background: rgba(63, 45, 39, 0.08);
	color: var(--sam-brown);
}

.sam-account-card--register .woocommerce-form-register__submit {
	width: 100%;
	min-height: 48px;
	box-shadow: 0 12px 26px rgba(107, 47, 50, 0.18);
}

.sam-account-card .sam-account-lost-password,
.sam-account-card .woocommerce-privacy-policy-text a {
	color: var(--sam-burgundy-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sam-account-login-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
	align-items: center;
	justify-content: space-between;
	margin-top: 2px;
	font-size: 0.86rem;
}

.sam-account-lost-password {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	font-size: 0.86rem;
}

.sam-account-card .woocommerce-privacy-policy-text {
	margin: 0 0 12px;
	color: var(--sam-warm-brown);
	font-size: 0.86rem;
	line-height: 1.5;
}

.sam-account-password-note {
	margin: 0 0 13px;
	padding: 9px 12px;
	border-left: 3px solid rgba(107, 47, 50, 0.44);
	border-radius: 0 10px 10px 0;
	background: rgba(245, 239, 230, 0.72);
	color: var(--sam-warm-brown);
	font-size: 0.9rem;
	line-height: 1.5;
}

.sam-account-card__social {
	display: flex;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin: 0;
}

.sam-account-card__social > *,
.sam-account-card__social .nsl-container,
.sam-account-card__social .nsl-container-block,
.sam-account-card__social .nsl-container-buttons {
	width: 100%;
	margin-inline: auto;
}

.sam-account-card__social .nsl-container-block .nsl-container-buttons {
	padding: 0 !important;
}

.sam-account-card__social .nsl-container-block .nsl-container-buttons a {
	margin: 0 !important;
}

.sam-account-card__social .nsl-container .nsl-button,
.sam-account-card__social .nsl-container a {
	width: 100%;
	min-height: 44px;
	border-radius: 12px !important;
	box-shadow: none !important;
	touch-action: manipulation;
}

.sam-account-card__social .nsl-container .nsl-button:focus-visible,
.sam-account-card__social .nsl-container a:focus-visible {
	outline: 2px solid var(--sam-burgundy);
	outline-offset: 4px;
}

.sam-account-card__divider {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 9px 0 13px;
	color: rgba(63, 45, 39, 0.62);
	font-size: 0.82rem;
}

.sam-account-card__divider::before,
.sam-account-card__divider::after {
	flex: 1 1 auto;
	height: 1px;
	background: rgba(63, 45, 39, 0.14);
	content: "";
}

.sam-account-gift {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 15px;
	padding: 11px 15px;
	border: 1px solid rgba(107, 47, 50, 0.28);
	border-radius: 15px;
	background: rgba(245, 239, 230, 0.78);
	box-shadow: 0 7px 20px rgba(63, 45, 39, 0.04);
}

.sam-account-gift__message {
	display: flex;
	gap: 11px;
	align-items: center;
	min-width: 0;
}

.sam-account-gift__icon {
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
	color: var(--sam-burgundy);
}

.sam-account-gift__text {
	margin: 0;
	color: var(--sam-brown);
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.4;
}

.sam-account-gift__cta {
	flex: 0 0 auto;
	min-height: 38px;
	padding: 8px 14px;
	border-color: rgba(107, 47, 50, 0.42);
	background: rgba(251, 248, 242, 0.86);
	color: var(--sam-brown);
	box-shadow: none;
	font-size: 0.82rem;
	white-space: nowrap;
}

.sam-account-gift__cta:hover,
.sam-account-gift__cta:focus-visible {
	border-color: var(--sam-brown);
	background: rgba(63, 45, 39, 0.08);
	color: var(--sam-brown);
}

.sam-page-hero p:not(.sam-eyebrow) {
	max-width: 760px;
	margin: 18px 0 0;
	color: var(--sam-warm-brown);
	font-size: 1.08rem;
}

.sam-checkout-account-note {
	width: min(100% - 40px, var(--sam-container));
	margin: 28px auto 0;
	padding: 18px 22px;
	border: 1px solid rgba(63, 45, 39, 0.46);
	border-radius: 18px;
	background: rgba(245, 239, 230, 0.82);
	color: var(--sam-warm-brown);
	box-shadow: 0 14px 32px rgba(63, 45, 39, 0.07);
	font-size: 0.98rem;
	line-height: 1.55;
}

.sam-page-hero__subtitle {
	max-width: 760px;
	margin: 12px 0 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.5rem);
	font-weight: 500;
	line-height: 1.04;
}

.sam-page-hero--center {
	min-height: 58vh;
	display: grid;
	place-items: center;
	text-align: center;
}

.sam-page-hero--center p {
	margin-inline: auto;
}

.sam-page__content,
.sam-post-list {
	padding: 44px 0 88px;
}

.sam-content-card,
.sam-post-card {
	padding: clamp(24px, 5vw, 52px);
	border: 1px solid var(--sam-border);
	border-radius: 28px;
	background: rgba(245, 239, 230, 0.82);
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.08);
}

.sam-content-card > *:first-child,
.sam-post-card > *:first-child {
	margin-top: 0;
}

.sam-content-card > *:last-child,
.sam-post-card > *:last-child {
	margin-bottom: 0;
}

.sam-content-card h2,
.sam-content-card h3,
.sam-post-card h2 {
	color: var(--sam-brown);
	line-height: 1.15;
}

.sam-journal {
	display: grid;
	gap: 28px;
}

.sam-journal__heading {
	max-width: 720px;
	margin-inline: auto;
	text-align: center;
}

.sam-journal__heading h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.4rem);
	font-weight: 500;
	line-height: 1.05;
}

.sam-journal__entries {
	display: grid;
	gap: 28px;
}

.sam-journal-entry {
	width: min(100%, 860px);
	margin-inline: auto;
	padding: clamp(28px, 5vw, 64px);
	border: 1px solid rgba(107, 47, 50, 0.18);
	border-radius: 28px;
	background:
		linear-gradient(180deg, rgba(255, 251, 245, 0.96), rgba(245, 239, 230, 0.82));
	box-shadow: 0 22px 56px rgba(63, 45, 39, 0.1);
}

.sam-journal-entry__header {
	max-width: 720px;
	margin: 0 auto 28px;
	text-align: center;
}

.sam-journal-entry__label {
	margin: 0 0 14px;
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.sam-journal-entry h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2.15rem, 4.6vw, 4rem);
	font-weight: 500;
	line-height: 1.04;
}

.sam-journal-entry__description,
.sam-journal-entry__meta {
	max-width: 640px;
	margin: 16px auto 0;
	color: var(--sam-cacao);
	font-size: 1rem;
	line-height: 1.65;
}

.sam-journal-entry__meta {
	color: var(--sam-burgundy-dark);
	font-size: 0.86rem;
	font-weight: 700;
	text-transform: uppercase;
}

.sam-journal-entry__content {
	max-width: 700px;
	margin-inline: auto;
}

.sam-journal-entry__content p {
	margin: 0 0 1.35em;
	color: var(--sam-cacao);
	font-size: clamp(1.05rem, 1.35vw, 1.16rem);
	line-height: 1.86;
}

.sam-journal-entry__content p:first-child {
	color: var(--sam-brown);
	font-size: clamp(1.18rem, 1.8vw, 1.35rem);
	line-height: 1.65;
}

.sam-journal-entry__content p:last-child {
	margin-bottom: 0;
}

.sam-journal-entry__list {
	display: grid;
	gap: 18px;
	margin: 0 0 1.35em;
	padding-left: 1.2em;
	color: var(--sam-cacao);
	font-size: clamp(1.05rem, 1.35vw, 1.16rem);
	line-height: 1.78;
}

.sam-journal-entry__list strong {
	color: var(--sam-brown);
}

.sam-journal-entry__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.sam-journal-entry__tags li {
	padding: 7px 12px;
	border: 1px solid rgba(107, 47, 50, 0.18);
	border-radius: 999px;
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
}

.sam-journal-entry__closing {
	max-width: 700px;
	margin: 34px auto 0;
	padding-top: 24px;
	border-top: 1px solid rgba(107, 47, 50, 0.22);
}

.sam-journal-entry__closing p {
	margin: 0;
	color: var(--sam-burgundy-dark);
	font-size: clamp(1.35rem, 2.4vw, 2rem);
	font-style: italic;
	line-height: 1.35;
	text-align: center;
}
@media (max-width: 768px) {
	.sam-journal__heading,
	.sam-journal-entry__header,
	.sam-journal-entry__closing p {
		text-align: left;
	}

	.sam-journal-entry {
		padding: 24px 20px;
		border-radius: 24px;
	}
}
.sam-page-showcase {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.72fr);
	gap: 28px;
	align-items: stretch;
	margin-bottom: 30px;
}

.sam-page-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

@media (min-width: 769px) {
	.sam-page-showcase .sam-gallery-card--details {
		grid-column: 1 / -1;
		justify-self: center;
		width: calc((100% - 16px) / 2);
	}
}
.sam-experience-intro,
.sam-experience-types,
.sam-experience-gallery,
.sam-experience-process {
	margin-bottom: 34px;
}

.sam-experience-intro {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(0, 1fr);
	gap: clamp(24px, 5vw, 70px);
	align-items: start;
	padding: clamp(28px, 5vw, 54px);
	border: 1px solid rgba(107, 47, 50, 0.22);
	border-radius: 30px;
	background:
		radial-gradient(circle at 92% 8%, rgba(181, 132, 80, 0.18), transparent 17rem),
		linear-gradient(135deg, rgba(255, 250, 242, 0.94), rgba(245, 239, 230, 0.78));
	box-shadow: 0 18px 44px rgba(63, 45, 39, 0.08);
}

.sam-experience-intro h2,
.sam-experience-section-heading h2 {
	margin: 4px 0 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.35rem);
	font-weight: 500;
	line-height: 1.06;
}

.sam-experience-intro > p,
.sam-experience-section-heading p:not(.sam-eyebrow) {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 1.08rem;
	line-height: 1.74;
}

.sam-experience-section-heading {
	max-width: 860px;
	margin-bottom: 22px;
}

.sam-experience-section-heading p:not(.sam-eyebrow) {
	margin-top: 12px;
}

.sam-experience-types__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px;
}

.sam-experience-card,
.sam-experience-example {
	overflow: hidden;
	border: 1px solid var(--sam-border);
	border-radius: 26px;
	background:
		linear-gradient(180deg, rgba(255, 251, 245, 0.96), rgba(245, 239, 230, 0.72));
	box-shadow: 0 18px 42px rgba(63, 45, 39, 0.08);
}

.sam-experience-card {
	display: flex;
	flex-direction: column;
}

.sam-experience-card__media,
.sam-experience-example__media {
	position: relative;
	display: grid;
	min-height: 210px;
	margin: 0;
	place-items: center;
	overflow: hidden;
	background:
		radial-gradient(circle at center, rgba(107, 47, 50, 0.14), transparent 55%),
		linear-gradient(135deg, rgba(245, 239, 230, 0.92), rgba(251, 248, 242, 0.86));
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sam-experience-card__media img,
.sam-experience-example__media img,
.sam-experience-example__video {
	width: 100%;
	height: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.sam-experience-card__media {
	min-height: 250px;
}

.sam-experience-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 16px;
	padding: clamp(22px, 3vw, 30px);
}

.sam-experience-card h3,
.sam-experience-example h3 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(1.35rem, 2.2vw, 1.72rem);
	font-weight: 500;
	line-height: 1.12;
}

.sam-experience-card p,
.sam-experience-example__body span {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 0.98rem;
	line-height: 1.62;
}

.sam-experience-card__subtitle {
	color: var(--sam-burgundy-dark) !important;
	font-size: 0.82rem !important;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.25 !important;
	text-transform: uppercase;
}

.sam-experience-card__format {
	padding: 14px 0;
	border-top: 1px solid rgba(107, 47, 50, 0.18);
	border-bottom: 1px solid rgba(107, 47, 50, 0.18);
	color: var(--sam-brown) !important;
	font-size: 1.02rem !important;
	font-style: italic;
	line-height: 1.5 !important;
}


.sam-experience-card__ideal {
	display: grid;
	gap: 6px;
	margin-top: auto;
	padding-top: 16px;
	border-top: 1px solid rgba(107, 47, 50, 0.18);
}

.sam-experience-card__ideal strong,
.sam-experience-example__body p {
	margin: 0;
	color: var(--sam-burgundy-dark);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sam-experience-card__ideal span {
	color: var(--sam-cacao);
	font-size: 0.94rem;
	line-height: 1.5;
}

.sam-experience-card__ideal ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 2px 0 0;
	padding: 0;
	list-style: none;
}

.sam-experience-card__ideal li {
	padding: 0.38rem 0.62rem;
	border: 1px solid rgba(107, 47, 50, 0.18);
	border-radius: 999px;
	background: rgba(255, 251, 245, 0.62);
	color: var(--sam-cacao);
	font-size: 0.84rem;
	line-height: 1.25;
}

.sam-experience-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	margin-top: 4px;
	padding: 0.62rem 0.92rem;
	border: 1px solid rgba(107, 47, 50, 0.48);
	border-radius: 999px;
	color: var(--sam-brown);
	font-size: 0.84rem;
	font-weight: 800;
	text-decoration: none;
}

.sam-experience-card__cta:hover,
.sam-experience-card__cta:focus-visible {
	border-color: var(--sam-burgundy);
	background: var(--sam-burgundy);
	color: var(--sam-white);
}

.sam-experience-workshops {
	margin-bottom: 34px;
	padding: clamp(26px, 5vw, 48px);
	border: 1px solid rgba(107, 47, 50, 0.22);
	border-radius: 30px;
	background:
		radial-gradient(circle at 8% 0%, rgba(181, 132, 80, 0.14), transparent 18rem),
		linear-gradient(135deg, rgba(255, 251, 245, 0.92), rgba(245, 239, 230, 0.72));
	box-shadow: 0 18px 44px rgba(63, 45, 39, 0.08);
}

.sam-experience-workshops__intro {
	max-width: 880px;
	margin: -4px 0 24px;
	color: var(--sam-cacao);
	font-size: 1.02rem;
	line-height: 1.72;
}

.sam-experience-workshops__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.sam-experience-workshop-card {
	display: flex;
	min-width: 0;
	min-height: 100%;
	flex-direction: column;
	gap: 18px;
	padding: clamp(20px, 2.8vw, 28px);
	border: 1px solid rgba(107, 47, 50, 0.2);
	border-radius: 24px;
	background: rgba(255, 251, 245, 0.76);
	box-shadow: 0 14px 32px rgba(63, 45, 39, 0.07);
}

.sam-experience-workshop-card__body {
	display: grid;
	gap: 10px;
}

.sam-experience-workshop-card__details {
	width: fit-content;
	margin: 0;
	padding: 0.42rem 0.68rem;
	border: 1px solid rgba(107, 47, 50, 0.18);
	border-radius: 999px;
	background: rgba(245, 239, 230, 0.72);
	color: var(--sam-burgundy-dark);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.25;
	text-transform: uppercase;
}

.sam-experience-workshop-card h3 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(1.34rem, 2vw, 1.68rem);
	font-weight: 500;
	line-height: 1.12;
}

.sam-experience-workshop-card__subtitle {
	margin: 0;
	color: var(--sam-burgundy-dark);
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.35;
}

.sam-experience-workshop-card__description {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 0.96rem;
	line-height: 1.6;
}

.sam-experience-workshop-card__sensory {
	display: grid;
	gap: 9px;
	margin-top: auto;
	padding-top: 16px;
	border-top: 1px solid rgba(107, 47, 50, 0.16);
}

.sam-experience-workshop-card__sensory strong {
	color: var(--sam-burgundy-dark);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sam-experience-workshop-card__sensory ul {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-experience-workshop-card__sensory li {
	position: relative;
	padding-left: 16px;
	color: var(--sam-cacao);
	font-size: 0.92rem;
	line-height: 1.45;
}

.sam-experience-workshop-card__sensory li::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--sam-burgundy);
	content: "";
}

.sam-experience-workshop-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	margin-top: 2px;
	padding: 0.62rem 0.92rem;
	border: 1px solid rgba(107, 47, 50, 0.48);
	border-radius: 999px;
	color: var(--sam-brown);
	font-size: 0.84rem;
	font-weight: 800;
	text-decoration: none;
}

.sam-experience-workshop-card__cta:hover,
.sam-experience-workshop-card__cta:focus-visible {
	border-color: var(--sam-burgundy);
	background: var(--sam-burgundy);
	color: var(--sam-white);
}

.sam-experience-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 22px;
	padding: 0;
	list-style: none;
}

.sam-experience-filters li {
	padding: 0.45rem 0.78rem;
	border: 1px solid rgba(107, 47, 50, 0.24);
	border-radius: 999px;
	background: rgba(255, 251, 245, 0.6);
	color: var(--sam-brown);
	font-size: 0.82rem;
	font-weight: 800;
}

.sam-experience-gallery__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.sam-experience-example {
	display: flex;
	flex-direction: column;
}

.sam-experience-example__media {
	min-height: 190px;
}

.sam-experience-example__media figcaption {
	position: absolute;
	right: 14px;
	bottom: 14px;
	padding: 0.38rem 0.64rem;
	border-radius: 999px;
	background: rgba(63, 45, 39, 0.84);
	color: var(--sam-white);
	font-size: 0.72rem;
	font-weight: 800;
}

.sam-experience-example__body {
	display: grid;
	gap: 8px;
	padding: 18px;
}

.sam-experience-process {
	padding: clamp(26px, 5vw, 48px);
	border: 1px solid rgba(107, 47, 50, 0.22);
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(255, 247, 232, 0.82), rgba(251, 248, 242, 0.72));
}

.sam-experience-process__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-experience-process__list li {
	display: grid;
	align-content: start;
	gap: 10px;
	padding: 18px;
	border-top: 1px solid rgba(107, 47, 50, 0.32);
}

.sam-experience-process__list span {
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.1em;
}

.sam-experience-process__list strong {
	color: var(--sam-brown);
	font-size: 1.08rem;
	line-height: 1.18;
}

.sam-experience-process__list p {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 0.96rem;
	line-height: 1.58;
}

.sam-page-final-cta--experiences {
	margin-top: 10px;
}

.sam-story-archive {
	display: grid;
	gap: 28px;
}

.sam-story-archive__intro {
	max-width: 820px;
}

.sam-story-archive__intro h2 {
	margin: 4px 0 12px;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 500;
	line-height: 1.05;
}

.sam-story-archive__intro p:not(.sam-eyebrow) {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 1.08rem;
	line-height: 1.72;
}

.sam-story-archive__grid {
	display: grid;
	gap: 26px;
}

.sam-story-card {
	position: relative;
	display: grid;
	gap: 18px;
	padding: clamp(26px, 5vw, 58px);
	overflow: hidden;
	border: 1px solid rgba(107, 47, 50, 0.28);
	border-radius: 30px;
	background:
		radial-gradient(circle at 94% 6%, rgba(181, 132, 80, 0.17), transparent 16rem),
		linear-gradient(145deg, rgba(255, 247, 232, 0.96), rgba(245, 239, 230, 0.82));
	box-shadow: 0 22px 58px rgba(63, 45, 39, 0.1);
}

.sam-story-card::after {
	position: absolute;
	right: 28px;
	bottom: 26px;
	width: 64px;
	height: 64px;
	border-right: 1px solid rgba(107, 47, 50, 0.38);
	border-bottom: 1px solid rgba(107, 47, 50, 0.38);
	border-radius: 0 0 22px 0;
	content: "";
	pointer-events: none;
}

.sam-story-card__header {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 16px;
	align-items: center;
	justify-content: space-between;
}

.sam-story-card__meta,
.sam-story-card__header span,
.sam-story-card__box {
	margin: 0;
	color: var(--sam-burgundy-dark);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sam-story-card h2 {
	max-width: 820px;
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.45rem);
	font-weight: 500;
	line-height: 1.02;
}

.sam-story-card__excerpt {
	max-width: 700px;
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 1.12rem;
	line-height: 1.65;
}

.sam-story-card__box {
	width: fit-content;
	padding: 0.42rem 0.78rem;
	border: 1px solid rgba(107, 47, 50, 0.28);
	border-radius: 999px;
	background: rgba(255, 251, 245, 0.62);
}

/* Reel thumbnail + button wrapper */
.sam-story-card__reel-wrap {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	flex-wrap: wrap;
}

.sam-story-card__reel-thumb {
	position: relative;
	display: block;
	flex-shrink: 0;
	width: 72px;
	height: 72px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(107, 47, 50, 0.18);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.sam-story-card__reel-thumb:hover,
.sam-story-card__reel-thumb:focus-visible {
	transform: scale(1.04);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

.sam-story-card__reel-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sam-story-card__reel-play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.28);
	color: #fff;
	transition: background 0.18s ease;
}

.sam-story-card__reel-thumb:hover .sam-story-card__reel-play,
.sam-story-card__reel-thumb:focus-visible .sam-story-card__reel-play {
	background: rgba(0, 0, 0, 0.45);
}

.sam-story-card__details {
	max-width: 860px;
}

.sam-story-card__details summary {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	margin: 4px 0 18px;
	padding: 0.55rem 0.95rem;
	border: 1px solid rgba(107, 47, 50, 0.42);
	border-radius: 999px;
	background: rgba(255, 251, 245, 0.72);
	color: var(--sam-brown);
	font-size: 0.88rem;
	font-weight: 800;
	cursor: pointer;
}

.sam-story-card__details[open] summary {
	margin-bottom: 22px;
}

.sam-story-card__text {
	display: grid;
	gap: 1.05rem;
	padding-top: 10px;
	border-top: 1px solid rgba(107, 47, 50, 0.2);
}

.sam-story-card__text p {
	max-width: 820px;
	margin: 0;
	color: var(--sam-cacao);
	font-size: clamp(1.02rem, 1.4vw, 1.16rem);
	line-height: 1.85;
}

.sam-page-final-cta--stories {
	margin-top: 34px;
}

.sam-feature-card {
	position: relative;
	display: grid;
	align-content: start;
	gap: 10px;
	min-height: 0;
	padding: 22px;
	border: 1px solid var(--sam-border);
	border-radius: 22px;
	background:
		linear-gradient(145deg, rgba(245, 239, 230, 0.92), rgba(251, 248, 242, 0.76));
	box-shadow: 0 16px 36px rgba(63, 45, 39, 0.07);
	overflow: hidden;
}

.sam-feature-card::after {
	position: absolute;
	right: 18px;
	bottom: 16px;
	width: 44px;
	height: 44px;
	border-right: 1px solid rgba(63, 45, 39, 0.45);
	border-bottom: 1px solid rgba(63, 45, 39, 0.45);
	border-radius: 0 0 18px 0;
	content: "";
}

.sam-feature-card span {
	width: 42px;
	height: 2px;
	background: var(--sam-burgundy);
}

.sam-feature-card--image {
	gap: 14px;
	padding: 14px;
}

.sam-feature-card--image::after {
	display: none;
}

.sam-feature-card__image {
	margin: 0;
	overflow: hidden;
	border-radius: 18px;
	background: var(--sam-parchment);
}

.sam-feature-card__image img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform 0.28s ease;
}

.sam-feature-card--image:hover .sam-feature-card__image img {
	transform: scale(1.035);
}


.sam-inline-link {
	position: relative;
	width: fit-content;
	margin-top: 4px;
	color: var(--sam-brown);
	font-size: 0.88rem;
	font-weight: 700;
	text-decoration: none;
}

.sam-inline-link::after {
	display: block;
	width: 100%;
	height: 1px;
	margin-top: 4px;
	background: var(--sam-burgundy);
	content: "";
}

.sam-inline-link:focus-visible {
	outline: 2px solid rgba(107, 47, 50, 0.8);
	outline-offset: 4px;
}

.sam-mini-icon {
	position: relative;
	display: inline-grid;
	width: 42px;
	height: 42px;
	margin-bottom: 2px;
	place-items: center;
	border: 1px solid rgba(63, 45, 39, 0.65);
	border-radius: 14px;
	background: rgba(245, 239, 230, 0.72);
}

.sam-feature-card .sam-mini-icon {
	width: 42px;
	height: 42px;
	background: rgba(245, 239, 230, 0.72);
}

.sam-mini-icon::before,
.sam-mini-icon::after {
	position: absolute;
	content: "";
	border-color: var(--sam-burgundy-dark);
}

.sam-mini-icon--box::before {
	width: 20px;
	height: 16px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 4px;
}

.sam-mini-icon--box::after {
	width: 18px;
	border-top: 2px solid var(--sam-burgundy-dark);
	transform: translateY(-4px);
}

.sam-mini-icon--date::before {
	width: 17px;
	height: 22px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 50%;
	transform: rotate(18deg);
}

.sam-mini-icon--ribbon::before {
	width: 22px;
	height: 10px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 999px 999px 4px 4px;
}

.sam-mini-icon--ribbon::after {
	width: 2px;
	height: 22px;
	background: var(--sam-burgundy-dark);
}

.sam-mini-icon--scroll::before {
	width: 20px;
	height: 24px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 9px 4px 9px 4px;
}

.sam-mini-icon--scroll::after {
	width: 12px;
	border-top: 2px solid var(--sam-burgundy-dark);
	box-shadow: 0 6px 0 var(--sam-burgundy-dark);
}

.sam-mini-icon--feather::before {
	width: 8px;
	height: 25px;
	border-right: 2px solid var(--sam-burgundy-dark);
	border-bottom: 2px solid var(--sam-burgundy-dark);
	border-radius: 0 100% 100% 100%;
	transform: rotate(38deg);
}

.sam-mini-icon--lock::before {
	width: 20px;
	height: 16px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 5px;
	transform: translateY(5px);
}

.sam-mini-icon--lock::after {
	width: 12px;
	height: 12px;
	border: 2px solid var(--sam-burgundy-dark);
	border-bottom: 0;
	border-radius: 12px 12px 0 0;
	transform: translateY(-7px);
}

.sam-mini-icon--tea::before {
	width: 20px;
	height: 13px;
	border: 2px solid var(--sam-burgundy-dark);
	border-radius: 0 0 12px 12px;
	transform: translateY(4px);
}

.sam-mini-icon--tea::after {
	width: 8px;
	height: 8px;
	border: 2px solid var(--sam-burgundy-dark);
	border-left: 0;
	border-radius: 0 10px 10px 0;
	transform: translate(14px, 4px);
}

.sam-mini-icon--table::before {
	width: 24px;
	border-top: 2px solid var(--sam-burgundy-dark);
	box-shadow: -8px 9px 0 -1px var(--sam-burgundy-dark), 8px 9px 0 -1px var(--sam-burgundy-dark);
	transform: translateY(-4px);
}

.sam-feature-card h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.35;
}

.sam-feature-card p {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 0.98rem;
	line-height: 1.55;
}

.sam-page-editorial-image {
	margin: 0;
	padding: 14px;
	border: 1px solid var(--sam-border);
	border-radius: 24px;
	background: rgba(245, 239, 230, 0.72);
	box-shadow: 0 16px 38px rgba(63, 45, 39, 0.09);
}

.sam-page-editorial-image img {
	width: 100%;
	height: 100%;
	min-height: 316px;
	object-fit: cover;
	border-radius: 18px;
}

.sam-page-editorial-image--mesa-gourmet {
	align-self: stretch;
}

.sam-page-editorial-image--mesa-gourmet img {
	object-position: 58% center;
}

.sam-page-cta {
	margin-top: 30px;
}

.sam-content-card--intro {
	max-width: 920px;
	margin-inline: auto;
}

.sam-process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
	counter-reset: sam-step;
}

.sam-process-list li {
	position: relative;
	padding: 24px;
	border: 1px solid var(--sam-border);
	border-radius: 24px;
	background: rgba(245, 239, 230, 0.72);
	counter-increment: sam-step;
}

.sam-process-list li::before {
	display: inline-grid;
	width: 34px;
	height: 34px;
	margin-bottom: 16px;
	place-items: center;
	border-radius: 50%;
	background: var(--sam-brown);
	color: var(--sam-cream);
	content: counter(sam-step);
	font-size: 0.86rem;
	font-weight: 700;
}

.sam-process-list strong,
.sam-process-list span {
	display: block;
}

.sam-process-list strong {
	color: var(--sam-brown);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1.2;
}

.sam-process-list span {
	margin-top: 10px;
	color: var(--sam-warm-brown);
	font-size: 0.97rem;
	line-height: 1.65;
}

.sam-pill-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}

.sam-pill-list li {
	padding: 10px 14px;
	border: 1px solid rgba(63, 45, 39, 0.42);
	border-radius: 999px;
	background: rgba(245, 239, 230, 0.74);
	color: var(--sam-brown);
	font-size: 0.94rem;
	font-weight: 700;
}

.sam-content-card--note {
	border-color: rgba(107, 47, 50, 0.3);
	background:
		linear-gradient(135deg, rgba(107, 47, 50, 0.13), transparent 54%),
		var(--sam-parchment);
}

.sam-content-card--quote blockquote {
	margin: 20px 0;
	color: var(--sam-brown);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(1.8rem, 4vw, 3rem);
	font-weight: 500;
	line-height: 1.08;
}

.sam-page-final-cta {
	margin-top: 28px;
	padding: clamp(28px, 5vw, 58px);
	border: 1px solid rgba(63, 45, 39, 0.5);
	border-radius: 34px;
	background:
		linear-gradient(135deg, rgba(63, 45, 39, 0.92), rgba(94, 74, 62, 0.88)),
		var(--sam-brown);
	box-shadow: var(--sam-shadow);
	color: var(--sam-cream);
}

.sam-page-final-cta h2 {
	margin: 0;
	color: var(--sam-cream);
	font-size: clamp(2.2rem, 5vw, 4rem);
	font-weight: 500;
	line-height: 1.02;
}

.sam-page-final-cta p {
	max-width: 680px;
	margin: 18px 0 0;
	color: rgba(245, 239, 230, 0.82);
	font-size: 1.05rem;
	line-height: 1.75;
}

.sam-page-final-cta .sam-button--ghost {
	color: var(--sam-cream);
}

.sam-content-card--editable {
	margin-top: 28px;
}

.sam-post-list {
	display: grid;
	gap: 22px;
}

.sam-post-card h2 {
	margin: 0 0 12px;
	font-size: 1.75rem;
	font-weight: 500;
}

.sam-single__image {
	margin-bottom: 28px;
}

.sam-single__image img {
	border-radius: 24px;
}

.sam-contact-panel {
	display: grid;
	grid-template-columns: minmax(0, 0.76fr) minmax(320px, 1fr);
	gap: 28px;
	align-items: start;
	padding: clamp(22px, 4vw, 42px);
	border: 1px solid var(--sam-border);
	border-radius: 30px;
	background: rgba(245, 239, 230, 0.88);
	box-shadow: var(--sam-shadow);
}

.sam-contact-panel__intro h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(1.8rem, 4vw, 3rem);
	font-weight: 500;
	line-height: 1.08;
}

.sam-contact-panel__intro p {
	color: var(--sam-warm-brown);
}

.sam-contact-panel__image {
	width: 100%;
	margin-top: 24px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border: 1px solid var(--sam-border);
	border-radius: 22px;
	box-shadow: 0 16px 36px rgba(63, 45, 39, 0.08);
}

.sam-contact-panel__form {
	padding: 26px;
	border: 1px solid rgba(63, 45, 39, 0.32);
	border-radius: 24px;
	background: var(--sam-parchment);
}

/* 7. Fluent Forms */
.sam-contact-panel .fluentform,
.sam-contact-panel .frm-fluent-form,
.fluentform,
.frm-fluent-form {
	color: var(--sam-ink);
}

.fluentform label,
.frm-fluent-form label,
.fluentform .ff-el-input--label label,
.frm-fluent-form .ff-el-input--label label {
	color: var(--sam-brown);
	font-weight: 700;
}

.fluentform input,
.fluentform textarea,
.fluentform select,
.frm-fluent-form input,
.frm-fluent-form textarea,
.frm-fluent-form select {
	width: 100%;
	min-height: 46px;
	border: 1px solid rgba(94, 74, 62, 0.24);
	border-radius: 14px;
	background: #FBF8F2;
	color: var(--sam-ink);
}

.fluentform textarea,
.frm-fluent-form textarea {
	min-height: 130px;
}

.fluentform button,
.fluentform input[type="submit"],
.frm-fluent-form button,
.frm-fluent-form input[type="submit"] {
	width: auto;
	min-width: 190px;
	background: var(--sam-burgundy);
	color: var(--sam-white);
	border-color: var(--sam-burgundy);
}

/* 8. Footer */
.sam-footer {
	background: var(--sam-brown);
	color: var(--sam-parchment);
}

.sam-footer__inner {
	display: grid;
	grid-template-columns: minmax(230px, 1.05fr) repeat(4, minmax(135px, 0.72fr));
	align-items: start;
	gap: clamp(28px, 5vw, 68px);
	width: min(100% - 48px, var(--sam-container));
	margin-inline: auto;
	padding: clamp(42px, 5.2vw, 60px) 0 clamp(32px, 4vw, 44px);
}

.sam-footer h2 {
	margin: 0 0 14px;
	color: var(--sam-taupe);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.2;
	text-transform: uppercase;
}

.sam-footer__brand {
	max-width: 330px;
}

.sam-footer__brand h2 {
	margin-bottom: 4px;
	color: var(--sam-cream);
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.05;
	text-transform: none;
}

.sam-footer__logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: min(100%, 138px);
	height: auto;
	margin-bottom: 14px;
	padding: 8px;
	border-radius: 14px;
	background: rgba(251, 248, 242, 0.94);
	overflow: visible;
}

.sam-footer__logo img {
	width: 100%;
	height: auto;
	object-fit: contain;
}

.sam-footer p {
	margin: 0;
	color: rgba(245, 239, 230, 0.78);
}

.sam-footer__claim {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.35;
	text-transform: uppercase;
}

.sam-footer__tagline {
	max-width: 300px;
	margin-top: 12px;
	font-size: 0.98rem;
	line-height: 1.55;
}

.sam-social-links {
	display: grid;
	gap: 10px;
}

.sam-social-links p {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.3;
	text-transform: uppercase;
}

.sam-social-links ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-social-links a {
	text-decoration: none;
}

.sam-social-links__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 34px;
	padding: 7px 11px;
	border: 1px solid rgba(107, 47, 50, 0.22);
	border-radius: 999px;
	background: rgba(255, 251, 245, 0.68);
	color: var(--sam-brown);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.sam-social-links__link:hover,
.sam-social-links__link:focus-visible {
	border-color: rgba(107, 47, 50, 0.42);
	background: rgba(245, 239, 230, 0.92);
	color: var(--sam-burgundy-dark);
}

.sam-social-links__icon {
	width: 15px;
	height: 15px;
	flex: 0 0 15px;
	fill: currentColor;
}

.sam-social-links__text {
	white-space: nowrap;
}

.sam-social-links--contact {
	margin-top: 18px;
	padding: 18px;
	border: 1px solid rgba(107, 47, 50, 0.2);
	border-radius: 18px;
	background: rgba(255, 251, 245, 0.62);
}

.sam-social-links--contact p {
	color: var(--sam-burgundy-dark);
	font-size: 0.94rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.5;
	text-transform: none;
}

.sam-footer ul {
	display: grid;
	gap: 7px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sam-footer li {
	line-height: 1.35;
}

.sam-footer a {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	color: rgba(245, 239, 230, 0.84);
	font-size: 0.96rem;
	line-height: 1.3;
	text-decoration: none;
}

.sam-footer a:hover,
.sam-footer a:focus-visible {
	color: var(--sam-taupe);
}

.sam-footer__social-list {
	display: grid;
	gap: 8px;
	max-width: 210px;
}

.sam-footer__social-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 34px;
	padding: 7px 10px;
	border: 1px solid rgba(245, 239, 230, 0.22);
	border-radius: 999px;
	background: rgba(251, 248, 242, 0.06);
	color: rgba(245, 239, 230, 0.88);
	font-size: 0.9rem;
	line-height: 1.2;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.sam-footer__social-link:hover,
.sam-footer__social-link:focus-visible {
	border-color: rgba(181, 132, 80, 0.56);
	background: rgba(181, 132, 80, 0.14);
	color: var(--sam-taupe);
}

.sam-footer__social-icon {
	width: 15px;
	height: 15px;
	flex: 0 0 15px;
	fill: currentColor;
}

.sam-footer__social-text {
	white-space: nowrap;
}

.sam-footer__bottom {
	width: min(100% - 48px, var(--sam-container));
	margin-inline: auto;
	padding: 16px 0 20px;
	border-top: 1px solid rgba(245, 239, 230, 0.16);
}

.sam-footer__bottom p {
	margin: 0;
	color: rgba(245, 239, 230, 0.66);
	font-size: 0.88rem;
}
.samirarte-update-badge {
	position: fixed;
	right: auto;
	bottom: 10px;
	left: 10px;
	z-index: 99999;
	max-width: 260px;
	padding: 8px 10px;
	border-radius: 6px;
	background: var(--sam-brown);
	box-shadow: 0 6px 18px rgba(63, 45, 39, 0.18);
	color: var(--sam-white);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
	font-size: 11px;
	line-height: 1.35;
	opacity: 0.88;
	text-align: left;
	pointer-events: none;
}

.samirarte-update-badge strong {
	color: var(--sam-white);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* 9. Responsive */
.sam-featured-carousel {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-flow: initial;
	grid-auto-columns: initial;
	overflow-x: visible;
}

@media (max-width: 1024px) {
	html,
	body {
		max-width: 100%;
		overflow-x: hidden;
	}

	.sam-container,
	.sam-header__inner,
	.sam-footer__inner,
	.sam-footer__bottom,
	.woocommerce .woocommerce-breadcrumb,
	.woocommerce .woocommerce-products-header,
	.woocommerce .woocommerce-notices-wrapper,
	.woocommerce .products,
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering,
	.woocommerce div.product,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.sam-checkout-account-note {
		width: min(100% - 48px, var(--sam-container));
	}

	.sam-header__inner {
		flex-wrap: wrap;
		justify-content: center;
		gap: 18px 24px;
		min-height: auto;
		padding: 18px 0;
	}

	.sam-brand {
		width: 100%;
		justify-content: center;
	}

	.sam-navigation {
		order: 3;
		width: 100%;
	}

	.sam-site-menu {
		flex-wrap: wrap;
		gap: 10px 18px;
	}

	.sam-site-menu a,
	.sam-header-actions__link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 40px;
		padding: 7px 10px;
		border-radius: 999px;
	}

	.sam-header-actions {
		justify-content: center;
		flex-wrap: wrap;
	}

	.sam-section {
		padding: 72px 0;
	}

	.sam-hero {
		padding-top: 56px;
		padding-bottom: 72px;
		min-height: auto;
	}

	.sam-hero__grid,
	.sam-editorial-split,
	.sam-page-hero__grid,
	.sam-page-showcase,
	.sam-contact-panel,
	.sam-contact-band__inner {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.sam-editorial-split--reverse .sam-editorial-split__media {
		order: 0;
	}

	.sam-hero h1 {
		font-size: clamp(3.4rem, 7vw, 5.1rem);
		letter-spacing: -0.03em;
	}

	.sam-hero__media {
		max-width: 620px;
		margin-inline: auto;
	}

	.sam-values__grid,
	.sam-selection-grid,
	.sam-page-card-grid,
	.sam-process-list,
	.woocommerce ul.products,
	.sam-footer__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce div.product {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.woocommerce div.product .summary {
		position: static;
	}
}

@media (max-width: 768px) {
	/* SAMIRARTE MOBILE HEADER HERO PATCH 2026-05-26 */
	/* SAMIRARTE MOBILE HERO BACKGROUND TUNING */
	/* SAMIRARTE MOBILE HERO TEXT UP 2026 */
	/* SAMIRARTE MOBILE LOGO SIZE PATCH */
	body::before {
		content: "mobile patch active";
		display: none;
	}

	.sam-container,
	.sam-footer__inner,
	.sam-footer__bottom,
	.woocommerce .woocommerce-breadcrumb,
	.woocommerce .woocommerce-products-header,
	.woocommerce .woocommerce-notices-wrapper,
	.woocommerce .products,
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering,
	.woocommerce div.product,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.sam-checkout-account-note {
		width: min(100% - 40px, var(--sam-container));
	}

	.sam-header {
		position: sticky;
		top: 0;
		padding-top: 10px;
		padding-bottom: 9px;
		background: rgba(251, 248, 242, 0.98);
		border-bottom: 1px solid rgba(63, 45, 39, 0.24);
		box-shadow: 0 8px 22px rgba(63, 45, 39, 0.06);
		backdrop-filter: blur(14px);
	}

	.sam-header__inner {
		display: block;
		width: 100%;
		padding: 0;
	}

	.sam-header__inner > .sam-brand,
	.sam-header__inner > .sam-navigation,
	.sam-header__inner > .sam-header-actions {
		display: none;
	}

	.sam-mobile-shell {
		display: grid;
		gap: 5px;
		padding: 0 18px;
	}

	.sam-mobile-topline {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: clamp(0.65rem, 2.4vw, 0.9rem);
		min-width: 0;
	}

	.sam-mobile-brand {
		display: inline-flex;
		align-items: center;
		flex: 1 1 auto;
		min-width: 0;
		color: var(--sam-brown);
		text-decoration: none;
	}

	.sam-mobile-site-branding,
	.site-branding-compact {
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		gap: 9px;
		text-align: left;
	}

	.sam-mobile-site-branding .custom-logo,
	.site-branding-compact .custom-logo {
		max-width: 38px;
		max-height: 38px;
	}

	.sam-mobile-site-branding .site-title,
	.site-branding-compact .site-title {
		font-size: 19px;
		letter-spacing: 0;
	}

	.sam-mobile-site-branding .site-description,
	.site-branding-compact .site-description {
		font-size: 7px;
		letter-spacing: 0.14em;
	}

	.sam-mobile-brand__logo {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: clamp(118px, 36vw, 135px);
		height: auto;
		flex: 0 0 auto;
		overflow: visible;
	}

	.sam-mobile-brand__logo img {
		width: 100% !important;
		height: auto !important;
		max-width: 100%;
		max-height: none !important;
		object-fit: contain;
	}

	.sam-mobile-brand__copy {
		display: grid;
		min-width: 0;
		line-height: 1;
	}

	.sam-mobile-brand__name {
		color: var(--sam-brown);
		font-size: 21px !important;
		line-height: 1 !important;
		font-weight: 500;
		letter-spacing: -0.01em;
		white-space: nowrap;
	}

	.sam-mobile-brand__tagline {
		margin-top: 2px;
		color: var(--sam-warm-brown);
		font-size: 9.5px !important;
		line-height: 1 !important;
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: none;
		white-space: nowrap;
	}

	.samirarte-header-icons {
		display: flex;
		align-items: center;
		gap: 6px;
		flex: 0 0 auto;
	}

	.sam-mobile-account-quick {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 42px;
		padding: 7px 11px;
		border: 1px solid var(--sam-burgundy);
		border-radius: 999px;
		background: var(--sam-burgundy);
		color: var(--sam-white);
		font-size: 12px;
		font-weight: 800;
		line-height: 1;
		white-space: nowrap;
	}

	.sam-mobile-account-quick:hover,
	.sam-mobile-account-quick:focus-visible {
		background: var(--sam-burgundy-dark);
		color: var(--sam-white);
	}

	.samirarte-account-icon,
	.samirarte-cart-icon,
	.samirarte-cart-icon.sam-mobile-cart-link {
		width: 42px;
		height: 42px;
		min-width: 42px;
		padding: 0;
	}

	.sam-mobile-strip {
		display: flex;
		gap: 7px;
		margin-inline: -18px;
		padding: 6px 18px 0;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x proximity;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.sam-mobile-strip__list {
		display: flex;
		flex: 0 0 auto;
		gap: 7px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.sam-mobile-strip::-webkit-scrollbar {
		display: none;
	}

	.sam-mobile-strip a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		min-height: 36px;
		padding: 7px 13px;
		border: 1px solid rgba(63, 45, 39, 0.28);
		border-radius: 999px;
		background: rgba(245, 239, 230, 0.74);
		color: var(--sam-brown);
		font-size: 14.5px;
		font-weight: 700;
		line-height: 1.15;
		text-decoration: none;
		white-space: nowrap;
		scroll-snap-align: start;
	}

	.sam-mobile-secondary {
		display: flex;
		gap: 6px;
		margin-inline: -18px;
		padding: 0 18px 2px;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
	}

	.sam-mobile-secondary::-webkit-scrollbar {
		display: none;
	}

	.sam-mobile-secondary a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 auto;
		min-height: 32px;
		padding: 5px 10px;
		border-radius: 999px;
		color: rgba(63, 45, 39, 0.72);
		font-size: 12.5px;
		font-weight: 700;
		line-height: 1.15;
		text-decoration: none;
		white-space: nowrap;
	}

	.sam-mobile-secondary .sam-mobile-account-link {
		min-height: 36px;
		padding-inline: 13px;
		border: 1px solid rgba(107, 47, 50, 0.42);
		background: rgba(245, 239, 230, 0.86);
		color: var(--sam-burgundy-dark);
	}

	.samirarte-cart-icon:active,
	.samirarte-account-icon:active,
	.sam-mobile-strip a:active,
	.sam-mobile-secondary a:active,
	.sam-featured-card:active,
	.sam-button:active {
		border-color: rgba(107, 47, 50, 0.55);
		transform: translateY(1px) scale(0.99);
	}

	.samirarte-cart-icon:focus-visible,
	.samirarte-account-icon:focus-visible,
	.sam-mobile-strip a:focus-visible,
	.sam-mobile-secondary a:focus-visible,
	.sam-mobile-brand:focus-visible,
	.sam-featured-card:focus-visible,
	.sam-button:focus-visible {
		outline: 2px solid var(--sam-burgundy);
		outline-offset: 3px;
	}

	.sam-section {
		padding: 56px 0;
	}

	.sam-page-hero--account {
		padding: 28px 0 22px;
	}

	.sam-page--account .sam-page__content {
		padding-bottom: 64px;
	}

	.sam-account-forms {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.sam-account-card {
		padding: 22px;
		border-radius: 22px;
		scroll-margin-top: 172px;
	}

	.sam-account-card--login {
		order: initial;
	}

	.sam-account-card--register {
		order: initial;
	}

	.sam-account-gift {
		align-items: flex-start;
		gap: 10px;
	}

	.sam-account-gift__cta {
		white-space: nowrap;
	}

	html,
	body {
		overflow-x: hidden;
	}

	.sam-hero,
	.hero-section {
		display: flex;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		min-height: 100svh !important;
		padding: 82px 22px max(28px, env(safe-area-inset-bottom)) !important;
		background:
			linear-gradient(
				180deg,
				rgba(63, 45, 39, 0.38) 0%,
				rgba(63, 45, 39, 0.5) 36%,
				rgba(63, 45, 39, 0.74) 100%
			),
			url("../img/hero.webp") 72% center / cover no-repeat !important;
		color: #FBF8F2;
	}

	.sam-hero__grid,
	.hero-section {
		display: block;
		width: 100%;
		margin-inline: auto;
	}

	.sam-hero__content {
		display: block;
		max-width: 94%;
		margin-top: 0 !important;
		transform: translateY(-24px);
	}
	.sam-eyebrow,
	.hero-section .k-label,
	.hero-section .eyebrow,
	.hero-section .brand-sub {
		color: #D7CABC;
		font-size: 9.5px !important;
		letter-spacing: 0.17em !important;
		margin-bottom: 10px !important;
	}

	.sam-hero h1,
	.hero-section h1 {
		max-width: 100%;
		margin-right: auto;
		margin-bottom: 12px !important;
		margin-left: auto;
		color: #FBF8F2;
		font-size: clamp(33px, 10vw, 46px) !important;
		line-height: 0.92 !important;
		letter-spacing: -0.04em !important;
		text-shadow: 0 10px 34px rgba(63, 45, 39, 0.34);
		text-wrap: balance;
	}

	.sam-hero__text,
	.hero-section .hero-desc {
		max-width: 92% !important;
		margin-right: auto;
		margin-top: 0;
		margin-bottom: 14px !important;
		margin-left: auto;
		color: #FBF8F2;
		font-size: 14.5px !important;
		line-height: 1.38 !important;
		text-shadow: 0 10px 34px rgba(63, 45, 39, 0.34);
	}

	.sam-actions,
	.hero-buttons {
		display: grid;
		grid-template-columns: 1fr;
		gap: 8px !important;
		width: 100%;
		margin-top: 0;
		margin-bottom: clamp(0.35rem, 1.8vw, 0.65rem);
	}

	.sam-actions .sam-button,
	.hero-buttons a,
	.hero-buttons .btn,
	.hero-buttons .btn-dark,
	.hero-buttons .btn-light {
		width: 100%;
		min-height: 44px !important;
		padding: 9px 14px !important;
		border-radius: 999px !important;
		font-size: 14.5px !important;
		line-height: 1.1 !important;
		touch-action: manipulation;
	}

	.sam-hero .sam-actions .sam-button--ghost,
	.sam-hero .sam-actions .sam-button--outline {
		min-height: 44px;
		border-width: 1px;
		border-color: rgba(251, 248, 242, 0.72);
		background: rgba(251, 248, 242, 0.06);
		box-shadow: none;
		color: #FBF8F2;
		font-size: 0.88rem;
		font-weight: 600;
	}

	.sam-hero .sam-actions .sam-button:not(.sam-button--ghost):not(.sam-button--outline) {
		border-color: #FBF8F2;
		background: #FBF8F2;
		color: var(--sam-brown);
	}

	.sam-hero__media,
	.hero-image-container {
		display: none !important;
	}

	.sam-featured-carousel-section {
		padding: 42px 0 28px;
	}
	.sam-featured-carousel-heading {
		width: min(100% - 40px, var(--sam-container));
		margin-bottom: 18px;
	}

	.sam-featured-carousel-heading h2 {
		font-size: clamp(1.8rem, 8vw, 2.5rem);
	}

	.sam-featured-carousel-heading p {
		font-size: 0.98rem;
	}

	.sam-featured-carousel {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: minmax(240px, 74vw);
		gap: 18px;
		width: 100%;
		padding: 4px 20px 22px;
		overflow-x: auto;
		scroll-padding-inline: 20px;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.sam-featured-card {
		max-width: 300px;
		border-radius: 22px;
	}

	.sam-featured-card__body em {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 38px;
		margin-top: 4px;
		padding: 0.48rem 0.7rem;
		border: 1px solid rgba(63, 45, 39, 0.42);
		border-radius: 999px;
		color: var(--sam-brown);
		font-size: 0.82rem;
		font-style: normal;
		font-weight: 700;
	}

	.sam-values__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sam-selection-grid,
	.sam-page-card-grid,
	.sam-process-list,
	.woocommerce ul.products,
	.sam-footer__inner,
	.sam-editorial-split,
	.sam-editorial-split--reverse,
	.sam-contact-band__inner,
	.sam-contact-panel,
	.sam-page-hero__grid,
	.sam-page-showcase {
		grid-template-columns: 1fr;
	}

	.sam-product-card__image,
	.sam-editorial-split__media img,
	.sam-page-hero__media img,
	.sam-contact-panel__image {
		aspect-ratio: 4 / 3;
	}

	.sam-contact-panel__form {
		padding: 20px;
	}

	.fluentform button,
	.fluentform input[type="submit"],
	.frm-fluent-form button,
	.frm-fluent-form input[type="submit"] {
		width: 100%;
		min-height: 48px;
	}

	.woocommerce .woocommerce-breadcrumb {
		margin-top: 26px;
	}

	.woocommerce .woocommerce-products-header {
		margin-top: 24px;
		margin-bottom: 20px;
		padding: 28px 22px;
		border-radius: 24px;
	}

	.woocommerce .woocommerce-products-header::after {
		display: none;
	}

	.woocommerce .woocommerce-products-header__title,
	.woocommerce div.product .product_title {
		font-size: clamp(2rem, 10vw, 3.1rem);
	}

	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		display: flex;
		width: min(100% - 40px, var(--sam-container));
		margin-right: auto;
		margin-left: auto;
	}

	.woocommerce .woocommerce-ordering,
	.woocommerce .woocommerce-ordering select,
	.woocommerce ul.products li.product .button {
		width: 100%;
	}

	.woocommerce div.product {
		grid-template-columns: 1fr;
		gap: 22px;
		padding-top: 34px;
		padding-bottom: 72px;
	}

	.woocommerce div.product .summary {
		position: static;
		padding: 24px;
	}

	.woocommerce div.product form.cart {
		display: grid;
		grid-template-columns: 92px 1fr;
	}

	.woocommerce div.product form.cart .button {
		width: 100%;
	}

	.sam-footer__inner {
		gap: 30px;
		padding: 52px 0 38px;
	}
}

@media (max-width: 480px) {
	.sam-container,
	.sam-footer__inner,
	.sam-footer__bottom,
	.woocommerce .woocommerce-breadcrumb,
	.woocommerce .woocommerce-products-header,
	.woocommerce .woocommerce-notices-wrapper,
	.woocommerce .products,
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering,
	.woocommerce div.product,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.sam-checkout-account-note {
		width: min(100% - 36px, var(--sam-container));
	}

	.sam-mobile-shell {
		gap: 6px;
		padding: 7px 16px;
	}

	.sam-mobile-brand__logo {
		width: clamp(118px, 36vw, 135px);
		height: auto;
	}

	.sam-mobile-brand__logo img {
		width: 100% !important;
		height: auto !important;
		max-width: 100%;
		max-height: none !important;
	}

	.sam-mobile-brand__name {
		font-size: 21px !important;
	}

	.sam-mobile-brand__tagline {
		font-size: 9.5px !important;
		letter-spacing: 0.12em;
	}

	.sam-mobile-strip {
		margin-inline: -16px;
		padding-inline: 16px;
	}

	.sam-mobile-secondary {
		margin-inline: -16px;
		padding-inline: 16px;
	}

	.sam-mobile-strip a {
		min-height: 36px;
		padding: 6px 11px;
		font-size: 13.5px;
	}

	.sam-mobile-secondary a {
		min-height: 31px;
		padding-inline: 9px;
		font-size: 12px;
	}

	.sam-section {
		padding: 46px 0;
	}

	.sam-page--account .sam-page__content {
		width: min(100% - 32px, var(--sam-container));
	}

	.sam-page-hero--account {
		padding-top: max(26px, env(safe-area-inset-top));
		padding-bottom: 20px;
	}

	.sam-page-hero--account h1 {
		font-size: clamp(2.2rem, 10.5vw, 2.9rem);
		line-height: 1;
	}

	.sam-account-card {
		padding: 21px 18px;
		border-radius: 20px;
	}

	.sam-account-card__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.sam-account-login-meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.sam-account-card .button {
		width: 100%;
		min-height: 48px;
	}

	.sam-account-gift {
		padding: 13px;
		border-radius: 16px;
	}

	.sam-account-gift {
		align-items: stretch;
		flex-direction: column;
	}

	.sam-account-gift__cta {
		width: 100%;
		min-height: 44px;
	}

	.sam-hero,
	.hero-section {
		padding-top: 78px !important;
		padding-bottom: max(26px, env(safe-area-inset-bottom)) !important;
	}

	.sam-hero__grid,
	.hero-section {
		gap: 18px;
	}

	.sam-hero h1,
	.hero-section h1 {
		font-size: clamp(33px, 10vw, 46px) !important;
		line-height: 0.92 !important;
	}

	.sam-hero__text,
	.hero-section .hero-desc,
	.sam-editorial-split__content p:not(.sam-eyebrow),
	.sam-page-hero p:not(.sam-eyebrow) {
		font-size: clamp(0.98rem, 3.7vw, 1.02rem);
		line-height: 1.52;
	}

	.sam-values__grid,
	.sam-selection-grid,
	.sam-page-card-grid,
	.sam-process-list,
	.woocommerce ul.products,
	.sam-footer__inner {
		grid-template-columns: 1fr;
	}

	.sam-footer__inner {
		gap: 26px;
		padding: 34px 0 28px;
	}

	.sam-footer__brand {
		max-width: none;
	}

	.sam-footer__logo {
		width: 116px;
		margin-bottom: 12px;
	}

	.sam-footer__tagline {
		max-width: none;
		margin-top: 10px;
	}

	.sam-footer__bottom {
		padding: 14px 0 18px;
	}

	.sam-product-card__body,
	.sam-feature-card,
	.sam-content-card,
	.sam-contact-panel,
	.woocommerce ul.products li.product,
	.woocommerce div.product .summary,
	.woocommerce div.product .woocommerce-tabs {
		padding: 20px;
	}

	.sam-contact-band__inner {
		padding: 24px 20px;
	}

	.sam-featured-carousel {
		grid-auto-columns: minmax(238px, 74vw);
		gap: 16px;
		padding-inline: 18px;
		scroll-padding-inline: 18px;
	}

	.sam-box-builder {
		overflow-x: hidden;
	}
	.sam-coming-soon-price {
		min-height: 34px;
		white-space: normal;
		text-align: center;
	}

	.samirarte-account-icon,
	.samirarte-cart-icon,
	.samirarte-cart-icon.sam-mobile-cart-link {
		width: 42px;
		height: 42px;
		min-width: 42px;
	}

	.woocommerce div.product form.cart {
		grid-template-columns: 1fr;
	}

	.woocommerce div.product form.cart .quantity .qty {
		width: 100%;
	}

	.woocommerce div.product div.images .flex-control-thumbs {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.samirarte-update-badge {
		bottom: 8px;
		left: 8px;
		max-width: 180px;
		padding: 6px 8px;
		font-size: 10px;
		opacity: 0.45;
	}

	.samirarte-update-badge strong {
		font-size: 10px;
	}

	.sam-footer__brand h2 {
		font-size: 1.6rem;
	}
}

@media (max-width: 380px) {
	.sam-mobile-shell {
		padding-inline: 14px;
	}

	.sam-mobile-brand__logo {
		width: min(128px, 40vw);
		height: auto;
	}

	.sam-mobile-brand__logo img {
		width: 100% !important;
		height: auto !important;
		max-width: 100%;
		max-height: none !important;
	}

	.sam-mobile-brand__name {
		font-size: 19px !important;
	}

	.sam-mobile-brand__tagline {
		font-size: 8.8px !important;
		letter-spacing: 0.12em;
	}

	.sam-mobile-strip {
		margin-inline: -14px;
		padding-inline: 14px;
	}

	.sam-mobile-secondary {
		margin-inline: -14px;
		padding-inline: 14px;
	}

	.sam-mobile-strip a {
		min-height: 36px;
		padding: 0.38rem 0.68rem;
		font-size: 0.82rem;
	}

	.sam-mobile-secondary a {
		min-height: 30px;
		padding-inline: 8px;
		font-size: 11.5px;
	}

	.sam-hero,
	.hero-section {
		padding-top: 74px !important;
	}

	.sam-hero h1,
	.hero-section h1 {
		font-size: clamp(32px, 9.8vw, 44px) !important;
		line-height: 0.92 !important;
	}

	.sam-hero__text,
	.hero-section .hero-desc {
		font-size: 0.98rem;
		line-height: 1.5;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

@media (min-width: 769px) {
	/* SAMIRARTE DESKTOP HERO PROPORTION PATCH */
	.sam-hero {
		min-height: calc(100vh - 86px);
		align-items: center;
		padding-top: clamp(82px, 8vw, 130px);
		padding-bottom: clamp(82px, 8vw, 130px);
		padding-left: clamp(96px, 8vw, 150px);
		padding-right: clamp(48px, 6vw, 110px);
		background:
			linear-gradient(
				90deg,
				rgba(245, 239, 230, 0.98) 0%,
				rgba(245, 239, 230, 0.88) 32%,
				rgba(245, 239, 230, 0.5) 50%,
				rgba(245, 239, 230, 0.1) 100%
			),
			url("../img/hero.webp") center right / cover no-repeat;
	}

	.sam-hero__grid {
		width: 100%;
		max-width: 1180px;
	}

	.sam-hero__content {
		max-width: 700px;
	}

	.sam-hero h1 {
		max-width: 660px;
		margin-bottom: 24px;
		font-size: clamp(60px, 5.4vw, 90px);
		line-height: 0.94;
		letter-spacing: -0.045em;
	}

	.sam-hero__text {
		max-width: 590px;
		margin-bottom: 30px;
		font-size: clamp(16px, 1vw, 18px);
		line-height: 1.65;
	}

	.sam-hero .sam-button {
		min-height: 46px;
		padding: 12px 26px;
		font-size: 14px;
	}

	.sam-header__inner {
		min-height: 96px;
	}

	.sam-brand__logo {
		width: clamp(150px, 12vw, 170px);
		height: auto;
	}

	.sam-brand__logo img {
		width: 100%;
		height: auto;
		max-width: 100%;
	}

	.sam-brand__name {
		font-size: 2.125rem;
	}

	.sam-site-menu a {
		font-size: 15px;
	}
}

/* Commercial navigation and content structure */
.sam-site-menu a {
	white-space: nowrap;
}

.sam-site-menu .sam-menu-item-shop > a,
.sam-mobile-menu__list .sam-menu-item-shop > a {
	min-height: 40px;
	padding: 8px 18px;
	border: 1px solid rgba(105, 24, 16, 0.2);
	border-radius: 999px;
	background: var(--sam-burgundy);
	box-shadow: 0 10px 20px rgba(105, 24, 16, 0.16);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.sam-site-menu .sam-menu-item-shop > a:hover,
.sam-site-menu .sam-menu-item-shop > a:focus-visible,
.sam-mobile-menu__list .sam-menu-item-shop > a:hover,
.sam-mobile-menu__list .sam-menu-item-shop > a:focus-visible {
	background: var(--sam-brown);
	color: #fff;
}

.sam-header-actions .sam-button--account {
	border-color: transparent;
	background: transparent;
	color: var(--sam-warm-brown);
	font-size: 0.76rem;
	font-weight: 700;
}

.sam-header-actions .sam-button--account:hover,
.sam-header-actions .sam-button--account:focus-visible {
	border-color: rgba(107, 47, 50, 0.28);
	background: rgba(107, 47, 50, 0.08);
	color: var(--sam-burgundy-dark);
}

.sam-header-actions .sam-button--outline {
	border-color: var(--sam-burgundy);
	background: var(--sam-burgundy);
	color: var(--sam-white);
	white-space: nowrap;
}

.sam-header-actions .sam-button--outline:hover,
.sam-header-actions .sam-button--outline:focus-visible {
	border-color: var(--sam-burgundy-dark);
	background: var(--sam-burgundy-dark);
	color: var(--sam-white);
}

.sam-shop-intro {
	width: min(100% - 40px, var(--sam-container));
	margin: 0 auto 30px;
	padding: clamp(28px, 5vw, 58px);
	border: 1px solid var(--sam-border);
	border-radius: 32px;
	background:
		linear-gradient(135deg, rgba(245, 239, 230, 0.94), rgba(251, 248, 242, 0.84)),
		var(--sam-cream);
	box-shadow: var(--sam-shadow);
}

.sam-shop-intro h1 {
	max-width: 760px;
	margin: 8px 0 18px;
	color: var(--sam-brown);
	font-size: clamp(2.5rem, 6vw, 5rem);
	line-height: 0.98;
}

.sam-shop-intro > p:not(.sam-eyebrow) {
	max-width: 820px;
	color: var(--sam-warm-brown);
	font-size: 1.05rem;
	line-height: 1.75;
}

.sam-box-size-list,
.sam-diary-topics {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 24px 0;
	padding: 0;
	list-style: none;
}

.sam-box-size-list li,
.sam-diary-topics li {
	padding: 9px 14px;
	border: 1px solid rgba(63, 45, 39, 0.34);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.48);
	color: var(--sam-brown);
	font-size: 0.9rem;
	font-weight: 700;
}

.sam-shop-intro__note {
	margin-bottom: 0;
	font-weight: 700;
}

.sam-shop-products-anchor {
	position: relative;
	top: -118px;
}

.sam-featured-carousel {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1180px) and (min-width: 769px) {
	.sam-header__inner {
		gap: 14px;
		width: min(100% - 28px, 1180px);
	}

	.sam-site-menu {
		gap: 5px;
	}

	.sam-site-menu a {
		padding-inline: 5px;
		font-size: 0.78rem;
	}

	.sam-header-actions {
		gap: 7px;
	}

	.sam-header-actions .sam-button {
		padding-inline: 10px;
		font-size: 0.72rem;
	}
}

@media (max-width: 1024px) and (min-width: 769px) {
	.sam-header__inner {
		flex-wrap: nowrap;
		padding: 12px 0;
	}

	.sam-brand {
		width: auto;
	}

	.sam-navigation {
		order: initial;
		width: auto;
	}

	.sam-site-menu {
		flex-wrap: nowrap;
	}

	.sam-header-actions .sam-button--account {
		display: none;
	}
}

@media (max-width: 768px) {
	.sam-mobile-shell {
		gap: 0;
	}

	.sam-mobile-menu-toggle {
		display: inline-flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 5px;
		width: 42px;
		height: 42px;
		padding: 0;
		border: 1px solid rgba(63, 45, 39, 0.3);
		border-radius: 50%;
		background: transparent;
		color: var(--sam-brown);
		cursor: pointer;
	}

	.sam-mobile-menu-toggle > span:not(.screen-reader-text) {
		width: 18px;
		height: 1.5px;
		background: currentColor;
		transition: transform 0.2s ease, opacity 0.2s ease;
	}

	.sam-mobile-menu-toggle.is-active > span:nth-of-type(2) {
		transform: translateY(6.5px) rotate(45deg);
	}

	.sam-mobile-menu-toggle.is-active > span:nth-of-type(3) {
		opacity: 0;
	}

	.sam-mobile-menu-toggle.is-active > span:nth-of-type(4) {
		transform: translateY(-6.5px) rotate(-45deg);
	}

	.sam-mobile-strip,
	.sam-mobile-secondary {
		display: none;
	}

	.sam-mobile-menu {
		margin: 9px -18px -9px;
		padding: 10px 18px 20px;
		border-top: 1px solid var(--sam-border);
		background: rgba(251, 248, 242, 0.99);
		box-shadow: 0 18px 28px rgba(63, 45, 39, 0.09);
	}

	.sam-mobile-menu[hidden] {
		display: none;
	}

	.sam-mobile-menu__list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2px 18px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.sam-mobile-menu__list a,
	.sam-mobile-menu__utilities > a:not(.sam-button) {
		display: flex;
		align-items: center;
		min-height: 44px;
		color: var(--sam-brown);
		font-size: 0.95rem;
		font-weight: 700;
		text-decoration: none;
		white-space: nowrap;
	}

	.sam-mobile-menu__utilities {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 4px 18px;
		margin-top: 8px;
		padding-top: 8px;
		border-top: 1px solid var(--sam-border);
	}

	.sam-mobile-menu__cta {
		grid-column: 1 / -1;
		justify-content: center;
		margin-top: 8px;
	}

	.sam-shop-intro {
		width: min(100% - 32px, var(--sam-container));
		padding: 28px 22px;
		border-radius: 24px;
	}

	.sam-featured-carousel {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(250px, 82vw);
		grid-template-columns: none;
		overflow-x: auto;
	}
}

@media (max-width: 390px) {
	.sam-mobile-menu__list,
	.sam-mobile-menu__utilities {
		grid-template-columns: 1fr;
	}
}

/* Cajas Gourmet shop experience */
.woocommerce-shop .woocommerce-breadcrumb {
	margin-top: 24px;
	margin-bottom: 10px;
}

.woocommerce-shop .woocommerce-products-header {
	margin-top: 0;
	margin-bottom: 18px;
	padding: 20px clamp(24px, 4vw, 42px);
	border-radius: 24px;
	background:
		linear-gradient(115deg, rgba(245, 239, 230, 0.92), rgba(251, 248, 242, 0.72)),
		var(--sam-cream);
	box-shadow: 0 12px 34px rgba(63, 45, 39, 0.07);
}

.woocommerce-shop .woocommerce-products-header::before {
	margin-bottom: 6px;
	content: "Boutique gourmet artesanal";
}

.woocommerce-shop .woocommerce-products-header::after {
	right: 24px;
	bottom: 18px;
	width: 46px;
	height: 46px;
}

.woocommerce-shop .woocommerce-products-header__title {
	font-size: clamp(2.15rem, 4vw, 3.65rem);
}

.sam-shop-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	margin-bottom: 20px;
	padding: clamp(30px, 4.5vw, 54px);
	background:
		radial-gradient(circle at 95% 8%, rgba(107, 47, 50, 0.12), transparent 18rem),
		linear-gradient(140deg, rgba(255, 250, 242, 0.98), rgba(242, 232, 216, 0.92));
	box-shadow: 0 22px 60px rgba(63, 45, 39, 0.11);
}

.sam-shop-intro__copy {
	min-width: 0;
	max-width: 780px;
}

.sam-shop-intro h1 {
	max-width: 650px;
	margin: 8px 0 18px;
	font-size: clamp(2.8rem, 5.4vw, 5.25rem);
	letter-spacing: -0.035em;
}

.sam-shop-intro .sam-shop-intro__lead {
	max-width: 690px;
	margin: 0;
	color: var(--sam-cacao);
	font-size: clamp(1.05rem, 1.25vw, 1.18rem);
	line-height: 1.72;
}

.sam-shop-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
}

.sam-shop-steps li {
	display: grid;
	grid-template-columns: 32px 1fr;
	gap: 9px;
	align-items: center;
	min-height: 54px;
	padding: 9px 12px;
	border-top: 1px solid rgba(107, 47, 50, 0.36);
	color: var(--sam-brown);
}

.sam-shop-steps span {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: var(--sam-burgundy);
	color: var(--sam-white);
	font-size: 0.78rem;
	font-weight: 800;
}

.sam-shop-steps strong {
	font-size: 0.88rem;
	line-height: 1.25;
}

.sam-box-size-selector {
	padding: clamp(22px, 3vw, 34px);
	border: 1px solid rgba(107, 47, 50, 0.27);
	border-radius: 28px;
	background: rgba(255, 251, 245, 0.78);
	box-shadow: 0 18px 46px rgba(63, 45, 39, 0.09);
}

.sam-box-size-selector__heading h2 {
	margin: 4px 0 20px;
	color: var(--sam-brown);
	font-size: clamp(1.75rem, 3vw, 2.45rem);
	line-height: 1.08;
}

.sam-box-size-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.sam-box-size-card {
	display: grid;
	min-height: 112px;
	padding: 16px 8px;
	place-content: center;
	border: 1px solid rgba(107, 47, 50, 0.32);
	border-radius: 20px;
	background: rgba(245, 239, 230, 0.62);
	color: var(--sam-brown);
	text-align: center;
	text-decoration: none;
	transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.sam-box-size-card strong {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
}

.sam-box-size-card span {
	margin-top: 5px;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.sam-box-size-card:hover,
.sam-box-size-card:focus-visible,
.sam-box-size-card.is-featured {
	border-color: var(--sam-burgundy);
	background: var(--sam-burgundy);
	box-shadow: 0 14px 28px rgba(107, 47, 50, 0.2);
	color: var(--sam-white);
	transform: translateY(-3px);
}

.sam-box-size-card:active {
	box-shadow: 0 8px 18px rgba(107, 47, 50, 0.18);
	transform: translateY(0) scale(0.98);
}

.sam-box-size-card:focus-visible {
	outline: 2px solid var(--sam-brown);
	outline-offset: 3px;
}

.sam-box-size-selector .sam-actions {
	margin-top: 20px;
}

.sam-box-size-selector .sam-button {
	flex: 1 1 180px;
	justify-content: center;
}

.sam-piece-catalog,
.sam-parchment-feature {
	width: min(100% - 40px, var(--sam-container));
	margin-inline: auto;
}

.sam-piece-catalog {
	padding: 24px 0 12px;
	scroll-margin-top: 120px;
}

.sam-piece-catalog__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 16px;
}

.sam-piece-catalog__heading h2 {
	margin: 4px 0 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 4vw, 3.35rem);
	line-height: 1;
}

.sam-piece-catalog__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.sam-piece-category {
	display: grid;
	grid-template-columns: 118px 1fr;
	gap: 18px;
	align-items: center;
	min-height: 150px;
	padding: 12px;
	border: 1px solid var(--sam-border);
	border-radius: 24px;
	background: rgba(255, 251, 245, 0.78);
	box-shadow: 0 14px 34px rgba(63, 45, 39, 0.07);
}

.sam-piece-category img {
	width: 118px;
	height: 126px;
	border-radius: 18px;
	object-fit: cover;
}

.sam-piece-category h3 {
	margin: 0 0 8px;
	color: var(--sam-brown);
	font-size: 1.25rem;
	line-height: 1.15;
}

.sam-piece-category p {
	margin: 0;
	color: var(--sam-warm-brown);
	font-size: 0.96rem;
	line-height: 1.55;
}

.sam-parchment-feature {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 22px;
	align-items: center;
	margin-top: 16px;
	margin-bottom: 10px;
	padding: 22px clamp(24px, 4vw, 42px);
	border: 1px solid rgba(107, 47, 50, 0.34);
	border-radius: 26px;
	background:
		linear-gradient(110deg, rgba(107, 47, 50, 0.1), transparent 44%),
		rgba(255, 247, 232, 0.86);
}

.sam-parchment-feature__mark {
	position: relative;
	width: 62px;
	height: 72px;
	border: 2px solid var(--sam-burgundy);
	border-radius: 22px 8px 22px 8px;
}

.sam-parchment-feature__mark::before,
.sam-parchment-feature__mark::after {
	position: absolute;
	left: 15px;
	width: 30px;
	border-top: 2px solid var(--sam-burgundy);
	content: "";
}

.sam-parchment-feature__mark::before {
	top: 25px;
}

.sam-parchment-feature__mark::after {
	top: 38px;
}

.sam-parchment-feature h2 {
	margin: 3px 0 6px;
	color: var(--sam-brown);
	font-size: clamp(1.65rem, 3vw, 2.5rem);
}

.sam-parchment-feature p:not(.sam-eyebrow) {
	max-width: 780px;
	margin: 0;
	color: var(--sam-cacao);
	font-size: 1.02rem;
	line-height: 1.6;
}

.woocommerce-shop .woocommerce-result-count,
.woocommerce-shop .woocommerce-ordering {
	margin-bottom: 18px;
}

.woocommerce-shop ul.products {
	padding-bottom: 64px;
}

@media (max-width: 1024px) {
	.sam-shop-intro {
		grid-template-columns: 1fr;
		gap: 26px;
	}

	.sam-piece-category {
		grid-template-columns: 92px 1fr;
	}

	.sam-piece-category img {
		width: 92px;
		height: 108px;
	}
}

@media (max-width: 768px) {
	.woocommerce-shop .woocommerce-breadcrumb {
		margin-top: 14px;
	}

	.woocommerce-shop .woocommerce-products-header {
		margin-top: 0;
		margin-bottom: 14px;
		padding: 18px 20px;
	}

	.woocommerce-shop .woocommerce-products-header__title {
		font-size: clamp(2rem, 11vw, 3rem);
	}

	.sam-shop-intro {
		gap: 24px;
		margin-bottom: 8px;
		padding: 26px 20px;
	}

	.sam-shop-intro h1 {
		font-size: clamp(2.55rem, 13vw, 4rem);
	}

	.sam-shop-intro .sam-shop-intro__lead {
		font-size: 1rem;
		line-height: 1.65;
	}

	.sam-shop-steps {
		grid-template-columns: 1fr;
		gap: 4px;
		margin-top: 20px;
	}

	.sam-shop-steps li {
		min-height: 46px;
		padding-block: 6px;
	}

	.sam-box-size-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sam-box-size-card {
		min-height: 104px;
	}

	.sam-piece-catalog,
	.sam-parchment-feature {
		width: min(100% - 32px, var(--sam-container));
	}

	.sam-piece-catalog {
		padding-top: 22px;
	}

	.sam-piece-catalog__grid {
		grid-template-columns: 1fr;
	}

	.sam-piece-category {
		grid-template-columns: 106px 1fr;
	}

	.sam-piece-category img {
		width: 106px;
		height: 112px;
	}

	.sam-parchment-feature {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 24px;
	}

	.sam-parchment-feature__mark {
		width: 50px;
		height: 58px;
	}

	.sam-parchment-feature__mark::before,
	.sam-parchment-feature__mark::after {
		left: 11px;
		width: 25px;
	}

	.sam-parchment-feature__mark::before {
		top: 20px;
	}

	.sam-parchment-feature__mark::after {
		top: 31px;
	}
}

@media (max-width: 480px) {
	.sam-box-size-selector {
		padding: 20px 16px;
	}

	.sam-box-size-selector .sam-actions {
		display: grid;
	}

	.sam-piece-category {
		grid-template-columns: 84px 1fr;
		gap: 14px;
	}

	.sam-piece-category img {
		width: 84px;
		height: 96px;
	}
}

/* Cajas Gourmet layout polish */
.woocommerce-shop {
	--sam-shop-container: 1240px;
}

.woocommerce-shop .woocommerce-breadcrumb,
.woocommerce-shop .woocommerce-products-header,
.woocommerce-shop .woocommerce-notices-wrapper,
.woocommerce-shop .products,
.woocommerce-shop .sam-shop-intro,
.woocommerce-shop .sam-piece-catalog,
.woocommerce-shop .sam-parchment-feature,
.woocommerce-shop .sam-shop-products-heading {
	width: min(100% - 48px, var(--sam-shop-container));
}

.woocommerce-shop .woocommerce-breadcrumb {
	margin-top: 22px;
}

.woocommerce-shop .woocommerce-products-header {
	display: none;
}

.woocommerce-shop .woocommerce-products-header::before {
	content: "Colección Samirarte";
}

.woocommerce-shop .woocommerce-products-header__title {
	max-width: 820px;
	font-size: clamp(2.5rem, 4.4vw, 4.15rem);
	letter-spacing: 0;
}

.woocommerce-shop .sam-shop-intro {
	grid-template-columns: minmax(0, 1fr);
	gap: 24px;
	align-items: stretch;
	margin-bottom: 26px;
	padding: clamp(34px, 4.4vw, 64px);
	border-radius: 30px;
}

.woocommerce-shop .sam-shop-intro__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.woocommerce-shop .sam-shop-intro h1 {
	max-width: 670px;
	font-size: clamp(2.7rem, 4.8vw, 4.8rem);
	letter-spacing: 0;
}

.woocommerce-shop .sam-shop-intro .sam-shop-intro__lead {
	max-width: 720px;
	font-size: clamp(1.08rem, 1.2vw, 1.2rem);
	line-height: 1.72;
}

.woocommerce-shop .sam-shop-intro .sam-actions {
	margin-top: 28px;
}

.woocommerce-shop .sam-shop-steps {
	gap: 14px;
	max-width: 760px;
}

.woocommerce-shop .sam-shop-steps li {
	padding: 12px 14px;
	background: rgba(255, 251, 245, 0.42);
}

.woocommerce-shop .sam-box-size-selector {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(26px, 3.4vw, 42px);
}

.woocommerce-shop .sam-box-size-grid {
	gap: 14px;
}

.woocommerce-shop .sam-box-size-card {
	min-height: 124px;
	border-radius: 22px;
	background:
		linear-gradient(180deg, rgba(255, 251, 245, 0.92), rgba(245, 239, 230, 0.72));
}

.woocommerce-shop .sam-box-size-card:hover,
.woocommerce-shop .sam-box-size-card:focus-visible {
	border-color: var(--sam-burgundy);
	box-shadow: 0 16px 34px rgba(107, 47, 50, 0.18);
}

.woocommerce-shop .sam-box-size-card.is-featured {
	background:
		linear-gradient(145deg, var(--sam-burgundy), var(--sam-burgundy-dark));
}

.woocommerce-shop .sam-box-size-selector .sam-actions {
	gap: 12px;
	margin-top: 24px;
}

.woocommerce-shop .sam-piece-catalog {
	padding: 30px 0 16px;
}

.woocommerce-shop .sam-piece-catalog__heading {
	display: block;
	max-width: 760px;
	margin-bottom: 22px;
}

.woocommerce-shop .sam-piece-catalog__heading h2 {
	font-size: clamp(2.15rem, 3.5vw, 3.45rem);
	letter-spacing: 0;
}

.woocommerce-shop .sam-piece-catalog__heading p:not(.sam-eyebrow) {
	margin: 10px 0 0;
	color: var(--sam-warm-brown);
	font-size: 1.08rem;
	line-height: 1.62;
}

.woocommerce-shop .sam-piece-catalog__grid {
	gap: 24px;
}

.woocommerce-shop .sam-piece-category {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 100%;
	padding: 18px;
	border-radius: 26px;
	background:
		linear-gradient(180deg, rgba(255, 251, 245, 0.96), rgba(245, 239, 230, 0.7));
	box-shadow: 0 18px 44px rgba(63, 45, 39, 0.09);
}

.woocommerce-shop .sam-piece-category img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	border: 1px solid rgba(63, 45, 39, 0.16);
	border-radius: 20px;
	object-fit: cover;
}

.woocommerce-shop .sam-piece-category h3 {
	margin-top: 18px;
	font-size: 1.42rem;
}

.woocommerce-shop .sam-piece-category p {
	font-size: 1rem;
	line-height: 1.62;
}

.woocommerce-shop .sam-parchment-feature {
	margin-top: 24px;
	margin-bottom: 18px;
	padding: clamp(24px, 3vw, 36px);
	border-radius: 26px;
	background:
		radial-gradient(circle at 8% 14%, rgba(181, 132, 80, 0.18), transparent 12rem),
		linear-gradient(110deg, rgba(255, 247, 232, 0.94), rgba(251, 248, 242, 0.82));
}

.woocommerce-shop .sam-shop-products-heading {
	margin: 18px auto 18px;
}

.woocommerce-shop .sam-shop-products-heading h2 {
	margin: 4px 0 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 3.4vw, 3.15rem);
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: 0;
}

.woocommerce-shop ul.products {
	gap: 26px;
	padding-top: 0;
	padding-bottom: 72px;
}

.woocommerce-shop ul.products li.product,
.woocommerce-shop.woocommerce-page ul.products li.product {
	padding: 20px;
	border-radius: 26px;
	background:
		linear-gradient(180deg, rgba(255, 251, 245, 0.98), rgba(245, 239, 230, 0.78));
}

.woocommerce-shop ul.products li.product a img {
	border-radius: 20px;
}

@media (max-width: 1024px) {
	.woocommerce-shop .sam-shop-intro {
		grid-template-columns: 1fr;
	}

	.woocommerce-shop .sam-box-size-selector {
		display: block;
	}

	.woocommerce-shop .sam-piece-catalog__grid {
		gap: 18px;
	}

	.sam-experience-types__grid,
	.sam-experience-workshops__grid,
	.sam-experience-process__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sam-experience-gallery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.woocommerce-shop .woocommerce-breadcrumb,
	.woocommerce-shop .woocommerce-products-header,
	.woocommerce-shop .woocommerce-notices-wrapper,
	.woocommerce-shop .products,
	.woocommerce-shop .sam-shop-intro,
	.woocommerce-shop .sam-piece-catalog,
	.woocommerce-shop .sam-parchment-feature,
	.woocommerce-shop .sam-shop-products-heading {
		width: min(100% - 32px, var(--sam-shop-container));
	}

	.woocommerce-shop .woocommerce-products-header {
		padding: 24px 20px;
	}

	.woocommerce-shop .sam-shop-intro {
		padding: 26px 20px;
	}

	.woocommerce-shop .sam-shop-steps,
	.woocommerce-shop .sam-piece-catalog__grid,
	.woocommerce-shop ul.products {
		grid-template-columns: 1fr;
	}

	.woocommerce-shop .sam-box-size-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-shop .sam-box-size-card {
		min-height: 108px;
	}
.sam-experience-intro,
	.sam-experience-types__grid,
	.sam-experience-workshops__grid,
	.sam-experience-gallery__grid,
	.sam-experience-process__list {
		grid-template-columns: 1fr;
	}

	.sam-experience-intro,
	.sam-experience-workshops,
	.sam-experience-process {
		padding: 24px 20px;
		border-radius: 24px;
	}

	.sam-experience-card__media,
	.sam-experience-example__media {
		min-height: 180px;
	}

	.sam-story-card {
		padding: 26px 20px;
		border-radius: 24px;
	}

	.sam-story-card::after {
		display: none;
	}

	.sam-story-card__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.sam-story-card__details summary {
		width: 100%;
		justify-content: center;
	}

	.sam-story-card__text p {
		font-size: 1.02rem;
		line-height: 1.78;
	}
}

@media (max-width: 480px) {
	.woocommerce-shop .woocommerce-breadcrumb,
	.woocommerce-shop .woocommerce-products-header,
	.woocommerce-shop .woocommerce-notices-wrapper,
	.woocommerce-shop .products,
	.woocommerce-shop .sam-shop-intro,
	.woocommerce-shop .sam-piece-catalog,
	.woocommerce-shop .sam-parchment-feature,
	.woocommerce-shop .sam-shop-products-heading {
		width: min(100% - 28px, var(--sam-shop-container));
	}

	.woocommerce-shop .sam-box-size-selector .sam-actions {
		grid-template-columns: 1fr;
	}
}

/* Caja gourmet personalizada */
.sam-personalized-box {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.55fr);
	gap: clamp(24px, 4vw, 42px);
	align-items: center;
	width: min(100% - 48px, var(--sam-shop-container, var(--sam-container)));
	margin: 18px auto 28px;
	padding: clamp(26px, 3.8vw, 44px);
	border: 1px solid rgba(107, 47, 50, 0.22);
	border-radius: 28px;
	background:
		radial-gradient(circle at 92% 10%, rgba(181, 132, 80, 0.16), transparent 12rem),
		linear-gradient(120deg, rgba(255, 251, 245, 0.96), rgba(245, 239, 230, 0.78));
	box-shadow: 0 16px 40px rgba(63, 45, 39, 0.08);
}

.sam-personalized-box__media {
	display: block;
}

.sam-personalized-box__media img {
	width: 100%;
	height: auto;
	border-radius: 26px;
	object-fit: cover;
	box-shadow: 0 16px 42px rgba(63, 45, 39, 0.08);
}

.sam-personalized-box h2 {
	margin: 0;
	color: var(--sam-brown);
	font-size: clamp(2rem, 3.5vw, 3.25rem);
	font-weight: 500;
	line-height: 1.05;
}

.sam-personalized-box p {
	margin: 0;
	color: var(--sam-cacao);
	font-size: 1.02rem;
	line-height: 1.72;
}

.sam-personalized-box__copy {
	display: grid;
	gap: 18px;
}

.sam-personalized-box__lead {
	font-size: clamp(1.05rem, 1.2vw, 1.18rem);
	max-width: 680px;
}

.sam-personalized-box .sam-button {
	width: fit-content;
}

@media (max-width: 768px) {
	.sam-personalized-box {
		grid-template-columns: 1fr;
		width: min(100% - 32px, var(--sam-shop-container, var(--sam-container)));
		padding: 24px 20px;
	}
}

@media (max-width: 480px) {
	.sam-personalized-box .sam-button {
		width: 100%;
		justify-content: center;
		text-align: center;
	}
}


/* ============================================================
   Samirarte Digital — Proyectos
   ============================================================ */

.sam-digital-projects {
	padding: clamp(2.5rem, 6vw, 5rem) 0;
}

.sam-digital-projects__heading {
	max-width: 640px;
	margin-bottom: clamp(2rem, 4vw, 3.5rem);
}

.sam-digital-projects__intro {
	margin-top: 0.6rem;
	color: var(--sam-brown);
	font-size: 1.05rem;
}

.sam-digital-projects__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
	gap: 1.75rem;
}

/* Card */
.sam-digital-card {
	display: flex;
	flex-direction: column;
	border-radius: 14px;
	overflow: hidden;
	background: var(--sam-cream-light, #fffbf5);
	border: 1px solid rgba(107, 47, 50, 0.12);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.sam-digital-card:hover {
	box-shadow: 0 6px 28px rgba(0, 0, 0, 0.13);
	transform: translateY(-3px);
}

/* Thumbnail */
.sam-digital-card__thumb {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #1a1a2e;
}

.sam-digital-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
	display: block;
	transition: transform 0.3s ease;
}

.sam-digital-card:hover .sam-digital-card__thumb img {
	transform: scale(1.03);
}

.sam-digital-card__thumb--contain img {
	object-fit: contain;
	object-position: center;
}

.sam-digital-card__thumb-placeholder {
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #1a1a2e 0%, #2d1b4e 100%);
}

.sam-digital-card__overlay {
	position: absolute;
	top: 0.65rem;
	right: 0.65rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	backdrop-filter: blur(4px);
	opacity: 0;
	transition: opacity 0.2s ease;
}

.sam-digital-card__thumb:hover .sam-digital-card__overlay,
.sam-digital-card__thumb:focus-visible .sam-digital-card__overlay {
	opacity: 1;
}

/* Body */
.sam-digital-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	padding: 1.2rem 1.35rem 1.35rem;
	flex: 1;
}

.sam-digital-card__domain {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--sam-burgundy, #6b2f32);
	margin: 0;
}

.sam-digital-card__body h3 {
	font-size: 1.08rem;
	font-weight: 800;
	margin: 0;
	color: var(--sam-brown-dark, #2c1a0e);
	line-height: 1.3;
}

.sam-digital-card__description {
	font-size: 0.88rem;
	color: var(--sam-brown, #5c3d1e);
	margin: 0;
	line-height: 1.55;
	flex: 1;
}

/* Tags */
.sam-digital-card__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	margin: 0.2rem 0 0;
	padding: 0;
}

.sam-digital-card__tags li {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: rgba(107, 47, 50, 0.08);
	color: var(--sam-burgundy, #6b2f32);
}

/* Link */
.sam-digital-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.5rem;
	font-size: 0.8rem;
	font-weight: 700;
	color: var(--sam-burgundy, #6b2f32);
	text-decoration: none;
	transition: opacity 0.15s;
}

.sam-digital-card__link:hover,
.sam-digital-card__link:focus-visible {
	opacity: 0.75;
	text-decoration: underline;
}
