/* mosaic — masonry-кладка на CSS-columns: разновысокие плитки единым потоком. Префикс .mo-* */
:root{
  --mo-bg:#0b1013;
  --mo-surf:#141c20;
  --mo-surf2:#1b262b;
  --mo-acc:#4fc3f7;
  --mo-acc2:#ffb74d;
  --mo-ink:#e7eff3;
  --mo-mute:#849aa3;
  --mo-line:#26343a;
  --mo-line2:#31454d;
  --mo-mono:ui-monospace,"Cascadia Mono","Consolas","DejaVu Sans Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.mo-page{
  margin:0;background:var(--mo-bg);color:var(--mo-ink);
  font-family:"Onest",system-ui,Segoe UI,Roboto,Arial,sans-serif;
  font-size:17px;line-height:1.6;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Yeseva One",Georgia,serif;font-weight:400;line-height:1.22;margin:0}
p{margin:0 0 11px}
a{color:inherit;text-decoration:none}

.mo-rail{max-width:1180px;margin:0 auto;padding:0 16px}

/* ---------- шапка ---------- */
.mo-topbar{position:sticky;top:0;z-index:40;background:rgba(11,16,19,.94);border-bottom:1px solid var(--mo-line)}
.mo-topbar .mo-rail{height:64px;display:flex;align-items:center;gap:16px}
.mo-brand{display:flex;align-items:center;gap:10px;min-height:44px}
.mo-brand svg{width:34px;height:34px;display:block}
.mo-name{display:block;font-family:"Yeseva One",serif;font-weight:400;font-size:20px;letter-spacing:.6px}
.mo-brand i{display:block;font-style:normal;font-family:var(--mo-mono);font-size:9.5px;letter-spacing:2.2px;color:var(--mo-mute);text-transform:uppercase}
.mo-links{display:flex;gap:19px;margin-left:auto}
.mo-links a{font-size:14px;color:var(--mo-mute);min-height:44px;display:flex;align-items:center}
.mo-links a:hover{color:var(--mo-acc)}
@media(max-width:960px){.mo-links{display:none}}

/* ---------- кнопки ---------- */
.mo-cta{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:12px 24px;border-radius:3px;
  background:var(--mo-acc);color:#04222e;font-weight:700;font-size:15px;letter-spacing:.3px;
}
.mo-topbar .mo-cta{margin-left:auto;min-height:44px;padding:9px 18px;font-size:14px}
@media(max-width:960px){.mo-topbar .mo-cta{margin-left:auto}}
.mo-cta:hover{background:#79d2fa}
.mo-cta--big{min-height:56px;padding:16px 30px;font-size:17px}
.mo-cta--edge{background:transparent;color:var(--mo-acc2);border:1px solid var(--mo-acc2)}
.mo-cta--edge:hover{background:rgba(255,183,77,.1)}
.mo-row{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0 4px}

/* ---------- сводное табло ---------- */
.mo-panel{padding:20px 0 4px}
.mo-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.mo-scell{background:var(--mo-surf);border:1px solid var(--mo-line);border-radius:4px;padding:14px 12px}
.mo-sv{display:block;font-family:"Yeseva One",serif;font-size:23px;color:var(--mo-acc)}
.mo-sk{display:block;font-family:var(--mo-mono);font-size:9.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--mo-mute);margin-top:5px}
@media(max-width:860px){.mo-strip{grid-template-columns:repeat(2,1fr)}.mo-scell:last-child{grid-column:1 / -1}}

/* ---------- кладка ---------- */
.mo-sec{padding:16px 0}
.mo-wall{columns:3 280px;column-gap:16px}
.mo-wall > *{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;
  display:inline-block;width:100%;margin:0 0 16px;vertical-align:top}
.mo-hd{column-span:all;-webkit-column-span:all;display:block;margin:0 0 16px}
.mo-wide{column-span:all;-webkit-column-span:all;display:block;width:100%}
.mo-wall--duo{columns:2 320px}

/* ---------- плитки ---------- */
.mo-t{background:var(--mo-surf);border:1px solid var(--mo-line);border-radius:5px;padding:16px 15px}
.mo-t--stat{background:linear-gradient(150deg,var(--mo-surf2),var(--mo-surf));border-color:var(--mo-line2);padding:22px 18px}
.mo-t--quote{background:transparent;border:1px dashed var(--mo-line2);font-size:15.5px;color:#c6d5db}
.mo-t--accent{border-left:4px solid var(--mo-acc2)}
.mo-t--deep{background:#101a1f;border-color:var(--mo-line2)}
.mo-t p:last-child{margin-bottom:0}
.mo-tk{font-family:var(--mo-mono);font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:var(--mo-mute)}
.mo-tv{display:block;font-family:"Yeseva One",serif;font-size:30px;color:var(--mo-acc2);margin:6px 0 8px;line-height:1}
.mo-t h3{margin:6px 0 7px}
.mo-t p{font-size:15px;color:#c1d0d6}
.mo-chip{display:inline-block;font-family:var(--mo-mono);font-size:11px;color:var(--mo-acc);
  border:1px solid var(--mo-line2);border-radius:20px;padding:2px 9px;margin:0 6px 6px 0}

/* ---------- типографика ---------- */
.mo-eye{font-family:var(--mo-mono);font-size:10.5px;letter-spacing:2.2px;text-transform:uppercase;color:var(--mo-acc2);margin:0 0 10px}
.mo-h1{font-size:34px;margin:0 0 14px}
.mo-h2{font-size:25px;margin:0 0 10px}
.mo-h3{font-size:18px;color:var(--mo-acc)}
.mo-lead{font-size:18px;color:#bccbd2;margin:0;max-width:820px}
.mo-note{font-size:14.5px;color:var(--mo-mute);border-left:3px solid var(--mo-line2);padding-left:13px;margin:14px 0 0}
@media(max-width:620px){.mo-h1{font-size:26px}.mo-h2{font-size:21px}.mo-lead{font-size:16.5px}}

/* ---------- герой ---------- */
.mo-hero{background:linear-gradient(155deg,#16232a,#0d1418);border:1px solid var(--mo-line2);border-radius:6px;padding:28px 26px 26px}
@media(max-width:620px){.mo-hero{padding:22px 15px 20px}}
.mo-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}
.mo-kpi{background:rgba(11,16,19,.6);border:1px solid var(--mo-line);border-radius:4px;padding:12px 11px}
.mo-kv{display:block;font-family:"Yeseva One",serif;font-size:21px;color:var(--mo-acc)}
.mo-kk{display:block;font-size:12.5px;color:var(--mo-mute);margin-top:3px}
@media(max-width:760px){.mo-kpis{grid-template-columns:repeat(2,1fr)}}

/* ---------- таблицы ---------- */
.mo-scroll{overflow-x:auto;margin:0}
.mo-tbl{width:100%;border-collapse:collapse;font-size:14.5px;min-width:540px}
.mo-tbl th{text-align:left;padding:9px 10px;background:#101a1f;color:var(--mo-mute);
  font-family:var(--mo-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;border-bottom:1px solid var(--mo-line2)}
.mo-tbl td{padding:10px;border-bottom:1px solid var(--mo-line)}
.mo-rtp{font-family:var(--mo-mono);color:var(--mo-acc2)}

/* ---------- ступени ---------- */
.mo-step{display:flex;align-items:center;gap:12px}
.mo-step-n{font-family:"Yeseva One",serif;font-size:17px;color:var(--mo-acc);min-width:88px}
.mo-bar{flex:1;height:10px;background:#0d1519;border-radius:6px;overflow:hidden}
.mo-bar i{display:block;height:10px;background:linear-gradient(90deg,var(--mo-acc),var(--mo-acc2))}
.mo-step-v{font-family:var(--mo-mono);font-size:12.5px;color:var(--mo-mute);min-width:74px;text-align:right}

/* ---------- отзывы ---------- */
.mo-rh{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:7px}
.mo-rh em{font-style:normal;font-weight:700;font-size:15px;color:var(--mo-ink)}
.mo-star{color:var(--mo-acc2);font-size:13px;letter-spacing:2px}

/* ---------- FAQ ---------- */
.mo-q{background:var(--mo-surf);border:1px solid var(--mo-line);border-radius:5px;padding:0 14px}
.mo-q summary{cursor:pointer;list-style:none;padding:14px 30px 14px 0;position:relative;
  font-size:15.5px;font-weight:600;min-height:44px;display:flex;align-items:center}
.mo-q summary::-webkit-details-marker{display:none}
.mo-q summary::after{content:"+";position:absolute;right:2px;color:var(--mo-acc);font-family:var(--mo-mono);font-size:18px}
.mo-q[open] summary::after{content:"–"}
.mo-q p{font-size:14.5px;color:#bccbd2;padding:0 0 14px;margin:0}

/* ---------- финал + автор ---------- */
.mo-final{text-align:center;background:linear-gradient(150deg,#16232a,#0d1418);
  border:1px solid var(--mo-line2);border-radius:6px;padding:28px 22px}
.mo-final .mo-row{justify-content:center}
.mo-author{background:#101a1f;border:1px solid var(--mo-line);border-radius:5px;padding:17px 16px;margin-top:16px}
.mo-author span{display:block;font-family:var(--mo-mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--mo-acc2);margin-bottom:7px}
.mo-author p{font-size:14.5px;color:var(--mo-mute);margin:0}

/* ---------- подвал ---------- */
.mo-foot{margin-top:24px;background:#080d0f;border-top:1px solid var(--mo-line2);padding:26px 0 36px}
.mo-foot p{font-size:13.5px;color:var(--mo-mute);max-width:920px}
.mo-age{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;
  border:2px solid var(--mo-acc2);color:var(--mo-acc2);font-weight:700;font-size:15px;margin-bottom:11px}
.mo-fnav{display:flex;flex-wrap:wrap;gap:15px;margin-top:13px}
.mo-fnav a{font-size:13.5px;color:var(--mo-acc);min-height:44px;display:flex;align-items:center}
