/* === DREAMY — LP Akční matrace /akce-matrace/ · v2 · 2026-10-20 · vše pod .dlp === */
.dlp { --pink: #d90074; --pink-2: #b8005f; --blush: #fcf1f6; --blush-2: #f8e3ee; --ink: #141118; --body: #3f3339; --muted: #7c7079; --line: #efe4ea; --teal: #2e8a86; --cream: #f6f3f1;
  font-family: Rubik, -apple-system, 'Segoe UI', sans-serif; color: var(--body); font-size: 16px; line-height: 1.6; max-width: 1180px; margin: 0 auto; }
.dlp *, .dlp *::before, .dlp *::after { box-sizing: border-box; }
.dlp :where(h1, h2, h3, h4, p, ul, ol, figure) { margin: 0; padding: 0; }
.dlp ul, .dlp ol { list-style: none; }
.dlp li::before { content: none !important; }
.dlp img { display: block; max-width: 100%; height: auto; border: 0; }
.dlp a { color: var(--pink); text-decoration: none; }
.dlp h1, .dlp h2, .dlp h3 { font-family: Rubik, sans-serif !important; color: var(--ink) !important; letter-spacing: -.015em; text-align: left; }
.dlp h1 { font-size: 46px !important; line-height: 1.08 !important; font-weight: 700 !important; }
.dlp h2 { font-size: 32px !important; line-height: 1.15 !important; font-weight: 600 !important; margin-bottom: 12px !important; }
.dlp h3 { font-size: 19px !important; line-height: 1.3 !important; font-weight: 600 !important; }
.dlp-eyebrow { display: inline-block; font-size: 12.5px; letter-spacing: .18em; text-transform: uppercase; font-weight: 600; color: var(--pink); margin-bottom: 12px !important; }
.dlp-lead { font-size: 18px; line-height: 1.6; max-width: 58ch; }
.dlp-sec { padding: 56px 0; }
.dlp-center { text-align: center; }
.dlp-center h2, .dlp-center .dlp-lead { text-align: center; margin-left: auto; margin-right: auto; }

/* tlačítka */
.dlp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 15px 26px; border-radius: 999px; font-weight: 600; font-size: 16px; line-height: 1; cursor: pointer; border: 2px solid var(--pink); background: var(--pink); color: #fff !important; transition: background .15s, transform .15s; }
.dlp-btn:hover { background: var(--pink-2); border-color: var(--pink-2); transform: translateY(-1px); }
.dlp-btn--ghost { background: transparent; color: var(--pink) !important; }
.dlp-btn--ghost:hover { background: var(--blush); color: var(--pink-2) !important; }
.dlp-btn--block { width: 100%; }

/* odpočet */
.dlp-cd { display: inline-flex; align-items: baseline; gap: 4px; font-variant-numeric: tabular-nums; }
.dlp-cd b { font-size: 26px; font-weight: 700; color: var(--ink); min-width: 1.4em; text-align: right; }
.dlp-cd small { font-size: 12px; color: var(--muted); margin-right: 10px; }
.dlp-cd-end { font-weight: 600; color: var(--muted); }

