/**
 * Premium Dark Footer — 3 Zones.
 *
 * CSS variables (set via inline style):
 *   --ft-bg              main footer bg
 *   --ft-bot-bg          bottom copyright bar bg
 *   --ft-text            body text color
 *   --ft-muted           muted / secondary text
 *   --ft-heading         heading color
 *   --ft-accent          accent / link hover color
 *   --ft-heading-size    column heading font size
 *   --ft-pad             section vertical padding
 *
 * @package DroxAuto
 */

/* ─── Reset ─── */
.drox-footer,
.drox-footer *,
.drox-footer *::before,
.drox-footer *::after {
	box-sizing: border-box;
}

.drox-footer {
	font-family: "Barlow", system-ui, sans-serif;
	color: var(--ft-text, #c0c0d0);
	line-height: 1.6;
}

.drox-footer a {
	color: var(--ft-text, #c0c0d0);
	text-decoration: none;
	transition: color 0.2s;
}

.drox-footer a:hover {
	color: var(--ft-accent, #f5700a);
}

/* =====================================================================
 * ZONE 1 — 4-Column Grid
 * =================================================================== */

.drox-ft-main {
	background: var(--ft-bg, #1a1a2e);
	padding: var(--ft-pad, 56px) 0;
}

.drox-ft-main__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	display: grid;
	grid-template-columns: 1.3fr 1fr 1fr 1.2fr;
	gap: 40px;
}

/* Column heading */
.drox-ft-col__heading {
	font-family: "Barlow Condensed", system-ui, sans-serif;
	font-size: var(--ft-heading-size, 16px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--ft-heading, #ffffff);
	margin: 0 0 20px;
	position: relative;
	padding-bottom: 12px;
}

.drox-ft-col__heading::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 2px;
	background: var(--ft-accent, #f5700a);
	border-radius: 1px;
}

/* ─── About column ─── */
.drox-ft-about__logo {
	height: 40px;
	width: auto;
	max-width: 180px;
	object-fit: contain;
	margin-bottom: 16px;
}

.drox-ft-about__desc {
	font-size: 14px;
	color: var(--ft-muted, #8888a0);
	margin: 0 0 20px;
	line-height: 1.7;
}

/* Social icons */
.drox-ft-social {
	display: flex;
	gap: 10px;
}

.drox-ft-social__link {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	background: rgba(var(--ft-heading-rgb, 255, 255, 255), 0.06);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.25s, transform 0.25s;
}

.drox-ft-social__link:hover {
	background: var(--ft-accent, #f5700a);
	transform: translateY(-2px);
}

.drox-ft-social__link svg {
	width: 16px;
	height: 16px;
	color: var(--ft-heading, #fff);
}

/* ─── Link columns (2 & 3) ─── */
.drox-ft-links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.drox-ft-links li {
	margin-bottom: 10px;
}

.drox-ft-links a {
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.drox-ft-links a::before {
	content: "";
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--ft-accent, #f5700a);
	opacity: 0;
	transition: opacity 0.2s;
	flex-shrink: 0;
}

.drox-ft-links a:hover::before {
	opacity: 1;
}

/* ─── Contact column ─── */
.drox-ft-contact {
	list-style: none;
	margin: 0;
	padding: 0;
}

.drox-ft-contact li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 16px;
	font-size: 14px;
}

.drox-ft-contact__icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	margin-top: 2px;
	stroke: var(--ft-accent, #f5700a);
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.drox-ft-contact__label {
	font-weight: 600;
	color: var(--ft-heading, #ffffff);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	display: block;
	margin-bottom: 2px;
}

/* =====================================================================
 * ZONE 2 — Payment & Trust Bar
 * =================================================================== */

.drox-ft-payment {
	background: var(--ft-bg, #1a1a2e);
	border-top: 1px solid rgba(var(--ft-heading-rgb, 255, 255, 255), 0.06);
	padding: 20px 0;
}

.drox-ft-payment__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.drox-ft-payment__text {
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--ft-muted, #8888a0);
	white-space: nowrap;
}

.drox-ft-payment__icons {
	display: flex;
	gap: 12px;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

.drox-ft-payment__icon {
	height: 28px;
	width: auto;
	opacity: 0.7;
	transition: opacity 0.25s, transform 0.25s;
}

.drox-ft-payment__icon:hover {
	opacity: 1;
	transform: translateY(-1px);
}

/* =====================================================================
 * ZONE 3 — Copyright Bottom Bar
 * =================================================================== */

.drox-ft-bottom {
	background: var(--ft-bot-bg, #111128);
	padding: var(--ft-bot-pad, 16px) 0;
}

.drox-ft-bottom__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
}

/* When legal links exist, spread copyright left / links right */
.drox-ft-bottom__inner:has(.drox-ft-bottom__legal) {
	justify-content: space-between;
}

.drox-ft-bottom__copy {
	font-size: 13px;
	color: var(--ft-muted, #8888a0);
	margin: 0;
}

.drox-ft-bottom__legal {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 20px;
}

.drox-ft-bottom__legal a {
	font-size: 12px;
	color: var(--ft-muted, #8888a0);
}

.drox-ft-bottom__legal a:hover {
	color: var(--ft-accent, #f5700a);
}

/* =====================================================================
 * RESPONSIVE
 * =================================================================== */

@media (max-width: 991px) {
	.drox-ft-main__inner {
		grid-template-columns: 1fr 1fr;
		gap: 32px;
		padding: 0 24px;
	}

	.drox-ft-payment__inner,
	.drox-ft-bottom__inner {
		padding: 0 24px;
	}
}

@media (max-width: 639px) {
	.drox-ft-main__inner {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 0 20px;
		text-align: center;
	}

	.drox-ft-col__heading::after {
		left: 50%;
		transform: translateX(-50%);
	}

	.drox-ft-social {
		justify-content: center;
	}

	.drox-ft-links a::before {
		display: none;
	}

	.drox-ft-contact li {
		justify-content: center;
		text-align: left;
	}

	.drox-ft-bottom__inner {
		justify-content: center;
		text-align: center;
		padding: 0 20px;
	}

	.drox-ft-bottom__legal {
		justify-content: center;
		flex-wrap: wrap;
		gap: 12px;
	}

	.drox-ft-payment__inner {
		padding: 0 20px;
	}
}
