/* ════════════════════════════════════════════════════════════════════════
   09-sections.css — Velké stránkové sekce (hero, atlas, newsletter, kategorie)

   Zdroj pravdy: navrh-novy/index.html

   Strategie pro sekce v Divi:
   - Section dostane CSS Class (např. .hero) → řídí pozadí a vertikální
     padding přes CSS, ne přes Divi UI.
   - Vnitřní moduly mají CSS Class podle role (.hero-content, .hero-cta
     atd.) — žádné Design tab úpravy v Divi.
   ──────────────────────────────────────────────────────────────────────── */


/* ════════════════════════════════════════════════════════════════════════
   HERO — homepage horní sekce (žluté pozadí, H1 + 4 bannery + 2 CTA)
   ══════════════════════════════════════════════════════════════════════ */

/* ── Section override (Divi padding pryč, naše řídí) ─────────────────── */
.hero,
.hero.et_pb_section{
  background:var(--bg-warm) !important;
  padding:50px 0 60px !important;
  overflow:visible;            /* aby mega-menu mohlo přesahovat nad hero */
  position:relative;
  z-index:1;                   /* explicit pod --z-nav (100) */
}
.hero .et_pb_row,
.hero .et_pb_row_inner{
  max-width:100% !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
}
.hero .et_pb_column{
  margin:0 !important;
  padding:0 !important;
}
.hero .et_pb_module{
  margin:0 0 32px !important; /* mezera mezi částmi hero */
  padding:0 !important;
}
.hero .et_pb_module:last-child{
  margin-bottom:0 !important;
}

/* Vyšší mezera POD Code modulem s bannerama (vůči CTA tlačítkům) */
.hero .hero-banners-wrap,
.hero .hero-banners-wrap.et_pb_code,
.hero .et_pb_code:has(.hero-banners){
  margin-bottom:40px !important;
}
/* Container uvnitř sekce — naše .container řídí šířku */
.hero > .et_pb_row{
  width:92% !important;
  max-width:var(--container) !important;
  margin:0 auto !important;
}


/* ── Hero content (H1 + popis, Divi Text modul s class .hero-content) ── */
.hero .hero-content,
.hero .hero-content.et_pb_text{
  text-align:center;
  width:100%;
}
.hero .hero-content h1,
.hero h1{
  font-size:var(--fs-h1);
  line-height:1.1;
  letter-spacing:-.02em;
  font-weight:800;
  color:var(--ink);
  margin:0 0 18px;
}
.hero .hero-content h1 em,
.hero h1 em{
  font-style:normal;
  color:var(--pink);
  white-space:nowrap;
}
.hero .hero-content p,
.hero .hero-content .et_pb_text_inner p{
  font-size:var(--fs-large);
  color:#3a3327;
  margin:0 auto !important;
  padding:0 !important;
  line-height:1.6;
  max-width:760px;
}


/* ── Hero banners (4 v řadě, čtvercové, Code modul s [mk_hero_banners]) ─ */
.hero .hero-banners{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:16px;
}
.hero .hero-banner{
  position:relative;
  aspect-ratio:1 / 1;
  border-radius:16px;
  overflow:hidden;
  color:#fff;
  display:flex;
  align-items:flex-end;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
  transition:transform .3s ease, box-shadow .3s ease;
  text-decoration:none;
}
.hero .hero-banner:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(0,0,0,.18);
}
.hero .hero-banner img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
  transition:transform .5s ease;
}
.hero .hero-banner:hover img{
  transform:scale(1.04);
}

/* Fallback placeholder (když klient ještě neuploaduje obrázek) */
.hero .hero-banner-placeholder{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, var(--bg-warm-light) 0%, var(--yellow-cta) 100%);
  z-index:1;
}

/* Gradient overlay přes obrázek pro čitelnost textu */
.hero .hero-banner::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,
    rgba(0,0,0,0) 30%,
    rgba(0,0,0,.45) 65%,
    rgba(0,0,0,.88) 100%);
}

/* Banner content (badge + H3 + popis) */
.hero .banner-content{
  position:relative;
  z-index:3;
  padding:18px 20px;
  color:#fff;
  width:100%;
}
.hero .banner-tag{
  display:inline-block;
  background:var(--pink);
  color:#fff;
  padding:3px 10px;
  border-radius:var(--radius-pill);
  font-size:var(--fs-badge);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:8px;
}
.hero .hero-banner h3{
  font-size:clamp(15px, 1.4vw, 19px);
  font-weight:800;
  letter-spacing:-.01em;
  margin:0 0 3px;
  line-height:1.2;
  color:#fff;
}
.hero .hero-banner p{
  font-size:var(--fs-small);
  opacity:.92;
  color:#fff;
  margin:0;
  line-height:1.35;
  max-width:none;
}


/* ── Hero CTA (2 tlačítka, Divi Button moduly s .btn-primary / .btn-ghost) */

/* Hero tlačítka — větší než default (16/32 padding, fluid font) */
.hero .btn,
.hero .btn-primary,
.hero .btn-ghost,
.hero .btn-secondary,
.hero .btn-outline,
.hero a.et_pb_button.btn-primary,
.hero a.et_pb_button.btn-ghost,
.hero a.et_pb_button.btn-secondary,
.hero a.et_pb_button.btn-outline{
  padding:16px 32px !important;
  font-size:var(--fs-button-lg) !important;
}

/* Šipka v primary tlačítku (přebíjí default ::after vypnutí v 02-buttons).
   POZN.: Divi přidává na ::after vlastní transform: translateY(-8px) z ETmodules
   ikon fontu (vizuální offset pro Divi šipku). Musíme to explicitně přebít. */
.hero .btn-primary::after,
.hero a.et_pb_button.btn-primary::after{
  display:inline-block !important;
  content:'' !important;
  width:16px !important;
  height:16px !important;
  margin:0 0 0 4px !important;
  padding:0 !important;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 5l7 7-7 7'/></svg>") no-repeat center / contain !important;
  flex-shrink:0 !important;
  align-self:center !important;
  vertical-align:middle !important;
  transform:none !important;             /* přebíjí Divi translateY(-8px) */
  transform-origin:center !important;
  font-size:0 !important;                /* zruší Divi ETmodules 32px */
  line-height:0 !important;              /* zruší Divi line-height 32px */
  font-family:inherit !important;
  position:static !important;
  opacity:1 !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  border:0 !important;
  box-shadow:none !important;
  transition:transform .2s ease !important;
}
.hero .btn-primary:hover::after,
.hero a.et_pb_button.btn-primary:hover::after{
  transform:translateX(3px) !important;
}

/* Vlastní HTML varianta (Code modul s <div class="hero-cta">) */
.hero .hero-cta{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:center;
  text-align:center;
}

