/* ═══ MYSAINAG — Единые стили сайта ═══ */

/* ═══ FONTS ═══ */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

/* ═══ TOKENS ═══ */
:root{
  --font-display:'Oswald',Arial,sans-serif;
  --font-body:'Inter','Helvetica Neue',sans-serif;

  --text-xs:clamp(.75rem,.7rem + .2vw,.875rem);
  --text-sm:clamp(.875rem,.82rem + .28vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .6vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.2vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-hero:clamp(2.8rem,.5rem + 6vw,5.5rem);

  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;
  --space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;
  --space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;

  --color-bg:#f5f4f0;
  --color-surface:#faf9f7;
  --color-surface-2:#fff;
  --color-divider:#dedad4;
  --color-border:#cac7c0;
  --color-text:#1a1916;
  --color-text-muted:#6b6a65;
  --color-text-faint:#a8a7a2;
  --color-text-inverse:#f5f4f0;
  --color-accent:#1a1916;
  --color-accent-hover:#3a3934;
  --color-tag-bg:#e8e5df;
  --color-surface-dynamic:#e8e5df;

  --warn-bg:#fef5e4;--warn-border:#c4862a;--warn-text:#5a3800;
  --note-bg:#eef2f0;--note-border:#5a8a72;--note-text:#1d3a2e;

  --radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-full:9999px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.07);
  --shadow-md:0 4px 16px rgba(0,0,0,.08);
  --shadow-lg:0 12px 36px rgba(0,0,0,.11);
  --tr:180ms cubic-bezier(.16,1,.3,1);
  --w:1080px;
  --content-default:var(--w);
  --content-narrow:680px;
}
[data-theme="dark"]{
  --color-bg:#141311;
  --color-surface:#1b1a18;
  --color-surface-2:#201f1d;
  --color-divider:#2a2926;
  --color-border:#343330;
  --color-text:#d8d6d0;
  --color-text-muted:#78766f;
  --color-text-faint:#4a4945;
  --color-text-inverse:#141311;
  --color-accent:#d8d6d0;
  --color-accent-hover:#f0eeea;
  --color-tag-bg:#242320;
  --color-surface-dynamic:#2a2926;
  --warn-bg:#2a1e00;--warn-border:#c4862a;--warn-text:#f0c060;
  --note-bg:#0e1f18;--note-border:#5a8a72;--note-text:#8abda0;
  --shadow-sm:0 1px 3px rgba(0,0,0,.25);
  --shadow-md:0 4px 16px rgba(0,0,0,.3);
  --shadow-lg:0 12px 36px rgba(0,0,0,.4);
  --tr:180ms cubic-bezier(.16,1,.3,1);
  --w:1080px;
  --content-default:var(--w);
  --content-narrow:680px;
}
@media(prefers-color-scheme:dark){:root:not([data-theme]){
  --color-bg:#141311;--color-surface:#1b1a18;--color-surface-2:#201f1d;--color-divider:#2a2926;--color-border:#343330;--color-text:#d8d6d0;--color-text-muted:#78766f;--color-text-faint:#4a4945;--color-text-inverse:#141311;--color-accent:#d8d6d0;--color-accent-hover:#f0eeea;--color-tag-bg:#242320;
  --warn-bg:#2a1e00;--warn-border:#c4862a;--warn-text:#f0c060;
  --note-bg:#0e1f18;--note-border:#5a8a72;--note-text:#8abda0;
  --w:1080px;
  --content-default:var(--w);
  --content-narrow:680px;
}}

/* ═══ BASE ═══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:72px;}
body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);line-height:1.65;min-height:100dvh;}
img,svg{display:block;max-width:100%;height:auto;}
ul[role="list"]{list-style:none;}
h1,h2,h3,h4{text-wrap:balance;line-height:1.1;font-family:var(--font-display);font-style:normal;}
p,li{text-wrap:pretty;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{cursor:pointer;background:none;border:none;font:inherit;color:inherit;}
a,button,[role="button"]{transition:color var(--tr),background var(--tr),border-color var(--tr),box-shadow var(--tr),opacity var(--tr);}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm);}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}

/* ═══ LAYOUT ═══ */
.container{max-width:var(--w);margin-inline:auto;padding-inline:var(--space-6);}
@media(max-width:600px){.container{padding-inline:var(--space-4);}}
.section{padding-block:clamp(var(--space-12),7vw,var(--space-24));}
.section--tight{padding-block:clamp(var(--space-8),4vw,var(--space-16));}

/* ═══ NAV ═══ */
.site-nav{position:sticky;top:0;z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-divider);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:60px;gap:var(--space-8);}
.site-header{position:sticky;top:0;z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-divider);}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px;gap:var(--space-8);max-width:var(--w);margin-inline:auto;}

/* Мобильное бургер-меню */
.btn-hamburger{
  display:none;
  background:none;
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  cursor:pointer;
  padding:var(--space-2) var(--space-4);
  z-index:101;
  font-family:var(--font-display);
  font-size:var(--text-base);
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--color-text-muted);
  line-height:1;
  white-space:nowrap;
}
.btn-hamburger:hover{color:var(--color-text);border-color:var(--color-accent);}
.hamburger-line{
  display:block;
  width:100%;
  height:2px;
  background:var(--color-text);
  position:absolute;
  left:0;
  transition:all var(--tr);
}
.hamburger-line.line-1{top:6px;}
.hamburger-line.line-2{top:13px;}
.hamburger-line.line-3{top:20px;width:70%;}

.btn-hamburger[aria-expanded="true"] .line-1{
  top:13px;
  transform:rotate(45deg);
  transform-origin:center;
  width:100%;
}
.btn-hamburger[aria-expanded="true"] .line-2{
  opacity:0;
}
.btn-hamburger[aria-expanded="true"] .line-3{
  top:13px;
  transform:rotate(-45deg);
  transform-origin:center;
  width:100%;
}

