/**
 * Hero szekció — HERO_SPLIT kompozíció
 *
 * Layout:
 *   Mobile:  stack — szöveg felül, vizuál alul
 *   Tablet:  2 oszlop 50/50
 *   Desktop: 2 oszlop ~55/45 (szöveg / vizuál)
 *
 * Forrás:
 *   - CONTENT.md 2. Hero szekció (copy)
 *   - SECTION_COMPOSITIONS.md 7. (térkép) + 12.1 (responsive)
 *   - DESIGN_GUIDELINES.md (tokenek, ikon-bubble, gomb-rendszer)
 *   - design-references/hero/hero-split-with-mockup.jpg (stílus)
 */

/* ==========================================================================
   Wrapper + container (DESIGN_GUIDELINES.md szekció-layout minta)
   ========================================================================== */

.hero {
	padding: var(--spacing-section-mobile) var(--container-padding-mobile);
	padding-top: 160px;
	background-color: var(--color-background);
	overflow-x: hidden;
}

@media (min-width: 768px) {
	.hero {
		padding: var(--spacing-section-tablet) var(--container-padding-tablet);
		padding-top: 160px;
	}
}

@media (min-width: 1200px) {
	.hero {
		padding: var(--spacing-section-desktop) var(--container-padding-desktop);
		padding-top: 160px;
	}
}

.hero__container {
	max-width: var(--container-max-width);
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 48px;
	align-items: center;
}

@media (min-width: 768px) {
	.hero__container {
		grid-template-columns: 45fr 55fr;
		gap: 40px;
	}
}

@media (min-width: 1200px) {
	.hero__container {
		grid-template-columns: 45fr 55fr;
		gap: 64px;
	}
}

/* ==========================================================================
   Bal oszlop — szöveg + CTA-k + trust row
   ========================================================================== */

.hero__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	max-width: 540px;
}

/* ---------- Pill badge (eyebrow) ---------- */

.hero__pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px;
	border-radius: var(--radius-pill);
	background-color: var(--color-primary-light);
	color: var(--color-primary);
	font-size: var(--fs-tag);
	line-height: var(--lh-tag);
	font-weight: var(--fw-bold);
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.hero__pill i {
	font-size: 0.9em;
}

/* ---------- H1 cím + kiemelt accent ---------- */

.hero__title {
	font-size: var(--fs-h1);
	line-height: var(--lh-h1);
	font-weight: var(--fw-black);
	color: var(--color-text);
	letter-spacing: -0.02em;
	margin: 0;
}

.hero__title-accent {
	color: var(--color-primary);
}

/* ---------- Alcím ---------- */

.hero__subtitle {
	font-size: var(--fs-body-lg);
	line-height: var(--lh-body-lg);
	font-weight: var(--fw-medium);
	color: var(--color-text-muted);
	margin: 0;
	max-width: 52ch;
}

/* ---------- CTA csoport ---------- */

.hero__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 8px;
}

/* ---------- Trust row ---------- */

.hero__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	row-gap: 12px;
	list-style: none;
	padding: 0;
	margin: 8px 0 0;
}

.hero__trust-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: var(--fs-body-sm);
	line-height: var(--lh-body-sm);
	font-weight: var(--fw-medium);
	color: var(--color-text-muted);
}

.hero__trust-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--color-primary);
	color: #ffffff;
	font-size: 12px;
	flex-shrink: 0;
}

/* ==========================================================================
   Jobb oszlop — termék-mockup placeholder (1. fázis CSS-only)
   ========================================================================== */

.hero__visual {
	position: relative;
	width: 100%;
	min-width: 0;
	max-width: 100%;
}

.hero__image {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
}

/* ==========================================================================
   Belépési animáció (staggered fade-up)
   ========================================================================== */

@media (prefers-reduced-motion: no-preference) {
	.hero__pill,
	.hero__title,
	.hero__subtitle,
	.hero__ctas,
	.hero__trust,
	.hero__visual {
		opacity: 0;
		transform: translateY(12px);
		animation: hero-fade-up 0.6s ease forwards;
	}

	.hero__pill     { animation-delay: 0ms; }
	.hero__title    { animation-delay: 80ms; }
	.hero__subtitle { animation-delay: 160ms; }
	.hero__ctas     { animation-delay: 240ms; }
	.hero__trust    { animation-delay: 320ms; }
	.hero__visual   { animation-delay: 160ms; }

	@keyframes hero-fade-up {
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
}
