@import "utility.css";

:root {
	--font-family: "Sansation", sans-serif;
	--bg-color: #FCFAF7;
	--text-color: #000;
	--primary-color: #000000;
	--primary-color-hover: #4338ca;
	--btg-color: #71BF44;
	--button-text-color: #ffffff;
	--card-bg: #ffffff;
	--menu-radius: 6px;
	--card-radius: 16px;
	--box-shadow: 0 4px 10px -4px #00000042;
	--border-color: #ddddddb2;
	--card-shadow: 0 4px 10px -4px #00000014, 0 -4px 10px -4px #00000014;
}

html {
	scroll-behavior: smooth;
}

::selection {
	background-color: var(--primary-color);
	color: #fff;
}

body {
	background-color: var(--bg-color);
	padding-top: 80px;
	margin: 0;
}

* {
	font-family: var(--font-family);
	box-sizing: border-box;
}

#cookieId {
	position: fixed;
	bottom: 0;
	z-index: 10001;
	background-color: color-mix(in srgb,
			var(--primary-color) 10%,
			transparent);
	border: 3px solid var(--primary-color);
	color: var(--primary-color);
	border-radius: var(--menu-radius);
	padding: 1rem;
	backdrop-filter: blur(10px);
	font-weight: bold;
	width: calc(100% - 2rem);
	margin: 1rem;
}

.paginate_results {
	cursor: pointer;
	border: 1px solid var(--primary-color);
	padding: .5rem;
	padding-right: .6rem;
	border-radius: var(--menu-radius);
	font-weight: bold;
	margin: 3px;
	background-color: white;
	display: none;
}

.paginate_results:hover {
	background-color: var(--primary-color);
	color: #fff;
}

.current_paginate_results {
	background-color: var(--primary-color);
	color: #fff;
}

.last_paginate_results {
	background-color: var(--primary-color);
	color: #fff;
	padding: .5rem;
	border-radius: var(--menu-radius);
	font-weight: bold;
	margin: 3px;
	cursor: default;
}

.PaginateDots {
	padding: 0px;
	width: 30px;
	color: black;
	border: none;
	margin: 0 auto;
	cursor: default !important;
	text-align: center;
}

.PaginateDots:hover {
	color: #000;
	background-color: transparent;
}

.navbar {
	padding: .5rem 0rem;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	transition: all .3s;
}

.navbar .mobile-menu {
	align-items: center;
	justify-content: center;
	display: none;
	z-index: 1;
	position: relative;
}

.navbar .mobile-menu .menu-close {
	position: absolute;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: all .3s;
}

.navbar.show .mobile-menu .menu {
	opacity: 0;
	visibility: hidden;
	transition: all .3s;
}

.navbar.show .mobile-menu .menu-close {
	opacity: 1;
	visibility: visible;
}

.navbar .mobile-menu svg {
	width: 32px;
	color: var(--primary-color);
}

.navbar .container {
	display: flex;
	justify-content: space-between;
}

.navbar .logo {
	width: 180px;
	display: flex;
	align-items: center;
	z-index: 1;
}

.navbar .logo img {
	width: 100%;
}

.navbar.sticky {
	background: #ffff;
	box-shadow: var(--box-shadow);
	padding: .3rem 0;
	border-bottom: 1px solid var(--border-color);
}

.navbar.sticky .logo {
	width: 130px;
	padding: 0;
}

.navbar.sticky .menu-listing {
	margin-top: .6rem;
	margin-bottom: .6rem;
}

.navbar ul {
	padding-left: 0;
	list-style: none;
}

.navbar .menu-listing {
	display: flex;
}

.navbar .menu-listing>.menu+.menu {
	margin-left: .5rem;
}

.navbar .menu-listing>.menu {
	background-color: var(--primary-color);
	color: #fff;
	display: flex;
	align-items: center;
}

.navbar .menu {
	position: relative;
	font-weight: 700;
	border-radius: var(--menu-radius);
	white-space: nowrap;
}

.navbar a,
.navbar .menu-title {
	text-decoration: none;
	padding: 0.2rem 0.9rem;
}

.navbar .menu-listing>.menu>a {
	color: #fff;
}

.navbar .menu-group {
	position: absolute;
	visibility: hidden;
	top: 150%;
	right: 0;
	min-width: 100%;
	transition: all .3s;
	opacity: 0;
	flex-direction: column;
	display: flex;
	background-color: #fff;
	border: 1px solid #ddd;
	/* border-color: var(--primary-color); */
	border-radius: var(--menu-radius);
	padding: .5rem 0;
	box-shadow: var(--box-shadow);
}