/* Divi varianta — Button moduly v jedné Row, klient na Row přidá
   CSS Class „hero-cta". Tlačítka půjdou vedle sebe a vycentrují se. */
.hero .hero-cta.et_pb_row,
.hero .hero-cta .et_pb_column,
.hero-cta.et_pb_row,
.hero-cta .et_pb_column{
  display:block !important;
  text-align:center !important;
  max-width:100% !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
}
.hero .hero-cta .et_pb_button_module_wrapper,
.hero-cta .et_pb_button_module_wrapper{
  display:inline-block !important;
  margin:0 7px !important;
  padding:0 !important;
  vertical-align:middle;
  width:auto !important;
  max-width:none !important;
}

/* Fallback — kdyby klient nepřidal hero-cta třídu, aspoň v rámci .hero
   srovnat buttony do středu (každý wrapper inline-block). */
.hero .et_pb_button_module_wrapper{
  display:inline-block !important;
  margin:7px 0 !important;
  vertical-align:middle;
  width:auto !important;
  max-width:none !important;
}
/* Gap 14 px mezi sousedními tlačítky (mockup hodnota) */
.hero .et_pb_button_module_wrapper + .et_pb_button_module_wrapper{
  margin-left:14px !important;
}
.hero .et_pb_column:has(> .et_pb_button_module_wrapper){
  text-align:center;
}


/* ════════════════════════════════════════════════════════════════════════
   USP — 4 ikony + text v jedné řadě (bílý pruh pod kategoriemi)

   Sestavuje se natvrdo v jednom Code modulu. Klient mění obsah přes
   Divi Builder (Visual editor v Code modulu).

   Markup uvnitř Code modulu:
     <div class="usp-grid">
       <div class="usp-item"><span class="ico">SVG</span>
         <div><strong>Title</strong><span>Subtitle</span></div></div>
       … × 4
     </div>
   ══════════════════════════════════════════════════════════════════════ */

.usp,
.usp.et_pb_section{
  background:#fff !important;
  padding:20px 0 !important;
  border-bottom:1px solid var(--line-soft);
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.usp > .et_pb_row,
.usp > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}

/* Grid 4 ikon (uvnitř Code modulu) */
.usp-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
}

/* Jedna položka — ikona vlevo, text vpravo */
.usp-item{
  display:flex;
  align-items:center;
  gap:14px;
}
.usp-item .ico{
  width:46px;
  height:46px;
  border-radius:12px;
  background:var(--pink-50);
  color:var(--pink);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.usp-item .ico svg{
  width:22px;
  height:22px;
}
.usp-item strong{
  display:block;
  font-size:clamp(13px, 1vw, 14px);
  font-weight:700;
  color:var(--ink);
  line-height:1.2;
}
.usp-item span{
  font-size:clamp(11.5px, .9vw, 12.5px);
  color:var(--muted);
}


/* ════════════════════════════════════════════════════════════════════════
   FEATURED — sekce „Vybrali jsme pro vás" s 8 produkty
   ══════════════════════════════════════════════════════════════════════ */

.featured,
.featured.et_pb_section{
  background:#fff !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;              /* explicit pod sticky nav (--z-nav = 100) */
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.featured > .et_pb_row,
.featured > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}
.featured > .et_pb_row + .et_pb_row{
  margin-top:38px !important;
}
/* Mezera mezi grid produktů a CTA tlačítkem dole */
.featured > .et_pb_row + .et_pb_row.featured-cta{
  margin-top:32px !important;
  text-align:center;
}


/* ════════════════════════════════════════════════════════════════════════
   .btn-arrow — utility class pro tlačítko se šipkou (univerzální)
   Použití: <a class="btn btn-ghost btn-arrow">…</a>
   Funguje na btn-ghost / btn-primary / btn-secondary / btn-outline
   ══════════════════════════════════════════════════════════════════════ */

.btn-arrow::after,
a.et_pb_button.btn-arrow::after{
  display:inline-block !important;
  content:'' !important;
  width:16px !important;
  height:16px !important;
  margin:0 0 0 6px !important;
  padding:0 !important;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 5l7 7-7 7'/></svg>") no-repeat center / contain !important;
  flex-shrink:0 !important;
  align-self:center !important;
  vertical-align:middle !important;
  transform:none !important;
  font-size:0 !important;
  line-height:0 !important;
  font-family:inherit !important;
  position:static !important;
  opacity:1 !important;
  top:auto !important;right:auto !important;bottom:auto !important;left:auto !important;
  border:0 !important;
  box-shadow:none !important;
  transition:transform .2s ease !important;
}
.btn-arrow:hover::after,
a.et_pb_button.btn-arrow:hover::after{
  transform:translateX(3px) !important;
}

/* Pro primary/outline (bílá šipka místo tmavé) */
.btn-arrow.btn-primary::after,
a.et_pb_button.btn-arrow.btn-primary::after{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14M13 5l7 7-7 7'/></svg>") !important;
}


/* ════════════════════════════════════════════════════════════════════════
   ATLAS — banner sekce „Atlas kamenů" (žluté pozadí s decorative gradient)

   Texty jsou VĚTŠÍ než standardní section-head:
   - H2: clamp 34-52 (vs default 22-40)
   - P:  18 px (vs default --fs-large 15-17)
   - Tlačítko: 16/36 padding (vs default 14/24)
   ══════════════════════════════════════════════════════════════════════ */

.atlas,
.atlas.et_pb_section{
  background:var(--bg-warm) !important;
  padding:80px 0 !important;
  position:relative;
  overflow:hidden;
  z-index:1;
  color:var(--ink);
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}

/* Decorative radial gradient overlay */
.atlas::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(circle at 18% 28%, rgba(234,67,102,.10) 0%, transparent 50%),
    radial-gradient(circle at 82% 72%, rgba(234,67,102,.08) 0%, transparent 50%);
  pointer-events:none;
  z-index:0;
}

/* Vnitřek nad gradientem */
.atlas > .et_pb_row,
.atlas > .et_pb_row_inner{
  position:relative;
  z-index:1;
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
  text-align:center;
}

/* Mezery mezi Rows v atlas sekci */
.atlas > .et_pb_row + .et_pb_row{
  margin-top:24px !important;
}


/* ─── Section-head OVERRIDE pro atlas — větší texty ──────────────────── */

/* H2 — clamp 34-52 (větší než globální fs-h2) */
.atlas .section-head .et_pb_column .et_pb_module h2,
.atlas .section-head h2{
  font-size:clamp(28px, 4vw, 52px);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.1;
  color:var(--ink);
}
.atlas .section-head h2 em{
  font-style:normal;
  color:var(--pink);
}

