@charset "utf-8";
/* CSS Document */

:root {
  --bg-color: #FFFFFF;
  --font-color: #2B2A29;
  --white: #FFFFFF;
  --main-clr: #FFAA3C;
  --gray: #EEEEEE;
}

@font-face { font-family: 'Basic-Regular'; src: url('fonts/montserrat/Montserrat-Regular.ttf'); }
@font-face { font-family: 'Basic-Medium'; src: url('fonts/montserrat/Montserrat-Medium.ttf'); }
@font-face { font-family: 'Basic-SemiBold'; src: url('fonts/montserrat/Montserrat-SemiBold.ttf'); }
@font-face { font-family: 'Basic-Bold'; src: url('fonts/montserrat/Montserrat-Bold.ttf'); }
@font-face { font-family: 'ExtraFont-Bold'; src: url('fonts/book-antiqua/ANTQUAB.TTF'); }

/* -------- BODY -------- */
html, body { height: 100%; }
body { padding: 0; margin: 0; color: var(--font-color); font-family: 'Basic-Regular', sans-serif; font-size: 18px; background: var(--bg-color); }

body>div.packet { height: auto; }
*, :after, :before { box-sizing: border-box; }

/* -------- BASIC CSS -------- */
h1 { margin: 24px 0 0 0; padding: 0; color: var(--main-clr); font-size: 1.7em; font-family: 'ExtraFont-Bold', sans-serif; text-transform: uppercase; letter-spacing: 1.25px; }
h1 span { display: block; padding: 0; margin: 0 0 2px 0; font-size: 0.6em; color: var(--font-color); }
.cover-photo h1 span { color: var(--white); }

h2, h3, h4, h5 { font-family: 'Basic-SemiBold', sans-serif; }
h2 { font-size: 3.75em; margin: 0 0 10px 0; padding: 0; }
h3 { display: inline-block; font-size: 3.5em; padding: 0 0 12px 0; margin: 40px 0 6px 0; border-bottom: 2px solid var(--gray); }
h4 { margin: 0; padding: 0; font-size: 2em; }
h5 { margin: 0; padding: 0; font-size: 1em; line-height: 1.5em; }

p { font-size: 1em; line-height: 1.7em; }

a { color: var(--font-color); text-decoration: underline; }
a:hover { text-decoration: none;  }

.main-body table { border-collapse: collapse; display: block; overflow-x: auto; white-space: nowrap; font-size: 1em; }
.main-body table tbody { display: table; width: 100%; }
.main-body table tr { vertical-align: top; }
.main-body table tr td { border-bottom: 1px solid var(--main-clr); line-height: 1.7em; padding: 10px 6px; }

.table-items { margin-bottom: 26px; }
.table-items tr td:first-child { width: 200px; font-family: 'Basic-Medium', sans-serif; }

.cleaner { clear: left; }
.highlighted-text, .cover-text span { color: var(--main-clr); }
.margin-top { margin-top: 20px !important; }

.cross { background-image: url("../img/ico/black-cross.svg"); background-size: 16px auto; background-position: left; background-repeat: no-repeat; padding-left: 20px; }

/* -------- LINKS AND BUTTONS -------- */
.a-button { display: inline-block; font-family: 'Basic-SemiBold', sans-serif !important; background: var(--main-clr); color: var(--white); text-decoration: none; padding: 8px 12px; text-transform: uppercase; }
.a-button:hover { color: var(--font-color) !important; transition: color 0.30s; text-decoration: none !important; }
.arrow-white-clr, .arrow-main-clr { display: inline-block; content: " "; width: 20px; height: 20px; background-repeat: no-repeat; background-position: center 6px; background-size: auto 14px; position: relative; left: 0; transition: left ease 0.3s; }
.arrow-white-clr { background-image: url("../img/ico/arrow-white.svg");  }
.arrow-main-clr { background-image: url("../img/ico/arrow-orange.svg");  }
.a-button:hover span { left: 5px; background-image: url("../img/ico/arrow-black.svg"); }

