/**
 * Team Moon storefront footer — responsive layout.
 */

.teammon-brands-app.tm-footer {
	--tm-footer-bg: #0f1117;
	--tm-footer-text: #f2f3f8;
	--tm-footer-muted: #9aa0ae;
	--tm-footer-border: #2a2e3a;
	--tm-footer-accent: var(--tm-primary, #807af8);
	--tm-footer-bleed: max(0px, (100vw - 100%) / 2);
	background: var(--tm-footer-bg);
	color: var(--tm-footer-text);
	font-family: inherit;
	padding-block: 40px 0;
	padding-inline: 0;
	width: auto;
	max-width: none;
	margin-inline: calc(-1 * var(--tm-footer-bleed));
	margin-block-end: 0 !important;
	position: relative;
	left: auto;
	right: auto;
	transform: none;
	box-sizing: border-box;
	overflow-x: clip;
}

/* Collapse WPBakery / WoodMart spacing under the footer shortcode. */
.wpb_text_column:has(.teammon-brands-app.tm-footer),
.wpb_content_element:has(.teammon-brands-app.tm-footer),
.wpb_wrapper:has(.teammon-brands-app.tm-footer),
.vc_column-inner:has(.teammon-brands-app.tm-footer),
.vc_row:has(.teammon-brands-app.tm-footer),
.container:has(.teammon-brands-app.tm-footer) {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.wpb_text_column:has(.teammon-brands-app.tm-footer) > .wpb_wrapper {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.teammon-brands-app.tm-footer.tm-footer--font-theme {
	font-family: inherit;
}

.teammon-brands-app.tm-footer.tm-footer--font-tajawal {
	font-family: "Tajawal", sans-serif;
}

.teammon-brands-app.tm-footer *,
.teammon-brands-app.tm-footer *::before,
.teammon-brands-app.tm-footer *::after {
	box-sizing: border-box;
}

/* Kill theme separators between footer blocks. */
.teammon-brands-app.tm-footer .tm-footer__inner,
.teammon-brands-app.tm-footer .tm-footer__brand,
.teammon-brands-app.tm-footer .tm-footer__col,
.teammon-brands-app.tm-footer .tm-footer__trust,
.teammon-brands-app.tm-footer .tm-footer__trust-block,
.teammon-brands-app.tm-footer .tm-footer__heading,
.teammon-brands-app.tm-footer nav,
.teammon-brands-app.tm-footer ul,
.teammon-brands-app.tm-footer li,
.teammon-brands-app.tm-footer p,
.teammon-brands-app.tm-footer a {
	border: 0 none !important;
	box-shadow: none !important;
}

.teammon-brands-app.tm-footer a:focus-visible {
	outline: 2px solid var(--tm-footer-text);
	outline-offset: 2px;
}

.teammon-brands-app.tm-footer .tm-footer__heading {
	border-bottom: 0 none !important;
	padding-bottom: 0;
}

.tm-footer__inner,
.tm-footer__trust {
	width: 100%;
	max-width: 1400px;
	margin-inline: auto;
	padding-inline: clamp(16px, 4vw, 40px);
}

.tm-footer__bar {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	padding-inline: clamp(16px, 4vw, 40px);
}

/* —— Mobile first: single column —— */
.tm-footer__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 28px;
}

.tm-footer__brand {
	min-width: 0;
}

.tm-footer__logo {
	margin-block-end: 14px;
}

.tm-footer__logo-img {
	display: block;
	max-width: min(220px, 100%);
	width: auto;
	height: auto;
	max-height: var(--tm-footer-logo-height, 48px);
}

.tm-footer__about {
	margin: 0;
	color: var(--tm-footer-muted);
	font-size: 14px;
	line-height: 1.7;
	max-width: 36ch;
}

.tm-footer__align-start {
	text-align: start;
}

.tm-footer__align-center {
	text-align: center;
}

.tm-footer__align-end {
	text-align: end;
}

.tm-footer__align-center .tm-footer__about {
	margin-inline: auto;
}

.tm-footer__align-end .tm-footer__about {
	margin-inline-start: auto;
}

.tm-footer__align-center .tm-footer__logo-img {
	margin-inline: auto;
}

.tm-footer__align-end .tm-footer__logo-img {
	margin-inline-start: auto;
}

.tm-footer__align-center .tm-footer__badges,
.tm-footer__align-center .tm-footer__social,
.tm-footer__align-center .tm-footer__links {
	justify-content: center;
	justify-items: center;
}

.tm-footer__align-end .tm-footer__badges,
.tm-footer__align-end .tm-footer__social,
.tm-footer__align-end .tm-footer__links {
	justify-content: flex-end;
	justify-items: end;
}

.tm-footer__align-center .tm-footer__social,
.tm-footer__align-end .tm-footer__social {
	width: 100%;
}

.tm-footer__align-center.tm-footer__bar {
	justify-content: center;
}

.tm-footer__align-end.tm-footer__bar {
	justify-content: flex-end;
}

.tm-footer__align-start.tm-footer__bar {
	justify-content: space-between;
}

.tm-footer__align-center .tm-footer__verify-item {
	align-items: center;
}

.tm-footer__align-end .tm-footer__verify-item {
	align-items: flex-end;
}

.tm-footer__heading {
	margin: 0 0 12px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--tm-footer-text);
}

.tm-footer__links {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: var(--tm-footer-links-gap, 6px) !important;
	row-gap: var(--tm-footer-links-gap, 6px) !important;
	column-gap: 0 !important;
}

.tm-footer__contact {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: var(--tm-footer-contact-gap, 6px) !important;
	row-gap: var(--tm-footer-contact-gap, 6px) !important;
	column-gap: 0 !important;
}

.teammon-brands-app.tm-footer .tm-footer__links > li,
.teammon-brands-app.tm-footer .tm-footer__contact > li {
	display: block !important;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 none !important;
	line-height: 1.35 !important;
	background: transparent !important;
	list-style: none !important;
}

.teammon-brands-app.tm-footer .tm-footer__contact > li {
	display: flex !important;
}

.tm-footer__links a,
.tm-footer__links span,
.tm-footer__contact-link {
	color: var(--tm-footer-muted);
	text-decoration: none;
	font-size: 14px;
	line-height: 1.35 !important;
	display: block !important;
	flex-wrap: unset;
	align-items: unset;
	gap: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	transition: color 0.2s ease;
}

.tm-footer__contact-link {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px !important;
	width: 100%;
	min-height: 0 !important;
	padding: 0 !important;
}

.tm-footer__contact-label {
	font-weight: 600;
	color: var(--tm-footer-text);
	display: block;
}

.tm-footer__contact-value {
	display: block;
	color: var(--tm-footer-muted);
	unicode-bidi: isolate;
}

.tm-footer__align-start .tm-footer__contact li {
	justify-content: flex-start;
}

.tm-footer__align-start .tm-footer__contact-link {
	align-items: flex-start;
	text-align: start;
}

.tm-footer__align-center .tm-footer__contact li {
	justify-content: center;
}

.tm-footer__align-center .tm-footer__contact-link {
	align-items: center;
	text-align: center;
}

.tm-footer__align-end .tm-footer__contact li {
	justify-content: flex-end;
}

.tm-footer__align-end .tm-footer__contact-link {
	align-items: flex-end;
	text-align: end;
}

.tm-footer__links a:hover,
.tm-footer__links a:focus-visible,
.tm-footer__contact-link:hover,
.tm-footer__contact-link:focus-visible {
	color: var(--tm-footer-text);
}

.tm-footer__contact-link:hover .tm-footer__contact-value,
.tm-footer__contact-link:focus-visible .tm-footer__contact-value {
	color: var(--tm-footer-text);
}

.tm-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-block-start: 16px;
}

