/*
Theme Name: BESUS Source WoodMart Child
Description: Presentation layer for the BESUS Source pure B2B website.
Author: BESUS Source
Template: woodmart
Version: 0.38.3
Text Domain: besus-source
*/

:root {
	--besus-ink: #172126;
	--besus-muted: #5d686d;
	--besus-line: #d9dfe1;
	--besus-surface: #f5f7f7;
	--besus-accent: #087d69;
	--besus-accent-dark: #075f51;
	--besus-highlight: #c94f38;
	--besus-error: #a52a2a;
}

.besus-site-header {
	position: relative;
	z-index: 40;
	border-bottom: 1px solid var(--besus-line);
	background: #fff;
}

.besus-header-layout {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 34px;
	align-items: center;
	min-height: 76px;
}

.besus-header-brand {
	display: inline-flex;
	align-items: baseline;
	gap: 7px;
	color: var(--besus-ink);
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
}

.besus-header-brand small {
	color: var(--besus-accent-dark);
	font-size: 11px;
	font-weight: 800;
}

.besus-desktop-navigation {
	min-width: 0;
}

.besus-primary-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 26px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.besus-primary-menu .menu-item {
	position: relative;
	margin: 0;
	list-style: none;
}

.besus-primary-menu a {
	display: block;
	color: var(--besus-ink);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
	text-decoration: none;
}

.besus-desktop-navigation .besus-primary-menu > .menu-item > a {
	padding-block: 29px;
}

.besus-primary-menu a:hover,
.besus-primary-menu a:focus-visible,
.besus-primary-menu .current-menu-item > a,
.besus-primary-menu .current-menu-ancestor > a {
	color: var(--besus-accent-dark);
}

.besus-desktop-navigation .besus-primary-menu > .current-menu-item:not(.besus-menu-cta) > a::before,
.besus-desktop-navigation .besus-primary-menu > .current-menu-ancestor:not(.besus-menu-cta) > a::before {
	position: absolute;
	right: 0;
	bottom: 18px;
	left: 0;
	height: 2px;
	background: var(--besus-accent);
	content: "";
}

.besus-desktop-navigation .menu-item-has-children > a::after {
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 0 3px 7px;
	border-right: 1.5px solid currentcolor;
	border-bottom: 1.5px solid currentcolor;
	content: "";
	transform: rotate(45deg);
}

.besus-desktop-navigation .sub-menu {
	position: absolute;
	top: calc(100% - 12px);
	left: -20px;
	z-index: 2;
	display: grid;
	min-width: 310px;
	margin: 0;
	padding: 10px;
	border: 1px solid var(--besus-line);
	background: #fff;
	box-shadow: 0 16px 30px rgba(23, 33, 38, 0.12);
	list-style: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-4px);
	transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
}

.besus-desktop-navigation .sub-menu::before {
	position: absolute;
	right: 0;
	bottom: 100%;
	left: 0;
	height: 13px;
	content: "";
}

.besus-desktop-navigation .sub-menu .sub-menu {
	top: -11px;
	left: calc(100% + 10px);
}

.besus-desktop-navigation .sub-menu a {
	padding: 10px 12px;
	line-height: 1.4;
}

.besus-desktop-navigation .sub-menu a:hover,
.besus-desktop-navigation .sub-menu a:focus-visible {
	background: var(--besus-surface);
}

.besus-desktop-navigation .menu-item:hover > .sub-menu,
.besus-desktop-navigation .menu-item:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.besus-desktop-navigation .besus-products-menu > .sub-menu {
	grid-template-columns: repeat(2, minmax(210px, 1fr));
	min-width: 500px;
}

.besus-desktop-navigation .besus-menu-cta > a {
	padding: 12px 18px !important;
	background: var(--besus-accent) !important;
	color: #fff !important;
	white-space: nowrap;
}

.besus-desktop-navigation .besus-menu-cta > a:hover,
.besus-desktop-navigation .besus-menu-cta > a:focus-visible {
	background: var(--besus-accent-dark) !important;
}

.besus-mobile-navigation {
	display: none;
	justify-self: end;
}

.besus-mobile-navigation > summary {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--besus-line);
	cursor: pointer;
	list-style: none;
}

.besus-mobile-navigation > summary::-webkit-details-marker {
	display: none;
}

.besus-menu-icon {
	display: grid;
	gap: 4px;
	width: 20px;
}

.besus-menu-icon span {
	display: block;
	height: 2px;
	background: var(--besus-ink);
}

.besus-mobile-navigation nav {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	padding: 10px 20px 22px;
	border-top: 1px solid var(--besus-line);
	border-bottom: 1px solid var(--besus-line);
	background: #fff;
	box-shadow: 0 16px 30px rgba(23, 33, 38, 0.12);
	max-height: calc(100vh - 66px);
	overflow-y: auto;
}

.besus-mobile-navigation .besus-primary-menu {
	display: block;
}

.besus-mobile-navigation .besus-primary-menu > .menu-item {
	border-bottom: 1px solid var(--besus-line);
}

.besus-mobile-navigation .besus-primary-menu a {
	padding: 13px 0;
	color: var(--besus-ink);
	font-weight: 650;
	text-decoration: none;
}

.besus-mobile-navigation .menu-item-has-children > a::after {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 0 3px 8px;
	border-right: 1.5px solid currentcolor;
	border-bottom: 1.5px solid currentcolor;
	content: "";
	transform: rotate(45deg);
}

.besus-mobile-navigation .sub-menu {
	display: block;
	margin: 0;
	padding: 0 0 8px 18px;
	list-style: none;
}

.besus-mobile-navigation .sub-menu a {
	padding: 10px 0;
	font-size: 14px;
	font-weight: 550;
}

.besus-mobile-navigation .besus-menu-cta {
	padding-block: 10px;
	border-bottom: 0 !important;
}

.besus-mobile-navigation .besus-menu-cta > a {
	padding: 12px 16px;
	background: var(--besus-accent);
	color: #fff;
	text-align: center;
}

.besus-home-main a:focus-visible,
.besus-page-hero a:focus-visible,
.besus-editor-section a:focus-visible,
.besus-editor-band a:focus-visible,
.besus-editor-actions a:focus-visible,
.besus-system-page a:focus-visible,
.besus-archive a:focus-visible,
.besus-collection-single a:focus-visible,
.besus-resource-single a:focus-visible,
.besus-inquiry-form a:focus-visible,
.besus-inquiry-form button:focus-visible,
.besus-inquiry-form input:focus-visible,
.besus-inquiry-form select:focus-visible,
.besus-inquiry-form textarea:focus-visible {
	outline: 3px solid var(--besus-highlight);
	outline-offset: 3px;
}

.wd-header-cart,
.wd-header-my-account,
.wd-header-wishlist,
.wd-header-compare,
.wd-wishlist-btn,
.wd-compare-btn,
.wd-add-btn,
.cart-widget-side,
.login-form-side {
	display: none !important;
}

.besus-pattern-page .page-title,
.besus-b2b-page .content-layout-wrapper > .sidebar-container,
.besus-b2b-page #main-content > .sidebar-container,
.besus-b2b-page #main-content .sidebar-container,
.besus-b2b-page #main-content .area-sidebar,
.besus-b2b-page #main-content aside[role="complementary"],
.besus-b2b-catalog-mode form.cart,
.besus-b2b-catalog-mode .single_add_to_cart_button,
.besus-b2b-catalog-mode .quantity,
.besus-b2b-catalog-mode .widget_price_filter,
.besus-b2b-catalog-mode .onsale,
.besus-b2b-catalog-mode .product-label.onsale {
	display: none !important;
}

.besus-b2b-page #main-content > .site-content,
.besus-b2b-page #main-content > .wd-content-area,
.besus-page-main,
.besus-home-main {
	grid-column: 1 / -1 !important;
	width: 100%;
	max-width: none;
}

.besus-page-entry {
	margin: 0;
}

/* WoodMart presets can wrap system templates in a sidebar grid even when the template has no sidebar. */
.besus-b2b-page .main-page-wrapper > .container,
.besus-b2b-page .main-page-wrapper > .container-fluid {
	width: 100%;
	max-width: none;
	padding-inline: 0;
}

.besus-b2b-page .content-layout-wrapper {
	display: block;
	margin-inline: 0;
}

.besus-b2b-page .content-layout-wrapper > .site-content,
.besus-b2b-page .content-layout-wrapper > .wd-content-area,
.besus-b2b-page #primary.besus-archive,
.besus-b2b-page #primary.besus-system-page,
.besus-b2b-page #primary.besus-resource-single,
.besus-b2b-page #primary.besus-collection-single {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
	padding-inline: 0;
	flex: 0 0 100% !important;
}