.zoom { transition: all 0.3s ease; }
.zoom:hover { transform: scale(1.1); }

/* -------- GRIDs -------- */
.grid-50, .grid-33, .grid-25 { display: -ms-grid; display: grid; row-gap: 1.25em; }

.grid-50 { -ms-grid-columns: 49% 2% 49%; grid-template-columns: repeat(2, 49%); -webkit-column-gap: 2%; -moz-column-gap: 2%; column-gap: 2%; }
.grid-33 { -ms-grid-columns: 32% 2% 32% 2% 32%; grid-template-columns: repeat(3, 32%); -webkit-column-gap: 2%; -moz-column-gap: 2%; column-gap: 2%; }
.grid-25 { -ms-grid-columns: 23.5% 2% 23.5% 2% 23.5% 2% 23.5%; grid-template-columns: repeat(4, 23.5%); -webkit-column-gap: 2%; -moz-column-gap: 2%; column-gap: 2%; }

.flex-wrapper { display: flex; flex-direction: row; gap: 2%; }
.flex-wrapper .unit { width: 50%; }

/* -------- LAYOUT -------- */
.packet { position: relative; min-height: 100%; height: 100%; margin: 0; padding: 0; }
.head { height: 100px; z-index: 100; margin-bottom: 36px; box-shadow: 0 4px 16px rgba(0,0,0,0.3); }
.cover-photo .head { margin-bottom: 0 !important; background: rgba(1,1,1,.2); }

.cover-photo { content: " "; width: 100%; height: 100vh; background-image: url("../img/cover-desktop.jpg"); background-repeat: no-repeat; background-size: cover; background-position: center; z-index: 0; }
.cover-text { position: absolute; top: 46vh; left: 30px; width: 540px; background: rgba(1,1,1,.4); padding: 20px 24px; }
.cover-text p, .cover-text-mobile p { margin: 0; padding: 0; font-family: 'ExtraFont-Medium', sans-serif; color: var(--white); line-height: 1.5em; }
.cover-text p { font-size: 1.8em;  }
.cover-text-mobile p { font-size: 1.5em; }
.cover-text-mobile p .highlighted-text { color: var(--font-color); }
.cover-text-mobile { display: none; width: 100%; background: var(--main-clr); padding: 20px 24px; }

.content, .footer-in { box-sizing: border-box; max-width: 1280px; margin: 0 auto; }
.content { position: relative; min-height: 10px; padding: 0 10px; }
.content img { max-width: 100%; }

.main-body { position: relative; width: 100%; min-height: 220px; padding: 0 0 200px 0; }
.main-body .content { margin-bottom: 46px; }
.thin-content { max-width: 860px; margin: 0 auto 0 auto; }

.footer { position: absolute; bottom: 0; width: 100%; font-family: 'Basic-Medium', sans-serif; background: var(--main-clr); color: var(--font-color); }
.footer-in { position: relative; height: 200px; padding: 6px 12px; text-align: center; font-size: 0.9em; line-height: 1.75em; }

/* -------- MENU -------- */
.logo a, .logo a:hover { text-decoration: none; color: inherit; }

.logo, .menu { float: left; }
.logo { width: 40%; }
.menu { width: 60%; text-align: right; line-height: 100px; }

.logo-symbol { float: left; width: 90px; height: 100px; margin-right: 18px; background-image: url("../img/tlapka.svg"); background-repeat: no-repeat; background-size: 90px auto; background-position: center left; }

menu { list-style: none; margin: 0; padding: 0; font-size: 1.25em; font-family: 'Basic-Medium', sans-serif; }
menu li { position: relative; display: inline-block; padding-left: 22px; margin-left: 22px; cursor: pointer; }
menu li:first-child { margin-left: 0 !important; padding-left: 0 !important; }
menu li, menu li a { color: var(--font-clr); text-decoration: none; } 
.cover-photo menu li, .cover-photo menu li a { color: var(--white); }
menu li:hover, menu li a:hover { color: var(--main-clr); transition: color 0.30s; }

