/* ==========================================================================
   Site footer. Ported from home-styles.css.
   ========================================================================== */

.footer { background: #0A1320; color: rgba(255,255,255,0.6); padding: 70px 0 36px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; align-items: start; }
.footer .wordmark { font-family: var(--sans); font-weight: 700; font-size: 22px; color: #fff; }
.foot-brand { display: flex; flex-direction: column; gap: 14px; max-width: 320px; }
.foot-brand .tag { font-size: 13px; letter-spacing: 0.04em; color: rgba(255,255,255,0.5); }
.foot-contact { font-size: 14.5px; line-height: 1.8; }
.foot-contact a { color: rgba(255,255,255,0.78); }
.foot-col h5 { color: #fff; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 16px; font-family: var(--body-font); font-weight: 600; }
.foot-col ul { list-style: none; display: flex; flex-direction: column; gap: 11px; }
.foot-col a { font-size: 14.5px; transition: color .2s ease; }
.foot-col a:hover { color: var(--cyan); }
.foot-bottom {
	margin-top: 52px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.08);
	display: flex; align-items: center; justify-content: space-between; gap: 12px 28px; flex-wrap: wrap;
	font-size: 13px; color: rgba(255,255,255,0.42);
}
.foot-legal { display: flex; gap: 24px; flex-wrap: wrap; }
.foot-legal a { color: rgba(255,255,255,0.6); transition: color .2s ease; }
.foot-legal a:hover { color: var(--cyan); }

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