/* Банкрот Консалт layout-7 — dbcstaging.com */
:root {
  --color-primary: #312e81;
  --color-accent: #059669;
  --color-bg: #f5f3ff;
  --color-text: #1e1b4b;
  --color-muted: #4c1d95;
  --color-surface: #ffffff;
  --font-display: system-ui, sans-serif;
  --font-body: system-ui, sans-serif;
  --radius: 14px;
  --max: 1120px;
}
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation: none !important; transition: none !important; }
}
body { margin:0; font-family:var(--font-body); font-size:16px; line-height:1.6; color:var(--color-text); background:var(--color-bg); }
img { max-width:100%; height:auto; display:block; }
a { color:var(--color-primary); }
a:focus-visible, button:focus-visible { outline:3px solid var(--color-accent); outline-offset:2px; }
.skip-link { position:absolute; left:-9999px; top:0; background:var(--color-primary); color:#fff; padding:.75rem 1rem; z-index:1000; }
.skip-link:focus { left:0; }
.container { width:min(100% - 2rem, var(--max)); margin-inline:auto; }
.media-frame { position:relative; overflow:hidden; border-radius:var(--radius); background:rgba(0,0,0,.04); width:100%; }
.media-frame picture, .media-frame img { width:100%; height:100%; display:block; }
.media-frame img { object-fit:cover; object-position:center; }
.media-frame--hero { aspect-ratio:4/3; }
.media-frame--43 { aspect-ratio:4/3; }
.media-frame--169 { aspect-ratio:16/9; max-height:360px; }
.media-frame--sq { aspect-ratio:1/1; }
@media (min-width:900px) { .media-frame--hero { max-height:520px; } .media-frame--169 { max-height:380px; } }
@media (max-width:640px) { .media-frame--hero { aspect-ratio:16/10; max-height:280px; } .media-frame--169 { max-height:220px; } }
.site-header { background:var(--color-surface); border-bottom:1px solid rgba(0,0,0,.08); position:sticky; top:0; z-index:50; }
.site-header--static { position:relative; }
.header__inner { display:flex; align-items:center; gap:.75rem; min-height:64px; flex-wrap:wrap; }
.header__inner--center { justify-content:center; flex-direction:column; padding:.75rem 0; }
@media (min-width:900px) { .header__inner--center { flex-direction:row; justify-content:space-between; } }
.logo img { width:180px; height:auto; }
.header__phone { margin-left:auto; text-decoration:none; font-weight:600; color:var(--color-primary); min-height:44px; display:inline-flex; align-items:center; padding:.5rem; }
.nav-toggle { display:inline-flex; flex-direction:column; justify-content:center; gap:5px; width:44px; height:44px; border:1px solid rgba(0,0,0,.15); background:#fff; border-radius:var(--radius); cursor:pointer; }
.nav-toggle span { display:block; height:2px; width:20px; margin-inline:auto; background:var(--color-text); }
.site-nav { display:none; width:100%; }
.site-nav.is-open { display:block; }
.site-nav__list { list-style:none; margin:0; padding:.5rem 0 1rem; display:grid; gap:.25rem; }
.site-nav__list a { display:flex; align-items:center; min-height:44px; padding:.5rem .75rem; text-decoration:none; color:var(--color-text); border-radius:var(--radius); }
.site-nav__list a:hover { background:rgba(0,0,0,.04); }
@media (min-width:900px) {
  .nav-toggle { display:none; }
  .site-nav { display:block; width:auto; margin-left:1rem; }
  .site-nav__list { display:flex; gap:.25rem; padding:0; }
  .header__phone { margin-left:.5rem; }
}
.btn { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:44px; padding:.7rem 1.2rem; border-radius:var(--radius); border:2px solid transparent; font:inherit; font-weight:600; text-decoration:none; cursor:pointer; }
.btn--primary { background:var(--color-primary); color:#fff; }
.btn--primary:hover { filter:brightness(1.08); }
.btn--ghost { background:transparent; border-color:var(--color-primary); color:var(--color-primary); }
.hero { padding:2.5rem 0 3rem; background:linear-gradient(160deg, var(--color-surface) 0%, var(--color-bg) 100%); }
.hero__title { font-family:var(--font-display); font-size:clamp(1.75rem,4vw,2.55rem); line-height:1.2; margin:0 0 1rem; color:var(--color-primary); }
.hero__subtitle { margin:0 0 1.5rem; color:var(--color-muted); font-size:1.05rem; max-width:40rem; }
.hero__actions { display:flex; flex-wrap:wrap; gap:.75rem; }
.hero__panel{background:var(--color-surface);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:1.5rem;display:grid;gap:1.5rem}@media(min-width:900px){.hero__panel{grid-template-columns:1fr 1fr;align-items:center}}
.section { padding:3rem 0; }
.section--alt { background:var(--color-surface); }
.section__title { font-family:var(--font-display); font-size:clamp(1.4rem,3vw,1.9rem); color:var(--color-primary); margin:0 0 1rem; }
.section__lead { color:var(--color-muted); max-width:46rem; margin:0 0 1.5rem; }
.grid-2 { display:grid; gap:1.5rem; }
@media (min-width:800px) { .grid-2 { grid-template-columns:1fr 1fr; align-items:center; } }
@media (min-width:800px) { .grid-2--rev { direction:rtl; } .grid-2--rev > * { direction:ltr; } }
.services__grid { display:grid; gap:1rem; }
@media (min-width:700px) { .services__grid { grid-template-columns:repeat(2,1fr); } }
.card { background:var(--color-surface); border:1px solid rgba(0,0,0,.08); border-radius:var(--radius); padding:1.25rem; }
.card h3 { margin:0 0 .5rem; font-size:1.1rem; color:var(--color-primary); }
.card p { margin:0; color:var(--color-muted); }
.card{border:0;background:var(--color-bg);}
.list-check { margin:0; padding-left:1.2rem; color:var(--color-muted); }
.list-check li { margin-bottom:.5rem; }
.steps { counter-reset:step; display:grid; gap:1rem; }
@media (min-width:800px) { .steps { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1100px) { .steps { grid-template-columns:repeat(4,1fr); } }
.step { background:var(--color-surface); border-radius:var(--radius); padding:1.25rem; border-top:4px solid var(--color-accent); }
.step h3 { margin:0 0 .5rem; font-size:1.05rem; }
.step::before { counter-increment:step; content:counter(step); display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:50%; background:var(--color-primary); color:#fff; font-weight:700; margin-bottom:.75rem; }
.adv-grid { display:grid; gap:1rem; }
@media (min-width:700px) { .adv-grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1000px) { .adv-grid { grid-template-columns:repeat(4,1fr); } }
.faq { display:grid; gap:.75rem; }
.faq__item { background:var(--color-surface); border:1px solid rgba(0,0,0,.08); border-radius:var(--radius); }
.faq__q { width:100%; text-align:left; background:none; border:0; font:inherit; font-weight:600; color:var(--color-primary); min-height:44px; padding:1rem 1.1rem; cursor:pointer; list-style:none; }
.faq__q::-webkit-details-marker { display:none; }
.faq__a { padding:0 1.1rem 1rem; color:var(--color-muted); }
.contact-box { background:var(--color-surface); border-radius:var(--radius); padding:1.5rem; border:1px solid rgba(0,0,0,.08); }
.contact-box p { margin:0 0 .75rem; }
.disclaimer { font-size:.95rem; color:var(--color-muted); border-left:3px solid var(--color-accent); padding-left:.85rem; margin:1.5rem 0 0; }
.site-footer { background:var(--color-primary); color:#f5f5f4; padding:2.5rem 0; margin-top:2rem; }
.site-footer a { color:#fff; }
.footer__grid { display:grid; gap:1.5rem; }
@media (min-width:800px) { .footer__grid { grid-template-columns:1.3fr 1fr 1.2fr; } }
.footer__name { font-family:var(--font-display); font-size:1.2rem; margin:0 0 .5rem; }
.footer__address { font-style:normal; margin:.75rem 0; }
.footer__heading { font-weight:700; margin:0 0 .5rem; }
.footer__links ul { list-style:none; margin:0; padding:0; }
.footer__links li { margin-bottom:.35rem; }
.footer__links a, .linkish { display:inline-flex; align-items:center; min-height:44px; background:none; border:0; color:#fff; font:inherit; text-decoration:underline; cursor:pointer; padding:0; }
.footer__copy { margin:1rem 0 0; opacity:.85; }
.footer__meta { opacity:.8; font-size:.9rem; }
.footer__grid--2{display:grid;gap:1.5rem}@media(min-width:800px){.footer__grid--2{grid-template-columns:1fr 1fr}}.footer__bottom{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2)}
.legal-page { padding:2.5rem 0 3rem; }
.legal-page h1 { font-family:var(--font-display); color:var(--color-primary); }
.legal-page h2 { color:var(--color-primary); margin-top:1.75rem; }
.legal-page p, .legal-page li { color:var(--color-muted); }
.cookie-banner { position:fixed; left:0; right:0; bottom:0; z-index:100; background:var(--color-surface); border-top:1px solid rgba(0,0,0,.12); box-shadow:0 -4px 20px rgba(0,0,0,.08); max-height:30vh; overflow:auto; }
.cookie-banner__inner { padding:1rem 0; }
.cookie-banner__actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.75rem; }
.cookie-banner__prefs { display:grid; gap:.5rem; margin-top:.75rem; }
.cookie-banner__prefs[hidden], .cookie-banner[hidden] { display:none !important; }
.page-404 { text-align:center; padding:4rem 0; }
.page-404 h1 { color:var(--color-primary); }
.section-media { margin-top:1.5rem; }
