/* Reusable category + brand catalogue landings --------------------------- */
.arvenoa-catalog-landing-view {
	--catalog-ink: var(--arvenoa-primary, #03363d);
	--catalog-mist: var(--arvenoa-secondary, #bdd9d7);
	--catalog-sand: var(--arvenoa-accent, #d8c9a8);
	--catalog-muted: #5f777b;
	--catalog-line: rgba(3, 54, 61, 0.16);
	--catalog-surface: rgba(255, 255, 255, 0.88);
	--catalog-page: #f8fbfa;
	background: var(--catalog-page);
}

.arvenoa-catalog-landing-main {
	position: relative;
	overflow: clip;
	padding: clamp(42px, 6vw, 88px) 0 clamp(90px, 10vw, 150px);
	font-family: var(--sg-font-sans, "Nunito Sans", sans-serif);
}

.arvenoa-catalog-landing-main::before,
.arvenoa-catalog-landing-main::after {
	position: absolute;
	z-index: 0;
	width: min(54vw, 880px);
	height: min(54vw, 880px);
	border-radius: 50%;
	content: "";
	filter: blur(4px);
	pointer-events: none;
}

.arvenoa-catalog-landing-main::before {
	top: 2%;
	right: -22%;
	background: radial-gradient(circle, rgba(189, 217, 215, 0.28), rgba(189, 217, 215, 0) 68%);
}

.arvenoa-catalog-landing-main::after {
	top: 42%;
	left: -28%;
	background: radial-gradient(circle, rgba(216, 201, 168, 0.2), rgba(216, 201, 168, 0) 70%);
}

.arvenoa-brand-landing {
	position: relative;
	z-index: 1;
	color: var(--catalog-ink);
	transition: opacity 220ms ease, transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

.arvenoa-brand-catalog {
	transition: opacity 220ms ease, transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

.arvenoa-brand-catalog.is-ajax-loading {
	opacity: 0.52;
	pointer-events: none;
	transform: translateY(5px);
}

.arvenoa-brand-catalog.is-ajax-entering {
	opacity: 0;
	transform: translateY(12px);
}

#modelos-disponibles {
	scroll-margin-top: 120px;
}

@media (prefers-reduced-motion: reduce) {
	.arvenoa-brand-landing,
	.arvenoa-brand-catalog {
		transition: none;
	}
}

/* SEO editorial architecture, comparison and trust ---------------------- */
.arvenoa-catalog-authority {
	display: grid;
	grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
	gap: clamp(24px, 4vw, 64px);
	align-items: center;
	margin-top: clamp(24px, 3vw, 44px);
	padding: clamp(26px, 3.4vw, 44px);
	background: color-mix(in srgb, var(--catalog-mist) 24%, transparent);
	border: 1px solid var(--catalog-line);
	border-radius: 24px;
}

.arvenoa-catalog-authority h2 {
	margin: 5px 0 0;
	font-size: clamp(1.55rem, 2.1vw, 2.35rem) !important;
	line-height: 1.05;
}

.arvenoa-catalog-authority p { margin: 0; }

.arvenoa-catalog-authority__eyebrow,
.arvenoa-catalog-guide__meaning,
.arvenoa-catalog-next > div > span {
	color: var(--catalog-muted);
	font-size: .88rem !important;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.arvenoa-catalog-toc {
	display: flex;
	gap: 10px;
	margin-top: 14px;
	padding: 10px;
	overflow-x: auto;
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 18px;
	scrollbar-width: thin;
}

.arvenoa-catalog-toc a {
	flex: 0 0 auto;
	padding: 11px 15px;
	border-radius: 11px;
	color: var(--catalog-ink) !important;
	font-size: .94rem;
	font-weight: 800;
	text-decoration: none;
	transition: background 180ms ease, transform 180ms ease;
}

.arvenoa-catalog-toc a:hover,
.arvenoa-catalog-toc a:focus-visible {
	background: var(--catalog-mist);
	transform: translateY(-1px);
}

#comparativa-modelos,
#gamas-saunier-duval,
#guia-eleccion,
#opinion-arvenoa,
#opiniones-clientes,
#preguntas-frecuentes,
#instalacion-garantia { scroll-margin-top: 138px; }

.arvenoa-catalog-comparison__scroll {
	overflow: auto;
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 24px;
	box-shadow: 0 20px 54px rgba(3, 54, 61, .08);
}

.arvenoa-catalog-comparison table {
	width: 100%;
	min-width: 1180px;
	margin: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	font-size: clamp(1rem, 1.1vw, 1.2rem);
}

.arvenoa-catalog-comparison th,
.arvenoa-catalog-comparison td {
	padding: 20px 18px;
	vertical-align: top;
	border: 0;
	border-bottom: 1px solid var(--catalog-line);
	border-right: 1px solid var(--catalog-line);
	line-height: 1.35;
}

.arvenoa-catalog-comparison th:last-child,
.arvenoa-catalog-comparison td:last-child { border-right: 0; }
.arvenoa-catalog-comparison tbody tr:last-child > * { border-bottom: 0; }
.arvenoa-catalog-comparison thead th { background: var(--catalog-mist); color: var(--catalog-ink); font-weight: 900; }
.arvenoa-catalog-comparison tbody th { min-width: 260px; background: color-mix(in srgb, var(--catalog-mist) 12%, var(--catalog-surface)); text-align: left; }
.arvenoa-catalog-comparison a { color: var(--catalog-ink) !important; font-weight: 900; }
.arvenoa-catalog-comparison td small { display: block; margin-top: 4px; color: var(--catalog-muted); }
.arvenoa-catalog-comparison .is-pending { color: var(--catalog-muted); font-style: italic; }

.arvenoa-catalog-ranges__grid,
.arvenoa-catalog-real-reviews__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.arvenoa-catalog-ranges__grid article,
.arvenoa-catalog-real-reviews__grid article {
	padding: clamp(24px, 3vw, 38px);
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 22px;
}

.arvenoa-catalog-ranges__grid h3 { margin: 0 0 12px; }
.arvenoa-catalog-ranges__grid p { margin: 0; }

.arvenoa-brand-card__status {
	display: inline-flex;
	width: fit-content;
	margin-bottom: 10px;
	padding: 6px 10px;
	background: var(--catalog-mist);
	border-radius: 999px;
	color: var(--catalog-ink);
	font-size: .76rem;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.arvenoa-brand-card__status.is-legacy { background: var(--catalog-sand); }
.arvenoa-brand-card__status.is-discontinued { background: #795b36; color: #fff; }

.arvenoa-catalog-real-reviews__stars {
	margin-bottom: 14px;
	color: #b28b3e;
	font-size: 1.45rem;
	letter-spacing: .08em;
}

.arvenoa-catalog-real-reviews__grid article > p { margin: 0 0 22px; }
.arvenoa-catalog-real-reviews footer { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; }
.arvenoa-catalog-real-reviews footer strong { font-size: 1.1rem; }
.arvenoa-catalog-real-reviews footer span { padding: 5px 9px; background: var(--catalog-mist); border-radius: 999px; color: var(--catalog-ink); font-size: .76rem; font-weight: 900; text-transform: uppercase; }
.arvenoa-catalog-real-reviews footer a { width: 100%; color: var(--catalog-muted) !important; }
.arvenoa-catalog-real-reviews__empty { padding: 26px; background: var(--catalog-surface); border: 1px solid var(--catalog-line); border-radius: 18px; }

.arvenoa-catalog-next {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
	gap: clamp(28px, 5vw, 80px);
	padding: clamp(34px, 5vw, 68px);
	background: linear-gradient(118deg, var(--catalog-ink), color-mix(in srgb, var(--catalog-ink) 82%, var(--catalog-mist)));
	border-radius: 28px;
	color: #f5fbfa;
}

.arvenoa-catalog-next h2 { margin: 8px 0 14px; color: #fff !important; }
.arvenoa-catalog-next p { margin: 0; color: #d9e8e6; }
.arvenoa-catalog-next > div > span { color: var(--catalog-mist); }
.arvenoa-catalog-next nav { display: grid; gap: 10px; align-content: center; }
.arvenoa-catalog-next nav a { padding: 13px 16px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.2); border-radius: 12px; color: #fff !important; font-weight: 900; text-decoration: none; }
.arvenoa-catalog-next nav a:hover,
.arvenoa-catalog-next nav a:focus-visible { background: var(--catalog-mist); color: var(--catalog-ink) !important; }

.arvenoa-catalog-page-context {
	padding: clamp(30px, 5vw, 64px);
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 24px;
}
.arvenoa-catalog-page-context h2 { margin-top: 0; }
.arvenoa-catalog-page-context a { color: var(--catalog-ink) !important; font-weight: 900; }

html[data-sg-theme="dark"] .arvenoa-catalog-authority,
html[data-sg-theme="dark"] .arvenoa-catalog-ranges__grid article,
html[data-sg-theme="dark"] .arvenoa-catalog-real-reviews__grid article,
html[data-sg-theme="dark"] .arvenoa-catalog-comparison__scroll,
html[data-sg-theme="dark"] .arvenoa-catalog-page-context { background: rgba(8, 50, 56, .9); }
html[data-sg-theme="dark"] .arvenoa-catalog-comparison tbody th { background: rgba(189, 217, 215, .09); }
html[data-sg-theme="dark"] .arvenoa-catalog-comparison thead th { background: #bdd9d7; color: #03363d !important; }
html[data-sg-theme="dark"] .arvenoa-catalog-comparison a,
html[data-sg-theme="dark"] .arvenoa-catalog-comparison td strong,
html[data-sg-theme="dark"] .arvenoa-catalog-real-reviews footer strong,
html[data-sg-theme="dark"] .arvenoa-catalog-ranges h3 { color: #f4f8f7 !important; }

@media (max-width: 820px) {
	.arvenoa-catalog-authority,
	.arvenoa-catalog-next { grid-template-columns: 1fr; }
	.arvenoa-catalog-ranges__grid,
	.arvenoa-catalog-real-reviews__grid { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
	.arvenoa-catalog-toc { width: calc(100% - 24px); }
	.arvenoa-catalog-authority { padding: 24px 20px; }
	.arvenoa-catalog-comparison__scroll { margin-right: -4px; margin-left: -4px; border-radius: 18px; }
	.arvenoa-catalog-comparison table { min-width: 980px; }
	.arvenoa-catalog-comparison th,
	.arvenoa-catalog-comparison td { padding: 16px 14px; }
	.arvenoa-catalog-next { padding: 30px 22px; }
}

.arvenoa-brand-hero,
.arvenoa-catalog-section {
	box-sizing: border-box;
	width: min(1440px, calc(100% - clamp(36px, 7vw, 120px)));
	margin-right: auto;
	margin-left: auto;
}

.arvenoa-brand-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.55fr);
	gap: clamp(28px, 5vw, 84px);
	align-items: end;
	margin-top: clamp(28px, 3vw, 48px);
	padding: clamp(42px, 6vw, 92px);
	background:
		linear-gradient(112deg, rgba(255, 255, 255, 0.96) 0 56%, rgba(189, 217, 215, 0.46) 56% 78%, rgba(216, 201, 168, 0.38) 78% 100%);
	border: 1px solid var(--catalog-line);
	border-radius: clamp(24px, 3vw, 46px);
}

.arvenoa-brand-kicker,
.arvenoa-catalog-section__heading > span,
.arvenoa-catalog-prices__intro > span,
.arvenoa-catalog-opinion header > span,
.arvenoa-brand-hero__summary > span {
	display: block;
	margin-bottom: 12px;
	color: var(--catalog-muted);
	font-size: clamp(0.8rem, 0.75vw, 0.95rem);
	font-weight: 900;
	letter-spacing: 0.13em;
	line-height: 1.2;
	text-transform: uppercase;
}

.arvenoa-brand-hero h1 {
	max-width: 980px;
	margin: 0;
	color: var(--catalog-ink) !important;
	font-family: var(--sg-font-display, "Cooper Black", serif) !important;
	font-size: clamp(3.25rem, 6.8vw, 7.7rem) !important;
	font-weight: 900 !important;
	letter-spacing: -0.055em !important;
	line-height: 0.92 !important;
}

.arvenoa-brand-hero__copy > p {
	max-width: 820px;
	margin: clamp(24px, 3vw, 38px) 0 0;
	color: var(--catalog-muted);
	font-size: var(--sg-body-size, clamp(1.2rem, 1.35vw, 1.48rem));
	line-height: 1.65;
}

.arvenoa-brand-hero__cta,
.arvenoa-brand-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	box-sizing: border-box;
	min-height: 58px;
	margin-top: 30px;
	padding: 14px 22px;
	background: var(--catalog-mist);
	border: 1px solid rgba(3, 54, 61, 0.24);
	border-radius: 14px;
	color: var(--catalog-ink) !important;
	box-shadow: 7px 8px 0 var(--catalog-sand);
	font-size: 1rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	line-height: 1.15;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease;
}

.arvenoa-brand-hero__cta:hover,
.arvenoa-brand-hero__cta:focus-visible,
.arvenoa-brand-card__cta:hover,
.arvenoa-brand-card__cta:focus-visible {
	background: #c9e3e1;
	box-shadow: 3px 4px 0 var(--catalog-sand);
	outline: 2px solid transparent;
	transform: translate(4px, 4px);
}

.arvenoa-brand-hero__summary {
	padding: clamp(28px, 4vw, 48px);
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid rgba(3, 54, 61, 0.14);
	border-radius: 28px;
	backdrop-filter: blur(24px) saturate(120%);
}

.arvenoa-brand-hero__summary > strong {
	display: block;
	color: var(--catalog-ink);
	font-family: var(--sg-font-sans, "Nunito Sans", sans-serif);
	font-size: clamp(4.4rem, 7vw, 7rem);
	font-weight: 900;
	letter-spacing: -0.055em;
	line-height: 0.9;
}

.arvenoa-brand-hero__summary > p {
	margin: 10px 0 24px;
	font-size: 1.15rem;
	font-weight: 800;
}

.arvenoa-brand-hero__summary ul {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.arvenoa-brand-hero__summary li {
	position: relative;
	padding-left: 24px;
	color: var(--catalog-muted);
	font-size: 1rem;
	line-height: 1.45;
}

.arvenoa-brand-hero__summary li::before {
	position: absolute;
	top: 0.48em;
	left: 0;
	width: 9px;
	height: 9px;
	background: var(--catalog-sand);
	border: 2px solid var(--catalog-ink);
	border-radius: 50%;
	content: "";
}

.arvenoa-catalog-section {
	margin-top: clamp(76px, 10vw, 150px);
}

.arvenoa-catalog-section__heading {
	max-width: 980px;
	margin-bottom: clamp(30px, 4vw, 56px);
}

.arvenoa-catalog-section h2,
.arvenoa-catalog-prices h2,
.arvenoa-catalog-opinion h2 {
	margin: 0;
	color: var(--catalog-ink) !important;
	font-family: var(--sg-font-display, "Cooper Black", serif) !important;
	font-size: clamp(2.6rem, 4.5vw, 5.2rem) !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
	line-height: 0.98 !important;
}

.arvenoa-catalog-section__heading > p,
.arvenoa-catalog-prices__intro > p {
	max-width: 940px;
	margin: 22px 0 0;
	color: var(--catalog-muted);
	font-size: var(--sg-body-size, clamp(1.2rem, 1.35vw, 1.48rem));
	line-height: 1.65;
}

.arvenoa-brand-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(24px, 2.5vw, 38px);
}

.arvenoa-brand-card {
	display: flex;
	min-width: 0;
	min-height: 100%;
	overflow: hidden;
	flex-direction: column;
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 24px;
	box-shadow: 0 20px 48px rgba(3, 54, 61, 0.07);
	transition: border-color 200ms ease, transform 200ms ease, box-shadow 200ms ease;
}

.arvenoa-brand-card:hover,
.arvenoa-brand-card:focus-within {
	border-color: rgba(3, 54, 61, 0.34);
	box-shadow: 8px 9px 0 rgba(216, 201, 168, 0.88);
	transform: translateY(-5px);
}

.arvenoa-brand-card__media {
	display: grid;
	position: relative;
	height: clamp(250px, 25vw, 330px);
	overflow: hidden;
	place-items: center;
	padding: 0;
	background: linear-gradient(145deg, rgba(189, 217, 215, 0.24), rgba(255, 255, 255, 0.9));
}

body.arvenoa-catalog-landing-view .arvenoa-brand-card__media img {
	display: block;
	position: absolute;
	inset: 18px;
	width: calc(100% - 36px) !important;
	height: calc(100% - 36px) !important;
	max-width: calc(100% - 36px) !important;
	max-height: calc(100% - 36px) !important;
	object-fit: contain;
	transition: transform 260ms ease;
}

.arvenoa-brand-card:hover .arvenoa-brand-card__media img {
	transform: scale(1.035);
}

.arvenoa-brand-card__body {
	--arvenoa-card-padding: clamp(24px, 3vw, 34px);
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--arvenoa-card-padding);
}

.arvenoa-brand-card__brand {
	color: var(--catalog-muted);
	font-size: 0.82rem;
	font-weight: 900;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.arvenoa-brand-card h3 {
	margin: 10px 0 16px;
	font-size: clamp(1.55rem, 1.8vw, 2rem) !important;
	font-weight: 900 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.12 !important;
}

.arvenoa-brand-card h3 a {
	color: var(--catalog-ink) !important;
	text-decoration: none !important;
}

.arvenoa-brand-card h3 a:hover,
.arvenoa-brand-card h3 a:focus-visible {
	text-decoration: underline !important;
	text-decoration-color: var(--catalog-sand) !important;
	text-decoration-thickness: 4px !important;
	text-underline-offset: 5px;
}

.arvenoa-brand-card__rating {
	display: flex;
	gap: 5px;
	align-items: center;
	margin: 0 0 14px;
	color: var(--catalog-muted);
	font-size: 0.98rem;
}

.arvenoa-brand-card__rating > span {
	color: var(--catalog-sand);
	font-size: 1.35rem;
	-webkit-text-stroke: 1px var(--catalog-ink);
}

.arvenoa-brand-card__rating strong {
	color: var(--catalog-ink);
}

.arvenoa-brand-card__rating small {
	margin-left: 7px;
	padding-left: 10px;
	border-left: 1px solid var(--catalog-line);
	font-size: inherit;
}

.arvenoa-brand-card__fit {
	display: flex;
	width: fit-content;
	max-width: calc(100% + var(--arvenoa-card-padding));
	box-sizing: border-box;
	gap: 10px;
	align-items: center;
	min-height: 52px;
	margin: 0 0 18px calc(-1 * var(--arvenoa-card-padding));
	padding: 10px 14px 10px var(--arvenoa-card-padding);
	background: rgba(189, 217, 215, 0.42);
	border: 1px solid rgba(3, 54, 61, 0.16);
	border-left: 0;
	border-radius: 0 14px 14px 0;
	color: var(--catalog-ink);
	font-size: 0.96rem;
	font-weight: 850;
	line-height: 1.28;
}

.arvenoa-brand-card__fit-icons {
	display: inline-flex;
	gap: 3px;
	align-items: center;
	flex: 0 0 auto;
}

.arvenoa-brand-card__fit-icons > img,
.arvenoa-brand-card__fit-icons svg {
	display: block;
	width: 25px;
	height: 25px;
	object-fit: contain;
}

.arvenoa-brand-card__fit-icons > img {
	filter: none;
}

.arvenoa-brand-card__fit.is-recommended {
	background: rgba(189, 217, 215, 0.7);
}

.arvenoa-brand-card__fit.is-not-recommended {
	background: rgba(216, 201, 168, 0.46);
	border-color: rgba(118, 87, 53, 0.28);
	border-left: 0;
}

.arvenoa-brand-card__features {
	display: grid;
	gap: 8px;
	margin: 0 0 22px;
	padding: 0;
	list-style: none;
}

.arvenoa-brand-card__features li {
	position: relative;
	padding-left: 20px;
	color: var(--catalog-muted);
	font-size: 1rem;
	line-height: 1.42;
}

.arvenoa-brand-card__features li::before {
	position: absolute;
	top: 0.58em;
	left: 0;
	width: 7px;
	height: 7px;
	background: var(--catalog-mist);
	border: 1px solid var(--catalog-ink);
	border-radius: 50%;
	content: "";
}

.arvenoa-brand-card__footer {
	display: grid;
	gap: 18px;
	margin-top: auto;
	padding-top: 22px;
	border-top: 1px solid var(--catalog-line);
}

.arvenoa-brand-card__price {
	display: flex;
	gap: 10px;
	align-items: baseline;
	margin: 0;
}

.arvenoa-brand-card__price strong {
	color: var(--catalog-ink);
	font-family: var(--sg-font-sans, "Nunito Sans", sans-serif);
	font-size: clamp(2rem, 2.6vw, 2.75rem);
	font-weight: 790;
	letter-spacing: -0.035em;
	line-height: 1;
}

.arvenoa-brand-card__price small {
	color: var(--catalog-muted);
	font-size: 0.92rem;
	font-weight: 680;
}

.arvenoa-brand-card__cta {
	width: 100%;
	margin-top: 0;
	box-shadow: none;
}

.arvenoa-brand-card__cta:hover,
.arvenoa-brand-card__cta:focus-visible {
	box-shadow: inset 0 0 0 2px var(--catalog-ink);
	transform: none;
}

.arvenoa-catalog-pagination {
	margin-top: clamp(36px, 5vw, 62px);
}

.arvenoa-catalog-pagination ul {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.arvenoa-catalog-pagination a,
.arvenoa-catalog-pagination .is-gap {
	display: grid;
	box-sizing: border-box;
	min-width: 48px;
	height: 48px;
	place-items: center;
	padding: 0 14px;
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 12px;
	color: var(--catalog-ink) !important;
	font-weight: 900;
	text-decoration: none !important;
}

.arvenoa-catalog-pagination a:hover,
.arvenoa-catalog-pagination a:focus-visible,
.arvenoa-catalog-pagination a[aria-current="page"] {
	background: var(--catalog-ink);
	color: #fff !important;
	outline: none;
}

.arvenoa-catalog-pagination .is-direction {
	min-width: 132px;
}

.arvenoa-catalog-guide__grid,
.arvenoa-catalog-reviews__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(22px, 2.4vw, 36px);
}

.arvenoa-catalog-guide__grid article,
.arvenoa-catalog-reviews__grid article {
	padding: clamp(28px, 3.5vw, 46px);
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 22px;
}

.arvenoa-catalog-guide__number {
	display: grid;
	width: 54px;
	height: 54px;
	margin-bottom: 24px;
	place-items: center;
	background: var(--catalog-sand);
	border-radius: 15px;
	color: var(--catalog-ink);
	font-weight: 950;
}

.arvenoa-catalog-guide h3,
.arvenoa-catalog-reviews h3,
.arvenoa-catalog-prices h3,
.arvenoa-catalog-opinion h3,
.arvenoa-catalog-faq h3 {
	margin: 0 0 14px;
	color: var(--catalog-ink) !important;
	font-family: var(--sg-font-display, "Cooper Black", serif) !important;
	font-size: clamp(1.65rem, 2vw, 2.2rem) !important;
	font-weight: 900 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.08 !important;
}

.arvenoa-catalog-guide h4 {
	margin: 26px 0 8px;
	color: var(--catalog-muted) !important;
	font-size: 0.86rem !important;
	font-weight: 950 !important;
	letter-spacing: 0.1em !important;
	line-height: 1.2 !important;
	text-transform: uppercase;
}

.arvenoa-catalog-guide p,
.arvenoa-catalog-reviews p,
.arvenoa-catalog-prices p,
.arvenoa-catalog-opinion p,
.arvenoa-catalog-faq p,
.arvenoa-saunier-tech p {
	color: var(--catalog-muted);
	font-size: var(--sg-body-size, clamp(1.2rem, 1.35vw, 1.48rem));
	line-height: 1.62;
}

.arvenoa-saunier-tech__notice {
	display: grid;
	grid-template-columns: minmax(230px, 0.48fr) minmax(0, 1.52fr);
	gap: clamp(22px, 4vw, 58px);
	align-items: start;
	margin-bottom: clamp(24px, 3vw, 42px);
	padding: clamp(24px, 3.4vw, 44px);
	background: linear-gradient(110deg, rgba(216, 201, 168, 0.38), rgba(255, 255, 255, 0.78));
	border: 1px solid var(--catalog-line);
	border-radius: 22px;
}

.arvenoa-saunier-tech__notice strong {
	color: var(--catalog-ink);
	font-family: var(--sg-font-display, "Cooper Black", serif);
	font-size: clamp(1.55rem, 2vw, 2.15rem);
	letter-spacing: -0.025em;
	line-height: 1.08;
}

.arvenoa-saunier-tech__notice p {
	margin: 0;
}

.arvenoa-saunier-tech__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(20px, 2.5vw, 34px);
}

.arvenoa-saunier-tech__article {
	padding: clamp(28px, 4vw, 52px);
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 24px;
}

.arvenoa-saunier-tech__article--wide {
	grid-column: 1 / -1;
}

.arvenoa-saunier-tech__index,
.arvenoa-saunier-tech__latest span {
	display: block;
	margin-bottom: 14px;
	color: var(--catalog-muted);
	font-size: 0.86rem;
	font-weight: 950;
	letter-spacing: 0.12em;
	line-height: 1.2;
	text-transform: uppercase;
}

.arvenoa-saunier-tech h3 {
	margin: 0 0 24px;
	color: var(--catalog-ink) !important;
	font-family: var(--sg-font-display, "Cooper Black", serif) !important;
	font-size: clamp(1.8rem, 2.35vw, 2.8rem) !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
	line-height: 1.06 !important;
}

.arvenoa-saunier-tech h4 {
	margin: 26px 0 8px;
	color: var(--catalog-ink) !important;
	font-size: 1.05rem !important;
	font-weight: 900 !important;
	letter-spacing: 0.055em !important;
	line-height: 1.25 !important;
	text-transform: uppercase;
}

.arvenoa-saunier-tech p {
	margin-top: 0;
}

.arvenoa-saunier-tech__article p:last-child {
	margin-bottom: 0;
}

.arvenoa-saunier-tech__split {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(30px, 6vw, 90px);
}

.arvenoa-saunier-tech__split > div + div {
	padding-left: clamp(30px, 5vw, 74px);
	border-left: 1px solid var(--catalog-line);
}

.arvenoa-saunier-tech__modulation {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 24px 0 30px;
}

.arvenoa-saunier-tech__modulation > div {
	padding: 18px;
	background: color-mix(in srgb, var(--catalog-mist) 20%, transparent);
	border: 1px solid var(--catalog-line);
	border-radius: 15px;
}

.arvenoa-saunier-tech__modulation strong,
.arvenoa-saunier-tech__modulation span {
	display: block;
}

.arvenoa-saunier-tech__modulation strong {
	margin-bottom: 3px;
	color: var(--catalog-ink);
	font-size: 1.08rem;
}

.arvenoa-saunier-tech__modulation span {
	margin-bottom: 10px;
	color: var(--catalog-muted);
	font-size: .78rem;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.arvenoa-saunier-tech__modulation p {
	margin: 0;
	font-size: .98rem;
	line-height: 1.45;
}

.arvenoa-saunier-tech__latest {
	display: grid;
	grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(32px, 6vw, 92px);
	align-items: start;
	margin-top: clamp(24px, 3vw, 42px);
	padding: clamp(34px, 5vw, 68px);
	background: linear-gradient(115deg, var(--catalog-ink) 0 58%, #164c52 58% 100%);
	border-radius: 26px;
}

.arvenoa-saunier-tech__latest h3,
.arvenoa-saunier-tech__latest p,
.arvenoa-saunier-tech__latest span {
	color: #f6fbfa !important;
}

.arvenoa-saunier-tech__latest h3,
.arvenoa-saunier-tech__latest p {
	margin-bottom: 0;
}

.arvenoa-saunier-tech__sources {
	margin-top: clamp(28px, 4vw, 52px);
	padding-top: clamp(24px, 3vw, 38px);
	border-top: 1px solid var(--catalog-line);
}

.arvenoa-saunier-tech__sources h3 {
	margin-bottom: 10px;
	font-family: var(--sg-font-sans, "Nunito Sans", sans-serif) !important;
	font-size: 1.2rem !important;
	font-weight: 900 !important;
	letter-spacing: 0 !important;
}

.arvenoa-saunier-tech__sources a {
	color: var(--catalog-ink) !important;
	font-weight: 850;
	text-decoration-color: var(--catalog-sand) !important;
	text-decoration-thickness: 3px !important;
	text-underline-offset: 4px;
}

.arvenoa-catalog-prices {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
	gap: clamp(38px, 7vw, 110px);
	align-items: start;
	padding: clamp(40px, 6vw, 86px);
	background: linear-gradient(120deg, rgba(216, 201, 168, 0.34), rgba(255, 255, 255, 0.72) 56%, rgba(189, 217, 215, 0.28));
	border: 1px solid var(--catalog-line);
	border-radius: clamp(24px, 3vw, 40px);
}

.arvenoa-catalog-prices__details {
	display: grid;
	gap: 20px;
}

.arvenoa-catalog-prices__details article {
	padding: 28px;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid var(--catalog-line);
	border-radius: 18px;
}

.arvenoa-catalog-prices__details p,
.arvenoa-catalog-reviews__grid p {
	margin-bottom: 0;
}

.arvenoa-catalog-opinion {
	display: grid;
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(42px, 8vw, 130px);
	padding-top: clamp(60px, 8vw, 110px);
	padding-bottom: clamp(60px, 8vw, 110px);
	border-top: 1px solid var(--catalog-line);
	border-bottom: 1px solid var(--catalog-line);
}

.arvenoa-catalog-opinion__body {
	display: grid;
	gap: clamp(32px, 5vw, 64px);
}

.arvenoa-catalog-opinion__body > div + div {
	padding-top: clamp(30px, 4vw, 52px);
	border-top: 1px solid var(--catalog-line);
}

.arvenoa-catalog-opinion a {
	color: var(--catalog-ink) !important;
	font-weight: 850;
	text-decoration-color: var(--catalog-sand) !important;
	text-decoration-thickness: 3px !important;
	text-underline-offset: 4px;
}

.arvenoa-catalog-faq__list {
	border-top: 1px solid var(--catalog-line);
}

.arvenoa-catalog-faq details {
	border-bottom: 1px solid var(--catalog-line);
}

.arvenoa-catalog-faq summary {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: space-between;
	padding: clamp(24px, 3vw, 38px) 0;
	cursor: pointer;
	list-style: none;
}

.arvenoa-catalog-faq summary::-webkit-details-marker {
	display: none;
}

.arvenoa-catalog-faq summary h3 {
	margin: 0;
}

.arvenoa-catalog-faq summary span {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 auto;
	place-items: center;
	background: var(--catalog-mist);
	border-radius: 12px;
	color: var(--catalog-ink);
	font-size: 1.6rem;
	font-weight: 900;
	transition: transform 180ms ease;
}

.arvenoa-catalog-faq details[open] summary span {
	transform: rotate(45deg);
}

.arvenoa-catalog-faq details > p {
	max-width: 980px;
	margin: -8px 0 0;
	padding: 0 74px 34px 0;
}

.arvenoa-brand-catalog__empty {
	padding: 34px;
	background: var(--catalog-surface);
	border: 1px solid var(--catalog-line);
	border-radius: 18px;
	font-size: var(--sg-body-size, 1.25rem);
}

html[data-sg-theme="dark"] .arvenoa-catalog-landing-view {
	--catalog-muted: #bdd2d1;
	--catalog-line: rgba(189, 217, 215, 0.23);
	--catalog-surface: rgba(8, 50, 56, 0.9);
	--catalog-page: #022b31;
}

html[data-sg-theme="dark"] .arvenoa-brand-landing,
html[data-sg-theme="dark"] .arvenoa-brand-hero h1,
html[data-sg-theme="dark"] .arvenoa-catalog-section h2,
html[data-sg-theme="dark"] .arvenoa-catalog-section h3,
html[data-sg-theme="dark"] .arvenoa-brand-card h3 a,
html[data-sg-theme="dark"] .arvenoa-brand-card__price strong,
html[data-sg-theme="dark"] .arvenoa-catalog-prices h2,
html[data-sg-theme="dark"] .arvenoa-catalog-opinion h2,
html[data-sg-theme="dark"] .arvenoa-catalog-opinion h3,
html[data-sg-theme="dark"] .arvenoa-catalog-prices h3,
html[data-sg-theme="dark"] .arvenoa-catalog-faq h3 {
	color: #f4f8f7 !important;
}

html[data-sg-theme="dark"] .arvenoa-saunier-tech h3,
html[data-sg-theme="dark"] .arvenoa-saunier-tech h4,
html[data-sg-theme="dark"] .arvenoa-saunier-tech__notice strong,
html[data-sg-theme="dark"] .arvenoa-saunier-tech__sources a {
	color: #f4f8f7 !important;
}

html[data-sg-theme="dark"] .arvenoa-saunier-tech__notice {
	background: linear-gradient(110deg, rgba(216, 201, 168, 0.22), rgba(8, 50, 56, 0.82));
}

html[data-sg-theme="dark"] .arvenoa-saunier-tech__modulation strong {
	color: #f4f8f7;
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit {
	background: rgba(189, 217, 215, 0.14);
	border-color: rgba(189, 217, 215, 0.26);
	border-left-color: var(--catalog-mist);
	color: #eef8f7;
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit.is-recommended {
	background: rgba(189, 217, 215, 0.23);
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit.is-not-recommended {
	background: linear-gradient(110deg, #d8c9a8 0%, #c7ad7b 100%);
	border-color: rgba(244, 232, 205, 0.9);
	border-left: 0;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.24);
	color: #03363d;
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit.is-not-recommended .arvenoa-brand-card__fit-icons > img {
	filter: brightness(0) saturate(100%);
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit.is-not-recommended .arvenoa-brand-card__fit-icons svg {
	color: #03363d;
}

html[data-sg-theme="dark"] .arvenoa-brand-card__fit-icons > img {
	filter: brightness(0) invert(1);
}

html[data-sg-theme="dark"] .arvenoa-brand-hero {
	background:
		linear-gradient(112deg, rgba(3, 54, 61, 0.96) 0 56%, rgba(29, 79, 84, 0.9) 56% 78%, rgba(83, 77, 61, 0.86) 78% 100%);
}

html[data-sg-theme="dark"] .arvenoa-brand-hero__summary,
html[data-sg-theme="dark"] .arvenoa-catalog-prices__details article {
	background: rgba(3, 38, 44, 0.78);
}

html[data-sg-theme="dark"] .arvenoa-brand-hero__summary > strong,
html[data-sg-theme="dark"] .arvenoa-brand-hero__summary > p,
html[data-sg-theme="dark"] .arvenoa-brand-card__rating strong {
	color: #f4f8f7;
}

html[data-sg-theme="dark"] .arvenoa-brand-card__media {
	background: linear-gradient(145deg, rgba(189, 217, 215, 0.12), rgba(3, 54, 61, 0.6));
}

html[data-sg-theme="dark"] .arvenoa-catalog-prices {
	background: linear-gradient(120deg, rgba(91, 77, 52, 0.5), rgba(3, 54, 61, 0.82) 56%, rgba(83, 119, 119, 0.38));
}

html[data-sg-theme="dark"] body.arvenoa-catalog-landing-view .arvenoa-brand-hero__cta,
html[data-sg-theme="dark"] body.arvenoa-catalog-landing-view .arvenoa-brand-card__cta {
	background: var(--catalog-mist);
	color: var(--catalog-ink) !important;
}

html[data-sg-theme="dark"] body.arvenoa-catalog-landing-view .arvenoa-brand-hero__cta span,
html[data-sg-theme="dark"] body.arvenoa-catalog-landing-view .arvenoa-brand-card__cta span {
	color: var(--catalog-ink) !important;
}

html[data-sg-theme="dark"] .arvenoa-catalog-pagination a:hover,
html[data-sg-theme="dark"] .arvenoa-catalog-pagination a:focus-visible,
html[data-sg-theme="dark"] .arvenoa-catalog-pagination a[aria-current="page"] {
	background: var(--catalog-mist);
	color: var(--catalog-ink) !important;
}

@media (max-width: 1180px) {
	.arvenoa-brand-hero {
		grid-template-columns: minmax(0, 1.35fr) minmax(250px, 0.65fr);
		padding: clamp(38px, 5vw, 64px);
	}

	.arvenoa-brand-grid,
	.arvenoa-catalog-guide__grid,
	.arvenoa-catalog-reviews__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.arvenoa-catalog-guide__grid article:last-child,
	.arvenoa-catalog-reviews__grid article:last-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 820px) {
	.arvenoa-brand-hero {
		grid-template-columns: 1fr;
		align-items: stretch;
	}

	.arvenoa-brand-hero__summary {
		display: grid;
		grid-template-columns: auto 1fr;
		column-gap: 22px;
		align-items: end;
	}

	.arvenoa-brand-hero__summary > span,
	.arvenoa-brand-hero__summary ul {
		grid-column: 1 / -1;
	}

	.arvenoa-brand-hero__summary > p {
		margin-bottom: 5px;
	}

	.arvenoa-catalog-prices,
	.arvenoa-catalog-opinion,
	.arvenoa-saunier-tech__notice,
	.arvenoa-saunier-tech__latest {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.arvenoa-catalog-landing-main {
		padding-top: 22px;
	}

	.arvenoa-brand-hero,
	.arvenoa-catalog-section {
		width: calc(100% - 24px);
	}

	.arvenoa-brand-hero {
		margin-top: 18px;
		padding: 30px 24px;
		border-radius: 24px;
	}

	.arvenoa-brand-hero h1 {
		font-size: clamp(2.85rem, 13vw, 4.6rem) !important;
	}

	.arvenoa-brand-grid,
	.arvenoa-catalog-guide__grid,
	.arvenoa-catalog-reviews__grid,
	.arvenoa-saunier-tech__grid,
	.arvenoa-saunier-tech__split {
		grid-template-columns: 1fr;
	}

	.arvenoa-saunier-tech__article--wide {
		grid-column: auto;
	}

	.arvenoa-saunier-tech__split > div + div {
		padding-top: 26px;
		padding-left: 0;
		border-top: 1px solid var(--catalog-line);
		border-left: 0;
	}

	.arvenoa-saunier-tech__modulation {
		grid-template-columns: 1fr;
	}

	.arvenoa-catalog-guide__grid article:last-child,
	.arvenoa-catalog-reviews__grid article:last-child {
		grid-column: auto;
	}

	.arvenoa-brand-card__media {
		height: 280px;
	}

	.arvenoa-catalog-prices {
		padding: 30px 22px;
	}

	.arvenoa-catalog-pagination ul {
		flex-wrap: wrap;
	}

	.arvenoa-catalog-pagination .is-direction {
		order: 2;
		width: calc(50% - 5px);
	}

	.arvenoa-catalog-faq details > p {
		padding-right: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.arvenoa-brand-card,
	.arvenoa-brand-card img,
	.arvenoa-brand-hero__cta,
	.arvenoa-brand-card__cta,
	.arvenoa-catalog-faq summary span {
		transition: none !important;
	}
}
