/* JMC - 05/27/2026 - FE-only nav/chrome styles. Parallel to BE_Menu.css.
   Loaded by PgStyles("FrontEnd") in PageHead-fnc.php for FE pages only.
   First inhabitant: #fe-public-footer (rendered by FE_PublicFooter() in PageHdrs-fnc.php
   for unauthenticated visitors on login / forgot-pwd / acct-request).
   Future FE-only nav/chrome should land here rather than in PageElements.css to keep
   BE pages from downloading FE-only rules. */

#fe-public-footer {
	background: #fcfcfc;
	border-top: 1px solid #e6e6e6;
	/* JMC - 05/27/2026 - wp-blue bottom border so admin debug output (renders below the footer
	   for trusted IPs) is visually separated from the footer instead of bleeding into it. */
	border-bottom: 9px solid #152C53;
	padding: 16px 16px;
	width: 100%;
}

/* JMC - 05/27/2026 - Sticky footer for unauthenticated FE pages (ForgotPwd, AcctRequest, Welcome).
   Flex column on .wp-container with min-height:100vh pushes #fe-public-footer to the viewport
   bottom. The chain extends down through #site-content -> .container/.container-fluid -> #page-content
   so the welcome splash photo grows to meet the footer (no gap), and short content like ForgotPwd
   still sticks the footer to the bottom. On viewports shorter than content, body scrolls naturally
   (no overlap of the login card and footer on mobile).
   Scoped via :has(#fe-public-footer) so logged-in pages (FE_FooterContent + sitemap) are untouched. */
.wp-container:has(#fe-public-footer) {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.wp-container:has(#fe-public-footer) > #site-content {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
}
.wp-container:has(#fe-public-footer) > #site-content > .container,
.wp-container:has(#fe-public-footer) > #site-content > .container-fluid {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
}
.wp-container:has(#fe-public-footer) #page-content {
	flex: 1 0 auto;
}
.wp-container:has(#fe-public-footer) > #fe-public-footer {
	flex-shrink: 0;
}
#fe-public-footer > .row {
	max-width: 1900px;
	margin: 0 auto;
}
#fe-public-footer .fe-public-footer-brand {
	display: flex;
	flex-direction: column;
	gap: .5rem;
	align-items: center;
}
@media (min-width: 768px) {
	#fe-public-footer .fe-public-footer-brand {
		align-items: flex-start;
	}
}
#fe-public-footer .fe-public-footer-logo {
	display: block;
	height: 30px;
	width: auto;
	max-width: 200px;
}
#fe-public-footer .fe-public-footer-copy {
	font-size: .8rem;
	color: #6c757d;
	margin: 0;
}
#fe-public-footer .fe-public-footer-col-heading {
	text-transform: uppercase;
	font-weight: 600;
	font-size: .875rem;
	color: #212529;
	margin: 0 0 .85rem 0;
	letter-spacing: .03em;
}
#fe-public-footer .fe-public-footer-col ul li {
	padding: .2rem 0;
	line-height: 1.4;
}
#fe-public-footer .fe-public-footer-col ul a {
	color: #6c757d;
	text-decoration: none;
	font-size: .875rem;
	transition: color .15s ease;
}
#fe-public-footer .fe-public-footer-col ul a:hover {
	color: #000;
	text-decoration: underline;
}
