/* ==========
   PV – Tématování přes CSS proměnné (výchozí: STRES)
   ========== */
.pv{
  /* barvy */
  --pv-accent: #4894E7;                          /* hlavní akcent */
  --pv-surface: #eaf3ff;                          /* světlá plocha (FAQ bubliny apod.) */
  --pv-border: var(--pv-accent);                  /* barva bordery/tabulek/outline */

  /* desktop pozadí (cover) */
  --bg-s1-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p1_pc.png');
  --bg-s2-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p2_pc.png');
  --bg-s3-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p3_pc.png');
  --bg-s4-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p4_pc.png'); /* jde do .pv-desc-s4__text */
  --bg-s5-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p5_pc.png');
  --bg-s6-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p6_pc.png');
  --bg-s7-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p7_pc.png');

  /* mobilní pattern */
  --bg-mobile: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_mobil.png');
}

/* Stres & úzkost (hotové) */
.pv.pv-theme--stress{
  --pv-accent:#4894E7;
  --pv-surface:#eaf3ff;
  --pv-border:var(--pv-accent);

  --bg-s1-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p1_pc.png');
  --bg-s2-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p2_pc.png');
  --bg-s3-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p3_pc.png');
  --bg-s4-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p4_pc.png');
  --bg-s5-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p5_pc.png');
  --bg-s6-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p6_pc.png');
  --bg-s7-pc: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_p7_pc.png');
  --bg-mobile: url('/user/documents/upload/Proti_stresu_uzkosti/proti_stresu_uzkosti_back_mobil.png');
}

/* Kosti–klouby */
.pv.pv-theme--joints{
  --pv-accent:#58C43A;
  --pv-surface: color-mix(in srgb, var(--pv-accent) 12%, white); /* např. můžeš nahradit za #eff9ea */
  --pv-border:var(--pv-accent);

  --bg-s1-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p1_pc.png');
  --bg-s2-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p2_pc.png');
  --bg-s3-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p3_pc.png');
  --bg-s4-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p4_pc.png');
  --bg-s5-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p5_pc.png');
  --bg-s6-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p6_pc.png');
  --bg-s7-pc: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_p7_pc.png');
  --bg-mobile: url('/user/documents/upload/Kosti_klouby/kosti_klouby_back_mobil.png');
}

/* Multivitamin 6v1 */
.pv.pv-theme--multi{
  --pv-accent:#FF451B;
  --pv-surface: color-mix(in srgb, var(--pv-accent) 12%, white); /* např. #fff1ec */
  --pv-border:var(--pv-accent);

  --bg-s1-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p1_pc.png');
  --bg-s2-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p2_pc.png');
  --bg-s3-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p3_pc.png');
  --bg-s4-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p4_pc.png');
  --bg-s5-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p5_pc.png');
  --bg-s6-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p6_pc.png');
  --bg-s7-pc: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_p7_pc.png');
  --bg-mobile: url('/user/documents/upload/Multivitamin_6v1/multivitamin_back_mobil.png');
}

/* Svědění–alergie */
.pv.pv-theme--itch{
  --pv-accent:#9F80E7;
  --pv-surface: color-mix(in srgb, var(--pv-accent) 12%, white); /* např. #f2edff */
  --pv-border:var(--pv-accent);

  --bg-s1-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p1_pc.png');
  --bg-s2-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p2_pc.png');
  --bg-s3-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p3_pc.png');
  --bg-s4-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p4_pc.png');
  --bg-s5-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p5_pc.png');
  --bg-s6-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p6_pc.png');
  --bg-s7-pc: url('/user/documents/upload/Proti_svedeni_a_alergii/proti_svedeni_alergiim_back_p7_pc.png');
  --bg-mobile: url('/user/documents/upload/Proti_svedeni_a_alergii/alergie_svedeni_back_mobil.png');
}

/* Globální akcent */
.pv .pv-accent{ color: var(--pv-accent); }

/* ==========  PV: Sekce 1  ========== */
.pv-desc-s1{
  position:relative; max-width:1200px; margin:28px auto;
  background:#fff; border-radius:22px; box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s1 *{ box-sizing:border-box; }

/* Pozadí desktop/tablet */
.pv-desc-s1::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s1-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}

