:root {
	--fb-ui-navy-950: #071423;
	--fb-ui-navy-900: #0d1d32;
	--fb-ui-navy-800: #142a47;
	--fb-ui-steel-700: #344760;
	--fb-ui-steel-600: #526176;
	--fb-ui-steel-200: #d9e0e8;
	--fb-ui-steel-100: #e9edf2;
	--fb-ui-steel-50: #f5f7f9;
	--fb-ui-warm: #f8f7f3;
	--fb-ui-paper: #ffffff;
	--fb-ui-ink: #17243a;
	--fb-ui-red: #bd252f;
	--fb-ui-red-dark: #981b24;
	--fb-ui-red-soft: #fff0f1;
	--fb-ui-green: #087746;
	--fb-ui-green-dark: #055e36;
	--fb-ui-radius-sm: 10px;
	--fb-ui-radius-md: 16px;
	--fb-ui-radius-lg: 24px;
	--fb-ui-shadow-sm: 0 8px 24px rgba(7, 20, 35, 0.08);
	--fb-ui-shadow-lg: 0 24px 70px rgba(7, 20, 35, 0.14);
	--fb-ui-container: 1240px;
	--fb-ui-mobile-bar-height: 72px;
}

/* Foundation */
body.fb-ui-v2 {
	color: var(--fb-ui-ink);
	background: var(--fb-ui-warm);
	font-family: "وزیر", "Vazirmatn", Tahoma, sans-serif;
	font-synthesis: none;
}

body.fb-ui-v2 *,
body.fb-ui-v2 *::before,
body.fb-ui-v2 *::after {
	box-sizing: border-box;
}

body.fb-ui-v2 :where(button, input, textarea, select) {
	font: inherit;
}

body.fb-ui-v2 :where(img, svg, video) {
	max-inline-size: 100%;
}

body.fb-ui-v2 :where(main, [role="main"], .e-con, .e-con-inner, .elementor-widget, .elementor-widget-container, .fbcs-product-card, .fbcs-card-body) {
	min-inline-size: 0;
}

body.fb-ui-v2 :where(main, [role="main"]) :where(h1, h2, h3, h4),
body.fb-ui-v2 :where(.elementor-location-single, .elementor-location-archive) :where(h1, h2, h3, h4) {
	letter-spacing: 0 !important;
	word-break: normal;
	overflow-wrap: anywhere;
	text-wrap: pretty;
}

body.fb-ui-v2 :where(main, [role="main"]) h1 {
	font-size: clamp(1.75rem, 3.2vw, 2.625rem) !important;
	line-height: 1.48 !important;
}

body.fb-ui-v2 :where(main, [role="main"]) h2 {
	font-size: clamp(1.375rem, 2.25vw, 2rem) !important;
	line-height: 1.58 !important;
}

body.fb-ui-v2 :where(main, [role="main"]) h3 {
	line-height: 1.62 !important;
}

body.fb-ui-v2 :where(a, button, summary, input, textarea, select):focus-visible {
	outline: 3px solid #2978d4 !important;
	outline-offset: 3px;
}

body.fb-ui-v2 :where(a, button, summary) {
	-webkit-tap-highlight-color: transparent;
}

body.fb-ui-v2 :where(code, pre, bdi, [dir="ltr"]) {
	unicode-bidi: isolate;
}

.fb-skip-target {
	display: block;
	block-size: 0;
	scroll-margin-top: 118px;
}

/* Shared icon language */
.fb-icon {
	flex: 0 0 auto;
	inline-size: 22px;
	block-size: 22px;
}

/* Header shell */
.fb-ui-v2 .elementor-location-header {
	position: sticky;
	z-index: 10000;
	top: 0;
	overflow: visible;
}

.fb-ui-v2.admin-bar .elementor-location-header {
	top: 32px;
}

.fbh {
	position: relative;
	isolation: isolate;
	inline-size: 100%;
	color: var(--fb-ui-ink);
	direction: rtl;
}

.fbh a {
	text-decoration: none;
}

.fbh-container {
	inline-size: min(100% - 36px, var(--fb-ui-container));
	margin-inline: auto;
}

.fbh-rail {
	min-block-size: 30px;
	border-block-end: 1px solid rgba(255, 255, 255, 0.08);
	color: #e8eef7;
	background:
		linear-gradient(90deg, rgba(189, 37, 47, 0.2), transparent 26%),
		var(--fb-ui-navy-950);
	font-size: 12.5px;
}

.fbh-rail-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-block-size: 30px;
	gap: 24px;
}

.fbh-rail-proof {
	display: flex;
	align-items: center;
	gap: 24px;
}

.fbh-rail :where(span, a) {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: inherit;
}

.fbh-rail .fb-icon {
	inline-size: 15px;
	block-size: 15px;
	color: #ff737b;
}

.fbh-rail a {
	min-block-size: 28px;
}

.fbh-main {
	border-block-end: 1px solid rgba(13, 29, 50, 0.1);
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 7px 24px rgba(7, 20, 35, 0.06);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
}

.fbh-main-inner {
	display: flex;
	align-items: center;
	min-block-size: 74px;
	gap: clamp(12px, 1.8vw, 25px);
}

.fbh-brand {
	display: inline-flex;
	flex: 0 1 auto;
	align-items: center;
	min-inline-size: 205px;
	gap: 10px;
	color: var(--fb-ui-ink);
}

.fbh-logo {
	position: relative;
	display: grid;
	flex: 0 0 48px;
	inline-size: 48px;
	block-size: 48px;
	place-items: center;
	border: 1px solid var(--fb-ui-steel-100);
	border-radius: 14px;
	background: var(--fb-ui-paper);
	box-shadow: 0 5px 18px rgba(7, 20, 35, 0.08);
}

.fbh-logo::after {
	content: "";
	position: absolute;
	inset-block-end: -1px;
	inset-inline-start: 8px;
	inline-size: 18px;
	block-size: 3px;
	border-radius: 999px;
	background: var(--fb-ui-red);
}

.fbh-logo img {
	display: block;
	inline-size: 42px;
	block-size: 42px;
	object-fit: contain;
}

.fbh-brand-copy {
	display: grid;
	gap: 2px;
}

.fbh-brand-copy strong {
	color: var(--fb-ui-navy-900);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
	white-space: nowrap;
}

.fbh-brand-copy small {
	color: var(--fb-ui-steel-600);
	font-size: 11.5px;
	font-weight: 500;
	line-height: 1.45;
	white-space: nowrap;
}

.fbh-panel {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	min-inline-size: 0;
}

.fbh-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
}

.fbh-link,
.fbh-products > summary {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 44px;
	padding: 10px 10px;
	border-radius: 10px;
	color: var(--fb-ui-navy-900);
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1.5;
	white-space: nowrap;
	cursor: pointer;
	transition: color 160ms ease, background-color 160ms ease;
}

.fbh-link::after,
.fbh-products > summary::after {
	content: "";
	position: absolute;
	inset-inline: 12px;
	inset-block-end: 3px;
	block-size: 2px;
	border-radius: 999px;
	background: var(--fb-ui-red);
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 180ms ease;
}

.fbh-link:hover,
.fbh-link:focus-visible,
.fbh-products > summary:hover,
.fbh-products > summary:focus-visible {
	color: var(--fb-ui-red-dark);
	background: var(--fb-ui-red-soft);
}

.fbh-link:hover::after,
.fbh-link:focus-visible::after,
.fbh-link[aria-current="page"]::after,
.fbh-products.is-current > summary::after {
	transform: scaleX(1);
}

.fbh-link[aria-current="page"],
.fbh-products.is-current > summary {
	color: var(--fb-ui-red-dark);
}

.fbh-products {
	position: relative;
}

.fbh-products > summary {
	gap: 6px;
	list-style: none;
}

.fbh-products > summary::-webkit-details-marker {
	display: none;
}

.fbh-products > summary .fb-icon {
	inline-size: 16px;
	block-size: 16px;
	transition: transform 180ms ease;
}

.fbh-products[open] > summary .fb-icon {
	transform: rotate(180deg);
}

.fbh-subnav {
	position: absolute;
	z-index: 20;
	inset-block-start: calc(100% + 10px);
	inset-inline-start: 0;
	display: grid;
	inline-size: 350px;
	padding: 10px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: var(--fb-ui-radius-md);
	background: var(--fb-ui-paper);
	box-shadow: var(--fb-ui-shadow-lg);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity 180ms ease, transform 180ms ease, visibility 180ms;
}

