﻿/*
 *
 * MUZEUM PODBLANICKA
 * Author: Martin Winkler
 * url: http://www.martinwinkler.cz/
 *
 */

/************************************************************************************
RESET
*************************************************************************************/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, figure, footer, header, hgroup, menu, nav, section, menu,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

ol, ul { list-style: none !important; }

blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after { content: ''; content: none; }

:focus { outline: 0; }

table { border-collapse: collapse; border-spacing: 0; }

article, aside, figure, footer, header, hgroup, nav, section, img { display: block; }

input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; *vertical-align: baseline; }

label, input[type=button], input[type=submit], button { cursor: pointer; overflow: visible; }

em, i { font-weight: inherit; }

/************************************************************************************
FONTS
*************************************************************************************/

@font-face {
    font-family: 'montserratbold';
    src: url('../font/montserrat-bold-webfont.woff2') format('woff2'),
         url('../font/montserrat-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'montserratregular';
    src: url('../font/montserrat-regular-webfont.woff2') format('woff2'),
         url('../font/montserrat-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/************************************************************************************
GENERAL
*************************************************************************************/

html { height: 100%; }

body {
	font-family: 'Roboto',sans-serif;
	font-size: 17px;
	line-height: 1.8em;
	color: #000;
	background: #fff;
	margin: 0;
	padding: 0;
	min-height: 100%;
}

/* Box sizing */

*, *:after, *:before { box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }

/* Anchors */

a { color: #4b76aa; text-decoration: underline; }
a:hover { text-decoration: none; }

/* Heading */

h1, .h1 { font: 400 28px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 30px 0; }
h2, .h2 { font: 400 23px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 10px 0; }
h3, .h3 { font: 400 20px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 10px 0; }
h4, .h4 { font: 400 17px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 10px 0; }
h5, .h5 { font: 400 15px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 10px 0; }
h6, .h6 { font: 400 14px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin: 0 0 10px 0; }

/* Paragraphs */

p { margin: 0 0 20px 0; }
address { font-style: normal; }
cite { font-style: normal; }

/* Lists */

ul, ol { list-style: none; margin: 0 0 20px 0; }
ul li { padding: 0 0 0 20px; background: none; margin: 0 0 5px 0; }
ul.unstyled li { padding: 0; background: none; }

ol { counter-reset: counter; margin-left: 0; *margin-left: 54px; }
ol li { margin: 0 0 10px 0; padding: 0 0 0 20px; *list-style-type: decimal; counter-increment: counter; position: relative; }
ol li:before { color: #2285c8; content: counter(counter)'. '; position: absolute; left: 0; top: 0; }

dl { margin: 0 0 20px 0; }
dt { font-weight: bold; }

/* Forms */

form { display: block; }
fieldset { border: none; }
label { font-weight: bold; }
input, select, button { vertical-align: top; }

/* Various */

sup,sub { height: 0; line-height: 1; vertical-align: baseline; _vertical-align: bottom; position: relative; }
sup { bottom: 1ex; }
sub { top: .5ex; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

p.small { font-size: 70%; }
p.big { font-size: 130%; }

img { max-width: 100%; height: auto; }

.bold { font-weight: bold; }
.nowrap, .nobr { white-space: nowrap !important; }

/* Alignment */

.v-top { vertical-align: top; }
.v-middle { vertical-align: middle; }
.v-bottom { vertical-align: bottom; }

.l { float: left; }
.r { float: right; }
.a-l { text-align: left; }
.a-r { text-align: right; }
.a-c { text-align: center; }

.edit-link { display: block; }

/************************************************************************************
HEADER
*************************************************************************************/

.header { padding: 0; background: #6f9acf; }
.header .logo { display: block; position: absolute; left: 15px; top: 25px; }
.header .h_1 { height: 100px; }
.header .h_2 { border-top: 1px solid rgba(255,255,255,0.35); }

.header .header-r { float: right; text-align: right; padding-top: 31px; }
.header .header-r .logo-str { display: inline-block; vertical-align: top; margin-right: 30px; }
.header .fb-link { text-decoration: none; }
.header .fb-link .icon { display: inline-block; vertical-align: top; color: #fff; width: 34px; height: 34px; padding: 6px; text-align: center; line-height: 26px; border: 2px solid #fff; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }
.header .fb-link:hover .icon { background: #fff; color: #6f9acf; }
.header .search { display: inline-block; vertical-align: top; position: relative; margin-left: 30px; width: 100%; max-width: 190px; }
.header .search input.text { height: 34px; border: none; }
.header .search button { width: 34px; height: 34px; border: none; position: absolute; right: 0; top: 0; background: none; color: #6f9acf; }

/* Main navigation */

.main-nav { margin: 0; }
.main-nav ul { margin: 0; display: table; width: 100%; border-right: 1px solid rgba(255,255,255,0.35); }
.main-nav ul li { padding: 0; margin: 0; background: none; display: table-cell; border-left: 1px solid rgba(255,255,255,0.35); }
.main-nav ul li span { position: relative; display: block; }
.main-nav ul li a { font-family: 'montserratregular'; font-size: 14px; font-weight: 400; display: block; color: rgba(255,255,255,0.8); text-decoration: none; height: 54px; line-height: 54px; text-align: left; padding-left: 30px; padding-right: 30px; }
.main-nav ul li a:hover,
.main-nav ul li:hover a,
.main-nav ul li.active a,
.main-nav ul li.current-menu-item a { color: #fff; background: #618cc0; }
.main-nav ul li.current-page-parent a { color: #fff; background: #618cc0; }

.main-nav ul li.menu-item-has-children > span:after { content: ''; position: absolute; right: 20px; top: 50%; margin-top: -2.5px; width: 0; height: 0; border-style: solid; border-width: 5px 4px 0 4px; border-color: #ffffff transparent transparent transparent; }

.main-nav ul.sub-menu { display: none; position: absolute; left: 0; top: 54px; z-index: 500; background: #6f9acf; width: 230px; }
.main-nav ul.sub-menu li { display: block; padding: 0; background: none; text-align: left; border: none; }
.main-nav ul.sub-menu li a { display: block; text-align: left; height: auto; line-height: 25px; padding: 12px 20px; position: relative; background: #618cc0; color: rgba(255,255,255,0.8); }
.main-nav ul.sub-menu li a:hover { color: #fff; }
.main-nav ul.sub-menu li a:after { content: ''; width: 190px; height: 1px; display: block; position: absolute; left: 20px; bottom: 0; background: rgba(255,255,255,0.35); }
.main-nav ul.sub-menu li:last-child a:after { content: none; }

.main-nav ul li:hover ul { display: block !important; }

/* Mobile nav */

.nav-btn { padding: 10px; display: none; vertical-align: top; float: right; }
.nav-btn span { width: 30px; height: 5px; border-bottom: 13px double #fff; border-top: 4px solid #fff; content:""; display: block; text-decoration: none; box-sizing: content-box; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; }

.mobile-nav { background: #6f9acf; height: 100%; position: fixed; right: 0; top: 0; z-index: 2000; overflow-y: scroll; width: 100%; max-width: 320px; padding: 50px 0 0 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: translate(100%,0);
    -moz-transform: translate(100%,0);
    -ms-transform: translate(100%,0);
    -o-transform: translate(100%,0);
    transform: translate(100%,0);
}
.mobile-nav.active {
    -webkit-transform: translate(0,0);
    -moz-transform: translate(0,0);
    -ms-transform: translate(0,0);
    -o-transform: translate(0,0);
    transform: translate(0,0);
}
.mobile-nav .close { font-size: 30px; width: 15px; height: 15px; position: absolute; right: 15px; top: 10px; color: #fff; text-decoration: none; }
.mobile-nav .close .icon { width: 15px; height: 15px; }
.mobile-nav .close:hover { color: #fff; }
.mobile-nav .mm-title { display: none; }
.mobile-nav ul { margin: 0; padding: 0; border-bottom: 1px solid rgba(255,255,255,0.2); }
.mobile-nav ul li { font-size: 18px; color: #fff; margin: 0; padding: 0; background: none; border: none; border-top: 1px solid rgba(255,255,255,0.2); }
.mobile-nav ul li.active a { background: rgba(0,0,0,0.2); }
.mobile-nav ul li.last { border: none; }
.mobile-nav ul li a,
.mobile-nav ul li span.link { font-size: 15px; font-weight: 400; display: block; width: 100%; padding: 15px 20px; color: #fff; border: none; position: relative; text-decoration: none; }
.mobile-nav ul li.reservation { padding-top: 30px; border: none; }
.mobile-nav ul li.reservation a { font: 600 15px/20px 'montserratbold',sans-serif; width: auto; display: inline-block; vertical-align: top; border: 0; text-decoration: none; background: #f30c48; /*border-radius: 4px;*/ box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15), 0 3px 0 #e0e0e0; color: #fff; cursor: pointer; font-weight: 600; padding: 15px 30px 11px 30px; text-transform: uppercase; transition: all .05s linear; }
.mobile-nav ul li.reservation a:active { box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 0 #e0e0e0; transform: translateY(2px); }
.mobile-nav ul li span.more { position: absolute; right: 0; top: 0; width: 47px; height: 100%; background: #6790c2; /*background: #f6f6f6 url('../img/sprite.png') -116px -35px no-repeat;*/ }
.mobile-nav ul li span.more:before { content: ''; position: absolute; left: 20px; top: 24px; display: inline-block; width: 0.7em; height: 0.7em; border-left: 0.15em solid #fff; border-bottom: 0.15em solid #fff; transform: rotate(-45deg); margin-right: 0.5em; display: block; }

.mobile-nav ul ul { display: none; border-top: none; border-bottom: none; }
.mobile-nav ul ul.active { display: block; }
.mobile-nav ul ul li a { background: #6790c2; padding-left: 40px; }

.mobile-nav ul ul ul li a { padding-left: 70px; }

.mobile-nav-overlay { position: fixed; left: 0; top: 0; z-index: 100; width: 100%; height: 100%; background: rgba(0,0,0,0.9); display: none; }

/************************************************************************************
CONTENT
*************************************************************************************/

.content { padding: 0; }

/* Block */

.block { padding: 50px 0; position: relative; }
.block.narrow { padding: 20px 0; }

.block.alt { background: #f3f3f3; }

.block.alt-2 { background: #6f9acf; color: #fff; }
.block.alt-2 h2 { color: #fff; }
.block.alt-2 a { color: #fff; }

.block.alpha { padding-top: 0; }
.block.omega { padding-bottom: 0; }

.content-col { padding: 70px 55px 70px 0; margin-right: 40px; border-right: 1px solid #e5e5e5; }

.sidebar { padding: 70px 0; float: right; }

.anchor { position: absolute; left: 0; top: 0; }

.narrow-col { max-width: 700px; margin-left: auto; margin-right: auto; }

/* Section head */

.section-head { text-align: center; margin: 0 auto 30px auto; }
.section-head h2 { margin: 0; color: #555; }
.section-head h3 { margin: 0; color: #555; }

.section-head-l { text-align: left; margin: 0 auto 30px auto; }
.section-head-l h2 { margin: 0; color: #555; }
.section-head-l h3 { margin: 0; color: #555; }

.intro { text-align: center; max-width: 800px; margin: 0 auto 30px auto; }

/* Teaser */

.teaser { margin: 0; }
.teaser .info { margin-bottom: 20px; }
.teaser .date { font-size: 14px; height: 32px; line-height: 20px; background: #8eb4e3; color: #fff; display: inline-block; vertical-align: top; padding: 6px 20px; }
.teaser .place { font-size: 14px; height: 32px; line-height: 20px; color: #fff; display: inline-block; vertical-align: top; padding: 6px 20px; }

.teaser-content { height: 537px; padding-bottom: 90px; padding-left: 1px; position: relative; z-index: 50; }
.teaser-content h1 { margin-bottom: 10px; }
.teaser-content a { text-decoration: none; }
.teaser-content p { line-height: 1.8em; }
.teaser-content ul li { position: relative; color: #4b76aa; }
.teaser-content ul li:before { content: ''; position: absolute; left: 0; top: 10px; width: 8px; height: 8px; border: 1px solid #4b76aa; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }
.teaser-content .va-m { background: rgba(255,255,255,0.8); padding: 30px 30px 30px 30px; position: relative; top: 50%; display: block; height: auto; max-width: 500px; -webkit-transform: translate(0,-50%); -moz-transform: translate(0,-50%); -ms-transform: translate(0,-50%); -o-transform: translate(0,-50%); transform: translate(0,-50%); }

/* Teaser alt */

.teaser.alt { padding: 40px 0; background: url('../img/teaser.jpg') center center no-repeat; position: relative; }
.teaser.alt h1 { font-size: 35px; margin: 0; position: relative; z-index: 40; }
.teaser.alt:after { display: none !important; content: ''; z-index: 20; position: absolute; left: 0; top: 0; z-index: 10; width: 100%; height: 100%; background: url('../img/glow.png') center center no-repeat; }

/* Teaser object */

.teaser.teaser-object { position: relative; }
.teaser.teaser-object .teaser-content { height: 538px; }
.teaser.teaser-object .teaser-content h1 { margin-bottom: 10px; }
.teaser.teaser-object .teaser-content .va-m { background: rgba(255,255,255,0.8); padding: 30px 30px 10px 30px; }
.teaser.teaser-object:after { display: none !important; content: ''; z-index: 20; position: absolute; left: 0; top: 0; z-index: 10; width: 100%; height: 100%; background: url('../img/glow.png') center center no-repeat; }
.teaser.teaser-object h1 { position: relative; }
.teaser.teaser-object ul { padding-top: 30px; }
.teaser.teaser-object ul li { font-weight: 600; }

/* Teaser bar */

.teaser-bar { position: absolute; left: 0; bottom: 0; width: 100%; display: table; }
.teaser-bar ul { margin: 0; display: table-row; }
.teaser-bar ul li { padding: 0; background: none; display: table-cell; width: 20%; vertical-align: middle; }
.teaser-bar ul li:last-child a { border-right: none; }
.teaser-bar ul li:before { content: none; }
.teaser-bar ul li a { font-family: 'montserratregular',sans-serif; font-size: 14px; line-height: 20px; font-weight: 400; height: 80px; text-decoration: none; color: #fff; padding: 20px 20px 10px 20px; background: rgba(111,154,207,1); display: block; border-right: 1px solid rgba(255,255,255,0.35); }
.teaser-bar ul li a:hover { background: rgba(111,154,207,1); background: #618cc0; }
.teaser-bar ul li a .icon { width: 40px; height: 40px; display: inline-block; margin: 0 10px 0 0; float: left; color: rgba(255,255,255,0.6); }
.teaser-bar ul li a .icon-map { width: 45px; height: 45px; }
.teaser-bar ul li a .text { padding-left: 50px; display: block; position: relative; top: 50%; height: auto; margin-top: -4px; -webkit-transform: translate(0,-50%); -moz-transform: translate(0,-50%); -ms-transform: translate(0,-50%); -o-transform: translate(0,-50%); transform: translate(0,-50%); }

/* Objects */

.objects { margin: -92px 0 0 0; }
.objects .item-list { margin: 0 0 0 -30px; }
.objects .item { font-family: 'montserratregular',sans-serif; width: 33.33333%; margin: 0; padding-left: 30px; }
.objects .item .head { font-size: 20px; line-height: 1.3em; height: 92px; padding: 0 20px 0 20px; background: #fff; display: flex; align-items: center; text-decoration: none; }
.objects .item .text { font-size: 15px; font-weight: 400; color: #fff; padding: 20px 20px; }
.objects .item .text ul { margin: 0 0 -5px 0; }
.objects .item .text ul li { padding: 0 0 0 30px; background: none; margin: 0 0 5px 0; position: relative; overflow: hidden; text-overflow: ellipsis; }
.objects .item .text ul li .icon { position: absolute; left: 0; top: 3px; }
.objects .item .text a { color: #fff; }

.sidebar .objects { margin: 0; max-width: 360px; }
.sidebar .objects .item { width: 100%; margin-bottom: 40px; }
.sidebar .objects .item .head { background: #f8f8f8; }

.objects.list { margin-top: 0; }
.objects.list .item .head { background: #f8f8f8; }

/* Events */

.events .item-list { margin-left: -30px; margin-bottom: -30px; }
.events .item { font-size: 15px; width: 50%; padding-left: 30px; margin-bottom: 30px; }
.events .item-inner { padding: 20px; background: #f8f8f8; color: #555; border: 1px solid #e5e5e5; position: relative; }
.events .item-inner .edit-link { visibility: hidden; position: absolute; right: 10px; bottom: 10px; }
.events .item-inner:hover .edit-link { visibility: visible; }
.events .item .img { float: left; display: block; width: 150px; /*height: 210px;*/ /*box-shadow: 0 0 2px 0 rgba(0,0,0,0.4);*/ background: #fff; }
.events .item .text { padding: 0 0 0 180px; /*background: #f8f8f8;*/ margin: 0; }
.events .item .text h2 { font-size: 18px; line-height: 1.6em; }
.events .item .text ul li { background: none; position: relative; margin: 0; }
.events .item .text ul li:before { content: ''; position: absolute; left: 2px; top: 13px; width: 6px; height: 6px; border: 1px solid #666; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }
.events .item .date { font-size: 13px; margin-bottom: 5px; }
.events .item .date .icon { width: 16px; height: 16px; margin-right: 5px; top: 6px; color: #b6b6b6; }

.events.latest .item { margin-bottom: 0; }

.events.archive .item-inner { padding: 0 0 20px 0; border: none !important; border-bottom: 1px solid #e5e5e5 !important; }
.events.archive .item .text { padding-left: 180px; }

.content-col .events .item { width: 100%; }
.content-col .events .item-inner { background: #fff; }
.content-col .events .item h2 { margin-top: 0; }
/*.content-col .events .item ul li:before { content: none; }*/

.block.alt .events .item .text { background: none; }
.block.alt .events .item-inner { background: #fff; }

/* Colors */

.objects .item.zamek-vlasim .head { color: #b54a73; border-top: 5px solid #b54a73; }
.objects .item.zamek-vlasim .text { background: #b54a73; }

.objects .item.pobocka-benesov .head { color: #8ca9cd; border-top: 5px solid #8ca9cd; }
.objects .item.pobocka-benesov .text { background: #8ca9cd; }

.objects .item.zamek-ruzkovy-lhotice .head { color: #93a56d; border-top: 5px solid #93a56d; }
.objects .item.zamek-ruzkovy-lhotice .text { background: #93a56d; }

.place.zamek-vlasim { background: #b54a73; }
.place.pobocka-benesov { background: #8ca9cd; }
.place.zamek-ruzkovy-lhotice { background: #93a56d; }

.events .item.zamek-vlasim .item-inner { border-top: 2px solid #b54a73; }
.events .item.zamek-vlasim a:not(.btn) { color: #b54a73; }
.events .item.zamek-vlasim a.btn { background: #b54a73; }
.events .item.zamek-vlasim a.btn:hover { background: #8d3356; }

.events .item.zamek-ruzkovy-lhotice .item-inner { border-top: 2px solid #93a56d; }
.events .item.zamek-ruzkovy-lhotice a:not(.btn) { color: #93a56d; }
.events .item.zamek-ruzkovy-lhotice a.btn { background: #93a56d; }
.events .item.zamek-ruzkovy-lhotice a.btn:hover { background: #73844f; }

.events .item.pobocka-benesov .item-inner { border-top: 2px solid #8ca9cd; }
.events .item.pobocka-benesov a:not(.btn) { color: #8ca9cd; }
.events .item.pobocka-benesov a.btn { background: #8ca9cd; }
.events .item.pobocka-benesov a.btn:hover { background: #6a89ae; }

/* Quick contact */

.quick-contact { font-family: 'montserratregular',sans-serif; text-align: right; padding: 30px 0; }
.quick-contact .head { font-size: 20px; line-height: 1.3em; float: left; }
.quick-contact ul { text-align: left; margin: 0 0 -20px -30px; display: inline-block; vertical-align: top; }
.quick-contact ul li { display: inline-block; vertical-align: top; padding-left: 40px; margin: 0 0 20px 30px; position: relative; }
.quick-contact ul li .icon { position: absolute; left: 0; top: 0; }
.quick-contact .icon { display: inline-block; vertical-align: top; color: #fff; width: 34px; height: 34px; padding: 6px; text-align: center; line-height: 26px; border: 2px solid #fff; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }

/* Partners */

.partners { padding: 35px 0 30px 0; text-align: right; }
.partners .head { font-size: 20px; line-height: 1.3em; float: left; color: #555; margin: 0; padding-top: 30px; }
.partners ul { display: inline-block; vertical-align: top; margin: 0; }
.partners ul li { display: inline-block; vertical-align: top; padding-left: 80px; }
.partners img { display: inline-block; vertical-align: middle; opacity: 0.5; -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); filter: gray; /* IE 6-9 */ }

/* Logos */

.logos { padding: 40px 0 20px 0; vertical-align: middle; line-height: 100px; }
.logos a { text-decoration: none; }
.logos img { display: inline-block; vertical-align: middle; }
.logos img.grey { opacity: 0.5; -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); filter: gray; /* IE 6-9 */ }
.logos .alt { text-align: right; float: right; }
.logos .item-list { margin-left: -30px; display: inline-block; vertical-align: top; }
.logos .item { padding-left: 30px; margin-bottom: 20px; }
.logos .item-inner { border: 1px solid #e3e3e3; padding: 15px; }

/* Price list */

.price-list { margin-bottom: 30px; }
.price-list .box { padding: 30px; background: #fff; border: 2px solid #e5e5e5; }
.price-list .box .boxed { margin: 0 -30px -30px -30px; padding: 30px 30px 10px 30px; background: #f3f3f3; }

/* Addresses */

.addresses { border-bottom: 2px solid #e3e3e3; padding-bottom: 30px; margin-bottom: 50px; }
.addresses .item-list { margin-left: -50px; }
.addresses .item { width: 50%; padding-left: 50px; margin-bottom: 30px; }
.addresses .item h3 { font-size: 20px; line-height: 1.3em; margin: 0 0 5px 0; }
.addresses .item ul { margin: 0; }
.addresses .item ul li { padding: 0; background: none; margin: 0; }
.addresses .item ul li:before { content: none; }
.addresses .item .img { float: left; width: 220px; height: 150px; }
.addresses .item .text { padding-left: 250px; }

/* Contacts */

.contacts .item-list { margin-left: -30px; }
.contacts .item { width: 33.33333%; padding-left: 30px; margin-bottom: 30px; }
.contacts .item .img { margin: -30px -20px 20px -20px; }
.contacts .item .name { font: 400 18px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin-bottom: 10px; }
.contacts .item .job { margin-bottom: 10px; color: #666; }
.contacts .item .phone { font-size: 15px; font-weight: 600; margin-bottom: 0; }
.contacts .item .mail { font-size: 15px; font-weight: 600; margin-bottom: 5px; }
.contacts .item .mail .icon { margin-right: 2px; top: 6px; }
.contacts .item-inner { padding: 40px 20px 20px 20px; background: #f8f8f8; text-align: center; }

/* Expositions */

.expositions { margin: 0 auto; text-align: center; }
.expositions .item-list { margin-left: -30px; }
.expositions .item { width: 100%; padding-left: 30px; margin-bottom: 30px; }
.expositions .item-inner { padding: 30px; text-align: left; background: #222; }
.expositions .item .img { width: 360px; float: left; }
.expositions .item .text { color: rgba(255,255,255,0.7); padding: 0 0 0 390px; }
.expositions .item h3 { font-size: 20px; line-height: 1.5em; color: #fff; }
.expositions .item .btn { color: #fff; border: 2px solid #fff; padding: 12px 30px; background: none; }
.expositions .item .btn:hover { background: #fff; color: #222; }
.expositions .item:last-child { margin-bottom: 0; }

/* Programs */

.programs { margin: 0 auto; position: relative; }
.programs h2 { margin-bottom: 10px; }
.programs .item-list { margin-left: 0; }
.programs .item { width: 100%; padding-left: 0; margin-bottom: 30px; }
.programs .item-inner { padding: 0; position: relative; }
.programs .item .img { width: 200px; min-height: 135px; background: #e3e3e3; display: block; position: absolute; left: 0; top: 0; }
.programs .item .text { padding-left: 230px; }
.programs .item .text h3 { margin-top: 0; }

/* Publications */

.publications { margin: 50px auto 40px auto; position: relative; }
.publications h2 { margin-bottom: 10px; }
.publications .item-list { margin-left: -10px; }
.publications .item { width: 25%; padding-left: 10px; margin-bottom: 10px; }
.publications .item-inner { padding: 20px 20px 20px 20px; position: relative; border: 1px solid #e3e3e3; display: block; }
.publications .item .img { display: block; width: 55px; min-height: 80px; margin-bottom: 20px; background: #f8f8f8; float: left; }
.publications .item .text { margin: 0; padding-left: 75px; }
.publications .item .text h3 { font-size: 18px; font-family: 'montserratregular',sans-serif; font-weight: 400; margin-top: 0; margin-bottom: 10px; }
.publications .item .text .info { text-align: left; }
.publications .item .text .info .price { margin-bottom: 10px; display: block; }
.publications .item .order { background: #f3f3f3; padding: 20px; margin: 0 -20px -20px -20px; }
.publications .item .order .btn { color: #4c7ab4; border: 2px solid #4c7ab4; background: none; padding: 7px 10px; }
.publications .item .order .btn:hover { color: #fff; background: #4c7ab4; }
.publications .item .order .input { display: inline-block; vertical-align: top; margin-right: 10px; }
.publications .item .order .input input.text { height: 38px; width: 35px; padding: 5px 5px; }
.publications .item .order .unit { display: inline-block; vertical-align: top; line-height: 38px; }
.publications .item .edit-link { font-size: 11px; display: inline; position: absolute; right: 20px; bottom: 15px; visibility: hidden; }

.publications .item-inner:hover .order { visibility: visible; }
.publications .item-inner:hover .edit-link { visibility: visible; }

/* Gmap */

.map-wrapper { width: 100%; height: 400px; position: relative; }
.map-wrapper .map-box { position: absolute; left: 20px; top: 20px; z-index: 20; width: 340px; padding: 30px; background: #fff; }
.map-wrapper .map-box ul li { padding: 0; background: none; }

.acf-map { width: 100%; height: 400px; }
.acf-map .head { font: 400 16px/1.3em 'montserratregular',sans-serif; color: #4b76aa; margin-bottom: 5px; }
.acf-map img { max-width: inherit !important; }
.acf-map ul { margin: 0; }
.acf-map ul li { padding: 0; background: none; }

.smap { width: 100%; height: 400px !important; }
.smap img { max-width: inherit; }

.gmap { width: 100%; height: 220px; }
.gmap img { max-width: inherit; }

.popup-contact { font-size: 15px; background: #fff; color: #000; width: 190px; height: 80px; padding: 10px; }
.popup-contact ul { margin: 0; }
.popup-contact ul li { padding: 0; background: none; }

/* Pager */

.pager { margin: 30px 0; text-align: center; position: relative; }
.pager li { display: inline-block; vertical-align: top; padding: 0; background: none; }
.pager li a { display: block; width: 36px; height: 36px; line-height: 36px; background: #e3e3e3; text-align: center; }
.pager li a.active { background: #4045bf; color: #fff; text-decoration: none; }
.pager .prev { position: absolute; left: 0; top: 0; }
.pager .next { position: absolute; right: 0; top: 0; }
.pager .counter { display: none; }

/* Box */

.box-shop { padding: 25px 200px 25px 20px; position: relative; background: #f3f3f3; }
.box-shop p { margin: 0; }
.box-shop .btn { position: absolute; right: 20px; top: 20px; }

/* Colors */

body.vlasim h1,
body.vlasim h3,
body.vlasim .icon { color: #b54a73; }
body.vlasim .block.alt-2,
body.vlasim .btn,
body.vlasim .teaser-bar ul li a { background: #b54a73; }
body.vlasim .teaser-bar ul li a:hover { background: #9e4064; }
body.vlasim .entry .price-list table { border-top: 2px solid #b54a73; }

body.lhotice h1,
body.lhotice h3,
body.lhotice .icon { color: #93a56d; }
body.lhotice .block.alt-2,
body.lhotice .btn,
body.lhotice .teaser-bar ul li a { background: #93a56d; }
body.lhotice .teaser-bar ul li a:hover { background: #73844f; }
body.lhotice .entry .price-list table { border-top: 2px solid #93a56d; }
/*
body.benesov h1,
body.benesov h3,
body.benesov .icon { color: #8ca9cd; }
body.benesov .block.alt-2,
body.benesov .btn,
body.benesov .teaser-bar ul li a { background: #8ca9cd; }
body.benesov .teaser-bar ul li a:hover { background: #6a89ae; }
body.benesov .entry .price-list table { border-top: 2px solid #8ca9cd; }
*/
/*================================= Various Content =================================*/

.last { margin-bottom: 0 !important; }

/* Buttons */

.btn, .sendbutton { font: 400 15px/20px 'montserratregular',sans-serif; padding: 10px 30px; background: #6f9acf; color: #fff; display: inline-block; vertical-align: top; border: none; text-decoration: none; position: relative; }
.btn:hover, .sendbutton:hover { background-color: #4c7ab4; }

/* Vertical align */

.va-wrap { display: table; width: 100%; height: 100%; }
.va-m { display: table-cell; vertical-align: middle; height: 100%; }
.va-t { display: table-cell; vertical-align: top; height: 100%; }
.va-b { display: table-cell; vertical-align: bottom; height: 100%; }

/* Icons */

.icon { width: 20px; height: 20px; display: inline-block; vertical-align: top; position: relative; fill: currentColor; }
.icon-phone { top: 4px; margin-right: 5px; }
.icon-mail { top: 4px; margin-right: 5px; }

/* Hidden content */

.sh-content { display: none; }

/*================================= Columns =================================*/

.col2-set, .col3-set { letter-spacing: -0.31em; *letter-spacing: normal; *word-spacing: -0.43em; }
.col { display: inline-block; *display: inline; zoom: 1; vertical-align: top; letter-spacing: normal; word-spacing: normal; }

.col2-set { margin: 0 0 30px -20px; }
.col2-set .col { width: 50%; padding: 0 0 0 20px; }

.col3-set { margin: 0 0 30px -20px; }
.col3-set .col { width: 33.33333%; padding: 0 0 0 20px; }

.col4-set { margin: 0 0 30px -20px; }
.col4-set .col { width: 25%; padding: 0 0 0 20px; }

.ib { font-family: Arial,sans-serif; letter-spacing: -0.31em; *letter-spacing: normal; *word-spacing: -0.43em; }
.ib > * { font-family: 'Roboto',sans-serif; display: inline-block; *display: inline; zoom: 1; vertical-align: top; letter-spacing: normal; word-spacing: normal; }

/************************************************************************************
FOOTER
*************************************************************************************/

.footer { background: #222; color: rgba(255,255,255,0.5); font-size: 15px; line-height: 1.6em; }
.footer a { color: rgba(255,255,255,0.5); }
.footer a:hover { color: #fff; }
.footer ul li { position: relative; }
.footer ul ul { display: none; }
.footer ul li:before { content: ''; position: absolute; left: 2px; top: 10px; width: 6px; height: 6px; border: 1px solid #fff; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }
.footer ul.contact-list li { padding: 0; background: none; }
.footer ul.contact-list li:before { content: none; }

.footer .f_1 { padding: 50px 0 40px 0; }
.footer .f_2 { border-top: 1px solid rgba(255,255,255,0.1); padding: 20px 0; }
.footer .copy { margin: 0; }

.footer .sitemap-list { margin-bottom: 20px; }
.footer .sitemap-list ul { margin: 0; }
.footer .sitemap-list ul li { width: 50%; float: left; }

.footer .head { font-family: 'montserratregular',sans-serif; font-size: 16px; text-transform: uppercase; color: #fff; }

.mw { position: absolute; right: 15px; top: -5px; }
.mw .icon { color: rgba(255,255,255,0.5) !important; }
.mw:hover .icon { color: #00daee !important; }
.mw .icon-mw { width: 70px; height: 30px; }

/************************************************************************************
ENTRY
*************************************************************************************/

.entry { margin: 0; }
.entry h2 { margin: 40px 0 10px 0; }
.entry h3 { margin: 40px 0 10px 0; }

.entry-info { font-size: 13px; margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #e5e5e5; }
.entry-info .date { margin-right: 10px; margin-bottom: 0; display: inline-block; vertical-align: top; }
.entry-info .date .icon { width: 16px; height: 16px; margin-right: 5px; top: 6px; color: #b6b6b6; }
.entry-info ul { display: inline-block; vertical-align: top; margin: 0; }
.entry-info ul li { display: inline-block; vertical-align: top; margin: 0 10px 0 0; }

.entry ul li { position: relative; padding-left: 20px; }
.entry ul li:before { content: ''; position: absolute; left: 0; top: 10px; width: 8px; height: 8px; border: 1px solid #4b76aa; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }

.entry ol li { position: relative; padding-left: 30px; }
.entry ol li:before { font-size: 11px; width: 18px; height: 18px; background: #6f9acf; color: #fff; text-align: center; line-height: 18px; top: 5px; }

.entry .price-list h2 { margin-top: 0; }
.entry .price-list h3 { font-size: 20px; line-height: 1.3em; margin-top: 0; margin-bottom: 20px; }
.entry .price-list table { width: 100%; margin: 0 0 30px 0; border-top: 2px solid #e8e8e8; }
.entry .price-list table th { font-weight: 600; font-weight: normal; border-bottom: 1px solid #e8e8e8; padding: 5px 20px; width: 180px; background: none; text-align: left; }
.entry .price-list table td { border-bottom: 1px solid #e8e8e8; padding: 5px 20px; background: #fff; }

/************************************************************************************
TABLES
*************************************************************************************/

.entry table { width: 100%; margin: 0 0 30px 0; }
.entry table th { font-weight: normal; border-bottom: 1px solid #e8e8e8; padding: 14px 30px; background: #e3e3e3; }
.entry table td { border-bottom: 1px solid #e8e8e8; padding: 14px 30px; }

/************************************************************************************
FORMS
*************************************************************************************/

form.std label { font: normal 16px/24px 'Roboto',sans-serif; color: #000; margin: 0 0 10px 0; display: block; }
form.std input.text { font: normal 16px/24px 'Roboto',sans-serif; color: #000; border: 1px solid #939698; padding: 8px 15px 6px 15px; width: 100%; }
form.std textarea { font: normal 16px/24px 'Roboto',sans-serif; color: #000; resize: vertical; border: 1px solid #939698; padding: 8px 15px; margin: 0; width: 100%; min-width: 100%; max-width: 100%; height: 150px; min-height: 150px; max-height: 300px; }
form.std select { font: normal 16px/24px 'Roboto',sans-serif; color: #000; width: 100%; padding: 2px 10px; }
form.std option { font: normal 16px/20px 'Roboto',sans-serif; padding: 2px 20px; }

form.std input.text[required="required"] { background-image: url('../img/req.png'); background-position: right center; background-repeat: no-repeat; }

/*================================= Form standard =================================*/

/* Standard */

form.std .cell-set { margin: 0 0 0 -20px; }
form.std .cell { margin: 0 0 30px 0; padding-left: 20px; position: relative; text-align: left; }
form.std .cell-input { margin: 0 0 30px 0; padding-left: 20px; position: relative; text-align: left; }

/* Inline */

form.std .set-2 .cell,form.std .set-2 .cell-input { width: 50%; }
form.std .set-3 .cell,form.std .set-3 .cell-input { width: 33.3333%; }
form.std .set-4 .cell,form.std .set-4 .cell-input { width: 25%; }
form.std .set-5 .cell,form.std .set-5 .cell-input { width: 20%; }

form.std .toggle { position: relative; padding: 0 0 0 25px; }
form.std .toggle label { display: inline-block; *display: inline; zoom: 1; vertical-align: top; margin: 0 0 0 0; }
form.std .toggle .note { font-size: 16px; max-width: 100%; }

/* Various */

form.std .radio,
form.std .checker { position: absolute; left: 0; top: 0; }

/* Form contact */

.form-contact {  }

/************************************************************************************
FLASH MESSAGES
*************************************************************************************/

.flash-message { font: normal 16px/24px 'montserratregular',sans-serif; background: #fc796b; color: #fff; width: 100%; padding: 15px 50px 15px 20px; margin: 0 0 20px 0; display: inline-block; *display: inline; *zoom: 1; vertical-align: top; position: relative; border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; -webkit-border-radius: 0 0 4px 4px; }
.flash-message .close { font: normal 36px/24px 'montserratregular',sans-serif; width: 20px; height: 20px; padding: 0; line-height: 18px; text-align: center; color: #c96055; border: none; display: block; position: absolute; right: 17px; top: 16px; background: none; }
.flash-message .close:hover { color: #fff !important; }

.flash-message.alert-danger { background: #d14233; color: #fff; }
.flash-message.alert-danger .close { color: #912519; }

.flash-message.alert-success { background: #19b698; color: #fff; }
.flash-message.alert-success .close { color: #13927a; }

.modal-content .flash-message { margin: 0 0 20px 0; }

.error, form.std label.error { font-size: 16px; font-weight: 400; color: #ff0030; display: block; margin-top: 5px; }

#flash-messages { position: fixed; top: 0; left: 0; width: 100%; z-index: 50; }
#flash-messages .flash-message { margin: 0 auto; width: 100%; max-width: 1180px; display: block; }

/************************************************************************************
TABS
*************************************************************************************/

.tabs { position: relative; }

.tab-nav ul { margin: 0 0 0 -1px; padding: 0; }
.tab-nav li { float: left; list-style-type: none; padding: 0; background: none; margin: 0 0 0 1px; }
.tab-nav li a { display: block; text-decoration: none; outline: 0; padding: 15px 30px; background: #000; color: #fff; }
.tab-nav li a:hover {  background: #a0a0a0; color: #000; }
.tab-nav li a.active { background: #e3e3e3; color: #000; }

/* Tab nav - basic */

.tab-nav-basic li { margin: 0; width: 33.33333%; position: relative; top: 1px; z-index: 20; }
.tab-nav-basic li a { font-size: 15px; font-weight: 600; color: #0071aa; background: #fff; text-transform: uppercase; text-align: center; border: 1px solid #ced0d0; border-right: none; }
.tab-nav-basic li:last-child a { border-right: 1px solid #ced0d0; }
.tab-nav-basic li a:hover { background: #fff; color: #db3214; }
.tab-nav-basic li a.active { background: #fff; color: #db3214; border-bottom: 1px solid #db3214; }

/************************************************************************************
QTIP
*************************************************************************************/

.qtip-default { font: normal 15px/20px 'montserratregular',sans-serif; text-transform: uppercase; padding: 8px 15px; background-color: #000; color: #000; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
.qtip-content { font-size: 17px; color: #fff; }

/************************************************************************************
FANCYBOX
*************************************************************************************/

body .fancybox-wrap { padding-bottom: 20px; }

body .fancybox-close { font-size: 35px; width: 70px; height: 70px; text-align: center; line-height: 70px; background: none; right: 0; top: 0; text-decoration: none; }
body .fancybox-close:before { content: ''; position: absolute; right: 0; top: 0; width: 0; height: 0; border-style: solid; border-width: 0 70px 70px 0; border-color: transparent #f30c48 transparent transparent; }
body .fancybox-close:after { font-size: 30px; content: '×'; position: absolute; right: 11px; top: -13px; color: #fff; }
body .fancybox-close:hover { background-position: -40px 0; }

body .fancybox-prev { position: static; }
body .fancybox-prev span { width: 40px; height: 40px; display: block; background: url('../img/fancybox/fancybox.png') -40px 0 no-repeat; position: absolute; top: 50%; text-indent: -80000px; left: -50px; visibility: visible; }
body .fancybox-prev:hover span { background-position: -40px -40px; }

body .fancybox-next { position: static; }
body .fancybox-next span { width: 40px; height: 40px; display: block; background: url('../img/fancybox/fancybox.png') -80px 0 no-repeat; position: absolute; top: 50%; text-indent: -80000px; right: -50px; visibility: visible; }
body .fancybox-next:hover span { background-position: -80px -40px; }

/************************************************************************************
MODAL
*************************************************************************************/

.modal-box { display: none; background: #eee; }
.modal-content { padding: 40px; }

/* Modal contact */

.modal-contact { max-width: 600px; }

/************************************************************************************
FIXER
*************************************************************************************/

.fixer-start { position: relative; }
.fixer { position: relative; top: 0; max-width: px; }
.fixer.fixed { position: fixed; }

/************************************************************************************
UNIFORM
*************************************************************************************/

/* Select */

div.selector { font-size: 18px; background: #fff; color: #024b41; line-height: 45px; width: 100% !important; height: 42px; padding: 0; position: relative; overflow: hidden; cursor: pointer; text-align: left; }
div.selector span { text-overflow: ellipsis; display: block; overflow: hidden; white-space: nowrap; background: #fff url('../img/uniform/select.png') right 16px no-repeat; border: none; padding: 0; text-indent: 15px; height: 42px; line-height: 42px; cursor: pointer; display: block; }
div.selector select { height: 42px; line-height: 42px; text-align: left; opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; border: none; background: none; position: absolute; top: 0; left: 0; width: 100%; cursor: pointer; }
div.selector select option { padding: 2px 10px; }

div.selector.active span { background-position: right 16px; }
div.selector.focus span { background-position: right 16px; }
div.selector.hover span { background-position: right 16px; }
div.selector.hover.active span { background-position: right 16px; }
div.selector.focus.active span { background-position: right 16px; }

/* Checkbox */

div.checker { position: relative; }
div.checker, div.checker span, div.checker input { width: 20px; height: 18px; }
div.checker span { display: -moz-inline-box; display: inline-block; *display: inline; zoom: 1; text-align: center; background: url('../img/uniform/uniform.png') -52px -11px no-repeat; }
div.checker span.checked { background-position: -52px -51px; }
div.checker input { margin: 0; cursor: pointer; opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; border: none; background: none; display: -moz-inline-box; display: inline-block; *display: inline; zoom: 1; vertical-align: top; }

div.checker.active span { background-position: -52px -51px; }
div.checker.active span.checked { background-position: -52px -11px; }
div.checker.hover span, div.checker.focus span { background-position: -52px -11px; }
div.checker.hover span.checked, div.checker.focus span.checked { background-position: -52px -51px; }
div.checker.hover.active span, div.checker.focus.active span { background-position: -52px -11px; }
div.checker.hover.active span.checked, div.checker.focus.active span.checked { background-position: -52px -51px; }

/* Radio */

div.radio { position: relative; }
div.radio, div.radio span, div.radio input { width: 24px; height: 26px; cursor: pointer; }
div.radio span { display: -moz-inline-box; display: inline-block; *display: inline; zoom: 1; text-align: center; background: url('../img/uniform/uniform.png') -8px -8px no-repeat; }
div.radio span.checked { background-position: -8px -48px; }
div.radio input { margin: 0; opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; margin: 0; border: none; background: none; display: -moz-inline-box; display: inline-block; *display: inline; zoom: 1; text-align: center; }

div.radio.active span { background-position: -8px -48px; }
div.radio.active span.checked { background-position: -8px -8px; }
div.radio.hover span, div.radio.focus span { background-position: -8px -48px; }
div.radio.hover span.checked, div.radio.focus span.checked { background-position: -8px -48px; }
div.radio.hover.active span, div.radio.focus.active span { background-position: -8px -48px; }
div.radio.hover.active span.checked, div.radio.focus.active span.checked { background-position: -8px -48px; }

/* Uploader */

div.uploader { background-position: 0 -297px; height: 28px; width: 190px; cursor: pointer; position: relative; overflow: hidden; }
div.uploader span.action { background-position: right -409px; height: 28px; line-height: 28px; width: 85px; text-align: center; float: left; display: inline; overflow: hidden; cursor: pointer; }
div.uploader span.filename { text-overflow: ellipsis; display: block; overflow: hidden; white-space: nowrap; float: left; cursor: default; height: 24px; margin: 2px 0 2px 2px; line-height: 24px; width: 82px; padding: 0 10px; }
div.uploader input { opacity: 0; filter: alpha(opacity=0); -moz-opacity: 0; border: none; background: none; position: absolute; top: 0; right: 0; float: right; cursor: default; width: 100%; height: 100%; }
div.uploader.active span.action { background-position: right -465px; }
div.uploader.hover, div.uploader.focus { background-position: 0 -353px; }
div.uploader.hover span.action, div.uploader.focus span.action { background-position: right -437px; }
div.uploader.hover.active span.action, div.uploader.focus.active span.action { background-position: right -493px; }
div.uploader.disabled, div.uploader.disabled.active { background-position: 0 -325px; }
div.uploader.disabled span.action, div.uploader.disabled.active span.action { background-position: right -381px; }

/************************************************************************************
SUDO SLIDERS
*************************************************************************************/

.slider ul, .slider li.panel { margin: 0; padding: 0; list-style: none; position: relative; display: block; }
.slider, .slider li.panel { overflow: hidden; background: none; }

.slider-nav { position: static; text-align: center; }
.slider-nav ol { margin: 0 0 0 -10px; }
.slider-nav li:before { content: ''; }
.slider-nav li { margin: 0 0 0 10px; padding: 0; background: none; display: inline-block; font-size: 0; }
.slider-nav li a { width: 12px; height: 12px; display: block; background: transparent; text-indent: -80000px; border: 2px solid #4c7ab4; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; }
.slider-nav li a:hover { background: #4c7ab4; }
.slider-nav li.current a { background: #4c7ab4; cursor: default; }

.slider-nav .prev, .slider-nav .next { overflow: hidden; text-indent: -80000px; display: block; position: absolute; /*background: url('../img/sprite.png') no-repeat 0 0;*/ cursor: pointer; }

.slider-nav .prev { width: 80px; height: 80px; margin-top: -40px; left: 0; top: 50%; background-position: -16px -180px; }
.slider-nav .prev:hover { background-position: -16px -380px; }
.slider-nav .next { width: 80px; height: 80px; margin-top: -40px; right: 0; top: 50%; background-position: -136px -180px; }
.slider-nav .next:hover { background-position: -136px -380px; }

/* Teaser slider */

.teaser-slider { position: relative; }
.teaser-slider .slider-nav { position: absolute; bottom: 100px; left: 50%; -webkit-transform: translate(-50%,0); -moz-transform: translate(-50%,0); -ms-transform: translate(-50%,0); -o-transform: translate(-50%,0); transform: translate(-50%,0); }
.teaser-slider li.panel { background-repeat: no-repeat; background-position: center center; }
.teaser-slider li.panel .glow { display: none !important; position: absolute; left: 0; top: 0; z-index: 10; width: 100%; height: 100%; background: url('../img/glow.png') center center no-repeat; }
.teaser-slider li.panel .container { position: relative; z-index: 20; }
.teaser-slider li.panel .btn { margin-bottom: 0; }

/************************************************************************************
RANGE SLIDER (NO UI SLIDER)
*************************************************************************************/

.noUi-target,
.noUi-target * { -webkit-touch-callout: none; -webkit-user-select: none; -ms-touch-action: none; -ms-user-select: none; -moz-user-select: none; -moz-box-sizing: border-box; box-sizing: border-box; }
.noUi-target { position: relative; direction: ltr; background: #4c4d4e; }
.noUi-base { width: 100%; height: 100%; position: relative; -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
.noUi-origin { position: absolute; right: 0; top: 0; left: 0; bottom: 0; }
.noUi-handle { position: relative; z-index: 1; }

.noUi-stacking .noUi-handle { z-index: 10; }
.noUi-stacking + .noUi-origin { *z-index: -1; }
.noUi-state-tap .noUi-origin { -webkit-transition: left 0.3s, top 0.3s; transition: left 0.3s, top 0.3s; }
.noUi-state-drag * { cursor: inherit !important; }

.noUi-horizontal { height: 7px; }
.noUi-horizontal .noUi-handle { width: 34px; height: 28px; left: -17px; top: -10px; }
.noUi-horizontal .noUi-handle-lower { left: 0; }
.noUi-horizontal .noUi-handle-upper { left: -34px; }

.noUi-vertical { width: 7px; }
.noUi-vertical .noUi-handle { width: 28px; height: 34px; left: -6px; top: -17px; }

.noUi-target .noUi-background { background: #4c4d4e; }
.noUi-connect { background: #abb011; -webkit-transition: background 450ms; transition: background 450ms; }

.noUi-dragable { cursor: w-resize; }
.noUi-vertical .noUi-dragable { cursor: n-resize; }
.noUi-handle { cursor: pointer; background: #abb011; }
.noUi-active {  }

.noUi-handle:before,
.noUi-handle:after {
	content: "";
	display: block;
	position: absolute;
	height: 14px;
	width: 1px;
	background: #E8E7E6;
	left: 14px;
	top: 6px;
}
.noUi-handle:after { left: 17px; }
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after { width: 14px; height: 1px; left: 6px; top: 14px; }
.noUi-vertical .noUi-handle:after { top: 17px; }

[disabled].noUi-connect,
[disabled] .noUi-connect {
	background: #B8B8B8;
}
[disabled] .noUi-handle {
	cursor: not-allowed;
}

/************************************************************************************
WORDPRESS
*************************************************************************************/

/* WP gallery */

.gallery { letter-spacing: -0.31em; *letter-spacing: normal; *word-spacing: -0.43em; font-family: Arial,sans-serif; }
.gallery > * { font-family: 'montserratregular',sans-serif; display: inline-block; *display: inline; zoom: 1; vertical-align: top; letter-spacing: normal; word-spacing: normal; }

.gallery-columns-2 { margin-left: -20px !important; }
.gallery-columns-2 .gallery-item { width: 50%; padding-left: 20px; }

/* WP forms */

.cform label { font-size: 14px; font-weight: 600; color: #000; margin: 0 0 5px 0; display: block; }
.cform textarea { font: 400 16px/24px 'montserratregular',sans-serif; color: #000; resize: vertical; border: 1px solid #e3e3e3; padding: 15px 10px; margin: 0; width: 100%; min-width: 100%; max-width: 100%; height: 150px; min-height: 150px; max-height: 300px; }
.cform input.single, input.secinput { font: 400 16px/22px 'montserratregular',sans-serif; color: #000; height: 45px; width: 100%; padding: 12px 10px 13px 10px; border: 1px solid #e3e3e3; background: #fff; float: left; }
.cform input.single:focus { color: #747e92; }
.cform .cf_hidden { display: none; }

.cf-sb { float: none; margin: 0; }

.emailreqtxt,
.reqtxt { font-weight: 600; float: right; color: #f00808; position: absolute; right: 10px; top: 45px; }

/* Form contact */

.objednavka { display: block; width: 100%; max-width: 600px; margin: 0 auto; padding: 30px; position: relative; background: #f8f8f8; }
.objednavka h3 { font-size: 24px; line-height: 1.3em; margin-bottom: 30px; }

.form-objednavka .cf-ol { margin: 0 0 0 -20px; }
.form-objednavka .cf-ol li { float: left; width: 33.33333%; margin: 0 0 20px 0; padding: 0 0 0 20px; position: relative; }
/*.form-objednavka .cf-ol li#li--2 { width: 66.666666%; }*/
/*.form-objednavka .cf-ol li#li--6 { width: 100%; }*/
.form-objednavka .cf-ol li#li--7 { width: 100%; }
.form-objednavka .cf-ol li#li--8 { width: 100%; }
.form-objednavka .cf-ol li:before { content: ''; }

/* Mesages & errors */

.cform .cf_info span { font-size: 14px; font-weight: 600; margin: 0 0 20px 0; padding: 15px 20px; background: #ffeef4; color: #ee4d6c; display: block; }
.cform .cf_error,
.cform .single.cf_error { border-color: #ff637d; }
.cform .cf_li_err .single { border-color: #ff637d; }
.cform .cf_li_err textarea { border-color: #ff637d; }

.cf_info.failure { background: #fae7ea; border: 1px solid #f1c7d2; color: #e5547a; padding: 15px 20px; margin: 0 0 30px 0; }
.cf_info.success { background: #ebf5bc; border: 1px solid #c7d198; color: #6c7e17; padding: 15px 20px; margin: 0 0 30px 0; }

/************************************************************************************
NEXT GEN GALLERY
*************************************************************************************/

body .ngg-navigation { font-size: 15px !important; padding: 0; margin-top: 30px; position: relative; }
body .ngg-navigation .current { font-family: 'montserratregular',sans-serif; font-weight: 400; display: inline-block; background: #f30c48; padding: 5px; width: 30px; margin: 0; color: #fff; }
body .ngg-navigation a.page-numbers { font-family: 'montserratregular',sans-serif; font-weight: 400; display: inline-block; background: #2d2124; border: none; padding: 5px; width: 30px; color: #fff; margin: 0 5px; }
body .ngg-navigation a.next { background: none; border: none; display: inline; margin: 0; padding: 0; position: absolute; right: 0; top: 0; text-decoration: underline; line-height: 30px; }
body .ngg-navigation a.next:hover { background: none; color: #f30c48 !important; text-decoration: none; }
body .ngg-navigation a.prev { background: none; border: none; display: inline; margin: 0; padding: 0; position: absolute; left: 0; top: 0; text-decoration: underline; line-height: 30px; }
body .ngg-navigation a.prev:hover { background: none; color: #f30c48 !important; text-decoration: none; }
body .ngg-navigation a.page-numbers:hover { background: #f30c48; }

body .ngg-galleryoverview { clear: none; margin: 0 0 0 -20px; width: auto; letter-spacing: -0.31em; *letter-spacing: normal; *word-spacing: -0.43em; }
body .ngg-gallery-thumbnail-box { margin: 0 0 15px 0; float: none; width: 25%; padding-left: 20px; display: inline-block; vertical-align: top; letter-spacing: normal; word-spacing: normal; }

body .ngg-gallery-thumbnail { border: 1px solid #e2ddcf; padding: 4px; }
body .ngg-gallery-thumbnail img { max-width: 100% !important; height: auto; background-color: #fff; border: none; display: block; padding: 0; margin: 0 auto; display: block; }
body .ngg-gallery-thumbnail a { width: 100%; display: block; }
body .ngg-gallery-thumbnail:hover { border: 1px solid #F30C48; }

body .ngg-albumoverview { margin-left: -20px; letter-spacing: -0.31em; *letter-spacing: normal; *word-spacing: -0.43em; }
body .ngg-albumcontent { text-align: center; }
body .ngg-album { width: 25%; border: none; margin: 0 0 20px 0; padding: 0 0 0 20px; float: none; display: inline-block; vertical-align: top; letter-spacing: normal; word-spacing: normal; }
body .ngg-thumbnail { float: none; margin-bottom: 12px; }
body .ngg-thumbnail img { max-width: 100%; height: auto; background-color: #fff; border: none; display: block; padding: 0; margin: 0 auto; display: block; }

body .ngg-albumtitle { font-size: 15px; font-weight: 600; }

/************************************************************************************
AJAX
*************************************************************************************/

.loader-overlay { display: none; z-index: 9999; width: 100%; height: 100%; position: fixed; left: 0; top: 0; background-image: url('../img/fancybox/fancybox_overlay.png');  }
.loader-box { position: absolute; width: 44px; height: 44px; margin-top: -22px; margin-left: -22px; opacity: 0.8; left: 50%; top: 50%; background-image: url('../img/fancybox/fancybox_sprite.png'); background-position: 0 -108px; background-repeat: no-repeat; }
.loader {width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-image: url('../img/fancybox/fancybox_loading.gif'); background-position: center center; background-repeat: no-repeat; }

/************************************************************************************
MEDIA QUERIES
*************************************************************************************/

/*========================= Viewport width 1199px and lower =========================*/

@media screen and (max-width: 1199px) {
    .main-nav ul li a { white-space: nowrap; padding-left: 15px; padding-right: 15px; }
    .main-nav ul li.menu-item-has-children > span:after { right: 10px; }

    .quick-contact { text-align: left; }
    .quick-contact .head { float: none; }

    .objects .item-list { margin-left: -10px; margin-bottom: -30px; }
    .objects .item { padding-left: 10px; margin-bottom: 30px; }
    .objects .item .text { font-family: 'Roboto',sans-serif; }

    .partners ul { margin-left: -40px; }
    .partners ul li { padding-left: 40px; }

    .logos .item img { max-height: 60px; }
}

/*========================= Viewport width 991px and lower =========================*/

@media screen and (max-width: 991px) {
    .main-nav { display: none; }
	.header .h_2 { display: none; }

    .nav-btn { display: inline-block; position: absolute; right: 15px; top: 28px; padding-right: 0; }

    .header .search { display: none; }

    .events .item .text { padding-left: 0; margin: 0; }
    .events .item .img { float: none; margin-bottom: 10px; }
    .events .item-inner { padding: 15px; }

    .objects .item .head { font-size: 16px; }

    .header .header-r { padding-right: 80px; padding-top: 32px; }

    .partners { text-align: left; }
    .partners ul li { padding-left: 40px; }
    .partners .head { float: none; }

    .events.archive .item .img { float: left; display: block; }
    .events.archive .item .text { margin: 0; }

    .content-col { padding-right: 0; padding-top: 40px; border: none; margin-right: 0; }
    .sidebar { display: none; }

    .publications .item { width: 50%; }

    .addresses .item { width: 100%; }

    .contacts .item { width: 50%; }

    .expositions .item .img { width: 230px; }
    .expositions .item .text { padding-left: 250px; }

    .teaser-bar ul li a .icon { margin-right: 0; }

    .logos .alt { float: none; text-align: left; display: inline-block; vertical-align: top; }
}

/*========================= Viewport width 767px and lower =========================*/

@media screen and (max-width: 767px) {
    .header .header-r .logo-str { display: none; }

    .teaser-slider .slider-nav { bottom: 20px; }

    .objects { max-width: 360px; margin: 30px auto 0 auto; }
    .objects .item { width: 100%; }
    .objects .item .head { background: #f8f8f8; }

    .partners .head { padding-top: 0; margin-bottom: 20px; }

    .teaser-bar { display: none; }

    .table-wrap { overflow-x: scroll; max-width: 100%; }
    .table-wrap table { min-width: 500px; width: auto; }
}

/*========================= Viewport width 640px and lower =========================*/

@media screen and (max-width: 640px) {
    .programs .item .img { float: none; margin-bottom: 20px; position: static; }
    .programs .item .text { padding-left: 0; }

    .box-shop { padding-right: 20px; }
    .box-shop .btn { position: static; margin-top: 20px; }

    .contacts .item { width: 100%; }

    .expositions .item .img { float: none; max-width: 100%; margin-bottom: 20px; }
    .expositions .item .text { padding-left: 0; }

    .map-wrapper { height: auto; }
    .map-wrapper .map-box { width: 100%; left: 0; position: static; padding: 0; margin-top: 30px; }
}

/*========================= Viewport width 540px and lower =========================*/

@media screen and (max-width: 540px) {
    .events .item { width: 100%; }

    .header .logo { max-width: 220px; top: 28px; }
    .header .h_1 { height: 90px; }
    .header .fb-link { display: none; }
    .header .header-r { padding-top: 27px; }

    .nav-btn { top: 23px; }

    .teaser-content .va-m { padding: 20px; top: 0; -webkit-transform: translate(0,0); -moz-transform: translate(0,0); -ms-transform: translate(0,0); -o-transform: translate(0,0); transform: translate(0,0); }
    .teaser-content { font-size: 15px; padding-top: 20px; }
    .teaser-content p { line-height: 1.7em; }
    .teaser-content h1 { font-size: 24px; line-height: 1.3em; }

    .footer .copy { padding-right: 100px; }
    .footer .sitemap-list ul li { width: 100%; }

    .events.archive .item .img { float: none; }
    .events.archive .item .text { padding-left: 0; margin-left: 0; }

    .events.latest .item-list { margin-bottom: -30px; }
    .events.latest .item { margin-bottom: 30px; }

    .publications .item { width: 100%; }

    .form-objednavka .cf-ol li { width: 100%; }
    .form-objednavka .cf-ol li#li--2 { width: 100%; }

    .objednavka { padding: 15px; }

    .addresses .item .text { padding-left: 0; }
    .addresses .item .img { float: none; margin-bottom: 20px; }
}
@media screen and (max-width: 540px) {
    .logos .item-list { width: 100%; margin-left: 0; }
    .logos .item { width: 100%; text-align: center; padding-left: 0; }
}

/************************************************************************************
TRANSITIONS & ANIMATIONS
*************************************************************************************/

a {
	transition: color 0.1s;
	-moz-transition: color 0.1s;
	-webkit-transition: color 0.1s;
	-o-transition: color 0.1s;
	-ms-transition: color 0.1s;
}

/************************************************************************************
CLEARFIX
*************************************************************************************/

/* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */

.clearfix:before,
.clearfix:after {
  content: '\0020';
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}
