@charset "UTF-8";
/* Owlet – styly převzaté ze šablony template_general (Joomla), bez závislosti na MooTools.
   Původní JS přepínání tříd body_v1/v2/v3 je nahrazeno media queries na konci souboru. */

* {margin: 0; padding: 0; box-sizing: content-box;}
body {background: #383737; color: #2E2F30; position: relative; min-height: 100vh;
  font-family: 'Roboto', Arial, Verdana, 'Trebuchet MS', sans-serif; font-size: 16px; font-weight: 300; line-height: 1.3em; text-align: center;}

.clr {clear: both; height: 1px; overflow: hidden;}
.main_limit {margin: auto; text-align: left; position: relative; width: 1200px;}

/* ---------- obsah (content.css) ---------- */
h1, h2, h3, h4 {color: #2d3e27; font-weight: 400; padding: 0.5em 0 0.2em 0;}
h1 {font-size: 1.8em; line-height: 120%;}
h2 {font-size: 1.6em; line-height: 120%;}
h3 {font-size: 1.4em; line-height: 120%;}
h4 {font-size: 1.2em; line-height: 120%;}
.owletsro h1, .owletsro h2, .owletsro h3, .owletsro h4 {color: #015176;}

a {color: #2662A8;}
a:hover {text-shadow: 0 0 5px #555555;}
a img {border: 0;}
img {max-width: 100%; height: auto;}

ol li {margin: 0.2em 0 0.2em 1.7em; padding: 0 0 0 0.2em;}
ul li {margin: 0; padding: 0.2em 0 0.2em 1.5em; background: transparent url(../images/template/zob.png) 6px 8px no-repeat; list-style-type: none;}
p {padding: 5px 0;}
table {border-collapse: collapse; border-spacing: 0; font-size: 100%;}

.plnasirka {width: 100%; height: auto;}

.tabulka_kontakty td {vertical-align: top; padding: 0.2em 0.5em 0.2em 0; border-bottom: 1px solid #DBE6EA;}
.tabulka_kontakty tr td:first-child {width: 30%;}
.tabulka_kontakty td:nth-child(3) {white-space: nowrap;}
.tabulka_kontakty tr td:last-child {width: 30%; padding-right: 0;}

.loga img {vertical-align: middle; margin: 0 0.6em 0.6em 0;}

/* ---------- titulka ---------- */
.titulka_obsah {display: block;}
.titulka_obsah .item-page {display: flex; width: 100%;}
.tit_pol {flex: 1; width: 50%;}

/* mezery odpovídají původním prázdným odstavcům z editoru */
.tit_pol a {display: block; padding-top: 25px; text-decoration: none; transition: text-shadow .7s ease-in-out;}
.tit_pol a:hover {text-shadow: 0 0 15px black;}

.tit_pol strong {font-size: 1.7em; color: white; font-weight: 400; display: block; padding: 1em; margin: 5px 0 calc(13em + 35px) 0;}

.tit_vlevo {background: #76C4ED url(../images/template/owletsro_tit.png) center bottom repeat-x; position: relative; overflow: hidden; text-align: right; padding-right: 10%;}
.tit_vpravo {background: #8C8F24 url(../images/template/owletstav_tit.png) center bottom repeat-x; position: relative; overflow: hidden; text-align: left; padding-left: 10%;}
.tit_pol .text {margin-top: 25px;}
.tit_vlevo .text {width: 70%; margin-left: 30%; height: 8em; overflow: hidden;}
.tit_vpravo .text {width: 70%; margin-right: 30%; height: 8em; overflow: hidden;}
.tit_pol h2 {font-size: 1.4em; color: white;}
.tit_pol .logo {margin-top: 2em; position: relative; max-width: none;}
.tit_vlevo .logo {left: 3em;}
.tit_vpravo .logo {left: -3em;}
.tit_vlevo .obr {position: absolute; bottom: 0; right: 5%; max-width: none;}
.tit_vpravo .obr {position: absolute; bottom: 0; left: 5%; max-width: none;}

/* Původně JS (nastav_ratio): obrázky se zmenšují poměrem šířka_okna / 1200 * 0.9 (= 0.075vw na 1 px) */
.tit_vlevo .logo {width: min(289px, 21.675vw);}
.tit_vpravo .logo {width: min(335px, 25.125vw);}
.tit_pol .obr {width: min(504px, 37.8vw);}

.titulka_bottom p {text-align: center; color: white; padding: 1.5em; font-size: 1.4em;}

/* ---------- šablona podstránek ---------- */
.template_header {height: 70px;}
.template_header .main_limit {height: 100%;}
.template_header .header_vlevo {color: white; font-style: italic; font-size: 0.9em; position: absolute; width: 35%; bottom: 0.4em;}
.template_header .header_vlevo strong {font-weight: 700;}

.template_header ul.menu {width: 65%; position: absolute; top: 0; right: 0; text-align: right;}
.template_header ul.menu li {display: inline-block; list-style-type: none; padding: 0; margin: 0; background: none;}
.template_header ul.menu li a {display: inline-block; padding: 2em 1em 1em 1em; color: white; text-decoration: none; transition: background-image .5s ease-in-out;}
.owletsro .template_header ul.menu li.active a, .owletsro .template_header ul.menu li a:hover {background: transparent url(../images/template/owletsro_horni_active.png) top left repeat-x;}
.owletstav .template_header ul.menu li.active a, .owletstav .template_header ul.menu li a:hover {background: transparent url(../images/template/owletstav_horni_active.png) top left repeat-x;}

.template_slideshow {max-height: 300px; overflow: hidden; animation: zjev .8s ease-out;}
.template_slideshow .main_limit {height: 100%; overflow: hidden;}
.template_slideshow img {display: block; max-width: 100%;}
.owletsro .template_slideshow {background: #76C3ED url(../images/template/owletsro_slide.png) bottom left repeat-x;}
.owletstav .template_slideshow {background: #8C8F24 url(../images/template/owletstav_slide.png) bottom left repeat-x;}
@keyframes zjev {from {opacity: 0;} to {opacity: 1;}}

.prostredni {padding: 8px 0 0 0;}
.owletsro .prostredni {background: white url(../images/template/owletsro_pruh.png) top left repeat-x;}
.owletstav .prostredni {background: white url(../images/template/owletstav_pruh.png) top left repeat-x;}
.prostredni .main_limit {padding: 0; margin: 0 auto; background: #F2F6F9;}
.prostredni .main_limit::after {content: ""; display: block; clear: both;}

.left, .right {width: 20%; margin: 1%; float: left;}
.obsah {width: 52%; margin: 1% 2%; border-top: 2px solid #DBE6EA; float: left;}
/* bez pravého sloupce (Novinky) se obsah roztáhne */
.bez_praveho .obsah {width: 74%;}

.modul {margin-bottom: 0.5em; font-size: 0.8em; background: white;}
.modul_body {padding: 0.7em;}
.modul.cisty {background: transparent;}
.modul.cisty .modul_body {padding: 0;}
.modul._menu {font-size: 1em;}
.modul .prepinac img {display: block; width: 100%;}
.modul .prepinac p {padding: 5px 0;}
.modul.cisty .prepinac p {padding: 0;}

.left ul.menu li {margin: 0; padding: 0; list-style-type: none; background: none;}
.left ul.menu li a {display: block; padding: 0.7em; background: white; color: #2E2F30; font-weight: 500; border-bottom: 1px solid #e2eff6; text-decoration: none;}
.owletsro .left ul.menu li.active {background: #5093B7 url(../images/template/owletsro_menu_active.png) top left repeat-x;}
.owletstav .left ul.menu li.active {background: #74771F url(../images/template/owletstav_menu_active.png) top left repeat-x;}
.left ul.menu li.active a {color: white; background: transparent url(../images/template/zob_bily_p.png) 95% center no-repeat;}

.template_bottom {padding: 2em 0 5em 0; color: #757374; font-size: 0.8em;}
.template_bottom a {color: #757374; text-decoration: none;}
.template_bottom li {background: transparent; padding: 0; margin: 0; list-style-type: none;}
.template_bottom p {padding: 0;}
.bottom1, .bottom2 {float: left; width: 30%; margin-right: 5%;}
.bottom3 {float: left; width: 30%;}

.copyright {height: 3em; position: absolute; bottom: 0; width: 100%;}
.copyright .main_limit {padding: 0.8em 0;}
.owletsro .copyright {background: #65ABCF; color: #427797;}
.owletstav .copyright {background: #8C8F24; color: #5D5E10;}

/* ---------- mapa ---------- */
.mapa {margin: 0.8em 0;}
.mapa iframe {display: block; width: 100%; height: 450px; border: 0;}

/* ---------- fotogalerie ---------- */
.jg_galerie {width: 100%; padding: 5px 0;}
.jg_polozka {display: inline-block; padding: 3px; border: 1px solid white; box-shadow: 1px 1px 7px -3px black; border-radius: 4px; margin: 3px; transition: box-shadow .5s ease-in-out, background .5s ease-in-out;}
.jg_polozka img {display: block; border-radius: 3px;}
.jg_polozka:hover {background: #8A8D24; box-shadow: 1px 1px 7px 0 black;}
.jg_polozka:hover img {opacity: 0.8;}

.lightbox {position: fixed; inset: 0; z-index: 1000; background: rgba(0,0,0,.8); display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 1em; box-sizing: border-box; cursor: pointer;}
.lightbox[hidden] {display: none;}
.lightbox img {max-width: 100%; max-height: calc(100% - 3em); border: 8px solid white; border-radius: 3px; box-sizing: border-box; cursor: default;}
.lightbox p {color: white; padding-top: 0.5em;}
.lightbox button {position: absolute; background: none; border: 0; color: white; font-size: 2.5em; line-height: 1; cursor: pointer; padding: 0.3em; font-family: inherit;}
.lightbox .zavrit {top: 0; right: 0;}
.lightbox .predchozi {left: 0; top: 50%; transform: translateY(-50%);}
.lightbox .dalsi {right: 0; top: 50%; transform: translateY(-50%);}

/* ---------- responzivita (dříve body_v1 / body_v2 / body_v3 z template.js) ---------- */
@media (max-width: 1199px) {
  body {font-size: 15px;}
  .main_limit {width: 96%;}
}
@media (max-width: 839px) {
  body {font-size: 13px;}
  .main_limit {width: 93%;}
  .prostredni .main_limit > * {float: none; width: 98% !important; margin: 1% !important;}
  .left .prepinac img {width: 50%;}
  .template_header {height: 90px;}
  .template_header .header_vlevo {width: 100%;}
  .template_header ul.menu {width: 100%;}
}
@media (max-width: 479px) {
  body {font-size: 11px;}
  .main_limit {width: 90%;}
  /* titulka: poloviny pod sebou */
  .titulka_obsah .item-page {flex-direction: column;}
  .tit_pol {width: auto; text-align: center !important; padding: 0 5% !important;}
  .tit_pol .text {width: auto !important; margin: 1em 0 0 0 !important; height: auto;}
  .tit_pol .logo {left: 0 !important; width: 60vw;}
  .tit_pol strong {margin-bottom: 52vw;}
  .tit_vlevo .obr, .tit_vpravo .obr {width: 80vw; left: 10vw; right: auto;}
  .bottom1, .bottom2, .bottom3 {width: 100%; margin: 0; float: none;}
}