.fbh-products[open] .fbh-subnav {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.fbh-subnav a {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	min-block-size: 62px;
	padding: 8px;
	border-radius: 12px;
	color: var(--fb-ui-ink);
	gap: 10px;
	transition: color 150ms ease, background-color 150ms ease;
}

.fbh-subnav a:hover,
.fbh-subnav a:focus-visible {
	color: var(--fb-ui-red-dark);
	background: var(--fb-ui-steel-50);
}

.fbh-subnav a > span:first-child {
	display: grid;
	inline-size: 42px;
	block-size: 42px;
	place-items: center;
	border: 1px solid var(--fb-ui-steel-100);
	border-radius: 11px;
	color: var(--fb-ui-red);
	background: var(--fb-ui-paper);
}

.fbh-subnav a > span:last-child {
	display: grid;
	gap: 2px;
}

.fbh-subnav strong {
	font-size: 13.5px;
	font-weight: 800;
}

.fbh-subnav small {
	color: var(--fb-ui-steel-600);
	font-size: 11.5px;
	line-height: 1.55;
}

.fbh-actions {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 7px;
}

.fbh-action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 46px;
	border-radius: 12px;
	gap: 8px;
	font-size: 13px;
	font-weight: 800;
	transition: transform 150ms ease, background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

.fbh-action:hover,
.fbh-action:focus-visible {
	transform: translateY(-1px);
}

.fbh-action-whatsapp {
	min-inline-size: 104px;
	padding-inline: 13px;
	border: 1px solid #8bc4a8;
	color: var(--fb-ui-green-dark);
	background: #f2fbf6;
}

.fbh-action-whatsapp:hover,
.fbh-action-whatsapp:focus-visible {
	border-color: var(--fb-ui-green);
	background: #e6f7ed;
}

.fbh-action-phone {
	min-inline-size: 165px;
	padding: 7px 12px;
	color: #fff;
	background: var(--fb-ui-red);
	box-shadow: 0 8px 20px rgba(189, 37, 47, 0.22);
}

.fbh-action-phone:hover,
.fbh-action-phone:focus-visible {
	background: var(--fb-ui-red-dark);
	box-shadow: 0 10px 26px rgba(152, 27, 36, 0.28);
}

.fbh-action-phone > span {
	display: grid;
	gap: 1px;
}

.fbh-action-phone small {
	color: #fff;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.25;
	opacity: 0.92;
}

.fbh-action-phone bdi {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.25;
}

.fbh-toggle,
.fbh-drawer-head,
.fbh-drawer-actions,
.fbh-overlay {
	display: none;
}

/* Footer shell */
.fb-ui-v2 .elementor-location-footer {
	inline-size: 100% !important;
	max-inline-size: none !important;
	margin-inline: 0 !important;
	overflow: visible !important;
}

.fb-ui-v2 .elementor-location-footer::before {
	content: none !important;
}

.fb-ui-v2 .elementor-location-footer > .e-con,
.fb-ui-v2 .elementor-location-footer > .e-con > .e-con-inner,
.fb-ui-v2 .elementor-location-footer .elementor-widget-html,
.fb-ui-v2 .elementor-location-footer .elementor-widget-html > .elementor-widget-container {
	inline-size: 100% !important;
	max-inline-size: none !important;
	margin-inline: 0 !important;
	padding-inline: 0 !important;
}

.fbf {
	position: relative;
	inline-size: 100%;
	margin-block-start: clamp(54px, 7vw, 96px);
	color: #dfe7f1;
	background:
		linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
		var(--fb-ui-navy-950);
	background-size: 32px 32px;
}

.fbf::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	block-size: 4px;
	background: linear-gradient(90deg, var(--fb-ui-red) 0 18%, #61758e 18% 28%, transparent 28%);
}

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

.fbf-container {
	inline-size: min(100% - 36px, var(--fb-ui-container));
	margin-inline: auto;
}

.fbf-cta-wrap {
	border-block-end: 1px solid rgba(255, 255, 255, 0.09);
	background: linear-gradient(115deg, rgba(189, 37, 47, 0.14), transparent 46%);
}

.fbf-cta {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(390px, 0.85fr);
	align-items: center;
	min-block-size: 184px;
	padding-block: 34px;
	gap: clamp(28px, 5vw, 70px);
}

.fbf-cta-copy {
	max-inline-size: 660px;
}

.fbf-kicker {
	display: inline-flex;
	align-items: center;
	min-block-size: 28px;
	padding-inline: 10px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	color: #ff9ca2;
	font-size: 12px;
	font-weight: 700;
}

.fbf-cta h2 {
	margin: 8px 0 4px;
	color: #fff;
	font-size: clamp(1.5rem, 2.6vw, 2.25rem) !important;
	line-height: 1.5 !important;
}

.fbf-cta p {
	margin: 0;
	color: #bac7d6;
	font-size: 14px;
	line-height: 1.9;
}

.fbf-cta-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.fbf-cta-actions a {
	display: flex;
	align-items: center;
	min-block-size: 68px;
	padding: 12px 14px;
	border-radius: 15px;
	gap: 10px;
	transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.fbf-cta-actions a:hover,
.fbf-cta-actions a:focus-visible {
	transform: translateY(-2px);
}

.fbf-cta-actions a > span {
	display: grid;
	gap: 2px;
}

.fbf-cta-actions small {
	font-size: 11px;
	font-weight: 500;
}

.fbf-cta-actions :where(strong, bdi) {
	font-size: 13px;
	font-weight: 800;
}

.fbf-call {
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff;
	background: rgba(255, 255, 255, 0.07);
}

.fbf-call small {
	color: #c4cfdb;
}

.fbf-whatsapp {
	border: 1px solid rgba(80, 196, 137, 0.35);
	color: #fff;
	background: rgba(8, 119, 70, 0.38);
}

.fbf-whatsapp small {
	color: #aee2c6;
}

.fbf-trust {
	border-block-end: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(5, 15, 27, 0.58);
}

.fbf-trust-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fbf-trust-grid > div {
	display: flex;
	align-items: center;
	min-block-size: 92px;
	padding: 18px clamp(12px, 2vw, 28px);
	gap: 12px;
}

.fbf-trust-grid > div + div {
	border-inline-start: 1px solid rgba(255, 255, 255, 0.08);
}

.fbf-trust-grid .fb-icon {
	inline-size: 28px;
	block-size: 28px;
	color: #ff737b;
}

.fbf-trust-grid span {
	display: grid;
	gap: 3px;
}

.fbf-trust-grid strong {
	color: #fff;
	font-size: 13.5px;
}

.fbf-trust-grid small {
	color: #99aabc;
	font-size: 11.5px;
	line-height: 1.6;
}

.fbf-body {
	padding-block: 46px 38px;
}

.fbf-grid {
	display: grid;
	grid-template-columns: minmax(240px, 1.3fr) minmax(160px, 0.8fr) minmax(160px, 0.8fr) minmax(250px, 1.15fr);
	gap: clamp(28px, 5vw, 68px);
}

.fbf-grid :where(section, nav) {
	min-inline-size: 0;
}

.fbf-brand-link {
	display: inline-flex;
	align-items: center;
	gap: 11px;
}

.fbf-brand-link img {
	inline-size: 50px;
	block-size: 50px;
	border-radius: 13px;
	background: #fff;
	object-fit: contain;
}

.fbf-brand-link span {
	display: grid;
	gap: 2px;
}

.fbf-brand-link strong {
	color: #fff;
	font-size: 15px;
}

.fbf-brand-link small {
	color: #9fb0c2;
	font-size: 11.5px;
}

.fbf-brand > p {
	max-inline-size: 36ch;
	margin: 18px 0;
	color: #9fb0c2;
	font-size: 13px;
	line-height: 1.95;
}

.fbf-social {
	display: flex;
	gap: 8px;
}

.fbf-social a {
	display: grid;
	inline-size: 44px;
	block-size: 44px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 12px;
	color: #d9e3ef;
	background: rgba(255, 255, 255, 0.04);
	transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease, transform 150ms ease;
}

.fbf-social a:hover,
.fbf-social a:focus-visible {
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
	background: rgba(255, 255, 255, 0.09);
	transform: translateY(-2px);
}

.fbf-links h2,
.fbf-contact h2 {
	margin: 0 0 14px;
	color: #fff;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

.fbf-links {
	display: flex;
	flex-direction: column;
}

.fbf-links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-block-size: 42px;
	border-block-end: 1px solid rgba(255, 255, 255, 0.06);
	color: #aebdcd;
	font-size: 13px;
	transition: color 150ms ease, padding-inline-start 150ms ease;
}

.fbf-links a:hover,
.fbf-links a:focus-visible {
	padding-inline-start: 5px;
	color: #fff;
}

.fbf-links .fb-icon {
	inline-size: 16px;
	block-size: 16px;
}

.fbf-contact {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.fbf-contact > :where(p, a) {
	display: flex;
	align-items: flex-start;
	min-block-size: 44px;
	margin: 0;
	padding-block: 6px;
	color: #aebdcd;
	font-size: 12.5px;
	line-height: 1.8;
	gap: 10px;
}

.fbf-contact .fb-icon {
	inline-size: 18px;
	block-size: 18px;
	margin-block-start: 3px;
	color: #ff737b;
}

.fbf-contact a > span {
	display: grid;
	gap: 1px;
	overflow-wrap: anywhere;
}

.fbf-contact small {
	color: #8295a9;
	font-size: 10.5px;
}

.fbf-contact bdi {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
}

.fbf-contact-more {
	margin-block-start: 4px;
	border-block-start: 1px solid rgba(255, 255, 255, 0.08);
	color: #fff !important;
}

.fbf-bottom {
	border-block-start: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(0, 0, 0, 0.16);
}

.fbf-bottom > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-block-size: 58px;
	gap: 20px;
}

.fbf-bottom p {
	margin: 0;
	color: #8395a8;
	font-size: 11.5px;
	line-height: 1.7;
}

/* Homepage */
.fb-home__hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--fb-ui-radius-lg) !important;
	background:
		linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
		linear-gradient(135deg, var(--fb-ui-navy-900), var(--fb-ui-navy-800)) !important;
	background-size: 34px 34px, 34px 34px, auto !important;
	box-shadow: var(--fb-ui-shadow-lg);
}

.fb-home__hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0 auto 0 0;
	inline-size: 38%;
	background: linear-gradient(120deg, rgba(189, 37, 47, 0.22), transparent 65%);
	pointer-events: none;
}

.fb-home__hero::after {
	content: "";
	position: absolute;
	inset-block: 28px;
	inset-inline-start: 0;
	inline-size: 4px;
	border-radius: 999px 0 0 999px;
	background: var(--fb-ui-red);
	pointer-events: none;
}

.fb-home__hero-copy {
	padding: clamp(30px, 4vw, 48px) !important;
}

.fb-home__hero-copy h1 {
	max-inline-size: 24ch !important;
	color: #fff !important;
	text-wrap: balance !important;
}

.fb-home__hero-copy :where(p, li, small) {
	color: #cfdae7 !important;
}

.fb-home__hero-media img {
	display: block;
	inline-size: min(100%, 320px) !important;
	margin-inline: auto;
	transform: none !important;
	animation: none !important;
	object-fit: contain;
}

.fb-home__button,
.fb-home__final-cta a,
.fb-home__price-actions a {
	min-block-size: 46px;
	border-radius: 12px !important;
}

.fb-home__button.is-primary,
.fb-home__final-cta .is-primary {
	border-color: var(--fb-ui-red) !important;
	background: var(--fb-ui-red) !important;
	box-shadow: 0 9px 24px rgba(189, 37, 47, 0.22);
}

.fb-home__section,
.fb-home__price,
.fb-home__entity {
	scroll-margin-top: 118px;
}

.fb-home__product-card,
.fb-home__article-grid article,
.fb-home__route-strip > a,
.fb-home__price-panels > a {
	min-inline-size: 0;
	overflow: hidden;
	border-color: var(--fb-ui-steel-200) !important;
	border-radius: var(--fb-ui-radius-md) !important;
	background: var(--fb-ui-paper);
	box-shadow: none;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.fb-home__product-card::after,
.fb-home__article-grid article::after {
	content: "";
	position: absolute;
	inset-block: 18px;
	inset-inline-start: 0;
	inline-size: 3px;
	border-radius: 999px 0 0 999px;
	background: var(--fb-ui-red);
	opacity: 0;
	transition: opacity 160ms ease;
}

.fb-home__article-body h3 {
	min-block-size: auto !important;
	max-block-size: none !important;
	overflow: visible !important;
	text-wrap: pretty;
}

.fb-home__route-strip svg,
.fb-home__button svg {
	transition: transform 160ms ease;
}

.fb-home__final-cta {
	overflow: hidden;
	border-radius: var(--fb-ui-radius-lg) !important;
	background:
		linear-gradient(110deg, rgba(189, 37, 47, 0.16), transparent 48%),
		var(--fb-ui-navy-900) !important;
}

/* Commerce archives, cards and hubs */
.fbcs-breadcrumb {
	max-inline-size: 100%;
	overflow-x: auto;
	scrollbar-width: thin;
}

.fbcs-archive-hero,
.fbcs-page-hero,
.fbcs-hub-hero {
	position: relative;
	overflow: hidden;
	border-radius: var(--fb-ui-radius-lg) !important;
	background:
		linear-gradient(120deg, rgba(189, 37, 47, 0.14), transparent 44%),
		var(--fb-ui-navy-900) !important;
}

.fbcs-archive-hero::after,
.fbcs-page-hero::after,
.fbcs-hub-hero::after {
	content: "";
	position: absolute;
	inset-block: 20px;
	inset-inline-start: 0;
	inline-size: 4px;
	border-radius: 999px 0 0 999px;
	background: var(--fb-ui-red);
}

body.fb-ui-v2 .fbcs-hub-hero > h1 {
	color: #fff !important;
}

body.fb-ui-v2 .fbcs-hub-hero > p {
	color: #cfdae7 !important;
}

.fbcs-category-nav a,
.fbcs-price-anchor-nav a,
.fbk__filters button,
.fbk__topics a {
	min-block-size: 44px !important;
}

.fbcs-product-grid,
.fbcs-related-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
	align-items: stretch;
	gap: clamp(14px, 2vw, 22px) !important;
}

.fbcs-product-card {
	position: relative;
	display: flex !important;
	flex-direction: column;
	block-size: auto !important;
	min-block-size: 100%;
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 18px !important;
	background: var(--fb-ui-paper);
	box-shadow: none !important;
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.fbcs-card-image {
	display: grid;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	min-block-size: 0 !important;
	place-items: center;
	border-block-end: 1px solid var(--fb-ui-steel-100);
	background:
		linear-gradient(135deg, rgba(217, 224, 232, 0.4), transparent 48%),
		var(--fb-ui-steel-50) !important;
}

.fbcs-card-image img {
	inline-size: 100% !important;
	block-size: 100% !important;
	padding: 12px;
	object-fit: contain !important;
	transform: none;
	transition: transform 220ms ease;
}

.fbcs-card-body {
	display: flex !important;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 16px !important;
}

.fbcs-product-card h3,
.fbcs-product-card .fbcs-card-title {
	display: block !important;
	block-size: auto !important;
	min-block-size: calc(1.62em * 2);
	max-block-size: none !important;
	margin-block: 4px 8px !important;
	overflow: visible !important;
	color: var(--fb-ui-navy-900) !important;
	font-size: clamp(0.98rem, 1.3vw, 1.08rem) !important;
	line-height: 1.62 !important;
	-webkit-line-clamp: unset !important;
	text-wrap: pretty;
}

.fbcs-card-family,
.fbcs-card-specs,
.fbcs-card-intent {
	color: var(--fb-ui-steel-600) !important;
}

.fbcs-card-specs {
	min-block-size: 0 !important;
}

.fbcs-card-price {
	margin-block-start: auto !important;
	padding-block-start: 12px;
}

html body.fb-ui-v2.fbcs-product-archive-page .fbcs-card-link {
	display: inline-flex !important;
  --fb-ui-red-dark: #fff;
	align-items: center;
	justify-content: center;
	min-block-size: 44px;
	margin-block-start: auto !important;
	border-radius: 11px !important;
	color: var(--fb-ui-red-dark) !important;
	background: #087a4d !important;
	font-weight: 800;
}

.fbcs-product-hero {
	align-items: stretch !important;
	gap: clamp(24px, 4vw, 54px) !important;
}

.fbcs-product-media,
.fbcs-product-summary,
.fbcs-section,
.fbcs-info-card,
.fbcs-price-panel {
	border-color: var(--fb-ui-steel-200) !important;
	border-radius: var(--fb-ui-radius-md) !important;
}

.fbcs-gallery-main {
	display: grid;
	aspect-ratio: 1;
	place-items: center;
	border-radius: var(--fb-ui-radius-md) !important;
	background: var(--fb-ui-steel-50) !important;
}

.fbcs-gallery-main img {
	inline-size: 100% !important;
	block-size: 100% !important;
	padding: clamp(12px, 3vw, 28px);
	object-fit: contain !important;
}

.fbcs-product-summary h1 {
	max-inline-size: 28ch;
	text-wrap: pretty;
}

.fbcs-product-code,
.fbcs-product-code :where(span, b, strong) {
	direction: rtl;
}

.fbcs-product-code :where(code, bdi) {
	direction: ltr;
	unicode-bidi: isolate;
}

.fbcs-contact-cta:not(.is-compact) {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)) !important;
	gap: 10px !important;
}

.fbcs-contact-cta:not(.is-compact) .fbcs-lead-button {
	min-block-size: 52px !important;
	border-radius: 12px !important;
}

.fbcs-faq-list details {
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 13px !important;
	background: var(--fb-ui-paper);
}

