@import url("https://fonts.googleapis.com/css?family=IBM+Plex+Mono:400,400i|IBM+Plex+Sans+Condensed:400,400i|IBM+Plex+Sans:100,100i,400,400i,700,700i|IBM+Plex+Serif:400,400i");

#wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.content {
	width: 100%;
	min-width: 260px;
	transition: 0.3s ease;
}

@media screen and (max-width: 512px) {
	.content {
		margin: 0 4%;
		margin-top: 5%;
	}
}

/* Tabs menu */
.tabs {
	margin: 0;
	background-image: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 80px;
	border-radius: 2px 2px 0px 0px;
}

@media screen and (max-width: 512px) {
	.tabs {
		height: 40px;
	}
}

/* Tab Links */
.tablinks {
	background: transparent;
	background-image: linear-gradient(90deg, transparent 70%, rgba(255, 255, 255, 0.2) 100%);
	border: none;
	outline: none;
	cursor: pointer;
	width: 25%;
  /*change depending on the number of tabs*/
	height: 80px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	font-family: "IBM Plex Sans", sans-serif;
	overflow: hidden;
	transition: 0.3s ease;
}

@media screen and (max-width: 512px) {
	.tablinks {
		height: 40px;
		font-size: 12px;
	}
}

.tablinks:before {
	background-image: linear-gradient(135deg, #285A43 0%, #2e7252 100%);
	content: "";
	width: 100%;
	height: 0px;
	position: absolute;
	top: 0;
	left: 0;
	transition: 0.3s ease-in-out;
	z-index: 2;
}

/*tab buttons hover*/
.tablinks:hover::before {
	height: 100%;
	z-index: 2;
	bottom: 0;
}

@media screen and (max-width: 512px) {
	.tablinks:hover::before {
		height: 0;
	}
}

/* Tab active */
.tablinks.active {
	background-color: white;
	z-index: 0;
	border-right: 0px;
	border-left: 0px;
	height: 110px;
	bottom: 0px;
	overflow: hidden;
}

@media screen and (max-width: 512px) {
	.tablinks.active {
		height: 60px;
	}
}

.tablinks.active:before {
	content: "";
	width: 100%;
	height: 5px;
	top: 0;
	left: 0;
}

/* Tabs text */
.tablinks.active p,
.tablinks.active:hover p {
	opacity: 1;
	background: -webkit-linear-gradient(135deg, #285A43 0%, #2e7252 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.tablinks p {
	opacity: 0.6;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	transition: 0.5s ease;
	padding: 0;
	margin: 0;
	color: #181818;
	backface-visibility: hidden;
	font-weight: 400;
}

.tablinks:hover p {
	color: white;
	opacity: 1;
}

@media screen and (max-width: 512px) {
	.tablinks:hover p {
		color: #686868;
		opacity: 0.6;
	}
}

/* Tabs text bigger */
.tablinks p:before {
	content: attr(data-title);
	position: absolute;
	height: auto;
	width: auto;
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.1;
	font-size: 40px;
	transition: 1s ease-out;
	z-index: -1;
	font-weight: 600;
	top: 110%;
}

@media screen and (max-width: 512px) {
	.tablinks p:before {
		display: none;
	}
}

.tablinks:hover p:before {
	opacity: 0.1;
	font-size: 40px;
	top: -80%;
}

/* tab content */
.wrapper_tabcontent {
	background-color: white;
	margin-top: 0px;
	z-index: -3;
	position: relative;
	opacity: 1;
	padding: 40px 60px;
	overflow: hidden;
	transition: all 1s ease;
	top: 0;
}

.tabcontent {
	display: none;
	min-height: 180px;
}

@keyframes tabEffect {
	from {
		top: -40px;
	}

	to {
		top: 0px;
	}
}

.tabcontent.active {
	transition: all 1s ease;
	display: block;
}

/* Tab content line */
.wrapper_tabcontent:after {
	content: "";
	height: 5px;
	width: 100%;
	position: absolute;
	/*background-image: linear-gradient(135deg, #285A43 0%, #2e7252 100%);*/
	left: 0;
	bottom: 0;
	z-index: -2;
	transition: all 1s ease;
}

/* Title */
.tabcontent h3 {
	font-size: 40px;
	top: 75px;
	transform: rotate(90deg);
	position: absolute;
    text-wrap: none;
	left: -90px;
	opacity: 0.1;
	width: 200px;
	height: 60px;
	background: -webkit-linear-gradient(135deg, #285A43 0%, #2e7252 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	padding: 0;
	animation: city 1s ease;
}

@media screen and (max-width: 512px) {
	.tabcontent h3 {
		top: 65px;
	}
}

@keyframes city {
	from {
		left: -150px;
	}

	to {
		left: -90px;
	}
}

/* Text*/
.tabcontent p {
	color: #000000;
	margin: 0;
    margin-bottom: 2rem;
	padding: 0;
	line-height: 28px;
	transition: all 1s ease;
	animation: fadeEffect 0.6s ease;
	width: 100%;
	font-size: 16px;
}

@media screen and (max-width: 512px) {
	.tabcontent p {
		font-size: 14px;
		line-height: 26px;
	}
}

@keyframes fadeEffect {
	from {
		opacity: 0;
		margin-left: 30px;
	}

	to {
		opacity: 1;
		margin-left: 0;
	}
}