.besus-b2b-catalog-mode .footer-container,
.besus-b2b-catalog-mode .wd-prefooter,
.besus-b2b-catalog-mode .footer-sidebar,
.besus-b2b-catalog-mode .copyrights-wrapper {
	display: none !important;
}

.wd-nav-main > li.besus-menu-cta > a {
	min-height: 42px;
	padding-inline: 18px;
	background: var(--besus-accent);
	color: #fff;
}

.wd-nav-main > li.besus-menu-cta:hover > a,
.wd-nav-main > li.besus-menu-cta.current-menu-item > a {
	background: var(--besus-accent-dark);
	color: #fff;
}

.mobile-nav .login-side-opener,
.mobile-nav .wd-my-account-links,
.mobile-nav .mobile-categories-title {
	display: none !important;
}

.besus-shell {
	width: min(100% - 40px, 1240px);
	margin-inline: auto;
}

.besus-home-main {
	color: var(--besus-ink);
	background: #fff;
}

.besus-product-archive-content {
	padding-block: 72px;
}

.besus-catalog-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: 30px;
}

.besus-catalog-heading h2 {
	margin: 0;
	font-size: 34px;
	line-height: 1.2;
	letter-spacing: 0;
}

.besus-catalog-heading > p {
	flex: 0 0 auto;
	margin: 0;
	color: var(--besus-muted);
	font-size: 14px;
}

.besus-catalog-tools {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 38px;
	padding: 24px;
	border: 1px solid var(--besus-line);
	border-radius: 6px;
	background: var(--besus-surface);
}

.besus-catalog-tools > div {
	min-width: 0;
}

.besus-catalog-search {
	grid-column: span 2;
}

.besus-catalog-tools label {
	display: block;
	margin-bottom: 7px;
	color: var(--besus-ink);
	font-size: 12px;
	font-weight: 750;
}

.besus-catalog-tools input,
.besus-catalog-tools select {
	width: 100%;
	height: 46px;
	margin: 0;
	border: 1px solid #c7d0d2;
	border-radius: 3px;
	background: #fff;
	color: var(--besus-ink);
}

.besus-catalog-tools input:focus,
.besus-catalog-tools select:focus {
	border-color: var(--besus-accent);
	outline: 2px solid rgba(8, 125, 105, 0.16);
	outline-offset: 1px;
}

.besus-catalog-tools__actions {
	display: flex;
	grid-column: span 2;
	align-items: center;
	gap: 18px;
	align-self: end;
	min-height: 46px;
}

.besus-catalog-tools__actions .button {
	margin: 0;
}

.besus-catalog-tools__actions a {
	color: var(--besus-accent-dark);
	font-size: 14px;
	font-weight: 700;
}

.besus-catalog-heading + .products {
	margin-top: 34px;
}

.besus-product-paths {
	padding-block: 72px 0;
	background: #fff;
}

.besus-product-path-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-block: 1px solid var(--besus-line);
}

.besus-product-path-grid a {
	min-width: 0;
	padding: 30px;
	color: var(--besus-ink);
	text-decoration: none;
}

.besus-product-path-grid a + a {
	border-left: 1px solid var(--besus-line);
}

.besus-product-path-grid span {
	display: block;
	margin-bottom: 24px;
	color: var(--besus-highlight);
	font-size: 13px;
	font-weight: 750;
}

.besus-product-path-grid h3 {
	margin: 0 0 10px;
	font-size: 22px;
	letter-spacing: 0;
}

.besus-product-path-grid p {
	margin: 0;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-site-footer {
	padding: 64px 0 24px;
	background: var(--besus-ink);
	color: #d9e0e1;
}

.besus-footer-grid {
	display: grid;
	grid-template-columns: minmax(260px, 1.35fr) repeat(2, minmax(150px, 0.72fr)) minmax(240px, 1fr);
	gap: 34px;
}

.besus-footer-grid.has-buyer-info {
	grid-template-columns: minmax(230px, 1.3fr) repeat(3, minmax(135px, 0.72fr)) minmax(220px, 1fr);
}

.besus-site-footer h2,
.besus-footer-brand {
	margin: 0 0 16px;
	color: #fff;
	font-family: inherit;
	font-size: 16px;
	font-weight: 750;
	letter-spacing: 0;
}

.besus-footer-brand {
	font-size: 22px;
}

.besus-footer-intro p:last-child,
.besus-footer-contact p {
	max-width: 330px;
	margin: 0;
	line-height: 1.65;
}

.besus-footer-intro .besus-footer-company {
	margin-top: 18px;
	color: #aeb9bc;
	font-size: 13px;
}

.besus-footer-contact-list {
	color: #d9e0e1;
	font-size: 14px;
}

.besus-footer-contact-list li + li {
	margin-top: 7px;
}

.besus-site-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.besus-site-footer li + li {
	margin-top: 10px;
}

.besus-site-footer a:not(.button) {
	color: #d9e0e1;
}

.besus-site-footer a:hover,
.besus-site-footer a:focus-visible {
	color: #fff;
}

.besus-footer-contact .button {
	margin-top: 22px;
}

.besus-footer-legal {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-top: 52px;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	font-size: 13px;
}

.besus-footer-legal p {
	margin: 0;
}

.besus-footer-legal p + p,
.besus-footer-legal address {
	margin-top: 5px;
	color: #aeb9bc;
	font-size: 12px;
	font-style: normal;
	line-height: 1.55;
}

.besus-company-profile {
	padding-block: 72px;
	border-block: 1px solid var(--besus-line);
	background: var(--besus-surface);
}

.besus-company-profile .besus-section-heading {
	max-width: 820px;
	margin-bottom: 36px;
}

.besus-company-profile .besus-section-heading > p:last-child {
	color: var(--besus-muted);
	font-size: 17px;
	line-height: 1.7;
}

.besus-company-contact-grid,
.besus-company-entity-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 56px;
}

.besus-company-contact-list {
	margin: 0;
	border-top: 1px solid var(--besus-line);
}

.besus-company-contact-list > div {
	display: grid;
	grid-template-columns: minmax(130px, 0.7fr) minmax(0, 1.3fr);
	gap: 18px;
	padding: 14px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-company-contact-list dt {
	color: var(--besus-muted);
	font-weight: 650;
}

.besus-company-contact-list dd {
	margin: 0;
	color: var(--besus-ink);
}

.besus-company-contact-list a {
	color: var(--besus-accent-dark);
	font-weight: 700;
}

.besus-company-addresses {
	padding-left: 36px;
	border-left: 1px solid var(--besus-line);
}

.besus-company-addresses h3 {
	margin: 0 0 8px;
	font-size: 18px;
	letter-spacing: 0;
}

.besus-company-addresses h3:not(:first-child) {
	margin-top: 28px;
	padding-top: 28px;
	border-top: 1px solid var(--besus-line);
}

.besus-company-addresses p {
	margin: 0 0 8px;
}

.besus-company-addresses address,
.besus-company-entity-grid address {
	color: var(--besus-muted);
	font-style: normal;
	line-height: 1.65;
}

.besus-company-entity-grid {
	border-block: 1px solid var(--besus-line);
}

.besus-company-entity-grid article {
	min-width: 0;
	padding: 32px 36px 32px 0;
}

.besus-company-entity-grid article + article {
	padding-right: 0;
	padding-left: 36px;
	border-left: 1px solid var(--besus-line);
}

.besus-company-entity-grid h3 {
	margin: 0 0 14px;
	font-size: 22px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-company-entity-grid article > p:not(.besus-card-label) {
	margin: 0 0 12px;
	color: var(--besus-muted);
}

.besus-product-archive-content .woocommerce-result-count,
.besus-product-archive-content .woocommerce-ordering {
	margin-bottom: 26px;
}

.besus-home-hero {
	position: relative;
	display: flex;
	min-height: min(76vh, 760px);
	align-items: center;
	background-color: #273033;
	background-position: center;
	background-size: cover;
	color: #fff;
}

.besus-home-hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(10, 16, 18, 0.62);
}

.besus-home-hero-inner {
	position: relative;
	z-index: 1;
	padding-block: 76px;
}

.besus-home-brand {
	margin: 0 0 22px;
	font-size: 24px;
	font-weight: 750;
	letter-spacing: 0;
}

.besus-home-hero h1 {
	max-width: 860px;
	margin: 0;
	color: #fff;
	font-size: 52px;
	line-height: 1.08;
	letter-spacing: 0;
}

.besus-home-hero-copy {
	max-width: 760px;
	margin: 24px 0 0;
	font-size: 19px;
	line-height: 1.65;
}

.besus-command-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin-top: 32px;
}

.besus-command-row .button {
	margin: 0;
}

.besus-button-light {
	border-color: #fff !important;
	background: #fff !important;
	color: var(--besus-ink) !important;
}

.besus-hero-text-link {
	padding: 11px 8px;
	color: #fff;
	font-weight: 650;
	text-decoration: underline;
	text-underline-offset: 5px;
}

