/* ── Footer ──────────────────────────────────────────── */

/* ── Main section (primary blue) ─────────────────────── */
.footer-main {
	background: linear-gradient(90deg, #137FD8 0%, #035FAA 100%);
	padding: var(--space-8) var(--space-6);
}

.footer-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-6);
	align-items: center;
}

/* ── Brand column (left) ─────────────────────────────── */
.footer-brand {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.footer-logo-link {
	display: inline-flex;
}

.footer-tagline {
	color: #ffffff;
	font-family: var(--font-family-heading);
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.4;
	margin: 1rem 0 0.2rem;
	/* max-width: 340px; */
}

.footer-sub {
	color: rgba(255, 255, 255, 0.8);
	font-size: 1rem;
	margin: 0 0 1rem;
}

.footer-cta {
	display: flex;
	gap: var(--space-4);
	flex-wrap: wrap;
}
.footer-cta .propcycle-button-white {
	font-size: 1em;
	padding: 0.5em 1.2em;
	min-height: 44px;
}

/* ── Right column ────────────────────────────────────── */
.footer-right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: var(--space-5);
}

/* Secondary nav (About, Contact, Security) */
.footer-secondary-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: var(--space-2) var(--space-3);
}
.footer-secondary-menu li {
	white-space: nowrap;
	display: flex;
	gap: var(--space-3);
}
.footer-secondary-menu li + li::before {
	content: '';
	background-color: rgba(255, 255, 255, 0.4);
	width:5px;
	height: 5px;
	border-radius: 5px;
	align-self: center
}

.footer-secondary-menu a {
	display: inline-flex;
	color: #ffffff;
	text-decoration: none;
	font-size: 1rem;
	font-weight: 600;
	transition: transform 0.2s ease, color 0.2s ease;
}

.footer-secondary-menu a:hover {
	transform: scale(1.05);
}

/* Social links */
.footer-social {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-radius: 35px;
	padding: var(--space-3) var(--space-3) var(--space-3) var(--space-5);
	flex-wrap: wrap;
	justify-content: center;
}

.footer-social-label {
	color: rgba(255, 255, 255, 0.9);
	font-size: 1rem;
	white-space: nowrap;
}

.footer-social-links {
	display: flex;
	gap: var(--space-3);
}

.social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	color: #ffffff;
	background-color: rgba(0,0,0,0.1);
	transition: transform 0.2s ease;
	border-radius: 100px;
}

.social-icon {
	display: block;
	width: 20px;
	height: 20px;
}

.social-link:hover {
	transform: scale(1.2);
}

/* ── Bottom bar (darker blue) ────────────────────────── */
.footer-bottom {
	background: #0d5c9e;
	padding: var(--space-3) var(--space-6);
}

.footer-bottom-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--space-3) var(--space-3);
}

.footer-copyright {
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.85rem;
	margin: 0;
	display: flex;
	align-items: center;
	line-height: 1;
}

.footer-legal-menu {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: var(--space-3);
	flex-wrap: wrap;
	justify-content: center;
}
.footer-legal-menu li {
	display: flex;
	gap: var(--space-3);
}

.footer-legal-menu li::before {
	content: '';
	display:flex;
	background-color: rgba(255, 255, 255, 0.4);
	width:4px;
	height: 4px;
	border-radius: 5px;
	align-self: center
}

.footer-legal-menu a {
	color: rgba(255, 255, 255, 0.75);
	text-decoration: none;
	font-size: 0.85rem;
	white-space: nowrap;
}

.footer-legal-menu a:hover {
	color: #ffffff;
}

/* ── Responsive ──────────────────────────────────────── */
@media ( max-width: 768px ) {
	.footer-inner {
		grid-template-columns: 1fr;
		gap: var(--space-7);
	}
	.footer-brand {
		justify-content: center;
		align-items: center;
		text-align: center;
	}

	.footer-right {
		align-items: center;
	}

	.footer-secondary-menu {
		justify-content: center;
	}

	.footer-social {
		align-self: center;
	}

	.footer-bottom-inner {
		gap: var(--space-2);
		text-align: center;
	}
}
