/* ============================================================================
   cms.css — statické (CMS) stránky, Fáze CMS (1.9.2026)
   Vlastní jeden agent. Priorita 1007 = načítá se POSLEDNÍ (za oběma kopiemi
   custom.css) — remíza specificita+important padá tomuto souboru.
   Scope: body#cms. Obsah stránek generuje .claude/scripts/build_cms.php:
     - dokumentové stránky (1, 2, 7, 8, 9, 10): obálka .ks-cms-doc + obsah
       dokumentu (TOC) — šablony cms/page.tpl a _partials/ks_obsah_stranky.tpl,
       chování v custom.js (sekce CMS obsah). Vzor baseball-shop 17.x.
     - marketingové (3, 5, 6): obálka .ks-hp2.ks-cms-mkt — základ stylů reuse
       z custom.css (.ks-hp2: tokeny, .btn, .hl, .about, .proskoly, .split,
       .bazar), tady jen doplňky .ks-cms-*.
     - kontakt (4): karty .ks-cms-kont, převzatý formulář + mapa.
   Pasti (viz knowledge/prestavba_warehouse_child.md):
     - custom.css 2× na stránce; generovaný a:link:not(.nav-link):not(.btn)
       {color:#777} má (0,3,1) → barevné odkazy přes :link/:visited a vyšší
       specificitu;
     - legacy .page-content .form-control {border/radius/background !important}
       → pole formuláře MUSÍ mít tyto vlastnosti s !important;
     - legacy #content-wrapper .page-title (50px + skew span:before)
       a #cms #wrapper .breadcrumb (centrování) — přebito níže;
     - žádné :has(), ruční vendor prefixy, mobilní inputy 16 px (iOS).
   ============================================================================ */

body#cms{
  --ksd-paper:#FFFDF6; --ksd-surface:#FFFFFF; --ksd-cream:#FDF4D8; --ksd-cream2:#FFF7E0;
  --ksd-ink:#2B2620; --ksd-text:#4C473F; --ksd-muted:#9C9483;
  --ksd-line:#EDE7D8; --ksd-line-strong:#DED6C2;
  --ksd-coral:#F07E7E; --ksd-coral-deep:#E06A6A;
  --ksd-yellow:#FFCE3B; --ksd-yellow-deep:#EDAF06; --ksd-yellow-ink:#3A2E00;
  --ksd-hi:#FFE68C; --ksd-green:#3EA24A;
  --ksd-sh-sm:0 1px 2px rgba(43,38,32,.05), 0 5px 14px rgba(43,38,32,.05);
  --ksd-sh:0 3px 8px rgba(43,38,32,.06), 0 16px 36px rgba(43,38,32,.08);
  --ksd-r:14px; --ksd-r-s:10px;
  --ksd-font:'Baloo 2', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  /* mřížka obsahu dokumentu (musí sedět s JS prahem 1200) */
  --ksd-cteci:800px; --ksd-obsah-sirka:264px; --ksd-obsah-mezera:40px;
  background:var(--ksd-paper);
}

/* ============================================================
   1. BREADCRUMB + TITULEK (žlutý zvýrazňovač, vzor cart.css)
   ============================================================ */
body#cms #wrapper .breadcrumb{ text-align:left; }

body#cms #content-wrapper .page-title{
  font-family:var(--ksd-font);
  font-size:32px;
  line-height:1.15;
  font-weight:800;
  color:var(--ksd-ink);
  margin:18px 0 20px;
  padding:0;
  text-align:left;
}
body#cms #content-wrapper .page-title::after{ display:none; }
body#cms #content-wrapper .page-title span{
  position:static;
  z-index:auto;
  background:-webkit-linear-gradient(top, transparent 58%, var(--ksd-hi) 58%, var(--ksd-hi) 95%, transparent 95%);
  background:linear-gradient(180deg, transparent 58%, var(--ksd-hi) 58%, var(--ksd-hi) 95%, transparent 95%);
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
  padding:0 4px;
  margin:0 -2px;
  border-radius:3px;
}
body#cms #content-wrapper .page-title span::before{ content:none; display:none; }

