:root {
	--ifp-black: #000000;
	--ifp-black-lt: #282828;
	--ifp-blue: #3558A2;
	--ifp-blue-hover: #4670C8; /*#4E76CA;*/
	--ifp-blue-grad: #4670C8;
	--ifp-blue-lt: #6AB1ED;
	--ifp-blue-cmls: #7AB1E8;
	--ifp-blue-ult: #EBEFF6;
	--ifp-coral: #FF9575;
	--ifp-green: #99C221;
	--ifp-grey-light: #F5F5F5;
	--ifp-red: #F50000;
}

/*
font weight 100 300 400 500 700

	xs < 576px	
	sm ≥ 576px	
	md ≥ 768px	
	lg ≥ 992px
	xl ≥ 1300px
	xxl ≥ 1550px 
*/

/* resets */
	*:focus {outline: none;}
	input::placeholder,
	textarea::placeholder {opacity: 1;}
	ul, li {display: block; margin: 0; padding: 0; list-style-type: none;}

/* *** */
	
	body {font-family: 'Marianne', sans-serif; color:var(--ifp-black); font-weight: 300; font-size: 17px; line-height: 24px;}
	
	.container {min-width: 320px; }
	.container.narrow {padding-left: 45px; padding-right: 45px;}
	
	.debug .container {outline: solid 1px rgba(128,128,0,0.2);}
	.debug section {border-top: solid 1px #F5F5F5;}

/* forms */

	.form-line {padding-bottom: 10px;}
	.form-line input[type=text]::placeholder,
	.form-line textarea::placeholder {color: var(--ifp-blue-lt); opacity: 1; /* Firefox */}
	.form-line input[type=text]:-ms-input-placeholder,
	.form-line textarea:-ms-input-placeholder,
	.form-line input[type=text]::-ms-input-placeholder,
	.form-line textarea::-ms-input-placeholder {color: var(--ifp-blue-lt);} 
	
	.form-line input[type=checkbox] {-webkit-appearance: none; -moz-appearance: none; appearance: none; outline: none !important; cursor: pointer;
			display: inline-block; vertical-align: top; width: 20px; height: 20px; border: none; border-radius: 4px;  background: var(--ifp-blue-cmls) no-repeat center center; margin-bottom: 10px;}  
	.form-line input[type=checkbox]:checked {background-image: url(images-5/checkbox.svg); background-size: 12px; }

	.form-line input[type=text],
	.form-line textarea {width: 100%; border: 0; background: #FFF; border-radius: 2px; color: var(--ifp-blue-lt); height: 48px; line-height: 48px; font-weight: 400; font-size: 18px; padding: 0 15px;}
	.form-line textarea {-webkit-appearance: none; -moz-appearance: none; background: #fff url(images-5/resize.svg) no-repeat right 3px bottom 3px;}
	.form-line textarea::-webkit-resizer { display: none;}  

	.form-line label.chbox {color: var(--ifp-blue); font-weight: 400; font-size: 15px; line-height: 21px; display: inline-block; width: calc(100% - 38px); vertical-align: top; margin-left: 12px; white-space: normal;}
	.form-line label.gdpr {color: var(--ifp-black); font-weight: 400; font-size: 15px; line-height: 21px; display: inline-block; width: calc(100% - 38px); vertical-align: top; margin-left: 12px; white-space: normal;}
	.form-line label.chbox a,
	.form-line label.gdpr a {color: var(--ifp-blue); text-decoration: underline; font-weight: 400;}
	.form-line label.chbox a:hover,
	.form-line label.gdpr a:hover {text-decoration: none; color: var(--ifp-blue-hover);} 
	.form-line label.chbox.auto {width: auto !important;}
	
	.submit-line {} 
	input[type=submit], 
	input.button-submit,
	input[type=submit].button-submit-outline,
	.submit-line.fill input[type=submit] { --hover: var(--ifp-blue-hover); display: inline-block; font-weight: 700; font-size: 18px; border: solid 2px var(--ifp-blue); border-radius: 2px; padding: 10px 20px 10px; color: var(--ifp-blue); background: transparent; white-space: nowrap; cursor: pointer; transition: 0.25s;   }
	input[type=submit].button-submit-outline {background-color: transparent; color: var(--ifp-blue);}
	.submit-line.fill input[type=submit] {background-color: var(--ifp-blue); color: #FFF; }
	input[type=submit]:hover,	input[type=submit]:focus,
	.submit-line.fill input[type=submit]:hover, 	
	.submit-line.fill input[type=submit]:focus {text-decoration: none !important; border-color: var(--ifp-blue-hover); color: #FFF; box-shadow: inset 200px 0 0 0 var(--hover); }
	
 	.longbutton input[type=submit] {transition: 0.25s;}
 	.longbutton input[type=submit]:hover,	
	.longbutton input[type=submit]:focus {box-shadow: inset 350px 0 0 0 var(--hover);}
	
	.form-line select {}
	.form-line select option {color: var(--ifp-blue-lt) !important; font-weight: 400;}
	.form-line select::-ms-expand { display: none; }
	.form-line select {color: var(--ifp-blue-lt); width: 100%; font-size: 18px; font-weight: 400; padding: 14px 40px 14px 15px; line-height: 20px; -webkit-appearance: none; -moz-appearance: none; 
		background: #FFF url(images-5/select-lt.svg) no-repeat center right 17px; background-size: 18px; cursor: pointer;  border: 0px; border-radius: 2px;}

	.form-line input.error,
	.form-line input.error::placeholder,
	.form-line select.error {color: var(--ifp-red) !important;}  
	.form-line input[type=checkbox].error {outline: solid 2px var(--ifp-red) !important;}
  .form-line label.chbox {max-width: calc(100% - 45px);}

/* checkbox mobile */
	@media (max-width: 767px) {
		.form-line input[type=checkbox] {width: 30px; height: 30px; }  
		.form-line input[type=checkbox]:checked {background-size: 18px; }
		.form-line label.chbox,
		.form-line label.gdpr	 {padding: 4px 0; line-height: 22px;} 
	}

/* messages */	
	.form-message {margin-bottom: 20px;}
	.form-message, .form-message span {}
	.form-message .fm-error {color: var(--ifp-red);}
	.form-message .fm-ok {color: var(--ifp-green);}
	.form-message .fm-nlok {color: var(--ifp-green);}

/* anim. burger pro menu */
	a.menu-pop {position: absolute; width: 40px; height: 27px; cursor: pointer;}
	a.menu-pop .piece1, 
	a.menu-pop .piece4 {display: block; height: 3px; width: 40px; position: absolute; left: 0px; top: 50%; background: var(--ifp-blue); transition: transform 0.2s ease, width 0.2s ease, left 0.2s ease; }
  a.menu-pop .piece2,
  a.menu-pop .piece3 {display: block; height: 3px; width: 40px; position: absolute; left: 0px; background: var(--ifp-blue); transition: width 0.2s ease, left 0.2s ease, opacity 0.2s ease ;}
  a.menu-pop .piece2 {top: calc(50% - 10px);}
  a.menu-pop .piece3 {top: calc(50% + 10px);}
	nav#main.open a.menu-pop .piece1 { transform: rotate(37deg); width: 33px;}
	nav#main.open a.menu-pop .piece4 { transform: rotate(-37deg); width: 33px;}
	nav#main.open a.menu-pop .piece2,
	nav#main.open a.menu-pop .piece3 {width: 0px; left: calc(50% + 0px); opacity: 0;}

/* jen X bez animace */
	a.close-only {display: inline-block; position: absolute; top: 103px; right: 15px; width: 40px; height: 27px;  z-index: 1500; cursor: pointer;}
	a.close-only:before, 
	a.close-only:after {content: ''; display: block; height: 3px; position: absolute; width: 33px; left: 6px; top: 50%; background: var(--ifp-blue); }
	a.close-only:before { transform: rotate(37deg);  }
	a.close-only:after { transform: rotate(-37deg); }
	a.close-only:hover:after,
	a.close-only:hover:before {background-color: var(--ifp-blue-hover);}
	

/* buttons */
	a.button,
	.wsw a.button {--hover: var(--ifp-blue-hover); text-decoration: none !important; display: inline-block; font-weight: 700; font-size: 18px; line-height: 24px; border: solid 2px var(--ifp-blue); border-radius: 2px; padding: 10px 20px 10px; color: #FFF; white-space: nowrap; background: var(--ifp-blue); transition: 0.25s;}
	a.button:hover,
	.wsw a.button:hover {border-color: var(--ifp-blue-hover); color: #FFF;}
	a.button.button-outline {--hover: var(--ifp-blue-hover); border-color: var(--ifp-blue); background-color: transparent; color: var(--ifp-blue);}
	a.button.button-outline:hover {text-decoration: none !important; border-color: var(--ifp-blue-hover); color: #FFF;}
	a.button:first-letter, .wsw a.button:first-letter {text-transform: uppercase;}

	.wsw-white a.button {border-color: #FFF; background-color: #FFF; color: var(--ifp-blue); --hover: var(--ifp-blue-cmls);}	
	.wsw-white a.button:hover {border-color: var(--ifp-blue-cmls); color: #FFF;}
  .wsw-white a.button.button-outline {border-color: #FFF; background-color: transparent; color: #FFF;}
  .wsw-white a.button.button-outline:hover {border-color: #FFF; color: var(--ifp-blue); --hover: #FFF;}
  
	a.button:hover,	a.button:focus {box-shadow: inset 350px 0 0 0 var(--hover);} /*efekt pro animaci*/
                                                        

/* UNI & WSW*********************/
	.outline-childs>* {outline: solid 1px red;}
	.outline {outline: solid 1px yellow;}

	.relative {position: relative !important;}
	.overflow {overflow: hidden;}
	.hidden {display: none !important;}
	.nobr {white-space: nowrap;}

	.bg-white {background-color: #FFF !important;}
	.bg-gray {background-color: var(--ifp-blue-ult) !important;}
	.bg-blue {background-color: var(--ifp-blue) !important;}
	
	section {margin-bottom: 60px; }
	/* last element in a block having specific class  */
	section.nospc {margin-bottom: 0px; }
	section.nospc:has(+ :not(.nospc)) { margin-bottom: 60px; }
	
	.ellipsis a.button {max-width: 100%; text-overflow: ellipsis; overflow: hidden;}
	
	@-moz-document url-prefix() {	/* firefox fix */
		.custom-scrollbar {scrollbar-color: var(--ifp-blue-cmls) var(--ifp-blue-ult); scrollbar-width: thin; }
	}
	
	@media (max-width: 575px) {
		.custom-scrollbar {width: 100%; overflow-x: auto;}
		.custom-scrollbar .col-6 {width: 250px !important; flex: 0 0 250px; max-width: none;}
		.custom-scrollbar .col-6:last-child {padding-right: 0px; }
	}

	.custom-scrollbar::-webkit-scrollbar { width: 5px; height: 4px; border-radius: 2px; background-color: var(--ifp-blue-ult); }
	.custom-scrollbar::-webkit-scrollbar-thumb { border-radius: 2px; background: var(--ifp-blue-cmls); }
	
	.wsw {font-weight: 300; font-size: 17px; line-height: 24px;}
	.wsw, .wsw * {color: var(--ifp-black);} 

	.wsw.wsw-white,
	.wsw.wsw-white *:not(a) {color: #FFF !important; border-color: #FFF !important; }
	.wsw.wsw-white a:not(.button):hover {color: #FFF;} 
	.wsw.wsw-white a.button.button-outline:hover {color: var(--ifp-blue) !important;}
	
	.wsw h1, .wsw h2, .wsw h3, .wsw h4, .wsw h5, .wsw h6 {color: var(--ifp-black-lt);}
	.wsw h1 {font-size: 42px; font-weight: 400; line-height: 100%; margin-bottom: 40px;}
	.wsw h2 {font-size: 34px; font-weight: 400; line-height: 35px; margin-bottom: 25px;}
	.wsw h3 {font-size: 26px; font-weight: 400; line-height: 31px; margin-bottom: 20px;} 
	.wsw h4 {font-size: 20px; font-weight: 400; margin-bottom: 10px;}
	.wsw h5 {font-size: 17px; font-weight: 400; margin-bottom: 10px;}
	.wsw h6 {font-size: 14px; font-weight: 400; margin-bottom: 10px;}
	
	.wsw b, .wsw strong {font-weight: 700;}
	.wsw p {padding: 0 0 18px 0; margin: 0; font-weight: 300; font-size: 17px; line-height: 24px;}
/*	.wsw p.lt {font-weight: 100; }*/
	.wsw p.sm {font-weight: 300; font-size: 15px; line-height: 21px;}
	.wsw table {}
	.wsw table td {font-weight: 300; }
	.wsw table th {font-weight: 500; text-transform: uppercase;}
	.wsw a, .wsw a * {color: var(--ifp-blue); text-decoration: underline; font-weight: 700;} 
	.wsw a:hover, .wsw a:hover * {color: var(--ifp-blue-hover);}
	.wsw hr {display: block; width: 110px; height: 6px; border: none; text-align: left; margin: 15px 0 30px; background: var(--ifp-coral); }
	.wsw hr.yellow {background: #FFB4AB; }
	.wsw hr.blue {background: #3558A2; }
	.wsw.wsw-white hr {background-color: #FFF;}

	.wsw ul, .wsw ol {margin-bottom: 18px; padding-left: 30px; margin-left: 0!important;} 
	.wsw ul ul, .wsw ol ol {margin-bottom: 5px;}
	.wsw ul li {display: list-item; list-style-type: disc; line-height: 23px; margin-bottom: 5px;}
	/*.wsw ul li:before {content: '\2022'; color: var(--ifp-black); font-size: 1.25em; margin-right: 15px;}*/
	.wsw ul li:has(+a)::marker {color: var(--ifp-blue); }
	.wsw.wsw-white ul li::marker {color: #FFF; }
	.wsw ol li {display: list-item; list-style-type: inherit ; line-height: 23px; margin-bottom: 5px;}
	
@media (min-width: 768px) {	/* mob wsw */
	.wsw ul, .wsw ol {padding-left: 40px; margin-left: 0!important;} 
} 	
	
	.wsw iframe, .wsw video, .wsw img {max-width: 100%; }
	x.wsw img {max-width: calc(100% - 100px);}


	/* drobeckova navigace*/
	nav.crumb {display: block;font-size: 14px; margin-bottom: 50px;vertical-align: absmiddle; }
	nav.crumb a {display: inline-block; vertical-align: bottom; color: var(--ifp-blue); height: 20px; background-color: var(--ifp-grey-light); line-height: 16px; padding: 2px 4px; border-radius: 4px;	white-space: nowrap; margin-bottom: 2px;}
	nav.crumb a:hover {text-decoration: underline; color: var(--ifp-blue-cmls); }	

	nav.crumb a.shorten-allbp {text-overflow: ellipsis; max-width: 140px; overflow: hidden;}
	nav.crumb a.shorten-allbp:hover {max-width: none; text-overflow: none; white-space: normal; height: auto;}
/* pod 1000 posledni polozku */

@media (max-width: 991px) {
	nav.crumb a.shorten {text-overflow: ellipsis; max-width: 140px; overflow: hidden; }
	nav.crumb a.shorten:hover {max-width: none; text-overflow: none; white-space: normal; height: auto;}
	nav.crumb a.shorten-last {text-overflow: ellipsis; overflow: hidden;}
	nav.crumb a.shorten-last:hover {max-width: none; text-overflow: none; white-space: normal; height: auto;}
	@media (max-width: 575px) {
		nav.crumb a.shorten-last {max-width: 180px; }
	}
	@media (min-width: 576px) {
		nav.crumb a.shorten-last {max-width: 260px }
	}
}
	
/* rozbalovaci prvek */
	.unroll {margin-bottom: 20px; }
	.unroll .unroll-caption {cursor: pointer; background: var(--ifp-blue-cmls) url(images-5/open.svg) no-repeat right center; background-position: calc(100% - 29px) center; background-size: 20px;    
		font-weight: 700; color: #FFF; height: 80px; line-height: 28px; padding: 10px 60px 10px 20px; font-size: 22px; border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; display: flex; align-items: center; transition: background-color 0.5s; }
	.unroll .unroll-text {display: none; padding: 24px 0 10px; }
	.unroll.open .unroll-caption {background: var(--ifp-coral) url(images-5/close.svg) no-repeat right center; background-position: calc(100% - 30px) center; background-size: 20px;} 
	.unroll.open .unroll-text {}

/* footer */	
	footer {background: var(--ifp-blue);}
	footer .content {padding-top: 50px; padding-bottom: 0px;}
	footer .col-12:last-child.content {padding-bottom: 30px;}
	footer .wsw,	footer .wsw p,	footer .wsw li, footer .wsw a {font-size: 15px; font-weight: 400; color: var(--ifp-blue-ult);}  
	footer .wsw.wsw-white h3 {font-weight: 400; color: var(--ifp-blue-ult) !important;}
	footer .wsw ul {padding-left: 0px;}
	footer .wsw ul li {list-style-type: none; line-height: 20px;}
	footer .wsw ul li a {text-decoration: none; color: var(--ifp-blue-ult);}
	footer .wsw ul li a:hover {color: var(--ifp-blue-cmls) !important; text-decoration: none;}
 	footer .wsw.wsw-white ul li::marker {   color: var(--ifp-blue-ult); }
	footer a.button {margin-bottom:18px; }

/* content blocks */

/* event list*/
section.events {}
	.wsw h2.list {margin-top: 18px;}

  .event-list {}
	.event-item {background: #FFF; margin-bottom: 35px; }
	.event-item .image {background: #737373; border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; overflow: hidden;}
	.event-item .image img {width: 100%;transition: transform 0.2s, opacity 0.2s; opacity: 0.9;}
/*
	.event-item .image:after {content: ''; display: block; position: absolute; top: 0px; width: 100%; height: 100%; background: rgba(255,255,255,0.2); opacity: 0; transition: opacity 0.2s ease;}
	.event-item:hover .image:after {opacity: 1;}
*/
	.event-item:hover .image img {transform: scale(1.08); opacity: 0.75;}
	.event-item .image-wrap {position: relative; height: auto;200px; margin-bottom: 30px;}
	.event-item .event-sticker {position: absolute; bottom: -15px; left: 20px; z-index: 100;}
	.event-item .date-loc {color: url(--ifp-black); font-weight: 400; font-size: 17px; margin-bottom: 10px;}
	.event-item h3 {font-size: 24px; font-weight: 500; transition: color 0.2s;}
	.event-item h3 a {color: var(--ifp-blue); text-decoration: none;}
	.event-item h3 a:hover {text-decoration: none;}
	.event-item:hover h3 a {color: var(--ifp-blue-hover);}
	.event-item p {line-height: 20px;}
	
	.event-sticker {background: var(--ifp-blue-cmls); color: #FFF; font-weight: 700; min-width: 100px; height: 30px; line-height: 30px; font-size: 15px; text-align: center; padding: 0 13px; border-radius: 2px; text-transform: uppercase;}
	
	@media (max-width: 575px) {
		.custom-scrollbar .col-6 {width: 300px !important; flex: 0 0 300px; max-width: none;}
/* nemelo by nastat, kdyz je 1 item, neni c-scrollbar*/
		.event-list:not(:has(.custom-scrollbar)) .col-6,
		.article-list:not(:has(.custom-scrollbar)) .col-6 {width: 100% !important; flex: 0 0 100%; max-width: none;}
/**		
		.event-list:not(:has(.custom-scrollbar)) .col-6,
		.article-list:not(:has(.custom-scrollbar)) .col-6 {width: 300px !important; flex: 0 0 300px; max-width: none;}
/**/
	}
	
	
/* eventlist filter */
	.filter {margin-bottom: 30px;}
	.filter-advanced {}
	.filter select {width: 100%; position: relative; z-index: 110; }
	.filter .form-line {padding: 0;}
 	.filter {}
	.filter .form-line select {color: var(--ifp-blue) !important; width: 258px; font-size: 18px; font-weight: 700; padding: 12px 40px 12px 15px; line-height: 20px;  
		background-image: url(images-5/select.svg); background-size: 18px;  border: solid 2px var(--ifp-blue); margin-right: 33px; margin-bottom: 20px; }
	.filter .form-line select option {color: var(--ifp-blue) !important; font-weight: 400;}
		
/* list paging */
	.paging {text-align: center; position: relative; margin-top: 60px; vertical-align: middle; }
	.paging:has(span.wrap-compress.open) {xtext-align: left;}
	a.button.button-paging {border-color: var(--ifp-blue); background-color: transparent; color: var(--ifp-blue); margin: 0 10px 15px 10px; text-align: center; width: 60px; vertical-align: middle; padding-left: 0; padding-right: 0;}
	a.button.button-paging:hover,
	a.button.button-paging.active {border-color: transparent; background-color: var(--ifp-blue-ult);}

	.paging .archive {text-align: right; }
	.paging .archive a.button {margin: 0 0 15px 10px;}

	@media (min-width: 992px) {
		.paging .archive {text-align: left; display: inline-block;}
		.paging:not(:has(span.wrap-compress.open)) .archive {position: absolute; top: 0; right: 0;}
		.paging:has(span.wrap-compress.open) .archive {float: right;}
	}
	
/**	
	.paging:not(:has(span.wrap-compress.open)) a.button.archive {position: absolute; top: 0; right: 0;}
	.paging:has(span.wrap-compress.open) a.button.archive {float: right;}
	a.button.archive {float: right;}
/**/	
	
	 
	.paging:has(.archive):after {content: ''; display: block; width: 100%; height: 50px; clear: both; xbackground: red;}

	.paging span.wrap-compress {display: inline-block; vertical-align: middle; font-size: 16px; font-weight: 400; padding: 4px 0; margin: 0 6px; color: #3558A2; vertical-align: middle;}
	.paging span.wrap-compress.open {display: inline; }
	.paging span.wrap-compress.open a.button.button-paging {} 
	.wrap-compress {transition: width 1s; display: inline-block;}
	.wrap-compress a.button.button-paging {display: none; }
	.wrap-compress:before {display: inline-block; content:'\002026';}
	.paging span.wrap-compress.open {margin: 0px;}
	.wrap-compress.open a.button.button-paging {display: inline-block; }
	
	.wrap-compress.open:before {display: none;}

section.article-list {}
  .article-list {}
	.article-item {background: #FFF; margin-bottom: 35px; }
	.article-item .image {background: #737373; border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; overflow: hidden;}
	.article-item .image img {width: 100%;transition: transform 0.2s, opacity 0.2s; }
/*
	.article-item .image:after {content: ''; display: block; position: absolute; top: 0px; width: 100%; height: 100%; background: rgba(255,255,255,0.2); opacity: 0; transition: opacity 0.2s ease;}
	.article-item:hover .image:after {opacity: 1;}
*/	
	.article-item:hover .image img {transform: scale(1.08); opacity: 0.8;}
	.article-item .image-wrap {position: relative; height: auto;200px; margin-bottom: 30px;}
	.article-item .event-sticker {position: absolute; bottom: -15px; left: 20px; z-index: 100;}
	.article-item h3 a {font-size: 24px; font-weight: 500; transition: color 0.2s;}
	.article-item h3 a {color: var(--ifp-blue); text-decoration: none;}
	.article-item h3 a:hover {text-decoration: none;}
	.article-item:hover h3 a {color: var(--ifp-blue-hover);}

/* event / article detail  */

section.detail-top {margin-bottom: 30px;}
	.detail-header {}
	.detail-header.wsw h1 {margin-bottom: 15px; line-height: 50px;}
	.detail-image {}
	.detail-image img {border-radius: 4px; width: 100%;}	
  .detail-pitch {padding: 15px 15px 15px 15px; background: var(--ifp-blue-ult); border-radius: 4px; margin-top: 20px; margin-bottom: -10px; min-height: 80px; font-weight: 400;}
  .detail-subheader {padding-bottom: 20px;}
	.detail-subheader .event-sticker {}

section.eventterms {margin-bottom: 30px;}
	.term-item {background: var(--ifp-blue-ult); border-radius: 4px; margin-bottom: 20px; min-height: 80px; font-weight: 400;}
	.term-content { padding: 0 15px 15px 15px;  }
	.term-ticket { padding: 0 15px 15px 15px; } /* XS */
	.term-ticket a.button {width: 100%; text-align: center;}
	.term-date {padding: 13px 0 15px 15px; font-size: 20px; line-height: 28px;}
	.term-location { font-size: 20px; padding-bottom: 5px;}
	.term-audio {font-size: 18px;}
	.term-price {font-size: 18px;}
	.term-item .reservationform {padding: 15px;}
	.term-item .form-message {background: transparent; text-align: left; font-size: 18px; font-weight: 400; padding: 0px 0px 15px;}

section.gallery {margin-bottom: 30px;}
	.gallery img {border-radius: 4px; width: 100%; opacity: 0.90; transition: transform 0.2s, opacity 0.2s; }
	.gallery a {overflow: hidden; display: block; margin-bottom: 30px;}
	.gallery a:hover img {transform: scale(1.08); opacity: 0.75;}

section.text {}
section.text .content img.float {margin-bottom: 30px; width: 100%;}

@media (min-width: 768px){
section.text .content img.float {float: right; margin-left: 30px; width: 45%;}
}

section.txtdeco {}
	.txtdeco .content {background: var(--ifp-blue-ult); box-shadow: 0px 4px 4px 0px #0000001A; border-radius: 4px;}
	.txtdeco .text {font-size: 17px; padding-top: 35px; padding-bottom: 30px; padding-left: 30px; padding-right: 30px;}
	.txtdeco .motive-1,	.txtdeco .motive-2,	.txtdeco .motive-3 {height: 100%;}
	.txtdeco .col-12:has(.motive-i) {display: flex; justify-content: center; align-items: center; min-height: 350px;}
	.txtdeco .motive-i {width: 290px; height: 290px; border-radius: 50%; position: relative;}
	.txtdeco .motive-i:after {content: ''; display: block; position: abolute; width: 100%; height: 100%; background: rgba(255,255,255,0.1); border-radius: 150px;}
	.txtdeco .motive-1 {background: url(images-5/element1.svg) no-repeat center 60px; background-size: 175px; min-height: 330px;}
	.txtdeco .motive-2 {background: url(images-5/element2.svg) no-repeat center center; background-size: 240px; min-height: 264px;}
	.txtdeco .motive-3 {background: url(images-5/element3.svg) no-repeat center top; background-size: 390px; min-height: 372px; }
	.txtdeco .motive-i {background: var(--ifp-grey-light) no-repeat center top; background-size: auto 290px;}

section.joinus {overflow: hidden;}
/* socials */
	a.sbutton {display: inline-block; background: #FFF no-repeat center center; width: 74px; height: 74px; border-radius: 50%; transition: transform 0.1s;}
	a.sbutton.soc-fb {background-image: url(images-5/fb.svg); background-size: 48px;}
	a.sbutton.soc-ig {background-image: url(images-5/ig.svg); background-size: 46px;}
	a.sbutton.soc-x {background-image: url(images-5/x.svg); background-size: 36px;}
	a.sbutton.soc-yt {background-image: url(images-5/yt.svg); background-size: 48px;}
	a.sbutton.soc-in {background-image: url(images-5/in.svg); background-size: 44px;}
	a.sbutton:hover {transform: scale(1.1);}

	.ju-block {background-color: var(--ifp-blue-ult); border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; height: 100%;}
	.joinus h3 {font-size: 26px; font-weight: 400 !important; margin-bottom: 24px;}
	.joinus p {font-size: 15px; line-height: 21px; font-weight: 400; margin-bottom: 0;}
  .ju-join {}
	.ju-join-content {padding: 30px 24px;}
	.joinus .ju-join-content p {margin-bottom: 30px;} 	
	.ju-join a.sbutton {margin: 0 6px 4px 0; }
	.ju-join a.sbutton:last-child {margin-right: 0;}
	
	.ju-ifpass {}
	.ju-ifpass-content {padding: 30px 24px;}
	.ju-ifpass p {margin-bottom: 15px;}
	.ju-ifpass img {margin-bottom: 40px; width: 250px;}

	.ju-newsletter {padding: 30px 24px; }
	.ju-newsletter p {margin-bottom: 20px;}
	.ju-newsletter .form-line {padding-bottom: 20px;}
	.ju-newsletter .form-line label.chbox:not(.gdpr) {color: var(--ifp-blue); font-weight: 700; font-size: 18px;} 
	.ju-newsletter .button {}
	.ju-newsletter input[type=text] {width: 100%; border: 0; background: #FFF; border-radius: 2px; color: var(--ifp-blue-lt); height: 48px; line-height: 48px; font-weight: 400; font-size: 18px; padding: 0 15px;}  
	.ju-newsletter input[type=text]::placeholder {color: var(--ifp-blue-lt); }
	

/* forms - contact, inquiry, newsletter */
section.contactform {}
	.motive-nl {background: url(images-5/email.svg) no-repeat top center; background-size: 178px;}
	.contactform .contact-form {background: var(--ifp-blue-ult); border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; padding: 35px 25px;}
	.contactform .form-line textarea {min-height: 164px;}
	.contactform .form-line.cfe-title {text-align: right;}
	.contactform .form-line.cfe-title select { width: 50%; }
	.contactform .nl-avail {display: block; margin: 10px 0 18px; font-size: 15px; font-weight: 400;}
	.contactform label.nl-lbl {font-size: 17px; font-weight: 700; white-space: normal;}
	.contactform .nl-form {} 
	.contactform .nl-form .form-line {}
	.contactform .nl-form .form-line input[type=text] {padding: 6px 20px; height: 60px;}
	.contactform .nl-form .form-line.nl-eml {padding: 20px 0 23px;}
	.contactform .nl-form .form-line.nl-gdpr {padding-bottom: 15px;}
	
section.newsletterprofile {}
	.newsletterprofile .contact-form {background: #EBEFF6; border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; padding: 28px 22px;}
	.newsletterprofile .form-line {margin-bottom: 20px;} 
	.newsletterprofile .form-line label.chbox {font-size: 17px;}


section.submenuitems {}
	.sm-item {position: relative; margin-bottom: 30px; overflow: hidden; background: no-repeat center center; background-size: 100%; border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; }
	.sm-item img {width: 100%; transition: transform 0.2s, opacity 0.2s; opacity: 0.9;}
	.sm-item:not(.non-clickable):hover img {transform: scale(1.08); opacity: 0.75;}
	.sm-item.non-clickable, 
	.sm-item.non-clickable a {cursor: default;}
	.sm-item.non-clickable a h3 {cursor: text;}
	.sm-item a {width: 100%; height: 100%; display: block;}
	.sm-item a:not(.non-clickable):hover {text-decoration: none;}
	.sm-item .wrap {width: 100%; height: 75px; position: relative; z-index: 100; display: flex; align-items: center; background: var(--ifp-blue-cmls); padding: 10px 10px 10px 20px;}
	.sm-item h3 {text-align: left;  color: #fff; font-weight: 500; font-size: 21px; line-height: 27px; padding: 0; margin: 0;}
	
	.sm-lbl {position: absolute; right: 0px; top: 25px; border-radius: 3px; background-color: var(--ifp-blue); color: #FFF; font-size: 17; font-weight: 700; height: 30px; line-height: 30px; padding: 0 10px;}
    .sm-lbl-FF9575 {background-color: var(--ifp-coral);}
	  .sm-lbl-7AB1E8 {background-color: var(--ifp-blue-cmls);}
	  .sm-lbl-99C221 {background-color: var(--ifp-green);}
	  .sm-lbl-3558A2 {background-color: var(--ifp-blue);}
	  
section.imgtext-top {}
	.imgtext-top .image {}
	.imgtext-top .image img {width: 100%; border-radius: 4px; opacity: 0.9;}
	.imgtext-top .text {padding: 40px 35px; background: linear-gradient(250.88deg, var(--ifp-blue) 41.06%, var(--ifp-blue-grad) 98.2%); border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; }
	.imgtext-top .wsw.wsw-white h1 {margin-bottom: 30px;}
	
	.submenuindex {}
	.submenuindex ul {}
	.submenuindex ul li { }
	.submenuindex ul li a {font-size: 18px; font-weight: 700; color: #FFF; display: inline-block; padding: 7px 30px 9px 0; background: url(images-5/list.svg) no-repeat right 6px center; width: 100%; border-bottom: solid 1px var(--ifp-blue-lt);	}
	.submenuindex ul li a:hover {text-decoration: none; color: var(--ifp-blue-lt);#FFF; background-image: url(images-5/list-hover.svg);}

	@media (max-width: 767px) {
		.imgtext-top .text.wsw, 
		.imgtext-top .text.wsw p {font-size: 15px; xfont-weight: 100; line-height: 20px;}
		.imgtext-top .text.wsw h1 {font-size: 30px; margin-bottom: 20px; line-height: 38px;}
		.imgtext-top .image img {border-radius: 4px 4px 0 0; }
		.imgtext-top .text {border-radius: 0 0 4px 4px;}
		.submenuindex ul li a {font-size: 16px; font-weight: 400;} 
	}	  
	@media (min-width: 768px) and (max-width: 991px) {
		.imgtext-top .text.wsw, 
		.imgtext-top .text.wsw p {font-size: 15px; xfont-weight: 100; line-height: 20px;}
		.imgtext-top .text.wsw h1 {font-size: 36px; margin-bottom: 20px; line-height: 38px;}
		.submenuindex ul li a {font-size: 15px;} 
	}
	@media (min-width: 768px) {
		.imgtext-wrap {min-height: 270px; padding-top: 30px; text-align: right; }
		.imgtext-top .image {width: 100%; height: 468px; position: absolute; top: 0px; left: 0px; }
		.imgtext-top .image img {width: 58%; max-width: 702px; position: absolute;top: 0px; left: 0px;}	
		.imgtext-top .text {width: 49.1%; max-width: 600px; position: relative; text-align: left; display: inline-block;}
	}	  
	@media (min-width: 992px) {
		.imgtext-wrap {min-height: 362px; padding-top: 40px; }
	}
	@media (min-width: 1300px) {
		.imgtext-wrap {min-height: 468px; padding-top: 50px;}
		.submenuindex ul li a {	width: auto; min-width: 66%; max-width: 100%;}
	}
	  
/* kopie imgtext-top, bez navigace */
section.promo-slider {}
	.carousel {}
	.carousel-items {}
  .carous-item:not(:first-child) {display: none;}	/* hide other slides until slider activates */
	.slick-initialized .slick-slide.carous-item:not(:first-child) {display: block;}
	.carous-item .image {}
	.carous-item .image img {max-width: 100%; border-radius: 4px; opacity: 0.9;}
	.carous-item .text {padding: 40px 20px; background: linear-gradient(250.88deg, var(--ifp-blue) 41.06%, var(--ifp-blue-grad) 98.2%); border-radius: 4px; box-shadow: 0px 4px 4px 0px #0000001A; min-height: 250px;    }
	.carous-item .text-in {min-height: 170px;  }
	.carous-item .wsw.wsw-white h1 {margin-bottom: 25px;}
	
	.carous-ctl {text-align: center; height: 20px;  margin-top: 20px;}
	.carous-ctl:focus {}
	.carous-ctl a {background: no-repeat center center; display: inline-block; width: 50px; height: 20px; margin: 0 30px; transition: background-position 0.25s ease; }
	.carous-ctl a.left {background-image: url(images-5/left.svg); background-position: right center;}
	.carous-ctl a.left:hover {background-position: right 10px center;}   
	.carous-ctl a.right {background-image: url(images-5/right.svg); background-position: left center;}
	.carous-ctl a.right:hover {background-position: 10px center;}
/* kdyby se efekt sipek mel pro mobily rusit, tohle query pusti jen hoverable devices: @media (hover: hover) {} */ 

 /* carousel dots * vypnute i v slicku
	.slick-dots {list-style-type: none; display: block; text-align: center; position: absolute; bottom: 0px; width: 100%; }
	.slick-dots li {display: inline-block; width: 10px; height: 10px; border-radius: 5px; background: #FFF; margin: 0 7px 0; border: solid 1px rgba(0,138,201,0.3); cursor: pointer;}
	.slick-dots li.slick-active {background: var(--ifp-blue-cmls); border: solid 1px rgba(255,255,255,0.3);}
	.slick-dots li button {display: none;}
*/	
  .slick-dots, .slick-dots * {display: none;}

	@media (max-width: 767px) {
		.carous-item .text.wsw, 
		.carous-item .text.wsw p {font-size: 17px; xfont-weight: 100; line-height: 20px;}
		.carous-item .text.wsw h1 {font-size: 30px; margin-bottom: 20px; line-height: 38px;}
		.carous-item .image img {border-radius: 4px 4px 0 0;}
		.carous-item .text {border-radius: 0 0 4px 4px;} 
	}	  
	@media (min-width: 768px) and (max-width: 991px) {
		.carous-item .text.wsw, 
		.carous-item .text.wsw p {font-size: 17px; xfont-weight: 100; line-height: 22px;}
		.carous-item .text.wsw h1 {font-size: 36px; margin-bottom: 20px; line-height: 38px;} 
	}
		  
	@media (min-width: 768px) {
		.carous-item {min-height: 170px; padding-top: 30px; text-align: right; }
		.carous-item .image {width: 100%; height: 0px; padding-top: 66%; position: absolute;top: 0px; left: 0px; }
		.carous-item .image img {width: 58.5%; position: absolute;top: 0px; left: 0px;}
		.carous-item .text {width: 50%; position: relative; text-align: left; display: inline-block;}
		.carous-ctl {position: absolute; bottom: 0px; right: 0px; width: 50%; margin-top: 0; }
	}	  
	
	@media (min-width: 992px) {
		.carous-item {min-height: 391px; padding-top: 40px; }
	}
	
	@media (min-width: 1300px) {
		.carous-item {min-height: 479px; padding-top: 50px;}
	}

section.textbglink {}
	.textbglink h2 {margin-bottom: 15px;}
	.textbglink .image {background: no-repeat center center; background-size: cover; background-color: var(--ifp-blue-ult); padding: 30px 0 60px;}
	.textbglink .tcontent {background: #FFF; position: relative; padding: 20px 25px 20px; border-radius: 4px;}
	.textbglink .tcontent a.actionbutton {position: absolute; bottom: -30px; left: -20px;}
	.textbglink .tcontent {padding: 25px 25px 25px;}

section.gmap {}
	.gmap iframe {width: 100%;}
  

	  
/* responsive */

	body:before { content: "xs"; display: none; visibility: hidden; }

/* ~XS */
@media (max-width: 575px) {
	section.headline .container {padding-left: 0; padding-right: 0;}

	.detail-image img {margin-left: -12px; margin-right: -12px; width: calc(100% + 24px); }
	
	.term-item .submit-line input[type=submit] {width: 100%;}
	
/* first block as headline - full w & no border rad */
	xsection.headline {margin-left: -12px; margin-right: -12px;}
	.imgtext-top.headline .image img, 
	.imgtext-top.headline .text, 
	.promo-slider.headline .carous-item .image img,
	.promo-slider.headline .carous-item .text, 
	.txtdeco.headline .content {border-radius: 0px; } 
	
}

/* SM+ */
@media (min-width: 576px) {
	body:before { content: "sm"; }
	
	.term-content { padding: 15px 150px 15px 15px;  }
	.term-ticket { position: absolute; right: 15px; top: 15px; padding: 0;}
} 	  

/* ~MD */
@media (max-width: 767px) {
}
/* MD+ */
@media (min-width: 768px) {
	body:before { content: "md"; }
	
	.form-line.form-gdpr {position: absolute; padding-bottom: 0; bottom: 0px; padding-right: 15px;}
	.form-line.fl-short {width: calc(50% - 15px);}
	
	.wsw .column {display: inline-block; width: calc(33% - 1px); vertical-align: top; padding: 0 30px 0 0; }
	
	footer .wsw ul {padding-left: 24px;}
	footer .wsw ul li {list-style-type: disc;}
	footer .wsw a.button:not(:last-child) {margin-right: 15px;}
	footer .col-12:last-child.content {padding-bottom: 50px;}
}

/* LG */
@media (min-width: 992px) {
	body:before { content: "lg"; }
	.unroll {width: 800px; }
	.unroll .unroll-text {xpadding-right: 10px;}
	
	section.text p, section.text h1, section.text h2, section.text h3, section.text h4, 
	section.text h5, section.text section.text ul, section.text ol, section.text li {max-width: 800px !important;}
	section.text table, section.text iframe, section.text video {max-width: 800px !important; margin-bottom: 30px;}
	section.text img:not(.float) {max-width: 800px !important; height: auto !important; margin-bottom: 30px;}
	.content-width {width: 800px; }
	.term-content { padding: 15px 170px 15px 30px;  }
	.form-line.fl-short:not(.fl-email) {width: 100%;}
}

/* collapsed menu - negate XL */
@media (max-width: 1299px) {

	.container .row {margin-right: -12px !important; margin-left: -12px !important;}	/* hack AEC css, ktere toto nuluje a dela row vetsi okraj */

/* mobile menu */

	body>header {background-color: #FFF; height: 140px;}
	body>header .logo { margin-top: 17px; position: relative; z-index: 310;}

	nav#main li {list-style-type: none; padding: 0; margin: 0;} 
	nav#main .mobile-menu {display: none; padding: 140px 40px 25px; position: absolute; top: 0px; left: 40px; width: calc(100% - 40px); color: var(--ifp-blue); text-align: left; background-color: var(--ifp-grey-light); z-index: 100; box-shadow: 0px 8px 8px 4px #0000001A; z-index: 1000;}
x.debug nav#main .mobile-menu {display: block;}   
	nav#main .mobile-menu {max-height: calc(100vh - 40px); overflow: auto;}
	nav#main.open .mobile-menu {display: block;} 
   
	nav#main ul a {color: var(--ifp-blue);}	
	nav#main ul a:hover {text-decoration: underline; color: var(--ifp-blue);}
	
	nav#main > .mobile-menu > ul.main > li {position: relative; font-size: 18px; font-weight: 700; border-bottom: solid 4px #FFF; line-height: 21px; padding: 17px 0; }
	nav#main > .mobile-menu > ul.main > li > a {text-transform: uppercase;}
	nav#main > .mobile-menu > ul.main > li > ul {display: none; width: calc(100% - 25px);}
  nav#main > .mobile-menu > ul.main > li a.non-clickable {cursor: text;}
  nav#main > .mobile-menu > ul.main > li a.non-clickable:hover, 
	nav#main > .mobile-menu > ul.main > li a.non-clickable:focus  {text-decoration: none;}
	nav#main > .mobile-menu > ul.main li.focus > ul {display: block;}
	nav#main > .mobile-menu > ul.main > li > ul > li {font-size: 14px; font-weight: 700; margin-top: 15px;}
	nav#main > .mobile-menu > ul.main > li > ul > li > ul {}
  nav#main > .mobile-menu > ul.main > li > ul > li > ul > li {font-weight: 400;}
  nav#main > .mobile-menu > ul.main > li > ul > li > a:not(.popsub) {display: inline-block; color: var(--ifp-blue); color: var(--ifp-black); font-size: 16px; font-weight: 500; line-height: 20px; padding: 4px 11px 4px; background: #FFF; border-radius: 4px;}
	nav#main > .mobile-menu > ul.main > li > ul > li ul { padding-left: 20px; padding-top: 10px; font-size: 18px; font-weight: 400; }
	nav#main > .mobile-menu > ul.main > li > ul > li li {display: list-item; list-style-type: none; position: relative; padding-left: 17px; line-height: 21px; padding-top: 2px; padding-bottom: 10px;}
	nav#main > .mobile-menu > ul.main > li > ul > li li:before {content: '\2022'; color: var(--ifp-blue); font-size: 1.25em; position: absolute; left: 0px; top: -1px;}
	nav#main > .mobile-menu > ul.main > li > ul > li li a {color: var(--ifp-blue);}
	
	nav#main li a.popsub{display: inline-block; width: 22px; height: 40px; background: url(images-5/angle-right.svg) no-repeat center center; position: absolute; right: 0px; top: 5px; background-size: 8px; }
	nav#main li.focus a.popsub {background-image: url(images-5/angle-left-lt.svg); }
  nav#main li ul li a.popsub {display: none;}
  nav#main li.focus>a {color: var(--ifp-blue-cmls);}

  nav#main ul.menutop {margin-top: 15px;}
	nav#main ul.menutop li {font-size: 18px; font-weight: 500; padding: 8px 0 7px; line-height: 21px;}
  nav#main ul.menutop li a {color: var(--ifp-black);}
  nav#main ul.menutop li a:hover, 
	nav#main ul.menutop li a.active {color: var(--ifp-blue-cmls);}
  
	nav#panel {}
	nav#panel .menu-ico {position: absolute; top: 40px; right: 120px;}
	body.aec-logged-in:not(.sticky) nav#panel .menu-ico {right: 100px;} 
	
	nav#panel .menu-ico a {display: inline-block; vertical-align: middle; padding: 0 6px; position: relative; top: 0px; left: 0px;}
	nav#panel .menu-ico a img {height: 45px; transition: transform 0.1s;}
	nav#panel .menu-ico a:hover img {transform: scale(1.12); }
	
	/* oba, v top panelu i v mob menu */ 
	.menu-lang {font-weight: 700; font-size: 18px; color: var(--ifp-blue-lt); line-height: 29px; margin-left: 14px; }
	.menu-lang a {color: var(--ifp-blue-lt);}
	.menu-lang a:hover,
	.menu-lang a.active {color: var(--ifp-blue); text-decoration: none;}
	/* top panel */
  nav#panel .menu-lang {position: absolute; top: 35px; right: 15px;}
  /* menu */
  nav#main.open .menu-lang {display: none; position: absolute; top: 25px; left: 40px; margin: 0;}  
	.sticky nav#panel .menu-lang {display: none;}
	.sticky nav#main.open .menu-lang {display: block}


	/* mobilni XS verze hlavicky, pretezuji i overhaul panelu AEC - proto je vsude important */ 
	@media (max-width: 359px){
		body>header {height: 90px;}
		.logo {width: 78px !important; margin-top: 16px !important; }
		nav#main a.menu-pop {bottom: 4px; top: auto; transform: scale(.9); right: 12px;}
		nav#panel .menu-lang {font-size: 14px; top: 6px; right: 12px; left: auto !important;}
		nav#panel .menu-ico {top: auto; bottom: 0; height: 32px; right: 60px !important; }
		ul.student-controls i.la-shopping-cart,
		ul.student-controls i.la-user-circle,
		ul.student-controls i.la-sign-out-alt,
		nav#panel .menu-ico a img {height: 32px !important; width: 32px !important;}
		nav#panel .menu-ico a {padding: 0 3px;}
		header .search-panel {top: 88px;}
		body.sticky {padding-top: 70px !important;}
		body.sticky>header {height: 70px !important;}
		body.sticky .logo {width: 70px !important; margin-top: 12px !important; }
		body.sticky nav#main a.menu-pop {bottom: 12px; top: auto; transform: scale(.85); right: 12px;}
		body.sticky nav#panel .menu-ico {overflow: hidden; top: auto; bottom: 7px; height: 32px; right: 60px !important; }
    body.sticky nav#panel .menu-ico a {padding: 0 3px;}
    body.sticky header .search-panel {top: 68px;}
    div.icon-cart-container span.badge {top: 1px!important;  width: 16px!important; height: 16px!important; font-size: 10px!important; line-height: 16px!important; font-weight: 500!important;}
	}
	
	@media (min-width: 360px) and (max-width: 500px){ /*? horni mez upravit */
		body>header {height: 100px;}
		.logo {width: 100px !important; margin-top: 16px !important; }
		nav#main a.menu-pop {bottom: 13px; top: auto; transform: scale(.9); right: 12px;}
		nav#panel .menu-lang {font-size: 15px; top: 6px; right: 13px; left: auto !important;}
		nav#panel .menu-ico {top: auto; bottom: 10px; height: 32px; right: 67px !important; }
		ul.student-controls i.la-shopping-cart,
		ul.student-controls i.la-user-circle,
		ul.student-controls i.la-sign-out-alt,
		nav#panel .menu-ico a img {height: 32px !important; width: 32px !important;}
		nav#panel .menu-ico a {padding: 0 4px;}
		header .search-panel {top: 98px;}
		body.sticky {padding-top: 70px !important;}
		body.sticky>header {height: 70px !important;}
		body.sticky .logo {width: 78px !important; margin-top: 9px !important; }
		body.sticky nav#main a.menu-pop {bottom: 14px; top: auto; transform: scale(.85); right: 12px;}
		body.sticky nav#panel .menu-ico {top: auto; bottom: 9px; height: 32px; right: 65px !important; }
    body.sticky nav#panel .menu-ico a {padding: 0 4px;}
    body.sticky header .search-panel {top: 68px;}
    div.icon-cart-container span.badge {top: 1px!important;  width: 16px!important; height: 16px!important; font-size: 10px!important; line-height: 16px!important; font-weight: 500!important;}
	}
	
	a.menu-pop {position: absolute; top: 83px; right: 15px; z-index: 1500; }
	
/* search */
  .search-panel {width: 100%; height: 280px; background-color: var(--ifp-grey-light); position: absolute; top: 120px;  left: 0px; z-index: 1200; border-radius: 4px; box-shadow: 0px 8px 8px 4px #0000001A; padding: 40px;}
  .sticky .search-panel {top: 78px;} 
  .search-panel .search-form {display: flex; justify-content: center; align-items: center; height: 100%;}
  .search-panel .search-form .form-line {display: block; white-space: nowrap; width: 100%; text-align: center; padding: 0;}
  .search-panel input[type=text] {width: 400px; margin-right: 20px;}
  .search-panel input[type=text]::placeholder {color: var(--ifp-blue-lt); }
  .search-panel a.close-only {position: absolute; top: 35px; right: 45px;}

	@media (min-width: 768px) and (max-width: 991px){	
		.search-panel input[type=text] {width: calc(100% - 150px); max-width: 500px;}
	}  
	
  @media (max-width: 767px) {
  	.search-panel .search-form .form-line {display: block; white-space: normal; text-align: right;}
		.search-panel input[type=text] {width: 100%; max-width: 500px; margin-right: 0; margin-bottom: 15px;}
	}  
	

/* sticky mobile */
	body.sticky {padding-top: 140px;}
	body.sticky>header {position: fixed; top: 0px; width: 100%; z-index: 1000; box-shadow: 0px 4px 4px 0px #0000001A; height: 80px;}
	.sticky .logo {width: 100px; margin-top: 7px;}
	.sticky a.menu-pop {top: 25px;}

	.sticky nav#main {right: 200px; top: 0px;}
	.sticky nav#main > div > ul.main > li > a {font-size: 16px; border-bottom-width: 3px; padding: 0;}
	.sticky nav#main > div > ul.main > li > ul {left: 185px;} 
	.sticky nav#panel .menu-ico a {padding: 0 6px;}
  
	/* sticky = lang jen v mob. menu
	.sticky nav#panel .menu-lang {top: 22px; right: 70px;}
	*/
	.sticky nav#panel .menu-ico {top: 18px; right: 80px;}
	.sticky nav#main .mobile-menu {padding-top: 60px;}

}	/* eobp <1300 ***************/


/* XL X-Large devices (large desktops, 1300px and up) */
/* desktop menu */
@media (min-width: 1300px) {
	body:before { content: "xl"; }

	.content-width {width: 912px;}

	body>header {background-color: #FFF; height: 160px;}
	body>header .logo { margin-top: 37px; position: relative; z-index: 310;}
	footer .row>:last-child p {float: right !important;}
	a.menu-pop {display: none;}
	nav#main .menu-lang {display: none !important;}

/* main menu */
  nav#main {position: absolute; top: 50px; right: 15px; width: calc(100% - 30px); text-align: right; z-index: 300;}
  nav#main > div > ul.main {white-space: nowrap;}
	nav#main > div > ul.main > li {display: inline-block; text-align: left; white-space: normal; padding: 0 0 24px; margin-top: 26px;}
	nav#main > div > ul.main > li > a {text-transform: uppercase; color: var(--ifp-blue); font-size: 18px; font-weight: 700; display: inline-block; vertical-align: middle; padding: 4px 4px 2px; border-bottom: solid 4px transparent; transition: border-color 0.15s;}
	nav#main > div > ul.main > li:hover > a, 
	nav#main > div > ul.main > li > a.active {border-color: var(--ifp-blue); }
	nav#main > div > ul.main > li > a:hover {text-decoration: none;}
	nav#main > div > ul.main > li:not(:last-child):after {content: ''; display: inline-block; width: 5px; height: 5px; border-radius: 2.5px; background-color: var(--ifp-blue-cmls); margin: 0 8px; vertical-align: middle;}  	
  nav#main a.popsub {display: none !important;}
	
	nav#main > div > ul.main > li > ul {display: none; position: absolute; top: 80px; left: 0px; background-color: var(--ifp-grey-light); width: 100%; padding: 40px 40px; overflow: hidden; z-index: 100; border-radius: 4px; box-shadow: 0px 8px 8px 4px #0000001A; 
		column-count: 3; column-rule: solid 6px #FFF; column-gap: 66px; }
	nav#main > div > ul.main > li:hover > ul {display: block; } /* for delayed, li.hover */ 

  nav#main > div > ul.main > li > ul > li {display: block; margin-bottom: 20px; width: 100%; break-inside: avoid-column;} /*varianta inline-block bez break=inside */
  nav#main > div > ul.main > li > ul > li > a {display: inline-block; color: var(--ifp-blue); color: var(--ifp-black); font-size: 16px; font-weight: 500; line-height: 20px; padding: 4px 11px 4px; background: #FFF; border-radius: 4px;}
  nav#main > div > ul.main > li > ul > li > a.non-clickable {cursor: text;}
  nav#main > div > ul.main > li > ul > li > a.non-clickable:hover {text-decoration: none;}
	nav#main > div > ul.main > li > ul > li ul {margin-top: 20px; padding-left: 10px; padding-bottom: 40px; font-size: 17px; font-weight: 500; }
	nav#main > div > ul.main > li > ul > li li {display: list-item; list-style-type: none; position: relative; padding-left: 17px; line-height: 24px; padding-bottom: 8px;}
	nav#main > div > ul.main > li > ul > li li:before {content: '\2022'; color: var(--ifp-blue); font-size: 1.25em; position: absolute; left: 0px; top: -1px;}
	nav#main > div > ul.main > li > ul > li li a {color: var(--ifp-blue);}

/* top menu */
	nav#main > div > ul.menutop {position: absolute; right: 200px; top: -35px;}
	body.aec-logged-in nav#main > div > ul.menutop {right: 230px; }
	nav#main > div > ul.menutop li {display: inline-block;}
	nav#main > div > ul.menutop li a {color: var(--ifp-black); font-size: 15px; font-weight: 500; display: inline-block; vertical-align: middle;}
	nav#main > div > ul.menutop li a:hover {color: var(--ifp-blue-cmls); text-decoration: none;}
	nav#main > div > ul.menutop li a.active {color: var(--ifp-blue-cmls); text-decoration: underline;}
	nav#main > div > ul.menutop > li:not(:last-child):after {content: ''; display: inline-block; width: 3px; height: 3px; border-radius: 1.5px; background-color: var(--ifp-blue-cmls); margin: 0 8px 0 12px; vertical-align: middle;}
	
	nav#top > ul.menu-text > li {display: inline-block; }
	nav#top > ul.menu-text > li > a {color: var(--ifp-black); font-size: 14px; font-weight: 400; display: inline-block; vertical-align: middle;}
	nav#top > ul.menu-text > li:not(:last-child):after {content: ''; display: inline-block; width: 3px; height: 3px; border-radius: 1.5px; background-color: var(--ifp-blue-cmls); margin: 0 8px; vertical-align: middle;}  	

	nav#panel {display: flex; align-items: center; position: absolute; top: 12px; right: 15px; }
	nav#panel .menu-ico a {color: var(--ifp-black); display: inline-block; vertical-align: middle; padding: 0 3px;}
	nav#panel .menu-ico a img {height: 29px; transition: transform 0.1s;}
	nav#panel .menu-ico a:hover img {transform: scale(1.12); }
	
 	nav#panel .menu-lang {font-weight: 700; font-size: 15px; color: var(--ifp-blue-lt); line-height: 29px; margin-left: 14px;}
	nav#panel .menu-lang a {color: var(--ifp-blue-lt);}
	nav#panel .menu-lang a:hover,
	nav#panel .menu-lang a.active {color: var(--ifp-blue); text-decoration: none;}

/* desktop search. copy of mobile */
  .search-panel {width: 100%; height: 280px; background-color: var(--ifp-grey-light); position: absolute; top: 120px;  left: 0px; z-index: 1200; border-radius: 4px; box-shadow: 0px 8px 8px 4px #0000001A;}
  .sticky .search-panel {top: 78px;}
  .search-panel .search-form {display: flex; justify-content: center; align-items: center; height: 100%; padding: 0;}
  .search-panel .search-form .form-line {display: block;}
  .search-panel input[type=text] {width: 500px; margin-right: 20px;}
  .search-panel input[type=text]::placeholder {color: var(--ifp-blue-lt); }
  .search-panel a.close-only {position: absolute; top: 40px; right: 50px;}

/* sticky @ desktop */
	body.sticky {padding-top: 160px;}
	body.sticky>header {position: fixed; top: 0px; width: 100%; z-index: 1000; box-shadow: 0px 4px 4px 0px #0000001A; height: 80px;}
	.sticky .logo {height: 60px; margin-top: 10px;}
	.sticky nav#main > div > ul.menutop {display: none;}
	.sticky nav#main {right: 200px; top: 0px;}
	body.aec-logged-in.sticky nav#main {right: 230px; top: 0px;}
	.sticky nav#main > div > ul.main > li {margin-top: 29px; }
	.sticky nav#main > div > ul.main > li > a {font-size: 16px; border-bottom-width: 3px; padding: 0;}
	.sticky nav#main > div > ul.main > li > ul {left: 185px;} 

  .sticky nav#panel {top: 25px; right: 15px;}
  .sticky nav#panel .menu-lang {margin-left: 10px;} 
	.sticky nav#panel .menu-ico a {padding: 0 2px;}
	.sticky nav#panel .menu-ico a img {height: 28px; }

/* end menu */

	.unroll {width: 910px; }
	.unroll .unroll-text {xpadding-right: 10px;}
	
	section.text p, section.text h1, section.text h2, section.text h3, section.text h4, 
	section.text h5, section.text section.text ul, section.text ol, section.text li, 
	section.text table, section.text iframe, section.text video {max-width: 910px !important; }
	section.text img:not(.float) {max-width: 910px !important; }
	.content-width {width: 910px; }
	.term-content { padding: 15px 170px 15px 30px;  }
	.form-line.fl-short:not(.fl-email) {width: 100%;}


}

/* XXL */
@media (min-width: 1550px) {
	body:before { content: "xxl"; }
}


/* AEC student panel overhauls */
	.student-panel-wrap {display: inline-block !important; margin: 0; padding: 0; }
	student-controls {}
	student-controls ul.student-controls {display: inline-block !important;}
	student-controls ul.student-controls li.nav-item {}
	div.icon-cart-container {position: relative;} /* polozky v kosiku*/
	div.icon-cart-container span.badge {top: 1px;  width: 15px; height: 15px; font-size: 10px; line-height: 15px; font-weight: 500;   
		display: inline-block; position: absolute; right: 0px; text-align: center; padding: 0; color: #FFF; background: var(--ifp-blue); border-radius: 50%; z-index: 100; }
	ul.student-controls i:before {content: ''; display: none !important;}
	ul.student-controls i.la-shopping-cart {width: 29px; height: 29px; display: block; background: url(images-5/basket.svg) no-repeat; background-size: 100%; }
	ul.student-controls i.la-user-circle { width: 29px; height: 29px; display: block; background: url(images-5/profile.svg) no-repeat; background-size: 100%;}
		body.aec-logged-in ul.student-controls i.la-user-circle {background-image: url(images-5/profile.svg);} /* prihlaseny uzivatel alt icon*/
	ul.student-controls i.la-sign-out-alt {width: 29px; height: 29px; display: block; background: url(images-5/logout.svg) no-repeat; background-size: 100%;}
	ul.student-controls a:has(i) {transition: transform 0.1s; cursor: pointer;}
	ul.student-controls a:hover {transform: scale(1.12); } 
	.student-controls { display: block !important;}
	li.nav-item {display: inline-block !important;}
	

	@media (max-width: 1299px) {
		body:not(.sticky) ul.student-controls i.la-shopping-cart, 
		body:not(.sticky) ul.student-controls i.la-user-circle, 
		body:not(.sticky) ul.student-controls i.la-sign-out-alt {width: 45px; height: 45px; }
		body.sticky ul.student-controls i.la-shopping-cart, 
		body.sticky ul.student-controls i.la-user-circle,                                                                  
		body.sticky ul.student-controls i.la-sign-out-alt {width: 45px; height: 45px; }
		div.icon-cart-container span.badge {top: 2px;  width: 24px; height: 24px; font-size: 15px; line-height: 24px; font-weight: 700;}
	}




/* ***** */
/* admin button */

.admin-link{
	display: block;
	position: fixed;
	bottom: 0px;
	left: 0px;
	padding: 5px 15px;
	background-color: #F9F2E4;
	border-left: #00000;
	border-top: #00000;
	border-top-right-radius: 15px;
	z-index: 10000;
}


.admin-button{
	border: 1px solid #A87D22;
    background-color: #FDEFD2;
    padding-left: 4px;
    padding-right: 4px;
    font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
    color: #464E6B;
    font-size: 12px;
    font-weight: bold;    
}

.admin-iframe{
	display: block;
	position: fixed;
	bottom: 0px;
	left: 0px;
	padding: 0x;
	background: transparetnt;
	z-index: 10000;
	width: 0px;
	height: 0px;
	border: none;
}
