:root {
	--rf-background: #f6f7f8;
	--rf-foreground: #21262c;
	--rf-primary: #353f4a;
	--rf-primary-strong: #242c34;
	--rf-card: #fff;
	--rf-surface: #eef0f2;
	--rf-muted: #737b84;
	--rf-border: #dde1e5;
	--rf-accent: #f5bc00;
	--rf-accent-hover: #dca300;
	--rf-success: #22a657;
	--rf-danger: #dc3f3f;
	--rf-radius: 16px;
	--rf-radius-sm: 10px;
	--rf-shadow: 0 18px 45px rgba(24, 31, 39, 0.11);
	--rf-container: 1280px;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--rf-background);
	color: var(--rf-foreground);
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-feature-settings: "cv11", "ss01";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	letter-spacing: -0.025em;
}

.wp-site-blocks > * {
	margin-block-start: 0;
}

body.rf-modal-open,
body.rf-filter-open,
body.rf-cart-drawer-open,
body.rf-account-drawer-open {
	overflow: hidden;
}

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

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

button,
input,
select,
textarea {
	font: inherit;
}

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

.rf-pad-y {
	padding-block: 56px;
}

.rf-main {
	min-height: 45vh;
}

.rf-site-header {
	position: sticky;
	top: 0;
	z-index: 80;
	background: var(--rf-primary);
	color: #fff;
	box-shadow: 0 14px 34px rgba(14, 21, 28, 0.22);
}

