/* FB Theme Parts 1.0.1 — standalone styles (no Elementor dependency).
   Values copied from the old Elementor Pro footer (template 66). */

.fbtp-footer {
	--fbtp-canvas-alt: #161A26;
	--fbtp-border: rgba(255, 255, 255, 0.10);
	--fbtp-text-body: #B7BECF;
	--fbtp-text-muted: #8A93A8;
	--fbtp-link-hover: #A99CFF;
	--fbtp-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 64px 0 0;
	border-top: 1px solid var(--fbtp-border);
	background-color: var(--fbtp-canvas-alt);
	display: flex;
	flex-direction: column;
	align-items: center;
	clear: both;
}
.fbtp-footer *,
.fbtp-footer *::before,
.fbtp-footer *::after { box-sizing: border-box; }

.fbtp-footer p { margin: 0; }
.fbtp-footer img { display: block; height: auto; max-width: 100%; border: 0; border-radius: 0; box-shadow: none; }
.fbtp-footer a { text-decoration: none; box-shadow: none; color: inherit; }
.fbtp-footer a:hover,
.fbtp-footer a:focus-visible { color: var(--fbtp-link-hover); }

.fbtp-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 40px;
	display: flex;
	flex-direction: column;
}

.fbtp-grid {
	width: 100%;
	padding: 0 0 44px;
	display: grid;
	gap: 34px;
	grid-template-columns: 1.7fr 1fr 1fr 1fr 1fr;
}

.fbtp-col {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 11px;
	padding: 10px;
}

.fbtp-logo { width: 219px; }
.fbtp-ai { width: 110px; }

.fbtp-small { font-size: 13px; color: var(--fbtp-text-body); }

.fbtp-meta {
	font-family: var(--fbtp-mono);
	font-size: 11px;
	color: var(--fbtp-text-muted);
	letter-spacing: 0.66px;
	text-transform: uppercase;
}

.fbtp-title {
	font-family: var(--fbtp-mono);
	font-weight: 600;
	font-size: 11px;
	color: var(--fbtp-text-muted);
	letter-spacing: 1.3px;
	text-transform: uppercase;
	margin: 0 0 4px !important;
}

.fbtp-link { font-size: 14.5px; color: var(--fbtp-text-body); }

.fbtp-bottom {
	width: 100%;
	padding: 20px 0 24px;
	border-top: 1px solid var(--fbtp-border);
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: space-between;
	align-items: center;
}

.fbtp-legal { display: flex; flex-wrap: wrap; gap: 18px; padding: 10px; }

.fbtp-fine {
	font-family: var(--fbtp-mono);
	font-size: 11px;
	color: var(--fbtp-text-muted);
	letter-spacing: 0.5px;
}

@media (max-width: 1024px) {
	.fbtp-grid { gap: 30px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.fbtp-footer { padding-top: 44px; }
	.fbtp-wrap { padding: 0 20px; }
	.fbtp-grid { gap: 26px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fbtp-bottom { flex-direction: column; align-items: flex-start; }
}

/* Hide Hello Elementor's built-in footer once our footer is live. */
body.fbtp-live #site-footer,
body.fbtp-live .site-footer:not(.fbtp-footer) { display: none !important; }

/* Lesson / course pages: full width, like the old Pro template. */
.fbtp-single { max-width: none !important; width: 100%; margin: 0; padding: 0; }
.fbtp-single__content > *:first-child { margin-top: 0; }

/* Admin-only preview label */
.fbtp-preview-label {
	background: #BC42A9; color: #fff; font: 600 13px/1.4 system-ui, sans-serif;
	padding: 10px 16px; text-align: center;
}
