/*
Theme Name: Butcher Shop
Theme URI: https://scintillawpthemes.com/product/butcher-shop/
Author: scintillawpthemes
Author URI: https://scintillawpthemes.com/
Description: Butcher Shop is a bold, warm WordPress block theme for butcher counters, meat markets, delicatessens, smokehouses and farm shops. Built for the Site Editor, it ships with a full-width hero, a weekly cuts showcase, a dry-aging story band, butcher box cards, cooking guides and a smokehouse footer with counter hours, all made from core WordPress blocks. Flame red and ember orange tones, self-hosted Archivo headings and Inter body type give the layout a confident, appetising feel, while fluid typography, generous spacing and accessible colour contrast keep it readable on every screen. Global Styles, block patterns, block styles, template editing and translation-ready strings make the whole site editable without touching code.
Requires at least: 6.9
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: butcher-shop
Domain Path: /languages
Tags: blog, food-and-drink, one-column, two-columns, three-columns, four-columns, grid-layout, wide-blocks, block-patterns, block-styles, custom-colors, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, sticky-post, template-editing, threaded-comments, translation-ready
*/

/* Colours, type, spacing and block defaults live in theme.json.
   This file carries only what theme.json cannot express: the page backdrop,
   positioning, pseudo-element icons and motion. */

/* ==========================================================================
   1. TOKENS + BASE
   ========================================================================== */

:root {
	--swp-line: #f2e4d9;
	--swp-line-2: #ebd6c6;
	--swp-g-brand: linear-gradient(135deg, #f2452f 0%, #ff8a1e 100%);
	--swp-g-brand-2: linear-gradient(135deg, #ff6a3d 0%, #ffb020 100%);
	--swp-sh-1: 0 1px 2px rgba(120, 70, 40, 0.05);
	--swp-sh-2: 0 2px 4px rgba(120, 70, 40, 0.05), 0 14px 34px -20px rgba(150, 80, 45, 0.28);
	--swp-sh-3: 0 4px 8px rgba(120, 70, 40, 0.06), 0 26px 60px -28px rgba(150, 80, 45, 0.42);
	--swp-r-sm: 10px;
	--swp-r-md: 14px;
	--swp-r-lg: 20px;
	--swp-r-xl: 26px;
	--swp-edge: max(var(--wp--preset--spacing--gutter), calc((100% - 1380px) / 2));
	--swp-head: var(--wp--preset--font-family--archivo);
}

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

body {
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	background-color: #fff;
	background-image:
		radial-gradient(1000px 560px at 6% -8%, #ffe7da 0%, rgba(255, 231, 218, 0) 60%),
		radial-gradient(820px 500px at 98% 0%, #fff3d6 0%, rgba(255, 243, 214, 0) 58%),
		radial-gradient(900px 620px at 50% 106%, #e7f2ff 0%, rgba(231, 242, 255, 0) 60%);
	background-attachment: fixed;
	background-repeat: no-repeat;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	overflow-wrap: break-word;
}

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

:where(.wp-site-blocks) > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--wp--preset--color--brand);
	outline-offset: 3px;
	border-radius: 6px;
}

.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: var(--wp--preset--color--brand);
	border-radius: 0 0 10px 0;
	clip-path: none;
	color: #fff;
	display: block;
	font-size: 14px;
	height: auto;
	left: 0;
	line-height: normal;
	padding: 12px 18px;
	text-decoration: none;
	top: 0;
	width: auto;
	z-index: 100000;
}

/* ==========================================================================
   2. SHARED FURNITURE: eyebrow, section head, buttons, icons
   ========================================================================== */

.is-style-eyebrow,
.swp-eyebrow,
.swp-eyebrow-terms {
	color: var(--wp--preset--color--brand);
	font-family: var(--swp-head);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.5;
	margin-bottom: 4px;
	text-transform: uppercase;
}

.swp-eyebrow-terms a {
	color: inherit;
}

.is-style-lead,
.swp-lead {
	color: var(--wp--preset--color--ink-2);
	font-size: 16px;
	line-height: 1.65;
}

.swp-sec-head {
	align-items: flex-end;
}

.swp-sec-head h2 {
	margin: 0;
}

.swp-sec-head .is-style-eyebrow {
	margin: 0 0 4px;
}

.swp-sub {
	color: var(--wp--preset--color--ink-3);
	font-size: 13.5px;
	margin: 5px 0 0;
}

.swp-link-more {
	margin: 0;
}

.swp-link-more a {
	align-items: center;
	color: var(--wp--preset--color--ink-2);
	display: inline-flex;
	font-family: var(--swp-head);
	font-size: 13px;
	font-weight: 600;
	gap: 7px;
}

.swp-link-more a::after {
	background-color: currentColor;
	content: "";
	height: 15px;
	-webkit-mask: url("assets/images/icons/arw.svg") no-repeat center / contain;
	mask: url("assets/images/icons/arw.svg") no-repeat center / contain;
	transition: transform 0.25s ease;
	width: 15px;
}

.swp-link-more a:hover {
	color: var(--wp--preset--color--brand);
}

.swp-link-more a:hover::after {
	transform: translateX(4px);
}

/* Buttons. The primary look comes from theme.json; the outline style is the
   white "ghost" button from the design. */
.wp-block-button__link {
	align-items: center;
	display: inline-flex;
	gap: 9px;
	justify-content: center;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.wp-block-button__link:hover {
	box-shadow: 0 12px 26px -12px rgba(226, 58, 46, 0.9);
}

.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) {
	background: #fff;
	border: 1.5px solid var(--swp-line-2);
	box-shadow: none;
	color: var(--wp--preset--color--ink);
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: #fff;
	border-color: var(--wp--preset--color--ink-3);
	color: var(--wp--preset--color--ink);
}

/* Trailing circle with an arrow, as on the hero calls to action. */
.swp-btn-dot > .wp-block-button__link::after {
	background: rgba(255, 255, 255, 0.18) url("assets/images/icons/btn-arrow.svg") no-repeat center / 12px;
	border-radius: 50%;
	content: "";
	flex: none;
	height: 24px;
	margin-right: -6px;
	width: 24px;
}

.swp-btn-chev > .wp-block-button__link::after,
.swp-btn-white.swp-btn-dot > .wp-block-button__link::after {
	background: url("assets/images/icons/btn-chev.svg") no-repeat center / 11px, var(--swp-g-brand);
}

.swp-btn-white.swp-btn-dot > .wp-block-button__link::after {
	background: url("assets/images/icons/btn-arrow.svg") no-repeat center / 12px, var(--swp-g-brand);
}

.swp-btn-white > .wp-block-button__link {
	background: #fff;
	box-shadow: none;
	color: var(--wp--preset--color--brand);
}

.swp-btn-white > .wp-block-button__link:hover {
	background: #fff1ec;
	box-shadow: none;
	color: var(--wp--preset--color--brand-600);
}

.swp-btn-glass > .wp-block-button__link {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.35);
	box-shadow: none;
	color: #fff;
}

.swp-btn-glass > .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.22);
	box-shadow: none;
	color: #fff;
}