/* Скрытие dropdown на мобильных */
.desktop-only{display:inline-flex;}
@media(max-width:700px){.desktop-only{display:none !important;}}

.logo{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  font-family:var(--font-display);
  font-size:28px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--color-text);
  line-height:1;
  height:28px;
}
.logo img,.logo svg{flex-shrink:0;width:28px;height:28px;}
.logo span{line-height:1;font-size:28px;}
/* Адаптация логотипа для тёмной темы — инверсия цвета */
[data-theme="dark"] .logo img{filter:invert(1);}
.header-nav{display:flex;align-items:center;gap:var(--space-6);}
.header-nav a{font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:.01em;}
.header-nav a:hover{color:var(--color-text);}
.header-nav a.active{color:var(--color-text);font-weight:600;}

/* Скрываем мобильное меню на десктопе */
@media(min-width:701px){
  .header-nav-mobile{display:none !important;}
}

/* Мобильное меню */
@media(max-width:700px){
  .btn-hamburger{display:inline-flex;}
  /* Скрываем основное меню на мобильных */
  .header-nav{display:none !important;}
  
  /* Показываем мобильное меню */
  .header-nav-mobile{
    position:fixed;
    top:60px;
    left:0;
    right:0;
    background:var(--color-bg);
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    padding:var(--space-4);
    gap:var(--space-1);
    transform:translateX(-100%);
    transition:transform var(--tr);
    z-index:99;
    overflow-y:auto;
    height:calc(100vh - 60px);
    max-height:calc(100vh - 60px);
  }
  .header-nav-mobile.open{transform:translateX(0);}
  .header-nav-mobile a{
    display:block;
    width:100%;
    padding:var(--space-3) 0;
    font-size:var(--text-sm);
    border-bottom:1px solid var(--color-divider);
  }
}

/* Адаптация кнопок в nav-actions для мобильных */
.nav-actions{display:flex;align-items:center;gap:var(--space-3);}
.btn-primary-sm{
  padding:calc(var(--space-2) + 2px) var(--space-5);
  border-radius:var(--radius-md);
  background:var(--color-accent);
  color:var(--color-text-inverse);
  font-size:var(--text-sm);
  font-family:var(--font-display);
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  height:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  width: min-content;
}
@media(max-width:600px){
  .btn-primary-sm{
    font-size:var(--text-xs);
    padding:0 var(--space-3);
    height:28px;
  }
  .btn-ghost-sm{
    width:28px;
    height:28px;
  }
}
.nav-logo{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);}
.nav-logo img,.nav-logo svg{flex-shrink:0;width:28px;height:28px;}
/* Адаптация логотипа в навигации для тёмной темы */
[data-theme="dark"] .nav-logo img{filter:invert(1);}
.nav-links{display:flex;align-items:center;gap:var(--space-6);}
.nav-links a{font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:.01em;}
.nav-links a:hover{color:var(--color-text);}
.nav-links a.active{color:var(--color-text);font-weight:600;}
.nav-actions{display:flex;align-items:center;gap:var(--space-3);}

.btn-telegram-sm{
  width:32px;
  height:32px;
  padding:0;
  border-radius:var(--radius-md);
  background:var(--color-accent);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background var(--tr),opacity var(--tr);
}
.btn-telegram-sm svg{
  color:var(--color-text-inverse);
}
.btn-telegram-sm:hover{
  background:var(--color-accent-hover);
  opacity:0.9;
}
@media(max-width:600px){
  .btn-telegram-sm{
    width:28px;
    height:28px;
  }
}

/* ═══ DROPDOWN MENU ═══ */
.header-dropdown{position:relative;}
.btn-dropdown{width:auto;height:auto;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--tr),border-color var(--tr);font-family:var(--font-display);font-size:var(--text-base);font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;}
.btn-dropdown:hover{color:var(--color-text);border-color:var(--color-accent);}
.btn-dropdown svg{transition:transform var(--tr);}
.header-dropdown:hover .btn-dropdown svg{transform:rotate(180deg);}
.header-dropdown:hover .btn-dropdown{color:var(--color-text);border-color:var(--color-accent);}
.dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--space-2);background:var(--color-surface-2);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:220px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--tr),visibility var(--tr),transform var(--tr);z-index:1000;}
.header-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown-menu a{display:block;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);transition:color var(--tr),background var(--tr);}
.dropdown-menu a:hover{color:var(--color-text);background:var(--color-surface);}
.dropdown-menu a:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0;}
.dropdown-menu a:last-child{border-radius:0 0 var(--radius-md) var(--radius-md);}

.btn-ghost-sm{width:32px;height:32px;padding:0;border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;gap:4px;}
.btn-ghost-sm:hover{color:var(--color-text);border-color:var(--color-accent);}
.btn-primary-sm{padding:calc(var(--space-2) + 2px) var(--space-5);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-text-inverse);font-size:var(--text-sm);font-family:var(--font-display);font-weight:600;letter-spacing:.04em;text-transform:uppercase;}
.btn-primary-sm:hover{background:var(--color-accent-hover);}
@media(max-width:700px){.nav-links{display:none;}.nav-logo span{font-size:var(--text-base);}}

/* ═══ SECONDARY NAV ═══ */
.secondary-nav{background:var(--color-surface);border-bottom:1px solid var(--color-divider);padding-block:var(--space-3);}
.secondary-nav-list{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);list-style:none;margin:0;padding:0;flex-wrap:nowrap;}
.secondary-nav-list a{font-size:var(--text-xs);color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase;font-weight:500;padding:var(--space-1) var(--space-1);white-space:nowrap;}
.secondary-nav-list a:hover{color:var(--color-text);}
.secondary-nav-list a.active{color:var(--color-text);font-weight:600;}
.secondary-nav-list li:first-child a{padding-left:0;}
.secondary-nav-list li:last-child a{padding-right:0;}
@media(max-width:600px){
  .secondary-nav-list{justify-content:flex-start;gap:var(--space-3);flex-wrap:wrap;}
  .secondary-nav-list a{padding:var(--space-1) var(--space-2);}
}

