/* Base tokens */
:root {
	--bg: #161616;
	--bg-2: #22211D;
	--text: #FFFFFF;
	--muted: #D1D5DB;
	--gold-1: #DDBF6A;
	--gold-2: #9B7700;
	--gold-3: #E5CD87;
	--card: #1C1C1C;
	--border: #2A2A2A;
	--radius: 16px;
	--container: 1200px;
	--g-gold: linear-gradient(90deg, #DDBF6A 0%, #9B7700 50%, #DDBF6A 100%);
}

/* Reset */
* {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	padding: 0;
}

img {
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

a {
	color: inherit;
	text-decoration: none;
}

body {
	font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
	background: var(--bg);
	color: var(--text);
	line-height: 1.65;
	font-size: 16px;
}

.container {
	width: min(100% - 32px, var(--container));
	margin-inline: auto;
}

/* Header/Hero */
.site-header {
	padding: 30px 0 0;
	background: radial-gradient(1200px 220px at 50% 0%, rgba(221, 191, 106, 0.15), rgba(0, 0, 0, 0) 60%);
}

.hero-title {
	margin: 15px 0 10px 0;
	font-size: clamp(44px, 7vw, 64px); /* увеличено */
	line-height: 1.2;
	text-align: center;
}

.hero-title .accent {
	color: #DDBF6A;
}

.hero-sub {
	color: var(--text);
	margin: 30px 0 50px 0;
	max-width: 70ch;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	font-size: 20px;
}

.hero-sub-1 {
	font-size: 10px;
	font-style: italic;
	font-weight: 300;
	text-align: center;
	margin-top: 15px;
}

.btn {
	display: block;
	width: 100%;
	max-width: 400px; /* растянутая, но не бесконечная */
	margin: 0 auto; /* отцентрирована */
	padding: 14px 28px;
	border-radius: 10px;
	border: 1px solid var(--gold-3); /* золотая обводка */
	background: var(--g-gold); /* золотой градиент */
	color: #FFFFFF; /* белый текст как в макете */
	font-weight: 500;
	text-align: center;
	transition: filter .2s ease, transform .05s ease;
	/* двойное кольцо: светлое внешнее свечение + темное внутреннее */
	box-shadow: 0 0 17px 1px #FFE79F, /* внешнее мягкое свечение */ inset 0 0 0 5px #000; /* внутренняя темная окантовка */
}
.btn_white {
	box-shadow: 0 0 17px 1px #FFE79F, inset 0 0 0 5px #fff;
}

.btn:hover {
	filter: brightness(1.06);
}

.btn:active {
	transform: translateY(1px);
}

.btn:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(221, 191, 106, 0.35);
}

/* Sections */
.section {
	padding: 30px 0;
	position: relative;
}

.section::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: auto 0 0 0;
	height: 120px;
	border-radius: 50%;
	opacity: 0.8;
	pointer-events: none;
	background: linear-gradient(180deg, #9A8650 0%, rgba(33, 33, 34, 0.00) 100%);
	filter: blur(50px);
}

.section-title {
	font-size: clamp(36px, 4.5vw, 36px); /* увеличено */
	margin: 0 0 20px 0;
	text-align: center;
	line-height: 44px;
}

.visual {
	padding-top: 16px;
}

.visual-img {
	border-radius: var(--radius);
}

.cards {
	display: grid;
	gap: 20px;
}

.cards-3 {
	grid-template-columns: repeat(3, 1fr);
}

.card {
	border: 1px solid rgba(229, 205, 135, 0.3);
	background: rgba(38, 38, 38, 0.3);
	border-radius: 24px;
	padding: 30px;
}
.card-text {
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 21px;
	margin: 0;
}

.card-icon {
	display: inline;
}

.cards-gold .card {
	background: linear-gradient(180deg, rgba(221, 191, 106, 0.14), rgba(0, 0, 0, 0.00));
	border-color: rgba(229, 205, 135, 0.55);
}

/* How it works */
.list {
	padding: 0;
	list-style: none;
	margin: 30px 0;
}

.list li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 10px;
}
.list li:after {
	content: '';
	width: 22px;
	height: 24px;
	position: absolute;
	top: 6px;
	left: 4px;
}

.list li.check:after {
	background: url("/static/trumlm/assets/img/check.png") top center no-repeat transparent;
}

.list li.faq {
	background: #22211D;
	border-radius: 8px;
	padding: 10px 10px 10px 45px;
	color: #fff;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
}
.list li.faq:after {
	top: 10px;
	left: 12px;
}
.list li.faq.faq_1:after {
	background: url("/static/trumlm/assets/img/1.png") top center no-repeat transparent;
}
.list li.faq.faq_2:after {
	background: url("/static/trumlm/assets/img/2.png") top center no-repeat transparent;
}
.list li.faq.faq_3:after {
	background: url("/static/trumlm/assets/img/3.png") top center no-repeat transparent;
}
.list li.faq.faq_4:after {
	background: url("/static/trumlm/assets/img/4.png") top center no-repeat transparent;
}
.list li.faq.faq_5:after {
	background: url("/static/trumlm/assets/img/5.png") top center no-repeat transparent;
}
.list li.faq.faq_6:after {
	background: url("/static/trumlm/assets/img/6.png") top center no-repeat transparent;
}

.visual-side {
	max-width: 230px;
	margin-top: 64px;
}

/* Stats */
.stats-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, 1fr);
}

.stat-number {
	font-weight: 800;
	font-size: clamp(80px, 8vw, 80px); /* увеличено */
	background-image: var(--g-gold);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
	margin: 0 0 8px 0;
	text-align: center;
}

.stat p {
	margin: 0;
	color: #E8E8E8;
}

/* FAQ problems */
.faq {
	display: grid;
	gap: 20px;
}

.faq-item {
	background: #22211D;
	border-radius: 8px;
	padding: 10px ;
	color: #fff;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
}

/* Final CTA */
.final-cta {
	background: #FFFFFF;
	color: #111;
	padding: 28px 0 36px;
	border-radius: 20px 20px 0 0;
	box-shadow: 0 -8px 40px rgba(0, 0, 0, 0.25);
}

/* Footer */
.site-footer {
	color: #BDBDBD;
	padding: 18px 0 28px;
}

/* Responsive */
@media (max-width: 1024px) {
	.cards-3, .stats-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.cards-3, .stats-grid {
		grid-template-columns: 1fr;
	}

	.visual-side {
		margin-inline: auto;
	}
}

.section.container p,
.section.container .cards,
.stats .stat p {
	text-align: center;
}

.cards .card {
	text-align: center;
}

.faq {
	max-width: 820px;
	margin: 0 auto;
}

/* Full-bleed visual (edge-to-edge) */
.visual-full {
	text-align: center;
}

.h3-footer {
	font-size: 36px;
	text-align: center;
	line-height: 44px;
}

.team-img {
	margin-top: 60px;
}

.visual-img-full {
	width: 100%;
	object-fit: cover;
	display: block;
	border-radius: 0;
}
.mb30 {
	margin-bottom: 30px;
}
