:root{
    --color-primary:#0ea5e9;
    --color-primary-dark:#0369a1;
    --color-accent:#fb7185;
    --color-surface:#070A12;
    --color-text:#eaf2ff;
    --rgb-primary:14,165,233;
    --rgb-accent:251,113,133;
    --radius-sm:10px;
    --radius-md:14px;
    --radius-lg:20px;
    --radius-xl:30px;
    --shadow-sm:0 1px 0 rgba(255,255,255,.08), 0 1px 8px rgba(14,165,233,.12);
    --shadow-md:
        0 10px 22px rgba(0,0,0,.34),
        0 2px 6px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.08);
    --shadow-lg:
        0 18px 46px rgba(0,0,0,.42),
        0 8px 18px rgba(0,0,0,.22),
        0 1px 0 rgba(255,255,255,.10),
        inset 0 1px 0 rgba(255,255,255,.09);
    --space-section:2rem;
    --space-card:1rem;
    --space-gap:0.75rem;
    --transition:.52s cubic-bezier(.2,.9,.2,1);
    --heading-weight:900;
    --body-line-height:1.75;
    --color-border-strong:rgba(255,255,255,.18);
    --color-border-mid:rgba(255,255,255,.10);
    --color-soft:rgba(255,255,255,.06);
    --color-soft2:rgba(0,0,0,.22);
    --shadow-focus:0 0 0 3px rgba(14,165,233,.22), 0 0 0 7px rgba(251,113,133,.12);
}

body{
    color:var(--color-text);
    line-height:var(--body-line-height);
    background:
        radial-gradient(900px 500px at 15% 0%, rgba(14,165,233,.22), transparent 55%),
        radial-gradient(800px 520px at 88% 10%, rgba(251,113,133,.20), transparent 58%),
        linear-gradient(180deg, rgba(7,10,18,1) 0%, rgba(7,10,18,.92) 100%);
}

h1,h2,h3,h4{font-weight:var(--heading-weight);}

section,.section{
    padding-top:var(--space-section);
    padding-bottom:var(--space-section);
}

.card,[class*="card"]{
    border-radius:var(--radius-lg);
    box-shadow:
        0 20px 60px rgba(0,0,0,.42),
        0 8px 22px rgba(0,0,0,.25),
        0 1px 0 rgba(255,255,255,.09),
        inset 0 0 0 1px rgba(255,255,255,.10);
    padding:var(--space-card);
    transition:
        transform .55s cubic-bezier(.2,.9,.2,1),
        box-shadow .55s cubic-bezier(.2,.9,.2,1),
        border-color .55s cubic-bezier(.2,.9,.2,1),
        background .55s cubic-bezier(.2,.9,.2,1);
    background:
        linear-gradient(135deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.02) 45%, rgba(255,255,255,.04) 100%);
    border-color:rgba(255,255,255,.12);
}

.btn,button[class*="btn"],a[class*="btn"]{
    border-radius:var(--radius-md);
    transition:filter .55s cubic-bezier(.2,.9,.2,1), transform .55s cubic-bezier(.2,.9,.2,1), background .55s cubic-bezier(.2,.9,.2,1), color .55s cubic-bezier(.2,.9,.2,1);
}

a:not([class]){
    color:var(--color-primary);
    transition:color .55s cubic-bezier(.2,.9,.2,1), text-shadow .55s cubic-bezier(.2,.9,.2,1), filter .55s cubic-bezier(.2,.9,.2,1);
    text-shadow:0 1px 0 rgba(0,0,0,.25);
}

.news-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:calc(var(--space-gap) * 0.8);
}

.feature-list{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:var(--space-gap);
}

.hero-content{
    text-align:left;
    max-width:600px;
}

.testimonial-list{
    column-count:2;
    column-gap:var(--space-gap);
}

.testimonial-list > *{
    break-inside:avoid;
    margin-bottom:var(--space-gap);
}

.partner-grid{
    display:flex;
    gap:2rem;
    overflow:hidden;
    animation:partnerScroll 26s cubic-bezier(.2,.8,.2,1) infinite;
    filter:saturate(1.08) contrast(1.02);
}

@keyframes partnerScroll{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
}

.faq-wrapper{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:2rem;
}

.stats-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:var(--space-gap);
    text-align:center;
}

.cta-inner{
    text-align:center;
    max-width:700px;
    margin:0 auto;
}

.page-main{
    max-width:860px;
    margin:0 auto;
}

a:not([class]):hover{
    color:var(--color-accent);
    text-shadow:0 0 18px rgba(251,113,133,.42), 0 6px 18px rgba(251,113,133,.18);
}

.card{
    border-left:4px solid var(--color-primary);
    border-right:1px solid rgba(255,255,255,.10);
    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);
    background:
        linear-gradient(135deg,
            rgba(14,165,233,.18) 0%,
            rgba(251,113,133,.12) 42%,
            rgba(255,255,255,.05) 72%,
            rgba(255,255,255,.03) 100%),
        radial-gradient(600px 180px at 20% 0%, rgba(14,165,233,.18), transparent 55%),
        radial-gradient(420px 220px at 85% 10%, rgba(251,113,133,.14), transparent 60%);
}

header,.header,.navbar{
    background:
        linear-gradient(90deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.00) 65%),
        radial-gradient(800px 260px at 20% 0%, rgba(14,165,233,.14), transparent 55%),
        radial-gradient(700px 300px at 90% 20%, rgba(251,113,133,.12), transparent 60%);
}

@media (max-width:1024px){
    .news-grid{grid-template-columns:repeat(2, 1fr) !important;}
    .feature-list{grid-template-columns:repeat(2, 1fr) !important;}
    .partner-grid{grid-template-columns:repeat(3, 1fr) !important;}
    .stats-grid{grid-template-columns:repeat(2, 1fr) !important;}
    .hero-inner{grid-template-columns:1fr !important;}
}

@media (max-width:640px){
    :root{
        --space-section:2rem;
        --space-card:1rem;
        --space-gap:0.75rem;
        --radius-lg:18px;
        --shadow-md:
            0 14px 32px rgba(0,0,0,.40),
            0 2px 8px rgba(0,0,0,.20),
            inset 0 1px 0 rgba(255,255,255,.09);
        --transition:.48s cubic-bezier(.2,.9,.2,1);
    }
    .news-grid{grid-template-columns:1fr !important;}
    .feature-list{grid-template-columns:1fr !important;}
    .faq-list{grid-template-columns:1fr !important;}
    .testimonial-list{column-count:1 !important;}
    .partner-grid{grid-template-columns:repeat(2, 1fr) !important;}
    .stats-grid{grid-template-columns:repeat(2, 1fr) !important;}
    .cta-inner{grid-template-columns:1fr !important;}
}