.footer {
	background: var(--background-color);
	color: var(--text-color);
	padding: var(--padding-large);
	position: relative;
	overflow: hidden
}

.footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('ibz-footer-desktop.svg');
	background-size: 100% 100%;
	background-repeat: no-repeat;
	transform: scaleY(-1);
	z-index: 2;
	pointer-events: none
}

@media (max-width: 768px) {
	.footer::before {
		background-image:url('ibz-footer-mobile.svg');
		background-size: 100% 100%
	}
}

.footer-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 var(--padding-large);
	position: relative
}

.footer-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: var(--padding-large);
	margin-bottom: var(--padding-large);
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 10;
	margin-top: 120px;
	padding-top: 60px
}

.footer-column h3 {
	font-size: var(--font-lg);
	color: var(--heading-color);
	font-weight: 600;
	margin-bottom: 1.25rem;
	position: relative;
	padding-bottom: .75rem
}

.footer-column h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 40px;
	height: 3px;
	background: var(--brand-yellow);
	border-radius: 2px;
	transition: width .3s ease
}

.footer-column:hover h3::after {
	width: 60px
}

.footer-column ul {
	list-style: none;
	margin: 0;
	padding: 0
}

.footer-column li {
	margin-bottom: var(--padding-medium)
}

.footer-column:not(.follow):not(.donation) a {
	color: var(--text-color);
	font-size: var(--font-md);
	text-decoration: none;
	transition: var(--transition-base);
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: var(--padding-small)
}

.footer-column:not(.follow):not(.donation) a:hover {
	color: var(--link-hover-color);
	transform: var(--lift-sm)
}

.footer-arrow-icon {
	width: 1em;
	height: 1em;
	opacity: 0;
	transition: var(--transition-base);
	color: #00b2c0;
	flex-shrink: 0
}

.footer-column:not(.follow):not(.donation) a:hover .footer-arrow-icon {
	opacity: 1
}

.footer-column.follow a {
	color: var(--text-color);
	font-size: var(--font-md);
	text-decoration: none;
	transition: var(--transition-base);
	display: inline-flex;
	align-items: center;
	gap: var(--padding-small)
}

.footer-column.follow a:hover {
	color: var(--link-hover-color);
	transform: var(--lift-sm)
}

.footer-column.follow a:hover .footer-arrow-icon {
	opacity: 1
}

.footer-column.follow .social-icon {
	fill: currentColor;
	stroke: currentColor;
	transition: color .3s ease
}

.footer-column.follow a[data-social=instagram]:hover .social-icon {
	color: #e4405f
}

.footer-column.follow a[data-social=facebook]:hover .social-icon {
	color: #1877f2
}

.footer-column.follow a[data-social=youtube]:hover .social-icon {
	color: red
}

.footer-column.follow a[data-social=linkedin]:hover .social-icon {
	color: #0077b5
}

.footer-column.follow a[data-social="x"]:hover .social-icon,.footer-column.follow a[data-social=twitter]:hover .social-icon {
	color: #000
}

.footer-column.donation p {
	font-size: var(--font-md);
	color: var(--text-secondary);
	margin-bottom: var(--padding-medium);
	line-height: 1.6
}

.footer-column.donation .submit-button {
	background: #b53a30;
	color: #fff;
	padding: .6rem 1rem;
	font-size: var(--font-sm);
	font-weight: 600;
	border: none;
	border-radius: 20px;
	cursor: pointer;
	transition: background .3s ease;
	display: inline-block;
	text-decoration: none
}

.footer-column.donation .submit-button:hover {
	background: #992e26;
	transform: none
}

.footer-column.donation .submit-button:active {
	transform: scale(.97)
}

.footer-bottom {
	padding-top: var(--padding-large);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--padding-medium);
	text-align: center;
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 10
}

.footer-bottom .footer-logo-icon {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--padding-small)
}

.footer-bottom .footer-logo-icon img {
	width: auto;
	max-height: 4rem;
	transition: var(--transition-base)
}

