:root {
    --landing-ink: #10233f;
    --landing-muted: #53657d;
    --landing-brand: #6757e7;
    --landing-accent: #19a989;
    --landing-surface: #f5f7fb;
    --landing-white: #fff;
}

* { box-sizing: border-box; }
body.landing { margin: 0; color: var(--landing-ink); background: var(--landing-white); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.65; }
.landing-shell { width: min(1100px, calc(100% - 40px)); margin: 0 auto; }
.landing-hero { padding: clamp(64px, 9vw, 120px) 0; background: linear-gradient(145deg, #f2f0ff 0%, #f8fbff 55%, #eafaf5 100%); overflow: hidden; }
.landing-hero__grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(260px, .88fr); gap: clamp(40px, 7vw, 90px); align-items: center; }
.landing-kicker { display: inline-block; color: var(--landing-brand); font-size: .78rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.landing h1 { max-width: 780px; margin: 14px 0 30px; font-size: clamp(2.35rem, 6vw, 4.85rem); line-height: 1.02; letter-spacing: -.045em; }
.landing-cta { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; padding: 13px 25px; border-radius: 14px; color: #fff; background: var(--landing-brand); font-weight: 800; text-decoration: none; box-shadow: 0 14px 34px rgba(103,87,231,.24); transition: transform .18s ease, box-shadow .18s ease; }
.landing-cta:hover, .landing-cta:focus { transform: translateY(-2px); box-shadow: 0 18px 38px rgba(103,87,231,.32); }
.landing-hero__image, .landing-hero__shape { width: 100%; aspect-ratio: 4 / 3; border-radius: 28px; box-shadow: 0 26px 70px rgba(16,35,63,.18); }
.landing-hero__image { object-fit: cover; background: #dfe5ef; }
.landing-hero__shape { background: radial-gradient(circle at 68% 30%, #fff 0 11%, transparent 12%), linear-gradient(135deg, var(--landing-brand), var(--landing-accent)); transform: rotate(2deg); }
.landing-content { padding: clamp(50px, 8vw, 100px) 0; }
.landing-content section { max-width: 850px; margin: 0 auto; padding: 34px 0; border-bottom: 1px solid #e5eaf2; }
.landing-content section:last-child { border-bottom: 0; }
.landing-content h2 { margin: 0 0 14px; font-size: clamp(1.6rem, 3vw, 2.35rem); line-height: 1.2; letter-spacing: -.025em; }
.landing-content p, .landing-content li { color: var(--landing-muted); font-size: 1.08rem; }
.landing-content ol, .landing-content ul { padding-left: 24px; }
.landing-content li { padding: 6px 0; }
.landing-content a { color: var(--landing-brand); font-weight: 700; }
.landing-final { padding: 74px 0; text-align: center; color: #fff; background: var(--landing-ink); }
.landing-final h2 { margin: 0 0 10px; font-size: clamp(2rem, 4vw, 3rem); }
.landing-final p { max-width: 650px; margin: 0 auto 26px; color: #cbd5e2; }
.landing-cta--light { color: var(--landing-ink); background: #fff; box-shadow: none; }
.landing-empty { min-height: 100vh; display: grid; place-items: center; text-align: center; background: var(--landing-surface); }
.landing-empty p { color: var(--landing-muted); }

@media (max-width: 760px) {
    .landing-shell { width: min(100% - 28px, 1100px); }
    .landing-hero__grid { grid-template-columns: 1fr; }
    .landing-hero__image, .landing-hero__shape { max-width: 520px; }
    .landing-content section { padding: 27px 0; }
}

@media (prefers-reduced-motion: reduce) {
    .landing-cta { transition: none; }
}
