footer {
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer {
	width: calc(100% - 4em);
	max-width: 75em;
	margin: 0 auto;
	padding: 2.75em 0 2em 0;
	font-size: 1em;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: top center;
	gap: 2em;

	&>div {
		display: flex;
		flex-direction: column;
		gap: 1em;
	}

	p {
		color: rgba(255, 255, 255, 0.95);
		font-weight: 500;
		margin: 0;
		height: 2.25em;
	}
}

.footer-item {
	color: #dde4fd80;
	transition: 0.2s;

	&:hover {
		color: #fff;
	}
}

.footer-disabled {
	color: #dde4fd30;
}

.footer-copyright {
	img {
		width: 2.25em;
	}

	a {
		font-size: 1.25em;
		font-weight: 600;
	}

	p {
		font-size: 1em;
		font-weight: 400;
		color: #dde4fd4d;
		margin-top: -0.4em;
	}
}

/* Center and wrap footer elements on mobile */
@media (max-width: 48em) {
	.footer {
		flex-wrap: wrap;
		justify-content: center;
		gap: 4em;
	}

	.footer-copyright {
		width: 100%;
	}

	.footer-column {
		flex: 1;
	}
}

/* Logo Zoom Overlay Styles */
.logo-zoom-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.95);
    z-index: 10000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    align-items: flex-start;
    padding: 3vw;
    box-sizing: border-box;
}

.logo-zoom-overlay.active {
    opacity: 1;
    pointer-events: auto;
}

.logo-zoom-back {
    width: 3em;
    height: 3em;
    cursor: pointer;
    transition: all 0.3s ease;
    filter: invert(1); /* Turns the black SVG white */
    opacity: 0.6;
}

.logo-zoom-back:hover {
    transform: scale(1.1);
    opacity: 1;
}