:root{
    --color-primary:#2b6cb0;
    --color-primary-dark:#1f4f82;
    --color-accent:#38bdf8;
    --color-surface:#fbfaf4;
    --color-text:#0b1b2a;
    --rgb-primary:43,108,176;
    --rgb-accent:56,189,248;
    --radius-sm:6px;
    --radius-md:12px;
    --radius-lg:20px;
    --radius-xl:26px;
    --shadow-sm:0 1px 0 rgba(11,27,42,.06);
    --shadow-md:0 10px 22px rgba(11,27,42,.10), 0 3px 10px rgba(56,189,248,.10);
    --shadow-lg:0 20px 50px rgba(11,27,42,.14), 0 10px 26px rgba(43,108,176,.18), inset 0 1px 0 rgba(255,255,255,.65);
    --space-section:4rem;
    --space-card:1.5rem;
    --space-gap:1.25rem;
    --transition:520ms cubic-bezier(.16,.84,.24,.98);
    --heading-weight:700;
    --body-line-height:1.62
}

body{
    color:var(--color-text);
    line-height:var(--body-line-height);
    background:linear-gradient(180deg, rgba(251,250,244,1) 0%, rgba(251,250,244,.72) 100%);
    text-rendering:optimizeLegibility;
}

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

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

.card,[class*="card"]{
    border-radius:var(--radius-xl);
    box-shadow:var(--shadow-md);
    padding:var(--space-card);
    transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition), background var(--transition);
    background:linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(251,250,244,.90) 100%);
    border:1px solid rgba(11,27,42,.08);
}

.card:hover,[class*="card"]:hover{
    box-shadow:var(--shadow-lg);
    transform:translateY(-2px);
}

.btn,button[class*="btn"],a[class*="btn"]{
    border-radius:999px;
    transition:transform var(--transition), background var(--transition), box-shadow var(--transition), color var(--transition), border-color var(--transition);
    outline:1px solid transparent;
    outline-offset:2px;
}

a:not([class]){
    color:var(--color-primary);
    transition:color var(--transition), text-shadow var(--transition);
    text-shadow:0 1px 0 rgba(0,0,0,.06);
}

a:not([class]):hover{
    color:var(--color-primary-dark);
    text-shadow:0 0 18px rgba(43,108,176,.26);
}

.news-grid{
    display:grid;
    grid-template-columns:2fr 1fr;
    grid-template-rows:auto auto;
    gap:var(--space-gap);
}

.news-grid>*:first-child{
    grid-row:span 2
}

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

.hero{
    position:relative;
    min-height:70vh;
    display:flex;
    align-items:center;
}

.hero-content{
    position:relative;
    z-index:1;
    filter:saturate(1.02) contrast(1.02);
}

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

.partner-grid{
    display:flex;
    gap:2rem;
    overflow:hidden;
    animation:partnerScroll 20s linear infinite;
}

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

.faq-list{
    max-width:800px;
    margin:0 auto;
}

.stats-grid{
    display:flex;
    justify-content:center;
    gap:3rem;
}

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

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

/* 条件性装饰 */
.hero,[class*="hero"],section:first-of-type{
    background:
        linear-gradient(90deg, rgba(251,250,244,.96) 0%, rgba(251,250,244,.78) 36%, rgba(56,189,248,.10) 100%),
        radial-gradient(1000px 600px at 15% 15%, rgba(56,189,248,.25) 0%, rgba(56,189,248,0) 55%),
        radial-gradient(900px 520px at 85% 40%, rgba(43,108,176,.28) 0%, rgba(43,108,176,0) 60%),
        linear-gradient(135deg, var(--color-surface) 0%, rgba(251,250,244,.55) 35%, rgba(31,79,130,.08) 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}

.card{
    border-left:3px solid rgba(56,189,248,.95);
    border-right:1px solid rgba(11,27,42,.06);
    background:
        linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(251,250,244,.92) 100%);
}

header,.header,.navbar{
    background:transparent;
    backdrop-filter:saturate(1.1) blur(6px);
    -webkit-backdrop-filter:saturate(1.1) blur(6px);
}

/* Responsive */
@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:3.25rem;
        --space-card:1.1rem;
        --space-gap:0.95rem;
        --transition:480ms cubic-bezier(.18,.78,.22,.98);
        --radius-md:12px;
        --radius-lg:18px;
        --radius-xl:22px
    }
    .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; }
}