﻿    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
    body { background: #fff; color: #0f172a; }
    a { text-decoration: none; }
    .wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
    @media (min-width: 640px) { .wrap { padding: 0 32px; } }
    @media (min-width: 1024px) { .wrap { padding: 0 48px; } }

    /* ── Header ── */
    .site-header {
      position: sticky; top: 0; z-index: 40;
      border-bottom: 1px solid rgba(255,255,255,.08);
      background: rgba(2,6,23,.88);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }
    .site-header .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 14px; padding-bottom: 14px; }
    .logo-link { display: inline-flex; align-items: center; font-size: 2.3rem; line-height: 1; }
    .header-nav { display: none; gap: 28px; font-size: .875rem; color: #cbd5e1; }
    @media (min-width: 768px) { .header-nav { display: flex; align-items: center; } }
    .header-nav a { color: #cbd5e1; transition: color .15s; }
    .header-nav a:hover { color: #fff; }
    .header-actions { display: flex; align-items: center; gap: 12px; }
    .btn { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; font-size: .875rem; font-weight: 600; padding: 8px 20px; transition: opacity .15s, background .15s, border-color .15s; cursor: pointer; }
    .btn-ghost-dark { border: 1px solid rgba(255,255,255,.15); color: #e2e8f0; background: transparent; display: none; }
    @media (min-width: 640px) { .btn-ghost-dark { display: inline-flex; } }
    .btn-ghost-dark:hover { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.05); }
    .btn-indigo { background: linear-gradient(135deg, #6366f1, #7c3aed); color: #fff; box-shadow: 0 10px 25px -5px rgba(109,40,217,.3); }
    .btn-indigo:hover { opacity: .92; }
    .btn-outline-light { border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.05); color: #f1f5f9; }
    .btn-outline-light:hover { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.1); }
    .btn-teal-outline { border: 1px solid rgba(44,201,166,.25); background: rgba(44,201,166,.1); color: #99f6e4; }
    .btn-teal-outline:hover { background: rgba(44,201,166,.15); }
    .btn-lg { padding: 12px 24px; font-size: .9375rem; }

    /* ── Hero ── */
    .hero-section {
      position: relative; overflow: hidden;
      border-bottom: 1px solid rgba(255,255,255,.08);
      background: #0f172a;
    }
    .hero-bg {
      position: absolute; inset: 0;
      background: radial-gradient(circle at top left, rgba(13,148,118,.28), transparent 45%),
                  radial-gradient(circle at top right, rgba(109,40,217,.2), transparent 38%),
                  linear-gradient(180deg, rgba(2,6,23,.22) 0%, rgba(2,6,23,.1) 45%, rgba(2,6,23,0) 100%);
    }
    .hero-grid {
      position: relative;
      display: grid; gap: 48px;
      padding-top: 80px; padding-bottom: 80px;
    }
    @media (min-width: 1024px) {
      .hero-grid { grid-template-columns: 1.1fr .9fr; padding-top: 96px; padding-bottom: 96px; }
    }
    .hero-badge {
      display: inline-flex; border-radius: 999px;
      border: 1px solid rgba(44,201,166,.2);
      background: rgba(44,201,166,.1);
      padding: 4px 16px; font-size: .875rem; font-weight: 500; color: #99f6e4;
    }
    .hero-h1 {
      margin-top: 24px;
      font-size: clamp(2rem, 5vw, 3.75rem);
      font-weight: 600; line-height: 1.1; letter-spacing: -.03em; color: #fff;
    }
    .hero-lead { margin-top: 24px; font-size: 1.125rem; line-height: 2; color: #cbd5e1; max-width: 640px; }
    .hero-actions { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 16px; }
    .hero-sub { margin-top: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; font-size: .875rem; color: #cbd5e1; }
    .hero-sub-em { font-weight: 500; color: #e2e8f0; }
    .hero-sub a { color: #99f6e4; transition: color .15s; }
    .hero-sub a:hover { color: #fff; }
    .hero-cards { margin-top: 40px; display: grid; gap: 16px; }
    @media (min-width: 640px) { .hero-cards { grid-template-columns: repeat(3, 1fr); } }
    .hero-card {
      border-radius: 16px; border: 1px solid rgba(255,255,255,.1);
      background: rgba(255,255,255,.05); padding: 16px;
      box-shadow: 0 10px 25px -5px rgba(2,6,23,.2);
    }
    .hero-card-label { font-size: .875rem; font-weight: 500; color: #99f6e4; }
    .hero-card-body { margin-top: 8px; font-size: .875rem; line-height: 1.75; color: #cbd5e1; }

    /* hero app preview */
    .hero-preview-wrap { position: relative; }
    .hero-preview-blur1 {
      position: absolute; left: -32px; top: 40px;
      height: 112px; width: 112px; border-radius: 9999px;
      background: rgba(44,201,166,.15); filter: blur(48px);
    }
    .hero-preview-blur2 {
      position: absolute; right: -40px; bottom: 40px;
      height: 128px; width: 128px; border-radius: 9999px;
      background: rgba(139,92,246,.15); filter: blur(48px);
    }
    .app-card {
      position: relative; overflow: hidden;
      border-radius: 32px;
      border: 1px solid rgba(226,232,240,.8);
      background: rgba(255,255,255,.9);
      box-shadow: 0 25px 50px -12px rgba(15,23,42,.1);
    }
    .app-card-header {
      display: flex; align-items: center; justify-content: space-between;
      border-bottom: 1px solid #e2e8f0;
      background: #f8fafc; padding: 16px 24px;
    }
    .app-card-title { font-size: .875rem; font-weight: 600; color: #0f172a; }
    .app-card-subtitle { font-size: .875rem; color: #64748b; margin-top: 2px; }
    .app-badge-teal {
      border-radius: 999px; background: #f0fdf9;
      padding: 4px 12px; font-size: .75rem; font-weight: 600; color: #0f766e;
    }
    .app-body { padding: 24px; display: flex; flex-direction: column; gap: 24px; }

    /* timeline widget */
    .tl-wrap {
      display: flex; flex-direction: column;
      border-radius: 16px; border: 1px solid #e2e8f0; background: #f8fafc; padding: 14px;
    }
    .tl-header { display: flex; align-items: center; justify-content: space-between; }
    .tl-label { font-size: .875rem; font-weight: 500; color: #64748b; }
    .tl-month {
      border-radius: 999px; background: #fff;
      padding: 4px 10px; font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: #64748b;
      box-shadow: 0 1px 3px rgba(15,23,42,.06);
    }
    .tl-table { margin-top: 12px; border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; overflow: hidden; }
    .tl-row-head {
      display: grid; grid-template-columns: 2.5rem 1fr 5.1rem;
      gap: 6px; border-bottom: 1px solid #e2e8f0;
      padding: 8px 12px;
      font-size: .5625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: #94a3b8;
    }
    .tl-row-head span:last-child { text-align: right; }
    .tl-row {
      display: grid; grid-template-columns: 2.5rem 1fr 5.1rem;
      gap: 6px; align-items: center;
      padding: 10px 12px; font-size: .75rem;
      border-top: 1px solid #f1f5f9;
    }
    .tl-date { font-weight: 500; color: #94a3b8; font-size: .6875rem; }
    .tl-desc { font-weight: 500; color: #334155; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .tl-amt { font-weight: 600; text-align: right; }
    .tl-amt-green { color: #16a34a; }
    .tl-amt-red { color: #f43f5e; }
    .tl-amt-muted { color: #334155; }
    .tl-footer {
      display: flex; align-items: center; justify-content: space-between; gap: 12px;
      border-top: 1px solid #e2e8f0; background: #f8fafc;
      padding: 10px 12px; font-size: .75rem;
    }
    .tl-footer-label { font-weight: 500; color: #334155; }
    .tl-footer-value { font-weight: 600; color: #0b5d4d; }

    /* planning preview widget */
    .plan-wrap {
      display: flex; flex-direction: column;
      border-radius: 16px; border: 1px solid #b9e4db; background: #effaf7; padding: 14px;
    }
    .plan-header { display: flex; align-items: center; justify-content: space-between; }
    .plan-label { font-size: .875rem; font-weight: 500; color: #0b5d4d; }
    .plan-period {
      border-radius: 999px; background: rgba(255,255,255,.8);
      padding: 4px 10px; font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: #0b5d4d;
    }
    .plan-question { margin-top: 10px; font-size: 1rem; font-weight: 600; color: #0f172a; }
    .plan-body-text { margin-top: 6px; font-size: .875rem; color: #475569; line-height: 1.6; }
    .plan-preview {
      margin-top: 12px; border-radius: 16px; background: #0f172a; padding: 10px; color: #fff;
    }
    .plan-preview-inner { border-radius: 16px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.05); padding: 10px; }
    .plan-preview-tag { font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #94a3b8; }
    .plan-preview-title { margin-top: 4px; font-size: .875rem; font-weight: 600; color: #fff; }
    .plan-preview-badge {
      border-radius: 999px; background: rgba(251,191,36,.15);
      padding: 4px 10px; font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #fde68a;
    }
    .plan-preview-grid { margin-top: 10px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; font-size: .6875rem; }
    .plan-preview-cell { border-radius: 10px; background: rgba(255,255,255,.05); padding: 8px 10px; }
    .plan-preview-cell-label { color: #94a3b8; }
    .plan-preview-cell-value { margin-top: 4px; font-weight: 600; color: #fff; }
    .plan-preview-cell-value-amber { margin-top: 4px; font-weight: 600; color: #fde68a; }

    /* calendar card */
    .cal-card {
      border-radius: 24px; border: 1px solid #0f172a; background: #0f172a;
      padding: 20px; color: #fff;
    }
    .cal-card-label { font-size: .875rem; font-weight: 500; color: #99f6e4; }
    .cal-card-title { margin-top: 8px; font-size: 1.25rem; font-weight: 600; color: #fff; }
    .cal-card-badge {
      border-radius: 999px; background: rgba(255,255,255,.1);
      padding: 4px 12px; font-size: .75rem; font-weight: 600; color: #e2e8f0; white-space: nowrap;
    }
    .cal-items { margin-top: 20px; display: flex; flex-direction: column; gap: 12px; }
    .cal-item {
      display: flex; align-items: center; gap: 16px;
      border-radius: 16px; border: 1px solid rgba(255,255,255,.1);
      background: rgba(255,255,255,.05); padding: 12px 16px;
    }
    .cal-day {
      display: flex; align-items: center; justify-content: center;
      height: 48px; width: 48px; flex-shrink: 0;
      border-radius: 16px; background: #fff;
      font-size: .875rem; font-weight: 600; color: #0f172a;
    }
    .cal-item-title { font-size: .875rem; font-weight: 600; color: #fff; }
    .cal-item-detail { font-size: .875rem; color: #cbd5e1; margin-top: 2px; }

    /* stat pills */
    .stat-pills { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .stat-pill { border-radius: 16px; border: 1px solid #e2e8f0; padding: 16px; }
    .stat-pill-label { font-size: .875rem; font-weight: 500; color: #64748b; }
    .stat-pill-value { margin-top: 8px; font-size: 1.125rem; font-weight: 600; color: #0f172a; }

    /* two-col hero widgets */
    .app-widgets { display: grid; gap: 16px; }
    @media (min-width: 640px) { .app-widgets { grid-template-columns: 1fr 1fr; } }

    /* ── Features ── */
    .features-section { background: #fff; }
    .features-section .wrap { padding-top: 80px; padding-bottom: 80px; }
    .section-eyebrow { font-size: .875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .18em; color: #0d9276; }
    .section-h2 { margin-top: 16px; font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 600; letter-spacing: -.025em; color: #0f172a; }
    .section-lead { margin-top: 16px; font-size: 1.125rem; line-height: 2; color: #475569; max-width: 720px; }
    .feature-grid { margin-top: 48px; display: grid; gap: 24px; }
    @media (min-width: 768px) { .feature-grid { grid-template-columns: 1fr 1fr; } }
    @media (min-width: 1280px) { .feature-grid { grid-template-columns: 1fr 1fr 1fr; } }
    .feature-card {
      border-radius: 24px; border: 1px solid #e2e8f0;
      background: #f8fafc; padding: 24px;
      box-shadow: 0 1px 3px rgba(226,232,240,.6);
    }
    .feature-icon {
      display: flex; align-items: center; justify-content: center;
      height: 48px; width: 48px; border-radius: 16px;
      background: #e0f4ee; font-size: .875rem; font-weight: 600; color: #0b5d4d;
    }
    .feature-preview-label { font-size: .6875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #94a3b8; }
    .feature-preview-wrap {
      margin-top: 20px; border-radius: 22px;
      border: 1px solid rgba(226,232,240,.8); background: #f8fbfa; padding: 12px;
    }
    .feature-card h3 { margin-top: 20px; font-size: 1.25rem; font-weight: 600; color: #0f172a; }
    .feature-card p { margin-top: 8px; font-size: .875rem; line-height: 1.75; color: #475569; }

    /* feature: account preview */
    .fp-account { display: flex; flex-direction: column; gap: 8px; }
    .fp-account-row {
      border-radius: 16px; border: 1px solid #e2e8f0; background: #fff;
      padding: 10px 12px;
    }
    .fp-account-row-top { display: flex; justify-content: space-between; font-size: .6875rem; font-weight: 600; color: #334155; }
    .fp-bar-bg { margin-top: 8px; height: 8px; border-radius: 999px; background: #f1f5f9; }
    .fp-bar { height: 8px; border-radius: 999px; background: linear-gradient(90deg, #0f2846, #0d9276); }

    /* feature: ledger preview */
    .fp-ledger { border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; overflow: hidden; }
    .fp-ledger-head {
      display: grid; grid-template-columns: auto 1fr auto;
      gap: 12px; border-bottom: 1px solid #e2e8f0;
      padding: 8px 12px; font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #94a3b8;
    }
    .fp-ledger-row {
      display: grid; grid-template-columns: auto 1fr auto;
      gap: 12px; padding: 10px 12px; font-size: .6875rem;
      border-top: 1px solid #f1f5f9;
    }
    .fp-ledger-date { font-weight: 500; color: #64748b; }
    .fp-ledger-desc { font-weight: 500; color: #334155; }

    /* feature: forecast preview */
    .fp-forecast { border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; padding: 12px; }
    .fp-forecast-dark { border-radius: 16px; background: #0f172a; padding: 12px; }
    .fp-fc-header { display: flex; justify-content: space-between; font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #64748b; }
    .fp-fc-cols { margin-top: 12px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; }
    .fp-fc-before { border-radius: 16px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.05); padding: 12px; }
    .fp-fc-after { border-radius: 16px; border: 1px solid rgba(52,211,153,.2); background: rgba(52,211,153,.1); padding: 12px; }
    .fp-fc-label { font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; }
    .fp-fc-label-muted { color: #94a3b8; }
    .fp-fc-label-teal { color: #6ee7b7; }
    .fp-fc-title { margin-top: 4px; font-size: .8125rem; font-weight: 600; }
    .fp-fc-title-white { color: #f1f5f9; }
    .fp-fc-title-em { color: #fff; }
    .fp-fc-sub { margin-top: 8px; font-size: .6875rem; color: #94a3b8; }
    .fp-fc-sub-teal { margin-top: 8px; font-size: .6875rem; color: rgba(110,231,183,.7); }
    .fp-fc-val-red { margin-top: 4px; font-size: 1.125rem; font-weight: 600; color: #f87171; }
    .fp-fc-val-green { margin-top: 4px; font-size: 1.125rem; font-weight: 600; color: #34d399; }
    .fp-fc-arrow {
      display: flex; align-items: center; justify-content: center;
      height: 40px; width: 40px; border-radius: 9999px;
      background: rgba(52,211,153,.15);
    }
    .fp-fc-arrow svg { color: #34d399; }
    .fp-legend { margin-top: 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: .6875rem; font-weight: 500; color: #64748b; }
    .fp-dot { display: inline-block; height: 8px; width: 8px; border-radius: 9999px; margin-right: 4px; }

    /* feature: calendar preview */
    .fp-calendar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .fp-cal-cell { border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; padding: 12px; text-align: center; }
    .fp-cal-day { font-size: .875rem; font-weight: 600; color: #0f172a; }
    .fp-cal-label { margin-top: 4px; font-size: .6875rem; font-weight: 600; }
    .fp-cal-rose { background: #fff1f2; color: #e11d48; }
    .fp-cal-amber { background: #fffbeb; color: #d97706; }
    .fp-cal-emerald { background: #f0fdf4; color: #16a34a; }

    /* feature: credit/import preview */
    .fp-credit { border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
    .fp-credit-row { display: flex; align-items: center; justify-content: space-between; border-radius: 12px; background: #f8fafc; padding: 8px 12px; font-size: .6875rem; }
    .fp-credit-row-label { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; color: #475569; }
    .fp-credit-row-value { font-weight: 600; color: #0f172a; }
    .dot-amber { background: #f59e0b; }
    .dot-rose { background: #f43f5e; }
    .dot-emerald { background: #10b981; }

    /* feature: insights preview */
    .fp-insights { border-radius: 16px; border: 1px solid #e2e8f0; background: #fff; padding: 12px; }
    .fp-insights-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .fp-insights-cell { border-radius: 12px; background: #f8fafc; padding: 8px; }
    .fp-insights-cell-label { font-size: .625rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #94a3b8; }
    .fp-insights-cell-value { margin-top: 4px; font-size: .875rem; font-weight: 600; }
    .fp-green { color: #16a34a; }
    .fp-amber { color: #d97706; }
    .fp-red { color: #f43f5e; }

    /* ── How It Works ── */
    .how-section {
      border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0;
      background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
    }
    .how-section .wrap { padding-top: 80px; padding-bottom: 80px; }
    .steps-grid { margin-top: 48px; display: grid; gap: 24px; }
    @media (min-width: 1024px) { .steps-grid { grid-template-columns: repeat(3, 1fr); } }
    .step-card {
      border-radius: 24px; border: 1px solid #e2e8f0;
      background: #fff; padding: 32px;
      box-shadow: 0 1px 3px rgba(226,232,240,.6);
    }
    .step-num {
      display: flex; align-items: center; justify-content: center;
      height: 56px; width: 56px; border-radius: 16px;
      background: #0f172a; font-size: 1.125rem; font-weight: 600; color: #fff;
    }
    .step-card h3 { margin-top: 24px; font-size: 1.25rem; font-weight: 600; color: #0f172a; }
    .step-card p { margin-top: 12px; font-size: .875rem; line-height: 1.875; color: #475569; }

    /* ── Why ── */
    .why-section { background: #fff; }
    .why-section .wrap { padding-top: 80px; padding-bottom: 80px; }
    .why-grid { display: grid; gap: 48px; }
    @media (min-width: 1024px) { .why-grid { grid-template-columns: .95fr 1.05fr; } }
    .reason-list { display: flex; flex-direction: column; gap: 20px; }
    .reason-card {
      display: flex; gap: 16px;
      border-radius: 24px; border: 1px solid #e2e8f0;
      background: #f8fafc; padding: 24px;
      box-shadow: 0 1px 3px rgba(226,232,240,.6);
    }
    .reason-num {
      display: flex; align-items: center; justify-content: center;
      height: 48px; width: 48px; flex-shrink: 0; border-radius: 16px;
      background: #0f2846; font-size: .875rem; font-weight: 600; color: #fff;
    }
    .reason-card p { font-size: .875rem; line-height: 1.875; color: #334155; }

    /* ── CTA ── */
    .cta-section { background: #0f172a; }
    .cta-section .wrap { padding-top: 80px; padding-bottom: 80px; }
    .cta-card {
      overflow: hidden; border-radius: 32px;
      border: 1px solid rgba(255,255,255,.1);
      background: linear-gradient(135deg, rgba(15,40,70,1) 0%, rgba(12,74,110,1) 40%, rgba(13,148,118,.92) 100%);
      padding: 40px 24px;
      box-shadow: 0 25px 50px -12px rgba(2,6,23,.3);
    }
    @media (min-width: 640px) { .cta-card { padding: 48px 40px; } }
    .cta-eyebrow { font-size: .875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .18em; color: #ccfbf1; }
    .cta-h2 { margin-top: 16px; font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 600; letter-spacing: -.025em; color: #fff; max-width: 720px; }
    .cta-lead { margin-top: 16px; font-size: 1.125rem; line-height: 2; color: rgba(241,245,249,.9); max-width: 720px; }
    .cta-actions { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 16px; }
    .btn-outline-white { border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.1); color: #fff; }
    .btn-outline-white:hover { background: rgba(255,255,255,.15); }
    .cta-fine { margin-top: 20px; font-size: .875rem; color: rgba(241,245,249,.75); }
    .cta-fine a { font-weight: 500; color: #fff; transition: color .15s; }
    .cta-fine a:hover { color: #ccfbf1; }

    /* ── Footer ── */
    .site-footer { border-top: 1px solid #e2e8f0; background: #fff; }
    .site-footer .wrap { padding-top: 32px; padding-bottom: 32px; display: flex; flex-direction: column; gap: 24px; }
    .footer-top { display: flex; flex-direction: column; gap: 16px; }
    @media (min-width: 640px) { .footer-top { flex-direction: row; align-items: center; justify-content: space-between; } }
    .footer-logo-link { display: inline-flex; align-items: center; font-size: 2rem; line-height: 1; }
    @media (min-width: 640px) { .footer-logo-link { font-size: 2.2rem; } }
    .footer-nav { display: flex; flex-wrap: wrap; gap: 20px; font-size: .875rem; color: #64748b; }
    .footer-nav a { color: #64748b; transition: color .15s; }
    .footer-nav a:hover { color: #0f172a; }
    .footer-legal { border-top: 1px solid #e2e8f0; padding-top: 16px; }
    .legal-label { font-size: .6875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #64748b; margin-bottom: 10px; }
    .legal-links { display: flex; flex-wrap: wrap; gap: 12px 20px; font-size: .875rem; }
    .legal-links a { color: #64748b; transition: color .15s; }
    .legal-links a:hover { color: #0f172a; }