/* ═══ INTRO BOX ═══ */
.intro{background:var(--color-surface);padding:var(--space-6);border-left:4px solid var(--color-accent);margin-block:var(--space-6);border-radius:var(--radius-md);}
.intro p{margin-bottom:var(--space-3);color:var(--color-text-muted);}
.intro strong{color:var(--color-text);font-weight:600;}
.intro a{color:var(--color-text-muted);border-bottom:1px solid var(--color-divider);}
.intro a:hover{color:var(--color-text);border-color:var(--color-accent);}

/* ═══ PAGE HERO ═══ */
.page-hero{padding-block:clamp(var(--space-10),5vw,var(--space-16));border-bottom:1px solid var(--color-divider);}
.page-hero.background-surface{background:var(--color-surface);}
.page-hero-kicker{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}
.page-hero-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;margin-bottom:var(--space-4);}
.page-hero-sub{font-size:var(--text-base);color:var(--color-text-muted);max-width:60ch;line-height:1.6;}
.page-kicker{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}
.page-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;margin-bottom:var(--space-4);}
.page-meta{display:flex;gap:var(--space-6);flex-wrap:wrap;font-size:var(--text-xs);color:var(--color-text-faint);}
.page-meta span{display:flex;align-items:center;gap:var(--space-1);}
.text-muted{color:var(--color-text-muted);}

/* ═══ DOCUMENT STYLES (for legal pages) ═══ */
.document-content{
  background:var(--color-surface-2);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-8);
  margin-block:var(--space-8);
  }

@media(max-width:600px){.document-content{padding:var(--space-6);}}
.document-content h1{font-size:var(--text-xl);margin-bottom:var(--space-4);color:var(--color-text);text-align: center;}
.document-content .document-meta{
  text-align:center;
  color:var(--color-text-muted);
  font-size:var(--text-sm);
  margin-bottom:var(--space-8);
  padding-bottom:var(--space-6);
  border-bottom:1px solid var(--color-divider);
}



.document-content h2{
  font-size:var(--text-lg);
  margin-top:var(--space-10);
  margin-bottom:var(--space-4);
  color:var(--color-text);
  border-left:3px solid var(--color-divider);
  padding-left:var(--space-4);
}
.document-content h3{
  font-size:var(--text-base);
  margin-top:var(--space-6);
  margin-bottom:var(--space-3);
  color:var(--color-text);
}
.document-content p{margin-bottom:var(--space-4);color:var(--color-text-muted);}
.document-content ul{margin-left:var(--space-6);margin-bottom:var(--space-4);color:var(--color-text-muted);}
.document-content li{margin-bottom:var(--space-2);}
.document-content strong{color:var(--color-text);font-weight:600;}
.document-content a{color:var(--color-text-muted);border-bottom:1px solid var(--color-divider);}
.document-content a:hover{color:var(--color-text);border-color:var(--color-accent);}
.document-content .highlight{
  background:var(--color-surface);
  padding:var(--space-6);
  border-left:3px solid var(--color-divider);
  margin:var(--space-6) 0;
  border-radius:var(--radius-md);
}
.document-content .contact-info{
  background:var(--color-surface);
  padding:var(--space-6);
  border-radius:var(--radius-lg);
  margin:var(--space-8) 0;
  text-align:center;
}
.document-content .footer-text{
  font-size:var(--text-sm);
  color:var(--color-text-faint);
  text-align:center;
  margin-top:var(--space-10);
  padding-top:var(--space-6);
  border-top:1px solid var(--color-divider);
}

/* ═══ CONTACTS STYLES ═══ */
.contacts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-block:var(--space-8);list-style:none;padding:0;}
@media(max-width:600px){.contacts-grid{grid-template-columns:1fr;}}
.contact-card{
  background:var(--color-surface);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-6);
}
.contact-card .label{
  font-family:var(--font-display);
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--color-text-muted);
  margin-bottom:var(--space-2);
}
.contact-card a{
  color:var(--color-text);
  font-weight:500;
  font-size:var(--text-sm);
}
.contact-card a:hover{color:var(--color-accent);text-decoration:underline;opacity:0.85;}
.contact-card .note{
  font-size:var(--text-xs);
  color:var(--color-text-faint);
  margin-top:var(--space-2);
}
.contacts-block{
  background:var(--color-surface);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-6);
  margin-top:var(--space-4);
}
.contacts-block dl{margin:0;padding:0;}
.contacts-block dt{
  font-family:var(--font-display);
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--color-text-muted);
  margin-top:var(--space-4);
}
.contacts-block dd{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-muted);}

/* ═══ LIMITS STYLES ═══ */
.limits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);}
@media(max-width:800px){.limits-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:500px){.limits-grid{grid-template-columns:1fr;}}
.limit-card{
  background:var(--color-surface);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-6);
}
.limit-card .limit-num{
  font-family:var(--font-display);
  font-size:var(--text-2xl);
  font-weight:700;
  color:var(--color-divider);
  line-height:1;
  margin-bottom:var(--space-3);
}
.limit-card .limit-title{
  font-family:var(--font-display);
  font-size:var(--text-base);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:var(--space-2);
}
.limit-card .limit-text{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  line-height:1.6;
}

