﻿/* =====================================================================
   cv-guide  |  Rozbalovací průvodce výběrem
   ===================================================================== */


/* ---------- nadpis a perex nad průvodcem ---------- */
.cv-h2 {
  box-sizing: border-box;
  margin: 0 0 14px;
  padding: 0 0 10px;
  border-bottom: 2px solid #f56b00;
  font-family: inherit;
  color: #343434;
}
.cv-h2--plain {
  padding: 0;
  border-bottom: none;
}
.cv-h3 {
  margin: 0 0 8px;
  font-family: inherit;
  color: #343434;
}
.cv-lead {
  margin: 0 0 16px;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.6;
  color: #343434;
}


/* ---------- wrapper průvodce ---------- */
details.cv-guide {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0 0 24px;
  padding: 0;
  border: 1px solid #e0e0e0;
  background: #ffffff;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.6;
  color: #343434;
}
details.cv-guide *,
details.cv-guide *::before,
details.cv-guide *::after {
  box-sizing: border-box;
}
details.cv-guide[open] {
  border-color: #f56b00;
}


/* ---------- ovládací lišta ---------- */
.cv-guide .cv-guide__toggle {
  position: relative;
  display: block;
  margin: 0;
  padding: 16px 48px 16px 18px;
  background: #f5f5f5;
  color: #343434;
  font-family: inherit;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.4;
  cursor: pointer;
  list-style: none;
  transition: background-color .15s ease, color .15s ease;
}
.cv-guide .cv-guide__toggle::-webkit-details-marker {
  display: none;
}
.cv-guide .cv-guide__toggle::marker {
  content: none;
}
.cv-guide .cv-guide__toggle:hover {
  background: #f56b00;
  color: #ffffff;
}
.cv-guide .cv-guide__toggle:focus-visible {
  outline: 2px solid #f56b00;
  outline-offset: -2px;
}


/* šipka */
.cv-guide .cv-guide__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  margin-top: -8px;
  border-right: 2px solid #f56b00;
  border-bottom: 2px solid #f56b00;
  transform: rotate(45deg);
  transition: transform .2s ease, border-color .15s ease;
}
.cv-guide .cv-guide__toggle:hover::after {
  border-right-color: #ffffff;
  border-bottom-color: #ffffff;
}
details.cv-guide[open] .cv-guide__toggle::after {
  margin-top: -2px;
  transform: rotate(-135deg);
}


/* přepínání popisku */
.cv-guide .cv-guide__label--close {
  display: none;
}
details.cv-guide[open] .cv-guide__label--open {
  display: none;
}
details.cv-guide[open] .cv-guide__label--close {
  display: inline;
}


/* ---------- rozbalený obsah ---------- */
.cv-guide .cv-guide__body {
  padding: 18px;
}
.cv-guide .cv-guide__body > *:last-child {
  margin-bottom: 0;
}
.cv-guide p {
  margin: 0 0 12px;
}
.cv-guide strong {
  display: inline;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: 700;
}
.cv-guide a.cv-inline,
a.cv-inline {
  color: #f56b00;
  text-decoration: underline;
}
.cv-guide a.cv-inline:hover,
a.cv-inline:hover {
  color: #343434;
}
.cv-guide a.cv-inline:focus-visible,
a.cv-inline:focus-visible {
  outline: 2px solid #f56b00;
  outline-offset: 2px;
}


/* ---------- číslované kroky ---------- */
ol.cv-steps {
  margin: 0;
  padding: 0;
  list-style: none;
  background: none;
  counter-reset: none;
}
ol.cv-steps > li {
  display: flex;
  gap: 14px;
  margin: 0 0 22px;
  padding: 0 0 22px;
  border-bottom: 1px solid #e0e0e0;
  list-style: none;
  background: none;
}
ol.cv-steps > li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
ol.cv-steps > li::before {
  content: none;
  display: none;
}
ol.cv-steps > li::marker {
  content: none;
}
.cv-step__num {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  background: #f56b00;
  color: #ffffff;
  font-family: inherit;
  font-size: inherit;
  font-weight: 700;
  line-height: 1;
}
.cv-step__body {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
}
.cv-step__body > *:last-child {
  margin-bottom: 0;
}


