body {
	background:
		radial-gradient(1200px 600px at 100% -10%, var(--f-color-accent-soft), transparent 60%),
		var(--f-color-bg);
	background-attachment: fixed;
}

::selection {
	background: var(--f-color-accent);
	color: #fff;
}

a {
	transition: color var(--f-dur) var(--f-ease);
}

.section__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--f-color-accent);
}

.section__eyebrow::before {
	content: "";
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--f-color-accent), var(--f-color-accent-light));
}

.btn,
.button,
button.button,
input[type="submit"],
.single-product .single_add_to_cart_button,
.quick-view .single_add_to_cart_button {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	transition:
		background 0.35s var(--f-ease),
		color 0.25s var(--f-ease),
		border-color 0.35s var(--f-ease),
		box-shadow 0.35s var(--f-ease),
		transform 0.25s var(--f-ease);
	will-change: transform;
}

.btn:where(:not(.btn--outline, .btn--light, .btn--accent)),
.button:where(:not(.btn--outline, .btn--light, .btn--accent, .alt)),
input[type="submit"] {
	background: linear-gradient(135deg, #3b2d25 0%, var(--f-color-primary) 100%);
	border-color: var(--f-color-primary);
	box-shadow: 0 6px 16px -8px rgba(42, 31, 26, 0.55);
}

.btn::before,
.button::before,
.single-product .single_add_to_cart_button::before {
	content: "";
	position: absolute;
	top: 0;
	left: -120%;
	z-index: -1;
	width: 60%;
	height: 100%;
	background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.28) 50%, transparent 100%);
	transform: skewX(-20deg);
	transition: left 0.7s var(--f-ease);
	pointer-events: none;
}

.btn:hover::before,
.button:hover::before,
.single-product .single_add_to_cart_button:hover::before {
	left: 140%;
}

.btn:hover,
.button:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #respond input#submit:hover {
	background: linear-gradient(135deg, var(--f-color-accent) 0%, var(--f-color-accent-dark) 100%);
	border-color: var(--f-color-accent-dark);
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 12px 26px -10px var(--f-color-accent-glow);
}

.btn:active,
.button:active,
input[type="submit"]:active {
	transform: translateY(0);
	box-shadow: 0 4px 10px -6px var(--f-color-accent-glow);
}

.btn:focus-visible,
.button:focus-visible,
input[type="submit"]:focus-visible {
	outline: none;
	box-shadow: var(--f-focus);
}

.btn--accent {
	background: linear-gradient(135deg, var(--f-color-accent-light) 0%, var(--f-color-accent) 55%, var(--f-color-accent-dark) 100%);
	border-color: var(--f-color-accent);
	color: #fff;
	box-shadow: 0 8px 20px -10px var(--f-color-accent-glow);
}

.btn--accent:hover {
	background: linear-gradient(135deg, #3b2d25 0%, var(--f-color-primary) 100%);
	border-color: var(--f-color-primary);
	box-shadow: 0 12px 26px -10px rgba(42, 31, 26, 0.5);
}

.btn--outline {
	background: transparent;
	border: 1.5px solid var(--f-color-primary);
	color: var(--f-color-primary);
	box-shadow: none;
}

.btn--outline:hover {
	background: var(--f-color-primary);
	border-color: var(--f-color-primary);
	color: #fff;
	box-shadow: 0 12px 26px -12px rgba(42, 31, 26, 0.55);
}

.btn--light {
	background: #fff;
	border-color: #fff;
	color: var(--f-color-primary);
	box-shadow: 0 8px 22px -12px rgba(0, 0, 0, 0.45);
}

.btn--light:hover {
	background: linear-gradient(135deg, var(--f-color-accent) 0%, var(--f-color-accent-dark) 100%);
	border-color: var(--f-color-accent);
	color: #fff;
}

.btn--light::before {
	background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.35) 50%, transparent 100%);
}

.btn .furniture-icon,
.offer-card__btn .furniture-icon {
	transition: transform 0.3s var(--f-ease);
}

.btn:hover .furniture-icon,
.offer-card:hover .offer-card__btn .furniture-icon {
	transform: translateX(4px);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background: linear-gradient(135deg, var(--f-color-accent-light) 0%, var(--f-color-accent) 55%, var(--f-color-accent-dark) 100%);
	box-shadow: 0 8px 20px -10px var(--f-color-accent-glow);
}

