/* ============================================================
   RICHIEST DESIGN SYSTEM — UPDATED
   ============================================================ */
            :root {
                --ink: #0f0f0f;
                --ink-light: #2a2a2a;
                --ink-muted: #555555;
                --paper: #fafaf7;
                --paper-warm: #f4f2ec;
                --paper-mid: #ede9e0;
                --border: #ddd9ce;
                --border-mid: #c8c3b5;
                --park: #2d6a4f;
                --earn: #b5541a;
                --build: #1a3a6b;
                --roam: #5c3d8f;
                --dare: #8b1a1a;
                --park-tint: #eef5f1;
                --earn-tint: #fdf0e8;
                --build-tint: #edf1f8;
                --roam-tint: #f2eefa;
                --dare-tint: #f8eded;
                --font-display: "Playfair Display", Georgia, serif;
                --font-body: "DM Sans", system-ui, sans-serif;
                --font-mono: "DM Mono", "Courier New", monospace;
                --s1: 0.25rem;
                --s2: 0.5rem;
                --s3: 0.75rem;
                --s4: 1rem;
                --s5: 1.5rem;
                --s6: 2rem;
                --s7: 3rem;
                --s8: 4rem;
                --s9: 5.5rem;
                --content-width: 740px;
                --wide-width: 960px;
                --radius: 4px;
                --radius-lg: 8px;
            }
            *,
            *::before,
            *::after {
                box-sizing: border-box;
                margin: 0;
                padding: 0;
            }
            html {
                font-size: 16px;
                scroll-behavior: smooth;
            }
            body {
                font-family: var(--font-body);
                font-size: 1.0625rem;
                line-height: 1.78;
                color: var(--ink);
                background: var(--paper);
                -webkit-font-smoothing: antialiased;
            }
            img {
                max-width: 100%;
                display: block;
            }
            a {
                color: var(--ink);
            }

            /* ── NAV ── */
            .site-nav {
                border-bottom: 1px solid var(--border);
                background: var(--paper);
                position: sticky;
                top: 0;
                z-index: 100;
            }
            .nav-inner {
                max-width: var(--wide-width);
                margin: 0 auto;
                padding: 0 var(--s5);
                display: flex;
                align-items: center;
                justify-content: space-between;
                height: 52px;
            }
            .nav-logo {
                font-family: var(--font-display);
                font-size: 1.25rem;
                font-weight: 900;
                letter-spacing: -0.02em;
                text-decoration: none;
                color: var(--ink);
            }
            .nav-logo span {
                color: var(--earn);
            }
            .nav-links {
                display: flex;
                gap: var(--s4);
                list-style: none;
                font-size: 0.8125rem;
                font-weight: 500;
                letter-spacing: 0.04em;
                text-transform: uppercase;
            }
            .nav-links a {
                text-decoration: none;
                color: var(--ink-muted);
                transition: color 0.15s;
            }
            .nav-links a:hover {
                color: var(--ink);
            }
            .nav-links .slot-link {
                position: relative;
            }
            .nav-links .slot-link::after {
                content: "";
                position: absolute;
                bottom: -2px;
                left: 0;
                right: 0;
                height: 2px;
                border-radius: 1px;
                opacity: 0;
                transition: opacity 0.15s;
            }
            .nav-links .slot-link:hover::after {
                opacity: 1;
            }
            .nav-links .park-link::after {
                background: var(--park);
            }
            .nav-links .earn-link::after {
                background: var(--earn);
            }
            .nav-links .build-link::after {
                background: var(--build);
            }
            .nav-links .roam-link::after {
                background: var(--roam);
            }
            .nav-links .dare-link::after {
                background: var(--dare);
            }

            /* ── HERO ── */
            .site-hero {
                display: flex;
                align-items: center;
                border-bottom: 1px solid var(--border);
                position: relative;
                overflow: hidden;
                background: var(--paper);
                padding: var(--s8) 0 var(--s7);
            }
            .hero-bg-word {
                position: absolute;
                right: -0.04em;
                bottom: -0.18em;
                font-family: var(--font-display);
                font-size: clamp(18rem, 36vw, 30rem);
                font-weight: 900;
                color: var(--ink);
                opacity: 0.032;
                line-height: 1;
                pointer-events: none;
                user-select: none;
                letter-spacing: -0.05em;
            }
            .hero-inner {
                max-width: var(--content-width);
                margin: 0 auto;
                padding: 0 var(--s5);
                position: relative;
                width: 100%;
            }
            .hero-kicker {
                font-family: var(--font-mono);
                font-size: 0.6875rem;
                font-weight: 600;
                letter-spacing: 0.14em;
                text-transform: uppercase;
                color: var(--ink-muted);
                margin-bottom: var(--s4);
                display: flex;
                align-items: center;
                gap: var(--s3);
            }
            .hero-kicker::before {
                content: "";
                display: inline-block;
                width: 24px;
                height: 1px;
                background: var(--ink-muted);
            }

            /* Trust badge — NEW */
            .hero-trust {
                font-size: 0.8125rem;
                color: var(--ink-muted);
                margin-bottom: var(--s4);
                display: flex;
                align-items: center;
                gap: var(--s2);
            }
            .hero-trust::before {
                content: "◆";
                color: var(--build);
                font-size: 0.5rem;
            }

            .hero-h1 {
                font-family: var(--font-display);
                font-size: clamp(2.75rem, 6vw, 4.25rem);
                font-weight: 900;
                line-height: 1.06;
                letter-spacing: -0.04em;
                color: var(--ink);
                max-width: 760px;
                margin-bottom: var(--s5);
            }
            .hero-h1 em {
                font-style: italic;
                color: var(--earn);
            }
            .hero-sub {
                font-size: 1.125rem;
                color: var(--ink-light);
                max-width: 560px;
                line-height: 1.65;
                margin-bottom: var(--s6);
            }

            /* ── BUTTONS — NEW HIERARCHY ── */
            .hero-actions {
                display: flex;
                gap: var(--s3);
                flex-wrap: wrap;
                align-items: center;
            }
            .btn-primary {
                display: inline-block;
                background: var(--ink);
                color: var(--paper);
                padding: 0.875rem 2.25rem;
                border-radius: var(--radius);
                font-size: 1.0625rem;
                font-weight: 700;
                text-decoration: none;
                transition: opacity 0.15s, transform 0.15s;
            }
            .btn-primary:hover {
                opacity: 0.85;
                color: var(--paper);
            }
            .btn-ghost {
                display: inline-block;
                background: transparent;
                color: var(--ink-muted);
                padding: 0.625rem 1.5rem;
                border-radius: var(--radius);
                border: 1px solid var(--border-mid);
                font-size: 0.875rem;
                font-weight: 500;
                text-decoration: none;
                transition: border-color 0.15s, color 0.15s;
            }
            .btn-ghost:hover {
                border-color: var(--ink);
                color: var(--ink);
            }

            .hero-byline {
                margin-top: var(--s7);
                padding-top: var(--s5);
                border-top: 1px solid var(--border);
                display: flex;
                align-items: center;
                gap: var(--s3);
                font-size: 0.8125rem;
                color: var(--ink-muted);
            }
            .hero-byline img {
                width: 28px;
                height: 28px;
                border-radius: 50%;
                object-fit: cover;
            }
            .hero-byline strong {
                color: var(--ink-light);
                font-weight: 500;
            }

            /* ── FRAME SECTION ── */
            .frame-section {
                padding: var(--s9) 0;
                border-bottom: 1px solid var(--border);
            }
            .section-inner {
                max-width: var(--wide-width);
                margin: 0 auto;
                padding: 0 var(--s5);
            }
            .section-label {
                font-family: var(--font-mono);
                font-size: 0.6875rem;
                font-weight: 500;
                letter-spacing: 0.14em;
                text-transform: uppercase;
                color: var(--ink-muted);
                margin-bottom: var(--s4);
                display: flex;
                align-items: center;
                gap: var(--s3);
            }
            .section-label::before {
                content: "";
                display: inline-block;
                width: 20px;
                height: 1px;
                background: var(--ink-muted);
            }
            .section-h2 {
                font-family: var(--font-display);
                font-size: clamp(1.75rem, 3.5vw, 2.5rem);
                font-weight: 700;
                letter-spacing: -0.03em;
                line-height: 1.2;
                color: var(--ink);
                max-width: 560px;
                margin-bottom: var(--s4);
            }
            .section-intro {
                font-size: 1rem;
                color: var(--ink-muted);
                max-width: 520px;
                line-height: 1.65;
                margin-bottom: var(--s7);
            }

            /* SECTION TAKEAWAY — NEW */
            .section-takeaway {
                font-size: 0.9375rem;
                color: var(--ink-light);
                font-weight: 500;
                margin-top: var(--s6);
                padding-left: var(--s4);
                border-left: 3px solid var(--border-mid);
            }

            /* SLOT CARDS GRID */
            .slots-grid {
                display: grid;
                grid-template-columns: repeat(5, 1fr);
                gap: var(--s3);
                margin-bottom: var(--s7);
            }
            .slot-card {
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s5);
                text-decoration: none;
                color: var(--ink);
                background: var(--paper);
                transition:
                    border-color 0.15s,
                    transform 0.15s,
                    box-shadow 0.15s;
                display: flex;
                flex-direction: column;
                gap: var(--s3);
                position: relative;
                overflow: hidden;
            }
            .slot-card::before {
                content: "";
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                height: 3px;
            }
            .slot-card.park::before {
                background: var(--park);
            }
            .slot-card.earn::before {
                background: var(--earn);
            }
            .slot-card.build::before {
                background: var(--build);
            }
            .slot-card.roam::before {
                background: var(--roam);
            }
            .slot-card.dare::before {
                background: var(--dare);
            }
            .slot-card:hover {
                border-color: var(--border-mid);
                transform: translateY(-2px);
                box-shadow: 0 4px 16px rgba(15, 15, 15, 0.07);
            }
            .slot-number {
                font-family: var(--font-mono);
                font-size: 0.625rem;
                font-weight: 500;
                letter-spacing: 0.1em;
                text-transform: uppercase;
            }
            .slot-card.park .slot-number { color: var(--park); }
            .slot-card.earn .slot-number { color: var(--earn); }
            .slot-card.build .slot-number { color: var(--build); }
            .slot-card.roam .slot-number { color: var(--roam); }
            .slot-card.dare .slot-number { color: var(--dare); }
            .slot-name {
                font-family: var(--font-display);
                font-size: 1.375rem;
                font-weight: 700;
                letter-spacing: -0.02em;
                line-height: 1;
            }
            .slot-job {
                font-size: 0.875rem;
                color: var(--ink-muted);
                line-height: 1.55;
            }

            /* TICKER BADGE — NEW, more prominent */
            .slot-ticker-badge {
                margin-top: auto;
                padding-top: var(--s3);
                border-top: 1px solid var(--border);
                display: flex;
                align-items: center;
                gap: var(--s2);
            }
            .slot-ticker-badge .ticker-label {
                font-size: 0.6875rem;
                color: var(--ink-muted);
                text-transform: uppercase;
                letter-spacing: 0.06em;
            }
            .slot-ticker-badge .ticker-value {
                font-family: var(--font-mono);
                font-size: 1rem;
                font-weight: 600;
            }
            .slot-card.park .ticker-value { color: var(--park); }
            .slot-card.earn .ticker-value { color: var(--earn); }
            .slot-card.build .ticker-value { color: var(--build); }
            .slot-card.roam .ticker-value { color: var(--roam); }
            .slot-card.dare .ticker-value { color: var(--dare); }

            /* FRAME THESIS BLOCK */
            .frame-thesis {
                background: var(--paper-warm);
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s6) var(--s7);
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: var(--s6) var(--s8);
            }
            .thesis-quote {
                grid-column: 1 / -1;
                font-family: var(--font-display);
                font-size: clamp(1.25rem, 2.5vw, 1.625rem);
                font-weight: 700;
                line-height: 1.35;
                letter-spacing: -0.025em;
                color: var(--ink);
                padding-bottom: var(--s5);
                border-bottom: 1px solid var(--border);
            }
            .thesis-quote em {
                font-style: italic;
                color: var(--earn);
            }
            .thesis-item { }
            .thesis-item-label {
                font-family: var(--font-mono);
                font-size: 0.625rem;
                font-weight: 500;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                color: var(--ink-muted);
                margin-bottom: var(--s2);
            }
            .thesis-item p {
                font-size: 0.9375rem;
                color: var(--ink-light);
                line-height: 1.65;
            }

            /* ── HOW IT WORKS — STEP CIRCLES, OUTCOMES ── */
            .how-section {
                padding: var(--s9) 0;
                border-bottom: 1px solid var(--border);
                background: var(--paper-warm);
            }
            .how-grid {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                gap: var(--s5);
                margin-top: var(--s6);
            }
            .how-card {
                background: var(--paper);
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s5);
            }

            /* Numbered circle — NEW */
            .how-step-circle {
                width: 40px;
                height: 40px;
                border-radius: 50%;
                background: var(--ink);
                color: var(--paper);
                font-family: var(--font-mono);
                font-size: 0.875rem;
                font-weight: 600;
                display: flex;
                align-items: center;
                justify-content: center;
                margin-bottom: var(--s4);
            }

            /* Outcome line — NEW */
            .how-outcome {
                font-size: 0.8125rem;
                color: var(--ink-muted);
                margin-top: var(--s3);
                font-style: italic;
            }

            .how-card h3 {
                font-family: var(--font-display);
                font-size: 1.125rem;
                font-weight: 700;
                letter-spacing: -0.02em;
                margin-bottom: var(--s3);
                color: var(--ink);
            }
            .how-card p {
                font-size: 0.9375rem;
                color: var(--ink-light);
                line-height: 1.65;
            }

            /* ── ALLOCATION PREVIEW — MOBILE CARDS, HIGHLIGHT BUILD ── */
            .alloc-section {
                padding: var(--s9) 0;
                border-bottom: 1px solid var(--border);
            }
            .alloc-grid {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: var(--s7);
                align-items: start;
                margin-top: var(--s6);
            }
            .alloc-table-wrap {
                overflow-x: auto;
            }
            .alloc-table {
                width: 100%;
                border-collapse: collapse;
                font-size: 0.9375rem;
            }
            .alloc-table th {
                font-family: var(--font-mono);
                font-size: 0.6875rem;
                letter-spacing: 0.08em;
                text-transform: uppercase;
                color: var(--ink-muted);
                font-weight: 500;
                text-align: left;
                padding: var(--s3) var(--s3);
                border-bottom: 2px solid var(--border);
                background: var(--paper-warm);
            }
            .alloc-table th:not(:first-child) {
                text-align: center;
            }

            /* Build column highlight — NEW */
            .alloc-table th.build-col {
                color: var(--build);
                font-weight: 700;
            }
            .alloc-table td.build-col {
                background: var(--build-tint);
                font-weight: 700;
            }

            .alloc-table td {
                padding: var(--s3);
                border-bottom: 1px solid var(--border);
                text-align: center;
                font-size: 0.875rem;
            }
            .alloc-table td:first-child {
                text-align: left;
                font-weight: 500;
                color: var(--ink-light);
            }
            .alloc-table tr:last-child td {
                border-bottom: none;
            }
            .alloc-note {
                font-size: 0.8125rem;
                color: var(--ink-muted);
                font-style: italic;
                margin-top: var(--s3);
            }

            .alloc-prose h3 {
                font-family: var(--font-display);
                font-size: 1.375rem;
                font-weight: 700;
                letter-spacing: -0.02em;
                margin-bottom: var(--s4);
                color: var(--ink);
            }
            .alloc-prose p {
                font-size: 0.9375rem;
                color: var(--ink-light);
                line-height: 1.75;
                margin-bottom: var(--s4);
            }
            .alloc-prose p:last-child {
                margin-bottom: 0;
            }

            /* ── VS SECTION — VERDICT LINE, READABILITY ── */
            .vs-section {
                padding: var(--s9) 0;
                border-bottom: 1px solid var(--border);
                background: var(--paper-warm);
            }

            /* Verdict line — NEW */
            .vs-verdict {
                font-size: 1.0625rem;
                color: var(--ink-light);
                font-weight: 500;
                max-width: 640px;
                margin-bottom: var(--s6);
                line-height: 1.6;
            }

            .vs-grid {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                gap: var(--s4);
                margin-top: var(--s6);
            }
            .vs-card {
                background: var(--paper);
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s5);
            }
            .vs-label {
                font-family: var(--font-mono);
                font-size: 0.625rem;
                font-weight: 500;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                color: var(--ink-muted);
                margin-bottom: var(--s3);
            }
            .vs-card h3 {
                font-size: 0.9375rem;
                font-weight: 600;
                color: var(--ink);
                margin-bottom: var(--s3);
                line-height: 1.35;
            }
            .vs-card p {
                font-size: 0.9375rem;
                color: var(--ink-light);
                line-height: 1.65;
            }

            /* ── TOOL CTA STRIP — MATCH TOOLS PAGE ── */
            .tool-strip {
                padding: var(--s9) 0;
                border-bottom: 1px solid var(--border);
            }

            .tool-section {
                margin-bottom: var(--s8);
            }
            .tool-section:last-child {
                margin-bottom: 0;
            }

            .section-header {
                display: flex;
                align-items: center;
                gap: var(--s3);
                margin-bottom: var(--s5);
            }
            .section-dot {
                width: 8px;
                height: 8px;
                border-radius: 50%;
                flex-shrink: 0;
            }
            .section-dot.build { background: var(--build); }
            .section-dot.park { background: var(--park); }
            .section-dot.earn { background: var(--earn); }
            .section-dot.risk { background: var(--dare); }
            .section-dot.debt { background: var(--ink-muted); }
            .section-header h2 {
                font-family: var(--font-display);
                font-size: 1.5rem;
                font-weight: 700;
                letter-spacing: -0.02em;
            }
            .section-header p {
                font-size: 0.9375rem;
                color: var(--ink-muted);
                margin-left: auto;
            }

            .tool-section-grid {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: var(--s4);
            }

            .tool-card {
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s5);
                background: var(--paper-warm);
                text-decoration: none;
                color: var(--ink);
                transition: transform 0.15s, border-color 0.15s, background 0.15s;
                display: flex;
                flex-direction: column;
            }
            .tool-card:hover {
                transform: translateY(-1px);
                border-color: var(--border-mid);
                background: var(--paper-mid);
            }

            .tool-tag {
                display: inline-flex;
                align-items: center;
                gap: var(--s2);
                font-family: var(--font-mono);
                font-size: 0.625rem;
                font-weight: 400;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                margin-bottom: var(--s3);
            }
            .tool-tag::before {
                content: "";
                width: 14px;
                height: 1px;
                background: currentColor;
                display: inline-block;
            }
            .tool-tag.park { color: var(--park); }
            .tool-tag.earn { color: var(--earn); }
            .tool-tag.build { color: var(--build); }
            .tool-tag.risk { color: var(--dare); }
            .tool-tag.debt { color: var(--ink-muted); }

            .tool-card h3 {
                font-family: var(--font-display);
                font-size: 1.125rem;
                font-weight: 600;
                line-height: 1.25;
                margin-bottom: var(--s3);
            }
            .tool-card p {
                color: var(--ink-light);
                font-size: 0.9375rem;
                line-height: 1.6;
                margin-bottom: var(--s4);
                flex-grow: 1;
            }

            .tool-card .cta {
                font-family: var(--font-mono);
                font-size: 0.75rem;
                font-weight: 500;
                color: var(--ink);
                letter-spacing: 0.06em;
                text-transform: uppercase;
                border-bottom: 1px solid var(--border-mid);
                padding-bottom: 1px;
                display: inline-block;
            }

            /* Quick allocation mini-tool — interactive */
            .mini-calc {
                background: var(--paper-warm);
                border: 1px solid var(--border);
                border-radius: var(--radius-lg);
                padding: var(--s5) var(--s6);
                margin-top: var(--s7);
            }
            .mini-calc h3 {
                font-family: var(--font-display);
                font-size: 1.0625rem;
                font-weight: 700;
                margin-bottom: var(--s3);
            }
            .mini-calc-row {
                display: flex;
                gap: var(--s4);
                align-items: end;
                flex-wrap: wrap;
            }
            .mini-calc-field {
                display: flex;
                flex-direction: column;
                gap: var(--s2);
            }
            .mini-calc-field label {
                font-size: 0.8125rem;
                color: var(--ink-muted);
            }
            .mini-calc-field input {
                padding: var(--s3) var(--s4);
                border: 1px solid var(--border-mid);
                border-radius: var(--radius);
                font-size: 1rem;
                font-family: var(--font-body);
                width: 120px;
            }
            .mini-calc-field input:focus {
                outline: none;
                border-color: var(--ink);
            }
            .mini-calc-result {
                font-size: 0.9375rem;
                color: var(--ink-light);
                margin-top: var(--s4);
                line-height: 1.6;
            }
            .mini-calc-result strong {
                color: var(--ink);
            }

            /* Link to full tools page */
            .tools-all-link {
                display: inline-block;
                margin-top: var(--s5);
                font-size: 0.875rem;
                font-weight: 600;
                color: var(--ink);
                border-bottom: 2px solid var(--border-mid);
                padding-bottom: 1px;
            }

            /* ── BROKER CTA — SAVE STEP ── */
            .broker-cta-strip {
                background: linear-gradient(to bottom, var(--paper) 0%, var(--paper-warm) 100%);
                color: var(--ink);
                padding: var(--s6) 0 var(--s5);
                border-top: 1px solid var(--border);
            }
            .broker-inner {
                max-width: var(--wide-width);
                margin: 0 auto;
                padding: 0 var(--s5);
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
                gap: var(--s5);
                align-items: center;
            }
            .broker-text {
                padding-right: var(--s4);
                border-right: 1px solid var(--border);
            }
            .broker-kicker {
                font-family: var(--font-mono);
                font-size: 0.6875rem;
                letter-spacing: 0.14em;
                text-transform: uppercase;
                color: var(--build);
                margin-bottom: var(--s2);
            }
            .broker-text h2 {
                font-family: var(--font-display);
                font-size: clamp(1.5rem, 2.8vw, 2rem);
                font-weight: 700;
                letter-spacing: -0.03em;
                line-height: 1.12;
                color: var(--ink);
                margin-bottom: var(--s2);
                max-width: 12ch;
            }
            .broker-text p {
                font-size: 0.9rem;
                color: var(--ink-light);
                max-width: 40ch;
                line-height: 1.6;
            }

            .broker-instruction {
                font-size: 0.95rem;
                color: var(--ink-light);
                font-weight: 500;
                max-width: 36ch;
                margin-top: var(--s2);
            }

            .broker-buttons {
                display: flex;
                gap: var(--s3);
                flex-wrap: wrap;
                flex-shrink: 0;
                justify-content: flex-start;
            }
            .cta-btn {
                display: inline-block;
                padding: var(--s3) var(--s5);
                border-radius: var(--radius);
                font-size: 0.9375rem;
                font-weight: 600;
                text-decoration: none;
                transition: all 0.15s;
                white-space: nowrap;
            }
            .cta-btn.primary {
                background: var(--build);
                color: var(--paper);
                border: 1px solid var(--build);
            }
            .cta-btn.primary:hover {
                background: #102849;
                border-color: #102849;
            }
            .cta-btn.secondary {
                background: transparent;
                color: var(--ink);
                border: 1px solid var(--border-mid);
            }
            .cta-btn.secondary:hover {
                border-color: var(--build);
                color: var(--build);
            }

            /* ── FOOTER ── */
            .site-footer {
                margin-top: 0;
                border-top: 1px solid var(--border);
                background: var(--paper-warm);
                padding: var(--s7) 0 var(--s6);
            }
            .footer-inner {
                max-width: var(--wide-width);
                margin: 0 auto;
                padding: 0 var(--s5);
            }
            .footer-grid {
                display: grid;
                grid-template-columns: 2fr 1fr 1fr 1fr;
                gap: var(--s6);
                margin-bottom: var(--s7);
            }
            .footer-brand .brand-name {
                font-family: var(--font-display);
                font-size: 1.25rem;
                font-weight: 900;
                margin-bottom: var(--s3);
            }
            .footer-brand .brand-name span {
                color: var(--earn);
            }
            .footer-brand p {
                font-size: 0.875rem;
                color: var(--ink-muted);
                max-width: 220px;
                line-height: 1.6;
            }
            .footer-col h4 {
                font-family: var(--font-mono);
                font-size: 0.6875rem;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                color: var(--ink-muted);
                margin-bottom: var(--s3);
            }
            .footer-col ul {
                list-style: none;
            }
            .footer-col li {
                margin-bottom: var(--s2);
            }
            .footer-col a {
                font-size: 0.875rem;
                color: var(--ink-light);
                text-decoration: none;
            }
            .footer-col a:hover {
                color: var(--ink);
            }
            .footer-bottom {
                border-top: 1px solid var(--border);
                padding-top: var(--s5);
                display: flex;
                justify-content: space-between;
                align-items: center;
                gap: var(--s4);
                flex-wrap: wrap;
            }
            .footer-disclaimer {
                font-size: 0.8125rem;
                color: var(--ink-muted);
                max-width: 500px;
                line-height: 1.55;
            }
            .footer-links {
                display: flex;
                gap: var(--s4);
                font-size: 0.8125rem;
            }
            .footer-links a {
                color: var(--ink-muted);
                text-decoration: none;
            }
            .footer-links a:hover {
                color: var(--ink);
            }

            /* ── RESPONSIVE ── */
            @media (max-width: 860px) {
                .slots-grid {
                    grid-template-columns: repeat(3, 1fr);
                }
                .how-grid {
                    grid-template-columns: 1fr 1fr;
                }
                .alloc-grid {
                    grid-template-columns: 1fr;
                }
                .vs-grid {
                    grid-template-columns: 1fr 1fr;
                }
                .tools-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
                .footer-grid {
                    grid-template-columns: 1fr 1fr;
                }
            }

            /* ── MOBILE — SLOT CARDS AS STACKED ROWS, TABLE SCROLLABLE ── */
            @media (max-width: 600px) {
                .nav-links {
                    display: none;
                }
                .slots-grid {
                    grid-template-columns: 1fr;
                }
                /* Make slot cards wider on mobile */
                .slot-card {
                    padding: var(--s4) var(--s5);
                }
                .how-grid {
                    grid-template-columns: 1fr;
                }
                .vs-grid {
                    grid-template-columns: 1fr;
                }
                .tools-grid {
                    grid-template-columns: 1fr;
                }
                .frame-thesis {
                    grid-template-columns: 1fr;
                    padding: var(--s5);
                }
                .broker-inner {
                    flex-direction: column;
                    align-items: flex-start;
                }

                /* Allocation table — horizontal scroll with sticky first col */
                .alloc-table-wrap {
                    overflow-x: auto;
                    -webkit-overflow-scrolling: touch;
                }
                .alloc-table {
                    min-width: 480px;
                }

                /* Hero adjustments */
                .site-hero {
                    padding: var(--s7) 0 var(--s6);
                }
                .hero-inner {
                    padding: 0 var(--s4);
                    min-height: auto;
                }
                .tools-grid {
                    grid-template-columns: 1fr;
                }

                /* Tool sections collapse to single column on mobile */
                .tool-section-grid,
                .tools-grid {
                    grid-template-columns: 1fr;
                }

                /* Mini calc full-width on mobile */
                .mini-calc {
                    padding: var(--s4) var(--s5);
                }

                .mini-calc-field input {
                    width: 100%;
                }

                .mini-calc-row {
                    flex-direction: column;
                    align-items: stretch;
                }

                .tool-strip {
                    padding: var(--s7) 0;
                }

                .tool-section {
                    margin-bottom: var(--s5);
                }

                /* Broker CTA band — less padding */
                .broker-cta-strip {
                    padding: var(--s7) 0;
                }

                .hero-actions {
                    flex-direction: column;
                    align-items: stretch;
                }
                .btn-primary {
                    text-align: center;
                }
                .btn-ghost {
                    text-align: center;
                }

                /* Footer */
                .footer-grid {
                    grid-template-columns: 1fr;
                }
                .footer-bottom {
                    flex-direction: column;
                    align-items: flex-start;
                }
            }

            /* ── SMALL SCREEN ACCESSIBILITY ── */
            @media (max-width: 420px) {
                .slots-grid {
                    grid-template-columns: 1fr;
                }
                .footer-grid {
                    grid-template-columns: 1fr;
                }
                .footer-bottom {
                    flex-direction: column;
                    align-items: flex-start;
                }
            }

            .sr-only {
                position: absolute !important;
                width: 1px;
                height: 1px;
                padding: 0;
                margin: -1px;
                overflow: hidden;
                clip: rect(0, 0, 0, 0);
                white-space: nowrap;
                border: 0;
            }