.navbar .menu-group a {
	padding: .5rem 1rem;
	transition: all .3s;
	border-radius: 0;
}

.navbar .menu-group a:hover {
	background-color: var(--primary-color);
	color: #fff;
}

.navbar .menu:hover>.menu-group {
	visibility: visible;
	top: 120%;
	opacity: 1;
}

.navbar .menu-listing .global-database {
	padding-top: 2px;
	padding-bottom: 2px;
	background-color: #fff;
	border: 1px solid;
	border-color: var(--primary-color);
	color: var(--primary-color);
}

/* .content {
	max-width: 1440px;
	margin: auto;
} */

.home-hero {
	min-height: 80vh;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	position: relative;
}

.hero-bg {
	width: 100%;
	height: 100%;
	position: absolute;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0.7;
	pointer-events: none;
	/* Mask */
	-webkit-mask-image: linear-gradient(to bottom,
			transparent 0%,
			black 15%,
			black 85%,
			transparent 100%);
	mask-image: linear-gradient(to bottom,
			transparent 0%,
			black 15%,
			black 85%,
			transparent 100%);
}

.home-hero .hero-title {
	font-size: 3rem;
	font-weight: 400;
	z-index: 1;
	margin-bottom: 4rem;
	padding: 2rem;
}

.home-hero .search {
	background-color: #FFF;
	padding: 1.5rem;
	border-radius: 1.5rem;
	z-index: 1;
	box-shadow: var(--box-shadow);
}

.home-hero .search select {
	font-size: 1rem;
	font-weight: 700;
	border: none;
	padding: .8rem 1rem;
	border-radius: var(--menu-radius);
	color: var(--primary-color);
	background-color: color-mix(in srgb,
			var(--primary-color) 10%,
			transparent);
	outline-color: color-mix(in srgb,
			var(--primary-color) 50%,
			transparent);
}

.home-hero .search .keywords {
	font-size: 1rem;
	padding: .8rem 1rem;
	background-color: #00000010;
	border: none;
	border-radius: var(--menu-radius);
	margin-left: .5rem;
	outline-color: color-mix(in srgb,
			var(--primary-color) 50%,
			transparent);
}

.home-hero .search .btn-primary {
	padding: .8rem 1rem;
	margin-left: .5rem;
}

.navigation-banner {
	background-color: #fff;
	padding-top: 2rem;
	padding-bottom: 2rem;
	margin-top: 4rem;
	margin-bottom: 4rem;
	position: relative;
	box-shadow: var(--card-shadow);
}

.navigation-banner::before {
	content: '';
	border-top: 1px solid var(--border-color);
	position: absolute;
	top: 2rem;
	left: 0;
	width: 100%;
}

.navigation-banner::after {
	content: '';
	border-top: 1px solid var(--border-color);
	position: absolute;
	bottom: 2rem;
	left: 0;
	width: 100%;
}

.navigation-banner .nav-group:first-child {
	border-left: 1px solid var(--border-color);
}

.navigation-banner .nav-group:last-child {
	border-right: 1px solid var(--border-color);
}

.navigation-banner .nav-group+.nav-group {
	border-left: 1px solid var(--border-color);
}