.single-product form.cart .furniture-buy-now,
.furniture-buy-now {
	background: linear-gradient(135deg, var(--f-color-accent-light) 0%, var(--f-color-accent) 55%, var(--f-color-accent-dark) 100%);
	border-color: var(--f-color-accent);
	color: #fff;
}

.single-product form.cart .furniture-buy-now:hover,
.furniture-buy-now:hover {
	background: linear-gradient(135deg, #3b2d25 0%, var(--f-color-primary) 100%);
	border-color: var(--f-color-primary);
}

.furniture-card__media {
	transition: box-shadow 0.4s var(--f-ease), transform 0.4s var(--f-ease);
}

.furniture-card:hover .furniture-card__media {
	box-shadow: 0 18px 36px -18px rgba(42, 31, 26, 0.45);
	transform: translateY(-3px);
}

.furniture-card__title a:hover {
	color: var(--f-color-accent-dark);
}

.furniture-card__qv:hover {
	background: var(--f-color-accent);
	color: #fff;
	box-shadow: 0 8px 18px -8px var(--f-color-accent-glow);
}

.furniture-card__badges .onsale,
.furniture-badge {
	background: linear-gradient(135deg, var(--f-color-accent-light), var(--f-color-accent-dark)) !important;
	box-shadow: 0 4px 10px -4px var(--f-color-accent-glow);
}

.furniture-badge--muted {
	background: var(--f-color-primary) !important;
}

.home-offers__grid {
	gap: var(--f-space-4);
}

@media (min-width: 768px) {
	.home-offers__grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--f-space-5);
	}

	.home-offers__grid--3 .offer-card {
		aspect-ratio: 4 / 5;
	}

	.home-offers__grid--3 .offer-card__body {
		padding: var(--f-space-5);
	}

	.home-offers__grid--3 .offer-card__title {
		font-size: var(--f-fs-lg);
	}
}

@media (min-width: 1200px) {
	.home-offers__grid--3 .offer-card {
		aspect-ratio: 1 / 1;
	}
}

.offer-card {
	text-decoration: none;
	box-shadow: 0 10px 30px -18px rgba(42, 31, 26, 0.5);
	transition: transform 0.4s var(--f-ease), box-shadow 0.4s var(--f-ease);
}

.offer-card:hover {
	color: #fff;
	transform: translateY(-4px);
	box-shadow: 0 24px 48px -20px rgba(42, 31, 26, 0.55);
}

.offer-card::before {
	background: linear-gradient(to top, rgba(26, 18, 14, 0.82) 0%, rgba(26, 18, 14, 0.25) 60%, rgba(26, 18, 14, 0) 100%);
}