menu li ul { display: none; margin: 0; padding: 0; position: absolute; width: 220px; background: var(--main-clr); z-index: 500; text-align: left; }
menu li ul li, menu li ul li:first-child { padding-left: 10px !important; margin-left: 0 !important; font-size: 0.75em; }
menu li ul li a { display: block; width: 210px; line-height: 30px; color: var(--white) !important; }
menu li ul li a:hover { color: var(--font-color) !important; }

menu li ul:before { content: ""; position: absolute; border-color: var(--main-clr); border: solid transparent; border-bottom-color: var(--main-clr); border-width: 11px; margin-left: -10px; top: -21px; left: 36px; z-index: 600; } 

.dropdown { line-height: 0 !important; }

@media screen and (min-width: 981px) {
	.head-burger { display: none !important; }	
	menu { display: block !important; }
}

/* -------- FOOTER -------- */
.footer a:hover { color: var(--font-color); text-decoration: none; }
.partner {  width: 100%; margin: 20px auto 0 auto; }
.partner a { content: " "; display: block; width: 300px; height: 54px; background-image: url("https://data.potrebujesweb.cz/img/logo/POTREBUJESWEB-logo_cernobily.svg"); background-repeat: no-repeat; }

.scroll-top { position: absolute; right: 10px; top: 30px; width: 50px; height: 50px; background-image: url("../img/ico/arrow-scroll-top.svg"); background-repeat: no-repeat; cursor: pointer; }

/* -------- HP -------- */
ul.line { margin: 20px 0 0 0; padding: 0; font-family: 'Basic-SemiBold', sans-serif; white-space: nowrap; overflow-x: auto; }
ul.line li { list-style: none; display: inline-block; cursor: pointer; color: var(--main-clr); }
ul.line li:before { content: ''; width: 16px; height: 2px; display: inline-block; vertical-align: middle; margin: 0 8px 0 8px; background-color: var(--gray); }
ul.line li:first-child:before { content: none !important; }
ul.line li.inactive { color: var(--font-color) !important; }

.wrap-photo { padding: 50px 0 0 0; width: 100%; text-align: center; }
.wrap-photo img { width: 94%; height: auto; }

/* -------- PAGINACE -------- (zatím pouze zkopírováno ze ZNOJMO ZIJE!!!) */ 
ul.paginace { margin: 40px 0 20px 0; padding: 0; }
ul.paginace li { display: inline-block; }
ul.paginace li.neaktivni { color: #979797; padding: 6px 12px; }
ul.paginace li.aktivni { color: var(--main-clr); padding: 6px 12px; }
ul.paginace a { display: block; width: 100%; padding: 6px 12px; text-decoration: none; }

/* -------- ARCHIVE -------- */
.archive-labels { margin: 26px 0 30px 0; border-bottom: 2px solid var(--gray); }
.label-active { background: var(--font-color) !important; }

/* -------- NEWS -------- */
.news { display: block; position: relative; aspect-ratio : 1 / 1; width: 100%; overflow: hidden; }
.news:hover h5 { text-decoration: underline; }
.news img { width: 100%; height: 100%; object-fit: cover; }
.news-filter { position: absolute; left: 0; bottom: 0; width: 100%; min-height: 20%; background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(0,0,0,1) 100%); padding: 26px 10px 10px 10px; color: var(--white); }

.label { display: inline-block; background: var(--main-clr); padding-left: 8px; margin: 0 10px 16px 0; font-family: 'Basic-SemiBold', sans-serif; }
.label a { display: inline-block; width: 100%; padding: 8px 12px 8px 26px; background: url("../img/ico/tag-solid.svg"); background-repeat: no-repeat; background-size: 18px auto; background-position: center left; color: var(--white); text-decoration: none; cursor: pointer; }
.label:hover { background: var(--font-color); transition: background 0.30s; }

.article-date { font-size: 1em; margin: 22px 0; }
.article-thumb { width: 100%; }
.article-thumb img { width: 100%; height: auto; }

