    :root{
      --navy:#1e3a8a;--navy-2:#13245c;--gold:#b45309;--fg:#0f172a;--muted:#475569;
      --line:#e2e8f0;--bg:#ffffff;--bg-soft:#f8fafc;--ok:#1a7f37;
      --curve:cubic-bezier(0.22,1,0.36,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;font-family:"Manrope",-apple-system,Segoe UI,Roboto,sans-serif;
      color:var(--fg);background:var(--bg);line-height:1.5;
      text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
    }
    a{color:var(--navy);text-decoration:none}
    .wrap{max-width:1040px;margin:0 auto;padding:0 24px}
    .skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:100}
    .skip:focus{left:8px;top:8px}

    /* --- навигация (B7: плавающий бар, блюр) --- */
    .nav{
      position:sticky;top:12px;z-index:50;margin:12px auto 0;max-width:1040px;
      display:flex;align-items:center;gap:16px;padding:8px 8px 8px 16px;
      background:rgba(255,255,255,.78);backdrop-filter:blur(12px);
      border:1px solid var(--line);border-radius:16px;
    }
    .nav .brand{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:18px;color:var(--navy)}
    .nav .brand img{width:26px;height:26px}
    .nav .nav-tag{color:var(--muted);font-size:13px;font-weight:500}
    .nav .spacer{margin-left:auto}
    .nav .nav-login{font-weight:600;font-size:14px;color:var(--fg);padding:8px 12px;border-radius:10px}
    .nav .nav-login:hover{background:var(--bg-soft)}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      font-weight:600;font-size:16px;line-height:24px;cursor:pointer;
      padding:10px 18px;border-radius:12px;border:1px solid transparent;
      transition:transform .3s var(--curve),background-color .3s var(--curve),box-shadow .3s var(--curve);
    }
    .btn-primary{background:var(--navy);color:#fff}
    .btn-primary:hover{background:#1b3480;box-shadow:0 8px 24px -10px rgba(30,58,138,.7)}
    .btn-primary:active{transform:scale(.98)}
    .btn-ghost{background:#fff;color:var(--navy);border-color:var(--line)}
    .btn-ghost:hover{background:var(--bg-soft)}
    .btn-sm{font-size:14px;line-height:20px;padding:8px 14px;border-radius:10px}
    :focus-visible{outline:3px solid var(--navy);outline-offset:2px;border-radius:6px}

    section{padding:64px 0}
    .reveal{opacity:0;transform:translateY(32px);transition:opacity .7s var(--curve),transform .7s var(--curve)}
    .reveal.in{opacity:1;transform:none}

    /* --- hero --- */
    .hero{padding-top:48px;padding-bottom:40px}
    .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}
    .hero h1{
      font-size:60px;line-height:1.02;font-weight:700;margin:0 0 20px;max-width:680px;
      background:linear-gradient(90deg,#000 0%,#555 100%);
      -webkit-background-clip:text;background-clip:text;color:transparent;
      text-wrap:balance;
    }
    .hero .sub{font-size:20px;line-height:1.45;color:var(--muted);max-width:680px;margin:0 0 28px;text-wrap:pretty}
    .hero .cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
    .hero .proof{margin:22px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px;color:var(--muted);font-size:14px}
    .hero .proof b{color:var(--navy);font-weight:700}
    .pb-chip{display:inline-flex;align-items:center;gap:7px;background:#fff5e6;color:var(--gold);
      border:1px solid #f3d9b0;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;margin-bottom:22px}

    /* --- hero: макет заключения --- */
    .hero-visual{position:relative}
    .doc-mock{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;
      box-shadow:0 30px 70px -34px rgba(15,23,42,.45);transform:rotate(-1.2deg)}
    .doc-mock .dh{display:flex;align-items:center;gap:10px;border-bottom:2px solid var(--navy);padding-bottom:12px;margin-bottom:12px}
    .doc-mock .dh img{width:30px;height:30px}
    .doc-mock .dh .t{font-size:13px;font-weight:700;color:var(--navy);line-height:1.2}
    .doc-mock .dmeta{font-size:11px;color:var(--muted);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:4px 14px}
    .doc-row{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px;background:#fff}
    .doc-row.crit{box-shadow:inset 3px 0 #dc2626}
    .doc-row .rm{font-size:13px;font-weight:600;line-height:1.35;margin-bottom:7px}
    .doc-row .rb{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
    .nbadge{background:#eef2ff;color:var(--navy);border-radius:6px;font-size:11px;font-weight:600;padding:2px 7px;white-space:nowrap}
    .sev{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600}
    .sev .dot{width:8px;height:8px;border-radius:50%}
    .sev.crit{color:#dc2626}.sev.crit .dot{background:#dc2626}
    .sev.warn{color:var(--gold)}.sev.warn .dot{background:var(--gold)}
    .rstatus{font-size:11px;color:var(--muted);margin-left:auto}
    .doc-cap{text-align:center;font-size:12px;color:var(--muted);margin-top:12px}

    /* --- benefits --- */
    .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
    .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
    .card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
    .card .ic{width:40px;height:40px;border-radius:10px;background:var(--bg-soft);
      display:flex;align-items:center;justify-content:center;margin-bottom:14px;color:var(--navy)}
    .card h3{font-size:20px;line-height:28px;font-weight:600;margin:0 0 8px}
    .card p{margin:0;color:var(--muted);font-size:16px}
    h2.sec{font-size:36px;line-height:40px;font-weight:600;margin:0 0 8px;text-wrap:balance}
    p.sec-sub{font-size:18px;color:var(--muted);margin:0 0 36px;max-width:620px}

    /* --- tagline reveal --- */
    .tagline-sec{background:var(--bg-soft);border-radius:24px}
    .tagline{font-size:36px;line-height:1.25;font-weight:600;max-width:720px;margin:0 auto;text-align:center;text-wrap:balance}
    .tagline .w{color:rgba(15,23,42,.28);transition:color .5s var(--curve)}
    .tagline .w.on{color:var(--fg)}

    /* --- how it works --- */
    .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:step}
    .step{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
    .step .n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
      border-radius:999px;background:var(--navy);color:#fff;font-weight:700;margin-bottom:14px}
    .step h3{font-size:20px;line-height:28px;font-weight:600;margin:0 0 8px}
    .step p{margin:0;color:var(--muted);font-size:16px}

    /* --- pricing --- */
    .plans{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .plan{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;flex-direction:column}
    .plan.feat{border-color:var(--navy);box-shadow:0 12px 32px -18px rgba(30,58,138,.5)}
    .plan .pt{font-size:16px;font-weight:600;color:var(--muted);margin:0 0 6px}
    .plan .pp{font-size:30px;font-weight:700;line-height:36px;margin:0 0 4px}
    .plan .pm{font-size:14px;color:var(--muted);margin:0 0 16px;min-height:40px}
    .plan .ptag{align-self:flex-start;background:#eef2ff;color:var(--navy);border-radius:999px;
      font-size:12px;font-weight:600;padding:3px 10px;margin-bottom:12px}
    .plan .btn{margin-top:auto}

    /* --- proof / norms --- */
    .norms-sec{background:var(--navy);border-radius:24px;color:#fff}
    .norms-sec h2{color:#fff}
    .norms-sec .sec-sub{color:#c7d4ee}
    .norms-list{display:flex;flex-wrap:wrap;gap:10px}
    .norm-chip{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);
      border-radius:10px;padding:8px 12px;font-size:14px;color:#eaf0ff}

    /* --- faq --- */
    .faq{max-width:760px;margin:0 auto}
    .faq details{border:1px solid var(--line);border-radius:14px;padding:4px 20px;margin-bottom:12px;background:#fff}
    .faq summary{cursor:pointer;font-size:18px;font-weight:600;padding:16px 0;list-style:none;
      display:flex;justify-content:space-between;align-items:center;gap:16px}
    .faq summary::-webkit-details-marker{display:none}
    .faq summary::after{content:"+";color:var(--navy);font-size:24px;font-weight:600;transition:transform .3s var(--curve)}
    .faq details[open] summary::after{transform:rotate(45deg)}
    .faq p{margin:0 0 18px;color:var(--muted);font-size:16px}

    /* --- final cta --- */
    .final{text-align:center}
    .final h2{font-size:48px;line-height:48px;margin:0 auto 16px;max-width:680px;text-wrap:balance}
    .final p{font-size:18px;color:var(--muted);max-width:560px;margin:0 auto 28px}

    .foot{border-top:1px solid var(--line);padding:32px 0;color:var(--muted);font-size:14px}
    .foot .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
    .foot .spacer{margin-left:auto}

    @media(max-width:860px){
      .grid-3,.steps,.plans{grid-template-columns:1fr 1fr}
      .hero-grid{grid-template-columns:1fr}
      .hero-visual{display:none}
      .hero h1{font-size:44px}
    }
    @media(max-width:560px){
      .grid-3,.grid-2,.steps,.plans{grid-template-columns:1fr}
      .hero h1{font-size:34px}.hero .sub{font-size:18px}
      h2.sec,.final h2{font-size:30px;line-height:36px}
      .tagline{font-size:26px}
      .nav .nav-tag{display:none}
      section{padding:48px 0}
    }
    @media(prefers-reduced-motion:reduce){
      html{scroll-behavior:auto}
      .reveal{opacity:1;transform:none;transition:none}
      .tagline .w{color:var(--fg);transition:none}
      *{transition:none!important}
    }

/* --- контентные класс-страницы + перелинковка --- */
.crumbs{font-size:14px;color:var(--muted);padding:16px 0 0}
.crumbs a{color:var(--navy)}
.hl-sub{color:var(--muted)}
.other-list{display:flex;flex-wrap:wrap;gap:12px}
.other-card{display:block;border:1px solid var(--line);border-radius:14px;padding:16px 20px;text-decoration:none;color:var(--fg);background:#fff;transition:border-color .3s var(--curve),transform .3s var(--curve)}
.other-card:hover{border-color:var(--navy);transform:translateY(-2px)}
.other-card b{color:var(--navy)}