.offer-card--plain {
	background:
		radial-gradient(420px 260px at 100% 0%, var(--f-color-accent-soft), transparent 70%),
		linear-gradient(140deg, #fff 0%, var(--f-color-muted) 100%);
	border: 1px solid var(--f-color-border);
}

.offer-card--plain:hover {
	color: var(--f-color-text);
}

.offer-card__eyebrow {
	justify-self: start;
	padding: 4px 12px;
	border-radius: var(--f-radius-pill);
	background: linear-gradient(135deg, var(--f-color-accent-light), var(--f-color-accent-dark));
	color: #fff;
	opacity: 1;
	letter-spacing: 0.12em;
}

.offer-card__btn {
	justify-self: start;
	padding: 10px 18px;
	border-radius: var(--f-radius-pill);
	background: #fff;
	color: var(--f-color-primary);
	box-shadow: 0 6px 16px -8px rgba(0, 0, 0, 0.4);
	transition: background 0.3s var(--f-ease), color 0.3s var(--f-ease), box-shadow 0.3s var(--f-ease);
}

.offer-card:hover .offer-card__btn {
	background: var(--f-color-accent);
	color: #fff;
	box-shadow: 0 10px 22px -10px var(--f-color-accent-glow);
}

.offer-card--plain .offer-card__btn {
	background: var(--f-color-primary);
	color: #fff;
}

.home-promo__card {
	position: relative;
	background:
		radial-gradient(520px 320px at 100% 100%, var(--f-color-accent-soft), transparent 70%),
		linear-gradient(135deg, #fffaf4 0%, var(--f-color-muted) 100%);
	border: 1px solid var(--f-color-border);
	box-shadow: 0 20px 50px -30px rgba(42, 31, 26, 0.45);
}

.home-promo__img {
	transition: transform 0.9s var(--f-ease);
}

.home-promo__card:hover .home-promo__img {
	transform: scale(1.04);
}

.home-promo__media {
	overflow: hidden;
}

.home-wide::before {
	background: linear-gradient(90deg, rgba(26, 18, 14, 0.78) 0%, rgba(26, 18, 14, 0.38) 55%, rgba(26, 18, 14, 0.08) 100%);
}

.home-wide--plain {
	background:
		radial-gradient(700px 400px at 90% 10%, rgba(255, 255, 255, 0.14), transparent 60%),
		linear-gradient(120deg, var(--f-color-accent-dark) 0%, var(--f-color-accent) 55%, var(--f-color-accent-light) 100%);
}

.home-wide__eyebrow {
	justify-self: start;
	padding: 5px 14px;
	border-radius: var(--f-radius-pill);
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.28);
}

.home-wide--center .home-wide__eyebrow {
	justify-self: center;
}

.home-usp {
	background: linear-gradient(180deg, #fff 0%, var(--f-color-bg) 100%);
}

.home-usp__icon,
.home-why__icon {
	background: linear-gradient(135deg, var(--f-color-accent-soft), var(--f-color-muted));
	color: var(--f-color-accent-dark);
	transition: transform 0.35s var(--f-ease), background 0.35s var(--f-ease), color 0.35s var(--f-ease);
}

.home-usp__item:hover .home-usp__icon,
.home-why__item:hover .home-why__icon {
	background: linear-gradient(135deg, var(--f-color-accent-light), var(--f-color-accent-dark));
	color: #fff;
	transform: translateY(-3px) rotate(-4deg);
}

.home-why {
	background:
		radial-gradient(800px 400px at 0% 0%, var(--f-color-accent-soft), transparent 60%),
		var(--f-color-surface);
}

.home-why__item {
	border: 1px solid var(--f-color-border);
	transition: transform 0.35s var(--f-ease), box-shadow 0.35s var(--f-ease), border-color 0.35s var(--f-ease);
}

.home-why__item:hover {
	transform: translateY(-4px);
	border-color: transparent;
	box-shadow: 0 18px 36px -20px rgba(42, 31, 26, 0.4);
}

.home-testimonials {
	background:
		radial-gradient(700px 360px at 100% 100%, var(--f-color-accent-soft), transparent 60%),
		var(--f-color-surface);
}

.price-tile--1 {
	--tile-bg: linear-gradient(140deg, #f8ede0 0%, #efdcc6 100%);
}

.price-tile--2 {
	--tile-bg: linear-gradient(140deg, #e8eee3 0%, #d5dfcc 100%);
}

.price-tile--3 {
	--tile-bg: linear-gradient(140deg, var(--f-color-accent-light) 0%, var(--f-color-accent-dark) 100%);
}

.price-tile--4 {
	--tile-bg: linear-gradient(140deg, #3b2d25 0%, var(--f-color-primary) 100%);
}

.home-cta--accent {
	background:
		radial-gradient(600px 300px at 90% 0%, rgba(255, 255, 255, 0.16), transparent 60%),
		linear-gradient(120deg, var(--f-color-accent-dark) 0%, var(--f-color-accent) 60%, var(--f-color-accent-light) 100%);
}

.home-cta--primary {
	background:
		radial-gradient(600px 300px at 90% 0%, var(--f-color-accent-glow), transparent 60%),
		linear-gradient(120deg, #1d1511 0%, var(--f-color-primary) 100%);
}

.home-cta--muted {
	background:
		radial-gradient(600px 300px at 90% 0%, var(--f-color-accent-soft), transparent 60%),
		var(--f-color-muted);
}

.home-hero__slide--plain {
	background:
		radial-gradient(800px 500px at 85% 20%, var(--f-color-accent-glow), transparent 60%),
		linear-gradient(135deg, #3b2d25 0%, var(--f-color-primary) 60%);
}

.piece-card__media,
.scat-card__media {
	transition: box-shadow 0.4s var(--f-ease), transform 0.4s var(--f-ease);
}

.piece-card:hover .piece-card__media,
.scat-card:hover .scat-card__media {
	box-shadow: 0 0 0 3px var(--f-color-accent-soft), 0 14px 28px -16px rgba(42, 31, 26, 0.45);
}

@media (prefers-reduced-motion: reduce) {
	.btn,
	.button,
	input[type="submit"],
	.offer-card,
	.furniture-card__media,
	.home-why__item {
		transition: none;
	}

	.btn:hover,
	.button:hover,
	.offer-card:hover,
	.furniture-card:hover .furniture-card__media,
	.home-why__item:hover {
		transform: none;
	}

	.btn::before,
	.button::before {
		display: none;
	}
}

.site-footer {
	background:
		radial-gradient(900px 420px at 100% 0%, var(--f-color-accent-glow), transparent 60%),
		linear-gradient(180deg, #33261f 0%, var(--f-color-primary) 100%);
}

.footer-columns {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-auto-flow: row;
	gap: 0;
	margin-bottom: var(--f-space-7);
}

.footer-col--content {
	display: grid;
	gap: var(--f-space-4);
	align-content: start;
	padding-block: var(--f-space-5);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.footer-col__title,
.footer-col__toggle {
	position: relative;
	margin: 0;
	color: #fff;
	font-family: var(--f-font-heading);
	font-size: var(--f-fs-md);
	font-weight: 600;
}

.footer-col__title::after {
	content: "";
	display: block;
	width: 28px;
	height: 2px;
	margin-top: 10px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--f-color-accent), var(--f-color-accent-light));
}

.footer-col__list--info {
	gap: var(--f-space-3);
	line-height: 1.6;
}

.footer-col__list--info li {
	max-width: 36ch;
}

.footer-col__list a {
	display: inline-block;
	transition: color var(--f-dur) var(--f-ease), transform var(--f-dur) var(--f-ease);
}

.footer-col--menu .footer-col__list a:hover {
	transform: translateX(4px);
}

.site-footer .furniture-social {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer .furniture-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	opacity: 1;
	transition: background var(--f-dur) var(--f-ease), transform var(--f-dur) var(--f-ease);
}

.site-footer .furniture-social a:hover {
	background: var(--f-color-accent);
	color: #fff;
	transform: translateY(-3px);
}

@media (min-width: 768px) {
	.footer-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--f-space-7) var(--f-space-6);
	}

	.footer-col--content {
		padding-block: 0;
		border-bottom: 0;
	}

	.footer-col--menu .footer-col__toggle::after {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		bottom: -10px;
		width: 28px;
		height: 2px;
		border-radius: 2px;
		background: linear-gradient(90deg, var(--f-color-accent), var(--f-color-accent-light));
	}

	.footer-col--menu .footer-col__toggle {
		margin-bottom: var(--f-space-5);
	}
}

@media (min-width: 1024px) {
	.footer-columns {
		grid-auto-flow: row;
		grid-auto-columns: auto;
	}

	.footer-columns--4 {
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.3fr);
	}

	.footer-columns--3 {
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr);
	}

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

	.footer-columns--1 {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.footer-columns > .footer-col:last-child {
		border-bottom: 0;
	}

	.footer-columns {
		margin-bottom: var(--f-space-5);
	}
}

.home-hero__slide.has-overlay--off::after,
.offer-card.has-overlay--off::before,
.home-wide.has-overlay--off::before {
	display: none;
}

.home-hero__slide.has-overlay--light::after,
.offer-card.has-overlay--light::before,
.home-wide.has-overlay--light::before {
	opacity: 0.5;
}

.home-hero__slide.has-overlay--strong::after,
.offer-card.has-overlay--strong::before,
.home-wide.has-overlay--strong::before {
	background-color: rgba(20, 16, 14, 0.38);
}

.home-hero__slide.has-overlay--off .home-hero__copy,
.offer-card.has-overlay--off .offer-card__body,
.home-wide.has-overlay--off .home-wide__copy {
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.45);
}

.banner-link {
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
}

.banner-link:focus-visible {
	outline: 3px solid var(--f-color-accent);
	outline-offset: -3px;
}

.has-banner-link .home-hero__content,
.has-banner-link .home-wide__content,
.has-banner-link .home-promo__content,
.has-banner-link .home-promo__media {
	position: relative;
	z-index: 2;
	pointer-events: none;
}

.has-banner-link .home-hero__content a,
.has-banner-link .home-hero__content button,
.has-banner-link .home-wide__content a,
.has-banner-link .home-promo__content a {
	pointer-events: auto;
}

.home-promo__card.has-banner-link {
	transition: transform 0.4s var(--f-ease), box-shadow 0.4s var(--f-ease);
}

.home-promo__card.has-banner-link:hover {
	transform: translateY(-3px);
	box-shadow: 0 26px 56px -30px rgba(42, 31, 26, 0.55);
}

.has-overlay--off .btn,
.has-overlay--off .offer-card__btn,
.has-overlay--off .offer-card__eyebrow {
	text-shadow: none;
}
