/**
 * MKAACF UI Upgrade v1.2 — design tokens & component polish
 */

:root {
	--mkaacf-red: #dc2223;
	--mkaacf-red-dark: #b81c1d;
	--mkaacf-red-deep: #8f1516;
	--mkaacf-red-glow: rgba(220, 34, 35, 0.28);
	--mkaacf-red-soft: rgba(220, 34, 35, 0.08);
	--mkaacf-black: #111111;
	--mkaacf-charcoal: #1a1a1a;
	--mkaacf-gray-700: #333333;
	--mkaacf-gray-500: #666666;
	--mkaacf-gray-300: #cccccc;
	--mkaacf-sand: #f7f3ee;
	--mkaacf-white: #ffffff;
	--mkaacf-radius-sm: 6px;
	--mkaacf-radius-md: 12px;
	--mkaacf-radius-lg: 20px;
	--mkaacf-radius-pill: 999px;
	--mkaacf-shadow-sm: 0 2px 12px rgba(17, 17, 17, 0.06);
	--mkaacf-shadow-md: 0 12px 40px rgba(17, 17, 17, 0.1);
	--mkaacf-shadow-lg: 0 24px 64px rgba(17, 17, 17, 0.14);
	--mkaacf-shadow-red: 0 8px 28px var(--mkaacf-red-glow);
	--mkaacf-ease: cubic-bezier(0.4, 0, 0.2, 1);
	--mkaacf-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--mkaacf-transition: 0.35s var(--mkaacf-ease);
}

/* ── Global polish ── */
html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

::selection {
	background: var(--mkaacf-red);
	color: var(--mkaacf-white);
}

body.mkaacf-ui-v2 {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ── Header / Nav ── */
.mkaacf-ui-v2 .primary-nav {
	border-bottom: 1px solid transparent;
	transition: border-color var(--mkaacf-transition), box-shadow var(--mkaacf-transition), background var(--mkaacf-transition);
}

.mkaacf-ui-v2 .primary-nav--scrolled {
	border-bottom-color: rgba(17, 17, 17, 0.06);
}

.mkaacf-ui-v2 .primary-nav__menu-item__title {
	position: relative;
	transition: color var(--mkaacf-transition);
}

@media (min-width: 768px) {
	.mkaacf-ui-v2 .primary-nav__menu-item__title::after {
		content: "";
		position: absolute;
		left: 50%;
		bottom: -4px;
		width: 0;
		height: 2px;
		background: var(--mkaacf-red);
		transition: width var(--mkaacf-transition), left var(--mkaacf-transition);
	}

	.mkaacf-ui-v2 .primary-nav__menu-item:hover .primary-nav__menu-item__title::after,
	.mkaacf-ui-v2 .primary-nav__menu-item.js-menu-btn-wrapper.is-open .primary-nav__menu-item__title::after,
	.mkaacf-ui-v2 .primary-nav__menu-item.js-menu-btn-wrapper.active .primary-nav__menu-item__title::after,
	.mkaacf-ui-v2 .primary-nav__menu-item[aria-expanded="true"] .primary-nav__menu-item__title::after {
		width: 100%;
		left: 0;
	}

	.mkaacf-ui-v2 .primary-nav__sub-menu {
		border-radius: 0 0 var(--mkaacf-radius-md) var(--mkaacf-radius-md);
		box-shadow: var(--mkaacf-shadow-lg);
		border-top: 3px solid var(--mkaacf-red);
	}
}

@keyframes mkaacf-menu-in {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

.mkaacf-ui-v2 .llumar-btn-primary .cmp-button,
.mkaacf-ui-v2 .llumar-btn-primary a.cmp-button {
	border-radius: var(--mkaacf-radius-pill);
	box-shadow: var(--mkaacf-shadow-red);
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition), background var(--mkaacf-transition);
}

.mkaacf-ui-v2 .llumar-btn-primary .cmp-button:hover,
.mkaacf-ui-v2 .llumar-btn-primary a.cmp-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px var(--mkaacf-red-glow);
}

.mkaacf-ui-v2 .js-search-flyout.search-show {
	border-radius: var(--mkaacf-radius-md);
	box-shadow: var(--mkaacf-shadow-md);
	border: 1px solid rgba(17, 17, 17, 0.06);
	animation: mkaacf-menu-in 0.3s var(--mkaacf-ease-out);
}

