*{
	margin: 0;
	padding: 0;
	font-family: Arial, sans-serif;
	color: #253077;
	font-size: 18px;
	line-height: 1.4em;
	box-sizing: border-box;
}



ul{
	list-style: none;
}

a{
  text-decoration: none;
}

a:hover{
  color: black;
}

h1{
	font-size: 38px;
	padding: 3rem 0 0 0;
  text-transform: uppercase;
  margin-bottom: 3rem;
}

h2{
	font-size: 25px;
  text-transform: uppercase;
}

h3{
  margin-bottom: 1rem;
}

@media screen and (max-width:420px){
  h1{
  	font-size: 30px;
    margin-bottom: 2rem;
  }}


  input[type="text"], input[type="password"] {
      width: 300px;
      height: 50px;
      font-size: 18px;
      margin-bottom: 20px;
      padding-left:5px;
  }

@media screen and (max-width:420px){
  input[type="text"], input[type="password"] {
      width: 200px;
      margin-left: -1rem;

  }
}

  input[type="button"]{
    background-color: #253077;
    padding: .2rem .5rem;
    border: none;
    color: white;
  }

  input[type="button"]:hover{
    background-color: white;
    padding: .2rem .5rem;
    color: #253077;

  }


  .button {
    width:150px;
    height: 50px;
    font-size:18px;
    background-color:#000;
    color:#fff;
    border:#fff solid 1px;
}

.button:hover {
    background-color:#fff;
    color:#000;
    cursor: pointer;
}



#text_einleitung{
	font-size: 35px;
}



@media screen and (max-width:1440px){
  #text_einleitung{
		font-size: 30px;
	}
}


@media screen and (max-width:770px){
  	#text_einleitung{
		font-size: 26px;
	}
}

@media screen and (max-width:420px){
	#text_einleitung{
		font-size: 20px;
	}
}

	.einleitung{
    display: grid;
    grid-template-columns: 1fr;
  	position: relative;
		padding-top: 8rem;
  }


	@media screen and (max-width:770px){
	.einleitung{
		padding-top: 3rem;
		}}


@media screen and (max-width:420px){
	.einleitung{
		padding-top: 0rem;
  }}


  .kontakt_einleitung p{
    font-size: 30px;
  }

  .kontakt_einleitung a{
    font-size: 30px;
  }


  @media screen and (max-width:1440px){
    .kontakt_einleitung p{
      font-size: 28px;
    }

    .kontakt_einleitung a{
      font-size: 28px;
    }
  }


  @media screen and (max-width:770px){
    .kontakt_einleitung p{
      font-size: 24px;
    }

    .kontakt_einleitung a{
      font-size: 24px;
    }
  }


  @media screen and (max-width:420px){
    .kontakt_einleitung p{
      font-size: 18px;
    }

    .kontakt_einleitung a{
      font-size: 18px;
    }
  }


.loginbereich{
  margin: 5rem auto 0 auto;
  max-width: 50%;
}

@media screen and (max-width:780px){
  .loginbereich{
    max-width: 80%;
  }}

header{
	display: grid;
	grid-gap: 2rem;
	grid-template-columns: 1fr 1fr;
}

.logo_eugster{
  padding: 2rem;
}

.logo_eugster img{
  max-width: 30%;
}

.logo_vision a{
	position: relative;
	padding: 2rem;
	right: 0;
  display: grid;
}

.logo_vision img{
  justify-self: end;
  max-width: 30%;
}


@media screen and (max-width:768px){
  .logo_eugster img{
    max-width: 60%;
  }

  .logo_vision img{
    max-width: 60%;
  }

}

@media screen and (max-width:420px){
  .logo_eugster img{
    max-width: 120%;
  }

  .logo_vision img{
    max-width: 120%;
  }

}

.bild_icon{
  max-width: 60% !important;
}

.background{
  position: absolute;
	background-color: #b4b4b4;
  width: 100%;
  z-index: -10;
  padding-bottom: 3.5rem;
}

.background_home{
  position: absolute;
  background-image: url(../img/pictures_world/EFVision_We_are_the_leading_global_oem_vertical_desktop.jpg);
	background-repeat: no-repeat;
	background-position: left top;
  min-width: 100%;
  z-index: -9;
  padding-bottom: 2rem;
  min-height: 100%;
}


@media screen and (max-width:1490px){
	.background_home{
	  background-image: url(../img/pictures_world/EFVision_We_are_the_leading_global_oem_vertical_ipad.jpg);
		background-position: left top;
	}
}

@media screen and (max-width:680px){
	.background_home{
	  background-image: url(../img/pictures_world/EFVision_We_are_the_leading_global_oem_vertical_mobile.jpg);
		background-position: right top;
	}
}

.content{
	max-width: 60%;
	margin: 0 auto;
	position: relative;
  z-index: 1;
}

.content img{
	max-width: 90%;
}

.icon_download{
  max-width: 5% !important;
  margin-bottom: -4px;
}

@media screen and (max-width:420px){
.icon_download{
  max-width: 8% !important;
  margin-bottom: -4px;
}}


.beschreibung_icon{
  margin-top: 1rem;
  margin-left: -9rem;
}


@media screen and (max-width:1240px){
.beschreibung_icon{
  margin-left: 0;
}}