.navigation-banner .nav-group {
	position: relative;
	padding: 1rem;
	text-decoration: none;
	overflow: hidden;
	height: 150px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.navigation-banner .nav-title {
	font-weight: 700;
	font-size: 1.25rem;
	color: var(--text-color);
	transition: all .3s;
	display: flex;
	align-items: center;
}

.navigation-banner .nav-group:hover .nav-title {
	color: var(--primary-color);
}

.navigation-banner .nav-icon svg {
	width: 48px;
	margin-right: 1rem;
}

.navigation-banner .nav-desc {
	position: absolute;
	bottom: -50%;
	transition: all .3s;
	text-align: center;
	font-size: .9rem;
	font-weight: 400;
	padding: 0 1rem;
}

.navigation-banner .nav-group:hover .nav-desc {
	bottom: 0;
	background: linear-gradient(to bottom,
			rgba(255, 255, 255, 0) 0%,
			#ddd 100%);
}

.navigation-banner .nav-group:hover .nav-title {
	transform: translateY(-2rem);
}

.navigation-banner.about .nav-group:hover .nav-title {
	transform: translateY(-.6rem);
}

.home-board .container {
	display: flex;
	margin-bottom: 3rem;
	margin-top: 4rem;
	justify-content: space-between;
}

.home-board .container .news,
.home-board .container .events {
	width: 49%;
}

.home-board .card {
	height: 100%;
}

.home-board .news-item:first-child {
	padding-bottom: .5rem;
}

.home-board .news-item+.news-item {
	margin-bottom: .8rem;
	padding-top: .8rem;
	border-top: 1px solid var(--border-color);
}

.home-board .news-item a {
	text-decoration: none;
	color: var(--text-color);
}

.home-board .news-item a:hover {
	color: var(--primary-color);
}

.home-board .news-title {
	margin-bottom: .5rem;
	display: flex;
}

.home-board svg {
	width: 20px;
	margin-right: .2rem;
}

.home-board .infos {
	margin-top: .3rem;
	display: flex;
	font-size: .8rem;
	opacity: .7;
}

.home-board .infos div+div {
	margin-left: 1rem;
}

.home-board .events .btn-events {
	display: none;
}

.home-board .events .card-content ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
}

.home-board .events .card-content>ul>li {
	display: flex;
	flex-direction: column;
}

.home-board .events .card-content>ul>li>b {
	/* opacity: .7; */
	color: var(--primary-color)
}

.home-board .events .card-content>ul>li+li {
	border-top: 1px solid var(--border-color);
	padding-top: 1rem;
	margin-top: 1rem;
}

.home-board .events .card-content>ul>li>ul>li {
	margin-top: .5rem;
}

footer {
	background-color: #fff;
	padding: 2rem 0 1rem 0;
	border-top: 4px solid var(--primary-color);
	margin-top: 6rem;
	position: relative;
}

footer .about-biotechgate {
	display: flex;
	align-items: center;
}

footer .about-biotechgate .logo img {
	width: 140px;
}

footer .about-biotechgate .desc {
	font-size: 0.875rem;
	opacity: 0.5;
	margin: 0;
}

footer .copyright {
	display: flex;
	justify-content: space-between;
	font-size: 0.875rem;
	border-top: 1px solid var(--border-color);
	padding-top: 1rem;
}

footer a {
	text-decoration: none;
}

footer .privacy a+a {
	margin-left: 1rem;
}

footer .footer-links {
	display: flex;
	justify-content: space-between;
}

footer .footer-links .logo img {
	width: 200px;
}

footer .footer-links .social-media svg {
	width: 20px;
}

footer .footer-nav {
	display: flex;
	flex-direction: row;
}

footer .footer-nav .nav-group {
	display: flex;
	flex-direction: column;
	margin: 1rem 2rem;
}

footer .footer-nav .nav-title {
	color: var(--primary-color);
	font-weight: bold;
	margin-bottom: 1rem;
}

footer .footer-nav .nav-link {
	color: #000000a4;
	font-size: 0.875rem;
	padding: .5rem 0;
}

footer .footer-nav .nav-link:hover {
	color: var(--primary-color);
}

footer .info {
	display: flex;
	margin: .4rem 0;
	color: #000000a4;
}

footer .info .icon svg {
	width: 18px;
	margin-right: 2px;
}

footer .back-top {
	position: absolute;
	top: -40px;
	right: 10px;
	background: var(--primary-color);
	padding: 6px 10px;
	border-radius: 8px 8px 0 0;
	transition: all .3s;
}

footer .back-top:hover {
	padding: 10px 10px;
	top: -50px
}

footer .back-top svg {
	width: 24px;
	stroke: #fff;
}

.teaser-btg {
	display: flex;
	align-items: center;
	margin-top: 2rem;
	border-top: 4px solid var(--btg-color);
	border-bottom: 4px solid var(--btg-color);
	padding: 1.5rem;
	background: linear-gradient(to right,
			color-mix(in srgb, var(--btg-color) 10%, transparent),
			transparent);
}

.teaser-btg > .d-flex {
	justify-content: space-between;
	width: 100%;
}

.teaser-btg .teaser-text {
	padding-left: 2rem;
	padding-right: 2rem;
}

.teaser-btg .title,
.teaser-btg .sub-title {
	margin: 0;
}

.teaser-btg .title {
	font-size: 1.5rem;
	margin-bottom: .5rem;
}

.teaser-btg .sub-title {
	opacity: .6;
}

.teaser-btg .logo {
	width: 180px;
}

.teaser-btg .btn-btg {
	white-space: nowrap;
}

.teaser-btg .btn-more {
	color: var(--btg-color);
	display: flex;
	align-items: center;
	font-weight: bold;
	margin-top: .5rem;
	text-decoration: none;
}

.teaser-btg .teaser-cta {
	align-items: center;
	display: flex;
}

.teaser-btg .btn-btg-secondary {
	color: var(--btg-color);
}

.teaser-btg .btn-btg-secondary:hover {
	color: #fff;
}

.teaser-btg .btn-btg {
	color: #fff;
	margin-left: .5rem;
}

#map-container .map_info_mask {
	display: none;
}

