
:root{
  --dap-50:#F1F7FF;--dap-100:#DCEBFF;--dap-200:#B7D6FF;--dap-300:#8AC0FF;--dap-400:#5BA8F7;
  --dap-500:#2F87E6;--dap-600:#236FCA;--dap-700:#1852A3;--dap-800:#123E7B;--dap-900:#0C2B57;
  --text:#0b2239;--surface:#ffffff;
  --bg-grad:linear-gradient(135deg,var(--dap-50) 0%,var(--dap-100) 35%,var(--dap-200) 100%);
  --brand-grad:linear-gradient(135deg,var(--dap-300),var(--dap-700));
  --radius:1.25rem;
}
[data-theme="dark"]{
  --text:#e9f0f8;--surface:#0e1726;
  --bg-grad:linear-gradient(135deg,#0b1220 0%,#0e1a2b 35%,#122341 100%);
}
html,body{background:var(--bg-grad);color:var(--text);scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif}
.navbar{backdrop-filter:saturate(180%) blur(10px);--bs-navbar-color:var(--text)}
.navbar.scrolled{background:rgba(255,255,255,.95)!important;box-shadow:0 2px 16px rgba(16,62,115,.08)}
[data-theme="dark"] .navbar.scrolled{background:rgba(14,23,38,.9)!important}
.brand-logo{height:40px}
.btn-brand{background-image:var(--brand-grad);color:#fff;border:none;box-shadow:0 6px 16px rgba(25,86,170,.25)}
.btn-brand:hover{filter:brightness(1.04);color:#fff}
.hero{padding:7rem 0 5rem}
.hero-card{background:rgba(255,255,255,.78);border:1px solid rgba(13,71,161,.08);border-radius:var(--radius);
  box-shadow:0 20px 60px rgba(13,71,161,.12);backdrop-filter:blur(6px)}
[data-theme="dark"] .hero-card{background:rgba(20,30,50,.6);border-color:rgba(255,255,255,.05)}
.section{padding:5rem 0}
.section-title{color:var(--dap-700);font-weight:700;letter-spacing:.02em}
[data-theme="dark"] .section-title{color:var(--dap-300)}
.icon-badge{width:3rem;height:3rem;border-radius:1rem;display:inline-flex;align-items:center;justify-content:center;
  background-image:var(--brand-grad);color:#fff;font-size:1.5rem;box-shadow:0 10px 24px rgba(25,86,170,.25)}
.card-brand{background:var(--surface);border:1px solid rgba(13,71,161,.08);border-radius:var(--radius);padding:1.5rem;height:100%;
  box-shadow:0 6px 18px rgba(16,62,115,.07)}
[data-theme="dark"] .card-brand{background:#0f1a2c;border-color:rgba(255,255,255,.06);box-shadow:0 6px 18px rgba(0,0,0,.4)}
.pricing-card.highlight{border:2px solid var(--dap-500);box-shadow:0 16px 36px rgba(16,62,115,.12);transform:translateY(-4px)}
.bg-brand-soft{background:linear-gradient(180deg,rgba(74,157,246,.08),rgba(22,78,161,.08))}
.shadow-soft{box-shadow:0 12px 36px rgba(13,71,161,.15)}
/* animations */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.in-view{opacity:1;transform:none}
.delay-1{transition-delay:.06s}.delay-2{transition-delay:.12s}.delay-3{transition-delay:.18s}
@keyframes rotateSlow{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes floatY{0%{transform:translateY(0)}50%{transform:translateY(-8px)}100%{transform:translateY(0)}}
.rotate-slow{animation:rotateSlow 24s linear infinite}
.float-y{animation:floatY 6s ease-in-out infinite}
.hero-orb{position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;
  background-image:var(--brand-grad);filter:blur(20px);opacity:.25}
footer a{color:inherit;opacity:.9}footer a:hover{opacity:1}
.badge-outline{border:1px solid var(--dap-300);color:var(--dap-700);border-radius:999px;padding:.4rem .7rem;background:rgba(255,255,255,.85)}
[data-theme="dark"] .badge-outline{color:var(--dap-300);background:rgba(15,26,44,.85)}
.partner-logo{height:36px;opacity:.85;filter:grayscale(40%)}.partner-logo:hover{opacity:1;filter:none}
/* Cookie banner */
.cookie-banner{position:fixed;z-index:1100;bottom:1rem;left:50%;transform:translateX(-50%);
  max-width:920px;width:calc(100% - 2rem);background:var(--surface);color:var(--text);
  border:1px solid rgba(13,71,161,.1);border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.15);padding:1rem}
[data-theme="dark"] .cookie-banner{background:#0f1a2c;border-color:rgba(255,255,255,.06)}