.teammon-brands-app.tm-footer .tm-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	border: 1px solid currentColor !important;
	color: var(--tm-footer-muted);
	transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.teammon-brands-app.tm-footer .tm-footer__social-link:hover,
.teammon-brands-app.tm-footer .tm-footer__social-link:focus-visible {
	color: var(--tm-footer-text);
	border-color: currentColor !important;
	background: rgba(255, 255, 255, 0.08);
	transform: translateY(-2px);
}

.tm-footer__social-link svg {
	width: 18px;
	height: 18px;
	display: block;
}

.tm-footer__trust {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 28px;
	margin-block-start: 36px;
	padding-block-start: 28px;
}

.tm-footer__inner:empty + .tm-footer__trust,
.tm-footer__trust:first-child {
	margin-block-start: 0;
	padding-block-start: 0;
}

.tm-footer__badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.tm-footer__store {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
}

.tm-footer__store img,
.tm-footer__verify-item img {
	display: block;
	height: 32px;
	width: auto;
	max-width: 100%;
}

.tm-footer__store img {
	height: 40px;
}

.tm-footer__verify-item {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	color: inherit;
	text-decoration: none;
}

.tm-footer__verify-meta {
	font-size: 12px;
	color: var(--tm-footer-muted);
	overflow-wrap: anywhere;
	line-height: 1.4;
	max-width: 12rem;
}

