/* =======================================================
 * ABOUT PAGE — /ve-chung-toi/ (cũ: /gioi-thieu-cong-ty/)
 * Khối hero trong max-width, không tràn 100vw.
 * ======================================================= */
body.rev-about-page #main,
body.page-gioi-thieu-cong-ty #main,
body.page-id-102498 #main {
	overflow-x: hidden;
}
.rev-about-hero {
	background:
		linear-gradient(145deg, rgba(6, 36, 20, 0.92) 0%, rgba(8, 81, 43, 0.95) 45%, rgba(14, 106, 58, 0.98) 100%),
		linear-gradient(135deg, #042817 0%, #08512b 50%, #1aa85a 130%);
	color: #fff;
	padding: clamp(48px, 6vw, 72px) clamp(20px, 4vw, 40px) clamp(52px, 6vw, 76px);
	border-radius: 24px;
	position: relative;
	overflow: hidden;
	margin: 0 auto 48px;
	max-width: 1180px;
	width: 100%;
	box-shadow:
		0 28px 80px -40px rgba(8, 81, 43, 0.65),
		0 0 0 1px rgba(110, 229, 166, 0.12);
	box-sizing: border-box;
}
/* Huỷ full-blee cũ — hero nằm cùng lưới với nội dung */
body.rev-about-page .rev-about-hero,
body.page-gioi-thieu-cong-ty .rev-about-hero,
body.page-id-102498 .rev-about-hero {
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 24px;
}
.rev-about-hero::before {
	content: "";
	position: absolute; inset: 0;
	background:
		radial-gradient(500px circle at 88% 8%, rgba(110, 229, 166, 0.35), transparent 55%),
		radial-gradient(420px circle at 12% 92%, rgba(255, 255, 255, 0.12), transparent 62%);
	pointer-events: none;
}
.rev-about-hero__inner {
	position: relative;
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
}
.rev-about-hero__eyebrow {
	display: inline-block;
	background: rgba(255,255,255,0.15);
	border: 1px solid rgba(255,255,255,0.25);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 1.2px;
	padding: 6px 14px;
	border-radius: 999px;
	text-transform: uppercase;
	margin-bottom: 18px;
}
.rev-about-hero h1 {
	color: #fff !important;
	font-size: clamp(2rem, 4.5vw, 3.5rem);
	font-weight: 800;
	line-height: 1.1;
	margin: 0 0 18px;
	letter-spacing: -0.5px;
}
.rev-about-hero h1 .rev-grad {
	background: linear-gradient(120deg,#6ee5a6,#d8f5e0,#6ee5a6);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.rev-about-hero p {
	color: rgba(255,255,255,0.9);
	font-size: 17px;
	line-height: 1.7;
	margin: 0 auto;
	max-width: 780px;
}

.rev-about-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
	margin: 26px auto 0;
	max-width: 880px;
}
.rev-about-stats > div {
	background: rgba(255,255,255,0.10);
	border: 1px solid rgba(255,255,255,0.18);
	border-radius: 14px;
	padding: 14px 12px;
	backdrop-filter: blur(6px);
}
.rev-about-stats strong {
	display: block;
	font-size: clamp(1.2rem, 2.4vw, 1.7rem);
	font-weight: 800;
	color: #fff;
}
.rev-about-stats span {
	font-size: 12px;
	color: rgba(255,255,255,0.78);
	letter-spacing: 0.3px;
}

/* Story section */
.rev-about-section {
	max-width: 1180px;
	margin: 0 auto 60px;
	padding: 0 24px;
}
.rev-about-section h2 {
	color: #08512B;
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 800;
	margin: 0 0 14px;
	line-height: 1.2;
}
.rev-about-section .rev-about-eyebrow {
	display: inline-block;
	background: #f1faf3;
	color: #0E6A3A;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 1px;
	padding: 5px 12px;
	border-radius: 999px;
	text-transform: uppercase;
	margin-bottom: 12px;
	border: 1px solid #cfe7d8;
}
.rev-about-section p {
	color: #2c3a31;
	font-size: 16px;
	line-height: 1.75;
	margin: 0 0 14px;
}

/* Founder card — ảnh 16:9 */
.rev-founder {
	background: linear-gradient(135deg, #f7fcf9 0%, #e8f5ee 55%, #dff3e8 100%);
	border: 1px solid #c5e9d4;
	border-radius: 24px;
	padding: clamp(28px, 4vw, 44px) clamp(24px, 3vw, 40px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: clamp(22px, 3vw, 36px);
	align-items: center;
	box-shadow: 0 20px 56px -34px rgba(8, 81, 43, 0.35);
}
.rev-founder__avatar {
	width: 100%;
	max-width: 440px;
	aspect-ratio: 16 / 9;
	height: auto;
	border-radius: 18px;
	background: linear-gradient(135deg, #08512b, #1aa85a);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 800;
	letter-spacing: 1px;
	box-shadow: 0 24px 50px -22px rgba(8, 81, 43, 0.45);
	overflow: hidden;
}
.rev-founder__avatar:has(.rev-founder__photo) {
	background: #0a1a10;
	padding: 0;
}
.rev-founder__photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 15%;
	border-radius: 18px;
	display: block;
}
.rev-founder__name { color: #08512B; font-size: 1.5rem; font-weight: 800; margin: 0 0 4px; }
.rev-founder__role { color: #0E6A3A; font-weight: 600; font-size: 14px; letter-spacing: 0.4px; margin-bottom: 14px; }
.rev-founder__quote {
	color: #1a2a20;
	font-size: 17px;
	line-height: 1.7;
	font-style: italic;
	border-left: 4px solid #1AA85A;
	padding-left: 16px;
	margin: 0;
}

/* 6-pillar grid */
.rev-pillars {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.rev-pillars__card {
	background: #fff;
	border: 1px solid #e3eee7;
	border-radius: 18px;
	padding: 24px 22px;
	transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
	display: flex; flex-direction: column;
}
.rev-pillars__card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 44px -22px rgba(8,81,43,0.4);
	border-color: #1AA85A;
}
.rev-pillars__num {
	display: inline-flex; align-items: center; justify-content: center;
	width: 42px; height: 42px;
	border-radius: 12px;
	background: linear-gradient(135deg,#1AA85A,#0E6A3A);
	color: #fff;
	font-weight: 800;
	font-size: 18px;
	margin-bottom: 14px;
}
.rev-pillars__title { color: #08512B; font-size: 1.05rem; font-weight: 800; margin: 0 0 8px; }
.rev-pillars__desc  { color: #4a5b51; font-size: 14px; line-height: 1.65; flex: 1; margin: 0 0 14px; }
.rev-pillars__link {
	color: #0E6A3A; font-weight: 700; font-size: 14px;
	text-decoration: none;
}
.rev-pillars__link:hover { color: #08512B; text-decoration: underline; }

/* Press section */
.rev-press {
	background: linear-gradient(135deg,#f1faf3 0%,#ffffff 100%);
	border: 1px solid #cfe7d8;
	border-radius: 22px;
	padding: 44px 36px;
}
.rev-press__head { text-align: center; margin-bottom: 28px; }
.rev-press__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 22px;
}
.rev-press__card {
	background: #fff;
	border: 1px solid #e3eee7;
	border-radius: 16px;
	padding: 24px 22px;
	display: flex; flex-direction: column;
	gap: 10px;
	transition: transform 0.2s, box-shadow 0.2s;
}
.rev-press__card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px -22px rgba(8,81,43,0.35); }
.rev-press__source {
	display: inline-flex; align-items: center; gap: 8px;
	color: #08512B; font-weight: 800; font-size: 13px;
	letter-spacing: 0.4px;
	text-transform: uppercase;
}
.rev-press__source::before {
	content: ""; display: inline-block;
	width: 8px; height: 8px; border-radius: 50%;
	background: #1AA85A;
}
.rev-press__title {
	color: #0a1a10; font-size: 18px; font-weight: 800;
	line-height: 1.3; margin: 0;
}
.rev-press__excerpt {
	color: #4a5b51; font-size: 14px; line-height: 1.65; margin: 0;
}
.rev-press__link {
	color: #0E6A3A; font-weight: 700; font-size: 14px;
	text-decoration: none;
	margin-top: auto;
}
.rev-press__link:hover { color: #08512B; text-decoration: underline; }

.rev-about-cta {
	background: linear-gradient(135deg,#08512B 0%,#1AA85A 100%);
	color: #fff;
	border-radius: 22px;
	padding: 50px 36px;
	text-align: center;
	margin: 60px auto;
	max-width: 1180px;
}
.rev-about-cta h3 {
	color: #fff !important;
	font-size: clamp(1.4rem, 2.6vw, 2rem);
	font-weight: 800;
	margin: 0 0 12px;
}
.rev-about-cta p { color: rgba(255,255,255,0.9); margin: 0 0 20px; }
.rev-about-cta .btn {
	display: inline-block;
	background: #fff;
	color: #08512B !important;
	padding: 12px 26px;
	border-radius: 10px;
	font-weight: 800;
	margin: 0 6px;
	text-decoration: none !important;
}
.rev-about-cta .btn.ghost {
	background: transparent;
	color: #fff !important;
	border: 2px solid rgba(255,255,255,0.5);
}

/* Mobile */
@media (max-width: 768px) {
	.rev-about-hero { padding: 48px 18px 52px; border-radius: 18px; }
	.rev-about-stats { grid-template-columns: repeat(2, 1fr); }
	.rev-founder { grid-template-columns: 1fr; text-align: center; padding: 28px 20px; }
	.rev-founder__avatar { max-width: 100%; margin: 0 auto; aspect-ratio: 16 / 9; font-size: 2.5rem; }
	.rev-founder__quote { text-align: left; }
	.rev-pillars { grid-template-columns: 1fr; }
	.rev-press__grid { grid-template-columns: 1fr; }
}