/* ═══ GLOSSARY STYLES ═══ */
.glossary-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);}
@media(max-width:700px){.glossary-list{grid-template-columns:1fr;}}
.glossary-item{
  background:var(--color-surface);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-6);
}
.glossary-item .term{
  font-family:var(--font-display);
  font-size:var(--text-base);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:var(--space-2);
  color:var(--color-text);
}
.glossary-item .definition{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  line-height:1.65;
}


/* ═══ FOOTER ═══ */
.site-footer{padding-block:var(--space-12);border-top:1px solid var(--color-divider);margin-top:var(--space-12);}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--space-12);}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.footer-grid{grid-template-columns:1fr;gap:var(--space-8);}}
.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--space-12);}
@media(max-width:900px){.footer-inner{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.footer-inner{grid-template-columns:1fr;gap:var(--space-8);}}
.footer-brand{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-4);}
.footer-tagline{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6;max-width:32ch;}
.footer-col-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}
.footer-col-title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:var(--space-3);}
.footer-links a{font-size:var(--text-sm);color:var(--color-text-muted);}
.footer-links a:hover{color:var(--color-text);}
.footer-divider{border:none;border-top:1px solid var(--color-divider);margin-block:var(--space-8);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--color-text-faint);flex-wrap:wrap;gap:var(--space-3);}
.footer-bottom a{color:var(--color-text-faint);}
.footer-bottom a:hover{color:var(--color-text-muted);}

/* Brand column */
.footer-brand-col{display:flex;flex-direction:column;gap:var(--space-4);}
.footer-logo{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text);text-decoration:none;}
.footer-logo img,.footer-logo svg{width:36px;height:36px;flex-shrink:0;}
/* Адаптация логотипа в футере для тёмной темы */
[data-theme="dark"] .footer-logo img{filter:invert(1);}
.footer-logo:hover{color:var(--color-accent);}
.footer-tagline{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6;max-width:28ch;}
.footer-requisites{margin-top:auto;font-size:var(--text-xs);color:var(--color-text-faint);line-height:1.7;}
.footer-requisites p{margin:0;}

/* Column title */
.footer-col-title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}

/* Column links */
.footer-links{list-style:none;display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;}
.footer-links a{font-size:var(--text-sm);color:var(--color-text-muted);transition:color var(--tr);}
.footer-links a:hover{color:var(--color-text);}

/* Contacts block in footer */
.footer-contacts{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-divider);}
.footer-contact-link{font-size:var(--text-sm);color:var(--color-text-muted);transition:color var(--tr);text-decoration:none;}
.footer-contact-link:hover{color:var(--color-text);}

/* Divider */
.footer-divider{border:none;border-top:1px solid var(--color-divider);margin-block:var(--space-8);}

/* Bottom bar */
.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--color-text-faint);flex-wrap:wrap;gap:var(--space-3);}
@media(max-width:600px){.footer-bottom{justify-content:center;text-align:center;}}
.footer-bottom a{color:var(--color-text-faint);}
.footer-bottom a:hover{color:var(--color-text-muted);}

/* ═══ HERO (main page) ═══ */
.hero.main-hero{padding-block:clamp(var(--space-16),10vw,var(--space-24)) clamp(var(--space-12),6vw,var(--space-20));border-bottom:1px solid var(--color-divider);}
.hero.main-hero .hero-inner{display:grid;grid-template-columns:1fr 340px;gap:var(--space-16);align-items:center;}
@media(max-width:860px){.hero.main-hero .hero-inner{grid-template-columns:1fr;}.hero-visual{display:none;}}
@media(max-width:600px){
  .hero.main-hero{padding-inline:0 !important;}
  .hero.main-hero > .container{padding-inline:16px !important;margin-inline:0 !important;}
}
.hero.main-hero .hero-kicker{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-5);}
.hero.main-hero .hero-title{font-family:var(--font-display);font-size:var(--text-hero);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin-bottom:var(--space-6);color:var(--color-text);}
.hero.main-hero .hero-title em{font-style:normal;color:var(--color-text-muted);}
.hero.main-hero .hero-sub{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.7;max-width:52ch;margin-bottom:var(--space-10);}
.hero.main-hero .hero-actions{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;}
.btn-primary{padding:var(--space-4) var(--space-8);background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:var(--space-2);}
.btn-primary:hover{background:var(--color-accent-hover);}
.btn-outline{padding:var(--space-4) var(--space-6);border:1px solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-md);}
.btn-outline:hover{color:var(--color-text);border-color:var(--color-accent);}
.hero-note{margin-top:var(--space-6);font-size:var(--text-xs);color:var(--color-text-faint);}
.hero-note a{color:var(--color-text-muted);border-bottom:1px solid var(--color-divider);}
.hero-note a:hover{color:var(--color-text);}