/* ---------- odrážky ---------- */
ul.cv-list {
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
  background: none;
}
ul.cv-list li {
  position: relative;
  margin: 0 0 8px;
  padding: 0 0 0 20px;
  list-style: none;
  background: none;
  overflow-wrap: anywhere;
}
ul.cv-list li:last-child {
  margin-bottom: 0;
}
ul.cv-list li::before {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #f56b00;
}
ul.cv-list li::marker {
  content: none;
}


/* ---------- tabulka ---------- */
.cv-tablewrap {
  width: 100%;
  margin: 0 0 12px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #e0e0e0;
}
table.cv-table {
  width: 100%;
  min-width: 480px;
  border-collapse: collapse;
  font-family: inherit;
  font-size: inherit;
}
table.cv-table th,
table.cv-table td {
  padding: 11px 14px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #e0e0e0;
}
table.cv-table thead th {
  background: #343434;
  color: #ffffff;
  font-weight: 700;
  border-bottom: none;
}
table.cv-table tbody th {
  width: 26%;
  background: #f5f5f5;
  color: #343434;
  font-weight: 700;
}
table.cv-table tbody tr:last-child th,
table.cv-table tbody tr:last-child td {
  border-bottom: none;
}


/* ---------- tip box ---------- */
.cv-tip {
  margin: 12px 0 0;
  padding: 12px 14px;
  background: #fff2e8;
  border-left: 3px solid #f56b00;
  overflow-wrap: anywhere;
}
.cv-tip__badge {
  display: inline-block;
  margin: 0 8px 0 0;
  padding: 1px 9px;
  background: #f56b00;
  color: #ffffff;
  font-family: inherit;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}


/* ---------- přebití Shoptet defaults na seznamech ---------- */
body #content ol.cv-steps,
body #content ul.cv-list {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  background: none;
}
body #content ol.cv-steps > li,
body #content ul.cv-list li {
  list-style: none;
  background: none;
}
body #content ol.cv-steps > li {
  margin-left: 0;
  padding-left: 0;
}
body #content ul.cv-list li {
  margin-left: 0;
  padding-left: 20px;
}
body #content ol.cv-steps > li::before {
  content: none;
  display: none;
}
body #content ul.cv-list li::before {
  content: "";
  display: block;
}


/* ---------- media queries ---------- */
@media (max-width: 860px) {
  .cv-guide .cv-guide__body {
    padding: 16px;
  }
}


@media (max-width: 640px) {
  details.cv-guide {
    margin-bottom: 20px;
  }
  .cv-guide .cv-guide__toggle {
    padding: 14px 42px 14px 14px;
  }
  .cv-guide .cv-guide__toggle::after {
    right: 16px;
  }
  .cv-guide .cv-guide__body {
    padding: 14px;
  }
  ol.cv-steps > li {
    gap: 10px;
    margin-bottom: 18px;
    padding-bottom: 18px;
  }
  .cv-step__num {
    width: 28px;
    height: 28px;
  }
}


@media (prefers-reduced-motion: reduce) {
  .cv-guide .cv-guide__toggle,
  .cv-guide .cv-guide__toggle::after {
    transition: none;
  }
}




/* Rozcestník: pilulky seskupené pod popiskem.
   Pilulky drží starý prefix pk-, skupina je nová cv-. */


/* Skupina */
.cv-group {
  margin: 0 0 18px;
}
.cv-group:last-child {
  margin-bottom: 0;
}
.cv-group__label {
  margin: 0 0 8px;
  font-family: inherit;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.4;
  color: #767676;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}


/* Pilulky */
ul.pk-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  background: none;
}
ul.pk-pills li {
  max-width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  background: none;
}
ul.pk-pills li::before {
  content: none;
  display: none;
}
ul.pk-pills li::marker {
  content: none;
}


