/*
Theme Name: GAOQIAO LED Traffic
Theme URI: https://www.led-trafficlight.com/
Author: OpenAI Codex
Description: Product catalog driven B2B manufacturing theme for GAOQIAO LED Traffic.
Version: 0.4.0
Text Domain: gaoqiao-ledtraffic
*/

:root {
	--gaq-ink: #163046;
	--gaq-ink-2: #26465e;
	--gaq-text: #60778d;
	--gaq-line: rgba(22, 48, 70, 0.1);
	--gaq-bg: #f6f8fb;
	--gaq-panel: #ffffff;
	--gaq-soft: #eef3f7;
	--gaq-accent: #e1722a;
	--gaq-accent-2: #f4b06b;
	--gaq-shadow: 0 18px 40px rgba(22, 48, 70, 0.08);
	--gaq-shell: min(1180px, calc(100vw - 40px));
	--gaq-head: "Barlow Condensed", "Arial Narrow", sans-serif;
	--gaq-body: "IBM Plex Sans", "Segoe UI", sans-serif;
}

html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: linear-gradient(180deg, #fbfcfd, var(--gaq-bg));
	color: var(--gaq-ink);
	font-family: var(--gaq-body);
	line-height: 1.7;
}
.catalog-skip-link {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 120;
	padding: 10px 14px;
	border-radius: 10px;
	background: #0369a1;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	transform: translateY(-180%);
	transition: transform 180ms ease;
}
.catalog-skip-link:focus-visible {
	transform: translateY(0);
	outline: 2px solid #fff;
	outline-offset: 2px;
}
.site-langbar {
	position: relative;
	z-index: 50;
	background: #0f2435;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.site-langbar__inner {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 0;
}
.site-langbar__logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	padding: 3px 12px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.98);
}
.site-langbar__logo img {
	display: block;
	width: auto;
	height: 50px;
}
.site-langbar__label {
	margin-right: 8px;
	color: rgba(255, 255, 255, 0.74);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.site-langbar__company {
	margin-right: auto;
	color: rgba(255, 255, 255, 0.92);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.04em;
	white-space: nowrap;
}
.site-langbar__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 56px;
	min-height: 42px;
	padding: 0 15px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: transparent;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.site-langbar__item.is-active {
	background: #fff;
	border-color: #fff;
	color: #0f2435;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
p { margin: 0 0 16px; }
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 2px solid #0369a1;
	outline-offset: 2px;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 14px;
	color: var(--gaq-ink);
	font-family: var(--gaq-head);
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 1.04;
	text-transform: uppercase;
}

.catalog-shell { width: var(--gaq-shell); margin: 0 auto; }
.catalog-kicker {
	margin-bottom: 12px;
	color: var(--gaq-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}
.catalog-lead { font-size: 18px; color: var(--gaq-text); max-width: 760px; }
.catalog-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.catalog-actions--hero { margin-bottom: 18px; }
.catalog-btn {
    flex-wrap: wrap;
    white-space: normal;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 24px;
	border-radius: 14px;
	border: 1px solid transparent;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, border-color 180ms ease;
	cursor: pointer;
}
.catalog-btn:hover { transform: translateY(-2px); }
.catalog-btn--primary {
	background: linear-gradient(135deg, var(--gaq-accent), var(--gaq-accent-2));
	color: #fff;
	box-shadow: 0 14px 28px rgba(225, 114, 42, 0.22);
}
.catalog-btn--ghost {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}
.catalog-btn--line {
	border-color: var(--gaq-line);
	background: #fff;
	color: var(--gaq-ink);
}
.catalog-btn--block { width: 100%; }

.catalog-home { padding-bottom: 56px; }
.catalog-hero {
	position: relative;
	overflow: hidden;
	padding: 78px 0 42px;
	background:
		linear-gradient(135deg, #eff4f9 0, #ffffff 52%, #e8f0f6 100%);
}
.catalog-hero::before,
.catalog-hero::after {
	content: "";
	position: absolute;
	border-radius: 999px;
	pointer-events: none;
}
.catalog-hero::before {
	top: -120px;
	right: -110px;
	width: 340px;
	height: 340px;
	background: radial-gradient(circle at 30% 30%, rgba(3, 105, 161, 0.18), rgba(3, 105, 161, 0));
}
.catalog-hero::after {
	bottom: -140px;
	left: -100px;
	width: 320px;
	height: 320px;
	background: radial-gradient(circle at 50% 50%, rgba(225, 114, 42, 0.18), rgba(225, 114, 42, 0));
}
.catalog-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 28px;
	align-items: stretch;
}
.catalog-hero__copy,
.catalog-hero__panel,
.catalog-card,
.catalog-size,
.catalog-route,
.catalog-sidecard,
.catalog-detail__content {
	border: 1px solid var(--gaq-line);
	background: var(--gaq-panel);
	box-shadow: var(--gaq-shadow);
}
.catalog-hero__copy {
	padding: 36px;
	border-radius: 28px;
}
.catalog-hero__copy h1 {
	max-width: 11ch;
	font-size: clamp(40px, 5vw, 72px);
}
.catalog-hero__panel {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	padding: 22px;
	border-radius: 28px;
}
.catalog-hero__panel img {
	width: 100%;
	height: 100%;
	min-height: 560px;
	border-radius: 20px;
	object-fit: contain;
	object-position: center;
	background: #eef2f5;
}
.catalog-trust-list {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.catalog-trust-list li {
	position: relative;
	padding-left: 22px;
	color: var(--gaq-ink-2);
	font-size: 14px;
	font-weight: 500;
}
.catalog-trust-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--gaq-accent), var(--gaq-accent-2));
	box-shadow: 0 0 0 4px rgba(225, 114, 42, 0.14);
}
.catalog-mini-card {
	padding: 16px 18px;
	border: 1px solid var(--gaq-line);
	border-radius: 16px;
	background: var(--gaq-soft);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.catalog-mini-card:hover {
	transform: translateY(-2px);
	border-color: rgba(3, 105, 161, 0.26);
	box-shadow: 0 10px 20px rgba(22, 48, 70, 0.08);
}
.catalog-mini-card span {
	display: block;
	margin-bottom: 6px;
	color: var(--gaq-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}
.catalog-mini-card strong {
	font-size: 15px;
	color: var(--gaq-ink);
}

.catalog-strip {
	padding: 14px 0;
	background: var(--gaq-ink);
	color: #fff;
}
.catalog-strip__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}
.catalog-strip__grid div {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 8px;
}
.catalog-strip__grid span {
	font-family: var(--gaq-head);
	font-size: 28px;
}
.catalog-strip__grid small {
	font-size: 12px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.catalog-section { padding: 64px 0; }
.catalog-section--soft { background: linear-gradient(180deg, #f1f5f8, transparent); }
.catalog-section--proof {
	background: linear-gradient(180deg, rgba(15, 23, 42, 0.03), transparent 84%);
}
.catalog-section__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
}
.catalog-section__head h2 { font-size: clamp(28px, 3.8vw, 46px); }
.catalog-section__head > p { max-width: 480px; color: var(--gaq-text); }

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

.catalog-card,
.catalog-size,
.catalog-route {
	padding: 24px;
	border-radius: 22px;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
	cursor: pointer;
}
.catalog-card:hover,
.catalog-size:hover,
.catalog-route:hover,
.catalog-card:focus-within,
.catalog-size:focus-within,
.catalog-route:focus-within {
	transform: translateY(-3px);
	border-color: rgba(3, 105, 161, 0.26);
	box-shadow: 0 14px 28px rgba(22, 48, 70, 0.11);
}
.catalog-card__tag {
	display: inline-block;
	margin-bottom: 14px;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--gaq-soft);
	color: var(--gaq-ink-2);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.catalog-card h3,
.catalog-size strong,
.catalog-route h3,
.catalog-sidecard h3 { font-size: 28px; }
.catalog-card p,
.catalog-size span,
.catalog-route p,
.catalog-sidecard p,
.catalog-sidecard li { color: var(--gaq-text); }
.catalog-proof-card {
	padding: 26px;
	border: 1px solid var(--gaq-line);
	border-radius: 22px;
	background: linear-gradient(180deg, #fff, #f7fbff);
	box-shadow: 0 10px 24px rgba(22, 48, 70, 0.07);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.catalog-proof-card:hover {
	transform: translateY(-3px);
	border-color: rgba(3, 105, 161, 0.3);
	box-shadow: 0 16px 30px rgba(22, 48, 70, 0.12);
}
.catalog-proof-card__label {
	display: inline-block;
	margin-bottom: 14px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(3, 105, 161, 0.1);
	color: #075985;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.catalog-size {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: linear-gradient(180deg, #fff, #f8fafc);
}
.catalog-size strong {
	display: block;
	color: var(--gaq-ink);
	font-family: var(--gaq-head);
}

.catalog-layout {
	display: grid;
	grid-template-columns: 1.2fr 0.8fr;
	gap: 24px;
	align-items: start;
}
.catalog-layout__side {
	display: grid;
	gap: 18px;
}
.catalog-sidecard {
	padding: 24px;
	border-radius: 22px;
}
.catalog-sidecard ul { margin: 0 0 18px; padding-left: 18px; }
.catalog-sidecard__list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.catalog-sidecard__list li {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 0;
	border-top: 1px solid var(--gaq-line);
}
.catalog-sidecard__list li:first-child { border-top: 0; padding-top: 0; }
.catalog-sidecard__list span {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--gaq-text);
}
.catalog-sidecard__list strong { color: var(--gaq-ink); font-size: 14px; }
.catalog-bandcta {
	padding: 6px 0 28px;
}
.catalog-bandcta__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px 30px;
	padding: 30px;
	border: 1px solid rgba(3, 105, 161, 0.24);
	border-radius: 24px;
	background: linear-gradient(130deg, #0f2a3f, #1a4864 58%, #29617f);
	color: rgba(255, 255, 255, 0.9);
	box-shadow: 0 16px 36px rgba(15, 42, 63, 0.26);
}
.catalog-bandcta__inner h2,
.catalog-bandcta__inner p,
.catalog-bandcta__inner .catalog-kicker {
	color: #fff;
}
.catalog-bandcta__inner h2 {
	font-size: clamp(28px, 3.4vw, 44px);
	max-width: 17ch;
}
.catalog-bandcta__inner p {
	margin-bottom: 0;
	max-width: 70ch;
}
.catalog-bandcta .catalog-btn--line {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.38);
	color: #fff;
}

.catalog-detail__hero {
	padding: 64px 0 24px;
	background: linear-gradient(180deg, #f4f8fb, #f9fbfc);
}
.catalog-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 18px;
	color: var(--gaq-text);
	font-size: 13px;
}
.catalog-breadcrumbs strong {
	color: var(--gaq-ink);
}
.catalog-detail__hero-grid {
	display: grid;
	grid-template-columns: 0.92fr 1.08fr;
	gap: 24px;
	align-items: start;
}
.catalog-detail__media {
	padding: 20px;
	border: 1px solid var(--gaq-line);
	border-radius: 24px;
	background: #fff;
	box-shadow: var(--gaq-shadow);
}
.catalog-detail__copy {
	padding: 12px 0;
}
.catalog-detail__copy h1 {
	max-width: 13ch;
	font-size: clamp(34px, 4.2vw, 56px);
}
.catalog-spec-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 24px 0;
}
.catalog-spec-grid div {
	padding: 14px 16px;
	border: 1px solid var(--gaq-line);
	border-radius: 16px;
	background: #fff;
}
.catalog-spec-grid span {
	display: block;
	margin-bottom: 6px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--gaq-text);
}
.catalog-spec-grid strong { color: var(--gaq-ink); font-size: 14px; }
.catalog-highlight-list {
	display: grid;
	gap: 10px;
	margin: 0 0 24px;
	padding: 0;
	list-style: none;
}
.catalog-highlight-list li {
	position: relative;
	padding-left: 18px;
	color: var(--gaq-text);
}
.catalog-highlight-list li::before {
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--gaq-accent);
}