/* Popis P — 18 px (větší než fs-large 17) */
.atlas .section-head .et_pb_column .et_pb_module p,
.atlas .section-head p,
.atlas .section-head .et_pb_text_inner p{
  font-size:clamp(15px, 1.5vw, 18px);
  color:#3a3327;
  max-width:820px;
}

/* Eyebrow — širší letter-spacing než standardní (.14em vs .12em) */
.atlas .section-head .eyebrow,
.atlas .section-head .et_pb_text.eyebrow .et_pb_text_inner{
  letter-spacing:.14em !important;
  color:var(--pink) !important;
}


/* ─── Tlačítko v atlas — větší padding/font ──────────────────────────── */
.atlas .btn,
.atlas .btn-primary,
.atlas .btn-ghost,
.atlas .btn-outline,
.atlas a.et_pb_button.btn-primary,
.atlas a.et_pb_button.btn-ghost,
.atlas a.et_pb_button.btn-outline{
  padding:16px 36px !important;
  font-size:clamp(14.5px, 1.2vw, 15.5px) !important;
}


/* ─── Atlas stats (Code modul s 3 čísly + popisem) ───────────────────── */
.atlas-stats{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:40px;
  max-width:900px;
  margin:24px auto 0 !important;
  padding-top:40px;
  border-top:1px solid rgba(0,0,0,.12);
}
.atlas-stats .stat{
  text-align:center;
}
.atlas-stats .stat strong{
  display:block;
  font-size:clamp(24px, 2.4vw, 32px);
  font-weight:800;
  line-height:1;
  color:var(--ink);
}
.atlas-stats .stat span{
  font-size:clamp(11.5px, 1vw, 13px);
  color:#5a4e34;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-top:6px;
  display:block;
}


/* ════════════════════════════════════════════════════════════════════════
   ZODIAC — Kameny podle znamení zvěrokruhu (12 karet v 6-sloupcové mřížce)

   Render: shortcode [mk_zodiac_grid] (statická data v PHP, viz
   includes/shortcodes-symbols.php). Později přepojíme na CPT/ACF.
   ══════════════════════════════════════════════════════════════════════ */

.zodiac,
.zodiac.et_pb_section{
  background:#fff !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.zodiac > .et_pb_row,
.zodiac > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}
.zodiac > .et_pb_row + .et_pb_row{
  margin-top:38px !important;
}


/* Grid 6 sloupců (12 karet → 2 řádky) */
.zodiac-grid{
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:16px;
}


/* Karta jednoho znamení */
.zodiac-card{
  background:#fff;
  border:1.5px solid var(--line);
  border-radius:var(--radius);
  padding:28px 14px 22px;
  text-align:center;
  transition:transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
  cursor:pointer;
  text-decoration:none;
  color:inherit;
  display:block;
}
.zodiac-card:hover{
  border-color:var(--pink);
  background:var(--pink-50);
  transform:translateY(-3px);
  box-shadow:var(--shadow);
  color:inherit;
}

/* Kruhová ikona se znakem zvěrokruhu */
.zodiac-card .icon{
  width:88px;
  height:88px;
  margin:0 auto 16px;
  border-radius:50%;
  background:var(--pink-50);
  color:var(--pink);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:clamp(32px, 3vw, 44px);
  line-height:1;
  transition:background .25s ease, color .25s ease, box-shadow .25s ease;
  box-shadow:inset 0 0 0 2px rgba(234,67,102,.15);
}
.zodiac-card:hover .icon{
  background:var(--pink);
  color:#fff;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.2);
}

/* Jméno znamení */
.zodiac-card h5{
  font-size:clamp(14px, 1.1vw, 16px);
  font-weight:700;
  color:var(--ink);
  margin:0 0 3px;
  line-height:1.2;
}

/* Datum vlády */
.zodiac-card h6{
  font-size:clamp(11px, .95vw, 12px);
  color:var(--muted);
  font-weight:500;
  margin:0;
}


/* ════════════════════════════════════════════════════════════════════════
   CHAKRA — Kameny podle čakry (7 karet, žluté pozadí, 7 různých barev)
   ══════════════════════════════════════════════════════════════════════ */

.chakra,
.chakra.et_pb_section{
  background:var(--bg-warm) !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.chakra > .et_pb_row,
.chakra > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}
.chakra > .et_pb_row + .et_pb_row{
  margin-top:38px !important;
}


/* Grid 7 sloupců */
.chakra-grid{
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:14px;
}


/* Karta jedné čakry */
.chakra-card{
  background:#fff;
  border-radius:var(--radius);
  padding:24px 14px;
  text-align:center;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  border:1.5px solid transparent;
  text-decoration:none;
  color:inherit;
  display:block;
}
.chakra-card:hover{
  border-color:currentColor;  /* dědí color z .c-* třídy */
  transform:translateY(-3px);
  box-shadow:var(--shadow);
}

/* Kruhová ikona (barva pozadí z .c-* třídy přes currentColor → background) */
.chakra-card .icon{
  width:64px;
  height:64px;
  margin:0 auto 14px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:clamp(22px, 2vw, 28px);
  color:#fff;
  line-height:1;
}

/* Jméno čakry */
.chakra-card h5{
  font-size:clamp(13px, 1.05vw, 14.5px);
  font-weight:700;
  color:var(--ink);
  margin:0 0 2px;
  line-height:1.2;
}

/* Sanskrt název (Muladhara, Anahata…) */
.chakra-card h6{
  font-size:clamp(10.5px, .9vw, 11.5px);
  color:var(--muted);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin:0;
}


