:root{
    --color-primary:#1d4ed8;
    --color-primary-dark:#1e40af;
    --color-accent:#f97316;
    --color-surface:#eef2ff;
    --color-text:#0b1220;
    --rgb-primary:29,78,216;
    --rgb-accent:249,115,22;

    --radius-sm:0;
    --radius-md:3px;
    --radius-lg:8px;
    --radius-xl:12px;

    --shadow-sm:
        0 1px 0 rgba(2,6,23,.35),
        0 6px 14px rgba(2,6,23,.08),
        0 2px 6px rgba(2,6,23,.08);
    --shadow-md:
        0 2px 0 rgba(2,6,23,.35),
        0 14px 30px rgba(2,6,23,.14),
        0 6px 14px rgba(2,6,23,.10),
        0 0 0 1px rgba(37,46,58,.10) inset;
    --shadow-lg:
        0 3px 0 rgba(2,6,23,.38),
        0 22px 55px rgba(2,6,23,.18),
        0 10px 25px rgba(2,6,23,.13),
        0 0 0 1px rgba(37,46,58,.12) inset;

    --space-section:5rem;
    --space-card:2rem;
    --space-gap:1.5rem;

    --transition:0.55s cubic-bezier(.2,.9,.2,1);
    --heading-weight:650;
    --body-line-height:1.65;
}

body{ color:var(--color-text); line-height:var(--body-line-height); background:
    radial-gradient(1200px 700px at 15% 0%, rgba(29,78,216,.12) 0%, rgba(29,78,216,0) 55%),
    radial-gradient(900px 600px at 85% 15%, rgba(249,115,22,.10) 0%, rgba(249,115,22,0) 55%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 55%, #f7fafc 100%);
}
h1,h2,h3,h4{ font-weight:var(--heading-weight); text-shadow:0 1px 0 rgba(255,255,255,.65); }
section,.section{ padding-top:var(--space-section); padding-bottom:var(--space-section); }
.card,[class*="card"]{
    border-radius:var(--radius-xl);
    padding:var(--space-card);
    box-shadow:
        0 1px 0 rgba(2,6,23,.20),
        0 18px 50px rgba(2,6,23,.18),
        0 10px 24px rgba(2,6,23,.12),
        0 0 0 1px rgba(29,78,216,.14) inset,
        0 0 0 6px rgba(29,78,216,.05);
    transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition), background var(--transition), color var(--transition), filter var(--transition);
    background:
        radial-gradient(120% 120% at 0% 0%, rgba(29,78,216,.16) 0%, rgba(29,78,216,0) 50%),
        radial-gradient(120% 120% at 100% 0%, rgba(249,115,22,.14) 0%, rgba(249,115,22,0) 52%),
        linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(238,242,255,.78) 100%);
}
.btn,button[class*="btn"],a[class*="btn"]{
    border-radius:var(--radius-md);
    transition:background var(--transition), color var(--transition), transform var(--transition), box-shadow var(--transition), border-color var(--transition), filter var(--transition);
    background:
        linear-gradient(180deg, rgba(29,78,216,.96) 0%, rgba(29,78,216,.82) 100%);
    color:#ffffff;
    box-shadow:
        0 2px 0 rgba(2,6,23,.25),
        0 12px 24px rgba(29,78,216,.24),
        0 0 0 1px rgba(29,78,216,.30) inset;
    border:1px solid rgba(29,78,216,.28);
    filter:saturate(1.05);
}
a:not([class]){ color:var(--color-primary); transition:color var(--transition), filter var(--transition), text-shadow var(--transition); text-shadow:0 0 0 rgba(0,0,0,0); }
a:not([class]):hover{
    color:var(--color-accent);
    text-shadow:
        0 0 22px rgba(249,115,22,.35),
        0 1px 0 rgba(255,255,255,.55);
}

.card{ border:1px solid rgba(var(--rgb-primary), .16); }

.news-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-gap); }
.feature-list{ display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-gap); }
.hero-content{ text-align:center; max-width:800px; margin:0 auto; }
.testimonial-list{ display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-gap); }
.partner-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:calc(var(--space-gap) * 1.5); align-items:center; }
.faq-list{ max-width:800px; margin:0 auto; }
.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:1400px; margin:0 auto; }

@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; --transition:0.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; }
}