/* =========================================================
   MMclaude.css – naše úpravy vzhledu e-shopu miraclonutrition.cz
   Načítá se až za soubory autora šablony (projekt/style.css).
   Všechny naše třídy, atributy a proměnné začínají „mm-“.
   ========================================================= */

/* ---------- Společné proměnné ----------
   Výchozí hodnoty pro celý web. Na stránkách značky je MMclaude.js
   přepíše barvami z MMclaude.json (data-mm-znacka na <body>). */
:root {
  --mm-barva-text: #312d2e;
  --mm-barva-pozadi: #f3f4f6;
  --mm-barva-tlacitko: #312d2e;
  --mm-barva-tlacitko-text: #ffffff;
  --mm-barva-doplnkova: #f3f4f6;

  --mm-zaobleni: 20px;
  --mm-mezera: 16px;
  --mm-mezera-velka: 40px;
  --mm-max-sirka: 1440px;
}

@media (min-width: 768px) {
  :root {
    --mm-mezera: 24px;
    --mm-mezera-velka: 80px;
  }
}

/* ---------- Logo značky v liště pod hlavičkou ----------
   Logo Eresin je široké a nízké – ve výšce loga Orca by působilo moc mohutně. */
img.menu-secondary__logo[data-mm-logo="eresin"] {
  max-height: 54px;
}

/* ---------- Proužek „TIP: ušetřete s předplatným“ pod Do košíku ----------
   Podle orcacollagen.cz. Barvy dává MMclaude.js z MMclaude.json (predplatne › barvy). */
