.flex{
	display: flex;
	position: relative;
	flex-direction: column;
	height: auto;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin-bottom: 5ex;	

	margin-top: 7%;
}

.flex section{
	position: relative;
	top: 20%;
	display: block;
	margin: 2ex 0;
	overflow: hidden;

	width: 85vw;
	max-width: 30cm;
	border: solid;	
	border-width: 4pt;
	background-color: white;
	padding: 0 2ex;
	padding-bottom: 2ex;

	transition: padding 0.2s;
}

.flex section:hover{
	padding: 0 3ex;
	padding-bottom: 2ex;
}

.flex section h2{
	padding: 0.4ex 0 0.4ex 0;
	margin-bottom: 1ex;
	text-align: center;
	position: relative;
	display: block;
	width: 100%;	
	z-index: 2; 
	background-color: white;
	border-bottom: solid;
	border-width: 4pt;
}

.flex section a{
	color: blue;
}

.flex section p{
	padding-top: 1ex;
	max-width: 100%;
}

/*.flex section p span{
}

@media (orientation: portrait) {
	.flex section p {
		 0.7em;
	}  
}*/

.description{
	padding: 1ex;
	text-align: justify;
}
.link{
	text-align: left;
}
@media (orientation: portrait) {
	.description {
	   text-align: left;
	}  
  }

.videos{
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	padding: 2ex;
}
.videos iframe{
	padding: 1ex;
}

.gallery{
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;

	position: relative;
	padding: 2ex 0 2ex 0;
}

div.image {
	display: block;
	position: relative;
	float: left;
	height: 180px;
	margin-bottom: 1ex;
	padding-bottom: 10px;
	border: solid;
	border-width: 4pt;
}

div.image img {
	height: 190px;
	opacity: 100%;
	cursor: pointer;
}

div.image:hover img{
	opacity: 90%;
}

.pa{
	border-radius: 2ex;
	overflow: hidden;	
}
.pa img{
	filter: blur(0);
	transition: filter 0.2s;
}
div.pa:hover img{
	filter: blur(2px);
	opacity: 100%;
}
.pa .paimg{
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);	
	z-index: 1000;
	cursor: pointer;
	height: 4ex;
}
.pa:hover .paimg{
	display: block;
}
.pa:hover .paimg{
	filter: none;
}


#icon{
	height: 7ex;
}


#modal{
	display: none;
	position: fixed;
	height: 100%;
	width: 100%;	
	top: 0;
	z-index: 1005;	
}
#modalImage{	
	position: absolute;
	height: 81vh;
	width: auto;
	min-width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#imgContainer{
	display: block;
	position: absolute;
	height: 80%;
	width: 80%;
	top: 50%;
	left: 50%;
	max-width: 30cm;
	margin: auto;  	
	border: solid;
	border-width: 4pt;
	z-index: 1006;	
	overflow: hidden;	

	transform: translate(-50%,-50%);

	/*animation-name: zoom;
	animation-duration: 0.3s;*/
}
#modDescription{
	position: absolute;
	bottom: 0;
	left: 48%;
	transform: translate(-50%,0);
	width: max-content;	
	text-align: center;
	padding: 0.4ex 2ex;
	z-index: 3;
	background-color: white;
	border: solid;
	border-bottom: none;
	border-width: 4pt;
}


#modal span{
	position: absolute;
	top: 0;
	color: black;
	font-weight: bold;
	background-color: white;
	border-color: black;
	border-width: 4pt;
	z-index: 1007;
	transition: padding 0.1s;
}

.close {	
	right: 0;	
	
	padding-left: 0.5ex;
	padding-right: 0.4ex;

	border-left: solid;
	border-bottom: solid;
}
.close:hover,
.close:focus {
	padding-left: 0.7ex;
	padding-right: 0.6ex;
	text-decoration: none;
	cursor: pointer;
}

.newTab {	
	left: 0;
	padding: 0.3ex;
	padding-bottom: 0;

	border-right: solid;
	border-bottom: solid;
}
.newTab:hover,
.newTab:focus {
	padding-left: 0.5ex;
	padding-right: 0.5ex;
	text-decoration: none;
	cursor: pointer;
}
.newTab img{
	height: 1.5em;
}


.scroll{
	position: absolute;
	z-index: 10000;
	top: 50%;
	background-color: white;
	border-color: black;
	padding-left: 0.2ex;
	padding-right: 0.2ex;
	border: solid;
	border-width: 4pt;
	transform: translate(0%,-50%);

	transition: padding 0.1s;
}
.scroll:hover,
.scroll:focus {
	padding-left: 0.4ex;
	padding-right: 0.4ex;
	text-decoration: none;
	cursor: pointer;
}

.scroll::-moz-selection {
	color: black;
	background: none;
}
  
.scroll::selection {
	color: black;
	background: none;
}

#scroll-left{
	left: 0;	
	border-left: none;
}
#scroll-right{
	right: 0;	
	border-right: none;
}


@keyframes zoom {
	from {transform:scale(0)}
	to {transform:scale(1)}
}