/* ==========================================================================
   Footer — Morning Trip Holidays
   Self-contained styles, scoped under .mt-footer, safe to load alongside
   the legacy .footer-area rules in style.css (footer.php no longer uses
   .footer-area, so those rules simply go unused).
   ========================================================================== */

.mt-footer {
	position: relative;
	font-family: 'Poppins', sans-serif;
	overflow-x: hidden;
	max-width: 100%;
	/* #02355c matches the image's plain sky, so any area above it blends in */
	background: #02355c url('../images/footer-bg.webp') no-repeat 80% bottom / cover;
}

.mt-footer a {
	transition: color 0.25s ease, opacity 0.25s ease;
}

/* ---------- trust badges bar ---------- */

.mt-footer-badges {
	background: #eaf3fb;
	padding: 14px 0;
}

.mt-footer-badges-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.mt-footer-badge {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 1 1 25%;
	padding: 4px 20px;
	border-right: 1px solid #cfe0ee;
}

.mt-footer-badge:last-child {
	border-right: none;
}

.mt-footer-badge-icon {
	flex: none;
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #123963;
}

.mt-footer-badge-icon i {
	font-size: 24px;
}

.mt-footer-badge h4 {
	margin: 0 0 1px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	color: #10233d;
}

.mt-footer-badge p {
	margin: 0;
	font-size: 12px;
	color: #55708c;
}

/* ---------- main footer ---------- */

.mt-footer-main {
	background: transparent;
	/* bottom room so the houseboat / sunset scene stays visible */
	padding: 34px 0 70px;
}

.mt-footer-grid {
	display: grid;
	grid-template-columns: 1.35fr 0.85fr 1fr 1fr 1.3fr;
	gap: 20px;
}

.mt-footer-col-brand .mt-footer-logo {
	display: inline-block;
	margin-bottom: 10px;
}

.mt-footer-col-brand .mt-footer-logo img {
	max-width: 180px;
}

.mt-footer-about {
	color: #bcd0e5;
	font-size: 13px;
	line-height: 1.6;
	margin-bottom: 10px;
}

.mt-footer-tagline {
	font-family: 'Dancing Script', cursive;
	color: #f5c34d;
	font-size: 19px;
	margin: 0;
}

.mt-footer-title {
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 10px;
	padding-bottom: 7px;
	position: relative;
}

.mt-footer-title:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 34px;
	height: 3px;
	background: #f5c34d;
}

.mt-footer-title-sm {
	margin-top: 14px;
	font-size: 14px;
}

.mt-footer-links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mt-footer-links li {
	margin-bottom: 6px;
}

.mt-footer-links li a {
	color: #bcd0e5;
	font-size: 13px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.mt-footer-links li a:before {
	content: '\276f';
	font-size: 11px;
	color: #f5c34d;
}

.mt-footer-links li a.active {
	color: #f5c34d;
	font-weight: 700;
}

.mt-footer-links-pin li a:before {
	content: '';
	width: 12px;
	height: 12px;
	flex: none;
	border-radius: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f5c34d' d='M12 2C7.6 2 4 5.6 4 10c0 5.4 6.9 11.1 7.2 11.3a1 1 0 0 0 1.6 0C13.1 21.1 20 15.4 20 10c0-4.4-3.6-8-8-8zm0 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6z'/%3E%3C/svg%3E") no-repeat center / contain;
}

.mt-footer-links li a:hover {
	color: #ffffff;
}

.mt-footer-contact {
	list-style: none;
	margin: 0 0 6px;
	padding: 0;
}

.mt-footer-contact li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 8px;
}

.mt-footer-contact .ico {
	flex: none;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #f5c34d;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #0b2947;
}

.mt-footer-contact .ico svg {
	width: 13px;
	height: 13px;
}

.mt-footer-contact li div,
.mt-footer-contact li span {
	color: #bcd0e5;
	font-size: 13px;
	line-height: 1.5;
}

.mt-footer-contact li a {
	color: #bcd0e5;
	display: block;
}

.mt-footer-contact li a:hover {
	color: #ffffff;
}

.mt-footer-social {
	display: flex;
	gap: 8px;
	margin-bottom: 8px;
}

.mt-footer-social a {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 15px;
}

