/**
 * CW Fightwear front UX — layout, brand scrub, catalog polish, sticky CTA readability.
 * Does NOT override Mega Menu / Header Builder / theme accent colors.
 * Accent comes from theme Customizer + Rekhi Mega Menu / Header admin settings.
 */

/* Sticky bar: keep CTA text readable (use theme accent vars, white label) */
.cw-pv__sticky {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 12px 16px !important;
	background: #0b0c10 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.cw-pv__sticky-hint {
	color: #f0f0f4 !important;
	font-weight: 600 !important;
}

.cw-pv__sticky .cw-pv__btn--primary,
.cw-pv__sticky .cw-btn--accent,
.cw-pv__actions .cw-pv__btn--primary {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background: var(--cw-accent, var(--rekhi-accent, #ff0000)) !important;
	border-color: var(--cw-accent, var(--rekhi-accent, #ff0000)) !important;
	min-height: 44px !important;
	padding: 10px 18px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.cw-pv__sticky .cw-pv__btn--primary *,
.cw-pv__sticky .cw-btn--accent * {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	fill: #ffffff;
	stroke: #ffffff;
}

/* ---------- Mobile header: search + WA + Get Quote row ---------- */
@media (max-width: 1024px) {
	.rekhi-hdr__brand-grid {
		display: grid !important;
		grid-template-columns: 1fr auto !important;
		grid-template-areas:
			"logo burger"
			"search search"
			"actions actions" !important;
		gap: 10px 12px !important;
		align-items: center !important;
	}

	.rekhi-hdr__brand-logo {
		grid-area: logo !important;
		justify-self: center !important;
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
	}

	.rekhi-hdr__burger-slot,
	.rekhi-hdr__brand-grid > .rmm-toggle {
		grid-area: burger !important;
		justify-self: end !important;
	}

	.rekhi-hdr__search-wrap {
		grid-area: search !important;
		width: 100% !important;
		max-width: none !important;
	}

	.rekhi-hdr__search {
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		min-height: 44px !important;
		height: 44px !important;
		box-sizing: border-box !important;
	}

	.rekhi-hdr__search-input {
		min-height: 44px !important;
		height: 44px !important;
		line-height: 1.2 !important;
	}

	.rekhi-hdr__email-pill {
		display: none !important;
	}

	.rekhi-hdr__actions {
		grid-area: actions !important;
		display: grid !important;
		grid-template-columns: 48px 1fr !important;
		gap: 10px !important;
		width: 100% !important;
		align-items: stretch !important;
		margin: 0 !important;
	}

	.rekhi-hdr__btn {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 44px !important;
		height: 44px !important;
		box-sizing: border-box !important;
		margin: 0 !important;
		padding: 0 14px !important;
		border-radius: 8px !important;
		line-height: 1 !important;
	}

	.rekhi-hdr__btn--wa {
		width: 48px !important;
		min-width: 48px !important;
		padding: 0 !important;
		background: #25d366 !important;
		border-color: #25d366 !important;
		color: #fff !important;
	}

	.rekhi-hdr__btn--wa .rekhi-hdr__btn-label {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip: rect(0, 0, 0, 0) !important;
		border: 0 !important;
	}

	.rekhi-hdr__btn--cta {
		width: 100% !important;
		/* Keep Header Builder accent — only force readable white label */
		color: #fff !important;
		font-weight: 700 !important;
		gap: 6px !important;
	}

	.rekhi-hdr__btn--cta svg {
		flex-shrink: 0;
	}
}

/* ---------- Mobile menu hierarchy (no color override of Mega Menu accent) ---------- */
@media (max-width: 1024px) {
	.rmm-is-mobile.rmm-is-open .rmm-menu > .menu-item > a,
	.rmm-is-mobile.rmm-is-open .rmm-menu > li > a,
	.rekhi-hdr__menu.rmm-is-open .rmm-menu > .menu-item > a {
		font-weight: 700 !important;
		font-size: 15px !important;
		letter-spacing: 0.02em !important;
		text-transform: none !important;
		padding: 14px 16px !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	}

	.rmm-is-mobile.rmm-is-open .sub-menu a,
	.rmm-is-mobile.rmm-is-open .rmm-sub a,
	.rmm-is-mobile.rmm-is-open .rmm-mega a,
	.rmm-is-mobile.rmm-is-open ul ul a {
		font-weight: 500 !important;
		font-size: 14px !important;
		padding: 10px 16px 10px 28px !important;
		border-bottom: 0 !important;
		opacity: 0.88;
	}

	.rmm-is-mobile.rmm-is-open .rmm-heading,
	.rmm-is-mobile.rmm-is-open .rmm-panel__title,
	.rmm-is-mobile.rmm-is-open .rmm-col__title,
	.rmm-is-mobile.rmm-is-open .rmm-link--heading {
		font-size: 12px !important;
		font-weight: 700 !important;
		letter-spacing: 0.08em !important;
		text-transform: uppercase !important;
		padding: 16px 16px 6px !important;
		/* color left to Mega Menu --rmm-heading-color */
	}
}

/* Desktop mega: typography hierarchy only — colors from Mega Menu admin */
.rmm-nav .rmm-heading,
.rmm-nav .rmm-panel__title,
.rmm-nav .rmm-col__title,
.rmm-nav .rmm-link--heading {
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
}

.rmm-nav .rmm-link--child {
	font-size: 14px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* ---------- Brand strip hide ---------- */
.cw-h7.cwfw-ar-brand-hide,
p.cw-h7[hidden].cwfw-ar-brand-hide {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
}

/* ---------- Catalog hub (layout only) ---------- */
.cw-catalog-hub {
	padding: clamp(2.5rem, 5vw, 4.5rem) 0 !important;
}

.cw-catalog-hub__head {
	max-width: 40rem;
	margin: 0 auto 2rem;
	text-align: center;
}

.cw-catalog-hub__eyebrow {
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 700;
}

.cw-catalog-hub__title {
	margin: 0.35rem 0 0.75rem !important;
}

.cw-catalog-hub__grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
	gap: 1.25rem !important;
}

.cw-catalog-hub__card {
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 14px !important;
	background: linear-gradient(180deg, #14141c 0%, #0b0c10 100%) !important;
	text-decoration: none !important;
	color: inherit !important;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
}

.cw-catalog-hub__card:hover,
.cw-catalog-hub__card:focus-visible {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}

.cw-catalog-hub__visual {
	aspect-ratio: 16 / 10;
	background-size: cover !important;
	background-position: center !important;
	position: relative;
}

.cw-catalog-hub__visual::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, 0.72) 100%);
}

.cw-catalog-hub__mark {
	display: none !important;
}

.cw-catalog-hub__body {
	padding: 1rem 1.1rem 1.2rem !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0.35rem !important;
	flex: 1 !important;
}

.cw-catalog-hub__body h3 {
	margin: 0 !important;
	font-size: 1.25rem !important;
}

.cw-catalog-hub__body p {
	margin: 0 !important;
	font-size: 0.92rem !important;
	line-height: 1.45 !important;
}

.cw-catalog-hub__cta {
	margin-top: auto !important;
	padding-top: 0.75rem !important;
	font-weight: 700 !important;
	font-size: 0.9rem !important;
}

.cw-catalog-hub + .cw-catalog-hub,
section.cw-catalog-hub--featured .cw-catalog-hub__grid,
.cw-catalog-hub__grid--featured {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
}

/* ---------- PDP readability (no forced orange titles) ---------- */
.single-product .cw-pv__chip,
.single-product .cw-pv__meta {
	color: #d7d9e0 !important;
	background: #16161f !important;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.single-product .cw-pv__body,
.single-product .cw-pv__copy,
.single-product .entry-summary,
.single-product .woocommerce-product-details__short-description {
	color: #f0f0f4 !important;
}

/* ---------- Theme footer vs Rekhi Footer Builder ---------- */
body.cwfw-has-rekhi-footer footer.cw-footer {
	display: none !important;
}

.rekhi-ftr {
	display: block !important;
	width: 100% !important;
	position: relative !important;
	z-index: 2;
}

.cw-footer__credit a {
	pointer-events: none;
	text-decoration: none !important;
}
