*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#0a0a0a;
    color:#ffffff;
    font-family:Inter,sans-serif;
}

nav{
    padding:28px 60px;
    border-bottom:1px solid #1d1d1d;
}

.logo{
    font-weight:800;
    font-size:1.1rem;
    letter-spacing:-0.5px;
}

.hero{
    text-align:center;
    padding:120px 20px 80px;
}

.badge{
    display:inline-block;
    border:1px solid #2a2a2a;
    background:#111;
    color:#9a9a9a;
    padding:10px 16px;
    border-radius:999px;
    margin-bottom:24px;
}

.hero h1{
    font-size:clamp(4rem,10vw,7rem);
    line-height:.95;
    font-weight:800;
    letter-spacing:-4px;
}

.subtitle{
    color:#9a9a9a;
    font-size:1.25rem;
    margin-top:24px;
}

button{
    margin-top:40px;
    background:#ff5a1f;
    color:white;
    border:none;
    padding:16px 28px;
    border-radius:14px;
    font-weight:600;
    cursor:pointer;
    transition:.2s ease;
}

button:hover{
    transform:translateY(-2px);
}

.accent-line{
    width:80px;
    height:2px;
    background:#ff5a1f;
    margin:50px auto 0;
}

.stats{
    max-width:1100px;
    margin:0 auto 60px;
    padding:0 40px;
}

.stat-card{
    background:#111;
    border:1px solid #232323;
    border-radius:24px;
    padding:50px;
    text-align:center;
}

.stat-value{
    font-size:clamp(2.5rem,6vw,5rem);
    font-weight:800;
    letter-spacing:-2px;
}

.stat-label{
    margin-top:10px;
    color:#777;
    letter-spacing:3px;
    font-size:.85rem;
}

.process{
    max-width:1100px;
    margin:auto;
    padding:0 40px 80px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
}

.card{
    background:#111;
    border:1px solid #232323;
    border-radius:24px;
    padding:32px;
    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.card:hover{
    transform:translateY(-6px);

    border-color:#ff5a1f;

    box-shadow:
    0 0 0 1px #ff5a1f,
    0 20px 40px rgba(255,90,31,.15);
}

.card span{
    color:#666;
    font-weight:700;
    transition:.25s;
}

.card:hover span{
    color:#ff5a1f;
}

.card h3{
    margin-top:12px;
    transition:.25s;
}

.card:hover h3{
    color:#ff5a1f;
}

.card p{
    margin-top:10px;
    color:#888;
    transition:.25s;
}

.card:hover p{
    color:#cfcfcf;
}

.upload{
    display:none;
    max-width:800px;
    margin:auto;
    padding:40px;
    text-align:center;
}

.upload h2{
    margin-bottom:20px;
}

.upload-box{
    border:2px dashed #2a2a2a;
    border-radius:24px;
    padding:60px;
}

.status{
    display:none;
    max-width:800px;
    margin:40px auto;
    padding:40px;
    background:#111;
    border:1px solid #232323;
    border-radius:24px;
}

#statusText{
    margin-top:20px;
    line-height:2;
    color:#d0d0d0;
}

footer{
    border-top:1px solid #1d1d1d;
    text-align:center;
    padding:80px 20px;
    margin-top:100px;
}

.footer-brand{
    font-weight:800;
    margin-bottom:10px;
}

small{
    display:block;
    margin-top:20px;
    color:#666;
}