/* Footer responsive & adaptive */
@media (max-width: 1400px) {
	.footer-side .footer-up-text {
		font-size: 60px;
		line-height: 1.1;
	}
}

@media (max-width: 1200px) {
	.footer-side {
		height: auto;
		padding: 110px 0 40px;
		gap: 40px;
	}
	.footer-side .footer-up-text {
		font-size: 54px;
	}
	.footer-side .footer-container {
		border-radius: 24px;
		padding: 50px 0 22px;
	}
	.footer-side .footer-container .links-column {
		margin: 0 24px;
		padding: 0 24px;
	}
}

@media (max-width: 992px) {

	.footer-side {
		padding-top: 100px;
	}
	.footer-side .footer-up-text,
	.footer-side .cta-footer {
		display: none;
	}
	.footer-side .footer-container .footer-main {
		flex-direction: column;
		gap: 32px;
	}
	.footer-side .footer-container .links-column {
		width: 100%;
		margin: 0;
		padding: 24px 0;
		border-left: none;
		border-right: none;
		border-top: 1px solid #e0e0e0;
		border-bottom: 1px solid #e0e0e0;
		justify-content: space-around;
		align-items: flex-start;
		gap: 24px;
	}
	.footer-side .footer-container .logo-column svg {
		width: 110px;
	}
	.footer-side .footer-container .contact-column a {
		font-size: 28px;
	}

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

	.footer-column.contact-column {
		display: flex;
		justify-content: center;
		flex-direction: row;
		gap: 16px;
	}
	
	.footer-column .logo-column {
		text-align: center;
	}
	.footer-column .links-column {
		text-align: center;
	}
	.footer-column .contact-column {
		text-align: center;
	}
}

@media (max-width: 768px) {
	.footer-description {
		text-align: center;
	}
	.footer-side {
		padding-top: 100px;
	}
	.footer-side::after {
		border-radius: 0 0 25px 25px;
	}
  
	.footer-side .cta-footer {
		width: 120px;
		height: 120px;
		padding: 28px;
		border-radius: 60px;
	}
	.footer-side .footer-container {
		border-radius: 20px;
		padding: 40px 0 18px;
	}
	.footer-side .footer-container .links-column {
		gap: 16px;
	}
	.footer-side .footer-container .footer-legal {
		margin-top: 32px;
	}

	.footer-side .container {
		max-width: 100%;
	}

	.footer-column.contact-column p a {
		font-size: 24px !important;
	}

	.footer-column.contact-column p a svg {
		width: 24px !important;
		height: 24px !important;
	}
}

@media (max-width: 576px) {
	.footer-side .cta-footer {
		width: 100px;
		height: 100px;
		padding: 22px;
		border-radius: 50px;
	}
	.footer-side .footer-container .logo-column svg {
		width: 96px;
	}
	.footer-side .footer-container .logo-column .footer-description {
		font-size: 16px;
		line-height: 24px;
	}
	.footer-side .footer-container .contact-column a {
		font-size: 22px;
	}
	.footer-side .footer-container .footer-legal {
		gap: 12px;
		margin-top: 24px;
	}

	.footer-column.contact-column {
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.footer-side .footer-container .contact-column a {
		font-size: 20px;
	}
	
	.footer-column .links-column {
		justify-content: center;
	}
	
	.footer-side .footer-container .footer-legal {
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}
	/* Hide separator bullets on very small screens */
	.footer-side .footer-container .footer-legal li:not(:has(a)) {
		display: none;
	}
	/* Fallback if :has is unsupported */
	.footer-side .footer-container .footer-legal li:nth-child(2),
	.footer-side .footer-container .footer-legal li:nth-child(4) {
		display: none;
	}
} 