a.mm-tip-predplatne {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4px 8px;
  width: 100%;
  margin-top: 16px;
  padding: 10px 12px;
  background-color: var(--mm-tip-pozadi, #f3f4f6);
  color: var(--mm-tip-text, #000);
  font-size: 18px;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.3s;
}
a.mm-tip-predplatne:hover,
a.mm-tip-predplatne:focus {
  opacity: 0.75;
  color: var(--mm-tip-text, #000);
  text-decoration: none;
}
.mm-tip-predplatne__puvodni { text-decoration: line-through; }
.mm-tip-predplatne__cena {
  font-size: 26px;
  font-weight: 600;
  color: var(--mm-tip-cena, #eb001b);
}

/* =========================================================
   Eresin – detailní popis produktu (8 sekcí podle wireframů)
   HTML: html/eresin-30-popis.html, vše uvnitř .mm-eresin
   ========================================================= */
.mm-eresin {
  --mm-e-cervena: #ee2722;
  --mm-e-cervena-tmava: #c8161d;
  --mm-e-text: #1a1a1a;
  --mm-e-text-sedy: #45474b;
  --mm-e-pozadi: #f3f3f2;
  --mm-e-linka: #e1e1de;
  --mm-e-tmava: #1a1a1a;
  color: var(--mm-e-text);
  font-size: 15px;
  line-height: 1.5;
  margin: 0 0 var(--mm-mezera-velka);
}
.mm-eresin *,
.mm-eresin *::before,
.mm-eresin *::after { box-sizing: border-box; }
.mm-eresin img { max-width: 100%; height: auto; display: inline-block; vertical-align: middle; }
.mm-eresin p { margin: 0; }
.mm-eresin h2,
.mm-eresin h3 { margin: 0; color: inherit; font-weight: 800; text-transform: uppercase; letter-spacing: 0; }
.mm-eresin ul,
.mm-eresin ol { margin: 0; padding: 0; list-style: none; }
/* Šablona dává seznamům v popisu odrážky a odsazení – v našich blocích je nechceme */
.mm-eresin li { margin: 0; padding: 0; line-height: 1.35; }
.mm-eresin li::before,
.mm-eresin li::marker { content: none; }

/* Společné prvky sekcí */
.mm-eresin-sekce {
  padding: 40px 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: #fff;
  scroll-margin-top: 120px;
}
.mm-eresin .mm-eresin-stitek {
  text-align: center;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--mm-e-cervena-tmava);
  margin-bottom: -14px;
}
.mm-eresin .mm-eresin-nadpis { text-align: center; font-size: 24px; line-height: 1.15; }
.mm-eresin-uvod { text-align: center; color: var(--mm-e-text-sedy); }
.mm-eresin .mm-eresin-poznamka { text-align: center; font-size: 12px; color: #6a6d72; }
.mm-eresin a.mm-eresin-tlacitko {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  background: var(--mm-e-cervena);
  color: #fff;
  border: 2px solid var(--mm-e-cervena);
  border-radius: 4px;
  font-weight: 800;
  font-size: 15px;
  letter-spacing: .5px;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .2s, border-color .2s, color .2s;
}
.mm-eresin a.mm-eresin-tlacitko:hover { background: var(--mm-e-cervena-tmava); border-color: var(--mm-e-cervena-tmava); color: #fff; }
.mm-eresin a.mm-eresin-tlacitko--obrys { background: #fff; color: var(--mm-e-text); border-color: var(--mm-e-text); }
.mm-eresin a.mm-eresin-tlacitko--obrys:hover { background: var(--mm-e-text); border-color: var(--mm-e-text); color: #fff; }

/* 1 · Úvodní banner */
.mm-eresin .mm-eresin-hero {
  position: relative;
  overflow: hidden;
  background: var(--mm-e-pozadi);
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding-top: 32px;
  padding-bottom: 32px;
}
.mm-eresin-hero::before {
  content: "";
  position: absolute;
  right: -120px;
  top: 40px;
  width: 560px;
  height: 560px;
  background: #fff;
  clip-path: polygon(50% 0, 100% 50%, 100% 100%, 50% 50%, 0 100%, 0 50%);
}
.mm-eresin-hero__text { flex: 1 1 320px; position: relative; display: flex; flex-direction: column; gap: 18px; }
.mm-eresin-hero__logo img { width: 150px; }
.mm-eresin .mm-eresin-hero__nadpis { font-size: 42px; line-height: .98; }
.mm-eresin-hero__nadpis span { color: var(--mm-e-cervena); }
.mm-eresin .mm-eresin-hero__podnadpis { font-size: 16px; color: var(--mm-e-text-sedy); }
.mm-eresin-odznaky { display: flex; flex-wrap: wrap; gap: 8px; }
.mm-eresin .mm-eresin-odznaky li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border-radius: 40px;
  font-size: 13px;
  font-weight: 600;
}
.mm-eresin-odznaky strong { font-weight: 800; font-size: 16px; color: var(--mm-e-cervena-tmava); }
.mm-eresin-hero__akce { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; }
.mm-eresin .mm-eresin-hero__cena { font-size: 14px; line-height: 1.35; color: var(--mm-e-text-sedy); }
.mm-eresin-hero__cena strong { font-size: 18px; color: var(--mm-e-text); }
.mm-eresin-hero__cena strong:empty { display: none; }
.mm-eresin-hero__obrazek { flex: 1 1 280px; position: relative; text-align: center; }
.mm-eresin-hero__obrazek img { width: 100%; max-width: 400px; }
/* Fotka přes celou pravou polovinu banneru (eresin-hero-panel.jpg, 4:5): na mobilu pod textem
   přes celou šířku sekce v poměru 4:3, na počítači pravá polovina přes celou výšku */
.mm-eresin .mm-eresin-hero__obrazek--panel { flex: 1 1 100%; margin: 16px -16px -32px; }
.mm-eresin .mm-eresin-hero__obrazek--panel > img:first-child {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 50% 75%;
}
@media (min-width: 768px) {
  .mm-eresin .mm-eresin-hero:has(.mm-eresin-hero__obrazek--panel) { min-height: 480px; }
  .mm-eresin .mm-eresin-hero:has(.mm-eresin-hero__obrazek--panel) .mm-eresin-hero__text { flex: 0 1 50%; max-width: 50%; padding-right: 32px; }
  .mm-eresin .mm-eresin-hero__obrazek--panel { position: absolute; top: 0; right: 0; bottom: 0; width: 50%; margin: 0; }
  .mm-eresin .mm-eresin-hero__obrazek--panel > img:first-child { height: 100%; aspect-ratio: auto; object-position: 50% 70%; }
}

/* 2 · Poznáváte se? */
.mm-eresin-karty { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.mm-eresin-karta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 210px;
  background: var(--mm-e-pozadi);
  border-radius: 6px;
  overflow: hidden;
}
.mm-eresin-karta__text { padding: 18px 16px; display: flex; flex-direction: column; gap: 10px; }
.mm-eresin .mm-eresin-karta__ikona {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mm-eresin .mm-eresin-karta h3 { font-size: 14px; line-height: 1.25; }
.mm-eresin .mm-eresin-karta__text p:last-child { font-size: 13px; color: var(--mm-e-text-sedy); }
.mm-eresin-karta__ilustrace { background: #2b2c2f; display: flex; }
.mm-eresin .mm-eresin-karta__ilustrace img { width: 100%; height: 100%; object-fit: cover; }
/* Fotky (na výšku 3 : 4) – výřez drží obličej v horní třetině */
.mm-eresin .mm-eresin-karta__ilustrace img[src*="/foto/"] { object-position: 50% 25%; }
.mm-eresin .mm-eresin-poznavate__zaver {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}

/* 3 · 4 pilíře */
.mm-eresin .mm-eresin-pilire {
  background:
    linear-gradient(rgba(243, 243, 242, 0.5) 0%, rgba(243, 243, 242, 0.35) 60%, rgba(243, 243, 242, 0) 80%),
    url("/user/documents/upload/detail-popis/eresin/foto/pozadi-pilire-sacky.jpg") center bottom / cover no-repeat,
    var(--mm-e-pozadi);
  /* dole na desce leží sáčky – necháme pod dlaždicemi místo, ať jsou vidět */
  padding-bottom: clamp(110px, 12vw, 170px);
}
/* Mobil: sekce je vysoká a „cover“ by fotku přiblížil (sáčky by zmizely) – fotka leží jen u spodního okraje,
   nad ní barva stěny z fotky */
@media (max-width: 767px) {
  .mm-eresin .mm-eresin-pilire {
    background:
      url("/user/documents/upload/detail-popis/eresin/foto/pozadi-pilire-sacky.jpg") 40% bottom / 240% auto no-repeat,
      #ece5df;
    padding-bottom: 150px;
  }
}
.mm-eresin-pilire__obsah { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; }
.mm-eresin-pilire__sacek {
  flex: 1 1 130px;
  max-width: 170px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
}
.mm-eresin .mm-eresin-pilire__sacek img { width: 74px; transform: rotate(-4deg); filter: drop-shadow(0 10px 14px rgba(0, 0, 0, .18)); }
.mm-eresin-pilire__sacek strong { font-size: 22px; font-weight: 800; color: var(--mm-e-cervena); }
.mm-eresin-pilire__dlazdice { flex: 999 1 420px; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.mm-eresin-pilir {
  background: #fff;
  border-top: 4px solid var(--mm-e-cervena);
  border-radius: 4px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mm-eresin .mm-eresin-pilir h3 { display: flex; align-items: center; gap: 10px; font-size: 17px; }
.mm-eresin .mm-eresin-pilir p { font-size: 14px; color: var(--mm-e-text-sedy); }

/* 4 · Co je uvnitř */
.mm-eresin-slozeni__obsah { display: flex; flex-wrap: wrap; gap: 32px; align-items: center; justify-content: center; }
.mm-eresin-graf {
  flex: 0 0 260px;
  height: 260px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mm-eresin .mm-eresin-graf img { position: absolute; left: 0; top: 0; width: 260px; height: 260px; }
.mm-eresin .mm-eresin-graf__stred { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; }
.mm-eresin-graf__stred strong { font-size: 64px; font-weight: 800; line-height: .95; color: var(--mm-e-cervena); }
.mm-eresin-graf__stred span { font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.mm-eresin-graf__stred em {
  font-style: normal;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 2px solid var(--mm-e-linka);
}
.mm-eresin-graf__stred small { font-size: 11px; color: #6a6d72; }
.mm-eresin-skupiny { flex: 1 1 300px; display: flex; flex-direction: column; }
.mm-eresin-skupina {
  position: relative;
  padding: 12px 0 12px 26px;
  border-bottom: 1px solid var(--mm-e-linka);
  font-size: 12.5px;
  color: var(--mm-e-text-sedy);
}
.mm-eresin-skupina::before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 14px;
  height: 14px;
  border-radius: 3px;
  background: var(--mm-e-cervena);
}
.mm-eresin-skupina--karnitin::before { background: var(--mm-e-text); }
.mm-eresin-skupina--byliny::before { background: #9a9ea4; }
.mm-eresin-skupina--vitaminy::before { background: #f7b2af; }
.mm-eresin .mm-eresin-skupina__hlava {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 3px;
  color: var(--mm-e-text);
}
.mm-eresin-skupina__hlava strong { font-size: 15px; font-weight: 800; text-transform: uppercase; }
.mm-eresin-skupina__hlava span { font-size: 16px; font-weight: 800; white-space: nowrap; }
.mm-eresin-skupina--amino .mm-eresin-skupina__hlava span { color: var(--mm-e-cervena-tmava); }

/* Rozbalovací bloky (Kompletní složení, Časté otázky) – otevírá je MMclaude.js */
.mm-eresin .mm-eresin-rozbal__tlacitko {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 12px 0;
  margin: 0;
  background: none;
  border: 0;
  color: var(--mm-e-text);
  font: inherit;
  font-size: 15px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.mm-eresin .mm-eresin-rozbal__tlacitko::after {
  content: "+";
  flex: 0 0 auto;
  font-size: 22px;
  font-weight: 600;
  line-height: 1;
}
.mm-eresin .mm-eresin-rozbal__tlacitko[aria-expanded="true"]::after { content: "–"; color: var(--mm-e-cervena); }
.mm-eresin-rozbal__obsah { padding-bottom: 14px; font-size: 14px; color: var(--mm-e-text-sedy); }
.mm-eresin-rozbal__tlacitko[aria-expanded="false"] + .mm-eresin-rozbal__obsah { display: none; }
.mm-eresin-skupiny .mm-eresin-rozbal { margin-top: 18px; }
.mm-eresin .mm-eresin-skupiny .mm-eresin-rozbal__tlacitko {
  width: auto;
  min-height: 44px;
  padding: 0 18px;
  border: 2px solid var(--mm-e-text);
  border-radius: 4px;
  font-size: 14px;
}
.mm-eresin .mm-eresin-tabulka { width: 100%; margin: 14px 0 8px; border-collapse: collapse; font-size: 13px; }
.mm-eresin .mm-eresin-tabulka th,
.mm-eresin .mm-eresin-tabulka td { padding: 7px 8px; border: 0; border-bottom: 1px solid var(--mm-e-linka); text-align: left; background: none; }
.mm-eresin .mm-eresin-tabulka th { color: var(--mm-e-text); font-weight: 700; }
.mm-eresin .mm-eresin-tabulka td:not(:first-child),
.mm-eresin .mm-eresin-tabulka th:not(:first-child) { text-align: right; white-space: nowrap; }

/* 5 · Nápoj vs. kapsle (tmavá sekce) */
.mm-eresin .mm-eresin-kapsle {
  background:
    linear-gradient(rgba(26, 26, 26, 0.55), rgba(26, 26, 26, 0.8)),
    url("/user/documents/upload/detail-popis/eresin/foto/pozadi-kapsle.jpg") center / cover no-repeat,
    var(--mm-e-tmava);
  color: #fff;
}
/* Sloupce srovnání nad fotkou: lehce průhledné, ať pozadí prosvítá */
.mm-eresin .mm-eresin-kapsle .mm-eresin-srovnani__sloupec { background: rgba(34, 35, 37, 0.88); }
.mm-eresin .mm-eresin-kapsle .mm-eresin-srovnani__sloupec--eresin { background: rgba(38, 39, 41, 0.9); }
/* Fotky ve srovnání (stojící sáček + sklenice, ruka s kapslemi) */
.mm-eresin .mm-eresin-srovnani__obrazky img[src*="/foto/"] { width: auto; max-height: 150px; transform: none; }
.mm-eresin .mm-eresin-srovnani__obrazky img[src*="sacek-stojici"] { transform: rotate(-6deg); }
.mm-eresin .mm-eresin-srovnani__obrazky img[src*="kapsle-ruka"] {
  max-width: 100%;
  max-height: 150px;
  /* fotka je u zápěstí uříznutá – pravý okraj se ztratí do pozadí */
  -webkit-mask-image: linear-gradient(90deg, #000 78%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 78%, transparent 100%);
}
.mm-eresin .mm-eresin-kapsle .mm-eresin-stitek { color: #ff7b77; }
.mm-eresin .mm-eresin-kapsle .mm-eresin-poznamka { color: #a9adb3; }
.mm-eresin-srovnani { display: flex; flex-wrap: wrap; gap: 16px; }
.mm-eresin-srovnani__sloupec {
  flex: 1 1 280px;
  background: #222325;
  border: 2px solid #33353a;
  border-radius: 8px;
  padding: 22px 24px;
}
.mm-eresin-srovnani__sloupec--eresin { background: #262729; border-color: var(--mm-e-cervena); }
.mm-eresin .mm-eresin-srovnani__obrazky {
  height: 150px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 18px;
  margin-bottom: 14px;
}
.mm-eresin .mm-eresin-srovnani__obrazky img:first-child:not(:last-child) { width: 36px; transform: rotate(-6deg); }
.mm-eresin .mm-eresin-srovnani__sloupec h3 { padding-bottom: 10px; font-size: 18px; color: #c9ccd0; text-transform: none; font-weight: 700; }
.mm-eresin .mm-eresin-srovnani__sloupec--eresin h3 { color: #fff; font-size: 20px; font-weight: 800; text-transform: uppercase; }
.mm-eresin-srovnani__sloupec h3 span { font-size: 14px; font-weight: 500; color: #c9ccd0; text-transform: none; }
.mm-eresin .mm-eresin-srovnani dl { margin: 0; display: grid; grid-template-columns: auto auto; }
.mm-eresin .mm-eresin-srovnani dt,
.mm-eresin .mm-eresin-srovnani dd { margin: 0; padding: 12px 0; border-top: 1px solid #33353a; }
.mm-eresin .mm-eresin-srovnani dt { font-size: 13px; color: #a9adb3; font-weight: 400; }
.mm-eresin .mm-eresin-srovnani dd { text-align: right; font-size: 15px; color: #c9ccd0; }
.mm-eresin .mm-eresin-srovnani__sloupec--eresin dt,
.mm-eresin .mm-eresin-srovnani__sloupec--eresin dd { border-top-color: #3a3c40; }
.mm-eresin .mm-eresin-srovnani__sloupec--eresin dd { color: #fff; font-weight: 800; font-size: 16px; }
.mm-eresin-srovnani__sloupec--eresin dd::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  vertical-align: -3px;
  background: url("https://cdn.myshoptet.com/usr/www.miraclonutrition.cz/user/documents/upload/detail-popis/eresin/ikony/fajfka.svg") no-repeat center / contain;
}

/* 6 · Ranní rituál */
.mm-eresin-kroky { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; counter-reset: mm-krok; }
.mm-eresin .mm-eresin-kroky li { display: flex; flex-direction: column; gap: 12px; counter-increment: mm-krok; }
.mm-eresin .mm-eresin-kroky li > p { display: flex; gap: 12px; align-items: baseline; font-size: 15px; font-weight: 600; line-height: 1.35; }
.mm-eresin-kroky li > p::before { content: counter(mm-krok); font-size: 32px; font-weight: 800; line-height: 1; color: var(--mm-e-cervena); }
.mm-eresin-kroky__foto {
  height: 170px;
  background: var(--mm-e-pozadi);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.mm-eresin .mm-eresin-kroky li:first-child .mm-eresin-kroky__foto img { width: 37px; transform: rotate(-18deg); }
.mm-eresin .mm-eresin-kroky__foto img.mm-eresin-foto { width: 100%; height: 100%; object-fit: cover; transform: none; }

/* 7 · Pro koho */
.mm-eresin .mm-eresin-prokoho { background: var(--mm-e-pozadi); }
/* 4 · Co je uvnitř – kolečka s fotkou každé látky pod výčtem skupiny */
.mm-eresin p.mm-eresin-kolecka { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 0; }
.mm-eresin .mm-eresin-kolecka img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 1px solid #e1e1de; background: #fff; }
@media (max-width: 767px) {
  .mm-eresin .mm-eresin-kolecka img { width: 32px; height: 32px; }
}

/* Počítač: nižší sekce „4 pilíře“ a „Nápoj vs. kapsle“ (menší sáček a obrázky, hustší tabulka) */
@media (min-width: 768px) {
  .mm-eresin .mm-eresin-pilire,
  .mm-eresin .mm-eresin-kapsle { padding-top: 36px; gap: 18px; }
  .mm-eresin .mm-eresin-pilire__sacek img { width: 58px; }
  .mm-eresin .mm-eresin-pilir { padding: 16px 18px; }
  .mm-eresin .mm-eresin-kapsle { padding-bottom: 32px; }
  .mm-eresin .mm-eresin-srovnani__obrazky { height: 112px; margin-bottom: 8px; }
  .mm-eresin .mm-eresin-srovnani__obrazky img[src*="/foto/"] { max-height: 112px; }
  .mm-eresin .mm-eresin-srovnani__obrazky img[src*="kapsle-ruka"] { max-height: 112px; }
  .mm-eresin .mm-eresin-srovnani__sloupec { padding: 18px 22px; }
  .mm-eresin .mm-eresin-srovnani dt,
  .mm-eresin .mm-eresin-srovnani dd { padding: 8px 0; }
}

/* Sekce Pro koho – nižší (menší okraje sekce, užší karty) */
.mm-eresin .mm-eresin-prokoho { padding-top: 32px; padding-bottom: 32px; gap: 16px; }
.mm-eresin .mm-eresin-prokoho .mm-eresin-nadpis { margin-bottom: 0; }
.mm-eresin .mm-eresin-prokoho .mm-eresin-stitek { margin-bottom: -6px; } /* štítek 10 px nad nadpisem jako v ostatních sekcích (gap 16) */

/* Postava „stojí za kartou“: obrázek nad kartou, karta (z-index nad ním) zakryje spodní okraj obrázku = pas */
.mm-eresin-profily { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px 18px; align-items: end; }
.mm-eresin-profil { position: relative; display: flex; flex-direction: column; }
.mm-eresin-profil__foto { position: relative; display: flex; flex-direction: column; align-items: center; margin-bottom: -2px; }
.mm-eresin .mm-eresin-profil__foto img { position: relative; z-index: 1; display: block; width: auto; height: 140px; max-width: 100%; object-fit: contain; }
.mm-eresin-profil__foto span {
  /* štítek sedí na horní hraně karty, postava stojí přímo na kartě */
  position: absolute;
  z-index: 3;
  left: 16px;
  bottom: -12px;
  margin: 0;
  padding: 6px 12px;
  background: var(--mm-e-cervena);
  color: #fff;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 3px;
}
.mm-eresin-profil h3,
.mm-eresin-profil p { position: relative; z-index: 2; margin: 0; background: #fff; }
.mm-eresin .mm-eresin-profil h3 { padding: 22px 16px 4px; font-size: 15px; line-height: 1.2; border-radius: 6px 6px 0 0; }
.mm-eresin .mm-eresin-profil p { padding: 0 16px 14px; font-size: 13.5px; line-height: 1.45; color: var(--mm-e-text-sedy); border-radius: 0 0 6px 6px; flex: 1; }
@media (max-width: 767px) {
  .mm-eresin .mm-eresin-profil__foto img { height: 120px; }
  .mm-eresin-profily { gap: 22px; }
}

/* 8 · Důvěra a nákup */
.mm-eresin-nabidka { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: 16px; }
/* Úzké telefony: obrázek nad textem, ať má text a cena dost místa */
@media (max-width: 359px) {
  .mm-eresin-balicek { flex-direction: column; align-items: flex-start; padding: 22px 16px 18px; }
  .mm-eresin-balicek__obrazek { flex: 0 0 auto; width: 100px; }
  .mm-eresin-balicek__text { align-self: stretch; }
}
.mm-eresin-balicek {
  position: relative;
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 22px;
  border: 2px solid var(--mm-e-linka);
  border-radius: 8px;
}
.mm-eresin-balicek--doporuceno { border-color: var(--mm-e-cervena); background: #fff5f4; }
.mm-eresin .mm-eresin-balicek__stitek {
  position: absolute;
  top: -12px;
  right: 18px;
  padding: 4px 10px;
  background: var(--mm-e-cervena);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 3px;
}
.mm-eresin-balicek__obrazek { flex: 0 0 100px; text-align: center; }
.mm-eresin-balicek__obrazek--tri { position: relative; height: 100px; }
.mm-eresin .mm-eresin-balicek__obrazek--tri img { position: absolute; width: 66px; }
.mm-eresin .mm-eresin-balicek__obrazek--tri img:nth-child(1) { left: 0; top: 0; }
.mm-eresin .mm-eresin-balicek__obrazek--tri img:nth-child(2) { left: 30px; top: 12px; }
.mm-eresin .mm-eresin-balicek__obrazek--tri img:nth-child(3) { left: 14px; top: 32px; width: 70px; }
.mm-eresin-balicek__text { flex: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.mm-eresin .mm-eresin-balicek h3 { font-size: 17px; }
.mm-eresin .mm-eresin-balicek__text > p { font-size: 13px; color: var(--mm-e-text-sedy); }
.mm-eresin .mm-eresin-balicek__text > p.mm-eresin-balicek__cena { font-size: 24px; font-weight: 800; line-height: 1.2; color: var(--mm-e-text); }
.mm-eresin .mm-eresin-balicek--doporuceno .mm-eresin-balicek__text > p.mm-eresin-balicek__cena { color: var(--mm-e-cervena-tmava); }
.mm-eresin-balicek__cena:empty { display: none; }
.mm-eresin-balicek__cena del { font-size: 15px; font-weight: 500; color: #6a6d72; margin-left: 6px; }
.mm-eresin-balicek__cena small { display: block; font-size: 13px; font-weight: 600; color: var(--mm-e-text-sedy); }
/* Dvě krabičky přes sebe (2 balení) */
.mm-eresin-balicek__obrazek--dva { position: relative; height: 100px; }
.mm-eresin .mm-eresin-balicek__obrazek--dva img { position: absolute; width: 70px; }
.mm-eresin .mm-eresin-balicek__obrazek--dva img:nth-child(1) { left: 4px; top: 6px; }
.mm-eresin .mm-eresin-balicek__obrazek--dva img:nth-child(2) { left: 26px; top: 30px; }
/* Předplatné: krabička s popiskem „každý měsíc“ */
.mm-eresin-balicek__obrazek--predplatne span {
  display: inline-block;
  margin-top: 4px;
  padding: 2px 8px;
  border-radius: 10px;
  background: var(--mm-e-cervena);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.mm-eresin .mm-eresin-balicek a.mm-eresin-tlacitko { min-height: 44px; padding: 0 18px; font-size: 14px; text-transform: none; letter-spacing: 0; font-weight: 700; }
/* Lišta důvěry (červené ikony v samostatných boxech) – v popisu produktu i pod sliderem kategorie */
.mm-eresin-duvera { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-eresin-duvera li,
.mm-eresin .mm-eresin-duvera li {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 0;
  padding: 14px;
  background: var(--mm-e-pozadi, #f3f3f2);
  border-radius: 6px;
  font-size: 12.5px;
  line-height: 1.35;
  color: #45474b;
}
.mm-eresin-duvera li::before,
.mm-eresin-duvera li::marker { content: none; }
.mm-eresin-duvera img,
.mm-eresin .mm-eresin-duvera img { flex: 0 0 30px; width: 30px; height: 30px; }
.mm-eresin-duvera strong { color: #1a1a1a; }
.mm-eresin .mm-eresin-faq__nadpis { font-size: 20px; margin-bottom: -16px; }
.mm-eresin-faq .mm-eresin-rozbal { border-bottom: 1px solid var(--mm-e-linka); }
/* Lišta důvěry pod sliderem v kategorii (konec html/<znacka>-kategorie-popis1.html) */
.mm-benefity-obal { margin-top: 24px; margin-bottom: 8px; }
.mm-benefity-obal .mm-eresin-duvera { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mm-benefity-obal .mm-eresin-duvera li { padding: 16px 18px; font-size: 14px; }
@media (max-width: 991px) { .mm-benefity-obal .mm-eresin-duvera { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px) { .mm-benefity-obal .mm-eresin-duvera li { padding: 12px; font-size: 12.5px; } }
/* Šablona dává hornímu popisu značkové kategorie černé pozadí (pod banner) – s lištou pod sliderem by
   z něj vznikl černý rám. Banner má vlastní pozadí, takže černé u celého bloku nepotřebujeme. */
body.has-custom-category .category-perex:has(.mm-benefity-obal) { background-color: transparent; }
}

/* ---------- Rozbalovací popis (popis značky, kategorie…) – MMclaude.js › pripravRozbalovaciPopisy ---------- */
.mm-rozbal-popis { margin: 0 0 24px; font-size: 15px; line-height: 1.6; color: #2b2c2f; }
.mm-rozbal-popis p { margin: 0 0 12px; font-style: normal; }
.mm-rozbal-popis h2 { margin: 18px 0 8px; font-size: 20px; text-transform: none; }
.mm-rozbal-popis ul { margin: 0 0 12px; padding-left: 20px; }
.mm-rozbal-popis li { margin-bottom: 4px; }
.mm-rozbal-popis a { text-decoration: underline; }
.mm-rozbal-popis__radek { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 24px 32px; align-items: center; margin-bottom: 16px; }
.mm-rozbal-popis__radek > .mm-rozbal-popis__obrazek:first-child { order: 0; }
.mm-rozbal-popis__obrazek { margin: 0; text-align: center; }
.mm-rozbal-popis__obrazek img { max-width: 100%; height: auto; border-radius: 8px; }
.mm-rozbal-popis p.mm-rozbal-popis__poznamka { font-size: 12px; color: #6a6d72; }
.mm-rozbal-popis__tlacitko {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}
.mm-rozbal-popis__tlacitko::after { content: "▾"; text-decoration: none; }
.mm-rozbal-popis__tlacitko[aria-expanded="true"]::after { content: "▴"; }
@media (max-width: 767px) {
  .mm-rozbal-popis__radek { grid-template-columns: 1fr; }
  .mm-rozbal-popis__obrazek img { max-height: 320px; width: auto; }
}

/* ---------- Stránka Časté dotazy (html/*-caste-dotazy.html, článek v blogu) ---------- */
.mm-faq-stranka { max-width: 820px; font-size: 15px; line-height: 1.6; }
.mm-faq-stranka h2 { margin: 28px 0 10px; font-size: 22px; }
.mm-faq-otazka { border-bottom: 1px solid #e1e1de; }
.mm-faq-otazka summary {
  position: relative;
  padding: 14px 32px 14px 0;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.mm-faq-otazka summary::-webkit-details-marker { display: none; }
.mm-faq-otazka summary::after { content: "+"; position: absolute; right: 4px; top: 12px; font-size: 20px; }
.mm-faq-otazka[open] summary::after { content: "−"; }
.mm-faq-otazka p { margin: 0 0 14px; }
.mm-faq-stranka__zpet { margin-top: 28px; }
.mm-faq-rozcestnik { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 16px; margin: 20px 0; }
.mm-faq-rozcestnik a {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px;
  border: 1px solid #e1e1de;
  border-radius: 8px;
  color: inherit;
  text-decoration: none;
}
.mm-faq-rozcestnik a:hover { border-color: #1a1a1a; }
.mm-faq-rozcestnik img { height: 34px; width: auto; max-width: 180px; object-fit: contain; object-position: left center; }
.mm-faq-rozcestnik strong { font-size: 17px; }
.mm-faq-rozcestnik span { font-size: 14px; color: #6a6d72; }

/* ---------- Cookie lišta Shoptetu: širší a nižší ----------
   Text přes celou šířku, pod ním všechna tři tlačítka v jedné řadě (Nastavení, Odmítnout, Souhlasím).
   .siteCookies__content se „rozpustí“ (display: contents), aby text i Nastavení byly položky mřížky.
   Odmítnout a Souhlasím zůstávají stejně výrazné. Funkce Shoptetu beze změny. */
.siteCookies .siteCookies__form {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 14px 12px;
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  padding: 18px 24px;
  box-sizing: border-box;
}
.siteCookies .siteCookies__content { display: contents; }
.siteCookies .siteCookies__text { grid-column: 1 / -1; font-size: 15px; line-height: 1.45; }
.siteCookies .siteCookies__links { grid-column: 1; grid-row: 2; margin: 0; }
.siteCookies .siteCookies__buttonWrap { grid-column: 2; grid-row: 2; justify-content: flex-end; gap: 12px; }
.siteCookies .siteCookies__link,
.siteCookies .siteCookies__button { height: 46px; min-height: 0; line-height: 44px; margin: 0; }
@media (min-width: 768px) {
  /* Shoptet lištu centruje přes left: 50 % a záporný okraj – ten přizpůsobíme nové šířce */
  .siteCookies.siteCookies--bottom { width: min(960px, calc(100% - 32px)); margin-left: max(-480px, calc(-50% + 16px)); }
  .siteCookies .siteCookies__buttonWrap .siteCookies__button { flex: 0 0 auto; width: auto; min-width: 150px; }
}
@media (max-width: 767px) {
  .siteCookies .siteCookies__form { grid-template-columns: 1fr 1fr 1fr; gap: 10px 8px; padding: 14px 12px 16px; }
  .siteCookies .siteCookies__text { font-size: 13px; }
  .siteCookies .siteCookies__links { grid-column: 1; }
  .siteCookies .siteCookies__buttonWrap { grid-column: 2 / 4; gap: 8px; }
  .siteCookies .siteCookies__buttonWrap .siteCookies__button { flex: 1 1 0; width: auto; padding: 0 6px; font-size: 14px; }
  .siteCookies .siteCookies__link { width: 100%; padding: 0 6px; font-size: 14px; }
}

/* Dokud produkt nemá žádné hodnocení ze Shoptetu, je „Celkové hodnocení“ jen prázdný nadpis – skryjeme ho */
.type-detail #ratingWrapper .rate-wrap:not(:has(.rate-average-wrap > *)) { display: none; }

/* Formulář hodnocení Shoptetu (záložka „Hodnocení“) na počítači: přes celou šířku záložky,
   Jméno a E-mail vedle sebe, komentář přes celou šířku (Shoptet ho má v úzkém sloupci 332 px vlevo) */
@media (min-width: 768px) {
  .type-detail #ratingWrapper { flex-direction: column; align-items: stretch; gap: 8px; }
  .type-detail #ratingWrapper .rate-wrap { order: -1; width: 100%; max-width: none; min-height: 0; }
  .type-detail #ratingWrapper #rate-form { width: 100%; max-width: none; flex: 1 1 auto; }
  .type-detail #formRating {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    align-items: start;
  }
  .type-detail #formRating > * { grid-column: 1 / -1; }
  .type-detail #formRating > .form-group.smart-label-wrapper:has([name="fullName"]) { grid-column: 1; }
  .type-detail #formRating > .form-group.smart-label-wrapper:has([name="email"]) { grid-column: 2; }
  .type-detail #formRating textarea[name="description"] { min-height: 140px; }
  .type-detail #formRating .btn { width: auto; min-width: 260px; justify-self: start; }
}

/* Hvězdičky pod názvem produktu jako odkaz na hodnocení (MMclaude.js › upravHvezdyNaDetailu) */
.stars-wrapper.mm-hvezdy-odkaz { cursor: pointer; }
.stars-wrapper.mm-hvezdy-odkaz:hover .stars-label { text-decoration: underline; }

/* ---------- Nabídka v kategorii značky: počet karet v řadě (MMclaude.json › znacky › nabidkaSloupcu) ----------
   Šablona dává kartám třetinu řádku (4 produkty = 3 + 1). Při 4 sloupcích: na počítači 4 v řadě,
   mezi 768 a 1199 px 2 × 2, na mobilu zůstává posuvný pás šablony. */
@media (min-width: 1200px) {
  body.has-custom-category[data-mm-nabidka-sloupcu="4"] .products-page.products-block > div { width: 25%; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  body.has-custom-category[data-mm-nabidka-sloupcu="4"] .products-page.products-block > div { width: 50%; }
}

/* Tlačítko „Kompletní nabídka …“ pod kartami nabídky (MMclaude.js › vlozKompletniNabidku) */
.mm-kompletni-nabidka { display: flex; flex-direction: column; align-items: center; gap: 10px; margin: 24px 0 48px; text-align: center; }
.mm-kompletni-nabidka .mm-kompletni-nabidka__tlacitko {
  min-width: 260px;
  color: var(--category-color-tertiary, #fff);
  background-color: var(--category-color-quaternary, #1a1a1a);
  border-color: var(--category-color-quaternary, #1a1a1a);
  font-weight: 700;
}
.mm-kompletni-nabidka__popis { margin: 0; font-size: 14px; color: #6a6d72; }
@media (max-width: 479px) {
  .mm-kompletni-nabidka .mm-kompletni-nabidka__tlacitko { min-width: 0; width: 100%; }
}

/* ---------- Detail produktu na mobilu: produkt s jedinou fotkou ----------
   Šablona na mobilu schová hlavní fotku (.p-image) a ukazuje jen posuvné náhledy. Shoptet je ale
   vykreslí jen u produktu s více fotkami – s jedinou fotkou pak na mobilu není vidět žádná. */
@media (max-width: 767px) {
  .p-image-wrapper:not(:has(.p-thumbnails-wrapper)) .p-image { display: block; }
}

/* ---------- Ikona přes fotku produktu (MMclaude.json › ikonyProduktu) ----------
   Velikost a pozici nastavuje MMclaude.js podle skutečného místa fotky. */
img.mm-ikona-produktu {
  position: absolute;
  z-index: 2;
  display: none;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  pointer-events: none;
  object-fit: contain;
}

/* ---------- Horní banner kategorie se sliderem (html/<znacka>-kategorie-popis1.html) ----------
   Struktura i vzhled textů jsou ze šablony autora (.category-headline), místo jedné fotky
   (.category-headline__image) je .mm-slider se snímky z MMclaude.json. */
/* Šablona má na úzkém mobilu pozadí napevno béžové (Orca) – bereme barvu značky */
.category-headline.mm-kat-headline::before { background: var(--category-color-secondary); }
/* Vrstva s texty leží přes celý slider – kliknutí musí projít na šipky a tečky */
.mm-kat-headline .container { pointer-events: none; }
.mm-kat-headline .category-headline__content { pointer-events: auto; }
a.category-headline__rating.mm-kat-headline__hodnoceni { color: inherit; text-decoration: none; cursor: pointer; }
a.category-headline__rating.mm-kat-headline__hodnoceni:hover .category-headline__rating-text { text-decoration: underline; }
.category-headline .mm-slider.category-headline__image {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc((100vw - 100%) / -2);
  right: calc((100vw - 100%) / -2);
  width: auto;
  height: auto;
  max-width: none;
  margin: 0;
  overflow: hidden;
  z-index: 1;
}
.mm-slider__nahradni,
.mm-slider__snimek img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.mm-slider__snimky { position: absolute; inset: 0; }
/* Počítač: texty leží přes levou část snímku – jemný přechod z barvy pozadí značky drží čitelnost
   i u barevných fotek (na mobilu je text nad obrázkem, krytí tam není potřeba) */
@media (min-width: 768px) {
  .mm-kat-headline .mm-slider::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(243, 243, 242, 0.88) 0%, rgba(243, 243, 242, 0.7) 32%, transparent 58%);
    background: linear-gradient(90deg,
      color-mix(in srgb, var(--category-color-secondary, #f3f3f2) 88%, transparent) 0%,
      color-mix(in srgb, var(--category-color-secondary, #f3f3f2) 70%, transparent) 32%,
      transparent 58%);
  }
}
.mm-slider__snimek { position: absolute; inset: 0; opacity: 0; transition: opacity 0.8s ease; }
.mm-slider__snimek--aktivni { opacity: 1; z-index: 1; }
.mm-slider__snimek picture { display: block; width: 100%; height: 100%; }
.mm-slider__ovladani {
  position: absolute;
  right: 24px;
  bottom: 20px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.85);
}
.mm-slider__sipka {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #1a1a1a;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}
.mm-slider__sipka:hover { background: rgba(0, 0, 0, 0.08); }
.mm-slider__tecky { display: flex; gap: 8px; }
.mm-slider__tecka {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #b9b9b5;
  cursor: pointer;
}
.mm-slider__tecka--aktivni { background: var(--category-color-quaternary, #1a1a1a); }
@media (prefers-reduced-motion: reduce) {
  .mm-slider__snimek { transition: none; }
}
/* Mobil: text nahoře, slider pod ním přes celou šířku (jako fotka v šabloně) */
@media (max-width: 767px) {
  .category-headline .mm-slider.category-headline__image {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100vw;
    margin: 0 0 0 calc(50% - 50vw);
    aspect-ratio: 1080 / 1350;
  }
  .mm-slider__nahradni,
  .mm-slider__snimek img { object-position: center; }
  .mm-slider__ovladani { right: 50%; transform: translateX(50%); bottom: 14px; }
}

/* Hodnocení produktu (vykreslí MMclaude.js do [data-mm-recenze] z MMclaude.json › recenze) */
.mm-eresin-recenze:not(:has(.mm-recenze--hotovo)) { display: none; }
.mm-recenze__hlava { display: flex; flex-direction: column; align-items: center; gap: 16px; margin-bottom: 20px; text-align: center; }
.mm-recenze__souhrn { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px 40px; width: 100%; }
.mm-eresin .mm-recenze__prumer { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--mm-e-text-sedy); }
.mm-recenze__prumer strong { font-size: 44px; font-weight: 800; line-height: 1; color: var(--mm-e-text); }
.mm-recenze__prumer .mm-hvezdy { font-size: 22px; }
.mm-eresin .mm-recenze__rozpad { display: grid; gap: 4px; min-width: 220px; flex: 1 1 220px; max-width: 360px; }
.mm-eresin .mm-recenze__rozpad li { display: grid; grid-template-columns: 34px 1fr 36px; align-items: center; gap: 8px; font-size: 12.5px; color: var(--mm-e-text-sedy); }
.mm-recenze__pruh { height: 8px; border-radius: 4px; background: var(--mm-e-linka); overflow: hidden; }
.mm-recenze__pruh span { display: block; height: 100%; background: var(--mm-e-cervena); }
.mm-recenze__rozpad-pocet { text-align: right; }
.mm-eresin .mm-recenze__zdroj { font-size: 12px; color: #6a6d72; }
.mm-eresin .mm-recenze__seznam { display: grid; gap: 12px; }
.mm-eresin .mm-recenze__polozka { padding: 16px 18px; border: 1px solid var(--mm-e-linka); border-radius: 8px; background: #fff; }
.mm-eresin .mm-recenze__polozka[hidden],
.mm-eresin .mm-recenze__vice[hidden] { display: none; }
.mm-eresin .mm-recenze__autor { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 14px; }
.mm-recenze__datum { color: #6a6d72; font-size: 12.5px; }
.mm-eresin .mm-recenze__text { margin-top: 8px; font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
.mm-eresin .mm-recenze__odpoved { margin-top: 10px; padding: 10px 12px; border-left: 3px solid var(--mm-e-cervena); background: var(--mm-e-pozadi); font-size: 13px; color: var(--mm-e-text-sedy); }
.mm-recenze__tlacitka { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 16px; }
.mm-eresin .mm-recenze__vice.mm-recenze__napsat { background: var(--mm-e-cervena, #ee2722); border-color: var(--mm-e-cervena, #ee2722); color: #fff; }
.mm-eresin .mm-recenze__vice {
  margin: 0;
  display: block;
  min-height: 44px;
  padding: 0 22px;
  border: 2px solid var(--mm-e-text);
  border-radius: 4px;
  background: #fff;
  color: var(--mm-e-text);
  font: inherit;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}
/* Hvězdičky: šedé pod, červené přes ně oříznuté na šířku hodnocení */
.mm-hvezdy { position: relative; display: inline-block; line-height: 1; letter-spacing: 1px; white-space: nowrap; font-size: 15px; }
.mm-hvezdy__prazdne { color: #d6d6d3; }
.mm-hvezdy__plne { position: absolute; left: 0; top: 0; overflow: hidden; color: #f5a623; }

/* 4 · Odkaz z „Co je uvnitř“ na úplné složení dole */
.mm-eresin .mm-eresin-slozeni__odkaz { margin-top: 4px; }
.mm-eresin .mm-eresin-slozeni__odkaz a { color: var(--mm-e-cervena-tmava); font-weight: 700; font-size: 14px; text-decoration: underline; }

/* 9 · Informace z obalu – jako na orcacollagen.cz (Obsah balení, Složení, Dávkování, Upozornění, Výrobce).
   Nadpisy Složení (#structure) a Dávkování (.daily-beauty#o-pripravku) jsou cíle záložek v liště šablony. */
.mm-eresin-info { padding: 8px 16px 24px; max-width: 760px; margin: 0 auto; font-size: 14px; line-height: 1.6; }
.mm-eresin .mm-eresin-info h2 { margin: 28px 0 10px; font-size: 20px; text-transform: none; color: var(--mm-e-text); }
.mm-eresin .mm-eresin-info p { margin: 0 0 12px; }
.mm-eresin .mm-eresin-info p.mm-eresin-info__poznamka { margin-top: -4px; font-size: 12px; color: #6a6d72; }
/* #structure má v šabloně na mobilu vlastní odsazení – u nadpisu ho nechceme */
.mm-eresin-info #structure { padding: 0; }
/* .daily-beauty je třída šablony (šedé pozadí přes celou šířku) – tady ji potřebujeme jen jako cíl záložky */
.mm-eresin .mm-eresin-info .daily-beauty { margin: 0; padding: 0; background: none; }
.mm-eresin .mm-eresin-info .daily-beauty::before { content: none; display: none; }
.mm-eresin .mm-eresin-info .daily-beauty h2 { margin: 28px 0 10px; }
.mm-eresin .mm-eresin-info .daily-beauty p { margin: 0 0 12px; }
/* Tabulka aktivních látek z obalu: hlavička v barvě Eresinu, mřížka jako na orcacollagen.cz */
.mm-eresin .mm-eresin-tabulka--obal { margin: 4px 0 12px; font-size: 14px; }
.mm-eresin .mm-eresin-tabulka--obal th,
.mm-eresin .mm-eresin-tabulka--obal td { border: 1px solid var(--mm-e-cervena); padding: 7px 10px; }
.mm-eresin .mm-eresin-tabulka--obal th,
.mm-eresin .mm-eresin-tabulka--obal th:not(:first-child) { background: var(--mm-e-cervena); color: #fff; text-align: center; line-height: 1.3; white-space: normal; }
.mm-eresin .mm-eresin-tabulka--obal td:not(:first-child) { text-align: left; }
@media (max-width: 379px) {
  .mm-eresin .mm-eresin-tabulka--obal { font-size: 12.5px; }
  .mm-eresin .mm-eresin-tabulka--obal th,
  .mm-eresin .mm-eresin-tabulka--obal td { padding: 5px 5px; }
}

.mm-eresin .mm-eresin-upozorneni { font-size: 11.5px; line-height: 1.55; color: #6a6d72; border-top: 1px solid var(--mm-e-linka); padding-top: 14px; }

/* Počítač: větší nadpisy a víc vzduchu */
@media (min-width: 768px) {
  .mm-eresin-sekce { padding: 48px 40px; gap: 32px; }
  .mm-eresin .mm-eresin-nadpis { font-size: 30px; }
  .mm-eresin .mm-eresin-hero__nadpis { font-size: 54px; }
  .mm-eresin .mm-eresin-hero { padding: 44px 24px 44px 44px; }
  .mm-eresin .mm-eresin-stitek { margin-bottom: -22px; }
}

/* Povinný e-mail ve formuláři hodnocení – hláška (MMclaude.js › povinnyEmailVHodnoceni) */
.mm-email-chyba { margin: 6px 0 0; font-size: 13px; color: #d7141a; }

/* =========================================================
   Eresin – předplatné (html/eresin-predplatne-popis.html a -kratky.html)
   Infografiky z návrhu docs/eresin/predplatne-ux-navrh.md, bloky 7–12
   ========================================================= */
/* Úvodní banner: odznak „cena zamčená“ přes fotku */
.mm-predpl-hero-obrazek { position: relative; }
.mm-eresin .mm-predpl-odznak { position: absolute; left: 0; top: -8px; width: 92px; height: 92px; transform: rotate(-8deg); }

/* P1 · Jak předplatné funguje – 3 kroky se šipkami */
.mm-predpl-kroky__seznam { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; counter-reset: mm-predpl-krok; }
.mm-eresin .mm-predpl-kroky__seznam li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  font-size: 16px;
  line-height: 1.35;
  counter-increment: mm-predpl-krok;
}
.mm-predpl-kroky__ikona {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  background: var(--mm-e-pozadi);
}
.mm-eresin .mm-predpl-kroky__ikona img { width: 52px; height: 52px; }
.mm-predpl-kroky__ikona::after {
  content: counter(mm-predpl-krok);
  position: absolute;
  top: -2px;
  right: -2px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--mm-e-tmava);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  line-height: 32px;
  text-align: center;
}
/* Šipka mezi kroky */
.mm-eresin .mm-predpl-kroky__seznam li:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 40px;
  right: -36px;
  width: 32px;
  height: 24px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 24' fill='none' stroke='%23c9ccd0' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12h26M21 5l7 7-7 7'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* P2 · Kdy a kolik platíte – časová osa */
.mm-predpl-osa__karta { display: flex; flex-direction: column; gap: 24px; padding: 32px 28px 24px; background: var(--mm-e-pozadi); border-radius: 12px; }
.mm-predpl-osa__body { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.mm-predpl-osa__body::before { content: ""; position: absolute; top: 10px; left: 12px; right: 0; height: 3px; background: #c9ccd0; }
.mm-eresin .mm-predpl-osa__body li { position: relative; display: flex; flex-direction: column; gap: 8px; padding-top: 34px; font-size: 14px; color: var(--mm-e-text-sedy); }
.mm-eresin .mm-predpl-osa__body li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--mm-e-tmava);
  border: 4px solid var(--mm-e-pozadi);
}
.mm-eresin .mm-predpl-osa__body li.mm-predpl-osa__bod--dnes::before { background: var(--mm-e-cervena); }
.mm-eresin .mm-predpl-osa__body li.mm-predpl-osa__bod--dal::before { background: #fff; border: 3px solid var(--mm-e-tmava); }
.mm-predpl-osa__kdy { font-size: 13px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; color: var(--mm-e-text); }
.mm-predpl-osa__bod--dnes .mm-predpl-osa__kdy { color: var(--mm-e-cervena-tmava); }
.mm-predpl-osa__body strong { font-size: 24px; font-weight: 800; line-height: 1.1; color: var(--mm-e-text); }
.mm-eresin .mm-predpl-osa__pauza { display: flex; gap: 12px; align-items: center; padding-top: 18px; border-top: 1px solid #dedede; font-size: 15px; }
.mm-eresin .mm-predpl-osa__pauza img { flex: 0 0 24px; width: 24px; height: 24px; }

/* P3 · Srovnání ceny za den */
.mm-eresin .mm-predpl-srovnani { background: var(--mm-e-pozadi); }
.mm-predpl-srovnani__karty { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.mm-eresin .mm-predpl-srovnani__karty li {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 24px 14px 20px;
  background: #fff;
  border: 1px solid var(--mm-e-linka);
  border-radius: 12px;
  text-align: center;
  font-size: 14px;
  color: var(--mm-e-text-sedy);
}
.mm-predpl-srovnani__karty li > strong { font-size: 15px; color: var(--mm-e-text); }
.mm-predpl-srovnani__karty b { margin-top: 10px; font-size: 22px; font-weight: 800; color: var(--mm-e-text); }
.mm-predpl-srovnani__karty small { margin-top: 10px; font-size: 12px; }
.mm-eresin .mm-predpl-srovnani__karty li.mm-predpl-srovnani__karta--vybrana { border: 2px solid var(--mm-e-cervena); background: #fff5f4; }
.mm-predpl-srovnani__karta--vybrana b,
.mm-predpl-srovnani__karta--vybrana span strong { color: var(--mm-e-cervena-tmava); }
.mm-predpl-srovnani__karty em {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  padding: 4px 10px;
  border-radius: 20px;
  background: var(--mm-e-cervena);
  color: #fff;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: nowrap;
}
.mm-eresin .mm-predpl-poznamka { text-align: center; font-size: 13px; color: var(--mm-e-text-sedy); }

/* P4 · Kolik ušetříte – sloupcový graf */
.mm-predpl-uspora__graf { display: flex; flex-direction: column; gap: 14px; }
.mm-eresin .mm-predpl-uspora__graf li { display: grid; grid-template-columns: 96px 1fr 96px; gap: 16px; align-items: center; font-size: 15px; font-weight: 700; }
.mm-predpl-uspora__graf strong { font-size: 18px; font-weight: 800; text-align: right; }
.mm-predpl-uspora__graf li:last-child strong { color: var(--mm-e-cervena-tmava); }
.mm-predpl-uspora__pruh { display: block; height: 32px; background: var(--mm-e-pozadi); border-radius: 6px; overflow: hidden; }
.mm-predpl-uspora__pruh span { display: block; height: 100%; background: #f08a86; border-radius: 6px; }
.mm-predpl-uspora__graf li:nth-child(2) .mm-predpl-uspora__pruh span { background: var(--mm-e-cervena); }
.mm-predpl-uspora__graf li:nth-child(3) .mm-predpl-uspora__pruh span { background: #a3121a; }

/* P5 · Pozastavení a zrušení – 3 cesty */
.mm-eresin .mm-predpl-zruseni { background: var(--mm-e-pozadi); }
.mm-predpl-zruseni__cesty { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mm-eresin .mm-predpl-zruseni__cesty li { display: flex; flex-direction: column; gap: 10px; padding: 22px 20px; background: #fff; border-radius: 12px; font-size: 14px; color: var(--mm-e-text-sedy); }
.mm-eresin .mm-predpl-zruseni__cesty img { width: 40px; height: 40px; }
.mm-predpl-zruseni__cesty strong { font-size: 16px; font-weight: 800; color: var(--mm-e-text); }
.mm-predpl-zruseni__cesty a { color: var(--mm-e-cervena-tmava); font-weight: 700; }
.mm-predpl-zruseni__fajfky { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; }
.mm-eresin .mm-predpl-zruseni__fajfky li { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 700; }
.mm-eresin .mm-predpl-zruseni__fajfky li::before {
  content: "";
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  background: url("https://cdn.myshoptet.com/usr/www.miraclonutrition.cz/user/documents/upload/detail-popis/eresin/ikony/fajfka.svg") no-repeat center / contain;
}

/* P6 · Bezpečná platba – tmavá karta */
.mm-predpl-platba__karta { display: grid; grid-template-columns: 88px 1fr; gap: 28px; align-items: start; padding: 36px 40px; background: var(--mm-e-tmava); border-radius: 16px; color: #d9d9d9; }
.mm-predpl-platba__ikona { display: flex; align-items: center; justify-content: center; width: 88px; height: 88px; border-radius: 50%; background: #fff; }
.mm-eresin .mm-predpl-platba__ikona img { width: 48px; height: 48px; }
.mm-predpl-platba__karta > div { display: flex; flex-direction: column; gap: 14px; }
.mm-eresin .mm-predpl-platba .mm-eresin-stitek { margin: 0; text-align: left; color: #f08a86; }
.mm-eresin .mm-predpl-platba h2 { font-size: 24px; line-height: 1.2; color: #fff; }
.mm-eresin .mm-predpl-platba__karta p { font-size: 15px; line-height: 1.6; }
.mm-predpl-platba__loga { display: flex; flex-wrap: wrap; gap: 8px; }
.mm-eresin .mm-predpl-platba__loga li { padding: 6px 10px; border: 1px solid #5a5a5a; border-radius: 6px; font-size: 12px; font-weight: 700; color: #fff; }
.mm-predpl-platba__karta a { color: #fff; font-weight: 700; }

/* P7 · Prokliky na informace o přípravku */
.mm-eresin .mm-predpl-prokliky { padding-top: 28px; padding-bottom: 28px; background: var(--mm-e-pozadi); text-align: center; gap: 16px; }
.mm-predpl-prokliky ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.mm-eresin .mm-predpl-prokliky a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 20px;
  border: 2px solid var(--mm-e-text);
  border-radius: 40px;
  background: #fff;
  color: var(--mm-e-text);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
.mm-eresin .mm-predpl-prokliky a:hover { background: var(--mm-e-text); color: #fff; }

/* Krátký popis u ceny: 4 ujištění s ikonami (mimo .mm-eresin) */
.mm-predpl-ujisteni { display: flex; flex-direction: column; gap: 12px; margin: 14px 0 0; padding: 0; list-style: none; }
.mm-predpl-ujisteni li { display: flex; align-items: center; gap: 12px; margin: 0; padding: 0; font-size: 15px; line-height: 1.35; }
.mm-predpl-ujisteni li::before,
.mm-predpl-ujisteni li::marker { content: none; }
.mm-predpl-ujisteni img { flex: 0 0 24px; width: 24px; height: 24px; }

@media (min-width: 768px) {
  .mm-eresin .mm-predpl-odznak { width: 120px; height: 120px; left: 8px; top: -4px; }
}
@media (max-width: 767px) {
  /* Kroky pod sebou, šipka dolů */
  .mm-predpl-kroky__seznam { grid-template-columns: 1fr; gap: 36px; }
  .mm-eresin .mm-predpl-kroky__seznam li:not(:last-child)::before { top: auto; bottom: -32px; right: auto; left: calc(50% - 12px); width: 24px; height: 28px; transform: rotate(90deg); }
  /* Osa svisle, čára vlevo */
  .mm-predpl-osa__karta { padding: 24px 20px 20px; }
  .mm-predpl-osa__body { grid-template-columns: 1fr; gap: 22px; }
  .mm-predpl-osa__body::before { top: 12px; bottom: 12px; left: 10px; right: auto; width: 3px; height: auto; }
  .mm-eresin .mm-predpl-osa__body li { padding: 0 0 0 40px; gap: 2px; }
  .mm-predpl-osa__body strong { font-size: 20px; }
  /* Srovnání 2 × 2 */
  .mm-predpl-srovnani__karty { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 10px; }
  .mm-eresin .mm-predpl-srovnani__karty li { padding: 22px 8px 16px; font-size: 13px; }
  .mm-predpl-srovnani__karty b { font-size: 20px; }
  .mm-eresin .mm-predpl-uspora__graf li { grid-template-columns: 76px 1fr 80px; gap: 10px; font-size: 14px; }
  .mm-predpl-uspora__graf strong { font-size: 16px; }
  .mm-predpl-zruseni__cesty { grid-template-columns: 1fr; }
  .mm-predpl-platba__karta { grid-template-columns: 1fr; gap: 18px; padding: 26px 20px; }
  .mm-predpl-platba__ikona { width: 64px; height: 64px; }
  .mm-eresin .mm-predpl-platba__ikona img { width: 36px; height: 36px; }
  .mm-eresin .mm-predpl-platba h2 { font-size: 20px; }
}
@media (max-width: 359px) {
  .mm-predpl-srovnani__karty em { padding: 3px 7px; font-size: 10px; letter-spacing: .3px; }
}
/* P6b · Lišta důvěry pod Bezpečnou platbou (bez horního okraje, navazuje na tmavou kartu) */
.mm-eresin .mm-predpl-duvera { padding-top: 0; }
/* Odznak „cena zamčená“ na fotce přes celou polovinu banneru – kousek od okraje fotky */
.mm-eresin .mm-eresin-hero__obrazek--panel .mm-predpl-odznak { top: 16px; left: 16px; }

/* =========================================================
   Proteinathor – kategorie /proteinathor/
   (html/proteinathor-kategorie-popis1.html a -popis2.html, data v MMclaude.json › znacky › proteinathor)
   Barvy značky: černá, bílá, žlutá #ffc500. Styly jsou navázané na <body data-mm-znacka="proteinathor">.
   ========================================================= */

/* ---------- Předplatné vypnuté (znacky › predplatne: false) ----------
   Prvky .mm-jen-predplatne jsou skryté vždy, ukážou se jen u značky s předplatným zapnutým.
   Skryté jsou i bez JS (výchozí stav), aby při pomalém načtení na okamžik nevyskočily. */
.mm-jen-predplatne { display: none !important; }
body[data-mm-predplatne="ano"] .mm-jen-predplatne { display: revert !important; }
/* Sekce Instagram bez fotek (MMclaude.js › upravInstagram) */
.mm-skryty-blok { display: none !important; }
/* Produkty předplatného ve výpisech (MMclaude.js › skryjProduktyPredplatneho) */
.mm-skryty-produkt { display: none !important; }
/* Ve výpisu značky jen karty z nabídky (znacky › nabidkaJen) – řazení, počet a stránkování nedávají smysl */
body[data-mm-jen-nabidka="ano"] .category-header,
body[data-mm-jen-nabidka="ano"] .listingControls,
body[data-mm-jen-nabidka="ano"] .loadMore { display: none !important; }
/* Proužek s hvězdičkami v banneru jen tehdy, když už jsou hodnocení (MMclaude.js › vyplnSouhrnyHodnoceni) */
.mm-jen-s-hodnocenim:not(.mm-hodnoceni-vyplneno) { display: none !important; }

/* ---------- Cena za odměrku na kartách nabídky (MMclaude.js › doplnCenyZaPorci) ---------- */
.mm-cena-porce { display: flex; flex-direction: column; gap: 2px; margin: 4px 0 0; font-size: 13px; line-height: 1.35; }
/* Na kartě vždy na vlastním řádku hned pod cenou (šablona jinak dává řádek vedle ceny, když se vejde) */
.products-page .mm-cena-porce { flex: 0 0 100%; order: 2; margin: 2px 0 6px; font-size: 14px; text-align: left; }
/* Dostupnost („Skladem“) na stejném řádku jako cena, vpravo */
.products-page .p-bottom .p-tools:has(.availability) { order: 1; flex: 0 0 auto; width: auto; margin-left: auto; align-self: flex-start; }
.mm-cena-porce strong { color: #c8161d; font-weight: 700; }
.mm-cena-porce__uspora { color: #1e7a34; font-weight: 700; }

/* ---------- Horní banner ---------- */
/* Podle wireframu: celý řádek žlutý a výrazný („od 23 Kč za odměrku“) */
.category-headline .mm-pt-hero__cena { margin: 6px 0 20px; color: #ffc500; font-size: 20px; font-weight: 800; line-height: 1.2; }
.category-headline .mm-pt-hero__cena strong { color: #ffc500; font-size: 30px; font-weight: 800; }
@media (max-width: 767px) {
  .category-headline .mm-pt-hero__cena { font-size: 17px; }
  .category-headline .mm-pt-hero__cena strong { font-size: 24px; }
}

/* ---------- Lišta důvěry pod bannerem (ikony v žlutých kolečkách) ---------- */
.mm-pt-duvera { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-pt-duvera li {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0;
  padding: 16px 18px;
  background: #f4f4f4;
  border-radius: 6px;
  font-size: 14px;
  line-height: 1.35;
  color: #45474b;
}
.mm-pt-duvera li::before,
.mm-pt-duvera li::marker { content: none; }
.mm-pt-duvera img { flex: 0 0 44px; width: 44px; height: 44px; padding: 8px; border-radius: 50%; background: #ffc500; }
.mm-pt-duvera strong { color: #000; }
@media (max-width: 991px) { .mm-pt-duvera { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px) {
  .mm-pt-duvera li { padding: 12px; gap: 8px; font-size: 12.5px; }
  .mm-pt-duvera img { flex-basis: 36px; width: 36px; height: 36px; padding: 6px; }
}

/* ---------- Společné pro naše sekce ve spodním popisu ---------- */
.mm-pt-sekce { max-width: 1200px; margin: 0 auto; padding: 48px 16px; }
.mm-pt-uvod { max-width: 640px; margin: 0 auto 24px; text-align: center; color: #45474b; }
.mm-pt-poznamka { margin-top: 12px; font-size: 12px; color: #6a6d72; }

/* ---------- Příchutě (kolečka → detail s vybranou příchutí) ---------- */
.mm-pt-prichute__hlava { position: relative; display: flex; align-items: center; justify-content: center; gap: 12px; }
.mm-pt-prichute__hlava .homepage-group-title { margin: 0; }
.mm-pt-prichute__thor { width: 84px; height: auto; }
.mm-pt-prichute__seznam {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mm-pt-prichute__seznam li { margin: 0; padding: 0; }
.mm-pt-prichute__seznam li::before,
.mm-pt-prichute__seznam li::marker { content: none; }
.mm-pt-prichute__seznam a {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 8px 4px;
  border-radius: 8px;
  color: #1a1a1a;
  text-align: center;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
  transition: background-color .15s;
}
.mm-pt-prichute__seznam a:hover,
.mm-pt-prichute__seznam a:focus-visible { background: #fff6d6; }
.mm-pt-prichute__seznam img { width: 100%; max-width: 100px; height: auto; aspect-ratio: 1; border-radius: 50%; }
.mm-pt-prichute__seznam em {
  position: absolute;
  top: 2px;
  right: 2px;
  padding: 2px 8px;
  border-radius: 10px;
  background: #000;
  color: #ffc500;
  font-size: 11px;
  font-style: normal;
}
@media (max-width: 991px) { .mm-pt-prichute__seznam { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (max-width: 575px) {
  .mm-pt-prichute__seznam { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .mm-pt-prichute__thor { width: 64px; }
}

/* ---------- Časté dotazy: místo fotky Thor s otazníky ---------- */
.mm-pt-dotazy .mm-pt-dotazy__thor { display: flex; align-items: center; justify-content: center; background: none; }
.mm-pt-dotazy .mm-pt-dotazy__thor img { width: 100%; max-width: 320px; height: auto; object-fit: contain; }
@media (max-width: 767px) { .mm-pt-dotazy .mm-pt-dotazy__thor img { max-width: 180px; } }

/* ---------- Hodnocení (vykreslí MMclaude.js do [data-mm-recenze="proteinathor"]) ---------- */
.mm-pt-recenze:not(.mm-recenze--hotovo):not(:has(.mm-recenze--hotovo)) { display: none; }
.mm-pt-recenze .mm-recenze__nadpis { margin: 0; font-size: 28px; font-weight: 800; text-transform: uppercase; text-align: center; }
.mm-pt-recenze .mm-recenze__prumer { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #45474b; }
.mm-pt-recenze .mm-recenze__prumer strong { color: #000; }
.mm-pt-recenze .mm-hvezdy__plne { color: #ffc500; }
.mm-pt-recenze .mm-recenze__pruh { background: #e6e6e6; }
.mm-pt-recenze .mm-recenze__pruh span { background: #ffc500; }
.mm-pt-recenze .mm-recenze__rozpad { display: grid; gap: 4px; min-width: 220px; flex: 1 1 220px; max-width: 360px; margin: 0; padding: 0; list-style: none; }
.mm-pt-recenze .mm-recenze__rozpad li { display: grid; grid-template-columns: 34px 1fr 36px; align-items: center; gap: 8px; font-size: 12.5px; color: #45474b; }
.mm-pt-recenze .mm-recenze__zdroj { margin: 0; font-size: 12px; color: #6a6d72; }
.mm-pt-recenze .mm-recenze__prazdne { max-width: 560px; margin: 0; font-size: 16px; color: #45474b; }
.mm-pt-recenze .mm-recenze__seznam { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-pt-recenze .mm-recenze__polozka { padding: 16px 18px; border: 1px solid #e3e3e3; border-radius: 8px; background: #fff; }
.mm-pt-recenze .mm-recenze__polozka::before { content: none; }
.mm-pt-recenze .mm-recenze__polozka[hidden],
.mm-pt-recenze .mm-recenze__vice[hidden] { display: none; }
.mm-pt-recenze .mm-recenze__autor { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0; font-size: 14px; }
.mm-pt-recenze .mm-recenze__text { margin: 8px 0 0; font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
.mm-pt-recenze .mm-recenze__odpoved { margin: 10px 0 0; padding: 10px 12px; border-left: 3px solid #ffc500; background: #f6f6f6; font-size: 13px; color: #45474b; }
.mm-pt-recenze .mm-recenze__vice {
  margin: 0;
  min-height: 44px;
  padding: 0 22px;
  border: 2px solid #000;
  border-radius: 4px;
  background: #fff;
  color: #000;
  font: inherit;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}
.mm-pt-recenze .mm-recenze__vice.mm-recenze__napsat { background: #ffc500; border-color: #ffc500; color: #000; }
@media (max-width: 991px) { .mm-pt-recenze .mm-recenze__seznam { grid-template-columns: 1fr; } }
@media (max-width: 479px) { .mm-pt-recenze .mm-recenze__nadpis { font-size: 22px; } }

/* =========================================================
   Proteinathor – detail proteinu 1000 / 2300 / 4500 g
   Nákupní blok doplňuje MMclaude.js › upravDetailZnacky (body[data-mm-detail]),
   popis je html/proteinathor-popis.html (.mm-pt-detail).
   ========================================================= */

/* ---------- Přepínač velikosti nad výběrem příchutě ---------- */
.mm-velikosti { margin: 8px 0 14px; }
.mm-velikosti__nadpis { margin: 0 0 6px; font-size: 14px; font-weight: 700; }
.mm-velikosti__seznam { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.mm-velikosti__volba {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-height: 56px;
  padding: 8px 6px;
  border: 2px solid #d6d6d6;
  border-radius: 6px;
  background: #fff;
  color: #1a1a1a;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}
.mm-velikosti__volba strong { font-size: 15px; }
a.mm-velikosti__volba:hover,
a.mm-velikosti__volba:focus-visible { border-color: #000; color: #1a1a1a; text-decoration: none; }
.mm-velikosti__volba--vybrana { border-color: #000; background: #000; color: #ffc500; }

/* ---------- Příchutě jako štítky s kolečkem (místo 9 fotek dóz) ---------- */
#simple-variants.mm-varianty { display: flex; flex-wrap: wrap; gap: 8px; }
#simple-variants.mm-varianty label.advanced-parameter {
  position: relative;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}
#simple-variants.mm-varianty .advanced-parameter-inner { display: none; }
.mm-varianta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px 4px 4px;
  border: 2px solid #d6d6d6;
  border-radius: 22px;
  background: #fff;
  font-size: 13px;
  line-height: 1.2;
  cursor: pointer;
}
.mm-varianta__kolecko { width: 28px; height: 28px; border-radius: 50%; }
.mm-varianta__oblibena {
  padding: 1px 6px;
  border-radius: 8px;
  background: #ffc500;
  color: #000;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
}
#simple-variants.mm-varianty label.advanced-parameter:hover .mm-varianta { border-color: #000; }
#simple-variants.mm-varianty label.advanced-parameter:has(input:checked) .mm-varianta { border-color: #000; box-shadow: inset 0 0 0 1px #000; font-weight: 700; }
#simple-variants.mm-varianty label.advanced-parameter:has(input:focus-visible) .mm-varianta { outline: 2px solid #ffc500; outline-offset: 2px; }

/* ---------- Cena za odměrku, doručení a lišta důvěry v nákupním bloku ---------- */
.mm-detail-porce { margin: 2px 0 8px; font-size: 14px; font-weight: 700; color: #c8161d; }
.mm-detail-doruceni { margin: 10px 0 0; font-size: 14px; font-weight: 700; color: #1e7a34; }
.mm-detail-duvera { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.mm-detail-duvera li { display: flex; align-items: center; gap: 8px; margin: 0; padding: 8px 10px; border-radius: 6px; background: #f4f4f4; font-size: 12.5px; line-height: 1.3; }
.mm-detail-duvera li::before { content: none; }
.mm-detail-duvera img { flex: 0 0 30px; width: 30px; height: 30px; padding: 5px; border-radius: 50%; background: #ffc500; }

/* ---------- Popis (html/proteinathor-popis.html) ---------- */
.mm-pt-detail { color: #1a1a1a; }
.mm-pt-d-sekce { margin: 0 0 36px; }
.mm-pt-detail .mm-pt-d-nadpis { margin: 0 0 14px; font-size: 22px; font-weight: 800; text-transform: uppercase; }
.mm-pt-d-uvodni { margin: -6px 0 14px; color: #45474b; }
.mm-pt-d-uvod { display: flex; align-items: center; gap: 20px; padding: 24px 28px; border-radius: 10px; background: #000; color: #fff; }
.mm-pt-detail .mm-pt-d-uvod h2 { margin: 0 0 10px; color: #ffc500; font-size: 22px; line-height: 1.25; }
.mm-pt-d-uvod p { margin: 0; color: #d9d9d9; }
.mm-pt-d-uvod__thor { flex: 0 0 120px; width: 120px; height: auto; }
.mm-pt-d-karty { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.mm-pt-d-karty li { margin: 0; padding: 14px; border: 1px solid #e3e3e3; border-top: 4px solid #ffc500; border-radius: 6px; background: #fff; }
.mm-pt-d-karty li::before { content: none; }
.mm-pt-d-karty strong { display: block; margin-bottom: 4px; font-size: 15px; }
.mm-pt-d-karty span { display: block; font-size: 13px; line-height: 1.45; color: #45474b; }
.mm-pt-d-karty--odkazy { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mm-pt-d-karty--odkazy li { padding: 0; }
.mm-pt-d-karty--odkazy a { display: block; height: 100%; padding: 14px; color: inherit; text-decoration: none; }
.mm-pt-d-karty--odkazy a:hover strong { text-decoration: underline; }
.mm-pt-d-kroky { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; counter-reset: mm-krok; }
.mm-pt-d-kroky li { position: relative; margin: 0; padding: 14px 14px 14px 56px; border-radius: 6px; background: #f4f4f4; counter-increment: mm-krok; }
.mm-pt-d-kroky li::before {
  content: counter(mm-krok);
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #ffc500;
  color: #000;
  font-weight: 800;
  line-height: 30px;
  text-align: center;
}
.mm-pt-d-kroky strong { display: block; }
.mm-pt-d-kroky span { font-size: 13px; color: #45474b; }
.mm-pt-d-kvalita ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mm-pt-detail .mm-pt-d-kvalita li { margin: 0; padding: 8px 14px; border-radius: 18px; background: #000; color: #ffc500; font-size: 13px; font-weight: 700; line-height: 1.3; }
.mm-pt-d-kvalita li::before { content: none; }
.mm-pt-d-otazky details { border-bottom: 1px solid #e3e3e3; }
.mm-pt-d-otazky summary { position: relative; padding: 12px 28px 12px 0; font-weight: 700; cursor: pointer; list-style: none; }
.mm-pt-d-otazky summary::-webkit-details-marker { display: none; }
.mm-pt-d-otazky summary::after { content: "+"; position: absolute; right: 4px; top: 8px; font-size: 22px; font-weight: 400; }
.mm-pt-d-otazky details[open] summary::after { content: "\2013"; }
.mm-pt-d-otazky details p { margin: 0 0 12px; color: #45474b; }
.mm-pt-d-upozorneni p { font-size: 13px; color: #45474b; }
/* .daily-beauty je třída šablony (šedé pozadí přes celou šířku) – tady jen cíl záložky DÁVKOVÁNÍ */
.mm-pt-detail .daily-beauty { margin: 0 0 36px; padding: 0; background: none; }
.mm-pt-detail .daily-beauty::before,
.mm-pt-detail .daily-beauty::after { content: none; display: none; }

/* Tabulka velikostí (MMclaude.js › vlozTabulkuVelikosti) */
.mm-velikosti-tabulka { width: 100%; border-collapse: collapse; font-size: 14px; }
.mm-velikosti-tabulka th,
.mm-velikosti-tabulka td { padding: 10px 8px; border-bottom: 1px solid #e3e3e3; text-align: left; }
.mm-velikosti-tabulka th { font-size: 12px; text-transform: uppercase; color: #6a6d72; }
.mm-velikosti-tabulka__vybrana td { background: #fff6d6; font-weight: 700; }
.mm-velikosti-tabulka a { font-weight: 700; color: #000; }

/* Složení po příchutích (MMclaude.js › vlozSlozeni) */
.mm-slozeni__volby { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 6px; margin-bottom: 14px; }
.mm-slozeni__volba {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 6px 2px;
  border: 2px solid transparent;
  border-radius: 8px;
  background: none;
  color: #1a1a1a;
  font: inherit;
  font-size: 11.5px;
  line-height: 1.2;
  cursor: pointer;
}
.mm-slozeni__volba img { width: 100%; max-width: 56px; height: auto; border-radius: 50%; }
.mm-slozeni__volba[aria-selected="true"] { border-color: #000; background: #fff6d6; font-weight: 700; }
.mm-slozeni__nazev { margin: 0 0 8px; font-size: 18px; }
.mm-slozeni__tabulka { width: 100%; border-collapse: collapse; font-size: 14px; }
.mm-slozeni__tabulka th,
.mm-slozeni__tabulka td { padding: 7px 8px; border-bottom: 1px solid #e3e3e3; text-align: left; }
.mm-slozeni__tabulka th { background: #000; color: #ffc500; font-size: 12px; }
.mm-slozeni__tabulka td:not(:first-child),
.mm-slozeni__tabulka th:not(:first-child) { text-align: right; white-space: nowrap; }
.mm-slozeni__podradek td:first-child { padding-left: 20px; color: #45474b; }
.mm-slozeni__rozbal { margin-top: 10px; border-bottom: 1px solid #e3e3e3; }
.mm-slozeni__rozbal summary { padding: 10px 0; font-weight: 700; cursor: pointer; }
.mm-slozeni__rozbal p { font-size: 13.5px; color: #45474b; }
.mm-slozeni__poznamka { font-size: 12px; color: #6a6d72; }

@media (max-width: 767px) {
  .mm-pt-d-uvod { flex-direction: column-reverse; align-items: flex-start; padding: 20px; }
  .mm-pt-d-uvod__thor { width: 90px; flex-basis: auto; }
  .mm-pt-d-karty,
  .mm-pt-d-karty--odkazy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mm-pt-d-kroky { grid-template-columns: 1fr; }
  .mm-slozeni__volby { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .mm-velikosti-tabulka { font-size: 13px; }
  .mm-velikosti-tabulka th,
  .mm-velikosti-tabulka td { padding: 8px 4px; }
}
@media (max-width: 400px) {
  .mm-pt-d-karty,
  .mm-pt-d-karty--odkazy { grid-template-columns: 1fr; }
  .mm-detail-duvera { grid-template-columns: 1fr; }
}

/* =========================================================
   Proteinathor – panáček Thor v sekcích (jen ve stylech, HTML se nemění)
   Obrázky: upload/detail-popis/proteinathor/thor/*.webp (oříznuté nastroje/orez-obrazku.js)
   Kategorie: body.type-category[data-mm-znacka="proteinathor"], detail: body[data-mm-detail="proteinathor"]
   ========================================================= */

/* ---------- Kategorie ---------- */
/* Banner: Thor s dózou na rozhraní textu a fotky (jen počítač) */
@media (min-width: 992px) {
  body.type-category[data-mm-znacka="proteinathor"] .mm-pt-hero { position: relative; overflow: visible; }
  body.type-category[data-mm-znacka="proteinathor"] .mm-pt-hero::after {
    content: "";
    position: absolute;
    z-index: 3;
    left: calc(50% - 95px);
    bottom: 0;
    width: 130px;
    height: 270px;
    background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-doza.webp") bottom center / contain no-repeat;
    pointer-events: none;
  }
}

/* Řádek podkategorií na střed (šablona ho zarovnává doleva) */
body.type-category[data-mm-znacka="proteinathor"] ul.subcategories { justify-content: center; }

/* Thor stojí na čáře pod nadpisem sekce (vpravo): nabídka (čára = spodní okraj h2#scroll-2),
   Co je v odměrce a Srovnání (čára = .active-profile__line), Doplň stack (čára = spodní okraj nadpisu) */
body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2,
body.type-category[data-mm-znacka="proteinathor"] #scroll-1 > .active-profile__line,
body.type-category[data-mm-znacka="proteinathor"] .collagen-comparison > .active-profile__line,
body.type-category[data-mm-znacka="proteinathor"] .custom-product-section > .homepage-group-title { position: relative; overflow: visible; }
body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2::after,
body.type-category[data-mm-znacka="proteinathor"] #scroll-1 > .active-profile__line::after,
body.type-category[data-mm-znacka="proteinathor"] .collagen-comparison > .active-profile__line::after,
body.type-category[data-mm-znacka="proteinathor"] .custom-product-section > .homepage-group-title::after {
  content: "";
  position: absolute;
  z-index: 2;
  right: 8px;
  bottom: 0;
  width: 110px;
  height: 160px;
  background: bottom center / contain no-repeat;
  pointer-events: none;
}
/* Nabídka: nad nadpisem víc místa, ať Thor stojí uvnitř žlutého pásu */
@media (min-width: 768px) {
  body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2 { padding-top: 90px; padding-right: 150px; }
}
/* Čára = horní okraj odstavce pod nadpisem (20 px pod ním) */
body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2::after { bottom: -20px; height: 180px; width: 124px; background-image: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-biceps.webp"); }
body.type-category[data-mm-znacka="proteinathor"] #scroll-1 > .active-profile__line::after { background-image: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-michani.webp"); }
body.type-category[data-mm-znacka="proteinathor"] .collagen-comparison > .active-profile__line::after { background-image: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-ruce-zkrizene.webp"); }
body.type-category[data-mm-znacka="proteinathor"] .custom-product-section > .homepage-group-title::after { bottom: -20px; width: 150px; background-image: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-cinka.webp"); }

/* Příchutě: místo starého odznaku s kladivem Thor se shakerem */
.mm-pt-prichute__thor { display: none; }
.mm-pt-prichute__hlava::after {
  content: "";
  flex: 0 0 auto;
  width: 64px;
  height: 160px;
  background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-prichute.webp") bottom center / contain no-repeat;
}

/* Hodnocení (kategorie i detail): Thor drží ceduli s výzvou */
.mm-pt-recenze.mm-recenze--prazdne,
.mm-pt-recenze .mm-recenze--prazdne { position: relative; }
@media (min-width: 768px) {
  .mm-pt-recenze .mm-recenze--prazdne,
  .mm-pt-recenze.mm-recenze--prazdne { padding-left: 230px; min-height: 380px; }
  .mm-pt-recenze .mm-recenze--prazdne::before,
  .mm-pt-recenze.mm-recenze--prazdne::before {
    content: "";
    position: absolute;
    left: max(0px, calc(50% - 420px));
    top: 0;
    width: 185px;
    height: 380px;
    background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-cedule.webp") top center / contain no-repeat;
  }
  /* Text na ceduli (cedule je asi 19–95 % šířky a 26–51 % výšky obrázku) */
  .mm-pt-recenze .mm-recenze--prazdne::after,
  .mm-pt-recenze.mm-recenze--prazdne::after {
    content: "Tvoje\A recenze\A sem!";
    white-space: pre;
    position: absolute;
    left: calc(max(0px, calc(50% - 420px)) + 38px);
    top: 104px;
    width: 140px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    text-transform: uppercase;
    transform: rotate(-3deg);
  }
}

/* Mobil: Thor s cedulí nad nadpisem, uprostřed (cedule 19–95 % šířky, 26–51 % výšky obrázku) */
@media (max-width: 767px) {
  .mm-pt-recenze .mm-recenze--prazdne,
  .mm-pt-recenze.mm-recenze--prazdne { padding-top: 250px; }
  .mm-pt-recenze .mm-recenze--prazdne::before,
  .mm-pt-recenze.mm-recenze--prazdne::before {
    content: "";
    position: absolute;
    left: calc(50% - 59px);
    top: 0;
    width: 117px;
    height: 240px;
    background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-cedule.webp") top center / contain no-repeat;
  }
  .mm-pt-recenze .mm-recenze--prazdne::after,
  .mm-pt-recenze.mm-recenze--prazdne::after {
    content: "Tvoje\A recenze\A sem!";
    white-space: pre;
    position: absolute;
    left: calc(50% - 59px + 22px);
    top: 62px;
    width: 89px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    text-transform: uppercase;
    transform: rotate(-3deg);
  }
}

/* Časté dotazy: místo Thora s otazníky Thor se zdviženým prstem */
.mm-pt-dotazy .mm-pt-dotazy__thor img { display: none; }
.mm-pt-dotazy .mm-pt-dotazy__thor {
  min-height: 420px;
  background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-premysli.webp") center / contain no-repeat;
}

@media (max-width: 767px) {
  body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2 { padding-right: 90px; }
  body.type-category[data-mm-znacka="proteinathor"] h2#scroll-2::after,
  body.type-category[data-mm-znacka="proteinathor"] #scroll-1 > .active-profile__line::after,
  body.type-category[data-mm-znacka="proteinathor"] .collagen-comparison > .active-profile__line::after,
  body.type-category[data-mm-znacka="proteinathor"] .custom-product-section > .homepage-group-title::after { width: 72px; height: 110px; right: 4px; }
  .mm-pt-dotazy .mm-pt-dotazy__thor { min-height: 220px; }
}

/* ---------- Detail proteinu ---------- */
/* Úvod: místo Thora s kladivem Thor s dózou, přesahuje dolní okraj černého boxu */
.mm-pt-d-uvod { overflow: visible; }
.mm-pt-d-uvod .mm-pt-d-uvod__thor { display: none; }
.mm-pt-d-uvod::after {
  content: "";
  flex: 0 0 130px;
  align-self: flex-end;
  height: 250px;
  margin: -40px 0 -24px;
  background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-doza-2.webp") bottom center / contain no-repeat;
}
/* Příprava: Thor se shakerem vedle kroků */
.mm-pt-d-sekce:has(> .mm-pt-d-kroky) { position: relative; }
@media (min-width: 768px) {
  .mm-pt-d-sekce:has(> .mm-pt-d-kroky) { padding-right: 130px; }
  .mm-pt-d-sekce:has(> .mm-pt-d-kroky)::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 110px;
    height: 210px;
    background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-shaker.webp") bottom center / contain no-repeat;
  }
  /* Časté dotazy: Thor se zdviženým prstem */
  .mm-pt-d-otazky { position: relative; padding-right: 170px; }
  .mm-pt-d-otazky::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 140px;
    height: 360px;
    background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-premysli.webp") top center / contain no-repeat;
  }
}
@media (max-width: 767px) {
  .mm-pt-d-uvod::after { flex-basis: auto; width: 80px; height: 150px; margin: -20px 0 -16px auto; }
}

/* =========================================================
   Proteinathor – předplatné: sekce v kategorii (#scroll-6, MMclaude.js › vlozBlokPredplatneho)
   a výhody na detailu předplatného (vlozVyhodyPredplatneho)
   ========================================================= */
.mm-pt-predpl { position: relative; }
.mm-pt-predpl > .homepage-group-title { text-align: center; }
/* Výhody: 4 dlaždice se žlutým proužkem */
.mm-predpl-vyhody { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0 0 24px; padding: 0; list-style: none; }
.mm-predpl-vyhody li { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 12px 14px; border-left: 4px solid #ffc500; border-radius: 6px; background: #f6f6f6; font-size: 13px; line-height: 1.4; color: #45474b; }
.mm-predpl-vyhody li::before { content: none; }
.mm-predpl-vyhody strong { color: #000; font-size: 14px; }
/* Na detailu předplatného v nákupním bloku: 2 sloupce */
.p-info-wrapper .mm-predpl-vyhody { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 10px 0 14px; }
.p-info-wrapper .mm-predpl-vyhody li { padding: 8px 10px; font-size: 12px; }
.p-info-wrapper .mm-predpl-vyhody strong { font-size: 13px; }

/* Karty produktů s předplatným */
.mm-predpl-karty { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.mm-predpl-karta { margin: 0; padding: 0; }
.mm-predpl-karta::before { content: none; }
.mm-predpl-karta__odkaz {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 14px;
  border: 2px solid #ffc500;
  border-radius: 10px;
  background: #fff;
  color: #1a1a1a;
  text-decoration: none;
  transition: box-shadow .15s;
}
a.mm-predpl-karta__odkaz:hover,
a.mm-predpl-karta__odkaz:focus-visible { box-shadow: 0 6px 18px rgba(0, 0, 0, .12); color: #1a1a1a; text-decoration: none; }
.mm-predpl-karta__obrazek { width: 100%; height: 150px; margin-bottom: 10px; object-fit: contain; }
.mm-predpl-karta__nazev { font-size: 16px; }
.mm-predpl-karta__popis { margin-top: 2px; font-size: 13px; color: #6a6d72; }
.mm-predpl-karta__ceny { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin-top: auto; padding-top: 10px; }
.mm-predpl-karta__ceny del { color: #8a8a8a; font-size: 14px; }
.mm-predpl-karta__ceny b { color: #c8161d; font-size: 22px; font-weight: 800; }
.mm-predpl-karta__ceny small { color: #6a6d72; font-size: 12px; }
.mm-predpl-karta__uspora { margin-top: 2px; color: #1e7a34; font-size: 12.5px; font-weight: 700; }
.mm-predpl-karta__tlacitko { margin-top: 10px; background: #ffc500; border-color: #ffc500; color: #000; font-weight: 700; text-align: center; }
/* Proteiny – aktuálně nedostupné */
.mm-predpl-karta--nedostupne .mm-predpl-karta__odkaz { border-color: #d6d6d6; background: #f6f6f6; }
.mm-predpl-karta--nedostupne .mm-predpl-karta__obrazek { filter: grayscale(1); opacity: .55; }
.mm-predpl-karta--nedostupne .mm-predpl-karta__nazev { color: #6a6d72; }
.mm-predpl-karta__stitek { align-self: flex-start; margin-top: auto; padding: 4px 10px; border-radius: 12px; background: #6a6d72; color: #fff; font-size: 12px; font-weight: 700; }
.mm-predpl-karta--nedostupne .mm-predpl-karta__popis { margin-bottom: 10px; }

/* Thor u nadpisu sekce (čára = horní okraj úvodního textu) */
body.type-category[data-mm-znacka="proteinathor"] .mm-pt-predpl > .homepage-group-title { position: relative; }
body.type-category[data-mm-znacka="proteinathor"] .mm-pt-predpl > .homepage-group-title::after {
  content: "";
  position: absolute;
  right: 8px;
  bottom: -6px;
  width: 110px;
  height: 160px;
  background: url("/user/documents/upload/detail-popis/proteinathor/thor/thor-hura.webp") bottom center / contain no-repeat;
  pointer-events: none;
}

@media (max-width: 991px) {
  .mm-predpl-vyhody { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mm-predpl-karty { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  .mm-predpl-karty { grid-template-columns: 1fr; }
  /* Na mobilu karta na šířku: obrázek vlevo, text vpravo */
  .mm-predpl-karta__odkaz { display: grid; grid-template-columns: 90px 1fr; column-gap: 12px; }
  .mm-predpl-karta__obrazek { grid-row: 1 / span 6; height: 90px; margin: 0; }
  .mm-predpl-karta__ceny { padding-top: 6px; }
}
@media (max-width: 479px) {
  .mm-predpl-vyhody, .p-info-wrapper .mm-predpl-vyhody { grid-template-columns: 1fr; }
  .mm-predpl-karta__obrazek { height: 110px; }
  .mm-predpl-karta__ceny b { font-size: 19px; }
  body.type-category[data-mm-znacka="proteinathor"] .mm-pt-predpl > .homepage-group-title::after { width: 64px; height: 100px; right: 0; }
  body.type-category[data-mm-znacka="proteinathor"] .mm-pt-predpl > .homepage-group-title { padding-right: 64px; }
}

/* =========================================================
   Proteinathor Kreatin – detail (html/proteinathor-kreatin-popis.html, .mm-pt-kr)
   Karty ve stylu Vilgainu v barvách Proteinathoru; nákupní blok: varianty jako velké karty (detail › variantyKarty)
   ========================================================= */
/* Varianty Natural / Mango jako dvě velké karty s popisem */
#simple-variants.mm-varianty--karty { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
#simple-variants.mm-varianty--karty .mm-varianta {
  display: grid;
  grid-template-columns: 44px 1fr;
  column-gap: 10px;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px 12px;
  border-radius: 10px;
}
#simple-variants.mm-varianty--karty .mm-varianta__kolecko { grid-row: 1 / span 3; width: 44px; height: 44px; }
#simple-variants.mm-varianty--karty .mm-varianta__nazev { font-size: 14px; font-weight: 700; }
.mm-varianta__popis { color: #6a6d72; font-size: 12px; font-weight: 400; line-height: 1.3; }
#simple-variants.mm-varianty--karty label.advanced-parameter { display: block; }
#simple-variants.mm-varianty--karty label.advanced-parameter:has(input:checked) .mm-varianta { border-color: #000; box-shadow: inset 0 0 0 1px #000; background: #fffbea; }

/* Karty popisu */
.mm-pt-kr { display: flex; flex-direction: column; gap: 16px; }
.mm-kr-karta { position: relative; padding: 32px 28px; border-radius: 16px; text-align: center; }
.mm-pt-kr .mm-kr-karta h2 { margin: 0 0 12px; font-size: 26px; font-weight: 800; line-height: 1.2; }
.mm-kr-karta > p { max-width: 640px; margin: 0 auto 10px; color: #45474b; }
.mm-kr-karta--cerna { background: #0b0b0b; color: #fff; }
.mm-pt-kr .mm-kr-karta--cerna h2 { color: #fff; }
.mm-kr-karta--cerna p { color: #c9c9c9; }
.mm-kr-karta--zluta { background: #fff4cc; }
.mm-kr-karta--seda { background: #f3f3f3; }
.mm-kr-karta--bila { background: #fff; border: 1px solid #e3e3e3; }
.mm-kr-zvyraznit { color: #c99a00; }
/* Úvod s Thorem */
.mm-kr-uvod { display: flex; align-items: center; gap: 24px; text-align: left; overflow: visible; }
.mm-kr-uvod__text { flex: 1; }
.mm-pt-kr .mm-kr-uvod h2 { color: #ffc500; }
.mm-kr-uvod p { margin: 0; }
.mm-kr-thor { flex: 0 0 120px; width: 120px; height: auto; margin: -50px 0 -32px; align-self: flex-end; }
.mm-kr-thor--maly { position: absolute; right: 16px; bottom: 0; width: 90px; margin: 0; }
/* Čísla */
.mm-kr-cisla { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-kr-cisla li { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 18px 10px; border-radius: 14px; background: #000; }
.mm-kr-cisla li::before { content: none; }
.mm-kr-cisla strong { color: #ffc500; font-size: 32px; font-weight: 800; line-height: 1; }
.mm-kr-cisla span { color: #fff; font-size: 12.5px; line-height: 1.3; }
/* Graf */
.mm-kr-graf { display: block; width: 100%; max-width: 680px; height: auto; margin: 14px auto 0; }
/* Sporty */
.mm-kr-sporty { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 16px; margin: 20px 0 0; padding: 0; list-style: none; }
.mm-kr-sporty li { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 0; }
.mm-kr-sporty li::before { content: none; }
.mm-kr-sporty img { width: 48px; height: 48px; margin-bottom: 4px; }
.mm-kr-sporty strong { color: #fff; font-size: 14px; }
.mm-kr-sporty span { color: #bdbdbd; font-size: 12.5px; }
/* Pruhy forem kreatinu */
.mm-kr-pruhy { max-width: 560px; margin: 18px auto 6px; padding: 0; list-style: none; text-align: left; }
.mm-kr-pruhy li { position: relative; margin: 0 0 12px; padding-top: 22px; font-size: 13px; color: #45474b; }
.mm-kr-pruhy li::before { content: none; }
.mm-kr-pruhy span { position: absolute; top: 0; left: 0; height: 16px; border-radius: 8px; background: #cfcfcf; }
.mm-kr-pruhy strong { margin-right: 6px; color: #1a1a1a; }
.mm-kr-pruhy .mm-kr-pruhy__nas span { background: #ffc500; }
.mm-kr-pruhy .mm-kr-pruhy__nas { font-weight: 700; color: #1a1a1a; }
/* Natural vs mango */
.mm-kr-dve { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; text-align: left; }
.mm-kr-volba { display: flex; flex-direction: column; gap: 6px; padding: 18px; border: 2px solid #ffc500; border-radius: 14px; }
.mm-kr-volba img { width: 64px; height: 64px; border-radius: 50%; }
.mm-kr-volba strong { font-size: 16px; }
.mm-kr-volba span { font-size: 13.5px; color: #45474b; }
.mm-kr-volba em { align-self: flex-start; margin-top: auto; padding: 3px 10px; border-radius: 10px; background: #000; color: #ffc500; font-size: 12px; font-style: normal; font-weight: 700; }
/* Jak ho brát (sekce je zároveň cíl záložky DÁVKOVÁNÍ – .daily-beauty šablony bez jejího pozadí) */
.mm-pt-kr .mm-kr-priprava.daily-beauty { margin: 0; padding: 32px 120px 32px 28px; background: #f3f3f3; text-align: left; }
.mm-pt-kr .mm-kr-priprava.daily-beauty::before,
.mm-pt-kr .mm-kr-priprava.daily-beauty::after { content: none; display: none; }
.mm-kr-priprava .mm-pt-d-kroky li { background: #fff; }
/* Zdroje */
.mm-kr-zdroje { margin-bottom: 14px; padding: 12px 16px; border-radius: 10px; background: #f6f6f6; }
.mm-kr-zdroje summary { font-weight: 700; cursor: pointer; }
.mm-kr-zdroje ol { margin: 10px 0 0; padding-left: 20px; font-size: 13px; color: #45474b; }

@media (max-width: 767px) {
  .mm-kr-karta { padding: 24px 16px; }
  .mm-pt-kr .mm-kr-karta h2 { font-size: 21px; }
  .mm-kr-uvod { flex-direction: column-reverse; align-items: flex-start; }
  .mm-kr-thor { width: 80px; flex-basis: auto; margin: -36px 0 -24px auto; }
  .mm-kr-cisla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mm-kr-sporty { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mm-kr-dve { grid-template-columns: 1fr; }
  .mm-pt-kr .mm-kr-priprava.daily-beauty { padding: 24px 16px 0; }
  /* Na mobilu Thor pod kroky, vpravo, stojí na spodní hraně karty */
  .mm-kr-thor--maly { position: static; display: block; width: 70px; margin: 8px 0 0 auto; }
}
@media (max-width: 400px) {
  #simple-variants.mm-varianty--karty { grid-template-columns: 1fr; }
}

/* =========================================================
   Orca Hydration – kategorie /orca-hydration/ a detail produktu
   Kategorie: body.type-category[data-mm-znacka="orca-hydration"], detail: body[data-mm-detail="orca-hydration"]
   Popisy: html/orca-hydration-kategorie-popis1/2.html, html/orca-hydration-popis.html (třídy mm-oh-*)
   Návrh: docs/hydration/wireframy.html (verze 2 – velké fotky, drobné ikony)
   ========================================================= */
.mm-oh, .mm-oh-hero, .mm-oh-duvera { --mm-oh-navy: #16285a; --mm-oh-modra: #2b5fae; --mm-oh-nebe: #86c3ee; --mm-oh-led: #eaf4fc; --mm-oh-noc: #0f1c40; }

/* ---------- Hero kategorie: na počítači fotka vpravo (2/3), text vlevo bez překryvu ---------- */
.mm-oh-hero .category-headline__title { color: var(--mm-oh-navy); font-weight: 300; }
.mm-oh-hero .category-headline__title strong { font-weight: 800; }
.mm-oh-hero__nadtitulek { margin: 0 0 6px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #5b6b85; }
.mm-oh-hero__perex { margin: 0 0 10px; font-size: 17px; line-height: 1.45; color: var(--mm-oh-navy); }
.category-headline .mm-oh-hero__cena { margin: 4px 0 16px; color: var(--mm-oh-modra); font-size: 18px; font-weight: 700; }
.category-headline .mm-oh-hero__cena strong { font-size: 28px; font-weight: 800; color: var(--mm-oh-modra); }
.mm-oh-hero__tlacitka { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
.mm-oh-hero .btn, .mm-oh .btn { border-radius: 30px; }
.btn.mm-oh-btn-obrys { background: transparent; border: 2px solid var(--mm-oh-navy); color: var(--mm-oh-navy); }
.btn.mm-oh-btn-obrys:hover { background: var(--mm-oh-navy); color: #fff; }
@media (min-width: 992px) {
  body[data-mm-znacka="orca-hydration"] .mm-oh-hero .mm-slider.category-headline__image { left: 36%; }
  body[data-mm-znacka="orca-hydration"] .mm-oh-hero .mm-slider::after { display: none; }
  body[data-mm-znacka="orca-hydration"] .mm-oh-hero .category-headline__content { max-width: 34%; }
  .mm-oh-hero .mm-slider__snimek img, .mm-oh-hero .mm-slider__nahradni { object-position: center center; }
}

/* ---------- Lišta důvěry pod hero – drobné piktogramy ---------- */
.mm-oh-duvera { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.mm-oh-duvera li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 12px; border-radius: 12px; background: var(--mm-oh-led); color: #4a5872; font-size: 12.5px; line-height: 1.3; }
.mm-oh-duvera li::before, .mm-oh-duvera li::marker { content: none; }
.mm-oh-duvera img { flex: 0 0 38px; width: 38px; height: 38px; }
.mm-oh-duvera strong { color: var(--mm-oh-navy); }
@media (max-width: 991px) { .mm-oh-duvera { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mm-oh-duvera li:last-child { grid-column: span 2; } }
@media (max-width: 479px) { .mm-oh-duvera li { padding: 8px 10px; font-size: 12px; } .mm-oh-duvera img { flex-basis: 32px; width: 32px; height: 32px; } }

/* ---------- Společné sekce popisů ---------- */
.mm-oh { color: var(--mm-oh-navy); }
.mm-oh-sekce { margin: 0 0 48px; }
.mm-oh p { color: #4a5872; font-size: 15px; line-height: 1.55; }
.mm-oh .mm-oh-nadpis { margin: 0 0 10px; color: var(--mm-oh-navy); font-size: 28px; font-weight: 300; line-height: 1.2; text-transform: none; }
.mm-oh .mm-oh-nadpis strong { font-weight: 800; }
.mm-oh .mm-oh-nadpis img { width: 36px; height: 36px; vertical-align: middle; margin-right: 6px; }
.mm-oh-hlava { max-width: 640px; margin: 0 auto 18px; text-align: center; }
.mm-oh .mm-oh-hlava p { margin: 0; font-size: 14px; }
.mm-oh .mm-oh-pozn { font-size: 12px; color: #7a87a0; margin: 8px 0 0; }
.mm-oh .mm-oh-stred { text-align: center; max-width: 720px; margin: 14px auto 0; }
.mm-oh img { max-width: 100%; height: auto; }
.mm-oh .mm-oh-velky { display: block; width: 100%; border-radius: 16px; }
.mm-oh a:not(.btn) { color: var(--mm-oh-modra); }
.btn.mm-oh-btn, .btn.mm-oh-btn-svetle { display: inline-block; padding: 12px 26px; border: 0; font-weight: 700; }
.btn.mm-oh-btn { background: var(--mm-oh-navy); color: #fff; }
.btn.mm-oh-btn-svetle { background: #fff; color: var(--mm-oh-navy); }
@media (max-width: 767px) { .mm-oh .mm-oh-nadpis { font-size: 23px; } .mm-oh-sekce { margin-bottom: 36px; } }

/* Půl fotka, půl text */
.mm-oh-pul { display: grid; grid-template-columns: 1.3fr 1fr; gap: 32px; align-items: center; }
.mm-oh-pul__obrazek img { display: block; width: 100%; border-radius: 16px; }
.mm-oh-pul--tma { grid-template-columns: 1fr 1.1fr; padding: 32px; border-radius: 20px; background: var(--mm-oh-noc); }
.mm-oh .mm-oh-pul--tma .mm-oh-nadpis, .mm-oh .mm-oh-pul--tma strong { color: #fff; }
.mm-oh .mm-oh-pul--tma p, .mm-oh .mm-oh-pul--tma li, .mm-oh .mm-oh-pul--tma span { color: #c6d1ea; }
.mm-oh .mm-oh-pul--tma .mm-oh-pozn { color: #93a3c6; }
.mm-oh-pul--svetle { padding: 28px; border-radius: 20px; background: var(--mm-oh-led); }
.mm-oh-pul__text > img { margin-top: 14px; border-radius: 12px; }
@media (max-width: 767px) {
  .mm-oh-pul, .mm-oh-pul--tma { grid-template-columns: 1fr; gap: 18px; }
  .mm-oh-pul--tma, .mm-oh-pul--svetle { padding: 20px 16px; }
  .mm-oh-pul .mm-oh-pul__obrazek { order: -1; }
}

/* Seznam s malými ikonami vlevo, fajfky */
.mm-oh .mm-oh-seznam-ikon { margin: 14px 0; padding: 0; list-style: none; }
.mm-oh .mm-oh-seznam-ikon li { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; padding: 0; font-size: 14px; }
.mm-oh .mm-oh-seznam-ikon li::before { content: none; }
.mm-oh .mm-oh-seznam-ikon img { flex: 0 0 34px; width: 34px; height: 34px; }
.mm-oh .mm-oh-fajfky { font-size: 13px; }
.mm-oh .mm-oh-fajfky-seznam { margin: 10px 0; padding: 0; list-style: none; font-size: 13px; line-height: 1.5; color: #4a5872; }
.mm-oh .mm-oh-fajfky-seznam li { position: relative; margin: 0 0 6px; padding-left: 22px; }
.mm-oh .mm-oh-fajfky-seznam li::before { content: "✓"; position: absolute; left: 0; color: var(--mm-oh-modra); font-weight: 800; }

/* Řádek drobných ikon pod nadpisem */
.mm-oh .mm-oh-ikony { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin: 0 0 18px; padding: 0; list-style: none; }
.mm-oh .mm-oh-ikony li { display: flex; flex-direction: column; align-items: center; gap: 4px; width: 110px; margin: 0; padding: 0; font-size: 12px; line-height: 1.25; text-align: center; color: #4a5872; }
.mm-oh .mm-oh-ikony li::before { content: none; }
.mm-oh .mm-oh-ikony img { width: 44px; height: 44px; }
@media (max-width: 479px) { .mm-oh .mm-oh-ikony li { width: 74px; font-size: 11px; } .mm-oh .mm-oh-ikony img { width: 36px; height: 36px; } }

/* Čísla (úvod) a čísla elektrolytů (jen mobil – v infografice jsou tam drobná) */
.mm-oh .mm-oh-cisla { display: flex; flex-wrap: wrap; gap: 6px 22px; margin: 12px 0 0; padding: 0; list-style: none; }
.mm-oh .mm-oh-cisla li { margin: 0; padding: 0; font-size: 13px; }
.mm-oh .mm-oh-cisla li::before { content: none; }
.mm-oh .mm-oh-cisla strong { display: block; font-size: 26px; font-weight: 800; line-height: 1.1; }
.mm-oh .mm-oh-cisla--elektrolyty { display: none; justify-content: center; text-align: center; }
@media (max-width: 767px) { .mm-oh .mm-oh-cisla--elektrolyty { display: grid; grid-template-columns: repeat(2, 1fr); } }

/* Mozaika fotek „Kdy pít“ */
.mm-oh .mm-oh-mozaika { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 230px 230px; gap: 10px; margin: 0; padding: 0; list-style: none; }
.mm-oh .mm-oh-mozaika li { position: relative; margin: 0; padding: 0; overflow: hidden; border-radius: 16px; }
.mm-oh .mm-oh-mozaika li::before { content: none; }
.mm-oh .mm-oh-mozaika li:first-child { grid-row: span 2; }
.mm-oh .mm-oh-mozaika img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mm-oh .mm-oh-mozaika span { position: absolute; left: 10px; bottom: 10px; padding: 4px 12px; border-radius: 14px; background: rgba(255, 255, 255, .93); color: var(--mm-oh-navy); font-size: 12px; font-weight: 700; }
@media (max-width: 767px) {
  .mm-oh .mm-oh-mozaika { grid-template-columns: 1fr 1fr; grid-template-rows: 260px 150px 150px; }
  .mm-oh .mm-oh-mozaika li:first-child { grid-column: span 2; grid-row: auto; }
}

/* Příchutě – barevné dlaždice */
.mm-oh .mm-oh-prichute__seznam { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-oh .mm-oh-prichut { margin: 0; padding: 0; border-radius: 16px; overflow: hidden; }
.mm-oh .mm-oh-prichut::before { content: none; }
.mm-oh .mm-oh-prichut > a, .mm-oh .mm-oh-prichut > span { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; min-height: 230px; padding: 18px 14px; color: var(--mm-oh-navy); text-align: center; text-decoration: none; }
.mm-oh .mm-oh-prichut img { width: 96px; height: 96px; margin-bottom: auto; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 6px 18px rgba(0, 0, 0, .12); }
.mm-oh .mm-oh-prichut strong { font-size: 18px; color: var(--mm-oh-navy); }
.mm-oh .mm-oh-prichut > a > span { font-size: 12.5px; color: #3c4a66; }
.mm-oh .mm-oh-prichut > a:hover strong { text-decoration: underline; }
.mm-oh-prichut--lesni { background: linear-gradient(#f6c3cf, #e07d95); }
.mm-oh-prichut--mango { background: linear-gradient(#fcdca6, #f4ad52); }
.mm-oh-prichut--citron { background: linear-gradient(#faefb3, #efd862); }
@media (max-width: 767px) {
  .mm-oh .mm-oh-prichute__seznam { grid-template-columns: 1fr; }
  .mm-oh .mm-oh-prichut > a, .mm-oh .mm-oh-prichut > span { display: grid; grid-template-columns: 64px 1fr; align-items: center; column-gap: 14px; min-height: 0; text-align: left; }
  .mm-oh .mm-oh-prichut img { grid-row: span 2; width: 64px; height: 64px; margin: 0; }
}

/* Banner – fotka přes celou šířku s textem vlevo */
.mm-oh-banner { position: relative; overflow: hidden; border-radius: 20px; }
.mm-oh-banner > img { display: block; width: 100%; height: 440px; object-fit: cover; object-position: center 30%; }
.mm-oh-banner__text { position: absolute; inset: 0 auto 0 0; display: flex; flex-direction: column; justify-content: center; max-width: 540px; padding: 32px 36px; background: linear-gradient(90deg, rgba(15, 28, 64, .86), rgba(15, 28, 64, .55) 70%, rgba(15, 28, 64, 0)); }
.mm-oh .mm-oh-banner__text .mm-oh-nadpis, .mm-oh .mm-oh-banner__text strong, .mm-oh .mm-oh-banner__text li { color: #fff; }
.mm-oh .mm-oh-banner__text p { color: #e3e9f6; font-size: 14px; }
.mm-oh-banner__text .btn { align-self: flex-start; }
@media (max-width: 767px) {
  .mm-oh-banner > img { height: 260px; }
  .mm-oh-banner__text { position: static; max-width: none; padding: 20px 16px; background: var(--mm-oh-noc); }
}

/* Tmavá sekce s infografikou (GCTGmax) */
.mm-oh-tma { padding: 0 0 20px; border-radius: 20px; background: #10183f; }
.mm-oh-tma .mm-oh-velky { border-radius: 20px 20px 0 0; }
.mm-oh .mm-oh-tma p, .mm-oh .mm-oh-tma strong { color: #dbe3f5; }
.mm-oh .mm-oh-tma p { padding: 0 16px; }

/* Stupnice osmolality (0–600 mOsm/kg: hypotonické do 270, izotonické 270–330, hypertonické nad 330).
   Barevný pás je pozadí úseků (výška 14 px), text úseku je popisek pod pásem. */
.mm-oh-stupnice { position: relative; max-width: 760px; margin: 0 auto; padding: 44px 0 46px; }
.mm-oh-stupnice__pas { display: flex; }
.mm-oh-stupnice__pas span { display: block; padding-top: 22px; background-repeat: no-repeat; background-size: 100% 14px; color: #4a5872; font-size: 11.5px; line-height: 1.2; text-align: center; white-space: nowrap; }
.mm-oh-stupnice__hypo { width: 45%; background-image: linear-gradient(90deg, #d8ecfa, #86c3ee); }
.mm-oh-stupnice__iso { width: 10%; background-image: linear-gradient(#b9c4d6, #b9c4d6); }
.mm-oh-stupnice__hyper { width: 45%; background-image: linear-gradient(90deg, #c9cfdc, #9aa4b8); }
.mm-oh-stupnice__znacka { position: absolute; transform: translateX(-50%); white-space: nowrap; font-size: 12px; color: #4a5872; }
.mm-oh-stupnice__znacka::after { content: ''; position: absolute; left: 50%; width: 2px; background: currentColor; }
.mm-oh-stupnice__znacka--orca { top: 8px; color: #2b5fae; font-weight: 700; }
.mm-oh .mm-oh-stupnice__znacka--orca strong { color: #2b5fae; }
.mm-oh-stupnice__znacka--orca::after { top: 18px; height: 32px; }
.mm-oh-stupnice__znacka--plazma { bottom: 0; }
.mm-oh-stupnice__znacka--plazma::after { bottom: 16px; height: 46px; }
@media (max-width: 479px) { .mm-oh-stupnice__pas span { font-size: 10px; } .mm-oh-stupnice__iso { color: transparent !important; } }

/* Příprava – 3 fotky */
.mm-oh .mm-oh-kroky { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.mm-oh .mm-oh-kroky li { margin: 0; padding: 0; }
.mm-oh .mm-oh-kroky li::before { content: none; }
.mm-oh .mm-oh-kroky img { display: block; width: 100%; height: 230px; object-fit: cover; border-radius: 14px; }
.mm-oh .mm-oh-kroky strong { display: block; margin-top: 10px; font-size: 15px; }
.mm-oh .mm-oh-kroky span { font-size: 13px; color: #4a5872; }
.mm-oh .mm-oh-kroky-text { margin: 12px 0; padding-left: 20px; }
.mm-oh .mm-oh-kroky-text li { margin: 0 0 8px; font-size: 14px; }
@media (max-width: 767px) { .mm-oh .mm-oh-kroky { grid-template-columns: 1fr; } .mm-oh .mm-oh-kroky img { height: 200px; } }

/* Tabulky (srovnání za den, složení) */
.mm-oh-tabulka-obal { overflow-x: auto; }
.mm-oh .mm-oh-tabulka { width: 100%; border-collapse: collapse; font-size: 14px; color: var(--mm-oh-navy); }
.mm-oh .mm-oh-tabulka th, .mm-oh .mm-oh-tabulka td { padding: 10px 8px; border: 0; border-bottom: 1px solid #d5e1ec; text-align: left; background: none; }
.mm-oh .mm-oh-tabulka th { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #6b7a95; }
.mm-oh .mm-oh-tabulka__nase td { background: var(--mm-oh-led); font-weight: 700; }
.mm-oh .mm-oh-tabulka--slozeni td:not(:first-child), .mm-oh .mm-oh-tabulka--slozeni th:not(:first-child) { white-space: nowrap; }
@media (max-width: 479px) { .mm-oh .mm-oh-tabulka { font-size: 12px; } .mm-oh .mm-oh-tabulka th, .mm-oh .mm-oh-tabulka td { padding: 8px 4px; } }

/* Rozbalovací bloky (složení, dotazy na detailu) */
.mm-oh .mm-oh-rozbal { border-bottom: 1px solid #d5e1ec; }
.mm-oh .mm-oh-rozbal summary { padding: 12px 0; cursor: pointer; font-weight: 700; }
.mm-oh .mm-oh-rozbal p { margin: 0 0 12px; font-size: 14px; }

/* Časté dotazy a SEO text v kategorii */
.mm-oh-dotazy__obrazek img { border-radius: 16px; object-fit: cover; }
.mm-oh-seo { padding: 24px; border-radius: 16px; background: var(--mm-oh-led); }
.mm-oh-seo h3 { margin: 14px 0 6px; font-size: 17px; color: var(--mm-oh-navy); }

/* Části jen pro předplatné / jen pro jednorázový nákup (body[data-mm-druh] nastaví MMclaude.js) */
.mm-oh-jen-predplatne { display: none; }
body[data-mm-druh="predplatne"] .mm-oh-jen-predplatne { display: grid; }
body[data-mm-druh="predplatne"] .mm-oh-jen-jednorazove { display: none; }
@media (max-width: 767px) { body[data-mm-druh="predplatne"] .mm-oh-jen-predplatne { display: grid; grid-template-columns: 1fr; } }

/* ---------- Detail produktu: přepínač balení, příchutě, cena za den v barvách značky ---------- */
body[data-mm-detail="orca-hydration"] .mm-velikosti__volba { border-radius: 12px; border-color: #c9d6e2; color: #16285a; }
body[data-mm-detail="orca-hydration"] a.mm-velikosti__volba:hover { border-color: #16285a; color: #16285a; }
body[data-mm-detail="orca-hydration"] .mm-velikosti__volba--vybrana { border-color: #16285a; background: #eaf4fc; color: #16285a; }
body[data-mm-detail="orca-hydration"] .mm-velikosti__volba span { font-size: 11.5px; color: #5b6b85; }
body[data-mm-detail="orca-hydration"] .mm-varianta { border-color: #c9d6e2; }
body[data-mm-detail="orca-hydration"] #simple-variants.mm-varianty label.advanced-parameter:hover .mm-varianta,
body[data-mm-detail="orca-hydration"] #simple-variants.mm-varianty label.advanced-parameter:has(input:checked) .mm-varianta { border-color: #16285a; box-shadow: inset 0 0 0 1px #16285a; }
body[data-mm-detail="orca-hydration"] #simple-variants.mm-varianty label.advanced-parameter:has(input:focus-visible) .mm-varianta { outline-color: #86c3ee; }
body[data-mm-detail="orca-hydration"] .mm-detail-porce { color: #2b5fae; }
body[data-mm-detail="orca-hydration"] .mm-detail-duvera li { background: #eaf4fc; color: #16285a; }
body[data-mm-detail="orca-hydration"] .mm-detail-duvera img { padding: 0; background: none; }
/* Sekce předplatného v kategorii je zároveň .mm-jen-predplatne (display: revert !important) – vrátit mřížku */
body[data-mm-predplatne="ano"] .mm-oh-pul.mm-jen-predplatne { display: grid !important; }

/* ---------- Orca Hydration – hodnocení (vykreslí MMclaude.js do [data-mm-recenze="orca-hydration"]) ---------- */
.mm-oh-recenze:not(.mm-recenze--hotovo):not(:has(.mm-recenze--hotovo)) { display: none; }
.mm-oh-recenze .mm-recenze__nadpis { margin: 0; font-size: 28px; font-weight: 800; color: #16285a; text-align: center; }
.mm-oh-recenze .mm-recenze__prumer { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #45474b; }
.mm-oh-recenze .mm-recenze__prumer strong { color: #16285a; }
.mm-oh-recenze .mm-hvezdy__plne { color: #86c3ee; }
.mm-oh-recenze .mm-recenze__pruh { background: #e6e6e6; }
.mm-oh-recenze .mm-recenze__pruh span { background: #86c3ee; }
.mm-oh-recenze .mm-recenze__rozpad { display: grid; gap: 4px; min-width: 220px; flex: 1 1 220px; max-width: 360px; margin: 0; padding: 0; list-style: none; }
.mm-oh-recenze .mm-recenze__rozpad li { display: grid; grid-template-columns: 34px 1fr 36px; align-items: center; gap: 8px; font-size: 12.5px; color: #45474b; }
.mm-oh-recenze .mm-recenze__zdroj { margin: 0; font-size: 12px; color: #6a6d72; }
.mm-oh-recenze .mm-recenze__prazdne { max-width: 560px; margin: 0; font-size: 16px; color: #45474b; }
.mm-oh-recenze .mm-recenze__seznam { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.mm-oh-recenze .mm-recenze__polozka { padding: 16px 18px; border: 1px solid #e3e3e3; border-radius: 8px; background: #fff; }
.mm-oh-recenze .mm-recenze__polozka::before { content: none; }
.mm-oh-recenze .mm-recenze__polozka[hidden],
.mm-oh-recenze .mm-recenze__vice[hidden] { display: none; }
.mm-oh-recenze .mm-recenze__autor { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0; font-size: 14px; }
.mm-oh-recenze .mm-recenze__text { margin: 8px 0 0; font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
.mm-oh-recenze .mm-recenze__odpoved { margin: 10px 0 0; padding: 10px 12px; border-left: 3px solid #86c3ee; background: #f6f6f6; font-size: 13px; color: #45474b; }
.mm-oh-recenze .mm-recenze__vice {
  margin: 0;
  min-height: 44px;
  padding: 0 22px;
  border: 2px solid #16285a;
  border-radius: 30px;
  background: #fff;
  color: #16285a;
  font: inherit;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}
.mm-oh-recenze .mm-recenze__vice.mm-recenze__napsat { background: #16285a; border-color: #16285a; color: #fff; }
@media (max-width: 991px) { .mm-oh-recenze .mm-recenze__seznam { grid-template-columns: 1fr; } }
@media (max-width: 479px) { .mm-oh-recenze .mm-recenze__nadpis { font-size: 22px; } }
.mm-oh-pul--tma .mm-oh-pul__obrazek img { max-height: 400px; object-fit: contain; background: #fff; }
/* Orca Hydration – společný popis i pro vzorky (ID 1893): části jen pro vzorky / jen pro balení na 30 dní */
.mm-oh .mm-oh-jen-vzorky { display: none; }
body[data-mm-produkt="1893"] .mm-oh .mm-oh-jen-vzorky { display: block; }
body[data-mm-produkt="1893"] .mm-oh .mm-oh-pul.mm-oh-jen-vzorky { display: grid; }
body[data-mm-produkt="1893"] .mm-oh .mm-oh-ne-vzorky { display: none; }
.mm-oh .mm-oh-pul__text .btn { margin: 4px 6px 4px 0; }
