@charset 'UTF-8';

@font-face {
font-family:"ff-dax-compact-pro";
src:url("https://use.typekit.net/af/34af7c/00000000000000007735999b/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/34af7c/00000000000000007735999b/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/34af7c/00000000000000007735999b/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
font-display:auto;font-style:normal;font-weight:400;font-stretch:normal;
}


/* RESET */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family: "ff-dax-pro-wide", sans-serif;
}

/* HEADER */

header{
display:flex;
justify-content:space-between;
align-items:center;
padding:25px 25px 25px 85px;
background:#fff;
position:fixed;
width:100%;
top:0;
z-index:1000;
box-shadow:0 2px 5px rgba(0,0,0,0.1);
}

.logo{
font-size:1.5em;
font-weight:100;
color: #6e5938;
}

nav ul{
list-style:none;
display:flex;
gap:25px;
}

nav a{
text-decoration:none;
color:#263760;
font-weight:100;
text-transform: uppercase;	
}


/* hamburger menu */

#menu__toggle {
  opacity: 0;
}

#menu__toggle:checked ~ .menu__btn > span {
  transform: rotate(45deg);
}
#menu__toggle:checked ~ .menu__btn > span::before {
  top: 0;
  transform: rotate(0);
}
#menu__toggle:checked ~ .menu__btn > span::after {
  top: 0;
  transform: rotate(90deg);
}
#menu__toggle:checked ~ .menu__box {
  visibility: visible;
  left: 0;
}

.menu__btn {
  display: flex;
  align-items: center;
  position: fixed;
  top: 25px;
  left: 25px;
  width: 26px;
  height: 26px;
  cursor: pointer;
  z-index: 1;
}

.menu__btn > span,
.menu__btn > span::before,
.menu__btn > span::after {
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #6e5938;
  transition-duration: .25s;
}
.menu__btn > span::before {
  content: '';
  top: -8px;
}
.menu__btn > span::after {
  content: '';
  top: 8px;
}

.menu__box {
  display: block;
  position: fixed;
  visibility: hidden;
  top: 0;
  left: -100%;
  max-width: 40%;
  height: 100%;
  margin: 0;
  padding: 80px 0;
  list-style: none;
  background-color: #ECEFF1;
  box-shadow: 1px 0px 6px rgba(0, 0, 0, .2);
  transition-duration: .25s;
}

.menu__item {
  display: block;
  padding: 20px 24px;
  color: #6e5938;
  font-family: "ff-dax-pro-wide", sans-serif;
  font-size: 1.5em;
  font-weight: 300;
  text-decoration: none;
  transition-duration: .25s;
}
.menu__item:hover {
  background-color:rgba(38, 55, 96, .2);
  color:#263760;
}


/* HERO VIDEO */

.hero{
position:relative;
height:80vh;
overflow:hidden;
margin-top:5%;
}

.hero video{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
min-width:80%;
min-height:80%;
object-fit:cover;
}

/*
.hero-text{
position:absolute;
top:70%;
left:20%;
transform:translate(-50%,-50%);
color:white;
text-align:center;
background:rgba(0,0,0,0.1);
padding:20px 40px;
}
*/

.hero-text{
position: fixed;
top:50vh;
left:-12em;
transform:rotate(-90deg);
}


.hero-text h1{
	font-weight: 100;
	font-size: 1.5em;
	color:#263760;
}

/* INTRO TEXT */

.intro{
padding:5% 20%;
font-size:1.2em;
line-height:1.5;
color: #6e5938;
}	
	
.intro h1{
font-size:4.0em;
color: #6e5938;
font-weight: 100;	
}

.intro h2{
font-size:1.5em;
padding-bottom: 2%;
padding-top: 2%;	
font-weight: 100;	
text-transform: uppercase;
}

/* IMAGE GRID */

.gallery{
padding:60px 10%;
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:20px;
}

.gallery img{
width:100%;
height:100%;
object-fit:cover;
}

/* CONTACT */

.contact{
background:#f5f5f5;
padding:60px 10%;
text-align:center;
color: #6e5938;

}

.contact h2{
margin-bottom:5%;
color: #6e5938;
text-transform: uppercase;
font-size:2.5em;
font-weight: 100;		

}

.contact p{
margin:1% 0;
font-weight: 100;
font-size:1.4em;
line-height:1.6;	
}
	
.contact a{
text-decoration:none;
color:#263760;
font-weight:100;
}	

.contact img{
	width: 40%;
	height: auto;
	margin-top: 10%;
}

/* FOOTER */

footer{
background:#999;
color:lightgray;
text-align:center;
padding:2%;
font-size:0.8em;
}

footer a{
text-decoration:none;
color:lightgray;
}	

.impressum {
width: 90%;
margin: 15% 5% 5% 5%;
color: gray;	
font-weight: 100;	
}

.impressum p{
font-size:1.0em;
line-height:1.4;	
}

.impressum a{
text-decoration:none;
color:#263760;	
}	

/* RESPONSIVE */

@media (max-width:900px){

	
header{
align-items:center;
padding:25px 25px 15px 75px;
}
	
.gallery{
grid-template-columns:repeat(2,1fr);
}

.hero video{
width: 100%;
height: auto;
margin-top:1%;	
}
	
.hero-text h1{
font-size:1.5em;
}

.logo{
font-size:1.2em;	
}

.contact img{
width: 75%;
}

.menu__box {
 max-width: 60%;	
}	


	
	
@media (max-width:600px){

header{
flex-direction:column;
}

nav ul{
flex-direction:column;
align-items:center;
}

.hero{
height:50vh;
}

.hero video{
width: 100%;
height: auto;
}
	
.gallery{
grid-template-columns:1fr;
}

.hero-text h1{
font-size:1.0em;
}

.intro{
font-size:1.1em;
}	
	
.intro h1{
font-size:2.2em;
}	
	
.contact h2{
font-size:2.0em;
}

.contact p{
font-size:1.0em;
}	

.menu__box {
 max-width: 80%;
}	

.hero-text{
top:40vh;
left:-8.5em;
}	