.fbcs-faq-list summary {
	min-block-size: 50px;
	padding: 13px 16px !important;
	color: var(--fb-ui-navy-900);
	font-weight: 700;
}

.fbcs-info-card,
.fbcs-decision-grid > *,
.fbcs-order-steps > * {
	border-color: var(--fb-ui-steel-200) !important;
	border-radius: var(--fb-ui-radius-md) !important;
	background: var(--fb-ui-paper);
}

.fbcs-price-table-wrap,
.fbcs-hub-compare-wrap,
.fb-article-content .wp-block-table,
.fb-article-content .table-wrap {
	max-inline-size: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.fbcs-price-table-wrap :where(table),
.fbcs-hub-compare-wrap :where(table) {
	inline-size: 100%;
	border-collapse: separate;
	border-spacing: 0;
}

.fbcs-hub-compare-wrap .fbcs-hub-compare {
	min-inline-size: 760px;
}

.fbcs-hub [data-wpr-lazyrender] {
	content-visibility: visible !important;
	contain: none !important;
}

.fbcs-page :where(p, h2, h3):empty,
.fbcs-hub :where(p, h2, h3):empty,
.fbcs-product :where(p, h2, h3):empty {
	display: none !important;
}

body.fb-ui-v2 .fbcs-hub .fbcs-hub-campaign.fbcs-hub-campaign--ui {
	display: block !important;
	inline-size: min(100%, 1100px) !important;
	max-inline-size: 1100px !important;
	max-width: 1100px !important;
	min-block-size: 0 !important;
	margin-inline: auto !important;
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: var(--fb-ui-radius-lg);
	background: var(--fb-ui-navy-900);
	box-shadow: var(--fb-ui-shadow-sm);
}

body.fb-ui-v2 .fbcs-hub .fbcs-hub-campaign.fbcs-hub-campaign--ui > a,
body.fb-ui-v2 .fbcs-hub .fbcs-hub-campaign.fbcs-hub-campaign--ui picture,
body.fb-ui-v2 .fbcs-hub .fbcs-hub-campaign.fbcs-hub-campaign--ui img {
	display: block !important;
	inline-size: 100% !important;
	max-inline-size: none !important;
}

body.fb-ui-v2 .fbcs-hub .fbcs-hub-campaign.fbcs-hub-campaign--ui img {
	block-size: auto !important;
	height: auto !important;
	object-fit: contain !important;
}

/* Knowledge finder and search controls */
.fbk,
.fbk * {
	box-sizing: border-box;
}

.fbk {
	max-inline-size: 100%;
	color: var(--fb-ui-navy-900);
}

.fbk__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-block-end: 14px;
	gap: 28px;
}

.fbk__eyebrow,
.fbk__results-head > span {
	display: block;
	color: var(--fb-ui-red-dark);
	font-size: 12.5px;
	font-weight: 800;
}

.fbk__heading h2,
.fbk__results-head h2 {
	margin: 3px 0 0 !important;
	color: var(--fb-ui-navy-900) !important;
}

.fbk__heading p {
	max-inline-size: 440px;
	margin: 0 !important;
	color: var(--fb-ui-steel-600);
	font-size: 13.5px;
	line-height: 1.9;
}

.fbk__topics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));
	max-inline-size: 100%;
	gap: 12px;
}

.fbk-topic {
	position: relative;
	display: grid !important;
	grid-template-columns: 42px minmax(0, 1fr) 20px !important;
	align-items: center;
	min-inline-size: 0;
	min-block-size: 88px;
	padding: 11px 12px !important;
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: var(--fb-ui-radius-md);
	color: var(--fb-ui-navy-900);
	background: var(--fb-ui-paper);
	box-shadow: none;
	text-align: start !important;
	cursor: pointer;
	gap: 12px;
	transition: transform 170ms ease, border-color 170ms ease, box-shadow 170ms ease, background-color 170ms ease;
}

.fbk-topic:hover,
.fbk-topic:focus-visible,
.fbk-topic[aria-pressed="true"] {
	border-color: #b8c5d3;
	background: var(--fb-ui-steel-50);
	box-shadow: var(--fb-ui-shadow-sm);
}

.fbk-topic__icon,
.fbk__callout-icon {
	display: grid;
	inline-size: 42px;
	block-size: 42px;
	place-items: center;
	border-radius: 13px;
	color: var(--fb-ui-red);
	background: var(--fb-ui-red-soft);
}

.fbk-topic__icon svg,
.fbk__callout-icon svg,
.fbk-topic__arrow,
.fbk__search svg {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.fbk-topic__icon svg,
.fbk__callout-icon svg {
	inline-size: 23px !important;
	block-size: 23px !important;
}

.fbk-topic strong {
	display: block;
	font-size: 15px;
	line-height: 1.6;
}

.fbk-topic small {
	display: block;
	margin-block-start: 3px;
	color: var(--fb-ui-steel-600);
	font-size: 12px;
	line-height: 1.7;
}

.fbk-topic__arrow {
	inline-size: 20px !important;
	block-size: 20px !important;
	max-inline-size: 20px !important;
	color: var(--fb-ui-red);
	transform: scaleX(-1);
	transition: transform 170ms ease;
}

.fbk__utility {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(310px, 0.85fr);
	margin-block-start: 12px;
	gap: 12px;
}

.fbk__finder {
	min-inline-size: 0;
	padding: 10px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: var(--fb-ui-radius-md);
	background: var(--fb-ui-steel-50);
}

.fbk__search {
	position: relative;
	display: block;
}

.fbk__search svg {
	position: absolute;
	z-index: 1;
	inset-block-start: 50%;
	inset-inline-start: 14px;
	inline-size: 21px !important;
	block-size: 21px !important;
	color: var(--fb-ui-steel-600);
	transform: translateY(-50%);
	pointer-events: none;
}

.fbk__search input {
	inline-size: 100%;
	min-block-size: 46px;
	padding: 10px 44px 10px 14px;
	border: 1px solid #c5d0dc;
	border-radius: 11px;
	color: var(--fb-ui-navy-900);
	background: #fff;
}

.fbk__filters {
	display: flex;
	flex-wrap: wrap;
	margin-block-start: 8px;
	gap: 7px;
}

.fbk__filters button,
.fbk__results-head button {
	min-block-size: 44px;
	padding: 7px 13px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 999px;
	color: var(--fb-ui-navy-900);
	background: #fff;
	font-size: 12.5px;
	font-weight: 700;
	cursor: pointer;
	transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease;
}

.fbk__filters button:hover,
.fbk__filters button.is-active,
.fbk__filters button[aria-pressed="true"] {
	border-color: var(--fb-ui-navy-900);
	color: #fff;
	background: var(--fb-ui-navy-900);
}

.fbk__status {
	margin: 5px 2px 0 !important;
	color: var(--fb-ui-steel-600);
	font-size: 12px;
}

.fbk__callout {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-content: center;
	min-inline-size: 0;
	padding: 13px;
	overflow: hidden;
	border: 1px solid #2d4763;
	border-radius: var(--fb-ui-radius-md);
	color: #fff;
	background:
		linear-gradient(120deg, rgba(189, 37, 47, 0.18), transparent 50%),
		var(--fb-ui-navy-900);
	gap: 10px 12px;
}

.fbk__callout-icon {
	color: #fff;
	background: rgba(255, 255, 255, 0.1);
}

.fbk__callout strong {
	display: block;
	font-size: 15px;
	line-height: 1.6;
}

.fbk__callout small {
	display: block;
	margin-block-start: 3px;
	color: #c3cfdd;
	font-size: 12px;
	line-height: 1.75;
}

.fbk__actions {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.fbk__actions a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-block-size: 44px;
	border-radius: 10px;
	color: #fff !important;
	background: var(--fb-ui-red);
	font-size: 12.5px;
	font-weight: 800;
	text-decoration: none;
}

.fbk__actions a.is-light {
	border: 1px solid rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.08);
}

.fbk__results-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin: 22px 0 12px;
	gap: 16px;
}

.fbk__results-head button {
	border-color: #e9bec2;
	color: var(--fb-ui-red-dark);
}

.fbk__sr {
	position: absolute !important;
	inline-size: 1px !important;
	block-size: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
}

/* Blog archive and search */
body.blog,
body.search {
	background: var(--fb-ui-warm);
}

body.blog .elementor-element-504280d,
body.search .elementor-element-504280d {
	padding-block: clamp(38px, 6vw, 68px) !important;
	background:
		linear-gradient(115deg, rgba(189, 37, 47, 0.15), transparent 46%),
		var(--fb-ui-navy-900) !important;
}

body.blog .elementor-element-504280d :where(h1, p),
body.search .elementor-element-504280d :where(h1, p) {
	max-inline-size: 780px;
	margin-inline: auto;
	color: #fff !important;
	text-align: center;
	text-wrap: balance;
}

html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d .elementor-icon-box-title,
html body.search.fb-ui-v2 .elementor-element.elementor-element-504280d .elementor-icon-box-title {
	color: #fff !important;
}

html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d .elementor-icon-box-description,
html body.search.fb-ui-v2 .elementor-element.elementor-element-504280d .elementor-icon-box-description {
	color: #cfdae7 !important;
}

body.blog .elementor-posts-container,
body.search .elementor-posts-container {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 24px !important;
	max-inline-size: 1180px;
	margin-inline: auto;
	padding-block: clamp(34px, 5vw, 62px);
}

body.blog .elementor-post,
body.search .elementor-post {
	min-inline-size: 0;
}

body.blog .elementor-post__card,
body.search .elementor-post__card {
	position: relative;
	block-size: 100%;
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 18px !important;
	background: var(--fb-ui-paper);
	box-shadow: none !important;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.blog .elementor-post__thumbnail__link,
body.search .elementor-post__thumbnail__link {
	overflow: hidden;
	aspect-ratio: 16 / 9;
}

body.blog .elementor-post__thumbnail,
body.blog .elementor-post__thumbnail img,
body.search .elementor-post__thumbnail,
body.search .elementor-post__thumbnail img {
	block-size: 100% !important;
}

body.blog .elementor-post__thumbnail img,
body.search .elementor-post__thumbnail img {
	inline-size: 100%;
	object-fit: cover;
	transition: transform 260ms ease;
}

body.blog .elementor-post__badge,
body.search .elementor-post__badge {
	inset-block-start: 16px !important;
	inset-inline-start: 16px !important;
	inset-inline-end: auto !important;
	padding: 6px 10px !important;
	border-radius: 999px !important;
	color: var(--fb-ui-navy-900) !important;
	background: rgba(255, 255, 255, 0.94) !important;
}

body.blog .elementor-post__text,
body.search .elementor-post__text {
	padding: 21px 22px 12px !important;
}

body.blog .elementor-post__title,
body.search .elementor-post__title {
	display: block !important;
	block-size: auto !important;
	min-block-size: calc(1.6em * 2);
	max-block-size: none !important;
	margin: 0 0 10px !important;
	overflow: visible !important;
	font-size: clamp(1.15rem, 1.65vw, 1.4rem) !important;
	line-height: 1.6 !important;
	letter-spacing: 0 !important;
	-webkit-line-clamp: unset !important;
	text-wrap: pretty;
}

body.blog .elementor-post__title a,
body.search .elementor-post__title a {
	color: var(--fb-ui-navy-900) !important;
}

body.blog .elementor-post__excerpt,
body.search .elementor-post__excerpt {
	color: var(--fb-ui-steel-600);
	font-size: 14.5px;
	line-height: 1.95;
}

body.blog .elementor-post__read-more,
body.search .elementor-post__read-more {
	display: inline-flex;
	align-items: center;
	min-block-size: 44px;
	color: var(--fb-ui-red-dark) !important;
	font-weight: 800;
}

body.blog .elementor-post__meta-data,
body.search .elementor-post__meta-data {
	margin: 0 22px 20px !important;
	padding-block-start: 12px !important;
	border-block-start: 1px solid var(--fb-ui-steel-100) !important;
	color: var(--fb-ui-steel-600) !important;
}

body.blog .elementor-pagination,
body.search .elementor-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-block-end: 58px;
	gap: 6px;
}

body.blog .elementor-pagination :where(a, .current),
body.search .elementor-pagination :where(a, .current) {
	display: grid;
	min-inline-size: 44px;
	min-block-size: 44px;
	place-items: center;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 11px;
	background: #fff;
}

body.blog .elementor-pagination .current,
body.search .elementor-pagination .current {
	border-color: var(--fb-ui-navy-900);
	color: #fff;
	background: var(--fb-ui-navy-900);
}

/* Single article */
body.single-post {
	background: var(--fb-ui-warm);
}

body.single-post::before {
	content: "";
	position: fixed;
	z-index: 11000;
	inset: 0 0 auto;
	block-size: 3px;
	background: var(--fb-ui-red);
	transform: scaleX(0);
	transform-origin: right center;
	animation: fb-ui-reading-progress linear;
	animation-timeline: scroll(root block);
}

body.single-post .fb-article-shell {
	padding-block: clamp(28px, 5vw, 66px) !important;
}

body.single-post .fb-article-shell > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(230px, 292px) !important;
	align-items: start;
	max-inline-size: 1180px !important;
	gap: clamp(28px, 4vw, 52px) !important;
}