/* ============================================================
   2. MŘÍŽKA: text + obsah dokumentu (TOC)
   Třídy ks-cms-dlouhy / ks-cms-sobsahem přidává inline skript
   (ks_obsah_stranky.tpl) — žádné :has().
   ============================================================ */
body#cms .ks-cms{ margin-bottom:44px; }

@media (min-width:1200px){
  /* text + mezera + obsah na střed; levá hrana textu zůstává pod titulkem */
  body#cms.ks-cms-sobsahem #main{
    max-width:calc(var(--ksd-cteci) + var(--ksd-obsah-mezera) + var(--ksd-obsah-sirka));
    margin-left:auto;
    margin-right:auto;
  }
  body#cms.ks-cms-sobsahem .ks-cms{
    display:grid;
    grid-template-columns:minmax(0,1fr) var(--ksd-obsah-sirka);
    gap:var(--ksd-obsah-mezera);
    -webkit-box-align:start;
    align-items:start;
  }
  body#cms.ks-cms-sobsahem .ks-cms-telo{ grid-column:1; grid-row:1; min-width:0; }
  body#cms.ks-cms-sobsahem .ks-cms-obsah{ grid-column:2; grid-row:1; }
}

/* ============================================================
   3. KARTA DOKUMENTU + TYPOGRAFIE (.ks-cms-doc)
   ============================================================ */
body#cms .ks-cms-doc{
  padding:28px 32px 30px;
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  font-family:var(--ksd-font);
  font-weight:500;
  font-size:15px;
  line-height:1.65;
  color:var(--ksd-text);
  overflow-wrap:break-word;
  word-wrap:break-word;
}

body#cms .ks-cms-doc h2{
  margin:34px 0 12px;
  font-family:var(--ksd-font);
  font-size:22px;
  line-height:1.25;
  font-weight:800;
  color:var(--ksd-ink);
  padding-bottom:8px;
  border-bottom:1px solid var(--ksd-line);
}
body#cms .ks-cms-doc h2:first-child{ margin-top:0; }
body#cms .ks-cms-doc h3{
  margin:22px 0 8px;
  font-family:var(--ksd-font);
  font-size:16.5px;
  line-height:1.35;
  font-weight:700;
  color:var(--ksd-ink);
}
/* nadpis s kotvou nesmí skončit pod zafixovanou lištou (sedí s JS prahem 100) */
body#cms .ks-cms-doc .ks-cms-kotva{ scroll-margin-top:100px; }
body#cms .ks-cms-doc [id]{ scroll-margin-top:100px; }

body#cms .ks-cms-doc p{ margin:0 0 14px; }
body#cms .ks-cms-doc ul,
body#cms .ks-cms-doc ol{ margin:0 0 16px; padding-left:22px; }
/* theme resetuje list-style — v dokumentu odrážky chceme */
body#cms .ks-cms-doc ul{ list-style:disc outside; }
body#cms .ks-cms-doc ul ul{ list-style:circle outside; }
body#cms .ks-cms-doc ol{ list-style:decimal outside; }
body#cms .ks-cms-doc li{ margin:0 0 8px; }
body#cms .ks-cms-doc li::marker{ color:var(--ksd-coral-deep); }
body#cms .ks-cms-doc ul ul,
body#cms .ks-cms-doc ul ol,
body#cms .ks-cms-doc ol ul{ margin:8px 0 0; }
body#cms .ks-cms-doc strong{ color:var(--ksd-ink); font-weight:700; }

/* perex a účinnost */
body#cms .ks-cms-doc .ks-cms-perex{
  font-size:16.5px;
  font-weight:600;
  color:var(--ksd-ink);
  margin:0 0 18px;
}
body#cms .ks-cms-doc .ks-cms-ucinnost{
  margin:26px 0 0;
  padding-top:14px;
  border-top:1px solid var(--ksd-line);
  font-size:13.5px;
  color:var(--ksd-muted);
  font-weight:600;
}

