.site-partners { color: #d5d1e4; }
.site-partners :is(h1, h2, a) { font-weight: 400; }
.site-partners__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid rgba(167, 139, 250, .22); }
.site-partners__heading h1 { display: flex; align-items: center; gap: 14px; margin: 0; font-size: clamp(26px, 3vw, 34px); line-height: 1.3; }
.site-partners__heading h1 > svg { width: 28px; height: 28px; flex-shrink: 0; color: #a58af7; }
.site-partners__recommendation { position: relative; display: flex; align-items: center; gap: 12px; max-width: 100%; margin: 0 0 0 auto; padding: 14px 20px 14px 16px; border: 1px solid #a58af732; color: #aaa1c6; background: linear-gradient(270deg, #a58af713, transparent), #0d0d20b3; box-shadow: 0 4px 20px #00000024; font-size: 15px; line-height: 1.6; }
.site-partners__recommendation::after { content: ""; position: absolute; right: -1px; inset-block: -1px; width: 2px; background: #a58af7; box-shadow: 0 0 9px #a58af780, 0 0 18px #a58af730; }
.site-partners__recommendation > svg { flex-shrink: 0; width: 20px; height: 20px; color: #aa8eff; stroke-width: 1.7; }
/* This explicit emphasis is limited to the requested recommendation label. */
.site-partners__recommendation strong { color: #ded2ff; font-weight: 700; font-synthesis: weight; white-space: nowrap; }
.site-partners__list { display: grid; grid-auto-rows: 1fr; gap: 24px; }

.partner-section {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 40px;
	min-width: 0;
	padding: 38px 40px;
	border: 1px solid rgba(var(--partner-rgb), .23);
	border-radius: 4px;
	background: var(--partner-background);
}

.partner-section--huntereye {
	--partner-rgb: 93, 217, 53;
	--partner-title: #5ce02b;
	--partner-background: radial-gradient(ellipse at 10% 25%, rgba(63, 153, 29, .12), transparent 58%), #070e0a;
}

.partner-section--luxelautodonate {
	--partner-rgb: 65, 207, 255;
	--partner-background: #08111e;
	--partner-copy: #b3cbdc;
	--partner-link-color: #b6dfef;
	--partner-arrow: #88b7cc;
}

.partner-section--lcs {
	--partner-rgb: 189, 138, 244;
	--partner-background: #100e1c;
	--partner-copy: #cbbfd9;
	--partner-link-color: #e0cafa;
}

.partner-section__backdrop { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; object-position: center 47%; pointer-events: none; }
.partner-section:is(.partner-section--luxelautodonate, .partner-section--lcs) .partner-section__identity { min-height: 80px; }
.partner-section__wordmark { width: min(360px, 90%); }
.partner-section__wordmark > img { display: block; width: 100%; height: auto; }

.partner-section::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(rgba(var(--partner-rgb), .026) 1px, transparent 1px) 0 0 / 48px 48px,
		linear-gradient(90deg, rgba(var(--partner-rgb), .026) 1px, transparent 1px) 0 0 / 48px 48px,
		repeating-linear-gradient(0deg, transparent 0 3px, rgba(0, 0, 0, .14) 3px 4px);
	pointer-events: none;
}

.partner-section--luxelautodonate::before {
	background: radial-gradient(ellipse at 88% 16%, rgba(65, 207, 255, .13), transparent 75%),
		linear-gradient(105deg, rgba(4, 11, 21, .94), rgba(5, 17, 31, .85) 45%, rgba(4, 13, 24, .73));
}

.partner-section--lcs::before {
	background: radial-gradient(ellipse at 12% 20%, rgba(220, 77, 180, .11), transparent 65%),
		radial-gradient(ellipse at 95% 65%, rgba(65, 207, 255, .1), transparent 65%),
		linear-gradient(110deg, rgba(12, 8, 24, .91), rgba(20, 11, 34, .81) 48%, rgba(5, 19, 29, .77));
}

.partner-section::after {
	content: "";
	position: absolute;
	inset: 0 auto 0 -1px;
	width: 2px;
	border-radius: 4px 0 0 4px;
	background: linear-gradient(180deg, transparent, rgba(var(--partner-rgb), .8) 25%, rgba(var(--partner-rgb), .45) 80%, transparent);
	box-shadow: 0 0 14px rgba(var(--partner-rgb), .24);
	pointer-events: none;
}

.partner-section__content { min-width: 0; }
.partner-section__identity { display: flex; align-items: center; gap: 24px; }
.partner-section__emblem { position: relative; isolation: isolate; display: block; flex: 0 0 auto; width: 96px; height: 96px; }
/* Filter the wrapper so the contour glow extends beyond the image loader's paint bounds. */
.partner-section--huntereye .partner-section__emblem { filter: drop-shadow(0 0 3px rgba(147, 225, 85, .24)) drop-shadow(0 0 9px rgba(var(--partner-rgb), .14)); }
.partner-section__logo { display: block; width: 100%; height: 100%; object-fit: contain; }
.partner-section__identity h2 { margin: 0; color: var(--partner-title); font-size: clamp(28px, 3.2vw, 40px); line-height: 1.25; overflow-wrap: anywhere; text-shadow: 0 0 22px rgba(var(--partner-rgb), .32); }
.partner-section--huntereye .partner-section__identity h2 { text-shadow: 0 0 5px rgba(130, 226, 76, .2), 0 0 16px rgba(var(--partner-rgb), .13); }
.partner-section--lcs .partner-section__identity h2 { width: fit-content; color: #e7d3f5; background: linear-gradient(105deg, #f5cdea, #d6c7ff 52%, #b7edf5); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; text-shadow: none; filter: drop-shadow(-2px 0 7px rgba(220, 113, 200, .24)) drop-shadow(2px 0 15px rgba(65, 207, 255, .18)); }
.partner-section__description { max-width: 660px; margin: 12px 0 0; color: var(--partner-copy, #a3b9a8); font-size: 15px; line-height: 1.8; }
.partner-section--lcs .partner-section__description { max-width: none; }
.partner-section__links { display: flex; align-items: center; align-self: end; justify-self: end; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.partner-section__actions { display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; align-self: stretch; justify-self: end; gap: 14px; min-width: 0; }
.partner-section__actions > .partner-section__links { margin-top: auto; }
.partner-statistic { position: relative; isolation: isolate; display: grid; justify-items: center; gap: 5px; width: min(100%, 224px); padding: 13px 24px 15px; }
.partner-statistic::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, transparent, rgba(var(--partner-rgb), .5) 38%, rgba(var(--partner-rgb), .12)) top / 100% 1px no-repeat, linear-gradient(90deg, rgba(var(--partner-rgb), .1), rgba(var(--partner-rgb), .6) 65%, transparent) bottom / 100% 1px no-repeat, linear-gradient(110deg, rgba(var(--partner-rgb), .065), rgba(var(--partner-rgb), .015)), rgba(4, 16, 7, .35); transform: skewX(-7deg); pointer-events: none; }
.partner-statistic::after { content: ""; position: absolute; z-index: -1; inset: -3px 0; background: radial-gradient(ellipse at 45% 0, rgba(var(--partner-rgb), .22), transparent 70%) top / 100% 10px no-repeat, radial-gradient(ellipse at 60% 100%, rgba(var(--partner-rgb), .24), transparent 70%) bottom / 100% 10px no-repeat; filter: blur(3px); transform: skewX(-7deg); pointer-events: none; }
.partner-statistic__label { color: #91b98b; font-size: 10px; font-weight: 400; line-height: 1.5; letter-spacing: .12em; text-transform: uppercase; }
.partner-statistic__value { color: var(--partner-title); font-size: 32px; font-weight: 400; line-height: 1.15; font-variant-numeric: tabular-nums; white-space: nowrap; text-shadow: 0 0 8px rgba(var(--partner-rgb), .45), 0 0 24px rgba(var(--partner-rgb), .3); }

.partner-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid rgba(var(--partner-rgb), .28);
	border-radius: 4px;
	color: var(--partner-link-color, #b5d9a8);
	background: linear-gradient(100deg, rgba(var(--partner-rgb), .13), rgba(var(--partner-rgb), .045)), rgba(5, 10, 17, .28);
	backdrop-filter: blur(12px) saturate(135%);
	-webkit-backdrop-filter: blur(12px) saturate(135%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055);
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none;
	transition: color 220ms ease, border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease, text-shadow 220ms ease;
}

.partner-link--website { border-left: 2px solid rgba(var(--partner-rgb), .75); }
.partner-section--lcs .partner-link { background-image: linear-gradient(120deg, rgba(220, 113, 200, .17), rgba(152, 125, 240, .12) 50%, rgba(65, 207, 255, .14)); }
.partner-link--icon { width: 44px; padding: 10px; }
.partner-link > svg { flex-shrink: 0; width: 19px; height: 19px; transition: filter 220ms ease; }
.partner-link > svg[data-site-brand-icon] { width: 22px; height: 22px; fill: currentColor; stroke: none; }
.partner-link > svg[data-site-brand-icon="vk"] { transform: scale(1.35); }
.partner-link .partner-link__arrow { width: 14px; height: 14px; color: var(--partner-arrow, #88ad79); }
.partner-link:is(:hover, :focus-visible) { color: #fff; border-color: rgba(var(--partner-rgb), .65); background-color: rgba(5, 10, 17, .4); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .09), 0 0 18px rgba(var(--partner-rgb), .1); text-shadow: 0 0 9px rgba(255, 255, 255, .35); }
.partner-link:is(:hover, :focus-visible) > svg { filter: drop-shadow(0 0 5px rgba(255, 255, 255, .35)); }
.partner-link:is(:hover, :focus-visible) .partner-link__arrow { color: inherit; }
.partner-link:focus-visible { outline: 1px solid rgb(var(--partner-rgb)); outline-offset: 4px; }

/* Reserve the real section's dimensions, just like the shop's card skeletons. */
.partner-skeleton { display: none; }
html.is-partners-preparing .partner-section:not(:focus-within) > :not(.partner-skeleton),
.partner-section.is-partner-pending:not(:focus-within) > :not(.partner-skeleton) { opacity: 0; pointer-events: none; }
html.is-partners-preparing .partner-section:not(:focus-within) > .partner-skeleton,
.partner-section:is(.is-partner-pending, .is-partner-revealing):not(:focus-within) > .partner-skeleton {
	position: absolute; inset: 0; z-index: 2; display: grid; grid-template-columns: inherit; align-items: center; gap: inherit; padding: inherit; overflow: hidden; border-radius: inherit;
	background: linear-gradient(110deg, rgba(var(--partner-rgb), .065), rgba(var(--partner-rgb), .025)), #080d16;
	pointer-events: none;
}
.partner-skeleton::after {
	content: ""; position: absolute; inset: 0;
	background: var(--partner-skeleton-shine, linear-gradient(108deg, transparent 20%, rgba(var(--partner-rgb), .025) 36%, rgba(var(--partner-rgb), .1) 48%, rgba(var(--partner-rgb), .18) 51%, rgba(var(--partner-rgb), .07) 57%, transparent 76%));
	transform: translateX(-100%); animation: partner-section-shimmer 1.6s ease-in-out infinite; animation-play-state: paused;
}
html.is-partners-preparing .partner-skeleton::after,
.partner-section.is-partner-revealing .partner-skeleton::after { animation-play-state: running; }
.partner-section--lcs { --partner-skeleton-shine: linear-gradient(108deg, transparent 20%, rgba(220, 113, 200, .025) 36%, rgba(189, 138, 244, .1) 48%, rgba(65, 207, 255, .18) 51%, rgba(152, 125, 240, .07) 57%, transparent 76%); }
.partner-skeleton__content { min-width: 0; }
.partner-skeleton__identity { display: flex; align-items: center; gap: 24px; height: 80px; margin-bottom: 12px; }
.partner-skeleton__line { display: block; border-radius: 3px; background: rgba(var(--partner-rgb), .1); }
.partner-skeleton__logo { display: none; flex: 0 0 96px; height: 96px; background: rgba(var(--partner-rgb), .065); }
.partner-section--huntereye .partner-skeleton__identity { height: 96px; }
.partner-section--huntereye .partner-skeleton__logo { display: block; }
.partner-skeleton__title { width: min(360px, 75%); min-width: 0; height: 32px; background: rgba(var(--partner-rgb), .16); }
.partner-skeleton__description { width: 92%; height: 10px; margin-block: 10px; }
.partner-skeleton__description--short { width: 68%; }
.partner-skeleton__links { display: flex; align-self: end; justify-self: end; gap: 10px; }
.partner-skeleton__website { width: 150px; height: 44px; }
.partner-skeleton__social { width: 44px; height: 44px; }
.partner-section--lcs .partner-skeleton__links > :not(:last-child) { display: none; }
@keyframes partner-section-shimmer { to { transform: translateX(100%); } }

@media (max-width: 900px) {
	.partner-section { grid-template-columns: minmax(0, 1fr); gap: 26px; padding: 30px; }
}

@media (max-width: 480px) {
	.site-partners__heading { margin-bottom: 22px; padding-bottom: 20px; }
	.site-partners__recommendation { margin-left: 0; padding: 12px 16px 12px 12px; font-size: 14px; }
	.partner-section { padding: 24px 20px; gap: 22px; }
	.partner-section__identity { gap: 16px; }
	.partner-section:is(.partner-section--luxelautodonate, .partner-section--lcs) .partner-section__identity { min-height: 56px; }
	.partner-section__emblem { width: 64px; height: 64px; }
	.partner-section__identity h2 { font-size: clamp(24px, 7vw, 30px); }
	.partner-section__description { font-size: 14px; line-height: 1.75; }
	.partner-section__links { width: 100%; gap: 8px; }
	.partner-section__actions { max-width: 100%; }
	.partner-link--website { padding-inline: 10px; }
	.partner-skeleton__identity { height: 56px; gap: 16px; }
	.partner-section--huntereye .partner-skeleton__identity { height: 64px; }
	.partner-skeleton__logo { flex-basis: 64px; height: 64px; }
	.partner-skeleton__title { height: 26px; }
	.partner-skeleton__links { gap: 8px; }
	.partner-skeleton__website { width: 134px; }
}

@media (prefers-reduced-motion: reduce) {
	.partner-link, .partner-link > svg { transition: none; }
}
@media (prefers-reduced-motion: reduce), print {
	html.is-partners-preparing .partner-section > :not(.partner-skeleton),
	.partner-section.is-partner-pending > :not(.partner-skeleton) { opacity: 1; pointer-events: auto; }
	html.is-partners-preparing .partner-section > .partner-skeleton,
	.partner-section:is(.is-partner-pending, .is-partner-revealing) > .partner-skeleton { display: none; }
	.partner-skeleton::after { animation: none; }
}
