/* МП Контроль — публичный сайт. Тёмная графитовая палитра, синий акцент */
@font-face { font-family: Manrope; src: url("/mp/manrope.woff") format("woff"); font-weight: 200 800; font-display: swap; }
:root { --bg: #0d1017; --bg2: #121620; --card: #161b26; --line: rgba(255, 255, 255, .08); --line2: rgba(255, 255, 255, .14); --text: #e8ecf4; --muted: #95a0b4;
  --acc: #2f6bff; --acc2: #5b8cff; --ok: #22c55e; --warn: #f59e0b; --bad: #ef4444; }
* { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; font-family: Manrope, system-ui, sans-serif; background: var(--bg); color: var(--text); line-height: 1.55; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; } h1, h2 { letter-spacing: -.02em; line-height: 1.1; margin: 0; }
.mp-wrap { width: min(1200px, 100% - 40px); margin: 0 auto; } .mp-narrow { width: min(860px, 100% - 40px); }
.mp-logo { display: inline-flex; align-items: center; gap: 10px; font-size: 19px; } .mp-logo i { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--acc); color: #fff; }
.mp-logo b span { color: var(--acc2); }
.mpb { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 20px; border-radius: 12px; background: var(--acc); color: #fff; font-weight: 700; font-size: 14.5px; border: 1px solid var(--acc); cursor: pointer; font-family: inherit; transition: filter .2s, transform .2s; white-space: nowrap; }
.mpb:hover { filter: brightness(1.12); } .mpb-ghost { background: transparent; border-color: var(--line2); color: var(--text); } .mpb-ghost:hover { border-color: var(--acc2); }
.mpb-lg { height: 52px; padding: 0 26px; font-size: 16px; }
.mp-head { position: sticky; top: 0; z-index: 20; background: rgba(13, 16, 23, .82); backdrop-filter: blur(14px); border-bottom: 1px solid var(--line); }
.mp-head-in { display: flex; align-items: center; gap: 28px; height: 72px; } .mp-nav { display: flex; gap: 26px; margin-left: 20px; color: var(--muted); font-weight: 600; font-size: 14.5px; } .mp-nav a:hover { color: #fff; }
.mp-head-btns { margin-left: auto; display: flex; gap: 10px; }
.mp-hero { padding: 70px 0 60px; background: radial-gradient(800px 500px at 80% 20%, rgba(47, 107, 255, .2), transparent 60%), radial-gradient(600px 400px at 0% 100%, rgba(91, 140, 255, .1), transparent 60%); }
.mp-hero-in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 50px; align-items: center; }
.mp-pill { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 999px; border: 1px solid rgba(91, 140, 255, .4); background: rgba(47, 107, 255, .1); color: #c9d7ff; font-size: 13px; font-weight: 700; }
.mp-hero h1 { font-size: clamp(36px, 4.6vw, 58px); margin: 20px 0 18px; font-weight: 800; } .mp-hero h1 em { font-style: normal; background: linear-gradient(90deg, #5b8cff, #8fb0ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.mp-hero p { color: #b5bfd1; font-size: 17.5px; max-width: 560px; } .mp-hero-btns { display: flex; gap: 12px; flex-wrap: wrap; margin: 28px 0 22px; }
.mp-ticks { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; color: var(--muted); font-size: 14px; } .mp-ticks li { display: inline-flex; gap: 6px; align-items: center; } .mp-ticks svg { color: var(--ok); }
.mp-demo { border-radius: 20px; border: 1px solid var(--line2); background: linear-gradient(180deg, #171c28, #10141d); box-shadow: 0 60px 120px -50px #000, 0 0 0 1px rgba(47, 107, 255, .15), 0 0 80px -30px rgba(47, 107, 255, .5); overflow: hidden; transform: perspective(1400px) rotateY(-6deg) rotateX(2deg); }
.mp-demo-top { display: flex; align-items: center; gap: 6px; padding: 12px 16px; border-bottom: 1px solid var(--line); font-size: 12px; color: var(--muted); } .mp-demo-top i { width: 10px; height: 10px; border-radius: 50%; background: #2a3040; } .mp-demo-top span { margin-left: 10px; }
.mp-demo-body { padding: 18px; display: grid; gap: 14px; } .mp-demo-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.mp-demo-kpis div { padding: 12px; border-radius: 12px; background: var(--card); border: 1px solid var(--line); } .mp-demo-kpis small { color: var(--muted); font-size: 11.5px; } .mp-demo-kpis b { display: block; font-size: 22px; }
.ok { color: var(--ok); } .warn { color: var(--warn); } .bad { color: var(--bad); }
.mp-demo-row { display: grid; grid-template-columns: 1fr 1.2fr; gap: 12px; } .mp-demo-chart { display: flex; align-items: flex-end; gap: 6px; height: 150px; padding: 14px; border-radius: 12px; background: var(--card); border: 1px solid var(--line); }
.mp-demo-chart span { flex: 1; border-radius: 5px 5px 2px 2px; background: linear-gradient(180deg, var(--acc2), rgba(47, 107, 255, .3)); }
.mp-demo-list { display: grid; gap: 6px; padding: 12px; border-radius: 12px; background: var(--card); border: 1px solid var(--line); } .mp-demo-list p { margin: 0; display: flex; gap: 8px; align-items: center; font-size: 12.5px; color: #d5dcea; } .mp-demo-list p svg { flex: none; }
.mp-demo-list p.bad svg { color: var(--bad); } .mp-demo-list p.warn svg { color: var(--warn); } .mp-demo-list p.ok svg { color: var(--ok); }
.mp-sec { padding: 80px 0; } .mp-sec-alt { background: var(--bg2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.mp-sec-h { text-align: center; margin-bottom: 40px; } .mp-sec-h span { color: var(--acc2); font-weight: 800; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; } .mp-sec-h h2 { font-size: clamp(28px, 3.2vw, 40px); margin-top: 10px; }
.mp-left { text-align: left; } .mp-muted { color: var(--muted); }
.mp-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; } .mp-grid4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.mp-card { padding: 26px; border-radius: 18px; background: var(--card); border: 1px solid var(--line); transition: border-color .2s, transform .2s; } .mp-card:hover { border-color: rgba(91, 140, 255, .45); transform: translateY(-3px); }
.mp-card i { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: rgba(47, 107, 255, .14); color: var(--acc2); margin-bottom: 16px; }
.mp-card b { display: block; font-size: 18px; margin-bottom: 8px; } .mp-card p { margin: 0; color: var(--muted); font-size: 14.5px; } .mp-card-sm { padding: 22px; }
.mp-tag { display: inline-block; margin-bottom: 12px; padding: 4px 10px; border-radius: 999px; background: rgba(34, 197, 94, .12); color: #86efac; font-weight: 700; font-size: 12px; }
.mp-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; counter-reset: s; } .mp-step { padding: 24px; border-radius: 18px; background: var(--card); border: 1px solid var(--line); }
.mp-step em { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--acc); font-style: normal; font-weight: 800; margin-bottom: 14px; } .mp-step b { display: block; font-size: 17px; margin-bottom: 6px; } .mp-step p { margin: 0; color: var(--muted); font-size: 14px; }
.mp-split { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 50px; align-items: center; }
.mp-checks { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } .mp-checks li { display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-radius: 14px; background: var(--card); border: 1px solid var(--line); font-weight: 600; font-size: 14.5px; }
.mp-checks svg { flex: none; color: var(--acc2); margin-top: 3px; }
.mp-plans { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.mp-plan { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 26px; border-radius: 20px; background: var(--card); border: 1px solid var(--line); }
.mp-plan.hot { border-color: var(--acc); box-shadow: 0 0 60px -20px rgba(47, 107, 255, .6); } .mp-plan > em { position: absolute; top: -12px; left: 24px; padding: 4px 12px; border-radius: 999px; background: var(--acc); font-style: normal; font-size: 12px; font-weight: 800; }
.mp-plan > b { font-size: 18px; } .mp-price { font-size: 32px; font-weight: 800; } .mp-price small { font-size: 14px; color: var(--muted); font-weight: 600; }
.mp-plan ul { list-style: none; padding: 0; margin: 0 0 6px; display: grid; gap: 8px; flex: 1; } .mp-plan li { display: flex; gap: 8px; color: #c9d1e0; font-size: 14px; } .mp-plan li svg { flex: none; color: var(--ok); margin-top: 3px; }
.mp-plan .mpb { justify-content: center; }
.mp-partner { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 40px; border-radius: 24px; border: 1px solid rgba(91, 140, 255, .35);
  background: radial-gradient(600px 300px at 100% 0%, rgba(47, 107, 255, .25), transparent 60%), var(--card); } .mp-partner h2 { font-size: clamp(24px, 2.6vw, 32px); margin: 14px 0 10px; } .mp-partner p { color: #b5bfd1; margin: 0; max-width: 640px; }
.mp-faq { border: 1px solid var(--line); border-radius: 14px; background: var(--card); margin-bottom: 10px; } .mp-faq summary { padding: 18px 20px; font-weight: 700; cursor: pointer; list-style: none; } .mp-faq summary::-webkit-details-marker { display: none; }
.mp-faq summary::after { content: '+'; float: right; color: var(--acc2); font-size: 20px; line-height: 1; } .mp-faq[open] summary::after { content: '–'; } .mp-faq p { margin: 0; padding: 0 20px 18px; color: var(--muted); }
.mp-cta { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: center; padding: 40px; border-radius: 24px; background: linear-gradient(135deg, #1b3fa8, #2f6bff); }
.mp-cta h2 { font-size: clamp(26px, 3vw, 36px); } .mp-cta p { color: #dbe6ff; } .mp-demo-form { display: grid; gap: 10px; }
.mp-demo-form input:not([type=checkbox]) { height: 48px; padding: 0 16px; border-radius: 12px; border: 1px solid rgba(255, 255, 255, .25); background: rgba(255, 255, 255, .12); color: #fff; font: inherit; } .mp-demo-form input::placeholder { color: #dbe6ff; }
.mp-demo-form .mpb { background: #fff; color: #1b3fa8; border-color: #fff; justify-content: center; } .mp-consent { font-size: 13px; color: #dbe6ff; } .mp-consent a { text-decoration: underline; } .mp-form-msg { margin: 0; font-weight: 700; min-height: 1em; }
.mp-foot { padding: 30px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: 13.5px; } .mp-foot-in { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; align-items: center; } .mp-foot a { color: #c9d1e0; }
@media (max-width: 1050px) { .mp-hero-in, .mp-split, .mp-cta { grid-template-columns: 1fr; } .mp-demo { transform: none; } .mp-grid4, .mp-steps, .mp-plans { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mp-nav { display: none; } .mp-partner { flex-direction: column; align-items: flex-start; } }
@media (max-width: 640px) { .mp-grid3, .mp-grid4, .mp-steps, .mp-plans, .mp-checks { grid-template-columns: 1fr; } .mp-head-btns .mpb-ghost { display: none; } .mp-head-btns .mpb { padding: 0 14px; height: 40px; font-size: 13.5px; } .mp-demo-kpis { grid-template-columns: repeat(2, 1fr); } .mp-demo-row { grid-template-columns: 1fr; } .mp-sec { padding: 56px 0; } .mp-cta, .mp-partner { padding: 24px; } }