/* odkazy v textu: globální a:link…{color:#777} má (0,3,1), tady (1,2,2) */
body#cms .ks-cms-doc a:link,
body#cms .ks-cms-doc a:visited{
  color:var(--ksd-coral-deep);
  font-weight:600;
  text-decoration:underline;
  -webkit-text-decoration-color:rgba(224,106,106,.4);
  text-decoration-color:rgba(224,106,106,.4);
}
body#cms .ks-cms-doc a:hover{ color:var(--ksd-coral); text-decoration:underline; }

/* pilulková tlačítka dokumentu (PDF formuláře) */
body#cms .ks-cms-doc .ks-cms-akce{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -ms-flex-wrap:wrap; flex-wrap:wrap;
  gap:10px;
  margin:0 0 22px;
}
body#cms .ks-cms-doc a.ks-btn-doc,
body#cms .ks-cms-doc a.ks-btn-doc:link,
body#cms .ks-cms-doc a.ks-btn-doc:visited{
  display:-webkit-inline-box; display:-ms-inline-flexbox; display:inline-flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  gap:8px;
  min-height:42px;
  padding:9px 20px;
  background:var(--ksd-surface);
  border:1.5px solid var(--ksd-line-strong);
  border-radius:100px;
  font-weight:700;
  font-size:14px;
  line-height:1.2;
  color:var(--ksd-ink);
  text-decoration:none;
  -webkit-transition:border-color .12s ease, box-shadow .12s ease;
  transition:border-color .12s ease, box-shadow .12s ease;
}
body#cms .ks-cms-doc a.ks-btn-doc::before{
  content:"";
  width:16px; height:16px;
  -ms-flex-negative:0; flex-shrink:0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E06A6A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12'/%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3Cpath d='M4 20h16'/%3E%3C/svg%3E") center/contain no-repeat;
}
body#cms .ks-cms-doc a.ks-btn-doc:hover{
  border-color:var(--ksd-ink);
  color:var(--ksd-ink);
  box-shadow:var(--ksd-sh-sm);
  text-decoration:none;
}

/* tabulky: obal .ks-cms-tab má vlastní vodorovný scroll (mobil nesmí
   scrollovat celou stránku) a nese rámeček */
body#cms .ks-cms-doc .ks-cms-tab{
  margin:0 0 18px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r-s);
}
body#cms .ks-cms-doc table{
  width:100%;
  max-width:100%;
  margin:0;
  border-collapse:collapse;
  font-size:14.5px;
}
body#cms .ks-cms-doc th,
body#cms .ks-cms-doc td{
  padding:10px 14px;
  border:1px solid var(--ksd-line);
  border-left:0;
  border-right:0;
  text-align:left;
  vertical-align:top;
  line-height:1.5;
  color:var(--ksd-text);
}
body#cms .ks-cms-doc th{
  background:var(--ksd-cream2);
  font-weight:700;
  color:var(--ksd-ink);
  white-space:nowrap;
}
body#cms .ks-cms-doc th + th,
body#cms .ks-cms-doc th + td,
body#cms .ks-cms-doc td + th,
body#cms .ks-cms-doc td + td{ border-left:1px solid var(--ksd-line); }
body#cms .ks-cms-doc thead tr:first-child th,
body#cms .ks-cms-doc tbody tr:first-child th,
body#cms .ks-cms-doc tbody tr:first-child td{ border-top:0; }
body#cms .ks-cms-doc tbody tr:last-child th,
body#cms .ks-cms-doc tbody tr:last-child td{ border-bottom:0; }
/* ceník dopravy se na úzkém displeji scrolluje uvnitř obalu */
body#cms .ks-cms-doc .ks-cms-tab table{ min-width:460px; }

/* ============================================================
   4. OBSAH DOKUMENTU (TOC panel), vzor baseball-shop 17.5
   ============================================================ */
body#cms .ks-cms-obsah{
  margin:0 0 18px;
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  overflow:hidden;
  font-family:var(--ksd-font);
}