.besus-capability-strip {
	border-bottom: 1px solid var(--besus-line);
	background: #fff;
}

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

.besus-capability-grid a {
	display: flex;
	min-width: 0;
	min-height: 112px;
	flex-direction: column;
	justify-content: center;
	padding: 22px 28px;
	border-right: 1px solid var(--besus-line);
	color: var(--besus-ink);
	text-decoration: none;
}

.besus-capability-grid a:first-child {
	border-left: 1px solid var(--besus-line);
}

.besus-capability-grid strong {
	font-size: 17px;
}

.besus-capability-grid span {
	margin-top: 5px;
	color: var(--besus-muted);
	font-size: 14px;
}

.besus-home-band {
	padding-block: 84px;
}

.besus-home-band-muted,
.besus-editor-band {
	background: var(--besus-surface);
}

.besus-section-heading {
	max-width: 650px;
	margin-bottom: 32px;
}

.besus-section-heading-wide {
	max-width: 780px;
}

.besus-section-heading h2,
.besus-home-cta h2,
.besus-page-hero h1 {
	margin: 0;
	color: var(--besus-ink);
	font-size: 38px;
	line-height: 1.18;
	letter-spacing: 0;
}

.besus-section-heading > p:not(.besus-eyebrow) {
	margin: 14px 0 0;
	color: var(--besus-muted);
	font-size: 17px;
	line-height: 1.7;
}

.besus-eyebrow,
.besus-card-label {
	margin: 0 0 10px;
	color: var(--besus-highlight);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: 0;
	text-transform: uppercase;
}

.besus-line-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 50px;
	border-block: 1px solid var(--besus-line);
}

.besus-line-item {
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: 30px 30px 30px 0;
	color: var(--besus-ink);
	text-decoration: none;
}

.besus-line-item + .besus-line-item {
	padding-left: 30px;
	border-left: 1px solid var(--besus-line);
}

.besus-line-media {
	display: block;
	width: 100%;
	margin-bottom: 24px;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #e7ebec;
}

.besus-line-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-line-number {
	display: block;
	margin-bottom: 18px;
	color: var(--besus-highlight);
	font-weight: 750;
}

.besus-line-content {
	display: block;
}

.besus-line-item h3 {
	margin: 0 0 8px;
	font-size: 21px;
	letter-spacing: 0;
}

.besus-line-item p {
	margin: 0;
	color: var(--besus-muted);
	line-height: 1.6;
}

.besus-showcase + .besus-showcase {
	margin-top: 54px;
}

.besus-showcase-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.besus-showcase-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	background: #fff;
}

.besus-showcase-media {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #e7ebec;
}

.besus-showcase-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 180ms ease;
}

.besus-showcase-card:hover .besus-showcase-media img {
	transform: scale(1.025);
}

.besus-showcase-card-body {
	padding: 22px;
}

.besus-showcase-card h3 {
	margin: 0 0 10px;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-showcase-card h3 a {
	color: var(--besus-ink);
}

.besus-showcase-card-body > p:not(.besus-card-label) {
	margin: 0 0 16px;
	color: var(--besus-muted);
	line-height: 1.6;
}

.besus-card-model {
	font-size: 13px;
}

.besus-card-facts {
	margin: 18px 0;
	padding: 0;
	border-top: 1px solid var(--besus-line);
	list-style: none;
}

.besus-card-facts li {
	display: grid;
	grid-template-columns: minmax(84px, 0.7fr) minmax(0, 1.3fr);
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid var(--besus-line);
	font-size: 13px;
}

.besus-card-facts span {
	color: var(--besus-muted);
}

.besus-text-link {
	color: var(--besus-accent-dark);
	font-weight: 700;
}

.besus-section-command {
	margin: 32px 0 0;
	text-align: center;
}

.besus-audience-band {
	background: #f4f6f6;
	color: var(--besus-ink);
}

.besus-audience-intro.has-media {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(420px, 1.15fr);
	gap: clamp(40px, 6vw, 84px);
	align-items: center;
	margin-bottom: clamp(40px, 5vw, 64px);
}

.besus-audience-intro.has-media .besus-section-heading {
	margin-bottom: 0;
}

.besus-audience-media {
	margin: 0;
	aspect-ratio: 3 / 2;
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
}

.besus-audience-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-audience-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-block: 1px solid var(--besus-line);
}

.besus-audience-grid a {
	min-width: 0;
	padding: 30px;
	color: var(--besus-ink);
	text-decoration: none;
	transition: background-color 160ms ease;
}

.besus-audience-grid a:hover,
.besus-audience-grid a:focus-visible {
	background: #fff;
}

.besus-audience-grid a + a {
	border-left: 1px solid var(--besus-line);
}

.besus-audience-grid h3 {
	margin: 0 0 10px;
	color: var(--besus-ink);
	font-size: 21px;
	letter-spacing: 0;
}

.besus-audience-grid p {
	margin: 0;
	color: var(--besus-muted);
	line-height: 1.6;
}

.besus-audience-command {
	margin: 28px 0 0;
}

.besus-audience-command a {
	color: var(--besus-accent-dark);
	font-weight: 700;
	text-underline-offset: 5px;
}

.besus-value-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: 72px;
}

.besus-partnership-band {
	background: #fff;
}

.besus-partnership-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-block: 1px solid var(--besus-line);
}

.besus-partnership-grid article {
	min-width: 0;
	padding: 30px;
}

.besus-partnership-grid article + article {
	border-left: 1px solid var(--besus-line);
}

