/* ------------------------------- FONTS ------------------------------- */
@font-face {
	font-family: 'Raleway';
	src: url('./fonts/Raleway/static/Raleway-Regular.ttf');
	font-weight: 400;
}

@font-face {
  font-family: 'Raleway';
  src: url('./fonts/Raleway/static/Raleway-SemiBold.ttf');
  font-weight: 600;
}

@font-face {
	font-family: 'Raleway';
	src: url('./fonts/Raleway/static/Raleway-Bold.ttf');
	font-weight: 700;
}

@font-face {
	font-family: 'Raleway';
	src: url('./fonts/Raleway/static/Raleway-ExtraBold.ttf');
	font-weight: 800;
}

@font-face {
	font-family: 'Playfair Display';
	src: url('./fonts/Burgundia/Burgundia.otf');
	font-weight: 700;
}

/* ------------------------------- BASIC ------------------------------- */

/* ------------------------------- !!!end of BASIC ------------------------------- */
	*, *:before, *:after {
	  box-sizing: border-box;
	}

	img {
		max-width: 100%;
	}
/* ------------------------------- !!!end of FONTS ------------------------------- */

/* ------------------------------- MAIN LAYOUT GRID ------------------------------- */
body {
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-areas:
    	"header"
    	"banner"
    	"flash"
    	"main-container"
    	"gallery"    	
    	"footer";
}

header {
	grid-area: header;
	display: grid;
	grid-template-columns: 1fr 5fr 67px;
	grid-template-areas:
    	"logo nav cart";
    align-items: center;
}

.main-container {
	width: 100%;
	overflow: hidden;
	grid-area: main-container;
	display: grid;
	grid-template-columns: minmax(0 ,1fr);
	grid-template-areas:
    	"main";
}

.flash-msg {
	grid-area: flash;
}

.banner {
	grid-area: banner;
}

main {
	grid-area: main;
}

.gallery {
	grid-area: gallery;
}

footer {
	grid-area: footer;
}

header img {
	grid-area: logo;
}

nav {
	grid-area: nav;
}

.cart-space {
	grid-area: cart;
}

/* ------------------------------- !!!end of MAIN LAYOUT GRID ------------------------------- */

/* ------------------------------- COLORS ------------------------------- */

html {
	/*background-color: #eee;*/
}

header {
	/*background-color: #F8F8F8;*/
}

.main-container {
	background-color: #fff;
}

footer {
	/*background-color: gold;*/
}

/* ------------------------------- !!!end of COLORS ------------------------------- */

/* ------------------------------- FONTS ------------------------------- */
body {
    font-family: Raleway;
	font-weight: 600;
}


h1.underline:after,
h2.underline:after{
    content: "";
    display: block;
    width: 178px;
    padding-top: 40px;
    border-bottom: 2px solid #ffdb89;
}

h1.underline-white:after,
h2.underline-white:after {
	content: "";
	display: block;
	width: 178px;
	padding-top: 40px;
	border-bottom: 2px solid #fff;
}

h1,
h2 {
	font-family: "Playfair Display";
	font-weight: 700;
	color: #000;
	font-size: 48px;
}

p {
    font-size: 18px;
    line-height: 28px;
}

p.narrow {
	max-width: 550px;
}

/* ------------------------------- !!!end of FONTS ------------------------------- */

/* ------------------------------- RESET ------------------------------- */
a:link,
a:visited,
a:hover,
a:active {
	color: #000;
	text-decoration: none;
}
/* ------------------------------- !!!end of RESET ------------------------------- */

/* ------------------------------- HEADER ------------------------------- */
.header-container {
	top: 0;
	left: 0;
	width: 100%;
}

header {
	width: 100%;
	max-width: 1596px;
	margin: 0 auto;
	padding: 10px;
}

header img {
    width: 220px;
}

body:not(.start-page) .header-container {
    border-bottom: 1px solid #ccc;
}
/* ------------------------------- !!!end of HEADER ------------------------------- */

/* ------------------------------- FLASH ------------------------------- */
.flash-msg {
    width: 100%;
    max-width: 1596px;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 5px;
}

.flash-msg.flash-success {
	color: #155724;
	background-color: #d4edda;
}

.flash-msg.flash-info {
	color: #004085;
	background-color: #cce5ff;
}