#map-container .map_info_box a {
	background-color: var(--primary-color);
	color: #fff;
	border-radius: var(--menu-radius);
	padding: .2rem .4rem;
	text-decoration: none;
	font-weight: bold;
	display: inline-flex;
}

#map-container .map_info_box .comp_map_title {
	font-weight: bold;
	color: var(--primary-color);
}

#map-container .gm-style-iw-chr .gm-ui-hover-effect {
	position: absolute !important;
	right: 2px;
	top: 8px;
	height: 24px !important;
	width: 24px !important;
	display: flex !important;
	justify-content: center;
	align-items: center;
}

#map-container .gm-style-iw-ch {
	padding-top: 12px ;
}

#map-container .gm-style-iw-chr .gm-ui-hover-effect span {
	margin: 0 !important;
	width: 18px !important;
	height: 18px !important;
}

#map-container .gm-style .gm-style-iw-d {
	padding-right: 12px;
}

#map-container .result_warning_map {
	color: black;
	border:1px solid #cccccc;
	padding: 10%;
	border-radius: var(--menu-radius);
	height: 50%;
	width: 100%;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;  
}

#map-container #map {
	height: 460px !important;
}

.map-filter {
	width: 50%;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.map-filter .filter {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	margin-bottom: 0;
	margin-top: 1rem;
}

.map-filter .checkbox {
	margin-bottom: 1rem;
	width: 50%;
	align-items: center;
	position: relative;
}

.map-filter .checkbox input {
	display: none;
}

.map-filter .checkbox label {
	font-weight: normal;
	cursor: pointer;
	transition: all .3s;
	padding-left: 28px;
	z-index: 1;
}

.map-filter .checkbox img {
	transition: all .3s;
	width: 24px;
	height: 24px;
	filter: grayscale(1);
	opacity: .2;
	margin-right: 4px;
	position: absolute;
	left: 0;
}

.map-filter .checkbox:hover img {
	scale: 1.2;
	filter: grayscale(0);
}

.map-filter .checkbox:hover label {
	font-weight: bold;
}

.map-filter .checkbox input[type=checkbox]:checked+img {
	filter: grayscale(0);
	opacity: 1;
}

.map-filter .checkbox input[type=checkbox]:checked+img+label {
	font-weight: bold;
	color: var(--primary-color);
}

.current_refined_res {
	display: none;
}

#statistics .chart-title {
	font-weight: bold;
	display: flex;
	justify-content: center;
	margin-top: 1rem;
}

#statistics .chart-title b {
	color: var(--primary-color);
}

#statistics .right {
	padding: 1rem;
}

#statistics .table .desc {
	text-align: center;
	font-size: .9rem;
}

#statistics table {
	border-collapse: collapse;
	border-radius: var(--card-radius);
	overflow: hidden;
	box-shadow: inset 0 0 0 1px var(--border-color), 0 2px 4px 0px var(--border-color);

}

#statistics table thead {
	background-color: var(--primary-color);
	color: #fff;
}

#statistics table thead th {
	text-align: start;
}

#statistics table td,
#statistics table th {
	padding: .5rem 1rem;
}

#statistics table tbody tr+tr {
	border-top: 1px solid var(--border-color);
}

#statistics table tbody tr:nth-child(even) {
	background-color: color-mix(in srgb,
			var(--primary-color) 5%,
			transparent);
}

#statistics table tbody tr:last-child {
	border-top: 4px solid var(--primary-color);
	color: var(--primary-color)
}

#statistics table tbody tr:last-child td {
	padding: 1rem;
	white-space: nowrap;
}

#statistics table tbody tr td:nth-child(even) {
	white-space: nowrap;
}

#statistics .table-title {
	text-align: center;
	font-weight: bold;
	margin: 1rem;
	font-size: 1.1rem;
}

.news-listing .article {
	background-color: #dddddd33;
	border-radius: var(--card-radius);
	padding: 1rem;
}

.news-listing .article+.article {
	margin-top: 1rem;
}

.news-listing svg,
.news-details .article-source svg {
	margin-right: .3rem;
	width: 18px;
}

.news-listing .article {
	margin: 0;
}

.news-listing .article h3 {
	font-weight: normal;
	margin: .3rem 0;
}

.news-listing .article-source {
	color: var(--text-color);
}

.news-listing .article-source:hover {
	color: var(--primary-color);
}

.news-listing .article-date {
	font-size: .8rem;
	opacity: .6;
}

.news-listing .pagination_pages {
	margin-top: 2rem;
}

.news-listing .pagination_pages a {
	text-decoration: none;
}

