/* Cup of Air — site footer
   Modern navy band: clear hierarchy, Sofia Sans, no hatch texture. */

#sp-footer {
	--coa-ft-navy: #013a58;
	--coa-ft-navy-deep: #012a40;
	--coa-ft-teal: #73c3c4;
	--coa-ft-teal-mid: #4aa8b8;
	--coa-ft-ink: rgba(255, 255, 255, 0.92);
	--coa-ft-muted: rgba(255, 255, 255, 0.62);
	--coa-ft-line: rgba(255, 255, 255, 0.12);
	--coa-ft-wrap: 1180px;

	padding: 0;
	text-align: left;
	background: var(--coa-ft-navy-deep);
	font-family: "Sofia Sans", "Segoe UI", sans-serif;
	color: var(--coa-ft-ink);
}

#sp-footer > .container {
	width: 100%;
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

#sp-footer > .container > .row {
	margin-left: 0;
	margin-right: 0;
}

#sp-footer #sp-footer1,
#sp-footer #sp-footer1 .sp-column {
	padding-left: 0;
	padding-right: 0;
	float: none;
	width: 100%;
}

#sp-footer .coa-footer-mod {
	margin: 0;
}

/* Main footer band */
#sp-footer .coa-site-footer.sppb-section {
	background-color: var(--coa-ft-navy) !important;
	background-image: none !important;
	padding: clamp(36px, 4.5vw, 52px) 0 28px !important;
	border-top: 0;
}

#sp-footer .coa-site-footer .sppb-row-container,
#sp-footer .coa-site-footer .sppb-container-inner {
	width: min(var(--coa-ft-wrap), calc(100% - 48px)) !important;
	max-width: var(--coa-ft-wrap) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#sp-footer .coa-site-footer .sppb-row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 28px 24px;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

#sp-footer .coa-site-footer .sppb-row > [class*="sppb-col"] {
	float: none;
	width: auto;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 0;
}

#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(1) {
	flex: 1.15 1 220px;
	max-width: 280px;
}

#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(2),
#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(3) {
	flex: 1 1 160px;
	max-width: 240px;
}

#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(4) {
	flex: 1.2 1 220px;
	max-width: 300px;
	margin-left: auto;
}

/* Brand — logo centered with tagline + socials under it */
#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(1) .sppb-column-addons {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0;
}

#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(1) .sppb-addon-wrapper {
	margin-bottom: 0 !important;
}

#sp-footer .coa-site-footer .sppb-addon-single-image {
	padding-bottom: 0;
	text-align: center;
}

#sp-footer .coa-site-footer .sppb-addon-single-image .sppb-addon-single-image-container,
#sp-footer .coa-site-footer .sppb-addon-single-image img {
	margin-left: auto;
	margin-right: auto;
}

#sp-footer .coa-site-footer .sppb-addon-single-image img {
	max-width: 168px;
	height: auto;
	display: block;
}

#sp-footer .coa-ft-tagline {
	margin: 6px auto 0 !important;
	max-width: 26ch;
	font-size: var(--coa-text-sm); !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.01em;
	text-align: center !important;
	text-transform: none !important;
	color: var(--coa-ft-muted) !important;
	opacity: 1 !important;
}

#sp-footer .coa-site-footer .sppb-addon-wrapper:has(.coa-ft-tagline) {
	margin-top: 4px !important;
	margin-bottom: 0 !important;
	width: 100%;
}

#sp-footer .coa-site-footer .sppb-addon-wrapper:has(.coa-footer-social) {
	margin-top: 12px !important;
	margin-bottom: 0 !important;
	width: 100%;
}

#sp-footer .coa-footer-social {
	text-align: center;
}

#sp-footer .coa-footer-social .sppb-addon-content {
	display: flex;
	justify-content: center;
}

#sp-footer ul.coa-footer-social-icons,
#sp-footer .coa-footer-social ul.social-icons {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