/* Hero visual — phone mockup */
.hero-visual{display:flex;justify-content:right;}
@media(max-width:860px){.hero-visual{display:flex;justify-content:center;}}
.phone-mock{width:220px;background:var(--color-surface-2);border-radius:28px;border:1.5px solid var(--color-border);box-shadow:var(--shadow-lg);padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);}
.mock-bar{height:4px;background:var(--color-divider);border-radius:var(--radius-full);width:100%;}
.mock-bar.short{width:60%;}
.mock-bar.shorter{width:35%;}
.mock-amount{font-family:var(--font-display);font-size:clamp(2rem,5vw,2.8rem);font-weight:700;color:var(--color-text);letter-spacing:-.02em;text-align:center;padding:var(--space-4) 0;}
.mock-label{font-size:var(--text-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.1em;text-align:center;}
.mock-btn{background:var(--color-accent);color:var(--color-text-inverse);padding:var(--space-3);border-radius:var(--radius-md);text-align:center;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-top:var(--space-2);}
.mock-qr{width:80px;height:80px;margin:var(--space-2) auto 0;opacity:.35;background:repeating-conic-gradient(var(--color-text) 0% 25%,transparent 0% 50%) 0 0/8px 8px;border-radius:var(--radius-sm);}

/* ═══ HERO (legal pages) ═══ */
.hero{background:var(--color-surface);border-bottom:1px solid var(--color-divider);padding:var(--space-16) var(--space-6) var(--space-12)}
.hero-kicker{display:inline-block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}
.hero-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:.02em;text-transform:uppercase;line-height:1.05;margin-bottom:var(--space-4);max-width:40ch}
.hero-sub{font-size:var(--text-base);color:var(--color-text-muted);max-width:60ch;line-height:1.6;margin-bottom:var(--space-6)}
.hero-meta{display:flex;gap:var(--space-8);flex-wrap:wrap}
.hero-meta-item{display:flex;flex-direction:column;gap:2px}
.hero-meta-item .label{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-faint)}
.hero-meta-item .value{font-size:var(--text-sm);color:var(--color-text-muted)}
.hero-meta-tag {
    background: var(--color-accent);
    border-radius: var(--radius-full);
    padding: var(--space-1) var(--space-3);
    color: var(--color-surface);
    font-family: var(--font-display);
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 600;
}
.hero-meta-1 {
    display: flex;
    align-items: center;
    gap: var(--space-4);
    flex-wrap: wrap;
    font-size: var(--text-xs);
    color: var(--color-text-faint);
}
/* ═══ Legal Page Layout ═══ */
.page-layout{display:grid;grid-template-columns:220px 1fr;gap:0;max-width:var(--content-default);margin-inline:auto;padding:var(--space-12) var(--space-6);align-items:start}
@media(max-width:768px){.page-layout{grid-template-columns:1fr}.toc{display:none}}
.toc{position:sticky;top:calc(var(--space-16) + var(--space-4));max-height:calc(100vh - var(--space-20));overflow-y:auto;padding-right:var(--space-6);border-right:1px solid var(--color-divider)}
.toc-title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.toc ul{list-style:none;display:flex;flex-direction:column;gap:2px}
.toc a{display:block;font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background var(--transition),color var(--transition);line-height:1.4}
.toc a:hover{background:var(--color-surface-offset);color:var(--color-text)}
.toc a.active{background:var(--color-surface-dynamic);color:var(--color-text);font-weight:700}
.doc-body{padding-left:var(--space-10);min-width:0}
@media(max-width:768px){.doc-body{padding-left:0}}

/* ═══ TOC SIDEBAR (for glossary page) ═══ */
.toc-sidebar{position:sticky;top:76px;max-height:calc(100vh - 100px);overflow-y:auto;padding-right:var(--space-4);}
.toc-sidebar h4{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-3);}
.toc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px;}
.toc-list li{margin-bottom:0;}
.toc-list a{display:block;padding:4px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:none;transition:background var(--transition),color var(--transition);}
.toc-list a:hover{color:var(--color-text);background:var(--color-tag-bg);}
.toc-list a.active{color:var(--color-text);background:var(--color-surface-dynamic);font-weight:600;}
.toc-section-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.1em;padding:var(--space-2) var(--space-2) var(--space-1);margin-top:var(--space-2);}


/* ===== TOC ===== */
.toc-section {
  padding: var(--space-10) 0 var(--space-8);
  border-bottom: 1px solid var(--color-divider);
}
.toc-label {
  font-family: var(--font-display);
  font-size: var(--text-xs);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  margin-bottom: var(--space-4);
  font-weight: 600;
}
.toc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr));
  gap: var(--space-2) var(--space-6);
}
.toc-item {
  display: flex; align-items: baseline; gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  text-decoration: none;
  padding: var(--space-1) 0;
  border-bottom: 1px solid transparent;
}
.toc-item:hover { color: var(--color-text); border-bottom-color: var(--color-divider); }
.toc-num {
  font-family: var(--font-display);
  font-size: var(--text-xs);
  font-weight: 600;
  color: var(--color-text-faint);
  min-width: 1.5rem;
}

/* ═══ Doc Section ═══ */
.doc-section { margin-bottom: var(--space-12); }
.doc-section + .doc-section { border-top: 1px solid var(--color-divider); padding-top: var(--space-10); }
.section-header { display: flex; align-items: baseline; gap: var(--space-3); margin-bottom: var(--space-6); }
.section-num { font-family: var(--font-display); font-size: var(--text-xs); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--color-text-faint); }
.section-title { font-family: var(--font-display); font-size: var(--text-xl); font-weight: 700; letter-spacing: .03em; text-transform: uppercase; line-height: 1.1; color: var(--color-text); margin: 0; }
.clause { display: flex; gap: var(--space-3); margin-bottom: var(--space-4); }
.clause-num { flex-shrink: 0; font-family: var(--font-display); font-size: var(--text-xs); font-weight: 600; letter-spacing: .08em; color: var(--color-text-faint); align-self: flex-start; }
.clause-content { flex: 1; min-width: 0; }
.clause-content p { font-size: var(--text-base); line-height: 1.7; color: var(--color-text); margin: 0; }
.clause-content p + p { margin-top: var(--space-2); }
.clause-content ul { margin: var(--space-3) 0 var(--space-3) var(--space-6); color: var(--color-text); list-style: disc; }
.clause-content li { margin-bottom: var(--space-2); font-size: var(--text-base); line-height: 1.65; }