/* výběr šířky */
.dlp-size { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.dlp-size-lbl { font-weight: 600; color: var(--ink); margin-right: 6px; font-size: 15px; }
.dlp-size button { font: inherit; font-size: 14.5px; font-weight: 500; padding: 9px 13px; border-radius: 10px; border: 1px solid var(--line); background: #fff; color: var(--ink); cursor: pointer; }
.dlp-size button:hover { border-color: var(--pink); }
.dlp-size button[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: #fff; }
.dlp-size-note { font-size: 13px; color: var(--muted); }

/* štítky a ceny */
.dlp-badge { display: inline-block; background: var(--pink); color: #fff; font-weight: 700; font-size: 15px; padding: 6px 11px; border-radius: 8px; line-height: 1; }
.dlp-tag { display: inline-block; background: var(--blush); color: var(--pink-2); font-weight: 600; font-size: 12.5px; padding: 5px 10px; border-radius: 999px; }
.dlp-price-old { color: var(--muted); text-decoration: line-through; font-size: 15px; }
.dlp-price-new { color: var(--ink); font-weight: 700; font-size: 26px; line-height: 1.1; }
.dlp-save { color: var(--teal); font-weight: 600; font-size: 14px; }
.dlp-na { color: var(--muted); font-size: 14px; }

/* tuhost */
.dlp-meter { display: flex; gap: 4px; width: 110px; }
.dlp-meter span { flex: 1; height: 7px; border-radius: 2px; background: var(--blush-2); }
.dlp-meter span.on { background: var(--pink); }
.dlp-meter span.alt { background: #f2a6cb; }

/* důvěra */
.dlp-trust { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.dlp-trust li { display: flex; gap: 12px; align-items: flex-start; background: var(--blush); border-radius: 16px; padding: 16px 18px; font-size: 14.5px; line-height: 1.45; }
.dlp-trust strong { display: block; color: var(--ink); font-size: 15.5px; }
.dlp-trust svg { flex: 0 0 auto; margin-top: 2px; }

/* FAQ */
.dlp-faq { max-width: 780px; margin: 0 auto; }
.dlp-faq details { border-bottom: 1px solid var(--line); padding: 18px 0; }
.dlp-faq summary { cursor: pointer; font-weight: 600; color: var(--ink); font-size: 17px; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.dlp-faq summary::-webkit-details-marker { display: none; }
.dlp-faq summary::after { content: '+'; color: var(--pink); font-size: 22px; line-height: 1; }
.dlp-faq details[open] summary::after { content: '–'; }
.dlp-faq p { margin-top: 10px !important; max-width: 68ch; }

/* závěrečná výzva */
.dlp-final { background: var(--ink); color: #e9e2e6; border-radius: 28px; padding: 52px 40px; text-align: center; }
.dlp-final h2 { color: #fff !important; text-align: center; }
.dlp-final .dlp-cd b { color: #fff; }
.dlp-final .dlp-cd small { color: #b9aeb4; }
.dlp-final a.dlp-tel { color: #fff; font-weight: 600; }

/* po skončení akce schovej ceny a výzvy k nákupu akce */
.dlp-skoncilo .dlp-akce-only { display: none !important; }

@media (max-width: 900px) {
  .dlp h1 { font-size: 34px !important; }
  .dlp h2 { font-size: 26px !important; }
  .dlp-trust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dlp-sec { padding: 40px 0; }
}
@media (max-width: 560px) {
  .dlp { font-size: 15.5px; }
  .dlp h1 { font-size: 30px !important; }
  .dlp-trust { grid-template-columns: 1fr; }
  .dlp-final { padding: 40px 22px; border-radius: 22px; }
  .dlp-cd b { font-size: 22px; }
}

/* --- verze A --- */
  /* --- verze A --- */
  .dlpA-hero { display: grid; grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center; padding: 36px 0 44px; }
  .dlpA-hero .dlp-lead { margin-top: 16px !important; }
  .dlpA-cdbox { margin-top: 24px; display: inline-flex; flex-direction: column; gap: 6px; background: var(--blush); border-radius: 16px; padding: 14px 20px; }
  .dlpA-cdbox > span { font-size: 13px; font-weight: 600; color: var(--pink-2); text-transform: uppercase; letter-spacing: .12em; }
  .dlpA-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
  .dlpA-visual { position: relative; border-radius: 26px; overflow: hidden; background: var(--cream); aspect-ratio: 1 / 1; max-height: 560px; }
  .dlp .dlpA-visual img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }
  /* fotky Dorelan = čtverec s bílými pruhy v rámu 4:3 → přiblížit, ať pruhy zmizí */
  .dlp img.dlp-sq { transform: scale(1.34); }
  .dlpA-float { position: absolute; left: 18px; bottom: 18px; background: #fff; border-radius: 16px; padding: 14px 18px; box-shadow: 0 10px 30px rgba(20,17,24,.14); }
  .dlpA-float b { display: block; font-size: 30px; color: var(--pink); line-height: 1; }
  .dlpA-float span { font-size: 13.5px; color: var(--body); }

  .dlpA-bar.is-fixed { position: fixed; z-index: 90; margin: 0; box-shadow: 0 10px 24px rgba(20,17,24,.08); border-radius: 0 0 14px 14px; padding-left: 12px; padding-right: 12px; }
  .dlpA-bar { background: rgba(255,255,255,.97); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 12px 0; display: flex; flex-wrap: wrap; gap: 12px 28px; align-items: center; justify-content: space-between; }
  .dlpA-filters { display: flex; gap: 8px; flex-wrap: wrap; }
  .dlpA-filters button { font: inherit; font-size: 14px; font-weight: 500; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--ink); cursor: pointer; }
  .dlpA-filters button[aria-pressed="true"] { background: var(--pink); border-color: var(--pink); color: #fff; }

  .dlpA-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; padding: 28px 0 8px; }
  .dlpA-tip { border-radius: 22px; background: var(--ink); color: #e9e2e6; padding: 26px 22px; display: flex; flex-direction: column; gap: 12px; justify-content: center; }
  .dlpA-tip h3 { color: #fff !important; font-size: 22px !important; }
  .dlpA-tip a.dlpA-tel { color: #fff; font-weight: 600; font-size: 18px; }
  @media (max-width: 1100px) { .dlpA-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  .dlpA-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 22px; overflow: hidden; background: #fff; transition: box-shadow .2s, transform .2s; }
  .dlpA-card:hover { box-shadow: 0 14px 36px rgba(20,17,24,.09); transform: translateY(-2px); }
  .dlpA-card[hidden] { display: none; }
  .dlpA-img { position: relative; display: block; aspect-ratio: 4 / 3; background: var(--cream); overflow: hidden; }
  .dlp .dlpA-img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }
  .dlpA-img .dlp-badge { position: absolute; top: 14px; left: 14px; }
  .dlpA-img .dlp-tag { position: absolute; top: 14px; right: 14px; background: #fff; }
  .dlpA-body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
  .dlpA-brand { font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 600; }
  .dlpA-body p { font-size: 15px; }
  .dlpA-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; padding: 12px 0; margin: 0 !important; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .dlpA-specs > div { min-width: 0; font-size: 13.5px; line-height: 1.35; color: var(--ink); font-weight: 500; }
  .dlpA-specs span.l { display: block; font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); font-weight: 600; margin-bottom: 3px; }
  .dlpA-specs .dlp-meter { width: 80px; margin-bottom: 4px; }
  .dlpA-stars { font-size: 13.5px; color: var(--ink); }
  .dlpA-stars i { color: #f5a623; font-style: normal; letter-spacing: 1px; }
  .dlpA-price { margin-top: auto; display: flex; flex-direction: column; gap: 2px; }
  .dlpA-price .dlp-size-note { margin-top: 2px; }
  .dlpA-body .dlp-btn { margin-top: 10px; }

  .dlpA-help { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
  .dlpA-help > div { border-radius: 22px; padding: 30px; background: var(--blush); }
  .dlpA-help > div:last-child { background: var(--cream); }
  .dlpA-help ul { margin-top: 14px !important; display: grid; gap: 8px; }
  .dlpA-help li { padding-left: 22px; position: relative; }
  .dlpA-help li::after { content: ''; position: absolute; left: 4px; top: .6em; width: 8px; height: 8px; border-radius: 50%; background: var(--pink); }
  .dlpA-help .dlp-btn { margin-top: 18px; }

  @media (max-width: 900px) {
    .dlpA-hero { grid-template-columns: 1fr; gap: 26px; }
    .dlpA-visual { order: -1; }
    .dlpA-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dlpA-help { grid-template-columns: 1fr; }
  }
  @media (max-width: 560px) {
    .dlpA-grid { grid-template-columns: 1fr; }
  }

/* --- šablona Shoptetu: skrýt nadpis stránky, LP má vlastní H1 (jen /akce-matrace/) --- */
body.in-akce-matrace .pageArticleDetail > header[itemprop="headline"] { display: none !important; }
