/*
 * www.auto-vyfuky.cz – styly webu (zelená hlavička #12372A, oranžová tlačítka #C2410C).
 * Jeden soubor bez Bootstrapu: základ, rozvržení, společné prvky, komponenty pv-* (převzaté ze šablony provyfuk),
 * katalog, produkt, košík, pokladna, účet, patička.
 */
:root {
  --pv-zelena: #1f2731;
  --pv-zelena-tmava: #141a21;
  --pv-zelena-svetla: #2e3a47;
  --pv-oranzova: #1d5fd1;
  --pv-oranzova-tmava: #1747a6;
  --pv-oranzova-svetla: #e3ecfb;
  --pv-logo: #60a5fa;
  --pv-pozadi: #f1f3f6;
  --pv-karta: #fff;
  --pv-okraj: #d4d9e0;
  --pv-okraj-vstup: #bcc4cf;
  --pv-zalozka: #e3e8ef;
  --pv-text: #161b22;
  --pv-tlumeny: #515b67;
  --pv-seda: #7a7a7a;
  --pv-na-tmave: #c8d2de;
  --pv-odkaz: #1747a6;
  --pv-cena: #b91c1c;
  --pv-nadpisy: system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; /* auto-vyfuk.cz: jiné písmo nadpisů než auto-vyfuky.cz */
  --pv-pismo: 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --pv-kod: 'IBM Plex Mono', ui-monospace, monospace;
  --pv-mezera: 15px;
}

