/**
 * Home page sections (template-parts/pages/home/).
 *
 * Loaded only on the Home page template (see inc/enqueue.php). Only
 * home-specific layout lives here; shared patterns (tokens, buttons, frames,
 * section header, text styles, split, ruled rows, display list, numbered
 * cards, course cards, contact CTA) live in assets/css/main.css.
 */

/* Hero ------------------------------------------------------------------- */
.hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	align-items: stretch;
}

.hero__copy {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: clamp(24px, 3vw, 38px);
	padding: clamp(48px, 6vw, 96px) var(--aq-gutter) clamp(44px, 5vw, 72px);
}

.hero__title {
	margin: 0;
	font-size: clamp(36px, 4.9vw, 76px);
	line-height: 1.02;
	letter-spacing: -.015em;
	text-wrap: balance;
}

.hero__title-highlight {
	color: var(--aq-highlight);
}

.hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

.hero__actions .btn-secondary {
	--bs-btn-padding-x: 24px;
}

.hero__standards {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(18px, 2.4vw, 36px);
	max-width: 560px;
	padding-top: clamp(18px, 2.6vw, 32px);
	border-top: 1px solid var(--aq-border);
	color: var(--aq-neutral-600);
	font-size: 11.5px;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.hero__media {
	position: relative;
	min-height: clamp(520px, 58vw, 760px);
	padding: clamp(28px, 3vw, 48px);
	border-left: 1px solid var(--aq-border);
}

.hero__figure {
	width: 100%;
	height: 100%;
}

@media (max-width: 900px) {
	.hero {
		grid-template-columns: minmax(0, 1fr);
	}

	.hero__copy {
		padding-bottom: clamp(28px, 5vw, 40px);
	}

	.hero__media {
		min-height: 0;
		padding: 0 var(--aq-gutter) clamp(34px, 6vw, 56px);
		border-left: 0;
	}

	.hero__figure {
		height: clamp(300px, 62vw, 460px);
	}
}

@media (max-width: 620px) {
	.hero__title {
		font-size: 32px;
	}
}

@media (max-width: 520px) {
	.hero__actions .btn {
		justify-content: center;
		width: 100%;
	}
}

/* Why us ------------------------------------------------------------------ */
.why-us {
	padding: var(--aq-section-space-top) var(--aq-gutter) clamp(48px, 6vw, 104px);
}

.why-us__title {
	max-width: 19ch;
	margin-top: clamp(20px, 2.4vw, 34px);
	font-size: clamp(28px, 3.5vw, 54px);
	line-height: 1.08;
}

.why-us__layout {
	margin-top: clamp(38px, 5vw, 86px);
}

.why-us__points {
	margin-top: clamp(32px, 3.6vw, 56px);
}

/* Training courses -------------------------------------------------------- */
.training-courses__note {
	margin: clamp(20px, 2.2vw, 28px) 0 0;
	color: var(--aq-neutral-600);
	font-size: 12.5px;
}

/* Industries -------------------------------------------------------------- */
.industries__layout {
	padding: var(--aq-section-space-top) var(--aq-gutter) clamp(40px, 5vw, 80px);
}

.industries__title {
	max-width: 16ch;
	font-size: clamp(26px, 3.1vw, 46px);
}

.industries__figure {
	height: clamp(280px, 32vw, 460px);
	margin: 0 var(--aq-gutter) clamp(56px, 7vw, 110px);
}

/* Consultant -------------------------------------------------------------- */
.consultant {
	padding: var(--aq-section-space-top) var(--aq-gutter);
}

.consultant__layout {
	gap: clamp(28px, 4.5vw, 88px);
	align-items: end;
}

.consultant__title {
	max-width: 18ch;
	font-size: clamp(25px, 2.9vw, 43px);
}

.consultant__intro {
	max-width: 48ch;
	margin: 0;
	color: var(--aq-neutral-800);
	font-size: 16.5px;
	line-height: 1.68;
}

.consultant__byline {
	margin-top: clamp(22px, 2.6vw, 34px);
	padding-top: clamp(16px, 1.8vw, 24px);
	border-top: 1px solid var(--aq-border);
	color: var(--aq-neutral-600);
	font-size: 12.5px;
	letter-spacing: .14em;
	text-transform: uppercase;
}
