/**
 * Mega menú (barra principal): solo viewport ≥992px (PC / tablet ancha).
 * Colores y tipografía alineados con main.css (:root).
 */

@media (min-width: 992px) {
	.tdp-site-header__menu.tdp-site-header__menu--drawer {
		display: none !important;
	}
}

@media (max-width: 991.98px) {
	.tdp-site-header__menu.tdp-site-header__menu--desktop {
		display: none !important;
	}
}

@media (min-width: 992px) {
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega {
		position: relative;
		z-index: 0;
	}

	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:hover,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:focus-within,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega.tdp-mega-nav__item--mega-open {
		z-index: 10090;
	}

	/* Puente entre enlace y panel fijo */
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega::after {
		content: "";
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		width: auto;
		min-width: 100%;
		height: max(12px, var(--tdp-mega-bridge, 4rem));
		pointer-events: none;
		z-index: 10085;
	}

	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:hover::after,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:focus-within::after,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega.tdp-mega-nav__item--mega-open::after {
		pointer-events: auto;
	}

	.tdp-mega-nav__dropdown--mega {
		--tdp-mega-menu-gap: 0.875rem;
		--tdp-mega-menu-pad: 1.75rem 2rem;
		--tdp-mega-cover-vh: 48vh;
		position: fixed;
		left: 50%;
		right: auto;
		top: var(--tdp-mega-top, calc(10rem + 10px));
		transform: translateX(-50%) translateY(0.5rem);
		width: min(96rem, calc(100vw - 2rem));
		max-width: min(var(--tdp-max, 1440px), calc(100vw - 2rem));
		box-sizing: border-box;
		background: #121212;
		border: 1px solid var(--tdp-header-edge, rgba(255, 255, 255, 0.12));
		border-radius: 0.6rem;
		box-shadow: 0 18px 48px rgba(0, 0, 0, 0.65);
		padding: 0;
		margin: 0;
		list-style: none;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition:
			opacity 0.28s ease,
			transform 0.28s ease,
			visibility 0.28s ease;
		z-index: 10088;
		max-height: calc(100vh - var(--tdp-mega-top, 10rem) - 12px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}

	/* Ancho y posición = listado `#tdp-primary-menu-desktop` (tdp-nav-mega.js). */
	html[data-tdp-mega-dock="1"] .tdp-mega-nav__dropdown--mega {
		left: var(--tdp-mega-panel-left, 1rem);
		width: var(--tdp-mega-panel-width, min(96rem, calc(100vw - 2rem)));
		max-width: var(--tdp-mega-panel-width, min(var(--tdp-max, 1440px), calc(100vw - 2rem)));
		transform: translateX(0) translateY(0.5rem);
	}

	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:hover > .tdp-mega-nav__dropdown--mega,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega:focus-within > .tdp-mega-nav__dropdown--mega,
	.tdp-site-header__menu > li.tdp-mega-nav__item--mega.tdp-mega-nav__item--mega-open > .tdp-mega-nav__dropdown--mega {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateX(-50%) translateY(0);
	}

	html[data-tdp-mega-dock="1"] .tdp-site-header__menu > li.tdp-mega-nav__item--mega:hover > .tdp-mega-nav__dropdown--mega,
	html[data-tdp-mega-dock="1"] .tdp-site-header__menu > li.tdp-mega-nav__item--mega:focus-within > .tdp-mega-nav__dropdown--mega,
	html[data-tdp-mega-dock="1"] .tdp-site-header__menu > li.tdp-mega-nav__item--mega.tdp-mega-nav__item--mega-open > .tdp-mega-nav__dropdown--mega {
		transform: translateX(0) translateY(0);
	}

	.tdp-mega-nav__dropdown--mega::-webkit-scrollbar {
		width: 8px;
		height: 8px;
	}

	.tdp-mega-nav__dropdown--mega::-webkit-scrollbar-thumb {
		background: rgba(255, 255, 255, 0.22);
		border-radius: 99px;
	}

	.tdp-mega-nav__mega {
		display: grid;
		grid-template-columns: minmax(16rem, 26%) minmax(0, 1fr);
		gap: var(--tdp-mega-menu-gap);
		padding: var(--tdp-mega-menu-pad);
		align-items: stretch;
	}

	.tdp-mega-nav__mega-sidebar {
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		padding-right: var(--tdp-mega-menu-gap);
		margin-right: -1px;
		min-width: 0;
	}

	.tdp-mega-nav__mega-kicker {
		display: block;
		font-family: var(--tdp-font-heading), "Russo One", Arial, Helvetica, sans-serif;
		font-size: 0.75rem;
		font-weight: 400;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.55);
		margin: 0 0 0.65rem;
		line-height: 1.35;
	}

	.tdp-mega-nav__mega-list {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.tdp-mega-nav__mega-li {
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.tdp-mega-nav__mega-li:last-child {
		border-bottom: none;
	}

	.tdp-mega-nav__mega-hit {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 0 0.35rem;
		width: 100%;
		font: inherit;
		font-family: var(--tdp-font-heading), "Russo One", Arial, Helvetica, sans-serif;
		font-size: 1rem;
		font-weight: 400;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.92);
		background: transparent;
		border: none;
		text-align: left;
		padding: 0.75rem 0.65rem;
		cursor: pointer;
		text-decoration: none;
		transition:
			background-color 0.2s ease,
			color 0.2s ease;
	}

	.tdp-mega-nav__mega-hit:hover,
	.tdp-mega-nav__mega-hit:focus-visible {
		outline: none;
		background: rgba(229, 27, 32, 0.12);
		color: var(--tdp-primary, #e51b20);
	}

	.tdp-mega-nav__mega-hit.is-active {
		background: rgba(229, 27, 32, 0.1);
		color: var(--tdp-primary, #e51b20);
	}

	.tdp-mega-nav__mega-hit.current-menu-item,
	.tdp-mega-nav__mega-hit.current_page_item {
		box-shadow: inset 3px 0 0 var(--tdp-primary, #e51b20);
	}

	.tdp-mega-nav__mega-hit.current-menu-ancestor:not(.current-menu-item),
	.tdp-mega-nav__mega-hit.current_page_parent:not(.current_page_item),
	.tdp-mega-nav__mega-hit.current_page_ancestor:not(.current_page_item) {
		box-shadow: inset 3px 0 0 rgba(255, 255, 255, 0.35);
	}

	.tdp-mega-nav__mega-li--cta .tdp-mega-nav__mega-hit {
		color: var(--tdp-primary, #e51b20);
		font-weight: 400;
	}

	.tdp-mega-nav__mega-li--cta .tdp-mega-nav__mega-hit:hover,
	.tdp-mega-nav__mega-li--cta .tdp-mega-nav__mega-hit:focus-visible {
		color: #fff;
		background: rgba(229, 27, 32, 0.22);
	}

	.tdp-mega-nav__mega-badge {
		display: inline-flex;
		align-items: center;
		padding: 0.15rem 0.45rem;
		border-radius: 999px;
		font-family: var(--tdp-font-body), "Poppins", sans-serif;
		font-size: 0.65rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 0.06em;
		color: #fff;
		background: var(--tdp-primary, #e51b20);
		vertical-align: middle;
	}

	.tdp-mega-nav__mega-main {
		position: relative;
		isolation: isolate;
		overflow: hidden;
		min-width: 0;
		align-self: stretch;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		display: flex;
		flex-direction: column;
		min-height: 100%;
	}

	.tdp-mega-nav__mega-panel-layout {
		display: grid;
		grid-template-columns: minmax(0, 11fr) minmax(0, 9fr);
		grid-template-rows: auto;
		align-content: start;
		flex: 1 1 auto;
		min-height: 0;
		gap: var(--tdp-mega-menu-gap);
		column-gap: 1rem;
		align-items: start;
		margin-bottom: calc(var(--tdp-mega-menu-gap) + 2px);
	}

	.tdp-mega-nav__mega-panel-layout:not(:has(> .tdp-mega-nav__mega-panel-cover)) {
		grid-template-columns: minmax(0, 1fr);
	}

	.tdp-mega-nav__mega-panel-intro {
		min-width: 0;
		min-height: 0;
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding: 0;
		border: none;
		align-self: stretch;
		justify-content: flex-start;
		overflow: hidden;
	}

	.tdp-mega-nav__mega-panel-intro .tdp-mega-nav__mega-desc {
		flex: 1 1 auto;
		min-height: 0;
		max-width: none;
		width: 100%;
		margin-bottom: 0;
		overflow: hidden;
		line-height: 1.55;
	}

	.tdp-mega-nav__mega-panel-intro .tdp-mega-nav__mega-title {
		flex-shrink: 0;
		max-width: none;
		width: 100%;
	}

	.tdp-mega-nav__mega-panel-cover {
		min-width: 0;
		align-self: stretch;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		flex-shrink: 0;
		position: relative;
	}

	.tdp-mega-nav__mega-panel-cover .tdp-mega-nav__mega-media--banner,
	.tdp-mega-nav__mega-panel-cover .tdp-mega-nav__mega-media {
		display: block;
		flex: none;
		align-self: stretch;
		box-sizing: border-box;
		aspect-ratio: 9 / 16;
		width: 100%;
		max-width: 100%;
		height: auto;
		max-height: min(var(--tdp-mega-cover-vh), 48vh);
		margin-inline: 0;
		border-radius: 0.5rem;
		overflow: hidden;
		background: #0a0a0a;
		text-decoration: none;
		color: inherit;
		position: relative;
	}

	.tdp-mega-nav__mega-panel-cover .tdp-mega-nav__mega-thumb {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		display: block;
		object-fit: cover;
		object-position: center center;
	}

	.tdp-mega-nav__mega-title {
		font-family: var(--tdp-font-heading), "Russo One", Arial, Helvetica, sans-serif;
		font-size: var(--tdp-h4, 1.35rem);
		font-weight: 400;
		letter-spacing: var(--tdp-heading-tracking, 0.02em);
		text-transform: uppercase;
		margin: 0;
		line-height: var(--tdp-heading-line, 1.12);
		color: #fff;
	}

	.tdp-mega-nav__mega-title a {
		color: inherit;
		text-decoration: none;
		transition: color 0.2s ease;
	}

	.tdp-mega-nav__mega-title a:hover,
	.tdp-mega-nav__mega-title a:focus-visible {
		color: var(--tdp-primary, #e51b20);
	}

	.tdp-mega-nav__mega-desc {
		font-family: var(--tdp-font-body), "Poppins", sans-serif;
		font-size: clamp(0.98rem, 1.05vw, 1.125rem);
		color: rgba(255, 255, 255, 0.72);
		line-height: 1.55;
		margin: 0.4rem 0 0;
	}

	.tdp-mega-nav__mega-desc p {
		font-size: inherit;
	}

	.tdp-mega-nav__mega-desc p:last-child {
		margin-bottom: 0;
	}

	.tdp-mega-nav__mega-related {
		flex: 0 0 auto;
	}

	.tdp-mega-nav__mega-related-title {
		font-family: var(--tdp-font-heading), "Russo One", Arial, Helvetica, sans-serif;
		font-size: 0.7rem;
		font-weight: 400;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.5);
		margin: 0 0 0.45rem;
	}

	.tdp-mega-nav__mega-related--fallback {
		padding-top: calc(var(--tdp-mega-menu-gap) + 2px);
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}

	.tdp-mega-nav__mega-fallback-section + .tdp-mega-nav__mega-fallback-section {
		margin-top: calc(var(--tdp-mega-menu-gap) + 2px);
		padding-top: calc(var(--tdp-mega-menu-gap) + 2px);
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}

	.tdp-mega-nav__mega-related-pills {
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 0.3rem;
		max-width: min(100%, 22rem);
	}

	.tdp-mega-nav__mega-related-pill {
		display: flex;
		align-items: center;
		padding: 0.4rem 0.75rem;
		font-family: var(--tdp-font-body), "Poppins", sans-serif;
		font-size: 0.8125rem;
		font-weight: 500;
		line-height: 1.35;
		color: rgba(255, 255, 255, 0.9);
		background: rgba(255, 255, 255, 0.06);
		border: 1px solid rgba(255, 255, 255, 0.1);
		border-radius: 0.4rem;
		text-decoration: none;
		transition:
			color 0.2s ease,
			background 0.2s ease,
			border-color 0.2s ease;
	}

	.tdp-mega-nav__mega-related-pill:hover,
	.tdp-mega-nav__mega-related-pill:focus-visible {
		outline: none;
		color: #fff;
		background: rgba(229, 27, 32, 0.15);
		border-color: rgba(229, 27, 32, 0.45);
	}

	.tdp-mega-nav__mega-related-list {
		list-style: none;
		margin: 0;
		padding: calc(var(--tdp-mega-menu-gap) + 2px) 0 0;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		display: flex;
		flex-wrap: wrap;
		column-gap: 1rem;
		row-gap: 0.35rem;
	}

	.tdp-mega-nav__mega-related--fallback .tdp-mega-nav__mega-related-list {
		padding-top: 0;
		border-top: none;
	}

	.tdp-mega-nav__mega-related-list--grid {
		column-gap: 1rem;
		row-gap: 0.3rem;
		align-items: flex-start;
	}

	.tdp-mega-nav__mega-related-list li {
		flex: 1 1 12rem;
		min-width: 10rem;
	}

	.tdp-mega-nav__mega-related-list--grid li {
		flex: 1 1 14rem;
		min-width: 0;
	}

	.tdp-mega-nav__mega-related-list a {
		font-family: var(--tdp-font-body), "Poppins", sans-serif;
		font-size: 0.875rem;
		font-weight: 500;
		color: rgba(255, 255, 255, 0.88);
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 0.18em;
		transition:
			color 0.2s ease,
			text-decoration-color 0.2s ease;
	}

	.tdp-mega-nav__mega-related-list a:hover,
	.tdp-mega-nav__mega-related-list a:focus-visible {
		color: var(--tdp-primary, #e51b20);
		text-decoration-color: rgba(229, 27, 32, 0.65);
	}

	.tdp-mega-nav__mega-panel {
		display: flex;
		flex-direction: column;
		flex: none;
		min-height: 0;
		width: 100%;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.35s cubic-bezier(0.22, 1, 0.36, 1);
		z-index: 0;
	}

	.tdp-mega-nav__mega-panel.is-active {
		opacity: 1;
		pointer-events: auto;
		z-index: 2;
	}

	@media (prefers-reduced-motion: reduce) {
		.tdp-mega-nav__mega-panel {
			transition-duration: 0.01ms;
		}

		.tdp-mega-nav__mega-hit {
			transition-duration: 0.01ms;
		}
	}
}
