/* =========================================================================
   Zul'Novar custom footer (drop-in for the Avanam parent theme)
   Self-contained — no dependency on parent theme CSS variables.
   Specificity bumped with body prefix + !important on key visuals so this
   wins against Avanam's late-loaded footer styles.
   ========================================================================= */

body .zulnovar-footer,
.zulnovar-footer {
	background: #1A1A1A !important;
	color: #C9C9C9 !important;
	padding: 64px 0 0 !important;
	margin: 80px 0 0 !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
body.home .zulnovar-footer,
.home .zulnovar-footer { margin-top: 0 !important; }

.zulnovar-footer * { box-sizing: border-box; }

.zulnovar-footer .container {
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
	width: 100% !important;
}

body .zulnovar-footer .footer-grid,
.zulnovar-footer .footer-grid {
	display: grid !important;
	grid-template-columns: 1.4fr 1fr 1fr 1fr 1.3fr !important;
	gap: 48px !important;
	padding-bottom: 48px !important;
	border-bottom: 1px solid #3A3A3A !important;
	margin: 0 !important;
}

.zulnovar-footer .footer-col h4 {
	font-size: 14px !important;
	color: #fff !important;
	margin: 0 0 20px !important;
	letter-spacing: 1.5px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	font-family: inherit !important;
}

.zulnovar-footer .footer-col p,
.zulnovar-footer .footer-col .footer-menu,
.zulnovar-footer .footer-col .footer-menu li,
.zulnovar-footer .footer-col address {
	font-size: 13px !important;
	line-height: 1.9 !important;
	color: #9E9B92 !important;
	font-style: normal !important;
}

.zulnovar-footer .footer-col a {
	color: #9E9B92 !important;
	text-decoration: none !important;
	transition: color .2s ease;
	background: none !important;
}
.zulnovar-footer .footer-col a:hover { color: #fff !important; }

.zulnovar-footer .footer-logo {
	font-size: 24px !important;
	letter-spacing: 4px !important;
	color: #fff !important;
	margin: 0 0 24px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
}
.zulnovar-footer .footer-logo--text { display: block; }
.zulnovar-footer img.footer-logo { max-width: 200px; height: auto; }

.zulnovar-footer .footer-address { margin: 0 0 14px !important; }

.zulnovar-footer .footer-menu {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.zulnovar-footer .footer-menu li {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.zulnovar-footer .footer-menu a { display: block; padding: 4px 0; }

.zulnovar-footer .footer-social {
	display: flex !important;
	gap: 10px !important;
	margin-top: 20px !important;
	flex-wrap: wrap !important;
}
.zulnovar-footer .footer-social__link {
	width: 36px !important; height: 36px !important;
	border-radius: 50% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #fff !important;
	background: #333;
	transition: transform 0.2s, box-shadow 0.2s, filter 0.2s;
	text-decoration: none !important;
}
.zulnovar-footer .footer-social__link svg { width: 18px; height: 18px; }
.zulnovar-footer .footer-social__link:hover {
	transform: translateY(-2px);
	filter: brightness(1.1);
	box-shadow: 0 4px 14px rgba(0,0,0,0.3);
}

/* Brand colours */
.zulnovar-footer .footer-social__link[aria-label="Facebook"]  { background: transparent !important; color: #1877F2 !important; }
.zulnovar-footer .footer-social__link[aria-label="Facebook"] svg { width: 36px; height: 36px; }
.zulnovar-footer .footer-social__link[aria-label="Instagram"] { background: linear-gradient(45deg, #F58529 0%, #DD2A7B 35%, #8134AF 65%, #515BD4 100%) !important; }
.zulnovar-footer .footer-social__link[aria-label="Youtube"]   { background: #FF0000 !important; }
.zulnovar-footer .footer-social__link[aria-label="Linkedin"]  { background: #0A66C2 !important; }

/* Newsletter */
.zulnovar-footer .footer-newsletter {
	display: flex !important;
	border-bottom: 1px solid #555 !important;
	padding-bottom: 8px !important;
	margin: 14px 0 20px !important;
	background: transparent !important;
}
.zulnovar-footer .footer-newsletter input {
	flex: 1 !important;
	background: transparent !important;
	border: none !important;
	color: #fff !important;
	font-size: 13px !important;
	outline: none !important;
	padding: 6px 0 !important;
	font-family: inherit !important;
	box-shadow: none !important;
}
.zulnovar-footer .footer-newsletter input::placeholder { color: #666 !important; }
.zulnovar-footer .footer-newsletter button {
	color: #fff !important;
	background: none !important;
	border: none !important;
	cursor: pointer;
	padding: 6px !important;
	display: inline-flex;
	box-shadow: none !important;
}
.zulnovar-footer .footer-newsletter__desc {
	font-size: 12px !important;
	line-height: 1.7 !important;
	color: #9E9B92 !important;
	margin: 0 0 6px !important;
}

/* Payment icons */
.zulnovar-footer .payment-methods {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin-top: 24px !important;
	align-items: center !important;
}
.zulnovar-footer .payment-methods__label {
	width: 100% !important;
	font-size: 9px !important;
	letter-spacing: 3.2px !important;
	text-transform: uppercase !important;
	color: #C9A96E !important;
	font-weight: 600 !important;
	margin-bottom: 6px !important;
}
.zulnovar-footer .payment-icon {
	background: transparent !important;
	border-radius: 5px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: transform .2s ease;
	overflow: hidden;
	padding: 0 !important;
}
.zulnovar-footer .payment-icon:hover { transform: translateY(-2px); }
.zulnovar-footer .payment-icon svg {
	display: block;
	height: 38px !important;
	width: auto !important;
}

/* Footer bottom */
body .zulnovar-footer .footer-bottom,
.zulnovar-footer .footer-bottom {
	padding: 24px 0 !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	font-size: 12px !important;
	color: #777 !important;
	border-top: none !important;
}
.zulnovar-footer .footer-copyright {
	margin: 0 !important;
	color: #777 !important;
}
.zulnovar-footer .footer-bottom__links {
	list-style: none !important;
	display: flex !important;
	gap: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
}
.zulnovar-footer .footer-bottom__links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.zulnovar-footer .footer-bottom__links a {
	color: #777 !important;
	text-decoration: none !important;
}
.zulnovar-footer .footer-bottom__links a:hover { color: #fff !important; }

/* Responsive */
@media (max-width: 1100px) {
	body .zulnovar-footer .footer-grid,
	.zulnovar-footer .footer-grid {
		grid-template-columns: 1fr 1fr 1fr !important;
		gap: 36px 32px !important;
	}
	.zulnovar-footer .footer-col--brand { grid-column: 1 / -1 !important; }
}

@media (max-width: 768px) {
	body .zulnovar-footer .footer-grid,
	.zulnovar-footer .footer-grid {
		grid-template-columns: 1fr 1fr !important;
		gap: 32px !important;
	}
	.zulnovar-footer .footer-col--brand { grid-column: 1 / -1 !important; }
}

@media (max-width: 600px) {
	body .zulnovar-footer,
	.zulnovar-footer {
		padding-top: 48px !important;
		margin-top: 48px !important;
	}
	body .zulnovar-footer .footer-grid,
	.zulnovar-footer .footer-grid {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
	.zulnovar-footer .footer-bottom {
		flex-direction: column !important;
		gap: 12px !important;
		text-align: center !important;
	}
	.zulnovar-footer .footer-bottom__links {
		justify-content: center !important;
		flex-wrap: wrap !important;
		gap: 16px !important;
	}
}

.zulnovar-footer .screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