body.single-post .fb-article-main,
body.single-post .fb-article-aside {
	inline-size: auto !important;
	min-inline-size: 0;
}

body.single-post .fb-article-main {
	padding: clamp(24px, 4vw, 50px) !important;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 22px;
	background: var(--fb-ui-paper);
	box-shadow: 0 12px 44px rgba(7, 20, 35, 0.06);
}

body.single-post .fb-article-title h1 {
	max-inline-size: 24ch;
	margin: 0 0 20px;
	color: var(--fb-ui-navy-900);
	font-size: clamp(1.85rem, 3.5vw, 2.625rem) !important;
	line-height: 1.48 !important;
	letter-spacing: 0 !important;
	text-wrap: balance;
}

body.single-post .fb-article-hero {
	margin-block: 26px 36px !important;
	overflow: hidden;
	border-radius: 18px;
	background: var(--fb-ui-steel-50);
}

body.single-post .fb-article-hero img {
	display: block;
	inline-size: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

body.single-post .fb-article-content {
	max-inline-size: 72ch;
	color: #2c3c52;
	font-size: clamp(1.03rem, 1.25vw, 1.15rem);
	line-height: 2.05;
}

body.single-post .fb-article-content h2 {
	margin-block: 2.5em 0.8em;
	padding-inline-start: 15px;
	border-inline-start: 4px solid var(--fb-ui-red);
	color: var(--fb-ui-navy-900);
	font-size: clamp(1.4rem, 2.35vw, 1.9rem) !important;
	line-height: 1.62 !important;
	scroll-margin-top: 118px;
}

body.single-post .fb-article-content h3 {
	margin-block: 1.9em 0.65em;
	color: var(--fb-ui-navy-900);
	font-size: clamp(1.2rem, 1.8vw, 1.5rem) !important;
	line-height: 1.65 !important;
}

body.single-post .fb-article-content p {
	margin-block: 0 1.3em;
}

body.single-post .fb-article-content a {
	color: var(--fb-ui-red-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

body.single-post .fb-article-content :where(img, blockquote) {
	border-radius: 14px;
}

body.single-post .fb-article-content table {
	max-inline-size: 100%;
	border: 1px solid var(--fb-ui-steel-200);
	background: #fff;
}

body.single-post .fb-article-content blockquote {
	margin-inline: 0;
	padding: 20px 22px;
	border-inline-start: 4px solid var(--fb-ui-red);
	background: var(--fb-ui-red-soft);
}

body.single-post .fb-article-aside {
	position: sticky;
	top: 118px;
}

body.single-post .fb-article-toc {
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 17px !important;
	background: var(--fb-ui-paper);
	box-shadow: none !important;
}

body.single-post .fb-article-toc .elementor-toc__header {
	padding: 17px 18px !important;
	border-block-end: 1px solid var(--fb-ui-steel-100);
}

body.single-post .fb-article-toc .elementor-toc__body {
	padding: 13px 18px 18px !important;
}

/* Generic Elementor pages and forms */
body.fb-ui-v2 :where(main, [role="main"]) .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-block-size: 46px;
	border-radius: 12px;
}

body.fb-ui-v2 :where(main, [role="main"]) :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
	min-block-size: 46px;
	max-inline-size: 100%;
	border-color: var(--fb-ui-steel-200);
	border-radius: 10px;
}

/* Search recovery and 404 */
.fbui-404 {
	inline-size: min(100% - 32px, 920px);
	margin: clamp(38px, 7vw, 90px) auto;
	padding: clamp(28px, 5vw, 58px);
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: var(--fb-ui-radius-lg);
	background:
		linear-gradient(120deg, rgba(189, 37, 47, 0.06), transparent 42%),
		var(--fb-ui-paper);
	box-shadow: var(--fb-ui-shadow-sm);
	text-align: center;
}

.fbui-404-mark {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--fb-ui-navy-900);
	font-size: clamp(3.4rem, 10vw, 6.8rem);
	font-weight: 900;
	line-height: 1;
	gap: 8px;
}

.fbui-404-mark .fb-icon {
	inline-size: clamp(42px, 7vw, 76px);
	block-size: clamp(42px, 7vw, 76px);
	color: var(--fb-ui-red);
}

.fbui-404-kicker {
	margin: 16px 0 4px !important;
	color: var(--fb-ui-red-dark);
	font-weight: 800;
}

.fbui-404 h1 {
	max-inline-size: 24ch;
	margin: 0 auto 10px;
	color: var(--fb-ui-navy-900);
	text-wrap: balance;
}

.fbui-404 > p:not(.fbui-404-kicker) {
	max-inline-size: 62ch;
	margin-inline: auto;
	color: var(--fb-ui-steel-600);
	line-height: 1.9;
}

.fbui-404-search {
	max-inline-size: 620px;
	margin: 28px auto 20px;
	text-align: start;
}

.fbui-404-search label {
	display: block;
	margin-block-end: 7px;
	color: var(--fb-ui-navy-900);
	font-size: 13px;
	font-weight: 700;
}

.fbui-404-search > div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

.fbui-404-search input {
	inline-size: 100%;
	min-block-size: 50px;
	padding-inline: 14px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 11px;
	background: #fff;
}

.fbui-404-search button {
	min-block-size: 50px;
	padding-inline: 22px;
	border: 0;
	border-radius: 11px;
	color: #fff;
	background: var(--fb-ui-red);
	font-weight: 800;
	cursor: pointer;
}

.fbui-404-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}

.fbui-404-links a {
	display: inline-flex;
	align-items: center;
	min-block-size: 44px;
	padding-inline: 14px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 10px;
	color: var(--fb-ui-navy-900);
	background: var(--fb-ui-steel-50);
	font-weight: 700;
	text-decoration: none;
}

/* Purposeful interaction only */
@media (hover: hover) and (pointer: fine) {
	.fbcs-product-card:hover,
	.fbcs-product-card:focus-within,
	.fb-home__product-card:hover,
	.fb-home__product-card:focus-within,
	.fb-home__article-grid article:hover,
	.fb-home__article-grid article:focus-within,
	body.blog .elementor-post__card:hover,
	body.blog .elementor-post__card:focus-within,
	body.search .elementor-post__card:hover,
	body.search .elementor-post__card:focus-within {
		transform: translateY(-4px);
		border-color: #b9c5d2 !important;
		box-shadow: var(--fb-ui-shadow-sm) !important;
	}

	.fbcs-product-card:hover .fbcs-card-image img,
	.fbcs-product-card:focus-within .fbcs-card-image img,
	body.blog .elementor-post__card:hover .elementor-post__thumbnail img,
	body.blog .elementor-post__card:focus-within .elementor-post__thumbnail img,
	body.search .elementor-post__card:hover .elementor-post__thumbnail img,
	body.search .elementor-post__card:focus-within .elementor-post__thumbnail img {
		transform: scale(1.025);
	}

	.fb-home__product-card:hover::after,
	.fb-home__product-card:focus-within::after,
	.fb-home__article-grid article:hover::after,
	.fb-home__article-grid article:focus-within::after {
		opacity: 1;
	}

	.fb-home__route-strip > a:hover svg,
	.fb-home__route-strip > a:focus-visible svg,
	.fb-home__button:hover svg,
	.fb-home__button:focus-visible svg {
		transform: translateX(-3px);
	}
}

@keyframes fb-ui-reading-progress {
	to {
		transform: scaleX(1);
	}
}