.news-label-date, .news-label-type { display: inline-block; padding: 2px 6px; margin: 0 4px 6px 0; font-size: 0.65em; font-family: 'Basic-SemiBold', sans-serif; text-transform: uppercase; }
.news-label-date { background: var(--main-clr); color: var(--white); }
.news-label-type { background: var(--white); color: var(--font-color); }

.news-older { margin-left: 20px; }
.news-older a { font-family: 'Basic-Medium', sans-serif; text-decoration: none;  }
.news-older a:hover { text-decoration: underline; color: inherit; }
.news-older p:first-child { margin-top: 0 !important; }

.wrap-list ul, .wrap-recommended ul { font-family: 'Basic-Medium', sans-serif; margin: 14px 0 0 14px; padding: 0; }
.wrap-list ul li, .wrap-recommended ul li { line-height: 2em; list-style: none; background-image: url("../img/tlapka-black.svg"); background-repeat: no-repeat; background-position: left 10px; background-size: 16px; padding-left: 26px; }
.wrap-list ul li a, .wrap-recommended ul li a { text-decoration: none; }
.wrap-list ul li a:hover, .wrap-recommended ul li a:hover { text-decoration: underline; color: var(--font-color); }

.wrap-recommended, .wrap-photogalerie, .wrap-birth { padding-top: 30px !important; }

p.obrazky img { width: 33%; padding-left: 7.5px; }
p.obrazky img:first-child { padding-left: 0px; }

.wrap-iframe { position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0; }
.content iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* -------- GALERIE -------- */
.galThumbs { width: 100%; box-sizing: border-box; margin: 10px 0 20px 0; }
.galThumbs a { display: block; width: 12.5%; height: auto; padding: 3px; float: left;  }
.galThumbs a div { width: 100%; padding-bottom: 66.66%; background-position: top; background-size: cover; background-repeat: no-repeat; transition: all 0.3s ease-in-out; }
.galThumbs a div:hover { opacity: 0.7; transition: all 0.3s ease-in-out; }
.galThumbs a div img { display: none; }

/* galerie v článku */
.galerie-thumbs { text-align: center; }
.galerie-thumbs img { width: 180px; height: 135px; margin: 4px 4px 6px 4px; }
.button-center { display: flex; justify-content: center; align-items: center; }

/* -------- BIRTH -------- */
.birth-image { width: 100%; overflow: hidden; position: relative; }
.birth-image a { display: block; width: 100%; padding-bottom: 66.66%; background-position: top; background-size: cover; }
.birth-name { background: var(--white); text-align: center; padding: 14px 0; font-size: 1.25em; font-family: 'Basic-SemiBold', sans-serif; text-transform: uppercase;  }

/* -------- PROFILE -------- */
.profile-main-photo { margin: 16px 0; }
.profile-main-photo img { width: 100%; height: auto; }

/* -------- colored-wrap styles -------- */
.colored-wrap { width: 100%; background: var(--main-clr); padding-bottom: 20px; }
.colored-wrap .highlighted-text { color: var(--white); }
.colored-wrap ul.line li { color: var(--font-color); }
.colored-wrap ul.line li.inactive { color: var(--white) !important; }
.colored-wrap .a-button { background: var(--white); color: var(--main-clr); }
.colored-wrap h4 { color: var(--white) !important; }

/* .colored-header { width: 100%; z-index: -10 !important; margin-top: -36px; padding: 36px; background: var(--main-clr); } */

/* -------- RESPONSIVITY -------- */
@media screen and (max-width: 1180px) {
	h1 { font-size: 1.25em; margin-top: 30px; }
	menu { font-size: 1em; }
}

@media screen and (max-width: 1024px) {
	.grid-25 { -ms-grid-columns: 49% 2% 49%; grid-template-columns: repeat(2, 49%); }
	
	.galThumbs a { width: 20%; }
}

