@font-face {
  font-family: 'Bayon';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/bayon-400.ttf) format('truetype');
}

/* Shop presentation, v1.8.51. Archive content only; shared header finder
 * styles remain in frontend.css. The dock is part of the catalog grid. */

body.trs-vf-catalog-layout #main-content {
	--trs-shop-width: 1800px;
	--trs-shop-gutter: 24px;
	--trs-shop-body: "Open Sans", Arial, sans-serif;
	--trs-shop-heading: "Bayon", "Arial Narrow", sans-serif;
	--trs-shop-text: #2a3547;
	--trs-shop-border: #cbd5e2;
}

body.trs-vf-catalog-layout #main-content .container {
	width: 100% !important;
	max-width: none !important;
	padding-top: 0 !important;
}

/* One horizontal frame for the shield, finder, toolbar and product grid. */
body.trs-vf-catalog-layout #main-content .woocommerce-products-header {
	position: relative !important;
	isolation: isolate !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 4px !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #f1f4f8 !important;
	box-shadow: none !important;
	clip-path: none !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-products-header::before {
	content: "" !important;
	position: absolute !important;
	z-index: -1 !important;
	inset: 0 0 0 auto !important;
	width: 48% !important;
	background: conic-gradient(from 90deg, rgba(68,94,134,.24) 25%, transparent 0 50%, rgba(68,94,134,.24) 0 75%, transparent 0) 0 0 / 88px 88px !important;
	transform: skewX(-15deg) translateX(8%) !important;
	opacity: 1 !important;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 58%) !important;
	mask-image: linear-gradient(to right, transparent, #000 58%) !important;
	pointer-events: none !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-products-header::after {
	content: none !important;
	display: none !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title {
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	width: calc(100% - var(--trs-shop-gutter) * 2) !important;
	max-width: var(--trs-shop-width) !important;
	min-height: 150px !important;
	margin: 0 auto !important;
	padding: 14px 25% 14px 140px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: url('../images/tuners-shield-title-transparent-small.png') left center / 85px auto no-repeat,
		linear-gradient(#d1232a, #d1232a) 108px center / 3px 114px no-repeat !important;
	box-shadow: none !important;
	color: var(--trs-shop-text) !important;
	font-family: var(--trs-shop-heading) !important;
	font-size: clamp(76px, 6vw, 108px) !important;
	font-weight: 400 !important;
	line-height: .95 !important;
	letter-spacing: .01em !important;
	text-align: left !important;
	text-transform: uppercase !important;
	overflow-wrap: anywhere;
}

body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title::before {
	content: none !important;
	display: none !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title::after {
	content: "PARTS • PERFORMANCE • GARAGE • LIFESTYLE" !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: #44536a !important;
	font-family: var(--trs-shop-body) !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: .18em !important;
	line-height: 1.5 !important;
	text-align: left !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-layout {
	box-sizing: border-box !important;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	width: calc(100% - var(--trs-shop-gutter) * 2) !important;
	max-width: var(--trs-shop-width) !important;
	margin: 0 auto 30px !important;
	gap: 0;
	clear: both;
	--trs-vf-sticky-top: 16px;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-main {
	container: trs-shop-main / inline-size;
	min-width: 0;
	width: 100%;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-rail {
	display: none;
	min-width: 0;
	align-self: stretch;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-main :is(.trs-vf-catalog-filter, ul.products, nav.woocommerce-pagination, .woocommerce-notices-wrapper, .woocommerce-info, .woocommerce-error, .woocommerce-message) {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Empty catalog notices need a full-width text block even when the theme
 * normally lays out WooCommerce notices as left-aligned flex rows. */
body.trs-vf-catalog-layout #main-content .woocommerce-no-products-found {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	text-align: center !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-no-products-found .woocommerce-info,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-main > .woocommerce-info {
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	padding: 24px 18px !important;
	text-align: center !important;
}

body.trs-vf-catalog-layout #main-content .woocommerce-no-products-found .woocommerce-info::before,
body.trs-vf-catalog-layout #main-content .woocommerce-no-products-found .woocommerce-info::after,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-main > .woocommerce-info::before,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-main > .woocommerce-info::after {
	content: none !important;
	display: none !important;
}

/* Fallback before JavaScript initializes (and when it is disabled). */
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter {
	box-sizing: border-box !important;
	width: calc(100% - var(--trs-shop-gutter) * 2) !important;
	max-width: var(--trs-shop-width) !important;
	margin: 0 auto 16px !important;
	padding: 14px 20px 18px !important;
	border: 1px solid var(--trs-shop-border) !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: 0 5px 18px rgba(42,53,71,.05) !important;
	font-family: var(--trs-shop-body) !important;
	container: trs-shop-filter / inline-size;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter *,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker * {
	box-sizing: border-box;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading > div:first-child {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	width: 100% !important;
	gap: 0 !important;
	text-align: left !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading {
	margin: 0 0 12px !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-kicker {
	margin: 0 0 3px !important;
	color: #445e86 !important;
	font: 800 10px/1.4 var(--trs-shop-body) !important;
	letter-spacing: .2em !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading strong {
	color: var(--trs-shop-text) !important;
	font: 400 clamp(27px, 2.5vw, 38px)/1.1 var(--trs-shop-heading) !important;
	letter-spacing: 0 !important;
	text-align: left !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary {
	display: grid !important;
	grid-template-columns: 128px minmax(0,1fr) auto !important;
	gap: 14px !important;
	align-items: center !important;
	width: 100%;
	min-width: 0;
	margin: 0 0 15px !important;
	padding: 12px !important;
	border: 1px solid #d4dfec !important;
	border-radius: 7px !important;
	background: linear-gradient(#fbfcfe, #f5f8fc) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 128px;
	height: 74px;
	min-width: 0;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-copy {
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 4px;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary .trs-vf-catalog-vehicle-label {
	justify-content: flex-start !important;
	color: #53657f !important;
	font: 800 9px/1.4 var(--trs-shop-body) !important;
	letter-spacing: .14em !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-name {
	display: block;
	color: #2a3547;
	font: 700 14px/1.45 var(--trs-shop-body);
	white-space: normal;
	overflow-wrap: anywhere;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-help {
	display: block;
	color: #5e6e85;
	font: 400 11px/1.5 var(--trs-shop-body);
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-vehicle-actions {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: center !important;
	gap: 6px !important;
	min-width: 0;
	width: 260px;
	max-width: 100%;
}

/* Primary action wrapper also fills its tablet grid cell. */
body.trs-vf-catalog-layout #main-content .trs-vf-shop-primary-actions {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 8px;
	width: 100%;
	min-width: 0;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-open,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear {
	appearance: none;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 0 !important;
	max-width: 100% !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 8px 10px !important;
	border: 1px solid #9eafc6 !important;
	border-radius: 5px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #2a3547 !important;
	font: 400 15px/1.3 var(--trs-shop-heading) !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	text-align: center;
	cursor: pointer;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-open {
	width: 100% !important;
	gap: 8px;
	padding: 5px 10px !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-open > span:last-child {
	min-width: 0;
	overflow-wrap: anywhere;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear {
	flex: 0 0 auto !important;
	align-self: stretch;
	width: 100% !important;
	min-height: 40px !important;
	padding: 8px 10px !important;
	border: 1px solid #d1232a !important;
	background: #fff3f3 !important;
	color: #b41e24 !important;
	font: 400 15px/1.3 var(--trs-shop-heading) !important;
	text-decoration: none !important;
	justify-content: center;
	white-space: normal;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear::before {
	content: "" !important;
	display: block !important;
	position: static !important;
	width: 12px !important;
	height: 12px !important;
	flex: 0 0 12px;
	margin: 0 !important;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 5 10 10M15 5 5 15'/%3E%3C/svg%3E") center / contain no-repeat;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear::after {
	content: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear:hover,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear:focus-visible {
	background: #d1232a !important;
	color: #fff !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-clear:disabled {
	cursor: progress;
	opacity: .65;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-action-icon {
	display: block;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background: center / contain no-repeat;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-action-icon-vehicle {
	width: 48px;
	height: 28px;
	flex: 0 0 48px;
	background-image: url('../images/car-icon.svg?ver=1.8.54');
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-action-icon.has-custom-icon {
	background-image: none;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-action-icon img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	margin: 0;
	object-fit: contain;
}

/* No decorative lines on field labels or theme-generated button arrows. */
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter :is(legend, .trs-vf-catalog-select > span)::before,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter :is(legend, .trs-vf-catalog-select > span)::after,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter :is(button, .trs-vf-catalog-actions a)::after,
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker button::after {
	content: none !important;
	display: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-body {
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form.trs-vf-catalog-has-brand {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0,1fr)) !important;
	gap: 12px !important;
	align-items: end !important;
	width: 100% !important;
	margin: 0 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > :not(input) {
	min-width: 0 !important;
	width: 100% !important;
	max-width: none !important;
	grid-column: auto !important;
	margin: 0 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-fitment,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-actions,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-select:has([name="orderby"]) {
	grid-column: 1 / -1 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-fitment legend,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-select > span {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	color: #2a3547 !important;
	font: 400 16px/1.25 var(--trs-shop-heading) !important;
	text-align: left !important;
	letter-spacing: .02em !important;
	white-space: normal !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter :is(.trs-vf-filter-toggle, .trs-vf-catalog-select select, .trs-vf-brand-trigger, .trs-vf-catalog-actions, .trs-vf-catalog-actions button, .trs-vf-catalog-actions a) {
	box-sizing: border-box !important;
	height: 46px !important;
	min-height: 46px !important;
	max-height: none !important;
	min-width: 0 !important;
	font: 400 13px/1.4 var(--trs-shop-body) !important;
	border-radius: 5px !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter :is(.trs-vf-catalog-select select, .trs-vf-brand-trigger) {
	width: 100% !important;
	padding: 0 30px 0 12px !important;
	color: #2a3547 !important;
	border: 1px solid #bdcada !important;
	background-color: #fff !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-select select.is-enhanced {
	display: none !important;
}

/* The three catalog menus share exact typography, including their open
 * lists. These selectors also isolate them from theme button typography. */
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown :is(button, input, .trs-vf-brand-trigger-value, .trs-vf-brand-option, .trs-vf-brand-no-results) {
	font-family: var(--trs-shop-body) !important;
	font-size: 13px !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	text-shadow: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-trigger {
	padding: 0 12px !important;
	text-align: left !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown :is(.trs-vf-brand-trigger, .trs-vf-brand-option)::before,
body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown :is(.trs-vf-brand-trigger, .trs-vf-brand-option)::after {
	content: none !important;
	display: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-panel {
	display: flex;
	flex-direction: column;
	gap: 6px;
	width: 100%;
	min-width: 0;
	max-height: var(--trs-vf-menu-height, 360px);
	padding: 8px;
	border: 1px solid #bdcada;
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(42,53,71,.15);
	overflow: hidden;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown.opens-up .trs-vf-brand-panel {
	top: auto;
	bottom: calc(100% + 6px);
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-search {
	flex: 0 0 44px;
	width: 100% !important;
	min-width: 0 !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 11px !important;
	border: 1px solid #bdcada !important;
	border-radius: 4px !important;
	background: #f8fafc !important;
	color: #2a3547 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-search::placeholder {
	color: #5b687b;
	opacity: 1;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-options {
	flex: 1 1 auto;
	min-height: 0;
	max-height: none;
	scrollbar-width: thin;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option {
	min-height: 40px;
	padding: 9px 10px;
	border-radius: 3px;
	color: #2a3547 !important;
	white-space: normal;
	overflow-wrap: anywhere;
	cursor: pointer;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option:is(:hover, .is-active) {
	background: #f0f4f9 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown .trs-vf-brand-option.is-selected {
	background: #eaf0f7 !important;
	box-shadow: inset 3px 0 #445e86;
}

@media (max-width: 600px) {
	/* Avoid focus zoom on phone search fields; keep all three menus matched. */
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown,
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-dropdown :is(button, input, .trs-vf-brand-trigger-value, .trs-vf-brand-option, .trs-vf-brand-no-results) {
		font-size: 16px !important;
	}
}

body.trs-vf-catalog-layout #main-content .trs-vf-filter-toggle span {
	padding: 6px !important;
	font: 600 12px/1.3 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter .trs-vf-catalog-actions {
	display: grid !important;
	grid-template-columns: minmax(0,1.35fr) minmax(0,1fr) !important;
	gap: 8px !important;
	padding: 0 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter .trs-vf-catalog-actions :is(button,a) {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 6px 8px !important;
	font: 400 16px/1.2 var(--trs-shop-heading) !important;
	white-space: normal !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-actions button {
	background: var(--trs-vf-accent, #d1232a) !important;
	color: #fff !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-actions a {
	border: 1px solid #aebed2 !important;
	background: #fff !important;
	color: #2a3547 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-note {
	margin: 12px 0 0 !important;
	color: #596a81 !important;
	font: 400 11px/1.5 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-mobile-controls {
	display: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-body[hidden],
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker[hidden] {
	display: none !important;
}

/* Toolbar belongs to the same frame as the products. */
body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	min-width: 0;
	margin: 0 0 14px;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar :is(.woocommerce-result-count, .trs-vf-catalog-page-size) {
	float: none !important;
	clear: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #3e4d63 !important;
	font: 600 12px/1.5 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar .trs-vf-catalog-page-size {
	flex: 0 0 auto;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar .trs-vf-catalog-page-size label {
	font: 600 12px/1.5 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-main ul.products {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0,1fr)) !important;
	gap: 16px !important;
}

/* The controls respond to the space LEFT beside the picker, not the viewport. */
@container trs-shop-filter (min-width: 510px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-select:has([name="orderby"]),
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-actions { grid-column: auto !important; }
}

@container trs-shop-filter (min-width: 740px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form,
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form.trs-vf-catalog-has-brand { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-fitment { grid-column: auto !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-actions { grid-column: span 2 !important; }
}

@container trs-shop-filter (min-width: 1010px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form { grid-template-columns: minmax(210px,1.3fr) repeat(2,minmax(0,1fr)) 180px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form.trs-vf-catalog-has-brand { grid-template-columns: minmax(210px,1.35fr) repeat(3,minmax(0,1fr)) 180px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-form > .trs-vf-catalog-actions { grid-column: auto !important; }
}

@container trs-shop-filter (max-width: 799px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary { grid-template-columns: 100px minmax(0,1fr) !important; gap: 10px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-image { width: 100px; height: 66px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-vehicle-actions { grid-column: 1 / -1; max-width: none; width: 100%; justify-content: flex-start !important; }
}

@container trs-shop-filter (max-width: 430px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary { grid-template-columns: 76px minmax(0,1fr) !important; padding: 10px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-open { padding: 5px 8px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-image { width: 76px; height: 52px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-name { font-size: 12px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-help { font-size: 10px; }
}

@container trs-shop-main (min-width: 720px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-main ul.products { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}

@container trs-shop-main (min-width: 1010px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-main ul.products { grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
}

/* A real second column on desktop; no fixed overlay and no clipped products. */
@media (min-width: 981px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-layout.is-picker-open { grid-template-columns: minmax(0,1fr) clamp(310px,24vw,360px); gap: 16px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-layout.is-picker-open > .trs-vf-shop-rail { display: block; }
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker {
	position: sticky !important;
	top: var(--trs-vf-sticky-top, 16px) !important;
	z-index: 20;
	box-sizing: border-box !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	max-height: var(--trs-vf-picker-height, calc(100dvh - 32px));
	margin: 0 !important;
	padding: 18px !important;
	overflow: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	border: 1px solid var(--trs-shop-border) !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: 0 5px 18px rgba(42,53,71,.07) !important;
	color: var(--trs-shop-text);
	font-family: var(--trs-shop-body);
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	border: 0 !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-header > div > span { display: none; }

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-header strong {
	color: #2a3547 !important;
	font: 400 24px/1.15 var(--trs-shop-heading) !important;
	text-transform: none !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-close {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px !important;
	height: 36px !important;
	min-height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 5px !important;
	background: #f4f6f9 !important;
	color: #44536a !important;
	font: 400 25px/1 Arial,sans-serif !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker-copy p {
	margin: 0 0 14px !important;
	color: #5e6e85 !important;
	font: 400 11px/1.6 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker :is(.trs-vf-mode-shop-picker, .trs-vf-responsive-panel, .trs-vf-editor) {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-family: var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-editor { display: flex; flex-direction: column; }

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-fields {
	display: grid !important;
	grid-template-columns: minmax(0,1fr) !important;
	gap: 12px !important;
	order: 1;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-fields > * { grid-column: 1 !important; min-width: 0 !important; }

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-field label {
	margin: 0 0 5px !important;
	color: #2a3547 !important;
	font: 700 12px/1.4 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker :is(.trs-vf-field select, .trs-vf-custom-select__trigger, .trs-vf-vin-input) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 30px 0 11px !important;
	border: 1px solid #bdcada !important;
	border-radius: 5px !important;
	background-color: #fff !important;
	color: #2a3547 !important;
	font: 400 13px/1.4 var(--trs-shop-body) !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker :is(.trs-vf-submit, .trs-vf-vin-submit) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 8px 10px !important;
	border: 1px solid #d1232a !important;
	border-radius: 5px !important;
	background: #d1232a !important;
	color: #fff !important;
	font: 400 18px/1.3 var(--trs-shop-heading) !important;
	white-space: normal !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-submit:disabled { opacity: .5; cursor: not-allowed; }

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-panel {
	order: 2;
	width: 100% !important;
	min-width: 0 !important;
	margin: 20px 0 0 !important;
	padding: 14px 0 0 !important;
	border: 0 !important;
	border-top: 1px solid #d4dfec !important;
	background: transparent !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-field > span:first-child {
	display: block;
	margin: 0 0 8px;
	color: #2a3547;
	font: 700 14px/1.45 var(--trs-shop-body);
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-entry {
	display: grid !important;
	grid-template-columns: minmax(0,1fr) 92px !important;
	width: 100% !important;
	min-width: 0 !important;
	gap: 8px !important;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-input { padding-right: 8px !important; }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-submit { min-height: 42px !important; font-size: 15px !important; background: #fff !important; color: #2a3547 !important; border-color: #aebed2 !important; }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-help { display: block; margin: 8px 0 0; color: #5e6e85; font: 400 10px/1.5 var(--trs-shop-body); }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-status { margin: 8px 0 0; font: 600 12px/1.5 var(--trs-shop-body); }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-vin-status:empty { display: none; }

body.trs-vf-catalog-layout #main-content :is(.trs-vf-catalog-filter,.trs-vf-shop-picker) :is(button,a,select,input):focus-visible {
	outline: 2px solid #445e86 !important;
	outline-offset: 3px;
}

/* Mobile uses a native dialog in the top layer, above sticky Divi headers. */
body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog {
	position: fixed;
	inset: 0;
	box-sizing: border-box;
	width: min(480px, calc(100% - 24px));
	max-width: calc(100% - 24px);
	height: fit-content;
	max-height: calc(100dvh - 24px);
	margin: auto;
	padding: 0;
	overflow: hidden;
	border: 0;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 18px 60px rgba(20,30,48,.25);
	color: #2a3547;
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog:not([open]) { display: none !important; }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog::backdrop { background: rgba(25,35,50,.4); }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog .trs-vf-shop-picker { position: static !important; max-height: calc(100dvh - 24px) !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
html.trs-vf-picker-modal-open { overflow: hidden !important; }

@media (max-width: 980.99px) {
	body.trs-vf-catalog-layout #main-content { --trs-shop-gutter: 16px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading,
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading > div:first-child { align-items: center !important; text-align: center !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter-heading strong,
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-kicker { width: 100% !important; text-align: center !important; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title { min-height: 130px !important; padding: 16px 4% 16px 116px !important; background-position: left center, 88px center !important; background-size: 68px auto, 3px 90px !important; font-size: var(--trs-vf-title-size, 76px) !important; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title.trs-vf-title-fit { white-space: nowrap !important; overflow-wrap: normal !important; word-break: normal !important; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title::after { font-size: 9px !important; letter-spacing: .12em !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-mobile-controls { display: grid !important; grid-template-columns: minmax(0,1fr) auto !important; gap: 8px !important; width: 100% !important; max-width: none !important; margin: 0 !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-mobile-toggle:not([hidden]) { display: flex !important; min-width: 0 !important; width: 100% !important; min-height: 42px !important; padding: 10px 32px 10px 12px !important; font: 400 17px/1.3 var(--trs-shop-heading) !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-mobile-clear { min-width: 0 !important; padding: 8px 12px !important; font: 400 17px/1.3 var(--trs-shop-heading) !important; }
	body.trs-vf-catalog-layout #main-content .is-mobile-open .trs-vf-catalog-filter-body { margin-top: 14px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog .trs-vf-field select,
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog .trs-vf-vin-input { font-size: 16px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-dialog .trs-vf-shop-picker-header { position: sticky; top: -18px; z-index: 4; margin: -18px -18px 12px !important; padding: 14px 18px !important; background: #fff; }
}

/* Tablet actions share one row; phone actions retain their full-width rows. */
@media (min-width: 601px) and (max-width: 980.99px) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary { grid-template-columns: 100px minmax(0,1fr) !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-image { width: 100px; height: 66px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-vehicle-actions {
		display: grid !important;
		grid-column: 1 / -1;
		grid-template-columns: minmax(0,1fr);
		align-items: stretch !important;
		width: 100%;
		max-width: none;
		gap: 8px !important;
	}
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-vehicle-summary.has-vehicle .trs-vf-catalog-vehicle-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 600px) {
	body.trs-vf-catalog-layout #main-content { --trs-shop-gutter: 12px; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title { min-height: 100px !important; padding: 12px 4% 12px 90px !important; background-position: left center, 70px center !important; background-size: 54px auto, 3px 72px !important; font-size: var(--trs-vf-title-size, 58px) !important; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header__title.page-title::after { max-width: 100% !important; margin-top: 6px !important; font-size: clamp(6px, 1.7vw, 8px) !important; letter-spacing: .06em !important; }
	body.trs-vf-catalog-layout #main-content .woocommerce-products-header::before { width: 40% !important; background-size: 56px 56px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-catalog-filter { padding: 14px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar { gap: 8px; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar .woocommerce-result-count { font-size: 10px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-toolbar .trs-vf-catalog-page-size label { font-size: 11px !important; gap: 5px !important; }
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-main ul.products { gap: 10px !important; }
}

@media (prefers-reduced-motion: no-preference) {
	body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker:not([hidden]) { animation: trs-vf-picker-enter .18s ease-out; }
	@keyframes trs-vf-picker-enter { from { opacity: 0; translate: 8px 0; } to { opacity: 1; translate: 0 0; } }
}

body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker .trs-vf-mode-shop-picker .trs-vf-vin-toggle { display: none !important; }
body.trs-vf-catalog-layout #main-content .trs-vf-shop-picker button { cursor: pointer; }
