/**
 * Modellek megamenü – csak asztali szélességen.
 * A panel a ragadós fejléc alá esik, teljes szélességben.
 */

.lr-mega-parent {
	position: static;
}

.lr-mega {
	display: none;
}

@media (min-width: 900px) {
	.lr-mega {
		display: block;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: var(--lr-paper);
		border-top: 1px solid var(--lr-paper-line);
		border-bottom: 2px solid var(--lr-ink);
		box-shadow: 0 18px 40px -24px rgba(10, 11, 13, 0.45);
		opacity: 0;
		visibility: hidden;
		transform: translateY(-6px);
		transition: opacity var(--lr-dur) var(--lr-ease), transform var(--lr-dur) var(--lr-ease),
			visibility var(--lr-dur) var(--lr-ease);
		z-index: 39;
	}

	.lr-mega-parent:hover .lr-mega,
	.lr-mega-parent:focus-within .lr-mega,
	.lr-mega.is-open {
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.lr-mega__inner {
		max-width: var(--lr-max);
		margin: 0 auto;
		padding: 0 24px;
		display: grid;
		grid-template-columns: minmax(0, 3.3fr) minmax(0, 1fr);
	}

	.lr-mega__cats {
		display: grid;
		grid-template-columns: repeat(var(--lr-cols, 4), minmax(0, 1fr));
		gap: 0;
	}

	.lr-mega__col {
		background: var(--lr-paper);
		padding: 24px 18px 26px;
		border-right: 1px solid var(--lr-paper-line);
	}

	.lr-mega__col:first-child {
		border-left: 1px solid var(--lr-paper-line);
	}

	/* --- Kategóriafej --- */

	/* A kategóriafejek eltérő hosszúak; két sort foglalunk mindegyiknek,
	   így az alattuk futó vonal minden oszlopban egy magasságban van. */
	.lr-mega .lr-mega__cat {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 8px;
		padding: 0 0 10px;
		margin-bottom: 12px;
		border-bottom: 2px solid var(--lr-ink);
	}

	.lr-mega__cat-label {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: var(--lr-ink);
		line-height: 1.35;
		min-height: 2.7em;
	}

	.lr-mega__cat-count {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		font-variant-numeric: tabular-nums;
		color: var(--lr-ink);
		background: var(--lr-paper-tint);
		border: 1px solid var(--lr-paper-line);
		padding: 2px 6px;
		flex: 0 0 auto;
	}

	.lr-mega .lr-mega__cat:hover .lr-mega__cat-label {
		color: var(--lr-volt-deep);
	}

	.lr-mega .lr-mega__cat:hover .lr-mega__cat-count {
		background: var(--lr-volt);
		border-color: var(--lr-volt);
	}

	/* --- Modellsorok --- */

	.lr-mega__models {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
	}

	.lr-mega__models li {
		margin: 0;
		list-style: none;
	}

	.lr-mega .lr-mega__models a {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 7px 8px 7px 6px;
		margin: 0 -8px 0 -6px;
		border-bottom: 0;
		border-radius: 2px;
		color: inherit;
		transition: background var(--lr-dur) var(--lr-ease);
	}

	.lr-mega .lr-mega__models a:hover {
		background: var(--lr-paper-tint);
	}

	.lr-mega__thumb {
		flex: 0 0 auto;
		width: 46px;
		height: 34px;
		background: var(--lr-paper-tint);
		border: 1px solid var(--lr-paper-line);
		display: block;
		overflow: hidden;
		transition: border-color var(--lr-dur) var(--lr-ease);
	}

	.lr-mega__thumb img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		display: block;
		mix-blend-mode: multiply;
	}

	/* Fotó nélküli modell: kategória szerinti vonalrajz, kicsit visszafogva. */
	.lr-mega__thumb.is-icon {
		background: var(--lr-paper);
	}

	.lr-mega__thumb.is-icon img {
		padding: 3px;
		opacity: 0.75;
	}

	.lr-mega .lr-mega__models a:hover .lr-mega__thumb.is-icon img {
		opacity: 1;
	}

	/* A modellsorok azonos magasságúak, hogy az oszlopok együtt fussanak. */
	.lr-mega__model {
		min-height: 34px;
		justify-content: center;
	}

	.lr-mega .lr-mega__models a:hover .lr-mega__thumb {
		border-color: var(--lr-volt-deep);
	}

	.lr-mega__model {
		display: flex;
		flex-direction: column;
		gap: 1px;
		min-width: 0;
	}

	.lr-mega__model-name {
		display: flex;
		align-items: center;
		gap: 6px;
		font-family: var(--lr-display);
		font-weight: 500;
		font-size: 15px;
		letter-spacing: -0.01em;
		line-height: 1.25;
		color: var(--lr-ink);
	}

	.lr-mega__model-short {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		letter-spacing: 0.01em;
		line-height: 1.35;
		color: #6b7280;
	}

	.lr-mega__dot {
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background: var(--lr-volt-deep);
		flex: 0 0 auto;
	}

	/* --- Kiemelt oszlop --- */

	.lr-mega__feature {
		background: var(--lr-ink);
		padding: 24px 20px 26px;
		display: flex;
		flex-direction: column;
		gap: 14px;
	}

	.lr-mega__feature-label {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: var(--lr-volt);
		padding-bottom: 10px;
		border-bottom: 1px solid var(--lr-ink-line);
	}

	.lr-mega .lr-mega__bike {
		display: flex;
		align-items: center;
		gap: 11px;
		border-bottom: 0;
		color: inherit;
	}

	.lr-mega__bike-media {
		flex: 0 0 auto;
		width: 62px;
		height: 46px;
		background: var(--lr-paper);
		border: 1px solid var(--lr-ink-line);
		display: block;
		transition: border-color var(--lr-dur) var(--lr-ease);
	}

	.lr-mega__bike-media img {
		width: 100%;
		height: 100%;
		object-fit: contain;
		display: block;
	}

	.lr-mega__bike-text {
		display: flex;
		flex-direction: column;
		gap: 2px;
		min-width: 0;
	}

	.lr-mega__bike-name {
		font-family: var(--lr-display);
		font-weight: 500;
		font-size: 17px;
		letter-spacing: -0.01em;
		color: var(--lr-paper);
	}

	.lr-mega__bike-spec {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		color: var(--lr-mute);
	}

	.lr-mega__bike-cta {
		font-family: var(--lr-mono);
		font-size: 10.5px;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--lr-volt);
		opacity: 0;
		transform: translateX(-4px);
		transition: opacity var(--lr-dur) var(--lr-ease), transform var(--lr-dur) var(--lr-ease);
	}

	.lr-mega .lr-mega__bike:hover .lr-mega__bike-cta {
		opacity: 1;
		transform: none;
	}

	.lr-mega .lr-mega__bike:hover .lr-mega__bike-media {
		border-color: var(--lr-volt);
	}

	.lr-mega .lr-mega__all {
		margin-top: auto;
		font-family: var(--lr-mono);
		font-size: 11px;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--lr-ink);
		background: var(--lr-volt);
		text-align: center;
		padding: 13px 10px;
		border-radius: 2px;
		border-bottom: 0;
		transition: background var(--lr-dur) var(--lr-ease);
	}

	.lr-mega .lr-mega__all:hover {
		background: var(--lr-volt-deep);
		color: var(--lr-ink);
	}

	/* A nyitott menüpont ugyanazt az aláhúzást kapja, mint az aktív oldal. */
	.lr-mega-parent:hover > a,
	.lr-mega-parent:focus-within > a {
		color: var(--lr-ink);
		border-bottom-color: var(--lr-ink);
	}
}