.rf-topbar {
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.rf-topbar__inner,
.rf-topbar__left,
.rf-topbar__right,
.rf-header-actions,
.rf-mainbar,
.rf-desktop-nav,
.rf-language,
.rf-account-link,
.rf-cart-link {
	display: flex;
	align-items: center;
}

.rf-topbar__inner {
	justify-content: space-between;
	padding-block: 8px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 12px;
}

.rf-topbar__left {
	gap: 18px;
}

.rf-topbar__right {
	gap: 14px;
	margin-left: auto;
}

.rf-topbar__link:hover,
.rf-topbar-menu a:hover,
.rf-topbar-menu a:focus-visible,
.rf-desktop-nav a:hover {
	color: #fff;
}

.rf-mini-icon,
.rf-phone-icon {
	position: relative;
	display: inline-block;
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79A15.05 15.05 0 0 0 13.21 17.38l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79A15.05 15.05 0 0 0 13.21 17.38l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rf-mini-icon::before,
.rf-phone-icon::before {
	content: none;
}

.rf-phone-icon {
	width: 16px;
	height: 16px;
}

.rf-language {
	gap: 3px;
	padding: 3px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
}

.rf-language a {
	padding: 4px 8px;
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.7);
	font-weight: 800;
	font-size: 11px;
	letter-spacing: 0;
}

.rf-language a.is-active {
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-language a:hover {
	color: #fff;
}

.rf-mainbar {
	min-height: 66px;
	justify-content: space-between;
	gap: 24px;
	padding-block: 12px;
}

.rf-logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.rf-logo img {
	display: block;
	width: auto;
	max-height: 60px;
}

.rf-header-search {
	position: relative;
	flex: 1;
	max-width: 470px;
}

.rf-search-form,
.rf-mobile-search {
	position: relative;
}

.rf-header-search input,
.rf-mobile-search input {
	width: 100%;
	min-height: 42px;
	border: 0;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	padding: 0 16px 0 42px;
	outline: none;
}

.rf-header-search input::placeholder,
.rf-mobile-search input::placeholder {
	color: rgba(255, 255, 255, 0.42);
}

.rf-search-suggestions {
	position: absolute;
	z-index: 120;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	overflow: hidden;
	border: 1px solid var(--rf-border);
	border-radius: 12px;
	background: #fff;
	color: var(--rf-foreground);
	box-shadow: var(--rf-shadow);
}

.rf-search-suggestions__list {
	max-height: 336px;
	overflow-y: auto;
	overscroll-behavior: contain;
}

.rf-search-suggestion {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 10px 12px;
	border-bottom: 1px solid var(--rf-border);
	background: #fff;
	transition: background-color 0.18s ease;
}

.rf-search-suggestion:hover,
.rf-search-suggestion:focus-visible {
	background: var(--rf-surface);
	outline: none;
}

.rf-search-suggestion__image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 10px;
	background: var(--rf-surface);
}

.rf-search-suggestion__image img {
	display: block;
	max-width: 48px;
	max-height: 48px;
	object-fit: contain;
}

.rf-search-suggestion__body {
	display: grid;
	gap: 5px;
	min-width: 0;
}

.rf-search-suggestion__title {
	overflow: hidden;
	color: var(--rf-foreground);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.rf-search-suggestion__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
}

.rf-search-suggestion__meta strong {
	color: var(--rf-foreground);
}

.rf-search-suggestions__all,
.rf-search-suggestions__state {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 12px 14px;
	font-size: 14px;
	font-weight: 800;
}

.rf-search-suggestions__all {
	justify-content: center;
	border-top: 1px solid var(--rf-border);
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-search-suggestions__all:hover,
.rf-search-suggestions__all:focus-visible {
	background: var(--rf-accent-hover);
	outline: none;
}

.rf-search-suggestions__state {
	color: var(--rf-muted);
}

.rf-search-icon,
.rf-cart-icon,
.rf-card-eye {
	position: absolute;
	width: 18px;
	height: 18px;
}

.rf-search-icon {
	left: 14px;
	top: 50%;
	translate: 0 -50%;
	border: 2px solid rgba(255, 255, 255, 0.55);
	border-radius: 50%;
}

.rf-search-icon::after {
	content: "";
	position: absolute;
	right: -5px;
	bottom: -4px;
	width: 7px;
	height: 2px;
	background: rgba(255, 255, 255, 0.55);
	rotate: 45deg;
	border-radius: 2px;
}

.rf-header-actions {
	gap: 12px;
}

.rf-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	border: 1px solid transparent;
	border-radius: 12px;
	padding: 0 16px;
	background: var(--rf-card);
	color: var(--rf-foreground);
	font-weight: 800;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	transition: transform 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.rf-button:hover {
	transform: translateY(-1px);
}

.rf-button:active {
	transform: scale(0.98);
}

.rf-button--cta {
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-button--cta:hover {
	background: var(--rf-accent-hover);
}

.rf-button--outline {
	background: transparent;
	border-color: var(--rf-border);
	color: var(--rf-foreground);
}

.rf-button--outline:hover {
	background: var(--rf-surface);
}

.rf-button--ghost {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.rf-button--ghost:hover {
	background: rgba(255, 255, 255, 0.14);
}

.rf-button--lg {
	min-height: 48px;
	padding-inline: 20px;
}

.rf-button--xl {
	min-height: 54px;
	padding-inline: 24px;
	font-size: 16px;
}

.rf-account-link,
.rf-cart-link {
	position: relative;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	color: #fff;
}

.rf-account-link:hover,
.rf-cart-link:hover {
	color: var(--rf-accent);
	background: rgba(255, 255, 255, 0.06);
}

.rf-account-icon {
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rf-cart-icon {
	position: relative;
	display: block;
	width: 24px;
	height: 24px;
	border: 2px solid currentColor;
	border-top: 0;
	border-radius: 3px 3px 7px 7px;
}

.rf-cart-icon::before {
	content: "";
	position: absolute;
	left: 5px;
	top: -8px;
	width: 10px;
	height: 10px;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
}

.rf-cart-count {
	position: absolute;
	top: 2px;
	right: 2px;
	display: grid;
	place-items: center;
	min-width: 17px;
	height: 17px;
	padding-inline: 4px;
	border-radius: 999px;
	background: var(--rf-accent);
	color: var(--rf-foreground);
	font-size: 10px;
	font-weight: 900;
}

.rf-mobile-toggle {
	display: none;
	width: 42px;
	height: 42px;
	border: 0;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	cursor: pointer;
}

.rf-mobile-toggle span {
	display: block;
	width: 20px;
	height: 2px;
	margin: 4px auto;
	background: #fff;
	border-radius: 999px;
}

.rf-desktop-nav {
	gap: 2px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.rf-nav-menu,
.rf-topbar-menu,
.rf-mobile-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.rf-nav-menu,
.rf-topbar-menu {
	display: flex;
	align-items: center;
}

.rf-nav-menu {
	gap: 2px;
}

.rf-topbar-menu {
	gap: 4px;
}

.rf-nav-menu li,
.rf-topbar-menu li {
	position: relative;
}

.rf-desktop-nav a {
	display: flex;
	align-items: center;
	padding: 13px 16px;
	border-radius: 0 0 10px 10px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
}

.rf-topbar-menu a {
	display: flex;
	align-items: center;
	min-height: 26px;
	padding: 3px 8px;
	border-radius: 8px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}

.rf-desktop-nav a:hover {
	background: rgba(255, 255, 255, 0.06);
}

.rf-nav-menu .sub-menu,
.rf-topbar-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 130;
	display: grid;
	min-width: 220px;
	margin: 0;
	padding: 8px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 12px;
	background: var(--rf-primary-strong);
	box-shadow: 0 16px 36px rgba(14, 21, 28, 0.26);
	list-style: none;
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px);
	transition: opacity 0.18s ease, transform 0.18s ease;
}

.rf-topbar-menu .sub-menu {
	min-width: 180px;
}

.rf-nav-menu li:hover > .sub-menu,
.rf-nav-menu li:focus-within > .sub-menu,
.rf-topbar-menu li:hover > .sub-menu,
.rf-topbar-menu li:focus-within > .sub-menu {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.rf-nav-menu .sub-menu .sub-menu,
.rf-topbar-menu .sub-menu .sub-menu {
	top: -8px;
	left: calc(100% + 8px);
}

.rf-nav-menu .sub-menu a,
.rf-topbar-menu .sub-menu a {
	min-height: 38px;
	padding: 9px 10px;
	border-radius: 9px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 13px;
}

.rf-topbar-menu .sub-menu a {
	min-height: 32px;
	font-size: 12px;
}

.rf-nav-menu .sub-menu a:hover,
.rf-nav-menu .sub-menu a:focus-visible,
.rf-topbar-menu .sub-menu a:hover,
.rf-topbar-menu .sub-menu a:focus-visible {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	outline: none;
}

.rf-mobile-nav {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-block: 14px 18px;
}

.rf-mobile-nav .rf-container {
	display: grid;
	gap: 8px;
}

.rf-mobile-search {
	margin-bottom: 6px;
}

.rf-mobile-search input {
	padding-left: 16px;
}

.rf-mobile-menu {
	display: grid;
	gap: 2px;
}

.rf-mobile-menu .sub-menu {
	display: grid;
	gap: 2px;
	margin: 2px 0 4px 14px;
	padding: 0 0 0 12px;
	border-left: 1px solid rgba(255, 255, 255, 0.12);
	list-style: none;
}

.rf-mobile-nav a {
	display: flex;
	align-items: center;
	padding: 12px 14px;
	border-radius: 10px;
	color: rgba(255, 255, 255, 0.84);
	font-weight: 700;
}

.rf-mobile-menu .sub-menu a {
	padding-block: 10px;
	color: rgba(255, 255, 255, 0.7);
	font-size: 14px;
}

.rf-mobile-nav a:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.rf-hero {
	position: relative;
	min-height: 650px;
	display: flex;
	align-items: center;
	overflow: hidden;
	background-image: linear-gradient(90deg, rgba(53, 63, 74, 0.97), rgba(53, 63, 74, 0.8), rgba(53, 63, 74, 0.42)), var(--rf-hero-bg);
	background-size: cover;
	background-position: center;
}

.rf-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
	align-items: center;
	gap: 64px;
	padding-block: 80px;
}

.rf-hero__copy > span {
	display: inline-block;
	margin-bottom: 18px;
	color: var(--rf-accent);
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
}

.rf-hero h1 {
	max-width: 640px;
	margin: 0 0 22px;
	color: #fff;
	font-size: clamp(2.6rem, 6vw, 4.45rem);
	font-weight: 900;
	line-height: 1.03;
	letter-spacing: -0.03em;
}

.rf-hero p {
	max-width: 560px;
	margin: 0 0 30px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 18px;
	line-height: 1.7;
}

.rf-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.rf-finder {
	padding: 30px;
	border-radius: 22px;
	background: var(--rf-card);
	box-shadow: 0 28px 80px rgba(12, 18, 24, 0.26);
}

.rf-finder h2 {
	margin: 0 0 4px;
	font-size: 24px;
	line-height: 1.15;
}

.rf-finder p {
	margin: 0 0 22px;
	color: var(--rf-muted);
	font-size: 14px;
}

.rf-finder__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 22px;
}

.rf-finder__tabs button {
	border: 0;
	border-radius: 10px;
	padding: 10px 14px;
	background: var(--rf-surface);
	color: var(--rf-foreground);
	font-weight: 800;
	font-size: 14px;
	cursor: pointer;
}

.rf-finder__tabs button.is-active {
	background: var(--rf-primary);
	color: #fff;
	box-shadow: 0 8px 18px rgba(33, 38, 44, 0.16);
}

.rf-finder__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.rf-finder label,
.rf-sort,
.rf-filter-form label {
	display: grid;
	gap: 6px;
}

.rf-finder label span,
.rf-sort span {
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 800;
}

.rf-finder select,
.rf-sort select,
.rf-filter-form select,
.rf-filter-form input,
.rf-callback-fallback input,
.rf-callback-fallback textarea,
.wpcf7 input,
.wpcf7 textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	width: 100%;
	min-height: 44px;
	border: 1px solid var(--rf-border);
	border-radius: 11px;
	background: #fff;
	color: var(--rf-foreground);
	padding: 0 12px;
	outline: none;
}

.rf-callback-fallback textarea,
.wpcf7 textarea,
.woocommerce form .form-row textarea {
	min-height: 110px;
	padding-top: 12px;
	resize: vertical;
}

.rf-finder select:focus,
.rf-sort select:focus,
.rf-filter-form input:focus,
.rf-callback-fallback input:focus,
.rf-callback-fallback textarea:focus,
.wpcf7 input:focus,
.wpcf7 textarea:focus {
	border-color: var(--rf-accent);
	box-shadow: 0 0 0 3px rgba(245, 188, 0, 0.18);
}

.rf-finder__submit {
	width: 100%;
	margin-top: 24px;
}

.rf-section {
	padding-block: 88px;
}

.rf-section--surface {
	background: var(--rf-surface);
}

.rf-section-head {
	max-width: 650px;
	margin: 0 auto 42px;
	text-align: center;
}

.rf-section-head h2 {
	margin: 0 0 10px;
	font-size: clamp(2rem, 4vw, 2.8rem);
	line-height: 1.1;
}

.rf-section-head p {
	margin: 0;
	color: var(--rf-muted);
}

.rf-section-head--dark h2 {
	color: #fff;
}

.rf-section-head--dark p {
	color: rgba(255, 255, 255, 0.62);
}

.rf-services {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.rf-service-card,
.rf-product-card,
.rf-post-card,
.rf-testimonial-card {
	background: var(--rf-card);
	border: 1px solid rgba(221, 225, 229, 0.82);
	border-radius: 20px;
	box-shadow: 0 4px 12px rgba(24, 31, 39, 0.04);
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.rf-service-card {
	padding: 34px;
}

.rf-service-card:hover,
.rf-product-card:hover,
.rf-post-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--rf-shadow);
	border-color: rgba(245, 188, 0, 0.28);
}

.rf-service-card h2 {
	margin: 0 0 10px;
	font-size: 22px;
}

.rf-service-card p {
	margin: 0 0 24px;
	color: var(--rf-muted);
}

.rf-icon-box {
	width: 58px;
	height: 58px;
	margin-bottom: 24px;
	border-radius: 14px;
	background: rgba(245, 188, 0, 0.13);
	position: relative;
}

.rf-icon-box::before,
.rf-icon-box::after {
	content: "";
	position: absolute;
	background: var(--rf-accent);
	border-radius: 3px;
}

.rf-icon-box::before {
	left: 15px;
	bottom: 15px;
	width: 28px;
	height: 21px;
}

.rf-icon-box::after {
	left: 20px;
	top: 14px;
	width: 18px;
	height: 10px;
}

.rf-icon-box--wrench::before {
	left: 26px;
	top: 14px;
	width: 7px;
	height: 32px;
	transform: rotate(45deg);
}

.rf-icon-box--wrench::after {
	left: 16px;
	top: 12px;
	width: 18px;
	height: 18px;
	border: 5px solid var(--rf-accent);
	background: transparent;
}

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

.rf-product-grid--catalog {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.rf-product-grid--4col {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.rf-product-card {
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.rf-product-card__media {
	position: relative;
	overflow: hidden;
	height: 230px;
	background: var(--rf-surface);
}

.rf-product-grid--catalog .rf-product-card__media {
	height: 200px;
}

.rf-product-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	transition: transform 0.35s ease;
}

.rf-product-card:hover .rf-product-card__media img {
	transform: scale(1.045);
}

.rf-badge {
	position: absolute;
	top: 14px;
	left: 14px;
	padding: 5px 10px;
	border-radius: 999px;
	background: var(--rf-primary);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
}

.rf-badge.is-sale {
	background: var(--rf-danger);
}

.rf-badge.is-stock {
	background: var(--rf-success);
	display: none;
}

.rf-badge.is-out {
	background: var(--rf-muted);
}

.rf-card-eye {
	top: 14px;
	right: 14px;
	width: 38px;
	height: 38px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.84);
	box-shadow: 0 10px 24px rgba(20, 28, 36, 0.12);
	opacity: 0;
	transition: opacity 0.2s ease;
}

.rf-card-eye::before {
	content: "";
	position: absolute;
	inset: 11px 8px;
	border: 2px solid var(--rf-foreground);
	border-radius: 50% / 65%;
}

.rf-card-eye::after {
	content: "";
	position: absolute;
	top: 17px;
	left: 17px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--rf-foreground);
}

.rf-product-card:hover .rf-card-eye {
	opacity: 1;
}

.rf-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 20px;
}

.rf-product-card__cat {
	margin-bottom: 6px;
	color: var(--rf-accent-hover);
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
}

.rf-product-card__cat a {
	color: inherit;
}

.rf-product-card h3 {
	margin: 0 0 10px;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 600;
}

.rf-product-card h3 a:hover {
	color: var(--rf-accent-hover);
}

.rf-product-card__specs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
	color: var(--rf-muted);
	font-size: 12px;
}

.rf-product-card__bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 14px;
	margin-top: auto;
}

.rf-price {
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
}

.rf-price del {
	display: block;
	color: var(--rf-muted);
	font-size: 13px;
	font-weight: 500;
}

.rf-price ins {
	text-decoration: none;
}

.rf-card-cart {
	min-width: 92px;
	padding-inline: 14px;
}

.rf-product-card__bottom .added_to_cart {
	display: none !important;
}

