:root{
    --wa-primary: #0f172a;
    --wa-secondary: #1e293b;
    --wa-accent: #5a48ff;
    --wa-light: #f8fafc;
    --wa-muted: #64748b;
    --wa-border: #e2e8f0;
    --wa-card: rgba(255,255,255,.72);
    --wa-shadow: 0 20px 60px rgba(15, 23, 42, .10);
    --wa-radius: 1.5rem;
}
.about-hero{
    position: relative;
    overflow: hidden;
    padding: 6rem 0 5rem;
    background:
        radial-gradient(circle at top left, rgba(56,189,248,.18), transparent 35%),
        radial-gradient(circle at right center, rgba(14,165,233,.16), transparent 28%),
        linear-gradient(135deg, #0f172a 0%, #111827 55%, #0b1120 100%);
    color: #fff;
}

.about-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
    pointer-events:none;
}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.5rem .9rem;
    border-radius:999px;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.16);
    backdrop-filter: blur(10px);
    font-size:.92rem;
    margin-bottom:1.25rem;
}

.hero-title{
    font-size: clamp(2.2rem, 4vw, 4.5rem);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 1.25rem;
}

.hero-text{
    font-size: 1.05rem;
    color: rgba(255,255,255,.82);
    max-width: 750px;
    margin: 0 auto 2rem;
}

.hero-pills{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:.75rem;
    margin-top:1rem;
}

.hero-pill{
    padding:.75rem 1rem;
    border-radius:999px;
    background: rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    font-size:.95rem;
}

.section-title{
    font-size: clamp(1.8rem, 2.2vw, 2.8rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    color: var(--wa-primary);
    margin-bottom: .9rem;
}

.section-subtitle{
    color: var(--wa-muted);
    font-size: 1.02rem;
    max-width: 760px;
}

.glass-card,
.wa-card{
    background: var(--wa-card);
    border: 1px solid rgba(255,255,255,.6);
    box-shadow: var(--wa-shadow);
    border-radius: var(--wa-radius);
    backdrop-filter: blur(14px);
}

.wa-card-solid{
    background:#fff;
    border:1px solid var(--wa-border);
    border-radius: var(--wa-radius);
    box-shadow: 0 10px 30px rgba(15,23,42,.05);
}

.story-card{
    padding: 2rem;
    height: 100%;
}

.story-card h3{
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: .9rem;
}

.story-card p{
    color: var(--wa-muted);
    margin-bottom: 0;
    line-height: 1.8;
}

.stat-card{
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    border: 1px solid var(--wa-border);
    border-radius: 1.25rem;
    padding: 1.5rem;
    height: 100%;
    box-shadow: 0 10px 24px rgba(60, 45, 92, 0.04);
}

.stat-number{
    font-size: 2rem;
    font-weight: 800;
    color: var(--wa-accent);
    line-height: 1;
    margin-bottom: .5rem;
}

.stat-label{
    font-weight: 700;
    color: var(--wa-primary);
    margin-bottom: .3rem;
}

.stat-text{
    color: var(--wa-muted);
    font-size: .95rem;
    margin: 0;
}

.timeline{
    position: relative;
    padding-left: 1.5rem;
}

.timeline::before{
    content: "";
    position: absolute;
    left: .38rem;
    top: .2rem;
    bottom: .2rem;
    width: 2px;
    background: linear-gradient(180deg, var(--wa-accent), rgba(165, 127, 241, 0.15));
}

.timeline-item{
    position: relative;
    padding-left: 2rem;
    margin-bottom: 2rem;
}

.timeline-item:last-child{
    margin-bottom: 0;
}

.timeline-item::before{
    content:"";
    position:absolute;
    left:-.05rem;
    top:.35rem;
    width:14px;
    height:14px;
    border-radius:50%;
    background: #fff;
    border: 3px solid var(--wa-accent);
    box-shadow: 0 0 0 6px rgba(36, 14, 233, 0.12);
}

.timeline-year{
    display:inline-block;
    font-size:.82rem;
    font-weight:700;
    color: var(--wa-accent);
    background: rgba(176, 101, 246, 0.08);
    border-radius: 999px;
    padding: .35rem .7rem;
    margin-bottom: .75rem;
}

.timeline-item h4{
    font-size: 1.08rem;
    font-weight: 700;
    margin-bottom: .55rem;
}

.timeline-item p{
    color: var(--wa-muted);
    margin-bottom: 0;
    line-height: 1.8;
}

.feature-card{
    background:#fff;
    border:1px solid var(--wa-border);
    border-radius: 1.25rem;
    padding: 1.25rem 1.2rem;
    height:100%;
    transition: .25s ease;
}

.feature-card:hover{
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(15,23,42,.08);
}

.feature-icon{
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(182, 159, 242, 0.12), rgba(143, 121, 244, 0.25));
    color: var(--wa-accent);
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

.feature-card h4{
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: .5rem;
}

.feature-card p{
    color: var(--wa-muted);
    margin-bottom: 0;
    font-size: .95rem;
    line-height: 1.7;
}

.team-card{
    background: #fff;
    border:1px solid var(--wa-border);
    border-radius: 1.4rem;
    padding: 1.5rem;
    height: 100%;
    box-shadow: 0 12px 30px rgba(15,23,42,.05);
    text-align: center;
}

.team-avatar{
    width: 84px;
    height: 84px;
    border-radius: 50%;
    margin: 0 auto 1rem;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight: 800;
    color: #fff;
    background: linear-gradient(135deg, var(--wa-accent), #2563eb);
    font-size: 1.4rem;
    box-shadow: 0 10px 20px rgba(14,165,233,.25);
}

.team-card h5{
    margin-bottom: .25rem;
    font-weight: 700;
}

.team-role{
    color: var(--wa-accent);
    font-weight: 600;
    font-size: .92rem;
    margin-bottom: .65rem;
}

.team-card p{
    color: var(--wa-muted);
    margin-bottom: 0;
    font-size: .95rem;
}

.platforms-wrap{
    padding: 2rem;
}

.platform-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height: 54px;
    padding: .9rem 1.1rem;
    border-radius: 1rem;
    background: #fff;
    border:1px solid var(--wa-border);
    font-weight: 700;
    color: var(--wa-secondary);
    width: 100%;
}

.info-list{
    list-style: none;
    padding: 0;
    margin: 0;
}

.info-list li{
    padding: .85rem 0;
    border-bottom: 1px solid var(--wa-border);
    color: var(--wa-muted);
}

.info-list li:last-child{
    border-bottom: 0;
    padding-bottom: 0;
}

.info-list strong{
    color: var(--wa-primary);
    display:block;
    margin-bottom:.2rem;
}

.contact-card{
    padding: 2rem;
    height: 100%;
}

.contact-link{
    color: var(--wa-primary);
    text-decoration: none;
    font-weight: 600;
}

.contact-link:hover{
    color: var(--wa-accent);
}

.footer-note{
    font-size: .95rem;
    color: var(--wa-muted);
}

.cta-box{
    padding: 2.25rem;
    border-radius: 1.75rem;
    background: linear-gradient(135deg, #0f172a 0%, #0b1120 100%);
    color: #fff;
    box-shadow: 0 25px 60px rgba(15,23,42,.18);
}

.cta-box p{
    color: rgba(255,255,255,.8);
    margin-bottom: 0;
}

@media (max-width: 991.98px){
    .about-hero{
        padding: 5rem 0 4rem;
    }
}