:root{
    --bg: #0b0f17;
    --bg2:#0f1624;
    --card:#0f172a;
    --muted:#9aa4b2;
    --text:#e6edf3;
    --line: rgba(255,255,255,.08);
    --primary:#6ea8fe;
}

.app-body{
    background: radial-gradient(1200px 800px at 20% 10%, rgba(110,168,254,.18), transparent 55%),
                radial-gradient(900px 600px at 90% 15%, rgba(167,139,250,.14), transparent 55%),
                linear-gradient(180deg, var(--bg), var(--bg2));
    color: var(--text);
}

.app-nav{
    background: rgba(11,15,23,.75);
    backdrop-filter: blur(12px);
}

.brand-dot{
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--primary), rgba(167,139,250,1));
    box-shadow: 0 0 0 6px rgba(110,168,254,.08);
}

.hero{
    position: relative;
    padding: 4.5rem 0 3rem;
    overflow: hidden;
}

.hero-glow{
    position:absolute;
    inset: -120px -140px auto auto;
    width: 420px;
    height: 420px;
    filter: blur(40px);
    background: radial-gradient(circle at 30% 30%, rgba(110,168,254,.25), transparent 60%);
    pointer-events:none;
}

.section-pad{
    padding: 3.5rem 0;
}

.hero-card{
    border-radius: 20px;
    background: rgba(15,23,42,.65);
    border: 1px solid var(--line);
    box-shadow: 0 20px 50px rgba(0,0,0,.35);
}

.card-dark{
    border-radius: 18px;
    background: rgba(15,23,42,.55);
    border: 1px solid var(--line);
    box-shadow: 0 16px 40px rgba(0,0,0,.28);
}

.kicker{
    letter-spacing: .14em;
}

.vlist li{
    display:flex;
    gap:.6rem;
    align-items:flex-start;
    padding: .35rem 0;
}
.vlist i{
    color: rgba(110,168,254,.95);
    margin-top: .15rem;
}

.icon-pill{
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display:grid;
    place-items:center;
    background: rgba(110,168,254,.10);
    border: 1px solid rgba(110,168,254,.18);
    color: rgba(110,168,254,.95);
}

.chip{
    display:inline-flex;
    align-items:center;
    border-radius: 999px;
    padding: .35rem .7rem;
    font-size: .85rem;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.03);
    color: rgba(230,237,243,.92);
}
.chip-soft{
    background: rgba(110,168,254,.08);
    border-color: rgba(110,168,254,.16);
}

.case-block{
    padding: .85rem;
    border-radius: 14px;
    border: 1px dashed rgba(255,255,255,.10);
    background: rgba(0,0,0,.12);
}
.case-title{
    font-weight: 600;
    margin-bottom: .25rem;
}

.workflow-wrap{
    position: relative;
}
.workflow-line{
    position:absolute;
    left: 2%;
    right: 2%;
    top: 50%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(110,168,254,.35), transparent);
    pointer-events:none;
    transform: translateY(-50%);
    z-index: 0;
}
.workflow-wrap .card{
    position: relative;
    z-index: 1;
}

/* Reveal animation */
.reveal{
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .5s ease, transform .5s ease;
}
.reveal.reveal-in{
    opacity: 1;
    transform: translateY(0);
}

/* Buttons polish */
.btn-primary{
    background: linear-gradient(135deg, rgba(110,168,254,1), rgba(167,139,250,1));
    border: none;
}
.btn-primary:hover{
    filter: brightness(1.05);
}

/* Improve nav link contrast */
.navbar .nav-link{
    color: rgba(230,237,243,.78);
}
.navbar .nav-link:hover{
    color: rgba(230,237,243,1);
}