.flash-msg.flash-danger {
	color: #721c24;
	background-color: #f8d7da;
}
/* ------------------------------- !!!end of FLASH ------------------------------- */


/* ------------------------------- NAV ------------------------------- */
nav {

}

nav ul {
	list-style: none;
	padding: 0;
    float: right;
}

nav ul li {
	float: left;
    margin: 0 6px;
}

nav ul li a {
    text-decoration: none;
    display: inline-block;
    color:  #000 !important;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 1.26px;
	text-transform: uppercase;
	padding: 5px 15px;
}

nav ul li a:hover {
    color:  #921813 !important;
}

/* nav subcat */
nav ul li ul {
	display: none;
	position: absolute;
	background-color: #fff;
}
/*  */
nav ul li ul li {
	float: none;
}

nav ul li:hover ul,
nav ul li ul:hover {
	display: block;
}
/* ------------------------------- !!!end of NAV ------------------------------- */


/* ------------------------------- BANNER ------------------------------- */
.banner {
    position: static;
    padding-bottom: 5px;
}

.banner img {
    width: 100%;
}

body.start-page .banner {
	position: static;
}

.banner .banner-textPlace {
	display: none;
}

body.start-page .banner .banner-textPlace {
	display: block;
	position: absolute;
	top: 250px;
	left: 2%;
    padding: 20px;
}

body.start-page .banner .banner-text {
	font-family: "Playfair Display";
	color: #fff;
	font-size: 65px;
	line-height: 120%;
	margin-bottom: 0px;
    text-shadow: 0px 0.05em 0.7em black;
}

body.start-page .banner .banner-text span{
	color: #FFDB89;
}
/* ------------------------------- !!!end of BANNER ------------------------------- */


/* ------------------------------- MAIN-CONTAINER ------------------------------- */
.main-container {
	/*margin-top: 133px;*/
}

body.start-page .main-container {
	margin-top: 0;
}
/* ------------------------------- !!!end of MAIN-CONTAINER ------------------------------- */

/* ------------------------------- BOX ------------------------------- */
.box-container {
	display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
	max-width: 1596px;
	margin: 0 auto;
}

.box-container .box {
	width: 1fr;
    background-color: #eee;
    padding: 10px;
}

.box-container .box100 {
	grid-column-start: 1;
    grid-column-end: 3;
}

.box-container .box.img {
    background-color: transparent;
    padding: 0;
}

.box.color-transparent {
    background-color: transparent;
}

.box-container.full-width{
	max-width: 100%;
}

