/**
 * PD - dizajn system popisov produktov
 *
 * Jednotne classy pre obsah popisov (CKEditor). Cely popis je obaleny
 * v <div class="pd">, vnutri sa pouzivaju len tagy a classy z tohto manualu.
 * Restrukturalizaciu stareho HTML robi AI agent 'redizajner-popisov'
 * (App/AI/agenti.php) cez ikonku v admine.
 *
 * Struktura:
 *   .pd              obal celeho popisu (povinny)
 *   h2, h3           nadpisy sekcii (h2 hlavne, h3 podsekcie)
 *   p, ul, ol        bezny text a zoznamy (ul ma automaticke "fajky")
 *   .pd-hero         uvodny tmavy banner (nazov, claim, stitky)
 *   .pd-eyebrow      maly uppercase stitok nad nadpisom sekcie
 *   .pd-karty        grid kariet .pd-karta (2-4 paralelne skupiny obsahu)
 *   .pd-cislo        velke cislo + text (.pd-cislo-hodnota)
 *   .pd-pilulky      pilulkove tagy .pd-pilulka (sposoby aplikacie a pod.)
 *   .pd-recept       zlaty banner pre klucovy pomer/davkovanie
 *   .pd-stlpce       2 stlpce vedla seba (na mobile pod sebou);
 *                    na <ul> rozdeli dlhy zoznam do 2 stlpcov
 *   .pd-stlpce-3     3 stlpce (na mobile pod sebou)
 *   .pd-box          zvyraznene "info" pole (bezove pozadie)
 *   .pd-box-akcent   svetle akcentove pole so zlatym pruzikom
 *   .pd-tabulka      tabulka parametrov / zlozenia
 *   .pd-poznamka     drobny sedy text (dislaimery, poznamky)
 *   .pd-galeria      viac obrazkov vedla seba
 *   .pd-video        responzivny obal pre iframe video (16:9)
 */

