/* ============================================================
   MarketMentor AI — landing stylesheet
   Dark "trading terminal" design. Replace stockpulse styles.
   ============================================================ */

:root{
    --mm-bg:#070d1a;
    --mm-bg2:#0b1324;
    --mm-card:#0e1830;
    --mm-card2:#121f3d;
    --mm-line:#1c2c4f;
    --mm-line2:#24375f;
    --mm-text:#e9eef7;
    --mm-muted:#8fa3c4;
    --mm-faint:#5d7399;
    --mm-accent:#22d3a7;      /* emerald */
    --mm-accent2:#38bdf8;     /* sky */
    --mm-up:#26d07c;
    --mm-down:#ff5d6c;
    --mm-grad:linear-gradient(90deg,#22d3a7 0%,#38bdf8 100%);
    --mm-radius:16px;
    --mm-mono:"SF Mono",Consolas,"Roboto Mono","Courier New",monospace;
    --mm-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    background:var(--mm-bg);
    color:var(--mm-text);
    font-family:var(--mm-sans);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
.mm-container{max-width:1140px;margin:0 auto;padding:0 22px;}
.mm-container-narrow{max-width:820px;}

/* ---------- gradient text / eyebrow ---------- */
.mm-gradient-text{
    background:var(--mm-grad);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.mm-eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:12px;letter-spacing:2.5px;text-transform:uppercase;
    color:var(--mm-accent);font-weight:600;margin-bottom:14px;
}

/* ---------- buttons ---------- */
.mm-cta{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    font-weight:700;font-size:15px;
    padding:14px 26px;border-radius:12px;
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
    white-space:nowrap;
}
.mm-cta:hover{transform:translateY(-2px);}
.mm-cta-primary{
    background:var(--mm-grad);color:#04121a;
    box-shadow:0 8px 28px rgba(34,211,167,.28);
}
.mm-cta-primary:hover{box-shadow:0 12px 34px rgba(34,211,167,.4);}
.mm-cta-ghost{
    border:1px solid var(--mm-line2);color:var(--mm-text);
    background:rgba(255,255,255,.02);
}
.mm-cta-ghost:hover{border-color:var(--mm-accent);color:var(--mm-accent);}
.mm-cta-sm{padding:10px 18px;font-size:14px;border-radius:10px;}
.mm-cta-dark{
    background:#04121a;color:#eafff8;
    box-shadow:0 8px 28px rgba(0,0,0,.35);
}
.mm-cta-dark:hover{box-shadow:0 12px 36px rgba(0,0,0,.5);}

/* ---------- header ---------- */
.mm-header{
    position:fixed;top:0;left:0;right:0;z-index:90;
    background:rgba(7,13,26,.72);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid transparent;
    transition:border-color .25s ease,background .25s ease;
}
.mm-header.mm-scrolled{border-bottom-color:rgba(28,44,79,.65);background:rgba(7,13,26,.9);}
.mm-header-inner{display:flex;align-items:center;justify-content:space-between;height:66px;gap:18px;}
.mm-brand{display:inline-flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.3px;}
.mm-brand-icon{
    width:34px;height:34px;border-radius:10px;flex:0 0 auto;
    background:var(--mm-grad);color:#04121a;
    display:inline-flex;align-items:center;justify-content:center;font-size:15px;
    box-shadow:0 4px 14px rgba(34,211,167,.35);
}
.mm-brand-name b{
    background:var(--mm-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.mm-nav{display:flex;gap:26px;}
.mm-nav a{color:var(--mm-muted);font-size:14px;font-weight:500;transition:color .15s;}
.mm-nav a:hover{color:var(--mm-text);}

/* ---------- hero ---------- */
.mm-hero{
    position:relative;
    padding:170px 0 90px;
    background:
        radial-gradient(900px 500px at 85% -10%,rgba(34,211,167,.10),transparent 60%),
        radial-gradient(700px 420px at 10% 110%,rgba(56,189,248,.08),transparent 60%),
        var(--mm-bg);
    overflow:hidden;
}
.mm-grid-bg{
    position:absolute;inset:0;pointer-events:none;opacity:.5;
    background-image:
        linear-gradient(rgba(56,189,248,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(56,189,248,.045) 1px,transparent 1px);
    background-size:44px 44px;
    -webkit-mask-image:radial-gradient(ellipse 90% 70% at 60% 20%,#000 30%,transparent 75%);
    mask-image:radial-gradient(ellipse 90% 70% at 60% 20%,#000 30%,transparent 75%);
}
.mm-hero-inner{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center;}

.mm-badge{
    display:inline-flex;align-items:center;gap:10px;
    font-size:12.5px;letter-spacing:.4px;font-weight:600;
    color:var(--mm-muted);
    border:1px solid var(--mm-line2);background:rgba(255,255,255,.03);
    padding:7px 14px;border-radius:999px;margin-bottom:22px;
}
.mm-live-dot{
    width:8px;height:8px;border-radius:50%;background:var(--mm-up);
    box-shadow:0 0 0 0 rgba(38,208,124,.55);
    animation:mmPulse 2s infinite;
}
@keyframes mmPulse{
    0%{box-shadow:0 0 0 0 rgba(38,208,124,.55);}
    70%{box-shadow:0 0 0 9px rgba(38,208,124,0);}
    100%{box-shadow:0 0 0 0 rgba(38,208,124,0);}
}
.mm-hero-title{
    font-size:clamp(34px,4.6vw,56px);
    line-height:1.12;letter-spacing:-1.5px;font-weight:800;
    margin-bottom:18px;
}
.mm-hero-sub{
    font-size:17.5px;color:var(--mm-muted);
    max-width:520px;margin-bottom:30px;
}
.mm-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px;}
.mm-trust{display:flex;gap:22px;flex-wrap:wrap;}
.mm-trust-item{color:var(--mm-muted);font-size:13.5px;display:inline-flex;align-items:center;gap:7px;}
.mm-trust-item i{color:var(--mm-accent);font-size:12px;}

/* ---------- hero chart card ---------- */
.mm-hero-right{position:relative;}
.mm-chart-card{
    position:relative;z-index:2;
    background:linear-gradient(180deg,var(--mm-card2),var(--mm-card));
    border:1px solid var(--mm-line2);
    border-radius:20px;padding:20px 20px 14px;
    box-shadow:0 24px 70px rgba(0,0,0,.5);
}
.mm-chart-head{
    display:flex;align-items:center;justify-content:space-between;
    font-family:var(--mm-mono);font-size:13px;margin-bottom:14px;
}
.mm-chart-tick{color:var(--mm-text);font-weight:700;letter-spacing:.5px;}
.mm-chart-up{color:var(--mm-up);}
.mm-candles{
    display:flex;align-items:flex-end;gap:7px;height:210px;
    padding:8px 2px 0;
    background:
        repeating-linear-gradient(0deg,rgba(56,189,248,.05) 0 1px,transparent 1px 26px),
        repeating-linear-gradient(90deg,rgba(56,189,248,.04) 0 1px,transparent 1px 34px);
    border-radius:10px;
    position:relative;
}
.mm-candle{
    flex:1;position:relative;align-self:flex-end;
    height:var(--h);           /* full candle incl. wick */
    min-height:8px;
}
.mm-candle::before{            /* wick */
    content:"";position:absolute;left:50%;top:0;bottom:0;
    transform:translateX(-50%);
    width:2.5px;border-radius:2px;background:var(--c);
}
.mm-candle::after{             /* body */
    content:"";position:absolute;left:50%;
    top:var(--o);bottom:0;     /* open offset from wick top */
    transform:translateX(-50%);
    width:60%;border-radius:3px;
    background:linear-gradient(180deg,var(--c),var(--c2));
}
.mm-candle.mm-green{--c:#2ee38c;--c2:#16a36a;}
.mm-candle.mm-red{--c:#ff7381;--c2:#d92c44;}
.mm-candle.mm-green:last-child{animation:mmCandle 2.6s ease-in-out infinite;}
.mm-candle.mm-green:last-child::after{box-shadow:0 0 16px rgba(46,227,140,.55);}
@keyframes mmCandle{0%,100%{height:var(--h);}50%{height:calc(var(--h) + 7%);}}
.mm-chart-foot{
    display:flex;justify-content:space-between;align-items:center;
    margin-top:12px;font-size:11.5px;color:var(--mm-faint);
    font-family:var(--mm-mono);
}
.mm-dot-up{color:var(--mm-up);font-size:8px;}

/* floating chips */
.mm-float{
    position:absolute;z-index:3;
    background:rgba(13,22,44,.92);
    border:1px solid var(--mm-line2);
    border-radius:14px;padding:11px 15px;
    font-size:12px;color:var(--mm-muted);line-height:1.5;
    box-shadow:0 16px 40px rgba(0,0,0,.45);
    backdrop-filter:blur(6px);
}
.mm-float b{display:block;color:var(--mm-text);font-size:13px;}
.mm-float i{margin-right:6px;color:var(--mm-accent);}
.mm-float-a{top:-18px;right:6px;animation:mmFloat 5s ease-in-out infinite;}
.mm-float-b{bottom:-20px;left:-14px;animation:mmFloat 5s ease-in-out 2.5s infinite;}
@keyframes mmFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}

/* ---------- ticker ---------- */
.mm-ticker{
    border-top:1px solid var(--mm-line);
    border-bottom:1px solid var(--mm-line);
    background:var(--mm-bg2);
    overflow:hidden;padding:12px 0;
    position:relative;
}
.mm-ticker-track{
    display:flex;gap:44px;width:max-content;
    animation:mmTicker 36s linear infinite;
}
.mm-ticker:hover .mm-ticker-track{animation-play-state:paused;}
@keyframes mmTicker{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.mm-ticker-item{
    font-family:var(--mm-mono);font-size:13px;color:var(--mm-muted);
    display:inline-flex;gap:7px;align-items:center;white-space:nowrap;
}
.mm-ticker-item b{color:var(--mm-text);font-weight:600;}
.mm-up{color:var(--mm-up) !important;font-style:normal;}
.mm-down{color:var(--mm-down) !important;font-style:normal;}

/* ---------- sections ---------- */
.mm-section{padding:96px 0;}
.mm-section-alt{background:var(--mm-bg2);border-top:1px solid var(--mm-line);border-bottom:1px solid var(--mm-line);}
.mm-section-head{text-align:center;max-width:640px;margin:0 auto 54px;}
.mm-section-title{font-size:clamp(27px,3.4vw,40px);letter-spacing:-1px;font-weight:800;line-height:1.2;margin-bottom:14px;}
.mm-section-sub{color:var(--mm-muted);font-size:16px;}

/* ---------- steps ---------- */
.mm-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.mm-step{
    position:relative;
    background:linear-gradient(180deg,var(--mm-card2),var(--mm-card));
    border:1px solid var(--mm-line);
    border-radius:var(--mm-radius);
    padding:30px 26px;
    transition:transform .2s ease,border-color .2s ease;
}
.mm-step:hover{transform:translateY(-5px);border-color:var(--mm-accent);}
.mm-step-num{
    position:absolute;top:18px;right:22px;
    font-family:var(--mm-mono);font-size:34px;font-weight:800;
    color:rgba(255,255,255,.06);
}
.mm-step-icon{
    width:48px;height:48px;border-radius:13px;
    background:rgba(34,211,167,.12);color:var(--mm-accent);
    display:inline-flex;align-items:center;justify-content:center;
    font-size:19px;margin-bottom:20px;
    border:1px solid rgba(34,211,167,.25);
}
.mm-step:nth-child(2) .mm-step-icon{background:rgba(56,189,248,.12);color:var(--mm-accent2);border-color:rgba(56,189,248,.25);}
.mm-step:nth-child(3) .mm-step-icon{background:rgba(250,204,21,.1);color:#facc15;border-color:rgba(250,204,21,.22);}
.mm-step h3{font-size:19px;font-weight:700;margin-bottom:10px;}
.mm-step p{color:var(--mm-muted);font-size:14.5px;}
.mm-steps-cta{text-align:center;margin-top:38px;}

/* ---------- features ---------- */
.mm-features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.mm-feature{
    background:var(--mm-card);
    border:1px solid var(--mm-line);
    border-radius:var(--mm-radius);
    padding:26px 24px;
    transition:border-color .2s ease,transform .2s ease;
}
.mm-feature:hover{border-color:var(--mm-line2);transform:translateY(-4px);}
.mm-feature-icon{
    width:42px;height:42px;border-radius:12px;
    background:rgba(255,255,255,.045);
    display:inline-flex;align-items:center;justify-content:center;
    color:var(--mm-accent);font-size:17px;margin-bottom:16px;
}
.mm-feature h3{font-size:16.5px;font-weight:700;margin-bottom:8px;}
.mm-feature p{color:var(--mm-muted);font-size:14px;}

/* ---------- patterns ---------- */
.mm-patterns{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.mm-pattern{
    background:var(--mm-card);
    border:1px solid var(--mm-line);
    border-radius:var(--mm-radius);
    padding:24px;
    transition:transform .2s ease,border-color .2s ease;
}
.mm-pattern:hover{transform:translateY(-5px);border-color:var(--mm-line2);}
.mm-pattern-svg{width:100%;height:110px;margin-bottom:14px;background:var(--mm-bg2);border-radius:10px;border:1px solid var(--mm-line);}
.mm-pattern h3{font-size:17px;font-weight:700;margin-bottom:8px;}
.mm-pattern p{color:var(--mm-muted);font-size:14px;margin-bottom:14px;}
.mm-pattern a{color:var(--mm-accent);font-size:14px;font-weight:600;display:inline-flex;gap:7px;align-items:center;}
.mm-pattern a:hover{gap:11px;transition:gap .15s ease;}

/* ---------- learners ---------- */
.mm-learners{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.mm-learner{
    background:var(--mm-card);border:1px solid var(--mm-line);
    border-radius:var(--mm-radius);padding:24px;
    display:flex;flex-direction:column;gap:16px;
}
.mm-learner-head{display:flex;align-items:center;gap:12px;}
.mm-learner-head b{font-size:15px;display:block;}
.mm-learner-role{font-size:12.5px;color:var(--mm-faint);}
.mm-quote{margin-left:auto;color:var(--mm-line2);font-size:22px;}
.mm-learner p{color:var(--mm-muted);font-size:14.5px;font-style:italic;}
.mm-avatar{
    width:42px;height:42px;border-radius:50%;flex:0 0 auto;
    display:inline-flex;align-items:center;justify-content:center;
    font-weight:800;font-size:13px;color:#04121a;
}
.mm-av1{background:linear-gradient(135deg,#2ee38c,#38bdf8);}
.mm-av2{background:linear-gradient(135deg,#facc15,#fb923c);}
.mm-av3{background:linear-gradient(135deg,#a78bfa,#38bdf8);}

/* ---------- FAQ ---------- */
.mm-faq{display:flex;flex-direction:column;gap:12px;}
.mm-faq-item{
    background:var(--mm-card);border:1px solid var(--mm-line);
    border-radius:14px;overflow:hidden;
}
.mm-faq-item summary{
    cursor:pointer;list-style:none;
    padding:19px 22px;font-weight:600;font-size:15.5px;
    display:flex;align-items:center;gap:12px;
    transition:color .15s;
}
.mm-faq-item summary::-webkit-details-marker{display:none;}
.mm-faq-item summary::after{
    content:"\f107";font-family:"Font Awesome 6 Free";font-weight:900;
    margin-left:auto;color:var(--mm-accent);transition:transform .2s ease;
}
.mm-faq-item[open] summary::after{transform:rotate(180deg);}
.mm-faq-item[open] summary{color:var(--mm-accent);}
.mm-faq-item p{padding:0 22px 20px;color:var(--mm-muted);font-size:14.5px;}
.mm-faq-item p a{color:var(--mm-accent);font-weight:600;}

/* ---------- final CTA ---------- */
.mm-final{padding:40px 0 100px;}
.mm-final-card{
    position:relative;overflow:hidden;text-align:center;
    background:linear-gradient(140deg,#0d2247,#0b1b3a 55%,#07152e);
    border:1px solid var(--mm-line2);
    border-radius:24px;padding:64px 30px;
}
.mm-final-glow{
    position:absolute;top:-120px;left:50%;transform:translateX(-50%);
    width:560px;height:260px;pointer-events:none;
    background:radial-gradient(ellipse,rgba(34,211,167,.22),transparent 65%);
}
.mm-final-card h2{font-size:clamp(27px,3.6vw,42px);letter-spacing:-1px;font-weight:800;margin-bottom:14px;position:relative;}
.mm-final-card p{color:var(--mm-muted);font-size:16px;margin-bottom:30px;position:relative;}
.mm-final-card .mm-cta{position:relative;}
.mm-final-note{margin-top:20px;color:var(--mm-faint);font-size:13px;position:relative;}
.mm-final-note i{color:var(--mm-accent);margin-right:6px;}

/* ---------- footer ---------- */
.mm-footer{border-top:1px solid var(--mm-line);background:var(--mm-bg2);padding:44px 0 36px;}
.mm-footer-main{display:flex;gap:30px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;margin-bottom:26px;}
.mm-disclaimer{color:var(--mm-faint);font-size:12.5px;max-width:780px;line-height:1.75;}
.mm-disclaimer b{color:var(--mm-muted);}
.mm-footer-links{display:flex;align-items:center;gap:12px;color:var(--mm-muted);font-size:13px;flex-wrap:wrap;}
.mm-footer-links a:hover{color:var(--mm-accent);}
.mm-dot-sep{color:var(--mm-line2);}

/* ---------- cookie bar ---------- */
.mm-cookie{
    position:fixed;left:16px;right:16px;bottom:16px;z-index:120;
    max-width:640px;margin:0 auto;
    background:rgba(11,19,36,.96);
    border:1px solid var(--mm-line2);border-radius:14px;
    padding:14px 16px;
    display:flex;align-items:center;gap:16px;
    box-shadow:0 18px 50px rgba(0,0,0,.55);
    transform:translateY(140%);opacity:0;
    transition:transform .4s ease,opacity .4s ease;
    backdrop-filter:blur(8px);
}
.mm-cookie.mm-cookie-show{transform:translateY(0);opacity:1;}
.mm-cookie-text{flex:1;color:var(--mm-muted);font-size:13px;}
.mm-cookie-text i{color:#facc15;margin-right:6px;}
.mm-cookie-text a{color:var(--mm-accent);}
.mm-cookie-btn{
    background:var(--mm-grad);color:#04121a;border:none;cursor:pointer;
    font-weight:700;font-size:13px;padding:9px 18px;border-radius:9px;
    flex:0 0 auto;
}

/* ---------- responsive ---------- */
@media (max-width:960px){
    .mm-hero-inner{grid-template-columns:1fr;gap:70px;}
    .mm-hero-right{max-width:520px;margin:0 auto;width:100%;}
    .mm-steps,.mm-features,.mm-patterns,.mm-learners{grid-template-columns:1fr 1fr;}
    .mm-nav{display:none;}
}
@media (max-width:620px){
    .mm-steps,.mm-features,.mm-patterns,.mm-learners{grid-template-columns:1fr;}
    .mm-hero{padding:130px 0 64px;}
    .mm-section{padding:66px 0;}
    .mm-hero-actions .mm-cta{width:100%;}
    .mm-footer-main{flex-direction:column;}
}
