@import "./_variables.css";

/* ========================================================================== */
/* Base / Reset */
/* ========================================================================== */

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

div[role="dialog"] {
    display:none !important;
}
.gm-style-iw-tc {
	display:none !important;
}
html,
body {
	background: #000 !important;
	background: var(--bg);
	color: var(--text);
	display: grid;
	font-family: var(--main-fontfamily);
	font-size: 16px;
	line-height: 26px;
	height: 100vh;
	margin: 0;
	overflow: hidden;
	overscroll-behavior: none;     /* verhindert „Scroll-Chaining“/Bounce */
	place-items: center;
	touch-action: none;            /* Browser-Gesten auf der Seite deaktivieren */
	width: 100vw;
}

h1 {
	font-size: 3em;
	line-height: 1.3em;
}

h2 {
	font-size: 2em;
	line-height: 1.3em;
}

h3 {
	font-size: 1.5em;
	line-height: 1.3em;
}

@media (max-width: 500px) {
	h1 {
		font-size: 2em;
		line-height: 1.3em;
	}

	h2 {
		font-size: 1.5em;
		line-height: 1.3em;
	}

	h3 {
		font-size: 1.2em;
		line-height: 1.3em;
	}
}

/* ========================================================================== */
/* Header */
/* ========================================================================== */

#headerWrap {
	display: grid;
	/*grid-template-columns: auto 1fr auto;*/
	grid-template-columns: 150px 1fr 230px;
	left: 0;
	padding: 20px var(--main-space);
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.countryhistory {
	position:absolute;
	left:5%;
	top:5%;
}

.countryhistory  ul {
	list-style:none;
}

.countryhistory li {
	float:left;
	margin-right:25px;
	width:25px;
	height:25px;

}
.countryhistory li .flag{
	width:100%;
	height:100%;
	border-radius: 50%;
}

@media (max-width: 870px) {
	.countryhistory {
		position:absolute;
		left:10%;
	}
	.countryhistory li {
		margin-right:10px;
		width:20px;
		height:20px;

	}	
}




#headerWrap .logo img {
	display: block;
	height: 100px;
	width: auto;
}

/* links */
#headerWrap .germanLogo {
	align-self: end;
	justify-self: start;
}

/* links */
#headerWrap .mainLogo {
	align-self: end;
	justify-self: start;
}

#headerWrap .mainLogo img {
	height: 43px;
}

@media (max-width: 905px) {
	#headerWrap {
		display: flex;
        align-items: end;
	}

	#headerWrap .logo {
        justify-self: start;
        float: left;
        margin: 0 20px 0 0;
    }
	#headerWrap .logo img {
	    display: block;
	    height: auto;
	    width: 12vw;
	}
}


/* ========================================================================== */
/* App / Map */
/* ========================================================================== */

#app {
	display: grid;
	grid-template-rows: auto 1fr;
	height: 100%;
	position: relative;
}

#map {
	height: 100%;
	position: relative;
	touch-action: pan-x pan-y pinch-zoom; /* Karte darf: ziehen + pinch-zoom */
	width: 100%;
}

