/* ================================================================
   stock-landing.css — Landing hero, stats ribbon, pipeline, diff cards,
   evo cards, philosophy, weekly picks table, scorecard, market conditions,
   site footer
   ================================================================ */

    /* ── Landing Page (public home) ──────────────────────────── */
    .landing-state {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 0 0 80px;
        padding-top: var(--nav-h);
    }
    .landing-section {
        width: 100%;
        max-width: 1100px;
        margin-bottom: 72px;
        padding: 0 48px;
    }
    .landing-section-title {
        font-family: 'Instrument Serif', serif;
        font-size: 24px;
        color: var(--text);
        margin-bottom: 20px;
    }

    /* Hero */
    .landing-hero {
        width: 100%;
        text-align: center;
        padding: 80px 48px 56px;
        margin-bottom: 0;
        background: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(251,191,36,0.07) 0%, transparent 70%);
        border-bottom: 1px solid var(--border-subtle);
        position: relative;
    }
    .landing-title {
        font-family: 'Instrument Serif', serif;
        font-size: 48px;
        color: var(--text);
        margin-bottom: 24px;
        letter-spacing: -0.03em;
        line-height: 1.15;
    }
    .landing-title .accent { color: #fbbf24; }
    .landing-subtitle {
        font-size: 17px;
        color: var(--text-secondary);
        margin-bottom: 12px;
        line-height: 1.7;
        max-width: 620px;
        margin-left: auto;
        margin-right: auto;
    }
    .landing-hero-highlight {
        font-family: 'Instrument Serif', serif;
        font-size: 19px;
        color: #fbbf24;
        margin-bottom: 40px;
        font-style: italic;
    }

    /* Social Proof Bar */
    .social-proof {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 14px 24px;
        font-size: 12px;
        color: var(--text-secondary);
        background: rgba(251,191,36,0.03);
        border-bottom: 1px solid var(--border-subtle);
    }
    .social-proof strong { color: var(--text); font-family: var(--font-mono); font-weight: 600; }
    .social-proof-dot {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--green);
        animation: pulse-dot 2s ease-in-out infinite;
    }
    @keyframes pulse-dot {
        0%, 100% { opacity: 1; }
        50% { opacity: 0.4; }
    }
    .social-proof-sep { color: var(--border); }

    /* ── Animations & Keyframes ──────────────────────────────── */
    @keyframes fadeInUp {
        from { opacity: 0; transform: translateY(20px); }
        to   { opacity: 1; transform: translateY(0); }
    }
    @keyframes fadeIn {
        from { opacity: 0; }
        to   { opacity: 1; }
    }
    @keyframes heroEntrance {
        from { opacity: 0; transform: translateY(24px) scale(0.98); }
        to   { opacity: 1; transform: translateY(0) scale(1); }
    }

    /* Scroll-reveal: hidden by default, revealed by IntersectionObserver */
    .reveal {
        opacity: 0;
        transform: translateY(24px);
        transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                    transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    .reveal.visible {
        opacity: 1;
        transform: translateY(0);
    }
    /* Stagger children */
    .reveal-stagger > .reveal:nth-child(1) { transition-delay: 0s; }
    .reveal-stagger > .reveal:nth-child(2) { transition-delay: 0.08s; }
    .reveal-stagger > .reveal:nth-child(3) { transition-delay: 0.16s; }
    .reveal-stagger > .reveal:nth-child(4) { transition-delay: 0.24s; }
    .reveal-stagger > .reveal:nth-child(5) { transition-delay: 0.32s; }
    .reveal-stagger > .reveal:nth-child(6) { transition-delay: 0.4s; }

    /* Hero entrance animation */
    .landing-hero .landing-title {
        animation: heroEntrance 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    }
    .landing-hero .landing-subtitle {
        animation: heroEntrance 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.1s both;
    }
    .landing-hero .landing-hero-highlight {
        animation: heroEntrance 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s both;
    }
    .landing-hero .landing-search {
        animation: heroEntrance 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s both;
    }

    /* ── Section Navigation ─────────────────────────────────── */
    .section-nav {
        width: 100%;
        background: rgba(9, 9, 11, 0.85);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
        border-bottom: 1px solid var(--border-subtle);
        z-index: 900;
        position: relative;
        transition: box-shadow 0.2s;
    }
    .section-nav.stuck {
        position: fixed;
        top: var(--nav-h);
        left: 0;
        right: 0;
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
    }
    .section-nav-spacer {
        display: none;
    }
    .section-nav.stuck + .section-nav-spacer {
        display: block;
    }
    .section-nav-inner {
        max-width: 1100px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0;
        padding: 0 48px;
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .section-nav-inner::-webkit-scrollbar { display: none; }
    .section-nav-link {
        font-family: var(--font-mono);
        font-size: 12px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: var(--muted);
        text-decoration: none;
        padding: 18px 28px;
        white-space: nowrap;
        position: relative;
        transition: color 0.2s;
        flex-shrink: 0;
    }
    .section-nav-link:hover {
        color: var(--text);
    }
    .section-nav-link:hover::after {
        transform: scaleX(0.5);
        background: var(--text-secondary);
    }
    .section-nav-link.active {
        color: #fbbf24;
    }
    .section-nav-link::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 28px;
        right: 28px;
        height: 2px;
        background: #fbbf24;
        border-radius: 1px;
        transform: scaleX(0);
        transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .section-nav-link.active::after {
        transform: scaleX(1);
    }

    /* ── Stats Ribbon ────────────────────────────────────────── */
    .stats-ribbon {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        border-bottom: 1px solid var(--border-subtle);
        background: linear-gradient(180deg, #111113 0%, var(--bg) 100%);
    }
    .stats-ribbon-item {
        padding: 40px 20px 36px;
        text-align: center;
        border-right: 1px solid var(--border-subtle);
        position: relative;
        transition: background 0.3s;
    }
    .stats-ribbon-item:hover {
        background: rgba(255,255,255,0.02);
    }
    .stats-ribbon-item:hover .stats-ribbon-num {
        transform: scale(1.05);
    }
    .stats-ribbon-item:last-child { border-right: none; }
    .stats-ribbon-num {
        font-family: var(--font-mono);
        font-size: 40px;
        font-weight: 700;
        color: var(--text);
        line-height: 1;
        margin-bottom: 8px;
        transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    .stats-ribbon-num.gold { color: #fbbf24; }
    .stats-ribbon-num .unit { font-size: 18px; font-weight: 500; color: var(--text-secondary); }
    .stats-ribbon-label {
        font-family: var(--font-mono);
        font-size: 10px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: var(--muted);
    }
    .stats-ribbon-sub { font-size: 11px; color: var(--muted); margin-top: 4px; }
    @media (max-width: 900px) {
        .stats-ribbon { grid-template-columns: repeat(3, 1fr); }
        .stats-ribbon-item:nth-child(3) { border-right: none; }
    }
    @media (max-width: 600px) {
        .stats-ribbon { grid-template-columns: repeat(2, 1fr); }
        .stats-ribbon-item:nth-child(2n) { border-right: none; }
    }

    /* ── Pipeline Visualization ───────────────────────────────── */
    .pipeline-section {
        width: 100%;
        padding: 72px 48px;
        margin-bottom: 16px;
        background: linear-gradient(180deg, transparent 0%, rgba(59,130,246,0.03) 50%, transparent 100%);
    }
    .pipeline-inner { max-width: 1100px; margin: 0 auto; }
    .pipeline-header { text-align: center; margin-bottom: 48px; }
    .pipeline-header h2 { font-family: 'Instrument Serif', serif; font-size: 28px; color: var(--text); margin-bottom: 8px; }
    .pipeline-header p { font-size: 14px; color: var(--text-secondary); max-width: 600px; margin: 0 auto; line-height: 1.6; }
    .pipeline-flow { display: flex; gap: 0; position: relative; align-items: stretch; }
    .pipeline-flow .pipeline-step { flex: 1; }
    .pipeline-step {
        padding: 32px 28px;
        position: relative;
        border: 1px solid var(--border-subtle);
        background: linear-gradient(180deg, #1c1c20 0%, var(--surface) 100%);
        box-shadow: 0 4px 16px rgba(0,0,0,0.2), inset 0 1px 0 rgba(255,255,255,0.03);
        transition: border-color 0.3s, box-shadow 0.3s, transform 0.3s;
    }
    .pipeline-step:hover {
        border-color: rgba(251,191,36,0.25);
        box-shadow: 0 4px 16px rgba(0,0,0,0.2), 0 0 20px rgba(251,191,36,0.06), inset 0 1px 0 rgba(255,255,255,0.05);
        transform: translateY(-2px);
    }
    .pipeline-step:hover .pipeline-title {
        color: #fbbf24;
    }
    .pipeline-step:first-child { border-radius: var(--radius) 0 0 var(--radius); }
    .pipeline-step:last-child { border-radius: 0 var(--radius) var(--radius) 0; }
    .pipeline-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        min-width: 36px;
        height: 36px;
        background: #1a1a1e;
        border: 2px solid rgba(251,191,36,0.5);
        border-radius: 50%;
        box-shadow: 0 0 12px rgba(251,191,36,0.2);
        align-self: center;
        margin: 0 -4px;
        z-index: 2;
        flex-shrink: 0;
    }
    .pipeline-num {
        font-family: var(--font-mono);
        font-size: 11px;
        font-weight: 700;
        color: #fbbf24;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        margin-bottom: 12px;
        display: flex;
        align-items: center;
        gap: 8px;
    }
    .pipeline-num::before {
        content: '';
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #fbbf24;
        flex-shrink: 0;
        box-shadow: 0 0 8px rgba(251,191,36,0.4);
    }
    .pipeline-title { font-family: 'Instrument Serif', serif; font-size: 24px; color: var(--text); margin-bottom: 14px; transition: color 0.3s; }
    .pipeline-detail { font-size: 13px; color: var(--text-secondary); line-height: 1.7; }
    .pipeline-detail .metric {
        display: inline-block;
        font-family: var(--font-mono);
        font-size: 11px;
        font-weight: 600;
        color: #fbbf24;
        background: rgba(251,191,36,0.08);
        border: 1px solid rgba(251,191,36,0.2);
        padding: 2px 8px;
        border-radius: var(--radius-xs);
        margin: 2px 0;
    }
    @media (max-width: 900px) {
        .pipeline-flow { flex-direction: column; }
        .pipeline-step { border-radius: 0 !important; }
        .pipeline-step:first-child { border-radius: var(--radius) var(--radius) 0 0 !important; }
        .pipeline-step:last-child { border-radius: 0 0 var(--radius) var(--radius) !important; }
        .pipeline-arrow { display: none; }
    }

    /* ── "What Makes This Different" Section ──────────────── */
    .diff-section-header { text-align: center; margin-bottom: 40px; }
    .diff-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
    .diff-card {
        padding: 28px 28px 24px;
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        box-shadow:
            0 2px 4px rgba(0,0,0,0.2),
            0 8px 24px rgba(0,0,0,0.15),
            inset 0 1px 0 rgba(255,255,255,0.04);
        transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
    }
    .diff-card:hover {
        border-color: var(--border);
        transform: translateY(-2px);
        box-shadow:
            0 4px 8px rgba(0,0,0,0.25),
            0 16px 40px rgba(0,0,0,0.2),
            inset 0 1px 0 rgba(255,255,255,0.06);
    }
    .diff-card-highlight {
        border-color: rgba(251,191,36,0.3);
        background: linear-gradient(145deg, #1c1a14 0%, var(--surface) 100%);
        box-shadow:
            0 2px 4px rgba(0,0,0,0.2),
            0 8px 24px rgba(0,0,0,0.15),
            0 0 0 1px rgba(251,191,36,0.08),
            inset 0 1px 0 rgba(251,191,36,0.06);
    }
    .diff-card-highlight:hover {
        border-color: rgba(251,191,36,0.5);
        box-shadow:
            0 4px 8px rgba(0,0,0,0.25),
            0 16px 40px rgba(0,0,0,0.2),
            0 0 24px rgba(251,191,36,0.06),
            inset 0 1px 0 rgba(251,191,36,0.08);
    }
    .diff-card-highlight .diff-title::before { content: ''; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #fbbf24; margin-right: 8px; box-shadow: 0 0 8px rgba(251,191,36,0.4); vertical-align: middle; }
    .diff-title { font-family: 'Instrument Serif', serif; font-size: 20px; color: var(--text); margin-bottom: 10px; }
    .diff-detail { font-size: 13px; color: var(--text-secondary); line-height: 1.7; }

    /* ── System Evolution Section ──────────────────────────── */
    .evo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
    .evo-card {
        padding: 28px;
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        box-shadow:
            0 2px 4px rgba(0,0,0,0.2),
            0 8px 24px rgba(0,0,0,0.15),
            inset 0 1px 0 rgba(255,255,255,0.04);
        transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s;
    }
    .evo-card:hover {
        border-color: var(--border);
        transform: translateY(-2px);
        box-shadow:
            0 4px 8px rgba(0,0,0,0.25),
            0 16px 40px rgba(0,0,0,0.2),
            inset 0 1px 0 rgba(255,255,255,0.06);
    }
    .evo-label { font-family: var(--font-mono); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 12px; }
    .evo-label.gold { color: #fbbf24; }
    .evo-label.muted { color: var(--muted); }
    .evo-title { font-family: 'Instrument Serif', serif; font-size: 22px; color: var(--text); margin-bottom: 8px; }
    .evo-title .version-tag { font-family: var(--font-mono); font-size: 12px; color: var(--muted); font-style: normal; }
    .evo-detail { font-size: 13px; color: var(--text-secondary); line-height: 1.6; }

    /* ── Philosophy Quote ─────────────────────────────────── */
    .philosophy-quote { font-family: 'Instrument Serif', serif; font-size: 26px; color: var(--text); margin-bottom: 12px; line-height: 1.4; }
    .philosophy-sub { font-size: 14px; color: var(--muted); line-height: 1.6; }

    /* ── Weekly Picks Card Container ────────────────────────── */
    .weekly-picks-card {
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        padding: 36px 40px;
        max-width: 1100px;
        box-shadow:
            0 2px 4px rgba(0,0,0,0.2),
            0 12px 32px rgba(0,0,0,0.2),
            inset 0 1px 0 rgba(255,255,255,0.04);
    }

    /* ── Weekly Picks Table ──────────────────────────────────── */
    .wp-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
    .wp-nav { display: flex; align-items: center; gap: 8px; }
    .wp-nav-btn { background: none; border: 1px solid var(--border); border-radius: var(--radius-xs); color: var(--text-secondary); font-size: 12px; padding: 3px 10px; cursor: pointer; font-family: var(--font-mono); transition: all 0.15s; }
    .wp-nav-btn:hover { background: var(--surface); color: var(--text); }
    .wp-nav-btn:disabled { opacity: 0.25; cursor: not-allowed; }
    .wp-nav-btn:disabled:hover { background: none; color: var(--text-secondary); }
    .wp-date { font-family: var(--font-mono); font-size: 13px; color: var(--text); }
    .wp-table { width: 100%; border-collapse: collapse; font-size: 13px; }
    .wp-table th { font-family: var(--font-mono); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted); padding: 10px 12px; text-align: left; border-bottom: 2px solid var(--border); }
    .wp-table td { padding: 12px; border-bottom: 1px solid var(--border-subtle); color: var(--text); }
    .wp-table tr { transition: background 0.1s; }
    .wp-table tbody tr:hover { background: var(--surface); }
    .wp-table .wp-rank { font-family: var(--font-mono); font-size: 11px; color: var(--muted); width: 32px; }
    .wp-table .wp-ticker { font-family: var(--font-mono); font-weight: 600; }
    .wp-table .wp-ticker a { color: var(--text); text-decoration: none; }
    .wp-table .wp-ticker a:hover { color: var(--blue); }
    .wp-table .wp-sector { color: var(--text-secondary); }
    .wp-table .wp-price { font-family: var(--font-mono); color: var(--text-secondary); }
    .wp-badge { font-family: var(--font-mono); font-size: 10px; font-weight: 600; padding: 3px 8px; border-radius: var(--radius-xs); white-space: nowrap; }
    .wp-badge.strong-buy { color: var(--green); background: var(--green-dim); }
    .wp-badge.buy { color: var(--blue); background: var(--blue-dim); }
    .wp-badge.buy-small { color: var(--text-secondary); background: var(--surface-elevated); }
    .wp-badge.high { color: var(--green); background: var(--green-dim); }
    .wp-badge.medium { color: var(--amber); background: var(--amber-dim); }
    .wp-footer { font-family: var(--font-mono); font-size: 11px; color: var(--muted); margin-top: 12px; }

    /* ── Weekly Picks Banners (JS-generated) ──────────────── */
    .wp-prediction-banner { background: rgba(251,191,36,0.06); border: 1px solid rgba(251,191,36,0.15); border-radius: var(--radius-sm); padding: 14px 18px; margin-bottom: 16px; }
    .wp-prediction-date { font-family: var(--font-mono); font-size: 11px; color: #fbbf24; font-weight: 600; margin-bottom: 6px; }
    .wp-prediction-text { font-size: 13px; color: var(--text-secondary); line-height: 1.6; }
    .wp-tracking-info { margin-top: 20px; padding: 16px 18px; border-top: 1px solid var(--border-subtle); font-size: 12px; color: var(--text-secondary); line-height: 1.7; }

    /* ── Scorecard ────────────────────────────────────────────── */
    .sc-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 24px; }
    .sc-stat {
        padding: 24px;
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        text-align: center;
        box-shadow: 0 2px 4px rgba(0,0,0,0.2), 0 8px 20px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.04);
        transition: transform 0.3s, border-color 0.3s, box-shadow 0.3s;
    }
    .sc-stat:hover {
        transform: translateY(-2px);
        border-color: var(--border);
        box-shadow: 0 4px 8px rgba(0,0,0,0.25), 0 16px 32px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.06);
    }
    .sc-stat-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted); margin-bottom: 8px; }
    .sc-stat-value { font-family: var(--font-mono); font-size: 28px; font-weight: 700; color: var(--text); }
    .sc-stat-value.green { color: var(--green); }
    .sc-empty {
        text-align: center;
        padding: 40px 28px;
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        box-shadow: 0 2px 4px rgba(0,0,0,0.2), 0 8px 20px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.04);
    }
    .sc-timeline { display: flex; flex-direction: column; gap: 8px; margin-top: 16px; font-size: 13px; }
    .sc-timeline-item { display: flex; align-items: center; gap: 10px; color: var(--text-secondary); }
    .sc-timeline-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--border); flex-shrink: 0; }
    .sc-definition-box { padding: 24px; background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%); border: 1px solid var(--border-subtle); border-radius: var(--radius); margin-bottom: 24px; box-shadow: 0 2px 4px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.04); }
    .sc-gold-label { font-family: var(--font-mono); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: #fbbf24; margin-bottom: 10px; }
    .sc-definition-text { font-size: 13px; color: var(--text-secondary); line-height: 1.8; }
    .sc-expectation-box { background: rgba(251,191,36,0.05); border: 1px solid rgba(251,191,36,0.15); border-radius: var(--radius-sm); padding: 16px; margin-bottom: 20px; text-align: left; }
    .sc-expectation-text { font-size: 13px; color: var(--text-secondary); line-height: 1.6; }

    /* ── How It Works ─────────────────────────────────────────── */
    .hiw-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
    @media (max-width: 800px) { .hiw-grid { grid-template-columns: repeat(2, 1fr); } }
    .hiw-card { padding: 24px 20px; background: var(--surface); border: 1px solid var(--border-subtle); border-radius: var(--radius); }
    .hiw-step { font-family: var(--font-mono); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--blue); margin-bottom: 10px; }
    .hiw-title { font-family: 'Instrument Serif', serif; font-size: 18px; color: var(--text); margin-bottom: 10px; }
    .hiw-detail { font-size: 12px; color: var(--text-secondary); line-height: 1.6; }
    .hiw-detail strong { font-family: var(--font-mono); font-size: 11px; color: var(--text); }

    /* ── Market Conditions (JS-generated) ─────────────────── */
    .mc-grid { display: grid; grid-template-columns: 280px 1fr; gap: 24px; align-items: start; }
    .mc-gauge-panel {
        padding: 32px;
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius);
        text-align: center;
        box-shadow: 0 2px 4px rgba(0,0,0,0.2), 0 8px 24px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.04);
    }
    .mc-gauge-label { font-family: var(--font-mono); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; color: var(--muted); margin-bottom: 16px; }
    .mc-gauge-verdict { font-size: 13px; color: var(--text-secondary); line-height: 1.5; }
    .mc-signals-col { display: flex; flex-direction: column; gap: 8px; }
    .mc-signals-title { font-family: 'Instrument Serif', serif; font-size: 22px; color: var(--text); margin-bottom: 4px; }
    .mc-signals-meta { font-size: 12px; color: var(--muted); margin-bottom: 4px; }
    .mc-signal-card {
        padding: 14px 16px;
        background: var(--bg);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius-sm);
        box-shadow: 0 1px 3px rgba(0,0,0,0.15);
        transition: border-color 0.2s, background 0.2s, transform 0.2s;
    }
    .mc-signal-card:hover {
        border-color: var(--border);
        background: var(--surface);
        transform: translateX(4px);
    }
    .mc-signal-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px; }
    .mc-signal-label { font-size: 12px; color: var(--text); }
    .mc-signal-value { font-family: var(--font-mono); font-size: 12px; font-weight: 600; }
    .mc-signal-bar { height: 4px; background: var(--border-subtle); border-radius: 2px; margin-bottom: 4px; overflow: hidden; }
    .mc-signal-bar-fill { height: 100%; border-radius: 2px; }
    .mc-signal-detail { font-size: 11px; color: var(--muted); line-height: 1.4; }
    .mc-recession-warning { margin-top: 4px; font-size: 11px; color: var(--red); font-weight: 600; }

    /* ── Daily Picks Tiers ───────────────────────────────────── */
    .dp-tier { margin-bottom: 16px; }
    .dp-tier-header { display: flex; align-items: center; gap: 10px; padding: 8px 0; cursor: pointer; user-select: none; }
    .dp-tier-badge { font-family: var(--font-mono); font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: var(--radius-xs); letter-spacing: 0.04em; }
    .dp-tier-badge.strong-buy { color: var(--green); background: var(--green-dim); }
    .dp-tier-badge.buy { color: var(--blue); background: var(--blue-dim); }
    .dp-tier-badge.buy-small { color: var(--text-secondary); background: var(--surface-elevated); }
    .dp-tier-count { font-family: var(--font-mono); font-size: 11px; color: var(--muted); }
    .dp-tier-chevron { margin-left: auto; color: var(--muted); font-size: 12px; transition: transform 0.2s; }
    .dp-tier.collapsed .dp-tier-chevron { transform: rotate(-90deg); }
    .dp-tier.collapsed .dp-tier-grid { display: none; }
    .dp-tier-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin-top: 8px; }
    .dp-card { display: flex; flex-direction: column; gap: 8px; padding: 14px 16px; background: var(--surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-sm); text-decoration: none; color: var(--text); transition: all 0.15s; cursor: pointer; }
    .dp-card:hover { background: var(--surface-elevated); border-color: var(--border); transform: translateY(-1px); }
    .dp-card-top { display: flex; align-items: center; justify-content: space-between; }
    .dp-card-ticker { font-family: var(--font-mono); font-size: 14px; font-weight: 600; }
    .dp-card-score { font-family: var(--font-mono); font-size: 12px; font-weight: 600; }
    .dp-card-score.high { color: var(--green); }
    .dp-card-score.mid { color: var(--amber); }
    .dp-card-score.low { color: var(--red); }
    .dp-card-meta { display: flex; align-items: center; justify-content: space-between; }
    .dp-card-price { font-family: var(--font-mono); font-size: 12px; color: var(--text-secondary); }
    .dp-card-sector { font-size: 11px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; }
    .dp-card-bar { height: 3px; border-radius: 2px; background: var(--border-subtle); overflow: hidden; }
    .dp-card-bar-fill { height: 100%; border-radius: 2px; transition: width 0.6s ease; }
    .dp-card-bar-fill.green { background: var(--green); }
    .dp-card-bar-fill.amber { background: var(--amber); }
    .dp-card-bar-fill.red { background: var(--red); }
    .dp-card-confidence { font-family: var(--font-mono); font-size: 9px; font-weight: 600; letter-spacing: 0.06em; padding: 1px 5px; border-radius: 3px; }
    .dp-card-confidence.HIGH { color: var(--green); background: var(--green-dim); }
    .dp-card-confidence.MEDIUM { color: var(--amber); background: var(--amber-dim); }
    .dp-card-confidence.LOW { color: var(--red); background: var(--red-dim); }
    .dp-loading { text-align: center; color: var(--muted); font-size: 13px; padding: 20px; }

    /* ── Progress Tracker (Track Record) ──────────────────── */
    .sc-progress-tracker {
        display: flex;
        flex-direction: column;
        gap: 0;
        text-align: left;
        position: relative;
        padding-left: 24px;
    }
    .sc-progress-tracker::before {
        content: '';
        position: absolute;
        left: 15px;
        top: 20px;
        bottom: 20px;
        width: 2px;
        background: var(--border-subtle);
    }
    .sc-progress-step {
        display: flex;
        align-items: flex-start;
        gap: 16px;
        padding: 16px 0;
        position: relative;
    }
    .sc-progress-icon {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        position: relative;
        z-index: 1;
    }
    .sc-progress-step.completed .sc-progress-icon {
        background: var(--green-dim);
        border: 2px solid var(--green);
        color: var(--green);
    }
    .sc-progress-step.upcoming .sc-progress-icon {
        background: var(--surface-elevated);
        border: 2px solid var(--border);
        color: var(--muted);
    }
    .sc-progress-step.primary .sc-progress-icon {
        background: rgba(251,191,36,0.12);
        border: 2px solid #fbbf24;
        color: #fbbf24;
        box-shadow: 0 0 12px rgba(251,191,36,0.25);
    }
    .sc-progress-num {
        font-family: var(--font-mono);
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.05em;
    }
    .sc-progress-label {
        font-size: 14px;
        font-weight: 600;
        color: var(--text);
        margin-bottom: 2px;
    }
    .sc-progress-detail {
        font-size: 13px;
        color: var(--text-secondary);
    }
    .sc-progress-step.primary .sc-progress-label { color: #fbbf24; }

    /* ── FAQ Section ──────────────────────────────────────── */
    .faq-section { max-width: 720px !important; }
    .faq-list { display: flex; flex-direction: column; gap: 8px; }
    .faq-item {
        background: linear-gradient(145deg, #1c1c20 0%, var(--surface) 100%);
        border: 1px solid var(--border-subtle);
        border-radius: var(--radius-sm);
        overflow: hidden;
        transition: border-color 0.2s;
        box-shadow: 0 2px 4px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.03);
    }
    .faq-item[open] { border-color: var(--border); }
    .faq-question {
        padding: 16px 20px;
        font-size: 15px;
        font-weight: 500;
        color: var(--text);
        cursor: pointer;
        list-style: none;
        display: flex;
        align-items: center;
        justify-content: space-between;
        transition: color 0.2s;
    }
    .faq-question::-webkit-details-marker { display: none; }
    .faq-question::after {
        content: '+';
        font-family: var(--font-mono);
        font-size: 18px;
        color: var(--muted);
        transition: transform 0.2s;
        flex-shrink: 0;
        margin-left: 16px;
    }
    .faq-item[open] .faq-question::after { content: '\2212'; color: #fbbf24; }
    .faq-answer {
        padding: 0 20px 16px;
        font-size: 13px;
        color: var(--text-secondary);
        line-height: 1.7;
        animation: faqOpen 0.3s ease-out;
    }
    @keyframes faqOpen {
        from { opacity: 0; transform: translateY(-8px); }
        to   { opacity: 1; transform: translateY(0); }
    }
    .faq-item:hover .faq-question {
        color: #fbbf24;
    }

    /* ── CTA / Waitlist ──────────────────────────────────── */
    .cta-section { max-width: 560px !important; }
    .cta-card {
        text-align: center;
        padding: 48px 36px;
        background: linear-gradient(145deg, #1c1a14 0%, var(--surface) 60%, rgba(251,191,36,0.04) 100%);
        border: 1px solid rgba(251,191,36,0.2);
        border-radius: var(--radius);
        box-shadow:
            0 2px 4px rgba(0,0,0,0.2),
            0 12px 32px rgba(0,0,0,0.15),
            0 0 0 1px rgba(251,191,36,0.05),
            inset 0 1px 0 rgba(251,191,36,0.06);
    }
    .cta-title {
        font-family: 'Instrument Serif', serif;
        font-size: 24px;
        color: var(--text);
        margin-bottom: 8px;
    }
    .cta-subtitle {
        font-size: 14px;
        color: var(--text-secondary);
        margin-bottom: 24px;
        line-height: 1.5;
    }
    .cta-form {
        display: flex;
        gap: 8px;
        max-width: 400px;
        margin: 0 auto 12px;
    }
    .cta-input {
        flex: 1;
        font-family: var(--font-mono);
        font-size: 13px;
        background: var(--bg);
        border: 1px solid var(--border);
        border-radius: var(--radius-sm);
        padding: 10px 14px;
        color: var(--text);
        outline: none;
        transition: border-color 0.15s;
    }
    .cta-input:focus { border-color: #fbbf24; }
    .cta-input::placeholder { color: var(--muted); }
    .cta-btn {
        font-family: var(--font-mono);
        font-size: 13px;
        font-weight: 600;
        padding: 10px 20px;
        border-radius: var(--radius-sm);
        border: none;
        background: #fbbf24;
        color: #09090b;
        cursor: pointer;
        white-space: nowrap;
        transition: transform 0.2s, box-shadow 0.2s;
    }
    .cta-btn:hover {
        transform: translateY(-1px) scale(1.02);
        box-shadow: 0 4px 16px rgba(251,191,36,0.3);
    }
    .cta-btn:disabled { opacity: 0.5; cursor: not-allowed; }
    .cta-note {
        font-size: 11px;
        color: var(--muted);
        transition: color 0.2s;
    }

    /* ── Site Footer ──────────────────────────────────────────── */
    .site-footer { text-align: center; padding: 32px 20px; font-size: 11px; color: var(--muted); border-top: 1px solid var(--border-subtle); line-height: 1.6; }
    .site-footer a { color: var(--text-secondary); }
    .footer-brief { margin-bottom: 8px; }
    .footer-details { display: inline; }
    .footer-expand {
        cursor: pointer;
        color: var(--text-secondary);
        font-size: 11px;
        list-style: none;
        display: inline;
    }
    .footer-expand::-webkit-details-marker { display: none; }
    .footer-expand:hover { color: var(--text); }
    .footer-full {
        margin-top: 8px;
        font-size: 11px;
        color: var(--muted);
        line-height: 1.6;
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
    }

    /* ── Landing Responsive ───────────────────────────────────── */
    @media (max-width: 900px) {
        .landing-state { padding: 0; padding-top: var(--nav-h); }
        .landing-hero { padding: 40px 24px 32px; }
        .landing-title { font-size: 32px; }
        .landing-section { padding: 0 20px; margin-bottom: 56px; }
        .weekly-picks-card { padding: 24px 20px; }
        .sc-stats { grid-template-columns: 1fr; }
        .pipeline-section { padding: 48px 20px; }
        .landing-section > div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
        .wp-table { font-size: 12px; }
        .wp-table th, .wp-table td { padding: 8px 6px; }
        .diff-grid { grid-template-columns: 1fr; }
        .evo-grid { grid-template-columns: 1fr; }
        .mc-grid { grid-template-columns: 1fr; }
        .social-proof { flex-wrap: wrap; font-size: 11px; }
        .cta-form { flex-direction: column; }
        .section-nav-inner { padding: 0 12px; justify-content: flex-start; }
        .section-nav-link { padding: 14px 14px; font-size: 10px; }
    }