.tm-footer__pay {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 10px;
	border-radius: 8px;
	background: #ffffff;
	line-height: 0;
	border: 0 none !important;
}

.tm-footer__pay img {
	display: block;
	height: 28px;
	width: auto;
	max-width: 100%;
}

.tm-footer__bar {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 8px 16px;
	margin-block-start: 28px;
	margin-block-end: 0;
	padding-block: 14px 16px;
	border-top: 1px solid color-mix(in srgb, var(--tm-footer-text) 18%, transparent);
	color: var(--tm-footer-muted);
	font-size: 13px;
	background: var(--tm-footer-bg);
}

.tm-footer__copy {
	margin: 0;
	line-height: 1.4;
}

@media (prefers-reduced-motion: reduce) {
	.tm-footer__links a,
	.tm-footer__contact-link,
	.tm-footer__social-link {
		transition: none;
	}

	.tm-footer__social-link:hover,
	.tm-footer__social-link:focus-visible {
		transform: none;
	}
}

/* —— Tablet (iPad) —— */
@media (min-width: 768px) {
	.teammon-brands-app.tm-footer {
		padding-block-start: 48px;
	}

	.tm-footer__inner {
		gap: 28px 24px;
	}

	.tm-footer__inner[data-cols="1"] {
		grid-template-columns: minmax(0, 1fr);
	}

	.tm-footer__inner[data-cols="2"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tm-footer__inner[data-cols="3"],
	.tm-footer__inner[data-cols="4"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tm-footer__brand {
		grid-column: auto;
	}

	.tm-footer__trust {
		gap: 24px;
	}

	.tm-footer__trust[data-cols="1"] {
		grid-template-columns: minmax(0, 1fr);
	}

	.tm-footer__trust[data-cols="2"],
	.tm-footer__trust[data-cols="3"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tm-footer__payments {
		grid-column: auto;
	}
}

/* —— Desktop —— */
@media (min-width: 1024px) {
	.tm-footer__inner {
		gap: 32px 28px;
	}

	.tm-footer__inner[data-cols="1"] {
		grid-template-columns: minmax(0, 1fr);
	}

	.tm-footer__inner[data-cols="2"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tm-footer__inner[data-cols="3"] {
		grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(0, 1fr));
	}

	.tm-footer__inner[data-cols="4"] {
		grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
	}

	.tm-footer__brand {
		grid-column: auto;
	}

	.tm-footer__links a,
	.tm-footer__links span,
	.tm-footer__contact-link {
		min-height: 0;
	}

	.tm-footer__trust {
		align-items: start;
	}

	.tm-footer__trust[data-cols="1"] {
		grid-template-columns: minmax(0, 1fr);
	}

	.tm-footer__trust[data-cols="2"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tm-footer__trust[data-cols="3"] {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.tm-footer__payments {
		grid-column: auto;
	}

	.tm-footer__social-link {
		width: 40px;
		height: 40px;
	}
}
