/* ---------- PÍSMA (self-hosted) ----------
   Archivo a Space Mono se natahovaly z fonts.googleapis.com. Při každém načtení
   stránky tím do Googlu odcházela IP adresa návštěvníka — v EU je to zpracování
   osobních údajů bez právního titulu (rozsudek LG München I, 3 O 17493/20).
   Soubory jsou proto vedle webu v assets/fonts (licence SIL OFL, přiložené).
   Rozdělení latin / latin-ext je záměr: čeština potřebuje ext, ale prohlížeč
   si stáhne jen ty subsety, jejichž znaky na stránce skutečně jsou. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/archivo-latin-300-normal.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:'Archivo';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/archivo-latin-ext-300-normal.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:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-latin-400-normal.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:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-latin-ext-400-normal.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:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-latin-500-normal.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:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-latin-ext-500-normal.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:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-latin-600-normal.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:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-latin-ext-600-normal.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:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-latin-700-normal.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:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-latin-ext-700-normal.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:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/archivo-latin-800-normal.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:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/archivo-latin-ext-800-normal.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:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/archivo-latin-900-normal.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:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/archivo-latin-ext-900-normal.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:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/space-mono-latin-400-normal.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:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/space-mono-latin-ext-400-normal.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:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/space-mono-latin-700-normal.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:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/space-mono-latin-ext-700-normal.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}

/* bessaudit.com — sdílený stylopis, brand v2 (světlý).
   Stejné názvy tříd jako v1 — HTML stránek se nemění, jen hodnoty.
   Tokeny --ba-* jsou kanonické; staré názvy (--grafit, --papir…) zůstávají jako alias.
   Značka: grafit / máta / jantar, Archivo (900 display) + Space Mono (čísla, meta). */

:root{
  /* --- brand --- */
  --ba-ink:#12171D; --ba-ink-hover:#2A343D;
  --ba-mint:#2BE39B; --ba-mint-hover:#22C98A; --ba-mint-deep:#0B7A50; --ba-mint-ink:#0A2E20;
  --ba-amber:#FFB321;

  /* --- neutrální --- */
  --ba-bg:#F7F8F9; --ba-bg-alt:#EEF1F3; --ba-surface:#FFFFFF; --ba-surface-dark:#12171D;
  --ba-border:#E6EAED; --ba-border-strong:#D6DDE1;
  --ba-text:#12171D; --ba-text-body:#4A5560; --ba-text-muted:#5A6672; --ba-text-subtle:#8A97A3;
  --ba-on-dark:#F4F6F7;
  --ba-danger:#D6453D;

  /* --- typografie --- */
  --ba-font-sans:'Archivo','Segoe UI',Arial,sans-serif;
  --ba-font-mono:'Space Mono',ui-monospace,monospace;

  /* --- geometrie --- */
  --ba-container:1200px; --ba-gutter:32px;
  --ba-radius-sm:8px; --ba-radius-md:11px; --ba-radius-lg:12px; --ba-radius-xl:22px; --ba-radius-pill:100px;
  --ba-shadow-card:0 24px 50px -34px rgba(18,23,29,.40);
  --ba-shadow-media:0 30px 60px -30px rgba(18,23,29,.35);
  --ba-ease:cubic-bezier(.2,.7,.3,1);

  /* --- alias pro staré HTML / inline styly --- */
  --grafit:var(--ba-ink); --grafit-2:#1B222B; --grafit-3:#28313C;
  --slunce:var(--ba-amber); --volt:var(--ba-mint); --sit:var(--ba-text-subtle);
  --papir:var(--ba-bg); --bila:var(--ba-surface);
  --redflag:var(--ba-danger); --seda-t:var(--ba-text-muted); --seda-s:var(--ba-border-strong);
  --disp:var(--ba-font-sans); --mono:var(--ba-font-mono);
  --maxw:var(--ba-container);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ba-font-sans);font-weight:400;color:var(--ba-text);background:var(--ba-bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--ba-mint-deep);text-decoration:none;transition:color 140ms var(--ba-ease)}
a:hover{color:var(--ba-ink)}
::selection{background:var(--ba-mint);color:var(--ba-ink)}
.wrap{max-width:var(--ba-container);margin:0 auto;padding:0 var(--ba-gutter)}
.eyebrow{font-size:13px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--ba-mint-deep)}
.mono{font-family:var(--ba-font-mono)}

h1,h2,h3{font-family:var(--ba-font-sans);color:var(--ba-text)}
h1{font-weight:900;font-size:clamp(2.1rem,4.8vw,3.4rem);letter-spacing:-1.6px;line-height:1.05}
h2{font-weight:800;font-size:clamp(1.6rem,3.4vw,2.5rem);letter-spacing:-1.2px;line-height:1.08;margin:0 0 .5em}
h3{font-weight:800;font-size:1.3rem;letter-spacing:-.5px;line-height:1.15;margin:0 0 .35em}
p{margin:0 0 1em;max-width:70ch}
.sub{color:var(--ba-text-muted);font-size:1.1rem;max-width:64ch}
.section{padding:80px 0;position:relative}

