body {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 12pt;
	font-weight: 400;
	color: #000;
	background-color: #fff;
	background-image: url('/images/bg.jpg');
	background-repeat: no-repeat;
	background-position: center top;
	margin: 0px;
	padding: 0px;
}

table {
	font-size: 12pt;
}

td {
	font-size: 12pt;
}

div {
	font-size: 12pt;
}

p {
	font-size: 12pt;
	min-height: 12px;
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	padding: 0px;
	margin: 0px;
	font-weight: normal;
}

.clear_both {
	clear: both;
}

.border_radius_6 {
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-webkit-border-bottom-right-radius: 6px;

	-khtml-border-radius-topleft: 6px;
	-khtml-border-radius-topright: 6px;
	-khtml-border-radius-bottomleft: 6px;
	-khtml-border-radius-bottomright: 6px;

	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	-moz-border-radius-bottomleft: 6px;
	-moz-border-radius-bottomright: 6px;

	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
}


.head {
	margin: 0px 0px 30px 0px;
	padding: 15px 0px 7px 0px;
	font-family: Times New Roman, serif;
	font-size: 38pt;
	font-weight: normal;
	color: #888;
	text-align: center;
	border-bottom: 1px dotted #999;
}

.backhome {
	clear: both;
	display: block;
	font-size: 14pt;
	font-weight: 300;
	text-align: center;
	border-top: 1px solid #e5e5e5;
	margin-top: 35px;
	padding-top: 15px;
	margin-bottom: 10px;
}

a {
	color: #bf0000;
	text-decoration: underline;
}

a:hover {
	color: #555;
	text-decoration: underline;
}

a img {
	text-decoration: none;
	border: 0;
}

a img:hover {
	text-decoration: none;
	border: 0;
}



.abutton {
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background-color: #bf0000;
	padding: 6px 35px 6px 35px;
	background-image: url(./images/bg_abutton.png);
	background-repeat: repeat-x;
	background-position: center 0px;
	border: 1px solid #faa;

	box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;
	-webkit-box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;
	-moz-box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;

	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-webkit-border-bottom-right-radius: 6px;
	-khtml-border-radius-topleft: 6px;
	-khtml-border-radius-topright: 6px;
	-khtml-border-radius-bottomleft: 6px;
	-khtml-border-radius-bottomright: 6px;
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	-moz-border-radius-bottomleft: 6px;
	-moz-border-radius-bottomright: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
}

.abutton:hover {
	text-decoration: none;
	color: #fff;
	background-color: #bf0000;
	background-position: center 100px;
}

.abutton:active {
	text-decoration: none;
	color: #fff;
	background-color: #a00000;
	background-position: center 100px;
}


.abutton2 {
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background-color: #333333;
	padding: 6px 35px 6px 35px;
	background-image: url(./images/bg_abutton2.png);
	background-repeat: repeat-x;
	background-position: center 0px;
	border: 1px solid #aaa;

	box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;
	-webkit-box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;
	-moz-box-shadow: 0 0 12px #888, 0 0 12px #888, 0 0 12px #888;

	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-webkit-border-bottom-right-radius: 6px;
	-khtml-border-radius-topleft: 6px;
	-khtml-border-radius-topright: 6px;
	-khtml-border-radius-bottomleft: 6px;
	-khtml-border-radius-bottomright: 6px;
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	-moz-border-radius-bottomleft: 6px;
	-moz-border-radius-bottomright: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
}

.abutton2:hover {
	text-decoration: none;
	color: #fff;
	background-color: #565656;
	background-position: center 100px;
}

.abutton2:active {
	text-decoration: none;
	color: #fff;
	background-color: #444444;
	background-position: center 100px;
}


.top_div {
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 76px;
	background-color: #fff;
	overflow: hidden;
}

.top_div_in {
	border: 0px solid #f00;
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 880px;
	height: 76px;
	overflow: hidden;
}

.top_div_logo {
	border: 0px solid #f00;
	position: absolute;
	left: 0px;
	top: 16px;
	width: 288px;
	height: 44px;
}

