
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
	background: linear-gradient(
		180deg,
		#1e3160 0%,
		#16264d 18%,
		#0f1c3a 50%,
		#0a1428 82%,
		#050a1a 100%
	);
	background-attachment: fixed;
	color: #f1f5f9;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
a { color: #93c5fd; text-decoration: none; }
a:hover { color: #3b82f6; }
img { max-width: 100%; height: auto; }
.cap-header {
	background: rgba(15, 28, 58, 0.75);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	position: sticky;
	top: 0;
	z-index: 100;
}
.cap-header__inner {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 24px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.cap-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	letter-spacing: -0.01em;
}
.cap-brand:hover { color: #fff; }
.cap-header .cap-brand .cap-brand__logo {
	width: auto !important;
	height: 36px !important;
	max-height: 40px !important;
	max-width: 200px !important;
	flex-shrink: 0;
	display: block;
	object-fit: contain;
}
.cap-nav {
	display: flex;
	align-items: center;
	gap: 24px;
	font-size: 14px;
}
.cap-nav a, .cap-nav button {
	color: rgba(255, 255, 255, 0.65);
	background: none;
	border: 0;
	cursor: pointer;
	font: inherit;
	padding: 0;
	text-decoration: none;
	transition: color .15s;
}
.cap-nav a:hover, .cap-nav button:hover { color: #fff; }
.cap-nav .cap-nav__primary { color: #93c5fd; font-weight: 500; }
.cap-nav .cap-nav__primary:hover { color: #3b82f6; }
@media (max-width: 540px) {
	.cap-header__inner { padding: 0 16px; }
	.cap-nav { gap: 14px; font-size: 13px; }
	.cap-nav .cap-nav__hide-mobile { display: none; }
}
.cap-main { flex: 1; }
.cap-page {
	max-width: 720px;
	margin: 0 auto;
	padding: 56px 24px 80px;
}
.cap-page__title {
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 24px;
	letter-spacing: -0.01em;
}
.cap-page__content { color: rgba(255, 255, 255, 0.85); }
.cap-page__content h2 { color: #fff; font-size: 22px; margin-top: 32px; }
.cap-page__content h3 { color: #fff; font-size: 17px; margin-top: 24px; }
.cap-page__content p { margin: 0 0 16px; }
.cap-page__content ul, .cap-page__content ol { padding-left: 24px; }
.cap-page__content li { margin-bottom: 8px; }
.cap-page__content a { color: #93c5fd; }
.cap-page__content blockquote {
	border-left: 3px solid #1e293b;
	padding: 4px 16px;
	color: #94a3b8;
	margin: 16px 0;
}
.cap-page__content code {
	background: #1e293b;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 13px;
	color: #38bdf8;
}
.cap-page__content hr { border: 0; border-top: 1px solid #1e293b; margin: 32px 0; }
.cap-footer {
	margin-top: auto;
	border-top: 1px solid rgba(30, 41, 59, .5);
	background: rgba(2, 6, 23, .6);
}
.cap-footer__inner {
	max-width: 1024px;
	margin: 0 auto;
	padding: 24px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	font-size: 12px;
	color: #94a3b8;
}
.cap-footer__links { display: flex; gap: 24px; }
.cap-footer a { color: #94a3b8; }
.cap-footer a:hover { color: #cbd5e1; }
@media (max-width: 640px) {
	.cap-footer__inner { flex-direction: column; gap: 12px; text-align: center; }
}
.cap-404 {
	max-width: 480px;
	margin: 0 auto;
	padding: 80px 24px;
	text-align: center;
}
.cap-404 h1 { font-size: 64px; margin: 0; color: #fff; }
.cap-404 p { color: #94a3b8; margin: 16px 0 24px; }
.cap-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	border-radius: 12px;
	background: #0ea5e9;
	color: #fff !important;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	transition: background .15s;
}
.cap-btn:hover { background: #38bdf8; color: #fff !important; }
