@font-face {
	font-family: "GothamPro";
	src: local("GothamPro-Bold"), local("Gotham Pro Bold");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

.profile-catalog-page {
	--profile-background: #070914;
	--profile-surface: #101524;
	--profile-surface-deep: #0b0e1c;
	--profile-line: rgba(143, 159, 217, .16);
	--profile-line-strong: rgba(126, 144, 222, .32);
	--profile-text: #f5f7ff;
	--profile-muted: #aeb8cf;
	--profile-muted-dark: #76829e;
	--profile-violet: #8465ff;
	--profile-cyan: #41cfff;
	--profile-gradient: linear-gradient(105deg, #38d2ff 0%, #6679ff 52%, #a36bff 100%);
	--profile-content-width: 1240px;
	min-width: 320px;
	overflow-x: hidden;
	background: linear-gradient(180deg, #070914 0%, #080b17 44%, #070914 100%);
	color: var(--profile-text);
	font-family: "GothamPro", "Gotham Pro", "Montserrat", "Segoe UI", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.45;
}

.profile-catalog-page .page-shell h1,
.profile-catalog-page .page-shell h2,
.profile-catalog-page .page-shell h3,
.profile-catalog-page .page-shell strong,
.profile-catalog-page .page-shell b {
	font-weight: 400;
}

.profile-catalog-page .page-shell a {
	color: inherit;
}

.profile-catalog-page .page-shell {
	width: 100%;
	min-height: calc(100vh - var(--site-header-height));
	margin: 0;
	overflow: visible;
}

.profile-catalog-page .page-shell ::selection {
	background: var(--profile-violet);
	color: #ffffff;
}

.profile-container {
	position: relative;
	z-index: 2;
	width: min(var(--profile-content-width), calc(100% - 48px));
	margin: 0 auto;
}

.profile-page-glow {
	position: fixed;
	z-index: 0;
	width: 520px;
	height: 520px;
	border-radius: 50%;
	opacity: .11;
	filter: blur(130px);
	pointer-events: none;
}

.profile-page-glow--cyan {
	top: -290px;
	left: -230px;
	background: var(--profile-cyan);
}

.profile-page-glow--violet {
	right: -260px;
	bottom: -310px;
	background: var(--profile-violet);
}

.profile-catalog {
	position: relative;
	z-index: 1;
	padding: 82px 0 116px;
	overflow: hidden;
	background:
		radial-gradient(circle at 88% 8%, rgba(132, 101, 255, .07), transparent 34rem),
		linear-gradient(180deg, #080b17, #070914 70%);
}

.profile-catalog::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 360px;
	opacity: .18;
	background-image: linear-gradient(90deg, transparent 49.8%, rgba(132, 101, 255, .1) 50%, transparent 50.2%);
	background-size: 124px 100%;
	content: "";
	pointer-events: none;
}

.profile-catalog-toolbar {
	position: relative;
	z-index: 10;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 24px;
}

.profile-catalog-toolbar .site-dropdown.profile-catalog-dropdown {
	width: 248px;
	min-width: 248px;
	max-width: 248px;
	flex: 0 0 248px;
}

.profile-empty {
	display: grid;
	gap: 8px;
	min-height: 280px;
	padding: 48px 24px;
	border: 1px dashed var(--profile-line-strong);
	border-radius: 5px;
	place-items: center;
	color: var(--profile-muted);
	background: rgba(16, 21, 36, .36);
	text-align: center;
}

.profile-empty strong {
	color: var(--profile-text);
	font-size: 22px;
}

.profile-empty p {
	margin: 0;
}

.profile-catalog-page .page-shell :is(a, button):focus-visible {
	outline: 1px solid var(--profile-cyan);
	outline-offset: 3px;
}

@media (max-width: 680px) {
	.profile-container {
		width: min(100% - 24px, var(--profile-content-width));
	}

	.profile-catalog {
		padding: 48px 0 84px;
	}
}

@media (max-width: 430px) {
	.profile-catalog-toolbar .site-dropdown.profile-catalog-dropdown {
		width: 100%;
		min-width: 0;
		max-width: none;
		flex-basis: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.profile-catalog-page .page-shell *,
	.profile-catalog-page .page-shell *::before,
	.profile-catalog-page .page-shell *::after {
		transition-duration: .01ms !important;
	}
}