.footer-bottom .footer-logo-icon img:hover {
	transform: scale(1.05)
}

.footer-bottom a,.footer-bottom p {
	font-size: var(--font-sm);
	color: #666
}

.footer-bottom a:hover {
	color: var(--link-hover-color)
}

.footer-right-controls {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--padding-medium)
}

.footer-legal-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--padding-medium)
}

.footer-legal-links a {
	color: var(--text-color);
	font-size: var(--font-sm);
	text-decoration: none;
	transition: var(--transition-base)
}

.footer-legal-links a:hover {
	color: var(--link-hover-color)
}

@media (max-width: 768px) {
	.footer-grid {
		display:grid;
		grid-template-columns: 1fr 1fr;
		gap: var(--padding-medium)
	}

	.footer-column:nth-child(2) {
		grid-column: 1/-1;
		text-align: center;
		padding-inline:var(--padding-medium);padding-bottom: var(--padding-large);
		border-bottom: 1px solid var(--border-color);
		margin-bottom: var(--padding-medium)
	}

	.footer-column:first-child {
		text-align: center;
		border-inline-end:1px solid var(--border-color);
		padding-inline: var(--padding-medium);
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.footer-column:nth-child(3) {
		text-align: center;
		padding-inline:var(--padding-medium);
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.footer-column.donation p {
		max-width: 90%;
		margin-inline:auto}

	.footer-column.donation .submit-button {
		display: block;
		width: fit-content;
		margin: var(--padding-medium) auto 0
	}

	.footer-column h3 {
		font-size: var(--font-md);
		margin-bottom: 1rem;
		min-height: 1.5em
	}

	.footer-column h3::after {
		left: 50%;
		transform: translateX(-50%)
	}

	.footer-column:hover h3::after {
		left: 50%;
		transform: translateX(-50%)
	}

	.footer-column ul {
		font-size: var(--font-sm)
	}

	.footer-column li {
		margin-bottom: var(--padding-small)
	}

	.footer-column.donation .submit-button {
		padding: .6rem 1rem;
		font-size: var(--font-sm)
	}

	.footer-column.follow {
		order: -1;
		grid-column: 1/-1;
		text-align: center
	}

	.footer-column.follow ul {
		display: flex;
		justify-content: center;
		gap: 1rem
	}

	.footer-bottom {
		flex-direction: column;
		gap: var(--padding-medium);
		border-top: 1px solid var(--border-color);
		padding-top: var(--padding-large);
		padding-bottom: var(--padding-large)
	}

	.footer-bottom .footer-logo-icon {
		text-align: center
	}

	.footer-right-controls {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: var(--padding-large);
		width: 100%;
		position: relative;
		z-index: 10
	}

	.footer-legal-links {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: var(--padding-medium);
		width: 100%;
		order: -1
	}

	.scroll-up {
		flex-shrink: 0;
		position: relative;
		z-index: 11;
		margin-top: var(--padding-medium)
	}
}

@media (max-width: 480px) {


	.footer-column:nth-child(3) {
		padding-bottom: var(--padding-medium)
	}

	.footer-column h3 {
		font-size: var(--font-base);
		margin-bottom: .75rem
	}

	.footer-column h3::after {
		width: 30px;
		left: 50%;
		transform: translateX(-50%)
	}

	.footer-column:hover h3::after {
		left: 50%;
		transform: translateX(-50%)
	}

	.footer-column ul {
		font-size: var(--font-sm)
	}

	.footer-column li {
		margin-bottom: var(--padding-small)
	}

	.footer-column a {
		font-size: var(--font-sm)
	}

	.footer-arrow-icon {
		display: none
	}

	.footer-column.donation p {
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		font-size: var(--font-sm)
	}

	.footer-column.donation .submit-button {
		padding: .5rem .875rem;
		font-size: .8rem;
		width: fit-content
	}

	.footer {
		padding: var(--padding-medium)
	}

	.footer-inner {
		padding: 0
	}
}