.rf-trust {
	background: var(--rf-primary);
}

.rf-stat-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.rf-stat-card {
	padding: 28px 18px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.055);
	text-align: center;
}

.rf-stat-card strong {
	display: block;
	color: #fff;
	font-size: 44px;
	font-weight: 900;
	line-height: 1;
}

.rf-stat-card span {
	display: block;
	margin-top: 10px;
	color: rgba(255, 255, 255, 0.82);
	font-weight: 800;
}

.rf-stat-card small {
	display: block;
	margin-top: 4px;
	color: rgba(255, 255, 255, 0.52);
	font-size: 12px;
}

.rf-brand-section {
	overflow: hidden;
}

.rf-brand-rail {
	width: 100%;
	overflow: hidden;
}

.rf-brand-track {
	display: flex;
	width: max-content;
	animation: rf-slide-left 26s linear infinite;
}

.rf-brand-track span {
	display: grid;
	place-items: center;
	width: 132px;
	height: 64px;
	margin-inline: 18px;
	border: 1px solid rgba(221, 225, 229, 0.85);
	border-radius: 14px;
	background: #fff;
	color: var(--rf-muted);
	font-size: 14px;
	font-weight: 900;
	filter: grayscale(1);
	transition: filter 0.2s ease, color 0.2s ease;
}

.rf-brand-track span:hover {
	color: var(--rf-foreground);
	filter: none;
}

@keyframes rf-slide-left {
	to { transform: translateX(-50%); }
}

.rf-testimonial-card {
	max-width: 720px;
	margin-inline: auto;
	padding: 38px;
	text-align: center;
	box-shadow: var(--rf-shadow);
}

.rf-stars {
	color: var(--rf-accent);
	font-size: 20px;
	letter-spacing: 4px;
}

.rf-testimonial-card blockquote {
	margin: 22px auto 28px;
	max-width: 560px;
	font-size: 18px;
	line-height: 1.7;
}

.rf-testimonial-author {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	text-align: left;
}

.rf-testimonial-author > span {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--rf-primary);
	color: #fff;
	font-size: 20px;
	font-weight: 900;
}

.rf-testimonial-author strong,
.rf-testimonial-author small {
	display: block;
}

.rf-testimonial-author small {
	color: var(--rf-muted);
}

.rf-testimonial-controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 22px;
}

.rf-testimonial-controls button {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid var(--rf-border);
	border-radius: 50%;
	background: #fff;
	color: var(--rf-foreground);
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

[data-rf-testimonial-dots] {
	display: flex;
	gap: 8px;
}

[data-rf-testimonial-dots] button {
	width: 8px;
	height: 8px;
	min-height: 0;
	padding: 0;
	border: 0;
	background: var(--rf-border);
}

[data-rf-testimonial-dots] button.is-active {
	width: 32px;
	border-radius: 999px;
	background: var(--rf-accent);
}

.rf-page-header {
	border-bottom: 1px solid var(--rf-border);
	background: var(--rf-surface);
}

.rf-page-header .rf-container {
	padding-block: 42px;
}

.rf-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	color: var(--rf-muted);
	font-size: 13px;
}

.rf-breadcrumb a:hover {
	color: var(--rf-foreground);
}

.rf-page-header h1 {
	margin: 0;
	font-size: clamp(2rem, 4vw, 2.25rem);
	font-weight: 600;
}

.rf-page-header p {
	max-width: 720px;
	margin: 10px 0 0;
	color: var(--rf-muted);
}

.rf-catalog__body {
	padding-block: 34px 72px;
}

.rf-catalog__toolbar {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}

.rf-catalog__toolbar p,
.rf-product-card__bottom p,
.rf-product-actions p,
.rf-single-cart p,
.rf-finder > p:last-child {
	margin: 0;
}

.rf-catalog__toolbar p {
	display: flex;
	align-items: end;
	gap: 16px;
}

.rf-catalog__toolbar br,
.rf-product-card__bottom br,
.rf-product-actions br,
.rf-single-cart br,
.rf-finder br {
	display: none;
}

.rf-filter-toggle {
	display: none;
}

.rf-catalog__layout {
	display: grid;
	grid-template-columns: 290px minmax(0, 1fr);
	gap: 30px;
}

.rf-filter-panel {
	align-self: start;
	position: relative;
	top: auto;
	max-height: none;
	overflow: visible;
	overscroll-behavior: contain;
	touch-action: pan-y;
	padding: 22px;
	border: 1px solid rgba(221, 225, 229, 0.86);
	border-radius: 18px;
	background: #fff;
}

.rf-filter-panel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 18px;
}

.rf-filter-panel__head h2 {
	margin: 0;
	font-size: 18px;
}

.rf-filter-panel__head button {
	display: none;
}

.rf-filter-form {
	display: grid;
	gap: 22px;
}

.rf-filter-group {
	display: grid;
	gap: 10px;
}

.rf-filter-group h3 {
	margin: 0;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
}

.rf-price-inputs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.rf-price-filter {
	display: grid;
	gap: 10px;
}

.rf-price-slider {
	--rf-price-start: 0%;
	--rf-price-end: 100%;
	position: relative;
	height: 30px;
	margin: 2px 4px 0;
}

.rf-price-slider::before,
.rf-price-slider::after {
	position: absolute;
	top: 14px;
	right: 0;
	left: 0;
	height: 4px;
	border-radius: 999px;
	content: "";
}

.rf-price-slider::before {
	background: var(--rf-border);
}

.rf-price-slider::after {
	left: var(--rf-price-start);
	right: calc(100% - var(--rf-price-end));
	background: var(--rf-accent);
}

.rf-price-slider input[type="range"] {
	position: absolute;
	inset: 0;
	width: 100%;
	min-height: 30px;
	padding: 0;
	border: 0;
	background: transparent;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}

.rf-price-slider input[type="range"]::-webkit-slider-runnable-track {
	height: 4px;
	background: transparent;
}

.rf-price-slider input[type="range"]::-webkit-slider-thumb {
	position: relative;
	z-index: 2;
	width: 18px;
	height: 18px;
	margin-top: -7px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--rf-primary);
	box-shadow: 0 4px 10px rgba(33, 38, 44, 0.22);
	cursor: pointer;
	pointer-events: auto;
	-webkit-appearance: none;
	appearance: none;
}

.rf-price-slider input[type="range"]::-moz-range-track {
	height: 4px;
	background: transparent;
}

.rf-price-slider input[type="range"]::-moz-range-thumb {
	position: relative;
	z-index: 2;
	width: 14px;
	height: 14px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--rf-primary);
	box-shadow: 0 4px 10px rgba(33, 38, 44, 0.22);
	cursor: pointer;
	pointer-events: auto;
}

.rf-price-bounds {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 800;
}

.rf-filter-search {
	min-height: 38px;
	border-radius: 10px;
	font-size: 13px;
}

.rf-check-list {
	display: grid;
	gap: 8px;
	max-height: 174px;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	padding-right: 4px;
	scrollbar-width: thin;
}

.rf-check-list label {
	display: flex;
	grid-template-columns: none;
	align-items: center;
	gap: 9px;
	min-height: 28px;
	color: var(--rf-muted);
	font-size: 14px;
	cursor: pointer;
}

.rf-check-list input {
	width: 16px;
	min-height: 16px;
	accent-color: var(--rf-accent);
}

.rf-filter-actions {
	display: grid;
	position: sticky;
	top: 172px;
	z-index: 4;
	gap: 10px;
	padding: 0 0 14px;
	margin-bottom: -2px;
	border-bottom: 1px solid rgba(221, 225, 229, 0.74);
	background: linear-gradient(#fff 78%, rgba(255, 255, 255, 0.92));
}

.rf-filter-empty {
	margin: 0;
	color: var(--rf-muted);
	font-size: 13px;
}

.rf-filter-option-hidden {
	display: none !important;
}

.rf-sort {
	grid-template-columns: auto auto;
	align-items: center;
	gap: 10px;
}

.rf-pagination {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 36px;
}

.rf-pagination .page-numbers {
	display: grid;
	place-items: center;
	min-width: 40px;
	height: 40px;
	padding-inline: 12px;
	border: 1px solid var(--rf-border);
	border-radius: 10px;
	background: #fff;
	font-weight: 800;
}

.rf-pagination .page-numbers.current {
	background: var(--rf-primary);
	color: #fff;
}

.rf-empty {
	padding: 80px 20px;
	text-align: center;
}

.rf-single-product {
	padding-block: 36px 76px;
}

.rf-product-breadcrumb {
	margin-bottom: 28px;
}

.rf-product-detail {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(380px, 1fr);
	gap: 58px;
}

.rf-product-gallery__main {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 520px;
	padding: 36px;
	border-radius: 22px;
	background: var(--rf-surface);
}

.rf-product-gallery__main img {
	width: auto;
	max-height: 440px;
	object-fit: contain;
}

.rf-product-gallery__thumbs {
	display: flex;
	gap: 12px;
	margin-top: 14px;
}

.rf-product-gallery__thumbs button {
	display: grid;
	place-items: center;
	width: 82px;
	height: 82px;
	border: 2px solid transparent;
	border-radius: 14px;
	background: var(--rf-surface);
	cursor: pointer;
}

.rf-product-gallery__thumbs button.is-active {
	border-color: var(--rf-accent);
}

.rf-product-gallery__thumbs img {
	max-height: 62px;
	width: auto;
}

.rf-product-summary h1 {
	margin: 8px 0 6px;
	font-size: clamp(2rem, 4vw, 2rem);
}

.rf-product-sku {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0 0 16px;
	padding: 3px 10px;
	border: 1px solid var(--rf-border);
	border-radius: 999px;
	font-size: 12px;
	color: var(--rf-muted);
	background: var(--rf-surface);
}

.rf-product-sku span {
	color: var(--rf-foreground);
	font-weight: 500;
}

.rf-product-summary__excerpt {
	font-size: 16px;
	line-height: 1.65;
	color: var(--rf-muted);
}

.rf-product-summary__price {
	margin: 24px 0;
	font-size: 34px;
	font-weight: 900;
}

.rf-product-summary__price del {
	margin-right: 8px;
	color: var(--rf-muted);
	font-size: 20px;
	font-weight: 500;
}

.rf-product-summary__price ins {
	text-decoration: none;
}

.rf-product-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 28px;
	color: var(--rf-muted);
	font-weight: 700;
}