/* ═══ Doc Body ═══ */
.section-block{margin-bottom:var(--space-12);padding-top:var(--space-2)}
.section-block + .section-block{border-top:1px solid var(--color-divider);padding-top:var(--space-10)}
.section-num{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint);margin-bottom:var(--space-2);display:block}
.section-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1.1;margin-bottom:var(--space-6);color:var(--color-text)}
.clause{margin-bottom:var(--space-4)}
.clause p{font-size:var(--text-base);line-height:1.7;color:var(--color-text);max-width:72ch;margin:0;}
.clause p + p{margin-top:var(--space-2)}
.clause ul{margin:var(--space-3) 0 var(--space-3) var(--space-6);list-style:disc;color:var(--color-text);}
.clause li{font-size:var(--text-base);color:var(--color-text);line-height:1.65;max-width:68ch;margin-bottom:var(--space-2);}
.clause ul.doc-list{list-style:none;margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);}
.clause ul.doc-list li{padding-left:var(--space-5);position:relative;font-size:var(--text-base);line-height:1.65;margin-bottom:0;}
.clause ul.doc-list li::before{content:"—";position:absolute;left:0;color:var(--color-text-faint);}




/* ═══ STATS STRIP ═══ */
.stats-strip{border-bottom:1px solid var(--color-divider);background:var(--color-surface);}
.stats-inner{display:flex;justify-content:space-between;padding-block:var(--space-8);gap:var(--space-6);flex-wrap:wrap;}
.stat-item{text-align:center;flex:1;min-width:140px;}
.stat-num{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;color:var(--color-text);line-height:1;}
.stat-desc{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-2);}

/* ═══ HOW IT WORKS ═══ */
.section-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-5);}
.section-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;text-transform:uppercase;letter-spacing:.01em;margin-bottom:var(--space-12);}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);}
@media(max-width:800px){.steps{grid-template-columns:repeat(2,1fr);}}
@media(max-width:440px){.steps{grid-template-columns:1fr;}}
.step{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-6);}
.step-num{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:var(--color-divider);line-height:1;margin-bottom:var(--space-4);}
.step-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2);}
.step-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6;}

/* ═══ FEATURES ═══ */
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);}
@media(max-width:700px){.features-grid{grid-template-columns:1fr;}}
.feature-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-6);}
.feature-icon{width:36px;height:36px;margin-bottom:var(--space-4);color:var(--color-text-muted);}
.feature-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2);}
.feature-text{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.65;}

/* ═══ TARIFF ═══ */
.tariff-block{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);}
@media(max-width:600px){.tariff-block{grid-template-columns:1fr;}}
.tariff-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-8);}
.tariff-card.accent-card{background:var(--color-accent);border-color:var(--color-accent);}
.tariff-card.accent-card *{color:var(--color-text-inverse)!important;}
.tariff-card.accent-card .tariff-meta{opacity:.7;}
.tariff-rate{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;line-height:1;margin-bottom:var(--space-2);}
.tariff-role{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-6);}
.tariff-meta{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.7;}
.tariff-example{margin-top:var(--space-4);padding:var(--space-4);background:rgba(0,0,0,.04);border-radius:var(--radius-md);}
[data-theme="dark"] .tariff-example{background:rgba(255,255,255,.05);}
.accent-card .tariff-example{background:rgba(255,255,255,.12);}
.tariff-example table{width:100%;font-size:var(--text-xs);border-collapse:collapse;}
.tariff-example td{padding:3px 0;color:var(--color-text-muted);}
.tariff-example td:last-child{text-align:right;font-weight:600;color:var(--color-text);}
.accent-card .tariff-example td{color:rgba(255,255,255,.7);}
.accent-card .tariff-example td:last-child{color:#fff;}

/* ═══ COMPLIANCE ═══ */
.compliance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);}
@media(max-width:700px){.compliance-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:440px){.compliance-grid{grid-template-columns:1fr;}}
.comp-item{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-5);}
.comp-tag{display:inline-block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:var(--color-tag-bg);padding:2px var(--space-2);border-radius:var(--radius-sm);margin-bottom:var(--space-3);}
.comp-title{font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-2);}
.comp-text{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.6;}

/* ═══ LEGAL STRIP ═══ */
.legal-strip{background:var(--color-surface);border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);padding-block: var(--space-3);}
.legal-strip .container{padding-inline:var(--space-6);}
@media(max-width:600px){.legal-strip .container{padding-inline:var(--space-4);}}

/* Legal links menu */
.legal-links{display:flex;gap:var(--space-6);padding-block:var(--space-6);flex-wrap:wrap;justify-content:center;}
.legal-links a{font-size:var(--text-xs);color:var(--color-text-muted);border-bottom:1px solid transparent;}
.legal-links a:hover{color:var(--color-text);border-color:var(--color-divider);}
.legal-links a.active{color:var(--color-text);border-color:var(--color-accent);}

/* Legal strip inner (text content) */
.legal-strip-inner{max-width:var(--content-default);margin-inline:auto;display:flex;gap:var(--space-4);align-items:flex-start;flex-wrap:wrap}
.legal-strip-inner p{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5;max-width:none}
.legal-strip-inner strong{font-weight:700;color:var(--color-text)}
.legal-strip-inner a{color:var(--color-text);text-decoration:underline;text-underline-offset:2px}
.legal-strip-inner a:hover{color:var(--color-text-muted)}

/* ═══ CTA BAND ═══ */
.cta-band{background:var(--color-accent);padding-block:clamp(var(--space-12),6vw,var(--space-20));}
.cta-band *{color:var(--color-text-inverse);}
.cta-band .btn-cta-inv{padding:var(--space-4) var(--space-10);background:var(--color-bg);color:var(--color-text)!important;font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:var(--space-2);}
.cta-band .btn-cta-inv:hover{opacity:.9;}
.cta-band-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;text-transform:uppercase;margin-bottom:var(--space-4);line-height:1.05;}
.cta-band-sub{font-size:var(--text-base);opacity:.75;margin-bottom:var(--space-8);max-width:52ch;}

/* ═══ DIVIDER ═══ */
.section-divider{height:1px;background:var(--color-divider);}