.mkaacf-ui-v2 .hamburger-btn .slice {
	transition: transform var(--mkaacf-transition), opacity var(--mkaacf-transition);
}

.mkaacf-ui-v2 .primary-nav .hamburger-btn[aria-expanded="true"] .slice:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.mkaacf-ui-v2 .primary-nav .hamburger-btn[aria-expanded="true"] .slice:nth-child(2) {
	opacity: 0;
}

.mkaacf-ui-v2 .primary-nav .hamburger-btn[aria-expanded="true"] .slice:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* ── Hero ── */
.mkaacf-ui-v2 .hero-banner {
	position: relative;
	overflow: hidden;
}

.mkaacf-ui-v2 .cmp-teaser__carousel--overlay {
	position: relative;
}

.mkaacf-ui-v2 .cmp-teaser__carousel--overlay::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		105deg,
		rgba(17, 17, 17, 0.72) 0%,
		rgba(17, 17, 17, 0.45) 42%,
		rgba(17, 17, 17, 0.08) 100%
	);
	pointer-events: none;
	z-index: 1;
}

.mkaacf-ui-v2 .cmp-showCase__content {
	position: relative;
	z-index: 2;
}

.mkaacf-ui-v2 .cmp-showCase__title {
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.35);
	letter-spacing: -0.02em;
	line-height: 1.08;
}

.mkaacf-ui-v2 .cmp-showCase__subheading {
	max-width: 520px;
	line-height: 1.65;
	opacity: 0.95;
}

.mkaacf-ui-v2 .cmp-showCase__content-wrap::before {
	content: "";
	display: block;
	width: 48px;
	height: 4px;
	background: var(--mkaacf-red);
	border-radius: var(--mkaacf-radius-pill);
	margin-bottom: 20px;
}

.mkaacf-ui-v2 .llumar-hero-btn {
	position: relative;
	overflow: hidden;
	border-radius: var(--mkaacf-radius-pill) !important;
	padding: 16px 32px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	box-shadow: var(--mkaacf-shadow-red);
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition) !important;
}

.mkaacf-ui-v2 .llumar-hero-btn::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(120deg, transparent 30%, rgba(255, 255, 255, 0.18) 50%, transparent 70%);
	transform: translateX(-120%);
	transition: transform 0.6s var(--mkaacf-ease);
}

.mkaacf-ui-v2 .llumar-hero-btn:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 36px var(--mkaacf-red-glow);
}

.mkaacf-ui-v2 .llumar-hero-btn:hover::before {
	transform: translateX(120%);
}

.mkaacf-ui-v2 .llumar-hero-arrow {
	transition: transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .llumar-hero-btn:hover .llumar-hero-arrow {
	transform: translateX(4px);
}

/* Hero subtle parallax layer */
.mkaacf-ui-v2 .hero-banner .cmp-carousel__image {
	transition: transform 0.1s linear;
	will-change: transform;
}

/* ── Pathways ── */
.mkaacf-ui-v2 .pathways_v4__section_heading {
	position: relative;
	display: inline-block;
	letter-spacing: 0.12em;
}

.mkaacf-ui-v2 .pathways_v4__section_heading::after {
	content: "";
	display: block;
	width: 40px;
	height: 3px;
	background: var(--mkaacf-red);
	margin: 12px auto 0;
	border-radius: var(--mkaacf-radius-pill);
}

.mkaacf-ui-v2 .pathways_v4__tabs {
	background: var(--mkaacf-sand);
	border-radius: var(--mkaacf-radius-pill);
	padding: 6px;
	gap: 4px;
	box-shadow: inset 0 1px 3px rgba(17, 17, 17, 0.06);
}

.mkaacf-ui-v2 .pathways_v4__tab {
	border-radius: var(--mkaacf-radius-pill) !important;
	transition: background var(--mkaacf-transition), color var(--mkaacf-transition), box-shadow var(--mkaacf-transition), transform var(--mkaacf-transition) !important;
}

.mkaacf-ui-v2 .pathways_v4__tab--active {
	background: var(--mkaacf-white) !important;
	box-shadow: var(--mkaacf-shadow-sm);
	transform: scale(1.02);
}

.mkaacf-ui-v2 .pathways_v4__tab:not(.pathways_v4__tab--active):hover {
	background: rgba(255, 255, 255, 0.6);
}

.mkaacf-ui-v2 .pathways_v4__card {
	border-radius: var(--mkaacf-radius-lg);
	overflow: hidden;
	box-shadow: var(--mkaacf-shadow-md);
	transition: box-shadow var(--mkaacf-transition), transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .pathways_v4__card--active {
	box-shadow: var(--mkaacf-shadow-lg);
}

.mkaacf-ui-v2 .pathways_v4__card_primary_media,
.mkaacf-ui-v2 .pathways_v4__card_cutout_media {
	transition: transform 0.6s var(--mkaacf-ease-out);
}

.mkaacf-ui-v2 .pathways_v4__card--active .pathways_v4__card_primary_media {
	transform: scale(1.03);
}

.mkaacf-ui-v2 .pathways_v4__btn--primary {
	border-radius: var(--mkaacf-radius-pill) !important;
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition), background var(--mkaacf-transition) !important;
}

.mkaacf-ui-v2 .pathways_v4__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: var(--mkaacf-shadow-red);
}