.modeselector {
    position: absolute;
    z-index: 1;
    bottom: 45px;
    left: var(--main-space);
    right: var(--main-space);
    padding: 0 50px 0 280px;
    height: 1px;
    text-align: center;
}
.modeselector ul {
	border-radius: 50px;
	display: inline-block;
	overflow: hidden;
    list-style: none;
    transform: translate(0%, -100%);
}
.modeselector ul li {
	background-color: rgba(255,255,255,0.3);
	width: 150px;
	font-family: var(--head-fontfamily);
	cursor: pointer;
	display: inline-block;
	text-align: center;
	color: #fff;
	border: 0;
	padding: 15px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.modeselector ul li:hover {
	scale: 1.1;
}
.modeselector .yearselector{
}

.modeselector .countryelector{
}

.modeselector .yearselector.active,.modeselector .countryelector.active {
	color: #000;
	background: #fff;
}

@media (max-width: 760px) {
	.modeselector {
	    position: absolute;
	    z-index: 1;
	    bottom: 125px;
	    left: var(--main-space);
	    right: var(--main-space);
	    padding: 0;
	    height: 1px;
	    text-align: left;
	}

	.modeselector ul {
		text-align: left;
	}
}

@media (max-width: 500px) {
	.modeselector ul {
		text-align: left;
		width: 100%;
	}
	.modeselector ul li {
		width: 50%;
	}
}

/* ========================================================================== */
/* Pins */
/* ========================================================================== */

.pinWrapper {
	position: relative;
	top: 0px;
	left:0px;
}

.pin {
	align-items: center;
	aspect-ratio: 1 / 1;
	display: flex;
	justify-content: center;
	overflow: visible;
	position: absolute;
	width: 78px;
}

.countryPin {
	top:-80px;
	left:-40px;
	transform: scale(0.7);
}

.smallPin {
	background-color: var(--accent-light-1);
	height: 3px !important;
	width: 3px !important;
	opacity:0.7;
}

gmp-advanced-marker .pinWrapper path {
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;

	fill: var(--accent-light-1);
}

gmp-advanced-marker:has(.pinWrapper:hover) {
	z-index: 999;
}

.pinWrapper:hover {
	z-index: 1;
}

.pinWrapper:hover path {
	fill: #fff;
}

.person {
	aspect-ratio: 1 / 1;
	background: #000;
	border-radius: 50%;
	left: 5px;
	object-fit: cover;
	object-position: top center;
	overflow: hidden;
	position: absolute;
	top: 5px;
	width: 64px;
	z-index: 1;
}

/* ========================================================================== */
/* Popup */
/* ========================================================================== */

.popup {
	--popup-height: calc(100vh - 200px);
	border-radius: var(--border-radius);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
	color: #000;
	display: none;
	height: var(--popup-height);
	overflow: hidden;
	position: absolute;
	width: calc(100% - 300px);
	z-index: 3;
}

.popup:after {
    background-color: #333;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: fixed;
    z-index: -1;
    opacity: 0.9;
}


.popup .popupContent {
	background: var(--accent-light-1);
	height: 100%;
	overflow-y: scroll;
}

/* Jeder Screen mindestens so hoch wie das Popup */
.popup .popupContent .screen {
	align-items: start;
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 100%;
}

.popup h1 {
	padding-right: 50px;
	margin-bottom: var(--main-space);
}

/* ---------- Portrait ---------- */

.popup .portrait.imgWrap {
	background-color: #999;
	height: var(--popup-height);
	overflow: hidden;
	position: relative;
}

.popup .portrait.imgWrap img {
	height: var(--popup-height);
	object-fit: cover;
	object-position: top;
	width: 100%;
}

.popup .portrait.imgWrap p {
	bottom: var(--main-space);
	color: var(--accent-light-1);;
	font-family: var(--head-fontfamily);
	font-size: 6em;
	line-height: 1.5em;
	margin: 0;
	position: absolute;
	right: var(--main-space);
	text-transform: uppercase;
	text-shadow: 0 0 110px rgba(0, 0, 0);
}

.popup .mediaItems.noslider .imageCaption,
.popup .portrait.imgWrap .imageCaption {
	background-color: var(--accent-light-1);
    color: #000;
    font-family: var(--main-fontfamily);
    font-size: 0.8em;
    margin: 25px 0 0;
    position: absolute;
    left:18px;
    right:unset;
    text-align:left;
    bottom: 18px;
    text-transform: none;
    padding: 5px 10px;
    
}

/* ---------- Text ---------- */

.popup .textWrap {
	position:relative;
	align-items: center;
	display: flex;
	height: 100%;
	padding-top:25px;
}

.popup .textWrap .textInner {
	padding: calc(var(--main-space) + 6px) var(--main-space) var(--main-space);
}

.popup .textWrap p.bitrh {
    margin-bottom: 20px;
}

.popup .textWrap p.death {
    margin-top: 20px;
}

.popup .textWrap h2 {
	font-family: var(--head-fontfamily);
	font-size: 6em;
	margin: 0;
	margin-bottom: 39px;
	text-transform: uppercase;
    word-break: break-word;
    line-height: 1em;
}

.popup .textWrap .position {
	font-size: 2em;
	font-family: var(--head-fontfamily);
	text-transform: uppercase;
	line-height: 1.2em;
}

.popup .textWrap p.positionLabel {
    text-transform: uppercase;
}

/* ---------- .screen.biographie ---------- */

/* Biographie bleibt 2-spaltig */
.popup .screen.biographie {
	align-items: start;
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 100%;
	position: relative;
}

.popup .screen .headline.sticky {
	padding: var(--main-space);
}

.popup .screen .headline.sticky h2 {
	font-family: var(--head-fontfamily);
	font-size: 6em;
	line-height: 1;
	margin: 0;
	text-align: right;
	text-transform: uppercase;
}

.popup .screen .headline.sticky {
	position: sticky;
	top: var(--main-space);
	z-index: 10;
	width: 100%;
	overflow: hidden;
}

.popup .screen.biographie .textWrap {
	background: #000;
	color: #fff;
	min-height: var(--popup-height);
}

/* ---------- .screen.media ---------- */


.popup .screen.media .headline h2 {
	color: var(--accent-light-3);
}

.popup .screen.media {
	background-color: transparent;
	min-height: 580px;
    max-height: 100%;
}

.popup .screen .headline.sticky .mediaWrap,
.popup .screen.media .mediaWrap {
    display: flex;
    height: 100%;
    overflow: hidden;
	padding: var(--main-space) 0;
    justify-content: end;
    align-items: center;
}


.popup .screen .headline.sticky .mediaWrap figcaption,
.popup .screen.media .mediaWrap figcaption {
    text-align: center;
}


.popup .screen .headline.sticky .mediaWrap .mediaItems.owl-carousel .owl-stage-outer {
	overflow: visible;
}

.popup .screen .headline.sticky .mediaWrap .mediaItem,
.popup .screen.media .mediaWrap .mediaItem {
	width: 100%;
	height: 100%;
}

.popup .screen .headline.sticky .imageCaption {
    color: #000;
    /*font-family: var(--head-fontfamily);*/
    text-align: left;
    /*font-size: 2em;*/
    margin: 5px 0 0;
    font-size:14px;
    line-height:22px;
}

.popup .screen .headline.sticky img {
    object-fit: contain;
    max-width: 100%;
    /*max-height: 400px;*/
}

@media (max-width: 1400px) {
	.popup {
		width: calc(100% - var(--main-space));
	}
	
}

@media (max-width: 870px) {
	.popup {
		--popup-height: calc(100vh - var(--main-space));
		width: calc(100% - var(--main-space));
		max-width: 500px;
	}

	.popup .popupContent .screen {
		grid-template-columns: 1fr;
		min-height: 10px;
	}

	.popup .portrait.imgWrap,
	.popup .portrait.imgWrap img {
		height: auto;
		aspect-ratio: 1;
	}

	.popup .portrait.imgWrap img {
		float: left;
	}

	.popup .screen.biographie {
		background: #000;
		color: #fff;
	}

	.popup .screen .headline.sticky {
		top: 0;
		background-color: #000;
	}

	.popup .screen .headline.sticky h2 {
		text-align: left;
		font-size: 2em;
		padding-bottom: 10px;
	}

	.popup .screen.biographie .textWrap {
		height: auto;
        min-height: auto;
	}

	.popup .textWrap .textInner {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.popup .portrait.imgWrap p {
	    bottom: 3vw;
	    font-size: 7vw;
	    left: 4vw;
	    right: auto;
	}

	.popup .textWrap h2 {
		font-size: 2em;
	}
	.popup .textWrap .position {
		font-size: 1.5em;
	}
	
}

/* ---------- .owl-carousel ---------- */

.owl-stage-outer {
    margin-bottom: var(--main-space);
}

.owl-carousel .owl-item {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 400px;
}

.owl-carousel .owl-item img {
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain;
}

.owl-carousel .owl-dots {
	text-align: center;
}

.owl-carousel .owl-dots .owl-dot {
	margin: 8px;
	position: relative;
}

.owl-carousel .owl-dots .owl-dot span {
	width: 25px;
	height: 25px;
	background: var(--accent-light-3);
	border-radius: 50%;
	display: block;
	position: relative;
}

.owl-carousel .owl-dots .owl-dot.active span {
	background: #fff;
}

/* Outer circle */
.owl-carousel .owl-dots .owl-dot span::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 45px;
	height: 45px;
	background: rgba(255,255,255,0.5);
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(0);
	opacity: 0;
}

/* Aktiv Animation */
.owl-carousel .owl-dots .owl-dot.active span::after {
	animation: dot-grow 0.4s ease forwards;
}

/* Inaktiv Animation */
.owl-carousel .owl-dots .owl-dot:not(.active) span::after {
	animation: dot-fade 0.3s ease forwards;
}

@keyframes dot-grow {
	0% {
		transform: translate(-50%, -50%) scale(0);
		opacity: 0;
	}
	70% {
		opacity: 1;
	}
	100% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 1;
	}
}