/* Inline icons. Any block with .swp-ic gets a leading icon drawn in the
   current text colour, picked by an .swp-ic-{name} class. */
.swp-ic {
	align-items: center;
	display: flex;
	gap: 7px;
}

.swp-ic::before,
.swp-box-ic::before {
	background-color: currentColor;
	content: "";
	flex: none;
	height: 14px;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	width: 14px;
}

.swp-ic-phone::before { -webkit-mask-image: url("assets/images/icons/phone.svg"); mask-image: url("assets/images/icons/phone.svg"); }
.swp-ic-pin::before { -webkit-mask-image: url("assets/images/icons/pin.svg"); mask-image: url("assets/images/icons/pin.svg"); }
.swp-ic-mail::before { -webkit-mask-image: url("assets/images/icons/mail.svg"); mask-image: url("assets/images/icons/mail.svg"); }
.swp-ic-tag::before { -webkit-mask-image: url("assets/images/icons/tag.svg"); mask-image: url("assets/images/icons/tag.svg"); }
.swp-ic-clock::before { -webkit-mask-image: url("assets/images/icons/clock.svg"); mask-image: url("assets/images/icons/clock.svg"); }
.swp-ic-thermo::before { -webkit-mask-image: url("assets/images/icons/thermo.svg"); mask-image: url("assets/images/icons/thermo.svg"); }
.swp-ic-flame::before { -webkit-mask-image: url("assets/images/icons/flame.svg"); mask-image: url("assets/images/icons/flame.svg"); }
.swp-ic-knife::before { -webkit-mask-image: url("assets/images/icons/knife.svg"); mask-image: url("assets/images/icons/knife.svg"); }
.swp-ic-box::before { -webkit-mask-image: url("assets/images/icons/box.svg"); mask-image: url("assets/images/icons/box.svg"); }
.swp-ic-check::before { -webkit-mask-image: url("assets/images/icons/check.svg"); mask-image: url("assets/images/icons/check.svg"); }
.swp-ic-cal::before { -webkit-mask-image: url("assets/images/icons/cal.svg"); mask-image: url("assets/images/icons/cal.svg"); }
.swp-ic-user::before { -webkit-mask-image: url("assets/images/icons/user.svg"); mask-image: url("assets/images/icons/user.svg"); }

/* ==========================================================================
   3. HEADER
   ========================================================================== */

/* The header template part is the sticky element. It is offset by the
   announcement bar height, so the bar scrolls away and the logo row and
   navigation stay pinned. theme.js keeps --swp-announce-h up to date. */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) - var(--swp-announce-h, 40px));
	z-index: 60;
}

/* Frosted backdrop lives on a pseudo-element so the mobile menu overlay,
   which is fixed, is not trapped by backdrop-filter. */
.wp-site-blocks > header.wp-block-template-part::before {
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	background: rgba(255, 255, 255, 0.86);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	transition: background 0.25s ease;
	z-index: -1;
}

