/* Страницы раздела «Оплата и документы» (/About/Payment, Documents, Reschedule, Safety).
   Текст крупнее обычного: читают учителя и родители с телефона */

.ainfo {
	padding-bottom: 48px;
}

.ainfo-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 24px;
}

.ainfo-main h1 {
	font-size: 30px;
	font-weight: 800;
	line-height: 1.2;
	color: #0b0a12;
	margin: 0 0 12px;
}

.ainfo-lead {
	font-size: 18px;
	line-height: 1.55;
	color: #3a3d44;
	margin: 0 0 26px;
}

.ainfo-main h2 {
	font-size: 21px;
	font-weight: 800;
	color: #0b0a12;
	margin: 30px 0 12px;
}

.ainfo-main p, .ainfo-main li {
	font-size: 17px;
	line-height: 1.6;
	color: #3a3d44;
}

.ainfo-main ul {
	padding-left: 22px;
	margin: 0 0 14px;
}

/* шаги */
.ainfo-steps {
	display: grid;
	gap: 12px;
	margin: 0 0 8px;
	padding: 0;
	list-style: none;
	counter-reset: ainfo;
}

.ainfo-step {
	display: flex;
	gap: 14px;
	padding: 16px 18px;
	background: #f7f8fa;
	border-radius: 14px;
}

	.ainfo-step::before {
		counter-increment: ainfo;
		content: counter(ainfo);
		flex: none;
		width: 34px;
		height: 34px;
		border-radius: 10px;
		background: #008ef1;
		color: #fff;
		font: 800 15px/34px Manrope, sans-serif;
		text-align: center;
	}

.ainfo-step b {
	display: block;
	font-size: 17px;
	color: #0b0a12;
	margin-bottom: 3px;
}

.ainfo-step p {
	margin: 0;
	font-size: 16px;
}

/* карточки-колонки («готовим мы» / «готовит школа») */
.ainfo-cols {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}

.ainfo-card {
	padding: 18px 20px;
	border: 1px solid #e6e9ee;
	border-radius: 16px;
	background: #fff;
}

	.ainfo-card h3 {
		font-size: 17px;
		font-weight: 800;
		color: #0b0a12;
		margin: 0 0 10px;
	}

	.ainfo-card ul {
		margin: 0;
		padding-left: 20px;
	}

	.ainfo-card li {
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 6px;
	}

.ainfo-note {
	padding: 14px 16px;
	border-radius: 12px;
	background: #eaf4fe;
	color: #0a5a9c;
	font-size: 16px;
	line-height: 1.5;
	margin: 14px 0 0;
}

/* боковая колонка */
.ainfo-side {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.ainfo-side-card {
	padding: 18px;
	border: 1px solid #e6e9ee;
	border-radius: 16px;
	background: #fff;
}

	.ainfo-side-card h3 {
		font-size: 16px;
		font-weight: 800;
		color: #0b0a12;
		margin: 0 0 8px;
	}

	.ainfo-side-card p {
		font-size: 15px;
		line-height: 1.5;
		color: #6c6e71;
		margin: 0 0 12px;
	}

.ainfo-side-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	height: 52px;
	margin-bottom: 8px;
	border: 0;
	border-radius: 12px;
	background: #008ef1;
	color: #fff;
	font: 700 16px/1 Manrope, sans-serif;
	text-decoration: none;
	cursor: pointer;
}

	.ainfo-side-btn:hover {
		background: #0077cc;
		color: #fff;
	}

	.ainfo-side-btn.ainfo-side-btn--light {
		background: #f5f5f6;
		color: #0b0a12;
	}

		.ainfo-side-btn.ainfo-side-btn--light:hover {
			background: #dfdfe3;
			color: #0b0a12;
		}

.ainfo-side-nav {
	list-style: none;
	margin: 0;
	padding: 0;
}

	.ainfo-side-nav a {
		display: block;
		padding: 9px 10px;
		border-radius: 8px;
		font: 600 15px/1.4 Manrope, sans-serif;
		color: #0b0a12;
		text-decoration: none;
	}

		.ainfo-side-nav a:hover {
			color: #008ef1;
			background: rgba(0,142,241,.1);
		}

		.ainfo-side-nav a.is-current {
			color: #008ef1;
			font-weight: 700;
			background: rgba(0,142,241,.1);
		}

@media (min-width: 768px) {
	.ainfo-cols {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 992px) {
	.ainfo-grid {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 40px;
		align-items: start;
	}

	.ainfo-side {
		position: sticky;
		top: 84px;
	}
}