/* Mobilní pozadí */
@media (max-width:899.98px){
  .pv-desc-s1::before{ content:none !important; }
  .pv-desc-s1{
    background-color:#fff;
    background-image: var(--bg-mobile);
    background-repeat:repeat;
    background-position:top left;
    background-size:320px auto;
  }
}

/* Obsah */
.pv-desc-s1__wrap{ display:flex; flex-direction:column; position:relative; z-index:1; }
@media (min-width:900px){ .pv-desc-s1__wrap{ flex-direction:row; } }

.pv-desc-s1__text{
  flex:1 1 50%; padding:28px 24px; display:flex; flex-direction:column; justify-content:center;
}
@media (min-width:900px){ .pv-desc-s1__text{ padding:36px 34px; } }

.pv-desc-s1__title{
  margin:0 0 14px; font-size:clamp(30px,4.1vw,48px); line-height:1.1; font-weight:800; color:#000;
}
.pv-desc-s1__lead{
  margin:10px 0 0; font-size:clamp(16px,1.7vw,20px); line-height:1.65; color:#1d1d1d;
}
.pv-desc-s1__lead strong{ font-weight:800; }

.pv-desc-s1__media{ flex:1 1 50%; position:relative; min-height: clamp(280px, 38vw, 440px); }
.pv-desc-s1__media img{
  display:block; width:100%; height:100%; object-fit:cover; border-radius:0 22px 22px 0;
}

@media (max-width:899.98px){
  .pv-desc-s1{ border-radius:22px; overflow:hidden; }
  .pv-desc-s1__text{ border-radius:22px 22px 0 0; padding:22px 18px; }
  .pv-desc-s1__media{ aspect-ratio:16/10; min-height:260px; }
  .pv-desc-s1__media img{ border-radius:0 0 22px 22px; width:100%; height:100%; object-fit:cover; }
}

/* ==========  PV: Sekce 2  ========== */
.pv-desc-s2{
  position:relative; max-width:1200px; margin:28px auto; border-radius:22px; background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s2 *{ box-sizing:border-box; }

.pv-desc-s2::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s2-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}

@media (max-width:899.98px){
  .pv-desc-s2::before{ content:none !important; }
  .pv-desc-s2{
    background-color:#fff;
    background-image: var(--bg-mobile);
    background-repeat:repeat;
    background-position:top left;
    background-size:320px auto;
  }
}

.pv-desc-s2__inner{ position:relative; z-index:1; padding:26px 18px 30px; }
@media (min-width:900px){ .pv-desc-s2__inner{ padding:34px 28px 36px; } }

.pv-desc-s2__title{
  margin:0 0 24px; text-align:center; font-size:clamp(28px,4vw,42px); font-weight:800; line-height:1.1; color:#000;
}
.pv-desc-s2__grid{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:600px){ .pv-desc-s2__grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1100px){ .pv-desc-s2__grid{ grid-template-columns:repeat(5,1fr); } }