.pd { line-height: 1.65; color: #333; }
.pd > :first-child { margin-top: 0; }

/* nadpisy */
.pd h2 { font-size: 22px; font-weight: 700; line-height: 1.2; color: #DAA520; margin: 32px 0 14px; padding-bottom: 8px; border-bottom: 2px solid #f6f6f6; }
.pd h3 { font-size: 17px; font-weight: 700; line-height: 1.2; color: #DAA520; margin: 22px 0 10px; }

/* text */
.pd p { margin: 0 0 14px; }
.pd a { color: #b38f48; text-decoration: underline; }
.pd strong { color: #211b1f; }

/* zoznamy - ul dostava zlate fajky */
.pd ul { list-style: none; margin: 0 0 16px; padding: 0; }
.pd ul li { position: relative; padding-left: 26px; margin: 0 0 7px; }
.pd ul li::before { content: '\2714'; position: absolute; left: 0; top: 0; color: #e1b762; font-weight: 700; }
.pd ol { margin: 0 0 16px; padding-left: 22px; }
.pd ol li { margin: 0 0 7px; }

/* vnoreny zoznam - mensi odsek, jemnejsia odrazka (bez dvojiteho odsadenia) */
.pd ul ul, .pd ol ul { margin: 6px 0 0; }
.pd ul ul li { padding-left: 18px; margin: 0 0 4px; }
.pd ul ul li::before { content: '\203A'; font-weight: 700; }

/* dlhy zoznam v dvoch stlpcoch: <ul class="pd-stlpce"> */
ul.pd-stlpce li { margin-bottom: 0; }

/* stlpce */
.pd-stlpce { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 40px; margin: 0 0 24px; }
.pd-stlpce-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px 40px; margin: 0 0 24px; }
.pd-stlpce > *, .pd-stlpce-3 > * { min-width: 0; }
.pd-stlpce ul, .pd-stlpce-3 ul { margin-bottom: 0; }
/* zarovnanie: prvy element kazdeho stlpca bez horneho odseku (nadpisy stlpcov v jednej linii) */
.pd-stlpce > div > :first-child, .pd-stlpce-3 > div > :first-child { margin-top: 0; }
/* jemny zvisly oddelovac medzi stlpcami (len div stlpce, nie ul v stlpcoch) */
.pd-stlpce > div + div, .pd-stlpce-3 > div + div { border-left: 1px solid #f2f2f2; padding-left: 40px; }
/* poistka: pd-stlpce vnoreny do stlpcov sa nerozklada (AI ho obcas vnori aj napriek zakazu) */
.pd-stlpce .pd-stlpce, .pd-stlpce-3 .pd-stlpce { display: block; }

/* hero - uvodny banner popisu (nazov produktu, claim, stitky) */
.pd-hero { background: linear-gradient(160deg, #211b1f 0%, #3a3024 55%, #5b4826 100%); color: #fff; border-radius: 14px; padding: 40px 36px; margin: 0 0 28px; }
.pd-hero .pd-hero-nadpis { font-size: 34px; font-weight: 300; line-height: 1.15; color: #fff; margin: 0 0 6px; }
.pd-hero .pd-hero-nadpis strong { font-weight: 700; color: #fff; }
.pd-hero .pd-hero-podnadpis { text-transform: uppercase; letter-spacing: .06em; color: #e1b762; margin: 0; }
.pd-hero .pd-eyebrow { display: inline-block; background: rgba(255, 255, 255, .1); border: 1px solid rgba(225, 183, 98, .5); color: #e1b762; padding: 6px 14px; border-radius: 999px; margin: 0 0 18px; }
.pd-hero .pd-pilulky { margin: 22px 0 0; }
.pd-hero .pd-pilulka { background: rgba(255, 255, 255, .08); border-color: rgba(225, 183, 98, .45); color: #fff; }

/* eyebrow - maly uppercase stitok nad nadpisom sekcie */
.pd-eyebrow { display: block; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: #DAA520; font-weight: 700; margin: 28px 0 4px; }
.pd-eyebrow + h2, .pd-eyebrow + h3 { margin-top: 0; }

/* karty - paralelne skupiny obsahu */
.pd-karty { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; margin: 0 0 24px; }
.pd-karta { background: #fff; border: 1px solid #ecdfc4; border-radius: 12px; padding: 24px 22px; box-shadow: 0 2px 12px rgba(33, 27, 31, .05); min-width: 0; }
.pd-karta > :first-child { margin-top: 0; }
.pd-karta > :last-child { margin-bottom: 0; }
.pd-karta h3 { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 14px; padding-bottom: 10px; border-bottom: 1px solid #f0e4cb; }
.pd-karta h3:not(:first-child) { margin-top: 20px; }

/* velke cislo + text (napr. obsah balenia) */
.pd-cislo { display: flex; align-items: baseline; gap: 12px; margin: 0 0 12px; }
.pd-cislo-hodnota { font-size: 40px; font-weight: 700; color: #DAA520; line-height: 1; }

/* pilulkove tagy (sposoby aplikacie a pod.) */
.pd-pilulky { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 16px; }
.pd-pilulka { display: inline-block; background: #fff; border: 1px solid #eadfc8; border-radius: 999px; padding: 8px 18px; font-size: 14px; font-weight: 600; }

/* recept - zlaty banner pre klucovy pomer/davkovanie (max 1x) */
.pd-recept { background: linear-gradient(135deg, #e1b762, #b38f48); color: #fff; border-radius: 12px; padding: 24px 26px; margin: 0 0 20px; }
.pd-recept strong { color: #fff; }
.pd-recept .pd-eyebrow { color: rgba(255, 255, 255, .9); margin: 0 0 8px; }
.pd-recept > :last-child { margin-bottom: 0; }

/* zvyraznene polia - svetle odtiene brand zlatej #e1b762 */
.pd-box { background: #faf6ee; border: 1px solid #eadfc8; border-radius: 8px; padding: 18px 22px; margin: 0 0 18px; }
.pd-box > :last-child { margin-bottom: 0; }
.pd-box-akcent { background: #f8f0dd; border: 1px solid #ecd9ae; border-left: 4px solid #e1b762; border-radius: 8px; padding: 18px 22px; margin: 0 0 18px; }
.pd-box-akcent > :last-child { margin-bottom: 0; }

/* tabulka parametrov - svetle odtiene brand zlatej */
.pd-tabulka { width: 100%; border-collapse: collapse; margin: 0 0 18px; }
.pd-tabulka th, .pd-tabulka td { padding: 9px 14px; border-bottom: 1px solid #f0e4cb; text-align: left; vertical-align: top; }
.pd-tabulka th { background: #fbf7ef; color: #211b1f; font-weight: 700; }
.pd-tabulka tr:last-child td { border-bottom: 0; }

/* poznamky */
.pd-poznamka { font-size: 13px; color: #888; }

/* media - obrazky s limitom vysky, nech banner nezaberie celu obrazovku */
.pd img { max-width: 100%; max-height: 420px; width: auto; height: auto; border: 1px solid #eee; border-radius: 8px; background: #fff; }
.pd-galeria { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start; margin: 0 0 18px; }
.pd-galeria img { max-width: calc(50% - 6px); max-height: 500px; }
.pd-video { position: relative; padding-bottom: 56.25%; height: 0; margin: 0 0 18px; }
.pd-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* mobil */
@media (max-width: 768px) {
	.pd-stlpce, .pd-stlpce-3 { grid-template-columns: 1fr; }
	.pd h2 { font-size: 19px; margin-top: 24px; }
	.pd h3 { font-size: 16px; }
	.pd-box, .pd-box-akcent { padding: 14px 16px; }
	.pd-hero { padding: 26px 20px; }
	.pd-hero .pd-hero-nadpis { font-size: 26px; }
	.pd-cislo-hodnota { font-size: 32px; }
	.pd-recept { padding: 18px 18px; }
}