.mkaacf-ui-v2 .pathways_v4__icon_wrapper {
	background: var(--mkaacf-red-soft);
	border-radius: 50%;
	padding: 10px;
	transition: background var(--mkaacf-transition), transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .pathways_v4__icon_text_item:hover .pathways_v4__icon_wrapper {
	background: rgba(220, 34, 35, 0.14);
	transform: scale(1.08);
}

/* ── Why MKAACF (dark highlight) ── */
.mkaacf-ui-v2 .highlight_feature-bg-dark {
	background: linear-gradient(145deg, #0d0d0d 0%, #1a1a1a 50%, #121212 100%) !important;
}

.mkaacf-ui-v2 .highlight_feature__feature {
	border-radius: var(--mkaacf-radius-md);
	padding: 16px;
	transition: background var(--mkaacf-transition), transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .highlight_feature__feature:hover {
	background: rgba(255, 255, 255, 0.05);
	transform: translateY(-4px);
}

.mkaacf-ui-v2 .highlight_feature__feature_icon {
	transition: transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .highlight_feature__feature:hover .highlight_feature__feature_icon {
	transform: scale(1.1);
}

/* ── Product overview cards ── */
.mkaacf-ui-v2 .cmp-product-overview__card {
	border-radius: var(--mkaacf-radius-lg) !important;
	overflow: hidden;
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition) !important;
	border: 1px solid rgba(17, 17, 17, 0.04);
}

.mkaacf-ui-v2 .cmp-product-overview__card:hover {
	transform: translateY(-8px);
	box-shadow: var(--mkaacf-shadow-lg);
}

.mkaacf-ui-v2 .cmp-product-overview__arrow-svg {
	transition: transform var(--mkaacf-transition);
}

.mkaacf-ui-v2 .cmp-product-overview__card:hover .cmp-product-overview__arrow-svg {
	transform: translate(4px, -4px);
}

.mkaacf-ui-v2 .cmp-product-overview__check-icon path {
	transition: fill var(--mkaacf-transition);
}

.mkaacf-ui-v2 .cmp-product-overview__bullet-item:hover .cmp-product-overview__check-icon path {
	fill: var(--mkaacf-red-dark);
}

/* ── Highlight heading sections ── */
.mkaacf-ui-v2 .highlight_heading__red_rule {
	height: 4px !important;
	border-radius: var(--mkaacf-radius-pill);
	background: var(--mkaacf-red) !important;
}

.mkaacf-ui-v2 .highlight_heading__img {
	border-radius: var(--mkaacf-radius-lg);
	transition: transform 0.6s var(--mkaacf-ease-out), box-shadow var(--mkaacf-transition);
}

.mkaacf-ui-v2 .highlight_heading__image_wrapper:hover .highlight_heading__img {
	transform: scale(1.02);
	box-shadow: var(--mkaacf-shadow-md);
}

.mkaacf-ui-v2 .highlight_heading__btn--primary,
.mkaacf-ui-v2 .highlight_feature__btn--primary {
	border-radius: var(--mkaacf-radius-pill) !important;
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition) !important;
}

.mkaacf-ui-v2 .highlight_heading__btn--primary:hover,
.mkaacf-ui-v2 .highlight_feature__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: var(--mkaacf-shadow-red);
}

.mkaacf-ui-v2 .highlight_heading-bg-dark {
	background: linear-gradient(135deg, #111 0%, #1c1c1c 100%) !important;
}

.mkaacf-ui-v2 .highlight_heading__icon_wrapper {
	background: var(--mkaacf-red-soft);
	border-radius: 50%;
	padding: 8px;
}

/* ── Footer ── */
.mkaacf-ui-v2 .footer {
	background: linear-gradient(180deg, #fafafa 0%, #f0eeea 100%);
}

.mkaacf-ui-v2 .top-footer {
	border-bottom: 1px solid rgba(17, 17, 17, 0.06);
}

.mkaacf-ui-v2 .top-footer__search-section .search-input {
	border-radius: var(--mkaacf-radius-pill);
	border: 1px solid rgba(17, 17, 17, 0.1);
	padding-left: 20px;
	transition: border-color var(--mkaacf-transition), box-shadow var(--mkaacf-transition);
}

.mkaacf-ui-v2 .top-footer__search-section .search-input:focus {
	border-color: var(--mkaacf-red);
	box-shadow: 0 0 0 3px var(--mkaacf-red-soft);
	outline: none;
}

.mkaacf-ui-v2 .icon-footer__icon a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--mkaacf-white);
	box-shadow: var(--mkaacf-shadow-sm);
	transition: transform var(--mkaacf-transition), box-shadow var(--mkaacf-transition), background var(--mkaacf-transition);
}

.mkaacf-ui-v2 .icon-footer__icon a:hover {
	transform: translateY(-3px);
	box-shadow: var(--mkaacf-shadow-md);
	background: var(--mkaacf-red);
}

.mkaacf-ui-v2 .icon-footer__icon a:hover img {
	filter: brightness(0) invert(1);
}

.mkaacf-ui-v2 .footer__disclaimer {
	background: var(--mkaacf-charcoal);
	color: rgba(255, 255, 255, 0.75);
}

.mkaacf-ui-v2 .bottom-footer__link-details {
	transition: color var(--mkaacf-transition), padding-left var(--mkaacf-transition);
}

.mkaacf-ui-v2 .bottom-footer__link-details:hover {
	color: var(--mkaacf-red) !important;
	padding-left: 4px;
}

/* ── Back to top (enhanced) ── */
.mkaacf-ui-v2 .mkaacf-back-to-top {
	background: linear-gradient(135deg, var(--mkaacf-red) 0%, var(--mkaacf-red-dark) 100%);
}

.mkaacf-ui-v2 .mkaacf-back-to-top:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px var(--mkaacf-red-glow);
}

/* ── Scroll reveal stagger ── */
.mkaacf-ui-v2 .mkaacf-reveal.mkaacf-reveal--delay-1 { transition-delay: 0.1s; }
.mkaacf-ui-v2 .mkaacf-reveal.mkaacf-reveal--delay-2 { transition-delay: 0.2s; }
.mkaacf-ui-v2 .mkaacf-reveal.mkaacf-reveal--delay-3 { transition-delay: 0.3s; }

/* ── Disclaimer bar on homepage ── */
.mkaacf-ui-v2 .cmp-experiencefragment--product-availability-disclaimer .cmp-text {
	background: var(--mkaacf-sand);
	border-left: 4px solid var(--mkaacf-red);
	border-radius: 0 var(--mkaacf-radius-sm) var(--mkaacf-radius-sm) 0;
	padding: 16px 20px;
}

.mkaacf-ui-v2 .cmp-experiencefragment--product-availability-disclaimer a {
	color: var(--mkaacf-red);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ── Mobile refinements ── */
@media (max-width: 767.98px) {
	.mkaacf-ui-v2 .pathways_v4__tabs {
		border-radius: var(--mkaacf-radius-md);
		flex-wrap: wrap;
	}

	.mkaacf-ui-v2 .cmp-showCase__content-wrap::before {
		width: 32px;
		margin-bottom: 14px;
	}

	.mkaacf-ui-v2 .llumar-hero-btn {
		width: 100%;
		justify-content: center;
		text-align: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mkaacf-ui-v2 .pathways_v4__card_primary_media,
	.mkaacf-ui-v2 .highlight_heading__img,
	.mkaacf-ui-v2 .hero-banner .cmp-carousel__image {
		transition: none !important;
		transform: none !important;
	}
}