.topmenu {
	border: 0px solid #f00;
	position: absolute;
	text-align: right;
	right: 0px;
	top: 0px;
	width: 575px;
	height: 76px;
}

.topmenu ul {
	display: inline;
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}

.topmenu li {
	display: inline;
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}

.topmenu a {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-size: 13pt;
	font-weight: normal;
	color: #444;
	height: 76px;
	padding-top: 24px;
	padding-bottom: 0px;
	padding-left: 20px;
	padding-right: 20px;
}

.topmenu a:hover {
	text-decoration: none;
	color: #f00;
	background-color: #ffe2e2;
}


.topbox_div {
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 216px;
	background-image: url(./images/bg_topbox.png);
	background-repeat: repeat-x;
	background-position: center top;
	overflow: hidden;
}

.topbox_div_in {
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 880px;
	height: 216px;
	overflow: hidden;
}

.topbox_div_left {
	border: 0px solid #f00;
	position: absolute;
	left: 0px;
	top: 27px;
	width: 400px;
	height: 150px;
	text-align: left;
	margin: 0;
}

.topbox_div_left h1 {
	font-size: 45pt;
	font-weight: 300;
	color: #fff;
}

.topbox_div_left h2 {
	display: block;
	margin-top: 15px;
	font-size: 23pt;
	font-weight: 300;
	line-height: 22pt;
	color: #fff;
	text-shadow: 1px 1px black;
	-webkit-text-shadow: 1px 1px black;
	-moz-text-shadow: 1px 1px black;
}

.topbox_div_left span {
	font-size: 17pt;
}



.topbox_div_right {
	border: 0px solid #f00;
	position: absolute;
	right: 18px;
	top: 80px;
	text-align: left;
	margin: 0;
}

.abuttontop {
	min-width: 100px;
	max-width: 250px;
	font-size: 15pt;
	padding: 10px 35px 10px 25px !important;
	box-shadow: 0 0 20px #555, 0 0 20px #555, 0 0 20px #555 !important;
	-webkit-box-shadow: 0 0 20px #555, 0 0 20px #555, 0 0 20px #555 !important;
	-moz-box-shadow: 0 0 20px #555, 0 0 20px #555, 0 0 20px #555 !important;
}

.abuttontop img {
	float: right;
	margin: 4px -25px 0px 25px;
}


.begin_top {
	font-size: 19pt;
	font-weight: 400;
	margin-bottom: 25px;
}



.caro_element {
	float: left;
	position: relative;
	display: block;
	text-align: left;
	width: 280px;
	height: 330px;
	overflow: visible;
	margin-right: 12px;
}

a.caro_element_a_top img {
	display: block;
	margin-bottom: 1px;
	width: 280px;
}

a.caro_element_a_top {
	display: block;
	text-decoration: none;
	text-align: center;
	font-size: 18pt;
}

a.caro_element_a_top:hover {
	text-decoration: none;
}