@keyframes dot-fade {
	0% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 1;
	}
	100% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 0;
	}
}


/* ========================================================================== */
/* ActionBar + InfoBox + Popup */
/* ========================================================================== */

/* rechts ----- actionBarWrap */
.actionBarWrap {
	justify-self: end;
	position: absolute;
	left: var(--main-space);
	bottom: 40px;
    z-index: 3;
}

.actionBarWrap .actionBar {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
}

/* Letztes Element in eigene Zeile zwingen */
.actionBarWrap .item.countrySel {
	flex-basis: 100%;   /* ganze Breite → neue Zeile */
	justify-content: flex-end;
}

.actionBarWrap .item {
	color: #fff;
	display: inline-block;
	font-family: var(--head-fontfamily);
	text-align: right;
	margin-left: 10px;
}

.actionBarWrap .item:first--child {
	margin-left: 0px;
}

.actionBarWrap .item.searchSel {
	display: inline-block;
	position: relative;
	translate: -3px;
}

.actionBarWrap .item svg {
	height: 60px;
	width: 54px;
}

.actionBarWrap .item[class*="zoom"] svg {
    height: 40px;
    width: auto;
    margin: 9px 0 0;
}

.actionBarWrap .item svg path {
	fill: #fff;
}

.actionBarWrap .item svg:hover path,
.actionBarWrap .item svg:hover rect {
	fill: var(--light-1-red);
}