.swp-header {
	border-bottom: 1px solid transparent;
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.wp-site-blocks > header.wp-block-template-part:has(.is-stuck)::before {
	background: rgba(255, 255, 255, 0.94);
}

.swp-header.is-stuck {
	border-bottom-color: var(--swp-line);
	box-shadow: 0 12px 34px -26px rgba(226, 58, 46, 0.55);
}

.swp-header p {
	margin: 0;
}

/* --- announcement bar --- */
.swp-announce {
	background: var(--wp--preset--gradient--warm);
	color: #ffefe2;
	font-size: 12.5px;
	line-height: 1.5;
}

.swp-announce-in {
	min-height: 26px;
}

.swp-announce strong {
	color: #fff;
	font-family: var(--swp-head);
	font-weight: 600;
}

.swp-announce a {
	color: #ffefe2;
}

.swp-announce a:hover {
	color: #fff;
}

.swp-announce .swp-ic::before {
	background-color: #ffe0a8;
}

/* --- main row --- */
.swp-hdr-in {
	min-height: 76px;
}

.swp-hdr-in > * {
	flex: none;
}

.swp-brand {
	flex: none;
}

.swp-brand-mark {
	flex: none;
	margin: 0;
}

.swp-brand-mark img {
	display: block;
	height: auto;
	max-height: 64px;
	object-fit: contain;
}

.swp-brand-type {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

.swp-brand-type > * {
	margin: 0;
}

.swp-brand-name {
	color: var(--wp--preset--color--ink);
	font-family: var(--swp-head);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.005em;
	line-height: 1;
	text-transform: uppercase;
}

.swp-brand-name a {
	color: inherit;
	text-decoration: none;
}

.swp-brand-name a:hover {
	color: var(--wp--preset--color--brand);
}

.swp-brand-tag {
	color: var(--wp--preset--color--ink-3);
	font-family: var(--swp-head);
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 0.13em;
	line-height: 1;
	margin-top: 5px !important;
	max-width: 260px;
	text-transform: uppercase;
}

.swp-brand-tag strong {
	color: var(--wp--preset--color--accent);
	font-weight: 700;
}

/* --- header search --- */
.swp-hdr-in > .swp-hdr-search {
	flex: 1 1 auto;
	margin: 0 auto;
	max-width: 560px;
	min-width: 0;
}

.swp-hdr-search .wp-block-search__inside-wrapper,
.swp-hdr-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
	align-items: center;
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: 999px;
	gap: 10px;
	padding: 6px 6px 6px 18px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.swp-hdr-search .wp-block-search__inside-wrapper::before {
	background-color: var(--wp--preset--color--ink-3);
	content: "";
	flex: none;
	height: 17px;
	-webkit-mask: url("assets/images/icons/search.svg") no-repeat center / contain;
	mask: url("assets/images/icons/search.svg") no-repeat center / contain;
	width: 17px;
}

.swp-hdr-search .wp-block-search__inside-wrapper:focus-within {
	border-color: var(--swp-line-2);
	box-shadow: var(--swp-sh-2);
}

.swp-hdr-search .wp-block-search__input {
	background: none;
	border: 0;
	color: var(--wp--preset--color--ink);
	font-size: 14px;
	min-width: 0;
	outline: none;
	padding: 8px 0;
}

.swp-hdr-search .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--ink-3);
	opacity: 1;
}

.swp-hdr-search .wp-block-search__button {
	background: var(--swp-g-brand);
	border: 0;
	border-radius: 50%;
	box-shadow: none;
	color: #fff;
	display: grid;
	flex: none;
	height: 38px;
	margin: 0;
	padding: 0;
	place-items: center;
	width: 38px;
}

.swp-hdr-search .wp-block-search__button:hover {
	background: var(--wp--preset--color--brand-600);
}

.swp-hdr-search .wp-block-search__button svg {
	display: none;
}

.swp-hdr-search .wp-block-search__button::before {
	background-color: #fff;
	content: "";
	height: 16px;
	-webkit-mask: url("assets/images/icons/arw.svg") no-repeat center / contain;
	mask: url("assets/images/icons/arw.svg") no-repeat center / contain;
	width: 16px;
}

/* --- mobile menu (burger + drawer) --- */
.swp-hdr-in > .swp-nav-mobile {
	display: none;
}

.swp-nav-mobile .wp-block-navigation__responsive-container-open {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-md);
	color: var(--wp--preset--color--ink);
	display: grid;
	height: 42px;
	place-items: center;
	width: 42px;
}

.swp-nav-mobile .wp-block-navigation__responsive-container-open svg {
	height: 19px;
	width: 19px;
}

.swp-nav-mobile .wp-block-navigation__responsive-container.is-menu-open {
	animation: swp-drawer 0.3s ease both;
	background: #fff;
	bottom: 0;
	box-shadow: var(--swp-sh-3), 0 0 0 100vmax rgba(35, 26, 20, 0.45);
	color: var(--wp--preset--color--ink-2);
	left: 0;
	max-width: 86vw;
	padding: 18px;
	right: auto;
	top: 0;
	width: 284px;
}

.swp-nav-mobile .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch;
	padding-top: 44px;
}

.swp-nav-mobile .is-menu-open .wp-block-navigation__container,
.swp-nav-mobile .is-menu-open .wp-block-page-list {
	align-items: stretch;
	gap: 2px;
	width: 100%;
}

.swp-nav-mobile .wp-block-navigation__responsive-container-close {
	border: 1px solid var(--swp-line);
	border-radius: 50%;
	display: grid;
	height: 36px;
	place-items: center;
	right: 0;
	top: 0;
	width: 36px;
}

.swp-nav-mobile .wp-block-navigation__responsive-container-close svg {
	height: 16px;
	width: 16px;
}

.swp-nav-mobile .is-menu-open .wp-block-navigation-item {
	width: 100%;
}

.swp-nav-mobile .is-menu-open .wp-block-navigation-item__content {
	border-radius: var(--swp-r-md);
	color: var(--wp--preset--color--ink-2);
	display: block;
	font-family: var(--swp-head);
	font-size: 13.5px;
	font-weight: 600;
	padding: 11px 13px !important;
	transition: background 0.2s ease, color 0.2s ease;
	width: 100%;
}

.swp-nav-mobile .is-menu-open .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--surface-2);
	color: var(--wp--preset--color--ink);
}

.swp-nav-mobile .is-menu-open .current-menu-item > .wp-block-navigation-item__content,
.swp-nav-mobile .is-menu-open [aria-current="page"] {
	background: var(--wp--preset--color--brand-050);
	color: var(--wp--preset--color--brand);
}

@keyframes swp-drawer {
	from {
		transform: translateX(-102%);
	}

	to {
		transform: none;
	}
}

/* --- navigation bar --- */
.swp-navbar {
	border-top: 1px solid var(--swp-line);
}