/* ---------- LOGO ---------- */
.logo{display:inline-flex;align-items:center;gap:11px}
/* monogram — schválené SVG z brand/01-logo, ne kresba v CSS */
.logo-mark{
  width:40px;height:40px;flex:none;
  background:url("logo-monogram.svg") center/contain no-repeat;
  font-size:0;line-height:0;color:transparent;
}
.logo.on-dark .logo-mark{background-image:url("logo-monogram-inverse.svg")}
.wm{font-size:23px;letter-spacing:-.5px;line-height:1;white-space:nowrap}
.wm b{font-weight:800;color:var(--ba-ink)}
.wm .lt{font-weight:300;color:var(--ba-ink)}
.wm .dot{font-weight:800;color:var(--ba-amber)}
.wm .com{font-weight:300;color:var(--ba-text-subtle);font-size:15px}
.logo.on-dark .wm b,.logo.on-dark .wm .lt{color:var(--ba-on-dark)}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:60;background:rgba(247,248,249,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--ba-border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:70px}
.nav-links{display:flex;gap:22px;align-items:center}
.nav-links a{font-size:14.5px;font-weight:500;color:#3D4852;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--ba-ink)}
.nav-cta{display:flex;gap:10px;align-items:center}

/* ---------- PŘEPÍNAČ JAZYKA ---------- */
.lang{position:relative;display:inline-flex;align-items:center;flex:none}
.lang select{
  appearance:none;-webkit-appearance:none;
  /* metriky shodné s .btn — font-size 14px + line-height 1.55 + padding 10px svisle → 43,7px */
  font-family:var(--ba-font-mono);font-size:14px;line-height:1.55;letter-spacing:.4px;font-weight:700;
  color:var(--ba-text-muted);background:var(--ba-surface);
  border:1px solid var(--ba-border-strong);border-radius:var(--ba-radius-md);
  padding:10px 34px 10px 15px;width:auto;cursor:pointer;
  transition:border-color 140ms var(--ba-ease),color 140ms var(--ba-ease);
}
.lang select:hover{border-color:var(--ba-ink);color:var(--ba-ink)}
.lang select:focus{outline:none;border-color:var(--ba-ink);box-shadow:0 0 0 3px rgba(43,227,155,.30)}
.lang::after{
  content:"";position:absolute;right:12px;top:50%;width:6px;height:6px;
  border-right:1.6px solid var(--ba-text-subtle);border-bottom:1.6px solid var(--ba-text-subtle);
  transform:translateY(-70%) rotate(45deg);pointer-events:none;
}
.lang option{font-family:var(--ba-font-sans);color:var(--ba-text);background:var(--ba-surface)}
/* varianta na tmavém pozadí (patička, auth karty na tmavém plátně) */
.lang.on-dark select{background:transparent;color:#C9D2DA;border-color:#3A444F}
.lang.on-dark select:hover{border-color:var(--ba-on-dark);color:#fff}

.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--ba-font-sans);font-weight:700;font-size:14px;
  border-radius:var(--ba-radius-md);padding:10px 18px;border:1px solid transparent;cursor:pointer;white-space:nowrap;
  transition:background 140ms var(--ba-ease),border-color 140ms var(--ba-ease),color 140ms var(--ba-ease);
}
.btn-primary{background:var(--ba-ink);color:var(--ba-on-dark)}
.btn-primary:hover{background:var(--ba-ink-hover);color:#fff}
.btn-ghost{background:var(--ba-surface);color:var(--ba-ink);border-color:var(--ba-border-strong);font-weight:600}
.btn-ghost:hover{border-color:var(--ba-ink);color:var(--ba-ink)}
.btn-lg{padding:15px 26px;font-size:16px;border-radius:var(--ba-radius-lg)}
/* velké primární CTA jsou mátová — malá v hlavičce zůstávají grafitová */
.btn-lg.btn-primary{background:var(--ba-mint);color:var(--ba-ink)}
.btn-lg.btn-primary:hover{background:var(--ba-mint-hover);color:var(--ba-ink)}
.btn-mint{background:var(--ba-mint);color:var(--ba-ink)}
.btn-mint:hover{background:var(--ba-mint-hover);color:var(--ba-ink)}

/* ---------- PAGE HERO ---------- */
.page-hero{background:var(--ba-bg-alt);color:var(--ba-text);padding:56px 0 60px;border-bottom:1px solid var(--ba-border)}
.page-hero .eyebrow{color:var(--ba-mint-deep)}
.page-hero h1{color:var(--ba-ink);margin:.3em 0 .35em;text-wrap:balance}
.page-hero p{color:var(--ba-text-body);max-width:62ch;font-size:1.15rem;line-height:1.55}
.crumbs{font-family:var(--ba-font-mono);font-size:12px;color:var(--ba-text-subtle);margin-bottom:10px}
.crumbs a{color:var(--ba-text-subtle)}
.crumbs a:hover{color:var(--ba-ink)}

/* ---------- PROSE / CONTENT ---------- */
.prose{max-width:74ch}
.prose h2{margin-top:1.7em}
.prose h2:first-child{margin-top:0}
.prose p{color:var(--ba-text-body)}
.prose ul{margin:0 0 1.2em 1.1em;display:flex;flex-direction:column;gap:.5em}
.prose li{max-width:70ch;color:var(--ba-text-body)}
.prose strong{color:var(--ba-ink);font-weight:700}
.lead{font-size:1.2rem;color:var(--ba-text);font-weight:500;max-width:66ch;margin-bottom:1.4em;line-height:1.55}
.accent{position:relative;white-space:nowrap}
.accent::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.34em;background:var(--ba-mint);opacity:.5;z-index:-1;border-radius:2px}

/* cards */
.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin:8px 0 4px}
.card{background:var(--ba-surface);border:1px solid var(--ba-border);border-radius:var(--ba-radius-xl);padding:26px;transition:border-color 140ms var(--ba-ease)}
.card:hover{border-color:var(--ba-border-strong)}
.card .k{font-family:var(--ba-font-mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ba-text-subtle);margin-bottom:10px}
.card p{font-size:14.5px;color:var(--ba-text-muted);margin:0}
.card .big{font-weight:900;font-size:1.8rem;letter-spacing:-1px;display:block;margin-bottom:4px;color:var(--ba-ink)}