.pv-desc-s2__item{ display:grid; grid-template-rows:84px 56px 1fr; align-items:start; justify-items:center; text-align:center; gap:8px; }
.pv-desc-s2__icon{ display:flex; align-items:center; justify-content:center; height:84px; width:100%; }
.pv-desc-s2__icon img{ height:84px; width:auto; object-fit:contain; display:block; }
.pv-desc-s2__head{ margin:0; display:flex; align-items:center; justify-content:center; height:56px; font-size:clamp(16px,1.8vw,18px); font-weight:800; color:#111; text-wrap:balance; }
.pv-desc-s2__tile{
  width:100%; background:#fff; border-radius:18px; padding:16px 14px; box-shadow:0 8px 20px rgba(0,0,0,.08);
  font-size:clamp(14px,1.7vw,16px); line-height:1.6; color:#1d1d1d; text-align:left;
}
.pv-desc-s2__tile strong{ font-weight:800; }
@media (min-width:1200px){ .pv-desc-s2__tile{ padding:18px 16px; } }

/* ==========  PV: Sekce 3  ========== */
.pv-desc-s3{
  position:relative; max-width:1200px; margin:28px auto; border-radius:22px; background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s3 *{ box-sizing:border-box; }

.pv-desc-s3::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s3-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}
@media (max-width:899.98px){
  .pv-desc-s3::before{
    background-image: var(--bg-mobile);
    background-repeat:repeat; background-size:320px auto;
  }
}

.pv-desc-s3__inner{ position:relative; z-index:1; padding:28px 20px 30px; }
@media (min-width:900px){ .pv-desc-s3__inner{ padding:36px 34px 40px; } }

.pv-desc-s3__title{
  margin:0 0 18px; text-align:center; font-size:clamp(28px,4vw,42px); line-height:1.15; font-weight:800; color:#000;
}
.pv-desc-s3__lead{
  max-width:980px; margin:0 auto 16px; font-size:clamp(15px,1.7vw,18px); line-height:1.7; color:#1d1d1d;
}
.pv-desc-s3__lead strong{ font-weight:800; }

.pv-desc-s3__subtitle{
  margin:22px 0 12px; text-align:center; font-size:clamp(24px,3.5vw,34px); font-weight:800; line-height:1.2; color:#000;
}

.pv-desc-s3__list{
  max-width:980px; margin:0 auto; padding-left:0; list-style:none; display:grid; gap:14px;
  font-size:clamp(15px,1.7vw,18px); line-height:1.7; color:#1d1d1d;
}
.pv-desc-s3__list li{ counter-increment:b; }
.pv-desc-s3__list li::before{
  content:counter(b) "."; margin-right:8px; font-weight:800; color:var(--pv-accent);
}
.pv-desc-s3__list strong{ font-weight:800; }
@media (min-width:1200px){ .pv-desc-s3__list{ gap:16px; } }

/* ==========  PV: Sekce 4  ========== */
.pv-desc-s4{
  max-width:1200px; margin:28px auto; background:#fff; border-radius:22px; box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s4 *{ box-sizing:border-box; }

.pv-desc-s4__wrap{ display:flex; flex-direction:column; }
@media (min-width:900px){ .pv-desc-s4__wrap{ flex-direction:row; } }

.pv-desc-s4__text{
  flex:1 1 50%; padding:28px 24px; display:flex; flex-direction:column; justify-content:center;
  background: var(--bg-s4-pc) center/cover no-repeat;
}
@media (min-width:900px){ .pv-desc-s4__text{ padding:36px 34px; } }

.pv-desc-s4__title{
  margin:0 0 14px; font-size:clamp(30px,4.1vw,48px); line-height:1.1; font-weight:800; color:#000;
}
.pv-desc-s4__lead{ margin:10px 0 0; font-size:clamp(16px,1.7vw,20px); line-height:1.65; color:#1d1d1d; }
.pv-desc-s4__lead strong{ font-weight:800; }

.pv-desc-s4__media{ flex:1 1 50%; position:relative; min-height:clamp(280px,38vw,440px); }
.pv-desc-s4__media img{ display:block; width:100%; height:100%; object-fit:cover; border-radius:22px 0 0 22px; }

@media (max-width:899.98px){
  .pv-desc-s4{ border-radius:22px; overflow:hidden; }
  .pv-desc-s4__text{ border-radius:0; padding:22px 18px; }
  .pv-desc-s4__media{ aspect-ratio:16/10; min-height:260px; }
  .pv-desc-s4__media img{ border-radius:0; width:100%; height:100%; object-fit:cover; }
}

/* ==========  PV: Sekce 5  ========== */
.pv-desc-s5{
  position:relative; max-width:1200px; margin:28px auto; border-radius:22px; background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s5 *{ box-sizing:border-box; }

.pv-desc-s5::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s5-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}
@media (max-width:899.98px){
  .pv-desc-s5::before{ content:none !important; }
  .pv-desc-s5{
    background-color:#fff;
    background-image: var(--bg-mobile);
    background-repeat:repeat; background-size:320px auto;
  }
}

.pv-desc-s5__inner{ position:relative; z-index:1; padding:26px 18px 30px; }
@media (min-width:900px){ .pv-desc-s5__inner{ padding:34px 28px 36px; } }

.pv-desc-s5__grid{ display:grid; grid-template-columns:1fr; gap:22px; }
@media (min-width:980px){ .pv-desc-s5__grid{ grid-template-columns:1fr 1fr; gap:26px; } }

.pv-desc-s5__h{
  margin:0 0 12px; font-size:clamp(24px,3.5vw,36px); font-weight:800; line-height:1.15; color:#000; text-wrap:balance;
}

/* Tabulky – barvy z proměnných */
.pv-table{
  width:100%; border-collapse:collapse; background:transparent; border-radius:18px; overflow:hidden;
  font-size:clamp(14px,1.6vw,16px); line-height:1.5; color:#0f172a;
  box-shadow:0 0 0 2px var(--pv-border) inset;     /* vnější rámeček */
}
.pv-table th, .pv-table td{
  padding:12px 14px; text-align:center; background:transparent; border:2px solid var(--pv-border); width:50%;
}
.pv-table th{ font-weight:800; font-size:clamp(15px,1.8vw,17px); }
.pv-table--2col th, .pv-table--2col td{ width:50% !important; }

/* Dávkovací buňky s ikonou */
.pv-dose{ display:inline-flex; align-items:center; justify-content:center; gap:10px; }
.pv-dose__icon{ width:26px; height:26px; flex:0 0 26px; }
.pv-dose__icon img{ width:100%; height:100%; object-fit:contain; display:block; }

/* Bílá dlaždice – neaktivní látky */
.pv-desc-s5__tile{
  background:#fff; border-radius:18px; box-shadow:0 8px 20px rgba(0,0,0,.08); padding:16px 16px;
  font-size:clamp(14px,1.6vw,16px); line-height:1.65; color:#1d1d1d;
}
.pv-desc-s5__tile strong{ font-weight:800; }
.pv-desc-s5__tile p{ margin:0 0 10px; }
.pv-desc-s5__tile p:last-child{ margin:0; }

/* ==========  PV: Sekce 6  ========== */
.pv-desc-s6{
  position:relative; max-width:1200px; margin:28px auto; border-radius:22px; background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s6 *{ box-sizing:border-box; }

.pv-desc-s6::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s6-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}
@media (max-width:899.98px){
  .pv-desc-s6::before{ content:none !important; }
  .pv-desc-s6{
    background-color:#fff;
    background-image: var(--bg-mobile);
    background-repeat:repeat; background-position:top left; background-size:320px auto;
  }
}

.pv-desc-s6__inner{ position:relative; z-index:1; padding:26px 18px 30px; }
@media (min-width:900px){ .pv-desc-s6__inner{ padding:34px 28px 36px; } }

.pv-desc-s6__title{
  margin:0 0 18px; text-align:center; font-size:clamp(28px,4vw,42px); line-height:1.1; font-weight:800; color:#000;
}

.pv-desc-s6__grid{ display:grid; gap:14px 24px; grid-template-columns:1fr; }
@media (min-width:900px){ .pv-desc-s6__grid{ grid-template-columns:repeat(2,1fr); } }

.pv-desc-s6__item{ display:flex; align-items:flex-start; gap:12px; font-size:clamp(15px,1.7vw,18px); line-height:1.6; color:#1d1d1d; }
.pv-desc-s6__icon{ flex:0 0 28px; width:28px; height:28px; margin-top:2px; }
.pv-desc-s6__icon img{ display:block; width:100%; height:100%; object-fit:contain; }
.pv-desc-s6__item strong{ font-weight:800; }

/* ==========  PV: Sekce 7  ========== */
.pv-desc-s7{
  position:relative; max-width:1200px; margin:28px auto; border-radius:22px; background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.08); overflow:hidden;
}
.pv-desc-s7 *{ box-sizing:border-box; }

.pv-desc-s7::before{
  content:""; position:absolute; inset:0;
  background: var(--bg-s7-pc) center/cover no-repeat;
  z-index:0; pointer-events:none;
}
@media (max-width:899.98px){
  .pv-desc-s7::before{ content:none !important; }
  .pv-desc-s7{
    background-color:#fff;
    background-image: var(--bg-mobile);
    background-repeat:repeat; background-position:top left; background-size:320px auto;
  }
}

.pv-desc-s7__inner{ position:relative; z-index:1; padding:26px 18px 30px; }
@media (min-width:900px){ .pv-desc-s7__inner{ padding:34px 28px 36px; } }

.pv-desc-s7__title{
  margin:0 0 24px; text-align:center; font-size:clamp(28px,4vw,42px); line-height:1.1; font-weight:800; color:#000;
}

.pv-desc-s7__grid{ display:grid; gap:20px; grid-template-columns:1fr; }
@media (min-width:900px){ .pv-desc-s7__grid{ grid-template-columns:1fr 1fr; } }

.pv-desc-s7__tile{
  background:#fff; border-radius:18px; box-shadow:0 8px 20px rgba(0,0,0,.08);
  padding:18px 16px 0 16px; display:flex; align-items:stretch; gap:18px; min-height:240px;
}
@media (max-width:899.98px){
  .pv-desc-s7__tile{ flex-direction:column; min-height:unset; gap:14px; }
  .pv-desc-s7__tile--pack{ flex-direction:column; }
  .pv-desc-s7__tile--pack .pv-desc-s7__image{ order:2; width:100%; height:180px; flex-basis:auto; }
  .pv-desc-s7__image img{ width:auto; height:100%; object-fit:contain; object-position:bottom center; }
}

.pv-desc-s7__image{
  flex:0 0 280px; display:flex; align-items:flex-end; justify-content:flex-start; margin:0; padding:0; height:100%;
}
.pv-desc-s7__image img{
  margin:0; padding:0; width:auto; height:100%; max-height:100%; object-fit:contain; object-position:bottom left;
}
.pv-desc-s7__list{ list-style:disc; margin:0; padding-left:20px; font-size:clamp(15px,1.7vw,18px); line-height:1.6; color:#1d1d1d; }
.pv-desc-s7__list li{ margin-bottom:6px; }
.pv-desc-s7__text{ font-size:clamp(15px,1.7vw,18px); line-height:1.6; color:#1d1d1d; margin:0; }
.pv-desc-s7__text strong{ font-weight:800; }

/* ==========  PV: Sekce 8 – FAQ  ========== */
.pv-desc-s8{ max-width:1200px; margin:28px auto; padding:0 12px; }
.pv-desc-s8 *{ box-sizing:border-box; }

.pv-desc-s8__title{
  margin:0 0 16px; text-align:center; font-size:clamp(28px,4vw,42px); font-weight:800; line-height:1.1; color:#000;
}

.pv-faq{ display:grid; gap:10px; }
.pv-faq__item{
  border-radius:14px; overflow:hidden; background:var(--pv-surface); box-shadow:0 0 0 2px var(--pv-border) inset;
}
.pv-faq__summary{
  list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 16px; font-size:clamp(15px,1.8vw,18px); font-weight:700; color:#0f172a; user-select:none;
}
.pv-faq__summary::-webkit-details-marker{ display:none; }
.pv-faq__chev{ width:18px; height:18px; flex:0 0 18px; color:var(--pv-accent); transition:transform .2s ease; }
.pv-faq__item[open] .pv-faq__chev{ transform:rotate(180deg); }
.pv-faq__content{ padding:0 16px 14px 16px; font-size:clamp(14px,1.7vw,16px); line-height:1.6; color:#1d1d1d; }
.pv-faq__content p{ margin:0; }
.pv-faq__content p + p{ margin-top:8px; }
.pv-faq__summary:focus-visible{
  outline:3px solid color-mix(in srgb, var(--pv-accent) 60%, transparent);
  outline-offset:2px; border-radius:12px;
}
.pv-faq__summary:hover{ box-shadow:0 0 0 2px var(--pv-border) inset; }

/* ==========  PV: Sekce 9 – další doplňky  ========== */
.pv-desc-s9{ padding:28px 14px 6px; }
.pv-desc-s9 *{ box-sizing:border-box; }
.pv-desc-s9__title{ margin:0 0 18px; text-align:center; font-size:clamp(28px,4vw,42px); font-weight:800; }

/* Track */
.pv9-track{ max-width:1200px; margin:0 auto; display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }
@media (max-width:899.98px){
  .pv9-track{ display:block; overflow-x:auto; padding-bottom:8px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; white-space:nowrap; }
}

/* Karta */
.pv9-card{
  position:relative; border-radius:22px; min-height:520px; padding:18px 18px 0 18px; overflow:hidden;
  background:#fff; background-size:cover; background-repeat:no-repeat; background-position:center;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start;
}
@media (max-width:899.98px){
  .pv9-card{ width:82%; display:inline-flex; margin-right:14px; scroll-snap-align:center; }
}

/* Typo v kartě */
.pv9-h{ margin:4px 0 8px; font-size:clamp(22px,3.2vw,34px); font-weight:800; line-height:1.12; }
.pv9-accent{ font-weight:800; }
.pv9-p{ margin:6px 0 14px; font-size:clamp(14px,1.6vw,18px); line-height:1.55; max-width:36ch; }
.pv9-p strong{ font-weight:800; }

/* CTA */
.pv9-btn{
  display:inline-flex; align-items:center; justify-content:center; padding:11px 18px; border-radius:999px;
  font-weight:800; text-decoration:none; color:#fff !important; background:var(--pv9-color);
  box-shadow:0 6px 14px color-mix(in srgb, var(--pv9-color) 35%, transparent);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.pv9-btn:hover{
  background:var(--pv9-color-hover); transform:translateY(-2px);
  box-shadow:0 10px 18px color-mix(in srgb, var(--pv9-color) 38%, transparent);
}

/* Produktová fotka v kartě */
.pv9-media{ position:relative; margin-top:auto; width:100%; height:240px; display:flex; align-items:flex-end; justify-content:flex-end; }
.pv9-media img{ width:auto; height:100%; max-height:100%; object-fit:contain; object-position:bottom right; display:block; }

/* Varianty karet (ponecháno z tvého řešení) */
.pv9--multi{
  --pv9-color:#FF451B; --pv9-color-hover:#FF7A5B;
  background-image:url('/user/documents/upload/Multivitamin_6v1/hp_multivitamin_background_mobil.png');
}
.pv9--joints{
  --pv9-color:#58C43A; --pv9-color-hover:#82D86B;
  background-image:url('/user/documents/upload/Kosti_klouby/hp_kosti_klouby_background_mobil.png');
}
.pv9--itch{
  --pv9-color:#9F80E7; --pv9-color-hover:#BF9FF2;
  background-image:url('/user/documents/upload/Proti_svedeni_a_alergii/hp_proti_svedeni_alergiim_background_mobil.png');
}
.pv9--stress {
  --pv9-color: #4894E7;
  --pv9-color-hover: #6AA9EF;
  background-image: url('/user/documents/upload/Proti_stresu_uzkosti/hp_proti_stresu_background_mobil.png');
}

.pv9--stress .pv9-accent {
  color: #4894E7;
}
/* akcentované texty uvnitř karty */
.pv9--stress .pv9-accent{ color: var(--pv-accent); }
@media (max-width:899.98px){
  .pv9--multi{ background-image:url('/user/documents/upload/Multivitamin_6v1/hp_multivitamin_background_mobil.png'); }
  .pv9--joints{ background-image:url('/user/documents/upload/Kosti_klouby/hp_kosti_klouby_background_mobil.png'); }
  .pv9--itch { background-image:url('/user/documents/upload/Proti_svedeni_a_alergii/hp_proti_svedeni_alergiim_background_mobil.png'); }
  .pv9--stress{
    background-image: url(/user/documents/upload/Proti_stresu_uzkosti/hp_proti_stresu_background_mobil.png');
  }
}

/* Mobil/Tablet – rozměry karet a zalamování textu */
@media (max-width:1199.98px){
  .pv9-track{ display:grid; gap:18px; grid-template-columns:repeat(auto-fit, minmax(220px, 450px)); justify-content:center; }
  .pv9-card{ max-width:300px; min-height:0; height:auto; max-height:450px; overflow:hidden; }
  .pv9-media{ height:120px; }
  .pv9-card, .pv9-card *{ white-space:normal !important; overflow-wrap:anywhere; word-break:break-word; hyphens:auto; }
  .pv9-h{ margin:4px 0 6px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
  .pv9-p{ max-width:100%; margin:6px 0 12px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:6; overflow:hidden; }
}

@media (max-width:899.98px){
  .pv9-track{ display:block; overflow-x:auto; padding-bottom:8px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; white-space:nowrap; }
  .pv9-card{ width:82%; display:inline-flex; margin-right:14px; scroll-snap-align:center; max-width:300px; max-height:450px; }
}