/* ═══ INTERNAL NAVIGATION (TOC) ═══ */
/* Table of Contents (sticky sidebar) */
.toc{
  position:sticky;
  top:76px;
  max-height:calc(100vh - 100px);
  overflow-y:auto;
  background:var(--color-surface);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);
  padding:var(--space-4);
  margin-bottom:var(--space-6);
}
@media(max-width:900px){.toc{position:static;max-height:none;margin-bottom:var(--space-6);}}
.toc-title{
  font-family:var(--font-display);
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--color-text-faint);
  margin-bottom:var(--space-3);
}

/* Page Layout with TOC */
.page-layout{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:0;
  max-width:var(--content-default);
  margin-inline:auto;
  padding:var(--space-12) var(--space-6);
  align-items:start;
}
@media(max-width:768px){.page-layout{grid-template-columns:1fr}.toc{display:none}}

/* Document grid (glossary, legal pages with TOC) */
.doc-grid{display:grid;grid-template-columns:1fr 220px;gap:var(--space-12);align-items:start;padding-block:clamp(var(--space-10),6vw,var(--space-20));}
@media(max-width:800px){.doc-grid{grid-template-columns:1fr;}.toc-sidebar{display:none;}}

/* ═══ SECTIONS ═══ */
.section-block{margin-bottom:var(--space-12);}
.section-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4);}
.section-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;padding-bottom:var(--space-4);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-8);}

/* ═══ TERM ENTRY ═══ */
.term-entry{padding:var(--space-6) 0;border-bottom:1px solid var(--color-divider);}
.term-entry:last-child{border-bottom:none;}
.term-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text);margin-bottom:var(--space-2);display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;line-height:1.2;}
.term-en{font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;color:var(--color-text-faint);text-transform:none;letter-spacing:.01em;}
.term-synonyms{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-4);background:var(--color-tag-bg);display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);}
.term-synonyms strong{color:var(--color-text-faint);font-weight:600;}
.term-def{color:var(--color-text);line-height:1.7;}
.term-def p{margin-bottom:var(--space-3);max-width:68ch;}
.term-def p:last-child{margin-bottom:0;}
.term-def ul{margin:var(--space-3) 0 var(--space-3) var(--space-6);}
.term-def li{margin-bottom:var(--space-1);}
.term-def code{font-family:'Courier New',monospace;font-size:.9em;background:var(--color-tag-bg);padding:1px 5px;border-radius:var(--radius-sm);}
.term-def strong{color:var(--color-text);}

/* ═══ CALLOUTS ═══ */
.callout{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);font-size:var(--text-xs);line-height:1.65;max-width:100%;}
.callout-warn{background:var(--warn-bg);border-left:2px solid var(--warn-border);color:var(--warn-text);}
.callout-note{background:var(--note-bg);border-left:2px solid var(--note-border);color:var(--note-text);}
.callout strong{font-weight:700;}

/* ═══ REQUISITES ═══ */
.requisites{background:var(--color-surface-offset);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);margin-top:var(--space-8)}
.requisites-title{font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}
.req-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3) var(--space-8)}
.req-item{display:flex;flex-direction:column;gap:2px}
.req-label{font-size:var(--text-xs);color:var(--color-text-faint);letter-spacing:.05em;text-transform:uppercase}
.req-value{font-size:var(--text-sm);color:var(--color-text)}
.req-value a{text-decoration:underline;text-underline-offset:2px;color:var(--color-text)}
.req-value a:hover{color:var(--color-text-muted)}

/* ═══ ABBR TABLE ═══ */
.abbr-table{width:100%;border-collapse:collapse;font-size:var(--text-xs);margin-top:var(--space-4);}
.abbr-table th{text-align:left;color:var(--color-text-muted);font-family:var(--font-display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:var(--space-2) var(--space-3);border-bottom:2px solid var(--color-border);}
.abbr-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);vertical-align:top;color:var(--color-text);}
.abbr-table tr:last-child td{border-bottom:none;}
.abbr-table td:first-child{font-family:var(--font-display);font-weight:700;white-space:nowrap;width:90px;letter-spacing:.04em;}
.abbr-table td:nth-child(2){color:var(--color-text-muted);width:220px;}
.abbr-table tr:hover td{background:var(--color-surface);}

/* ═══ CONSENT BOX ═══ */
.consent-box{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-4);}
.consent-box p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.75;max-width:65ch;}
.consent-box p+p{margin-top:var(--space-4);}
.consent-box strong{color:var(--color-text);}
.consent-box a{color:var(--color-text);border-bottom:1px solid var(--color-divider);}
.consent-box a:hover{border-color:var(--color-accent);}







