/*
 * Footer four-column layout, social icons, back-to-top (Sprint 6). Relocated verbatim into layout/ — content unchanged. Not further fragmented into components this sprint (documented pragmatic choice, see DESIGN_SYSTEM.md).
 *
 * @package TFGadgets
 */

/*
 * Footer styles. Enqueued sitewide (footer.php renders on every page —
 * see inc/enqueue.php). .footer-bottom's copyright styling and the base
 * .site-footer/.newsletter-form rules already exist in style.css
 * unchanged; this file adds the 4-column grid and this sprint's new
 * components (social icons, footer-col title, back-to-top).
 *
 * CORRECTION (Sprint 7 design-system audit): .site-footer itself was
 * discovered missing from every extracted file during Sprint 7's
 * selector-count verification — it lived in the original style.css's
 * FOOTER section comment block, outside any of the line ranges Sprint
 * 6 or Sprint 7 explicitly extracted, and was never relocated. Restored
 * here, verbatim from the original: .site-footer{ background:var(--bg-alt); border-top:1px solid var(--line); padding:56px 0 34px; }
 */

.site-footer{ background:var(--bg-alt); border-top:1px solid var(--line); padding:56px 0 34px; }


.footer-columns{
	display:grid;
	grid-template-columns:1.4fr 1fr 1fr 1fr;
	gap:40px;
	padding:48px 0 40px;
}
.footer-col__title,
.footer-columns .widget-title{
	font-family:var(--font-mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.08em;
	color:var(--text-faint); margin:0 0 16px;
}
.footer-col ul{ display:flex; flex-direction:column; gap:10px; }
.footer-col a{ color:var(--text-muted); font-size:14.5px; }
.footer-col a:hover{ color:var(--accent); }

.footer-col--about .footer-col__brand{
	font-family:var(--font-display); font-size:22px; font-weight:600; margin:0 0 10px;
}
.footer-col--about .footer-col__brand .mark{ color:var(--accent); font-family:var(--font-mono); }
.footer-col--about .footer-col__desc{ color:var(--text-muted); font-size:14px; max-width:320px; margin:0 0 18px; }

.footer-social{ display:flex; gap:10px; flex-wrap:wrap; }
.footer-social a{
	width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center;
	border:1px solid var(--line-strong); color:var(--text-muted);
}
.footer-social a:hover{ border-color:var(--accent); color:var(--accent); }

.footer-bottom{
	display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;
	padding-top:24px; border-top:1px solid var(--line);
	font-family:var(--font-mono); font-size:11.5px; color:var(--text-faint); letter-spacing:.03em;
}
.back-to-top{
	display:inline-flex; align-items:center; gap:8px;
	font-family:var(--font-mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.06em;
	color:var(--text-muted); border:1px solid var(--line-strong); padding:8px 14px;
}
.back-to-top svg{ width:13px; height:13px; }
.back-to-top:hover{ color:var(--accent); border-color:var(--accent); }

@media (max-width: 980px){
	.footer-columns{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 680px){
	.footer-columns{ grid-template-columns:1fr; gap:32px; }
	.footer-bottom{ flex-direction:column; align-items:flex-start; }
}