body#cms .ks-cms-obsah-prepinac{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;
  gap:10px;
  width:100%;
  box-sizing:border-box;
  margin:0;
  padding:13px 16px;
  background:var(--ksd-cream2);
  border:0;
  border-bottom:1px solid var(--ksd-line);
  font-family:var(--ksd-font);
  font-size:14px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.4px;
  text-transform:uppercase;
  text-align:left;
  color:var(--ksd-ink);
  cursor:pointer;
  -webkit-transition:color .15s ease;
  transition:color .15s ease;
}
body#cms .ks-cms-obsah-prepinac:hover{ color:var(--ksd-coral-deep); }
body#cms .ks-cms-obsah-prepinac:focus-visible{
  outline:2px solid var(--ksd-coral);
  outline-offset:-2px;
}
body#cms .ks-cms-obsah-sipka{
  -ms-flex-negative:0; flex-shrink:0;
  color:var(--ksd-muted);
  -webkit-transform:rotate(180deg);
  transform:rotate(180deg);
  -webkit-transition:-webkit-transform .15s ease;
  transition:transform .15s ease;
}

body#cms .ks-cms-obsah-seznam{
  margin:0;
  padding:6px 0;
  list-style:none;
}
body#cms .ks-cms-obsah-polozka{ margin:0; }
body#cms .ks-cms-obsah-odkaz,
body#cms a.ks-cms-obsah-odkaz:link,
body#cms a.ks-cms-obsah-odkaz:visited{
  display:block;
  padding:6px 16px 6px 14px;
  border-left:2px solid transparent;
  font-size:13.5px;
  font-weight:600;
  line-height:1.45;
  color:var(--ksd-text);
  text-decoration:none;
  -webkit-transition:color .15s ease, border-color .15s ease, background .15s ease;
  transition:color .15s ease, border-color .15s ease, background .15s ease;
}
body#cms a.ks-cms-obsah-odkaz:hover,
body#cms a.ks-cms-obsah-odkaz:focus{ color:var(--ksd-coral-deep); text-decoration:none; }
body#cms .ks-cms-obsah-polozka--niz .ks-cms-obsah-odkaz,
body#cms .ks-cms-obsah-polozka--niz a.ks-cms-obsah-odkaz:link,
body#cms .ks-cms-obsah-polozka--niz a.ks-cms-obsah-odkaz:visited{
  padding-left:28px;
  font-size:13px;
  font-weight:500;
  color:var(--ksd-muted);
}
/* aktivní sekce (třídu přepíná custom.js podle scrollu) */
body#cms a.ks-cms-obsah-odkaz.je-aktivni,
body#cms a.ks-cms-obsah-odkaz.je-aktivni:link,
body#cms a.ks-cms-obsah-odkaz.je-aktivni:visited{
  background:var(--ksd-cream2);
  border-left-color:var(--ksd-coral-deep);
  font-weight:700;
  color:var(--ksd-ink);
}

/* sbalený stav: seznam pryč, šipka dolů */
body#cms .ks-cms-obsah--sbaleno .ks-cms-obsah-seznam{ display:none; }
body#cms .ks-cms-obsah--sbaleno .ks-cms-obsah-prepinac{ border-bottom-color:transparent; }
body#cms .ks-cms-obsah--sbaleno .ks-cms-obsah-sipka{
  -webkit-transform:rotate(0deg);
  transform:rotate(0deg);
}

@media (min-width:1200px){
  body#cms .ks-cms-obsah{
    position:-webkit-sticky;
    position:sticky;
    top:96px;
    display:-webkit-box; display:-ms-flexbox; display:flex;
    -webkit-box-orient:vertical; -webkit-box-direction:normal;
    -ms-flex-direction:column; flex-direction:column;
    max-height:calc(100vh - 120px);
    margin:0;
  }
  body#cms .ks-cms-obsah-prepinac{ -webkit-box-flex:0; -ms-flex:0 0 auto; flex:0 0 auto; }
  body#cms .ks-cms-obsah-seznam{ -webkit-box-flex:1; -ms-flex:1 1 auto; flex:1 1 auto; overflow-y:auto; }
}