.swp-navbar-in {
	min-height: 50px;
}

.swp-nav-main {
	min-width: 0;
}

.swp-nav-main .wp-block-navigation__container {
	flex-wrap: wrap;
	gap: 2px;
}

.swp-nav-main .wp-block-navigation-item__content {
	border-radius: var(--swp-r-sm);
	color: var(--wp--preset--color--ink-2);
	font-family: var(--swp-head);
	font-size: 13.5px;
	font-weight: 600;
	padding: 14px !important;
	position: relative;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.swp-nav-main > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after,
.swp-nav-main .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
	background: var(--swp-g-brand);
	border-radius: 2px;
	bottom: 7px;
	content: "";
	height: 2.5px;
	left: 14px;
	position: absolute;
	right: 14px;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.28s ease;
}

.swp-nav-main .wp-block-navigation-item__content:hover,
.swp-nav-main .current-menu-item > .wp-block-navigation-item__content,
.swp-nav-main [aria-current="page"] {
	color: var(--wp--preset--color--brand);
}

.swp-nav-main .wp-block-navigation-item__content:hover::after,
.swp-nav-main .current-menu-item > .wp-block-navigation-item__content::after,
.swp-nav-main [aria-current="page"]::after {
	transform: scaleX(1);
}

.swp-nav-main .wp-block-navigation__submenu-container {
	background: #fff;
	border: 1px solid var(--swp-line) !important;
	border-radius: var(--swp-r-md);
	box-shadow: var(--swp-sh-3);
	padding: 8px;
}

.swp-nav-main .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 9px 13px !important;
}

.swp-nav-main .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--surface-2);
}

.swp-nav-promo {
	background: var(--wp--preset--color--brand-050);
	border: 1px solid #ffd8d1;
	border-radius: 999px;
	color: var(--wp--preset--color--brand);
	flex: none;
	font-family: var(--swp-head);
	font-size: 12.5px;
	font-weight: 700;
	gap: 8px;
	padding: 8px 15px;
	white-space: nowrap;
}

.swp-nav-promo::before {
	height: 15px;
	width: 15px;
}

/* ==========================================================================
   4. HERO
   ========================================================================== */

.swp-hero {
	background: var(--wp--preset--gradient--hero);
	border-bottom: 1px solid #ffdcc6;
	overflow: hidden;
	position: relative;
}

.swp-slide-cols {
	margin: 0;
}

.swp-slide-copy > * {
	margin-block: 0;
	max-width: 560px;
}

.swp-hero-title {
	margin-top: 13px !important;
}

.swp-hero-title em {
	color: var(--wp--preset--color--brand);
	display: block;
	font-style: normal;
}

.swp-hero-lede {
	color: var(--wp--preset--color--ink-2);
	font-size: 14.5px;
	margin-top: 15px !important;
	max-width: 400px;
}

.swp-hero-cta {
	margin-top: 24px !important;
}

.swp-proof {
	margin-top: 28px !important;
}

.swp-faces > p {
	border: 2.5px solid #fff3e8;
	border-radius: 50%;
	color: #fff;
	display: grid;
	font-family: var(--swp-head);
	font-size: 12px;
	font-weight: 700;
	height: 33px;
	line-height: 1;
	margin: 0 0 0 -10px;
	padding: 0;
	place-items: center;
	width: 33px;
}

.swp-faces > p:first-child {
	margin-left: 0;
}

.swp-proof-text > p {
	margin: 0;
}

.swp-proof-b {
	font-family: var(--swp-head);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
}

.swp-proof-i {
	color: var(--wp--preset--color--ink-2);
	font-size: 13px;
}

.swp-slide-media {
	min-height: 290px;
	position: relative;
}

.swp-shot {
	border-radius: var(--swp-r-lg);
	box-shadow: var(--swp-sh-3);
	overflow: hidden;
	transform: rotate(1.2deg);
}

.swp-shot img,
.is-style-tilted img {
	display: block;
	height: clamp(270px, 30vw, 420px);
	object-fit: cover;
	width: 100%;
}

.is-style-tilted {
	border-radius: var(--swp-r-lg);
	box-shadow: var(--swp-sh-3);
	overflow: hidden;
	transform: rotate(1.2deg);
}

.swp-cut-chip {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-md);
	bottom: 26px;
	box-shadow: var(--swp-sh-3);
	left: -16px;
	min-width: 186px;
	padding: 13px 17px;
	position: absolute;
	z-index: 2;
}

.swp-cut-chip > p {
	margin: 0;
}

.swp-chip-nm {
	font-family: var(--swp-head);
	font-size: 13.5px;
	font-weight: 700;
}

.swp-chip-ds {
	color: var(--wp--preset--color--ink-3);
	font-size: 11.5px;
	margin-top: 2px !important;
}

.swp-chip-pr {
	color: var(--wp--preset--color--brand);
	font-family: var(--swp-head);
	font-size: 16px;
	font-weight: 800;
	margin-top: 7px !important;
}

.swp-chip-pr small {
	color: var(--wp--preset--color--ink-3);
	font-family: var(--wp--preset--font-family--inter);
	font-size: 11px;
	font-weight: 500;
}

/* ==========================================================================
   5. CUT CARDS
   ========================================================================== */