.color-yellow {
	background-image: url("../img/back_green.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
	overflow: hidden;
}

.color-wine {
	background-color: #bc6246 !important;
}

.hrozen-vertical,
.hrozen-vertical-right {
	position: relative;
}

.hrozen-vertical:before,
.hrozen-vertical-right:before{
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	width: 26px;
	height: 157px;
	left: -85px;
	top: 20px;
}

.hrozen-vertical-right:before{
	left: auto;
	right: -85px;
}

.center {
	text-align: center;
}

.hrozen-horizontal {
	position: relative;
}

.hrozen-horizontal:before,
.hrozen-horizontal:after {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	width: 250px;
	height: 28px;
	top: 20px;
}

.hrozen-horizontal:before {
	left: calc(50% + 200px);
}

.hrozen-horizontal:after {
	right: calc(50% + 200px);
}
/* ------------------------------- !!!end of BOX ------------------------------- */

/* ------------------------------- HP CATEGORY BOX ------------------------------- */
.hp-category-box {
	display: block;
	width: calc(20% - 30px);
	float: left;
	background: linear-gradient(to bottom, #fff, #ffdb89);
	border-radius: 10px;
	margin: 15px;
}

.hp-category-box:hover {
	background: #fff;
	box-shadow: 0px 10px 38px rgba(0, 0, 0, 0.2);
}

.hp-category-box .inner-bg {
	background: #fff;
	border-radius: 8px;
	margin: 2px;
	padding: 10px;
}

.hp-category-box .imgWrap {
	min-height: 488px;
	display: grid;
	justify-content: center;
	align-content: center;
}

.hp-category-box .category-text {
	font-family: 'Playfair Display';
	font-size: 24px;
	text-align: center;
	margin-bottom: 20px;
}

.hp-category .btn {
	margin: 50px 20px;
}

/* ------------------------------- !!!end of HP CATEGORY BOX ------------------------------- */

/* ------------------------------- BTN ------------------------------- */
.btn {
    display: block;
    cursor: pointer;
	border-radius: 10px;
	border: 2px solid #FFDB89;
    color: #000;
	min-width: 217px;
	text-align: center;
    padding: 16px 36px;
	margin: 20px 30px 0 0;
    display: inline-block;
    font-weight: 700;
}

.btn.whiteText {
	color: #fff;
	background-color: transparent;
}

.btn.whiteBorder {
	border-color: #fff;
}

.btn.whiteBg {
	color: #000;
	background-color: #fff;
	border-color: #fff;
}

.btn.wineBg {
	color: #fff;
	background-color: #921813;
	border-color: #921813;
}

.btn.wineBorder {
	color: #fff;
	border-color: #921813;
}

/*
.btn:hover {
    background-color: #992d2d;
}
*/
 */
/* ------------------------------- !!!end of BTN ------------------------------- */

/* ------------------------------- FORMS ------------------------------- */
label,
input {
	display: block;
}

input[type='checkbox'] {
	display: inline-block;
}

label {
	padding-top: 15px;
	font-weight: bold;
	font-size: 15px;
}

button {
	border: none;
	font-size: 16px;
	margin-top: 10px;
}

.niceForm input[type='text'],
.niceForm input[type='email'],
.niceForm input[type='password'] {
	border: 1px solid #ccc;
	display: block;
	margin: 3px 0 10px 0;
	padding: 10px;
	width: 100%;
	max-width: 600px;
}

.niceForm button,
.niceForm input[type='submit'] {
	display: block;
	cursor: pointer;
	border: 2px solid #ccc;
	color: #000;
	min-width: 217px;
	text-align: center;
	padding: 16px 26px;
	margin: 20px 30px 0 0;
	display: inline-block;
	font-weight: 700;
}
/* ------------------------------- !!!end of FORMS ------------------------------- */


/* ------------------------------- SHOW ARTICLE ------------------------------- */

.article-container {
  display: grid;
  grid-template-columns: 2fr 1fr;
}

.side-container {
	padding: 10px;
	margin: 0 auto;
}

.article-inner {
	padding: 10px 50px;
}

.product_container .doprodej {
	position: absolute;
	top: 5px;
	left: 5px;
	padding: 5px 8px;
	background-color: #921813;
	color: #fff;
}

.info_form_container {
	position: relative;
}

.info_form_container .doprodej {
	position: absolute;
	top: 5px;
	left: 5px;
	padding: 5px 8px;
	background-color: #921813;
	color: #fff;
}
/* ------------------------------- !!!end of SHOW ARTICLE ------------------------------- */

/* ------------------------------- HP-CLAIMS ------------------------------- */
.box-container .hp-claims {
	grid-column-start: 1;
	grid-column-end: 3;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	width: 100%;
	max-width: 1596px;
	margin: 0 auto;
	justify-items: center;
	padding: 50px 0;
}
.box-container .hp-claim {
    text-align: center;
}

.box-container .hp-claim .claim-text{
    color: #fff;
	max-width: 190px;
	padding-top: 15px;
}
/* ------------------------------- !!!end of HP-CLAIMS ------------------------------- */

/* ------------------------------- HP-SPECIAL-BOX ------------------------------- */
.box-container .box.rezervacni-box {
	text-align: center;
	color: #fff;
	padding: 60px 0;
	margin: 10px;
	margin-top: -70px;
	font-weight: 700;
}

.rezervacni-box .red-text{
	color: #921813;
}

.rezervacni-box .btn {
	margin: 30px;
}

.rezervacni-box .btn.rezervace {
	border-radius: 0;
	border: none;
	background-color: #fff;
	width: 469px;
	line-height: 23px;
	font-size: 17px;
	padding-bottom: 41px;
}

.rezervacni-box .check-in-area,
.rezervacni-box .check-out-area {
	display: inline-block;
	position: relative;
}

.rezervacni-box .btn.rezervace + .check-in-text,
.rezervacni-box .btn.rezervace + .check-out-text {
	position: absolute;
	width: 100px;
	top: 75px;
	left: calc(50% - 50px);
	pointer-events: none;
}

.rezervace-line {
	display: inline-block;
	width: 31px;
	height: 1px;
	background-color: #ffdb89;
	position: relative;
	bottom: -7px;
}

.box-ubytovani {
	position: relative;
	display: grid;
	align-content: end;
}

.box-container.hp-ubytovani .btn {
	margin-bottom: 80px;
}

.box-container.hp-bottom {
	background-image: linear-gradient(to bottom, #fff 50%, #ffdb89 50%);
	padding-bottom: 80px;
}

.box-container.hp-bottom > .box {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px;
}

.box-container.hp-bottom .bottom-box {
	position: relative;
}

.box-container.hp-bottom .bottom-textPlace {
	position: absolute;
	bottom: 40px;
	text-align: center;
	width: 100%;
}

.box-container.hp-bottom .bottom-text {
	font-family: "Playfair Display";
	font-weight: 700;
	font-size: 32px;
	color: #fff;
}

.box-container.hp-bottom .btn {
	margin: 20px;
}

.box.nase-sluzby {
	padding-left: 90px;
}

.box.nase-sluzby .btn {
    margin-bottom: 55px;
}

/* ------------------------------- !!!end of HP-SPECIAL-BOX ------------------------------- */

/* ------------------------------- HP-GALLERY ------------------------------- */
.hp-gallery {
	display: flex;
	flex-wrap: wrap;
	padding: 100px 0 0 0 !important;
}

.hp-gallery .col {
	flex: 1;
	margin: 10px;
	text-align: center;
	min-width: 30%;
}

.hp-gallery img {
	width: auto;
	height: 100%;
	object-fit: cover;
}

.hp-gallery .btn {
	margin: 50px auto;
}
/* ------------------------------- !!!end of HP-GALLERY ------------------------------- */

/* ------------------------------- FOOTER ------------------------------- */
footer {
	background-image: url("../img/patka2.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
	overflow: hidden;
}


footer .inner {
	display: grid;
	grid-auto-columns: minmax(0, 1fr);
	grid-template-areas:
		"footer-box-1 footer-box-1 footer-box-2 footer-box-2 footer-box-3 footer-box-3"
		"footer-box-4 footer-box-4 footer-box-4 footer-box-4 footer-box-4 footer-box-4"
		"footer-box-5 footer-box-5 footer-box-5 footer-box-5 footer-box-5 footer-box-5"
		"footer-box-6 footer-box-6 footer-box-6 footer-box-7 footer-box-7 footer-box-7";
	max-width: 1157px;
	margin: 0 auto;
	padding-top: 60px;
}

footer a {
	color: #fff !important;
}

footer .footer-box-1 {
	grid-area: footer-box-1;
}

footer .footer-box-2 {
	grid-area: footer-box-2;
}

footer .footer-box-3 {
	grid-area: footer-box-3;
}

footer .footer-box-4 {
	grid-area: footer-box-4;
}

footer .footer-box-5 {
	grid-area: footer-box-5;
}

footer .footer-box-6 {
	grid-area: footer-box-6;
	text-align: left;
}

footer .footer-box-7 {
	grid-area: footer-box-7;
	text-align: right;
}

footer .footer-box-1,
footer .footer-box-2,
footer .footer-box-3 {
	font-size: 18px;
	line-height: 34px;
	font-weight: 400;
}

footer .footer-box-1:before,
footer .footer-box-2:before,
footer .footer-box-3:before {
	content: "";
	display: block;
	background-repeat: no-repeat;
	margin: 0 auto 30px auto;
}

footer .footer-box-1:before {
	background-image: url("../img/footer-icons/mdi_map-marker2.svg");
	height: 36px;
	width: 36px;
}

footer .footer-box-2:before {
	background-image: url("../img/footer-icons/fa_phone2.svg");
	height: 33px;
	width: 33px;
}

footer .footer-box-3:before {
	background-image: url("../img/footer-icons/bi_send-fill2.svg");
	height: 30px;
	width: 30px;
}

footer .footer-box-1:after,
footer .footer-box-2:after,
footer .footer-box-3:after {
	content: "";
	display: block;
	width: 125px;
	height: 2px;
	margin: 30px auto 0 auto;
	background-color: #FFFFFF;
}

footer .footer-box-6,
footer .footer-box-7 {
	font-size: 14px;
}

footer .footer-box-7 a {
	color: #ffdb89 !important;
}
footer .footer-box {
	padding: 20px;
}

footer h2 {
	font-size: 32px;
    color: #fff !important;
}

footer .btn {
	margin: 0;
	min-width: unset;
	padding: 10px 33px;
}

footer .social-btn .facebook-link,
footer .social-btn .instagram-link {
	display: inline-block;
	width: 32px;
	height: 32px;
	background-color: #921813;
	background-position: center;
	background-repeat: no-repeat;
}

footer .social-btn {
	margin-top: 60px;
}

footer .social-btn .facebook-link {
	background-image: url("../img/footer-icons/uil_facebook-f2.svg");
}

footer .social-btn .instagram-link {
	background-image: url("../img/footer-icons/ph_instagram-logo2.svg");
}

footer .footer-box-5 img {
    float: left;
}

footer .footer_menu {
    float: left;
    margin: 35px 20px 24px 35px;
}

footer .footer_menu a {
    text-transform: uppercase;
    padding: 0 27px;
}
/* ------------------------------- !!!end of FOOTER ------------------------------- */

/* ------------------------------- SLICK SLIDER ------------------------------- */
    .slider {
        width: 50%;
        margin: 100px auto;
    }
    

    .slick-slide {
      margin: 0px 10px;
      height: 100%;
    }

    .slick-slide img {
      width: 100%;
    }

    .slick-prev:before,
    .slick-next:before {
      color: black !important;
    }
/* ------------------------------- !!!end of SLICK SLIDER ------------------------------- */

/* ------------------------------- GALLERY ------------------------------- */
    .gallery,
    .gallery-slickme {
        width: calc(100vw - 50px);
        margin: 0 auto;
    }
/* ------------------------------- !!!end of GALLERY ------------------------------- */



/* respo menu - hc-offcanvas */
nav#hc-nav-1 *,
nav#hc-nav-1 *:before,
nav#hc-nav-1 *:after {
	box-sizing: content-box;
}

.hc-nav-trigger span,
.hc-nav-trigger span::before,
.hc-nav-trigger span::after {
	background: #000 !important;
}

.hc-offcanvas-nav .nav-container,
.hc-offcanvas-nav .nav-wrapper,
.hc-offcanvas-nav ul {
	background: #fff;
}

.hc-offcanvas-nav .nav-close-button span::before,
.hc-offcanvas-nav .nav-close-button span::after {
	border-top: 2px solid #000;
	border-left: 2px solid #000;
}

.hc-offcanvas-nav .nav-close-button:hover span::before,
.hc-offcanvas-nav .nav-close-button:hover span::after {
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
}

.hc-offcanvas-nav .nav-content > .nav-close:first-child {
	min-height: 50px;
}

.hc-offcanvas-nav ul {
	width: 100%;
}

.hc-offcanvas-nav:not(.touch-device) li:not(.nav-item-custom) a:not([disabled]):hover {
	background: transparent;
}

.hc-offcanvas-nav.hc-nav-1 .nav-container {
	width: 310px !important;
}

.hc-nav-trigger {
	right: 10px !important;
	margin: 0px 10px;
	padding: 10px;
}

.hc-nav-trigger span {
	left: 0;
}

.hc-offcanvas-nav .nav-item-link {
	font-size: 18px !important;
}

.hc-offcanvas-nav .nav-item {
	border-bottom: 1px solid #515151 !important;
}

.hc-offcanvas-nav ul:last-child .nav-item:last-child {
	border-bottom: none !important;
}

.hc-offcanvas-nav ul {
	display: block;
}

.hc-offcanvas-nav ul li {
	float: none;
}

.hc-offcanvas-nav a.nav-next::before {
	top: 12px !important;
}

.hc-offcanvas-nav .nav-item-link {
  padding: 18px 12px;
}

.nav-close {
	background-image: url("../../img/winberg_logo.svg");
	background-size: calc(100% - 150px);
	background-repeat: no-repeat;
	background-position: left center;
}

.hc-offcanvas-nav .nav-wrapper-0 > .nav-content > ul:not(:last-child) {
	margin-bottom: 0 !important;
}

.hc-offcanvas-nav.nav-levels-expand li.level-open > .nav-wrapper::before,
.hc-offcanvas-nav.nav-levels-none li .nav-wrapper::before {
	display: none !important;
}

.hc-offcanvas-nav.nav-levels-expand .nav-wrapper .nav-wrapper,
.hc-offcanvas-nav.nav-levels-none .nav-wrapper .nav-wrapper {
	margin-left: 0 !important;
}

nav.hc-offcanvas-nav ul li {
	margin: 0 0 0 6px;
}

/* ------------------------------- !!!end of NAV ------------------------------- */

/* ------------------------------- REGISTRACE ------------------------------- */
.registrace-uzivatel h1 {
	display: inline-block;
}

.registrace-uzivatel .btn {
	margin: 36px 30px 0 0;
	float: right;
}
/* ------------------------------- !!!end of REGISTRACE ------------------------------- */

/* ------------------------------- REZERVACE ------------------------------- */
.table-labels {
	display: flex;
	border: solid 3px #e5d6bf;
	padding: 7px;
	justify-content: center;
	align-items: center;
	width: calc(85% - 20px);
	margin: 10px auto;
}

.table-labels .left, .table-labels .right {
	width: 100px;
	text-align: center;
}

.table-labels .center {
	width: 250px;
}

.table-labels .center h2 {
	padding: 0px;
	margin: 0px;
	color: #454545;
	font-size: 22px;
}

.ubytovani_block .content .table-labels h3 {
	padding: 0px;
	margin: 0px;
}

.kalendar {
	margin: auto;
	width: 85%;
	margin-bottom: 20px;
	border-spacing: 4px;
	border-collapse: separate;
}

.kalendar tr th {
	text-align: center;
	font-size: 20px;
	text-transform: uppercase;
	color: #454545;
	padding-bottom: 10px;
}

.kalendar tr td {
	text-align: center;
	color: #454545;
	padding: 10px 20px 40px 20px;
	font-size: 17px;
	border: solid 3px #454545;
	position: relative;
}

.kalendar tr td .label {
	position: absolute;
	bottom: 21px;
	left: 10px;
	right: 10px;
	text-transform: uppercase;
	text-align: center;
	font-size: 14px;
}

.kalendar tr td .obsazenost-apartman {
	font-size: 12px;
	position: absolute;
	text-align: center;
	bottom: 5px;
	width: 100%;
	left: 0;
}

.kalendar tr td .obsazenost-apartman.obsazeny {
	color: #d9d9d9;
}

.kalendar tr td .obsazenost-apartman.volny {
	color: #454545;
}

.kalendar tr td.empty {
	border: none;
}

.kalendar tr td.volno {
	border-color: #e5d6bf;
}

.kalendar tr td.volno .label {
	color: #454545;
}

.kalendar tr td.minulost, .kalendar tr td.obsazeno {
	color: #d9d9d9;
	border-color: #d9d9d9;
}

.kalendar tr td .den {
	width: 50px;
	display: inline-block;
}

.textBigBold {
	font-weight: bold;
	font-size: 20px;
	text-align: center;
}

.rezervace_form {
	max-width: 1200px;
	margin: auto;
	padding: 10px 0px 70px;
}

.rezervace_form h2 {
	text-align: center;
	color: #454545;
	font-size: 55px;
	font-family: Merriweather-Bold;
	margin-bottom: 30px;
}

.rezervace_form h3 {
	text-align: center;
	color: #454545;
	font-size: 30px;
	font-family: Merriweather-Bold;
	margin-top: 30px;
	margin-bottom: 10px;
}

.rezervace_form .content {
	display: flex;
}

.rezervace_form .content .left {
	margin-right: 25px;
	width: 50%;
}

.rezervace_form .content .right {
	margin-left: 25px;
	width: 50%;
}

.rezervace_form .content input {
	background-color: transparent;
	color: #454545;
	font-family: "Solomon Sans Normal";
	text-align: left;
	border: none;
	outline: none;
	border: solid 2px #454545;
	border-radius: 0px;
	padding: 15px 20px;
	font-size: 19px;
	width: calc(100% - 40px - 4px);
	margin: 5px 0px;
}

.rezervace_form .content textarea {
	background-color: transparent;
	color: #454545;
	font-family: "Solomon Sans Normal";
	text-align: left;
	border: none;
	outline: none;
	border: solid 2px #454545;
	border-radius: 0px;
	padding: 15px 20px;
	font-size: 19px;
	resize: none;
	width: calc(100% - 40px - 4px);
	margin: 5px 0px;
}

.rezervace_form .content ::placeholder {
	font-family: "Solomon Sans Normal";
}

.rezervace_form_pokoj {
	width: calc(100% - 40px - 4px);
	height: 57px;
}

.rezervace_form .content .rezervace_form_pokoj.hidden {
	display: none;
}

.rezervace_form .content .rezervace_form_pokoj input {
	width: 150px;
	padding: 10px;
	float: right;
}

.rezervace_form .content .rezervace_form_pokoj label {
	font-size: 19px;
	margin-right: 10px;
	display: inline-block;
}

.rezervace_form .content .button2 {
	width: 300px;
	background-color: #e5d6bf;
	border: solid 1px transparent;
	font-size: 20px;
	padding: 10px 30px;
	font-weight: bold;
}

.rezervace_form .content .button2:hover {
	border: solid 1px black;
	background-color: transparent;
}

.rezervace_form .content .rezervace_form_button {
	text-align: center;
	margin: 10px 0px;
}

.specifikacePokoje,
.specifikaceApartmanu {
	display: none;
}

.pridatPokoj {
	width: 300px;
	background-color: #e5d6bf;
	border: solid 1px transparent;
	font-size: 20px;
	padding: 10px 30px;
	margin: 20px auto 0 auto;
	font-weight: bold;
	text-align: center;
	clear: both;
}

.typPokoje {
	width: calc(100% - 40px - 4px);
}

.typPokoje:after {
	content: "";
	display: block;
	clear: both;
}

.chciPokoj,
.chciApartman {
	width: 250px;
	background-color: #ccc;
	border: solid 1px transparent;
	font-size: 20px;
	padding: 10px 30px;
	margin: 20px auto;
	font-weight: bold;
	text-align: center;
	float: left;
	cursor: pointer;
}

.chciApartman {
	float: right;
}

.chciPokoj.active,
.chciApartman.active {
	background-color: #e5d6bf;
}

.chciPokoj input,
.chciApartman input {
	position: absolute;
	width: 0 !important;
	height: 0;
	z-index: -10;
}
/* ------------------------------- !!!end of REZERVACE ------------------------------- */

/* ------------------------------- SLEVOVE KUPONY ------------------------------- */
.slevovy-kupon-box {
	position: relative;
}

.slevovy-kupon-box button {
	position: absolute;
	top: 0;
	right: 0;
	color: #fff;
	background-color: #921813;
	cursor: pointer;
}

#coupon_message {
	padding: 10px;
}
/* ------------------------------- !!!end of SLEVOVE KUPONY ------------------------------- */

/* ------------------------------- RESPO ------------------------------- */
@media (min-width: 1960px) {
    body.start-page .banner .banner-textPlace {
        left: calc(50% - 825px);        
    }
}

@media (max-width: 1620px) {
    .box h1,
    .box h2,
    .box p {
        padding-right: 15px;
        padding-left: 15px;        
    }
    
    .box.nase-sluzby h1,
    .box.nase-sluzby h2,
    .box.nase-sluzby p {
        padding: 0;
    }
    
    body.start-page .banner .banner-textPlace {
        top: 12%;
    }
}

@media (max-width: 1320px) {
    body.start-page .banner .banner-textPlace {
        top: 120px;
    }

	body.start-page .banner .banner-text {
		font-size: 50px;
	}

	.rezervacni-box .btn.rezervace {
		width: 400px;
	}
	
	footer .footer_menu a {
        padding: 0 15px;
    }
}

@media (max-width: 1000px) {
	header {
		grid-template-columns: 1fr;
		grid-template-areas: "logo"
		   				     "nav";
	}

	body.start-page .banner .banner-textPlace {
		top: 130px;
	}

	body.start-page .banner .banner-text {
		font-size: 50px;
	}

	.hp-category-box {
		width: calc(33% - 30px);
	}

	.rezervacni-box .btn.rezervace {
		width: 300px;
	}

	.box-container.hp-bottom .bottom-text {
		font-size: 23px;
	}

	.box-container.hp-bottom .btn {
		min-width: unset;
	}

	.box-container .hp-claims {
		grid-template-columns: repeat(3, 1fr);
		gap: 70px 0;
	}

	footer .inner {
		grid-template-areas:
		"footer-box-1 footer-box-1"
		"footer-box-2 footer-box-2"
		"footer-box-3 footer-box-3"
		"footer-box-4 footer-box-4"
		"footer-box-5 footer-box-5"
		"footer-box-6 footer-box-7";
		padding-top: 30px;
	}
	
	footer .footer_menu {
        float: left;
        margin: 35px 10px 24px 10px;
    }
    
    footer .footer_menu a {
        padding: 0 10px;
        font-size: 14px;
    }
    
    .box.nase-sluzby {
        padding-left: 10px;
    }
}

@media (max-width: 800px) {
	.box-container .box {
		grid-column-start: 1;
		grid-column-end: 3;
	}

	.hp-category-box {
		width: calc(50% - 30px);
	}

	body.start-page .banner {
		position: relative;
	}
	
	.banner img {
		min-height: 320px;
		object-fit: cover;
	}
	
	body.start-page .banner .banner-textPlace {
		top: 45px;
		left: 50;
		padding: 0px 0px 0px 20px;
        width: 100%;
        text-align: left;
	}

	body.start-page .banner .banner-text {
		font-size: 40px;
		margin-bottom: 20px;
	}
	
	.box-container .hp-claims {
        padding: 50px 20px;
    }
    
    .btn {
        margin-right: 0;
    }

	.rezervace-line {
		display: none;
	}

	.box-container.hp-bottom > .box {
		grid-template-columns: 1fr;
	}

	.cart_space .cart_count_items {
		display: none;
	}

	.cart_space a.cart img {
		position: relative;
		top: 3px;
	}

	.cart_space a.register:after {
		content: "Můj účet";
	}

	.cart_space a.cart:after {
		content: "Košík";
	}
	
	footer .footer-box-5 {
        text-align: center;
    }
    
    footer .footer-box-5 img {
        float: none;
    }
    
    footer .footer_menu {
        float: none;
    }
    
    footer .footer_menu a {
        display: inline-block;
        padding: 10px;
    }

	/* kalendar */
	.kalendar {
		width: 100%;
	}

	.kalendar tr th {
		font-size: 16px;
	}

	.kalendar tr td {
		padding: 25px 0px;
		font-size: 15px;
	}

	.kalendar tr td .den {
		width: auto;
	}

	.kalendar tr td .label {
		font-size: 9px;
		left: 5px;
		right: 5px;
	}

	.rezervace_form .content {
		flex-wrap: wrap;
	}

	.rezervace_form .content .left {
		margin-right: 0px;
		width: 100%;
	}

	.rezervace_form .content .right {
		margin-left: 0px;
		width: 100%;
	}
}

@media (max-width: 650px) {
    .box {
        text-align: center;
        margin: 0 auto;
    }
    
    .box.nase-sluzby {
        padding-left: 10px;
    }

    h1.underline::after,
    h2.underline::after,
    h1.underline-white::after,
    h2.underline-white::after{
        margin: 0 auto;
    }
}

@media (max-width: 630px) {
	footer .inner {
		grid-template-areas:
		"footer-box-1"
		"footer-box-2"
		"footer-box-3"
		"footer-box-4"
		"footer-box-5"
		"footer-box-6"
		"footer-box-7";
	}

	footer .footer-box-6,
	footer .footer-box-7 {
		text-align: center;
	}
	
	.box.nase-sluzby {
        padding-left: 0;
    }
    
    .box {
        text-align: center;
    }
}

@media (max-width: 530px) {
	.hp-category-box {
		width: calc(100% - 30px);
	}

	body.start-page .banner .banner-text {
		font-size: 30px;
	}

	body.start-page .banner .banner-textPlace .btn {
		min-width: 147px;
		padding: 10px 20px;
	}

	/* kalendar */
	.kalendar {
		border-spacing: 1px;
	}

	.kalendar tr td {
		padding: 15px 0px 20px;
	}

	.kalendar tr td .label {
		font-size: 8px;
		left: 2px;
		right: 2px;
		bottom: 2px;
	}

	.table-labels {
		width: 200px;
	}

	.rezervace_form h2 {
		font-size: 20px;
	}

	.rezervace_form .content .button2 {
		width: 230px;
	}

	.rezervace_form .content .rezervace_form_pokoj label {
		min-width: 230px;
	}
}

@media (max-width: 390px) {
    body.start-page .banner .banner-text {
        margin-bottom: 0;
    }
    
    body.start-page .banner .banner-textPlace .btn {
        margin-right: 0;
    }
    
}

 /* ------------------------------- !!!end of RESPO ------------------------------- */