@media screen and (max-width: 980px) {
	h2 { font-size: 2.75em; }
	
	.noscroll { overflow: hidden; }
	
	.head { height: 70px; }
	.logo { width: 80%; }
	.menu { width: 20%; }
	
	.logo-symbol { width: 50px; height: 70px; background-size: 50px auto; background-position: center left; }
	.head-special { background: var(--white) !important; border-bottom: 1px solid var(--gray); position: fixed; top: 0; left: 0; right: 0; }
	.head-special h1 span { color: var(--font-color) !important; }	
	
	h1 { font-size: 1em; margin-top: 18px; }	
	menu { display: none; position: fixed; left: 0; right: 0; top: 70px; height: 100%; background: var(--white); text-align: center; z-index: 500; padding-top: 12px }
	menu li { display: block !important; padding-left: 0 !important; margin-left: 0 !important; line-height: 44px; text-transform: uppercase; }
	menu li, menu li a, menu li:hover, menu li a:hover { color: var(--main-clr) !important; }
	
	menu li ul { display: none; position: relative; width: 100%; background: var(--white); text-align: center; }
	menu li ul li, menu li ul li:first-child { padding-left: 0 !important; margin-left: 0 !important; }
	menu li ul li a { display: block; width: 100%; color: var(--font-color) !important; }
	menu li ul:before { display: none; } 
	
	.m-open, .m-close { display: block; background-repeat: no-repeat; background-size: 0.6em; background-position: 14px center; cursor: pointer; }
	.m-open { background-image: url("../img/ico/plus.svg"); }
	.m-close { background-image: url("../img/ico/minus.svg"); }
	
	.head-burger { display: block !important; position: relative; }
	.head-burger-position { position: absolute; right: 0; }
	
	menu .cross { background-position: calc(50% - 20px) 50%; }
	
	/* -------- animated hamburger icon -------- */
	#nav-icon { width: 40px; height: 30px; position: relative; margin: 22.5px auto; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; }
	#nav-icon span { display: block; position: absolute; height: 5px; width: 100%; background: var(--main-clr); border-radius: 6px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
	#nav-icon span:nth-child(1) { top: 0px; }
	#nav-icon span:nth-child(2) { top: 10px; }
	#nav-icon span:nth-child(3) { top: 20px; }
	#nav-icon.open span:nth-child(1) { top: 10px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
	#nav-icon.open span:nth-child(2) { opacity: 0; left: -50px; }
	#nav-icon.open span:nth-child(3) { top: 10px; -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg); }	
	
	.grid-50 { -ms-grid-columns: 100%; grid-template-columns: repeat(1, 100%); -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; }	
	.grid-33 { -ms-grid-columns: 49% 2% 49%; grid-template-columns: repeat(2, 49%); -webkit-column-gap: 2%; -moz-column-gap: 2%; column-gap: 2%; }
	
	.flex-wrapper { display: flex; flex-direction: column; }
	.flex-wrapper .unit { width: 100%; }
	.flex-wrapper .unit:first-child { order: 2; }
	
	#line-pack .unit .wrap-photo { padding: 30px 0 0 0; }
	#line-history .unit .wrap-photo { padding: 0 0 0 0; }
	.wrap-photo img { width: 100%; }
	
	.galThumbs a { width: 25%; }
	
	p.obrazky img { width: 100%; height: auto; padding-left: 0; }
}

@media screen and (max-width: 630px) {
	.cover-photo { width: 100%; height: 400px; background-image: url("../img/cover-mobile.jpg"); background-repeat: no-repeat; background-size: cover; background-position: center; z-index: 0; }
	.cover-text { display: none; }
	.cover-text-mobile { display: block; }
}

@media screen and (max-width: 520px) {
	h2 { font-size: 2em; }
	
	.main-body { padding: 0 0 250px 0; }
	.footer-in { height: 250px; }

	.grid-33, .grid-25 { -ms-grid-columns: 100%; grid-template-columns: repeat(1, 100%); -webkit-column-gap: 0; -moz-column-gap: 0; column-gap: 0; }
	
	ul.line li:before { width: 12px; height: 2px; }
	
	.scroll-top { position: relative; right: 0; top: 6px; margin: 0 auto; }
	
	.galThumbs a { width: 50%; }
}

@media screen and (max-width: 360px) {
	h1 { font-size: 0.75em; }
}