a.caro_element_a_top span {
	display: block;
	margin-top: 1px;
	padding: 3px 0px 5px 0px;
	color: #fff;
	background-color: #4f4f4f;
	background-image: url(./images/bg_caro_1.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
	text-shadow: 2px 1px black;
	-webkit-text-shadow: 2px 1px black;
	-moz-text-shadow: 2px 1px black;
}

a.caro_element_a_top span.sudy {
	color: #000;
	background-color: #d4d4d4;
	background-image: url(./images/bg_caro_2.jpg);
	text-shadow: 2px 1px white;
	-webkit-text-shadow: 2px 1px white;
	-moz-text-shadow: 2px 1px white;
}

a.caro_element_text {
	position: relative;
	display: block;
	text-decoration: none;
	color: #000;
	font-size: 11pt;
	margin-top: 7px;
	padding: 0px 9px 10px 16px;
	border-left: 1px dashed #aaa;
	border-bottom: 1px dashed #aaa;
	height: 115px;
	overflow: hidden;
}

a.caro_element_text::after {
	content: '';
	position: absolute;
	left: 0px;
	bottom: 0px;
	display: block;
	border: 0px solid green;
	height: 20px;
	width: 100%;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
}


a.caro_element_text:hover {
	text-decoration: none;
	color: #222;
}

a.caro_element_a_bottom {
	display: block;
	margin-top: 5px;
	margin-bottom: 2px;
	text-decoration: none;
	font-size: 11.6pt;
}

a.caro_element_a_bottom:hover {
	text-decoration: none;
}

a.caro_element_a_bottom img {
	margin-right: 5px;
	margin-bottom: -3px;
}



.typy {
	position: relative;
	display: block;
	text-align: left;
	width: 375px;
	overflow: visible;
	margin-right: 25px;
	margin-bottom: 25px;
}

.typy_left {
	float: left;
}

.typy_right {
	float: right;
}

.typy h3 {
	display: block;
	font-size: 23pt;
	font-weight: 400;
}

.typy h3 a {
	text-decoration: none;
}

.typy h3 a:hover {
	text-decoration: underline;
}

.typy img {
	display: block;
	margin-top: 8px;
	margin-bottom: 10px;
}

.typy_p_button {
	margin-top: 15px;
}

.typy_clear_both {
	clear: both;
	border-bottom: 1px solid #e5e5e5;
	margin-right: 25px;
	padding-top: 15px;
	margin-bottom: 40px;
}




a.typy_seznam {
	display: inline-block;
	margin-top: -15px;
	margin-bottom: 15px;
	font-size: 12pt;
	text-decoration: none;
	border-bottom: 1px solid #bf0000;
}

a.typy_seznam:hover {
	text-decoration: none;
	border-bottom: 1px solid #555;
}


.detail_left {
	float: left;
	position: relative;
	display: block;
	text-align: left;
	width: 400px;
	overflow: visible;
	margin-right: 25px;
	margin-bottom: 25px;
}

.detail_both h3 {
	display: block;
	font-size: 43pt;
	font-weight: 300;
	padding-bottom: 35px;
}

.detail_text {
	font-size: 13pt;
}

.detail_nadpis {
	margin-top: 0px;
	margin-bottom: 20px;
	font-size: 18pt;
	font-weight: 300;
}

.detail_left ul {
	list-style-type: square;
	padding: 0px 0px 12px 20px;
	margin: 40px 10px 0px 0px;
	border-left: 1px dashed #aaa;
	border-bottom: 1px dashed #aaa;
}

.detail_left li {
	margin-left: 15px;
	margin-bottom: 8px;
}

.detail_p_button {
	margin-top: 20px;
}


.abuttondetail {
	margin-top: 13px;
	font-size: 14pt;
	padding: 6px 35px 6px 25px !important;
	/*width: 160px;*/
}

.abuttondetail img {
	float: right;
	margin: 4px -25px 0px 25px;
}


.detail_right {
	float: right;
	position: relative;
	display: block;
	text-align: right;
	width: 420px;
	overflow: visible;
	margin-top: 0px;
	margin-right: 22px;
	margin-bottom: 25px;
}

.detail_img {
	border: 1px solid #fff;
	box-shadow: 0 0 20px #888, 0 0 20px #888, 0 0 20px #888;
	-webkit-box-shadow: 0 0 20px #888, 0 0 20px #888, 0 0 20px #888;
	-moz-box-shadow: 0 0 20px #888, 0 0 20px #888, 0 0 20px #888;
}

.detail_img:hover {
	border: 1px solid #fff;
}

#detail_d_fotky {
	position: relative;
	display: block;
	margin-top: 25px;
	max-height: 840px;
	overflow: hidden;
}

#detail_a_fotky {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	display: block;
	cursor: pointer;
	cursor: hand;
	background: -webkit-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.99) 45%);
	background: -o-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.99) 45%);
	background: -moz-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.99) 45%);
	background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.99) 45%);
	text-align: left;
	font-size: 28pt;
	font-weight: 700;
	color: #bf0000;
	padding-top: 55px;
}

