/* Fluid midnight surface. The original footer composition stays intact. */
.site-footer.footer-original-motion { position: relative; isolation: isolate; overflow: hidden; border-top: 1px solid #253b57; background: #030711; }
.footer-original-motion > :not(.footer-origin-visual) { position: relative; z-index: 1; }
.footer-original-motion .footer-origin-visual { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; background: radial-gradient(ellipse at 5% 5%, #16345e, transparent 55%), radial-gradient(ellipse at 85% 80%, #102549, transparent 60%), #030711; }
.footer-origin-visual::before { content: ''; position: absolute; inset: -30%; background: radial-gradient(ellipse at 25% 60%, #21477588, transparent 50%), radial-gradient(ellipse at 80% 30%, #0b1f3b99, transparent 55%); animation: footer-fluid-fallback 18s ease-in-out infinite alternate; }
.footer-origin-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #02050b99, transparent 75%); }
.footer-original-motion .footer-fluid-canvas { display: block; position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1.2s ease; }
.footer-original-motion.has-fluid-surface .footer-fluid-canvas { opacity: 1; }
.footer-original-motion.has-fluid-surface .footer-origin-visual::before { animation: none; }
.footer-original-motion .footer-mail { background: #0c2039; border-color: #496988; box-shadow: inset 0 1px #b1d9ff0d; }
.footer-original-motion .footer-mail:hover { background: #142e4d; border-color: #92b5d7; box-shadow: 0 10px 28px #02070c55; }
.footer-original-motion[data-animation-state="paused"] .footer-origin-visual::before { animation-play-state: paused; }
@keyframes footer-fluid-fallback { from { transform: translate(-5%, 2%) scale(1); } to { transform: translate(7%, -4%) scale(1.1); } }
@media (prefers-reduced-motion: reduce) { .footer-original-motion *, .footer-original-motion *::before, .footer-original-motion *::after { animation: none !important; transition: none !important; } }

/* Footer typography hierarchy. */
.footer-original-motion .footer-links > strong, .footer-original-motion .footer-contact .footer-eyebrow { color: #fff; font-weight: 700; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; }
.footer-original-motion .footer-links a { font-weight: 700; }
.footer-original-motion .footer-contact > strong { font-size: clamp(1.5rem, 2.35vw, 2.5rem); line-height: 1.05; }

/* Clearer contact invitation and a centered email button. */
.footer-original-motion .footer-mail { justify-content: center; gap: 0; min-height: 54px; padding: 1rem 1.5rem; border: 1px solid #99caff66; border-radius: 14px; background: linear-gradient(125deg, #2463bb, #153d7b); color: #f5faff; font-size: .95rem; font-weight: 750; letter-spacing: .015em; box-shadow: inset 0 1px 0 #d7edff30, 0 10px 28px #0d3e8526; transition: transform .25s, border-color .25s, box-shadow .25s, background .25s; }
.footer-original-motion .footer-mail:hover { background: linear-gradient(125deg, #2a6fc9, #1a498d); border-color: #b9ddffbb; box-shadow: inset 0 1px 0 #e6f4ff40, 0 14px 32px #2468c33d; }
.footer-original-motion .footer-mail:focus-visible { outline: 2px solid #bee2ff; outline-offset: 5px; }

/* More compact footer contact. */
.footer-original-motion .footer-mail { width: auto; max-width: 100%; min-width: 145px; min-height: 44px; padding: .65rem 1.25rem; font-size: .85rem; border-radius: 11px; }

/* Centered company link and justified brand statement. */
.footer-original-motion .footer-brand p { text-align: left; text-align-last: auto; }
.footer-original-motion .footer-brand .footer-about { display: flex; justify-content: center; align-items: center; width: 100%; max-width: 390px; gap: 0; text-align: center; }

/* Separate compact company destination. */
.footer-original-motion .footer-about-block { width: 180px; max-width: 100%; margin: 1.8rem 0 0; }
.footer-original-motion .footer-brand .footer-about-block .footer-about { width: 100%; min-height: 44px; margin: 0; padding: .7rem 1rem; border: 1px solid #769fc63d; border-radius: 12px; background: linear-gradient(125deg, #102039, #0a1527); color: #d5e7fa; font-size: .8rem; font-weight: 650; letter-spacing: .01em; box-shadow: inset 0 1px 0 #d3eaff08; transition: background .2s, border-color .2s; }
.footer-original-motion .footer-brand .footer-about-block .footer-about:hover { background: #152b46; border-color: #94bde577; color: #fff; }

/* Narrow email contact button. */
.footer-original-motion .footer-mail { width: 120px; max-width: 100%; min-width: 0; padding-inline: .85rem; }

.footer-original-motion .footer-brand p { font-size: clamp(1.05rem, 1.45vw, 1.35rem); }