.wp-block-group.swp-prods-static {
	gap: 16px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.swp-prod {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-lg);
	display: flex;
	flex-direction: column;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: relative;
	text-align: left;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.swp-prod:hover {
	box-shadow: var(--swp-sh-2);
	transform: translateY(-4px);
}

.swp-prod-ph {
	background: var(--wp--preset--color--surface-2);
	position: relative;
}

.swp-prod-ph figure,
.swp-prod-ph a,
.swp-rec-fig figure,
.swp-rec-fig a {
	display: block;
	width: 100%;
}

.swp-prod-ph img {
	display: block;
	height: 150px !important;
	object-fit: cover;
	width: 100%;
}

.swp-tag {
	background: var(--wp--preset--color--brand);
	border: 0;
	border-radius: 999px;
	color: #fff;
	font-family: var(--swp-head);
	font-size: 10px;
	font-weight: 700;
	left: 10px;
	letter-spacing: 0.04em;
	line-height: 1.4;
	margin: 0 !important;
	padding: 4px 10px;
	position: absolute;
	right: auto;
	text-transform: uppercase;
	top: 10px;
	z-index: 2;
}

.swp-prod-bd {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 14px 15px 16px;
}

.swp-prod-bd > * {
	margin-block: 0;
}

.swp-prod-bd > * + * {
	margin-top: 3px;
}

.swp-prod-title {
	font-family: var(--swp-head);
	font-size: 13.5px !important;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
	text-align: left;
}

.swp-prod-title a {
	color: var(--wp--preset--color--ink);
}

.swp-prod-title a:hover:hover {
	color: var(--wp--preset--color--brand);
}

.swp-prod-meta,
.swp-prod-dept,
.swp-prod-dept a {
	color: var(--wp--preset--color--ink-3);
	font-size: 11.5px;
	line-height: 1.45;
	margin: 0;
}

.swp-prods .swp-prod-meta {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.swp-prods .swp-prod-meta p {
	margin: 0;
}

.swp-prod-foot {
	margin-top: auto !important;
	padding-top: 11px;
}

.swp-prod-foot > * {
	margin: 0 !important;
}

.swp-price {
	color: var(--wp--preset--color--ink);
	font-family: var(--swp-head);
	font-size: 15.5px !important;
	font-weight: 800;
	line-height: 1.3;
	margin: 0;
	text-align: left;
}

.swp-price small {
	color: var(--wp--preset--color--ink-3);
	font-family: var(--wp--preset--font-family--inter);
	font-size: 10.5px;
	font-weight: 500;
}

.swp-prod-row2 {
	margin-top: 6px !important;
}

.swp-prod-row2 > * {
	margin: 0 !important;
}

.swp-rate {
	align-items: center;
	color: var(--wp--preset--color--ink-2);
	display: inline-flex;
	font-size: 11.5px;
	font-weight: 500;
	gap: 3px;
	margin: 0;
}

.swp-rate::before {
	background-color: var(--wp--preset--color--accent);
	content: "";
	height: 12px;
	-webkit-mask: url("assets/images/icons/star.svg") no-repeat center / contain;
	mask: url("assets/images/icons/star.svg") no-repeat center / contain;
	width: 12px;
}

/* ==========================================================================
   6. AGING ROOM BAND
   ========================================================================== */

.swp-aging {
	background: var(--wp--preset--gradient--warm);
	border-radius: var(--swp-r-xl);
	color: #fff0e6;
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	overflow: hidden;
}

.swp-aging > * {
	margin: 0 !important;
}

.swp-aging-pic {
	min-height: 320px;
	position: relative;
}

.swp-aging-pic > figure {
	inset: 0;
	margin: 0;
	position: absolute;
}

.swp-aging-pic > figure img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.swp-stamp {
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: var(--swp-r-md);
	bottom: 22px;
	left: 22px;
	margin: 0 !important;
	padding: 12px 16px;
	position: absolute;
	z-index: 2;
}

.swp-stamp > p {
	margin: 0;
}

.swp-stamp-b {
	color: var(--wp--preset--color--brand);
	font-family: var(--swp-head);
	font-size: 20px;
	font-weight: 800;
	line-height: 1.2;
}

.swp-stamp-i {
	color: var(--wp--preset--color--ink-2);
	font-size: 11px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.swp-aging-txt {
	padding: clamp(26px, 3vw, 44px);
}

.swp-aging-txt > * {
	margin-block: 0;
}

.swp-aging .is-style-eyebrow {
	color: #ffe7b6;
}

.swp-aging h2 {
	color: #fff;
	margin-top: 12px;
}

.swp-aging-intro {
	color: #ffe6d8;
	font-size: 14px;
	margin-top: 13px !important;
	max-width: 470px;
}

.swp-steps {
	margin-top: 26px !important;
	padding-left: 30px;
}

.swp-step {
	border-top: 1px solid rgba(255, 255, 255, 0.28);
	margin: 0 !important;
	padding: 15px 0;
}

.swp-step:last-child {
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

.swp-step-n {
	background: rgba(255, 255, 255, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 50%;
	color: #fff;
	display: grid;
	flex: none;
	font-family: var(--swp-head);
	font-size: 12px;
	font-weight: 800;
	height: 29px;
	line-height: 1;
	margin: 0;
	place-items: center;
	width: 29px;
}

.swp-step h3 {
	color: #fff;
	font-size: 14px;
	margin: 0;
}

.swp-step p:not(.swp-step-n) {
	color: #ffe0ce;
	font-size: 12.5px;
	margin: 0;
}

/* ==========================================================================
   7. BUTCHER BOXES
   ========================================================================== */

.wp-block-group.swp-boxes {
	gap: 18px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.swp-box {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-lg);
	display: flex;
	flex-direction: column;
	padding: 24px 22px;
}

.swp-box.is-featured {
	background: var(--wp--preset--gradient--box-feature);
	border-color: #ffd9be;
}

.swp-box > * {
	margin-block: 0;
}

.swp-box-ic {
	background: var(--swp-g-brand);
	border-radius: 12px;
	color: #fff;
	display: grid;
	height: 42px;
	margin: 0;
	place-items: center;
	width: 42px;
}

.swp-box-ic::before {
	height: 20px;
	width: 20px;
}

.swp-flag {
	background: var(--wp--preset--gradient--cool);
	border-radius: 999px;
	color: #fff;
	font-family: var(--swp-head);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0;
	padding: 5px 11px;
	text-transform: uppercase;
}

.swp-box h3 {
	margin-top: 16px;
}

.swp-box-desc {
	color: var(--wp--preset--color--ink-2);
	font-size: 13px;
	margin-top: 8px !important;
}

.swp-box .is-style-checks {
	flex: 1;
	margin-top: 16px !important;
}

.swp-box-btn {
	margin-top: 20px !important;
}

.swp-box-btn .wp-block-button {
	width: 100%;
}

/* Check list block style. */
ul.is-style-checks {
	align-content: start;
	display: grid;
	gap: 9px;
	list-style: none;
	padding: 0;
}

ul.is-style-checks li {
	color: var(--wp--preset--color--ink-2);
	display: flex;
	font-size: 12.5px;
	gap: 10px;
	margin: 0;
}

ul.is-style-checks li::before {
	background-color: var(--wp--preset--color--ok);
	content: "";
	flex: none;
	height: 15px;
	margin-top: 2px;
	-webkit-mask: url("assets/images/icons/check.svg") no-repeat center / contain;
	mask: url("assets/images/icons/check.svg") no-repeat center / contain;
	width: 15px;
}

.is-style-card {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-lg);
	box-shadow: var(--swp-sh-1);
	padding: clamp(22px, 2.4vw, 34px);
}

/* ==========================================================================
   8. GUIDE + POST CARDS
   ========================================================================== */

.wp-block-group.swp-recs,
.wp-block-post-template.swp-recs {
	gap: 18px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wp-block-post-template.swp-recs {
	list-style: none;
	margin: 0;
	padding: 0;
}

.swp-rec {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: var(--swp-r-lg);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.swp-rec:hover {
	box-shadow: var(--swp-sh-2);
	transform: translateY(-4px);
}

.swp-rec > * {
	margin-block: 0;
}

.swp-rec-fig {
	position: relative;
}

.swp-rec-fig figure {
	margin: 0;
}

.swp-rec-fig img {
	display: block;
	height: 180px !important;
	object-fit: cover;
	width: 100%;
}

.swp-lvl {
	background: var(--swp-g-brand);
	border-radius: 999px;
	color: #fff;
	font-family: var(--swp-head);
	font-size: 10.5px;
	font-weight: 700;
	left: 12px;
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin: 0 !important;
	padding: 4px 11px;
	position: absolute;
	text-transform: uppercase;
	top: 12px;
	z-index: 2;
}

.swp-lvl a {
	color: #fff;
}

/* A post without a featured image keeps its badge in the flow. */
.swp-post-card .swp-rec-fig:not(:has(.wp-block-post-featured-image)) .swp-lvl {
	display: inline-block;
	margin: 18px 19px 0 !important;
	position: static;
}

.swp-rec-bd {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 18px 19px 20px;
}

.swp-rec-bd > * {
	margin-block: 0;
}

.swp-rec-bd h3,
.swp-rec-bd .wp-block-post-title {
	font-size: 16px;
	margin: 0;
}

.swp-rec-bd h3 a,
.swp-rec-bd .wp-block-post-title a {
	color: var(--wp--preset--color--ink);
}

.swp-rec-bd h3 a:hover,
.swp-rec-bd .wp-block-post-title a:hover {
	color: var(--wp--preset--color--brand);
}

.swp-rec-text {
	color: var(--wp--preset--color--ink-2);
	flex: 1;
	font-size: 13px;
	margin-top: 8px !important;
}

.swp-rec-text p {
	margin: 0;
}

.swp-rec-mt {
	color: var(--wp--preset--color--ink-3);
	font-size: 11.5px;
	margin-top: 15px !important;
}

.swp-rec-mt > * {
	color: inherit;
	font-size: inherit;
	gap: 6px;
	margin: 0;
}

.swp-rec-mt .swp-ic::before {
	height: 13px;
	width: 13px;
}

/* ==========================================================================
   9. FOOTER + NEWSLETTER
   ========================================================================== */

.swp-ftr {
	background: var(--wp--preset--gradient--footer);
	color: #e4cdbf;
	font-size: 12.5px;
}

.swp-ftr a {
	color: inherit;
}

.swp-ftr a:hover {
	color: #fff;
}

.swp-ftr p {
	margin: 0;
}

.swp-nl {
	align-items: center;
	background: var(--wp--preset--gradient--newsletter);
	border-radius: var(--swp-r-xl);
	display: grid;
	gap: 26px;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
	margin-bottom: clamp(30px, 3.4vw, 48px) !important;
	padding: clamp(26px, 3vw, 40px);
}

.swp-nl > * {
	margin: 0 !important;
}

.swp-nl h2 {
	color: #fff;
	margin: 0;
}

.swp-nl p {
	color: #fff0de;
	font-size: 13.5px;
	max-width: 420px;
}

.swp-nl-cta > * {
	margin-block: 0;
}

.swp-nl-cta > * + * {
	margin-top: 12px;
}

.swp-nl .swp-nl-note {
	color: #fff6ea;
	font-size: 12.5px;
	gap: 8px;
}

.swp-nl-note::before {
	height: 15px;
	width: 15px;
}

.wp-block-group.swp-ftr-grid {
	display: grid;
	gap: clamp(20px, 2.6vw, 40px);
	grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 0.85fr)) minmax(0, 1.25fr);
	padding-bottom: clamp(30px, 3.4vw, 46px);
}

.swp-ftr-grid > * {
	margin: 0 !important;
}

.swp-ftr .swp-brand-name {
	color: #fff;
}

.swp-ftr .swp-brand-tag {
	color: #c9ae9e;
}

.swp-ftr .swp-brand-tag strong {
	color: #ffa940;
}

.swp-ftr-about {
	font-size: 13px;
	margin-top: 15px !important;
	max-width: 290px;
}

.swp-ftr-contact {
	margin-top: 18px !important;
}

.swp-ftr-contact > * {
	margin-block: 0;
}

.swp-ftr-contact .swp-ic {
	align-items: flex-start;
	gap: 10px;
}

.swp-ftr-contact .swp-ic::before {
	background-color: #ffb84d;
	height: 15px;
	margin-top: 2px;
	width: 15px;
}

.swp-ftr .wp-block-social-links.swp-socs {
	gap: 9px;
	margin-top: 20px !important;
}

.swp-ftr .wp-block-social-links.swp-socs .wp-social-link {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 50%;
	color: #e4cdbf;
	height: 36px;
	margin: 0;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	width: 36px;
}

.swp-ftr .wp-block-social-links.swp-socs .wp-social-link a {
	align-items: center;
	color: inherit;
	display: flex;
	height: 100%;
	justify-content: center;
	padding: 0;
	width: 100%;
}

.swp-ftr .wp-block-social-links.swp-socs .wp-social-link svg {
	fill: currentColor;
	height: 15px;
	width: 15px;
}

.swp-ftr .wp-block-social-links.swp-socs .wp-social-link:hover {
	background: var(--swp-g-brand);
	border-color: transparent;
	color: #fff;
	transform: none;
}

.swp-ftr-col > * {
	margin-block: 0;
}

.swp-ftr-h {
	color: #fff;
	font-size: 13.5px !important;
	letter-spacing: 0.02em;
	margin: 0;
}

.swp-ftr-links {
	display: grid;
	gap: 10px;
	list-style: none;
	margin-top: 16px !important;
	padding: 0;
}

.swp-ftr-links li {
	margin: 0;
}

.swp-ftr-nav {
	margin-top: 16px !important;
}

.swp-ftr-nav .wp-block-navigation-item__content {
	padding: 0;
}

.swp-hours {
	margin-top: 16px !important;
}

.swp-hours > * {
	margin: 0 !important;
}

.swp-hours > .wp-block-group {
	border-bottom: 1px dashed rgba(255, 255, 255, 0.12);
	padding-bottom: 8px;
}

.swp-hours > * + * {
	margin-top: 9px !important;
}

.swp-hours-t {
	color: #fff;
	font-family: var(--swp-head);
	font-weight: 600;
	white-space: nowrap;
}

.swp-ftr-btm {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 12px;
	padding: 20px 0 26px;
}

.swp-ftr-btm > * {
	margin: 0;
}

.swp-ftr-legal {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	list-style: none;
	padding: 0;
}

.swp-ftr-legal li {
	margin: 0;
}

/* Back to top, built by theme.js. */
.swp-totop {
	background: var(--swp-g-brand);
	border: 0;
	border-radius: 50%;
	bottom: 22px;
	box-shadow: 0 14px 30px -12px rgba(226, 58, 46, 0.8);
	cursor: pointer;
	display: grid;
	height: 44px;
	opacity: 0;
	padding: 0;
	place-items: center;
	position: fixed;
	right: 22px;
	transform: translateY(10px);
	transition: all 0.3s ease;
	visibility: hidden;
	width: 44px;
	z-index: 70;
}

.swp-totop::before {
	background-color: #fff;
	content: "";
	height: 17px;
	-webkit-mask: url("assets/images/icons/up.svg") no-repeat center / contain;
	mask: url("assets/images/icons/up.svg") no-repeat center / contain;
	width: 17px;
}

.swp-totop.is-on {
	opacity: 1;
	transform: none;
	visibility: visible;
}

/* ==========================================================================
   10. BANNERS, BLOG, ARCHIVE, SINGLE
   ========================================================================== */

.swp-page-banner {
	background: var(--wp--preset--gradient--hero);
	border-bottom: 1px solid #ffdcc6;
}

.swp-page-banner .wp-block-query-title,
.swp-page-banner .wp-block-post-title {
	letter-spacing: -0.02em;
}

.swp-page-banner .wp-block-term-description p {
	margin: 0;
}

.swp-post-meta,
.swp-post-meta a {
	color: var(--wp--preset--color--ink-3);
}

.swp-post-meta > * + *::before {
	background: var(--wp--preset--color--accent);
	border-radius: 50%;
	content: "";
	display: inline-block;
	height: 4px;
	margin-right: 16px;
	vertical-align: middle;
	width: 4px;
}

.swp-404-num {
	background: var(--swp-g-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	font-weight: 800;
	line-height: 1;
}

.swp-search-wide {
	margin-left: auto;
	margin-right: auto;
	max-width: 520px;
}

.swp-frame,
.swp-frame img {
	border-radius: var(--swp-r-lg);
	overflow: hidden;
}

.swp-entry-content {
	color: var(--wp--preset--color--ink-2);
	font-size: 16px;
	line-height: 1.75;
}

.swp-entry-content h1,
.swp-entry-content h2,
.swp-entry-content h3,
.swp-entry-content h4,
.swp-entry-content h5,
.swp-entry-content h6 {
	margin-top: 1.6em;
}

.swp-entry-content a:not(.wp-block-button__link) {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.swp-entry-content img {
	border-radius: var(--swp-r-md);
}

.swp-entry-content .alignleft {
	float: left;
	margin: 0.4em 1.6em 1em 0;
}

.swp-entry-content .alignright {
	float: right;
	margin: 0.4em 0 1em 1.6em;
}

.swp-entry-content::after {
	clear: both;
	content: "";
	display: table;
}

.wp-block-quote cite,
.wp-block-pullquote cite {
	color: var(--wp--preset--color--ink-3);
	font-family: var(--wp--preset--font-family--inter);
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
}

.wp-block-table table,
.wp-block-table td,
.wp-block-table th {
	border-color: var(--swp-line);
}

.wp-block-table thead {
	border-bottom-color: var(--swp-line-2);
}

.sticky .swp-rec,
.swp-rec.sticky {
	border-color: var(--wp--preset--color--accent);
}

/* Pagination. */
.wp-block-query-pagination {
	font-family: var(--swp-head);
	font-size: 13px;
	font-weight: 600;
}

.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
	background: #fff;
	border: 1px solid var(--swp-line);
	border-radius: 999px;
	color: var(--wp--preset--color--ink-2);
	display: inline-grid;
	min-width: 40px;
	padding: 9px 14px;
	place-items: center;
}

.wp-block-query-pagination .page-numbers.current,
.wp-block-query-pagination a:hover {
	background: var(--swp-g-brand);
	border-color: transparent;
	color: #fff;
}

.wp-block-query-pagination .page-numbers.dots {
	background: transparent;
	border: 0;
}

/* Post navigation. */
.wp-block-post-navigation-link a {
	color: var(--wp--preset--color--ink);
	font-family: var(--swp-head);
	font-weight: 700;
}

.wp-block-post-navigation-link a:hover {
	color: var(--wp--preset--color--brand);
}

/* Comments. */
.wp-block-comments .wp-block-comment-template {
	padding-left: 0;
}

.wp-block-comments .wp-block-comment-template li {
	border-bottom: 1px solid var(--swp-line);
	padding: 22px 0;
}

.wp-block-comment-author-name a,
.wp-block-comment-author-name {
	color: var(--wp--preset--color--ink);
	font-family: var(--swp-head);
	font-weight: 700;
}

.wp-block-comment-date a,
.wp-block-comment-edit-link a {
	color: var(--wp--preset--color--ink-3);
}

.wp-block-comment-reply-link a {
	font-family: var(--swp-head);
	font-weight: 700;
}

/* Form controls shared by comments and search. */
.wp-block-post-comments-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wp-block-post-comments-form textarea,
.wp-block-search__input,
.swp-entry-content input[type="text"],
.swp-entry-content input[type="email"],
.swp-entry-content input[type="tel"],
.swp-entry-content select,
.swp-entry-content textarea {
	background: #fff;
	border: 1px solid var(--swp-line-2);
	border-radius: var(--swp-r-md);
	color: var(--wp--preset--color--ink);
	font-family: inherit;
	font-size: 14px;
	padding: 11px 14px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.wp-block-post-comments-form input:not([type="submit"]):focus,
.wp-block-post-comments-form textarea:focus,
.swp-entry-content input:focus,
.swp-entry-content textarea:focus,
.swp-entry-content select:focus {
	border-color: var(--wp--preset--color--brand);
	box-shadow: 0 0 0 3px var(--wp--preset--color--brand-050);
	outline: none;
}

.wp-block-search:not(.swp-hdr-search) .wp-block-search__inside-wrapper {
	border-color: var(--swp-line-2);
	border-radius: 999px;
}

.wp-block-search:not(.swp-hdr-search) .wp-block-search__button {
	border-radius: 999px;
}

/* ==========================================================================
   11. MOTION
   ========================================================================== */

.swp-rv {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

.swp-rv.is-in {
	opacity: 1;
	transform: none;
}

/* ==========================================================================
   12. RESPONSIVE
   ========================================================================== */

@media (max-width: 1280px) {
	.wp-block-group.swp-prods-static {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1080px) {
	.swp-navbar {
		display: none;
	}

	.swp-hdr-in > .swp-nav-mobile {
		display: block;
	}

	/* Force the burger below 1080px, above the core 600px breakpoint too. */
	.swp-nav-mobile .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: grid;
	}

	.swp-nav-mobile .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}

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

	.wp-block-group.swp-ftr-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.swp-hdr-in > .swp-hdr-search {
		display: none;
	}

	.swp-slide-cols {
		flex-wrap: wrap !important;
	}

	.swp-slide-cols > .wp-block-column {
		flex-basis: 100% !important;
	}

	.swp-slide-media {
		order: -1;
	}

	.swp-cut-chip {
		bottom: -14px;
		left: auto;
		right: 14px;
	}

	.wp-block-group.swp-boxes,
	.wp-block-group.swp-recs,
	.wp-block-post-template.swp-recs {
		grid-template-columns: minmax(0, 1fr);
	}

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

@media (max-width: 660px) {
	.wp-block-group.swp-prods-static {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.wp-block-group.swp-ftr-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.swp-brand-tag {
		display: none;
	}

	.swp-brand-name {
		font-size: 19px;
	}

	.swp-announce-links {
		display: none !important;
	}

	.swp-hdr-in {
		gap: 12px !important;
	}
}

@media (max-width: 420px) {
	.swp-prod-bd {
		padding: 12px 12px 14px;
	}

	.swp-cut-chip {
		min-width: 0;
		right: 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}

	.swp-rv {
		opacity: 1;
		transform: none;
	}
}
