/* =====================================================================
   Locus — общий слой для служебных страниц (terms, privacy, subscribed,
   unsubscribed). Та же тёмная «предрассветная» база и гарнитуры, что и на
   лендинге (styles/landing.css), но без арт-дирекшна §9. Self-hosted OFL:
   Golos Text (UI) + Lora (display). Пути к ассетам абсолютные — страницы
   отдаются с /terms/, /privacy/ и т.п.
   ===================================================================== */

/* ----------------------------- Шрифты (OFL) -----------------------------*/
@font-face { font-family:'Golos Text'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/golos-text-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family:'Golos Text'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/golos-text-cyrillic-ext.woff2') format('woff2');
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; }
@font-face { font-family:'Golos Text'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/golos-text-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Golos Text'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/golos-text-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

@font-face { font-family:'Lora'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/lora-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family:'Lora'; font-style:normal; font-weight:400 700; font-display:swap;
  src:url('/fonts/lora-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Lora'; font-style:italic; font-weight:400 700; font-display:swap;
  src:url('/fonts/lora-italic-cyrillic.woff2') format('woff2');
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family:'Lora'; font-style:italic; font-weight:400 700; font-display:swap;
  src:url('/fonts/lora-italic-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

/* ----------------------------- Токены ----------------------------------*/
:root{
  --font-ui:'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-display:'Lora', Georgia, 'Times New Roman', serif;

  --bg:#0b0d14;
  --bg-2:#0e1019;
  --ink:#ECEDF2;
  --ink-soft:#C3C6D2;
  --ink-dim:#9498A8;
  --line:rgba(236,237,242,0.14);
  --line-strong:rgba(236,237,242,0.26);
  --surface:rgba(255,255,255,0.05);

  --accent:#E0A36B;
  --accent-bright:#EBB682;
  --accent-ink:#1c1305;

  --ease:cubic-bezier(.22,1,.36,1);
  --maxw:1120px;
  --topbar-h:60px;

  color-scheme:dark;
}

/* ----------------------------- База ------------------------------------*/
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{
  margin:0;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  font-family:var(--font-ui);
  font-size:1rem;
  line-height:1.6;
  color:var(--ink);
  background:var(--bg);
  /* лёгкий предрассветный отблеск сверху — эхо лендинга, без анимации §9 */
  background-image:
    radial-gradient(120% 70% at 50% -10%, rgba(224,163,107,.07), transparent 60%),
    linear-gradient(180deg, var(--bg-2), var(--bg) 30%);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,p,ul,ol{ margin:0; }
a{ color:inherit; text-decoration:none; }
:focus:not(:focus-visible){ outline:none; }
:focus-visible{ outline:2px solid var(--accent-bright); outline-offset:3px; border-radius:3px; }
::selection{ background:rgba(224,163,107,.28); color:#fff; }
img{ max-width:100%; display:block; }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* ----------------------------- Topbar ----------------------------------*/
.topbar{
  position:sticky; top:0; z-index:100;
  backdrop-filter:saturate(140%) blur(10px);
  background:linear-gradient(180deg, rgba(11,13,20,.82), rgba(11,13,20,.42) 70%, transparent);
}
.topbar__inner{
  max-width:var(--maxw); margin-inline:auto; padding:0 clamp(16px,5vw,48px);
  min-height:var(--topbar-h);
  display:flex; align-items:center; gap:16px;
}
.logo{ display:inline-flex; align-items:baseline; gap:.22em; padding:8px 0; line-height:1; }
.logo__word{ font-family:var(--font-display); font-weight:500; font-size:1.32rem; letter-spacing:.07em; color:var(--ink); }
.logo__dots{ height:.34em; width:auto; transform:translateY(.05em); }
.logo__dots circle{ fill:var(--accent); }

/* ----------------------------- Footer ----------------------------------*/
.footer{
  border-top:1px solid var(--line);
  padding-block:clamp(28px,5vh,44px);
  padding-bottom:calc(clamp(28px,5vh,44px) + env(safe-area-inset-bottom));
}
.footer__nav{
  max-width:var(--maxw); margin-inline:auto; padding-inline:clamp(20px,5vw,48px);
  display:flex; flex-wrap:wrap; align-items:center; gap:.7em 1em;
  font-size:.95rem;
}
.footer__nav a{ color:var(--ink-dim); border-bottom:1px solid transparent; padding-bottom:1px; transition:color .18s var(--ease), border-color .18s var(--ease); }
.footer__nav a:hover{ color:var(--ink); border-color:var(--line-strong); }
.footer__sep{ color:var(--line-strong); }
