* { box-sizing: border-box; }
:root { --ca-primary:#2563eb; --ca-dark:#0f172a; --ca-muted:#64748b; --ca-bg:#f7f9fc; }
body { background:var(--ca-bg); color:#172033; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.fw-800 { font-weight:800; }
.brand-mark { color:#111827; letter-spacing:-.8px; font-size:1.25rem; }
.brand-mark span, .auth-logo span { color:var(--ca-primary); }
.hero-section { background:linear-gradient(135deg,#f8fbff 0%,#eef4ff 52%,#f8faff 100%); min-height:650px; }
.hero-glow { position:absolute; border-radius:50%; filter:blur(50px); opacity:.35; pointer-events:none; }
.hero-glow-one { width:280px;height:280px;background:#93c5fd;right:5%;top:8%; }
.hero-glow-two { width:220px;height:220px;background:#c4b5fd;left:-80px;bottom:10%; }
.eyebrow { display:inline-flex; gap:7px; align-items:center; color:var(--ca-primary); font-size:.78rem; font-weight:800; letter-spacing:.12em; }
.eyebrow-light { color:#93c5fd; }
.hero-title { font-size:clamp(2.7rem,6vw,5.1rem); line-height:1.03; letter-spacing:-.055em; font-weight:850; color:#0f172a; }
.hero-title span { color:var(--ca-primary); }
.hero-copy { font-size:1.18rem; line-height:1.75; color:#64748b; max-width:650px; }
.hero-trust { display:flex; flex-wrap:wrap; gap:16px; color:#475569; font-size:.9rem; }
.campaign-preview { border:1px solid #dbe4f0; border-radius:24px; background:white; overflow:hidden; transform:rotate(1deg); }
.preview-top,.preview-footer { padding:15px 20px; background:#f8fafc; display:flex; justify-content:space-between; align-items:center; }
.status-dot { display:inline-block;width:9px;height:9px;background:#22c55e;border-radius:50%;margin-right:7px; }
.mini-badge { background:#dbeafe;color:#1d4ed8;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:800; }
.preview-body { padding:24px; }
.preview-line { display:flex;justify-content:space-between;padding:9px 0;color:#64748b;font-size:.9rem; }
.preview-line strong { color:#172033; }
.output-grid { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.output-grid div { background:#f8fafc;border:1px solid #edf2f7;border-radius:13px;padding:12px;font-size:1.2rem; }
.output-grid small { display:block;color:#64748b;font-size:.78rem;margin-top:4px; }
.preview-footer { font-size:.82rem;color:#475569; }
.section-pad { padding:90px 0; }
.section-heading { max-width:720px; }
.section-heading h2 { font-size:clamp(2rem,4vw,3.1rem);font-weight:800;letter-spacing:-.04em;margin-top:10px; }
.section-heading p { color:#64748b;font-size:1.05rem;line-height:1.7; }
.feature-card { background:#fff;border:1px solid #e8edf4;border-radius:20px;padding:28px;transition:.2s; }
.feature-card:hover { transform:translateY(-4px);box-shadow:0 14px 35px rgba(15,23,42,.08); }
.feature-card p { color:#64748b;line-height:1.7;margin-bottom:0; }
.icon-box { width:50px;height:50px;border-radius:15px;background:#eff6ff;display:grid;place-items:center;font-size:1.35rem;margin-bottom:18px; }
.workflow-line { display:grid;grid-template-columns:repeat(4,1fr);gap:20px; }
.workflow-step { position:relative;padding:28px;border-radius:20px;background:white;border:1px solid #e7edf5; }
.step-number { color:var(--ca-primary);font-weight:900;font-size:.82rem;margin-bottom:30px; }
.workflow-step p { color:#64748b;line-height:1.6; }
.byok-pills { display:flex;flex-wrap:wrap;gap:10px; }
.byok-pills span { border:1px solid rgba(255,255,255,.18);padding:8px 13px;border-radius:999px;color:#dbeafe;background:rgba(255,255,255,.05);font-size:.85rem; }
.byok-card { background:#111c31;border:1px solid #26344d;border-radius:22px;padding:20px; }
.connected { color:#4ade80;font-size:.78rem; }
.provider-row { display:flex;align-items:center;gap:12px;background:#18253b;border-radius:14px;padding:14px;margin-top:12px; }
.provider-row > span:first-child { font-size:1.25rem; }
.provider-row small { display:block;color:#94a3b8;margin-top:2px; }
.provider-row.muted { opacity:.7; }
.cta-box { max-width:850px;margin:auto;padding:55px 30px;border-radius:28px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #dbeafe; }
.cta-box h2 { font-weight:800;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;margin:10px 0; }
.cta-box p { color:#64748b;font-size:1.05rem;margin-bottom:24px; }
.footer { background:white;border-top:1px solid #e8edf4; }
.auth-page { min-height:calc(100vh - 70px);display:flex;align-items:center;justify-content:center;padding:45px 20px; }
.auth-wrap { width:100%;max-width:500px; }
.back-home { display:inline-block;color:#475569;text-decoration:none;margin-bottom:15px;font-size:.9rem; }
.back-home:hover { color:var(--ca-primary); }
.auth-card { border-radius:22px; }
.auth-logo { font-size:1.15rem;font-weight:850;letter-spacing:-.5px; }
.auth-card .form-control { border-radius:12px;border-color:#dbe3ed; }
.auth-card .form-control:focus { border-color:#93c5fd;box-shadow:0 0 0 .2rem rgba(37,99,235,.12); }
.auth-card .btn { border-radius:12px;font-weight:700; }
@media (max-width: 991.98px) { .workflow-line { grid-template-columns:1fr 1fr; } .hero-section { min-height:auto; } }
@media (max-width: 575.98px) { .section-pad { padding:65px 0; } .hero-title { font-size:2.75rem; } .hero-trust { flex-direction:column;gap:7px; } .workflow-line { grid-template-columns:1fr; } .campaign-preview { transform:none; } }