.rf-product-badges span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.rf-product-badges span::before {
	content: "";
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--rf-accent);
}

.rf-product-badges .is-ok {
	color: var(--rf-success);
}

.rf-product-badges .is-ok::before {
	background: var(--rf-success);
}

.rf-product-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 34px;
}

.rf-single-cart {
	display: flex;
	gap: 12px;
}

.rf-single-cart .quantity input {
	width: 76px;
	min-height: 54px;
	border: 1px solid var(--rf-border);
	border-radius: 12px;
	text-align: center;
}

.rf-specs h2 {
	margin: 0 0 14px;
	font-size: 20px;
}

.rf-specs__table {
	overflow: hidden;
	border: 1px solid var(--rf-border);
	border-radius: 14px;
}

.rf-specs__table div {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	padding: 12px 16px;
	font-size: 14px;
}

.rf-specs__table div:nth-child(odd) {
	background: var(--rf-surface);
}

.rf-specs__table span {
	color: var(--rf-muted);
}

/* Product description — desktop: below gallery; mobile: after specs */
.rf-product-description {
	margin-top: 28px;
	font-size: 16px;
	line-height: 1.65;
	color: var(--rf-muted);
}

.rf-product-description p { margin: 0 0 14px; }
.rf-product-description p:last-child { margin-bottom: 0; }

.rf-product-description--mobile { display: none; }

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

.rf-post-card {
	overflow: hidden;
	padding-bottom: 20px;
}

.rf-post-card h2,
.rf-post-card .wp-block-post-excerpt {
	padding-inline: 20px;
}

.rf-post-card h2 {
	font-size: 20px;
}

.rf-static-layout {
	display: grid;
	gap: 24px;
}

.rf-content-card,
.rf-map-card {
	padding: 28px;
	border: 1px solid rgba(221, 225, 229, 0.86);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 4px 12px rgba(24, 31, 39, 0.04);
}

.rf-content-card h2,
.rf-map-card h2 {
	margin: 0 0 14px;
	font-size: 24px;
}

.rf-content-card h3 {
	margin: 0 0 6px;
	font-size: 16px;
}

.rf-content-card p,
.rf-map-card p {
	margin: 0 0 12px;
	color: var(--rf-muted);
}

.rf-content-card p:last-child,
.rf-map-card p:last-child {
	margin-bottom: 0;
}

.rf-static-stats,
.rf-feature-grid,
.rf-contact-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.rf-static-stats div,
.rf-feature-grid div {
	padding: 22px;
	border: 1px solid rgba(221, 225, 229, 0.86);
	border-radius: 16px;
	background: #fff;
}

.rf-static-stats strong {
	display: block;
	font-size: 34px;
	font-weight: 900;
	line-height: 1;
}

.rf-static-stats span {
	display: block;
	margin-top: 8px;
	color: var(--rf-muted);
	font-weight: 700;
}

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

.rf-contact-main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
	gap: 24px;
}

.rf-map-card {
	display: grid;
	min-height: 380px;
	place-items: center;
	align-content: center;
	text-align: center;
	background: var(--rf-surface);
}

.rf-faq-list details summary {
	cursor: pointer;
	font-size: 18px;
	font-weight: 900;
}

.rf-faq-list details p {
	margin-top: 14px;
}

.rf-footer {
	background: var(--rf-primary);
	color: #fff;
}

.rf-footer__grid {
	display: grid;
	grid-template-columns: 1.15fr repeat(3, 1fr);
	gap: 44px;
	padding-block: 64px;
}

.rf-footer__logo {
	display: block;
	margin-bottom: 18px;
	max-height: 60px;
	width: auto;
}

.rf-footer p,
.rf-footer li,
.rf-footer a {
	color: rgba(255, 255, 255, 0.62);
}

.rf-footer p {
	max-width: 310px;
	margin: 0;
	font-size: 14px;
}

.rf-footer h2 {
	margin: 0 0 16px;
	color: #fff;
	font-size: 16px;
}

.rf-footer ul {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
}

.rf-footer a:hover {
	color: #fff;
}

.rf-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.rf-footer__bottom .rf-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-block: 18px;
	color: rgba(255, 255, 255, 0.44);
	font-size: 12px;
}

.rf-footer__bottom div {
	display: flex;
	gap: 18px;
}

.rf-modal,
.rf-filter-backdrop {
	position: fixed;
	inset: 0;
	z-index: 120;
}

.rf-modal[hidden],
.rf-filter-backdrop {
	display: none;
}

.rf-modal__backdrop,
.rf-filter-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(20, 26, 32, 0.52);
	backdrop-filter: blur(6px);
}

.rf-modal__dialog {
	position: relative;
	width: min(100% - 32px, 520px);
	margin: 8vh auto;
	padding: 30px;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 28px 90px rgba(12, 18, 24, 0.3);
}

.rf-modal__close {
	position: absolute;
	top: 14px;
	right: 14px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 50%;
	background: var(--rf-surface);
	color: var(--rf-foreground);
	font-size: 22px;
	cursor: pointer;
}

.rf-modal h2 {
	margin: 0 38px 8px 0;
	font-size: 26px;
}

.rf-modal p {
	margin: 0 0 18px;
	color: var(--rf-muted);
}

.rf-callback-fallback,
.wpcf7 form {
	display: grid;
	gap: 12px;
}

.wpcf7-submit {
	border: 0;
	border-radius: 12px;
	background: var(--rf-accent);
	color: var(--rf-foreground);
	font-weight: 900;
	cursor: pointer;
}

.woocommerce .woocommerce-notices-wrapper,
.woocommerce-notices-wrapper {
	width: min(100% - 32px, var(--rf-container));
	margin: 24px auto 0;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border: 1px solid var(--rf-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 6px 20px rgba(24, 31, 39, 0.05);
}

.woocommerce-account .woocommerce {
	margin: 0;
}

.woocommerce-account .rf-page-content {
	padding-block: 42px 74px;
}

.rf-auth-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
	width: min(100%, 980px);
	margin-inline: auto;
}

.rf-auth-grid--single {
	grid-template-columns: minmax(0, 520px);
	justify-content: center;
}

.rf-auth-card,
.rf-account-panel,
.rf-account-nav {
	border: 1px solid rgba(221, 225, 229, 0.85);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 6px 18px rgba(24, 31, 39, 0.035);
}

.rf-auth-card {
	padding: 32px;
}

.rf-auth-card h2,
.rf-account-panel h2,
.rf-account-panel h3,
.rf-account-form legend {
	margin: 0;
	color: var(--rf-foreground);
	line-height: 1.2;
}

.rf-auth-card h2 {
	margin-bottom: 26px;
	font-size: 26px;
}

.rf-auth-card form,
.rf-account-form {
	display: grid;
	gap: 18px;
}

.rf-auth-card p,
.rf-account-form p {
	margin: 0;
}

.rf-auth-card label,
.rf-account-form label {
	display: block;
	margin-bottom: 8px;
	color: var(--rf-foreground);
	font-weight: 800;
}

.rf-auth-card input.input-text,
.rf-account-form input.input-text,
.rf-account-form select,
.rf-account-form textarea {
	min-height: 52px;
	border-radius: 12px;
	background: #f8f9fb;
	font-size: 16px;
}

.rf-auth-label-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}

.rf-auth-label-row label {
	margin: 0;
}

.rf-auth-label-row a,
.rf-account-panel__head a {
	color: var(--rf-accent-hover);
	font-weight: 700;
	font-size: 14px;
}

.rf-auth-actions {
	display: grid;
	gap: 22px;
}

.rf-auth-card .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: var(--rf-muted);
	font-weight: 500;
}

.rf-auth-card .woocommerce-form-login__rememberme input {
	width: 18px;
	height: 18px;
}

.rf-auth-card .rf-button,
.rf-auth-card .woocommerce-button,
.rf-account-form .rf-button {
	width: 100%;
	min-height: 56px;
	font-size: 18px;
	box-shadow: 0 10px 20px rgba(245, 188, 0, 0.24);
}

.rf-auth-note {
	color: var(--rf-muted);
	font-size: 13px;
	line-height: 1.5;
}