.actionBarWrap .item.infoButton {
    align-items: center;
    border-radius: 50%;
    border: 3px solid #fff;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-family: var(--head-mainfamily);
    font-weight: 700;
    font-size: 1.5em;
    width: 50px;
    height: 50px;
    justify-content: center;
    margin: 6px 5px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.actionBarWrap .item.infoButton:hover {
	background-color: var(--light-1-red);
    color: #000;
    border-color: var(--light-1-red);
}

#infoPopup .popupContent {
	padding: var(--main-space);
}

@media (max-width: 500px) {
	.actionBarWrap {
	    left: 0;
	    right: 0;
	    width: 100%;
	}

	.actionBarWrap .actionBar {
	    justify-content: space-between;
	    width: 100%;
	    padding: 0 20px;
	}	
}


/* ========================================================================== */
/* Close Button */
/* ========================================================================== */

button.closepopup {
	appearance: none;
	background: transparent;
	border: 0;
	cursor: pointer;
	height: 50px;
	position: absolute;
	right: var(--main-space);
	top: var(--main-space);
	width: 50px;
	z-index: 1;
}

span.bars {
	background: #333;
	display: block;
	height: 3px;
	transition: all 0.3s;
	width: 40px;
}

span.bars.top {
	position: relative;
	top: 3px;
	transform: rotate(45deg);
}

span.bars.bottom {
	position: relative;
	transform: rotate(-45deg);
}

/* ========================================================================== */
/* Overlay (Base) */
/* ========================================================================== */

.overlay {
	align-items: center;
	display: none;
	height: 100%;
	justify-content: center;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

/* Close-Button im Overlay (gemeinsam) */
.overlay button.closepopup {
	position: absolute;
	right: var(--main-space);
	top: var(--main-space);
}

.overlay span.bars {
	background-color: #fff;
}

/* ========================================================================== */
/* Overlay: Country */
/* ========================================================================== */

/*.country.overlay {
	background: var(--light-1-pitch);
	color: #000;
	flex-flow: column;
	font-family: var(--head-fontfamily);
	font-size: 4em;
	line-height: 1em;
	overflow-y: scroll;
	padding: var(--main-space);
	text-transform: uppercase;
	justify-content: safe center;
}

.country.overlay img {
	width: 50px;
}

.country.overlay .item {
	align-items: center;
	display: flex;
	gap: 20px;
	justify-content: center;
	margin: 10px 0;
	transition: all 0.3s;
	cursor: pointer;
}

.country.overlay .item:hover {
	color: #fff;
}

@media (max-width: 600px) {
	.country.overlay {
		font-size: 2em;
	}

	.country.overlay .item {
		gap: 2vw;
	}

	.country.overlay img {
	    width: 4vw;
	}
}*/


#countryselector {
	--countryImgButtonSize: 20px;
	position: relative;
	width: 200px;
}

#countryselector button {
	color: #fff;
	font-family: var(--main-fontamily);
	font-size: 1.2rem;
	outline: none;
	display: grid;
	grid-template-columns: calc(var(--countryImgButtonSize) + 10px) 1fr;
}

#countryselector button img {
	height: var(--countryImgButtonSize);
}

#countryselector .dropdown-content {
	border-radius: var(--border-radius);
	display: none;
	padding: 10px;
	position: absolute;
	background: #000;
	width: 100%;
	z-index:100;
}

#countryselector .dropdown-content .item {
	align-items: center;
	cursor: pointer;
	display: grid;
	grid-template-columns: calc(var(--countryImgButtonSize) + 20px) 1fr;
	line-height: 1.2em;
	padding: 10px;
}
/*
#countryselector:hover .dropdown-content {
	display: block;
	margin-left: -16px;
	z-index: 1;
}
*/

#countryselector .dropdown-content img {
	border-radius: 50%;
	width: calc(var(--countryImgButtonSize) + 10px);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