/* ═══ Специфичные стили для таблицы лимитов ═══ */
.limits-table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: var(--space-6) 0;
}
.limits-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 300px;
  font-size: var(--text-sm);
}
.limits-table th { text-align: left; padding: var(--space-3) var(--space-4); background: var(--color-tag-bg); font-family: var(--font-display); font-weight: 600; color: var(--color-text-muted); border-bottom: 2px solid var(--color-border); white-space: nowrap; }
.limits-table td { padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--color-divider); vertical-align: top; }
.limits-table tr:hover td { background: var(--color-surface); }
.limits-table .val { font-weight: 600; white-space: nowrap; color: var(--color-text); }
.tag-kyc { display: inline-block; background: #fff3cd; color: #856404; border: 1px solid #ffc107; border-radius: var(--radius-sm); font-size: 0.75rem; font-weight: 700; padding: 2px 6px; margin-left: 6px; vertical-align: middle; }
.tag-block { display: inline-block; background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; border-radius: var(--radius-sm); font-size: 0.75rem; font-weight: 700; padding: 2px 6px; margin-left: 6px; vertical-align: middle; }
.tag { display: inline-block; background: var(--color-tag-bg); color: var(--color-text); border-radius: var(--radius-sm); font-size: var(--text-xs); font-weight: 600; padding: 4px 10px; margin: 2px; }
.info-box { background: var(--note-bg); border-left: 4px solid var(--note-border); padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); margin: var(--space-6) 0; font-size: var(--text-sm); color: var(--note-text); }
.warn-box { background: var(--warn-bg); border-left: 4px solid var(--warn-border); padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); margin: var(--space-6) 0; font-size: var(--text-sm); color: var(--warn-text); }
.green-box { background: var(--color-surface); border: 1px solid var(--color-divider); border-left: 4px solid var(--color-accent); padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); margin: var(--space-6) 0; font-size: var(--text-sm); }
.section-note { color: var(--color-text-muted); font-size: var(--text-sm); margin-bottom: var(--space-4); }
h1 { font-size: var(--text-2xl); margin-bottom: var(--space-2); }
.meta { color: var(--color-text-faint); font-size: var(--text-xs); margin-bottom: var(--space-6); }
h2 { font-size: var(--text-xl); margin-top: var(--space-10); margin-bottom: var(--space-4); border-bottom: 1px solid var(--color-divider); padding-bottom: var(--space-2); }
h3 { font-size: var(--text-lg); margin-top: var(--space-6); margin-bottom: var(--space-3); }
code { background: var(--color-tag-bg); padding: 2px 6px; border-radius: var(--radius-sm); font-size: 0.9em; }




/* ═══ AML/KYC STYLES ═══ */
.card {
  background: var(--color-surface-2);
  padding: var(--space-6);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  margin-bottom: var(--space-6);
  border: 1px solid var(--color-divider);
}
.card-title {
  font-weight: 700;
  font-size: var(--text-base);
  margin-bottom: var(--space-3);
  color: var(--color-text);
}
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--space-6);
  margin: var(--space-6) 0;
}

.grid-1 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--space-6);
    margin: var(--space-6) 0;
}

.important {
  background: var(--warn-bg);
  border-left: 4px solid var(--warn-border);
  padding: var(--space-4) var(--space-5);
  border-radius: var(--radius-md);
  margin: var(--space-6) 0;
  font-size: var(--text-sm);
  color: var(--warn-text);
}
.important ul {
  margin-left: var(--space-6);
  margin-top: var(--space-3);
  color: var(--warn-text);
}
.ftfooter-links {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--space-6);
  margin: var(--space-8) 0;
  padding: var(--space-6) 0;
  border-top: 1px solid var(--color-divider);
}
.ftfooter-section h4 {
  font-family: var(--font-display);
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: var(--space-3);
}
.ftfooter-section h4:first-child {
  background: var(--color-accent);
  color: var(--color-text-inverse);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  margin-top: 0;
}
.ftfooter-section ul {
  list-style: disc;
  margin: 0 0 0 var(--space-4);
  padding: 0;
}
.ftfooter-section li {
  margin-bottom: var(--space-2);
}
.ftfooter-section a {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}
.ftfooter-section a:hover {
  color: var(--color-text);
}

.contacts-box {
  background: var(--color-surface);
  border: 2px solid var(--color-accent);
  border-radius: var(--radius-lg);
  padding: var(--space-8);
  margin: var(--space-8) 0;
  box-shadow: var(--shadow-md);
}
.contacts-box h2 {
  margin-top: 0;
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-4);
  border-bottom: 2px solid var(--color-divider);
}
.contacts-box p {
  margin-bottom: var(--space-3);
}
.contacts-box ul {
  margin-bottom: var(--space-5);
}

/* ═══ Оферта Агента — дополнительные стили ═══ */
.preamble-block {
  max-width: var(--content-default);
  margin: var(--space-8) auto;
  padding: 0 var(--space-6);
}

.callout-note {
  background: var(--note-bg);
  border-left: 3px solid var(--note-border);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  padding: var(--space-4) var(--space-5);
  color: var(--note-text);
  font-size: var(--text-sm);
  line-height: 1.65;
}
.callout-note a {
  color: var(--note-text);
  font-weight: 500;
}
.callout-note a:hover {
  text-decoration: underline;
}

.callout-warning {
  background: var(--warn-bg);
  border-left: 3px solid var(--warn-border);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  padding: var(--space-4) var(--space-5);
  color: var(--warn-text);
  font-size: var(--text-sm);
  line-height: 1.65;
  margin: var(--space-3) 0;
}

.clause-body {
  flex: 1;
  font-size: var(--text-sm);
  color: var(--color-text);
  line-height: 1.75;
}
.clause-body strong {
  color: var(--color-text);
  font-weight: 600;
}
.clause-body a {
  color: var(--color-text);
}
.clause-body a:hover {
  text-decoration: underline;
}

.clause-list {
  list-style: disc;
  margin-top: var(--space-3);
  margin-left: var(--space-6);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.clause-list li {
  font-size: var(--text-sm);
  line-height: 1.65;
}

.highlight-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-5) var(--space-6);
  margin: var(--space-4) 0;
  display: flex;
  align-items: center;
  gap: var(--space-4);
}
.highlight-card .hc-value {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--text-xl);
  color: var(--color-text);
  line-height: 1;
  white-space: nowrap;
}
.highlight-card .hc-label {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  line-height: 1.5;
}

.requisites-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-6);
  margin-top: var(--space-6);
}
.req-label {
  font-family: var(--font-body);
  font-size: var(--text-xs);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-faint);
  margin-bottom: var(--space-4);
}
.req-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--space-4);
}
.req-field label {
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-faint);
  display: block;
  margin-bottom: var(--space-1);
}
.req-field span {
  font-size: var(--text-sm);
  color: var(--color-text);
  font-weight: 500;
}
.req-field a {
  color: var(--color-text);
  text-decoration: none;
}
.req-field a:hover {
  text-decoration: underline;
}