@media (prefers-reduced-motion:reduce){
  body#cms .ks-cms-obsah-sipka,
  body#cms .ks-cms-obsah-odkaz,
  body#cms .ks-cms-obsah-prepinac{ -webkit-transition:none; transition:none; }
}

/* ============================================================
   5. KONTAKT (id 4): karty + formulář + mapa
   ============================================================ */
body#cms .ks-cms-kont,
body#cms .ks-cms-kform-head{ font-family:var(--ksd-font); }

/* perex sdílený kontakt/marketing */
body#cms .ks-cms-lead{
  font-family:var(--ksd-font);
  font-size:17px;
  font-weight:600;
  line-height:1.6;
  color:var(--ksd-ink);
  max-width:72ch;
  margin:0 0 24px;
}

body#cms .ks-cms-kont .kk-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
body#cms .ks-cms-kont .kk{
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:20px 22px;
}
body#cms .ks-cms-kont .kk h2{
  margin:0 0 10px;
  font-family:var(--ksd-font);
  font-size:13px;
  font-weight:800;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:var(--ksd-coral-deep);
}
body#cms .ks-cms-kont .kk p{ margin:0 0 8px; font-size:14.5px; line-height:1.55; color:var(--ksd-text); }
body#cms .ks-cms-kont .kk .kk-adr{ font-weight:700; color:var(--ksd-ink); font-size:15px; }
body#cms .ks-cms-kont .kk .kk-note{ font-size:13px; color:var(--ksd-muted); font-weight:500; margin-bottom:0; }
body#cms .ks-cms-kont .kk-line{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  gap:10px;
  font-weight:700;
}
body#cms .ks-cms-kont .kk-line .ico{
  width:34px; height:34px;
  -ms-flex-negative:0; flex-shrink:0;
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;
  background:var(--ksd-cream);
  border-radius:50%;
  color:var(--ksd-ink);
}
body#cms .ks-cms-kont .kk-line .ico svg{ width:16px; height:16px; display:block; }
body#cms .ks-cms-kont .kk-line a,
body#cms .ks-cms-kont .kk-line a:link,
body#cms .ks-cms-kont .kk-line a:visited{
  color:var(--ksd-ink);
  font-size:15.5px;
  font-weight:800;
  text-decoration:none;
}
body#cms .ks-cms-kont .kk-line a:hover{ color:var(--ksd-coral-deep); }
body#cms .ks-cms-kont table.kk-doba{ width:100%; border-collapse:collapse; font-size:14.5px; }
body#cms .ks-cms-kont table.kk-doba td{
  padding:6px 0;
  border-bottom:1px dashed var(--ksd-line);
  color:var(--ksd-text);
}
body#cms .ks-cms-kont table.kk-doba tr:last-child td{ border-bottom:0; }
body#cms .ks-cms-kont table.kk-doba td:first-child{ font-weight:800; color:var(--ksd-ink); width:74px; }

/* sloupec formuláře: karta */
body#cms .ks-cms-kontakt-sec .ks-cms-kform-col > .elementor-column-wrap,
body#cms .ks-cms-kontakt-sec .ks-cms-kform-col > .elementor-column-wrap > .elementor-widget-wrap{ height:100%; }
body#cms .ks-cms-kform-head h2{
  margin:0 0 4px;
  font-family:var(--ksd-font);
  font-size:22px;
  font-weight:800;
  color:var(--ksd-ink);
}
body#cms .ks-cms-kform-head p{
  margin:0 0 12px;
  font-family:var(--ksd-font);
  font-size:14px;
  font-weight:500;
  color:var(--ksd-muted);
}
body#cms .elementor-contactform-wrapper{
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:22px 24px;
  font-family:var(--ksd-font);
}
body#cms .elementor-contactform-wrapper .form-control-label{
  padding-top:0;
  margin-bottom:6px;
  font-family:var(--ksd-font);
  font-size:13.5px;
  font-weight:700;
  line-height:1.3;
  color:var(--ksd-ink);
}
body#cms .elementor-contactform-wrapper .form-group{ margin-bottom:14px; }
/* pilulková pole: legacy .page-content .form-control má border/radius/
   background s !important — nutno přebít stejnou zbraní */