#detail_p_fotky {
	display: block;
	margin-top: 25px;
	max-height: 332px;
	overflow: hidden;
}

#detail_p_fotky img {
	float: left;
	margin-left: 1px;
	margin-bottom: 2px;
}

.detail_menu2 {
	margin-top: 5px;
	margin-bottom: -20px;
	font-size: 18pt;
	color: #bf0000;
}





.div_kontakty h3 {
	display: block;
	font-size: 43pt;
	font-weight: 300;
	margin-bottom: 5px;
}

.contact-card {
	margin-top: 30px;
}

.div_kontakty h4,
.div_kontakty h5,
.div_kontakty h6 {
	padding 0;
	margin: 0;
}

.div_kontakty h4 {
	font-size: 22pt;
}

.div_kontakty h4 a {
	text-decoration: none;
	color: #000;
}

.div_kontakty h5 {
	font-size: 12pt;
	font-weight: 700;
	margin-top: 20px;
	margin-bottom: 8px;
}

.div_kontakty h6 {
	font-size: 10pt;
	font-weight: 700;
	margin-left: 2px;
}

.div_kontakty .half {
	float: left;
	position: relative;
	display: block;
	text-align: left;
	width: 300px;
	overflow: visible;
	margin-bottom: 25px;
}

.div_kontakty .first {
	width: 500px;
	margin-right: 80px;
}

.div_kontakty .first p {
	margin-top: 15px;
}

.div_kontakty .first td {
	background-color: #eee;
	padding: 5px 25px 5px 25px;
}

.div_kontakty hr {
	clear: both;
	border: 0;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
}

.div_kontakty ul.pobocky {
	float: left;
	position: relative;
	display: inline-block;
	text-align: left;
	width: 240px;
	overflow: visible;
	margin-bottom: 25px;
}


.div_poptavka_left h3 {
	display: block;
	font-size: 43pt;
	font-weight: 300;
	margin-bottom: 15px;
}

.div_poptavka_left {
	float: left;
	position: relative;
	display: block;
	text-align: left;
	width: 550px;
	overflow: visible;
	margin-right: 15px;
	margin-bottom: 15px;
}

.div_poptavka_right {
	float: right;
	position: relative;
	display: block;
	text-align: left;
	width: 295px;
	overflow: visible;
	margin-right: 15px;
	margin-bottom: 15px;
}

a.poptavka_callback {
	display: block;
	background-color: #ddd;
	color: #000;
	padding: 15px;
	text-decoration: none;
}

a.poptavka_callback span {
	display: block;
	color: #bf0000;
	font-size: 20pt;
	font-weight: 700;
	text-decoration: underline;
}

a.poptavka_callback:hover {
	background-color: #ccc;
}

a.poptavka_callback:hover span {
	color: #8f0000;
}



.poptavka1 {
	background-color: #ddd;
	padding: 15px;
}

.poptavka_nadpis1 {
	font-size: 20pt;
	font-weight: 700;
}

.poptavka_nadpis2 {
	font-size: 16pt;
	font-weight: 700;
	margin-bottom: 5px;
}

.poptavka_tel {
	font-size: 24pt;
	font-weight: 700;
	margin-top: 5px;
	color: #bf0000;
}



.contactbox_pre {
	text-align: left;
	font-size: 18pt;
	margin-top: 30px;
	margin-bottom: 0px;
	font-weight: 300;
}

.contactbox_pre p {
	font-size: 40pt;
	margin-bottom: 5px;
	color: #333;
}

.contactbox_pre span {
	font-weight: 400;
}

.contactbox {
	border: 0px solid #f00;
	position: relative;
	text-align: center;
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	overflow: visible;
	background-image: url(./images/bg_contactbox.png);
	background-repeat: no-repeat;
	background-position: center 4px;
}

.contactbox_part {
	border: 0px solid #00f;
	float: left;
	position: relative;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	width: 33%;
	height: 80px;
	overflow: visible;
}

