:root{
    --color-primary:#0f766e;
    --color-primary-dark:#115e59;
    --color-accent:#7c3aed;
    --color-surface:#ecfeff;
    --color-text:#0b1220;
    --rgb-primary:15,118,110;
    --rgb-accent:124,58,237;
    --radius-sm:2px;
    --radius-md:3px;
    --radius-lg:0px;
    --radius-xl:2px;
    --shadow-sm:4px 4px 0px rgba(var(--rgb-primary),0.65);
    --shadow-md:4px 4px 0px rgba(var(--rgb-primary),0.8), 8px 10px 22px rgba(15,118,110,0.16);
    --shadow-lg:4px 4px 0px rgba(var(--rgb-primary),0.9), 10px 14px 34px rgba(15,118,110,0.18);
    --space-section:4rem;
    --space-card:1.5rem;
    --space-gap:1.25rem;
    --transition:0.15s cubic-bezier(.2,.8,.2,1);
    --heading-weight:700;
    --body-line-height:1.7;
    --color-border:rgba(var(--rgb-primary),0.22);
    --color-border-strong:rgba(var(--rgb-primary),0.38);
    --color-focus:rgba(var(--rgb-accent),0.55);
}

body{ color:var(--color-text); line-height:var(--body-line-height); background:
radial-gradient(1200px 600px at 20% -10%, rgba(var(--rgb-accent),0.12), transparent 55%),
radial-gradient(900px 500px at 110% 10%, rgba(var(--rgb-primary),0.10), transparent 50%),
linear-gradient(180deg, rgba(236,254,255,0.95), rgba(236,254,255,0.75)); }

h1,h2,h3,h4{ font-weight:var(--heading-weight); text-shadow:1px 1px 0px rgba(17,94,89,0.12); }

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

.card,[class*="card"]{
    border-radius:var(--radius-xl);
    box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.85), 0px 0px 0px rgba(0,0,0,0);
    padding:var(--space-card);
    transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition), background-color var(--transition), filter var(--transition);
    background:
      linear-gradient(180deg, rgba(255,255,255,0.98), rgba(255,255,255,0.92));
    border:2px solid rgba(var(--rgb-primary),0.30);
}

.btn,button[class*="btn"],a[class*="btn"]{
    border-radius:var(--radius-md);
    transition:transform var(--transition), background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
    border:2px solid rgba(var(--rgb-accent),0.30);
    background:
      linear-gradient(180deg, rgba(124,58,237,0.12), rgba(124,58,237,0.06));
    box-shadow:4px 4px 0px rgba(var(--rgb-accent),0.35);
    color:var(--color-text);
}

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

a:not([class]):hover{ color:var(--color-accent); }

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

header,.header,.navbar{ background:transparent; filter:saturate(1.05); }

.news-grid{ display:flex; flex-direction:column; gap:var(--space-gap); }
.news-grid .card{ display:grid; grid-template-columns:280px 1fr; border-radius:var(--radius-xl); box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.86), 0 18px 40px rgba(15,118,110,0.10); }
.news-grid .card{ outline:2px solid rgba(var(--rgb-accent),0.14); outline-offset:-2px; }

.feature-list{ display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-gap); align-items:baseline; }
.feature-list .card{ box-shadow:4px 4px 0px rgba(var(--rgb-accent),0.40), 0 16px 32px rgba(124,58,237,0.10); border-color:rgba(var(--rgb-accent),0.22); }

.hero{ padding:2rem 0; }
.hero-content{ max-width:560px; }
.hero-content .card{ box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.88), 0 22px 50px rgba(15,118,110,0.12); }

.testimonial-list{
    display:flex;
    flex-direction:column;
    gap:var(--space-gap);
    max-width:720px;
    margin:0 auto;
}
.testimonial-list .card{
    border-color:rgba(var(--rgb-primary),0.28);
    box-shadow:4px 4px 0px rgba(124,58,237,0.28), 0 18px 44px rgba(124,58,237,0.10);
    background:
      linear-gradient(135deg, rgba(236,254,255,0.92), rgba(255,255,255,0.92));
}

.partner-grid{
    display:flex;
    gap:2rem;
    overflow:hidden;
    animation:partnerScroll 20s linear infinite;
}
.partner-grid .card{
    border-radius:0px;
    box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.75), 0 12px 26px rgba(15,118,110,0.10);
    border-color:rgba(var(--rgb-primary),0.34);
}

@keyframes partnerScroll{
    0%{ transform:translateX(0); filter:contrast(1.02) saturate(1.05); }
    100%{ transform:translateX(-50%); filter:contrast(1.02) saturate(1.05); }
}

.faq-list{ display:grid; grid-template-columns:1fr 1fr; gap:var(--space-gap); align-items:baseline; }
.faq-list .card{
    border-radius:var(--radius-sm);
    box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.78), 0 20px 46px rgba(15,118,110,0.11);
    border-color:rgba(var(--rgb-primary),0.30);
}

.stats-grid{ display:flex; justify-content:center; gap:3rem; }
.stats-grid .card{
    box-shadow:4px 4px 0px rgba(var(--rgb-accent),0.36), 0 16px 36px rgba(124,58,237,0.10);
    border-color:rgba(var(--rgb-accent),0.26);
    background:linear-gradient(180deg, rgba(255,255,255,0.96), rgba(236,254,255,0.90));
}

.cta-inner{ text-align:center; max-width:700px; margin:0 auto; }
.cta-inner .card{
    box-shadow:4px 4px 0px rgba(var(--rgb-primary),0.88), 0 26px 60px rgba(15,118,110,0.13);
    border-color:rgba(var(--rgb-primary),0.40);
    border-radius:0px;
}

@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; }
    :root{ --transition:0.15s cubic-bezier(.2,.8,.2,1); }
}

@media (max-width:640px){
    :root{ --space-section:2rem; --space-card:1rem; --space-gap:0.75rem; --radius-xl:2px; --radius-md:3px; --shadow-md:4px 4px 0px rgba(var(--rgb-primary),0.78), 6px 9px 18px rgba(15,118,110,0.14); }
    .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; }
}