/* funnel steps */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;border:1px solid var(--ba-border);border-radius:var(--ba-radius-xl);overflow:hidden;background:var(--ba-surface)}
.step{padding:26px 22px;border-right:1px solid var(--ba-border)}
.step:last-child{border-right:0}
.step .n{font-family:var(--ba-font-mono);font-size:11.5px;letter-spacing:1.4px;color:var(--ba-mint-deep);font-weight:700}
.step h3{font-size:1.05rem;margin:.7em 0 .4em}
.step p{font-size:14px;color:var(--ba-text-muted);margin:0}

/* team */
.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.person{background:var(--ba-surface);border:1px solid var(--ba-border);border-radius:var(--ba-radius-xl);padding:26px;display:flex;gap:16px;align-items:flex-start}
.avatar{flex:none;width:52px;height:52px;border-radius:14px;background:var(--ba-ink);color:var(--ba-on-dark);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.15rem;letter-spacing:-.5px}
.person .name strong{font-weight:800;font-size:1.05rem;letter-spacing:-.3px;color:var(--ba-ink)}
.person .role{font-family:var(--ba-font-mono);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ba-text-subtle);margin:3px 0 10px}
.person p{font-size:14px;color:var(--ba-text-muted);margin:0}
.person.placeholder{border-style:dashed;border-color:var(--ba-border-strong);background:transparent}