.mt-footer-social a:nth-child(1) { background: #3b5998; }
.mt-footer-social a:nth-child(2) { background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); }
.mt-footer-social a:nth-child(3) { background: #0077b5; }
.mt-footer-social a:nth-child(4) { background: #ff0000; }
.mt-footer-social a:nth-child(5) { background: #e60023; }

.mt-footer-social a:hover {
	opacity: 0.85;
}

.mt-footer-follow-tag {
	color: #bcd0e5;
	font-size: 13px;
	margin: 0;
}

.mt-footer-updated-text {
	color: #bcd0e5;
	font-size: 13px;
	line-height: 1.55;
	margin-bottom: 12px;
}

.mt-footer-partner-badge {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: #fdf6e3;
	border-radius: 8px;
	padding: 7px 12px;
	margin-bottom: 14px;
}

.mt-footer-partner-icon {
	position: relative;
	flex: none;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mt-footer-partner-icon .burst {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 28px;
	height: 28px;
	transform: translate(-50%, -50%);
}

.mt-footer-partner-icon .fa-bullhorn {
	position: relative;
	color: #e0202c;
	font-size: 14px;
	transform: scaleX(-1);
}

.mt-footer-partner-badge strong {
	color: #10233d;
	font-size: 13px;
	font-weight: 700;
}

/* ---------- bottom bar ---------- */

.mt-footer-bottom {
	background: rgba(6, 26, 52, 0.55);
	border-top: 1px solid rgba(255, 255, 255, 0.35);
	padding: 10px 0;
}

.mt-footer-bottom-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 6px;
}

.mt-footer-copy {
	color: #9fb6cd;
	font-size: 11px;
	margin: 0;
	white-space: nowrap;
	flex: none;
}

.mt-footer-copy a {
	color: #f5c34d;
}

.mt-footer-copy a:hover {
	color: #ffffff;
}

.mt-footer-legal {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: none;
	white-space: nowrap;
}

.mt-footer-legal a {
	color: #9fb6cd;
	font-size: 11px;
}

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

.mt-footer-legal span,
.mt-footer-sep {
	color: #4c6a86;
}

.mt-footer-sep {
	flex: none;
}

.mt-footer-credit {
	color: #9fb6cd;
	font-size: 11px;
	margin: 0;
	white-space: nowrap;
	flex: none;
}

.mt-footer-credit a {
	color: #f5c34d;
}

.mt-footer-credit a:hover {
	color: #ffffff;
}

.mt-footer-totop {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid #f5c34d;
	color: #f5c34d;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
}

.mt-footer-totop:hover {
	background: #f5c34d;
	color: #0b2947;
}

.mt-footer-totop svg {
	width: 14px;
	height: 14px;
}

/* the global floating #scrollUp square duplicates this circular button */
#scrollUp {
	display: none !important;
}

/* ---------- responsive ---------- */

@media (max-width: 1199px) {
	.mt-footer-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.mt-footer-col-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 991px) {
	/* the footer gets tall here, so "cover" would scale the image by height
	   and blow it up; size it by width instead and keep the houseboat side */
	.mt-footer {
		background-size: 170% auto;
		background-position: 85% bottom;
	}

	.mt-footer-badge {
		flex: 1 1 50%;
		border-right: none;
		margin-bottom: 16px;
	}

	.mt-footer-grid {
		grid-template-columns: 1fr 1fr;
	}

	.mt-footer-col-updated {
		grid-column: 1 / -1;
	}

	.mt-footer-bottom-row {
		flex-wrap: wrap;
		row-gap: 8px;
	}
}

@media (max-width: 575px) {
	/* lift the scene above the (taller, wrapped) bottom bar so the
	   houseboat isn't hidden behind the copyright text */
	.mt-footer {
		background-size: 260% auto;
		background-position: right 12% bottom 108px;
	}

	.mt-footer-bottom {
		background: #03264a;
	}

	/* 2x2 instead of four stacked rows */
	.mt-footer-badges-row {
		row-gap: 12px;
	}

	.mt-footer-badge {
		flex: 1 1 50%;
		margin-bottom: 0;
		padding: 4px 8px;
		gap: 8px;
	}

	.mt-footer-badge-icon {
		width: 26px;
		height: 26px;
	}

	.mt-footer-badge-icon i {
		font-size: 20px;
	}

	.mt-footer-badge h4 {
		font-size: 12px;
	}

	.mt-footer-badge p {
		font-size: 11px;
	}

	.mt-footer-grid {
		grid-template-columns: 1fr;
	}

	.mt-footer-main {
		padding-bottom: 100px;
	}

	.mt-footer-bottom-row {
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}

	.mt-footer-copy,
	.mt-footer-legal,
	.mt-footer-credit {
		white-space: normal;
		justify-content: center;
	}
}