#sp-footer ul.coa-footer-social-icons > li,
#sp-footer .coa-footer-social ul.social-icons > li {
	margin: 0;
	padding: 0;
	border: 0;
	float: none;
}

#sp-footer ul.coa-footer-social-icons > li a,
#sp-footer .coa-footer-social ul.social-icons > li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid var(--coa-ft-line);
	color: #fff !important;
	opacity: 1;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

#sp-footer ul.coa-footer-social-icons > li a i,
#sp-footer .coa-footer-social ul.social-icons > li a i {
	color: inherit !important;
	font-size: var(--coa-text-md);
	line-height: 1;
}

#sp-footer ul.coa-footer-social-icons > li a .fa-tiktok-icon,
#sp-footer .coa-footer-social ul.social-icons > li a .fa-tiktok-icon {
	width: 14px;
	height: 14px;
	display: block;
}

#sp-footer ul.coa-footer-social-icons > li a:hover,
#sp-footer ul.coa-footer-social-icons > li a:focus,
#sp-footer .coa-footer-social ul.social-icons > li a:hover,
#sp-footer .coa-footer-social ul.social-icons > li a:focus {
	background: rgba(115, 195, 196, 0.18);
	border-color: rgba(115, 195, 196, 0.45);
	color: var(--coa-ft-teal) !important;
	transform: translateY(-1px);
}

/* Column headings */
#sp-footer .coa-ft-heading {
	margin: 0 0 10px !important;
	padding: 0 !important;
	font-family: "Sofia Sans", "Segoe UI", sans-serif !important;
	font-size: var(--coa-text-xs); !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	color: var(--coa-ft-teal) !important;
	border: 0 !important;
	border-bottom: none !important;
	text-decoration: none !important;
}

#sp-footer .coa-site-footer .sppb-addon-wrapper:has(.coa-ft-heading) {
	margin-bottom: 0 !important;
}

/* Link lists */
#sp-footer .sp-module ul > li,
#sp-footer .coa-site-footer .sppb-link-list-wrap ul > li {
	border: 0;
	border-bottom: none;
	box-shadow: none;
	margin: 0;
	padding: 0;
}

#sp-footer .coa-site-footer .sppb-link-list-wrap ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

#sp-footer .coa-site-footer .sppb-link-list-wrap li a {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 4px 0 !important;
	font-family: "Sofia Sans", "Segoe UI", sans-serif !important;
	font-size: var(--coa-text-md); !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em;
	color: var(--coa-ft-ink) !important;
	text-decoration: none !important;
	white-space: normal;
	transition: color 0.15s ease;
}

#sp-footer .coa-site-footer .sppb-link-list-wrap li a:hover,
#sp-footer .coa-site-footer .sppb-link-list-wrap li a:focus {
	color: var(--coa-ft-teal) !important;
}

/* Contact column */
#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap ul {
	gap: 10px;
}

#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a {
	align-items: flex-start;
	gap: 10px;
	font-size: var(--coa-text-md); !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	color: rgba(255, 255, 255, 0.86) !important;
}

#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a i,
#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a i.pe {
	flex: 0 0 auto;
	margin: 3px 0 0 !important;
	width: 1.1em;
	text-align: center;
	color: var(--coa-ft-teal) !important;
	opacity: 1;
	font-size: var(--coa-text-md);
	line-height: 1;
}

#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a:hover,
#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a:focus {
	color: #fff !important;
}

#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a:hover i,
#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a:focus i {
	color: var(--coa-ft-teal-mid) !important;
}

/* Copyright + legal bar */
#sp-footer .coa-ft-legalbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px 24px;
	width: min(var(--coa-ft-wrap), calc(100% - 48px));
	max-width: var(--coa-ft-wrap);
	margin: 0 auto;
	padding: 14px 0 18px;
	border-top: 1px solid var(--coa-ft-line);
	font-family: "Sofia Sans", "Segoe UI", sans-serif;
}