.contactbox_toptext {
	font-size: 23pt;
	margin-top: 4px;
}

.contactbox_list {
	font-size: 11pt;
}

.contactbox_list ul {
	margin: 0;
	padding: 0px 0px 0px 20px;
}

.contactbox_list a {
	text-decoration: none;
}

.contactbox_list a:hover {
	text-decoration: underline;
}




.contactbox2 {
	border: 0px solid #f00;
	position: relative;
	text-align: center;
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 200px;
	overflow: visible;
}

.contactbox2_part {
	border: 0px solid #00f;
	float: left;
	position: relative;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	width: 50%;
	height: 80px;
	overflow: visible;
}

.contactbox2_list {
	font-size: 16pt;
}

.contactbox2_list ul {
	margin: 0;
	padding: 0px 0px 0px 20px;
}

.fontsize17 {
	font-size: 17pt;
}





.bottom_div {
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 185px;
	background-color: #979797;
	background-image: url(./images/bg_bottom.jpg);
	background-repeat: repeat-x;
	background-position: center top;
	overflow: hidden;
}

.bottom_div_in {
	position: relative;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 880px;
	height: 150px;
	overflow: hidden;
}

.bottom_div_line {
	border: 0px solid #f00;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 13px;
	margin: 0;
	background-color: #000;
	opacity: 0.40;
	filter: alpha(opacity=40);
	-moz-opacity: 0.40;
	-khtml-opacity: 0.40;
}

.bottom_div_in_bg {
	border: 1px solid #f00;
	position: absolute;
	top: 16px;
	left: 0px;
	width: 100%;
	height: 142px;
	margin: 0;
	background-color: #000;
	opacity: 0.15;
	filter: alpha(opacity=15);
	-moz-opacity: 0.15;
	-khtml-opacity: 0.15;
}

.bottom_div_left {
	border: 0px solid #f00;
	position: absolute;
	left: 15px;
	top: 40px;
	width: 400px;
	height: 100px;
	text-align: left;
	margin: 0;
}

.bottom_div_left p {
	display: block;
	margin-left: 85px;
	font-size: 20pt;
	color: #fff;
}

.bottom_div_right {
	border: 0px solid #f00;
	position: absolute;
	top: 40px;
	right: 18px;
	width: 390px;
	height: 100px;
	text-align: left;
	margin: 0;
}

.bottom_div_right a {
	color: #444;
}

.bottom_div_right a:hover {
	color: #fff;
}






.opacity {
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-khtml-opacity: 1;
}

.opacity:hover {
	opacity: 0.85;
	filter: alpha(opacity=85);
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
}

.opacity2 {
	opacity: 0.85;
	filter: alpha(opacity=85);
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
}

.opacity2:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-khtml-opacity: 1;
}

.boxshadow {
	box-shadow: 4px 6px 20px black;
	-webkit-box-shadow: black 4px 6px 20px;
	-moz-box-shadow: black 4px 6px 20px;
}




/* KONKRETNI FOTOGALERIE */
.fotogalerieindiv {
	color: #f00;
	border: 10px solid #000;
}

div.fotogalerie_div {}

a.fotogalerie_a {
	position: relative;
	overflow: hidden;
	float: left;
	width: 324px;
	height: 216px;
	margin-right: 2px;
	margin-bottom: 2px;
	display: block;
	text-decoration: none;
	text-align: center;
	border-bottom: 0px solid #fff;
	border-right: 0px solid #fff;
}

a.fotogalerie_a:hover {
	text-decoration: none;
	border-bottom: 0px solid #fff;
	border-right: 0px solid #fff;
}

a.fotogalerie_a p {
	width: 324px;
	height: 216px;
	overflow: hidden;
}


a.fotogalerie_a img {
	position: absolute;
	top: 0;
	left: 0;
	border: 0;
}

a.fotogalerie_a:hover img {
	border: 0;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
}

