@import url('/stadium/fonts.css');
/* =============================================================
   RaceTime — Legal pages (policies, imprint, terms, cookies)
   Bilingual: PL + EN side-by-side via lang toggle
   ============================================================= */

/* ── Self-hosted Inter (per RaceTime brand kit) ─────────────── */
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url("../assets/fonts/Inter-400.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url("../assets/fonts/Inter-500.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url("../assets/fonts/Inter-600.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url("../assets/fonts/Inter-700.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url("../assets/fonts/Inter-800.woff2") format("woff2"); }

:root {
  --brand-orange-1: #FF4E1F;
  --brand-ink:      #0B1220;
  --brand-slate:    #6B7A90;
  --bg:             #EEF0F5;
  --surface:        #F4F6FB;
  --surface-raised: #F8F9FC;
  --border:         rgba(11,18,32,0.07);
  --text-1: #0B1220;
  --text-2: #4B5563;
  --text-3: #6B7A90;

  --font-sans: "Inter","Helvetica Neue",system-ui,-apple-system,Arial,sans-serif;
  --font-mono: "SF Mono","JetBrains Mono",Menlo,Consolas,monospace;

  --r-md: 14px;
  --r-lg: 20px;
  --r-full: 9999px;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--font-sans);
  color: var(--text-1);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  line-height: 1.6;
}

.legal-nav {
  position: sticky; top: 0; z-index: 50;
  backdrop-filter: blur(14px);
  background: rgba(238,240,245,0.92);
  border-bottom: 1px solid var(--border);
  padding: 14px clamp(16px, 4vw, 28px);
}
.legal-nav-inner {
  max-width: 900px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.legal-logo img { height: 34px; width: auto; display: block; }

.lang-toggle {
  display: inline-flex; gap: 4px;
  padding: 4px;
  background: var(--surface-raised);
  border: 1px solid var(--border);
  border-radius: var(--r-full);
}
.lang-toggle button {
  padding: 6px 14px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--text-3);
  background: transparent;
  border: 0;
  border-radius: var(--r-full);
  cursor: pointer;
  transition: background 160ms, color 160ms;
}
.lang-toggle button.is-active {
  background: var(--brand-ink);
  color: #fff;
}

main {
  max-width: 820px;
  margin: 0 auto;
  padding: 48px clamp(16px, 4vw, 28px) 80px;
}

.legal-eyebrow {
  font-family: var(--font-mono);
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--brand-orange-1);
  font-weight: 700;
}
h1.legal-title {
  font-size: clamp(1.8rem, 3.4vw, 2.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--brand-ink);
  margin: 8px 0 12px;
  line-height: 1.15;
}
.legal-meta {
  color: var(--text-3);
  font-size: 0.92rem;
  margin: 0 0 36px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--border);
}

article {
  font-size: 1rem;
  color: var(--text-1);
}
article h2 {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--brand-ink);
  margin: 36px 0 12px;
  letter-spacing: -0.01em;
}
article h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--brand-ink);
  margin: 22px 0 8px;
}
article p {
  margin: 0 0 14px;
  color: var(--text-1);
}
article ul, article ol {
  margin: 0 0 16px;
  padding-left: 22px;
}
article li { margin: 0 0 6px; }
article a {
  color: var(--brand-orange-1);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
article a:hover { text-decoration-thickness: 2px; }
article strong { color: var(--brand-ink); font-weight: 700; }

.legal-table {
  width: 100%;
  border-collapse: collapse;
  margin: 8px 0 20px;
  font-size: 0.92rem;
  background: var(--surface-raised);
  border-radius: var(--r-md);
  overflow: hidden;
  border: 1px solid var(--border);
}
.legal-table th,
.legal-table td {
  padding: 10px 14px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--border);
}
.legal-table tr:last-child th,
.legal-table tr:last-child td { border-bottom: 0; }
.legal-table th {
  background: var(--surface);
  font-weight: 700;
  color: var(--brand-ink);
  font-size: 0.85rem;
}

.legal-warning {
  background: rgba(255, 78, 31, 0.06);
  border: 1px solid rgba(255, 78, 31, 0.18);
  border-radius: var(--r-md);
  padding: 16px 20px;
  margin: 16px 0 24px;
  font-size: 0.95rem;
}
.legal-warning strong { color: var(--brand-orange-1); }

[lang-block] { display: none; }
[lang-block].is-visible { display: block; }

.legal-foot {
  margin-top: 64px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
  font-size: 0.92rem;
  color: var(--text-3);
}
.legal-foot a { color: var(--brand-orange-1); }
.legal-foot nav { display: flex; flex-wrap: wrap; gap: 16px 24px; margin-top: 10px; }

@media (max-width: 540px) {
  .legal-nav-inner { flex-direction: column; align-items: flex-start; }
}

/* Stadium document pages: shared display type, neutral surfaces and Ink chrome. */
.legal-nav{background:#0b1220;backdrop-filter:none;border:0;padding-block:12px}
.legal-nav-inner{max-width:1180px}
.legal-logo{display:inline-flex;align-items:center;min-height:44px}
.legal-logo img{height:auto;width:144px;max-width:100%}
.lang-toggle{border-radius:10px;background:#202938;border-color:#ffffff24}
.lang-toggle button{min-width:44px;min-height:44px;color:#d5dbe4;border-radius:7px;padding:8px 12px}
.lang-toggle button.is-active{background:#ff4e1f;color:#0b1220}
body{background:#eceef2}
main{max-width:900px;padding-top:36px}
h1.legal-title{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(42px,6vw,64px);font-weight:700;line-height:1.05}
article h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:30px;font-weight:700}
.legal-eyebrow{color:#526071;font-size:12px}
.legal-meta,.legal-foot{color:#526071}
.legal-warning{background:#f5f6f8;border-color:#0b122017;box-shadow:0 5px 14px #0b122014}
.legal-warning strong,article a,.legal-foot a{color:#0b1220}
article,.legal-table{overflow-wrap:anywhere}
.legal-foot a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}
:is(a,button):focus-visible{outline:2px solid #0b1220;outline-offset:3px;box-shadow:0 0 0 5px #fff}
@media(max-width:540px){.legal-nav-inner{flex-direction:row;align-items:center;gap:12px}.legal-logo img{width:120px}.legal-table :is(th,td){padding:8px}.legal-foot nav{gap:4px 18px}}
