/*
CTC Separate Stylesheet
Updated: 2026-03-05 00:00:00
*/

﻿
/* --------------------------------------------------------------
 * Header primary navigation: modern desktop dropdown styling
 * Applies to all primary nav submenus (e.g. "Categories"),
 * scoped to desktop only so mobile drawer is unaffected.
 * -------------------------------------------------------------- */
@media screen and (min-width: 1025px) {
	/* Ensure dropdown parents don't clip rounded panels */
	.header-navigation .header-menu-container > ul > li.menu-item-has-children {
		position: relative;
		overflow: visible;
	}

	/* Dropdown panel container */
	.header-navigation ul ul.sub-menu,
	.header-navigation ul ul.submenu {
		background: #ffffff;
		border-radius: 14px;
		box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14);
		border: 1px solid rgba(15, 23, 42, 0.06);
		padding: 8px 6px;
		min-width: 220px;
		margin-top: 8px;
		overflow: visible;
		z-index: 50;
		transform-origin: top;
		animation: kd-submenu-fade-slide 0.16s ease-out;
	}

	/* Reset default list / divider styling for normal dropdowns (keep Account CTA custom separators) */
	.header-navigation .header-menu-container > ul > li.menu-item-has-children:not(.cta-account) .sub-menu li,
	.header-navigation .header-menu-container > ul > li.menu-item-has-children:not(.cta-account) ul.sub-menu li {
		margin: 0;
		border: 0;
		padding: 0;
	}

	.header-navigation .header-menu-container > ul > li.menu-item-has-children:not(.cta-account) .sub-menu li + li,
	.header-navigation .header-menu-container > ul > li.menu-item-has-children:not(.cta-account) ul.sub-menu li + li {
		border-top: none;
	}

	/* Menu item links: larger, rounded hit area */
	.header-navigation ul ul.sub-menu li > a,
	.header-navigation ul ul.submenu li > a {
		display: block;
		padding: 10px 12px;
		border-radius: 10px;
		font-size: 0.95rem;
		line-height: 1.4;
		text-decoration: none;
		color: #0f172a;
		transition:
			background-color 0.15s ease,
			color 0.15s ease,
			box-shadow 0.15s ease;
	}

	/* Hover + focus: subtle pill highlight, no underline */
	.header-navigation ul ul.sub-menu li > a:hover,
	.header-navigation ul ul.sub-menu li > a:focus,
	.header-navigation ul ul.submenu li > a:hover,
	.header-navigation ul ul.submenu li > a:focus {
		background-color: rgba(148, 163, 184, 0.12);
		color: #020617;
		outline: none;
		text-decoration: none;
	}

	/* Visible focus ring for keyboard navigation */
	.header-navigation ul ul.sub-menu li > a:focus-visible,
	.header-navigation ul ul.submenu li > a:focus-visible {
		box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.9);
		background-color: rgba(148, 163, 184, 0.16);
	}
}

@keyframes kd-submenu-fade-slide {
	from {
		opacity: 0;
		transform: translateY(6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* --------------------------------------------------------------
 * Footer: space above footer + legal links horizontal layout
 * -------------------------------------------------------------- */

/* Space between footer and previous section */
#colophon.site-footer {
	padding-top: 48px;
}

/* Align copyright, legal links, and social icons on same baseline */
.site-bottom-footer-inner-wrap {
	align-items: center;
}

/* Footer bottom section 2: legal links (Terms, Privacy, Cookies) – horizontal with dot separators */
.site-footer-bottom-section-2 .menu,
.site-footer-bottom-section-2 .footer-legal,
.footer-legal {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 0;
}

.site-footer-bottom-section-2 .menu li,
.site-footer-bottom-section-2 .footer-legal li,
.footer-legal li {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
}

.site-footer-bottom-section-2 .menu li:not(:last-child)::after,
.site-footer-bottom-section-2 .footer-legal li:not(:last-child)::after,
.footer-legal li:not(:last-child)::after {
	content: " · ";
	padding: 0 0.6em;
	margin: 0 0.1em;
	color: currentColor;
	opacity: 0.8;
	font-weight: 400;
}