/* tier table */
.tiers{width:100%;border-collapse:collapse;background:var(--ba-surface);border:1px solid var(--ba-border);border-radius:var(--ba-radius-xl);overflow:hidden}
.tiers th,.tiers td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--ba-border);font-size:14.5px;vertical-align:top;color:var(--ba-text-body)}
.tiers th{font-family:var(--ba-font-mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ba-text-subtle);font-weight:400;background:var(--ba-bg)}
.tiers tr:last-child td{border-bottom:0}
.tiers .price{font-family:var(--ba-font-mono);font-weight:700;font-size:1.05rem;color:var(--ba-ink);letter-spacing:-.5px}
.pill{display:inline-block;font-family:var(--ba-font-mono);font-size:10.5px;letter-spacing:.6px;padding:4px 11px;border-radius:var(--ba-radius-pill);border:1px solid var(--ba-border-strong);color:var(--ba-text-muted)}
.pill.free{color:var(--ba-mint-deep);border-color:#8FE3C6;background:#EAFAF2}
.pill.dep{color:#8A5B00;border-color:var(--ba-amber);background:#FFF6E4}
.pill.full{color:var(--ba-on-dark);background:var(--ba-ink);border-color:var(--ba-ink)}

/* legal doc */
.legal{max-width:76ch;counter-reset:sec}
.legal .toc{background:var(--ba-surface);border:1px solid var(--ba-border);border-radius:var(--ba-radius-xl);padding:22px 26px;margin-bottom:32px}
.legal .toc ol{margin:0;padding-left:1.3em;columns:2;gap:24px}
.legal .toc a{font-size:13.5px;color:var(--ba-text-muted)}
.legal .toc a:hover{color:var(--ba-ink)}
.legal section{margin-bottom:28px;scroll-margin-top:90px}
.legal section>h2{font-size:1.2rem;letter-spacing:-.5px;display:flex;gap:.5em;align-items:baseline}
.legal section>h2::before{counter-increment:sec;content:counter(sec) ".";color:var(--ba-amber);font-family:var(--ba-font-mono);font-size:.85em}
.legal p,.legal li{font-size:14.5px;color:var(--ba-text-body)}
.legal ul{margin:.2em 0 1em 1.2em;display:flex;flex-direction:column;gap:.4em}
.ph{background:#FFF6E4;border:1px dashed var(--ba-amber);border-radius:5px;padding:0 5px;font-family:var(--ba-font-mono);font-size:.9em;color:#8A5B00}
.note{background:var(--ba-surface);border:1px solid var(--ba-border);border-left:3px solid var(--ba-amber);border-radius:var(--ba-radius-lg);padding:18px 22px;font-size:14px;color:var(--ba-text-muted);margin:22px 0}
.note b{color:var(--ba-ink)}

/* formuláře (přihlášení, aktivace, obnova hesla) */
input,select,textarea{
  font-family:var(--ba-font-sans);font-size:15px;color:var(--ba-text);
  padding:13px 15px;border:1px solid var(--ba-border-strong);border-radius:var(--ba-radius-sm);
  background:var(--ba-surface);width:100%;
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ba-ink);box-shadow:0 0 0 3px rgba(43,227,155,.30)}
label{font-size:13px;font-weight:600;color:#3D4852}

/* ---------- PROMO PRUH ---------- */
.promo{background:var(--ba-ink);color:#fff}
.promo .wrap{padding:56px var(--ba-gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.promo .pt{font-weight:800;font-size:1.65rem;letter-spacing:-.8px;margin:0 0 8px;max-width:560px;color:var(--ba-on-dark)}
.promo .ps{color:#9FAAB4;font-size:15px;margin:0;max-width:560px;line-height:1.6}
.promo .promo-cta{display:flex;gap:12px;flex-wrap:wrap}
.promo .accent{color:var(--ba-amber)}
.promo .accent::after{display:none}
.promo .btn-ghost{background:transparent;color:var(--ba-on-dark);border-color:#3A444F}
.promo .btn-ghost:hover{border-color:var(--ba-on-dark);color:#fff}

/* ---------- FOOTER ---------- */
.footer{background:#0E1216;color:#C9D2DA;padding:52px 0 30px;border-top:1px solid #1B222B}
.foot-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:32px;margin-bottom:40px}
.footer h4{font-family:var(--ba-font-mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ba-text-muted);margin-bottom:16px;font-weight:400}
.footer ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.footer a{font-size:14px;color:#C9D2DA}
.footer a:hover{color:#fff}
.foot-brand p{font-size:13.5px;color:var(--ba-text-subtle);margin-top:14px;max-width:34ch;line-height:1.7}
.foot-bottom{border-top:1px solid #1B222B;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--ba-font-mono);font-size:11.5px;color:var(--ba-text-muted)}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1080px){
  .nav-links{display:none}
}
@media(max-width:900px){
  :root{--ba-gutter:20px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .step{border-right:0;border-bottom:1px solid var(--ba-border)}
  .legal .toc ol{columns:1}
  .section{padding:56px 0}
}
@media(max-width:640px){
  .foot-grid{grid-template-columns:1fr}
  .promo .wrap{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ── tabulky v textu ──────────────────────────────────────────────────────
   Design systém je zatím neměl; stránky Stav dat a Metodika je potřebují.
   Drží se stejných tokenů jako karty: 22px rádius, jemný rám, mono hlavička. */
.prose table{width:100%;border-collapse:separate;border-spacing:0;margin:18px 0 22px;
  background:var(--ba-surface);border:1px solid var(--ba-border);
  border-radius:var(--ba-radius-xl);overflow:hidden;font-size:.94rem}
.prose thead th{background:var(--ba-bg-alt);font-family:var(--ba-font-mono);
  font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ba-text-subtle);
  font-weight:700;text-align:left;padding:12px 16px;white-space:nowrap}
.prose tbody td{padding:13px 16px;border-top:1px solid var(--ba-border);
  color:var(--ba-text-body);vertical-align:top;line-height:1.5}
.prose tbody tr:first-child td{border-top:1px solid var(--ba-border)}
.prose tbody td:first-child{color:var(--ba-ink);font-weight:600}
@media (max-width:720px){
  .prose table{display:block;overflow-x:auto;white-space:nowrap}
  .prose tbody td{white-space:normal;min-width:150px}
}