a.pk-pill {
  box-sizing: border-box;
  display: inline-block;
  max-width: 100%;
  padding: 9px 16px;
  border: 1px solid #cfcfcf;
  background: #ffffff;
  color: #343434;
  font-family: inherit;
  font-size: inherit;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
a.pk-pill:hover,
a.pk-pill:focus {
  background: #fff2e8;
  border-color: #f56b00;
  color: #343434;
  text-decoration: none;
}
a.pk-pill:focus-visible {
  outline: 2px solid #f56b00;
  outline-offset: 2px;
}


/* Aktuální stránka */
a.pk-pill.is-active,
a.pk-pill[aria-current="page"] {
  border-color: #343434;
  background: #f5f5f5;
  color: #343434;
  cursor: default;
  pointer-events: none;
}


/* Přebití Shoptet defaults na seznamech */
body #content ul.pk-pills {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  background: none;
}
body #content ul.pk-pills li {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  background: none;
}
body #content ul.pk-pills li::before {
  content: none;
  display: none;
}


@media (max-width: 640px) {
  .cv-group {
    margin-bottom: 16px;
  }
  a.pk-pill {
    padding: 11px 16px;
  }
}


@media (prefers-reduced-motion: reduce) {
  a.pk-pill {
    transition: none;
  }
}




/* Trust box: vlevo nadpis s perexem, vpravo důvody s ikonami.
   Ikony jsou v CSS jako data URI, HTML obsahuje jen prázdný span.
   Obsahuje cv-block, společnou mezeru mezi sekcemi dolního popisu. */


/* Mezera mezi sekcemi, do stylopisu vkládat jen jednou */
.cv-block {
  margin: 0 0 32px;
  padding: 0;
}
.cv-block:last-child {
  margin-bottom: 0;
}


/* Trust box */
.cv-trust {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 36px;
  width: 100%;
  max-width: 100%;
  padding: 38px 40px;
  background: #fff2e8;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.6;
  color: #343434;
}
.cv-trust *,
.cv-trust *::before,
.cv-trust *::after {
  box-sizing: border-box;
}


.cv-trust__intro {
  min-width: 0;
}
.cv-trust__eyebrow {
  margin: 0 0 10px;
  font-family: inherit;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.4;
  color: #f56b00;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  overflow-wrap: anywhere;
}
.cv-trust__perex {
  margin: 0;
  color: #4a4a4a;
  overflow-wrap: anywhere;
}


/* Seznam důvodů */
ul.cv-trust__list {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  background: none;
}
ul.cv-trust__list li {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
  background: none;
}
ul.cv-trust__list li:last-child {
  margin-bottom: 0;
}
ul.cv-trust__list li::before {
  content: none;
  display: none;
}
ul.cv-trust__list li::marker {
  content: none;
}


/* Ikona */
.cv-trust__icon {
  flex: 0 0 auto;
  display: block;
  width: 28px;
  height: 28px;
  margin-top: 2px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 28px 28px;
}


.cv-trust__icon--doprava {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%23f56b00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M2 6h13v12H2z'/><path d='M15 10h5l3.5 4v4H15z'/><circle cx='7' cy='20.5' r='2.4'/><circle cx='19' cy='20.5' r='2.4'/></svg>");
}


.cv-trust__icon--instalace {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%23f56b00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M20.4 4.4a5.4 5.4 0 0 0-7.1 7.1L4 20.8 7.2 24l9.3-9.3a5.4 5.4 0 0 0 7.1-7.1l-3.6 3.6-3-.6-.6-3z'/></svg>");
}


.cv-trust__icon--servis {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%23f56b00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M14 2.8l9 3.4v6.4c0 5.7-3.7 9.6-9 12.6-5.3-3-9-6.9-9-12.6V6.2z'/><path d='M10 13.8l2.9 2.9L18.4 11'/></svg>");
}