body#cms .page-content .elementor-contactform-wrapper .form-control{
  border:1.5px solid var(--ksd-line-strong) !important;
  border-radius:100px !important;
  background:var(--ksd-surface) !important;
  height:auto !important;
  min-height:44px;
  padding:9px 18px;
  font-family:var(--ksd-font);
  font-size:15px;
  font-weight:500;
  color:var(--ksd-ink);
  box-shadow:none;
  -webkit-appearance:none;
  appearance:none;
}
body#cms .page-content .elementor-contactform-wrapper textarea.form-control{
  border-radius:var(--ksd-r) !important;
  min-height:150px;
  height:auto !important;
  line-height:1.5;
  resize:vertical;
}
body#cms .page-content .elementor-contactform-wrapper .form-control:focus{
  border-color:var(--ksd-coral) !important;
  outline:0;
  box-shadow:0 0 0 3px rgba(240,126,126,.18);
}
body#cms .elementor-contactform-wrapper .form-control::-webkit-input-placeholder{ color:var(--ksd-muted); }
body#cms .elementor-contactform-wrapper .form-control::placeholder{ color:var(--ksd-muted); opacity:1; }
/* GDPR souhlas */
body#cms .elementor-contactform-wrapper .psgdpr_consent_message{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  gap:8px;
  margin:0;
  font-size:13px;
  font-weight:500;
  color:var(--ksd-text);
  cursor:pointer;
}
/* žluté CTA Odeslat */
body#cms .elementor-contactform-wrapper .btn-elementor-send{
  display:inline-block;
  min-height:44px;
  padding:10px 26px;
  background:var(--ksd-yellow) !important;
  border:0 !important;
  border-radius:100px !important;
  font-family:var(--ksd-font);
  font-size:15px;
  font-weight:800;
  line-height:1.2;
  color:var(--ksd-yellow-ink) !important;
  cursor:pointer;
  -webkit-transition:background .12s ease, box-shadow .12s ease;
  transition:background .12s ease, box-shadow .12s ease;
  -webkit-appearance:none;
  appearance:none;
}
body#cms .elementor-contactform-wrapper .btn-elementor-send:hover:not(:disabled){
  background:var(--ksd-yellow-deep) !important;
  color:var(--ksd-yellow-ink) !important;
  box-shadow:var(--ksd-sh-sm);
}
body#cms .elementor-contactform-wrapper .btn-elementor-send:disabled{
  opacity:.55;
  cursor:not-allowed;
}

/* mapa: zaoblený rám v kartě */
body#cms .ks-cms-mapa-sec{ margin:26px 0 44px; }
body#cms .ks-cms-mapa-sec .elementor-custom-embed{
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  overflow:hidden;
  box-shadow:var(--ksd-sh-sm);
  background:var(--ksd-cream2);
}
body#cms .ks-cms-mapa-sec iframe{ display:block; width:100%; border:0; }

/* ============================================================
   6. MARKETINGOVÉ STRÁNKY (3, 5, 6) — doplňky ke stylu .ks-hp2
   (základ: custom.css .ks-hp2 — tokeny, .btn, .hl, .about,
   .proskoly, .split, .bazar)
   ============================================================ */
body#cms .ks-cms-mkt{ padding-bottom:52px; }
body#cms .ks-cms-mkt .ks-cms-lead{ margin:0 0 6px; }
/* první sekce hned pod perexem nepotřebuje plný odstup homepage */
body#cms .ks-cms-mkt section.proskoly,
body#cms .ks-cms-mkt section.split,
body#cms .ks-cms-mkt section.about{ margin-top:34px; }

/* O nás: řádek faktů */
body#cms .ks-cms-fakta{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin:24px 0 10px;
}
body#cms .ks-cms-fakta .fakt{
  background:var(--surface,#FFFFFF);
  border:1px solid var(--line,#EDE7D8);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:16px 18px;
}
body#cms .ks-cms-fakta .fakt b{
  display:block;
  font-size:15.5px;
  font-weight:800;
  color:var(--ksd-ink);
  margin-bottom:2px;
}
body#cms .ks-cms-fakta .fakt span{
  font-size:13px;
  font-weight:600;
  color:var(--ksd-muted);
}