.rf-my-account {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

.rf-account-nav {
	position: sticky;
	top: 104px;
	padding: 16px;
}

.rf-account-nav__user {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 12px 16px;
	border-bottom: 1px solid var(--rf-border);
	margin-bottom: 12px;
	min-width: 0;
}

.rf-account-nav__user > span:last-child {
	min-width: 0;
}

.rf-account-nav__user strong,
.rf-account-nav__user small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.rf-account-nav__user strong {
	font-size: 14px;
}

.rf-account-nav__user small {
	margin-top: 3px;
	color: var(--rf-muted);
	font-size: 13px;
}

.rf-account-nav ul {
	display: grid;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rf-account-nav a {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 44px;
	padding: 10px 14px;
	border-radius: 11px;
	color: var(--rf-muted);
	font-weight: 800;
}

.rf-account-nav a:hover {
	background: var(--rf-surface);
	color: var(--rf-foreground);
}

.rf-account-nav .is-active a,
.rf-account-nav a[aria-current="page"] {
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-account-menu-icon,
.rf-edit-icon,
.rf-account-stat__icon {
	display: inline-block;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	background: currentColor;
	-webkit-mask: var(--rf-icon) center / contain no-repeat;
	mask: var(--rf-icon) center / contain no-repeat;
}

.rf-account-menu-icon--dashboard { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8v8H3V3Zm10 0h8v8h-8V3ZM3 13h8v8H3v-8Zm10 0h8v8h-8v-8Zm-8-8v4h4V5H5Zm10 0v4h4V5h-4ZM5 15v4h4v-4H5Zm10 0v4h4v-4h-4Z'/%3E%3C/svg%3E"); }
.rf-account-menu-icon--orders { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m21 8-9-5-9 5 9 5 9-5Zm-9 7L3 10v6l9 5 9-5v-6l-9 5Z'/%3E%3C/svg%3E"); }
.rf-account-menu-icon--edit-address { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E"); }
.rf-account-menu-icon--edit-account { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5Zm0 2c-4.42 0-8 2.24-8 5v2h16v-2c0-2.76-3.58-5-8-5Z'/%3E%3C/svg%3E"); }
.rf-account-menu-icon--customer-logout { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3H4v18h6v-2H6V5h4V3Zm7.59 5.59L16.17 10H10v2h6.17l1.42 1.41L21 10l-3.41-3.41Z'/%3E%3C/svg%3E"); }
.rf-edit-icon { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 17.25V20h2.75L17.81 8.94l-2.75-2.75L4 17.25ZM19.71 7.04a1 1 0 0 0 0-1.41l-1.34-1.34a1 1 0 0 0-1.41 0l-1.05 1.05 2.75 2.75 1.05-1.05Z'/%3E%3C/svg%3E"); }

.rf-account-content {
	min-width: 0;
}

.rf-account-dashboard {
	display: grid;
	gap: 24px;
}

.rf-account-panel {
	padding: 28px;
}

.rf-account-welcome h2 {
	margin-bottom: 8px;
	font-size: 30px;
}

.rf-account-welcome p,
.rf-account-empty,
.rf-address-card address {
	color: var(--rf-muted);
	line-height: 1.55;
}

.rf-account-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.rf-account-stat {
	display: grid;
	grid-template-columns: 56px 1fr;
	grid-template-rows: auto auto;
	align-items: center;
	gap: 0 16px;
	padding: 20px;
	border: 1px solid rgba(221, 225, 229, 0.85);
	border-radius: 16px;
	background: #fff;
}

.rf-account-stat__icon {
	grid-row: 1 / span 2;
	width: 48px;
	height: 48px;
	border-radius: 13px;
	background: var(--rf-surface);
	color: var(--rf-accent-hover);
	-webkit-mask: none;
	mask: none;
	position: relative;
}

.rf-account-stat__icon::before {
	content: "";
	position: absolute;
	inset: 12px;
	background: currentColor;
	-webkit-mask: var(--rf-icon) center / contain no-repeat;
	mask: var(--rf-icon) center / contain no-repeat;
}

.rf-account-stat__icon.is-orders { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 7V5a5 5 0 0 1 10 0v2h3v14H4V7h3Zm2 0h6V5a3 3 0 0 0-6 0v2Z'/%3E%3C/svg%3E"); }
.rf-account-stat__icon.is-clock { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm1 11h5v-2h-4V6h-2v7Z'/%3E%3C/svg%3E"); }
.rf-account-stat__icon.is-done { --rf-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m10 15.17 7.59-7.58L19 9l-9 9-5-5 1.41-1.41L10 15.17Z'/%3E%3C/svg%3E"); }

.rf-account-stat strong {
	font-size: 30px;
	line-height: 1;
}

.rf-account-stat small {
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.rf-account-panel__head,
.rf-address-card header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
}

.rf-account-panel__title {
	margin: -28px -28px 0;
	padding: 24px 28px;
	border-bottom: 1px solid var(--rf-border);
}

.rf-account-panel__title h2 {
	font-size: 24px;
}

.rf-account-latest-order {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 20px;
	border-radius: 13px;
	background: var(--rf-surface);
}

.rf-account-latest-order strong,
.rf-account-latest-order small {
	display: block;
}

.rf-account-latest-order small {
	margin-top: 4px;
	color: var(--rf-muted);
	font-size: 13px;
}

.rf-order-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 4px 14px;
	border-radius: 999px;
	font-style: normal;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.rf-order-status.is-warning {
	background: rgba(245, 188, 0, 0.15);
	color: #d89500;
}

.rf-order-status.is-success {
	background: rgba(34, 166, 87, 0.14);
	color: var(--rf-success);
}

.rf-order-status.is-muted {
	background: var(--rf-surface);
	color: var(--rf-muted);
}

.rf-orders-table {
	margin: 0 -28px -28px;
}

.rf-orders-table__head,
.rf-orders-table__row {
	display: grid;
	grid-template-columns: minmax(170px, 1fr) 140px 170px 150px 132px;
	gap: 18px;
	align-items: center;
	padding: 16px 28px;
}

.rf-orders-table__head {
	background: var(--rf-surface);
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.rf-orders-table__row {
	border-top: 1px solid var(--rf-border);
	color: var(--rf-muted);
}

.rf-orders-table__row strong,
.rf-orders-table__row b {
	color: var(--rf-foreground);
	font-size: 18px;
}

.rf-account-view-order {
	min-height: 40px;
	padding-inline: 12px;
}

.rf-account-addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.rf-address-card header {
	margin-bottom: 18px;
}

.rf-address-card h2 {
	font-size: 20px;
}

.rf-address-card .rf-button {
	min-height: 42px;
	padding-inline: 12px;
}

.rf-address-card address {
	margin: 0;
	font-style: normal;
}

.rf-account-form {
	max-width: 760px;
}

.rf-address-edit-form {
	max-width: none;
}

.rf-account-form h2 {
	font-size: 24px;
}

.rf-account-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px 24px;
}

.rf-account-form fieldset {
	display: grid;
	gap: 18px;
	margin: 8px 0 0;
	padding: 24px 0 0;
	border: 0;
	border-top: 1px solid var(--rf-border);
}

.rf-account-form legend {
	padding: 0;
	font-size: 16px;
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.rf-account-form__actions .rf-button {
	width: auto;
	padding-inline: 22px;
	font-size: 16px;
}

.rf-account-pagination {
	display: flex;
	gap: 12px;
	margin-top: 20px;
}

.rf-order-detail {
	display: grid;
	gap: 20px;
}

.rf-order-detail__back {
	color: var(--rf-muted);
	font-size: 14px;
	font-weight: 800;
}

.rf-order-detail__back:hover {
	color: var(--rf-foreground);
}

.rf-order-detail__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 24px;
}

.rf-order-detail__head h2 {
	font-size: 28px;
}

.rf-order-detail__head p {
	margin: 6px 0 0;
	color: var(--rf-muted);
}

.rf-order-detail__meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 22px;
}

.rf-order-detail__meta > div {
	padding: 18px;
	border-radius: 13px;
	background: var(--rf-surface);
}

.rf-order-detail__meta small,
.rf-order-detail__meta strong {
	display: block;
}

.rf-order-detail__meta small {
	margin-bottom: 6px;
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.rf-order-detail__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	padding-top: 20px;
	border-top: 1px solid var(--rf-border);
	font-weight: 900;
}

.rf-order-detail__total strong {
	font-size: 28px;
}

.rf-order-detail__native .woocommerce-order-details,
.rf-order-detail__native .woocommerce-customer-details {
	margin: 0;
}

.rf-order-received {
	display: flex;
	justify-content: center;
	padding-block: 44px 74px;
}

.rf-order-received__card {
	width: min(100%, 640px);
	padding: 58px 48px 46px;
	border: 1px solid rgba(221, 225, 229, 0.85);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(24, 31, 39, 0.04);
	text-align: center;
}

.rf-order-received__icon {
	position: relative;
	display: grid;
	place-items: center;
	width: 84px;
	height: 84px;
	margin: 0 auto 30px;
	border-radius: 50%;
	background: rgba(34, 166, 87, 0.1);
	color: var(--rf-success);
}

.rf-order-received__icon::before {
	content: "";
	width: 48px;
	height: 48px;
	border: 5px solid currentColor;
	border-radius: 50%;
}

.rf-order-received__icon::after {
	content: "";
	position: absolute;
	width: 20px;
	height: 11px;
	border-left: 5px solid currentColor;
	border-bottom: 5px solid currentColor;
	transform: rotate(-45deg) translate(2px, -1px);
}

.rf-order-received__icon.is-failed {
	background: rgba(220, 63, 63, 0.1);
	color: var(--rf-danger);
}

.rf-order-received__icon.is-failed::after {
	width: 28px;
	height: 5px;
	border: 0;
	background: currentColor;
	transform: rotate(45deg);
	box-shadow: 0 0 0 0 currentColor;
}

.rf-order-received__icon.is-failed::before {
	position: absolute;
	border: 0;
	width: 28px;
	height: 5px;
	border-radius: 0;
	background: currentColor;
	transform: rotate(-45deg);
}

.rf-order-received__card h1 {
	margin: 0 0 16px;
	font-size: clamp(34px, 4vw, 48px);
	line-height: 1.08;
}

.rf-order-received__card p {
	max-width: 520px;
	margin: 0 auto;
	color: var(--rf-muted);
	font-size: 18px;
	line-height: 1.45;
}

.rf-order-received__card p strong {
	color: var(--rf-foreground);
}

.rf-order-received__summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 34px;
	margin: 42px auto;
	padding: 26px;
	border-radius: 14px;
	background: var(--rf-surface);
	text-align: left;
}

.rf-order-received__summary span,
.rf-order-received__summary strong {
	display: block;
}

.rf-order-received__summary span {
	margin-bottom: 8px;
	color: var(--rf-muted);
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.rf-order-received__summary strong {
	font-size: 17px;
	line-height: 1.25;
}

.rf-order-received__summary div:first-child strong,
.rf-order-received__summary div:last-child strong {
	font-size: 24px;
	font-weight: 900;
}

.rf-order-received__note {
	margin-bottom: 36px !important;
	font-size: 16px !important;
}

.rf-order-received__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.rf-order-received__actions .rf-button {
	min-height: 58px;
	font-size: 18px;
}

.rf-order-received__actions .rf-button--cta {
	box-shadow: 0 12px 22px rgba(245, 188, 0, 0.24);
}

.rf-order-received__hooks {
	display: none;
}

.rf-cart-drawer,
.rf-account-drawer {
	position: fixed;
	inset: 0;
	z-index: 220;
	overflow: hidden;
	pointer-events: none;
	visibility: hidden;
}

.rf-cart-drawer[aria-hidden="true"],
.rf-account-drawer[aria-hidden="true"] {
	display: none;
}

.rf-cart-drawer__backdrop,
.rf-account-drawer__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.78);
	opacity: 0;
	transition: opacity 0.22s ease;
}

.rf-cart-drawer__panel,
.rf-account-drawer__panel {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	width: min(100%, 446px);
	height: 100%;
	background: #f8f9fb;
	box-shadow: -22px 0 70px rgba(10, 14, 20, 0.26);
	transform: translateX(104%);
	transition: transform 0.24s ease;
}

body.rf-cart-drawer-open .rf-cart-drawer,
body.rf-account-drawer-open .rf-account-drawer {
	pointer-events: auto;
	visibility: visible;
}

body.rf-cart-drawer-open .rf-cart-drawer__backdrop,
body.rf-account-drawer-open .rf-account-drawer__backdrop {
	opacity: 1;
}

body.rf-cart-drawer-open .rf-cart-drawer__panel,
body.rf-account-drawer-open .rf-account-drawer__panel {
	transform: none;
}

.rf-cart-drawer__head,
.rf-account-drawer__head {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 76px;
	padding: 20px 24px;
	border-bottom: 1px solid var(--rf-border);
	background: #fff;
}

.rf-cart-drawer__head h2,
.rf-account-drawer__head h2 {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.75rem;
}

.rf-cart-line-icon,
.rf-cart-drawer__empty-icon {
	display: inline-block;
	width: 24px;
	height: 24px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rf-cart-drawer__count {
	margin-left: auto;
	padding-right: 24px;
	color: var(--rf-muted);
	font-size: 14px;
	font-weight: 600;
}

.rf-cart-drawer__close,
.rf-account-drawer__close {
	position: absolute;
	top: 16px;
	right: 14px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 0;
	background: transparent;
	color: var(--rf-muted);
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.rf-cart-drawer__content,
.rf-account-drawer__content {
	display: flex;
	flex: 1;
	min-height: 0;
	flex-direction: column;
}

.rf-account-drawer__content {
	gap: 18px;
	padding: 24px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.rf-account-drawer__content p {
	margin: 0;
	color: var(--rf-muted);
	line-height: 1.6;
}

.rf-account-drawer__content form.login {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	border: 0;
}

.rf-account-drawer__content form.login p {
	margin: 0;
}

.rf-account-drawer__content .woocommerce-form-row {
	display: grid;
	gap: 6px;
}

.rf-account-drawer__content input.input-text {
	width: 100%;
	min-height: 46px;
	border: 1px solid var(--rf-border);
	border-radius: 11px;
	padding: 0 12px;
}

.rf-account-drawer__content .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--rf-muted);
	font-size: 14px;
}

.rf-account-drawer__content .woocommerce-form-login__submit {
	width: 100%;
	min-height: 48px;
}

.rf-account-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px;
	border: 1px solid var(--rf-border);
	border-radius: 14px;
	background: #fff;
}

.rf-account-avatar {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--rf-accent);
	color: var(--rf-foreground);
	font-weight: 900;
}

.rf-account-card strong,
.rf-account-card span {
	display: block;
}

.rf-account-card span {
	margin-top: 3px;
	color: var(--rf-muted);
	font-size: 13px;
}

.rf-account-drawer__buttons {
	display: grid;
	gap: 10px;
}

.rf-account-register {
	color: var(--rf-primary);
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.rf-cart-drawer__items {
	display: grid;
	gap: 16px;
	flex: 1;
	align-content: start;
	overflow-y: auto;
	padding: 22px 24px;
}

.rf-drawer-item {
	display: grid;
	grid-template-columns: 88px 1fr;
	gap: 16px;
	padding: 14px;
	border: 1px solid var(--rf-border);
	border-radius: 14px;
	background: #fff;
}

.rf-drawer-item__media,
.rf-cart-row__image,
.rf-review-item__image {
	display: grid;
	place-items: center;
	border-radius: 12px;
	background: var(--rf-surface);
}

.rf-drawer-item__media {
	width: 88px;
	height: 88px;
}

.rf-drawer-item__media img {
	width: auto;
	max-height: 76px;
	object-fit: contain;
}

.rf-cart-row__image img,
.rf-review-item__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 0;
}

.rf-drawer-item__body {
	min-width: 0;
}

.rf-drawer-item h3 {
	margin: 2px 0 6px;
	font-size: 14px;
	line-height: 1.35;
	font-weight: 600;
}

.rf-drawer-item__price {
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 900;
}

.rf-drawer-item__actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.rf-qty-stepper {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.rf-qty-stepper button,
.rf-cart-remove {
	display: grid;
	place-items: center;
	border: 1px solid var(--rf-border);
	border-radius: 10px;
	background: #fff;
	color: var(--rf-foreground);
	font-weight: 800;
	cursor: pointer;
	transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.rf-qty-stepper button:hover,
.rf-cart-remove:hover {
	border-color: #c9ced5;
	background: var(--rf-surface);
}

.rf-qty-stepper button:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.rf-qty-stepper span,
.rf-qty-stepper input {
	display: grid;
	place-items: center;
	width: 30px;
	min-width: 30px;
	border: 0;
	background: transparent;
	color: var(--rf-foreground);
	text-align: center;
	font-weight: 400;
	font-size: 14px;
}

.rf-qty-stepper input {
	height: 34px;
	appearance: textfield;
}

.rf-qty-stepper input::-webkit-outer-spin-button,
.rf-qty-stepper input::-webkit-inner-spin-button {
	margin: 0;
	appearance: none;
}

.rf-cart-remove {
	margin-left: auto;
	border-color: transparent;
	color: var(--rf-muted);
	transition: color 0.18s ease, background-color 0.18s ease;
}

.rf-cart-remove:hover {
	color: var(--rf-danger) !important;
	background: rgba(220, 63, 63, 0.08) !important;
	border-color: transparent !important;
}

.rf-cart-remove::before {
	content: "";
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rf-cart-drawer__footer {
	display: grid;
	gap: 16px;
	padding: 22px 24px;
	border-top: 1px solid var(--rf-border);
	background: #fff;
}

.rf-cart-drawer__total,
.rf-cart-summary__pay,
.rf-review-total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 18px;
}

.rf-cart-drawer__total span,
.rf-cart-summary__pay span {
	color: var(--rf-muted);
}

.rf-cart-drawer__total strong {
	font-size: 28px;
	font-weight: 900;
}
.rf-cart-drawer__total .woocommerce-Price-amount {
	color: var(--rf-foreground);
	font-size: 1.25rem;
	line-height: 1.75rem;
}

.rf-cart-summary__pay strong,
.rf-review-total__amount {
	font-size: 24px;
	font-weight: 900;
}

.rf-review-total__label {
	font-size: 16px;
	color: var(--rf-foreground);
}

.rf-review-total__amount {
	color: var(--rf-foreground);
}

.rf-cart-drawer__buttons {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.rf-cart-drawer__continue,
.rf-cart-summary__continue {
	border: 0;
	background: transparent;
	color: var(--rf-muted);
	text-align: center;
	font-weight: 400;
	font-size: 14px;
	cursor: pointer;
}

.rf-cart-drawer__empty,
.rf-cart-empty {
	display: grid;
	place-items: center;
	align-content: center;
	gap: 16px;
	min-height: 320px;
	padding: 40px 24px;
	text-align: center;
}

.rf-cart-drawer__empty-icon {
	width: 64px;
	height: 64px;
	padding: 16px;
	border-radius: 50%;
	background: var(--rf-muted);
	box-shadow: inset 0 0 0 18px var(--rf-surface);
}

.rf-commerce-layout,
.rf-checkout-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 34px;
	align-items: start;
}

.rf-checkout-grid {
	grid-template-columns: minmax(0, 1fr) 465px;
}

.rf-cart-table-card,
.rf-cart-summary,
.rf-checkout-card,
.rf-checkout-summary {
	border: 1px solid rgba(221, 225, 229, 0.9);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(24, 31, 39, 0.04);
}

.rf-cart-table-card {
	overflow: hidden;
}

.rf-cart-table-head {
	display: grid;
	grid-template-columns: minmax(260px, 1fr) 120px 150px 120px 36px;
	gap: 16px;
	padding: 14px 24px;
	background: var(--rf-surface);
	border-bottom: 1px solid var(--rf-border);
	color: var(--rf-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.rf-cart-row {
	display: grid;
	grid-template-columns: minmax(260px, 1fr) 120px 150px 120px 36px;
	align-items: center;
	gap: 16px;
	padding: 18px 24px;
	border-bottom: 1px solid var(--rf-border);
}

.rf-cart-row:last-child {
	border-bottom: 0;
}

.rf-cart-row__product {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 16px;
}

.rf-cart-row__image {
	width: 80px;
	height: 80px;
	flex: 0 0 auto;
	border-radius: 10px;
	overflow: hidden;
}

.rf-cart-row__name {
	min-width: 0;
	font-size: 14px;
	font-weight: 600;
}

.rf-cart-row__name > a {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: var(--rf-foreground);
	transition: color 0.18s ease;
}

.rf-cart-row__name > a:hover {
	color: var(--rf-accent);
}

.rf-cart-row__price,
.rf-cart-row__subtotal {
	text-align: right;
	font-size: 14px;
	font-weight: 500;
}

.rf-cart-row__subtotal {
	font-size: 16px;
	font-weight: 700;
}

.rf-cart-row__qty {
	display: flex;
	justify-content: center;
}

.rf-cart-page__actions {
	display: none;
}

.rf-cart-summary,
.rf-checkout-summary {
	position: sticky;
	top: 118px;
	display: grid;
	gap: 22px;
	padding: 28px;
}

.rf-cart-summary h2,
.rf-checkout-summary h2,
.rf-checkout-card h2 {
	margin: 0;
	font-size: 1.2rem;
}

.rf-cart-summary__lines,
.rf-review-totals {
	display: grid;
	gap: 12px;
	font-size: 14px;
	color: var(--rf-muted);
}

.rf-cart-summary__lines > div,
.rf-review-totals > div {
	display: flex;
	justify-content: space-between;
	gap: 16px;
}

.rf-cart-summary__lines strong,
.rf-review-totals strong {
	color: var(--rf-foreground);
	font-style: normal;
}

.rf-cart-summary__lines em,
.rf-review-totals em {
	font-style: normal;
}

/* Promo code temporarily hidden — not needed yet */
.rf-coupon,
.rf-review-coupon {
	display: none !important;
}

.rf-coupon label {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 10px;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
}

.rf-coupon label::before {
	content: "";
	width: 15px;
	height: 15px;
	background: var(--rf-accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.59 13.41 11 3H4v7l9.59 9.59a2 2 0 0 0 2.82 0l4.18-4.18a2 2 0 0 0 0-2.82Z'/%3E%3Cpath d='M7 7h.01'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.59 13.41 11 3H4v7l9.59 9.59a2 2 0 0 0 2.82 0l4.18-4.18a2 2 0 0 0 0-2.82Z'/%3E%3Cpath d='M7 7h.01'/%3E%3C/svg%3E") center / contain no-repeat;
}

.rf-coupon > div,
.rf-review-coupon {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 10px;
}

.rf-coupon input,
.rf-review-coupon input,
.rf-checkout-layout input.input-text,
.rf-checkout-layout textarea,
.rf-checkout-layout select {
	width: 100%;
	min-height: 46px;
	border: 1px solid var(--rf-border);
	border-radius: 12px;
	background: #fbfbfc;
	color: var(--rf-foreground);
	font-size: 14px;
	padding: 0 16px;
	outline: none;
	transition: border-color 0.18s ease;
}

.rf-checkout-layout input.input-text::placeholder,
.rf-checkout-layout textarea::placeholder {
	color: var(--rf-muted);
}

.rf-checkout-layout input.input-text:focus,
.rf-checkout-layout textarea:focus,
.rf-checkout-layout select:focus {
	border-color: var(--rf-foreground);
}

.rf-checkout-layout textarea {
	min-height: 104px;
	padding-block: 14px;
}

.rf-cart-summary__pay,
.rf-review-total {
	padding-top: 18px;
	border-top: 1px solid var(--rf-border);
}

.rf-cart-summary__checkout {
	width: 100%;
	box-shadow: 0 12px 24px rgba(245, 188, 0, 0.28);
}

.rf-checkout-layout {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.rf-checkout-main {
	display: grid;
	gap: 26px;
}

.rf-checkout-card {
	padding: 28px;
}

.rf-checkout-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 22px;
	margin-top: 22px;
}

.rf-checkout-fields .form-row {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.rf-checkout-fields .form-row-wide {
	grid-column: 1 / -1;
}

.rf-checkout-layout label {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 8px;
	font-weight: 800;
	font-size: 14px;
}

.rf-delivery-options {
	display: grid;
	gap: 10px;
	margin-top: 22px;
}

.rf-delivery-option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px;
	border: 2px solid var(--rf-border);
	border-radius: 14px;
	cursor: pointer;
	transition: border-color 0.18s ease, background-color 0.18s ease;
}

.rf-delivery-option__body {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.rf-delivery-option:hover {
	border-color: #c9ced5;
}

.rf-delivery-option input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.rf-delivery-option__icon {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: var(--rf-surface);
	color: var(--rf-muted);
	transition: background-color 0.18s ease, color 0.18s ease;
}

.rf-delivery-option__icon::before {
	content: "";
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: var(--rf-delivery-icon) center / contain no-repeat;
	mask: var(--rf-delivery-icon) center / contain no-repeat;
}

.rf-delivery-option__radio {
	width: 18px;
	height: 18px;
	border: 2px solid var(--rf-border);
	border-radius: 50%;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.rf-delivery-option:has(input:checked) {
	border-color: var(--rf-accent);
	background: rgba(245, 188, 0, 0.08);
}

.rf-delivery-option:has(input:checked) .rf-delivery-option__icon {
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-delivery-option:has(input:checked) .rf-delivery-option__radio {
	border-color: var(--rf-accent);
	background: var(--rf-accent);
	box-shadow: inset 0 0 0 4px #fff;
}

.rf-delivery-option:has(input:focus-visible) {
	border-color: var(--rf-accent);
}

.rf-delivery-options__text {
	min-width: 0;
}

.rf-delivery-options strong {
	display: block;
	font-size: 15px;
}

.rf-delivery-options small {
	display: block;
	margin-top: 2px;
	color: var(--rf-muted);
	font-weight: 600;
}

.rf-review-items {
	display: grid;
	gap: 12px;
	max-height: 290px;
	overflow-y: auto;
}

.rf-review-item {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
}

.rf-review-item__image {
	width: 58px;
	height: 58px;
}

.rf-review-item__image img {
	max-height: 48px;
}

.rf-review-item__body {
	min-width: 0;
}

.rf-review-item__body strong {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 14px;
	font-weight: 600;
}

.rf-review-item__body span,
.rf-review-totals span {
	color: var(--rf-muted);
	font-size: 14px;
}

.rf-review-item__total {
	font-weight: 600;
	font-size: 14px;
	white-space: nowrap;
}

.rf-review-totals span.rf-review-total__label {
	font-size: 16px;
	color: var(--rf-foreground);
	font-weight: 600;
}

.rf-review-totals strong.rf-review-total__amount bdi,
.rf-review-totals strong.rf-review-total__amount bdi .woocommerce-Price-currencySymbol {
	font-size: 1.5rem;
    line-height: 2rem;
	color: var(--rf-foreground);
	font-weight: 900;
}

.rf-review-order {
	display: grid;
	gap: 20px;
}

.rf-checkout-payment-card #payment {
	margin-top: 22px;
	background: transparent;
}

.rf-checkout-layout #payment ul.payment_methods {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method {
	margin: 0;
	padding: 0;
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method > label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px;
	border: 2px solid var(--rf-border);
	border-radius: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: border-color 0.18s ease, background-color 0.18s ease;
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method > label:hover {
	border-color: #c9ced5;
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method > input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.rf-payment-method__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: var(--rf-surface);
	color: var(--rf-muted);
	transition: background-color 0.18s ease, color 0.18s ease;
}

.rf-payment-method__icon::before {
	content: "";
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: var(--rf-payment-icon) center / contain no-repeat;
	mask: var(--rf-payment-icon) center / contain no-repeat;
}

.rf-payment-method__text {
	flex: 1 1 auto;
	min-width: 0;
}

.rf-payment-method__text img {
	max-height: 24px;
	margin-left: 8px;
	vertical-align: middle;
}

.rf-payment-method__radio {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	border: 2px solid var(--rf-border);
	border-radius: 50%;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method:has(input:checked) > label {
	border-color: var(--rf-accent);
	background: rgba(245, 188, 0, 0.08);
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method:has(input:checked) .rf-payment-method__icon {
	background: var(--rf-accent);
	color: var(--rf-foreground);
}

.rf-checkout-layout #payment ul.payment_methods li.wc_payment_method:has(input:checked) .rf-payment-method__radio {
	border-color: var(--rf-accent);
	background: var(--rf-accent);
	box-shadow: inset 0 0 0 4px #fff;
}

.rf-checkout-layout #payment div.payment_box {
	position: relative;
	margin: 8px 0 0;
	padding: 12px 14px;
	border-radius: 12px;
	background: var(--rf-surface);
	color: var(--rf-muted);
	font-size: 13px;
	line-height: 1.5;
}

.rf-checkout-layout #payment div.payment_box::before {
	display: none;
}

.rf-checkout-summary .rf-place-order {
	margin: 16px 0 0;
	padding: 0;
}

.rf-checkout-summary .woocommerce-privacy-policy-text {
	margin: 0 0 16px;
	font-size: 13px;
	line-height: 1.55;
	color: var(--rf-muted);
}

.rf-checkout-summary #place_order {
	width: 100%;
	min-height: 58px;
	font-size: 18px;
	box-shadow: 0 12px 24px rgba(245, 188, 0, 0.28);
}

.woocommerce table.shop_table {
	border: 1px solid var(--rf-border);
	border-radius: 14px;
	overflow: hidden;
}

.woocommerce table.shop_table th {
	background: var(--rf-surface);
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #payment #place_order {
	border: 0;
	border-radius: 12px;
	background: var(--rf-accent);
	color: var(--rf-foreground);
	font-weight: 900;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #payment #place_order:hover {
	background: var(--rf-accent-hover);
	color: var(--rf-foreground);
}

.rf-reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.55s ease, transform 0.55s ease;
}

.rf-reveal.is-visible {
	opacity: 1;
	transform: none;
}

.rf-hero .rf-reveal,
.rf-catalog .rf-reveal {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	* {
		animation-duration: 0.001ms !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}
	.rf-reveal {
		opacity: 1;
		transform: none;
	}
}

@media (max-width: 1120px) {
	.rf-product-grid,
	.rf-product-grid--catalog,
	.rf-product-grid--4col,
	.rf-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rf-product-detail {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.rf-product-description--desktop { display: none; }
	.rf-product-description--mobile  { display: block; }

	.rf-commerce-layout,
	.rf-checkout-grid {
		grid-template-columns: 1fr;
	}

	.rf-cart-summary,
	.rf-checkout-summary {
		position: static;
	}

	.rf-orders-table__head,
	.rf-orders-table__row {
		grid-template-columns: minmax(160px, 1fr) 110px 140px 120px 118px;
		gap: 12px;
	}

	.rf-account-stats {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 900px) {
	.rf-header-search,
	.rf-desktop-nav,
	.rf-header-callback,
	.rf-topbar-nav {
		display: none;
	}

	.rf-my-account,
	.rf-auth-grid {
		grid-template-columns: 1fr;
	}

	.rf-account-nav {
		position: static;
	}

	.rf-account-addresses,
	.rf-order-detail__meta {
		grid-template-columns: 1fr;
	}

	.rf-orders-table__head {
		display: none;
	}

	.rf-orders-table__row {
		grid-template-columns: 1fr;
		gap: 10px;
		align-items: start;
	}

	.rf-orders-table__row > span,
	.rf-orders-table__row > b {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
	}

	.rf-orders-table__row > span:nth-child(2)::before {
		content: "Дата";
		color: var(--rf-muted);
		font-size: 12px;
		font-weight: 900;
		text-transform: uppercase;
	}

	.rf-orders-table__row > span:nth-child(3)::before {
		content: "Статус";
		color: var(--rf-muted);
		font-size: 12px;
		font-weight: 900;
		text-transform: uppercase;
	}

	.rf-orders-table__row > b::before {
		content: "Сума";
		color: var(--rf-muted);
		font-size: 12px;
		font-weight: 900;
		text-transform: uppercase;
	}

	.rf-mobile-toggle {
		display: block;
	}

	.rf-hero__inner {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.rf-services,
	.rf-stat-grid,
	.rf-static-stats,
	.rf-contact-grid,
	.rf-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rf-catalog__layout {
		display: block;
	}

	.rf-filter-toggle {
		display: inline-flex;
	}

	.rf-filter-panel {
		position: fixed;
		inset: 0 auto 0 0;
		z-index: 130;
		width: min(86vw, 360px);
		height: 100vh;
		height: 100dvh;
		max-height: 100vh;
		max-height: 100dvh;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		border-radius: 0;
		transform: translateX(-105%);
		transition: transform 0.24s ease;
	}

	.rf-filter-actions {
		top: 0;
		margin-right: -22px;
		margin-left: -22px;
		padding: 12px 22px 14px;
	}

	body.rf-filter-open .rf-filter-panel {
		transform: none;
	}

	body.rf-filter-open .rf-filter-backdrop {
		display: block;
	}

	.rf-filter-panel__head button {
		display: grid;
		place-items: center;
		width: 34px;
		height: 34px;
		border: 0;
		border-radius: 50%;
		background: var(--rf-surface);
		font-size: 22px;
	}

	.rf-cart-table-head {
		display: none;
	}

	.rf-cart-row {
		grid-template-columns: 1fr auto;
		gap: 14px;
	}

	.rf-cart-row__product {
		grid-column: 1 / -1;
	}

	.rf-cart-row__price,
	.rf-cart-row__qty,
	.rf-cart-row__subtotal {
		text-align: left;
		justify-content: flex-start;
	}

	.rf-cart-row__price::before,
	.rf-cart-row__subtotal::before {
		display: block;
		margin-bottom: 4px;
		color: var(--rf-muted);
		font-size: 12px;
		font-weight: 800;
		text-transform: uppercase;
	}

	.rf-cart-row__price::before {
		content: "Ціна";
	}

	.rf-cart-row__subtotal::before {
		content: "Сума";
	}
}

@media (max-width: 680px) {
	.rf-container {
		width: min(100% - 24px, var(--rf-container));
	}

	.rf-order-received {
		padding-block: 28px 54px;
	}

	.rf-order-received__card {
		padding: 38px 22px 28px;
	}

	.rf-order-received__summary,
	.rf-order-received__actions {
		grid-template-columns: 1fr;
	}

	.rf-order-received__summary {
		gap: 18px;
		margin-block: 30px;
	}

	.rf-order-received__card p {
		font-size: 16px;
	}

	.woocommerce-account .rf-page-content {
		padding-block: 28px 54px;
	}

	.rf-auth-card,
	.rf-account-panel {
		padding: 22px;
	}

	.rf-account-panel__title {
		margin: -22px -22px 0;
		padding: 20px 22px;
	}

	.rf-orders-table {
		margin: 0 -22px -22px;
	}

	.rf-orders-table__row {
		padding: 18px 22px;
	}

	.rf-account-form__grid {
		grid-template-columns: 1fr;
	}

	.rf-account-form__actions .rf-button,
	.rf-auth-card .rf-button,
	.rf-auth-card .woocommerce-button {
		width: 100%;
	}

	.rf-account-welcome h2,
	.rf-order-detail__head h2 {
		font-size: 24px;
	}

	.rf-order-detail__head,
	.rf-account-latest-order,
	.rf-address-card header {
		align-items: flex-start;
		flex-direction: column;
	}

	.rf-topbar__hours {
		display: none;
	}

	.rf-mainbar {
		min-height: 60px;
		gap: 12px;
	}

	.rf-logo img {
		max-height: 34px;
	}

	.rf-hero {
		min-height: auto;
	}

	.rf-hero__inner {
		padding-block: 56px;
	}

	.rf-hero h1 {
		font-size: 42px;
	}

	.rf-finder {
		padding: 22px;
	}

	.rf-finder__grid,
	.rf-product-grid,
	.rf-product-grid--catalog,
	.rf-product-grid--4col,
	.rf-post-grid,
	.rf-services,
	.rf-stat-grid,
	.rf-static-stats,
	.rf-feature-grid,
	.rf-contact-grid,
	.rf-contact-main,
	.rf-footer__grid {
		grid-template-columns: 1fr;
	}

	.rf-section {
		padding-block: 62px;
	}

	.rf-catalog__toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	.rf-sort {
		grid-template-columns: 1fr;
	}

	.rf-product-gallery__main {
		min-height: 340px;
		padding: 22px;
	}

	.rf-product-actions,
	.rf-single-cart {
		flex-direction: column;
	}

	.rf-single-cart .quantity input {
		width: 100%;
	}

	.rf-specs__table div {
		display: grid;
		gap: 3px;
	}

	.rf-footer__bottom .rf-container,
	.rf-footer__bottom div {
		align-items: flex-start;
		flex-direction: column;
	}

	.rf-cart-drawer__panel,
	.rf-account-drawer__panel {
		width: 100%;
	}

	.rf-cart-drawer__items {
		padding-inline: 14px;
	}

	.rf-drawer-item {
		grid-template-columns: 76px 1fr;
		gap: 12px;
	}

	.rf-drawer-item__media {
		width: 76px;
		height: 76px;
	}

	.rf-cart-drawer__footer,
	.rf-cart-drawer__head,
	.rf-account-drawer__head,
	.rf-cart-summary,
	.rf-checkout-summary,
	.rf-checkout-card {
		padding-inline: 18px;
	}

	.rf-account-drawer__content {
		padding-inline: 18px;
	}

	.rf-cart-drawer__buttons,
	.rf-coupon > div,
	.rf-review-coupon,
	.rf-checkout-fields {
		grid-template-columns: 1fr;
	}

	.rf-cart-row {
		padding: 18px;
	}

	.rf-cart-row__product {
		align-items: flex-start;
	}

	.rf-cart-row__image {
		width: 74px;
		height: 74px;
	}

	.rf-review-item {
		grid-template-columns: 52px minmax(0, 1fr);
	}

	.rf-review-item__total {
		grid-column: 2;
	}
}