@media (min-width: 900px) and (max-width: 1120px) {
	.lr-mega__col {
		padding: 20px 13px 22px;
	}

	.lr-mega__thumb {
		width: 40px;
		height: 30px;
	}

	.lr-mega__model-name {
		font-size: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lr-mega,
	.lr-mega__bike-cta {
		transition: none;
	}
}

/* --------------------------------------------------------------------
   „Kinek való?” megamenü – négy egyenrangú oszlop életképpel.
   A modellek panelje 4+1 oszlopos, ez viszont sima négyes rács, ezért
   külön kell a saját `--aud` szabálysor: enélkül a modell-panel
   3.3fr/1fr rácsát örökli, és szétesik.
   ------------------------------------------------------------------ */

@media (min-width: 900px) {
	.lr-mega__inner--aud {
		display: grid;
		grid-template-columns: repeat(var(--lr-cols, 4), minmax(0, 1fr));
		gap: 0;
	}

	.lr-mega__col--aud {
		display: flex;
		flex-direction: column;
		padding: 0 0 22px;
		border-right: 1px solid var(--lr-paper-line);
		border-left: 0;
	}

	.lr-mega__col--aud:first-child { border-left: 1px solid var(--lr-paper-line); }

	.lr-mega .lr-mega__aud-head {
		display: block;
		border-bottom: 0;
		margin-bottom: 12px;
	}

	.lr-mega__aud-media {
		display: block;
		overflow: hidden;
		background: var(--lr-paper-tint);
	}

	.lr-mega__aud-media img {
		width: 100%;
		height: 118px;
		object-fit: cover;
		display: block;
		transition: transform 240ms var(--lr-ease);
	}

	.lr-mega .lr-mega__aud-head:hover .lr-mega__aud-media img { transform: scale(1.04); }

	.lr-mega__aud-label {
		display: block;
		font-family: var(--lr-display);
		font-weight: 500;
		font-size: 18px;
		letter-spacing: -0.01em;
		color: var(--lr-ink);
		padding: 12px 18px 0;
	}

	.lr-mega .lr-mega__aud-head:hover .lr-mega__aud-label { color: var(--lr-volt-deep); }

	.lr-mega__aud-lead {
		font-size: 13.5px;
		line-height: 1.5;
		color: #6b7280;
		margin: 0 0 12px;
		padding: 0 18px;
	}

	.lr-mega__models--aud { padding: 0 12px; }

	/* Az alap sorstílus `align-items: center`-t ad; oszlopirányban ez
	   vízszintesen középre húzza a nevet és a jellemzőt. Vissza kell állítani. */
	.lr-mega .lr-mega__models--aud a {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
		gap: 1px;
		padding: 6px;
		margin: 0;
	}

	/* A modell-lista nyúljon ki, hogy a záró link minden oszlopban egy vonalban legyen. */
	.lr-mega__models--aud { flex: 1 1 auto; }

	.lr-mega .lr-mega__aud-link { margin-top: auto; }

	.lr-mega__models--aud .lr-mega__model-name { font-size: 14px; }

	.lr-mega .lr-mega__aud-link {
		margin: 12px 18px 0;
		font-family: var(--lr-mono);
		font-size: 11px;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--lr-ink);
		border-bottom: 0;
		align-self: flex-start;
	}

	.lr-mega .lr-mega__aud-link:hover { color: var(--lr-volt-deep); }
}

/* A kiemelt oszlop alatt: a többi bemutató gép egy sorban. */
.lr-mega__more {
	margin: 14px 0 0;
	font-family: var(--lr-mono);
	font-size: 11px;
	letter-spacing: 0.06em;
	line-height: 1.8;
	color: var(--lr-mute);
}

.lr-mega__more a { color: var(--lr-paper); }
.lr-mega__more a:hover { color: var(--lr-volt); }