/* O nás: pro koho tu jsme (karty s odkazy) */
body#cms .ks-cms-prokoho{ margin-top:48px; }
body#cms .ks-cms-prokoho h2{ font-size:28px; margin-bottom:18px; }
body#cms .ks-cms-prokoho .pk-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
body#cms .ks-cms-prokoho a.pk,
body#cms .ks-cms-prokoho a.pk:link,
body#cms .ks-cms-prokoho a.pk:visited{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-orient:vertical; -webkit-box-direction:normal;
  -ms-flex-direction:column; flex-direction:column;
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:22px;
  color:var(--ksd-text);
  text-decoration:none;
  -webkit-transition:box-shadow .15s ease, -webkit-transform .15s ease;
  transition:box-shadow .15s ease, transform .15s ease;
}
body#cms .ks-cms-prokoho a.pk:hover{
  -webkit-transform:translateY(-3px);
  transform:translateY(-3px);
  box-shadow:var(--ksd-sh);
  text-decoration:none;
  color:var(--ksd-text);
}
body#cms .ks-cms-prokoho .pk b{
  font-size:17px;
  font-weight:800;
  color:var(--ksd-ink);
  margin-bottom:8px;
}
body#cms .ks-cms-prokoho .pk p{
  font-size:13.5px;
  font-weight:500;
  line-height:1.55;
  color:var(--ksd-text);
  margin:0 0 14px;
}
body#cms .ks-cms-prokoho .pk .go{
  margin-top:auto;
  font-size:13.5px;
  font-weight:700;
  color:var(--ksd-coral-deep);
}
body#cms .ks-cms-prokoho a.pk:hover .go{ text-decoration:underline; }

/* O nás: pruh důvěry Heureka (bez vymyšlených čísel) */
body#cms .ks-cms-duvera{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  gap:18px;
  margin-top:48px;
  background:var(--ksd-cream2);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  padding:20px 24px;
}
body#cms .ks-cms-duvera img{ width:64px; height:auto; -ms-flex-negative:0; flex-shrink:0; }
body#cms .ks-cms-duvera p{ margin:0; font-size:15px; font-weight:600; color:var(--ksd-text); }
body#cms .ks-cms-duvera p b{ color:var(--ksd-ink); }
body#cms .ks-cms-duvera a,
body#cms .ks-cms-duvera a:link,
body#cms .ks-cms-duvera a:visited{ color:var(--ksd-coral-deep); font-weight:700; text-decoration:none; }
body#cms .ks-cms-duvera a:hover{ text-decoration:underline; }

/* Pro školy: kroky objednání */
body#cms .ks-cms-ps-jak{ margin-top:48px; }
body#cms .ks-cms-ps-jak h2{ font-size:28px; margin-bottom:18px; }
body#cms .ks-cms-ps-jak .jak-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
body#cms .ks-cms-ps-jak .jak{
  position:relative;
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:24px 26px;
}
body#cms .ks-cms-ps-jak .jak .num{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align:center; -ms-flex-align:center; align-items:center;
  -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;
  width:36px; height:36px;
  margin-bottom:12px;
  background:var(--ksd-yellow);
  border-radius:50%;
  font-size:16px;
  font-weight:800;
  color:var(--ksd-yellow-ink);
}
body#cms .ks-cms-ps-jak .jak h3{ font-size:19px; margin-bottom:10px; }
body#cms .ks-cms-ps-jak .jak p{ font-size:14.5px; font-weight:500; line-height:1.6; color:var(--ksd-text); margin:0 0 10px; }
body#cms .ks-cms-ps-jak .jak p:last-child{ margin-bottom:0; }
body#cms .ks-cms-ps-jak .jak a,
body#cms .ks-cms-ps-jak .jak a:link,
body#cms .ks-cms-ps-jak .jak a:visited{ color:var(--ksd-coral-deep); font-weight:700; text-decoration:underline; }