.catalog-detail__body { padding: 24px 0 72px; }
.catalog-detail__content {
	padding: 32px;
	border-radius: 26px;
}
.catalog-detail__section-head {
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--gaq-line);
}
.catalog-detail__content h2,
.catalog-detail__content h3,
.catalog-detail__content h4,
.catalog-detail__content h5 {
	margin-top: 30px;
	font-size: 28px;
}
.catalog-detail__content table {
	width: 100%;
	margin: 20px 0;
	border-collapse: collapse;
	font-size: 14px;
}
.catalog-detail__content td,
.catalog-detail__content th {
	padding: 12px 14px;
	border: 1px solid var(--gaq-line);
	vertical-align: top;
}
.catalog-detail__content ul,
.catalog-detail__content ol { padding-left: 20px; }
.catalog-detail__block {
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid var(--gaq-line);
}
.catalog-detail__block:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}
.catalog-detail__prose p:last-child { margin-bottom: 0; }
.catalog-detail__spec-table {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}
.catalog-detail__spec-row {
	padding: 14px 16px;
	border: 1px solid var(--gaq-line);
	border-radius: 16px;
	background: linear-gradient(180deg, #fff, #f8fafc);
}
.catalog-detail__spec-row span {
	display: block;
	margin-bottom: 6px;
	color: var(--gaq-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}
.catalog-detail__spec-row strong {
	color: var(--gaq-ink);
	font-size: 15px;
}
.catalog-detail__bullet-list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.catalog-detail__bullet-list li {
	position: relative;
	padding: 14px 16px 14px 38px;
	border: 1px solid var(--gaq-line);
	border-radius: 16px;
	background: #fff;
}
.catalog-detail__bullet-list li::before {
	content: "";
	position: absolute;
	top: 21px;
	left: 16px;
	width: 10px;
	height: 10px;
	border-radius: 999px;
	background: var(--gaq-accent);
	box-shadow: 0 0 0 4px rgba(225, 114, 42, 0.12);
}
.catalog-detail__legacy > *:first-child { margin-top: 0; }
.catalog-detail__legacy .field__item.hsize32,
.catalog-detail__legacy .attr-line,
.catalog-detail__legacy .h20 {
	display: none !important;
}
.catalog-detail__legacy .dtinfo {
	margin-bottom: 18px;
	padding: 18px;
	border: 1px solid var(--gaq-line);
	border-radius: 18px;
	background: #f8fafc;
}
.catalog-detail__legacy .dtinfo ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.catalog-detail__legacy .dtinfo li {
	padding: 6px 0;
}
.catalog-detail__legacy .content_dt table img {
	max-width: 100%;
	height: auto !important;
}
.catalog-detail__legacy img {
	max-width: 100%;
	height: auto;
}
.catalog-detail__faq {
	display: grid;
	gap: 14px;
}
.catalog-detail__faq-item {
	padding: 18px 20px;
	border: 1px solid var(--gaq-line);
	border-radius: 18px;
	background: linear-gradient(180deg, #fff, #f8fafc);
}
.catalog-detail__faq-item h4 {
	margin-bottom: 8px;
	font-size: 20px;
}
.catalog-detail__faq-item p:last-child {
	margin-bottom: 0;
}
.catalog-detail__footer-cta {
	padding: 0 0 64px;
}
.catalog-detail__footer-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 30px;
	border: 1px solid var(--gaq-line);
	border-radius: 24px;
	background: linear-gradient(180deg, #fff, #f6f9fb);
	box-shadow: var(--gaq-shadow);
}
.catalog-detail__footer-box h2 {
	font-size: clamp(28px, 3.8vw, 44px);
	max-width: 13ch;
}

.catalog-page__hero {
	padding: 54px 0 18px;
	background: linear-gradient(180deg, #f3f7fa, #f9fbfc);
}

.catalog-page__hero h1 {
	max-width: 13ch;
	font-size: clamp(34px, 4.2vw, 56px);
}

.catalog-page__body {
	padding: 18px 0 64px;
}

.catalog-page__content {
	padding: 30px;
	border: 1px solid var(--gaq-line);
	border-radius: 26px;
	background: #fff;
	box-shadow: var(--gaq-shadow);
}

.catalog-page__content > .region,
.catalog-page__content > .main-content-with-paragraphs,
.catalog-page__content > .page-content-paragraphs,
.catalog-page__content > .page-content-without-paragraphs {
	margin: 0;
}

.catalog-page__content .paragraph--homepage-hero,
.catalog-page__content .paragraph--media,
.catalog-page__content .paragraph--media-text,
.catalog-page__content .paragraph--manually-ordered-content,
.catalog-page__content .paragraph--from-library {
	margin: 22px 0 0;
	border: 1px solid var(--gaq-line);
	border-radius: 22px;
	background: linear-gradient(180deg, #fff, #f8fafc);
	box-shadow: 0 10px 24px rgba(22, 48, 70, 0.06);
	overflow: hidden;
}

.catalog-page__content .paragraph-header,
.catalog-page__content .paragraph-content,
.catalog-page__content .content-outro {
	padding: 28px 0;
}

.catalog-page__content h2,
.catalog-page__content h3 {
	font-size: clamp(26px, 3vw, 40px);
}

.catalog-page__content .field-brand {
	font-family: var(--gaq-head);
	font-size: 24px;
	text-transform: uppercase;
	color: var(--gaq-ink);
}

.catalog-page__content .slideshow-item {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 18px;
	border: 1px solid var(--gaq-line);
	border-radius: 18px;
	background: #fff;
}

.catalog-page__content .paragraph-content p,
.catalog-page__content .field__item,
.catalog-page__content .paragraph-columns,
.catalog-page__content .field-wysiwyg,
.catalog-page__content .field__item div,
.catalog-page__content .paragraph-content li {
	color: var(--gaq-text);
}

.catalog-taxonomy-layout,
.catalog-page--taxonomy .catalog-taxonomy-layout {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 26px;
	align-items: start;
}

.catalog-taxonomy-sidebar,
.catalog-page--taxonomy .catalog-taxonomy-sidebar {
	position: sticky;
	top: 96px;
}

.catalog-taxonomy-sidebar__head,
.catalog-taxonomy-sidebar__body,
.catalog-page--taxonomy .catalog-taxonomy-sidebar__head,
.catalog-page--taxonomy .catalog-taxonomy-sidebar__body {
	padding: 20px;
	border: 1px solid var(--gaq-line);
	border-radius: 20px;
	background: #fff;
	box-shadow: var(--gaq-shadow);
}

.catalog-taxonomy-sidebar__head,
.catalog-page--taxonomy .catalog-taxonomy-sidebar__head {
	margin-bottom: 16px;
}

.catalog-taxonomy-sidebar__head h2,
.catalog-page--taxonomy .catalog-taxonomy-sidebar__head h2 {
	font-size: 32px;
}

.catalog-taxonomy-main .products-view--bottom > header,
.catalog-page--traffic-light .products-view--bottom > header {
	margin-bottom: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--gaq-line);
}

.catalog-taxonomy-main .products-container,
.catalog-page--traffic-light .products-container {
	min-width: 0;
}

.catalog-taxonomy-sidebar .filters-container,
.catalog-taxonomy-sidebar .filters--main--desktop,
.catalog-page--traffic-light .filters--main--desktop {
	width: auto;
	min-width: 0;
}

.catalog-taxonomy-sidebar .filters--main--desktop,
.catalog-page--traffic-light .filters--main--desktop {
	margin-bottom: 16px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.catalog-taxonomy-sidebar .filters--main--desktop .container,
.catalog-taxonomy-sidebar .filters--main--desktop .row,
.catalog-taxonomy-sidebar .filters--main--desktop .col-sm-10,
.catalog-page--traffic-light .filters--main--desktop .container,
.catalog-page--traffic-light .filters--main--desktop .row,
.catalog-page--traffic-light .filters--main--desktop .col-sm-10 {
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
}

.catalog-taxonomy-sidebar .fieldset-legend,
.catalog-page--traffic-light .fieldset-legend {
	display: block;
	margin-bottom: 12px;
	color: var(--gaq-ink);
	font-family: var(--gaq-head);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.catalog-taxonomy-sidebar .product-categories,
.catalog-page--traffic-light .product-categories {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.catalog-taxonomy-sidebar .product-categories li,
.catalog-page--traffic-light .product-categories li {
	margin: 0;
}

.catalog-taxonomy-sidebar .product-categories a,
.catalog-page--traffic-light .product-categories a {
	display: block;
	padding: 10px 12px;
	border: 1px solid var(--gaq-line);
	border-radius: 12px;
	background: #fff;
	color: var(--gaq-ink-2);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	transition: border-color 180ms ease, transform 180ms ease, color 180ms ease;
}

.catalog-taxonomy-sidebar .product-categories a:hover,
.catalog-page--traffic-light .product-categories a:hover {
	transform: translateX(2px);
	border-color: rgba(225, 114, 42, 0.36);
	color: var(--gaq-ink);
}

.catalog-taxonomy-main .products-container .view-content,
.catalog-page--traffic-light .products-container .view-content {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.catalog-taxonomy-main .products-container .views-row,
.catalog-page--traffic-light .products-container .views-row {
	margin: 0;
	padding: 0;
}

.catalog-taxonomy-main .products-container .anchor-block,
.catalog-page--traffic-light .products-container .anchor-block {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 18px;
	border: 1px solid var(--gaq-line);
	border-radius: 20px;
	background: linear-gradient(180deg, #fff, #f8fafc);
	box-shadow: 0 10px 22px rgba(22, 48, 70, 0.05);
}

.catalog-taxonomy-main .products-container .views-field-field-product-images,
.catalog-taxonomy-main .products-container .field-content-img,
.catalog-page--traffic-light .products-container .views-field-field-product-images,
.catalog-page--traffic-light .products-container .field-content-img {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 220px;
	margin-bottom: 16px;
	padding: 14px;
	border-radius: 16px;
	background: #eef3f7;
}

.catalog-taxonomy-main .products-container .views-field-field-product-images img,
.catalog-taxonomy-main .products-container .field-content-img img,
.catalog-page--traffic-light .products-container .views-field-field-product-images img,
.catalog-page--traffic-light .products-container .field-content-img img {
	max-height: 190px;
	object-fit: contain;
}

.catalog-taxonomy-main .products-container .views-field-title,
.catalog-taxonomy-main .products-container .field-content,
.catalog-taxonomy-main .products-container span.field-content,
.catalog-page--traffic-light .products-container .views-field-title,
.catalog-page--traffic-light .products-container .field-content,
.catalog-page--traffic-light .products-container span.field-content {
	color: var(--gaq-ink);
}

.catalog-taxonomy-main .products-container .views-field-title,
.catalog-page--traffic-light .products-container .views-field-title {
	margin-bottom: 8px;
	font-family: var(--gaq-head);
	font-size: 24px;
	line-height: 1.1;
	text-transform: uppercase;
}

.catalog-taxonomy-main .products-container .views-field-field-product-brands,
.catalog-taxonomy-main .products-container .views-field-field-product-model,
.catalog-taxonomy-main .products-container .views-field-field-product-specification,
.catalog-page--traffic-light .products-container .views-field-field-product-brands,
.catalog-page--traffic-light .products-container .views-field-field-product-model,
.catalog-page--traffic-light .products-container .views-field-field-product-specification {
	margin-top: 8px;
	color: var(--gaq-text);
	font-size: 13px;
}

.catalog-taxonomy-main .pager,
.catalog-page--traffic-light .pager {
	margin-top: 24px;
	padding-top: 18px;
	border-top: 1px solid var(--gaq-line);
}

.catalog-inquiry {
	margin-top: 42px;
}

.catalog-inquiry__panel {
	padding: 34px;
	border: 1px solid var(--gaq-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--gaq-shadow);
}

.catalog-inquiry__head h2 {
	font-size: clamp(32px, 4vw, 46px);
}

.catalog-inquiry__head p:last-child {
	max-width: 820px;
	color: var(--gaq-text);
}

.catalog-inquiry__notice {
	margin-top: 16px;
	padding: 12px 14px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 600;
}

.catalog-inquiry__notice.is-success {
	background: #e8f9ef;
	color: #196335;
	border: 1px solid #9fd8b3;
}

.catalog-inquiry__notice.is-error {
	background: #fce8e8;
	color: #8a1f1f;
	border: 1px solid #e6a6a6;
}

.catalog-inquiry__form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 16px;
	margin-top: 18px;
}

.catalog-inquiry__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.catalog-inquiry__field label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gaq-ink-2);
}

.catalog-inquiry__field input,
.catalog-inquiry__field textarea {
	padding: 12px 14px;
	border: 1px solid var(--gaq-line);
	border-radius: 12px;
	background: #fff;
	font-family: var(--gaq-body);
	font-size: 15px;
	color: var(--gaq-ink);
}

.catalog-inquiry__field input:focus,
.catalog-inquiry__field textarea:focus {
	outline: none;
	border-color: rgba(225, 114, 42, 0.8);
	box-shadow: 0 0 0 3px rgba(225, 114, 42, 0.14);
}

.catalog-inquiry__field--full {
	grid-column: 1 / -1;
}

.catalog-inquiry__actions {
	grid-column: 1 / -1;
	padding-top: 2px;
}

.catalog-inquiry__honeypot {
	position: absolute;
	left: -9999px;
	top: -9999px;
	opacity: 0;
	pointer-events: none;
}

.site-footer {
	margin-top: 48px;
	background: linear-gradient(135deg, #173047, #224860);
	color: rgba(255, 255, 255, 0.82);
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr 1fr;
	gap: 28px;
	padding: 44px 0 32px;
}

.site-footer h2,
.site-footer h3,
.site-footer a {
	color: #fff;
}

.site-footer h2 {
	font-size: 34px;
	max-width: 12ch;
}

.site-footer__brand p:last-child {
	max-width: 520px;
}

.site-footer__tags ul,
.site-footer__contact ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer__tags li,
.site-footer__contact li {
	padding: 10px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.site-footer__tags li:first-child,
.site-footer__contact li:first-child {
	border-top: 0;
	padding-top: 0;
}

.site-footer__contact span {
	display: block;
	margin-bottom: 4px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.56);
}

.site-footer__contact strong,
.site-footer__tags li {
	font-size: 14px;
}

.site-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	padding: 14px 0;
	background: rgba(0, 0, 0, 0.12);
}

.site-footer__bottom p {
	margin: 0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.page .body-header,
.page .body-footer { backdrop-filter: blur(12px); }
.page .body-header .container,
.page .body-footer .container,
.page .paragraph-content > .container,
.page .paragraph-header .container,
.catalog-page__content .paragraph-content > .container,
.catalog-page__content .paragraph-header .container {
	width: var(--gaq-shell);
	max-width: none;
}
.page .body-header {
	position: sticky;
	top: 0;
	z-index: 20;
	background: rgba(255, 255, 255, 0.88);
	border-bottom: 1px solid var(--gaq-line);
}
.page .logo a {
	display: inline-block;
	padding: 16px 0;
	color: var(--gaq-ink);
	font-family: var(--gaq-head);
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.page .menu--primary--ul-level-1 {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 22px;
	margin: 0;
	padding: 14px 0;
	list-style: none;
}
.page .menu--primary--ul-level-1 > li > span > a,
.page .menu--primary--ul-level-1 > li > a {
	color: var(--gaq-ink);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.page .main-content-with-paragraphs,
.page .page-content-paragraphs { padding-bottom: 48px; }
.page .paragraph--homepage-hero,
.page .paragraph--media,
.page .paragraph--media-text,
.page .paragraph--manually-ordered-content,
.page .paragraph--from-library {
	margin: 28px auto 0;
	border: 1px solid var(--gaq-line);
	border-radius: 26px;
	background: #fff;
	box-shadow: var(--gaq-shadow);
	overflow: hidden;
}
.page .paragraph-header,
.page .paragraph-content,
.page .content-outro { padding: 32px 0; }
.page h1,
.page .paragraph-header h2,
.page .paragraph-header h3 { font-size: clamp(30px, 4vw, 48px); }
.page .paragraph-content p,
.page .field__item,
.page .paragraph-columns,
.page .field-wysiwyg { color: var(--gaq-text); }
.page .jf-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 22px;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--gaq-accent), var(--gaq-accent-2));
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.page .owl-carousel .slide { padding: 14px; }
.page .slideshow-item {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 18px;
	border: 1px solid var(--gaq-line);
	border-radius: 20px;
	background: linear-gradient(180deg, #fff, #f8fafc);
}
.page .field-brand {
	color: var(--gaq-ink);
	font-family: var(--gaq-head);
	font-size: 24px;
	text-transform: uppercase;
}
.page .body-footer {
	margin-top: 40px;
	background: linear-gradient(135deg, #173047, #254863);
	color: rgba(255, 255, 255, 0.84);
}
.page .body-footer a,
.page .body-footer h2,
.page .body-footer h3 { color: #fff; }

@keyframes gaq-fade-up {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.catalog-hero__copy > * {
		opacity: 0;
		animation: gaq-fade-up 480ms ease forwards;
	}
	.catalog-hero__copy > *:nth-child(1) { animation-delay: 40ms; }
	.catalog-hero__copy > *:nth-child(2) { animation-delay: 120ms; }
	.catalog-hero__copy > *:nth-child(3) { animation-delay: 200ms; }
	.catalog-hero__copy > *:nth-child(4) { animation-delay: 280ms; }
	.catalog-hero__copy > *:nth-child(5) { animation-delay: 360ms; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.catalog-btn,
	.catalog-card,
	.catalog-size,
	.catalog-route,
	.catalog-proof-card,
	.catalog-mini-card {
		transition: none;
	}
}

@media (max-width: 1080px) {
	.catalog-hero__grid,
	.catalog-layout,
	.catalog-detail__hero-grid,
	.catalog-detail__spec-table,
	.catalog-grid--4,
	.catalog-grid--3,
	.catalog-inquiry__form,
	.site-footer__grid { grid-template-columns: 1fr 1fr; }
	.catalog-strip__grid,
	.catalog-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.catalog-taxonomy-layout { grid-template-columns: 260px minmax(0, 1fr); }
	.catalog-page--traffic-light .products-container .view-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.catalog-taxonomy-main .products-container .view-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.catalog-detail__footer-box { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 768px) {
	.site-langbar__inner { flex-wrap: wrap; }
	.site-langbar__logo img { height: 36px; }
	.site-langbar__label {
		font-size: 13px;
		margin-right: 6px;
	}
	.site-langbar__item {
		min-width: 46px;
		min-height: 36px;
		padding: 0 12px;
		font-size: 12px;
	}
	.site-langbar__company {
		flex-basis: 100%;
		margin: 2px 0 4px;
		white-space: normal;
		font-size: 13px;
		letter-spacing: 0.02em;
	}
	.catalog-hero__grid,
	.catalog-layout,
	.catalog-detail__hero-grid,
	.catalog-detail__spec-table,
	.catalog-grid--4,
	.catalog-grid--3,
	.catalog-grid--2,
	.catalog-strip__grid,
	.catalog-spec-grid,
	.catalog-inquiry__form,
	.site-footer__grid { grid-template-columns: 1fr; }
	.catalog-taxonomy-layout,
	.catalog-page--traffic-light .products-container .view-content,
	.catalog-taxonomy-main .products-container .view-content { grid-template-columns: 1fr; }
	.catalog-taxonomy-sidebar { position: static; }
	.catalog-hero,
	.catalog-section,
	.catalog-detail__hero,
	.catalog-detail__body { padding-top: 44px; padding-bottom: 44px; }
	.catalog-bandcta__inner { padding: 24px; }
	.page .body-header { position: static; }
	.page .menu--primary--ul-level-1 {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 14px;
	}
}

/* FORCE OVERRIDE - Fix button overflow */
.catalog-btn {
    flex-wrap: wrap !important;
    white-space: normal !important;
    width: auto !important;
    max-width: 100%;
}

/* FORCE ALL BUTTONS */
.catalog-btn--secondary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    padding: 0 24px !important;
    border-radius: 14px !important;
    background: #163046 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}
.catalog-btn--secondary:hover {
    background: #26465e !important;
    transform: translateY(-2px);
}

/* CARD HOVER EFFECT */
.catalog-card {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.catalog-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(22, 48, 70, 0.15) !important;
    border-color: var(--gaq-accent, #e1722a) !important;
}
.catalog-card:hover * {
    color: inherit !important;
}

/* CARD BACKGROUND HOVER */
.catalog-card:hover {
    background-color: #f0f4f8 !important;
}

/* CATALOG SIZE HOVER */
.catalog-size {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 16px !important;
    border: 2px solid transparent !important;
    border-radius: 12px !important;
    text-decoration: none !important;
}
.catalog-size:hover {
    border-color: var(--gaq-accent, #e1722a) !important;
    background-color: #fef6f0 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 16px rgba(225, 114, 42, 0.15) !important;
}
.catalog-size strong {
    transition: color 0.3s ease !important;
}
.catalog-size:hover strong {
    color: var(--gaq-accent, #e1722a) !important;
}

/* MINI CARD & PROOF CARD HOVER */
.catalog-mini-card, .catalog-proof-card {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.catalog-mini-card:hover, .catalog-proof-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 20px rgba(22, 48, 70, 0.12) !important;
    border-color: var(--gaq-accent, #e1722a) !important;
}

/* ROUTE & GENERAL LINK HOVER */
.catalog-route {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.catalog-route:hover {
    color: var(--gaq-accent, #e1722a) !important;
}

/* STRIP & BAND CTA HOVER */
.catalog-strip a, .catalog-bandcta a {
    transition: color 0.3s ease !important;
}
.catalog-strip a:hover, .catalog-bandcta a:hover {
    color: var(--gaq-accent, #e1722a) !important;
}

/* DISABLE HOVER ON PROOF CARDS */
.catalog-proof-card {
    transition: none !important;
    cursor: default !important;
}
.catalog-proof-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: inherit !important;
}

/* REMOVE PROOF CARD BOX */
.catalog-proof-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 16px !important;
}

/* CATALOG ROUTE CLICK EFFECT */
.catalog-route {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    border-radius: 12px !important;
    padding: 20px !important;
    display: block !important;
    text-decoration: none !important;
}
.catalog-route:hover {
    background: linear-gradient(135deg, #fef6f0, #fff) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(225, 114, 42, 0.15) !important;
    border: 2px solid var(--gaq-accent, #e1722a) !important;
}
.catalog-route h3 {
    transition: color 0.3s ease !important;
    color: var(--gaq-ink, #163046) !important;
}
.catalog-route:hover h3 {
    color: var(--gaq-accent, #e1722a) !important;
}

/* UNIFIED CLICK EFFECT FOR ALL CATALOG LINKS */
.catalog-card, .catalog-size, .catalog-route {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    border-radius: 12px !important;
    display: block !important;
    text-decoration: none !important;
}
.catalog-card:hover, .catalog-size:hover, .catalog-route:hover {
    background: linear-gradient(135deg, #fef6f0, #fff5ee) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(225, 114, 42, 0.18) !important;
    border: 2px solid var(--gaq-accent, #e1722a) !important;
}
.catalog-card h3, .catalog-size strong, .catalog-route h3 {
    transition: color 0.3s ease !important;
}
.catalog-card:hover h3, .catalog-size:hover strong, .catalog-route:hover h3 {
    color: var(--gaq-accent, #e1722a) !important;
}

/* HIDE BANNER IMAGES AND EXPLORE TEXT */
img[src*="inbanner"], .explore-page {
    display: none !important;
}

/* HIDE BANNER2 IMAGE */
img[src*="inbanner2"] {
    display: none !important;
}

/* HIDE SKIP LINK */
#skip-to-main-content {
    display: none !important;
}
/* HIDE SLIDE BANNERS */
div.slide .paragraph-id-4935 img {
    display: none !important;
}
/* HIDE CTA WARRANTY BUTTON */
a.cta-warranty {
    display: none !important;
}
/* HIDE AB05 IMAGE */
img[src*="ab05.jpg"] {
    display: none !important;
}

/* HIDE ENTIRE SLIDE DIV */
div.slide {
    display: none !important;
}

/* HIDE CATEGORY KICKER */
p.catalog-kicker {
    display: none !important;
}
/* HIDE MODAL CLOSE BUTTONS */
div.modal-close {
    display: none !important;
}
/* ============================================
   GQTRAFFIC WEBSITE CSS MODIFICATIONS
   Add this to the end of style.css
   ============================================ */

/* ============================================
   1. BUTTON OVERFLOW FIX
   ============================================ */
.catalog-btn {
    flex-wrap: wrap !important;
    white-space: normal !important;
    width: auto !important;
    max-width: 100%;
}

/* ============================================
   2. CARD HOVER EFFECT
   ============================================ */
.catalog-card {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.catalog-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(22, 48, 70, 0.15) !important;
    border-color: var(--gaq-accent, #e1722a) !important;
}
.catalog-card:hover * {
    color: inherit !important;
}
.catalog-card:hover {
    background-color: #f0f4f8 !important;
}

/* ============================================
   3. CATALOG SIZE HOVER
   ============================================ */
.catalog-size {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 16px !important;
    border: 2px solid transparent !important;
    border-radius: 12px !important;
    text-decoration: none !important;
}
.catalog-size:hover {
    border-color: var(--gaq-accent, #e1722a) !important;
    background-color: #fef6f0 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 16px rgba(225, 114, 42, 0.15) !important;
}
.catalog-size strong {
    transition: color 0.3s ease !important;
}
.catalog-size:hover strong {
    color: var(--gaq-accent, #e1722a) !important;
}

/* ============================================
   4. MINI CARD & PROOF CARD HOVER
   ============================================ */
.catalog-mini-card, .catalog-proof-card {
    transition: none !important;
    cursor: default !important;
}
.catalog-mini-card:hover, .catalog-proof-card:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: inherit !important;
}

/* ============================================
   5. REMOVE PROOF CARD BOX
   ============================================ */
.catalog-proof-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 16px !important;
}

/* ============================================
   6. CATALOG ROUTE CLICK EFFECT
   ============================================ */
.catalog-route {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    border-radius: 12px !important;
    padding: 20px !important;
    display: block !important;
    text-decoration: none !important;
}
.catalog-route:hover {
    background: linear-gradient(135deg, #fef6f0, #fff) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(225, 114, 42, 0.15) !important;
    border: 2px solid var(--gaq-accent, #e1722a) !important;
}
.catalog-route h3 {
    transition: color 0.3s ease !important;
    color: var(--gaq-ink, #163046) !important;
}
.catalog-route:hover h3 {
    color: var(--gaq-accent, #e1722a) !important;
}

/* ============================================
   7. UNIFIED CLICK EFFECT FOR ALL CATALOG LINKS
   ============================================ */
.catalog-card, .catalog-size, .catalog-route {
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    border-radius: 12px !important;
    display: block !important;
    text-decoration: none !important;
}
.catalog-card:hover, .catalog-size:hover, .catalog-route:hover {
    background: linear-gradient(135deg, #fef6f0, #fff5ee) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(225, 114, 42, 0.18) !important;
    border: 2px solid var(--gaq-accent, #e1722a) !important;
}
.catalog-card h3, .catalog-size strong, .catalog-route h3 {
    transition: color 0.3s ease !important;
}
.catalog-card:hover h3, .catalog-size:hover strong, .catalog-route:hover h3 {
    color: var(--gaq-accent, #e1722a) !important;
}

/* ============================================
   8. HIDE ELEMENTS
   ============================================ */

/* Hide banner images and explore text */
img[src*="inbanner"], .explore-page {
    display: none !important;
}

/* Hide banner2 image */
img[src*="inbanner2"] {
    display: none !important;
}

/* Hide skip link */
#skip-to-main-content {
    display: none !important;
}

/* Hide slide banners */
div.slide .paragraph-id-4935 img {
    display: none !important;
}

/* Hide CTA warranty button */
a.cta-warranty {
    display: none !important;
}

/* Hide ab05 image */
img[src*="ab05.jpg"] {
    display: none !important;
}

/* Hide entire slide div */
div.slide {
    display: none !important;
}

/* Hide category kicker */
p.catalog-kicker {
    display: none !important;
}

/* Hide modal close buttons */
div.modal-close {
    display: none !important;
}