/* ---------- Základ ---------- */
*, *::before, *::after { box-sizing: border-box; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
html { font-size: 16px; line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
/* řádkování 1.25em jako šablona classic: počítá se z 16 px a dědí se jako pevných 20 px */
body { margin: 0; background: var(--pv-pozadi); color: var(--pv-text); font-family: var(--pv-pismo); font-size: 1rem; line-height: 1.25em; -moz-osx-font-smoothing: grayscale; }
main { display: block; }
img, svg { vertical-align: middle; }
img { border-style: none; }
hr { box-sizing: content-box; height: 0; margin-top: 1rem; margin-bottom: 1rem; border: 0; border-top: 1px solid rgba(0, 0, 0, .1); }
.img-fluid { max-width: 100%; height: auto; }
a { color: var(--pv-odkaz); text-decoration: none; }
a:hover { color: #14532d; }
a:focus { color: #14532d; }
p, ul, ol, dl { margin-top: 0; margin-bottom: 1rem; }
ul { padding-left: 0; list-style: none; }
p { font-size: .9375rem; font-weight: 400; color: #7a7a7a; }
.small, small { font-size: 80%; font-weight: 400; }
/* popisky jako šablona classic + provyfuk */
label { display: inline-block; margin-bottom: .5rem; }
label, .label { font-size: .875rem; text-align: left; color: inherit; }
/* nadpisy jako šablona classic + provyfuk: h1–h3 písmem Barlow, h4–h6 písmem textu a barvou okolí */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { margin-top: 0; margin-bottom: .5rem; font-family: inherit; font-weight: 700; line-height: 1.1; color: inherit; }
h1, h2, h3, .h1, .h2, .h3 { font-family: var(--pv-nadpisy); color: var(--pv-text); text-transform: none; }
.h4 { color: #232323; }
h1, .h1 { font-size: 1.375rem; }
h2, .h2 { font-size: 1.3125rem; }
h3, .h3, h4, .h4 { font-size: 1.125rem; }
h5, .h5 { font-size: 1rem; }
h6, .h6 { font-size: .9375rem; }
button, input, select, textarea { font: inherit; color: inherit; margin: 0; }
button { cursor: pointer; }
table { border-collapse: collapse; background-color: transparent; }
caption, th { text-align: left; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
.text-muted { color: #7a7a7a !important; font-size: .875rem; }

.container { width: 100%; margin: 0 auto; padding: 0 var(--pv-mezera); }
/* prázdný prvek na konci kontejneru (clearfix šablony classic) – v řádcích flex dělá poslední mezeru jako na produkci */
.container::after { content: ''; display: table; clear: both; }
@media (min-width: 576px) { .container { max-width: 540px; } }
@media (min-width: 768px) { .container { max-width: 720px; } }
@media (min-width: 992px) { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1140px; } }
@media (min-width: 1300px) { .container { width: 1320px; max-width: calc(100% - 30px); } }

#wrapper { padding: 1.25rem 0 0; background: var(--pv-pozadi); }
.rozvrzeni { display: block; }
.rozvrzeni--levy { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 30px; }
.rozvrzeni--levy > #content-wrapper { order: 1; }
.rozvrzeni--levy > #left-column { order: 2; }
#content-wrapper, #left-column { min-height: 1px; } /* jako sloupce col-xs-12 Bootstrapu */
/* šířky sloupců jako mřížka Bootstrapu (col-md-4 / col-md-8, col-lg-3 / col-lg-9 s mezerou 30 px) */
@media (min-width: 768px) {
  .rozvrzeni--levy { grid-template-columns: calc(33.3333% - 20px) calc(66.6667% - 10px); align-items: start; }
  .rozvrzeni--levy > #content-wrapper, .rozvrzeni--levy > #left-column { order: 0; }
}
@media (min-width: 992px) { .rozvrzeni--levy { grid-template-columns: calc(25% - 22.5px) calc(75% - 7.5px); } }

/* drobečková navigace */
.breadcrumb { margin: 0 0 1rem; padding: 0; font-size: .85rem; }
.breadcrumb ol { margin: 0; padding: 0; list-style: none; }
.breadcrumb li { display: inline; color: var(--pv-text); }
.breadcrumb li::after { content: '/'; margin: .3125rem; color: var(--pv-seda); }
.breadcrumb li:last-child { color: var(--pv-seda); }
.breadcrumb li:last-child::after { content: ''; }
.breadcrumb li a { color: #232323; }
.breadcrumb li a:hover { color: var(--pv-odkaz); }

/* hlášky */
/* hlášení jako šablona classic (Bootstrap 4) */
.alert { margin-bottom: 1rem; padding: .75rem 1.25rem; border: 1px solid transparent; border-radius: 0; font-size: .8125rem; }
.alert-success { background-color: #dff0d8; border-color: #d0e9c6; color: #3c763d; }
.alert-info { background-color: #d9edf7; border-color: #bcdff1; color: #31708f; }
.alert-warning { background-color: rgba(255, 154, 82, .3); border-color: #ff9a52; color: #232323; }
.alert-danger { background-color: #f2dede; border-color: #ebcccc; color: #a94442; }
#notifications ul { margin-bottom: 0; }
#main .page-content #notifications { margin-right: -15px; margin-left: -15px; }

/* karty */
.card { position: relative; display: block; margin-bottom: .75rem; background-color: #fff; border: 0; border-radius: 12px; }
.card-block { padding: 1.25rem 1.25rem .5rem; }
.card-block::after { content: ""; display: table; clear: both; }
@media screen and (max-width: 767px) {
  .card-block { padding: 0; }
  .card { background-color: inherit; border: 0; box-shadow: none; }
}
#main .page-content, #main .page-footer, #main .page-header { margin-bottom: 1.563rem; }
.page-header h1 { margin: 0 0 .5rem; }
.page-content { margin-bottom: 1.563rem; border-radius: 12px; }
.page-content.page-cms { padding: 1.25rem; text-align: justify; background: #fff; }
.page-content.page-cms ul { padding: 0; list-style: disc inside none; font-size: .9375rem; font-weight: 400; color: #7a7a7a; }
.table { width: 100%; max-width: 100%; margin-bottom: 1rem; }
.table td, .table th { padding: .75rem; vertical-align: top; border-top: 1px solid #f6f6f6; }
.table thead th { vertical-align: bottom; border-bottom: 2px solid #f6f6f6; }
.table tbody + tbody { border-top: 2px solid #f6f6f6; }

/* tlačítka a formuláře */
/* tlačítka jako Bootstrap 4 v šabloně classic + provyfuk (oranžové hlavní tlačítko) */
.btn { display: inline-block; padding: .5rem 1rem; border: 1px solid transparent; border-radius: 0; font-size: 1rem; font-weight: 400; line-height: 1.25; text-align: center;
  white-space: nowrap; vertical-align: middle; cursor: pointer; user-select: none; }
.btn:focus, .btn:hover { text-decoration: none; }
.btn.disabled, .btn:disabled { cursor: not-allowed; opacity: .65; }
.btn.disabled, .btn.disabled:hover { color: #ddd; background: #f6f6f6; opacity: 1; }
.btn-primary, .btn-secondary { padding: .5rem 1.25rem; font-weight: 600; text-transform: uppercase; }
.btn-primary { background: var(--pv-oranzova); border-color: var(--pv-oranzova); color: #fff; box-shadow: none; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background: var(--pv-oranzova-tmava); border-color: var(--pv-oranzova-tmava); color: #fff; }
.btn-primary svg, .btn-secondary svg, .btn-tertiary svg { margin-right: .625rem; vertical-align: middle; }
.btn-secondary { background-color: #f6f6f6; border-color: transparent; color: #232323; box-shadow: none; }
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active { background-color: #ddd; border-color: transparent; color: #232323; }

/* pole formulářů jako šablona classic (šedá hranatá) */
.form-control { display: block; width: 100%; padding: .5rem 1rem; border: 1px solid rgba(0, 0, 0, .25); border-radius: 0; background: #f6f6f6; background-clip: padding-box;
  color: #7a7a7a; font-size: 1rem; line-height: 1.25; }
.form-control:focus { border-color: rgba(0, 0, 0, .25); background-color: #fff; color: #232323; outline: .1875rem solid var(--pv-oranzova); box-shadow: none; }
.form-control::placeholder { color: #999; opacity: 1; }
.form-control:disabled, .form-control[readonly] { background-color: #f6f6f6; opacity: 1; }
select.form-control:not([size]):not([multiple]) { height: calc(2.5rem - 2px); }
.form-control-select { height: 2.625rem; padding: 0 .5rem; background: #f6f6f6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23232323'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right .5rem center / 1.25rem 1.25rem;
  -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.has-error .form-control { outline: .1875rem solid #ff4c4c; }

.heslo-pole { display: flex; }
.heslo-pole .form-control { border-radius: 8px 0 0 8px; }
.heslo-pole button { flex: none; min-width: 82px; border: 1px solid var(--pv-okraj-vstup); border-left: 0; border-radius: 0 8px 8px 0; background: var(--pv-zalozka);
  font-size: .75rem; font-weight: 600; text-transform: uppercase; }

/* ---------- Komponenty pv-* (hlavička, úvod, výběr vozidla, stránka vozidla, ceník, kontakt, formuláře…) ---------- */
a:focus { color: #14532d; }
h2, h3, .h1, .h2, .h3 { font-family: var(--pv-nadpisy); font-weight: 700; color: var(--pv-text); text-transform: none; }
.pv-tlacitko { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; padding: .6rem 1.1rem; border: 0; border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-family: var(--pv-pismo); font-weight: 600; font-size: .95rem; line-height: 1.2; text-decoration: none; cursor: pointer; }
.pv-tlacitko:hover, .pv-tlacitko:focus { background: var(--pv-oranzova-tmava); color: #fff; text-decoration: none; }
.pv-tlacitko:disabled { opacity: .55; cursor: not-allowed; }
.pv-tlacitko--tmave { background: var(--pv-zelena); }
.pv-tlacitko--tmave:hover, .pv-tlacitko--tmave:focus { background: var(--pv-zelena-tmava); }
.pv-kod { font-family: var(--pv-kod); font-size: .8rem; padding: 1px 6px; border-radius: 4px; background: var(--pv-zalozka); color: var(--pv-text); }
.pv-lista { background: var(--pv-zelena-tmava); color: var(--pv-na-tmave); font-size: .8rem; }
.pv-lista__obsah { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding-top: .45rem; padding-bottom: .45rem; }
.pv-lista__kontakt { display: flex; gap: 1.25rem; }
.pv-lista a { color: var(--pv-na-tmave); }
.pv-lista a:hover, .pv-lista a:focus { color: #fff; }
.pv-hlavicka { background: var(--pv-zelena); padding: 0; }
body:not(#index) .pv-hlavicka { padding: 1.25rem 0; } /* mimo úvod vyšší hlavička (jako .header-top) */
.pv-hlavicka__obsah { display: flex; align-items: center; gap: 2rem; min-height: 76px; }
.pv-logo { flex-shrink: 0; }
.pv-logo__odkaz, .pv-logo__odkaz:hover, .pv-logo__odkaz:focus { font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.1rem; letter-spacing: .5px; color: #fff; text-decoration: none; line-height: 1; display: inline-flex; align-items: center; gap: .45rem; white-space: nowrap; }
.pv-logo__obraz { display: block; height: 52px; width: auto; overflow: visible; }
.pv-navigace { display: flex; gap: 1.75rem; flex-grow: 1; }
.pv-navigace a { color: #fff; font-weight: 500; font-size: .95rem; white-space: nowrap; }
.pv-navigace a:hover, .pv-navigace a:focus { color: var(--pv-logo); text-decoration: none; }
.pv-hlavicka__hledani { flex: 1 1 360px; max-width: 520px; }
.pv-menu-tlacitko { display: none; }
.pv-hledani { width: 100%; overflow: visible; }
/* ps_searchbar: pod hledáním na mobilu mezera 10 px (v hlavičce bez obtékání) */
#search_widget { margin-bottom: .625rem; }
@media only screen and (min-width: 768px) { #search_widget { float: right; margin-bottom: 0; } }
@media only screen and (min-width: 992px) { #search_widget { min-width: 16.5rem; } }
#header .pv-hledani, #header .pv-hlavicka__hledani { display: block; float: none; }
.pv-hledani__formular { display: flex; gap: .5rem; }
.pv-hledani__pole { flex-grow: 1; min-width: 0; display: flex; align-items: center; gap: .6rem; margin: 0; padding: 0 .9rem; height: 46px; background: #fff; border-radius: 8px; color: var(--pv-tlumeny); }
.pv-hledani__pole input { flex-grow: 1; min-width: 0; border: 0; outline: none; background: transparent; font-family: var(--pv-pismo); font-size: 1rem; color: var(--pv-text); padding: 0; }
.pv-hledani__pole:focus-within { box-shadow: 0 0 0 3px var(--pv-logo); }
.pv-hledani__tlacitko { flex-shrink: 0; height: 46px; padding: 0 1.25rem; border: 0; border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-family: var(--pv-pismo); font-weight: 600; font-size: 1rem; cursor: pointer; }
.pv-hledani__tlacitko:hover, .pv-hledani__tlacitko:focus { background: var(--pv-oranzova-tmava); }
.pv-uvod-pruh { background: var(--pv-zelena); padding: 1.25rem 0; margin: 0; } /* jako #header .header-top šablony classic */
.pv-uvod-pruh__obsah { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "sklad vyber" "hledani vyber"; grid-template-rows: auto 1fr; column-gap: 3rem; row-gap: 1.5rem; align-items: start; }
.pv-uvod-pruh__hledani { grid-area: hledani; min-width: 0; display: flex; flex-direction: column; gap: 1rem; }
.pv-uvod-pruh__vyber { grid-area: vyber; }
.pv-uvod-pruh .pv-onas { grid-area: sklad; background: var(--pv-zelena-svetla); }
.pv-uvod-pruh__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 3.2rem; line-height: 1; color: #fff; text-transform: none; letter-spacing: normal; }
.pv-uvod-pruh__podnadpis { margin: 0; font-size: 1.1rem; color: var(--pv-na-tmave); max-width: 44rem; }
.pv-uvod-pruh .pv-hledani__pole, .pv-uvod-pruh .pv-hledani__tlacitko { height: 60px; }
.pv-uvod-pruh .pv-hledani__pole input { font-size: 1.15rem; }
.pv-uvod-pruh .pv-hledani__tlacitko { padding: 0 2rem; font-size: 1.1rem; }
.pv-uvod-pruh__priklady { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 0; font-size: .85rem; color: var(--pv-na-tmave); }
.pv-stitek, .pv-stitek:hover, .pv-stitek:focus { padding: .3rem .75rem; border-radius: 999px; background: var(--pv-zelena-svetla); color: #fff; font-size: .8rem; text-decoration: none; }
.pv-stitek--kod { font-family: var(--pv-kod); }
.pv-vyber { width: 420px; flex-shrink: 0; display: flex; flex-direction: column; gap: .8rem; padding: 1.5rem; background: #fff; border-radius: 14px; color: var(--pv-text); }
.pv-vyber__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.8rem; line-height: 1; }
.pv-vyber__sekce { display: grid; grid-template-columns: 1fr 1fr; padding: 4px; border-radius: 8px; background: var(--pv-zalozka); }
.pv-vyber__zalozka, .pv-vyber__zalozka:hover, .pv-vyber__zalozka:focus { padding: .5rem; border-radius: 6px; text-align: center; font-size: .85rem; font-weight: 600; color: #3a4640; text-decoration: none; }
.pv-vyber__zalozka.is-active { background: #fff; color: var(--pv-oranzova-tmava); box-shadow: 0 1px 2px rgba(0, 0, 0, .08); }
.pv-vyber__pole { display: flex; flex-direction: column; gap: .3rem; margin: 0; font-size: .85rem; font-weight: 600; }
.pv-vyber__pole select { height: 46px; padding: 0 .6rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; background-color: #fff; font-family: var(--pv-pismo); font-size: .95rem; font-weight: 400; color: var(--pv-text); }
.pv-vyber__pole select:disabled { background: #f6f8f5; color: var(--pv-tlumeny); }
.pv-vyber__dvojice { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.pv-vyber__vysledky { border-top: 1px solid var(--pv-okraj); padding-top: .75rem; }
.pv-vyber__pocet { margin: 0 0 .4rem; font-size: .8rem; font-weight: 600; color: #3a4640; }
.pv-vyber__seznam { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .3rem; font-size: .8rem; color: var(--pv-tlumeny); }
.pv-vyber__seznam a { display: block; padding: .45rem .7rem; border-radius: 7px; background: #f1f5ef; color: var(--pv-text); font-size: .85rem; }
.pv-vyber__seznam a:hover, .pv-vyber__seznam a:focus { background: var(--pv-oranzova-svetla); color: var(--pv-oranzova-tmava); text-decoration: none; }
.pv-vyber__tlacitko, .pv-vyber__tlacitko:hover, .pv-vyber__tlacitko:focus { display: flex; align-items: center; justify-content: center; min-height: 50px; border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-weight: 600; font-size: 1rem; text-decoration: none; }
.pv-vyber__tlacitko:hover { background: var(--pv-oranzova-tmava); }
.pv-vyber__tlacitko.is-disabled { background: #d9ded6; color: #52605a; pointer-events: none; }
.provyfuk-menu { background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; overflow: hidden; box-shadow: none; }
.provyfuk-menu__prepinac { border-bottom: 0; }
.provyfuk-menu__zalozka { display: flex; align-items: center; justify-content: center; text-align: center; padding: .8rem .5rem; font-family: var(--pv-nadpisy); font-size: 1.1rem; letter-spacing: .5px; background: var(--pv-zalozka); color: var(--pv-text); }
.provyfuk-menu__zalozka:hover, .provyfuk-menu__zalozka:focus { color: var(--pv-oranzova-tmava); }
.provyfuk-menu__zalozka[aria-selected="true"] { background: var(--pv-oranzova); color: #fff; }
.provyfuk-menu__nadpis { padding: .8rem 1.1rem .4rem; font-family: var(--pv-nadpisy); font-size: 1.1rem; }
.provyfuk-menu__nadpis a { color: var(--pv-text); }
.provyfuk-menu__seznam a { padding: .28rem 1.1rem; color: var(--pv-text); font-size: .88rem; }
.provyfuk-menu__seznam a:hover, .provyfuk-menu__seznam a:focus { color: var(--pv-oranzova-tmava); background: #f6f8f5; }
.provyfuk-menu__seznam .provyfuk-menu__seznam { border-left-color: var(--pv-okraj); }
.provyfuk-menu__polozka.is-open > a { color: var(--pv-text); }
.provyfuk-menu__dalsi { margin: .2rem 0 .1rem; }
.provyfuk-menu__dalsi-tlacitko { display: flex; align-items: center; gap: .4rem; margin: .1rem 1.1rem .3rem; padding: .3rem 0; list-style: none; cursor: pointer; color: var(--pv-odkaz); font-size: .88rem; font-weight: 600; }
.provyfuk-menu__dalsi-tlacitko::-webkit-details-marker { display: none; }
.provyfuk-menu__dalsi-tlacitko::after { content: ''; width: 7px; height: 7px; margin-top: -3px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .15s; }
.provyfuk-menu__dalsi[open] > .provyfuk-menu__dalsi-tlacitko::after { margin-top: 3px; transform: rotate(-135deg); }
.provyfuk-menu__dalsi-tlacitko:hover, .provyfuk-menu__dalsi-tlacitko:focus-visible { color: var(--pv-oranzova-tmava); }
.provyfuk-menu__dalsi-mene, .provyfuk-menu__dalsi[open] .provyfuk-menu__dalsi-vice { display: none; }
.provyfuk-menu__dalsi[open] .provyfuk-menu__dalsi-mene { display: inline; }
.provyfuk-menu__dalsi[open] > .provyfuk-menu__seznam { margin-bottom: .3rem; }
.provyfuk-menu__podnadpis { margin: .5rem 0 .15rem; padding: .55rem 1.1rem 0; border-top: 1px solid var(--pv-okraj); font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pv-tlumeny); }
.provyfuk-menu__polozka.is-active > a { margin: 2px .6rem 2px 0; border-radius: 6px; background: var(--pv-oranzova-svetla); color: #7c2d12; }
.pv-uvod { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 1.75rem; align-items: start; }
.pv-uvod__stred { display: flex; flex-direction: column; gap: 2rem; }
.pv-uvod__dlazdice { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
.pv-dlazdice, .pv-dlazdice:hover, .pv-dlazdice:focus { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 14px; overflow: hidden; color: var(--pv-text); text-decoration: none; }
.pv-dlazdice:hover, .pv-dlazdice.is-selected { border-color: var(--pv-oranzova); }
.pv-dlazdice__obrazek { position: relative; overflow: hidden; }
.pv-dlazdice__obrazek img { mix-blend-mode: multiply; }
.pv-dlazdice.je-odjezd-vpravo img { animation: pv-odjezd-vpravo .6s cubic-bezier(.5, 0, .9, .45) forwards; }
.pv-dlazdice.je-odjezd-vlevo img { animation: pv-odjezd-vlevo .75s cubic-bezier(.5, 0, .9, .45) forwards; }
.pv-dlazdice.je-prijezd-vpravo img { animation: pv-prijezd-vpravo .55s cubic-bezier(.15, .6, .3, 1) both; }
.pv-dlazdice.je-prijezd-vlevo img { animation: pv-prijezd-vlevo .65s cubic-bezier(.15, .6, .3, 1) both; }
@keyframes pv-odjezd-vpravo {0% { transform: none; } 20% { transform: translateX(-3%) rotate(-1.5deg); } 100% { transform: translateX(135%) rotate(0); }}
@keyframes pv-odjezd-vlevo {0% { transform: none; } 20% { transform: translateX(3%) rotate(1deg); } 100% { transform: translateX(-140%) rotate(0); }}
@keyframes pv-prijezd-vpravo {0% { transform: translateX(-120%); } 85% { transform: translateX(1.5%); } 100% { transform: none; }}
@keyframes pv-prijezd-vlevo {0% { transform: translateX(120%); } 85% { transform: translateX(-1.5%); } 100% { transform: none; }}
.pv-kour { position: absolute; z-index: 1; width: 40px; height: 40px; margin: -20px 0 0 -20px; border-radius: 50%; pointer-events: none; background: radial-gradient(circle, rgba(160, 166, 162, .8) 0%, rgba(160, 166, 162, .4) 40%, rgba(160, 166, 162, 0) 70%); filter: blur(3px); opacity: 0; animation: pv-kour 1.5s ease-out forwards; }
.pv-kour--diesel { background: radial-gradient(circle, rgba(95, 100, 97, .7) 0%, rgba(95, 100, 97, .35) 40%, rgba(95, 100, 97, 0) 70%); }
@keyframes pv-kour {0% { opacity: 0; transform: translate(0, 0) scale(.25); }
  12% { opacity: var(--pv-kour-o, .8); }
  100% { opacity: 0; transform: translate(var(--pv-kour-dx, 0), var(--pv-kour-dy, -30px)) scale(var(--pv-kour-s, 2.6)); }}
@media (prefers-reduced-motion: reduce) {
  .pv-dlazdice img { animation: none; }
  .pv-kour { display: none; }
}
.pv-znacky { margin-top: 1.1rem; padding: 1.25rem; border: 1px solid var(--pv-oranzova); border-radius: 14px; background: var(--pv-karta); scroll-margin-top: 1rem; }
.pv-znacky[hidden] { display: none; }
.pv-znacky__hlava { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; margin-bottom: 1rem; }
.pv-znacky__nadpis { flex: 1 1 0; min-width: 12rem; margin: 0; font-family: var(--pv-nadpisy); font-size: 1.6rem; line-height: 1.1; color: var(--pv-zelena); }
.pv-znacky__nadpis span { font-family: var(--pv-pismo); font-size: .9rem; font-weight: 500; color: var(--pv-tlumeny); }
.pv-znacky__hledat { flex: 0 1 18rem; margin: 0; }
.pv-znacky__hledat input { width: 100%; height: 44px; padding: 0 .9rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; font-size: 1rem; color: var(--pv-text); background: #fff; }
.pv-znacky__hledat input:focus { outline: none; border-color: var(--pv-zelena); box-shadow: 0 0 0 3px rgba(251, 146, 60, .5); }
.pv-znacky__zavrit { width: 44px; height: 44px; border: 1px solid var(--pv-okraj); border-radius: 8px; background: #fff; color: var(--pv-text); font-size: 1.6rem; line-height: 1; cursor: pointer; }
.pv-znacky__zavrit:hover, .pv-znacky__zavrit:focus-visible { background: var(--pv-zalozka); }
.pv-znacky__mrizka { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: .6rem; }
.pv-znacky__znacka { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .25rem; min-height: 86px; padding: .5rem; border: 1px solid var(--pv-okraj); border-radius: 10px; background: #fff; color: var(--pv-text); text-align: center; text-decoration: none; }
.pv-znacky__znacka[hidden] { display: none; }
.pv-znacky__znacka:hover, .pv-znacky__znacka:focus-visible { border-color: var(--pv-oranzova); box-shadow: 0 2px 8px rgba(18, 55, 42, .12); }
.pv-znacky__znacka img { display: block; width: 100%; max-width: 132px; height: auto; aspect-ratio: 8 / 3; object-fit: contain; }
.pv-znacky__znacka span { font-size: .75rem; font-weight: 600; letter-spacing: .02em; line-height: 1.2; }
.pv-znacky__vice { display: none; }
@media (max-width: 767px) {
  .pv-znacky__vice { display: block; width: 100%; margin-top: .75rem; min-height: 44px; border: 1px solid var(--pv-zelena); border-radius: 8px; background: #fff; color: var(--pv-zelena); font-weight: 600; font-size: 1rem; cursor: pointer; }
  .pv-znacky__vice:hover, .pv-znacky__vice:focus-visible { background: var(--pv-zalozka); }
}
.pv-znacky__nic, .pv-znacky__dalsi { margin: 1rem 0 0; font-size: .9rem; color: var(--pv-tlumeny); }
.pv-znacky__dalsi a { margin-left: .5rem; font-weight: 600; }
@media (max-width: 767px) {
  .pv-znacky { padding: 1rem; }
  .pv-znacky__nadpis { min-width: 0; }
  .pv-znacky__hledat { flex: 1 1 100%; order: 3; }
  .pv-znacky__mrizka { grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); }
  .pv-znacky:not(.is-vse):not(.is-hledani) .pv-znacky__znacka--dalsi { display: none; }
  .pv-znacky.is-hledani .pv-znacky__vice { display: none; }
}
.pv-dlazdice__obrazek { display: block; background: #f7f9f6; padding: .75rem; }
.pv-dlazdice__obrazek img { display: block; width: 100%; height: 190px; object-fit: contain; }
.pv-dlazdice__spodek { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: .75rem; padding: 1rem 1.2rem 1.2rem; }
.pv-dlazdice__nazev { display: block; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.3rem; line-height: 1; }
.pv-dlazdice__popis { display: block; margin-top: .3rem; font-size: .85rem; color: var(--pv-tlumeny); }
.pv-vyhody { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.pv-vyhody__polozka { display: flex; flex-direction: column; gap: .4rem; padding: 1.1rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; font-size: .85rem; color: var(--pv-tlumeny); line-height: 1.45; }
.pv-vyhody__polozka svg { color: var(--pv-oranzova); }
.pv-vyhody__polozka strong { color: var(--pv-text); font-size: 1rem; }
.pv-prislusenstvi__hlavicka { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: .9rem; }
.pv-prislusenstvi__hlavicka h2 { margin: 0; font-size: 2rem; }
.pv-prislusenstvi__hlavicka a { font-weight: 600; }
.pv-prislusenstvi__mrizka { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.pv-prislusenstvi__odkaz, .pv-prislusenstvi__odkaz:hover, .pv-prislusenstvi__odkaz:focus { display: flex; justify-content: space-between; align-items: center; padding: .9rem 1rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 10px; color: var(--pv-text); font-weight: 500; text-decoration: none; }
.pv-prislusenstvi__odkaz::after { content: '›'; color: var(--pv-oranzova); font-weight: 700; }
.pv-prislusenstvi__odkaz:hover { border-color: var(--pv-oranzova); }
.pv-onas { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 9fr); gap: 1rem; align-items: center; padding: .75rem; border-radius: 12px; background: var(--pv-zelena); color: #fff; }
.pv-onas__foto img { display: block; width: 100%; height: auto; border-radius: 8px; }
.pv-onas__stitek { display: inline-block; padding: .15rem .5rem; border-radius: 4px; background: var(--pv-oranzova); font-size: .65rem; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.pv-onas h2 { margin: .3rem 0 .15rem; color: #fff; font-size: 1.6rem; line-height: 1.1; }
.pv-onas p { margin: 0; color: var(--pv-na-tmave); font-size: .9rem; line-height: 1.4; }
.pv-onas__radek { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-top: .4rem; }
.pv-onas__udaje { margin: 0; padding: 0; list-style: none; white-space: nowrap; color: var(--pv-na-tmave); font-size: .85rem; line-height: 1.5; }
.pv-onas__udaje strong { color: #fff; font-weight: 600; }
.pv-onas__udaje a { color: #fff; font-weight: 600; text-decoration: none; }
.pv-onas__mapa { display: inline-block; margin-top: .2rem; color: var(--pv-logo); font-weight: 600; font-size: .9rem; text-decoration: none; }
.pv-onas__mapa:hover { text-decoration: underline; color: var(--pv-logo); }
.pv-onas__odznak { flex-shrink: 0; }
.pv-onas__odznak img { display: block; width: 138px; height: 120px; }
@media (max-width: 767px) {
  .pv-onas { grid-template-columns: 1fr; gap: .75rem; }
  .pv-onas__odznak img { width: 104px; height: 90px; }
  .pv-onas__udaje { white-space: normal; }
  .pv-onas__radek > div { min-width: 0; }
}
.pv-uvod__bok { display: flex; flex-direction: column; gap: 1.1rem; }
.pv-vin { display: flex; flex-direction: column; gap: .8rem; padding: 1.4rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; }
.pv-vin__nadpis { margin: 0; font-size: 1.7rem; line-height: 1.05; }
.pv-vin__text { margin: 0; font-size: .85rem; color: var(--pv-tlumeny); line-height: 1.5; }
.pv-vin__zprava { margin: 0; padding: .6rem .8rem; border-radius: 8px; font-size: .85rem; font-weight: 600; }
.pv-vin__zprava.is-ok { background: #dcfce7; color: #14532d; }
.pv-vin__zprava.is-chyba { background: #fee2e2; color: #7f1d1d; }
.pv-vin__robot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pv-pole { display: flex; flex-direction: column; gap: .3rem; margin: 0; font-size: .8rem; font-weight: 600; }
.pv-pole input, .pv-pole textarea { padding: .6rem .8rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; font-family: var(--pv-pismo); font-size: .95rem; font-weight: 400; color: var(--pv-text); }
.pv-pole input { height: 44px; }
.pv-pole__vin { font-family: var(--pv-kod) !important; letter-spacing: 1px; text-transform: uppercase; }
.pv-poradime { display: flex; flex-direction: column; gap: .4rem; padding: 1.4rem; border-radius: 12px; background: var(--pv-zelena); color: #fff; }
.pv-poradime__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.5rem; }
.pv-poradime a { color: var(--pv-na-tmave); }
.pv-poradime a:hover, .pv-poradime a:focus { color: #fff; }
.pv-poradime__telefon { font-size: 1.25rem; font-weight: 600; color: #fff !important; }
.pv-vozidlo__hlavicka { margin-bottom: 1rem; }
.pv-vozidlo__nazev { margin: 0; font-size: 2.6rem; line-height: 1.05; }
.pv-vozidlo__provedeni { margin: .3rem 0 0; font-size: 1.05rem; color: #3a4640; }
.pv-sestavy { margin: 0 0 1rem; padding: 1rem 1.1rem; border: 1px solid var(--pv-oranzova); border-radius: 12px; background: var(--pv-oranzova-svetla); }
.pv-sestavy__nadpis { margin: 0 0 .75rem; font-size: .95rem; line-height: 1.45; color: var(--pv-text); }
.pv-sestavy__volba { display: flex; flex-wrap: wrap; gap: .5rem; }
.pv-sestavy__tlacitko { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .4rem 1rem .4rem .5rem; border: 2px solid var(--pv-okraj-vstup); border-radius: 10px; background: #fff; color: var(--pv-text); font-weight: 600; font-size: .9rem; text-align: left; cursor: pointer; }
.pv-sestavy__tlacitko:hover { border-color: var(--pv-zelena); }
.pv-sestavy__tlacitko:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 2px; }
.pv-sestavy__tlacitko[aria-selected="true"] { border-color: var(--pv-zelena); background: var(--pv-zelena); color: #fff; }
.pv-sestavy__cislo { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 28px; height: 28px; border-radius: 50%; background: var(--pv-zalozka); color: var(--pv-zelena); font-family: var(--pv-nadpisy); font-size: 1rem; }
.pv-sestavy__tlacitko[aria-selected="true"] .pv-sestavy__cislo { background: var(--pv-logo); color: var(--pv-zelena-tmava); }
.pv-sestava[hidden] { display: none; }
.pv-sada__nadpis--dalsi { margin-top: 1.5rem; }
.pv-sada__prislusenstvi--dalsi { margin-top: .5rem; }
.pv-schema { margin: 0 0 1.5rem; padding: 1rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; }
.pv-schema img { display: block; width: 100%; height: auto; }
.pv-schema figcaption { margin-top: .6rem; font-size: .8rem; color: var(--pv-tlumeny); }
.pv-schema__obraz { position: relative; display: block; }
.pv-schema__vrstva { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; mix-blend-mode: multiply; }
.pv-dil.pv-dil--barva { box-shadow: inset 6px 0 0 var(--pv-barva); }
.pv-dil__barvy { display: inline-flex; gap: 3px; margin-left: .4rem; vertical-align: middle; }
.pv-dil__barvy i { display: block; width: 10px; height: 10px; border-radius: 50%; background: var(--pv-barva); }
.pv-sada { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 1.5rem; align-items: start; }
.pv-sada__seznam { display: flex; flex-direction: column; gap: .6rem; }
.pv-sada__nadpis { margin: .5rem 0 .2rem; font-size: 1.7rem; }
.pv-sada__prislusenstvi { background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; overflow: hidden; }
.pv-dil { display: grid; grid-template-columns: 24px 80px minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: .8rem 1rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; }

.pv-dil__vyber { width: 22px; height: 22px; margin: 0; accent-color: var(--pv-oranzova); cursor: pointer; }
.pv-dil__foto img { display: block; width: 80px; height: 80px; object-fit: contain; background: #f7f9f6; border-radius: 8px; }
.pv-dil__popis { display: flex; flex-direction: column; gap: .25rem; min-width: 0; }
.pv-dil__nazev { font-weight: 600; font-size: 1rem; color: var(--pv-text); }
.pv-dil__udaje { font-size: .8rem; color: var(--pv-tlumeny); }
.pv-dil__cena { font-size: 1.2rem; font-weight: 600; white-space: nowrap; }
.pv-dil--maly { grid-template-columns: 24px minmax(0, 1fr) auto; padding: .6rem 1rem; border: 0; border-bottom: 1px solid #eaefe7; border-radius: 0; }
.pv-dil--maly:last-child { border-bottom: 0; }

.pv-dil--maly .pv-dil__nazev { font-weight: 400; font-size: .9rem; }
.pv-dil--maly .pv-dil__cena { font-size: 1rem; }
.pv-sada__souhrn { position: sticky; top: 1rem; display: flex; flex-direction: column; gap: .7rem; padding: 1.3rem; background: #fff; border: 2px solid var(--pv-zelena); border-radius: 12px; }
.pv-sada__souhrn-nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.5rem; line-height: 1.05; }
#wrapper .pv-sada__souhrn-nadpis { color: var(--pv-text); }
.pv-sada__radek { display: flex; justify-content: space-between; margin: 0; font-size: .85rem; color: #3a4640; }
.pv-sada__radek strong { color: var(--pv-text); }
.pv-sada__radek--celkem { align-items: baseline; padding-top: .7rem; border-top: 1px solid var(--pv-okraj); font-size: .95rem; }
.pv-sada__radek--celkem strong { font-size: 1.6rem; }
.pv-sada__dokosiku[hidden] { display: none; }
.pv-sada__dokosiku, .pv-sada__dokosiku:hover, .pv-sada__dokosiku:focus { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; font-size: 1rem; text-decoration: none; }
.pv-sada__stav { margin: 0; font-size: .85rem; font-weight: 600; color: #14532d; }
.pv-sada__stav.is-chyba { color: #7f1d1d; }
.pv-sada__poznamka { margin: 0; font-size: .75rem; color: var(--pv-tlumeny); line-height: 1.4; }
.pv-sada__k-dilum { padding: .6rem 1rem; border: 1px solid var(--pv-zelena); border-radius: 8px; background: #fff; color: var(--pv-zelena); font: 600 .95rem/1.25 var(--pv-pismo); text-align: left; cursor: pointer; }
.pv-sada__k-dilum:hover, .pv-sada__k-dilum:focus-visible { background: var(--pv-zalozka); }
.pv-sada__vin, .pv-sada__vin:hover, .pv-sada__vin:focus { display: flex; flex-direction: column; gap: .2rem; padding: .9rem; border-radius: 10px; background: var(--pv-zelena); color: var(--pv-na-tmave); font-size: .8rem; text-decoration: none; }
.pv-sada__vin strong { color: #fff; font-family: var(--pv-nadpisy); font-size: 1.15rem; }
@media (max-width: 1199px) {
  .pv-hlavicka__obsah { gap: 1.25rem; }
  .pv-navigace { gap: 1.1rem; }
  .pv-uvod { grid-template-columns: minmax(0, 1fr); }
  .pv-uvod__bok { display: grid; grid-template-columns: 1fr 1fr; }
  .pv-sada { grid-template-columns: minmax(0, 1fr); }
  .pv-sada__souhrn { position: static; }
}
@media (max-width: 991px) {
  .pv-lista__text { display: none; }
  .pv-lista__obsah { justify-content: center; }
  .pv-hlavicka__obsah { flex-wrap: wrap; gap: .75rem; padding-top: .6rem; padding-bottom: .75rem; min-height: 0; }
  .pv-logo { order: 1; }
  .pv-menu-tlacitko { order: 3; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 8px; background: var(--pv-zelena-svetla); color: #fff; cursor: pointer; }
  .pv-navigace { order: 5; display: none; flex-basis: 100%; flex-direction: column; gap: 0; border-top: 1px solid var(--pv-zelena-svetla); }
  .pv-navigace.is-open { display: flex; }
  .pv-navigace a { padding: .75rem 0; border-bottom: 1px solid var(--pv-zelena-svetla); }
  .pv-hlavicka__hledani { order: 4; flex-basis: 100%; max-width: none; }
  /* jeden sloupec: vyhledávání, výběr vozidla, pak teprve blok VIN z fotky (čtení VIN zatím často pozná jen značku), sklad */
  .pv-uvod-pruh__obsah { display: flex; flex-direction: column; align-items: stretch; gap: 1rem; }
  .pv-uvod-pruh__hledani { display: contents; }
  .pv-uvod-pruh__vyber { order: 1; margin-top: .5rem; }
  .pv-uvod-pruh .pv-vin-foto--uvod { order: 2; }
  .pv-uvod-pruh .pv-onas { order: 3; margin-top: .5rem; }
  .pv-uvod-pruh__nadpis { font-size: 2.3rem; }
  .pv-vyber { width: auto; }
  .pv-uvod-pruh .pv-hledani__pole, .pv-uvod-pruh .pv-hledani__tlacitko { height: 52px; }
  .pv-uvod-pruh .pv-hledani__tlacitko { padding: 0 1.1rem; }
  .pv-vyhody, .pv-prislusenstvi__mrizka { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .pv-uvod-pruh__priklady { display: none; }
  .pv-uvod__dlazdice, .pv-vyhody, .pv-uvod__bok { grid-template-columns: 1fr; }
  .pv-dlazdice__obrazek img { height: 150px; }
  .pv-vozidlo__nazev { font-size: 2rem; }
  .pv-dil { grid-template-columns: 24px 64px minmax(0, 1fr); gap: .75rem; }
  .pv-dil__foto img { width: 64px; height: 64px; }
  .pv-dil__cena { grid-column: 3; font-size: 1.1rem; }
  .pv-dil--maly { grid-template-columns: 24px minmax(0, 1fr) auto; }
  .pv-dil--maly .pv-dil__cena { grid-column: auto; }
  .pv-sada__souhrn { position: sticky; bottom: 0; top: auto; z-index: 20; margin: 0 -15px; padding: .8rem 15px 1rem; border: 0; border-top: 1px solid var(--pv-okraj); border-radius: 0; box-shadow: 0 -6px 16px rgba(0, 0, 0, .08); display: grid; grid-template-columns: 1fr auto; gap: .4rem .75rem; }
  .pv-sada__souhrn-nadpis, .pv-sada__souhrn .pv-sada__radek:not(.pv-sada__radek--celkem), .pv-sada__poznamka, .pv-sada__vin { display: none; }
  .pv-sada__radek--celkem { grid-column: 1 / -1; padding-top: 0; border-top: 0; }
  .pv-sada__dokosiku, .pv-sada__stav { grid-column: 1 / -1; }
}
label, .label { text-align: left; color: inherit; }
@media (min-width: 1300px) {
  .container { width: 1320px; max-width: calc(100% - 30px); }
}
.pv-dlazdice__spodek .pv-tlacitko { white-space: nowrap; }
.pv-dil__cena, .pv-sada__radek--celkem strong { color: var(--pv-cena); }
@media (max-width: 991px) {
  .pv-hlavicka__obsah { gap: .5rem; }
  .pv-logo__odkaz, .pv-logo__odkaz:hover, .pv-logo__odkaz:focus { font-size: 1.75rem; }
}
.pv-hlavicka__hledani { flex: 1 1 240px; max-width: 420px; }
@media (max-width: 1499px) {
  .pv-hlavicka__obsah { gap: 1.25rem; }
  .pv-navigace { gap: 1.1rem; }
}
@media (max-width: 1399px) {
  .pv-hlavicka__obsah { flex-wrap: wrap; padding-top: .6rem; padding-bottom: .8rem; }
  .pv-hlavicka__hledani { order: 5; flex-basis: 100%; max-width: none; min-width: 0; }
}
input:focus, select:focus, textarea:focus { outline-color: var(--pv-oranzova); }

.pv-dil__cena small { font-size: .75em; font-weight: 400; color: var(--pv-tlumeny); }

.pv-sada__nadpis-radek { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .5rem; }
.pv-sada__nadpis-radek .pv-sada__nadpis { margin: 0; }
.pv-sada__komplet { display: inline-flex; align-items: center; gap: .6rem; min-height: 44px; margin: 0; padding: .45rem .9rem; border: 1px solid var(--pv-oranzova); border-radius: 8px; background: #fff; font-weight: 600; font-size: .9rem; color: var(--pv-oranzova-tmava); cursor: pointer; }
.pv-sada__komplet input { width: 20px; height: 20px; margin: 0; accent-color: var(--pv-oranzova); cursor: pointer; }
.pv-dil--maly { grid-template-columns: 24px 48px minmax(0, 1fr) auto; }
.pv-dil--maly .pv-dil__foto img { width: 48px; height: 48px; border-radius: 6px; }
@media (max-width: 767px) {
  .pv-dil--maly { grid-template-columns: 24px 40px minmax(0, 1fr) auto; }
  .pv-dil--maly .pv-dil__foto img { width: 40px; height: 40px; }
}
.pv-firma-prepinac__label { display: inline-flex; align-items: center; gap: .5rem; margin: 0; font-weight: 600; cursor: pointer; }
.pv-firma-prepinac__label input { width: 18px; height: 18px; accent-color: var(--pv-oranzova); }
.pv-dil { grid-template-columns: 24px 80px minmax(0, 1fr) auto; }
.pv-dil--maly { grid-template-columns: 24px 48px minmax(0, 1fr) auto; }
.pv-dil__nakup { display: flex; flex-direction: column; align-items: flex-end; gap: .45rem; }
.pv-dil__nakup-radek { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .5rem; }
.pv-dil--maly .pv-dil__nakup { gap: .3rem; }
.pv-dil__kosik { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; min-height: 44px; padding: 0 1rem; border: 0; border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-family: var(--pv-pismo); font-size: .95rem; font-weight: 600; white-space: nowrap; text-decoration: none; cursor: pointer; transition: background .15s; }
.pv-dil__kosik:hover, .pv-dil__kosik:focus-visible { background: var(--pv-oranzova-tmava); color: #fff; text-decoration: none; }
.pv-dil__kosik:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 2px; }
.pv-dil__kosik:disabled { opacity: .7; cursor: wait; }
.pv-dil__kosik.is-v-kosiku { background: #15803d; }
.pv-dil__kosik.is-v-kosiku:hover, .pv-dil__kosik.is-v-kosiku:focus-visible { background: #166534; }
.pv-dil.is-v-kosiku { border-color: #15803d; }
.pv-dil--maly.is-v-kosiku { background: #f0fdf4; }
.pv-dil.is-v-kosiku .pv-dil__vyber { accent-color: #15803d; cursor: pointer; }
.pv-dil.is-pracuje { opacity: .65; cursor: progress; }
@media (hover: hover) {
  .pv-dil__kosik.is-v-kosiku:hover:not(:disabled):not(.is-cerstve), .pv-dil__kosik.is-v-kosiku:focus-visible { background: #7f1d1d; border-color: #7f1d1d; }
  .pv-dil__kosik.is-v-kosiku:hover:not(:disabled):not(.is-cerstve) .pv-dil__kosik-text, .pv-dil__kosik.is-v-kosiku:focus-visible .pv-dil__kosik-text { display: none; }
  .pv-dil__kosik.is-v-kosiku:hover:not(:disabled):not(.is-cerstve)::after, .pv-dil__kosik.is-v-kosiku:focus-visible::after { content: '✕ Odebrat'; }
}
.pv-dil__kosik.is-chyba { background: #b91c1c; }
.pv-dil__kosik--dotaz { background: #fff; border: 2px solid var(--pv-zelena); color: var(--pv-zelena); }
.pv-dil__kosik--dotaz:hover, .pv-dil__kosik--dotaz:focus-visible { background: var(--pv-zalozka); color: var(--pv-zelena); }
.pv-dil--maly .pv-dil__kosik { min-height: 40px; padding: 0 .8rem; font-size: .875rem; }
.pv-dil__mnozstvi { display: inline-flex; align-items: center; gap: .35rem; margin: 0; font-size: .85rem; color: var(--pv-tlumeny); }
.pv-dil__pocitadlo { display: inline-flex; align-items: stretch; height: 40px; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; background: #fff; overflow: hidden; }
.pv-dil__krok { width: 36px; padding: 0; border: 0; background: var(--pv-zalozka); color: var(--pv-zelena); font-family: var(--pv-pismo); font-size: 1.3rem; font-weight: 600; line-height: 1; cursor: pointer; touch-action: manipulation; transition: background .15s; }
.pv-dil__krok:hover { background: #d3ddcf; }
.pv-dil__krok:focus { outline: 0; }
.pv-dil__krok:focus-visible { box-shadow: inset 0 0 0 2px var(--pv-oranzova); }
.pv-dil__krok.is-mez, .pv-dil__krok:disabled { background: #f3f5f1; color: #a3aea8; cursor: default; }
.pv-dil__mnozstvi input { width: 44px; height: 100%; padding: 0 .2rem; border: 0; border-left: 1px solid var(--pv-okraj-vstup); border-right: 1px solid var(--pv-okraj-vstup); border-radius: 0; background: #fff; font-family: var(--pv-pismo); font-size: 1rem; text-align: center; color: var(--pv-text); -moz-appearance: textfield; appearance: textfield; }
.pv-dil__mnozstvi input::-webkit-outer-spin-button, .pv-dil__mnozstvi input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.pv-dil__mnozstvi input:focus { outline: 0; box-shadow: inset 0 0 0 2px var(--pv-oranzova); }
.pv-dil__za-kus { margin-left: .2rem; font-size: .75em; font-weight: 400; color: var(--pv-tlumeny); }
.pv-dil__cena { min-width: 90px; text-align: right; }
@media (max-width: 767px) {
  .pv-dil { grid-template-columns: 24px 64px minmax(0, 1fr); }
  .pv-dil .pv-dil__mnozstvi { grid-column: 3; }
  .pv-dil .pv-dil__cena { grid-column: 3; text-align: left; }
  .pv-dil--maly { grid-template-columns: 24px 40px minmax(0, 1fr) auto; }
  .pv-dil--maly .pv-dil__mnozstvi { grid-column: 3; }
  .pv-dil--maly .pv-dil__cena { grid-column: 4; grid-row: 1 / span 2; text-align: right; }
  .pv-dil .pv-dil__nakup, .pv-dil--maly .pv-dil__nakup { grid-column: 3 / -1; align-items: flex-start; }
  .pv-dil__nakup-radek { justify-content: flex-start; }
}
.pv-qr-platba { display: flex; flex-wrap: wrap; gap: 1.5rem; align-items: center; margin: 1rem 0; padding: 1.25rem; background: #fff; border: 2px solid var(--pv-zelena); border-radius: 12px; }
.pv-qr-platba__udaje { flex: 1 1 280px; }
.pv-qr-platba__udaje p { margin: 0 0 .6rem; color: var(--pv-text); }
.pv-qr-platba__kod { display: flex; flex-direction: column; align-items: center; gap: .4rem; font-size: .8rem; color: var(--pv-tlumeny); }
.pv-dostupnost { display: inline-flex; align-items: center; gap: .35rem; font-size: .85rem; font-weight: 600; line-height: 1.3; }
.pv-dostupnost::before { content: ''; width: .6rem; height: .6rem; border-radius: 50%; flex: none; background: currentColor; }
.pv-dostupnost--skladem { color: #15803d; }
.pv-dostupnost--dodavatel { color: #1e3a8a; }
.pv-dostupnost--objednani { color: #b91c1c; }
.pv-dil__popis .pv-dostupnost { display: flex; margin-top: .15rem; }
.pv-dostupnost-radek { margin-top: .35rem; }
.pv-dil--nepotrebny { background: #f7f9f6; border-style: dashed; }
.pv-dil--nepotrebny .pv-dil__foto img { opacity: .7; }
.pv-dil__opaska, .pv-opaska-info { display: flex; gap: .45rem; align-items: flex-start; color: #1d4d3b; }
.pv-dil__opaska { grid-column: 3 / -1; margin: 0; font-size: .85rem; line-height: 1.4; }
@media (max-width: 767px) {
  .pv-dil--nepotrebny .pv-dil__opaska { order: 1; }
  .pv-dil--nepotrebny .pv-dil__nakup { order: 2; }
}
.pv-dil__opaska::before, .pv-opaska-info::before { content: 'i'; flex: none; width: 1.1rem; height: 1.1rem; margin-top: .05rem; border-radius: 50%; background: var(--pv-zelena); color: #fff; font: italic 700 .72rem/1.1rem Georgia, 'Times New Roman', serif; text-align: center; }
.pv-opaska-info { margin: .8rem 0 0; padding: .65rem .8rem; background: #eef4ef; border: 1px solid #cfe0d4; border-radius: 8px; font-size: .92rem; line-height: 1.45; }
@media (max-width: 991px) {
  .pv-logo__obraz { height: 42px; }
}
@media (max-width: 440px) {
  .pv-logo__obraz { height: 34px; }
  .pv-hlavicka__obsah { column-gap: .5rem; }
}
@media (max-width: 360px) {
  .pv-logo__obraz { height: 30px; }
}
.pv-cenik { --pv-cenik-pruh: 64px; }
.pv-nahoru { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 30; display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; padding: 0; border: 0; border-radius: 50%; background: var(--pv-oranzova); color: #fff; box-shadow: 0 6px 18px rgba(18, 55, 42, .3); cursor: pointer; }
.pv-nahoru[hidden] { display: none; }
.pv-nahoru:hover, .pv-nahoru:focus-visible { background: var(--pv-oranzova-tmava); }
.pv-nahoru:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 3px; }
@media (max-width: 767px) {
  .pv-nahoru { right: 1rem; bottom: 1rem; width: 48px; height: 48px; }
}
.pv-cenik__uvod { max-width: 52rem; color: var(--pv-tlumeny); }
.pv-cenik__filtr { position: sticky; top: 0; z-index: 20; display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin: 0 0 1rem; padding: .75rem 1rem; background: var(--pv-zelena); border-radius: 0 0 10px 10px; box-shadow: 0 4px 12px rgba(18, 55, 42, .18); }
.pv-cenik__domu, .pv-cenik__domu:hover, .pv-cenik__domu:focus { display: inline-flex; align-items: center; gap: .4rem; height: 42px; padding: 0 .9rem; border: 1px solid rgba(255, 255, 255, .35); border-radius: 8px; color: #fff; font-weight: 600; text-decoration: none; white-space: nowrap; }
.pv-cenik__domu:hover, .pv-cenik__domu:focus { background: var(--pv-zelena-svetla); border-color: var(--pv-logo); }
.pv-cenik__hledat { flex: 1 1 18rem; margin: 0; }
.pv-cenik__hledat input, .pv-cenik__skupiny select { width: 100%; height: 42px; padding: 0 .8rem; border: 0; border-radius: 8px; background: #fff; color: var(--pv-text); font: inherit; }
.pv-cenik__hledat input:focus, .pv-cenik__skupiny select:focus { outline: 3px solid var(--pv-logo); outline-offset: 0; }
.pv-cenik__skupiny { flex: 0 1 15rem; margin: 0; }
.pv-cenik__skladem { display: flex; align-items: center; gap: .4rem; margin: 0; color: #fff; font-weight: 600; white-space: nowrap; cursor: pointer; }
.pv-cenik__skladem input { width: 18px; height: 18px; accent-color: var(--pv-oranzova); }
.pv-cenik__nalezeno { color: var(--pv-na-tmave); font-size: .9rem; white-space: nowrap; }
.pv-cenik__obsah { display: flex; flex-direction: column; gap: .5rem; margin-bottom: 1.5rem; }
.pv-cenik__obsah-cast { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .5rem; font-size: .9rem; }
.pv-cenik__obsah-cast strong { margin-right: .25rem; color: var(--pv-text); }
.pv-cenik__obsah a { padding: .2rem .6rem; border: 1px solid var(--pv-okraj); border-radius: 999px; background: #fff; color: var(--pv-text); text-decoration: none; }
.pv-cenik__obsah a:hover { border-color: var(--pv-oranzova); color: var(--pv-oranzova-tmava); }
.pv-cenik__obsah a span { color: var(--pv-tlumeny); font-size: .8em; }
.pv-cenik__nic { padding: 1rem; background: #fff; border-radius: 10px; }
.pv-cenik__skupina { margin-bottom: 2rem; scroll-margin-top: calc(var(--pv-cenik-pruh) + .5rem); }
.pv-cenik__skupina h2 { margin: 0 0 .5rem; font-family: var(--pv-nadpisy); font-size: 1.6rem; text-transform: none; color: var(--pv-zelena); }
.pv-cenik__skupina h2 span { color: var(--pv-tlumeny); font-family: var(--pv-pismo); font-size: .9rem; font-weight: 400; }
.pv-cenik__tabulka { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 10px; font-size: .92rem; }
.pv-cenik__tabulka th { position: sticky; top: var(--pv-cenik-pruh); z-index: 5; padding: .5rem .75rem; background: var(--pv-zalozka); color: var(--pv-text); font-size: .78rem; font-weight: 600; letter-spacing: .3px; text-align: left; text-transform: uppercase; border-bottom: 1px solid var(--pv-okraj); }
.pv-cenik__tabulka th:last-child, .pv-cenik__tabulka td:last-child { text-align: right; white-space: nowrap; }
.pv-cenik__tabulka td { padding: .45rem .75rem; border-bottom: 1px solid #eef1ec; vertical-align: middle; }
.pv-cenik__tabulka tr:last-child td { border-bottom: 0; }
.pv-cenik__tabulka tbody tr:hover { background: #f7f9f5; }
.pv-cenik__tabulka td:first-child { font-family: var(--pv-kod); white-space: nowrap; }
.pv-cenik__tabulka td:last-child { font-weight: 700; color: var(--pv-cena); }
.pv-cenik__tabulka a { color: var(--pv-odkaz); }
.pv-cenik__tabulka .pv-dostupnost { font-size: .8rem; white-space: nowrap; }
@media (max-width: 767px) {
  .pv-cenik__filtr { margin-left: -15px; margin-right: -15px; border-radius: 0; padding: .6rem 15px; }
  .pv-cenik__hledat { flex-basis: calc(100% - 42px - 1rem); }
  .pv-cenik__domu, .pv-cenik__domu:hover, .pv-cenik__domu:focus { order: 1; width: 42px; padding: 0; justify-content: center; }
  .pv-cenik__domu span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .pv-cenik__hledat { order: 0; }
  .pv-cenik__skupiny, .pv-cenik__skladem, .pv-cenik__nalezeno { order: 2; }
  .pv-cenik__skupiny { flex-basis: calc(100% - 9rem); }
  .pv-cenik__tabulka thead { display: none; }
  .pv-cenik__tabulka, .pv-cenik__tabulka tbody { display: block; }
  .pv-cenik__tabulka tr { display: grid; grid-template-columns: 1fr auto; gap: .15rem .75rem; padding: .55rem .75rem; border-bottom: 1px solid #eef1ec; }
  .pv-cenik__tabulka tr[hidden] { display: none; }
  .pv-cenik__tabulka td { display: block; padding: 0; border: 0; }
  .pv-cenik__tabulka td:nth-child(1) { grid-column: 1; grid-row: 1; }
  .pv-cenik__tabulka td:nth-child(4) { grid-column: 2; grid-row: 1; }
  .pv-cenik__tabulka td:nth-child(2) { grid-column: 1 / -1; }
  .pv-cenik__tabulka td:nth-child(3) { grid-column: 1 / -1; }
  .pv-cenik__tabulka td:nth-child(3):empty { display: none; }
}
.pv-kontakt h2, .pv-kontakt h3 { text-transform: none; }
.pv-kontakt p { color: var(--pv-text); font-size: 1rem; }
.pv-kontakt__mensi, .pv-kontakt p.pv-kontakt__mensi { margin: .25rem 0 0; font-size: .875rem; color: var(--pv-tlumeny); }
.pv-kontakt__kod { font-family: var(--pv-kod); font-size: .85rem; }
.pv-kontakt__uvod { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem 2rem; margin-bottom: 1.75rem; }
.pv-kontakt__uvod-text { flex: 1 1 520px; min-width: 0; }
.pv-kontakt__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 3.75rem; line-height: 1; color: var(--pv-zelena); }
.pv-kontakt p.pv-kontakt__perex { margin: .75rem 0 0; max-width: 660px; font-size: 1.125rem; line-height: 1.5; color: var(--pv-tlumeny); }
.pv-kontakt__stav { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; }
.pv-kontakt p.pv-kontakt__otevreno { display: inline-flex; align-items: center; gap: .6rem; margin: 0; padding: .6rem 1rem; border: 1px solid var(--pv-okraj); border-radius: 999px; background: var(--pv-karta); font-size: .875rem; font-weight: 600; }
.pv-kontakt__tecka { display: none; width: 10px; height: 10px; border-radius: 50%; background: #8a968f; }
.pv-kontakt__otevreno.je-otevreno .pv-kontakt__tecka { display: block; background: #16a34a; box-shadow: 0 0 0 4px rgba(22, 163, 74, .18); }
.pv-kontakt__otevreno.je-zavreno .pv-kontakt__tecka { display: block; }
.pv-kontakt p.pv-kontakt__uzaverka { display: inline-flex; align-items: center; gap: .5rem; margin: 0; padding-left: .25rem; font-size: .8125rem; color: var(--pv-tlumeny); }
.pv-kontakt__rychle { display: flex; flex-wrap: wrap; gap: 1rem; }
.pv-kontakt__karta { flex: 1 1 280px; display: flex; flex-direction: column; gap: .6rem; padding: 1.5rem; border: 1px solid var(--pv-okraj); border-radius: 14px; background: var(--pv-karta); }
.pv-kontakt__ikona { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 10px; background: var(--pv-zelena); color: var(--pv-logo); }
.pv-kontakt__stitek { font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pv-tlumeny); }
.pv-kontakt__hodnota { font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.25rem; line-height: 1; color: var(--pv-text); }
.pv-kontakt__hodnota--email { font-size: 2rem; line-height: 1.1; overflow-wrap: anywhere; }
.pv-kontakt__popis { font-size: .875rem; line-height: 1.5; color: var(--pv-tlumeny); }
.pv-kontakt__akce { display: flex; flex-wrap: wrap; gap: .5rem .6rem; margin: 0; }
.pv-kontakt__karta .pv-kontakt__akce { margin-top: auto; padding-top: .5rem; }
.pv-kontakt__obrys, .pv-kontakt__kopirovat { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; padding: 0 1.1rem; border: 2px solid var(--pv-zelena); border-radius: 8px; background: var(--pv-karta); color: var(--pv-zelena); font-weight: 600; font-size: .95rem; line-height: 1.2; text-decoration: none; cursor: pointer; }
.pv-kontakt__obrys:hover, .pv-kontakt__obrys:focus, .pv-kontakt__kopirovat:hover, .pv-kontakt__kopirovat:focus { background: var(--pv-zalozka); color: var(--pv-zelena); text-decoration: none; }
.pv-kontakt__kopirovat { padding: 0 .9rem; border-width: 1px; border-color: var(--pv-okraj-vstup); font-size: .875rem; }
.pv-kontakt__obrys--tenky { border-width: 1px; border-color: var(--pv-okraj-vstup); font-size: .875rem; }
.pv-kontakt__obrys--svetly, .pv-kontakt__obrys--svetly:hover, .pv-kontakt__obrys--svetly:focus { border-color: var(--pv-na-tmave); background: transparent; color: #fff; }
.pv-kontakt__obrys--svetly:hover, .pv-kontakt__obrys--svetly:focus { background: rgba(255, 255, 255, .1); }
.pv-kontakt__hlavni { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 1.5rem; margin-top: 1.5rem; }
.pv-kontakt__formular { flex: 7 1 520px; min-width: 0; border: 1px solid var(--pv-okraj); border-radius: 14px; background: var(--pv-karta); overflow: hidden; }
.pv-kontakt__bok { flex: 5 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 1rem; }
.pv-kontakt__box { border: 1px solid var(--pv-okraj); border-radius: 14px; background: var(--pv-karta); overflow: hidden; }
.pv-kontakt__foto { display: block; width: 100%; height: 220px; object-fit: cover; }
.pv-kontakt__box-obsah { display: flex; flex-direction: column; gap: 1.1rem; padding: 1.5rem; }
.pv-kontakt__box h2 { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.75rem; line-height: 1.05; color: var(--pv-zelena); }
.pv-kontakt__box p { margin: .4rem 0 0; line-height: 1.5; }
.pv-kontakt__box-hlava { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.pv-kontakt__odznak { flex-shrink: 0; }
.pv-kontakt__odznak img { display: block; width: 80px; height: 70px; }
.pv-kontakt__mezititulek { margin: 0 0 .4rem; font-family: var(--pv-pismo); font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--pv-tlumeny); }
.pv-kontakt__hodiny { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 0; list-style: none; font-size: .9375rem; }
.pv-kontakt__hodiny li { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .45rem .75rem; border-radius: 8px; }
.pv-kontakt__hodiny li span:last-child { color: var(--pv-tlumeny); }
.pv-kontakt__hodiny li.je-dnes { background: var(--pv-zalozka); font-weight: 600; }
.pv-kontakt__hodiny li.je-dnes span:last-child { color: var(--pv-text); }
.pv-kontakt__hodiny li.je-dnes span:first-child::after { content: 'dnes'; margin-left: .5rem; padding: 2px 6px; border-radius: 4px; background: var(--pv-zelena); color: #fff; font-size: .6875rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; vertical-align: 1px; }
.pv-kontakt__firma { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: .5rem 1.25rem; margin: 0; padding-top: 1rem; border-top: 1px solid var(--pv-zalozka); font-size: .875rem; line-height: 1.45; }
.pv-kontakt__firma dt { font-weight: 400; color: var(--pv-tlumeny); }
.pv-kontakt__firma dd { margin: 0; font-weight: 500; }
.pv-kontakt__mapa { display: block; width: 100%; height: 280px; border: 0; }
.pv-kontakt__sekce { margin-top: 3.5rem; }
.pv-kontakt__sekce h2, .pv-kontakt__katalog h2 { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.25rem; line-height: 1.05; color: var(--pv-zelena); }
.pv-kontakt__sekce-hlava { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: .75rem 1.5rem; margin-bottom: 1.25rem; }
.pv-kontakt__sekce-hlava p { margin: .4rem 0 0; color: var(--pv-tlumeny); }
.pv-kontakt__odkaz { font-weight: 600; }
.pv-kontakt__doprava { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.pv-kontakt__dopravce { padding: 1.35rem 1.5rem; border: 1px solid var(--pv-okraj); border-radius: 14px; background: var(--pv-karta); }
.pv-kontakt__dopravce-hlava { font-size: 1.0625rem; }
.pv-kontakt__cena { margin-top: .6rem; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.1rem; line-height: 1; }
.pv-kontakt__dopravce ul { margin: .7rem 0 0; padding: 0; list-style: none; font-size: .875rem; line-height: 1.6; color: var(--pv-tlumeny); }
.pv-kontakt__dopravce ul strong { color: var(--pv-text); }
.pv-kontakt__dopravce--tmavy { border-color: var(--pv-zelena); background: var(--pv-zelena); color: #fff; }
.pv-kontakt__dopravce--tmavy .pv-kontakt__cena { color: var(--pv-logo); }
.pv-kontakt__dopravce--tmavy ul { color: var(--pv-na-tmave); }
.pv-kontakt__faq { display: flex; flex-wrap: wrap; gap: 1.5rem 3rem; }
.pv-kontakt__faq-uvod { flex: 1 1 260px; min-width: 0; }
.pv-kontakt__faq-uvod p { margin: .5rem 0 0; color: var(--pv-tlumeny); }
.pv-kontakt__nahoru { display: inline-flex; align-items: center; gap: .35rem; margin-top: .9rem; font-weight: 600; }
.pv-kontakt__otazky { flex: 3 1 540px; min-width: 0; border: 1px solid var(--pv-okraj); border-radius: 14px; background: var(--pv-karta); overflow: hidden; }
.pv-kontakt__otazky details + details { border-top: 1px solid var(--pv-zalozka); }
.pv-kontakt__otazky summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.1rem 1.5rem; font-weight: 600; font-size: 1.0625rem; list-style: none; cursor: pointer; }
.pv-kontakt__otazky summary::-webkit-details-marker { display: none; }
.pv-kontakt__otazky summary:hover { color: var(--pv-zelena); }
.pv-kontakt__sipka { flex-shrink: 0; transition: transform .15s; }
.pv-kontakt__otazky details[open] .pv-kontakt__sipka { transform: rotate(180deg); }
.pv-kontakt__otazky details p { margin: 0; padding: 0 1.5rem 1.25rem; line-height: 1.6; color: var(--pv-tlumeny); }
.pv-kontakt__katalog { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem 2rem; margin-top: 3.5rem; padding: 2rem; border-radius: 16px; background: var(--pv-zelena); }
.pv-kontakt__katalog > div { flex: 1 1 360px; min-width: 0; }
.pv-kontakt__katalog h2 { font-size: 2rem; color: #fff; }
.pv-kontakt .pv-kontakt__katalog p { margin: .5rem 0 0; color: var(--pv-na-tmave); }
.pv-kontakt .pv-kontakt__katalog .pv-kontakt__akce { margin: 0; }
.contact-form.pv-formular { padding: 0; color: var(--pv-text); background: none; }
.pv-formular__form { display: flex; flex-direction: column; gap: 1.4rem; padding: 2rem; }
.pv-formular__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.25rem; line-height: 1.05; color: var(--pv-zelena); }
.pv-formular p.pv-formular__perex { margin: .5rem 0 0; line-height: 1.5; color: var(--pv-tlumeny); }
.pv-formular__predmet { margin: 0; padding: 0; border: 0; }
.pv-formular__predmet legend, .pv-formular__pole > label:not(.pv-formular__priloha) { display: block; width: auto; margin: 0 0 .4rem; padding: 0; border: 0; font-family: var(--pv-pismo); font-size: .875rem; font-weight: 600; color: var(--pv-text); }
.pv-formular__volby { display: flex; flex-wrap: wrap; gap: .5rem; }
.pv-formular__volba { position: relative; margin: 0; }
.pv-formular__volba input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pv-formular__volba span { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: 0 1.1rem; border: 2px solid var(--pv-okraj-vstup); border-radius: 999px; background: var(--pv-karta); font-size: .875rem; font-weight: 500; color: var(--pv-text); cursor: pointer; }
.pv-formular__volba span:hover { background: var(--pv-zalozka); }
.pv-formular__volba input:checked + span { border-color: var(--pv-zelena); background: var(--pv-zelena); color: #fff; font-weight: 600; }
.pv-formular__volba input:checked + span::before { content: ''; width: 12px; height: 7px; margin-top: -3px; border-left: 2.5px solid currentColor; border-bottom: 2.5px solid currentColor; transform: rotate(-45deg); }
.pv-formular__volba input:focus-visible + span { box-shadow: 0 0 0 3px var(--pv-logo); }
.pv-formular p.pv-formular__napoveda { margin: .6rem 0 0; font-size: .875rem; line-height: 1.5; color: var(--pv-tlumeny); }
.pv-formular p.pv-formular__chyba-pole { margin: .4rem 0 0; font-size: .875rem; color: #b91c1c; }
.pv-formular p.pv-formular__chyba-pole[hidden] { display: none; }
.pv-formular p.pv-formular__tip { margin: .4rem 0 0; font-size: .8125rem; color: var(--pv-tlumeny); }
.pv-formular__volitelne { font-weight: 400; color: var(--pv-tlumeny); }
.pv-formular__priloha { display: flex; align-items: center; gap: .9rem; margin: 0; padding: 1rem 1.1rem; border: 2px dashed var(--pv-okraj-vstup); border-radius: 10px; background: #f7f9f6; cursor: pointer; }
.pv-formular__priloha:hover, .pv-formular__priloha.je-nad { border-color: var(--pv-zelena); background: #eef3ec; }
.pv-formular__priloha-ikona { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 40px; height: 40px; border-radius: 8px; background: var(--pv-zalozka); color: var(--pv-zelena); }
.pv-formular__priloha-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-size: .8125rem; color: var(--pv-tlumeny); }
.pv-formular__priloha-text strong { font-size: .9375rem; color: var(--pv-text); overflow-wrap: anywhere; }
.pv-formular__priloha.je-vybrano .pv-formular__priloha-text span { color: var(--pv-odkaz); }
.pv-formular__soubor { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.pv-formular__pole:focus-within .pv-formular__priloha { border-color: var(--pv-zelena); box-shadow: 0 0 0 3px rgba(251, 146, 60, .5); }
.pv-formular__pata { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--pv-zalozka); text-align: left; }
.pv-formular p.pv-formular__souhlas { max-width: 360px; margin: 0; font-size: .8125rem; line-height: 1.5; color: var(--pv-tlumeny); }
.pv-formular__odeslat { min-height: 48px; padding: 0 1.75rem; font-size: 1rem; }
.pv-formular__chyba { display: flex; gap: .75rem; align-items: flex-start; padding: .9rem 1rem; border: 1px solid #fecaca; border-radius: 10px; background: #fef2f2; color: #7f1d1d; font-size: .875rem; line-height: 1.5; }
.pv-formular__chyba svg { flex-shrink: 0; }
.pv-formular__chyba ul { margin: .2rem 0 0; padding-left: 1.1rem; }
.pv-formular__hotovo { display: flex; flex-direction: column; align-items: center; gap: .9rem; padding: 3.5rem 2rem; text-align: center; }
.pv-formular__hotovo-ikona { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: #dcfce7; color: #166534; }
.pv-formular__hotovo h2 { margin: .4rem 0 0; font-family: var(--pv-nadpisy); font-weight: 700; font-size: 2.25rem; line-height: 1.05; color: var(--pv-zelena); }
.pv-formular__hotovo p { max-width: 460px; margin: 0; line-height: 1.55; color: var(--pv-tlumeny); }
.pv-formular__hotovo p.pv-formular__hotovo-akce { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin-top: .5rem; }
@media (max-width: 767px) {
  .pv-kontakt__nadpis { font-size: 2.75rem; }
  .pv-kontakt__hodnota { font-size: 1.9rem; }
  .pv-formular__form { padding: 1.25rem; }
  .pv-formular__volby { flex-direction: column; }
  .pv-formular__volba span { width: 100%; border-radius: 10px; }
  .pv-formular__odeslat { width: 100%; }
  .pv-kontakt__box-obsah { padding: 1.25rem; }
  .pv-kontakt__katalog { padding: 1.5rem; }
}
.pv-paticka-firma { display: block; margin-bottom: .35rem; }
.pv-paticka-firma a { color: inherit; }
.pv-nazor { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; margin-top: 1.25rem; padding: 1rem 1.25rem; background: var(--pv-pozadi); border: 1px solid var(--pv-okraj); border-radius: 10px; }
.pv-nazor__otazka { margin: 0; font-family: var(--pv-nadpisy); font-size: 1.3rem; font-weight: 700; color: var(--pv-zelena); }
.pv-nazor__volby { display: flex; gap: .5rem; }
.pv-nazor__volby label { display: flex; align-items: center; gap: .4rem; margin: 0; padding: .45rem .9rem; background: #fff; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; font-weight: 600; cursor: pointer; }
.pv-nazor__volby label:has(input:checked) { border-color: var(--pv-oranzova); background: var(--pv-oranzova-svetla); }
.pv-nazor__volby input { accent-color: var(--pv-oranzova); }
.pv-nazor__poznamka { display: flex; flex-direction: column; gap: .25rem; flex: 1 1 100%; margin: 0; color: var(--pv-text); font-size: .9rem; }
.pv-nazor__poznamka span { color: var(--pv-tlumeny); }
.pv-nazor__poznamka textarea { width: 100%; padding: .5rem .7rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; font: inherit; }
.pv-nazor__zprava { flex: 1 1 100%; margin: 0; font-weight: 600; color: var(--pv-odkaz); }
.pv-nazor [hidden] { display: none; }
.pv-prouzek { margin: .5rem 0 0; padding: .75rem .9rem; background: var(--pv-pozadi); border: 1px solid var(--pv-okraj); border-radius: 10px; }
.pv-prouzek__text { margin: 0 0 .5rem; font-size: .9rem; color: var(--pv-text); }
.pv-prouzek__text strong { color: var(--pv-oranzova-tmava); }
.pv-prouzek.is-zdarma .pv-prouzek__text strong { color: #15803d; }
.pv-prouzek__draha { position: relative; height: 10px; border-radius: 999px; background: #dfe5dc; overflow: visible; }
.pv-prouzek__plneni { display: block; height: 100%; border-radius: 999px; background: var(--pv-oranzova); transition: width .3s; }
.pv-prouzek.is-zdarma .pv-prouzek__plneni { background: #15803d; }
.pv-prouzek__znacka { position: absolute; top: -3px; width: 3px; height: 16px; margin-left: -1px; border-radius: 2px; background: var(--pv-zelena); }
.pv-bez-dph, .pv-dil__cena small.pv-bez-dph { display: block; margin: .1rem 0 0; font-family: inherit; font-size: .78rem; font-weight: 400; line-height: 1.3; color: #000; white-space: nowrap; letter-spacing: 0; }
.pv-heslo-napoveda { display: block; margin-top: .35rem; font-size: .85rem; line-height: 1.35; color: #000; }
.pv-filtr { margin: 0 0 1.25rem; padding: 1rem 1.1rem; border: 1px solid var(--pv-okraj); border-radius: 10px; background: #f8faf7; }
.pv-filtr__nadpis { margin: 0 0 .7rem; font-family: var(--pv-nadpisy); font-size: 1.25rem; font-weight: 700; line-height: 1.1; color: var(--pv-text); }
.pv-filtr__radek { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: flex-end; }
.pv-filtr__skupina { display: flex; flex-direction: column; gap: .35rem; margin: 0; }
.pv-filtr__popis { font-size: .8rem; font-weight: 600; color: var(--pv-tlumeny); }
.pv-filtr__volby { display: flex; flex-wrap: wrap; gap: .4rem; }
.pv-filtr__volby button { min-height: 40px; padding: 0 .95rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 999px; background: #fff; font-family: var(--pv-pismo); font-size: .9rem; font-weight: 600; color: var(--pv-text); cursor: pointer; }
.pv-filtr__volby button:hover { border-color: var(--pv-zelena-svetla); }
.pv-filtr__volby button[aria-pressed=true] { border-color: var(--pv-zelena); background: var(--pv-zelena); color: #fff; }
.pv-filtr__rok select { min-width: 11rem; height: 40px; padding: 0 .6rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; background-color: #fff; font-family: var(--pv-pismo); font-size: .95rem; color: var(--pv-text); }
.pv-filtr__pocet { margin: .8rem 0 0; font-size: .85rem; color: var(--pv-tlumeny); }
.pv-filtr__pocet strong { color: var(--pv-text); }
.pv-filtr__pocet button, .pv-filtr__prazdne button { margin-left: .4rem; padding: 0; border: 0; background: none; font: inherit; font-weight: 600; color: var(--pv-odkaz); text-decoration: underline; cursor: pointer; }
.pv-filtr__prazdne { margin: 0 0 1rem; padding: 1rem; border-radius: 8px; background: var(--pv-oranzova-svetla); color: var(--pv-text); }
.pv-provedeni__navod { display: flex; gap: .5rem; align-items: flex-start; margin: 0 0 1rem; padding: .7rem .9rem; border-radius: 8px; background: var(--pv-oranzova-svetla); color: var(--pv-text); font-size: .95rem; line-height: 1.45; }
.pv-provedeni__navod::before { content: '👇'; flex: none; font-size: 1.15rem; line-height: 1.3; }
@media (max-width: 575px) {
  .pv-filtr__radek { flex-direction: column; align-items: stretch; }
  .pv-filtr__rok select { width: 100%; }
}
.pv-zdroje__tabulka { width: 100%; margin-top: 1rem; border-collapse: collapse; font-size: .85rem; }
.pv-zdroje__tabulka th, .pv-zdroje__tabulka td { padding: .45rem .6rem; border-bottom: 1px solid var(--pv-okraj); text-align: left; vertical-align: top; }
.pv-zdroje__tabulka td:nth-child(2) { word-break: break-all; }
.pv-motory__hlavicka { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem 1.5rem; margin-bottom: 1rem; }
.pv-motory__legenda { display: flex; gap: 1.1rem; margin: 0; font-size: .85rem; color: var(--pv-tlumeny); }
.pv-motory__legenda span { display: flex; align-items: center; gap: .45rem; }
.pv-motory__tecka { display: inline-block; width: 14px; height: 14px; border-radius: 4px; }
.pv-motory__tecka--benzin { background: #15803d; }
.pv-motory__tecka--diesel { background: #111412; }
.pv-motory__seznam { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.pv-motor { display: flex; align-items: stretch; min-height: 118px; border-radius: 14px; overflow: hidden; color: #fff; text-decoration: none; box-shadow: 0 2px 0 rgba(0, 0, 0, .18); transition: transform .12s ease, box-shadow .12s ease; }
.pv-motor:hover, .pv-motor:focus-visible { color: #fff; text-decoration: none; transform: translateY(-2px); box-shadow: 0 6px 14px rgba(0, 0, 0, .18); }
.pv-motor:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 2px; }
.pv-motor--benzin { background: #15803d; }
.pv-motor--benzin:hover { background: #166534; }
.pv-motor--diesel { background: #111412; }
.pv-motor--diesel:hover { background: #000; }
.pv-motor--jine { background: #52605a; }
.pv-motor__text { flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: .7rem 1.1rem; min-width: 0; }
.pv-motor__objem { font-family: var(--pv-nadpisy); font-weight: 800; font-size: 3.6rem; line-height: .9; letter-spacing: -.01em; }
.pv-motor__objem small { font-size: .42em; font-weight: 700; opacity: .8; margin-left: .15em; }
.pv-motor__objem--text { font-size: 2rem; line-height: 1.05; word-break: break-word; }
.pv-motor__palivo { font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.05rem; letter-spacing: .14em; text-transform: uppercase; }
.pv-motor__ikona { width: 68px; flex: none; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .1); color: #fff; }
@media (max-width: 575px) {
  .pv-motory__seznam { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .pv-motor { min-height: 104px; }
  .pv-motor__objem { font-size: 2.9rem; }
  .pv-motor__palivo { font-size: .9rem; letter-spacing: .1em; }
  .pv-motor__ikona { display: none; }
}
.pv-filtr__volby button.ma-ikonu { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 0; padding: .45rem .9rem .5rem; border-radius: 12px; }
.pv-filtr__volby button.ma-ikonu .pv-karoserie { display: block; width: 92px; height: 37px; color: var(--pv-zelena); }
.pv-filtr__volby button.ma-ikonu[aria-pressed=true] .pv-karoserie { color: #fff; }
.pv-filtr__volby:has(.ma-ikonu) button { border-radius: 12px; }
.pv-filtr__volby:has(.ma-ikonu) button[data-k=""] { align-self: stretch; padding: 0 1.1rem; }
@media (max-width: 575px) {
  .pv-filtr__volby button.ma-ikonu .pv-karoserie { width: 72px; height: 29px; }
}
.pv-filtr__skupina[hidden] { display: none; }
.pv-filtr__kw { margin-top: 1rem; }

/* ---------- Hlavička: účet a košík ---------- */
#header { background: var(--pv-zelena); color: #fff; }
/* odkazy v hlavičce dědí barvu (jako #header a šablony classic), výjimky podle šablony provyfuk */
#header a { color: inherit; }
#header .pv-lista a { color: var(--pv-na-tmave); }
#header .pv-lista a:hover, #header .pv-lista a:focus { color: #fff; }
#header .pv-logo__odkaz { color: #fff; }
#header .pv-navigace a { color: #fff; }
#header .pv-navigace a:hover, #header .pv-navigace a:focus { color: var(--pv-logo); }
#header .pv-kosik, #header .pv-stitek { color: #fff; }
#header .pv-vyber { color: var(--pv-text); }
#header .pv-vyber__zalozka { color: #3a4640; }
#header .pv-vyber__zalozka.is-active { color: var(--pv-oranzova-tmava); }
#header .pv-vyber__seznam a { color: var(--pv-text); }
#header .pv-vyber__tlacitko { color: #fff; }
#header .pv-vyber__tlacitko.is-disabled { color: #52605a; }
#header .pv-onas h2 { color: #fff; }
#header .pv-onas__mapa { color: var(--pv-logo); }
#header .pv-vyber__nadpis, #header .pv-uvod-pruh__nadpis { color: inherit; }
#header .pv-vyber__nadpis { color: var(--pv-text); }
#header .pv-uvod-pruh__nadpis { color: #fff; }
#header .pv-uvod-pruh__podnadpis, #header .pv-uvod-pruh__priklady { color: var(--pv-na-tmave); }
.pv-hlavicka__ucet { display: flex; align-items: center; gap: .75rem; margin-left: auto; }
/* účet v hlavičce (ps_customersignin): přihlášený vidí „Odhlásit“ a jméno až od 1 500 px (jako www.auto-vyfuky.cz) */
.pv-hlavicka__ucet #_desktop_user_info .user-info, .pv-hlavicka__ucet #_desktop_user_info .user-info a { color: #fff; font-size: .9rem; }
#header .pv-hlavicka__ucet #_desktop_user_info a, #header .pv-hlavicka__ucet #_desktop_user_info span { color: #fff; white-space: nowrap; }
#header .pv-hlavicka__ucet #_desktop_user_info .pv-ikona { color: var(--pv-na-tmave); }
.pv-hlavicka__ucet .hidden-sm-down { display: inline; }
.pv-kosik, .pv-kosik:hover, .pv-kosik:focus { position: relative; display: inline-flex; align-items: center; gap: .5rem; padding: .7rem 1rem; border-radius: 8px;
  background: var(--pv-zelena-svetla); color: #fff; font-weight: 600; font-size: .9rem; text-decoration: none; white-space: nowrap; }
.pv-kosik__pocet { min-width: 1.4rem; padding: 0 .35rem; border-radius: 999px; background: var(--pv-oranzova); color: #fff; font-size: .75rem; line-height: 1.4rem; text-align: center; }
@media (max-width: 1499px) { .pv-hlavicka__ucet #_desktop_user_info .hidden-sm-down, .pv-kosik__text { display: none; } }
@media (max-width: 991px) {
  .pv-hlavicka__ucet { order: 2; }
  .pv-kosik, .pv-kosik:hover, .pv-kosik:focus { padding: .6rem .7rem; }
}

/* našeptávač hledání */
.pv-hledani { position: relative; }
/* našeptávač hledání jako modul ps_searchbar (jQuery UI autocomplete, výchozí vzhled jQuery UI) */
.ui-helper-hidden-accessible { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; }
.ui-autocomplete { position: absolute; top: 0; left: 0; cursor: default; }
.ui-menu { display: block; margin: 0; padding: 2px; list-style: none; outline: 0; }
.ui-menu .ui-menu-item { width: 100%; margin: 0; padding: 0; }
.ui-menu .ui-menu-item a { display: block; min-height: 0; padding: 2px .4em; font-weight: 400; line-height: 1.5; text-decoration: none; }
.ui-widget { font-family: Verdana, Arial, sans-serif; font-size: 1.1em; }
.ui-widget-content { border: 1px solid #aaa; background: #fff; color: #222; }
.ui-widget-content a { color: #222; }
.ui-corner-all { border-radius: 4px; }
.ui-autocomplete.searchbar-autocomplete { width: 100%; min-height: 100%; border: none; }
.ui-autocomplete.searchbar-autocomplete li a, .ui-autocomplete.searchbar-autocomplete li a.ui-state-focus { overflow: auto; margin: auto; padding: 8px 15px;
  border: none; border-radius: 0; background: none; }
.ui-autocomplete.searchbar-autocomplete li a:hover { background-color: #f1f1f1; cursor: pointer; }
.ui-autocomplete.searchbar-autocomplete li a .autocomplete-thumbnail { float: left; width: 50px; height: auto; margin-right: 8px; }
@media (min-width: 768px) { .ui-autocomplete.searchbar-autocomplete { left: auto; width: 400px; min-height: auto; } }
  list-style: none; background: #fff; border-radius: 10px; box-shadow: 0 12px 32px rgba(0, 0, 0, .25); }
  color: var(--pv-text); font-size: .88rem; line-height: 1.3; }

/* úvod: drobečková navigace se neukazuje */
#index .breadcrumb { display: none; }

/* ---------- Levé menu ---------- */
.provyfuk-menu { margin-bottom: 1.5rem; padding: 0 0 .5rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; overflow: hidden; }
.provyfuk-menu__prepinac { display: flex; }
.provyfuk-menu__zalozka { flex: 1; display: flex; align-items: center; justify-content: center; padding: .8rem .5rem; text-align: center;
  font-family: var(--pv-nadpisy); font-weight: 700; font-size: 1.1rem; letter-spacing: .5px; text-transform: uppercase;
  background: var(--pv-zalozka); color: #232323; }
.provyfuk-menu__zalozka:hover, .provyfuk-menu__zalozka:focus { color: var(--pv-oranzova-tmava); }
.provyfuk-menu__zalozka[aria-selected="true"] { background: var(--pv-oranzova); color: #fff; }
.provyfuk-menu__nadpis { margin: 0; padding: .8rem 1.1rem .4rem; font-family: var(--pv-nadpisy); font-weight: 500; font-size: 1.5rem; text-transform: uppercase; line-height: 1.1; }
.provyfuk-menu__nadpis a { color: var(--pv-text); }
.provyfuk-menu__seznam { margin: 0; padding: 0; list-style: none; }
.provyfuk-menu__seznam a { display: block; padding: .28rem 1.1rem; color: var(--pv-text); font-size: .88rem; line-height: 1.3; }
.provyfuk-menu__seznam a:hover, .provyfuk-menu__seznam a:focus { color: var(--pv-oranzova-tmava); background: #f6f8f5; }
.provyfuk-menu__seznam .provyfuk-menu__seznam { margin: .15rem 0 .35rem 1rem; border-left: 2px solid var(--pv-okraj); }
.provyfuk-menu__seznam .provyfuk-menu__seznam a { padding-left: .75rem; font-size: .8125rem; }
.provyfuk-menu__polozka.is-open > a { font-weight: 700; color: var(--pv-text); }
.provyfuk-menu__polozka.is-active > a { margin: 2px .6rem 2px 0; border-radius: 6px; background: var(--pv-oranzova-svetla); color: #7c2d12; font-weight: 700; }

/* ---------- Kategorie ---------- */
.block-category { margin-bottom: 1.563rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; box-shadow: none; }
@media screen and (max-width: 767px) { .block-category { min-height: 0; margin-bottom: 0; } }
.block-category h1 { margin: 0 0 1rem; font-size: 2.2rem; }
/* s logem značky / obrázkem modelu: nadpis a obrázek vedle sebe */
#js-product-list-header .block-category:has(.category-cover) { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.5rem; padding-top: 1rem; padding-bottom: 1rem; }
#js-product-list-header .block-category:has(.category-cover) h1 { margin: 0; }
.block-category-inner { display: flex; align-items: center; gap: 1.5rem; }
.category-cover img { display: block; width: auto; max-width: 220px; height: auto; max-height: 80px; object-fit: contain; }
#js-product-list-header .block-category #category-description { margin: 0; }
.block-category .block-category-inner #category-description p { margin-bottom: 0; font-weight: 400; color: #232323; word-break: break-word; }
.block-category .block-category-inner #category-description p:first-child { margin-bottom: 1.25rem; }
.block-category .block-category-inner #category-description strong { font-weight: 400; color: #7a7a7a; }
@media (max-width: 575px) {
  .category-cover img { max-width: 140px; max-height: 56px; }
  #js-product-list-header .block-category:has(.category-cover) h1 { font-size: 1.8rem; }
}
#subcategories { margin-bottom: 20px; border-top: 1px solid #f6f6f6; }
.subcategory-heading { margin: 0 0 20px; font-size: 1.3125rem; font-weight: 500; }
/* dlaždice jako šablona classic: flex se zápornou levou mezerou, 4 v řadě, min. 200 px */
.subcategories-list { display: flex; flex-wrap: wrap; margin: 0 0 0 -10px; padding: 0; list-style: none; }
@media (max-width: 767px) { .subcategories-list { justify-content: center; } }
.subcategories-list > li { width: calc(100% / 4 - 20px); min-width: 200px; margin: 10px; text-align: center; border-radius: 10px; }
.subcategory-image { padding: 0 0 8px; }
.subcategory-image a { display: block; padding: 9px; border: 1px solid #f6f6f6; border-radius: 8px; }
.subcategories-list > li:hover .subcategory-image a { padding: 5px; border: 5px solid #24b9d7; } /* jako produkce (barva šablony classic) */
.subcategory-image img { max-width: 100%; vertical-align: top; }
.subcategories-list h5 { margin: 0 0 .5rem; font-size: 1rem; line-height: 1.1; }
.subcategory-name { font-family: var(--pv-pismo); font-size: .95rem; font-weight: 700; color: var(--pv-text); }
.subcategory-name:hover { color: #24b9d7; }
#subcategories.pv-provedeni .subcategories-list > li { display: flex; flex-direction: column; }
#subcategories.pv-provedeni .subcategories-list h5 { margin-bottom: .6rem; }
.pv-provedeni__akce { display: block; width: 100%; max-width: 16rem; margin: auto auto 0; padding: .55rem .9rem; border-radius: 8px; background: var(--pv-oranzova);
  color: #fff; font-weight: 600; font-size: .9rem; line-height: 1.25; text-align: center; }
.subcategories-list > li:hover .pv-provedeni__akce, .pv-provedeni__akce:hover { background: var(--pv-oranzova-tmava); color: #fff; }
.pv-motory__seznam > li { min-width: 0; }

/* ---------- Výpis produktů (dlaždice jako šablona classic + provyfuk) ---------- */
/* řádek s mezerou 30 px; sloupce: výpis kategorie 3 / řádek (col-xl-4), hledání 4 (col-xl-3), úvod a produkt 4 / 3 (col-lg-4 col-xl-3) */
.products { display: flex; flex-wrap: wrap; justify-content: flex-start; margin: 0 -15px; }
@media (max-width: 991px) { .products { justify-content: center; } }
.dlazdice-obal { position: relative; width: 100%; min-height: 1px; padding: 0 15px; }
@media (min-width: 576px) { .dlazdice-obal { width: 50%; } }
@media (min-width: 992px) { .featured-products .dlazdice-obal { width: 33.33333%; } }
@media (min-width: 1200px) {
  .dlazdice-obal { width: 33.33333%; }
  #search .dlazdice-obal, .featured-products .dlazdice-obal { width: 25%; }
}
.product-miniature { display: flex; justify-content: center; }
.product-miniature .thumbnail-container { position: relative; height: auto; margin-bottom: 1.563rem; overflow: hidden; background: #fff; border: 1px solid var(--pv-okraj);
  border-radius: 12px; }
.product-miniature .thumbnail-top { position: relative; overflow: hidden; }
.product-miniature .product-thumbnail { position: relative; display: block; }
.product-miniature .product-thumbnail img { position: relative; display: block; max-width: 100%; height: auto; margin: auto; }
/* „Rychlý náhled“ vyjede zespodu obrázku po najetí myší */
.product-miniature .highlighted-informations { position: absolute; top: 100%; z-index: 2; width: 100%; height: auto; padding: .625rem 0; text-align: center; background: #fff;
  transition: .3s; }
.product-miniature .thumbnail-container:hover .highlighted-informations, .product-miniature .thumbnail-container:focus-within .highlighted-informations { top: calc(100% - 2.5rem); }
.product-miniature .highlighted-informations .quick-view { font-size: 1rem; color: #7a7a7a; }
.product-miniature .highlighted-informations .quick-view:hover { color: #24b9d7; }
.product-miniature .highlighted-informations .quick-view svg { vertical-align: middle; }
.product-miniature .product-description { position: relative; padding: .25rem .25rem .7rem; background: #fff; }
.product-miniature .thumbnail-container:hover .product-description::after { content: ''; position: absolute; top: 0; left: 10%; width: 80%; border-top: 1px solid #7a7a7a; opacity: .25; }
@media (max-width: 575px) {
  .product-miniature .thumbnail-container:hover .product-description::after, .product-miniature .highlighted-informations { display: none; }
}
.product-miniature .pv-kod-dilu { margin: .4rem 0 .15rem; font-family: var(--pv-kod); font-size: 1.45rem; font-weight: 700; line-height: 1.1; letter-spacing: .5px;
  -webkit-text-stroke: .6px currentColor; paint-order: stroke fill; color: var(--pv-zelena); text-align: center; }
.product-miniature .product-title { margin: 0 0 .5rem; font-family: var(--pv-pismo); font-size: .9rem; font-weight: 600; line-height: 1.1; text-align: center; text-transform: none; }
.product-miniature .product-title a { display: block; white-space: normal; font-size: .9rem; font-weight: 600; line-height: 1.3; color: var(--pv-text); text-align: center; }
.product-miniature .product-title a:hover { color: #14532d; }
.product-miniature .product-price-and-shipping { font-weight: 700; color: #232323; text-align: center; }
.product-miniature .price { color: var(--pv-cena); font-weight: 600; }
.product-miniature .pv-bez-dph { text-align: center; }
.product-add-to-cart .add-to-cart { min-height: 48px; }
.product-miniature .product-add-to-cart { margin-top: 10px; padding: 0 .5rem; text-align: center; }
.product-miniature .product-add-to-cart .add-to-cart { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; width: 100%; max-width: 100%; padding: .55rem .6rem;
  border: 1px solid var(--pv-oranzova); border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-size: .85rem; font-weight: 600; line-height: 1.15; text-align: center;
  text-transform: uppercase; white-space: normal; }
.product-miniature .product-add-to-cart .add-to-cart:hover { background: var(--pv-oranzova-tmava); }
.product-miniature .product-add-to-cart .add-to-cart svg { flex: none; width: 1.2rem; height: 1.2rem; }
.products-section-title { margin: 2.5rem 0; font-family: var(--pv-nadpisy); font-size: 2rem; font-weight: 500; text-align: center; text-transform: none; }
.featured-products .products { margin: 0; }
.all-product-link { display: block; float: left; margin: 1.5rem 0; color: #7a7a7a; font-size: 1.125rem; font-weight: 500; line-height: 1.1; }
@media (min-width: 768px) { .all-product-link { float: right; } }
.all-product-link svg { display: inline-block; width: 24px; height: 24px; vertical-align: middle; }
.featured-products::after { content: ''; display: table; clear: both; }

/* lišta nad výpisem jako šablona classic (řádek Bootstrapu: počet 5/12, řazení 7/12) */
.products-selection { margin: 0 -15px 1.25rem; }
.products-selection::after { content: ''; display: table; clear: both; }
.products-selection > div { position: relative; min-height: 1px; padding: 0 15px; }
@media (min-width: 992px) {
  .products-selection > .col-lg-5 { float: left; width: 41.66667%; }
  .products-selection > .col-lg-7 { float: left; width: 58.33333%; }
}
.products-selection .total-products { padding-top: .625rem; }
.total-products p { margin: 0 0 1rem; font-size: .875rem; color: #7a7a7a; }
.sort-by-row { display: flex; flex-wrap: nowrap; align-items: center; margin: 0 -15px; }
.sort-by-row > * { position: relative; min-height: 1px; padding: 0 15px; }
.sort-by { margin: 0 -.9375rem 0 .9375rem; font-size: .875rem; color: #7a7a7a; text-align: right; word-break: break-word; white-space: normal; }
.products-sort-order { width: 66.66667%; color: #7a7a7a; }
.sort-by-row .filter-button { width: 33.33333%; }
@media (min-width: 576px) { .sort-by { width: 25%; } .products-sort-order { width: 58.33333%; } .sort-by-row .filter-button { width: 25%; } }
@media (min-width: 768px) { .sort-by { width: 41.66667%; } .products-sort-order { width: 75%; } }
.products-sort-order, .facet-dropdown { position: relative; }
.products-sort-order summary { display: block; width: 100%; padding: .625rem; list-style: none; background: #fff; border: 1px solid rgba(0, 0, 0, .25); color: #232323; font-size: .875rem; cursor: pointer; }
.products-sort-order summary svg { float: right; margin: -2px -2px 0 0; }
.products-sort-order summary::-webkit-details-marker, .facet-dropdown summary::-webkit-details-marker { display: none; }
.facet-dropdown summary { display: flex; align-items: center; justify-content: space-between; list-style: none; cursor: pointer; }
.dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; min-width: 10rem; padding: .3rem 0; background: #fff; }
.products-sort-order .dropdown-menu { left: auto; width: 16.88rem; margin: 0; padding: 0; background: #f6f6f6; border: 0; border-radius: 0; box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, .1); }
.products-sort-order .select-list { display: block; padding: .625rem 1.25rem; color: #232323; font-size: .875rem; }
.products-sort-order .select-list:hover { background: #24b9d7; color: #fff; }
.products-selection .filter-button .btn-secondary { width: 100%; padding: .75rem .5rem .6875rem; }
@media (max-width: 767px) {
  .hidden-sm-down { display: none !important; }
  .products-selection .showing { padding-top: 1rem; }
}
@media (min-width: 768px) { .hidden-md-up { display: none !important; } }
@media (max-width: 575px) { .products-selection .filter-button { padding-left: 0; } }
/* stránkování jako šablona classic */
.pagination { display: inline-block; width: 100%; margin: 1rem 0; padding-left: 0; font-size: .875rem; color: #7a7a7a; }
.pagination::after { content: ''; display: table; clear: both; }
.pagination > div { position: relative; min-height: 1px; padding: 0 15px; }
.pagination > div:first-child { padding-left: 0; line-height: 2.5rem; }
@media (min-width: 768px) {
  .pagination > .col-md-4 { float: left; width: 33.33333%; }
  .pagination > .col-md-6 { float: left; width: 50%; margin-left: 16.66667%; }
}
.pagination > .pr-0 { padding-right: 0 !important; }
.pagination .page-list { margin: 0; padding: .375rem; background: #fff; list-style: none; }
.pagination .page-list li { display: inline; }
.pagination a { font-weight: 600; color: #000; }
.pagination a:not(.previous):not(.next) { letter-spacing: .125rem; }
.pagination .previous { float: left; }
.pagination .next { float: right; }
.pagination .previous svg, .pagination .next svg { vertical-align: middle; }
.pagination .disabled { color: #7a7a7a; }
.pagination .current a { font-size: 1.25rem; color: var(--pv-oranzova-tmava); text-decoration: none; }
#products { color: #7a7a7a; }
#products .up { margin-bottom: 1rem; text-align: right; }
#products .up .btn-secondary { color: #7a7a7a; text-transform: inherit; }
#products .up .btn-secondary svg { margin-right: 0; }
/* filtry (Příslušenství) – ps_facetedsearch v šabloně classic + provyfuk */
.collapse { display: none; }
.collapse.in { display: block; }
.dropdown { position: relative; color: #7a7a7a; }
.dropdown-menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 10rem; margin: .125rem 0 0; padding: .5rem 0;
  font-size: 1rem; color: #363a42; text-align: left; list-style: none; background-color: #fff; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, .15); }
.open > .dropdown-menu { display: block; }
.btn-tertiary { display: inline-block; min-height: 0; margin: .25rem 0; padding: .25rem; border: 1px solid transparent; border-radius: 0; background-color: #f7f7f7; color: #7a7a7a;
  font-size: .875rem; font-weight: 400; line-height: 1.25; text-transform: lowercase; box-shadow: none; vertical-align: middle; }
.btn-tertiary svg { width: 1rem; height: 1rem; margin-right: .625rem; vertical-align: middle; }
.btn-tertiary:hover { border: 1px solid rgba(35, 35, 35, .2); background-color: #ddd; color: #232323; }
#search_filters { margin-bottom: 1.563rem; padding: 1.563rem 1.25rem; background: #fff; border: 1px solid var(--pv-okraj); border-radius: 12px; box-shadow: none; }
#search_filters > .h6 { font-size: 1.5rem; font-weight: 500; }
#search_filters .facet { padding-top: .625rem; }
#search_filters .facet .collapse { display: block; }
#search_filters .facet .facet-title { font-size: 1rem; color: #232323; }
#search_filters .facet ul { margin-bottom: 1rem; padding: 0; list-style: none; }
#search_filters .facet .facet-label { margin-bottom: 0; }
#search_filters .facet .facet-label a { display: inline-block; margin-top: .4375rem; font-size: .9375rem; color: #232323; }
.facet .custom-checkbox input[type=checkbox] + span .checkbox-checked { width: 1.25rem; height: 1.25rem; }
/* front.css modulu ps_facetedsearch (v produkci jen na stránkách kategorií) */
#search_filters .facet .title { display: flex; }
#search_filters .facet .title .collapse-icons { margin-left: auto; }
#search_filters .facet .facet-title { width: calc(100% - 30px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#search_filters .facet .facet-label { width: 100%; text-align: left; }
#search_filters .facet .facet-label .custom-checkbox { top: -7px; margin-right: 0; }
#search_filters .facet .facet-label a { width: calc(100% - 30px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.facet-dropdown { box-sizing: border-box; padding-right: 0; padding-left: 0; color: #7a7a7a; background: #f6f6f6; border: 3px solid transparent; box-shadow: 1px 1px 1px 1px #f6f6f6; }
.facet-dropdown.open { border: 0; }
.facet-dropdown.open > .select-title { background: #f6f6f6; border: 3px solid #24b9d7; }
.facet-dropdown .select-title { display: inline-flex; align-items: center; width: 100%; margin-left: 0; padding: .625rem .625rem .625rem 1.25rem; color: inherit; cursor: pointer; background: #f6f6f6; }
.facet-dropdown .select-title > svg { margin-left: auto; }
.facet-dropdown .select-list { display: block; padding: .625rem 1.25rem; color: #232323; background: #f6f6f6; }
.facet-dropdown .select-list:hover { color: #fff; text-decoration: none; background: #24b9d7; }
.facet-dropdown .dropdown-menu { left: auto; width: 100%; margin-top: 3px; padding: 0; background: #f6f6f6; border: 0; box-shadow: 1px 1px 1px 1px #f6f6f6; }
.facet-dropdown .dropdown-menu .select-list { font-size: 1rem; }
.active_filters { margin-bottom: 1.25rem; padding: .625rem 1.875rem 0; background: #dededd; }
.active_filters .active-filter-title { display: inline; margin-right: .625rem; font-weight: 600; }
.active_filters ul { display: inline; padding: 0; list-style: none; }
.active_filters .filter-block { display: inline-block; margin-right: .625rem; margin-bottom: .625rem; padding: .625rem; font-size: .8125rem; color: #232323; background: #fff; }
.active_filters .filter-block .close { display: block; margin-top: .1875rem; margin-left: .3125rem; font-size: .9375rem; color: #232323; opacity: 1; }
.hide, .hidden-xs-up { display: none !important; }
@media (max-width: 575px) { #category #left-column #search_filters_wrapper { margin-right: -15px; margin-left: -15px; } }
@media (max-width: 767px) {
  #category #left-column #search_filters_wrapper { margin-right: -30px; margin-left: -30px; }
  #category #left-column #search_filter_controls { margin-bottom: 1rem; text-align: center; }
  #category #left-column #search_filter_controls button { margin: 0 .5rem; }
  #category #left-column #search_filters { margin-bottom: 20px; padding: 0; border-top: 1px solid #f6f6f6; box-shadow: none; }
  #category #left-column #search_filters .facet { padding-top: 0; border-bottom: 1px solid #f6f6f6; }
  #category #left-column #search_filters .facet .title { display: flex; align-items: center; justify-content: space-between; cursor: pointer; }
  #category #left-column #search_filters .facet .title .collapse-icons .remove,
  #category #left-column #search_filters .facet .title[aria-expanded=true] .collapse-icons .add { display: none; }
  #category #left-column #search_filters .facet .collapse.in,
  #category #left-column #search_filters .facet .title[aria-expanded=true] .collapse-icons .remove { display: block; }
  #category #left-column #search_filters .facet .facet-title { color: #232323; text-transform: uppercase; }
  #category #left-column #search_filters .facet .h6 { display: inline-block; margin-bottom: 0; padding: 1.25rem; }
  #category #left-column #search_filters .facet .navbar-toggler { display: inline-block; height: inherit; padding: 0 .625rem 0 0; border: 0; background: none; }
  #category #left-column #search_filters .facet .collapse { display: none; }
  #category #left-column #search_filters .facet .facet-label a { margin-top: 0; }
  #category #left-column #search_filters .facet ul { margin-bottom: 0; }
  #category #left-column #search_filters .facet ul li { padding: 1.25rem; border-top: 1px solid #f6f6f6; }
  #category #search_filter_toggler { width: 100%; }
}

/* ---------- Detail produktu (šablona classic + provyfuk) ---------- */
/* mřížka sloupců jako Bootstrap 4 alpha v šabloně classic: plovoucí sloupce s odsazením 15 px (košík, pokladna, účet, výpisy) */
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 { position: relative; min-height: 1px; padding-right: 15px; padding-left: 15px; }
.col-xs-1 { float: left; width: 8.33333%; } .col-xs-2 { float: left; width: 16.66667%; } .col-xs-3 { float: left; width: 25%; } .col-xs-4 { float: left; width: 33.33333%; } .col-xs-5 { float: left; width: 41.66667%; } .col-xs-6 { float: left; width: 50%; } .col-xs-7 { float: left; width: 58.33333%; } .col-xs-8 { float: left; width: 66.66667%; } .col-xs-9 { float: left; width: 75%; } .col-xs-10 { float: left; width: 83.33333%; } .col-xs-11 { float: left; width: 91.66667%; } .col-xs-12 { float: left; width: 100%; } .offset-xs-1 { margin-left: 8.33333%; } .offset-xs-2 { margin-left: 16.66667%; } .offset-xs-3 { margin-left: 25%; } .offset-xs-4 { margin-left: 33.33333%; } .offset-xs-5 { margin-left: 41.66667%; } .offset-xs-6 { margin-left: 50%; } .offset-xs-7 { margin-left: 58.33333%; } .offset-xs-8 { margin-left: 66.66667%; } .offset-xs-9 { margin-left: 75%; } .offset-xs-10 { margin-left: 83.33333%; } .offset-xs-11 { margin-left: 91.66667%; }
@media (min-width: 576px) { .col-sm-1 { float: left; width: 8.33333%; } .col-sm-2 { float: left; width: 16.66667%; } .col-sm-3 { float: left; width: 25%; } .col-sm-4 { float: left; width: 33.33333%; } .col-sm-5 { float: left; width: 41.66667%; } .col-sm-6 { float: left; width: 50%; } .col-sm-7 { float: left; width: 58.33333%; } .col-sm-8 { float: left; width: 66.66667%; } .col-sm-9 { float: left; width: 75%; } .col-sm-10 { float: left; width: 83.33333%; } .col-sm-11 { float: left; width: 91.66667%; } .col-sm-12 { float: left; width: 100%; } .offset-sm-1 { margin-left: 8.33333%; } .offset-sm-2 { margin-left: 16.66667%; } .offset-sm-3 { margin-left: 25%; } .offset-sm-4 { margin-left: 33.33333%; } .offset-sm-5 { margin-left: 41.66667%; } .offset-sm-6 { margin-left: 50%; } .offset-sm-7 { margin-left: 58.33333%; } .offset-sm-8 { margin-left: 66.66667%; } .offset-sm-9 { margin-left: 75%; } .offset-sm-10 { margin-left: 83.33333%; } .offset-sm-11 { margin-left: 91.66667%; } }
@media (min-width: 768px) { .col-md-1 { float: left; width: 8.33333%; } .col-md-2 { float: left; width: 16.66667%; } .col-md-3 { float: left; width: 25%; } .col-md-4 { float: left; width: 33.33333%; } .col-md-5 { float: left; width: 41.66667%; } .col-md-6 { float: left; width: 50%; } .col-md-7 { float: left; width: 58.33333%; } .col-md-8 { float: left; width: 66.66667%; } .col-md-9 { float: left; width: 75%; } .col-md-10 { float: left; width: 83.33333%; } .col-md-11 { float: left; width: 91.66667%; } .col-md-12 { float: left; width: 100%; } .offset-md-1 { margin-left: 8.33333%; } .offset-md-2 { margin-left: 16.66667%; } .offset-md-3 { margin-left: 25%; } .offset-md-4 { margin-left: 33.33333%; } .offset-md-5 { margin-left: 41.66667%; } .offset-md-6 { margin-left: 50%; } .offset-md-7 { margin-left: 58.33333%; } .offset-md-8 { margin-left: 66.66667%; } .offset-md-9 { margin-left: 75%; } .offset-md-10 { margin-left: 83.33333%; } .offset-md-11 { margin-left: 91.66667%; } }
@media (min-width: 992px) { .col-lg-1 { float: left; width: 8.33333%; } .col-lg-2 { float: left; width: 16.66667%; } .col-lg-3 { float: left; width: 25%; } .col-lg-4 { float: left; width: 33.33333%; } .col-lg-5 { float: left; width: 41.66667%; } .col-lg-6 { float: left; width: 50%; } .col-lg-7 { float: left; width: 58.33333%; } .col-lg-8 { float: left; width: 66.66667%; } .col-lg-9 { float: left; width: 75%; } .col-lg-10 { float: left; width: 83.33333%; } .col-lg-11 { float: left; width: 91.66667%; } .col-lg-12 { float: left; width: 100%; } .offset-lg-1 { margin-left: 8.33333%; } .offset-lg-2 { margin-left: 16.66667%; } .offset-lg-3 { margin-left: 25%; } .offset-lg-4 { margin-left: 33.33333%; } .offset-lg-5 { margin-left: 41.66667%; } .offset-lg-6 { margin-left: 50%; } .offset-lg-7 { margin-left: 58.33333%; } .offset-lg-8 { margin-left: 66.66667%; } .offset-lg-9 { margin-left: 75%; } .offset-lg-10 { margin-left: 83.33333%; } .offset-lg-11 { margin-left: 91.66667%; } }
@media (min-width: 1200px) { .col-xl-1 { float: left; width: 8.33333%; } .col-xl-2 { float: left; width: 16.66667%; } .col-xl-3 { float: left; width: 25%; } .col-xl-4 { float: left; width: 33.33333%; } .col-xl-5 { float: left; width: 41.66667%; } .col-xl-6 { float: left; width: 50%; } .col-xl-7 { float: left; width: 58.33333%; } .col-xl-8 { float: left; width: 66.66667%; } .col-xl-9 { float: left; width: 75%; } .col-xl-10 { float: left; width: 83.33333%; } .col-xl-11 { float: left; width: 91.66667%; } .col-xl-12 { float: left; width: 100%; } .offset-xl-1 { margin-left: 8.33333%; } .offset-xl-2 { margin-left: 16.66667%; } .offset-xl-3 { margin-left: 25%; } .offset-xl-4 { margin-left: 33.33333%; } .offset-xl-5 { margin-left: 41.66667%; } .offset-xl-6 { margin-left: 50%; } .offset-xl-7 { margin-left: 58.33333%; } .offset-xl-8 { margin-left: 66.66667%; } .offset-xl-9 { margin-left: 75%; } .offset-xl-10 { margin-left: 83.33333%; } .offset-xl-11 { margin-left: 91.66667%; } }
/* řádek a sloupce jako Bootstrap 4 alpha v šabloně classic (plovoucí sloupce) */
.row { margin-right: -15px; margin-left: -15px; }
.row::after { content: ''; display: table; clear: both; }
.row > .col-md-6 { position: relative; min-height: 1px; padding-right: 15px; padding-left: 15px; }
@media (min-width: 768px) { .row > .col-md-6 { float: left; width: 50%; } }
#product #content { position: relative; max-width: 452px; margin: 0 auto; }
.product-flags { position: absolute; top: 0; left: 0; z-index: 2; display: flex; flex-direction: column; width: 100%; margin: 0; padding: 0; list-style: none; pointer-events: none; }
.product-cover { position: relative; margin-bottom: 1.25rem; }
.product-cover img { display: block; max-width: 100%; height: auto; background: #fff; }
@media (max-width: 991px) { .product-cover img { width: 100%; } }
.product-cover .layer { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; text-align: center; cursor: pointer;
  background: rgba(255, 255, 255, .7); opacity: 0; transition: opacity .7s ease-in-out; }
.product-cover .layer:hover { opacity: 1; }
.product-cover .layer .zoom-in { width: 3.125rem; height: 3.125rem; color: #7a7a7a; }
#main .images-container .js-qv-mask { overflow: hidden; white-space: nowrap; }
.product-images { margin: 0 0 1rem; padding: 0; list-style: none; }
.product-images > li.thumb-container { display: inline; }
.product-images > li.thumb-container .thumb { margin-bottom: .625rem; cursor: pointer; }
.images-container .product-images > li.thumb-container .thumb { margin-right: .8125rem; }
.product-images > li.thumb-container .thumb.selected, .product-images > li.thumb-container .thumb:hover { border: 3px solid var(--pv-oranzova); }
@media (max-width: 991px) { .product-images > li.thumb-container > .thumb:not(.selected) { border: 0; } }
.product-prices { margin-top: 1.25rem; }
.product-prices.js-product-prices { display: flex; flex-direction: column; }
.product-prices.js-product-prices > * { order: 0; }
.product-prices.js-product-prices > .tax-shipping-delivery-label { order: 1; }
.product-prices.js-product-prices > .pv-bez-dph { order: 2; }
.product-prices div { margin-bottom: .625rem; }
.product-price { display: inline-block; max-width: 100%; color: #24b9d7; }
.product-prices .current-price { color: var(--pv-cena); font-weight: 600; }
.product-prices .current-price .current-price-value { font-family: var(--pv-nadpisy); font-size: 1.5rem; font-weight: 700; line-height: 1.1; color: var(--pv-cena); }
.product-prices .tax-shipping-delivery-label { font-size: .8125rem; color: #7a7a7a; word-wrap: break-word; }
.product-prices .pv-bez-dph { margin-top: .2rem; font-size: .9rem; }
.product-information { font-size: .9375rem; color: #232323; }
.product-information .product-description img { max-width: 100%; height: auto; }
.product-information .product-description ul, .product-information .product-description ol { padding-left: .75rem; list-style-position: inside; }
.product-information .product-description ul { list-style-type: disc; }
.product-information .product-description ul li, .product-information .product-description ol li { font-size: .9375rem; color: #7a7a7a; }
.product-discounts { margin-bottom: 1.5rem; }
.product-actions .control-label { display: block; width: 100%; margin-bottom: .375rem; }
.product-actions .product-add-to-cart { word-wrap: break-word; }
.product-quantity { display: flex; }
.product-quantity .qty, .product-quantity .add { display: inline-flex; float: left; margin-bottom: .5rem; }
.product-quantity .qty { margin-right: .4rem; }
.bootstrap-touchspin { position: relative; display: inline-block; float: left; width: auto; }
.bootstrap-touchspin input:focus { outline: 0; }
.product-quantity #quantity_wanted { float: left; width: 3rem; height: 2.75rem; padding: .175rem .5rem; border: 1px solid rgba(0, 0, 0, .25); border-radius: 0; background: #fff; color: #232323;
  font-size: 1rem; -moz-appearance: textfield; }
.product-quantity #quantity_wanted::-webkit-inner-spin-button, .product-quantity #quantity_wanted::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.bootstrap-touchspin .input-group-btn-vertical { float: left; width: auto; color: #232323; }
.bootstrap-touchspin .input-group-btn-vertical > .btn { position: relative; display: block; float: none; width: 100%; max-width: 100%; min-height: 0; margin-left: -1px; padding: .5rem .6875rem;
  border: 1px solid rgba(0, 0, 0, .25); border-radius: 0; background: #fff; color: #000; font-size: 1rem; font-weight: 400; line-height: 1.25; }
.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down { margin-top: -2px; }
.product-quantity .bootstrap-touchspin .btn-touchspin { height: 1.438rem; }
.bootstrap-touchspin .input-group-btn-vertical svg { position: absolute; top: .125rem; left: .1875rem; width: 1rem; height: 1rem; }
.product-actions .add-to-cart { display: inline-block; height: 2.75rem; min-height: 48px; padding: .625rem 1.25rem .5rem; border: 1px solid var(--pv-oranzova);
  border-radius: 0; background: var(--pv-oranzova); color: #fff; font-size: 1rem; font-weight: 600; line-height: inherit; text-transform: uppercase; vertical-align: middle; }
.product-actions .add-to-cart:hover { background: var(--pv-oranzova-tmava); }
.product-actions .add-to-cart svg { margin-right: .625rem; vertical-align: middle; }
#product-availability { display: inline; margin-top: .625rem; font-weight: 700; }
#product-availability .pv-dostupnost { font-size: 1rem; }
.product-minimal-quantity { margin: 0 0 1rem; }
.pv-poptat { color: var(--pv-tlumeny); }
.social-sharing { display: flex; align-items: center; width: 100%; margin-top: 1.5rem; }
.social-sharing ul { margin: 0; padding: 0; list-style: none; }
.social-sharing li { display: inline-block; width: 2.5rem; height: 2.5rem; margin-left: .5rem; border-radius: 50%; background-color: #fff; background-repeat: no-repeat;
  background-position: .25rem .25rem; background-size: 2rem 2rem; cursor: pointer; }
.social-sharing li a { display: block; width: 100%; height: 100%; overflow: hidden; text-indent: 100%; white-space: nowrap; background: inherit; }
.blockreassurance_product { margin-top: 25px; }
.blockreassurance_product .item-product { display: inline-block; float: left; width: 35px; height: 35px; margin-right: 5px; padding-top: 5px; }
.blockreassurance_product .item-product img, .blockreassurance_product .item-product svg { width: 35px; height: 35px; }
.blockreassurance_product p.block-title { line-height: 40px; }
.tabs { margin-top: 2rem; padding: 1.25rem 1.875rem; background: #fff; border-radius: 12px; }
.nav-tabs { margin: 0; padding: 0; list-style: none; border: 0; border-bottom: 2px solid #f6f6f6; }
.nav-tabs::after { content: ''; display: table; clear: both; }
.tabs .nav-tabs .nav-item { float: left; margin-bottom: -.125rem; }
.nav-tabs .nav-item + .nav-item { margin-left: .2rem; }
.nav-item .nav-link { font-weight: 600; color: #7a7a7a; }
.nav-tabs .nav-link { display: block; padding: .5em 1em; border: 0 solid transparent; }
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover { border: 0; border-bottom: 3px solid var(--pv-oranzova); color: var(--pv-oranzova-tmava); }
.nav-tabs .nav-link.active { background: #fff; }
.tab-content > .tab-pane { display: none; }
.tab-content > .active { display: block; }
.fade { opacity: 0; transition: opacity .15s linear; }
.fade.in { opacity: 1; }
.tabs .tab-pane { padding-top: 1.25rem; }
#product-details .label { font-size: 1rem; font-weight: 500; color: #232323; }
.product-features { margin-top: 1.25rem; margin-left: .3125rem; }
.product-features > dl.data-sheet { display: flex; flex-wrap: wrap; align-items: stretch; margin: 0; }
.product-features > dl.data-sheet dd.value, .product-features > dl.data-sheet dt.name { flex: 1 0 40%; min-height: 2.5rem; margin: 0 .625rem .5rem 0; padding: .625rem; background: #f6f6f6;
  font-weight: 500; text-transform: capitalize; word-break: normal; }
.product-features > dl.data-sheet dd.value:nth-of-type(even), .product-features > dl.data-sheet dt.name:nth-of-type(even) { background: #f6f6f6; }
.social-sharing li.facebook { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23888'%3E%3Cpath d='M14 8h3V4h-3c-2.8 0-4 1.7-4 4v2H7v4h3v8h4v-8h3l1-4h-4V8.5c0-.3.2-.5.5-.5z'/%3E%3C/svg%3E"); }
.social-sharing li.twitter { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23888'%3E%3Cpath d='M22 5.9c-.7.3-1.5.5-2.4.6.9-.5 1.5-1.3 1.8-2.3-.8.5-1.7.8-2.6 1-1.6-1.7-4.4-1.8-6.1-.2-1.1 1-1.5 2.6-1.2 4-3.3-.2-6.4-1.7-8.5-4.3-1.1 1.9-.5 4.3 1.3 5.5-.7 0-1.3-.2-1.9-.5 0 2 1.4 3.7 3.3 4.1-.6.2-1.3.2-1.9.1.5 1.7 2.1 2.9 3.9 2.9-1.7 1.4-3.9 2.1-6.1 1.8 1.9 1.2 4.1 1.9 6.4 1.9 7.7 0 12-6.4 12-12v-.5c.8-.6 1.5-1.3 2-2.1z'/%3E%3C/svg%3E"); }
.social-sharing li.pinterest { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23888'%3E%3Cpath d='M12 2a10 10 0 0 0-3.6 19.3c-.1-.8-.2-2 0-2.9l1.3-5.4s-.3-.6-.3-1.6c0-1.5.9-2.6 2-2.6.9 0 1.4.7 1.4 1.5 0 .9-.6 2.3-.9 3.6-.3 1.1.6 2 1.7 2 2 0 3.5-2.1 3.5-5.2 0-2.7-2-4.6-4.8-4.6-3.3 0-5.2 2.5-5.2 5 0 1 .4 2.1.9 2.7.1.1.1.2.1.3l-.3 1.3c-.1.2-.2.3-.4.2-1.5-.7-2.4-2.8-2.4-4.5 0-3.7 2.7-7.1 7.7-7.1 4 0 7.2 2.9 7.2 6.8 0 4-2.5 7.3-6.1 7.3-1.2 0-2.3-.6-2.7-1.4l-.7 2.8c-.3 1-1 2.3-1.5 3.1A10 10 0 1 0 12 2z'/%3E%3C/svg%3E"); }
.scroll-box-arrows { display: none; }
.scroll-box-arrows.scroll { display: block; }
.scroll-box-arrows svg { position: absolute; bottom: 1.625rem; height: 100px; cursor: pointer; }
.scroll-box-arrows .left { left: 0; }
.scroll-box-arrows .right { right: 0; }
#main .images-container .js-qv-mask.scroll { width: calc(100% - 60px); margin: 0 auto; }

/* ---------- Okna (Bootstrap 4 v šabloně classic): okno po vložení do košíku, rychlý náhled ---------- */
.modal-open { overflow: hidden; }
.modal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1050; display: none; overflow: hidden; outline: 0; }
.modal-open .modal { overflow-x: hidden; overflow-y: auto; }
.modal.fade .modal-dialog { transition: transform .3s ease-out; transform: translate(0, -25%); }
.modal.in .modal-dialog { transform: translate(0, 0); }
.modal-dialog { position: relative; width: auto; margin: 10px; }
.modal-content { position: relative; background-color: #fff; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, .2); border-radius: .3rem; outline: 0; }
.modal-backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1040; background-color: #000; }
.modal-backdrop.fade { opacity: 0; }
.modal-backdrop.in { opacity: .5; }
.modal-header { padding: 15px; border-bottom: 1px solid #e5e5e5; }
.modal-header::after, .modal-footer::after { content: ""; display: table; clear: both; }
.modal-header .close { margin-top: -2px; }
.modal-title { margin: 0; line-height: 1.5; }
.modal-body { position: relative; padding: 15px; }
.modal-footer { padding: 15px; text-align: right; border-top: 1px solid #e5e5e5; }
@media (min-width: 576px) { .modal-dialog { max-width: 600px; margin: 30px auto; } }

.close { float: right; font-size: 1.5rem; font-weight: 700; line-height: 1; color: #000; text-shadow: 0 1px 0 #fff; opacity: .2; }
.close:focus, .close:hover { color: #000; text-decoration: none; cursor: pointer; opacity: .5; }
button.close { padding: 0; cursor: pointer; background: 0 0; border: 0; -webkit-appearance: none; appearance: none; }
.pv-ikona { display: inline-block; vertical-align: middle; } /* ikony Material Icons (třída Ikona) – velikost z atributů width/height */

/* lupa na detailu produktu */
#product-modal .modal-content { padding: 0; background: 0 0; border: 0; }
#product-modal .modal-content .modal-body { display: flex; margin-left: -35%; }
#product-modal .modal-content .modal-body .product-cover-modal { max-width: none; background: #fff; }
#product-modal .modal-content .modal-body .image-caption { width: 100%; padding: .625rem 1.25rem; background: #fff; border-top: 1px solid #f6f6f6; }
#product-modal .modal-content .modal-body .image-caption p { margin-bottom: 0; }
#product-modal .modal-content .modal-body .thumbnails { position: relative; }
#product-modal .modal-content .modal-body .mask { position: relative; z-index: 1; max-height: 49.38rem; margin-top: 2.188rem; overflow: hidden; }
#product-modal .modal-content .modal-body .mask.nomargin { margin-top: 0; }
#product-modal .modal-content .modal-body .product-images img { width: 9.25rem; max-width: none; cursor: pointer; background: #fff; }
#product-modal .modal-content .modal-body .product-images img:hover { border: 3px solid #24b9d7; }
#product-modal .modal-content .modal-body .arrows { position: absolute; top: 0; right: 1.875rem; z-index: 0; width: 100%; height: 100%; color: #fff; text-align: center; cursor: pointer; }
#product-modal .modal-content .modal-body .arrows .arrow-up { position: absolute; top: -2rem; opacity: .2; }
#product-modal .modal-content .modal-body .arrows .arrow-down { position: absolute; bottom: -2rem; }
@media (min-width: 992px) { #product-modal .modal-content .modal-body .product-images { margin-left: 2.5rem; } }
@media (max-width: 991px) {
  #product-modal .modal-content .modal-body { flex-direction: column; margin-left: 0; }
  #product-modal .modal-content .modal-body .product-cover-modal { max-width: 100%; height: auto; }
  #product-modal .modal-content .modal-body .arrows { display: none; }
}

/* rychlý náhled */
.modal-dialog-centered { display: flex; align-items: center; min-height: calc(100% - 60px); }
.quickview .modal-dialog { width: calc(100% - 30px); max-width: 64rem; }
.quickview .modal-content { width: 100%; min-height: 28.13rem; background: #f6f6f6; }
.quickview .modal-header { padding: .625rem; border: 0; }
.quickview .modal-body { min-height: 23.75rem; }
.quickview .modal-footer { border-top: 1px solid rgba(122, 122, 122, .3); }
.quickview .layer { display: none; }
.quickview .product-cover img { width: 100%; max-width: none; height: auto; }
.quickview .images-container { z-index: 1; display: flex; min-height: 21.88rem; }
.quickview .images-container .product-images > li.thumb-container .thumb { width: 100%; max-width: 4.938rem; height: auto; margin-bottom: .8125rem; background: #fff; }
.quickview .mask { width: 35%; max-height: 22.5rem; margin-left: .625rem; overflow: hidden; }
.quickview .arrows { position: absolute; top: 0; right: 5rem; bottom: 0; z-index: 0; max-height: 22.5rem; }
.quickview .arrows .arrow-up { margin-top: -3.125rem; cursor: pointer; opacity: .2; }
.quickview .arrows .arrow-down { position: absolute; bottom: -1.875rem; cursor: pointer; }
.quickview .social-sharing { margin-top: 0; margin-left: 2.5rem; }

#blockcart-modal, #product-description-short { color: #232323; }
#blockcart-modal .modal-header { background: #fff; }
#blockcart-modal .modal-header .close { opacity: 1; }
#blockcart-modal .modal-header .close .pv-ikona { color: #363a42; }
#blockcart-modal .modal-body { padding: 3.125rem 1.875rem; background: #fff; }
#blockcart-modal .modal-body .divide-right span { display: inline-block; margin-bottom: .3125rem; }
#blockcart-modal .modal-dialog { width: 100%; max-width: 1140px; }
#blockcart-modal .product-image { display: block; width: 100%; max-width: 9.375rem; height: auto; margin: 0 0 0 auto; }
#blockcart-modal .modal-title { font-size: 1rem; font-weight: 400; color: #353943; }
#blockcart-modal .modal-title .pv-ikona { margin-right: 1.875rem; color: #15803d; }
#blockcart-modal .product-name { font-size: 1.125rem; color: var(--pv-odkaz); }
#blockcart-modal .product-price { display: block; max-width: 100%; color: #363a42; font-weight: 600; }
#blockcart-modal .cart-content p { display: flex; justify-content: space-between; padding: 0 .5rem; color: #363a42; }
#blockcart-modal .cart-content p .label, #blockcart-modal .cart-content p .value { font-weight: 600; }
#blockcart-modal .cart-content p.product-total { padding: .5rem; background-color: #f6f6f6; }
#blockcart-modal .cart-content p.cart-products-count { font-size: 1rem; font-weight: 600; color: #6c868e; }
#blockcart-modal .cart-content .cart-content-btn { display: inline-flex; justify-content: space-between; }
#blockcart-modal .cart-content .btn { display: inline-block; min-height: 0; margin-bottom: .625rem; padding: .5rem 1.25rem; border-radius: 0; font-size: 1rem; line-height: 1.25;
  text-transform: uppercase; white-space: inherit; vertical-align: middle; }
#blockcart-modal .cart-content .btn-secondary { background: #f6f6f6; border-color: transparent; color: #232323; }
#blockcart-modal .cart-content .btn-secondary:hover, #blockcart-modal .cart-content .btn-secondary:focus { background: #ddd; }
#blockcart-modal .cart-content .cart-content-btn button { margin-right: .9rem; }
#blockcart-modal .cart-content .btn .pv-ikona { margin-right: .625rem; }
#blockcart-modal .divide-right { border-right: 1px solid #dbdbdb; }
@media (min-width: 768px) { #blockcart-modal .cart-content { padding-left: 2.5rem; } }
@media (max-width: 767px) {
  #blockcart-modal .modal-body .divide-right span { display: block; padding: 0 .5rem; }
  #blockcart-modal .product-name, #blockcart-modal .product-price { padding: 0 .5rem; }
  #blockcart-modal .divide-right { border-right: none; }
  #blockcart-modal .modal-body { padding: 1rem; }
}
@media (max-width: 991px) {
  #blockcart-modal .product-image { max-width: 70%; margin: 0 auto 1rem; }
  #blockcart-modal .modal-dialog { width: calc(100% - 20px); }
  #blockcart-modal .modal-body { padding: 1.875rem; }
}
/* proužek do levnější dopravy je odstavec v .cart-content – ne flex jako řádky ceny (jinak se rozpadl do tří sloupců) */
#blockcart-modal .cart-content p.pv-prouzek__text { display: block; padding: 0; }
/* mobil: okno se musí vejít na obrazovku, tlačítko do pokladny bez rolování (dřív bylo pod okrajem) – malý obrázek vedle
   názvu, tlačítka pod sebou přes celou šířku, Pokračovat do pokladny nahoře */
@media (max-width: 767px) {
  #blockcart-modal .modal-dialog { width: calc(100% - 16px); margin: 8px auto; }
  #blockcart-modal .modal-header { padding: .6rem .9rem; }
  #blockcart-modal .modal-title { font-size: .95rem; }
  #blockcart-modal .modal-title .pv-ikona { margin-right: .5rem; vertical-align: -6px; }
  #blockcart-modal .modal-body { padding: .75rem .9rem 1rem; }
  #blockcart-modal .divide-right > .row { display: flex; align-items: center; gap: .75rem; margin: 0; }
  #blockcart-modal .divide-right > .row > div { flex: 0 0 auto; width: auto; padding: 0; }
  #blockcart-modal .divide-right > .row > div + div { flex: 1 1 auto; min-width: 0; }
  #blockcart-modal .product-image { width: 72px; max-width: 72px; height: 72px; margin: 0; object-fit: contain; }
  #blockcart-modal .product-name { margin: 0 0 .15rem; padding: 0; font-size: 1rem; }
  #blockcart-modal .product-price { margin: 0; padding: 0; }
  #blockcart-modal .modal-body .divide-right span { margin: 0; padding: 0; }
  #blockcart-modal .cart-content { margin-top: .75rem; }
  #blockcart-modal .cart-content p { margin-bottom: .4rem; }
  #blockcart-modal .cart-content .cart-content-btn { display: flex; flex-direction: column-reverse; gap: .5rem; width: 100%; margin-top: .75rem; }
  #blockcart-modal .cart-content .btn { width: 100%; margin: 0; text-align: center; }
  #blockcart-modal .cart-content .cart-content-btn button { margin-right: 0; }
}

/* ---------- Košík (šablona classic + provyfuk) ---------- */
.cart-grid { margin-bottom: 1rem; }
.cart-grid .card { margin-bottom: .75rem; padding: 0; background: #fff; border: 0; border-radius: 12px; }
.cart-grid-body { margin-bottom: .75rem; }
.cart-grid-body .card-block, .cart-grid-body .cart-overview { padding: 1rem; }
.cart-grid-body .card-block h1 { margin-bottom: 0; font-size: 1.5rem; font-weight: 400; }
.separator { margin: 0; border: 0; border-top: 1px solid rgba(0, 0, 0, .25); }
.cart-items { margin: 0; padding: 0; list-style: none; }
.cart-item { padding: 1rem 0; }
.media-middle { vertical-align: middle; }
.product-line-grid-left img { max-width: 100%; }
.product-line-grid-body > .product-line-info > .label { padding: 0; font-weight: 600; line-height: inherit; text-align: left; white-space: inherit; }
.cart-item .price, .cart-item .product-price strong { color: var(--pv-cena); font-weight: 600; }
.product-line-grid-right .cart-line-product-actions, .product-line-grid-right .product-price { line-height: 36px; color: #232323; }
.product-line-grid-right .cart-line-product-actions .remove-from-cart { display: inline-block; margin-top: .3125rem; color: #232323; }
.text-xs-right { text-align: right !important; }
.float-xs-left { float: left !important; }
.cart-grid-body > a.label { color: var(--pv-text); font-size: .875rem; }
.cart-grid-body > a.label svg { display: inline-block; vertical-align: middle; }
.cart-summary-line { margin-bottom: .315rem; clear: both; }
.cart-summary-line::after { content: ''; display: table; clear: both; }
.cart-summary-line:not(:last-child) { margin-bottom: 1rem; }
.cart-summary-line .label { padding-left: 0; font-size: 1rem; font-weight: 400; color: #363a42; white-space: inherit; }
.cart-summary-line .value { float: right; font-size: 1rem; font-weight: 600; color: var(--pv-cena); }
.pv-kosik-celkem .cart-summary-line.cart-total { padding: 1rem 0 .25rem; border-top: 0; }
.pv-kosik-celkem .cart-summary-line.cart-total .label, .pv-kosik-celkem .cart-summary-line.cart-total .value { font-weight: 700; }
.pv-kosik-poznamka { margin: .25rem 0 .75rem; color: var(--pv-tlumeny); font-size: .85rem; }
.card-block.checkout { padding-top: 0; padding-bottom: 1.75rem; }
.card-block.checkout .btn-primary { width: 100%; white-space: normal; }
.btn-primary.disabled, .btn-primary:disabled { background: var(--pv-oranzova); border-color: var(--pv-oranzova); color: #fff; box-shadow: none; }
.cart-grid .btn-primary { display: inline-block; min-height: 0; padding: .5rem 1.25rem; border: 1px solid var(--pv-oranzova); border-radius: 0; font-size: 1rem; font-weight: 600;
  line-height: 1.25; text-transform: uppercase; }
/* počet kusů se šipkami (bootstrap-touchspin) */
.bootstrap-touchspin input.form-control { float: left; width: 3rem; height: 2.5rem; padding: .175rem .5rem; border: 1px solid rgba(0, 0, 0, .25); border-radius: 0; background: #fff;
  color: #232323; font-size: 1rem; -moz-appearance: textfield; }
.bootstrap-touchspin input.form-control::-webkit-inner-spin-button, .bootstrap-touchspin input.form-control::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.bootstrap-touchspin .btn-touchspin { height: 1.3125rem; }
.bootstrap-touchspin .input-group-btn-vertical > .btn-touchspin:hover { background-color: #f6f6f6; }
.cart-grid .bootstrap-touchspin .input-group-btn-vertical > .btn { padding: 8px 10px; }
@media (max-width: 575px) {
  .cart-items { padding: 1rem 0; }
  .cart-item { border-bottom: 1px solid #f6f6f6; }
  .cart-item:last-child { border-bottom: 0; }
  .cart-grid-body .cart-overview { padding: 0; }
  .cart-grid-body .no-items { display: inline-block; padding: 1rem; }
  .product-line-grid-left { padding-right: 0 !important; }
}
@media (max-width: 767px) { .product-line-grid-body { margin-bottom: 1rem; } }
@media (max-width: 360px) { .product-line-grid-right .price, .product-line-grid-right .qty { width: 100%; } }
/* ---------- Pokladna (checkout.tpl šablony classic, jak ji upravuje šablona provyfuk) ---------- */
.pv-pokladna-hlavicka { background: var(--pv-zelena); }
.pv-pokladna-hlavicka__obsah { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; }
.pv-pokladna-hlavicka__telefon, .pv-pokladna-hlavicka__telefon:hover { color: var(--pv-na-tmave); text-decoration: none; white-space: nowrap; }
.pv-pokladna-hlavicka__telefon strong { color: #fff; }
#checkout { color: #232323; }
#checkout a:hover { color: #1a8196; }
#checkout section#content { margin-bottom: 1.563rem; }
#checkout #footer { padding: .9375rem; color: #7a7a7a; background: #fff; }
.d-block { display: block !important; }
.my-2 { margin-top: 1.5rem !important; margin-bottom: 1.5rem !important; }
.nav-inline .nav-item { display: inline-block; }
.nav-inline .nav-item + .nav-item { margin-left: 1rem; }
.nav-item .nav-link { font-weight: 600; color: #7a7a7a; }
.nav-item .nav-link.active { color: #232323; }
/* kroky */
#checkout section.checkout-step { padding: .625rem; background-color: #fff; }
#checkout section.checkout-step .step-title { margin-bottom: 0; padding-bottom: 1.25rem; border-bottom: 1px solid #ddd; font-size: 1.5rem; font-weight: 500;
  text-transform: uppercase; cursor: default; }
#checkout section.checkout-step.-current .step-title { color: var(--pv-text); }
#checkout section.checkout-step + .checkout-step .step-title { padding-top: 1.25rem; border-top: 1px solid #ddd; }
#checkout section.checkout-step.-complete:first-of-type .step-title { padding-top: .625rem; }
#checkout section.checkout-step .step-number { display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px;
  margin-right: 1rem; margin-left: .5rem; border: 1px solid #232323; border-radius: 50%; font-size: 1rem; vertical-align: middle; color: var(--pv-text); }
#checkout section.checkout-step.-reachable .step-number { margin-right: .65rem; margin-left: 0; border: 0; background-color: #00c062; color: #fff; }
#checkout section.checkout-step .content { padding: 1rem 2.313rem 0; }
#checkout section.checkout-step small { color: #7a7a7a; }
#checkout section.checkout-step hr { margin: 0; }
#checkout section.checkout-step .form-footer { text-align: center; }
#checkout section.checkout-step #customer-form, #checkout section.checkout-step #delivery-address, #checkout section.checkout-step #invoice-address,
#checkout section.checkout-step #login-form { margin-top: 1.563rem; margin-left: .3125rem; }
#checkout section.checkout-step #customer-form .form-control-label, #checkout section.checkout-step #delivery-address .form-control-label,
#checkout section.checkout-step #invoice-address .form-control-label, #checkout section.checkout-step #login-form .form-control-label { text-align: left; }
#checkout section.checkout-step .forgot-password { margin: 0 0 0 14.38rem; padding-bottom: 0; font-size: 1rem; text-align: left; }
#checkout .custom-checkbox { display: flex; }
#checkout .custom-checkbox > label { padding-left: 1.5rem; }
#checkout .custom-checkbox span { position: absolute; top: .025rem; left: 0; flex: 0 0 15px; margin-top: .1rem; }
#checkout .pv-krok-ceka { margin: 0; color: #7a7a7a; }
#checkout .pv-stav { margin: .5rem 0 0; font-size: .875rem; color: #7a7a7a; }
#checkout .pv-uklada { opacity: .55; pointer-events: none; transition: opacity .2s; }
#checkout #checkout-guest-form .pv-pokracovat { float: right; margin-top: .5rem; padding: .8rem 1.6rem; font-size: 1.05rem; }
.pv-firma-prepinac__label { display: inline-flex; align-items: center; gap: .5rem; margin: 0; font-weight: 600; cursor: pointer; }
.pv-firma-prepinac__label input { width: 18px; height: 18px; accent-color: var(--pv-oranzova); }
/* přepínač jako v šabloně classic */
.custom-radio { position: relative; display: inline-block; width: 18px; height: 18px; margin-right: .5rem; border: 1px solid #979797; border-radius: 50%;
  background: #fff; vertical-align: middle; cursor: pointer; }
.custom-radio input[type=radio] { cursor: pointer; opacity: 0; }
.custom-radio input[type=radio]:checked + span { position: absolute; top: .125rem; left: .125rem; display: block; width: 12px; height: 12px; border-radius: 50%;
  background-color: var(--pv-oranzova); }
.custom-radio input[type=radio]:focus + span { border-color: #7a7a7a; }
/* adresy */
#checkout section.checkout-step .address-selector { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; }
#checkout section.checkout-step #delivery-addresses, #checkout section.checkout-step #invoice-addresses, #checkout section.checkout-step .add-address { margin-top: 1.25rem; }
#checkout section.checkout-step .address-item { flex: 0 0 49%; margin-bottom: .625rem; border: 3px solid transparent; background: #f6f6f6; }
#checkout section.checkout-step .address-item.selected { border: 3px solid #24b9d7; background: #fff; }
#checkout section.checkout-step .address-item > header { min-height: 11.7rem; }
#checkout section.checkout-step .address-alias { display: inline-block; margin-bottom: .625rem; font-weight: 600; }
#checkout section.checkout-step .address { margin-left: 1.563rem; font-weight: 500; }
#checkout section.checkout-step .radio-block { padding: .9375rem; text-align: left; cursor: pointer; }
#checkout section.checkout-step .custom-radio input[type=radio] { width: 1.25rem; height: 1.25rem; }
#checkout section.checkout-step .address-footer { padding: .625rem; text-align: center; }
#checkout section.checkout-step .edit-address, #checkout section.checkout-step .delete-address { display: inline-block; margin: 0 .3125rem; color: #7a7a7a; }
#checkout section.checkout-step .add-address a { color: #232323; }
#checkout .cancel-address { display: block; margin: .625rem; color: #7a7a7a; text-decoration: underline; }
/* doprava */
#checkout section.checkout-step .delivery-options > .row { border-right: .1rem solid #c3c3c3; }
#checkout section.checkout-step .delivery-options .delivery-option { min-height: 80px; margin-bottom: .9375rem; padding: .9375rem 0; background: #f6f6f6; }
#checkout section.checkout-step .delivery-options .delivery-option, #checkout section.checkout-step .delivery-options .delivery-option .carrier,
#checkout section.checkout-step .delivery-options .delivery-option label > .row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
#checkout section.checkout-step .delivery-options .delivery-option label { margin-bottom: 0; text-align: inherit; }
#checkout section.checkout-step .delivery-options .delivery-option label .carrier { margin-left: 0; }
#checkout section.checkout-step .delivery-options .delivery-option label .carrier:not(.carrier-hasLogo) > .col-xs-12 { padding-left: calc(33.33333% + 15px); }
#checkout section.checkout-step .delivery-options .delivery-option img { width: 3.125rem; }
#checkout section.checkout-step .carrier-delay, #checkout section.checkout-step .carrier-name { display: inline-block; margin-bottom: 0; text-align: left; word-break: break-word; }
#checkout #delivery { max-width: 100%; }
#checkout #delivery > label { text-align: left; }
#checkout #delivery textarea { max-width: 100%; margin-bottom: 10px; color: #000; }
#checkout #hook-display-after-carrier { margin-top: 20px; }
/* platba */
#checkout section.checkout-step .payment-options label { display: table-cell; }
#checkout section.checkout-step .payment-options .custom-radio { margin-right: .5rem; }
#checkout section.checkout-step .payment-options .payment-option { margin-bottom: .5rem; }
#checkout .additional-information { margin-top: 1.25rem; margin-left: 2.875rem; font-size: .875rem; }
#checkout #payment-confirmation { margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid #e5e5e5; }
#checkout .pv-souhlas { margin: 0 0 .9rem; font-size: .9rem; line-height: 1.45; color: #3a4640; }
#checkout .pv-souhlas a { color: var(--pv-zelena); font-weight: 600; text-decoration: underline; }
#checkout #payment-confirmation .pv-objednat { padding: .9rem 1.8rem; font-size: 1.05rem; text-transform: none; }
/* souhrn košíku */
#checkout .cart-grid-right .card { border: 0; box-shadow: none; }
#checkout .cart-grid-right .card .cart-total { background-color: inherit; }
#checkout .cart-grid-right .card .cart-summary-subtotals-container { padding: 1rem 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
#checkout .cart-grid-right .card .cart-summary-subtotals-container .cart-summary-line { margin-bottom: 0; }
#checkout .cart-grid-right .card .cart-summary-subtotals-container .cart-summary-line:not(:last-child) { margin-bottom: .825rem; }
#checkout .cart-grid-right .card .cart-summary-subtotals-container .cart-summary-line .label { font-size: 1rem; font-weight: 400; }
#checkout .cart-grid-right .card .cart-summary-subtotals-container .cart-summary-line .value { font-size: 1rem; font-weight: 600; }
.card-block.cart-summary-totals .cart-summary-line { padding: .5rem .2rem 0; }
.card-block.cart-summary-totals .cart-summary-line:last-child { margin-bottom: 0; }
.card-block.cart-summary-totals .cart-summary-line.cart-total { padding: 1rem 0; }
.card-block.cart-summary-totals .cart-summary-line.cart-total .label, .card-block.cart-summary-totals .cart-summary-line.cart-total .value { font-size: 1rem; font-weight: 700; }
.media, .media-body { overflow: hidden; }
.media-body { width: 10000px; }
.media-body, .media-left { display: table-cell; vertical-align: top; }
.media-left { padding-right: 10px; }
.media-object { display: block; }
#checkout #cart-summary-product-list { font-size: .875rem; }
#checkout #cart-summary-product-list img { width: 3.125rem; border: 1px solid #f6f6f6; }
#checkout #cart-summary-product-list .media-body { vertical-align: middle; }
@media (max-width: 991px) {
  #checkout section.checkout-step .address-item { flex-grow: 1; }
  #checkout section.checkout-step .delivery-option-2 { flex-direction: column; }
  .delivery-option { display: flex; margin: auto; }
  .delivery-option .custom-radio { flex: 0 0 auto; }
  #checkout section.checkout-step .delivery-options .delivery-option .carrier > .col-xs-12 { padding-left: 0; }
}
@media (max-width: 767px) {
  #checkout section.checkout-step .content { padding: .9375rem; }
  #checkout section.checkout-step .forgot-password { margin-bottom: .625rem; margin-left: 0; }
  #checkout .form-group { margin-bottom: .5rem; }
  #checkout section.checkout-step .delivery-options .delivery-option label .carrier:not(.carrier-hasLogo) .col-xs-12 { padding-left: 0; }
}
/* pravidlo šablony classic pro obsah kroku do 575 px přebíjí v PrestaShopu pozdější pravidlo do 767 px (padding .9375rem) */
@media (max-width: 575px) {
  #payment-confirmation button { font-size: .875rem; }
  #payment-confirmation button.btn { white-space: normal; }
}

/* detail objednávky v účtu (order-detail.tpl šablony classic) */
.page-order-detail #content { font-size: .875rem; }
.page-order-detail .box { margin-bottom: 1rem; padding: 1rem; background: #fff; }
.page-order-detail h3 { margin-bottom: 1rem; font-size: 1rem; font-weight: 700; color: #232323; text-transform: uppercase; }
.page-order-detail #order-infos ul { margin: 0; }
.page-order-detail .addresses { margin: 0 -.9375rem; }
.page-order-detail .addresses h4 { font-size: 1rem; font-weight: 700; }
.page-order-detail #order-history .history-lines .history-line { padding: .5rem 0; border-bottom: 1px solid #f6f6f6; }
.page-order-detail #order-history .history-lines .history-line:last-child { border-bottom: 0; }
.page-order-detail #order-history .history-lines .history-line .label { display: inline-block; margin: .25rem 0; padding: .25rem .375rem; border-radius: 3px; color: #fff; }
.page-order-detail .order-items { padding: 0 !important; }
.page-order-detail .order-items .order-item { padding: 1rem 1rem 0; border-bottom: 1px solid #f6f6f6; }
.page-order-detail .order-items .order-item .desc, .page-order-detail .order-items .order-item .qty { margin-bottom: 1rem; }
.page-order-detail .messages .message { margin-top: .5rem; border-bottom: 1px solid #f6f6f6; }
.page-order-detail .messages .message:last-child { border-bottom: 0; }
.page-order-detail .messages .message > div { margin-bottom: .5rem; }

/* potvrzení objednávky (order-confirmation.tpl šablony classic) */
.card-title { margin-bottom: .75rem; }
.text-xs-left { text-align: left !important; }
.font-weight-bold { font-weight: 700; }
@media (min-width: 768px) { .text-md-center { text-align: center !important; } }
#content-hook_order_confirmation .card-title .done { box-sizing: content-box; margin: 0 14px 0 13px; color: #4cbb6c; vertical-align: middle; }
#order-items { border-right: 1px solid #f6f6f6; }
#order-items .h3 { font-size: 1rem; }
#order-items hr { border-top-color: #232323; }
#order-items table { width: 100%; }
#order-items table tr { height: 1.875rem; }
#order-items table tr td { padding: .5rem; font-size: .875rem; }
#order-items table tr td:last-child { text-align: right; }
#order-items table tr.total-value { background-color: #f6f6f6; }
#order-items .order-line { margin-top: 1rem; }
#order-items .image img { width: 100%; margin-bottom: 1rem; }
#order-items .details, #order-items .qty { margin-bottom: 1rem; }
#order-details { margin-top: 1.25rem; padding-left: 1.3rem; }
#order-details > .card-title { margin-bottom: 1.875rem; }
#order-details ul { margin-bottom: 1.25rem; }
#order-details ul li { margin-bottom: .625rem; }
@media (max-width: 991px) {
  #order-items .h3._desktop-title { display: none; }
  #content-hook_order_confirmation .card-title .done { margin: 0 10px 0 0; }
}
@media (max-width: 767px) {
  #order-items { margin-bottom: 2.5rem; border-right: 0; }
  #order-details .card-title, #order-items .card-title { margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #f6f6f6; }
  #order-items hr { border-top-color: #f6f6f6; }
  .bold { font-weight: 600; }
  #order-details { padding-left: .9375rem; }
}

/* ---------- Účet ---------- */

.tabulka { width: 100%; background: #fff; font-size: .9rem; }
.tabulka th, .tabulka td { padding: .7rem .75rem; border-bottom: 1px solid #f1f1f1; text-align: left; vertical-align: middle; }
.tabulka th { background: #f6f8f5; font-weight: 600; }

.adresy { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1rem; }

.prihlaseni { max-width: 560px; margin: 0 auto; }

.pv-heslo-napoveda { display: block; margin-top: .35rem; font-size: .85rem; line-height: 1.35; color: #000; }

/* ---------- Patička (šablona classic + provyfuk) ---------- */
#footer { padding-top: 1.5rem; background: var(--pv-zelena); color: var(--pv-na-tmave); }
#footer .footer-container { overflow: hidden; margin-top: 0; padding-top: 1.5rem; background: transparent; box-shadow: none; }
.block-social { text-align: right; background: transparent; }
.block-social ul { display: flex; }
.footer-container .h3, .footer-container .h4 { margin-bottom: 1rem; font-size: 1rem; }
#footer .h3, #footer .h4, #footer .block-contact-title, #footer .myaccount-title a { color: #fff; font-family: var(--pv-nadpisy); }
.block-contact-title, .myaccount-title, .myaccount-title a { font-size: 1rem; font-weight: 700; }
.footer-container li { margin-bottom: .3125rem; }
.footer-container li a, .block-contact { font-size: .875rem; }
.footer-container li a { cursor: pointer; }
#footer a, #footer .footer-container li a, #footer .block-contact, #footer .block-contact a { color: var(--pv-na-tmave); }
#footer a:hover, #footer a:focus, #footer .footer-container li a:hover { color: #fff; }
#footer .text-sm-center, #footer .footer-container .text-sm-center a { color: var(--pv-na-tmave); }
.pv-paticka-firma strong, .pv-paticka-copyright strong { color: var(--pv-na-tmave); }
.links .collapse { display: inherit; }
.navbar-toggler { width: 2.5em; height: 2em; padding: .5rem .75rem; font-size: .9375rem; line-height: 1; background: none; border: 1px solid transparent; border-radius: 0; }
.block-contact .navbar-toggler svg { color: #232323; }
@media (max-width: 991px) {
  .block-social { text-align: center; }
  .block-contact { padding-left: 1.5rem; }
}
@media (max-width: 767px) {
  .block-contact #contact-infos { padding: .625rem; padding-top: 0; }
  .block-social ul { flex-flow: wrap; }
  .footer-container .wrapper { padding-right: 0 !important; padding-left: 0 !important; }
  .footer-container .links .h3 { font-size: 1rem; line-height: 1.5; }
  .footer-container .links ul { margin-bottom: 0; background-color: #f6f6f6; }
  .footer-container .links ul > li { padding: .625rem; font-weight: 600; border-bottom: 1px solid #fff; }
  .links .collapse, .links .title .collapse-icons .remove, .links .title[aria-expanded=true] .collapse-icons .add { display: none; }
  .links .collapse.in, .links .title[aria-expanded=true] .collapse-icons .remove { display: block; }
  .links .title { padding: .625rem; cursor: pointer; border-bottom: 1px solid #f6f6f6; }
  .links .navbar-toggler { display: inline-block; padding: 0; }
}

/* značky (šablona classic) */
#manufacturer #main ul { display: flex; flex-wrap: wrap; align-items: flex-start; }
#manufacturer #main ul .brand { position: relative; width: calc(20% - 10px); min-width: 210px; margin: 5px; padding: 10px; text-align: center; background: #fff; transition: .4s ease-out; }
#manufacturer #main ul .brand:hover { box-shadow: 0 0 8px 0 rgba(0, 0, 0, .2); }
#manufacturer #main ul .brand-products { display: none; }
#manufacturer #main ul .brand-img { position: relative; width: 200px; margin: auto; }
#manufacturer #main ul .brand-img a::before { position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; content: ""; }
#manufacturer #main ul .brand-infos a { display: inline-block; }
@media (max-width: 991px) { #manufacturer #main ul { justify-content: center; } }
@media (min-width: 1200px) { #manufacturer .dlazdice-obal { width: 25%; } }

/* mapa stránek */
.container-fluid { margin-right: auto; margin-left: auto; padding-right: 15px; padding-left: 15px; }
.container-fluid::after { content: ""; display: table; clear: both; }
.sitemap-title { text-transform: capitalize; }
.sitemap { margin-top: .9375rem; }
@media (max-width: 575px) { .sitemap { margin-top: 0; } }
.sitemap h2 { width: 100%; height: 35px; margin-left: -15px; font-size: 1.1rem; font-weight: 600; color: #232323; text-transform: uppercase; border-bottom: 1px solid #7a7a7a; }
.sitemap ul { margin-top: 20px; margin-left: -15px; }
.sitemap ul.nested { margin-left: 20px; }
.sitemap ul li { margin-bottom: 1rem; font-size: .9rem; }

.text-uppercase { text-transform: uppercase !important; }
.mt-3 { margin-top: 3rem !important; }
.clearfix::after { content: ''; display: table; clear: both; }

/* obsah úvodu (blok „uvod“): odstavce dědí písmo a nemají okraje, jako dosud */
/* obsah úvodu (dřív ps_customtext): základ šablony classic, níže úpravy šablony provyfuk */
#custom-text { text-align: center; }
#index #custom-text { margin: 0; padding: 0; background: transparent; text-align: left; box-shadow: none; }
#custom-text h2 { font-size: 1.5rem; font-weight: 500; color: #232323; text-transform: uppercase; }
#custom-text p { font-size: .875rem; font-weight: 400; color: #232323; }
#custom-text img { max-width: 100%; height: 100%; }
.provyfuk-uvod__karta { text-align: center; }
#custom-text .pv-uvod h2 { text-transform: none; font-family: var(--pv-nadpisy); font-weight: 700; }
#custom-text .pv-uvod p { color: inherit; font-size: inherit; margin: 0; }
#custom-text .pv-vin__text { color: var(--pv-tlumeny); font-size: .85rem; }
#custom-text .pv-poradime__nadpis { color: #fff; }
#custom-text .pv-dlazdice, #custom-text .pv-prislusenstvi__odkaz { color: var(--pv-text); }
#custom-text .pv-tlacitko { color: #fff; }

/* ---------- Formuláře účtu (přihlášení, registrace, obnova hesla, sledování objednávky, osobní údaje, adresy) ----------
   rozměry a barvy jako šablona classic PrestaShopu: popisek 25 %, pole 50 %, „Volitelné“ 25 %, šedá hranatá pole */
.page-content.card { margin-bottom: 1.563rem; background: #fff; border: 0; border-radius: 12px; }
.page-customer-account #content { padding: 1rem; background: #fff; color: #7a7a7a; font-size: .875rem; }
#authentication #content, #registration #content { max-width: 640px; margin: 0 auto 1.563rem; }
.form-group { margin-bottom: 1rem; }
/* řádek formuláře jako Bootstrap 4 alpha: plovoucí sloupce (popisek je inline-block, na mobilu nad polem) */
.form-group.row { margin-right: -15px; margin-left: -15px; }
.form-control-label { padding-top: .625rem; }
form .form-control-label { font-size: .875rem; font-weight: 700; color: #232323; }
.form-control-comment { padding-top: .5rem; font-size: .875rem; color: #7a7a7a; }
.js-input-column .form-control-comment { padding-top: 0; }
.has-error .form-control { outline: .1875rem solid #ff4c4c; }
/* chyby u polí jako šablona classic: seznam upozornění (.alert) pod polem */
.help-block { margin-top: .625rem; }
.help-block ul { margin: 0 0 1rem; }
/* pole hesla s tlačítkem Ukázat (input-group šablony classic) */
.input-group.js-parent-focus { position: relative; display: flex; width: 100%; }
.input-group.js-parent-focus:focus-within { outline: .1875rem solid #24b9d7; }
.input-group.js-parent-focus .form-control { flex: 1; min-width: 0; }
.input-group.js-parent-focus .form-control:focus { outline: 0; }
.input-group-btn { display: block; width: auto; font-size: 0; white-space: nowrap; }
.input-group.js-parent-focus .input-group-btn > .btn { display: flex; align-items: center; height: 100%; margin: 0; padding: .78rem 1rem; border: 0; border-radius: 0; background: #7a7a7a;
  color: #fff; font-size: .6875rem; font-weight: 500; line-height: 1.25; text-transform: uppercase; }
.card-block hr { margin: 1rem 0; border: 0; border-top: 1px solid rgba(0, 0, 0, .1); }
@media (min-width: 576px) { .text-sm-center { text-align: center !important; } }
.float-xs-right { float: right !important; }
.login-form { margin-top: 15px; }
.forgot-password { margin-top: 1rem; padding-bottom: 15px; text-align: center; }
.no-account { font-size: 1rem; text-align: center; }
/* zaškrtávátko jako šablona classic: skutečné pole je průhledné, vidět je čtvereček */
.custom-checkbox { position: relative; word-break: break-word; }
.custom-checkbox label { display: inline-block; margin: 0 0 .5rem; color: inherit; font-size: .875rem; text-align: left; }
.custom-checkbox input[type=checkbox] { position: absolute; width: 18px; height: 18px; margin-top: .25rem; cursor: pointer; opacity: 0; }
.custom-checkbox input[type=checkbox] + span { display: inline-block; width: 1.125rem; height: 1.125rem; margin-right: .5rem; border: 1px solid #979797; vertical-align: middle;
  pointer-events: none; cursor: pointer; }
.custom-checkbox input[type=checkbox] + span .checkbox-checked { display: none; margin: -.125rem; color: var(--pv-oranzova); }
.custom-checkbox input[type=checkbox]:checked + span .checkbox-checked { display: block; }
.custom-checkbox input[type=checkbox]:focus + span { border-color: #7a7a7a; }
/* zapomenuté a nové heslo (šablona classic) */
.ps-alert-error { margin-bottom: 0; }
.ps-alert-success { padding: .25rem .25rem 2.75rem; }
.ps-alert-error, .ps-alert-success { padding-left: 0; list-style: none; }
.ps-alert-error .item, .ps-alert-success .item { display: flex; align-items: center; margin-bottom: 1rem; border: 2px solid #ff4c4c; background-color: #ff4c4c; }
.ps-alert-success .item { border-color: #4cbb6c; background-color: #4cbb6c; }
.ps-alert-error .item i, .ps-alert-success .item i { display: flex; border: 15px solid #ff4c4c; }
.ps-alert-success .item i { border-color: #4cbb6c; }
.ps-alert-error .item p, .ps-alert-success .item p { width: 100%; margin: 0; padding: 18px 20px; background-color: #fff; }
.ps-alert-error .item i svg { width: 24px; height: 24px; background-color: #ff4c4c; }
.ps-alert-success .item i svg { width: 24px; height: 24px; background-color: #4cbb6c; }
.forgotten-password { padding: 4px; }
.forgotten-password .form-fields .center-email-fields { display: flex; justify-content: center; }
.forgotten-password .form-fields .center-email-fields button, .forgotten-password .form-fields .email input { height: 38px; }
.forgotten-password .form-fields .email { width: 430px; padding-right: 0; padding-left: 0; }
.forgotten-password .form-fields label.required { width: 130px; }
.send-renew-password-link { padding-right: 10px; padding-left: 10px; }
.renew-password { margin-left: 10px; }
.renew-password .email { padding-bottom: 30px; }
.renew-password [type=submit] { margin-left: 50px; }
@media (min-width: 576px) { .hidden-sm-up { display: none !important; } }
@media (max-width: 575px) { .hidden-xs-down { display: none !important; } }
@media (max-width: 767px) {
  .forgotten-password .form-fields .center-email-fields { flex-direction: column; }
  .forgotten-password .form-fields .center-email-fields button { width: calc(100% - 20px); margin: 10px; }
  .forgotten-password .form-fields .email { width: 100%; padding-right: 10px; padding-left: 10px; }
}
#main .page-footer { margin-bottom: 1.563rem; }
.page-footer .account-link { margin-right: 1rem; }
.page-footer .account-link span { font-size: .875rem; vertical-align: middle; }
/* stránky účtu (šablona classic) */
address { margin-bottom: 1rem; font-style: normal; line-height: inherit; }
#main .page-content h6 { margin-bottom: 1.125rem; }
.page-my-account #content .links { display: flex; flex-wrap: wrap; justify-content: flex-start; }
.page-my-account #content .links a { display: inline-block; margin-bottom: 1.875rem; padding: 0 .9375rem; color: #7a7a7a; font-size: 1rem; font-weight: 700; text-align: center;
  text-transform: uppercase; }
.page-my-account #content .links a:hover { color: #232323; }
.page-my-account #content .links a span.link-item { display: block; height: 100%; padding: 1rem; background: #fff; }
/* Material Icons v classic: height 1em + border-box, dlaždici tedy zvětší jen padding 3.4rem a znak přečnívá nahoru */
.page-my-account #content .links a .pv-ikona { display: block; box-sizing: content-box; width: 100%; height: 2.6rem; margin-bottom: .8rem; color: #232323; }
.page-my-account #content .links a:hover .pv-ikona { color: #24b9d7; }
/* GDPR – osobní údaje (modul psgdpr) */
.psgdprinfo17 { margin-top: 15px; margin-bottom: 15px; background: #f1f1f1; padding: 20px; }
.psgdprgetdatabtn17 { float: right; }
#exportDataToCsv, #exportDataToPdf { margin-right: 10px; margin-left: 10px; }
.page-addresses .address { margin-bottom: 1.875rem; background: #fff; color: #232323; font-size: .875rem; }
.page-addresses .address .address-body { padding: 1rem; }
.page-addresses .address .address-body h4 { font-size: 1rem; font-weight: 700; }
.page-addresses .address .address-body address { min-height: 9rem; }
.page-addresses .address .address-footer { padding: .5rem 1rem; border-top: 1px solid #7a7a7a; }
.page-addresses .address .address-footer a { margin-right: .5rem; color: #7a7a7a; }
.page-addresses .address .address-footer a:hover { color: #232323; }
.page-addresses .address .address-footer a span { font-size: .9375rem; vertical-align: middle; }
.page-addresses .addresses-footer { margin: 0 .9375rem; }
.page-addresses .addresses-footer a, .page-addresses .addresses-footer a:hover { color: #232323; }
.page-addresses .addresses-footer a span { margin-top: .625rem; font-size: 1rem; vertical-align: middle; }
.table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0, 0, 0, .05); }
.table-bordered, .table-bordered td, .table-bordered th { border: 1px solid #f6f6f6; }
.table-bordered thead td, .table-bordered thead th { border-bottom-width: 2px; }
.table-labeled td, .table-labeled th { vertical-align: middle; }
.table-labeled .label { margin: .125rem; padding: .25rem .375rem; border-radius: 3px; color: #fff; font-size: inherit; font-weight: 400; white-space: nowrap; }
.thead-default th { background-color: #f6f6f6; color: #7a7a7a; }
.page-customer-account #content .order-actions a { padding: 0 .125rem; }
#history .orders { margin: 0 -1rem; }
#history .orders .order { padding: .75rem 1rem; border-bottom: 1px solid #f6f6f6; }
#history .orders .order:last-child { border-bottom: 0; }
#history .orders .order a h3 { color: #7a7a7a; }
#history .orders .order .label { display: inline-block; margin: .25rem 0; padding: .25rem .375rem; border-radius: 3px; color: #fff; }
/* stránka nenalezena (šablona classic) */
#pagenotfound #main .page-header { margin: 2rem 0 3rem; }
#pagenotfound .page-not-found { max-width: 570px; margin: 0 auto 10rem; padding: 1rem; overflow: auto; background: #fff; color: #7a7a7a; font-size: .875rem; }
#pagenotfound .page-not-found h4 { margin: .5rem 0 1rem; font-size: 1rem; font-weight: 700; }
#products .page-not-found { max-width: 570px; margin: 0 auto 1.563rem; padding: 1rem; overflow: auto; background: #fff; color: #7a7a7a; font-size: .875rem; }
#products .page-not-found h4 { margin: .5rem 0 1rem; font-size: 1rem; font-weight: 700; }
#products .page-not-found #search_widget { float: none; }
#pagenotfound .page-content #search_widget { width: 100%; }
/* kontaktní formulář (šablona provyfuk) */
.pv-kontakt.page-content { margin: 0 0 3rem; padding: 0; background: none; border: 0; box-shadow: none; }
.pv-formular .form-control { height: 48px; padding: 0 .9rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; background: #fff; color: var(--pv-text); font-size: 1rem; box-shadow: none; }
.pv-formular textarea.form-control { height: auto; min-height: 150px; padding: .75rem .9rem; line-height: 1.5; resize: vertical; }
.pv-formular .form-control:focus { outline: none; border-color: var(--pv-zelena); box-shadow: 0 0 0 3px rgba(251, 146, 60, .5); }
.pv-formular .form-control[aria-invalid="true"] { border-color: #b91c1c; background: #fef2f2; }


/* ---------- Poradce (chat) vpravo dole ---------- */
.pv-poradce { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 1030; font-family: var(--pv-pismo); }
.pv-poradce:not(.is-otevreno) { bottom: calc(1.25rem + var(--pv-poradce-zdvih, 0px)); }
.pv-poradce__spoustec { display: flex; align-items: center; gap: .55rem; height: 54px; padding: 0 1.3rem 0 1.05rem; border: 0; border-radius: 27px; background: var(--pv-zelena); color: #fff; font-size: .95rem; font-weight: 600; box-shadow: 0 8px 24px rgba(11, 39, 29, .35); cursor: pointer; transition: transform .15s ease, background .15s ease; }
.pv-poradce__spoustec:hover { background: var(--pv-zelena-svetla); transform: translateY(-2px); }
.pv-poradce__spoustec:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 3px; }
.pv-poradce__spoustec .pv-ikona { color: var(--pv-logo); }
.pv-poradce.is-otevreno .pv-poradce__spoustec { display: none; }
.pv-poradce.is-pouzity .pv-poradce__spoustec { width: 54px; padding: 0; justify-content: center; }
.pv-poradce.is-pouzity .pv-poradce__popisek { display: none; }
.pv-poradce__okno { display: flex; flex-direction: column; width: 390px; height: min(620px, calc(100vh - 2.5rem)); overflow: hidden; background: var(--pv-zelena); border-radius: 18px; box-shadow: 0 18px 50px rgba(11, 39, 29, .35); }
.pv-poradce__okno[hidden] { display: none; }
.pv-poradce__hlava { display: flex; align-items: center; gap: .6rem; padding: .8rem .75rem .8rem 1rem; background: var(--pv-zelena); color: #fff; }
.pv-poradce__avatar { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; flex-shrink: 0; border-radius: 50%; background: var(--pv-zelena-svetla); color: var(--pv-logo); }
.pv-poradce__titulek { flex: 1; min-width: 0; }
.pv-poradce__nadpis { margin: 0; font-family: var(--pv-nadpisy); font-size: 1.35rem; font-weight: 700; line-height: 1.05; color: #fff; }
.pv-poradce__podnadpis { margin: 0; font-size: .78rem; line-height: 1.3; color: var(--pv-na-tmave); }
.pv-poradce__hlava button { display: flex; padding: .4rem; border: 0; border-radius: 8px; background: transparent; color: #fff; cursor: pointer; }
.pv-poradce__hlava button:hover { background: rgba(255, 255, 255, .12); }
.pv-poradce__hlava button:focus-visible { outline: 2px solid var(--pv-logo); }
.pv-poradce__zpravy { display: flex; flex: 1; flex-direction: column; gap: .65rem; padding: 1rem .9rem; overflow-y: auto; overscroll-behavior: contain; background: var(--pv-pozadi); }
.pv-poradce__odpoved { display: flex; flex-direction: column; align-items: flex-start; gap: .45rem; }
.pv-poradce__bublina { max-width: 90%; padding: .6rem .85rem; border-radius: 16px 16px 16px 4px; background: #fff; color: var(--pv-text); font-size: .9rem; line-height: 1.4; box-shadow: 0 1px 2px rgba(0, 0, 0, .07); overflow-wrap: anywhere; white-space: pre-line; }
.pv-poradce__bublina--ja { align-self: flex-end; border-radius: 16px 16px 4px 16px; background: var(--pv-zelena); color: #fff; }
.pv-poradce__karty { display: flex; flex-direction: column; gap: .4rem; width: 100%; }
.pv-poradce__karta { display: flex; align-items: center; gap: .65rem; padding: .6rem .5rem .6rem .75rem; border: 1px solid var(--pv-okraj); border-radius: 12px; background: #fff; color: var(--pv-text); text-decoration: none; transition: border-color .15s ease, box-shadow .15s ease; }
.pv-poradce__karta:hover, .pv-poradce__karta:focus { border-color: var(--pv-oranzova); box-shadow: 0 2px 8px rgba(194, 65, 12, .12); color: var(--pv-text); }
.pv-poradce__karta img { width: 48px; height: 48px; flex-shrink: 0; object-fit: contain; }
.pv-poradce__karta-text { flex: 1; min-width: 0; }
.pv-poradce__karta-text strong { display: block; font-size: .86rem; line-height: 1.25; }
.pv-poradce__karta-text span { display: block; margin-top: .15rem; font-size: .76rem; line-height: 1.3; color: var(--pv-tlumeny); }
.pv-poradce__karta-text .pv-poradce__pocet { color: var(--pv-odkaz); font-weight: 600; }
.pv-poradce__sipka { flex-shrink: 0; color: var(--pv-oranzova); }
.pv-poradce__volby { display: flex; flex-wrap: wrap; gap: .4rem; }
.pv-poradce__volba { padding: .42rem .8rem; border: 1px solid var(--pv-oranzova); border-radius: 999px; background: #fff; color: var(--pv-oranzova-tmava); font-size: .82rem; font-weight: 600; line-height: 1.2; cursor: pointer; }
.pv-poradce__volba:hover, .pv-poradce__volba:focus-visible { background: var(--pv-oranzova-svetla); outline: none; }
.pv-poradce__formular { display: grid; gap: .55rem; width: 100%; padding: .8rem; border: 1px solid var(--pv-okraj); border-radius: 12px; background: #fff; }
.pv-poradce__pole { display: grid; gap: .2rem; margin: 0; }
.pv-poradce__pole > span { font-size: .74rem; font-weight: 600; letter-spacing: .2px; color: var(--pv-tlumeny); }
.pv-poradce__formular select, .pv-poradce__formular input, .pv-poradce__formular textarea { width: 100%; padding: .5rem .55rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 8px; background: #fff; color: var(--pv-text); font-size: 1rem; }
.pv-poradce__formular select:focus, .pv-poradce__formular input:focus, .pv-poradce__formular textarea:focus { border-color: var(--pv-zelena-svetla); outline: 2px solid rgba(29, 77, 59, .2); }
.pv-poradce__tlacitko { padding: .6rem 1rem; border: 0; border-radius: 8px; background: var(--pv-oranzova); color: #fff; font-weight: 600; cursor: pointer; }
.pv-poradce__tlacitko:hover { background: var(--pv-oranzova-tmava); }
.pv-poradce__tlacitko:disabled { opacity: .6; cursor: wait; }
.pv-poradce__pise { display: flex; gap: 4px; padding: .8rem .9rem; }
.pv-poradce__pise span { width: 7px; height: 7px; border-radius: 50%; background: var(--pv-seda); animation: pv-poradce-pise 1s infinite; }
.pv-poradce__pise span:nth-child(2) { animation-delay: .15s; }
.pv-poradce__pise span:nth-child(3) { animation-delay: .3s; }
@keyframes pv-poradce-pise { 0%, 60%, 100% { opacity: .25; } 30% { opacity: 1; } }
.pv-poradce__ai { margin: 0; padding: .35rem .9rem; background: var(--pv-pozadi); border-top: 1px solid var(--pv-okraj); color: var(--pv-tlumeny); font-size: .72rem; line-height: 1.3; }
.pv-poradce__vstup { display: flex; gap: .4rem; margin: 0; padding: .6rem; border-top: 1px solid var(--pv-okraj); background: #fff; }
.pv-poradce__vstup input { flex: 1; min-width: 0; padding: .6rem .9rem; border: 1px solid var(--pv-okraj-vstup); border-radius: 999px; font-size: 1rem; }
.pv-poradce__vstup input:focus { border-color: var(--pv-zelena-svetla); outline: 2px solid rgba(29, 77, 59, .2); }
.pv-poradce__vstup button { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; flex-shrink: 0; border: 0; border-radius: 50%; cursor: pointer; }
.pv-poradce__vstup button[hidden] { display: none; }
.pv-poradce__odeslat { background: var(--pv-oranzova); color: #fff; }
.pv-poradce__odeslat:hover { background: var(--pv-oranzova-tmava); }
.pv-poradce__mikrofon { background: var(--pv-zalozka); color: var(--pv-zelena); }
.pv-poradce.is-posloucha .pv-poradce__mikrofon { background: #dc2626; color: #fff; animation: pv-poradce-tep 1.2s ease-in-out infinite; }
@keyframes pv-poradce-tep { 50% { box-shadow: 0 0 0 8px rgba(220, 38, 38, .2); } }
body:has(.pv-poradce) .pv-nahoru { bottom: calc(1.25rem + 66px); }
@media (max-width: 575px) {
  .pv-poradce { right: .9rem; bottom: .9rem; }
  .pv-poradce:not(.is-otevreno) { bottom: calc(.9rem + var(--pv-poradce-zdvih, 0px)); }
  .pv-poradce__spoustec { width: 54px; padding: 0; justify-content: center; }
  .pv-poradce__popisek { display: none; }
  .pv-poradce.is-otevreno { inset: 0; }
  .pv-poradce__okno { position: fixed; inset: 0; width: auto; height: 100%; height: 100dvh; border-radius: 0; }
  .pv-poradce-otevreno body { overflow: hidden; }
  body:has(.pv-poradce) .pv-nahoru { bottom: calc(1rem + 64px); }
}
@media (prefers-reduced-motion: reduce) {
  .pv-poradce__spoustec, .pv-poradce__karta { transition: none; }
  .pv-poradce__pise span, .pv-poradce.is-posloucha .pv-poradce__mikrofon { animation: none; }
}

/* ---------- Fotka VIN místo opisování (formulář na úvodu a v poradci) ---------- */
.pv-fotka-vin { display: grid; gap: .35rem; margin: -.1rem 0 .3rem; }
.pv-fotka-vin__tlacitko { display: inline-flex; align-items: center; gap: .45rem; justify-self: start; margin: 0; padding: .45rem .8rem; border: 1px dashed var(--pv-zelena-svetla); border-radius: 8px; background: var(--pv-pozadi); color: var(--pv-zelena); font-size: .85rem; font-weight: 600; line-height: 1.2; cursor: pointer; }
.pv-fotka-vin__tlacitko:hover { background: var(--pv-zalozka); }
.pv-fotka-vin__tlacitko:focus-within { outline: 2px solid var(--pv-logo); outline-offset: 2px; }
.pv-fotka-vin .pv-fotka-vin__napoveda { margin: 0; font-size: .75rem; line-height: 1.35; color: var(--pv-tlumeny); }
.pv-fotka-vin .pv-fotka-vin__chyba { margin: 0; font-size: .8rem; line-height: 1.35; color: var(--pv-cena); }
#custom-text .pv-fotka-vin .pv-fotka-vin__napoveda { font-size: .75rem; line-height: 1.35; color: var(--pv-tlumeny); } /* úvod: přebíjí #custom-text .pv-uvod p */
.pv-fotka-vin .pv-fotka-vin__test { font-weight: 700; color: #c62828; }
.pv-poradce__bublina--pozor { border-left: 4px solid #c62828; background: #fdecea; color: #8e1c1c; font-weight: 600; }
/* kartička vozidla podle VIN: VIN ke kontrole a co poradce zjistil (registr vozidel, VIN) */
.pv-poradce__vozidlo { max-width: 90%; padding: .7rem .85rem .75rem; border: 1px solid var(--pv-okraj); border-left: 4px solid var(--pv-zelena-svetla); border-radius: 12px; background: #fff; font-size: .88rem; line-height: 1.4; box-shadow: 0 1px 2px rgba(0, 0, 0, .07); }
.pv-poradce__vozidlo-vin { display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .5rem; margin-bottom: .45rem; }
.pv-poradce__vozidlo-vin span { color: var(--pv-tlumeny); font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; }
.pv-poradce__vozidlo-vin strong { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 1.05rem; letter-spacing: .08em; overflow-wrap: anywhere; }
.pv-poradce__vozidlo-udaje { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .2rem .75rem; margin: 0; }
.pv-poradce__vozidlo-udaje dt { color: var(--pv-tlumeny); font-weight: 400; }
.pv-poradce__vozidlo-udaje dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.pv-poradce__vozidlo .pv-poradce__vozidlo-zdroj { margin: .5rem 0 0; color: var(--pv-tlumeny); font-size: .75rem; }
.pv-poradce__vozidlo-oprava { margin-top: .45rem; padding: .3rem .7rem; border: 1px solid var(--pv-oranzova); border-radius: 999px; background: #fff; color: var(--pv-oranzova); font-size: .8rem; font-weight: 600; cursor: pointer; }
.pv-poradce__vozidlo-oprava:hover, .pv-poradce__vozidlo-oprava:focus-visible { background: var(--pv-oranzova); color: #fff; }
/* pokladna: připomínka u poznámky k objednávce, když poradce četl VIN z fotky (zkušební provoz) */
/* pokladna: celková cena u tlačítka Objednat */
.pv-celkem { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .5rem; margin: .5rem 0 .75rem; font-size: 1rem; color: var(--pv-text); }
.pv-celkem strong { color: var(--pv-cena); font-size: 1.2rem; }
.pv-celkem span { color: var(--pv-tlumeny); font-size: .8rem; }
/* mimořádně zavřeno – dovolená (casti/provoz.php) */
.pv-provoz { padding: .55rem 0; background: #fff4e5; border-bottom: 2px solid #c2410c; color: #7c2d12; font-size: .95rem; font-weight: 600; line-height: 1.4; text-align: center; }
.pv-kontakt__zavreno { margin: .4rem 0 0; color: #c2410c; font-weight: 600; }
.pv-pokladna-vin { margin: .4rem 0 .6rem; padding: .6rem .8rem; border-left: 4px solid #c62828; border-radius: 4px; background: #fdecea; color: #8e1c1c; font-size: .9rem; font-weight: 600; line-height: 1.4; }
#custom-text .pv-fotka-vin .pv-fotka-vin__chyba { font-size: .8rem; color: var(--pv-cena); }
.pv-fotka-vin__chyba[hidden], .pv-fotka-vin__nahled[hidden] { display: none; }
.pv-fotka-vin__nahled { display: flex; align-items: center; gap: .6rem; font-size: .8rem; color: var(--pv-text); }
.pv-fotka-vin__nahled img { width: 56px; height: 56px; flex-shrink: 0; object-fit: cover; border: 1px solid var(--pv-okraj); border-radius: 6px; }
.pv-fotka-vin__nahled button { margin-left: auto; padding: .2rem .4rem; border: 0; background: none; color: var(--pv-cena); font-size: .8rem; text-decoration: underline; cursor: pointer; }

/* ---------- Mapa na stránce Kontakt až po kliknutí (OpenStreetMap jinak dostane IP návštěvníka hned – GDPR) ---------- */
.pv-mapa { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .7rem; padding: 1.25rem; text-align: center;
  background-color: var(--pv-pozadi); background-image: linear-gradient(rgba(18, 55, 42, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(18, 55, 42, .07) 1px, transparent 1px);
  background-size: 28px 28px; }
.pv-mapa .pv-mapa__text { margin: 0; color: var(--pv-text); font-size: .95rem; }
.pv-mapa .pv-mapa__pozn { margin: 0; color: var(--pv-tlumeny); font-size: .78rem; }

/* ---------- Najít auto podle fotky VIN (úvod, kontakt, fotoaparát ve vyhledávání a v poradci) ---------- */
.pv-vin-foto { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.25rem; padding: .9rem 1rem .9rem 1.1rem; border: 1px solid var(--pv-okraj); border-radius: 12px; background: #fff; }
.pv-vin-foto__text { flex: 1; min-width: 0; }
.pv-vin-foto .pv-vin-foto__nadpis { margin: 0 0 .2rem; font-family: var(--pv-nadpisy); font-size: 1.35rem; font-weight: 700; line-height: 1.1; color: var(--pv-text); }
.pv-vin-foto .pv-vin-foto__popis { margin: 0; font-size: .85rem; line-height: 1.4; color: var(--pv-tlumeny); }
/* upozornění na testovací verzi: červeně a tučně (na tmavém pozadí světlejší červená, aby byla čitelná) */
.pv-vin-foto .pv-vin-foto__test { margin: .35rem 0 0; font-size: .8rem; font-weight: 700; line-height: 1.35; color: #c62828; }
/* ✨ na začátku nadpisu – po načtení stránky jen třikrát krátce zajiskří a pak zůstane v klidu (bez animace pro ty, kdo
   ji v systému vypnuli) */
.pv-vin-foto__emoji { display: inline-block; margin-right: .45rem; font-size: 1.1em; line-height: 1; transform-origin: 50% 60%; animation: pv-jiskra 2.4s ease-in-out .8s 3 both; }
@keyframes pv-jiskra {
  0%, 72%, 100% { transform: scale(1) rotate(0); filter: none; }
  80% { transform: scale(1.3) rotate(-14deg); filter: drop-shadow(0 0 6px rgba(251, 146, 60, .9)); }
  90% { transform: scale(1.1) rotate(10deg); }
}
/* na počítači za nadpisem štítek TIP a čárkovaná šipka k tlačítku (hrot po načtení třikrát poskočí); na mobilu je tlačítko pod textem */
.pv-vin-foto__tip { display: none; }
@media (min-width: 900px) {
  .pv-vin-foto .pv-vin-foto__nadpis { display: flex; align-items: center; }
  .pv-vin-foto__tip { display: flex; flex: 1; align-items: center; gap: .6rem; min-width: 70px; margin-left: .9rem; }
  .pv-vin-foto__tip-stitek { padding: .15rem .45rem; border-radius: 5px; background: var(--pv-logo); color: var(--pv-zelena-tmava); font-family: var(--pv-pismo); font-size: .72rem; font-weight: 700; letter-spacing: .08em; line-height: 1.2; }
  .pv-vin-foto__sipka { position: relative; flex: 1; height: 2px; margin-right: 8px; background: repeating-linear-gradient(90deg, var(--pv-logo) 0 7px, transparent 7px 12px); }
  .pv-vin-foto__sipka::after { content: ''; position: absolute; top: 50%; right: -8px; width: 0; height: 0; margin-top: -6px; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 10px solid var(--pv-logo); animation: pv-sipka 1.2s ease-in-out 1s 3 both; }
}
@keyframes pv-sipka {
  0%, 55%, 100% { transform: translateX(0); }
  75% { transform: translateX(7px); }
}
@media (prefers-reduced-motion: reduce) {
  .pv-vin-foto__emoji, .pv-vin-foto__sipka::after { animation: none; }
}
.pv-vin-foto__tlacitko { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; flex-shrink: 0; padding: .75rem 1.15rem; border: 0; border-radius: 10px; background: var(--pv-oranzova); color: #fff; font-size: 1rem; font-weight: 600; line-height: 1.2; cursor: pointer; box-shadow: 0 4px 14px rgba(194, 65, 12, .35); }
.pv-vin-foto__tlacitko:hover, .pv-vin-foto__tlacitko:focus-visible { background: var(--pv-oranzova-tmava); }
.pv-vin-foto__tlacitko:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 2px; }
.pv-vin-foto--uvod { margin: 0; border-color: rgba(255, 255, 255, .2); background: rgba(255, 255, 255, .08); }
.pv-vin-foto--uvod .pv-vin-foto__nadpis { color: #fff; font-size: 1.5rem; }
.pv-vin-foto--uvod .pv-vin-foto__popis { color: var(--pv-na-tmave); }
.pv-vin-foto--uvod .pv-vin-foto__test, .pv-vin-foto--kontakt .pv-vin-foto__test { color: #ff7070; }
.pv-vin-foto--kontakt { margin: 1.25rem 0 1.5rem; padding: 1rem 1.25rem 1rem 1.5rem; border-color: var(--pv-zelena-svetla); border-radius: 14px; background: var(--pv-zelena); }
.pv-vin-foto--kontakt .pv-vin-foto__nadpis { color: #fff; font-size: 1.5rem; }
.pv-vin-foto--kontakt .pv-vin-foto__popis { color: var(--pv-na-tmave); }
@media (max-width: 575px) {
  .pv-vin-foto { flex-direction: column; align-items: stretch; }
}
.pv-jen-mys { display: none; }
@media (pointer: fine) {
  .pv-jen-mys { display: inline; }
  .pv-jen-dotyk { display: none; }
}
.pv-hledani__vin { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 46px; height: 46px; padding: 0; border: 0; border-radius: 8px; background: #fff; color: var(--pv-zelena); cursor: pointer; }
.pv-hledani__vin:hover, .pv-hledani__vin:focus-visible { color: var(--pv-oranzova); }
.pv-hledani__vin:focus-visible { outline: 3px solid var(--pv-logo); outline-offset: 2px; }
.pv-poradce__fotak { background: var(--pv-zalozka); color: var(--pv-zelena); }
.pv-poradce__prubeh { color: var(--pv-tlumeny); font-style: italic; }
.pv-poradce__prubeh::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: .5rem; border-radius: 50%; background: var(--pv-oranzova); vertical-align: middle; animation: pv-poradce-pise 1s infinite; }
.pv-fotka-vin__najit { justify-self: start; padding: .5rem .9rem; border: 0; border-radius: 8px; background: var(--pv-zelena); color: #fff; font-size: .85rem; font-weight: 600; cursor: pointer; }
.pv-fotka-vin__najit[hidden] { display: none; }
.pv-fotka-vin__najit:hover { background: var(--pv-zelena-svetla); }
@media (prefers-reduced-motion: reduce) {
  .pv-poradce__prubeh::before { animation: none; }
}

/* ---------- auto-vyfuk.cz: úvod (značky Zen Cartu, skupiny, výhody) ---------- */
.avk-uvod { display: grid; gap: 28px; margin: 8px 0 32px; }
.avk-blok { background: var(--pv-karta); border: 1px solid var(--pv-okraj); border-radius: 14px; padding: 24px; }
.avk-blok h2 { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 30px; margin: 0 0 6px; color: var(--pv-text); }
.avk-blok__uvod { color: var(--pv-tlumeny); margin: 0 0 18px; max-width: 760px; }
.avk-znacky { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 10px; }
.avk-znacka { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 12px 8px 10px; border: 1px solid var(--pv-okraj);
  border-radius: 10px; background: #fff; color: var(--pv-text); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.avk-znacka:hover { border-color: var(--pv-oranzova); box-shadow: 0 2px 10px rgba(29, 95, 209, .15); text-decoration: none; }
.avk-znacka__logo { height: 56px; display: flex; align-items: center; justify-content: center; }
.avk-znacka__logo img { max-width: 86px; max-height: 56px; width: auto; height: auto; }
.avk-znacka__pismeno { width: 48px; height: 48px; border-radius: 50%; background: var(--pv-zalozka); color: var(--pv-zelena); display: flex;
  align-items: center; justify-content: center; font: 700 22px/1 'Barlow Condensed', sans-serif; }
.avk-znacka__nazev { font-size: 13px; font-weight: 600; text-align: center; letter-spacing: .02em; }
.avk-skupiny { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.avk-skupina { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border-radius: 10px; background: var(--pv-zalozka);
  color: var(--pv-text); text-decoration: none; border-left: 4px solid var(--pv-oranzova); }
.avk-skupina:hover { background: var(--pv-oranzova-svetla); text-decoration: none; }
.avk-skupina strong { font-size: 17px; }
.avk-skupina span { color: var(--pv-tlumeny); font-size: 14px; }
.avk-vyhody { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; background: var(--pv-zelena); border: 0; }
.avk-vyhody div { display: flex; flex-direction: column; gap: 2px; color: var(--pv-na-tmave); }
.avk-vyhody strong { color: #fff; font-size: 17px; }
@media (max-width: 575px) { .avk-blok { padding: 18px 14px; } .avk-znacky { grid-template-columns: repeat(3, 1fr); } .avk-blok h2 { font-size: 25px; } }


/* ---------- auto-vyfuk.cz: hlavička, menu, úvod a patička (jiné uspořádání než auto-vyfuky.cz, majitel 14. 10. 2026) ---------- */
.avk-hlavicka { background: #fff; border-bottom: 0; }
.avk-hlavicka__horni { background: #fff; border-bottom: 1px solid var(--pv-okraj); }
.avk-hlavicka__obsah { display: flex; align-items: center; gap: 22px; min-height: 86px; }
.avk-hlavicka__logo .pv-logo__odkaz { color: var(--pv-zelena); display: block; }
.avk-hlavicka__logo svg { width: 200px; height: auto; display: block; }
.avk-hlavicka__hledani { flex: 1 1 auto; min-width: 0; }
.avk-hlavicka__hledani .pv-hledani__pole { background: var(--pv-pozadi); border: 2px solid var(--pv-okraj); border-radius: 6px; }
.avk-hlavicka__hledani .pv-hledani__pole:focus-within { border-color: var(--pv-oranzova); background: #fff; }
.avk-hlavicka__hledani .pv-hledani__tlacitko { border-radius: 6px; }
.avk-hlavicka__telefon { display: flex; align-items: center; gap: 10px; color: var(--pv-text); text-decoration: none; white-space: nowrap; }
.avk-hlavicka__telefon:hover { color: var(--pv-oranzova); text-decoration: none; }
.avk-hlavicka__telefon svg { color: var(--pv-oranzova); flex: none; }
.avk-hlavicka__telefon span { display: flex; flex-direction: column; line-height: 1.2; }
.avk-hlavicka__telefon strong { font-size: 17px; }
.avk-hlavicka__telefon small { font-size: 12px; color: var(--pv-tlumeny); }
.avk-hlavicka__ucet { display: flex; align-items: center; gap: 10px; }
.avk-hlavicka__ucet .user-info a { display: flex; align-items: center; gap: 6px; color: var(--pv-text); text-decoration: none; padding: 8px 10px;
  border-radius: 6px; font-weight: 600; }
.avk-hlavicka__ucet .user-info a:hover { background: var(--pv-pozadi); }
.avk-kosik { display: flex; align-items: center; gap: 8px; background: var(--pv-oranzova) !important; color: #fff !important; border-radius: 6px;
  padding: 10px 14px; text-decoration: none; position: relative; font-weight: 600; }
.avk-kosik:hover { background: var(--pv-oranzova-tmava) !important; text-decoration: none; }
.avk-kosik .pv-kosik__text { display: none; }
.avk-menu-tlacitko { display: none; background: none; border: 1px solid var(--pv-okraj); border-radius: 6px; padding: 8px; color: var(--pv-text); }
.avk-nav { background: var(--pv-oranzova); }
.avk-nav__obsah { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 46px; }
.avk-nav__odkazy { display: flex; flex-wrap: wrap; gap: 0; position: static; background: none; box-shadow: none; padding: 0; }
.avk-nav__odkazy a { color: #fff; font-weight: 600; font-size: 15px; padding: 12px 16px; text-decoration: none; display: block; }
.avk-nav__odkazy a:first-child { padding-left: 0; }
.avk-nav__odkazy a:hover { background: var(--pv-oranzova-tmava); text-decoration: none; }
.avk-nav__odkazy a:first-child:hover { background: none; text-decoration: underline; }
.avk-nav__zaruka { color: #dbe7ff; font-size: 14px; font-weight: 600; white-space: nowrap; }
.avk-nav__zaruka::before { content: "✓ "; color: #fff; }
@media (max-width: 991px) {
  .avk-hlavicka__telefon { display: none; }
  .avk-nav__zaruka { display: none; }
}
@media (max-width: 767px) {
  .avk-hlavicka__obsah { flex-wrap: wrap; gap: 10px 12px; padding: 10px 0 12px; min-height: 0; }
  .avk-hlavicka__logo svg { width: 150px; }
  .avk-hlavicka__ucet { margin-left: auto; }
  .avk-hlavicka__hledani { order: 3; flex-basis: 100%; }
  .avk-menu-tlacitko { display: inline-flex; }
  .avk-kosik { padding: 8px 10px; }
  .avk-nav__obsah { min-height: 0; }
  .avk-nav__odkazy { display: none; flex-direction: column; width: 100%; padding: 4px 0 8px; }
  .avk-nav__odkazy.is-open { display: flex; }
  .avk-nav__odkazy a, .avk-nav__odkazy a:first-child { padding: 10px 0; border-bottom: 1px solid rgba(255, 255, 255, .15); }
}

/* úvod: nadpis v obsahu místo velkého tmavého bloku */
.avk-uvod-hlava { padding: 26px 0 6px; }
.avk-uvod-hlava h1 { font-family: var(--pv-nadpisy); font-weight: 800; font-size: 34px; letter-spacing: -.01em; color: var(--pv-zelena); margin: 0 0 8px; text-transform: none; }
.avk-uvod-hlava p { color: var(--pv-tlumeny); font-size: 17px; margin: 0; max-width: 820px; }
.avk-blok { border-radius: 6px; }
.avk-blok h2 { font-family: var(--pv-nadpisy); font-weight: 800; font-size: 24px; text-transform: none; letter-spacing: -.01em; }
.avk-znacka { border-radius: 6px; }
.avk-vyhody { border-radius: 6px; }
@media (max-width: 575px) { .avk-uvod-hlava h1 { font-size: 26px; } }

/* patička: světlá místo tmavé */
#footer { background: #e9edf2; color: var(--pv-tlumeny); border-top: 4px solid var(--pv-oranzova); }
#footer .h3, #footer .h4, #footer .block-contact-title, #footer .myaccount-title a { color: var(--pv-zelena); }
#footer a { color: var(--pv-text); }
#footer a:hover { color: var(--pv-oranzova); }
/* bílá hlavička: přebít barvy tmavé hlavičky auto-vyfuky.cz */
#header.avk-hlavicka .pv-logo__odkaz, #header.avk-hlavicka .pv-logo__odkaz:hover { color: var(--pv-zelena); }
#header.avk-hlavicka .avk-hlavicka__telefon, #header.avk-hlavicka .avk-hlavicka__telefon strong { color: var(--pv-text); }
#header.avk-hlavicka .avk-hlavicka__ucet .user-info a { color: var(--pv-text); }
#header.avk-hlavicka .avk-nav a { color: #fff; }
/* patička: tmavý text na světlém pozadí */
#footer, #footer .block-contact { color: var(--pv-tlumeny); }
#footer a, #footer .footer-container li a, #footer .block-contact a { color: var(--pv-text); }
#footer a:hover, #footer a:focus, #footer .footer-container li a:hover { color: var(--pv-oranzova); }
#footer .h3, #footer .h4, #footer .block-contact-title, #footer .myaccount-title a { color: var(--pv-zelena); }
#header.avk-hlavicka { background: #fff; color: var(--pv-text); }
@media (max-width: 767px) {
  #header.avk-hlavicka .avk-hlavicka__logo { order: 0; margin: 0; flex: 0 0 auto; }
  #header.avk-hlavicka .avk-hlavicka__ucet { order: 1; margin-left: auto; }
  #header.avk-hlavicka .avk-hlavicka__hledani { order: 2; }
}

/* ---------- auto-vyfuk.cz: dlaždice produktů a seznam dílů vozidla (jiný vzhled než auto-vyfuky.cz) ---------- */
.product-miniature .thumbnail-container { border: 1px solid var(--pv-okraj) !important; border-radius: 4px !important; box-shadow: none !important;
  background: #fff; overflow: hidden; }
.product-miniature .thumbnail-container:hover { border-color: var(--pv-oranzova) !important; box-shadow: 0 4px 14px rgba(31, 39, 49, .08) !important; }
.product-miniature .thumbnail-top { background: #f4f6f9; padding: 10px; }
.product-miniature .product-description { text-align: left; padding: 12px 14px 14px; }
.product-miniature .pv-kod-dilu { font-size: 15px !important; color: var(--pv-oranzova) !important; letter-spacing: 0; text-align: left; }
.product-miniature .product-title, .product-miniature .product-title a { text-align: left; font-weight: 600; font-size: 14px; color: var(--pv-text); }
.product-miniature .price { color: var(--pv-text) !important; font-size: 20px !important; font-weight: 800; }
.product-miniature .product-price-and-shipping { text-align: left; }
.product-miniature .pv-dostupnost-radek { justify-content: flex-start; }
.product-miniature .pv-tlacitko.add-to-cart { background: #fff !important; color: var(--pv-oranzova) !important; border: 2px solid var(--pv-oranzova) !important;
  border-radius: 4px !important; text-transform: none !important; font-weight: 700; box-shadow: none !important; }
.product-miniature .pv-tlacitko.add-to-cart:hover { background: var(--pv-oranzova) !important; color: #fff !important; }
.products-section-title { text-transform: none !important; font-family: var(--pv-nadpisy); font-weight: 800; text-align: left !important; }

/* díly vozidla: souvislá tabulka místo samostatných karet */
.pv-dil { border-radius: 0 !important; box-shadow: none !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--pv-okraj) !important;
  background: #fff; }
.pv-dil:nth-of-type(even) { background: #f7f9fb; }
.pv-dil::before { display: none !important; }
.pv-dil__nazev { font-weight: 600; }
.pv-dil__cena { color: var(--pv-text) !important; font-weight: 800; }
.pv-dil__kosik { border-radius: 4px !important; }
.pv-dily, .pv-sada__dily, .js-pv-dily { border: 1px solid var(--pv-okraj); border-radius: 4px; overflow: hidden; }
.pv-sada { border-radius: 4px !important; border-width: 1px !important; }
.pv-sada__dily, .pv-sada__prislusenstvi { border: 1px solid var(--pv-okraj); border-radius: 4px; overflow: hidden; gap: 0 !important; }