.besus-partnership-grid h3 {
	margin: 0 0 12px;
	font-size: 21px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-partnership-grid article > p:not(.besus-card-label) {
	margin: 0 0 18px;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-partnership-note {
	max-width: 920px;
	margin: 26px 0 0;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-partnership-note a {
	color: var(--besus-accent-dark);
	font-weight: 700;
}

.besus-value-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.besus-value-list li {
	display: grid;
	grid-template-columns: minmax(150px, 0.7fr) minmax(0, 1.3fr);
	gap: 20px;
	padding: 18px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-value-list li:first-child {
	border-top: 1px solid var(--besus-line);
}

.besus-value-list span {
	color: var(--besus-muted);
}

.besus-process-list {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--besus-line);
	list-style: none;
}

.besus-process-list li {
	min-width: 0;
	padding: 24px 22px;
	border-right: 1px solid var(--besus-line);
	border-bottom: 1px solid var(--besus-line);
	font-weight: 650;
}

.besus-process-list li:nth-child(5n + 1) {
	border-left: 1px solid var(--besus-line);
}

.besus-process-list li span {
	display: block;
	margin-bottom: 24px;
	color: var(--besus-highlight);
	font-size: 13px;
}

.besus-home-cta {
	padding-block: 78px;
	background: var(--besus-accent-dark);
	color: #fff;
}

.besus-home-cta h2 {
	max-width: 820px;
	color: #fff;
}

.besus-home-cta p {
	max-width: 660px;
	margin: 16px 0 0;
	color: #e1f1ee;
	font-size: 17px;
}

.besus-page-hero {
	padding-block: 72px;
	background: #20292c;
	color: #fff;
}

.besus-page-hero h1 {
	max-width: 900px;
	color: #fff;
}

.besus-page-lead {
	max-width: 760px;
	margin: 18px 0 0;
	color: #d9e0e1;
	font-size: 18px;
	line-height: 1.7;
}

body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child,
body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child,
body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child,
body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child,
body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child {
	display: flex;
	min-height: clamp(380px, 37.5vw, 540px);
	align-items: center;
	background-color: #f4f2ed;
	background-image: linear-gradient(90deg, rgba(248, 247, 243, 0.96) 0%, rgba(248, 247, 243, 0.86) 38%, rgba(248, 247, 243, 0.18) 60%, rgba(248, 247, 243, 0) 72%), var(--besus-page-banner-desktop);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child h1,
body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child h1,
body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child h1,
body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child h1,
body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child h1 {
	max-width: 760px;
	color: var(--besus-ink);
}

body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child .besus-page-lead,
body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child .besus-page-lead,
body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child .besus-page-lead,
body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child .besus-page-lead,
body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child .besus-page-lead {
	max-width: 660px;
	color: #465156;
}

.besus-taxonomy-hero.has-page-banner .besus-taxonomy-hero-layout {
	grid-template-columns: minmax(0, 760px);
}

@media (max-width: 767px) {
	body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child,
	body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child,
	body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child,
	body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child,
	body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child {
		min-height: 560px;
		align-items: flex-start;
		padding-top: 54px;
		padding-bottom: 250px;
		background-image: linear-gradient(180deg, rgba(248, 247, 243, 0.98) 0%, rgba(248, 247, 243, 0.9) 34%, rgba(248, 247, 243, 0.28) 52%, rgba(248, 247, 243, 0) 68%), var(--besus-page-banner-mobile);
		background-position: center;
	}

	body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child h1,
	body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child h1,
	body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child h1,
	body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child h1,
	body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child h1 {
		font-size: clamp(30px, 8vw, 40px);
	}

	body.besus-page-banner-active .besus-page-main .besus-page-entry > .besus-page-hero:first-child .besus-page-lead,
	body.besus-page-banner-active .besus-product-archive > .besus-page-hero:first-child .besus-page-lead,
	body.besus-page-banner-active .besus-product-taxonomy-archive > .besus-page-hero:first-child .besus-page-lead,
	body.besus-page-banner-active .besus-system-page > .besus-page-hero:first-child .besus-page-lead,
	body.besus-page-banner-active .besus-collection-archive > .besus-page-hero:first-child .besus-page-lead {
		font-size: 16px;
		line-height: 1.55;
	}
}

.besus-editor-section,
.besus-editor-band > .besus-shell {
	padding-block: 72px;
}

.besus-editor-columns,
.besus-path-columns {
	gap: 36px;
}

.besus-editor-columns > .wp-block-column {
	padding-top: 20px;
	border-top: 3px solid var(--besus-accent);
}

.besus-editor-columns h2,
.besus-editor-columns h3,
.besus-path-column h2 {
	font-size: 22px;
	letter-spacing: 0;
}

.besus-editor-section > p {
	max-width: 820px;
	color: var(--besus-muted);
	font-size: 17px;
	line-height: 1.7;
}

.besus-buyer-path-columns {
	margin-top: 34px;
}

.besus-buyer-path-columns > .wp-block-column {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.besus-buyer-path-columns > .wp-block-column > p:not(:last-child) {
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-buyer-priorities {
	margin: 6px 0 24px;
	padding: 0;
	border-top: 1px solid var(--besus-line);
	list-style: none;
}

.besus-buyer-priorities li {
	padding: 10px 0;
	border-bottom: 1px solid var(--besus-line);
	color: var(--besus-ink);
	font-size: 14px;
}

.besus-buyer-path-columns > .wp-block-column > p:last-child {
	margin-top: auto;
}

.besus-path-column {
	padding: 30px;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	background: #fff;
}

.besus-editor-actions {
	width: min(100% - 40px, 1240px);
	margin: 0 auto;
	padding-block: 0 72px;
}

.besus-resource-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 26px;
	margin-top: 28px;
	padding: 0;
	list-style: none;
}

.besus-resource-list li {
	margin: 0;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--besus-line);
}

.besus-contact-layout {
	align-items: flex-start;
	gap: 64px;
}

.besus-contact-layout .besus-inquiry-form-wrap {
	margin-top: 0;
}

.besus-contact-points {
	margin: 24px 0;
	padding: 0;
	border-top: 1px solid var(--besus-line);
	list-style: none;
}

.besus-contact-points li {
	padding: 12px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-archive-content,
.besus-collection-single-content {
	padding-block: 72px;
}

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

.besus-collection-archive-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	background: #fff;
}

.besus-collection-archive-media {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #e7ebec;
}

.besus-collection-archive-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-collection-placeholder {
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: center;
	padding: 24px;
	color: var(--besus-muted);
	font-weight: 700;
	text-align: center;
}

.besus-collection-archive-body {
	padding: 24px;
}

.besus-collection-archive-body h2 {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-collection-archive-body h2 a {
	color: var(--besus-ink);
}

.besus-collection-archive-body > p:not(.besus-card-label) {
	margin: 0 0 16px;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-collection-featured-media {
	width: min(100% - 40px, 1240px);
	max-height: 680px;
	margin: 0 auto;
	overflow: hidden;
}

.besus-collection-featured-media img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 680px;
	object-fit: cover;
}

.besus-collection-single-content {
	max-width: 960px;
}

.besus-collection-single-content > :first-child {
	margin-top: 0;
}

.besus-product-taxonomy-archive .products {
	margin-bottom: 0;
}

.besus-product-taxonomy-archive .woocommerce-result-count,
.besus-product-taxonomy-archive .woocommerce-ordering {
	margin-bottom: 26px;
}

.besus-taxonomy-hero-layout {
	display: grid;
	align-items: center;
	gap: 64px;
}

.besus-taxonomy-hero.has-featured-image .besus-taxonomy-hero-layout {
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
}

.besus-taxonomy-hero.has-brief-panel .besus-taxonomy-hero-layout {
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
}

.besus-taxonomy-hero-copy {
	min-width: 0;
}

.besus-taxonomy-brief {
	padding: 30px;
	border: 1px solid #536064;
	background: #172126;
}

.besus-taxonomy-brief-label {
	margin: 0 0 14px;
	color: #9ed8cd;
	font-size: 13px;
	font-weight: 750;
	text-transform: uppercase;
}

.besus-taxonomy-brief > p:not(.besus-taxonomy-brief-label) {
	margin: 0;
	color: #e1e7e8;
	font-size: 17px;
	line-height: 1.7;
}

.besus-taxonomy-brief a {
	display: inline-block;
	margin-top: 22px;
	color: #fff;
	font-weight: 750;
	text-decoration: underline;
	text-decoration-color: #9ed8cd;
	text-underline-offset: 5px;
}

.besus-taxonomy-featured-media {
	margin: 0;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #364145;
}

.besus-taxonomy-featured-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-line-value-band {
	border-bottom: 1px solid var(--besus-line);
	background: #fff;
}

.besus-line-value-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.besus-line-value-grid article {
	min-width: 0;
	padding: 38px 30px 38px 0;
}

.besus-line-value-grid article + article {
	padding-left: 30px;
	border-left: 1px solid var(--besus-line);
}

.besus-line-value-grid h2 {
	margin: 0 0 10px;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-line-value-grid p {
	margin: 0;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-fit-band {
	padding-block: 34px;
	border-bottom: 1px solid var(--besus-line);
	background: #eef2f1;
}

.besus-fit-layout {
	display: grid;
	grid-template-columns: minmax(180px, 0.55fr) minmax(0, 2.45fr);
	align-items: center;
	gap: 42px;
}

.besus-fit-layout h2 {
	margin: 0;
	font-size: 19px;
	letter-spacing: 0;
}

.besus-fit-layout ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.besus-fit-layout li {
	min-width: 0;
	padding: 7px 24px;
	border-left: 1px solid #cbd3d2;
	color: var(--besus-ink);
	line-height: 1.5;
}

.besus-buyer-checklist {
	padding-block: 72px;
	background: var(--besus-surface);
}

.besus-buyer-checklist-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: 72px;
}

.besus-buyer-checklist h2 {
	max-width: 500px;
	margin: 0;
	font-size: 32px;
	line-height: 1.25;
	letter-spacing: 0;
}

.besus-buyer-checklist ul {
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--besus-line);
	list-style: none;
}

.besus-buyer-checklist li {
	position: relative;
	margin: 0;
	padding: 17px 0 17px 34px;
	border-bottom: 1px solid var(--besus-line);
	color: var(--besus-ink);
	line-height: 1.55;
}

.besus-buyer-checklist li::before {
	position: absolute;
	top: 17px;
	left: 2px;
	color: var(--besus-accent);
	font-weight: 800;
	content: "\2713";
}

.besus-taxonomy-products {
	padding-block: 76px;
}

.besus-archive ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.besus-archive ul.products::before,
.besus-archive ul.products::after {
	display: none !important;
}

.besus-archive ul.products li.product.besus-b2b-product-card {
	display: flex;
	width: auto !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	background: #fff;
}

.besus-b2b-product-media {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #e7ebec;
}

.besus-b2b-product-media img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.besus-b2b-product-body {
	display: flex;
	min-width: 0;
	height: 100%;
	padding: 24px;
	flex-direction: column;
}

.besus-archive ul.products li.product .besus-b2b-product-body h2 {
	margin: 0 0 8px;
	padding: 0;
	font-size: 21px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-archive ul.products li.product .besus-b2b-product-body h2 a {
	color: var(--besus-ink);
}

.besus-b2b-product-summary {
	margin: 8px 0 0;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-b2b-product-facts {
	margin: 20px 0 0;
	border-top: 1px solid var(--besus-line);
}

.besus-b2b-product-facts > div {
	display: grid;
	grid-template-columns: minmax(84px, 0.75fr) minmax(0, 1.25fr);
	gap: 10px;
	padding: 9px 0;
	border-bottom: 1px solid var(--besus-line);
	font-size: 13px;
}

.besus-b2b-product-facts dt {
	color: var(--besus-muted);
	font-weight: 600;
}

.besus-b2b-product-facts dd {
	margin: 0;
	color: var(--besus-ink);
}

.besus-b2b-product-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: auto;
	padding-top: 24px;
}

.besus-b2b-product-actions .button {
	margin: 0;
	padding-inline: 16px;
	white-space: normal;
}

.besus-term-description p {
	margin: 0;
}

.besus-empty-state {
	max-width: 720px;
	padding: 36px 0;
	border-block: 1px solid var(--besus-line);
}

.besus-empty-state h2 {
	margin: 0 0 12px;
	font-size: 26px;
	letter-spacing: 0;
}

.besus-empty-state p {
	margin: 0 0 22px;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-archive .navigation.pagination {
	margin-top: 40px;
}

.besus-system-content,
.besus-resource-content {
	padding-block: 72px;
}

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

.besus-content-card {
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	background: #fff;
}

.besus-content-card-media {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #e7ebec;
}

.besus-content-card-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-content-card-media > span {
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: center;
	padding: 24px;
	color: var(--besus-muted);
	font-weight: 700;
	text-align: center;
}

.besus-content-card-body {
	padding: 24px;
}

.besus-content-card-body h2 {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.35;
	letter-spacing: 0;
}

.besus-content-card-body h2 a {
	color: var(--besus-ink);
}

.besus-content-card-body > p:not(.besus-card-label) {
	margin: 0 0 16px;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-system-page .navigation.pagination {
	margin-top: 40px;
}

.besus-route-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
}

.besus-route-grid > section {
	min-width: 0;
	padding-top: 22px;
	border-top: 3px solid var(--besus-accent);
}

.besus-route-grid h2,
.besus-system-search h2 {
	margin: 0 0 10px;
	font-size: 22px;
	letter-spacing: 0;
}

.besus-route-grid p {
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-system-search {
	max-width: 720px;
	margin-top: 54px;
}

.besus-search-again {
	margin: 0 0 36px;
}

.besus-system-search form[role="search"] {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
}

.besus-system-search input[type="search"] {
	min-width: 0;
	margin: 0;
}

.besus-resource-featured-media {
	width: min(100% - 40px, 1240px);
	max-height: 720px;
	margin: 0 auto;
	overflow: hidden;
}

.besus-resource-featured-media img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 720px;
	object-fit: cover;
}

.besus-resource-content {
	max-width: 860px;
	font-size: 17px;
	line-height: 1.75;
}

.besus-resource-content > :first-child {
	margin-top: 0;
}

.besus-article-meta {
	margin: 18px 0 0;
	color: #d9e0e1;
}

.besus-article-navigation {
	padding-bottom: 72px;
}

.besus-article-navigation .nav-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	padding-top: 24px;
	border-top: 1px solid var(--besus-line);
}

.besus-article-navigation .nav-next {
	text-align: right;
}

.besus-article-navigation a {
	display: block;
	color: var(--besus-ink);
}

.besus-article-navigation span {
	display: block;
	margin-bottom: 5px;
	color: var(--besus-muted);
	font-size: 13px;
}

@media (prefers-reduced-motion: reduce) {
	.besus-showcase-media img {
		transition: none;
	}
}

@media (max-width: 900px) {
	.besus-audience-intro.has-media {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.besus-audience-media {
		max-width: 720px;
	}

	.besus-header-layout {
		grid-template-columns: auto 1fr;
		gap: 20px;
	}

	.besus-desktop-navigation {
		display: none;
	}

	.besus-mobile-navigation {
		display: block;
	}

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

	.besus-showcase-grid,
	.besus-process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.besus-process-list li:nth-child(5n + 1) {
		border-left: 0;
	}

	.besus-process-list li:nth-child(2n + 1) {
		border-left: 1px solid var(--besus-line);
	}

	.besus-value-layout {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.besus-partnership-grid {
		grid-template-columns: 1fr;
	}

	.besus-partnership-grid article {
		padding: 24px 0;
	}

	.besus-partnership-grid article + article {
		border-top: 1px solid var(--besus-line);
		border-left: 0;
	}

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

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

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

	.besus-taxonomy-hero.has-featured-image .besus-taxonomy-hero-layout {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.besus-taxonomy-hero.has-brief-panel .besus-taxonomy-hero-layout {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.besus-taxonomy-featured-media {
		max-width: 680px;
	}

	.besus-archive ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.besus-product-intro {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.besus-product-gallery {
		max-width: 720px;
	}

	.besus-product-next-step {
		grid-template-columns: 1fr;
		align-items: start;
	}
}

.besus-single-product {
	padding: 32px 0 88px;
	color: var(--besus-ink);
}

.besus-product-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 30px;
	color: var(--besus-muted);
	font-size: 14px;
}

.besus-product-breadcrumb a {
	color: var(--besus-accent-dark);
}

.besus-product-intro {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
	gap: clamp(44px, 6vw, 84px);
	align-items: start;
}

.besus-product-gallery,
.besus-product-summary {
	min-width: 0;
}

.besus-product-primary-image {
	display: grid;
	place-items: center;
	width: 100%;
	aspect-ratio: 1;
	border: 1px solid var(--besus-line);
	border-radius: 6px;
	overflow: hidden;
	background: var(--besus-surface);
}

.besus-product-primary-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.besus-product-zoom {
	display: block;
	width: 100%;
	height: 100%;
	cursor: zoom-in;
}

.besus-product-thumbnails {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 12px;
}

.besus-product-thumbnail {
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 4px;
	background: transparent;
	cursor: pointer;
}

.besus-product-thumbnail img {
	transition: border-color 150ms ease, box-shadow 150ms ease;
}

.besus-product-thumbnail:hover img,
.besus-product-thumbnail:focus-visible img,
.besus-product-thumbnail.is-active img {
	border-color: var(--besus-accent);
	box-shadow: 0 0 0 2px rgba(8, 125, 105, 0.16);
}

.besus-product-thumbnail:focus-visible {
	outline: 2px solid var(--besus-accent);
	outline-offset: 2px;
}

.besus-product-thumbnails img {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	border: 1px solid var(--besus-line);
	border-radius: 4px;
	object-fit: contain;
	background: #fff;
}

.besus-product-lightbox {
	width: min(92vw, 1100px);
	max-width: none;
	max-height: 92vh;
	padding: 42px;
	border: 0;
	border-radius: 6px;
	background: #fff;
}

.besus-product-lightbox::backdrop {
	background: rgba(10, 17, 20, 0.82);
}

.besus-product-lightbox img {
	display: block;
	width: 100%;
	max-height: calc(92vh - 84px);
	object-fit: contain;
}

.besus-product-lightbox-close {
	position: absolute;
	top: 8px;
	right: 12px;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--besus-ink);
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
}

.besus-product-summary {
	padding-top: 10px;
}

.besus-product-summary h1 {
	margin: 8px 0 16px;
	font-size: 42px;
	line-height: 1.12;
	letter-spacing: 0;
}

.besus-product-line-label {
	margin: 0 0 22px;
	color: var(--besus-accent-dark);
	font-size: 14px;
	font-weight: 700;
}

.besus-product-lead {
	margin-bottom: 26px;
	color: var(--besus-muted);
	font-size: 17px;
	line-height: 1.75;
}

.besus-product-lead > :last-child {
	margin-bottom: 0;
}

.besus-product-summary-details .besus-b2b-facts {
	margin-block: 24px;
}

.besus-product-summary-details .besus-b2b-facts h2 {
	font-size: 18px;
}

.besus-single-product .price,
.besus-single-product .stock,
.besus-single-product .product_meta,
.besus-single-product .woocommerce-product-rating,
.besus-single-product .wd-social-icons,
.besus-single-product .product-share {
	display: none !important;
}

.besus-product-evaluation {
	margin-top: 76px;
	padding-top: 12px;
	border-top: 1px solid var(--besus-line);
}

.besus-product-evaluation .woocommerce-tabs {
	padding-top: 0;
}

.besus-product-evaluation .woocommerce-tabs .tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0 28px;
	margin: 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-product-evaluation .woocommerce-tabs .tabs li {
	margin: 0;
	padding: 0;
}

.besus-product-evaluation .woocommerce-tabs .tabs a {
	display: block;
	padding: 18px 0 14px;
	color: var(--besus-muted);
	font-size: 14px;
	font-weight: 700;
}

.besus-product-evaluation .woocommerce-tabs .tabs .active a {
	color: var(--besus-ink);
	box-shadow: inset 0 -2px 0 var(--besus-accent);
}

.besus-product-evaluation .woocommerce-Tabs-panel {
	max-width: 1000px;
	padding: 34px 0 18px;
}

.besus-product-next-step {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 36px;
	align-items: center;
	margin-top: 60px;
	padding: 38px 0;
	border-block: 1px solid var(--besus-line);
}

.besus-product-next-step h2 {
	margin: 8px 0 10px;
	font-size: 30px;
	line-height: 1.25;
	letter-spacing: 0;
}

.besus-product-next-step p:last-child {
	max-width: 760px;
	margin: 0;
	color: var(--besus-muted);
}

.besus-product-next-step .button {
	white-space: normal;
	text-align: center;
}

.besus-b2b-facts,
.besus-collection-products,
.besus-inquiry-form-wrap {
	margin-block: 28px;
}

.besus-b2b-facts h2,
.besus-collection-products h2,
.besus-form-heading h2 {
	margin: 0 0 14px;
	color: var(--besus-ink);
	font-size: 22px;
	line-height: 1.3;
	letter-spacing: 0;
}

.besus-b2b-facts dl {
	margin: 0;
	border-top: 1px solid var(--besus-line);
}

.besus-b2b-facts dl > div {
	display: grid;
	grid-template-columns: minmax(130px, 0.8fr) minmax(0, 1.6fr);
	gap: 16px;
	padding: 11px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-b2b-facts dt {
	color: var(--besus-muted);
	font-weight: 600;
}

.besus-b2b-facts dd {
	margin: 0;
	color: var(--besus-ink);
}

.besus-product-tab-section {
	max-width: 960px;
	padding-block: 10px 18px;
}

.besus-product-tab-section h2 {
	margin: 0 0 12px;
	color: var(--besus-ink);
	font-size: 28px;
	line-height: 1.3;
	letter-spacing: 0;
}

.besus-product-tab-intro {
	max-width: 760px;
	margin: 0 0 28px;
	color: var(--besus-muted);
	font-size: 16px;
	line-height: 1.7;
}

.besus-product-evaluation-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 36px;
	margin: 0;
	border-top: 1px solid var(--besus-line);
}

.besus-product-evaluation-list > div {
	display: grid;
	grid-template-columns: minmax(130px, 0.75fr) minmax(0, 1.25fr);
	gap: 16px;
	padding: 16px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-product-evaluation-list dt {
	color: var(--besus-muted);
	font-weight: 600;
}

.besus-product-evaluation-list dd {
	margin: 0;
	color: var(--besus-ink);
	line-height: 1.6;
}

.besus-request-quote,
.besus-request-sample,
.besus-collection-inquiry {
	margin: 8px 10px 8px 0;
}

.besus-product-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.besus-product-card {
	min-width: 0;
	border: 1px solid var(--besus-line);
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
}

.besus-product-card a {
	display: block;
	color: var(--besus-ink);
	text-decoration: none;
}

.besus-product-card img {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

.besus-product-card h3 {
	margin: 0;
	padding: 14px;
	font-size: 16px;
	line-height: 1.4;
	letter-spacing: 0;
}

.besus-inquiry-form-wrap {
	max-width: 880px;
}

.besus-inquiry-form {
	padding: clamp(20px, 4vw, 36px);
	border: 1px solid var(--besus-line);
	border-radius: 6px;
	background: #fff;
}

.besus-form-heading p {
	margin: 0 0 24px;
	color: var(--besus-muted);
}

.besus-form-heading .besus-required-note {
	margin-top: -14px;
	font-size: 13px;
}

.besus-form-context {
	margin: 0 0 22px;
	padding: 12px 14px;
	border-left: 3px solid var(--besus-accent);
	background: var(--besus-surface);
}

.besus-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 20px;
}

.besus-field {
	min-width: 0;
}

.besus-field-full {
	grid-column: 1 / -1;
}

.besus-field label {
	display: block;
	margin-bottom: 7px;
	color: var(--besus-ink);
	font-weight: 600;
}

.besus-field input,
.besus-field select,
.besus-field textarea {
	width: 100%;
	margin: 0;
}

.besus-field textarea {
	resize: vertical;
}

.besus-consent {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 20px 0;
	color: var(--besus-muted);
}

.besus-consent input {
	flex: 0 0 auto;
	margin-top: 4px;
}

.besus-project-options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px 18px;
	margin: 22px 0 0;
	padding: 18px 0 0;
	border: 0;
	border-top: 1px solid var(--besus-line);
}

.besus-form-optional {
	margin-top: 24px;
	padding: 0;
	border-block: 1px solid var(--besus-line);
}

.besus-form-optional summary {
	padding: 18px 2px;
	color: var(--besus-ink);
	font-weight: 700;
	cursor: pointer;
}

.besus-form-optional[open] {
	padding-bottom: 22px;
}

.besus-form-optional[open] summary {
	margin-bottom: 2px;
	border-bottom: 1px solid var(--besus-line);
}

.besus-form-optional > p {
	margin: 18px 0;
	color: var(--besus-muted);
	font-size: 14px;
}

.besus-project-options legend {
	padding: 0;
	color: var(--besus-ink);
	font-weight: 700;
}

.besus-project-options label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	color: var(--besus-muted);
}

.besus-project-options input {
	flex: 0 0 auto;
	margin-top: 4px;
}

.besus-form-notice {
	margin-bottom: 20px;
	padding: 14px 16px;
	border-left: 4px solid var(--besus-accent);
	background: var(--besus-surface);
}

.besus-form-error {
	border-left-color: var(--besus-error);
}

.besus-form-error ul {
	margin: 8px 0 0 20px;
}

.besus-form-success strong {
	display: block;
	color: var(--besus-ink);
}

.besus-form-success p {
	margin: 8px 0 0;
}

.besus-form-success a {
	color: var(--besus-accent-dark);
	font-weight: 700;
}

.besus-form-success .besus-inquiry-reference {
	font-size: 13px;
	font-weight: 700;
}

.besus-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.besus-submit-inquiry {
	min-width: 210px;
	background: var(--besus-accent) !important;
}

.besus-submit-inquiry:hover,
.besus-submit-inquiry:focus-visible {
	background: var(--besus-accent-dark) !important;
}

@media (max-width: 768px) {
	.besus-shell {
		width: min(100% - 30px, 1240px);
	}

	.besus-catalog-heading {
		align-items: flex-start;
		margin-bottom: 24px;
	}

	.besus-catalog-heading h2 {
		font-size: 30px;
	}

	.besus-catalog-tools {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 20px;
	}

	.besus-catalog-search,
	.besus-catalog-tools__actions {
		grid-column: 1 / -1;
	}

	.besus-home-hero {
		min-height: 650px;
	}

	.besus-home-hero-inner,
	.besus-home-band,
	.besus-home-cta,
	.besus-page-hero,
	.besus-editor-section,
	.besus-editor-band > .besus-shell,
	.besus-archive-content,
	.besus-collection-single-content,
	.besus-system-content,
	.besus-resource-content {
		padding-block: 56px;
	}

	.besus-home-hero h1,
	.besus-section-heading h2,
	.besus-home-cta h2,
	.besus-page-hero h1,
	.besus-product-summary h1 {
		font-size: 34px;
	}

	.besus-single-product {
		padding: 22px 0 60px;
	}

	.besus-product-evaluation {
		margin-top: 54px;
	}

	.besus-product-next-step {
		margin-top: 42px;
	}

	.besus-capability-grid,
	.besus-audience-grid,
	.besus-line-grid {
		grid-template-columns: 1fr;
	}

	.besus-capability-grid a,
	.besus-capability-grid a:first-child,
	.besus-audience-grid a + a,
	.besus-line-item + .besus-line-item {
		border-right: 0;
		border-left: 0;
		border-bottom: 1px solid var(--besus-line);
	}

	.besus-capability-grid a {
		min-height: 0;
		padding: 18px 0;
	}

	.besus-line-item,
	.besus-line-item + .besus-line-item {
		padding: 24px 0;
	}

	.besus-audience-grid a {
		padding: 24px 0;
	}

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

	.besus-form-grid {
		grid-template-columns: 1fr;
	}

	.besus-project-options {
		grid-template-columns: 1fr;
	}

	.besus-contact-layout {
		gap: 28px;
	}

	.besus-field-full {
		grid-column: auto;
	}

	.besus-route-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.besus-product-path-grid {
		grid-template-columns: 1fr;
	}

	.besus-product-path-grid a + a {
		border-top: 1px solid var(--besus-line);
		border-left: 0;
	}

	.besus-footer-grid {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.besus-footer-legal {
		flex-direction: column;
	}

	.besus-company-contact-grid,
	.besus-company-entity-grid {
		grid-template-columns: 1fr;
	}

	.besus-company-addresses {
		margin-top: 34px;
		padding: 34px 0 0;
		border-top: 1px solid var(--besus-line);
		border-left: 0;
	}

	.besus-company-entity-grid article,
	.besus-company-entity-grid article + article {
		padding: 28px 0;
		border-left: 0;
	}

	.besus-company-entity-grid article + article {
		border-top: 1px solid var(--besus-line);
	}

	.besus-line-value-grid,
	.besus-buyer-checklist-layout,
	.besus-fit-layout {
		grid-template-columns: 1fr;
	}

	.besus-fit-layout {
		gap: 18px;
	}

	.besus-fit-layout ul {
		grid-template-columns: 1fr;
	}

	.besus-fit-layout li {
		padding: 12px 0;
		border-top: 1px solid #cbd3d2;
		border-left: 0;
	}

	.besus-line-value-grid article,
	.besus-line-value-grid article + article {
		padding: 26px 0;
		border-left: 0;
	}

	.besus-line-value-grid article + article {
		border-top: 1px solid var(--besus-line);
	}

	.besus-buyer-checklist {
		padding-block: 56px;
	}

	.besus-buyer-checklist-layout {
		gap: 30px;
	}

	.besus-buyer-checklist h2 {
		font-size: 28px;
	}

	.besus-product-evaluation-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.besus-catalog-heading {
		display: block;
	}

	.besus-catalog-heading > p {
		margin-top: 10px;
	}

	.besus-catalog-tools {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 18px;
	}

	.besus-catalog-search,
	.besus-catalog-tools__actions {
		grid-column: auto;
	}

	.besus-catalog-tools__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.besus-catalog-tools__actions .button {
		width: 100%;
	}

	.besus-header-layout {
		grid-template-columns: 1fr auto;
		min-height: 66px;
	}

	.besus-header-brand {
		font-size: 19px;
	}

	.besus-home-hero h1,
	.besus-section-heading h2,
	.besus-home-cta h2,
	.besus-page-hero h1,
	.besus-product-summary h1 {
		font-size: 30px;
	}

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

	.besus-product-evaluation .woocommerce-tabs .tabs {
		gap: 0 18px;
	}

	.besus-product-next-step .button {
		width: 100%;
	}

	.besus-home-hero-copy,
	.besus-page-lead {
		font-size: 16px;
	}

	.besus-command-row .button,
	.besus-command-row .besus-hero-text-link {
		width: 100%;
		text-align: center;
	}

	.besus-showcase-grid,
	.besus-process-list,
	.besus-resource-list,
	.besus-collection-grid,
	.besus-content-grid,
	.besus-article-navigation .nav-links {
		grid-template-columns: 1fr;
	}

	.besus-article-navigation .nav-next {
		text-align: left;
	}

	.besus-system-search form[role="search"] {
		grid-template-columns: 1fr;
	}

	.besus-process-list li,
	.besus-process-list li:nth-child(2n + 1) {
		border-left: 1px solid var(--besus-line);
	}

	.besus-value-list li {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.besus-b2b-facts dl > div {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.besus-product-evaluation-list > div {
		grid-template-columns: 1fr;
		gap: 5px;
	}

	.besus-product-grid {
		grid-template-columns: 1fr;
	}

	.besus-submit-inquiry {
		width: 100%;
		min-width: 0;
	}

	.besus-archive ul.products {
		grid-template-columns: 1fr;
	}

	.besus-b2b-product-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.besus-b2b-product-actions .button {
		width: 100%;
		text-align: center;
	}
}

/* Homepage v2: product-led presentation and media-ready trust architecture. */
.besus-home-hero {
	position: relative;
	display: block;
	isolation: isolate;
	min-height: clamp(640px, 78vh, 820px);
	overflow: hidden;
	background-color: #162024;
	color: #fff;
	touch-action: pan-y;
}

.besus-home-hero-slides,
.besus-home-hero-slide {
	width: 100%;
	min-height: inherit;
}

.besus-home-hero-slide {
	position: relative;
	display: flex;
	align-items: stretch;
}

.besus-home-hero-slide[hidden] {
	display: none;
}

.besus-home-hero.is-enhanced .besus-home-hero-slide {
	position: absolute;
	inset: 0;
	display: flex;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity 520ms ease, visibility 520ms ease;
}

.besus-home-hero.is-enhanced .besus-home-hero-slide.is-active {
	position: relative;
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

.besus-home-hero-media {
	position: absolute;
	z-index: 0;
	inset: 0;
	display: block;
	overflow: hidden;
}

.besus-home-hero-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.besus-home-hero-overlay {
	z-index: 1;
	background: rgba(8, 15, 17, 0.54);
}

.besus-home-hero-inner {
	display: flex;
	z-index: 2;
	min-height: clamp(640px, 78vh, 820px);
	flex-direction: column;
	justify-content: center;
	padding-block: 72px 196px;
}

.besus-home-hero-copy-block {
	max-width: 720px;
}

.besus-home-brand {
	margin-bottom: 20px;
	color: rgba(255, 255, 255, 0.84);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.besus-home-hero h1,
.besus-home-slide-title {
	max-width: 820px;
	margin: 0;
	color: #fff;
	font-size: 52px;
	line-height: 1.04;
	letter-spacing: 0;
}

.besus-home-hero-copy {
	max-width: 690px;
	margin: 24px 0 0;
	color: rgba(255, 255, 255, 0.9);
	font-size: 18px;
	line-height: 1.65;
}

.besus-home-carousel-footer {
	position: absolute;
	right: 0;
	bottom: 26px;
	left: 0;
	z-index: 4;
}

.besus-home-carousel-controls {
	display: none;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.besus-home-hero.is-enhanced .besus-home-carousel-controls {
	display: flex;
}

.besus-home-carousel-arrow,
.besus-home-carousel-dots button {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.58);
	border-radius: 50%;
	background: rgba(8, 15, 17, 0.34);
	color: #fff;
	cursor: pointer;
}

.besus-home-carousel-arrow {
	width: 38px;
	height: 38px;
	font-size: 18px;
}

.besus-home-carousel-dots {
	display: flex;
	align-items: center;
	gap: 9px;
}

.besus-home-carousel-dots button {
	width: 11px;
	height: 11px;
	border-color: rgba(255, 255, 255, 0.74);
	background: transparent;
}

.besus-home-carousel-dots button[aria-current="true"] {
	background: #fff;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2);
}

.besus-home-carousel-arrow:hover,
.besus-home-carousel-arrow:focus-visible,
.besus-home-carousel-dots button:hover,
.besus-home-carousel-dots button:focus-visible {
	border-color: #fff;
	background-color: rgba(8, 15, 17, 0.72);
	outline: 2px solid #fff;
	outline-offset: 3px;
}

.besus-home-hero .button.alt {
	border-color: var(--besus-accent) !important;
	background: var(--besus-accent) !important;
	color: #fff !important;
}

.besus-home-hero .button.alt:hover,
.besus-home-hero .button.alt:focus-visible {
	border-color: var(--besus-accent-dark) !important;
	background: var(--besus-accent-dark) !important;
}

.besus-hero-proof {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	border-block: 1px solid rgba(255, 255, 255, 0.35);
	list-style: none;
}

.besus-hero-proof li {
	min-width: 0;
	padding: 16px 24px 16px 0;
}

.besus-hero-proof li + li {
	padding-left: 24px;
	border-left: 1px solid rgba(255, 255, 255, 0.35);
}

.besus-hero-proof strong,
.besus-hero-proof span {
	display: block;
}

.besus-hero-proof strong {
	color: #fff;
	font-size: 15px;
}

.besus-hero-proof span {
	margin-top: 5px;
	color: #d8e0e1;
	font-size: 13px;
}

.besus-quick-finder {
	border-bottom: 1px solid var(--besus-line);
	background: #fff;
}

.besus-quick-finder__layout {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	align-items: stretch;
}

.besus-quick-finder__label {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 22px 24px 22px 0;
	color: var(--besus-muted);
	font-size: 12px;
	font-weight: 750;
	line-height: 1.35;
	text-transform: uppercase;
}

.besus-quick-finder__links {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.besus-quick-finder__links a {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	min-width: 0;
	padding: 20px 18px;
	border-left: 1px solid var(--besus-line);
	color: var(--besus-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

.besus-quick-finder__links a::after {
	color: var(--besus-accent-dark);
	content: "\2192";
}

.besus-quick-finder__links a:hover,
.besus-quick-finder__links a:focus-visible {
	background: var(--besus-surface);
	color: var(--besus-accent-dark);
}

.besus-quick-finder__links span {
	color: var(--besus-highlight);
	font-size: 11px;
	font-weight: 800;
}

.besus-core-lines {
	background: #fff;
}

.besus-core-lines .besus-section-heading {
	margin-bottom: 38px;
}

.besus-line-grid {
	gap: 20px;
	margin-bottom: 54px;
	border: 0;
}

.besus-line-item,
.besus-line-item + .besus-line-item {
	padding: 0;
	border: 1px solid var(--besus-line);
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
}

.besus-line-media {
	margin: 0;
	background: #dfe5e5;
}

.besus-line-media img {
	transition: transform 220ms ease;
}

.besus-line-item:hover .besus-line-media img {
	transform: scale(1.025);
}

.besus-line-media-fallback {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: end start;
	padding: 24px;
	background: #253034;
	color: rgba(255, 255, 255, 0.72);
	font-family: Georgia, serif;
	font-size: 64px;
}

.besus-line-content {
	padding: 24px;
}

.besus-line-kicker {
	display: block;
	margin-bottom: 10px;
	color: var(--besus-highlight);
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.besus-line-item h3 {
	font-size: 24px;
	line-height: 1.28;
}

.besus-line-link {
	display: block;
	margin-top: 22px;
	color: var(--besus-accent-dark);
	font-size: 14px;
}

.besus-home-work {
	background: #fff;
}

.besus-home-feature-layout,
.besus-home-trust-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
	gap: clamp(46px, 7vw, 92px);
	align-items: center;
}

.besus-home-feature-copy h2 {
	margin: 0;
	font-size: 42px;
	line-height: 1.14;
}

.besus-home-feature-copy > p:not(.besus-eyebrow) {
	margin: 18px 0 22px;
	color: var(--besus-muted);
	font-size: 17px;
	line-height: 1.72;
}

.besus-home-feature-media {
	width: 100%;
	margin: 0;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: 6px;
	background: #253034;
}

.besus-home-feature-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.besus-home-media-fallback {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: end start;
	padding: 32px;
	background: #253034;
	color: #fff;
}

.besus-home-media-fallback span {
	max-width: 360px;
	font-family: Georgia, serif;
	font-size: 30px;
	line-height: 1.25;
}

.besus-home-paths-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 62px;
	border-block: 1px solid var(--besus-line);
}

.besus-home-paths-grid article {
	min-width: 0;
	padding: 28px 30px;
}

.besus-home-paths-grid article + article {
	border-left: 1px solid var(--besus-line);
}

.besus-home-paths-grid h3 {
	margin: 0 0 10px;
	font-size: 21px;
	line-height: 1.35;
}

.besus-home-paths-grid article > p:not(.besus-card-label) {
	margin: 0 0 18px;
	color: var(--besus-muted);
	line-height: 1.65;
}

.besus-home-paths-grid a,
.besus-inline-links a {
	color: var(--besus-accent-dark);
	font-weight: 700;
}

.besus-home-trust {
	background: var(--besus-surface);
}

.besus-home-trust-layout {
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
}

.besus-home-trust-facts {
	margin: 28px 0 0;
	border-top: 1px solid var(--besus-line);
}

.besus-home-trust-facts div {
	display: grid;
	grid-template-columns: minmax(120px, 0.75fr) minmax(0, 1.25fr);
	gap: 20px;
	padding: 13px 0;
	border-bottom: 1px solid var(--besus-line);
}

.besus-home-trust-facts dt {
	color: var(--besus-muted);
}

.besus-home-trust-facts dd {
	margin: 0;
	font-weight: 700;
}

.besus-inline-links {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 28px;
	margin-top: 24px;
}

.besus-home-process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	border-block: 1px solid var(--besus-line);
	list-style: none;
}

.besus-home-process-list li {
	min-width: 0;
	padding: 28px;
}

.besus-home-process-list li + li {
	border-left: 1px solid var(--besus-line);
}

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

.besus-home-process-list span {
	margin-bottom: 34px;
	color: var(--besus-highlight);
	font-size: 13px;
	font-weight: 800;
}

.besus-home-process-list strong {
	font-size: 18px;
}

.besus-home-process-list p {
	margin: 9px 0 0;
	color: var(--besus-muted);
	font-size: 14px;
	line-height: 1.6;
}

.besus-home-cta-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 56px;
	align-items: end;
}

.besus-home-cta .besus-eyebrow {
	color: #fff;
}

.besus-home-cta .button.alt {
	border-color: #fff !important;
	background: #fff !important;
	color: var(--besus-ink) !important;
}

.besus-home-cta .besus-button-light {
	border-color: rgba(255, 255, 255, 0.72) !important;
	background: transparent !important;
	color: #fff !important;
}

.besus-home-cta-layout .besus-command-row {
	justify-content: flex-end;
	margin: 0;
}

@media (max-width: 900px) {
	.besus-home-hero h1,
	.besus-home-slide-title {
		font-size: 48px;
	}

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

	.besus-line-item:last-child {
		grid-column: 1 / -1;
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.besus-line-item:last-child .besus-line-media {
		height: 100%;
		aspect-ratio: auto;
	}

	.besus-home-feature-layout,
	.besus-home-trust-layout,
	.besus-home-cta-layout {
		grid-template-columns: 1fr;
	}

	.besus-home-feature-media {
		max-width: 760px;
	}

	.besus-home-paths-grid,
	.besus-home-process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.besus-home-paths-grid article:nth-child(3),
	.besus-home-process-list li:nth-child(3) {
		border-left: 0;
	}

	.besus-home-paths-grid article:nth-child(n + 3),
	.besus-home-process-list li:nth-child(n + 3) {
		border-top: 1px solid var(--besus-line);
	}

	.besus-home-cta-layout .besus-command-row {
		justify-content: flex-start;
	}
}

@media (max-width: 768px) {
	.besus-home-hero {
		min-height: max(700px, calc(100svh - 104px));
	}

	.besus-home-hero-image {
		object-position: center top;
	}

	.besus-home-hero-inner {
		min-height: max(700px, calc(100svh - 104px));
		justify-content: flex-start;
		padding-block: 54px 208px;
	}

	.besus-home-hero-overlay {
		background: rgba(8, 15, 17, 0.58);
	}

	.besus-home-hero h1,
	.besus-home-slide-title {
		font-size: 40px;
	}

	.besus-home-carousel-footer {
		bottom: 18px;
	}

	.besus-home-carousel-controls {
		margin-bottom: 12px;
	}

	.besus-hero-proof {
		grid-template-columns: 1fr;
	}

	.besus-hero-proof li,
	.besus-hero-proof li + li {
		padding: 13px 0;
		border-left: 0;
	}

	.besus-hero-proof li + li {
		border-top: 1px solid rgba(255, 255, 255, 0.26);
	}

	.besus-line-grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.besus-line-item:last-child {
		grid-column: auto;
		display: flex;
	}

	.besus-line-item:last-child .besus-line-media {
		height: auto;
		aspect-ratio: 4 / 3;
	}

	.besus-line-item + .besus-line-item {
		border: 1px solid var(--besus-line);
	}

	.besus-home-feature-copy h2 {
		font-size: 34px;
	}

	.besus-home-feature-layout,
	.besus-home-trust-layout {
		gap: 34px;
	}

	.besus-home-paths-grid {
		margin-top: 46px;
	}
}

@media (max-width: 560px) {
	.besus-home-hero,
	.besus-home-hero-inner {
		min-height: max(700px, calc(100svh - 82px));
	}

	.besus-home-hero-inner {
		padding-block: 42px 188px;
	}

	.besus-home-hero h1,
	.besus-home-slide-title {
		font-size: 34px;
	}

	.besus-home-brand {
		font-size: 11px;
	}

	.besus-hero-proof span {
		display: none;
	}

	.besus-hero-proof li,
	.besus-hero-proof li + li {
		padding-block: 8px;
	}

	.besus-home-carousel-arrow {
		width: 36px;
		height: 36px;
	}

	.besus-home-paths-grid,
	.besus-home-process-list {
		grid-template-columns: 1fr;
	}

	.besus-home-paths-grid article,
	.besus-home-paths-grid article + article,
	.besus-home-process-list li,
	.besus-home-process-list li + li {
		padding: 24px 0;
		border-right: 0;
		border-left: 0;
	}

	.besus-home-paths-grid article + article,
	.besus-home-process-list li + li {
		border-top: 1px solid var(--besus-line);
	}

	.besus-home-media-fallback span {
		font-size: 24px;
	}

	.besus-home-trust-facts div {
		grid-template-columns: 1fr;
		gap: 4px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.besus-home-hero.is-enhanced .besus-home-hero-slide {
		transition: none;
	}
}

@media (max-width: 900px) {
	.besus-product-intro {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.besus-product-gallery {
		width: 100%;
		max-width: none;
	}

	.besus-product-summary {
		width: 100%;
		padding-top: 0;
	}

	.besus-quick-finder__layout {
		grid-template-columns: 1fr;
	}

	.besus-quick-finder__label {
		padding: 18px 0 10px;
	}

	.besus-quick-finder__links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-inline: -18px;
	}

	.besus-quick-finder__links a:nth-child(odd) {
		border-left: 0;
	}

	.besus-quick-finder__links a:nth-child(n + 3) {
		border-top: 1px solid var(--besus-line);
	}
}

@media (max-width: 560px) {
	.besus-quick-finder__links {
		grid-template-columns: 1fr;
		margin-inline: 0;
	}

	.besus-quick-finder__links a,
	.besus-quick-finder__links a:nth-child(odd) {
		padding-inline: 0;
		border-top: 1px solid var(--besus-line);
		border-left: 0;
	}
}