.news-listing .related-company {
	margin-top: .5rem;
	display: flex;
	flex-wrap: wrap;
}

.news-listing .related-company .related-title {
	margin-right: .5rem;
	margin-bottom: 2px;
	width: 100%;
}

.news-listing .related-company .company {
	background-color: var(--primary-color);
	color: #fff;
	border-radius: var(--menu-radius);
	padding: .1rem .5rem;
	white-space: nowrap;
	margin: .2rem;
	font-size: 14px;
}

.news-details .btn-back {
	display: flex;
	align-items: center;
	color: var(--primary-color);
	font-weight: bold;
	margin-left: -.5rem;
}

.news-details .btn-back svg {
	width: 24px;
	height: 24px;
}

.news-details .btn-back a {
	text-decoration: none;
}

.news-details h3 {
	margin-bottom: .5rem;
}

.news-details .article-source {
	margin-bottom: 2rem;
}

.news-details .source-logo {
	padding-top: 1rem;
}

.news-details .not-found {
	min-height: 50vh;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.news-events {
	min-height: 50vh;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.news-events .menu-item {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}

.news-events .menu-item a {
	padding: 2rem;
	border: 1px solid var(--border-color);
	border-radius: var(--menu-radius);
	width: 100%;
	text-decoration: none;
	font-weight: bold;
	font-size: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.news-events .menu-item a svg {
	width: 60px;
	margin-right: 1rem;
}

.events .event-item {
	background-color: #f5f5f5;
	border-radius: var(--menu-radius);
	border: 1px solid var(--border-color);
	padding: 1rem;
}

.events .event-item+.event-item {
	margin-top: 1rem;
}

.events .event-item {
	display: flex;
	flex-wrap: wrap;
}

.events .event-item .left {
	width: 22%;
	padding: 1rem;
}

.events .event-item .left .event-date {
	background-color: #fff;
	border: 1px solid var(--border-color);
	border-radius: var(--menu-radius);
	padding: 1rem;
}

.events .event-item .left .location svg {
	width: 20px;
	margin-right: 4px;
}

.events .event-item .left .location {
	display: flex;
	align-items: center;
	font-weight: 700;
	flex-direction: row;
	justify-content: center;
	margin-top: .5rem;
	flex-wrap: wrap;
}

.events .event-itam .left .location .country, .events .event-itam .left .location .place {
	white-space: nowrap;
} 

.events .event-item .left .location .country:not(:empty)::before {
	content: ', ';
}

.events .event-item>.right {
	width: 78%;
	padding: 1rem;
}

.events .event-date .date {
	color: var(--primary-color);
	font-weight: bold;
	font-size: 2rem;
	display: flex;
	justify-content: center;
	font-family: "Rajdhani", sans-serif;
	font-size: 3rem;
}

.events .hyphen {
	color: var(--text-color);
	margin-left: .5rem;
	margin-right: .5rem;
	font-weight: bold;
	font-size: 3rem;
}

.events .event-date .month,
.events .event-date .year {
	text-transform: uppercase;
	font-weight: bold;
	text-align: center;
	font-family: "Rajdhani", sans-serif;
	line-height: 1;
}

.events .event-date .month {
	font-size: 2rem;
}

.events .event-date .year {
	font-size: 1.7rem;
}

.events .event-date .date-from-to {
	display: flex;
	justify-content: center;
}

.events .event-date .btn-secondary {
	margin-top: 1rem;
	text-align: center;
}

.events .event-desc svg {
	width: 24px;
	margin-right: .1rem;
	margin-left: .6rem;
}

.events .event-contact {
	display: flex;
	align-items: center;
	margin-top: 2rem;
	padding: 1rem;
	border: 1px solid #ddd;
	border-radius: var(--menu-radius);
	background-color: #0000000c;
}

.events .vv-participation {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid #ddd;
}

.events .vv-participation .logo {
	margin-right: 1rem;
	display: flex;
	align-items: center;
}

.events .vv-participation .left {
	width: auto;
	padding: 0;
}

.events .vv-participation .right {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.events .vv-participation .vv img {
	width: 180px;
}

.events .vv-participation .biotechgate img {
	width: 100px;
}

.events .vv-participation .btn-secondary {
	white-space: nowrap;
}

.about .left {
	width: 65%;
}

.about .right {
	width: 35%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.about .right .logo {
	width: 250px;
}

.about-site {
	display: flex;
	align-items: center;
	border-top: 1px solid #ddd;
	padding-top: 1rem;
	margin-top: 4rem;
	width: 100%;
}

.about-site .logo .vv {
	width: 200px;
}

.about-site .logo .biotechgate {
	width: 120px;
}

.about-site p {
	padding-left: 1rem;
	opacity: .6;
}

#contact h1 {
	padding: 0;
	font-weight: bold;
}

#contact .contactForm {
	border-radius: var(--menu-radius);
	border: 1px solid var(--border-color);
}

#contact .contactForm .form-btg {
	padding: 1rem;
	min-width: auto;
	max-width: none;
}

#contact .contactForm .spacetop {
	margin-top: 0 !important;
}

#contact .form-btg label {
	font-family: var(--font-family);
	font-weight: 700;
	color: var(--text-color);
	font-size: 1rem;
}

