/* ============================================================
   Общая шапка и подвал сайта «только финансы».
   Источник истины — _partials/. Правки здесь, потом build.py.
   Значения цветов заданы явно: файл не должен зависеть
   от переменных конкретной страницы (у сателлитов свой набор).
   ============================================================ */
:root{
  --site-ink:#F3EFE7; --site-mute:#8d8d85; --site-void:#000;
  --site-line:rgba(243,239,231,0.14); --site-coral:#FF4A56;
  --site-pulse:linear-gradient(125deg,#FF2D85 0%,#FF4A56 55%,#FF6B35 100%);
  --site-sans:'Space Grotesk',system-ui,sans-serif;
  --site-mono:'JetBrains Mono',ui-monospace,monospace;
  --site-pad:clamp(20px,5vw,80px);
}

/* вордмарк */
.brandmark{display:inline-flex; align-items:center; gap:.30em; font-family:Rubik,system-ui,sans-serif;
  font-weight:300; font-size:14px; letter-spacing:-.015em; line-height:1; white-space:nowrap;
  text-decoration:none; color:var(--site-ink)}
.brandmark i{width:.22em; height:.22em; border-radius:50%; background:var(--site-coral); flex:none}
@media(max-width:640px){ .brandmark{font-size:13px} }

/* шапка */
/* Шапка одинаковая на всех страницах: полупрозрачная плашка с размытием,
   без нижней линии — контент проходит под ней и просвечивает.
   Светлым служебным страницам (оферта, политика, согласие, доступы) плашку
   уплотняем: на кремовом фоне прозрачная читалась бы как серое пятно. */
.site-header{position:sticky; top:0; z-index:50; background:rgba(0,0,0,.34);
  -webkit-backdrop-filter:saturate(1.1) blur(14px); backdrop-filter:saturate(1.1) blur(14px); border-bottom:0}
body.light-page .site-header{background:rgba(0,0,0,.94)}
.site-nav{display:flex; align-items:center; justify-content:space-between; padding:12px var(--site-pad); gap:20px}
.site-nav a{text-decoration:none}
.site-links{display:flex; gap:30px; align-items:center; margin-left:auto}
.site-links > a, .site-dd > a{font-family:var(--site-sans); font-size:14px; font-weight:400;
  color:var(--site-mute); letter-spacing:-0.02em; transition:color .15s}
.site-links > a:hover, .site-dd > a:hover{color:var(--site-ink)}
.site-links > a.active{color:var(--site-ink); border-bottom:1px solid var(--site-coral); padding-bottom:2px}
.site-dd{position:relative}
.site-dd > a{display:inline-flex; align-items:center; gap:5px; cursor:pointer}
.site-dd .cr{font-size:9px; opacity:.7}
.site-dd-m{position:absolute; top:100%; left:-8px; padding-top:14px; display:none}
.site-dd:hover .site-dd-m{display:block}
.site-dd-m .inner{background:#0b0b0b; border:1px solid var(--site-line); border-radius:12px;
  padding:8px; min-width:230px; display:flex; flex-direction:column}
.site-dd-m a{padding:9px 14px; border-radius:8px; font-family:var(--site-sans); font-size:14px;
  color:var(--site-mute); white-space:nowrap}
.site-dd-m a:hover{background:rgba(243,239,231,0.07); color:var(--site-ink)}
.site-dd-m a .d{display:block; font-size:12px; color:var(--site-mute); margin-top:2px}
.site-cta{display:flex; gap:12px; align-items:center; margin-left:30px}
.site-btn{display:inline-flex; align-items:center; font-family:var(--site-sans); font-weight:500;
  font-size:15px; letter-spacing:-0.02em; padding:13px 26px; border-radius:9999px; border:1px solid transparent;
  cursor:pointer; background:rgba(0,0,0,.35); color:var(--site-ink);
  border-color:rgba(243,239,231,.35); transition:border-color .15s, background .15s}
.site-btn:hover{border-color:var(--site-ink); background:rgba(0,0,0,.55)}
.site-burger{display:none; background:none; border:0; color:var(--site-ink); font-size:24px; cursor:pointer; line-height:1}
@media(max-width:900px){
  .site-links{position:fixed; inset:73px 0 auto 0; background:var(--site-void); flex-direction:column;
    align-items:flex-start; gap:6px; padding:20px var(--site-pad) 30px; border-bottom:1px solid var(--site-line); display:none}
  .site-links.open{display:flex}
  .site-links > a, .site-dd > a{font-size:18px; padding:6px 0}
  .site-burger{display:block}
  .site-dd{width:100%}
  .site-dd-m{position:static; display:block; padding-top:6px}
  .site-dd-m .inner{background:none; border:0; padding:0 0 0 16px; min-width:0}
  .site-dd-m a{font-size:16px; padding:6px 0}
  .site-dd .cr{display:none}
}

/* «Вход» — единственная кнопка для своих, поэтому фирменный градиент,
   а не обводка: рядом с «написать нам» две одинаковые пилюли не читались. */
.site-btn-accent{background:var(--site-pulse); background-size:220% 220%; border-color:transparent; color:#fff}
.site-btn-accent:hover{background:var(--site-pulse); background-size:220% 220%; border-color:transparent; opacity:.9}
/* Тот же «вход», но внутри раскрывающегося меню: на узком экране кнопка
   из шапки убирается, иначе она выталкивает бургер за правый край. */
.site-login-m{display:none}
@media(max-width:900px){
  .site-cta{margin-left:12px}
  .site-cta .site-btn-accent{display:none}
  .site-links .site-login-m{display:block; color:var(--site-ink)}
}

/* подвал */
.site-footer{background:var(--site-void); color:var(--site-mute); padding:clamp(48px,7vw,80px) var(--site-pad) 40px;
  font-family:var(--site-sans); border-top:1px solid var(--site-line)}
.site-foot{max-width:1280px; margin:0 auto; display:grid; grid-template-columns:1.5fr .9fr .9fr 1.1fr .9fr; gap:36px}
.site-foot h4{font-family:var(--site-mono); font-size:11px; text-transform:uppercase; color:var(--site-mute);
  margin:0 0 14px; font-weight:400; letter-spacing:.06em}
.site-foot a{color:var(--site-mute); display:block; padding:6px 0; font-size:15px; text-decoration:none; transition:color .15s}
.site-foot a:hover{color:var(--site-ink)}
.site-foot .about{font-size:14px; max-width:38ch; margin-top:18px; line-height:1.5}
.site-foot-bottom{max-width:1280px; margin:48px auto 0; padding-top:24px; border-top:1px solid var(--site-line);
  font-family:var(--site-mono); font-size:11px; color:#666; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap}
@media(max-width:1100px){ .site-foot{grid-template-columns:1fr 1fr 1fr} }
@media(max-width:900px){ .site-foot{grid-template-columns:1fr 1fr} }
@media(max-width:560px){ .site-foot{grid-template-columns:1fr} }
