/* =====================================================================
   SMI.EXPERT — новое оформление (главная + все внутренние страницы)
   ===================================================================== */
:root{
  --se-navy:#0d1b33; --se-navy2:#14284a; --se-blue:#2563eb; --se-blue-d:#1d4ed8; --se-orange:#f59e0b; --se-orange-d:#d97706;
  --se-text:#1b2333; --se-muted:#64748b; --se-line:#e5e9f0; --se-soft:#f5f7fb; --se-green:#16a34a;
  --se-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
html,body{ height:auto !important; }
body{ margin:0; background:var(--se-soft) !important; color:var(--se-text); font-family:var(--se-font) !important; font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; }
*{ box-sizing:border-box; }
a{ color:var(--se-blue); }
a:hover{ color:var(--se-blue-d); }
.se-wrap{ max-width:1180px; margin:0 auto; padding:0 20px; }

/* ---------- шапка ---------- */
.se-top{ background:var(--se-navy); color:#fff; position:sticky; top:0; z-index:50; border-bottom:3px solid var(--se-orange); }
.se-top .se-wrap{ display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:68px; flex-wrap:wrap; padding-top:8px; padding-bottom:8px; }
.se-logo{ display:flex; flex-direction:column; text-decoration:none !important; color:#fff !important; line-height:1.1; }
.se-logo b{ font-size:26px; font-weight:800; letter-spacing:.02em; }
.se-logo b i{ font-style:normal; color:var(--se-orange); }
.se-logo small{ font-size:12px; color:#9fb0cc; margin-top:2px; }
.se-nav{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.se-nav a{ color:#dbe4f3 !important; text-decoration:none !important; padding:8px 12px; border-radius:8px; font-size:15px; font-weight:500; }
.se-nav a:hover{ background:rgba(255,255,255,.08); color:#fff !important; }
.se-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:10px; padding:12px 22px; font-weight:700; font-size:16px; text-decoration:none !important; border:0; cursor:pointer; transition:background .15s, transform .15s, box-shadow .15s; line-height:1.2; }
.se-btn:hover{ transform:translateY(-1px); }
.se-btn-orange{ background:var(--se-orange); color:#1b1300 !important; box-shadow:0 8px 20px rgba(245,158,11,.3); }
.se-btn-orange:hover{ background:#fbb63a; }
.se-btn-blue{ background:var(--se-blue); color:#fff !important; box-shadow:0 8px 20px rgba(37,99,235,.3); }
.se-btn-blue:hover{ background:var(--se-blue-d); }
.se-btn-ghost{ background:rgba(255,255,255,.1); color:#fff !important; }
.se-btn-ghost:hover{ background:rgba(255,255,255,.18); }
.se-nav .se-btn{ padding:9px 16px; font-size:14px; margin-left:4px; }

/* ---------- главный экран ---------- */
.se-hero{ background:radial-gradient(900px 420px at 85% 0%, rgba(37,99,235,.45), transparent 70%), linear-gradient(180deg,var(--se-navy) 0%, var(--se-navy2) 100%); color:#fff; padding:64px 0 72px; }
.se-hero .se-wrap{ display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center; }
.se-kicker{ display:inline-block; background:rgba(245,158,11,.15); color:#fbbf24; border:1px solid rgba(245,158,11,.35); border-radius:999px; padding:5px 12px; font-size:13px; font-weight:600; margin-bottom:16px; }
.se-hero h1{ font-size:46px; line-height:1.12; font-weight:800; margin:0 0 18px; letter-spacing:-.02em; color:#fff; }
.se-hero h1 span{ color:var(--se-orange); }
.se-hero p.lead{ font-size:18px; color:#c9d5ea; margin:0 0 28px; max-width:600px; }
.se-cta{ display:flex; gap:12px; flex-wrap:wrap; }
.se-cta .se-btn{ padding:15px 26px; font-size:17px; }
.se-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:40px; }
.se-stat{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:14px; padding:14px 16px; }
.se-stat b{ display:block; font-size:28px; font-weight:800; color:#fff; line-height:1.1; }
.se-stat span{ font-size:13px; color:#9fb0cc; }
.se-demo{ background:#fff; border-radius:18px; padding:18px; box-shadow:0 30px 60px rgba(0,0,0,.35); color:var(--se-text); }
.se-demo-head{ display:flex; align-items:center; gap:6px; margin-bottom:12px; }
.se-demo-head i{ width:10px; height:10px; border-radius:50%; background:#e5e7eb; display:inline-block; }
.se-demo-head i:nth-child(1){ background:#f87171; } .se-demo-head i:nth-child(2){ background:#fbbf24; } .se-demo-head i:nth-child(3){ background:#34d399; }
.se-demo-head span{ margin-left:8px; font-size:12px; color:var(--se-muted); }
.se-demo img{ display:block; width:100%; height:auto; border-radius:10px; }
.se-demo p{ margin:12px 2px 0; font-size:14px; color:var(--se-muted); }

/* ---------- секции ---------- */
.se-sec{ padding:72px 0; }
.se-sec.alt{ background:#fff; }
.se-h2{ font-size:34px; font-weight:800; letter-spacing:-.01em; margin:0 0 12px; text-align:center; color:var(--se-text); }
.se-sub{ text-align:center; color:var(--se-muted); font-size:17px; max-width:720px; margin:0 auto 40px; }
.se-two{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.se-card{ background:#fff; border:1px solid var(--se-line); border-radius:18px; padding:28px; box-shadow:0 10px 30px rgba(15,30,60,.06); }
.se-card h3{ font-size:24px; font-weight:800; margin:0 0 10px; display:flex; align-items:center; gap:12px; color:var(--se-text); }
.se-ico{ width:46px; height:46px; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; font-size:22px; flex:none; }
.se-ico.o{ background:#fff4e0; color:var(--se-orange-d); } .se-ico.b{ background:#e8f0ff; color:var(--se-blue); } .se-ico.g{ background:#e7f8ee; color:var(--se-green); }
.se-card p{ color:var(--se-muted); margin:0 0 16px; }
.se-list{ list-style:none; padding:0; margin:0 0 22px; }
.se-list li{ position:relative; padding:6px 0 6px 30px; }
.se-list li:before{ content:"\2713"; position:absolute; left:0; top:6px; width:20px; height:20px; border-radius:50%; background:#e7f8ee; color:var(--se-green); font-size:12px; font-weight:800; display:flex; align-items:center; justify-content:center; }
.se-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.se-feat{ background:#fff; border:1px solid var(--se-line); border-radius:16px; padding:22px; }
.se-feat .se-ico{ margin-bottom:12px; }
.se-feat h4{ font-size:18px; font-weight:700; margin:0 0 6px; color:var(--se-text); }
.se-feat p{ font-size:15px; color:var(--se-muted); margin:0; }
.se-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; counter-reset:st; }
.se-step{ position:relative; background:#fff; border:1px solid var(--se-line); border-radius:16px; padding:26px 22px 22px; }
.se-step:before{ counter-increment:st; content:counter(st); position:absolute; top:-16px; left:22px; width:34px; height:34px; border-radius:50%; background:var(--se-blue); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 14px rgba(37,99,235,.35); }
.se-step h4{ font-size:18px; font-weight:700; margin:6px 0 6px; }
.se-step p{ color:var(--se-muted); margin:0; font-size:15px; }
.se-example{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.se-example img{ width:100%; height:auto; border-radius:14px; border:1px solid var(--se-line); box-shadow:0 20px 40px rgba(15,30,60,.12); }
.se-example h3{ font-size:28px; font-weight:800; margin:0 0 12px; }
.se-example p{ color:var(--se-muted); font-size:16px; }
.se-partners{ margin-top:18px; font-size:14px; color:var(--se-muted); }
.se-partners b{ color:var(--se-text); }
.se-video{ position:relative; width:100%; max-width:820px; margin:0 auto; aspect-ratio:16/9; border-radius:16px; overflow:hidden; box-shadow:0 20px 40px rgba(15,30,60,.15); background:#000; }
.se-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.se-band{ background:linear-gradient(120deg,var(--se-blue) 0%, #1e3a8a 100%); color:#fff; border-radius:22px; padding:40px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.se-band h3{ font-size:28px; font-weight:800; margin:0 0 6px; color:#fff; }
.se-band p{ margin:0; color:#dbe6ff; }

/* новости на главной (вывод из движка) */
.se-news > table:first-child{ display:none; }
.se-news h3{ display:none; }
.se-news table, .se-news tbody, .se-news tr, .se-news td{ display:block; width:auto !important; padding:0 !important; border:0 !important; background:none !important; }
.se-news tbody{ display:grid !important; grid-template-columns:1fr 1fr; gap:18px; }
.se-news .row{ margin:0 !important; }
.se-news .row > div{ width:100% !important; float:none !important; padding:0 !important; }
.se-news .well{ background:#fff !important; border:1px solid var(--se-line) !important; border-radius:16px !important; padding:20px !important; box-shadow:none !important; height:100%; margin:0 !important; display:flex; flex-direction:column; }
.se-news .well strong{ font-size:17px; line-height:1.35; display:block; margin-bottom:6px; color:var(--se-text); }
.se-news .well .pull-right{ float:none !important; order:-1; font-size:12px !important; color:var(--se-muted) !important; margin-bottom:6px; }
.se-news .well small{ display:block !important; font-size:14px !important; color:var(--se-muted); line-height:1.55; overflow-wrap:anywhere; display:-webkit-box !important; -webkit-line-clamp:6; -webkit-box-orient:vertical; overflow:hidden; }
.se-news > br, .se-news > p:empty{ display:none; }

/* ---------- подвал ---------- */
.se-foot{ background:var(--se-navy); color:#9fb0cc; padding:40px 0 28px; font-size:14px; }
.se-foot .se-wrap{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:28px; }
.se-foot h5{ color:#fff; font-size:15px; margin:0 0 12px; font-weight:700; }
.se-foot a{ color:#dbe4f3 !important; text-decoration:none !important; }
.se-foot a:hover{ color:#fff !important; text-decoration:underline !important; }
.se-foot ul{ list-style:none; padding:0; margin:0; }
.se-foot li{ padding:3px 0; }
.se-foot .se-copy{ grid-column:1/-1; border-top:1px solid rgba(255,255,255,.08); padding-top:18px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; align-items:center; }

/* ---------- внутренние страницы и кабинет ---------- */
.se-page{ padding:28px 0 48px; }
.se-panel{ background:#fff; border:1px solid var(--se-line); border-radius:18px; padding:26px; box-shadow:0 10px 30px rgba(15,30,60,.05); overflow-x:auto; }
.se-usermenu{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; justify-content:flex-end; }
.se-usermenu table{ margin:0 !important; float:none !important; }
.se-usermenu td{ display:inline-block; padding:0 !important; border:0 !important; background:none !important; }
.se-usermenu br{ display:none; }
.se-usermenu .btn, .se-usermenu td.btn{ border-radius:9px !important; border:0 !important; background:rgba(255,255,255,.1) !important; color:#fff !important; font-size:13px !important; font-weight:600; padding:8px 12px !important; margin:0 0 0 4px !important; box-shadow:none !important; text-shadow:none !important; opacity:1 !important; }
.se-usermenu .btn:hover{ background:rgba(255,255,255,.2) !important; }
.se-usermenu .btn[disabled], .se-usermenu td.btn[disabled]{ background:var(--se-orange) !important; color:#1b1300 !important; }
.se-usermenu .btn-danger{ background:rgba(239,68,68,.85) !important; }
.se-usermenu .btn img{ display:none; }
.se-usermenu b{ font-weight:600; }
.se-usermenu .glyphicon{ font-size:12px; }

.se-panel h1, .se-panel h2, .se-panel h3{ font-weight:800; color:var(--se-text); letter-spacing:-.01em; }
.se-panel h1{ font-size:28px; } .se-panel h2{ font-size:24px; } .se-panel h3{ font-size:20px; }
.se-panel .breadcrumb, .se-panel > .col-md-12 > a:first-child{ font-size:14px; }
.se-panel table{ border-collapse:collapse; }
.se-panel .table, .se-panel table.table{ background:#fff; border-radius:12px; overflow:hidden; }
.se-panel .table > thead > tr > th, .se-panel .table > tbody > tr > th, .se-panel table th{ background:var(--se-soft); color:var(--se-muted); font-size:13px; font-weight:700; text-transform:none; border-color:var(--se-line) !important; padding:10px 12px !important; }
.se-panel .table td, .se-panel table td{ border-color:var(--se-line) !important; padding:10px 12px !important; vertical-align:middle !important; }
.se-panel .table-hover > tbody > tr:hover{ background:#f8fafc; }
.se-panel .form-control, .se-panel input[type=text], .se-panel input[type=password], .se-panel input[type=email], .se-panel input[type=number], .se-panel select, .se-panel textarea{
  border:1px solid #d3dbe8 !important; border-radius:10px !important; padding:9px 12px !important; height:auto !important; font-size:15px !important; box-shadow:none !important; max-width:100%; background:#fff;
}
.se-panel .form-control:focus, .se-panel input:focus, .se-panel select:focus, .se-panel textarea:focus{ border-color:var(--se-blue) !important; box-shadow:0 0 0 3px rgba(37,99,235,.15) !important; outline:none; }
.se-panel .btn{ border-radius:10px !important; font-weight:600; padding:9px 16px; border:0 !important; box-shadow:none !important; text-shadow:none !important; }
.se-panel .btn-success{ background:var(--se-green) !important; }
.se-panel .btn-primary, .se-panel .btn-info{ background:var(--se-blue) !important; color:#fff !important; }
.se-panel .btn-warning{ background:var(--se-orange) !important; color:#1b1300 !important; }
.se-panel .btn-default{ background:#eef2f8 !important; color:var(--se-text) !important; }
.se-panel .btn-danger{ background:#ef4444 !important; }
.se-panel input[type=submit], .se-panel input[type=button]{ border-radius:10px; border:0; background:var(--se-blue); color:#fff; font-weight:700; padding:10px 18px; cursor:pointer; }
.se-panel .well{ background:var(--se-soft) !important; border:1px solid var(--se-line) !important; border-radius:14px !important; box-shadow:none !important; }
.se-panel .alert{ border-radius:12px !important; }
.se-panel .warning{ background:#fff7e6; border:1px solid #ffd591; border-radius:12px; padding:12px 14px; margin-bottom:14px; }
.se-panel .nav-tabs > li > a{ border-radius:10px 10px 0 0; }
.se-panel .pagination > li > a, .se-panel .pagination > li > span{ border-radius:8px !important; margin:0 2px; }

/* ---------- телефоны ---------- */
@media (max-width: 991px){
  .se-hero .se-wrap, .se-two, .se-example{ grid-template-columns:1fr; }
  .se-grid3, .se-steps{ grid-template-columns:1fr 1fr; }
  .se-stats{ grid-template-columns:1fr 1fr; }
  .se-foot .se-wrap{ grid-template-columns:1fr 1fr; }
  .se-hero h1{ font-size:36px; }
}
@media (max-width: 640px){
  .se-wrap{ padding:0 16px; }
  .se-top .se-wrap{ min-height:60px; }
  .se-nav a.se-hide-m{ display:none; }
  .se-logo b{ font-size:22px; }
  .se-hero{ padding:40px 0 48px; }
  .se-hero h1{ font-size:30px; }
  .se-hero p.lead{ font-size:16px; }
  .se-cta .se-btn{ width:100%; }
  .se-stat b{ font-size:22px; }
  .se-sec{ padding:48px 0; }
  .se-h2{ font-size:26px; }
  .se-grid3, .se-steps, .se-news tbody{ grid-template-columns:1fr !important; }
  .se-card{ padding:20px; }
  .se-band{ padding:26px; }
  .se-foot .se-wrap{ grid-template-columns:1fr; }
  .se-panel{ padding:16px; border-radius:14px; }
  .se-usermenu{ justify-content:flex-start; }
}

/* ---- FAQ ---- */
.faq{ max-width:860px; }
.faq-lead{ font-size:16px; color:var(--se-muted); margin:0 0 8px; }
.faq-h{ font-size:20px; font-weight:800; margin:28px 0 12px; color:var(--se-text); }
.faq-i{ background:#fff; border:1px solid var(--se-line); border-radius:14px; margin:0 0 10px; transition:box-shadow .15s, border-color .15s; }
.faq-i[open]{ border-color:#bfd0f3; box-shadow:0 6px 20px rgba(30,64,175,.08); }
.faq-i summary{ list-style:none; cursor:pointer; padding:15px 48px 15px 18px; font-size:16px; font-weight:700; position:relative; line-height:1.4; }
.faq-i summary::-webkit-details-marker{ display:none; }
.faq-i summary:after{ content:"+"; position:absolute; right:16px; top:50%; transform:translateY(-50%); width:26px; height:26px; line-height:24px; text-align:center; border-radius:50%; background:#eef3fc; color:#2563eb; font-size:20px; font-weight:700; }
.faq-i[open] summary:after{ content:"\2212"; }
.faq-a{ padding:0 18px 14px; font-size:15px; line-height:1.65; color:#334155; }
.faq-a p{ margin:0 0 8px; }
.faq-a ol, .faq-a ul{ margin:0 0 8px; padding-left:22px; }
.faq-a li{ margin-bottom:4px; }
.faq br{ display:none; }
/* новости: читаемый текст */
.panel-body{ font-size:15px; line-height:1.65; }