a.fotogalerie_a span {
	position: absolute;
	top: 200px;
	left: 0px;
	width: 324px;
	height: 16px;
	display: block;
	padding: 2px;
	margin-top: 0px;
	font-size: 9pt;
	color: #fff;
	overflow: hidden;
	background-color: #000;
	opacity: 0.5;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	-khtml-opacity: 0.5;
	cursor: pointer;
	cursor: hand;
}

a.fotogalerie_a:hover span {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
}



.banners_right {
	position: absolute;
	left: 50%;
	top: 954px;
	text-align: center;
	margin-left: 440px;
	margin-right: auto;
	width: 205px;
	height: 350px;
	overflow: visible;
	border: 0px solid #f00;
}









.nopadding {
	padding: 2px !important;
	margin: 0px !important;
}

.foto-div {
	width: 100%;
	height: 226px;
	padding: 2px !important;
	border: 1px solid #ddd;
	overflow: hidden;
}

.foto-div2 {
	width: 100%;
	height: 220px;
	padding: 2px !important;
	border: 1px solid #888;
	overflow: hidden;
}

@media(max-width:767px) {
	.foto-div {
		height: 276px;
	}

	.foto-div2 {
		height: 270px;
	}
}

/* FOTOALBUM */
a.fotoalbum_a {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	display: inline-block;
	text-decoration: none;
	text-align: center;
	background-position: center center;
	background-size: cover;
}

a.fotoalbum_a:hover {
	text-decoration: none;
}

a.fotoalbum_a span.text {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	display: block;
	padding: 25px 15px 7px 15px;
	margin-top: 0px;
	font-size: 0.83em;
	text-shadow: 2px 1px 0px #000;
	line-height: 1.4em;
	text-align: left;
	color: #fff;
	overflow: hidden;
	cursor: pointer;
	cursor: hand;
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 95%);
	background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 95%);
	background: -moz-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 95%);
	background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 95%);
}

a.fotoalbum_a:hover span.bg {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 25%;
	display: block;
	cursor: pointer;
	cursor: hand;
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 95%);
	background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 95%);
	background: -moz-linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 95%);
	background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 95%);
}

a.fotoalbum_a span.ico {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	display: block;
	cursor: pointer;
	cursor: hand;
}

a.fotoalbum_a:hover span.ico {
	background-image: url('/images/icon-fotozoom.png');
	background-repeat: no-repeat;
	background-position: 55% 46%;
}





@media screen {
	.onlyprint {
		display: none;
	}

	#maindiv {
		position: relative;
		border: 0px solid #000000;
		width: 880px;
		font-size: 1pt;
		min-height: 400px;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}

	#main {
		position: relative;
		border: 0px solid #00FF00;
		padding: 40px 0px 20px 0px;
		min-height: 380px;
		text-align: left;
		margin-left: auto;
		margin-right: auto;
	}

}


@media print {
	.noprint {
		display: none;
	}

	body {
		color: #000000;
	}

	a {
		color: #666;
	}

	a:hover {
		color: #666;
	}

	.head {
		margin-top: 0px;
		margin-bottom: 5px;
		margin-right: 0px;
		padding-top: 0px;
		padding-bottom: 0px;
		font: normal 18pt Arial, sans-serif;
		color: #000000;
		text-align: center;
	}

	#maindiv {
		border: 0px solid #000000;
		width: 100%;
		background-color: #FFFFFF;
		margin-bottom: -50px;
	}

	#main {
		border: 0px solid #00FF00;
		margin-right: 0px;
		margin-left: 0px;
		margin-top: 0px;
		padding: 0px;
	}

	td {
		padding: 0px;
		margin: 0px;
	}
}

/* Hide mobile elements by default on desktop */
.mobile-header-bar,
.mobile-menu-overlay,
.mobile-menu {
	display: none !important;
}

.form-status {
	width: 520px;
	max-width: 100%;
	padding: 15px;
	margin-top: 0px;
	margin-bottom: 15px;
	font-size: 13pt;
	text-align: center;
	color: #fff;
}

.form-status-icon {
	float: left;
	margin-right: 15px;
}