#contact .form-btg input[type=text],
#contact .form-btg input[type=email],
#contact .form-btg textarea,
#contact .form-btg select {
	border-radius: var(--menu-radius);
  border: 1px solid #ddd;
  font-size: 1rem;
  padding: .6rem;
  box-shadow: 0px 3px 8px -6px rgb(0 0 0 / 25%);
}

#contact .spaceTop {
	margin-top: 0 !important;
}

#contact .divContact {
	margin-bottom: 1rem;
}

#contact .form-btg .error {
	color: #D70605;
	background-color: transparent;
	margin: 0;
	padding: .5rem 0;
}

#contact .form-btg label .required{
	color: #D70605;
}

#contact .form-btg input[type=button] {
	width: 100%;
	padding: .5rem 1rem;
  border: none;
  border-radius: .4rem;
  cursor: pointer;
  font-size: 1rem;
  transition: all .3s;
	background-color: var(--primary-color);
  color: #fff;
  transition: all .3s;
}

#contact .form-btg input[type=button]:hover {
  background-color: color-mix(in srgb, var(--primary-color) 80%, black);
}

#contact .form-btg .error .infofield-arrow{
	display: none !important;
}

#contact .form-btg .element-name .nameFirst, #contact .form-btg .element-name .nameLast {
	width: 48%;
}

#contact .form-btg .element-name .nameFirst {
	margin-right: 3%;
}

#contact .form-btg>div {
	margin-left: 0;
	margin-right: 0;
}

#contact .left,
#contact .right {
	padding: 1rem;
}

#contact .right svg {
	width: 20px;
	margin-right: .5rem;
}

#contact .info {
	margin-bottom: 1rem;
}

#not-found {
	margin-bottom: 4rem;
}

#not-found .card-page {
	min-height: 50vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#partner {
	min-height: 50vh;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.partner-lists {
	display: flex;
	flex-wrap: wrap;
}

.partner-lists .partner-container {
	width: 20%;
	padding: .5rem;
}

.partner-lists .partner {
	position: relative;
	border: 1px solid var(--border-color);
	padding: 1rem;
	border-radius: var(--card-radius);
	overflow: hidden;
	height: 100%;
	align-content: center;
}

.partner-lists .partner .partner-img {
	display: flex;
	justify-content: center;
}

.partner-lists .partner .partner-img img {
	width: 180px;
	height: auto;
	max-height: 80px;
	width: auto;
	/* height: 50px;
	width: auto; */
}

.partner-lists .partner .partner-name {
	background-color: var(--primary-color);
	position: absolute;
	color: #fff;
	bottom: -100%;
	left: 0;
	text-decoration: none;
	font-weight: bold;
	text-align: center;
	padding: 1rem;
	width: 100%;
	border-radius: 10px 10px 0 0;
	transition: all .3s;
	visibility: hidden;
	opacity: 0;
}

.partner-lists .partner .partner-desc {
	display: none;
}

.partner-lists .partner:hover .partner-name {
	bottom: 0;
	visibility: visible;
	opacity: 1;
}

/* The wrapper container: sets the visible area */
.marquee-container {
	--gap: 4rem;
	display: flex;
	font-size: 1.5rem;
	font-weight: 900;
	overflow: hidden;
	-webkit-user-select: none;
	user-select: none;
}

.marquee-container .title {
	display: flex;
	align-items: center;
	padding: 2rem 4rem 2rem 2rem;
	background: var(--bg-color);
	z-index: 1;
	-webkit-mask-image: linear-gradient(to right, black 0%, black 15%, black 85%, transparent 100%);
	mask-image: linear-gradient(to right, black 0%, black 15%, black 85%, transparent 100%);
}

.marquee-container a {
	display: inline-flex !important;
	margin-bottom: 0 !important;
	align-items: center;
}

.marquee-container:not(.home) a {
	filter: grayscale(1);
	opacity: .8;
}

.marquee-container a:hover {
	filter: grayscale(0);
	opacity: 1;
	scale: 1.1;
}

.marquee-container a img {
	max-height: 50px;
	width: auto;
}

