/* ============================================================
   about.css — About page
   Loaded conditionally by inc/enqueue.php.
============================================================ */

/* ============================================================
   ABOUT PAGE
============================================================ */
.about-page .about-hero {
	padding: 72px 0 52px;
	text-align: center;
	background: var(--bg-soft);
}

.about-page .hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--r-full);
	font-size: 13px;
	font-weight: 600;
	color: var(--text-2);
	margin-bottom: 20px;
	box-shadow: var(--shadow-sm);
}

.about-page .hero-badge svg {
	color: var(--success);
}

.about-page .about-hero h1 {
	font-size: 52px;
	line-height: 1.05;
	margin: 0 auto 18px;
	max-width: 900px;
	font-weight: 800;
}

.about-page .about-hero h1 .gradient {
	color: var(--primary);
}

.about-page .about-subtitle {
	font-size: 19px;
	color: var(--text-2);
	max-width: 680px;
	margin: 0 auto;
	line-height: 1.5;
}

.about-page .stats-row {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--r-2xl);
	padding: 32px;
	margin-top: 32px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	box-shadow: var(--shadow-md);
}

.about-page .stat {
	text-align: center;
	padding: 0 12px;
	border-right: 1px solid var(--border);
}

.about-page .stat:last-child {
	border-right: 0;
}

.about-page .stat-num {
	font-family: var(--font-display);
	font-size: 44px;
	font-weight: 800;
	line-height: 1;
	color: var(--primary);
}

.about-page .stat-label {
	font-size: 13px;
	color: var(--text-3);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-top: 8px;
}

.about-page .section {
	padding: 60px 0;
}

.about-page .section-alt {
	background: var(--surface);
}

.about-page .section h2 {
	font-size: 34px;
	margin-bottom: 12px;
	text-align: center;
	line-height: 1.1;
}

.about-page .section-subtitle {
	font-size: 17px;
	color: var(--text-2);
	text-align: center;
	max-width: 600px;
	margin: 0 auto 36px;
	line-height: 1.5;
}

.about-page .story-content {
	max-width: 760px;
	margin: 0 auto;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--r-2xl);
	padding: 40px;
	box-shadow: var(--shadow-sm);
	color: var(--text-2);
	line-height: 1.8;
}

.about-page .story-content p {
	margin-bottom: 16px;
}

.about-page .story-content p:last-child {
	margin-bottom: 0;
}

.about-page .features-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.about-page .feature-card {
	background: var(--surface);
	border: 1.5px solid var(--border);
	border-radius: var(--r-xl);
	padding: 28px;
	transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.about-page .feature-card:hover {
	border-color: var(--primary);
	transform: translateY(-4px);
	box-shadow: var(--shadow-lg);
}

.about-page .feature-icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: var(--feat-bg, var(--primary-light));
	color: var(--feat-color, var(--primary));
	display: grid;
	place-items: center;
	margin-bottom: 16px;
}

.about-page .feature-card h3 {
	font-size: 18px;
	margin-bottom: 8px;
}

.about-page .feature-card p {
	color: var(--text-2);
	font-size: 14px;
	line-height: 1.6;
	margin: 0;
}

.about-page .feature-card.c1 { --feat-color: var(--success); --feat-bg: var(--success-light); }
.about-page .feature-card.c2 { --feat-color: var(--primary); --feat-bg: var(--primary-light); }
.about-page .feature-card.c3 { --feat-color: var(--purple); --feat-bg: var(--purple-light); }
.about-page .feature-card.c4 { --feat-color: var(--accent); --feat-bg: var(--accent-light); }
.about-page .feature-card.c5 { --feat-color: var(--pink); --feat-bg: var(--pink-light); }
.about-page .feature-card.c6 { --feat-color: var(--gold); --feat-bg: var(--gold-light); }

.about-page .timeline {
	max-width: 760px;
	margin: 0 auto;
	position: relative;
}

.about-page .timeline::before {
	content: '';
	position: absolute;
	left: 35px;
	top: 0;
	bottom: 0;
	width: 2px;
	background: var(--primary);
}

.about-page .timeline-item {
	display: grid;
	grid-template-columns: 72px 1fr;
	gap: 24px;
	margin-bottom: 28px;
}

.about-page .timeline-item:last-child {
	margin-bottom: 0;
}

.about-page .timeline-num {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--primary);
	color: #fff;
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: 800;
	display: grid;
	place-items: center;
	position: relative;
	z-index: 1;
}

.about-page .timeline-content {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--r-xl);
	padding: 22px;
}

.about-page .timeline-content h3 {
	font-size: 18px;
	margin-bottom: 6px;
}

.about-page .timeline-content p {
	color: var(--text-2);
	font-size: 14px;
	line-height: 1.6;
	margin: 0;
}

.about-page .values-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.about-page .value-card {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	padding: 24px 20px;
	text-align: center;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.about-page .value-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

.about-page .value-icon {
	display: inline-grid;
	place-items: center;
	width: 56px;
	height: 56px;
	margin-bottom: 12px;
	border-radius: 14px;
	background: var(--primary-light);
	color: var(--primary);
}

.about-page .value-card h4 {
	font-size: 15px;
	margin-bottom: 6px;
	font-weight: 700;
}

.about-page .value-card p {
	font-size: 13px;
	color: var(--text-2);
	line-height: 1.5;
	margin: 0;
}

.about-page .about-cta-wrap {
	margin-top: 48px;
}

.about-page .cta-section {
	background: var(--text);
	border-radius: var(--r-2xl);
	padding: 56px 48px;
	color: #fff;
	text-align: center;
	position: relative;
	overflow: hidden;
}

.about-page .cta-section h2 {
	color: #fff;
	font-size: 34px;
	margin-bottom: 12px;
}

.about-page .cta-section p {
	font-size: 17px;
	opacity: 0.92;
	max-width: 500px;
	margin: 0 auto 24px;
	line-height: 1.5;
}

.about-page .cta-actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}

.about-page .cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 13px 26px;
	background: #fff;
	color: var(--primary-dark);
	border-radius: var(--r-md);
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	transition: transform 0.15s ease;
}

.about-page .cta-btn:hover {
	transform: translateY(-2px);
}

.about-page .cta-btn-outline {
	background: transparent;
	color: #fff;
	border: 2px solid rgba(255, 255, 255, 0.45);
}

@media (max-width: 900px) {
	.about-page .about-hero h1 { font-size: 34px; }
	.about-page .about-subtitle { font-size: 16px; }
	.about-page .stats-row { grid-template-columns: 1fr 1fr; gap: 20px; }
	.about-page .stat { border-right: 0; }
	.about-page .stat-num { font-size: 32px; }
	.about-page .section h2 { font-size: 24px; }
	.about-page .cta-section h2 { font-size: 24px; }
	.about-page .story-content { padding: 24px; }
	.about-page .features-grid { grid-template-columns: 1fr; }
	.about-page .values-grid { grid-template-columns: 1fr 1fr; }
	.about-page .cta-section { padding: 40px 24px; }
	.about-page .timeline-item { grid-template-columns: 56px 1fr; gap: 16px; }
	.about-page .timeline::before { left: 27px; }
	.about-page .timeline-num { width: 56px; height: 56px; font-size: 22px; }
}