#sp-footer .sp-copyright {
	display: inline;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	text-align: left;
	font-size: var(--coa-text-sm);
	font-weight: 400;
	line-height: 1.4;
	color: var(--coa-ft-muted);
}

#sp-footer .coa-ft-legalbar-links {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 10px;
}

#sp-footer .coa-ft-legalbar-links a {
	color: var(--coa-ft-muted) !important;
	font-size: var(--coa-text-sm);
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none !important;
	transition: color 0.15s ease;
}

#sp-footer .coa-ft-legalbar-links a:hover,
#sp-footer .coa-ft-legalbar-links a:focus {
	color: var(--coa-ft-teal) !important;
}

#sp-footer .coa-ft-legalbar-sep {
	color: rgba(255, 255, 255, 0.28);
	font-size: var(--coa-text-sm);
	line-height: 1;
}

#sp-footer .coa-ft-legal-heading {
	margin-top: 18px !important;
}

/* Legacy tagline class (if still present) */
.coa-footer-tagline,
.coa-footer-tagline .coa-footer-tagline-text,
.coa-footer-tagline p {
	margin: 0 !important;
	color: var(--coa-ft-muted) !important;
	font-size: var(--coa-text-sm); !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em;
	text-transform: none;
	opacity: 1;
}

@media (max-width: 991px) {
	#sp-footer .coa-site-footer .sppb-row {
		gap: 28px 20px;
		justify-content: center;
	}

	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(1) {
		flex: 1 1 100%;
		max-width: none;
		margin-left: 0;
		padding-bottom: 8px;
		border-bottom: 1px solid var(--coa-ft-line);
	}

	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(2),
	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(3) {
		flex: 1 1 calc(50% - 20px);
		max-width: 280px;
		margin-left: 0;
		text-align: center;
	}

	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(4) {
		flex: 1 1 100%;
		max-width: none;
		margin-left: 0;
		padding-top: 8px;
		border-top: 1px solid var(--coa-ft-line);
		text-align: center;
	}

	#sp-footer .coa-site-footer .sppb-addon-single-image {
		text-align: center;
	}

	#sp-footer .coa-ft-heading {
		text-align: center !important;
	}

	#sp-footer .coa-site-footer .sppb-link-list-wrap ul {
		align-items: center;
	}

	#sp-footer .coa-site-footer .sppb-link-list-wrap li a {
		justify-content: center;
		text-align: center;
	}

	#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap ul {
		align-items: center;
		max-width: 320px;
		margin-left: auto;
		margin-right: auto;
	}

	#sp-footer .coa-site-footer .sppb-col-md-3:last-child .sppb-link-list-wrap li a {
		justify-content: center;
		text-align: center;
	}

	#sp-footer .coa-ft-legalbar {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	#sp-footer .sp-copyright {
		text-align: center;
	}

	#sp-footer .coa-ft-legalbar-links {
		justify-content: center;
	}
}

@media (max-width: 640px) {
	#sp-footer .coa-site-footer.sppb-section {
		padding: 32px 0 22px !important;
	}

	#sp-footer .coa-site-footer .sppb-row-container,
	#sp-footer .coa-site-footer .sppb-container-inner,
	#sp-footer .coa-ft-legalbar {
		width: min(var(--coa-ft-wrap), calc(100% - 32px)) !important;
	}

	#sp-footer .coa-site-footer .sppb-row {
		gap: 22px 16px;
	}

	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(2),
	#sp-footer .coa-site-footer .sppb-row > .sppb-col-md-3:nth-child(3) {
		flex: 1 1 calc(50% - 16px);
		max-width: none;
	}

	#sp-footer .coa-site-footer .sppb-link-list-wrap li a {
		min-height: 36px;
		font-size: var(--coa-text-sm); !important;
	}

	#sp-footer .sp-copyright {
		text-align: center;
		padding-left: 0;
		padding-right: 0;
	}
}