/* The inner container: holds the content and is animated */
.marquee-container #gallery {
	display: flex;
	flex-shrink: 0;
	gap: var(--gap);
	justify-content: space-around;
	min-width: 100%;
}

.marquee-container #gallery.animate {
	animation: scrolling 30s linear infinite;
}

/* Optional: Pause animation on hover for better accessibility/UX */
.marquee-container:hover #gallery {
	animation-play-state: paused;
}

/* The animation definition */
@keyframes scrolling {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(-100% - var(--gap)));
	}
}

#definitions .definitionsLeft {
	width: 100%;
	font-weight: bold;
}

#definitions .definitionsRight a {
	font-weight: bold;
	background-color: var(--primary-color);
	color: #fff;
	text-decoration: none;
	border-radius: var(--menu-radius);
	padding: .3rem;
}

#definitions .block_element {
	background-color: color-mix(in srgb,
			var(--primary-color) 6%,
			transparent);
	border: 1px solid var(--primary-color);
	border-radius: var(--menu-radius);
	padding: 1rem
}

/* TABLET */
@media (max-width: 1180px) {
	.navbar .mobile-menu {
		display: flex;
	}

	.navbar .menu-listing {
		position: fixed;
		flex-direction: column;
		transform: translate(-50%, -50%);
		left: -100%;
		top: 50%;
		transition: all .3s;
	}

	.navbar.show .menu-listing {
		left: 50%;
	}

	.navbar .menu-listing::before {
		content: '';
		background: var(--bg-color);
		width: 110vw;
		height: 110vh;
		display: block;
		position: fixed;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.navbar .menu-listing>.menu>a,
	.navbar .menu-listing>.menu>.menu-title {
		padding: .6rem;
		width: 100%;
		text-align: center;
		justify-content: center;
	}

	.navbar .menu-listing>.menu+.menu {
		margin-left: 0;
	}

	.navbar .menu-listing .menu {
		justify-content: center;
		margin: .5rem 0rem;
	}

	.navbar .menu.cursor-default {
		flex-direction: column;
	}

	.navbar .menu-group {
		text-align: center;
		position: relative;
		opacity: 1;
		visibility: visible;
		padding: 0;
		overflow: hidden;
		border: none;
		transition: all .3s;
	}

	.navbar .menu.cursor-default:not(.active) .menu-group {
		max-height: 0;
	}

	.navbar .cursor-default.active .menu-group {
		max-height: 500px;
	}

	.navbar .menu-group .menu {
		margin: 0;
	}

	.home-hero .hero-title {
		font-size: 2.5rem;
	}

	.navigation-banner .nav-desc {
		display: none;
	}

	.navigation-banner .nav-group:hover .nav-title {
		transform: translateY(0);
	}

	.card .card-title {
		font-size: 1.25rem;
	}

	.map-filter {
		width: 100%;
	}

	.events .event-item>.left {
		width: 30%;
	}

	.events .event-item>.right {
		width: 70%;
	}

	.partner-lists .partner-container {
		width: 25%;
	}
}

/* TABLET VERTICAL */
@media (max-width: 820px) {
	.home-hero .search {
		max-width: 500px;
		margin: 1rem;
	}

	.hero-bg {
		background-position: left;
	}

	.home-hero .hero-title {
		font-size: 2rem;
	}

	.home-hero .search select {
		width: 100%;
		margin-bottom: 1rem;
	}

	.home-hero .search .keywords {
		width: 70%;
		margin-left: 0;
	}

	.home-hero .search .btn-primary {
		width: calc(30% - 1rem);
	}

	.navigation-banner .container {
		flex-wrap: wrap;
	}

	.navigation-banner .nav-group {
		width: 50%;
	}

	.navigation-banner .nav-group:first-child {
		border-bottom: 1px solid var(--border-color);
	}

	.navigation-banner .nav-group:nth-child(2) {
		border-right: 1px solid var(--border-color);
		border-bottom: 1px solid var(--border-color);
	}

	.home-board .container {
		flex-wrap: wrap;
	}

	.home-board .container .news,
	.home-board .container .events {
		width: 100%;
		margin-bottom: 2rem;
	}

	footer .footer-links {
		flex-wrap: wrap;
	}

	footer .footer-links .left,
	footer .footer-links .right {
		width: 100%;
		justify-content: center;
	}

	footer .footer-links .left {
		text-align: center;
		margin-bottom: 3rem;
	}

	footer .footer-nav .nav-group {
		width: 100%;
	}

	.charts .left,
	.charts .right {
		width: 100%;
	}

	.charts #chart_div {
		display: flex;
		justify-self: center;
	}

	.teaser-btg .title {
		font-size: 1.2rem;
	}

	.teaser-btg .logo {
		width: 190px;
		min-width: 190px;
	}

	.teaser-btg .logo img {
		width: 100%;
	}

	.teaser-btg .group {
		flex-direction: column;
	}

	.teaser-btg .teaser-text {
		padding-right: 0;
	}

	.teaser-btg .teaser-cta {
		padding-left: 2rem;
	}

	.teaser-btg .btn-btg {
		margin-left: 0;
		margin-top: .5rem;
	}

	.teaser-btg.more .btn-btg {
		margin-top: 0;
		margin-left: .5rem;
	}

	.news-listing .article h3 {
		font-size: 1.1rem;
	}

	#statistics table {
		width: 100%;
	}

	.events .event-item>.left,
	.events .event-item>.right {
		width: 100%;
	}

	.events .event-item>.left {
		padding-bottom: 0;
	}

	.events .event-desc {
		text-align: center;
	}

	.events .vv-participation {
		flex-direction: column;
		padding-top: 1rem;
	}

	.events .vv-participation .right {
		flex-direction: column;
		text-align: center;
	}

	.events .event-contact {
		justify-content: center;
		flex-direction: column;
	}

	.events .event-contact .contact {
		margin-top: 1rem;
	}

	.about .d-flex .right {
		order: 0;
		width: 100%;
	}

	.about .d-flex .left {
		order: 1;
		width: 100%;
		text-align: center;
	}

	.about-site {
		order: 2;
		flex-direction: column;
		text-align: center;
	}

	.about.navigation-banner .nav-group {
		width: 33.33%;
	}

	.about.navigation-banner .nav-group:last-child {
		border-left: 0;
	}

	.partner-lists .partner-container {
		width: 33.33%;
	}

	#contact .left {
		width: 100%;
		padding: 0;
	}

	#contact .right {
		display: none;
	}
}