.form-status-icon-ok {
	margin-top: -5px;
}

.form-status-icon-alert {
	margin-top: -35px;
}



/* ==========================================
   RESPONSIVE DESIGN (max-width: 991px)
   ========================================== */
@media (max-width: 991px) {

	/* Hide desktop elements */
	.top_div {
		display: none !important;
	}

	/* Show mobile header bar */
	.mobile-header-bar {
		display: flex !important;
		justify-content: space-between;
		align-items: center;
		background: #fff;
		padding: 10px 15px;
		border-bottom: 1px solid #e5e5e5;
		position: sticky;
		top: 0;
		z-index: 1030;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	}

	.mobile-logo img {
		height: 38px !important;
		width: auto !important;
		display: block;
	}

	/* Mobile Menu Toggle Button (Hamburger) */
	.mobile-menu-toggle {
		background: none !important;
		border: none !important;
		cursor: pointer !important;
		padding: 5px !important;
		display: block !important;
	}

	.mobile-menu-toggle .icon-bar {
		display: block !important;
		width: 25px !important;
		height: 3px !important;
		background-color: #000 !important;
		margin: 4px 0 !important;
		border-radius: 2px !important;
	}

	/* Mobile Side Drawer Menu */
	.mobile-menu {
		position: fixed !important;
		top: 0 !important;
		right: -280px !important;
		width: 280px !important;
		height: 100% !important;
		background-color: #fff !important;
		z-index: 1050 !important;
		transition: right 0.3s ease !important;
		box-shadow: -2px 0 5px rgba(0, 0, 0, 0.15) !important;
		padding: 20px !important;
		box-sizing: border-box !important;
		display: block !important;
	}

	.mobile-menu-overlay {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		background-color: rgba(0, 0, 0, 0.5) !important;
		z-index: 1040 !important;
		display: none;
	}

	body.mobile-menu-open {
		overflow: hidden !important;
	}

	body.mobile-menu-open .mobile-menu {
		right: 0 !important;
	}

	body.mobile-menu-open .mobile-menu-overlay {
		display: block !important;
	}

	.mobile-menu-close {
		font-size: 36px !important;
		cursor: pointer !important;
		text-align: right !important;
		color: #000 !important;
		font-weight: bold !important;
		line-height: 1 !important;
		margin-bottom: 20px !important;
	}

	.mobile-menu ul {
		list-style: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.mobile-menu li {
		margin-bottom: 20px !important;
		list-style: none !important;
	}

	.mobile-menu a {
		color: #000 !important;
		font-size: 16pt !important;
		text-decoration: none !important;
		display: block !important;
		font-weight: 600 !important;
	}

	.mobile-menu a:hover {
		color: #bf0000 !important;
	}

	/* Layout Width Overrides to Auto/Fluid */
	#maindiv,
	.topbox_div_in,
	.bottom_div_in {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
		box-sizing: border-box !important;
	}

	/* Topbox responsiveness */
	.topbox_div {
		height: auto !important;
		padding: 25px 0 !important;
		background-size: cover !important;
	}

	.topbox_div_in {
		height: auto !important;
		overflow: visible !important;
	}

	.topbox_div_left {
		position: static !important;
		width: 100% !important;
		height: auto !important;
		text-align: center !important;
		margin-bottom: 20px !important;
	}

	.topbox_div_left h1 {
		font-size: 30pt !important;
	}

	.topbox_div_left h2 {
		font-size: 16pt !important;
		line-height: 20pt !important;
		margin-top: 10px !important;
	}

	.topbox_div_right {
		position: static !important;
		width: 100% !important;
		text-align: center !important;
		margin-top: 10px !important;
	}

	/* Main section */
	#main {
		width: 100% !important;
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}

	/* Footer responsiveness */
	.bottom_div {
		height: auto !important;
		padding: 25px 0 !important;
		background-size: cover !important;
	}

	.bottom_div_in_bg,
	.bottom_div_line {
		display: none !important;
	}

	.bottom_div_in {
		height: auto !important;
		overflow: visible !important;
	}

	.bottom_div_left {
		position: static !important;
		width: 100% !important;
		height: auto !important;
		text-align: center !important;
		margin-bottom: 15px !important;
	}

	.bottom_div_left p {
		margin-left: 0 !important;
		font-size: 16pt !important;
		margin-top: 10px !important;
	}

	.bottom_div_right {
		position: static !important;
		width: 100% !important;
		height: auto !important;
		text-align: center !important;
	}

	/* Contactbox stacking */
	.contactbox {
		background-image: none !important;
		height: auto !important;
	}

	.contactbox_part {
		width: 100% !important;
		float: none !important;
		height: auto !important;
		text-align: center !important;
		margin-bottom: 15px !important;
	}

	.contactbox_toptext {
		font-size: 18pt !important;
	}

	/* Homepage Carousel Override (displays as stackable cards) */
	.outerWrapper {
		width: 100% !important;
		max-width: 100% !important;
	}

	.outerWrapper .mask {
		height: auto !important;
		overflow: visible !important;
	}

	.outerWrapper .innerWrapper {
		width: auto !important;
		height: auto !important;
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		transform: none !important;
		left: auto !important;
		right: auto !important;
	}

	.outerWrapper .item.caro_element {
		float: none !important;
		display: inline-block !important;
		width: 100% !important;
		max-width: 290px !important;
		height: auto !important;
		margin: 10px 10px 20px 10px !important;
	}

	.left-nav-btn,
	.right-nav-btn {
		display: none !important;
	}

	/* Typy Page Grid Layout (.co-vyrabime) */
	.typy {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		margin-right: 0 !important;
		margin-bottom: 30px !important;
		text-align: center !important;
		border-bottom: 1px solid #e5e5e5;
		padding-bottom: 40px !important;
	}

	.typy img {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.typy_clear_both {
		display: none !important;
	}

	/* Detail Pages Layout */
	.detail_left,
	.detail_right {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		margin-right: 0 !important;
		text-align: left !important;
	}

	.detail_right {
		text-align: center !important;
		margin-top: 20px !important;
	}

	.detail_right img {
		max-width: 100% !important;
		height: auto !important;
		width: auto !important;
	}

	.detail_both h3 {
		font-size: 26pt !important;
		padding-bottom: 15px !important;
	}

	.detail_left ul {
		margin-top: 20px !important;
	}

	/* Contacts Page Layout */
	.div_kontakty h3 {
		font-size: 26pt !important;
	}

	.div_kontakty h4 {
		font-size: 18pt !important;
	}

	.div_kontakty .half.first {
		width: 100% !important;
		margin-right: 0 !important;
	}

	.div_kontakty .half {
		width: 100% !important;
		float: none !important;
		text-align: left !important;
		margin-bottom: 20px !important;
	}

	.div_kontakty .half img {
		max-width: 100% !important;
		height: auto !important;
	}

	/* Forms responsiveness */
	form[name="formularP"] textarea,
	form[name="formularP"] input[type="text"] {
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.div_poptavka_left,
	.div_poptavka_right {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		margin-right: 0 !important;
	}

	.div_poptavka_left h3 {
		font-size: 26pt !important;
	}

	/* Global Reset for Image scaling */
	img {
		max-width: 100% !important;
		height: auto !important;
	}

	.begin_top {
		margin-top: 35px !important;
		text-align: center;
	}

	a.caro_element_a_top img {
		width: 100% !important;
	}

	a.typy_seznam {
		margin-top: 15px !important;
	}

	.typy_text {
		text-align: left;
	}

	.typy_p_button a.abutton strong {
		display: block;
	}

	.arrow-red-down-div {
		display: none !important;
	}

	#detail_d_fotky {
		max-height: 1870px;
	}

	a.fotoalbum_a span.text {
		font-size: 1em;
	}

	.form-status-icon {
		float: none;
		display: block;
		margin: 0 auto;
		margin-bottom: 15px;
	}



}