/* Legal pages and the not-found page: the home page's fonts, :root and rules, nothing of their own (011). */
@font-face { font-family: Geist; src: url('/fonts/Geist-Variable.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Noto Sans Georgian'; src: url('/fonts/NotoSansGeorgian-Variable.ttf') format('truetype'); font-weight: 400 700; font-display: swap; }
:root {
  /* Standalone landing: semantic values mirror frontend/design/tokens.json (004 v3). */
  --background: #ffffff;
  --foreground: #0a0a0a;
  --card: #ffffff;
  --primary: #171717;
  --primary-foreground: #fafafa;
  --muted: #f5f5f5;
  --muted-foreground: #6f6f6f;
  --border: #e5e5e5;
  --field-border: #919191;
  --ring: #737373;
  --success: #007a55;
  --success-bg: #00bc7d1a;
  --success-dot: #00bc7d;
  --attention: #bb4d00;
  --attention-bg: #fe9a001a;
  --attention-dot: #fe9a00;
  --destructive: #c10007;
  --error-bg: #fb2c361a;
  --error-dot: #fb2c36;
  --shadow-sm: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;
  --radius-lg: 10px;
  --radius-xl: 14px;
  --max: 1080px;
  --font: Geist, 'Noto Sans Georgian', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%236f6f6f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
}
html[lang="ka"] { --font: 'Noto Sans Georgian', Geist, system-ui, sans-serif; }
/* The not-found page is Georgian with English and Russian blocks: those blocks take the home page's English stack. */
html[lang="ka"] [lang="en"], html[lang="ka"] [lang="ru"] { font-family: Geist, 'Noto Sans Georgian', system-ui, -apple-system, 'Segoe UI', sans-serif; }

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font: 400 17px/1.6 var(--font);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-underline-offset: 4px; }
.wrap { max-width: var(--max); margin: 0 auto; padding: 0 20px; }

header.wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 22px; padding-bottom: 22px; }
.brand { display: flex; align-items: center; text-decoration: none; }
.brand img { display: block; width: auto; height: 28px; max-width: 100%; }
.lang { display: flex; gap: 2px; padding: 3px; border: 1px solid var(--border); border-radius: var(--radius-xl); background: var(--card); }
.lang a {
  padding: 5px 11px; border-radius: var(--radius-lg); text-decoration: none;
  font-size: 13px; font-weight: 500; color: var(--muted-foreground);
}
.lang a[aria-current="page"] { background: var(--primary); color: var(--primary-foreground); }
@media (max-width: 640px) { .brand img { height: 22px; } }

main.wrap { padding-top: 48px; padding-bottom: 64px; }
main.wrap > * { max-width: 760px; }
h1, h2, h3 { margin: 0; font-weight: 600; line-height: 1.1; letter-spacing: -0.02em; text-wrap: balance; }
h1 { font-size: clamp(28px, 3.6vw, 40px); letter-spacing: -0.03em; }
h2 { font-size: 18px; margin-top: 40px; letter-spacing: -0.01em; }
h3 { font-size: 17px; margin-top: 24px; letter-spacing: 0; }
html[lang="ka"] h1, html[lang="ka"] h2 { letter-spacing: -0.01em; }
/* On a narrow screen h1 shrinks until its longest word fits the column (100vw - 40px) whole:
   «კონფიდენციალურობის» is 12.5 font sizes wide, «конфиденциальности» 10.3. */
html[lang="ka"] h1 { font-size: min(clamp(28px, 3.6vw, 40px), calc((100vw - 40px) / 13)); }
html[lang="ru"] h1 { font-size: min(clamp(28px, 3.6vw, 40px), calc((100vw - 40px) / 10.8)); }
p, ul, ol { margin: 14px 0 0; text-wrap: pretty; }
ul, ol { padding-left: 20px; }
li + li { margin-top: 8px; }
.meta { font-size: 14px; color: var(--muted-foreground); margin-top: 14px; }
.table-scroll { overflow-x: auto; margin-top: 14px; border: 1px solid var(--border); border-radius: var(--radius-lg); }
.table-scroll table { width: 100%; border-collapse: collapse; font-size: 14px; }
.table-scroll th, .table-scroll td { padding: 12px 22px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.table-scroll tr:last-child td { border-bottom: 0; }
address.seller { font-style: normal; }
address.seller .label { color: var(--muted-foreground); }

footer.wrap { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px 24px; flex-wrap: wrap; padding-top: 40px; padding-bottom: 48px; font-size: 14px; color: var(--muted-foreground); border-top: 1px solid var(--border); }
footer .links { display: flex; gap: 20px; flex-wrap: wrap; }
footer a { text-decoration: underline; }
footer a:hover { color: var(--foreground); }

a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }
