/* ============================================================
   Footer — the journal design's dark footer (Navigation / Services /
   Social columns, legal row) with the interactive DYNAWORKS wordmark.
   ============================================================ */

.site-footer { background: var(--ink); color: var(--bg); margin-top: clamp(64px, 9vw, 128px); overflow: hidden; }
.site-footer__main { padding-top: clamp(48px, 6vw, 88px); }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); gap: 40px; }
.footer-kicker { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--soft); margin-bottom: 16px; }
.footer-tagline { margin: 0; font-size: 22px; line-height: 1.25; letter-spacing: -0.02em; font-weight: 600; max-width: 260px; }
.fl { display: flex; flex-direction: column; gap: 12px; font-size: 17px; }
.fl .footer-kicker { margin-bottom: 4px; }
.fl a, .footer-legal a, .footer-legal button { color: var(--bg); opacity: .82; transition: opacity .2s, color .2s; }
.fl a:hover, .footer-legal a:hover, .footer-legal button:hover { opacity: 1; color: var(--accent); }
/* Big DYNAWORKS wordmark: each letter changes style on hover.
   Sized so all nine capitals fit the footer width on every screen. */
.hover-text {
    margin: clamp(40px, 6vw, 88px) 0 clamp(20px, 3vw, 40px);
    font-size: clamp(2.25rem, 13vw, 11.5rem);
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    display: flex;
    white-space: nowrap;
    cursor: crosshair;
}

.hover-text span {
    display: inline-block;
    color: var(--bg);
    transition: all 0.15s ease;
}

.hover-text span:hover:nth-child(even) {
    font-family: 'Times New Roman', Times, serif;
    font-style: italic;
    font-weight: 400;
    color: var(--soft);
    transform: scale(1.1) translateY(-10px);
}

.hover-text span:hover:nth-child(odd) {
    font-family: var(--mono);
    font-weight: 400;
    transform: scale(0.9) rotate(-5deg);
}

.hover-text span:hover:nth-child(3n) {
    font-family: 'Impact', Charcoal, sans-serif;
    letter-spacing: 5px;
    color: transparent;
    -webkit-text-stroke: 2px var(--bg);
    transform: scale(1.15);
}

.hover-text span:hover:nth-child(5n) {
    font-family: 'Brush Script MT', cursive;
    text-transform: lowercase;
    font-size: 1.2em;
    transform: translateY(5px);
}

.footer-legal { border-top: 1px solid var(--line-dark); background: var(--ink); position: relative; font-family: var(--mono); }
.footer-legal__row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 32px; padding-top: 20px; padding-bottom: 20px; font-size: 12.5px; letter-spacing: .04em; }
.footer-legal__links { display: flex; flex-wrap: wrap; gap: 8px 24px; }