/* Pro školy: závěrečné CTA */
body#cms .ks-cms-ps-cta{
  margin-top:48px;
  background:var(--ksd-cream);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:38px 40px;
  text-align:center;
}
body#cms .ks-cms-ps-cta h2{ font-size:26px; margin-bottom:10px; }
body#cms .ks-cms-ps-cta p{
  max-width:64ch;
  margin:0 auto 20px;
  font-size:15px;
  font-weight:600;
  color:var(--ksd-text);
}

/* Akce: s kým spolupracujeme (chipy) */
body#cms .ks-cms-spolup{
  margin-top:48px;
  background:var(--ksd-surface);
  border:1px solid var(--ksd-line);
  border-radius:var(--ksd-r);
  box-shadow:var(--ksd-sh-sm);
  padding:32px 36px;
  text-align:center;
}
body#cms .ks-cms-spolup h2{ font-size:26px; margin-bottom:6px; }
body#cms .ks-cms-spolup > p{ font-size:14.5px; font-weight:600; color:var(--ksd-muted); margin:0 0 18px; }
body#cms .ks-cms-spolup .chips{
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -ms-flex-wrap:wrap; flex-wrap:wrap;
  -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;
  gap:10px;
  list-style:none;
  margin:0 0 22px;
  padding:0;
}
body#cms .ks-cms-spolup .chips li{
  background:var(--ksd-cream2);
  border:1px solid var(--ksd-line);
  border-radius:100px;
  padding:8px 16px;
  font-size:14px;
  font-weight:700;
  color:var(--ksd-ink);
}

/* ============================================================
   7. RESPONZIVITA (bez horizontálního scrollu na 390)
   ============================================================ */
@media (max-width:1199.98px){
  body#cms .ks-cms-fakta{ grid-template-columns:repeat(2,1fr); }
  body#cms .ks-cms-prokoho .pk-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:991.98px){
  body#cms .ks-cms-doc{ padding:22px 22px 24px; }
  /* kontakt: formulář pod karty (bootstrap col-md už stackuje, jen odstupy) */
  body#cms .ks-cms-kform-head h2{ margin-top:26px; }
}
@media (max-width:767.98px){
  body#cms #content-wrapper .page-title{ font-size:26px; margin:10px 0 16px; }
  body#cms .ks-cms-doc{ padding:18px 16px 20px; font-size:14.5px; }
  body#cms .ks-cms-doc h2{ font-size:19px; margin-top:28px; }
  body#cms .ks-cms-kont .kk-grid{ grid-template-columns:1fr; }
  body#cms .ks-cms-ps-jak .jak-grid{ grid-template-columns:1fr; }
  body#cms .ks-cms-ps-cta{ padding:28px 20px; }
  body#cms .ks-cms-spolup{ padding:24px 18px; }
  body#cms .ks-cms-lead{ font-size:15.5px; }
  /* iOS: inputy minimálně 16 px, jinak zoomuje */
  body#cms .page-content .elementor-contactform-wrapper .form-control{ font-size:16px; }
}
@media (max-width:575.98px){
  body#cms .ks-cms-fakta{ grid-template-columns:1fr 1fr; gap:10px; }
  body#cms .ks-cms-prokoho .pk-grid{ grid-template-columns:1fr; }
  body#cms .ks-cms-duvera{
    -webkit-box-orient:vertical; -webkit-box-direction:normal;
    -ms-flex-direction:column; flex-direction:column;
    text-align:center;
  }
  body#cms .ks-cms-doc .ks-cms-akce a.ks-btn-doc{ width:100%; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; }
}

/* Sekce "Za pultem i na telefonu": foto majitelky, jemne utlumene, at nesviti
   proti teple palete webu (Filip 1.9.2026) */
body#cms .ks-cms-mkt .about-img-utlum{
  -webkit-filter:saturate(.82) contrast(.96) brightness(.99);
  filter:saturate(.82) contrast(.96) brightness(.99);
}