/* Drawer breakpoint */
@media (max-width: 1080px) {
	.fb-ui-v2 .elementor-location-header {
		top: 0;
	}

	.fb-ui-v2.admin-bar .elementor-location-header {
		top: 32px;
	}

	.fbh-rail {
		display: none;
	}

	.fbh-main-inner {
		flex-wrap: wrap;
		min-block-size: 68px;
		padding-block: 8px;
	}

	.fbh-brand {
		order: -1;
		min-inline-size: 0;
		margin-inline-end: auto;
	}

	.fbh-toggle {
		order: -2;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-inline-size: 70px;
		min-block-size: 46px;
		padding-inline: 10px;
		border: 1px solid var(--fb-ui-steel-200);
		border-radius: 12px;
		color: var(--fb-ui-navy-900);
		background: var(--fb-ui-paper);
		gap: 6px;
		font-size: 12px;
		font-weight: 800;
		cursor: pointer;
	}

	.fbh-actions {
		order: 0;
	}

	.fbh-action {
		inline-size: 46px;
		min-inline-size: 46px;
		padding: 0;
	}

	.fbh-action > span {
		display: none;
	}

	.fbh-panel {
		order: 10;
		display: block;
		flex: 0 0 100%;
		inline-size: 100%;
		padding-block: 14px;
	}

	.fbh:not(.has-js):not(.is-ready) .fbh-toggle {
		display: none;
	}

	.fbh:not(.has-js):not(.is-ready) .fbh-panel {
		padding-block: 10px;
		border-block-start: 1px solid var(--fb-ui-steel-100);
	}

	.fbh:not(.has-js):not(.is-ready) .fbh-drawer-head,
	.fbh:not(.has-js):not(.is-ready) .fbh-drawer-actions {
		display: none;
	}

	.fbh:not(.has-js):not(.is-ready) .fbh-nav {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
		gap: 4px;
	}

	.fbh:not(.has-js):not(.is-ready) :where(.fbh-link, .fbh-products > summary) {
		white-space: normal;
	}

	.fbh.has-js .fbh-panel,
	.fbh.is-ready .fbh-panel {
		position: fixed;
		z-index: 30;
		inset-block: 0;
		inset-inline-start: 0;
		display: flex;
		flex-direction: column;
		inline-size: min(88vw, 380px);
		block-size: 100dvh;
		padding: 0;
		background: var(--fb-ui-paper);
		box-shadow: -24px 0 70px rgba(7, 20, 35, 0.22);
		opacity: 0;
		visibility: hidden;
		transform: translateX(105%);
		transition: transform 230ms cubic-bezier(0.2, 0.75, 0.25, 1), opacity 180ms ease, visibility 230ms;
	}

	.fbh.has-js.is-open .fbh-panel,
	.fbh.is-ready.is-open .fbh-panel {
		opacity: 1;
		visibility: visible;
		transform: translateX(0);
	}

	.fbh-drawer-head {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: space-between;
		min-block-size: 78px;
		padding: max(14px, env(safe-area-inset-top)) 18px 14px;
		border-block-end: 1px solid var(--fb-ui-steel-100);
		background:
			linear-gradient(110deg, rgba(189, 37, 47, 0.08), transparent 48%),
			var(--fb-ui-steel-50);
	}

	.fbh-drawer-head > div {
		display: grid;
		gap: 2px;
	}

	.fbh-drawer-head strong {
		color: var(--fb-ui-navy-900);
		font-size: 15px;
	}

	.fbh-drawer-head small {
		color: var(--fb-ui-steel-600);
		font-size: 11.5px;
	}

	.fbh-close {
		display: grid;
		inline-size: 44px;
		block-size: 44px;
		place-items: center;
		border: 1px solid var(--fb-ui-steel-200);
		border-radius: 12px;
		color: var(--fb-ui-navy-900);
		background: var(--fb-ui-paper);
		cursor: pointer;
	}

	.fbh-nav {
		display: block;
		flex: 1 1 auto;
		inline-size: 100%;
		padding: 12px 14px;
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	.fbh-link,
	.fbh-products > summary {
		justify-content: space-between;
		inline-size: 100%;
		min-block-size: 48px;
		padding: 11px 12px;
		font-size: 14px;
	}

	.fbh-link::after,
	.fbh-products > summary::after {
		inset-block: 10px;
		inset-inline-start: 0;
		inset-inline-end: auto;
		inline-size: 3px;
		block-size: auto;
		transform: scaleY(0);
	}

	.fbh-link[aria-current="page"]::after,
	.fbh-products.is-current > summary::after {
		transform: scaleY(1);
	}

	.fbh-products {
		inline-size: 100%;
	}

	.fbh-subnav {
		position: static;
		inline-size: 100%;
		margin-block: 4px 8px;
		padding: 6px;
		border-radius: 12px;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.fbh-products:not([open]) .fbh-subnav {
		display: none;
	}

	.fbh-subnav a {
		min-block-size: 58px;
	}

	.fbh-drawer-actions {
		display: block;
		flex: 0 0 auto;
		padding: 14px 16px max(16px, env(safe-area-inset-bottom));
		border-block-start: 1px solid var(--fb-ui-steel-100);
		background: var(--fb-ui-steel-50);
	}

	.fbh-drawer-actions > p {
		margin: 0 0 10px;
		color: var(--fb-ui-steel-600);
		font-size: 11.5px;
		line-height: 1.75;
	}

	.fbh-drawer-actions > div {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.fbh-drawer-actions a {
		display: flex;
		align-items: center;
		min-block-size: 58px;
		padding: 9px 10px;
		border-radius: 12px;
		gap: 8px;
		font-size: 12px;
	}

	.fbh-drawer-actions a > span {
		display: grid;
		gap: 1px;
	}

	.fbh-drawer-actions small {
		font-size: 9.5px;
	}

	.fbh-drawer-phone {
		color: #fff;
		background: var(--fb-ui-red);
	}

	.fbh-drawer-whatsapp {
		color: #fff;
		background: var(--fb-ui-green);
	}

	.fbh-overlay {
		position: fixed;
		z-index: 20;
		inset: 0;
		display: block;
		inline-size: 100%;
		block-size: 100%;
		padding: 0;
		border: 0;
		background: rgba(7, 20, 35, 0.58);
		opacity: 0;
		visibility: hidden;
		cursor: default;
		transition: opacity 180ms ease, visibility 230ms;
		-webkit-backdrop-filter: blur(2px);
		backdrop-filter: blur(2px);
	}

	.fbh.is-open .fbh-overlay {
		opacity: 1;
		visibility: visible;
	}

	body.fbh-menu-open {
		overflow: hidden;
		overscroll-behavior: none;
		touch-action: none;
	}

	body.single-post .fb-article-shell > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.single-post .fb-article-aside {
		display: none !important;
	}

	body.single-post .fbpost-mobile-toc {
		display: block !important;
	}

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

	.fbcs-product-hero {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.fbk__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
	}

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

@media (max-width: 800px) {
	.fbf-cta {
		grid-template-columns: minmax(0, 1fr);
		min-block-size: 0;
	}

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

	.fbf-trust-grid > div {
		min-block-size: 72px;
	}

	.fbf-trust-grid > div + div {
		border-block-start: 1px solid rgba(255, 255, 255, 0.08);
		border-inline-start: 0;
	}

}

@media (max-width: 782px) {
	.fb-ui-v2.admin-bar .elementor-location-header {
		top: 46px;
	}
}

@media (max-width: 767px) {
	body.blog .elementor-posts-container,
	body.search .elementor-posts-container {
		grid-template-columns: minmax(0, 1fr) !important;
		padding-inline: 16px;
		gap: 18px !important;
	}

	html body.fb-ui-v2.fbcs-has-mobile-lead-bar {
		padding-block-end: calc(var(--fb-ui-mobile-bar-height) + env(safe-area-inset-bottom)) !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar {
		position: fixed !important;
		z-index: 9998 !important;
		inset: auto 0 0 !important;
		display: block !important;
		block-size: auto !important;
		min-block-size: calc(var(--fb-ui-mobile-bar-height) + env(safe-area-inset-bottom));
		padding: 8px 10px max(8px, env(safe-area-inset-bottom)) !important;
		border-block-start: 1px solid rgba(13, 29, 50, 0.12) !important;
		background: rgba(255, 255, 255, 0.96) !important;
		box-shadow: 0 -12px 34px rgba(7, 20, 35, 0.14) !important;
		transition: transform 180ms ease, opacity 180ms ease;
		-webkit-backdrop-filter: blur(14px);
		backdrop-filter: blur(14px);
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-contact-cta {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		inline-size: 100% !important;
		max-inline-size: 560px;
		margin-inline: auto;
		gap: 8px !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button {
		display: flex !important;
		align-items: center;
		justify-content: center;
		min-inline-size: 0 !important;
		min-block-size: 52px !important;
		padding: 8px 12px !important;
		border: 0 !important;
		border-radius: 13px !important;
		color: #fff !important;
		gap: 8px;
		box-shadow: none !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button.is-phone {
		background: var(--fb-ui-red) !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button.is-whatsapp {
		background: var(--fb-ui-green) !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button.is-sms,
	html body.fb-ui-v2.fbcs-has-mobile-lead-bar .fbcs-mobile-actions {
		display: none !important;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button :where(b, span) {
		color: #fff !important;
		font-size: 12px !important;
		font-weight: 800;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button .fb-icon,
	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button svg {
		inline-size: 21px !important;
		block-size: 21px !important;
	}

	html body.fb-ui-v2.fbh-menu-open .fbcs-global-mobile-bar {
		opacity: 0;
		pointer-events: none;
		transform: translateY(110%);
	}

	.fb-home__hero {
		border-radius: 18px !important;
	}

	.fb-home__hero-copy {
		padding: 28px 22px !important;
	}

	body.single-post .fb-article-shell {
		padding: 12px !important;
	}

	body.single-post .fb-article-main {
		padding: 20px 17px !important;
		border-radius: 16px;
	}

	body.single-post .fb-article-title h1 {
		font-size: clamp(1.75rem, 8.5vw, 2.15rem) !important;
	}

	body.single-post .fb-article-content {
		font-size: 1rem;
		line-height: 2;
	}

	.fbf {
		margin-block-start: 58px;
	}

	.fbf-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.fbf-body {
		padding-block: 38px 30px;
	}

	.fbf-bottom > div {
		align-items: flex-start;
		flex-direction: column;
		justify-content: center;
		padding-block: 14px;
		gap: 4px;
	}
}

@media (max-width: 620px) {
	.fbh-container,
	.fbf-container {
		inline-size: min(100% - 24px, var(--fb-ui-container));
	}

	.fbh-main-inner {
		gap: 7px;
	}

	.fbh-logo {
		flex-basis: 44px;
		inline-size: 44px;
		block-size: 44px;
	}

	.fbh-logo img {
		inline-size: 38px;
		block-size: 38px;
	}

	.fbh-brand-copy strong {
		font-size: 13.5px;
	}

	.fbh-brand-copy small {
		display: none;
	}

	.fbh-toggle {
		min-inline-size: 46px;
		inline-size: 46px;
		padding: 0;
	}

	.fbh-toggle span {
		position: absolute;
		inline-size: 1px;
		block-size: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.fbh-action {
		inline-size: 44px;
		min-inline-size: 44px;
		min-block-size: 44px;
	}

	.fb-home__product-grid,
	.fb-home__article-grid,
	.fb-home__price-panels,
	.fb-home__steps {
		grid-template-columns: minmax(0, 1fr) !important;
	}

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

	.fbui-404-search > div {
		grid-template-columns: minmax(0, 1fr);
	}

	.fbui-404-search button {
		inline-size: 100%;
	}

	.fbui-404-links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fbui-404-links a {
		justify-content: center;
		text-align: center;
	}

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

	.fbk__results-head {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 380px) {
	.fbh-brand-copy {
		display: none;
	}

	.fbh-drawer-actions > div,
	.fbui-404-links {
		grid-template-columns: minmax(0, 1fr);
	}

	body.fb-ui-v2 :where(main, [role="main"]) h1 {
		font-size: 1.75rem !important;
	}

	.fbcs-product-grid,
	.fbcs-related-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* Interactive controls must not inherit Hello's pink button hover state. */
body.fb-ui-v2 #fb-site-header .fbh-toggle:is(:hover, :focus, :active) {
	border-color: var(--fb-ui-steel-200) !important;
	color: var(--fb-ui-navy-900) !important;
	background: #fff !important;
}

body.fb-ui-v2 #fb-site-header .fbh-close {
	inline-size: 44px;
	min-inline-size: 44px;
	block-size: 44px;
	min-block-size: 44px;
	padding: 0 !important;
}

body.fb-ui-v2 .fbcs-gallery-thumbs button:is(:hover, :focus-visible, :active),
body.fb-ui-v2 .fbcs-gallery-thumbs button.is-active {
	color: inherit !important;
	background: #fff !important;
}

/* Lock the document, but keep the tall drawer vertically pannable. */
body.fb-ui-v2.fbh-menu-open {
	touch-action: auto !important;
}

body.fb-ui-v2.fbh-menu-open :where(.fbh-panel, .fbh-nav) {
	touch-action: pan-y !important;
}

@media (min-width: 783px) and (max-width: 1080px) {
	body.admin-bar.fb-ui-v2 .fbh.has-js .fbh-panel,
	body.admin-bar.fb-ui-v2 .fbh.is-ready .fbh-panel {
		inset-block-start: 32px !important;
		inset-block-end: auto !important;
		block-size: calc(100dvh - 32px) !important;
	}
}

@media (max-width: 782px) {
	body.admin-bar.fb-ui-v2 .fbh.has-js .fbh-panel,
	body.admin-bar.fb-ui-v2 .fbh.is-ready .fbh-panel {
		inset-block-start: 46px !important;
		inset-block-end: auto !important;
		block-size: calc(100dvh - 46px) !important;
	}
}

/* Beat Elementor's page-level !important typography without changing H1 order. */
html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d h1.elementor-icon-box-title {
	font-size: clamp(1.75rem, 2.5vw, 2rem) !important;
	line-height: 1.55 !important;
}

html body.blog.fb-ui-v2.elementor-page-350 #fbk-title,
html body.blog.fb-ui-v2.elementor-page-350 .fbk__results-head h2 {
	font-size: clamp(1.25rem, 1.7vw, 1.5rem) !important;
	line-height: 1.6 !important;
}

html body.single-post.fb-ui-v2 .fb-article-main .fb-article-title h1 {
	max-inline-size: none !important;
	font-size: clamp(1.75rem, 2.35vw, 2rem) !important;
	line-height: 1.55 !important;
}

html body.single-post.fb-ui-v2 .fb-article-main .fb-article-content h2.wp-block-heading {
	font-size: clamp(1.25rem, 1.7vw, 1.5rem) !important;
	line-height: 1.7 !important;
}

html body.single-post.fb-ui-v2 .fb-article-main .fb-article-content h3.wp-block-heading {
	font-size: clamp(1.08rem, 1.35vw, 1.25rem) !important;
	line-height: 1.7 !important;
}

@media (max-width: 767px) {
	html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d h1.elementor-icon-box-title,
	html body.single-post.fb-ui-v2 .fb-article-main .fb-article-title h1 {
		font-size: 1.625rem !important;
	}

	html body.blog.fb-ui-v2.elementor-page-350 #fbk-title,
	html body.blog.fb-ui-v2.elementor-page-350 .fbk__results-head h2,
	html body.single-post.fb-ui-v2 .fb-article-main .fb-article-content h2.wp-block-heading {
		font-size: 1.25rem !important;
	}

	html body.single-post.fb-ui-v2 .fb-article-main .fb-article-content h3.wp-block-heading {
		font-size: 1.125rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.fb-ui-v2 .fbh *,
	body.fb-ui-v2 .fbh *::before,
	body.fb-ui-v2 .fbh *::after,
	body.fb-ui-v2 .fbf *,
	body.fb-ui-v2 .fbf *::before,
	body.fb-ui-v2 .fbf *::after,
	body.fb-ui-v2 .fbcs-global-mobile-bar,
	body.fb-ui-v2 :where(.fbcs-product-card, .fbcs-card-image img, .fb-home__product-card, .fb-home__article-grid article, .elementor-post__card, .elementor-post__thumbnail img) {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	body.single-post::before {
		display: none;
	}
}

/* --------------------------------------------------------------------------
 * Minimal interface ownership — v1.3.0
 * One quiet surface system for the shared shell and high-traffic templates.
 * -------------------------------------------------------------------------- */
body.fb-ui-v2 {
	--fb-ui-radius-sm: 8px;
	--fb-ui-radius-md: 12px;
	--fb-ui-radius-lg: 16px;
	--fb-ui-shadow-sm: none;
	--fb-ui-shadow-lg: none;
	--fb-ui-mobile-bar-height: 64px;
}

body.fb-ui-v2 :where(main, [role="main"]) h1 {
	font-size: clamp(1.75rem, 2.8vw, 2.25rem) !important;
	line-height: 1.45 !important;
}

body.fb-ui-v2 :where(main, [role="main"]) h2 {
	font-size: clamp(1.3rem, 2vw, 1.75rem) !important;
	line-height: 1.55 !important;
}

/* Header: one 64px rail, no decorative stripe or persistent cached state. */
body.fb-ui-v2 .fbh {
	inline-size: min(calc(100% - 48px), var(--fb-ui-container));
	margin-inline: auto;
}

body.fb-ui-v2 .fbh-rail {
	display: none !important;
}

body.fb-ui-v2 .fbh-main {
	border: 1px solid var(--fb-ui-steel-100);
	border-block-start: 0;
	background: #fff;
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

body.fb-ui-v2 .fbh-main-inner {
	min-block-size: 64px;
	gap: clamp(10px, 1.5vw, 20px);
}

body.fb-ui-v2 .fbh-brand {
	min-inline-size: 184px;
	gap: 9px;
}

body.fb-ui-v2 .fbh-logo {
	flex-basis: 40px;
	inline-size: 40px;
	block-size: 40px;
	border: 0;
	border-radius: 8px;
	box-shadow: none;
}

body.fb-ui-v2 .fbh-logo::after {
	content: none;
}

body.fb-ui-v2 .fbh-logo img {
	inline-size: 38px;
	block-size: 38px;
}

body.fb-ui-v2 .fbh-brand-copy strong {
	font-size: 14px;
}

body.fb-ui-v2 .fbh-brand-copy small {
	font-size: 10.5px;
}

body.fb-ui-v2 :where(.fbh-link, .fbh-products > summary) {
	min-block-size: 40px;
	padding: 8px 9px;
	border-radius: 8px;
	font-size: 13px;
}

body.fb-ui-v2 :where(.fbh-link, .fbh-products > summary)::after {
	inset-inline: 10px;
	inset-block-end: 0;
	block-size: 2px;
}

body.fb-ui-v2 :where(.fbh-link, .fbh-products > summary):hover,
body.fb-ui-v2 :where(.fbh-link, .fbh-products > summary):focus-visible {
	background: var(--fb-ui-steel-50);
}

body.fb-ui-v2 .fbh-subnav {
	inline-size: 284px;
	padding: 7px;
	border-radius: 10px;
	box-shadow: 0 14px 34px rgba(7, 20, 35, 0.12);
}

body.fb-ui-v2 .fbh-subnav a {
	grid-template-columns: 34px minmax(0, 1fr);
	min-block-size: 46px;
	padding: 6px;
	border-radius: 7px;
	gap: 8px;
}

body.fb-ui-v2 .fbh-subnav a > span:first-child {
	inline-size: 34px;
	block-size: 34px;
	border-radius: 7px;
}

body.fb-ui-v2 .fbh-action {
	min-block-size: 40px;
	border-radius: 8px;
	box-shadow: none;
}

body.fb-ui-v2 .fbh-action-whatsapp {
	min-inline-size: 96px;
}

body.fb-ui-v2 .fbh-action-phone {
	min-inline-size: 148px;
}

/* Footer: same centered width as header, solid fill and compact information. */
body.fb-ui-v2 .elementor-location-footer,
body.fb-ui-v2 .elementor-location-footer > .e-con,
body.fb-ui-v2 .elementor-location-footer > .e-con > .e-con-inner,
body.fb-ui-v2 .elementor-location-footer .elementor-widget-html,
body.fb-ui-v2 .elementor-location-footer .elementor-widget-html > .elementor-widget-container {
	inline-size: 100% !important;
	max-inline-size: none !important;
}

body.fb-ui-v2 .elementor-location-footer,
body.fb-ui-v2 .elementor-location-footer > .e-con,
body.fb-ui-v2 .elementor-location-footer > .e-con > .e-con-inner {
	border: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.fb-ui-v2 .fbf {
	inline-size: min(calc(100% - 48px), var(--fb-ui-container));
	margin: 56px auto 16px;
	overflow: hidden;
	border-radius: 16px;
	color: #dce5ef;
	background: var(--fb-ui-navy-950);
	background-image: none !important;
}

body.fb-ui-v2 .fbf::before {
	content: none;
}

body.fb-ui-v2 .fbf-container {
	inline-size: 100%;
	padding-inline: 28px;
}

body.fb-ui-v2 .fbf-body {
	padding-block: 28px 22px;
}

body.fb-ui-v2 .fbf-grid {
	grid-template-columns: minmax(220px, 1.2fr) minmax(145px, 0.7fr) minmax(145px, 0.7fr) minmax(245px, 1.1fr);
	gap: clamp(20px, 3vw, 42px);
}

body.fb-ui-v2 .fbf-brand-link img {
	inline-size: 42px;
	block-size: 42px;
	border-radius: 8px;
}

body.fb-ui-v2 .fbf-brand-link strong {
	font-size: 14px;
}

body.fb-ui-v2 .fbf-brand > p {
	margin: 12px 0;
	font-size: 12.5px;
	line-height: 1.75;
}

body.fb-ui-v2 .fbf-social a {
	inline-size: 40px;
	block-size: 40px;
	border-radius: 8px;
	transform: none;
}

body.fb-ui-v2 :where(.fbf-links h2, .fbf-contact h2) {
	margin-block-end: 8px;
	font-size: 13.5px !important;
}

body.fb-ui-v2 .fbf-links a {
	min-block-size: 34px;
	border: 0;
	font-size: 12.5px;
}

body.fb-ui-v2 .fbf-contact {
	gap: 3px;
}

body.fb-ui-v2 .fbf-contact > :where(p, a) {
	min-block-size: 34px;
	padding-block: 3px;
	font-size: 12px;
	line-height: 1.65;
}

body.fb-ui-v2 .fbf-contact .fb-icon {
	color: #d7797f;
}

body.fb-ui-v2 .fbf-bottom {
	background: transparent;
}

body.fb-ui-v2 .fbf-bottom > div {
	min-block-size: 42px;
}

/* Homepage: remove the checker pattern and red edge from the hero. */
body.fb-ui-v2 .fb-home__hero {
	border: 0;
	border-radius: 16px !important;
	background: #10263f !important;
	background-image: none !important;
	box-shadow: none;
}

body.fb-ui-v2 .fb-home__hero::before,
body.fb-ui-v2 .fb-home__hero::after {
	content: none;
}

body.fb-ui-v2 .fb-home__hero-copy {
	padding: clamp(26px, 3.5vw, 40px) !important;
}

body.fb-ui-v2 .fb-home__hero-media {
	background: #10263f !important;
}

body.fb-ui-v2 .fb-home__hero-media img {
	inline-size: min(100%, 280px) !important;
	max-block-size: 320px;
}

body.fb-ui-v2 .fb-home__final-cta {
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-inline-start: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 12px !important;
	color: var(--fb-ui-ink) !important;
	background: #fff !important;
	background-image: none !important;
}

/* Product: keep every commercial/SEO field, but collapse the scattered hero. */
body.fb-ui-v2 .fbcs-product {
	inline-size: min(calc(100% - 32px), 1180px);
	max-inline-size: 1180px;
	margin-inline: auto;
}

body.fb-ui-v2 .fbcs-product-hero {
	display: grid !important;
	grid-template-columns: minmax(300px, 360px) minmax(0, 1fr) !important;
	align-items: start !important;
	padding: 24px !important;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 14px !important;
	background: #fff !important;
	box-shadow: none !important;
	gap: 32px !important;
}

body.fb-ui-v2 .fbcs-product-media {
	grid-area: auto !important;
	align-self: start !important;
}

body.fb-ui-v2 .fbcs-product-summary {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	min-inline-size: 0;
	gap: 12px;
}

body.fb-ui-v2 .fbcs-product-summary > * {
	grid-area: auto !important;
	margin-block: 0 !important;
}

body.fb-ui-v2 .fbcs-gallery-main {
	inline-size: min(100%, 340px);
	margin-inline: auto;
	border-radius: 10px !important;
	background: var(--fb-ui-steel-50) !important;
}

body.fb-ui-v2 .fbcs-gallery-main img {
	padding: 16px;
}

body.fb-ui-v2 .fbcs-product-summary h1 {
	max-inline-size: none;
	font-size: clamp(1.7rem, 2.5vw, 2rem) !important;
}

body.fb-ui-v2 .fbcs-product-answer {
	max-inline-size: 66ch;
	font-size: 13.5px;
	line-height: 1.9;
}

body.fb-ui-v2 .fbcs-price-panel {
	padding: 0 !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}

body.fb-ui-v2 .fbcs-unit-price {
	padding: 12px !important;
}

body.fb-ui-v2 .fbcs-price-support {
	gap: 8px !important;
}

body.fb-ui-v2 .fbcs-price-support > div {
	min-block-size: 56px;
	padding: 8px 12px !important;
}

body.fb-ui-v2 .fbcs-price-footnote {
	padding: 8px 12px !important;
}

body.fb-ui-v2 .fbcs-service-strip {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	margin-block-start: 2px !important;
	padding: 4px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 10px;
	background: var(--fb-ui-steel-50);
	gap: 0 !important;
}

body.fb-ui-v2 .fbcs-service-strip > div {
	min-block-size: 52px;
	padding: 7px 9px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

body.fb-ui-v2 .fbcs-service-strip > div + div {
	border-inline-start: 1px solid var(--fb-ui-steel-200) !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-contact-cta {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button {
	min-block-size: 46px !important;
	border-radius: 9px !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button.is-sms {
	display: none !important;
}

body.fb-ui-v2 .fbcs-section {
	margin-block-start: 16px !important;
	padding: 28px 0 !important;
	border: 0 !important;
	border-block-start: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.fb-ui-v2 .fbcs-section-heading {
	margin-block-end: 12px;
}

body.fb-ui-v2 .fbcs-section-heading > span {
	margin-block-end: 1px;
	color: var(--fb-ui-steel-600);
	font-size: 11.5px;
}

body.fb-ui-v2 .fbcs-info-card,
body.fb-ui-v2 .fbcs-decision-grid > *,
body.fb-ui-v2 .fbcs-order-steps > * {
	border-radius: 9px !important;
	box-shadow: none !important;
}

body.fb-ui-v2 .fbcs-related-grid {
	gap: 10px !important;
}

body.fb-ui-v2 .fbcs-related-grid .fbcs-product-card {
	border-radius: 10px !important;
}

body.fb-ui-v2 .fbcs-related-grid .fbcs-card-body {
	padding: 12px !important;
}

body.fb-ui-v2 .fbcs-related-guides {
	border-radius: 10px !important;
	box-shadow: none !important;
}

/* Guides: one dark intro and one flat finder surface. */
body.fb-ui-v2 :where(.fbcs-archive-hero, .fbcs-page-hero, .fbcs-hub-hero) {
	padding: 28px !important;
	border-radius: 12px !important;
	background: var(--fb-ui-navy-900) !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.fb-ui-v2 :where(.fbcs-archive-hero, .fbcs-page-hero, .fbcs-hub-hero)::after {
	content: none;
}

html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d,
html body.search.fb-ui-v2 .elementor-element.elementor-element-504280d {
	padding-block: 28px !important;
	background: var(--fb-ui-navy-900) !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.fb-ui-v2 .fbk {
	padding: 18px;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 12px;
	background: #fff;
}

body.fb-ui-v2 .fbk__eyebrow {
	display: none;
}

body.fb-ui-v2 .fbk__results-head > span {
	color: var(--fb-ui-steel-600);
}

body.fb-ui-v2 .fbk__heading {
	align-items: flex-start;
	margin-block-end: 12px;
}

body.fb-ui-v2 .fbk__topics {
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200);
	border-radius: 9px;
	gap: 0;
}

body.fb-ui-v2 .fbk-topic {
	grid-template-columns: 34px minmax(0, 1fr) 18px !important;
	min-block-size: 64px;
	padding: 8px 10px !important;
	border: 0;
	border-radius: 0;
	box-shadow: none !important;
	gap: 9px;
}

body.fb-ui-v2 .fbk-topic + .fbk-topic {
	border-inline-start: 1px solid var(--fb-ui-steel-200);
}

body.fb-ui-v2 .fbk-topic__icon {
	inline-size: 34px;
	block-size: 34px;
	border-radius: 7px;
}

body.fb-ui-v2 .fbk-topic strong {
	font-size: 13.5px;
}

body.fb-ui-v2 .fbk-topic small {
	font-size: 11px;
	line-height: 1.55;
}

body.fb-ui-v2 .fbk__utility {
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 10px;
}

body.fb-ui-v2 .fbk__finder,
body.fb-ui-v2 .fbk__callout {
	padding: 10px;
	border-color: var(--fb-ui-steel-200);
	border-radius: 9px;
	box-shadow: none;
}

body.fb-ui-v2 .fbk__callout {
	color: var(--fb-ui-navy-900);
	background: var(--fb-ui-steel-50);
	background-image: none;
}

body.fb-ui-v2 .fbk__callout {
	display: none !important;
}

body.fb-ui-v2 .fbk__callout-icon {
	color: var(--fb-ui-red);
	background: var(--fb-ui-red-soft);
}

body.fb-ui-v2 .fbk__callout small {
	color: var(--fb-ui-steel-600);
}

body.fb-ui-v2 .fbk__actions a.is-light {
	border-color: var(--fb-ui-steel-200);
	color: var(--fb-ui-navy-900) !important;
	background: #fff;
}

/* Contact: a normal heading and a light, readable form. */
body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 {
	flex-direction: column !important;
	align-items: flex-start !important;
	padding-block: 36px 22px !important;
	gap: 8px !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 > .e-con-inner,
body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 > .e-con,
body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 > .elementor-element {
	inline-size: 100% !important;
	max-inline-size: 100% !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	grid-template-columns: none !important;
	align-items: flex-start !important;
	inline-size: min(1180px, 100%) !important;
	gap: 8px !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-74c4828 {
	inline-size: 100% !important;
	max-inline-size: none !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-74c4828 h1 {
	max-inline-size: none !important;
	margin: 0 !important;
	font-size: clamp(1.75rem, 2.6vw, 2rem) !important;
	line-height: 1.5 !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-579549b {
	padding: 24px !important;
	border: 1px solid var(--fb-ui-steel-200) !important;
	border-radius: 12px !important;
	color: var(--fb-ui-ink) !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-526b6c3 .elementor-icon-box-title,
body.fb-ui-v2.page-id-20 .elementor-element-526b6c3 .elementor-icon-box-title span {
	color: var(--fb-ui-ink) !important;
	font-size: clamp(1.25rem, 2vw, 1.5rem) !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-579549b :where(h2, h3, h4, p, label) {
	color: var(--fb-ui-ink) !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-579549b :where(input, textarea, select) {
	border: 1px solid var(--fb-ui-steel-200) !important;
	color: var(--fb-ui-ink) !important;
	background: var(--fb-ui-steel-50) !important;
}

body.fb-ui-v2.page-id-20 .elementor-element-579549b :where(button, .elementor-button) {
	border-radius: 8px !important;
	color: #fff !important;
	background: var(--fb-ui-red) !important;
	box-shadow: none !important;
}

@media (hover: hover) and (pointer: fine) {
	body.fb-ui-v2 :where(
		.fbcs-product-card,
		.fb-home__product-card,
		.fb-home__article-grid article,
		.elementor-post__card
	):hover,
	body.fb-ui-v2 :where(
		.fbcs-product-card,
		.fb-home__product-card,
		.fb-home__article-grid article,
		.elementor-post__card
	):focus-within {
		transform: none;
		box-shadow: none !important;
	}
}

@media (max-width: 1080px) {
	body.fb-ui-v2 .fbh {
		inline-size: calc(100% - 24px);
	}

	body.fb-ui-v2 .fbh-main {
		border-inline: 1px solid var(--fb-ui-steel-100);
	}

	body.fb-ui-v2 .fbh-main-inner {
		flex-wrap: nowrap;
		min-block-size: 60px;
		padding-block: 6px;
	}

	body.fb-ui-v2 .fbh-actions {
		display: none;
	}

	body.fb-ui-v2 .fbh-toggle {
		order: -2;
		inline-size: 46px;
		min-inline-size: 46px;
		min-block-size: 46px;
		padding: 0;
		border-radius: 8px;
	}

	body.fb-ui-v2 .fbh-toggle span {
		position: absolute;
		inline-size: 1px;
		block-size: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	body.fb-ui-v2 .fbh-brand {
		order: -1;
		margin-inline-end: auto;
	}

	body.fb-ui-v2 .fbh.has-js .fbh-panel,
	body.fb-ui-v2 .fbh.is-ready .fbh-panel {
		inline-size: min(92vw, 360px);
		box-shadow: -16px 0 42px rgba(7, 20, 35, 0.18);
	}

	body.fb-ui-v2 .fbh-drawer-head {
		min-block-size: 60px;
		padding: max(8px, env(safe-area-inset-top)) 14px 8px;
		background: #fff;
	}

	body.fb-ui-v2 .fbh-close {
		inline-size: 42px;
		block-size: 42px;
		border-radius: 8px;
	}

	body.fb-ui-v2 .fbh-nav {
		flex: 0 1 auto;
		padding: 8px 12px;
	}

	body.fb-ui-v2 :where(.fbh-link, .fbh-products > summary) {
		min-block-size: 46px;
		padding: 9px 10px;
	}

	body.fb-ui-v2 .fbh-subnav {
		margin-block: 2px 6px;
		padding: 4px;
	}

	body.fb-ui-v2 .fbh-subnav a {
		min-block-size: 44px;
	}

	body.fb-ui-v2 .fbh-drawer-actions {
		padding: 10px 12px max(12px, env(safe-area-inset-bottom));
		background: #fff;
	}

	body.fb-ui-v2 .fbh-drawer-actions a {
		min-block-size: 50px;
		border-radius: 8px;
	}

	body.fb-ui-v2 .fbf-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.fb-ui-v2 .fbf {
		inline-size: calc(100% - 24px);
	}

	body.fb-ui-v2 .fbf-brand,
	body.fb-ui-v2 .fbf-contact {
		grid-column: 1 / -1;
	}

	body.fb-ui-v2 .fbcs-product-hero {
		grid-template-columns: minmax(270px, 320px) minmax(0, 1fr) !important;
		gap: 24px !important;
	}
}

@media (max-width: 800px) {
	body.fb-ui-v2 .fbcs-product {
		inline-size: min(calc(100% - 24px), 680px);
	}

	body.fb-ui-v2 .fbcs-product-hero {
		grid-template-columns: minmax(0, 1fr) !important;
		padding: 16px !important;
		gap: 16px !important;
	}

	body.fb-ui-v2 .fbcs-product-media {
		inline-size: min(100%, 320px);
		margin-inline: auto;
	}

	body.fb-ui-v2 .fbcs-product-summary h1 {
		font-size: 1.75rem !important;
		text-align: start !important;
	}

	body.fb-ui-v2 .fbk__utility {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	body.fb-ui-v2 .fbf {
		inline-size: calc(100% - 24px);
		margin-block: 38px 12px;
		border-radius: 12px;
	}

	body.fb-ui-v2 .fbf-container {
		padding-inline: 16px;
	}

	body.fb-ui-v2 .fbf-body {
		padding-block: 22px 16px;
	}

	body.fb-ui-v2 .fbf-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px 14px;
	}

	body.fb-ui-v2 .fbf-brand,
	body.fb-ui-v2 .fbf-contact {
		grid-column: 1 / -1;
	}

	body.fb-ui-v2 .fbf-links a {
		min-block-size: 32px;
		font-size: 12px;
	}

	body.fb-ui-v2 .fbf-bottom > div {
		min-block-size: 40px;
		padding-block: 8px;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar {
		min-block-size: calc(var(--fb-ui-mobile-bar-height) + env(safe-area-inset-bottom));
		padding: 6px 8px max(6px, env(safe-area-inset-bottom)) !important;
		box-shadow: 0 -6px 20px rgba(7, 20, 35, 0.1) !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	html body.fb-ui-v2 .fbcs-global-mobile-bar .fbcs-lead-button {
		min-block-size: 44px !important;
		border-radius: 8px !important;
	}

	body.fb-ui-v2 .fbcs-section {
		padding: 22px 0 !important;
	}

	body.fb-ui-v2 .fbcs-service-strip {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.fb-ui-v2 .fbcs-service-strip > div + div {
		border-block-start: 1px solid var(--fb-ui-steel-200) !important;
		border-inline-start: 0 !important;
	}

	body.fb-ui-v2 .fbcs-related-grid {
		display: flex !important;
		grid-template-columns: none !important;
		padding-block-end: 8px;
		overflow-x: auto;
		scroll-snap-type: inline mandatory;
	}

	body.fb-ui-v2 .fbcs-related-grid .fbcs-product-card {
		display: grid !important;
		flex: 0 0 min(88vw, 300px);
		grid-template-columns: 124px minmax(0, 1fr) !important;
		min-block-size: 0;
		scroll-snap-align: start;
	}

	body.fb-ui-v2 .fbcs-related-grid :is(.fbcs-card-image, .fbcs-product-card.is-compact .fbcs-card-image) {
		inline-size: 124px !important;
		block-size: 168px !important;
		min-block-size: 168px !important;
		max-block-size: 168px !important;
		padding: 10px !important;
	}

	body.fb-ui-v2.fbcs-has-mobile-lead-bar .fbcs-product-summary .fbcs-contact-cta {
		display: none !important;
	}

	body.fb-ui-v2 :where(.fbcs-archive-hero, .fbcs-page-hero, .fbcs-hub-hero) {
		padding: 22px 18px !important;
	}

	body.fb-ui-v2 .fbk {
		padding: 13px;
	}

	body.fb-ui-v2 .fbk__heading {
		gap: 4px;
	}

	body.fb-ui-v2 .fbk__topics {
		grid-template-columns: minmax(0, 1fr);
	}

	body.fb-ui-v2 .fbk-topic + .fbk-topic {
		border-block-start: 1px solid var(--fb-ui-steel-200);
		border-inline-start: 0;
	}

	body.fb-ui-v2.page-id-20 .elementor-element-1ef65a4 {
		padding-block: 24px 14px !important;
	}

	body.fb-ui-v2.page-id-20 .elementor-element-579549b {
		padding: 18px 14px !important;
	}

	body.fb-ui-v2.page-id-20 .elementor-element-74c4828 h1 {
		font-size: 1.625rem !important;
	}
}

@media (max-width: 380px) {
	body.fb-ui-v2 .fbh-container {
		inline-size: calc(100% - 20px);
	}

	body.fb-ui-v2 .fbh-brand-copy {
		display: grid;
	}

	body.fb-ui-v2 .fbh-brand-copy small {
		display: none;
	}

	body.fb-ui-v2 .fbh-brand-copy strong {
		font-size: 12.5px;
	}

	body.fb-ui-v2 .fbh-drawer-actions > div {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.fb-ui-v2 .fbcs-product-summary .fbcs-contact-cta {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}

/* --------------------------------------------------------------------------
 * Minimal responsive system — v1.4.1
 * Compact typography, complete product data and an anchored mobile drawer.
 * -------------------------------------------------------------------------- */
body.fb-ui-v2 :where(main, [role="main"]) h1 {
	font-size: clamp(1.625rem, 2.25vw, 2rem) !important;
	line-height: 1.52 !important;
}

body.fb-ui-v2 :where(main, [role="main"]) h2 {
	font-size: clamp(1.2rem, 1.7vw, 1.5rem) !important;
	line-height: 1.62 !important;
}

body.fb-ui-v2 :where(main, [role="main"]) h3 {
	font-size: clamp(1.08rem, 1.35vw, 1.25rem) !important;
	line-height: 1.65 !important;
}

/* Remove the nested Elementor frame around the guides archive grid. */
html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-c5ff157 {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

body.fb-ui-v2 .fbk-topic {
	white-space: normal !important;
}

body.fb-ui-v2 .fbk-topic > span {
	min-inline-size: 0;
}

/* Product summary and technical data */
body.fb-ui-v2 .fbcs-product-hero {
	padding: 22px !important;
	gap: 26px !important;
}

body.fb-ui-v2 .fbcs-product-summary {
	gap: 9px;
}

body.fb-ui-v2 .fbcs-product-summary h1 {
	font-size: clamp(1.625rem, 2.2vw, 1.875rem) !important;
	line-height: 1.5 !important;
}

body.fb-ui-v2 .fbcs-product-answer {
	font-size: 13px;
	line-height: 1.85;
}

body.fb-ui-v2 .fbcs-price-heading {
	min-block-size: 0 !important;
	padding: 8px 12px !important;
	font-size: 11.5px !important;
	line-height: 1.5 !important;
}

body.fb-ui-v2 .fbcs-unit-price {
	padding: 9px 12px !important;
}

body.fb-ui-v2 .fbcs-unit-price > span {
	font-size: 11.5px !important;
	line-height: 1.55 !important;
}

body.fb-ui-v2 .fbcs-unit-price > strong {
	font-size: clamp(1.7rem, 2.7vw, 2rem) !important;
	line-height: 1.45 !important;
	font-weight: 850 !important;
}

body.fb-ui-v2 .fbcs-unit-price > small {
	font-size: 11px !important;
	line-height: 1.5 !important;
}

body.fb-ui-v2 .fbcs-price-support {
	gap: 6px !important;
}

body.fb-ui-v2 .fbcs-price-support > div {
	min-block-size: 48px;
	padding: 7px 10px !important;
}

body.fb-ui-v2 .fbcs-price-support :where(span, small) {
	font-size: 11px !important;
	line-height: 1.55 !important;
}

body.fb-ui-v2 .fbcs-price-support b {
	font-size: 13px !important;
	line-height: 1.55 !important;
}

body.fb-ui-v2 .fbcs-price-footnote {
	padding: 7px 10px !important;
	font-size: 11.5px !important;
	line-height: 1.75 !important;
}

body.fb-ui-v2 .fbcs-service-strip {
	grid-template-columns: minmax(104px, 0.55fr) repeat(2, minmax(0, 1.25fr)) !important;
}

body.fb-ui-v2 .fbcs-service-strip > div {
	grid-template-columns: 18px minmax(0, 1fr) !important;
	align-items: start !important;
	min-block-size: 48px;
	padding: 7px 8px !important;
	gap: 7px !important;
}

body.fb-ui-v2 .fbcs-service-strip :where(.fb-icon, svg) {
	inline-size: 18px !important;
	block-size: 18px !important;
	margin-block-start: 2px;
}

body.fb-ui-v2 .fbcs-service-strip span {
	gap: 0 !important;
}

body.fb-ui-v2 .fbcs-service-strip small {
	font-size: 10.5px !important;
	line-height: 1.5 !important;
}

body.fb-ui-v2 .fbcs-service-strip b {
	font-size: 12px !important;
	line-height: 1.7 !important;
	font-weight: 700 !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button {
	min-block-size: 44px !important;
	padding: 7px 10px !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button > span {
	gap: 0 !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button small {
	display: none !important;
}

body.fb-ui-v2 .fbcs-product-summary .fbcs-lead-button b {
	font-size: 12.5px !important;
	line-height: 1.55 !important;
}

body.fb-ui-v2 .fbcs-section {
	padding: 22px 0 !important;
}

body.fb-ui-v2 .fbcs-section-heading {
	margin-block-end: 10px;
}

body.fb-ui-v2 .fbcs-section-heading > span {
	display: none;
}

body.fb-ui-v2 .fbcs-section-heading h2 {
	font-size: clamp(1.3rem, 1.8vw, 1.5rem) !important;
	line-height: 1.6 !important;
}

body.fb-ui-v2 .fbcs-decision-grid > :only-child {
	grid-column: 1 / -1 !important;
	inline-size: 100% !important;
	max-inline-size: none !important;
}

body.fb-ui-v2 .fbcs-spec-grid {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	inline-size: 100% !important;
	max-inline-size: none !important;
	overflow: hidden;
	border: 1px solid var(--fb-ui-steel-200);
	background: var(--fb-ui-steel-200);
	gap: 1px;
}

body.fb-ui-v2 .fbcs-spec-grid > div {
	grid-column: span 2;
	min-inline-size: 0;
	min-block-size: 66px;
	padding: 10px 12px !important;
	border: 0 !important;
	background: #fff;
}

body.fb-ui-v2 .fbcs-spec-grid dt {
	font-size: 11.5px !important;
	line-height: 1.65 !important;
}

body.fb-ui-v2 .fbcs-spec-grid dd {
	margin-block-start: 2px !important;
	font-size: 13px !important;
	line-height: 1.65 !important;
	overflow-wrap: anywhere;
}

body.fb-ui-v2 .fbcs-spec-grid > :nth-last-child(2):nth-child(3n + 1),
body.fb-ui-v2 .fbcs-spec-grid > :last-child:nth-child(3n + 2) {
	grid-column: span 3;
}

body.fb-ui-v2 .fbcs-spec-grid > :last-child:nth-child(3n + 1) {
	grid-column: 1 / -1;
}

/* Guides archive */
html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-504280d,
html body.search.fb-ui-v2 .elementor-element.elementor-element-504280d {
	padding-block: 22px !important;
}

html body.blog.fb-ui-v2.elementor-page-350 .elementor-350 .elementor-element.elementor-element-0404793 {
	display: none !important;
}

body.blog .elementor-element-504280d :where(h1, p),
body.search .elementor-element-504280d :where(h1, p) {
	max-inline-size: 720px;
}

body.fb-ui-v2 .fbk {
	padding: 14px;
	gap: 10px !important;
}

body.fb-ui-v2 .fbk__heading {
	margin-block-end: 8px;
	gap: 16px;
}

body.fb-ui-v2 .fbk__heading h2,
body.fb-ui-v2 .fbk__results-head h2 {
	font-size: clamp(1.25rem, 1.7vw, 1.5rem) !important;
	line-height: 1.55 !important;
}

body.fb-ui-v2 .fbk__heading p {
	font-size: 12.5px;
	line-height: 1.75;
}

body.fb-ui-v2 .fbk-topic {
	min-block-size: 56px;
	padding: 7px 9px !important;
}

body.fb-ui-v2 .fbk-topic strong {
	font-size: 12.75px;
	line-height: 1.55;
}

body.fb-ui-v2 .fbk-topic small {
	margin-block-start: 1px;
	font-size: 10.5px;
	line-height: 1.5;
}

body.fb-ui-v2 .fbk__utility {
	margin-block-start: 8px;
	gap: 8px;
}

body.fb-ui-v2 .fbk__finder {
	padding: 8px;
}

body.fb-ui-v2 .fbk__search input {
	min-block-size: 42px;
	border-radius: 8px;
	font-size: 12.5px;
}

body.fb-ui-v2 .fbk__filters {
	margin-block-start: 6px;
	gap: 5px;
}

body.fb-ui-v2 .fbk__filters button,
body.fb-ui-v2 .fbk__results-head button {
	min-block-size: 38px;
	padding: 6px 11px;
	font-size: 11.5px;
}

body.fb-ui-v2 .fbk__status {
	margin-block-start: 3px !important;
	font-size: 11px;
	line-height: 1.6;
}

body.fb-ui-v2 .fbk__results-head {
	align-items: center;
	margin: 12px 0 6px;
}

body.blog .elementor-posts-container,
body.search .elementor-posts-container {
	padding-block: 28px 38px;
	gap: 16px !important;
}

body.blog .elementor-post__card,
body.search .elementor-post__card {
	border-radius: 12px !important;
}

body.blog .elementor-post__text,
body.search .elementor-post__text {
	padding: 16px 17px 9px !important;
}

body.blog .elementor-post__title,
body.search .elementor-post__title {
	min-block-size: 0;
	margin-block-end: 7px !important;
	font-size: clamp(1.05rem, 1.35vw, 1.2rem) !important;
	line-height: 1.65 !important;
}

body.blog .elementor-post__excerpt,
body.search .elementor-post__excerpt {
	font-size: 13px;
	line-height: 1.85;
}

body.blog .elementor-post__meta-data,
body.search .elementor-post__meta-data {
	margin: 0 17px 15px !important;
}

/* Single article */
body.single-post .fb-article-shell {
	padding-block: 32px !important;
}

body.single-post .fb-article-shell > .e-con-inner {
	grid-template-columns: minmax(0, 1fr) minmax(220px, 260px) !important;
	gap: 24px !important;
}

body.single-post .fb-article-main {
	padding: 32px !important;
	border-radius: 14px;
	box-shadow: none;
}

body.single-post .fb-article-title h1 {
	max-inline-size: 28ch;
	margin-block-end: 14px;
	font-size: clamp(1.75rem, 2.5vw, 2.125rem) !important;
	line-height: 1.55 !important;
}

body.single-post .fb-article-hero {
	margin-block: 18px 28px !important;
	border-radius: 12px;
}

body.single-post .fb-article-content {
	font-size: 1rem;
	line-height: 2;
}

body.single-post .fb-article-content h2 {
	margin-block: 2.15em 0.7em;
	padding-inline-start: 11px;
	border-inline-start-width: 2px;
	font-size: clamp(1.3rem, 1.8vw, 1.5rem) !important;
	line-height: 1.7 !important;
}

body.single-post .fb-article-content h3 {
	margin-block: 1.7em 0.6em;
	font-size: clamp(1.12rem, 1.4vw, 1.25rem) !important;
	line-height: 1.7 !important;
}

body.single-post .fb-article-aside {
	top: 88px;
}

body.single-post .fb-article-toc {
	border-radius: 11px !important;
}

body.single-post .fb-article-toc .elementor-toc__header {
	min-block-size: 52px;
	padding: 10px 12px !important;
}

body.single-post .fb-article-toc .elementor-toc__header-title {
	font-size: 15px !important;
	line-height: 1.55 !important;
}

body.single-post .fb-article-toc .elementor-toc__toggle-button {
	inline-size: 40px;
	block-size: 40px;
}

body.single-post .fb-article-toc .elementor-toc__body {
	padding: 10px 12px 13px !important;
	font-size: 12.5px;
	line-height: 1.8;
}

/* Contact: keep both lazy maps, but remove the oversized stretched rows. */
body.fb-ui-v2.page-id-20 :where(
	.elementor-element-2c081a7,
	.elementor-element-67fcaa8
) {
	align-items: start !important;
}

body.fb-ui-v2.page-id-20 :is(
	.elementor-element-c0d7a22,
	.elementor-element-f9d47c8,
	.elementor-element-9158a41,
	.elementor-element-913eae9
) {
	min-block-size: 0 !important;
	border-radius: 12px !important;
	box-shadow: none !important;
}

body.fb-ui-v2.page-id-20 .elementor-widget-google_maps,
body.fb-ui-v2.page-id-20 .elementor-widget-google_maps .elementor-widget-container,
body.fb-ui-v2.page-id-20 .elementor-widget-google_maps iframe {
	block-size: 380px !important;
	min-block-size: 380px !important;
}

/* Quiet but visible feedback; transforms do not affect page geometry. */
@media (hover: hover) and (pointer: fine) {
	body.fb-ui-v2 :where(
		.fbcs-product-card,
		.fb-home__product-card,
		.fb-home__article-grid article,
		.elementor-post__card
	):hover,
	body.fb-ui-v2 :where(
		.fbcs-product-card,
		.fb-home__product-card,
		.fb-home__article-grid article,
		.elementor-post__card
	):focus-within {
		border-color: #aebdcd !important;
		transform: translateY(-1px);
	}
}

@media (max-width: 1080px) {
	body.fb-ui-v2 .fbh.has-js .fbh-panel,
	body.fb-ui-v2 .fbh.is-ready .fbh-panel {
		align-items: stretch !important;
		justify-content: flex-start !important;
		inline-size: min(92vw, 360px);
		overflow: hidden;
	}

	body.fb-ui-v2 .fbh-drawer-head {
		inline-size: 100%;
	}

	body.fb-ui-v2 .fbh-nav {
		flex: 1 1 auto;
		inline-size: 100%;
		min-block-size: 0;
		padding: 8px 12px;
		overflow-y: auto;
	}

	body.fb-ui-v2 .fbh-drawer-actions {
		flex: 0 0 auto;
		inline-size: 100%;
		margin-block-start: auto;
	}

	html body.fb-ui-v2 #fb-site-header .fbh-overlay {
		inset: 0 !important;
		inline-size: 100% !important;
		block-size: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: rgba(7, 20, 35, 0.58) !important;
		background-image: none !important;
		color: transparent !important;
		box-shadow: none !important;
		-webkit-appearance: none;
		appearance: none;
	}

	html body.fb-ui-v2 #fb-site-header .fbh-overlay:hover,
	html body.fb-ui-v2 #fb-site-header .fbh-overlay:focus,
	html body.fb-ui-v2 #fb-site-header .fbh-overlay:active {
		background: rgba(7, 20, 35, 0.58) !important;
		background-image: none !important;
	}

	body.fb-ui-v2 #fb-site-header .fbh-close:hover,
	body.fb-ui-v2 #fb-site-header .fbh-close:focus,
	body.fb-ui-v2 #fb-site-header .fbh-close:active {
		border-color: var(--fb-ui-steel-200) !important;
		color: var(--fb-ui-navy-900) !important;
		background: #fff !important;
	}

	body.single-post .fb-article-shell > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.fb-ui-v2 .fbcs-spec-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.fb-ui-v2 .fbcs-spec-grid > div {
		grid-column: auto !important;
	}

	body.fb-ui-v2 .fbcs-spec-grid > :last-child:nth-child(odd) {
		grid-column: 1 / -1 !important;
	}

	body.fb-ui-v2 #fb-site-header:not(.has-js):not(.is-ready) .fbh-main-inner {
		flex-wrap: wrap;
	}

	body.fb-ui-v2 #fb-site-header:not(.has-js):not(.is-ready) .fbh-panel {
		flex: 0 0 100%;
		inline-size: 100%;
	}
}

@media (max-width: 900px) {
	body.fb-ui-v2 .fbk__topics {
		grid-template-columns: minmax(0, 1fr);
	}

	body.fb-ui-v2 .fbk-topic + .fbk-topic {
		border-block-start: 1px solid var(--fb-ui-steel-200);
		border-inline-start: 0 !important;
	}
}

@media (max-width: 767px) {
	body.fb-ui-v2 :where(main, [role="main"]) h1 {
		font-size: 1.625rem !important;
	}

	body.fb-ui-v2 .fbcs-service-strip {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.fb-ui-v2 .fbcs-product-hero {
		padding: 14px !important;
	}

	body.fb-ui-v2 .fbcs-product-summary h1 {
		font-size: 1.55rem !important;
	}

	body.fb-ui-v2 .fbcs-unit-price > strong {
		font-size: 1.7rem !important;
	}

	body.fb-ui-v2 .fbcs-service-strip > div {
		min-block-size: 0;
		padding: 8px !important;
	}

	body.fb-ui-v2 .fbcs-section {
		padding: 18px 0 !important;
	}

	body.fb-ui-v2 .fbk {
		padding: 11px;
	}

	body.fb-ui-v2 .fbk__heading {
		margin-block-end: 6px;
	}

	body.fb-ui-v2 .fbk__results-head {
		align-items: flex-start;
		margin-block-start: 10px;
	}

	body.blog .elementor-posts-container,
	body.search .elementor-posts-container {
		padding-block: 20px 30px;
		gap: 12px !important;
	}

	body.single-post .fb-article-shell {
		padding: 10px !important;
	}

	body.single-post .fb-article-main {
		padding: 17px 15px !important;
		border-radius: 11px;
	}

	body.single-post .fb-article-title h1 {
		font-size: 1.625rem !important;
		line-height: 1.6 !important;
	}

	body.single-post .fb-article-hero {
		margin-block: 14px 22px !important;
		border-radius: 9px;
	}

	body.single-post .fb-article-content {
		font-size: 0.965rem;
		line-height: 1.95;
	}

	body.single-post .fb-article-content h2 {
		font-size: 1.25rem !important;
	}

	body.fb-ui-v2.page-id-20 .elementor-widget-google_maps,
	body.fb-ui-v2.page-id-20 .elementor-widget-google_maps .elementor-widget-container,
	body.fb-ui-v2.page-id-20 .elementor-widget-google_maps iframe {
		block-size: 300px !important;
		min-block-size: 300px !important;
	}
}

@media (max-width: 620px) {
	body.fb-ui-v2 .fbcs-spec-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.fb-ui-v2 .fbcs-spec-grid > * {
		grid-column: 1 !important;
	}

	body.fb-ui-v2 .fbh-drawer-actions a {
		padding-inline: 8px;
		font-size: 11px;
	}

	body.fb-ui-v2 .fbh-drawer-actions bdi {
		font-size: 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.fb-ui-v2 :where(
		.fbcs-product-card,
		.fb-home__product-card,
		.fb-home__article-grid article,
		.elementor-post__card
	) {
		transform: none !important;
	}
}