#countryselector .dropdown-content .item:hover {
	color: #fff;
}

#countryselector .dropdown-content .item:hover img {
	transform: scale(1.1);
}


/* ========================================================================== */
/* Overlay: Search */
/* ========================================================================== */

.search.overlay {
	background: #333;
	flex-flow: column;
}

.search.overlay .searchInner {
	overflow-y: auto;
	padding: var(--main-space) ;
	width: 100%;
	height: 100vh;
}

.search.overlay .itemWrap {
	margin: -20px;
}

.search.overlay .itemWrap .item {
	cursor: pointer;
	display: inline-flex;
	float: left;
	gap: 0;
	padding: 20px;
	width: 50%;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.search.overlay .itemWrap .item:hover {
	transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.10), 0 6px 14px rgba(0, 0, 0, 0.06);
}



.search.overlay .itemWrap .item .itemInner {
	aspect-ratio: 732 / 289;
	background-color: var(--accent-light-1);
	border-radius: var(--border-radius);
	color: #000;
	display: flex;
	flex-flow: row wrap;
	overflow: hidden;
	width: 100%;
}

.search.overlay .itemWrap .item .imgWrap {
	background-color: var(--accent-dark);
	height: 100%;
	width: 55%;
}

.search.overlay .itemWrap .item .imgWrap img {
	height: 100%;
	object-fit: cover;
	width: 100%;
	object-position: top;
}

.search.overlay .itemWrap .item .textWrap {
	display: flex;
	flex-direction: column;
	justify-content: safe center;
	height: 100%;

	padding: 20px;
	width: 45%;

	-webkit-mask-image: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 1) 0,
		rgba(0, 0, 0, 1) calc(100% - 50px),
		rgba(0, 0, 0, 0) calc(100% - 20px),
		rgba(0, 0, 0, 0) 100%
	);

	mask-image: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 1) 0,
		rgba(0, 0, 0, 1) calc(100% - 50px),
		rgba(0, 0, 0, 0) calc(100% - 20px),
		rgba(0, 0, 0, 0) 100%
	);
}

.search.overlay .itemWrap .item .textWrap h2 {
	font-family: var(--head-fontfamily);
	font-size: 2em;
	line-height: 1em;
	margin-bottom: 15px;
	text-transform: uppercase;
}

.search.overlay .itemWrap .item .textWrap p {
	font-family: var(--sub-2-fontfamily);
	font-size: 0.8em;
	line-height: 1.4em;
}

#seracherror.active {
    width: 100%;
    text-align: center;
    font-style: italic;
    margin: 0 0 50px;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);
    border-radius: var(--border-radius);
    padding: 20px;
    background: var(--light-3-red);
    color: #000;
}

img:not([src]), img[src=""] {
  border: 0;
}

@media (max-width: 1100px) {
	.search.overlay .itemWrap .item .itemInner {
		aspect-ratio: unset;
	}
	.search.overlay .itemWrap .item .imgWrap,
	.search.overlay .itemWrap .item .textWrap {
		width: 100%;
	}

	.search.overlay .itemWrap .item .imgWrap,
	.search.overlay .itemWrap .item .imgWrap img {
		height: auto;
		aspect-ratio: 1;
		float: left;
	}

	.search.overlay .itemWrap .item .textWrap {
		aspect-ratio: 1/0.5;
        height: auto;
        overflow: hidden;
	}
}

@media (max-width: 790px) {
	.search.overlay .itemWrap {
		text-align: center;
	}
	.search.overlay .itemWrap .item {
		float: none;
		margin: 0 auto;
		max-width: 500px;
		width: 100%;
	}
}

/* ========================================================================== */
/* Searchbar */
/* ========================================================================== */

.searchbar {
	align-items: center;
	display: flex;
	justify-content: center;
	margin: 0 auto 50px;
	gap: 25px;
}

.searchbar .textSearch{
	border-bottom: 2px solid #fff;
	display: flex;
	width: min(600px, 90%);
}

.searchbar input {
	background: transparent;
	border: none;
	color: #fff;
	flex: 1;
	font-family: inherit;
	font-size: 1.2rem;
	outline: none;
	padding: 0.6em 0;
}

.searchbar input::placeholder {
	color: rgba(255, 255, 255, .6);
}

.searchbar button {
	align-items: center;
	background: none;
	border: none;
	cursor: pointer;
	display: flex;
	padding: 0.4em;
}

.searchbar svg {
	fill: #fff;
	height: 28px;
	transition: opacity .2s ease, transform .2s ease;
	width: 28px;
}

.searchbar button:hover svg {
	opacity: .8;
	transform: scale(1.1);
}