/* ─── 7 barevných variant (color + ikona background) ─────────────────── */
.c-koren  { color:#c43948; } .c-koren  .icon{ background:#c43948; }
.c-sakral { color:#e57b34; } .c-sakral .icon{ background:#e57b34; }
.c-solar  { color:#e3b53b; } .c-solar  .icon{ background:#e3b53b; }
.c-srdce  { color:#5fa86b; } .c-srdce  .icon{ background:#5fa86b; }
.c-krk    { color:#4a8dbd; } .c-krk    .icon{ background:#4a8dbd; }
.c-celo   { color:#3d4d8c; } .c-celo   .icon{ background:#3d4d8c; }
.c-teme   { color:#8252a0; } .c-teme   .icon{ background:#8252a0; }


/* ════════════════════════════════════════════════════════════════════════
   EFFECTS — Kameny podle účinku (3 karty: tělo / mysl / ezoterika)
   ══════════════════════════════════════════════════════════════════════ */

.effects,
.effects.et_pb_section{
  background:#fff !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.effects > .et_pb_row,
.effects > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}
.effects > .et_pb_row + .et_pb_row{
  margin-top:38px !important;
}


/* Grid 3 sloupců */
.effects-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}


/* Jedna karta (tělo / mysl / ezoterika) */
.effect-card{
  background:#fff;
  border-radius:var(--radius-lg);
  padding:32px 28px;
  border:1.5px solid var(--line);
  transition:border-color .25s ease, box-shadow .25s ease;
}
.effect-card:hover{
  border-color:var(--pink);
  box-shadow:var(--shadow);
}


/* Header (ikona + h3 + small) */
.effect-card .head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid var(--line-soft);
}
.effect-card .head .ico{
  width:46px;
  height:46px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  background:var(--pink-50);
  color:var(--pink);
}
.effect-card .head .ico svg{
  width:24px;
  height:24px;
}
.effect-card .head h3{
  font-size:clamp(16px, 1.4vw, 19px);
  font-weight:800;
  margin:0;
  line-height:1.2;
  color:var(--ink);
}
.effect-card .head small{
  display:block;
  font-size:clamp(11.5px, 1vw, 12.5px);
  color:var(--muted);
  font-weight:500;
  margin-top:2px;
  line-height:1.3;
}


/* ─── 3 barevné varianty (jen ikona) ─────────────────────────────────── */
.effect-card.body .head .ico{ background:#fde9ee; color:#d63757; }
.effect-card.mind .head .ico{ background:#e8f1fc; color:#3978c7; }
.effect-card.eso  .head .ico{ background:#f3eafc; color:#7e3fc7; }


/* Tags — žluté pill odkazy */
.tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.tags a{
  display:inline-block;
  padding:5px 12px;
  background:var(--bg-warm);
  border-radius:var(--radius-pill);
  font-size:clamp(11.5px, 1vw, 12.5px);
  font-weight:600;
  color:var(--ink);
  text-decoration:none;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
  border:1px solid var(--yellow-cta);
}
.tags a:hover{
  background:var(--pink);
  color:#fff;
  border-color:var(--pink);
}

/* [mk_attribute_terms] — počet produktů za názvem termu (show_count="1") */
.tags a .cnt{
  opacity:.55;
  font-weight:500;
  margin-left:2px;
}

/* [mk_attribute_terms] — samostatná stránka (/ucinek-na-telo/ apod.)
   Jen štítky bez karty → větší chipy a rozestupy než na homepage. */
.mk-attr-tags{
  gap:10px;
}
.mk-attr-tags a{
  padding:9px 18px;
  font-size:var(--fs-small);
}


/* ════════════════════════════════════════════════════════════════════════
   REVIEWS — „Co o nás říkají zákazníci" (3 karty, žluté pozadí)
   ══════════════════════════════════════════════════════════════════════ */

.reviews,
.reviews.et_pb_section{
  background:var(--bg-warm) !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.reviews > .et_pb_row,
.reviews > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}
.reviews > .et_pb_row + .et_pb_row{
  margin-top:38px !important;
}


/* Grid 3 sloupců */
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:22px;
}


/* Karta recenze */
.review{
  background:#fff;
  border-radius:var(--radius);
  padding:28px;
  border:1px solid var(--line-soft);
}

/* Hvězdy */
.review .stars{
  color:var(--star);
  font-size:clamp(14px, 1.2vw, 16px);
  margin-bottom:14px;
  letter-spacing:1px;
  display:flex;
  gap:1px;
}

/* Text recenze */
.review p{
  font-size:clamp(13.5px, 1.1vw, 14.5px);
  line-height:1.65;
  color:#333;
  margin:0 0 20px;
}

/* Autor (avatar + jméno + ověřený) */
.review .author{
  display:flex;
  align-items:center;
  gap:12px;
}
.review .avatar{
  width:42px;
  height:42px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--pink-100), #fde0e7);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  color:var(--pink);
  font-size:clamp(15px, 1.2vw, 17px);
  flex-shrink:0;
}
.review .name{
  font-weight:700;
  font-size:clamp(13px, 1vw, 14px);
  color:var(--ink);
  line-height:1.2;
}
.review .verified{
  font-size:clamp(11px, .95vw, 12px);
  color:var(--success);
  display:flex;
  align-items:center;
  gap:4px;
  margin-top:2px;
  font-weight:500;
}


/* ════════════════════════════════════════════════════════════════════════
   NEWSLETTER — žluto-světle gradient sekce s formulářem

   Celé v Code modulu (zatím bez backend integrace).
   Až bude vybraná platforma (Mailchimp / Brevo / SmartEmailing / Ecomail),
   form action / shortcode pluginu nahradíme uvnitř Code modulu.
   ══════════════════════════════════════════════════════════════════════ */

.newsletter,
.newsletter.et_pb_section{
  background:linear-gradient(135deg, var(--bg-warm) 0%, #fff7e0 100%) !important;
  padding:64px 0 !important;
  position:relative;
  z-index:1;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
}
.newsletter > .et_pb_row,
.newsletter > .et_pb_row_inner{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
}


/* 2-sloupcový container — text vlevo, form vpravo */
.newsletter-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  align-items:center;
}


/* Texty (H2 + popis) */
.newsletter h2{
  font-size:clamp(22px, 2.6vw, 32px);
  font-weight:800;
  letter-spacing:-.015em;
  margin:0 0 10px;
  line-height:1.15;
  color:var(--ink);
}
.newsletter h2 em{
  font-style:normal;
  color:var(--pink);
}
.newsletter p{
  color:var(--muted);
  font-size:clamp(13.5px, 1.2vw, 15.5px);
  margin:0;
  line-height:1.5;
}


/* Formulář */
.newsletter-form{
  display:flex;
  gap:10px;
}
.newsletter-form input[type="email"]{
  flex:1;
  height:52px;
  padding:0 22px;
  border-radius:var(--radius-pill);
  border:1.5px solid #fff;
  font-family:inherit;
  font-size:clamp(13.5px, 1.1vw, 14.5px);
  background:#fff;
  color:var(--ink);
  min-width:0;  /* aby flex shrinkoval input */
  -webkit-appearance:none;
  appearance:none;
}
.newsletter-form input[type="email"]:focus{
  outline:0;
  border-color:var(--pink);
  box-shadow:0 0 0 4px rgba(234,67,102,.15);
}
.newsletter-form input[type="email"]::placeholder{
  color:var(--muted);
}
.newsletter-form .btn,
.newsletter-form button.btn-primary{
  height:52px;
  flex-shrink:0;
}


/* ════════════════════════════════════════════════════════════════════════
   VÝPIS KATEGORIE — cat-hero, podkategorie, SEO blok
   (mockup navrh-novy/kategorie.html)
   ══════════════════════════════════════════════════════════════════════ */

/* ─── Category hero (kompaktní žlutý) ─────────────────────────────────── */
.cat-hero,
.cat-hero.et_pb_section{
  background:var(--bg-warm) !important;
  padding:50px 0 56px !important;
  position:relative;
  overflow:hidden;
  z-index:1;                     /* pod sticky nav */
  gap:0 !important;
}
.cat-hero > .et_pb_row{
  max-width:var(--container) !important;
  width:92% !important;
  padding:0 !important;
  margin:0 auto !important;
  position:relative;
  z-index:2;
}
.cat-hero .eyebrow{
  display:inline-block;
  color:var(--pink);
  font-size:var(--fs-eyebrow);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:10px;
}
.cat-hero h1{
  font-size:var(--fs-h1);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.1;
  margin-bottom:14px;
  color:var(--ink);
}
.cat-hero h1 em{
  font-style:normal;
  color:var(--pink);
  position:relative;
  white-space:nowrap;
}
.cat-hero h1 em::after{
  content:'';
  position:absolute;
  left:0;right:0;bottom:3px;
  height:9px;
  background:rgba(234,67,102,.2);
  z-index:-1;
  border-radius:4px;
}
.cat-hero p{
  font-size:var(--fs-large);
  color:#3a3327;
  max-width:880px;
  line-height:1.6;
}
.cat-hero-meta{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  margin-top:18px;
  font-size:var(--fs-small);
  color:#5a4d2c;
  font-weight:600;
}
.cat-hero-meta span{display:inline-flex;align-items:center;gap:7px;}
.cat-hero-meta svg{width:16px;height:16px;color:var(--pink);}

/* ─── Podkategorie (dlaždice ikona + název + počet) ───────────────────── */
.subcat{background:#fff;padding:42px 0 30px;}
.subcat-head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:22px;
  flex-wrap:wrap;
  gap:10px;
}
.subcat-head h2{font-size:var(--fs-h3);font-weight:800;letter-spacing:-.01em;}
.subcat-head .meta{font-size:var(--fs-small);color:var(--muted);font-weight:600;}
.subcat-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.subcat-tile{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
  position:relative;
}
.subcat-tile:hover{
  border-color:var(--pink);
  box-shadow:0 8px 24px rgba(234,67,102,.12);
  transform:translateY(-2px);
}
.subcat-tile-img{
  width:64px;height:64px;
  border-radius:10px;
  overflow:hidden;
  flex-shrink:0;
  background:var(--bg-warm);
  display:flex;align-items:center;justify-content:center;
}
.subcat-tile-img img{width:100%;height:100%;object-fit:cover;}
.subcat-tile-body{flex:1;min-width:0;}
.subcat-tile-body strong{
  display:block;
  font-size:var(--fs-body);
  font-weight:700;
  color:var(--ink);
  line-height:1.2;
  margin-bottom:4px;
}
.subcat-tile-body span{font-size:12px;color:var(--muted);font-weight:600;}
.subcat-tile .arrow{
  color:var(--muted);
  transition:color .2s ease, transform .2s ease;
  flex-shrink:0;
}
.subcat-tile:hover .arrow{color:var(--pink);transform:translateX(3px);}

/* ─── SEO blok (popis kategorie pod produkty) ─────────────────────────── */
.seo-block{
  background:#fafafa;
  padding:56px 0;
  border-top:1px solid var(--line-soft);
}
.seo-block .container{max-width:920px;}
.seo-block h2{
  font-size:var(--fs-h3);
  font-weight:800;
  margin-bottom:18px;
  color:var(--ink);
  letter-spacing:-.01em;
}
.seo-block h3{
  font-size:var(--fs-h4);
  font-weight:700;
  margin:24px 0 10px;
  color:var(--ink);
}
.seo-block p{font-size:var(--fs-body);color:#444;line-height:1.7;margin-bottom:14px;}
.seo-block ul{padding-left:22px;margin-bottom:14px;color:#444;}
.seo-block li{margin-bottom:6px;line-height:1.6;}
.seo-block a{color:var(--pink);text-decoration:underline;}


/* ════════════════════════════════════════════════════════════════════════
   DETAIL PRODUKTU — atlas karta + related sekce
   (mockup navrh-novy/produkt.html)
   ══════════════════════════════════════════════════════════════════════ */
.atlas-link{padding:0 0 56px;background:#fff;}
.atlas-card{
  display:grid;grid-template-columns:280px 1fr auto;gap:32px;align-items:center;
  padding:24px;background:var(--bg-warm);border-radius:18px;position:relative;overflow:hidden;
}
.atlas-card-img{aspect-ratio:1.4;border-radius:12px;overflow:hidden;background:#fff;}
.atlas-card-img img{width:100%;height:100%;object-fit:cover;}
.atlas-card-body .eyebrow{display:inline-block;color:var(--pink);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;}
.atlas-card-body h3{font-size:22px;font-weight:800;letter-spacing:-.01em;margin-bottom:8px;color:var(--ink);}
.atlas-card-body p{font-size:14.5px;color:#3a3327;line-height:1.55;max-width:560px;}

.related{background:#fafafa;padding:56px 0;}
.related-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px;flex-wrap:wrap;gap:10px;}
.related-head h2{font-size:26px;font-weight:800;letter-spacing:-.01em;}
.related-head a{font-size:14px;font-weight:700;color:var(--pink);}


/* ════════════════════════════════════════════════════════════════════════
   404 — stránka nenalezena (bez mockupu, standard v duchu brandu)
   ══════════════════════════════════════════════════════════════════════ */
.error-404{background:#fff;padding:72px 0 56px;text-align:center;}
.error-404-inner{max-width:640px;margin:0 auto;}
.error-404-num{
  font-size:clamp(96px,18vw,200px);
  font-weight:800;line-height:.9;letter-spacing:-.04em;
  color:var(--pink);position:relative;display:inline-block;margin-bottom:6px;z-index:1;
}
.error-404-num::after{
  content:'';position:absolute;left:-6%;right:-6%;bottom:14%;height:26%;
  background:var(--bg-warm);border-radius:999px;z-index:-1;opacity:.65;
}
.error-404 h1{
  font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.02em;
  margin-bottom:12px;color:var(--ink);
}
.error-404 p{
  font-size:var(--fs-large);color:var(--muted);line-height:1.6;
  margin:0 auto 26px;max-width:520px;
}
.error-404-search{position:relative;max-width:480px;margin:0 auto 24px;}
.error-404-search input[type="search"]{
  width:100%;height:54px;padding:0 60px 0 22px;
  border:2px solid var(--pink-100);border-radius:999px;
  font-family:inherit;font-size:14.5px;font-weight:500;background:#fff;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.error-404-search input[type="search"]:focus{outline:0;border-color:var(--pink);box-shadow:0 0 0 5px var(--pink-50);}
.error-404-search button{
  position:absolute;right:6px;top:6px;width:42px;height:42px;
  background:var(--pink);color:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:background .2s ease, transform .2s ease;
}
.error-404-search button:hover{background:var(--pink-dark);transform:scale(1.05);}
.error-404-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:28px;}
.error-404-links{font-size:var(--fs-small);color:var(--muted);line-height:2;}
.error-404-links span{font-weight:700;color:var(--ink);margin-right:4px;}
.error-404-links a{color:var(--muted);font-weight:600;}
.error-404-links a:hover{color:var(--pink);}
@media (max-width:640px){
  .error-404{padding:48px 0 40px;}
}


/* ════════════════════════════════════════════════════════════════════════
   VÝSLEDKY HLEDÁNÍ (search.php) — seskupené produkty / kategorie / stránky
   ══════════════════════════════════════════════════════════════════════ */
.mk-search .search-head{background:var(--bg-warm);padding:42px 0 38px;}
.mk-search .search-head .eyebrow{
  display:inline-block;color:var(--pink);font-size:var(--fs-eyebrow);font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;
}
.mk-search .search-head h1{
  font-size:clamp(24px,3vw,36px);font-weight:800;letter-spacing:-.02em;
  color:var(--ink);margin-bottom:18px;line-height:1.1;
}
/* Refine box — reuse .error-404-search vzhledu, ale zarovnaný vlevo */
.search-refine{max-width:520px;margin:0;}

.search-group{padding:38px 0;border-top:1px solid var(--line-soft);background:#fff;}
.search-group:first-of-type{border-top:0;}
.search-group.subcat{padding-top:38px;}
.search-group-title{
  font-size:20px;font-weight:800;letter-spacing:-.01em;color:var(--ink);
  margin-bottom:20px;display:flex;align-items:center;gap:10px;
}
.search-group-title span{
  font-size:13px;font-weight:700;color:var(--pink);background:var(--pink-50);
  padding:2px 10px;border-radius:999px;
}
.search-more{margin-top:22px;text-align:center;font-size:var(--fs-small);color:var(--muted);}

/* Výpis stránek/článků */
.search-pages{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.search-pages li{list-style:none;margin:0;}
.search-pages a{
  display:block;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.search-pages a:hover{border-color:var(--pink);box-shadow:0 6px 20px rgba(234,67,102,.08);transform:translateY(-1px);}
.search-pages strong{display:block;font-size:15.5px;font-weight:700;color:var(--ink);margin-bottom:3px;}
.search-pages a:hover strong{color:var(--pink);}
.search-pages span{font-size:13.5px;color:var(--muted);line-height:1.5;}


/* ════════════════════════════════════════════════════════════════════════
   OBLÍBENÉ (stránka [mk_wishlist]) — mřížku řeší .products-grid (06-cards)
   ══════════════════════════════════════════════════════════════════════ */
.mk-wishlist{padding:8px 0;}
.mk-wishlist-grid{margin:0;}
.mk-wishlist-loading{
  display:flex;align-items:center;justify-content:center;gap:12px;
  padding:60px 20px;color:var(--muted);font-size:var(--fs-body);font-weight:600;
}
.mk-wishlist-loading[hidden]{display:none;}
.mk-wishlist .mk-spinner{
  width:24px;height:24px;border:3px solid var(--pink-100);border-top-color:var(--pink);
  border-radius:50%;animation:mk-spin .7s linear infinite;flex-shrink:0;
}
.mk-wishlist-empty{text-align:center;padding:56px 20px 64px;max-width:480px;margin:0 auto;}
.mk-wishlist-empty[hidden]{display:none;}
.mk-wishlist-empty svg{width:56px;height:56px;color:var(--pink-200);margin-bottom:16px;}
.mk-wishlist-empty strong{display:block;font-size:var(--fs-h4);font-weight:800;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em;}
.mk-wishlist-empty span{display:block;color:var(--muted);line-height:1.6;margin-bottom:24px;}


/* ════════════════════════════════════════════════════════════════════════
   BLOG / MAGAZÍN — výpis (home/archive) + detail článku (single)
   Karta článku (.blog-card / .blog-grid) je v 06-cards.
   ══════════════════════════════════════════════════════════════════════ */
.container.narrow{max-width:820px;}

/* ─── Hlavička výpisu (blog / kategorie / štítek) ─────────────────────── */
.mk-blog .blog-head{background:#fff;padding:44px 0 6px;}
.mk-blog .blog-head .eyebrow{
  display:inline-block;color:var(--pink);font-size:var(--fs-eyebrow);font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;
}
.mk-blog .blog-head h1{
  font-size:clamp(28px,3.4vw,44px);font-weight:800;letter-spacing:-.02em;
  line-height:1.1;color:var(--ink);margin-bottom:12px;
}
.mk-blog .blog-head p,
.mk-blog .blog-head-desc{font-size:var(--fs-large);color:var(--muted);max-width:740px;line-height:1.6;}
.mk-blog .blog-head-desc p{margin-bottom:10px;}
.mk-blog .blog-list{padding:30px 0 56px;}

/* ─── Stránkování (WP the_posts_pagination → .page-numbers) ───────────── */
.navigation.pagination{margin-top:44px;}
.navigation.pagination .nav-links{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;}
.navigation.pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;
  border-radius:10px;font-size:var(--fs-body);font-weight:700;color:var(--ink);background:#fff;
  border:1.5px solid var(--line);transition:border-color .2s ease, color .2s ease, background .2s ease;
}
.navigation.pagination a.page-numbers:hover{border-color:var(--pink);color:var(--pink);background:var(--pink-50);}
.navigation.pagination .page-numbers.current{background:var(--pink);color:#fff;border-color:var(--pink);}
.navigation.pagination .page-numbers.dots{border:0;background:transparent;min-width:auto;padding:0 6px;color:var(--muted);}

/* ════════════════════════════════════════════════════════════════════════
   DETAIL ČLÁNKU (single post)
   ══════════════════════════════════════════════════════════════════════ */
.mk-post .post-hero{padding:36px 0 22px;text-align:center;}
.mk-post .post-breadcrumb{font-size:var(--fs-small);color:var(--muted);margin-bottom:16px;}
.mk-post .post-breadcrumb a{color:var(--muted);}
.mk-post .post-breadcrumb a:hover{color:var(--pink);}
.mk-post .post-breadcrumb .sep{color:#c8c8c8;margin:0 6px;}
.mk-post .post-cat{
  display:inline-block;background:var(--pink-50);color:var(--pink);font-weight:700;
  font-size:12px;text-transform:uppercase;letter-spacing:.06em;padding:5px 14px;border-radius:999px;margin-bottom:16px;
}
.mk-post .post-cat:hover{background:var(--pink);color:#fff;}
.mk-post .post-hero h1{
  font-size:clamp(28px,4vw,46px);font-weight:800;letter-spacing:-.02em;line-height:1.12;color:var(--ink);margin-bottom:18px;
}
.mk-post .post-meta{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14px;font-weight:600;}
.mk-post .post-meta .post-author{display:inline-flex;align-items:center;gap:8px;color:var(--ink);}
.mk-post .post-meta .post-author-link{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none;}
.mk-post .post-meta .post-author-link:hover{color:var(--pink);}
.mk-post .post-meta img{width:32px;height:32px;border-radius:50%;}
.mk-post .post-meta .dot{color:#c8c8c8;}

.mk-post .post-cover{padding:8px 0 0;}
.mk-post .post-cover img{width:100%;border-radius:var(--radius-lg);max-height:520px;object-fit:cover;display:block;}

.mk-post .post-content{padding:36px 0 14px;}

/* Typografie obsahu článku */
.mk-post .entry-content{font-size:17px;line-height:1.8;color:#2c2c2c;}
.mk-post .entry-content > *:first-child{margin-top:0;}
.mk-post .entry-content p{margin:0 0 22px;}
.mk-post .entry-content h2{font-size:clamp(22px,2.4vw,30px);font-weight:800;letter-spacing:-.01em;margin:38px 0 14px;color:var(--ink);}
.mk-post .entry-content h3{font-size:clamp(18px,1.8vw,23px);font-weight:800;margin:30px 0 12px;color:var(--ink);}
.mk-post .entry-content h4{font-size:18px;font-weight:700;margin:24px 0 10px;color:var(--ink);}
.mk-post .entry-content a{color:var(--pink);text-decoration:underline;text-underline-offset:2px;}
.mk-post .entry-content ul,
.mk-post .entry-content ol{margin:0 0 22px;padding-left:24px;color:#2c2c2c;}
.mk-post .entry-content li{margin-bottom:8px;line-height:1.7;}
.mk-post .entry-content img{height:auto;border-radius:var(--radius);margin:10px 0;}
.mk-post .entry-content figure{margin:26px 0;}
.mk-post .entry-content figcaption{font-size:13px;color:var(--muted);text-align:center;margin-top:8px;}
.mk-post .entry-content blockquote{
  border-left:4px solid var(--pink);background:var(--pink-50);margin:26px 0;padding:18px 22px;
  border-radius:0 var(--radius) var(--radius) 0;font-style:italic;color:var(--ink);
}
.mk-post .entry-content blockquote p:last-child{margin-bottom:0;}

/* Štítky */
.mk-post .post-tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 28px;}
.mk-post .post-tag{font-size:13px;font-weight:600;color:var(--muted);background:#f4f4f4;padding:6px 14px;border-radius:999px;}
.mk-post .post-tag:hover{background:var(--pink-50);color:var(--pink);}

/* Autor box */
.mk-post .post-author-box{
  display:flex;gap:18px;align-items:flex-start;background:#fafafa;border:1px solid var(--line-soft);
  border-radius:var(--radius-lg);padding:24px 26px;margin:0 0 8px;
}
.mk-post .post-author-box img{width:64px;height:64px;border-radius:50%;flex-shrink:0;}
.mk-post .post-author-box .eyebrow{display:inline-block;color:var(--pink);font-size:var(--fs-eyebrow);font-weight:700;text-transform:uppercase;letter-spacing:.1em;}
.mk-post .post-author-box strong{display:block;font-size:17px;font-weight:800;color:var(--ink);margin:2px 0 6px;}
.mk-post .post-author-box strong a{color:inherit;text-decoration:none;}
.mk-post .post-author-box strong a:hover{color:var(--pink);text-decoration:underline;}
.mk-post .post-author-box p{color:var(--muted);line-height:1.6;font-size:14.5px;margin:0;}

/* Detaily bez author boxu (úplňky a další CPT) — mezera za obsahem,
   aby článek nekončil natěsno na related sekci / footeru */
body:not(.single-post) .mk-post article{padding-bottom:44px;}


/* ════════════════════════════════════════════════════════════════════════
   ATLAS KAMENŮ — rozcestník (/kamen/, archive-kamen.php)
   Hero přebírá .cat-hero z kategorie; tady jen mřížka dlaždic.
   ══════════════════════════════════════════════════════════════════════ */
.mk-atlas .atlas-section{padding:34px 0 64px;}
.atlas-grid{display:grid;grid-template-columns:repeat(5, 1fr);gap:18px;}
.atlas-tile{
  background:#fff;border:1px solid var(--line-soft);border-radius:var(--radius, 14px);
  padding:20px 14px 18px;display:flex;flex-direction:column;align-items:center;gap:12px;
  text-decoration:none;color:inherit;text-align:center;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.atlas-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:transparent;}
.atlas-tile-img{
  width:110px;height:110px;border-radius:50%;overflow:hidden;
  background:var(--line-soft);flex-shrink:0;
}
.atlas-tile-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.atlas-tile:hover .atlas-tile-img img{transform:scale(1.06);}
.atlas-tile h3{margin:0;font-size:15px;font-weight:700;color:var(--ink);line-height:1.3;transition:color .2s ease;}
.atlas-tile:hover h3{color:var(--pink);}

@media (max-width:1024px){
  .atlas-grid{grid-template-columns:repeat(4, 1fr);}
}
@media (max-width:780px){
  .atlas-grid{grid-template-columns:repeat(3, 1fr);gap:14px;}
}
@media (max-width:640px){
  .atlas-grid{grid-template-columns:repeat(2, 1fr);gap:12px;}
  .atlas-tile-img{width:90px;height:90px;}
}


/* ════════════════════════════════════════════════════════════════════════
   ÚPLŇKY — roční přehled (page_uplnek.php, šablona „Fullmoon Template")
   Hero přebírá .cat-hero; chipy přebírají .effect-tag; kameny .atlas-tile.
   ══════════════════════════════════════════════════════════════════════ */
.uplnek-hero-grid{display:grid;grid-template-columns:1fr 220px;gap:36px;align-items:center;}
.uplnek-hero-img img{width:100%;height:auto;display:block;}

.mk-uplnek .uplnek-list{padding:40px 0 64px;}
.uplnek-intro{max-width:760px;margin-bottom:36px;}
.uplnek-intro h2{font-size:26px;font-weight:800;letter-spacing:-.015em;color:var(--ink);margin:0 0 10px;}
.uplnek-intro div{color:var(--muted);line-height:1.6;}

.uplnek-item{
  background:#fff;border:1px solid var(--line-soft);border-radius:var(--radius-lg, 22px);
  padding:34px 34px 38px;margin-bottom:28px;
  scroll-margin-top:120px; /* kotvy z hero — kvůli sticky headeru */
}
.uplnek-head{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start;margin-bottom:22px;}
.uplnek-head-text h2{font-size:28px;font-weight:800;letter-spacing:-.015em;color:var(--ink);margin:0 0 4px;}
.uplnek-head-text h3{font-size:17px;font-weight:600;color:var(--muted);margin:0 0 14px;}
.uplnek-head-img img{width:100%;height:auto;border-radius:var(--radius, 14px);display:block;}
.uplnek-head-img a{display:block;}
.uplnek-head-img a:hover img{opacity:.92;}
.uplnek-head-text .uplnek-more{margin-top:16px;}
.uplnek-text{color:var(--muted);line-height:1.65;font-size:15px;}
.uplnek-text p{margin:0 0 12px;}
.uplnek-item h4{
  font-size:13px;font-weight:700;color:var(--ink);
  text-transform:uppercase;letter-spacing:.08em;margin:22px 0 10px;
}
.uplnek-item .effect-tags{margin-bottom:6px;}
.uplnek-atlas{margin-top:22px;}
.uplnek-item .produkt-box{margin:14px 0 0;}

@media (max-width:1024px){
  .uplnek-hero-grid{grid-template-columns:1fr 160px;}
}
@media (max-width:780px){
  .uplnek-hero-grid{grid-template-columns:1fr;}
  .uplnek-hero-img{display:none;}
  .uplnek-head{grid-template-columns:1fr;gap:18px;}
  .uplnek-item{padding:22px 18px 26px;}
}


/* ════════════════════════════════════════════════════════════════════════
   ZNAMENÍ ZVĚROKRUHU — rozcestník (page_znameni.php, „Zodiac Template")
   Dlaždice přebírají .atlas-tile; tady jen rozšíření o datum a popisek.
   ══════════════════════════════════════════════════════════════════════ */
.mk-zodiac-dir .zodiac-dir-section{padding:34px 0 64px;}
.zodiac-dir-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:18px;}
.zodiac-dir-tile .atlas-tile-img{
  display:flex;align-items:center;justify-content:center;
  background:var(--pink-50);
}
.zodiac-dir-glyph{font-size:52px;line-height:1;color:var(--pink);}
.zodiac-dir-date{
  font-size:12.5px;font-weight:700;color:var(--pink);
  text-transform:uppercase;letter-spacing:.05em;margin-top:-6px;
}
.zodiac-dir-tile p{
  margin:0;font-size:13px;color:var(--muted);line-height:1.5;
}

@media (max-width:1024px){
  .zodiac-dir-grid{grid-template-columns:repeat(3, 1fr);}
}
@media (max-width:780px){
  .zodiac-dir-grid{grid-template-columns:repeat(2, 1fr);gap:14px;}
}
@media (max-width:480px){
  .zodiac-dir-grid{grid-template-columns:1fr;}
}


/* ════════════════════════════════════════════════════════════════════════
   DETAIL ENCYKLOPEDIE — kamen / herbar / symbol
   (single-*.php → template-parts/content-atlas-single.php)
   Hero přebírá .cat-hero, chipy .effect-tag, dlaždice .atlas-tile,
   produkty .products-grid.
   ══════════════════════════════════════════════════════════════════════ */
.atlas-single-hero-grid{
  display:grid;grid-template-columns:340px 1fr;gap:42px;align-items:start;
}
.atlas-single-img img{
  width:100%;height:auto;display:block;
  border-radius:var(--radius-lg, 22px);border:1px solid var(--line-soft);
  background:#fff;
}
/* Intro — WYSIWYG s odkazy a strong */
.atlas-single-intro{margin:0 0 18px;}
.atlas-single-intro p{margin:0 0 10px;line-height:1.65;color:inherit;}
.atlas-single-intro p:last-child{margin-bottom:0;}
.atlas-single-intro a{
  color:var(--pink-dark);font-weight:600;
  text-decoration:underline;text-underline-offset:2px;
}
.atlas-single-intro a:hover{color:var(--pink);}

/* Chipy — vzdušnější řádkování */
.atlas-single-hero-grid .effect-tags{margin-bottom:0;row-gap:8px;}
.atlas-single-hero-grid .effect-tags.zodiac-tags{margin-bottom:8px;}
.atlas-single-hero-grid .effect-tags + .effect-tags{margin-top:8px;}

/* Meta řádky (Barva / Naleziště / Znamení) */
.atlas-single-meta{
  margin:22px 0 0;padding-top:18px;
  border-top:1px solid rgba(0,0,0,.08);
  display:grid;grid-template-columns:auto 1fr;gap:10px 18px;align-items:baseline;
}
.atlas-single-meta dt{
  font-size:12px;font-weight:700;color:var(--ink);
  text-transform:uppercase;letter-spacing:.07em;
}
.atlas-single-meta dd{margin:0;font-size:14px;color:#5a5240;line-height:1.6;}

.atlas-single-body{padding:10px 0 80px;}
/* Pojistka mezery před footerem — i kdyby padding na .container někdo
   přebil, drží ji samotný <main> */
.site-main.mk-atlas-single{padding-bottom:40px !important;}
.atlas-single-section{margin-top:44px;}
.atlas-single-section h2{
  font-size:24px;font-weight:800;letter-spacing:-.015em;color:var(--ink);margin:0 0 16px;
}
.atlas-single-more{margin:22px 0 0;text-align:center;}

/* Prose — obsah, historie, zajímavosti… */
.atlas-prose{max-width:820px;}
.atlas-prose p{color:#3a3a3a;line-height:1.7;font-size:15.5px;margin:0 0 14px;}
.atlas-prose ul,.atlas-prose ol{color:#3a3a3a;line-height:1.7;font-size:15.5px;margin:0 0 14px 22px;}
.atlas-prose h3{font-size:18px;font-weight:800;color:var(--ink);margin:22px 0 10px;}
.atlas-citat{
  margin:0 0 18px;padding:16px 20px;
  background:var(--bg-warm-light, #fdfaf3);border-left:3px solid var(--yellow-cta);
  border-radius:0 12px 12px 0;
  font-size:16.5px;font-style:italic;color:var(--ink);line-height:1.55;
}

/* Upozornění + zdroje */
.atlas-notes{
  background:#fafafa;border:1px solid var(--line-soft);border-radius:var(--radius-lg, 22px);
  padding:26px 28px;max-width:none;
}
.atlas-notes h2{font-size:16px;margin:0 0 10px;}
.atlas-notes h2 + p{margin-top:0;}
.atlas-notes p{font-size:13.5px;color:var(--muted);line-height:1.6;margin:0 0 14px;}
.atlas-notes p:last-child{margin-bottom:0;}

@media (max-width:1024px){
  .atlas-single-hero-grid{grid-template-columns:260px 1fr;gap:28px;}
}
@media (max-width:780px){
  .atlas-single-hero-grid{grid-template-columns:1fr;}
  .atlas-single-img{max-width:340px;}
  .atlas-single-section{margin-top:34px;}
}
