/*========= obecně písma a prvotní vzhled ==============================================*/

@font-face {
   font-family: 'Martel';
   font-style: normal;
   font-weight: 400;
   font-display: swap;
   src: local('Martel'), local('Martel-Regular'), url(/img/martel-r.ttf) format('truetype');
}
@font-face {
   font-family: 'Martel';
   font-style: normal;
   font-weight: 700;
   font-display: swap;
   src: local('Martel Bold'), local('Martel-Bold'), url(/img/martel-b.ttf) format('truetype');
}

@keyframes zoomeffect
{
   100% {transform: scale(1.1);}
}
html {font-size: 16px; background: #fff; }
body {font-family: 'Martel','Times new Roman', serif; }
input,select,textarea,button {font-family: 'Martel','Times new Roman', serif; font-size: 1rem;box-sizing:border-box;}

/*========= obecné =====================================================================*/
body { margin:0; }
#container { min-height: 100%; }
img {max-width: 100%;}
a img {border:0;text-decoration: none;}
a {text-decoration: underline;}

h1 {font-size: 3.125em; margin-top: .25em;}
.uvodni h1 {display: none;}
.noh1 h1 {display: none;}
h2 { margin-bottom: .6em;font-size: 2.5em; line-height: 1.25em;}
h2.nomarginb {margin-bottom: 0;}
h3 {}
h2 a { text-decoration: none; }
h3 a { text-decoration: none; }
h4 a { text-decoration: none; }

ul{ padding: 0 0 0 2em; overflow: hidden; }
ul li{ padding:0; margin-bottom: .5em; }
blockquote { background: #eee; border: 1px solid #ddd; margin: 0 0 1.5em; padding: .25em 1em;}
blockquote p { font-size: 1.2em; margin: .5em;}
hr { width: 100%; height: 1px; margin:.75em 0;  }

table {max-width:100%; border-collapse: collapse; }
table td,table th { padding-right: 1em; }
table.ramovana { border: 1px solid;}
table.ramovana td,table.ramovana th { border: 1px solid; padding-left: .5em; padding-right: .5em; }

template {display:none;}

/*========= globální třídy a modifikátory ==============================================*/
/* Případně doplněny s konkrétními identifikátory podstránek a sekcí */
.hid {display: none!important;}

.chyba,.msgOk {padding: .5em 1em .5em; border: 2px solid;margin-bottom: 2em;}
.chyba {font-size: 1.2em; background: #fdd; color:#d00; font-weight: bold; border-color: #eaa; }
.msgOk {background: #dfd; color:#242; border-color: #aea; }
.chyba p,.msgOk p {margin-bottom: .5em!important; margin-top: .5em!important; }

.left {float:left!important;}
.right {float:right!important;}
.cleaner {display: block; width: 100%; clear: both!important;}

.nalevo {text-align: left!important;}
.nastred {text-align: center!important;}
.napravo {text-align: right!important;}
.navse {text-align: justify!important;}

.tucny  { font-weight: bold;}
.italika { font-style: italic }
.podtrzeny { text-decoration: underline!important; }
.preskrtnute {text-decoration: line-through!important; }

.mensi-pismo { font-size: .8em; }
.vetsi-pismo { font-size: 1.25em;  }
.velke-pismo { font-size: 1.5em;  }
.pismo2x { font-size: 2em; }

.kurzor-sipka { cursor: default; }
.kurzor-otaznik { cursor: help; }
.kurzor-ruka { cursor: pointer; }

.transparent { -moz-opacity:.5; opacity:.5; }
.full {width: 100%;}

.topMsg {background: #ecc; color:#f33; font-weight: bold; font-size: 1.1em; padding: .25em 10%; text-align: center;}
form .post {display: none!important;}
form .bblcntnr {}
form .bblcntnr .bubble { display: block; text-align: left; }
form .bblcntnr .bubble span { border:1px solid #eaa; background: #fdd; color:#d00; font-weight: bold; display: inline-block; padding: .1em .5em;margin: .1em; }
form .js_error_list { opacity:1; display: block; text-align: left; border:1px solid #eaa; background: #fdd; color:#d00; font-weight: bold; padding: .1em .5em;margin: .1em;}
form .js_error_list:empty { display: none;}
@keyframes fadeOut {  from { opacity: 1; }  to { opacity: .25; } } form .js_error_list.diss {opacity: .25; animation: fadeOut 10s}

.max-sirka {width: 100%; max-width: 1170px; margin:auto;position: relative;}

.slflex {--mezery:calc( var(--sloupce) - 1 ); column-gap: var(--rozestup); row-gap: var(--rozestup); display: flex; flex-wrap: wrap; }
.slflex > * { display: block; flex: 0 0 calc( calc( 100% - var(--mezery) * var(--rozestup) ) / var(--sloupce) ); }

.tlacitko {color:#fff; background:var(--mainbarva); border: 0; font-size: 1rem; padding: 1.1em 1.1em .9em; line-height: 1em; font-weight: bold; text-decoration: none; cursor: pointer; display: inline-block;}
button.tlacitko,input[type=submit].tlacitko {}
.tlacitko:hover { background: #08a;}
button.tlacitko:hover,input[type=submit].tlacitko:hover {}

:root {--wastemenu-color: #000; --wastemenu-xcolor: #000; --wastemenu-lwidth: 9%; --wastemenu-border: 9%; }
span.wasteofspace{  height: 2rem; min-width: 2rem; font-size: 0; display: inline-block; vertical-align: middle; overflow: hidden; padding: 0;
   background: linear-gradient(to bottom, 
         transparent 0% var(--wastemenu-border), 
         var(--wastemenu-color) var(--wastemenu-border) calc( var(--wastemenu-border) + var(--wastemenu-lwidth) ), 
         transparent calc( var(--wastemenu-border) + var(--wastemenu-lwidth) ) calc( 50% - var(--wastemenu-lwidth) / 2 ), 
         var(--wastemenu-color) calc( 50% - var(--wastemenu-lwidth) / 2 ) calc( 50% + var(--wastemenu-lwidth) / 2 ), 
         transparent calc( 50% + var(--wastemenu-lwidth) / 2 ) calc( 100% - var(--wastemenu-border) - var(--wastemenu-lwidth) ), 
         var(--wastemenu-color) calc( 100% - var(--wastemenu-border) - var(--wastemenu-lwidth) ) calc( 100% - var(--wastemenu-border) ), 
         transparent calc( 100% - var(--wastemenu-border) ) 100% 
      );
}
span.wasteofspace.waste-x {
   background: linear-gradient(45deg, 
         transparent 0% calc( 50% - var(--wastemenu-lwidth) / 2 ), 
         var(--wastemenu-xcolor) calc( 50% - var(--wastemenu-lwidth) / 2 ) calc( 50% + var(--wastemenu-lwidth) / 2 ), 
         transparent calc( 50% + var(--wastemenu-lwidth) / 2 ) 100%
      ), linear-gradient(-45deg, 
         transparent 0% calc( 50% - var(--wastemenu-lwidth) / 2 ), 
         var(--wastemenu-xcolor) calc( 50% - var(--wastemenu-lwidth) / 2 ) calc( 50% + var(--wastemenu-lwidth) / 2 ), 
         transparent calc( 50% + var(--wastemenu-lwidth) / 2 ) 100%
      );
}

/*========= společné definice (barvy, chování apod.) ===================================*/
:root {--mainbarva:#0ad; }
h1:first-letter,h2:first-letter,h3:first-letter,p.h2:first-letter,p.h3:first-letter {text-transform: uppercase}
a,.mainbarva { color:var(--mainbarva) }
h1,h2 { color:#222 }
.gbg {background: #f3f3f3;}
.mainbg {background: var(--mainbarva); color:#fff;}
.mainbg a {color:#fff;}

.hoverline,.nohoverline,.hoverparent {text-decoration: none;}
.hoverline:hover,.hoverbase:hover .hoverparent {text-decoration: underline;}

/*========= prvky hlavičky =============================================================*/
#hlavicka { position: relative; overflow: hidden;width: 100%; background: url(/img/bg_let.webp) center top no-repeat #fff;}
#hlavicka.sneachta { background-image: url(/img/bg_zim.webp);}
.neuvodni #hlavicka {background-size: cover;}
#hlavicka .max-sirka {z-index: 2;}

#hgraphics {position: absolute; width: 100%; left:0; top:0; bottom:0; background: url(/img/bg_let.webp) center top no-repeat #fff; z-index: 1; }
.sneachta #hgraphics { background-image: url(/img/bg_zim.webp); }
.neuvodni #hgraphics {background-size: cover;}
#hgraphics::before {content: ' ';width: 100%; position: absolute; left:0; top:0; bottom:0; z-index: 0; display: block;
                    background: linear-gradient(rgba(255,255,255,1) 0, rgba(255,255,255,0) 70%, rgba(0,0,0,0) 70%, rgba(0,0,0,.75) 100%);}
#hgraphics.image { animation:zoomeffect 5s 1; animation-fill-mode:forwards; }
#hgraphics .vidplace {width: 100%; position: absolute; left:0; right: 0; top: 0; bottom: 0; overflow: hidden; }
#hgraphics .vidplace::before{display: block; position: absolute;left:0; right:0; top:0; bottom:0; z-index: 1; display: block; content: ' '; z-index: 1;
       background: linear-gradient(rgba(255,255,255,1) 0, rgba(255,255,255,1) 70%, rgba(0,0,0,1) 100%);}
#hgraphics .vidplace::after{display: block; position: absolute;left:0; right:0; top:0; bottom:0; z-index: 1; display: block; content: ' '; z-index: 3;}
#vidflek { object-fit: cover; display: block; position: relative; z-index: 2; }

#hpruh {width: 100%; display: flex; align-items: center; justify-content: space-between; }
#hlogo {margin-top: 10px;}
#hlogo img {max-height:105px}

#overit-skokmenu {}
#hpruhbaseplace .tlacitko,#hpruhmoveplace:not(.whbg) .tlacitko:not(.xkos) {font-size: 1.2rem; white-space: nowrap; text-align: center;}

#hslogan { padding: 140px 20% 0 0; position: relative; height: 520px; font-size:40px; color:#fff; line-height: 1.25em; text-shadow:0 0 4px #000;}
#hslogan p{ margin: 0; }
#hslogan .big{ font-size:100px; font-weight: bold; line-height: 1em; margin-bottom: .1em; }
.neuvodni #hslogan { height: 660px; padding: 0; position: relative;}
.neuvodni #hslogan p {font-weight: bold;font-size:70px; line-height: 1.25em;}
.neuvodni #hslogan .heavydrop { position: absolute; bottom:100px; left:0; text-align: left; padding-right: 20%;}
.neuvodni #hslogan .smol{ font-size:30px; font-weight: bold; line-height: 1em; margin-bottom: .1em; margin-top: 1em;}
#hslogan.lower { height: auto;}
.neuvodni #hslogan.lower p { line-height: 1.1em; margin: .75em 0px .5em; }

#hstred {position: absolute; right:0; bottom:20px;}
#hstred iframe { border:0;}
#hstred .overrev { width:147px; height:123px; display: inline-block; position: absolute; left: 0; top:0;}

#hbottom { padding-bottom: 90px; }
#hbottom form {display: flex;align-items: center; justify-content: space-between; background: var(--mainbarva); padding:3.3%; font-weight: bold; }
#hbottom form .field{ margin: 0 5px;}
#hbottom form .field.sec{flex-shrink: 1;}
#hbottom form .field label{display: block; color: #fff; margin:-1em 0 1.5em;}
#hbottom form .field input{display: block; background: #08a; border: 0; padding: 1em; height: 1em; box-sizing: content-box; color:#fff; }
#hbottom form .field input:focus {background-color: #fff; color:#222; }
#hbottom form .field input.dat { background-image: url(/img/ic_calendar.png); background-position: right center; background-repeat: no-repeat; padding: .75em 3.5em 1.25em 1em; width: calc(100% - 4.5em); }
#hbottom form .field input[type=number] { -moz-appearance: textfield; appearance: textfield; margin: 0;width: 3em; }
#hbottom form .field input[type=number]::-webkit-inner-spin-button,
#hbottom form .field input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
#hbottom form .field input[type=date] {-moz-appearance: textfield; appearance: textfield; }
#hbottom form .field input[type=date]::-webkit-clear-button {display: none;}
#hbottom form .field input[type=date]::-webkit-inner-spin-button { display: none;}

#hbottom form .tlacitko{ color:#222; background: #fff;}
#hbottom form .tlacitko:hover{ background: #ddd;}

/*========= menu =======================================================================*/
.hmenu { font-weight: bold; }
.hmenu a { display: block; text-decoration: none;color:#222; text-shadow:0 0 8px #fff; }
.hmenu .radic { position: relative; }
.hmenu .msp { display: grid; align-content: center; line-height: 1.25em; }
.hmenu .radic a:hover,.hmenu .radic.active > a { text-decoration: underline; }
.hmenu a:hover,.hmenu .active a{ color:var(--mainbarva); }
.uvodni #hpruhmoveplace:not(.prekazejici) .hmenu a:not(.tlacitko) {color:#fff;text-shadow:0 0 8px #000; }
.uvodni #hpruhmoveplace:not(.prekazejici) .hmenu .extrawrap a:not(.tlacitko) {color:#222;text-shadow:0 0 8px #fff; }

#nhmenu { display: flex; }
#nhmenu a {}
#nhmenu .msp { min-height: 2.5em; padding: 0 1em; }
#nhmenu .oddelovac {width: 1px; height: 1.5em; border-left: 1px dotted #555; margin-left: -1px; }

#xhmenu {z-index: 1000; display: inline-block; }
#xhmenu .extrawrap {display: block; background: rgba(255,255,255,.95); position: fixed; top:0; padding: 1em 12% 8em; left:0; width: 100vw; bottom: 0; overflow: auto; z-index: 999; box-sizing: border-box;}
#xhmenu .radic{ display: block; text-align: left; z-index: 1000;}
#xhmenu .msp { padding:1em 0; }
#xhmenu .tlacitko {color:#fff; text-shadow:none;}
#xhmenu .overline { border-top: 1px solid #ddd; padding: .5em 0; }
#xhmenu .shower { padding: 0 .15em;}
.whbg #xhmenu .shower {background: none; padding: 0;}

#xhmenu .xkos {margin-top: 1em; font-size: .9em;}

/*========= jazyky =====================================================================*/
#vlajky { text-align: center; font-size: 12px; font-weight: bold; position: relative; z-index: 2; margin: auto; width: 150px; }
#vlajky a {margin: 0 .25em; text-transform: uppercase; display: inline-block; vertical-align: top; line-height: 1em; padding: 18px 5px 9px; background: #cdd; color:#fff; text-decoration: none; }
#vlajky a.active {padding-bottom: 18px; background: url(/img/lang_sel.png) center bottom no-repeat; }

/*========= košík ======================================================================*/
#kosinfo { display: inline-block; text-decoration: none; position: absolute; top: .5em; right:0; font-size: 13px; }

/*========= vyhledávání ================================================================*/
#hledatObal {min-width: 200px; position: relative; }
#hledatObal form {border: 1px solid #f3f3f3; padding: .33em 2%; border: 1px solid #f3f3f3; }
#hledatObal .q{ width: 70%; padding: .25em 3% .25em 3%; border:0; background: #fff; }
#hledatObal .q::placeholder { font-style: italic; color:#777; opacity: 1; }
#hledatObal .tlacitko { width: 30%; margin:0; padding: .25em 0; }

#naseptavac {width: 100%; border: 1px solid #f3f3f3; background: #fff; height: 16.5em; z-index: 700; position: absolute; left: 0; top: 100%; }
#naseptavac .naseppolozka { display: block; background: #fff; }
#naseptavac .naseppolozka span { overflow: hidden; display: block; padding: 0 4%; height: 1.5em; line-height: 1.5em; }
#naseptavac .naseppolozka:focus { color:#fff; }
#nasepfoto {position: absolute; right: 100%; top:-1px; background: #fff; border: 1px solid #f3f3f3; width: 220px; height: 16.5em; text-align: center; }
#nasepfoto a {display: block; padding: .5em 5%; height: 100%;}
#nasepfoto .nadpis {display: block; line-height: 1.4em; height: 2.8em; overflow: hidden; }
#nasepfoto .fotoInside {display: block; height: 12.7em; line-height: 12.7em; white-space: nowrap; }
#nasepfoto .fotoInside img{vertical-align: middle; max-height: 100%; }

/*========= prvky stránky ==============================================================*/
#stranka { padding: 80px 0 2em; margin:0; background: url(/img/bg_wood.webp) center top no-repeat; }
.neuvodni #stranka { background-image: url(/img/bg_wood_m.webp); }

#rozcestnik {display: flex;align-items: flex-start; justify-content: space-between; text-align: center; font-size: 1.25em; line-height: 1.25em; margin-bottom: 65px;}
#rozcestnik a {display: block; width: 180px; text-decoration: none; color:#222; font-weight: bold; }
#rozcestnik a:hover {color:var(--mainbarva);}
#rozcestnik a .pix {display: block; position: relative; height: 140px; margin: 0 20px 20px; overflow: hidden; }
#rozcestnik a .pix img {display: block; position: absolute; left:50%; top:50%; transform: translateX(-50%) translateY(-50%); }
#rozcestnik a .txt {display: block; }
#rozcestnik a .ltxt {display: block; font-size: .75em; }

.subsekce { padding: 70px 0; }
.subsekce .flexer { display: flex;align-items: center; justify-content: space-between; }
.subsekce:nth-of-type(odd) { background: #f4f1ec; }
.subsekce.lobr .content {order: 2;padding-left:6%;}
.subsekce.lobr .contpix {order: 1;}
.subsekce.robr .content {padding-right:6%; }
.subsekce .content.webframe {max-width: 555px;  }
.subsekce .content.webframe * {display: block; }
.subsekce .content.webframe *:not(h3) {display: block; border:1px solid #222; }
.subsekce .contpix {flex-shrink: 0; max-width: 50%; }
.subsekce iframe {border:0;}
.subsekce ul {list-style-image:url(/img/fajfka.png); margin-left:-6px; padding-left: 26px; }

#origprodukt {display:none;position: absolute; left:-290px; top:200px; width: 260px; height: 255px; background: url(/img/vedleznak.png);  }

/*========= obsah ======================================================================*/
#telo {padding: 0; margin:0; }
.uvodni #telo {width: 46%; float: left;}
#telo.shopd {width: 75%; float: right;}

.obsah { line-height: 2em; position: relative; }
.obsah.blog {max-width: 750px;}
.obsah p { margin-top: 0;}
.obsah img.left,.obsah iframe.left,.obsah div.left {margin: .75em 1em; margin-left: 0;}
.obsah img.right,.obsah iframe.right,.obsah div.right {margin: .75em 1em; margin-right: 0;}
.obsah iframe {max-width: 100%;}

.obsah div.left,.obsah div.right, .obsah div.full {text-align: center; padding:1em;}
.obsah div.full{ margin: .75em 0;}
.obsah div.left > :last-child,.obsah div.right > :last-child,.obsah div.full > :last-child {margin-bottom:0; }

.anotacka { font-size: 1.25em; line-height: 1.5em; }
.uvodni .anotacka { font-size: 2em; line-height: 1.5em; }

/*========= drobečková =================================================================*/
.drobnav {line-height: 1.75em;  color:#777; margin: 0; }
.drobnav a {color:#777; font-weight: bold; }
.drobnav span { padding:0; margin:0; display: inline-block;}
.drobnav span.odd {margin: 0 .75em;}
.noh1 .drobnav {margin-bottom: 1.5em;}

/*========= podstránky =================================================================*/
.podkat { margin: 2em 0; align-items: stretch; --sloupce:3; --rozestup:2em;}
.podkat a {font-size: 1.1em; border: 1px solid #ccc; padding: .33em 1%; position: relative; box-sizing: border-box; }
.podkat a:not(:hover) {border-color: #eee; text-decoration: none; }
.podkat a.wpix { display:grid; grid-template: 1fr auto / 1fr; grid-template-areas: 'text' 'pic'; }
.podkat .text { grid-area: text; }
.podkat .pic { grid-area: pic; margin-top: .5em; text-align: right; max-height: 100px; }
.podkat .pic img { max-height: 100%; object-fit: contain; }
.podkat.reversfoto a.wpix { font-size: 1em; grid-template-areas: 'pic' 'text'; border: 0; padding: 0; }
.podkat.reversfoto .pic { text-align: center; margin-top: 0; }
.podkat.reversfoto .text {display: block; padding: .6em 1.5em .4em; font-weight: bold; background: #d3f0fd; }
.podkat.reversfoto img { width: 100%; height: 100%; object-fit: cover; }

/*========= fotky ======================================================================*/
.gallery { margin: 2em; align-items: stretch; --sloupce:4; --rozestup: 1em; }
.gallery .box { vertical-align: top; }
.gallery .box a {display: grid; min-height: 150px; align-items: center; justify-content: center; }
.gallery img { padding:2%; border: 1px solid #fafafa; box-sizing: border-box; }
.gallery .text { display: block; padding: 0 2%; margin-top: .1em; text-align: center;  }

/*========= fotky - centr ===============================================================*/
.gallery.cengallery {}
.gallery.cengallery .box a { height: 170px; position: relative; overflow: hidden;}
.gallery.cengallery img {position: absolute; left:50%; top:50%; transform: translateX(-50%) translateY(-50%); max-width: none; }

/*========= soubory ====================================================================*/
.files {display:table; max-width: 700px; width: 100%; margin-top: 1em;}
.files a {display: table-row; text-decoration: none}
.files span {display:table-cell; vertical-align: middle; text-align: left; padding: .5em 0; border-bottom: 1px solid #eee;}
.files img {float:left; margin: 0 .5em;}
.files .tail {text-align: right;}

/*========= články =====================================================================*/
.clanky {}
.clanky .clanek { margin-bottom: 2em; }
.clanky .h3 { font-weight: bold; font-size: 1.1em; margin-bottom: 0;}
.clanky .datum {font-size: .9em; color:#777; margin: 0 0 .5em;}

.clFaq {}
.clFaq .clanek { margin-bottom: 1.5em; }
.clFaq .h3 { font-weight: bold; font-size: 1.1em; margin-bottom: 0;}
.clFaq .h3 a { padding:.5em; background: #f0f7ff; color:#000; display: block; }
.clFaq .h3 a::before { content:'+ '; }
.clFaq .cltext { padding: .5em 1em 0; }

/*========= novinky ====================================================================*/
.novinky {}
.novinky .novinka {margin-bottom: 2em;}
.novinky .h3 {font-weight: bold; font-size: 1.1em; margin-bottom: 0;}
.novinky .datum {font-size: .9em; color:#777; float:left; margin: 0 1em 0 0;}

/*========= sloupce ====================================================================*/
.sloupec-pravy { width: 47%; float: right; }
.sloupec-levy { width: 23%; float: left; }

.sl-rodina { padding: 9.5%; background: #f4f1ec; line-height: 2em; position: relative; margin-bottom: 2em;}
.sl-rodina h3 {color:#222; font-size:25px; }
.sl-rodina p { }
.sl-rodina .ilust { position: absolute; right:11%; top: -30px; border-radius: 50%; overflow: hidden; }
.sl-rodina .ilust img { max-width: 125px; max-height: 125px; display: block; }

.sl-rec { padding: 1em 9.5%; background: #f4f1ec; line-height: 2em; margin-bottom: 2em;}
.sl-rec .polozka { margin: 0 0 1.5em; }
.sl-rec .img { margin: 0; }
.sl-rec h4 { margin-bottom: -.5em; margin-top: 0; }
.sl-rec .datumn { font-size: .85em; font-weight: normal; float:left; margin: 0 1em 0 0; }

.sl-ffff { margin-bottom: 2em;}

.sl-link { margin-bottom: 2em; display: flex; align-items: center; justify-content: space-between; }
.sl-link span { font-size: 20px; display: block; flex-grow: 2; }
.sl-link a { flex-grow: 0; margin-left: 2em; }

/*========= šablony ====================================================================*/
.respgbg,.respgbg tbody {width: 100%; border-collapse: collapse;}
.respgbg tr td:first-of-type {background:#f3f3f3;}
.respgbg tr td {border-bottom: 1px solid #eee;border-top: 1px solid #eee; padding: 0 .5em;}

.flexcols {display: flex; width:100%; flex-wrap: wrap; justify-content: space-around; align-items: flex-start; }
.flexcols.verticentr {align-items: center;}
.flexcols > div {padding: .5em; box-sizing: border-box; margin-bottom: 1em; }
.flexcols > div > p:last-child {margin-bottom: 0;}
.column2 > div {width: 50%; }
.column3 > div {width: 33.3%; }
.column4 > div {width: 25%; }
.column5 > div {width: 20%; }

/*========= kontaktní formulář =========================================================*/
.kform { text-align: left; max-width: 570px; margin-bottom: 4em;}
.kform h2 {color: #fff; margin-top: .5em;}
.kform a {color:#fff;}
.kform form { }
.kform p {margin: 0 0 1em; }
.kform .sloup {display: inline-block; vertical-align: top; width: 48%; }
.kform .sloup.tl {vertical-align: middle; }
.kform .l { padding-right: 2%; }
.kform .r { padding-left: 2%; }
.kform .l.tl { width: 38%; }
.kform .r.tl { width: 58%; }
.kform label {display: block; line-height: 1.5em; padding: 0;}
.kform label.readerhelp {width: 0; height: 0; overflow: hidden; display: block; }
.kform .stretch {width: 100%; padding: .5em; border:0; background: #08a; color: #fff;}
.kform .stretch:focus {background-color: #fff; color:#222; }
.kform textarea.stretch { height: 2.75em;}
.kform .tlacitko {color:#222; background: #fff;}
.kform .tlacitko:hover {background: #ddd;}
.kform .stretch::placeholder { font-style: italic; color: #fff; opacity: 1; }
#telo .kform {padding-top: .5em;}

/*========= poukazový formulář =========================================================*/
#miniobj {}
#miniobj form {}
#miniobj .ram {border:2px solid #00a0d2; margin-bottom: 1.5em;}
#miniobj .ramlabel {background: #f0f7ff; padding: .5em; font-weight: bold;}
#miniobj .ramobsah {padding: 1em;}
#miniobj .rampata { background: #f0f7ff;padding: 30px 3%; display: block;}
#miniobj p.info { font-weight: bold;}

#miniobj .predel {margin-bottom: 1.5em;}
#miniobj .pix { display: inline-block; vertical-align: top; width: 25%; margin-right: 5%; margin-top: 1em; }
#miniobj .afterpix { display: inline-block; vertical-align: top; width: 70%;}

#miniobj .produkt { border-bottom: 1px solid #e2e2e2; text-align: left; padding:.5em; }
#miniobj .produkt.nad { font-size: 1.1em; font-weight: bold; color: var(--mainbarva) }
#miniobj .produkt.sel { background: #eef8ed; }
#miniobj .prtab {display: flex; align-items: center; }
#miniobj .prtab .nazev {font-weight: bold; flex-grow: 2;}
#miniobj .prtab .cena {width: 7em; font-weight: bold; color:var(--mainbarva); margin-right: 1em; text-align: right;}
#miniobj .prtab .cena span {display: block; font-size: .75em; color:#a3a3a3; margin-top: -1em; }
#miniobj .prtab .input {width: 4em;}
#miniobj .prtab .input input {width: 100%;}
#miniobj .prtab .klik {width: 4em;}
#miniobj .prtab .klik input {display: none;}
#miniobj .dual .prtab .input {width: 10em;}
#miniobj .dual .prtab .input input {width: 4em;}
#miniobj .dual .prtab .input .dualwrap {display: block; white-space: nowrap; margin-bottom: .2em;}
#miniobj .prtab .klik .outcheck {display: block; width: 22px; height: 22px; border-radius: 2px; border: 1px solid #e2e2e2; padding: 2px; box-sizing: border-box; margin: auto;}
#miniobj .produkt.sel .prtab .klik .outcheck>span {display: block; border-radius: 2px; background: #5ab950; width: 16px; height: 16px; }
#miniobj .produkt .prpis {color: #a3a3a3;}
#miniobj .produkt .prpis p {margin:0}

#miniobj .poukazimg {display: inline-block; vertical-align: top; width: 34%; margin-right: 6%;}
#miniobj .poukaztext {display: inline-block; vertical-align: top; width: 60%;}
#miniobj .poukaztext label { display: block; font-weight: bold;}
#miniobj .poukaztext input { width: 100%;}

#miniobj .labeloffset {}
#miniobj .labeloffset p {}
#miniobj .labeloffset label { display: inline-block; vertical-align: middle; width: 20%;}
#miniobj .labeloffset input { display: inline-block; vertical-align: middle; width: 40%;}
#miniobj .labeloffset.fku label { width: 33%;}
#miniobj .labeloffset.fku label.cb { width: 66%;}
#miniobj .labeloffset.fku label.cb img { vertical-align: middle;}
#miniobj .labeloffset.fku input { width: 66%;}
#miniobj .labeloffset.fku .cb input { width: auto;}

#miniobj .final {background: #f0f7ff; padding: 2em 2em 1em; }
#miniobj .fku {width: 60%; vertical-align: top; display: inline-block;}
#miniobj .fop {width: 35%; vertical-align: top; display: inline-block; margin-left: 5%;}

#miniobj .fop p span {display: inline-block; width: 70%; vertical-align: bottom;}
#miniobj .fop p span + span {width: 25%; color:var(--mainbarva); font-weight: bold; text-align: right;}
#opseznam { border-bottom: 1px solid #a3a3a3; padding-bottom: .25em; margin-bottom: .5em; }
#optotal {font-size: 1.5em;}

#miniobj .tlacitko.mo {background: #57b84f; box-shadow: inset 0 -3px 0 0 #438c3b; font-style: normal; font-weight: bold; font-size: 20px; text-shadow: 1px 1px #4c9544; margin:1em 0;}
#miniobj .tlacitko.mo:hover {background: #438c3b;}

#miniobj input {background: #fff; border:1px solid #ddd;}

/*========= normální formuláře =========================================================*/
.simpleform {width: 100%;}
.simpleform p {margin: .5em 0;}
.simpleform p label {display: inline-block; vertical-align: middle; width: 22%; }
.simpleform p input,.simpleform p select {display: inline-block; vertical-align: middle; width: 45%; margin:0; padding: 0 .5em; }
.simpleform p input[type=checkbox],.simpleform p input[type=radio] {width: auto; margin: initial; }
.simpleform p .tlacitko {vertical-align: middle; }

/*========= eshop - postranní kategorie ================================================*/
#kat {}
.katmenu { list-style-type: none; padding:0; margin: 0; }
/* 1. úroveň */
.katmenu  li { margin:0;}
.katmenu li a { margin:0;}
.katmenu  li .rozklik {display: inline-block; vertical-align: middle; padding:.5em 0; width: 0; background: center center no-repeat; cursor: pointer; text-align: center}
.katmenu li .rozklik::after {content:'+'}
.katmenu li.open > a .rozklik::after {content:'-';}
.katmenu li .katlink {display: inline-block; vertical-align: middle; padding: .5em 0; width: 90%; text-decoration: none;}
:is(.katmenu li > a:hover,.katmenu li.active > a ) .katlink { text-decoration: underline;}
/*2. úroveň - rozdíly prvků od 1. úrovně */
.katmenu li ul {list-style-type: none; padding:0; margin: 0;}
.katmenu li:not(.open) > ul {display: none;}
.katmenu  li ul li .rozklik { padding: .25em 0; width: 10%; }
.katmenu li ul li .katlink {padding: .25em 0; width: 85%; }
.katmenu li ul li ul li .katlink { width: 80%; }

.katmenu .empty {visibility: hidden;cursor: auto;}

/*========= eshop - spolecne ===========================================================*/
/* Globální, konkrétními identifikátory podstránek doplněny */
.stitky { position: absolute; left: 0; top: 0; text-decoration: none; color: #000; }
.stitky span{ margin:.5em 0; display: block;}
.stitky span.akce{ }
.stitky span.novinka{ }
.stitky span.darek{ }
.stitky span.procenta{ }

/*========= eshop - výpis produktů =====================================================*/
.produkty { clear:both; --sloupce:3; --rozestup: 1em; margin-top: 1.5em; align-items: stretch; }
.produkt {position: relative; border: 1px solid #f8f8f8; text-align: center; display: grid; row-gap: .5em; column-gap: .75em; padding: .5em .75em; box-sizing: border-box;
   grid-template: minmax(3.3em,auto) 200px 1fr auto auto / 1fr 1fr; 
   grid-template-areas: 'nazev nazev' 'foto foto' 'popis popis' 'leva prava' 'spodni spodni';}
.produkt .nazev {grid-area:nazev; line-height: 1.1em; font-weight: bold; display: block;}
.produkt .foto { grid-area: foto; }
.produkt .foto img { height: 100%; object-fit: contain; }
.produkt .topmid {grid-area:popis; line-height: 1.1em; }
.produkt .pleft { grid-area: leva; text-align: left; }
.produkt .pright { grid-area: prava; text-align: right; }
.produkt .botmid { grid-area: spodni; }
.produkt .cena {font-weight: bold; font-size: 1.4em; margin:0; }
.produkt .sklad {color:#a44; margin:0.5em; font-weight: bold; font-size: .8em;}
.produkt .sklad.ok {color:#4a4}
.produkt .tlacitko {}
.produkt .stitky { top: 100px;}

.produkt.v2 { flex: 0 0 100%; align-items: center;
   grid-template: auto / 75px 0 1fr minmax(6em,auto) minmax(8em,auto) auto; 
   grid-template-areas: 'foto . nazev cena sklad pright'; }
.produkt.v2 .foto { aspect-ratio:1; }
.produkt.v2 .nazev { text-align: left; }
.produkt.v2 .cena { grid-area: cena; font-size: 1em; }
.produkt.v2 .sklad { grid-area: sklad; text-align: left; }
.produkt.v2 .pright { grid-area: pright; }

.more.tlacitko {margin: .5em 0;}
.more.tlacitko img {vertical-align: bottom; }

/*========= eshop - detail produktu ====================================================*/
.produkt-det {}
.produkt-det .fotosloupec {width: 59%; margin-right: 1%; display: inline-block; vertical-align: top; position: relative;}
.produkt-det .fotosloupec img { vertical-align: middle;}
.produkt-det .fotka-hlavni { text-align: center; white-space: nowrap; line-height: 300px; height: 300px; }
.produkt-det .fotocontainer { position: relative; padding: 2px 5%; }
.produkt-det .fotocontainer a { width: 23%; margin:0 1%; white-space: nowrap; display: inline-block; text-align: center; }
.produkt-det .fotocontainer .borderer { border: 1px solid #eee; height: 75px; display: block; line-height: 75px;}
.produkt-det .fragment { text-align: center; }
.produkt-det .vpravo { display: inline-block; width: 40%; }
.produkt-det .vpravo .radek { border-bottom: 1px solid #eee; padding: .33em 2%; }
.produkt-det .vpravo fieldset .radek { padding: .33em 0; }
.produkt-det .vpravo .radek label { width: 40%; display: inline-block; vertical-align: middle; color:#777; }
.produkt-det .vpravo .radek span { width: 60%; display: inline-block; vertical-align: middle; }
.produkt-det .vpravo .cradek {width: 100%; text-align: right;}
.produkt-det .vpravo #procentaDiv {float:left; padding: .5em 1em; width: auto; text-align: left; font-weight: bold; color:#fff}
.produkt-det .vpravo #staracenaDiv,.produkt-det .vpravo #malacenaDiv {color:#777; margin-top:1.5em}
.produkt-det .vpravo #staracenaDiv {text-decoration: line-through;}
.produkt-det .vpravo #cenaDiv {margin-top: 1.25em}
.produkt-det .vpravo #cenaDiv .mensi { font-size: .8em; color:#aaa; }
.produkt-det .vpravo .bigspan,.produkt-det fieldset #summall {font-size: 2em; font-weight: bold; white-space: nowrap; vertical-align: middle; margin-left: .5%;}
.produkt-det fieldset { border:0; padding: 1em 1%; margin: 1.5em 0 0; text-align: right}
.produkt-det fieldset.uzsi { padding: 1em 5%;}
.produkt-det fieldset .omezovac { width: 45%; display: inline-block; vertical-align: top; margin: 0 2.5%;}
.produkt-det fieldset .radek { margin-bottom: 15px; text-align: left }
.produkt-det fieldset .cradek { margin-bottom: 20px;}
.produkt-det fieldset label { width: 40%; display: inline-block; vertical-align: middle; color:#777; }
.produkt-det #bvarianta {vertical-align: middle; display: inline-block;}
.produkt-det fieldset .cradek span{ text-align: right; }
.produkt-det fieldset .cradek.mensi { color:#aaa; margin-top: -10px; }
.produkt-det fieldset select { width: 60%; display: inline-block; vertical-align: middle; padding: .5em 0; }
.produkt-det fieldset .input { width: 40%; display: inline-block; vertical-align: middle; text-align: left; white-space: nowrap; }
.produkt-det fieldset .input input { height: 2em; max-width: 55%; text-align: center; }
.produkt-det fieldset button { width: 55%; margin-left: 5%; display: inline-block; vertical-align: middle; padding:0; padding-top: .5em; padding-bottom: .5em;}
.produkt-det .moznosti {margin: 10px 0; border: 1px solid #eee; border-bottom: 0; }
.produkt-det .moznost {  border-bottom: 1px solid #eee; display: table; width: 100%; height: 60px; cursor: pointer}
.produkt-det .moznost span, .produkt-det .moznost a { display:table-cell; vertical-align: middle }
.produkt-det .moznost .cena { width: 20%; text-align: center;}
.produkt-det .moznost a { width: 15%; text-align: center; }
.produkt-det .moznost .forimg { width: 14.5%; text-align: center; }
.produkt-det .moznost .forimg.b { width: 12%;  }
.produkt-det .moznost .forimg img { max-width: 80%; max-height: 60px; text-align: center; }
.produkt-det .moznost .pcast { display: table-cell; width: 9%; vertical-align: middle;text-align: center; border-left: 1px solid #eee; }
.produkt-det .zalozky {margin: 1.5em 0;}
.produkt-det .zalObsah {margin: .5em 0;}
.produkt-det .paramtab {padding: 1em 5%;}
.produkt-det .paramtab label {display: inline-block; vertical-align: top; width: 30%;}
.produkt-det .paramtab span {display: inline-block; vertical-align: top; width: 70%;}

.produkt-det .fotocontainer .bx-prev,.produkt-det .fotocontainer .bx-next{ text-decoration: none; position: absolute; top:0; display: block; text-align: center; line-height: 79px; height: 79px; width: 5%; white-space: nowrap; margin:0; }
.produkt-det .fotocontainer .bx-prev{ left:0; }
.produkt-det .fotocontainer .bx-next{ right:0; }

/*========= eshop - filtrace  kategorie ================================================*/
.prodFiltr {width: 96%; padding: .75em 2%;}
.prodFiltr > div,.prodFiltr .settings > * {display: inline-block; vertical-align: middle; margin: .5em 0 0; }
.prodFiltr .settings { width: 83%;}
.prodFiltr .sender { width: 17%; text-align: center }
.prodFiltr .sender .tlacitko{  padding-left: 0; padding-right: 0; width: 100%; }
.prodFiltr .settings > * { margin: 1em 0 0; }
.prodFiltr .h { width: 17%; vertical-align: top; font-weight: bold; margin-right: 1%; }
.prodFiltr .prvky {  width: 82%; }
.prodFiltr .vyrbox {  display: inline-block; vertical-align: top; width: 24%; margin-bottom: .25em; margin-right: 1%;}
.prodFiltr .vyrbox label { display: inline-block;vertical-align: top; max-width: 78%;  }
.prodFiltr .vyrbox label a { display: block;}
.prodFiltr .vyrbox input { vertical-align: top; max-width: 22%; margin-left: 0; margin-right: 0; }

.filt4 { position: relative;}
.filt4inner {overflow: hidden; }
.filt4link {position: absolute; bottom: -1.75em; right: 0;}

#nouicenaplace.noUi-horizontal { height: 8px; margin-top: 10px; width: 70%;  }
#nouicenaplace .noUi-handle { height: 18px;width: 20px;  }
#nouicenaplace .noUi-handle::after,#nouicenaplace .noUi-handle::before{ display: none; }
#nouicenaplace .noUi-tooltip { font-size: .8rem; line-height: 1; }

/*========= eshop - přepínací záložky ==================================================*/
.radzalozky { width: 100%; border-bottom: 1px solid #eee; margin-top: .5em; position: relative; }
.radzalozky .zalozka { display: inline-block; vertical-align: bottom; border: 1px solid #eee; border-radius: 2px 2px 0 0; line-height: 2em; margin-bottom: -1px; }
.radzalozky .zalozka > * { display: block; padding: 0 .5em; }

.predprodzal { padding-right: 4.5em; box-sizing: border-box; }
.radzalozky.prod { text-align: right; }
.radzalozky.prod.posunute {margin: -2em 0; float: right; width: auto;}
.radzalozky.prod .zalozka  { border: 0; text-align: center;  }
.radzalozky.prod .zalozka > * { padding: 0; width: 26px; margin-left: .5em; }
.radzalozky.prod .zalozka img { vertical-align: middle; }

.produkt-det .radzalozky .zalozka > * { padding: 0 .75em; }

.text4 { position: relative;}
.text4inner {overflow: hidden; }
.text4link {position: absolute; bottom: -1.7em; right: 10%;}

/*========= eshop - stránkování ========================================================*/
.paging {margin: 1em; text-align: right; font-size: 1.1em;}
.paging a,.paging .a{ margin: 0 .25em; }
.paging .curpage{ font-weight: bold; }

/*========= eshop - košík ==============================================================*/
.kos {  }
.kos table { width: 100%; padding-top: .75em; margin-bottom: 2em; text-align: center }
.kos table thead th { height: 1.5em; padding: 0 .5em; background-color: #f8f8f8; border:0;}
.kos table td { height: 60px; vertical-align: middle; border:0; }
.kos table td.odkazova,.kos table td.variantni { text-align: left }
.kos table td.inputova { white-space: nowrap; text-align: left; width: 110px; padding-right: 1.5em;}
.kos table td.cenova { text-align: right }
.kos table td img { max-height: 60px; max-width: 60px; }
.kos table .plusminus { background-color: #f8f8f8; display:inline-block; vertical-align: middle; width:1.5em; height: 1.5em; line-height: 1.5em; text-decoration: none; color:#000;  text-align: center;}
.kos table .mnozstevni { width: calc( 100% - 4em ); max-width: 5em; height: 1.5em; vertical-align: middle; text-align: center;}
.kos table .final td { font-weight: bold; }
.kos .linky { text-align: right; }
.kos .linkovy {background: none; border:0; display:inline-block; vertical-align: middle; text-decoration: underline; margin-left: 3.5em; margin-right: 1.5em; padding: 1em 0; margin-bottom: .5em; cursor:pointer;}
.kos .tlacitko {vertical-align: middle; margin-left:2em; padding: 1em 1.5em; margin-bottom: .5em;}
.kos .zpet { padding:1em 0; float: left; display: inline-block; }

/*========= eshop - objednávka =========================================================*/
.objednavka{ margin: 20px 0;  }
.objednavka .tab {display: table; width: 100%; }
.objednavka .adresa{ width: 49%; display: inline-block; vertical-align: top; margin-right: 1%; }
.objednavka .adresa p { margin: .35em 0; line-height: 1.65em }
.objednavka .dodatky p { margin: .35em 0; line-height: 1.65em }
.objednavka .adresa label { width: 42%; display: inline-block; vertical-align: middle;}
.objednavka .adresa input,.objednavka .adresa select { width: 53%; vertical-align: middle;}
.objednavka .adresa input[type=checkbox],.objednavka .adresa input[type=radio] { width: auto; }
.objednavka .dodatky{ width: 100%; display: block;  }
.objednavka .dodatky label { width: 20.58%; display: inline-block; vertical-align: top; }
.objednavka .dodatky label.wider { width: 35%; }
.objednavka .dodatky .cb label { width: 75%; }
.objednavka .dodatky input { width: 50%; }
.objednavka .dodatky input[type=checkbox],.objednavka .dodatky input[type=radio] { width: auto; }
.objednavka .dodatky textarea { vertical-align: top;width: 50%; }
.objednavka .separat{ margin:2.5em 0; }
.objednavka .radioobj .radia { margin:.5em 0; border-bottom: 1px solid #ddd; padding: .5em 0; }
.objednavka .radioobj label {width: 100%; display: flex; flex-wrap: wrap; align-content: stretch; margin: 0 0 .5em; }
.objednavka .radioobj label input { width: 30px; margin: 0; align-self: center;}
.objednavka .radioobj label .tab1 { width: 50%; }
.objednavka .radioobj label .tab2 { flex-grow: 1; flex-shrink: 1; }
.objednavka .radioobj label .tab3 { width: 20%; }
.objednavka .radioobj .specbr { padding: 0 2em; margin: 0.5em 0; }
.objednavka .summary { width: 95%; padding-top: 10px; margin-bottom: 30px; font-weight: bold;}
.objednavka .summary tr { height: 3em; }
.objednavka .summary td { text-align: right; }
.objednavka .summary td.sirsi { text-align: left; }
.objednavka .tlacitko { margin: 1em 0; }

.objednavka .orderbody table {width:100%;}

.objednavka .poukazimg {display: inline-block; vertical-align: top; width: 34%; margin-right: 6%;}
.objednavka .poukaztext {display: inline-block; vertical-align: top; width: 60%;}
.objednavka .poukaztext label { display: block; font-weight: bold;}
.objednavka .poukaztext input { width: 100%;}

/*========= prvky patičky ==============================================================*/
#paticka {background: var(--mainbarva); padding: 60px 0; }
#paticka h2 {font-size: 2em; color:#fff; }
#paticka .pat {display: inline-block; vertical-align: top; }
#paticka .patl { width: 36%; margin-right: 4%; color:#fff; }
#paticka .patl img { margin-right: 2em; }
#paticka .patr {width: 60%; background: #fff; position: relative; }

#paticka .split { display: inline-block; vertical-align: top;}
#paticka .split.spl1 { width: 55%; padding: 5.5% 5.5% 150px; min-height: 555px; position: relative; box-sizing: border-box; }
#paticka .split.spl1 h2{ margin: .5em 0 1em; color:#222; }
#paticka .split.spl2 { width: 45%; position: relative; overflow: hidden; height: 555px; }
#paticka .split.spl2 img { position: absolute; left:50%; top:50%; transform: translateX(-50%) translateY(-50%); max-width: none; }

#paticka .patasekce {background: left top no-repeat; padding-left: 40px; min-height: 40px; }
#paticka .patasekce.loc {background-image: url(/img/i_pin.png);}
#paticka .patasekce.tel {background-image: url(/img/i_phone.png);}
#paticka .patasekce.pst {background-image: url(/img/i_mail.png);}

#paticka .patalink { display: flex; align-items: center; justify-content: space-between; position: absolute; bottom:50px; left:10%; width: 80%; flex-wrap: wrap; }
#paticka .patalink a { flex-grow: 0; margin-right: 2em; margin-bottom: 1em; }

#paticka .fotokolo {position: absolute; width:110px; height: 110px; border:5px solid #fff; border-radius: 60px; overflow: hidden; left: calc( 55% - 60px ); bottom: 120px; }
#paticka .fotokolo img {position: absolute; left:50%; top:50%; transform: translateX(-50%) translateY(-50%);}

#paticka .tlacitko {color:#222; background: #fff;}
#paticka .tlacitko:hover {background: #ddd;}
.nwform input:not([type=checkbox]) {width: 100%; padding: .5em; border:0; background: #08a; color:#fff;}
.nwform input:focus {background-color: #fff; color:#222; }
.nwform input::placeholder {color: #fff; font-style: italic; opacity: 1;}
.nwform a {color:#fff; }

#zakonceni { display: none; padding: 1em 0 4em; position: relative;}
#zakonceni a { }

/*========= pro výměnu odkazů ==========================================================*/
.xch p {border-bottom: 1px solid #ddd; margin: 0; padding: .5em; width: auto;}
#xchlink {}

/*========= ostatní zbytečnosti ========================================================*/
@media (min-width: 689px){
   #cm.cloud {max-width: 800px; padding: 2em; }
   .cc_div .cloud #c-inr {display: flex;}
   .cc_div .cloud #c-inr-i {width: auto; flex-shrink: 1;}
   .cc_div .cloud #c-bns {max-width: 225px; width: 40%; font-size: 1.25em; text-align: center; }
   #cm.cloud #c-bns button + button.c-bn {display: inline-block; font-size: .82em; margin: 1.5em auto; float:none; padding: 0; background: #fff; width: auto; }
   #cm.cloud #c-bns button + button:hover {text-decoration: underline; cursor:pointer; }
}
@media (max-width: 689px){
   .cc_div .cloud #c-bns {display: flex; flex-direction:row; justify-content: space-between;}
   #cm.cloud .c-bn {width:auto; box-sizing: border-box;margin: 0; display: block; flex-basis: 45%; }
   #cm.cloud .c-bn:first-child {margin: 0; order:2}
   #cm.cloud #c-bns button + button.c-bn { background: #fff; order: 1; }
   #cm.cloud #c-bns button + button:hover {text-decoration: underline; cursor:pointer; }
}
:root {--cc-btn-primary-bg:var(--mainbarva); --cc-btn-secondary-hover-bg:#fff; }

.babish { text-align: left;}
a.ffff { background: url(/img/soc_ffff.png) left center no-repeat; display: block;min-height: 2em; padding-left: 2.5em; }
a.igrm { background: url(/img/soc_igrm.png) left center no-repeat; display: block;min-height: 2em; padding-left: 2.5em; }
a.ytub { background: url(/img/soc_ytub.png) left center no-repeat; display: block;min-height: 2em; padding-left: 2.5em; }

#modalbase {position: fixed; top:0; left:0; width: 100vw; bottom: 0; background: rgba(0,0,0,.6); z-index: 10000; }
#modaldialog {background: #fff; padding: 1.5em; box-sizing: border-box; position: absolute; width: 80vw; left: 0; right: 0; text-align: center; max-width: 500px;margin-left: auto; margin-right: auto; overflow:auto; }
#modaldialog .dialogclose {position: absolute; display: block; color:transparent; background: url(/img/ikona-smaz.png) center center no-repeat; right:0; top:0; width: 1.5em; height: 1.5em; }
#modaldialog .tlacitko { margin: 0 1.5em 1em;pointer-events: auto; }

#modaldialog.dialogkosik { top:20vh; }

#modaldialog.dialogparcelshop { top:5vh;bottom:5vh; max-width: none; width: 90vw; }
#modaldialog.dialogparcelshop .pplmapcontain{ height: 100%; box-sizing: border-box; position: relative; }
#modaldialog.dialogparcelshop #ppl-parcel-shop-map { height:100%; }
#modaldialog.dialogparcelshop #ppl-parcelshop-map .ppl-parcelshop-map {height:100%;}
#modaldialog.dialogparcelshop #ppl-parcelshop-map .control-panel {padding-top: 0;}
#modaldialog.dialogparcelshop #ppl-parcelshop-map .control-panel__logo-holder {padding: 20px 0; margin:0;}

#modaldialog.dialogdpdpickup { top:5vh;bottom:5vh; max-width: none; width: 90vw; }
#modaldialog.dialogdpdpickup .iframecontain {position: relative; width: 100%; height: 100%;}
#modaldialog.dialogdpdpickup iframe { width: 100%; height: 100%; border:0; }

#modaldialog.dialogbalikovnapickup { top:5vh;bottom:5vh; max-width: none; width: 90vw; }
#modaldialog.dialogbalikovnapickup .iframecontain {position: relative; width: 100%; height: 100%;}
#modaldialog.dialogbalikovnapickup iframe { width: 100%; height: 100%; border:0; }

#modaldialog.dialogpaymentgateway { top:5vh;bottom:5vh; max-width: none; width: 90vw; }
#modaldialog.dialogpaymentgateway .iframecontain {position: relative; width: 100%; height: 100%;}
#modaldialog.dialogpaymentgateway iframe { width: 100%; height: 100%; border:0; }

/*========= responzivity ===============================================================*/

@media (max-width:1169px) {
   .max-sirka {width: 92%; margin: auto 4%;}
   .uvodni #hgraphics { background-position: 55% top;}
   #hbottom form .field.sec input{ max-width: 120px;}
   #overit-skokmenu {display: none;}
   .subsekce.nobr .flexer {flex-wrap: wrap;}
   .subsekce .content.webframe { margin-bottom: 1em; }
   .obsah .quadbutton {display: flex; width: 100%; clear: both; align-items: center; justify-content: space-around; flex-wrap: wrap; }
   .obsah .quadbutton .tlacitko {min-width: 40%; text-align: center; margin: 1em 0; }
   #paticka .patl { width: 100%; margin-right: 0; }
   #paticka .patr { width: 100%; }
   #paticka .split.spl1 { min-height: 0; }
   .kform .r.tl { width: 54%; margin-left: 4% }
}

@media (max-width:999px) {
   .gallery { --sloupce:3; }
   .produkty { --sloupce:2; }
   #hslogan { padding:15px 0; height: auto; font-size: 25px;}
   #hslogan .big{ font-size:60px; line-height: 1.25em; }
   .neuvodni #hslogan {padding: 0; height: auto;}
   .neuvodni #hslogan p {font-size:40px;}
   .neuvodni #hslogan .heavydrop { position: static; padding: 120px 0 60px;}
   .neuvodni #hslogan .smol { font-size: 25px }
   .overpic #hgraphics {height: 650px; }
   #hstred {display: none;}
   #hbottom { padding-bottom: 30px; }
   #hbottom form {flex-wrap: wrap; }
   #hbottom form .field{ margin: 1em 0 0;}
   #hbottom form .field label {margin:0;}
   #hbottom form .field input,
   #hbottom form .field input[type="number"] {width: calc(100% - 2em); }
   #hbottom form .field.sec input { max-width: 160px;}
   #hbottom form .field.st1{ width: 45%;}
   #hbottom form .field.sline{ width: 22%;}
   #nhmenu {display: none;}
   #stranka { background-image: url(/img/bg_wood_m.webp); }
   #rozcestnik {flex-wrap: wrap;}
   #rozcestnik a {width: 46%; text-align: left; margin: 20px 4% 0 0;}
   #rozcestnik a .pix {display: inline-block; vertical-align: middle; width: 100px; height: 100px; margin:0 20px 0 0;}
   #rozcestnik a .txt {display: inline-block; vertical-align: middle; width: calc(90% - 120px);}
   .hmenu .hider { display:none!important; }
   #kosinfo {display: none;}
   .prodFiltr .vyrbox { width: 32.3%; }
   .kos table thead {display:none;}
   .kos table tbody {border-top: 1px solid #ccc; display: block;}
   .kos table tr {border-bottom: 1px solid #ccc; display: block; text-align: left;}
   .kos table td {display: inline-block; width: 33%; vertical-align: middle; height: auto; min-height: 2.5em; box-sizing: border-box;}
   .kos table td.pix {width: 25%; float:left; }
   .kos table td.odkazova {width: 75%; padding-top: .33em; }
   .kos table td.variantni {width: 100%; min-height: 0; }
   .kos table td.inputova {width: 45%;padding-right: 1em; }
   .kos table td.cenova {width: 45%; }
   .kos table td.napravo {width: 10%; }
   .kos table tr td.num {text-align: center;}
   .kos table tr.final td.cenova {width: 57%; padding: .33em 0;}
   .kos table tr.final td:first-of-type {width: 33%;}
   .kos table.adresni td.odkazova {width: 90%; }
   .produkt.v2 { 
      grid-template: 1fr auto / 75px 1fr minmax(5em,auto) auto; 
      grid-template-areas: 'foto nazev nazev nazev' 'cena cena sklad pright'; }
   .produkt.v2 .cena {text-align: right;}
}

@media (min-width: 1000px) {
   .hmenu .shower {display:none!important;}
   #xhmenu {display: none;}
   #hslogen .shower {display: none;}
}

@media (max-width:799px) {
   .podkat { --sloupce:2; }
   .gallery { --sloupce:2; }
}

@media (min-width:750px) {
   #hbottom form .field.skokmale {display: none;}
   #kat .shower {display: none;}
}
@media (max-width:749px) {
   .uvodni #hgraphics { background-size: 750px auto; background-position: center top;}
   h1 {font-size: 28px;}
   h2 {font-size: 25px;}
   #hlogo img {max-height:90px }
   #hbottom { padding-bottom: 30px;}
   #hbottom form .field{ width: 100%;}
   #hbottom form .field.st1{ width: 100%;}
   #hbottom form .field.sline{ width: 45%;}
   #hbottom form .field input{ height: .85em;  }
   #hbottom form .field.sec input { max-width: none;}
   #hbottom form .field.skokstred {display: none;}
   #hbottom form .tlacitko { width: 100%;}
   #stranka {padding-top: 30px;}
   #rozcestnik {margin-bottom: 30px;}
   .sl-ffff { max-width: 90%; }
   .uvodni .anotacka {font-size: 1.25em;}
   .kform,.sloupec-pravy {width: auto; margin: auto; float: none;}
   .subsekce { padding: 30px 0; }
   .subsekce .flexer { flex-wrap: wrap; }
   .subsekce .content { margin-bottom: 1em; max-width: 100%;}
   .subsekce .contpix {max-width: 100%; }
   .subsekce.lobr .content {order: 1;padding-left:0;}
   .subsekce.lobr .contpix {order: 2;}
   .subsekce.robr .content {padding-right:0; }
   .subsekce iframe {max-width: 100%;}
   #telo,.uvodni #telo,#telo.shopd{width: auto; margin: auto; float: none;}
   .sloupec-levy{width: auto; margin: 0 auto 1.5em; float: none;}
   #kat {display: none;}
}

@media (max-width:699px) {
   #nouicenaplace.noUi-horizontal { width: 85%; }
   #paticka .split.spl1 { width: 100%; min-height: 0; }
   #paticka .split.spl2 { width: 100%; height:260px; padding-top: 0; }
   #paticka .fotokolo {bottom:200px; left: calc(50% - 60px);}
   #paticka .patalink { left:5%; width: 90%;}
   #paticka .patalink a {margin-left:0; margin-right: 0; }
   #miniobj .pix { width: 100%; }
   #miniobj .afterpix {width: 100%; }
}

@media (max-width:649px) {
   #rozcestnik a {width: 100%; margin: 20px 0 0;}
   #rozcestnik a .pix {width: 60px; height: 60px; }
   #rozcestnik a .txt {width: calc(90% - 80px);}
   #miniobj .labeloffset label,#miniobj .labeloffset input {width: 100%;}
   #miniobj .fku, #miniobj .fop {width: 100%;}
   .prodFiltr .jslider { width: 85%; }
   .produkt.v2 .blox {display:inline-block; width: 31%; padding: .5em 1%;}
   .produkt.v2 .nazev { width: 94%; padding: 1em 3% .5em; height: auto; }
   .produkt.v2 .foto { display: none; }
}

@media (max-width:549px) {
   .obsah .left,.obsah .right { margin:.5em 0!important; float:none!important; display: block;}
   .simpleform p label {width: 42%;}
   .simpleform p.cb label { width: 75%; }
   .prodFiltr .vyrbox { width: 49%; }
   .produkt-det .fotosloupec { width: 100%;}
   .produkt-det .vpravo { float:none;width: 100%;}
   .produkt-det .resphid { display:none;}
   .produkt-det fieldset .omezovac {width: 95%;}
   .objednavka .adresa { width: 99%;}
   .objednavka .dodatky textarea { width: 53%; }
   .objednavka .dodatky label { width: 42%; }
   .objednavka .dodatky .cb label { width: 75%; }
}

@media (max-width:499px) {
   .uvodni #hgraphics { background-size: 550px auto; }
   #hslogan { font-size: 20px;}
   #hslogan .big{ font-size:35px; }
   .neuvodni #hslogan p {font-weight: bold;font-size:30px;}
   .neuvodni #hslogan .smol { font-size: 20px }
   .overpic #hgraphics {height: 650px; }
}

@media (max-width:469px) {
   .podkat { --sloupce:1; }
   .sl-rodina .ilust {top:-10px;}
   .sl-rodina .ilust img {width: 80px; height: 80px; }
   .sl-link {justify-content:space-around}
   .sl-link a { margin-left: 0; }
   .sl-link span {display: none;}
   .obsah .quadbutton .tlacitko {min-width: 85%; }
   .produkty { --sloupce:1; }
   .prodFiltr > div,.prodFiltr .settings > * {display: block;  }
   .prodFiltr .settings, .prodFiltr .h, .prodFiltr .prvky,.prodFiltr .sender { width: 100%; margin-left: 0; margin-right: 0;}
   .prodFiltr .sender { text-align: right }
   .prodFiltr .sender .tlacitko { padding-right: 1.5em; padding-left: 1.5em; width: auto }
   .objednavka .radioobj label .tab1 { width: 60%; }
   .objednavka .radioobj label .tab2 { display: none; }
   .objednavka .radioobj label .tab3 { width: auto; flex-grow: 1; flex-shrink: 1; text-align: right; }
}

@media (max-width:399px) {
   .kform .sloup {width: 100%;padding:0; }
}


@media (max-width:849px) and (min-width:750px), (max-width:549px) {
   .respgbg,.respgbg tbody,.respgbg tr,.respgbg td {display: block; width: 100%;}
}

@media (max-width: 999px) {
   .column5 > div {width: 33%; }
}
@media (max-width: 849px) {
   .column4 > div {width: 50%; }
}
@media (max-width:549px) {
   .column3 > div {width: 50%; }
   .column5 > div {width: 50%; }
}
@media (max-width:469px) {
   .column2 > div {width: 100%; }
}