#burger-toggle {
  position: absolute;
  appearance: none;
  opacity: 0;
}
#burger-toggle:checked ~ .overlay {
  opacity: 1;
  transform: scale(160);
}
#burger-toggle:checked ~ nav {
  pointer-events: auto;
}
#burger-toggle:checked ~ nav ul li {
  opacity: 1;
  transform: translateX(0);
}
#burger-toggle:checked ~ main {
  opacity: 0.5;
  filter: blur(5px);
  pointer-events: none;
}
#burger-toggle:checked ~ .burger-menu .line:nth-child(1) {
  transform: translateY(calc(var(--burger-menu-radius) / 5)) rotate(45deg);
}
#burger-toggle:checked ~ .burger-menu .line:nth-child(2) {
  transform: scaleX(0);
}
#burger-toggle:checked ~ .burger-menu .line:nth-child(3) {
  transform: translateY(calc(var(--burger-menu-radius) / -5)) rotate(-45deg);
}

.burger-menu {
  --burger-menu-radius: 4em;
  position: fixed;
	top: 11em;
	right: 60px;
  z-index: 100;
  display: block;
  width: var(--burger-menu-radius);
  height: var(--burger-menu-radius);
  background: white;
  border: solid 2px rgba(149, 166, 167, 0.4);
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  transition: 0.5s ease-in-out;
}


@media screen and (max-width:420px){
.burger-menu {
  --burger-menu-radius: 3em;
  	right: 20px;}}


.burger-menu .line {
  position: absolute;
  left: 25%;
  width: 50%;
  height: 3px;
  background: rgba(43, 61, 79, 0.3);
  border-radius: 10px;
  overflow: hidden;
  transition: all 0.5s ease;
}
.burger-menu .line:nth-child(1) {
  top: 30%;
}
.burger-menu .line:nth-child(2) {
  top: 50%;
}
.burger-menu .line:nth-child(3) {
  top: 70%;
}
.burger-menu .line::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #253077;
  transform: translateX(-100%);
  transition: all 0.25s ease;
}
.burger-menu .line:nth-child(2)::after {
  transition-delay: 0.1s;
}
.burger-menu .line:nth-child(3)::after {
  transition-delay: 0.2s;
}
.burger-menu:hover {
  box-shadow: 0.4px 0.4px 0.8px rgba(0, 0, 0, 0.042), 1px 1px 2px rgba(0, 0, 0, 0.061), 1.9px 1.9px 3.8px rgba(0, 0, 0, 0.075), 3.4px 3.4px 6.7px rgba(0, 0, 0, 0.089), 6.3px 6.3px 12.5px rgba(0, 0, 0, 0.108), 15px 15px 30px rgba(0, 0, 0, 0.15);
}
.burger-menu:hover .line::after {
  transform: translateX(0);
}

.overlay {
  position: fixed;
  top: 50px;
  left: 50px;
  width: 2em;
  height: 2em;
  background: white;
  border-radius: 50%;
  opacity: 0;
  transition: 0.5s ease-in-out;
  will-change: transform;
}

nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}
nav ul {
  position: absolute;
  z-index: 101;
  display: flex;
  flex-direction: column;
  align-items: start;
  list-style-type: none;
}
nav ul li {
  opacity: 0;
  transition: 0.6s cubic-bezier(0.365, 0.84, 0.44, 1);
}
nav ul li:nth-child(odd) {
  transform: translateX(-100%);
}
nav ul li:nth-child(even) {
  transform: translateX(100%);
}
nav ul li:nth-child(1) {
  transition-delay: 0.05s;
}
nav ul li:nth-child(2) {
  transition-delay: 0.1s;
}
nav ul li:nth-child(3) {
  transition-delay: 0.15s;
}
nav ul li:nth-child(4) {
  transition-delay: 0.2s;
}
nav ul li a {
  position: relative;
  display: block;
  padding: 5px;
  font-family: Arial, sans-serif;
  font-size: 1.5em;
  text-decoration: none;
  text-transform: uppercase;
  color: #253077;
  transition: 0.5s;
}

nav ul li a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.5s;
}


nav ul li a:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

main {
  padding: 0.5em calc(50% - 400px);
  font-family: Arial, sans-serif;
  transition: 0.5s ease-in-out;
}
main h1 {
  text-align: center;
}




.produkt{
  display: grid;
  grid-template-columns: 1fr 1fr;
	grid-template-areas:
	"titel titel"
	"bild beschreibung";
	padding-bottom: 5rem;
	position: relative;
}


@media screen and (max-width:1024px){
	.produkt{
		grid-template-columns: 1fr;
		grid-template-areas:
		"titel"
		"bild"
		"beschreibung";
    padding-bottom: 2rem;
}
}

.logo_beschrieb{
  margin-left: -7rem;
}


@media screen and (max-width:1240px){
.logo_beschrieb{
  margin-left: 0rem;
}



.titel{
	grid-area: titel;
}


.bild{
	grid-area: bild;
}


.beschreibung{
	grid-area: beschreibung;

}


@media screen and (max-width:420px){
.beschreibung a{
    font-size: 13px;
  }

.beschreibung{
    margin-left: 0px;
}}

.beschreibung_logos{
  margin-left: -5.5rem;
}

@media screen and (min-width:1220px){
.beschreibung_logo{
  margin-left: 0;
}}