.cv-trust__icon--prodejna {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28' fill='none' stroke='%23f56b00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M4 11h20v13H4z'/><path d='M3 11l2.2-6h17.6L25 11'/><path d='M11 24v-7h6v7'/></svg>");
}


/* Text u ikony */
.cv-trust__body {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
}
.cv-trust__title {
  display: block;
  font-family: inherit;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.35;
  color: #343434;
}
.cv-trust__note {
  display: block;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.4;
  color: #767676;
}


/* Přebití Shoptet defaults na seznamech */
body #content ul.cv-trust__list {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  background: none;
}
body #content ul.cv-trust__list li {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  background: none;
}
body #content ul.cv-trust__list li::before {
  content: none;
  display: none;
}


@media (max-width: 860px) {
  .cv-trust {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding: 28px 26px;
  }
}


@media (max-width: 640px) {
  .cv-block {
    margin-bottom: 24px;
  }
  .cv-trust {
    padding: 22px 18px;
    gap: 24px;
  }
  ul.cv-trust__list li {
    gap: 12px;
    margin-bottom: 18px;
  }
}






/* FAQ: sbalovací otázky na <details>, bez JS.
   Všechny položky jsou ve výchozím stavu zavřené.
   Otevřená otázka zůstává podbarvená i bez najetí myší. */


.cv-faq {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.6;
  color: #343434;
}
.cv-faq *,
.cv-faq *::before,
.cv-faq *::after {
  box-sizing: border-box;
}


/* Položka */
details.cv-faq__item {
  margin: 0 0 8px;
  padding: 0;
  border: 1px solid #e0e0e0;
  background: #ffffff;
}
details.cv-faq__item:last-child {
  margin-bottom: 0;
}
details.cv-faq__item[open] {
  border-color: #f56b00;
}


/* Otázka */
.cv-faq .cv-faq__q {
  position: relative;
  display: block;
  margin: 0;
  padding: 14px 46px 14px 16px;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
  transition: background-color .15s ease;
}
.cv-faq .cv-faq__q::-webkit-details-marker {
  display: none;
}
.cv-faq .cv-faq__q::marker {
  content: none;
}
.cv-faq .cv-faq__q:hover {
  background: #fff2e8;
}
.cv-faq .cv-faq__q:focus-visible {
  outline: 2px solid #f56b00;
  outline-offset: -2px;
}
.cv-faq .cv-faq__q .cv-h3 {
  display: inline;
  margin: 0;
  font-family: inherit;
  line-height: inherit;
  color: #343434;
  overflow-wrap: anywhere;
}


/* Otevřený stav */
details.cv-faq__item[open] .cv-faq__q {
  background: #fff2e8;
  border-bottom: 1px solid #f7d9c2;
}


/* Šipka */
.cv-faq .cv-faq__q::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 10px;
  height: 10px;
  margin-top: -9px;
  border-right: 2px solid #f56b00;
  border-bottom: 2px solid #f56b00;
  transform: rotate(45deg);
  transition: transform .2s ease;
}
details.cv-faq__item[open] .cv-faq__q::after {
  margin-top: -4px;
  transform: rotate(-135deg);
}


/* Odpověď */
.cv-faq .cv-faq__a {
  padding: 14px 16px;
  overflow-wrap: anywhere;
}
.cv-faq .cv-faq__a p {
  margin: 0 0 12px;
}
.cv-faq .cv-faq__a > *:last-child {
  margin-bottom: 0;
}


@media (max-width: 640px) {
  .cv-faq .cv-faq__q {
    padding: 12px 40px 12px 14px;
  }
  .cv-faq .cv-faq__q::after {
    right: 16px;
  }
  .cv-faq .cv-faq__a {
    padding: 12px 14px;
  }
}


@media (prefers-reduced-motion: reduce) {
  .cv-faq .cv-faq__q,
  .cv-faq .cv-faq__q::after {
    transition: none;
  }
}