/* MOBILE */
@media (max-width: 576px) {
	.home-hero .hero-title {
		font-size: 1.4rem;
	}

	.home-hero .hero-title br {
		display: none;
	}

	.navigation-banner .nav-title {
		flex-direction: column;
		font-size: 1rem;
		text-align: center;
	}

	.navigation-banner .nav-icon svg {
		width: 32px;
		margin-right: 0;
	}

	footer .footer-nav {
		flex-direction: column;
	}

	footer .footer-nav .nav-group {
		margin: 1rem 0 3rem 0;
		text-align: center;
	}

	footer .footer-nav .nav-link {
		padding: .4rem 0;
	}

	footer .info {
		justify-content: center;
	}

	footer .about-biotechgate {
		flex-direction: column;
		text-align: center;
		border-top: 1px solid var(--border-color);
		padding-top: 1rem;
	}

	footer .copyright {
		flex-direction: column-reverse;
		align-items: center;
	}

	footer .copyright .privacy {
		margin-bottom: 1rem;
	}

	.marquee-container a img {
		max-height: 32px;
	}

	.map-filter .checkbox {
		width: 100%;
	}

	.teaser-btg {
		flex-direction: column;
	}

	.teaser-btg .logo {
		width: 150px;
		margin-bottom: 1rem;
	}

	.teaser-btg .teaser-text,
	.teaser-btg .teaser-cta {
		padding-left: 0;
		text-align: center;
		justify-content: center;
	}

	.teaser-btg .teaser-text .d-flex.mt-1 {
		justify-content: center;
	}

	.teaser-btg.more .d-flex.mt-1 {
		justify-content: center;
	}

	#statistics .right {
		padding-left: 0;
		padding-right: 0;
	}

	.news-listing .article h3 {
		font-size: 1rem;
	}

	.events .vv-participation .logo {
		margin-right: 0;
		flex-direction: column;
	}

	.events .vv-participation .right p br {
		display: none;
	}

	.events .event-item>.left,
	.events .event-item>.right {
		padding-left: 0;
		padding-right: 0;
	}

	.about.navigation-banner .nav-group {
		width: 100%;
	}

	.about.navigation-banner .nav-group:first-child {
		border-right: 1px solid var(--border-color);
	}

	.about.navigation-banner .nav-group:last-child {
		border-left: 1px solid var(--border-color);
	}

	.about .right .logo {
		width: 180px;
		margin-top: 1rem;
		margin-bottom: 1rem;
	}

	.about-site .logo .vv {
		width: 150px;
		margin-right: 1rem;
	}

	.about-site .logo .biotechgate {
		width: 92px;
	}

	.partner-lists .partner-container {
		width: 50%;
	}

	.partner-lists .partner .partner-img img {
		width: 100%;
		height: auto;
	}
}