@charset "UTF-8";
/* CSS Document */


/* TEASER STARTSEITE --------------------------------------------------- */

.teaser_img {
  position: relative;
  width: 94%;
  height: 72vh;
  max-width: 1200px;
  max-height: 600px;
  margin: 0 auto;
  overflow: hidden;
}

.teaser_img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2); /* Initial: 20% Abdeckung */
  opacity: 0;
  transition: opacity 0.3s;
  z-index: 1;
}

.teaser_img:hover::before {
  opacity: 1;
}

.teaser_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter 0.3s;
  z-index: 2;
	filter: brightness(50%);
}

.teaser_img:hover img {
  filter: brightness(100%); /* 40% Abdeckung */
}

.teaser_img .teaser_title {
  position: absolute;
  top: 50%;
  left: 50%;
	width:75%;
  transform: translate(-50%, -50%);
  font-size: 56px;
  color: white;
  opacity: 1;
  text-align: center;
  padding: 0 20px;
  line-height: 1;
  z-index: 3;
	font-family:  serif; /* 'Playfair Display', */
  font-weight: 400;
  font-style: italic;
	font-size: 56px;
}

.teaser_img .teaser_title::before,
.teaser_img .teaser_title::after {
  content: "";
  position: absolute;
  bottom: -14px; /* Abstand zwischen Linie und Titel */
  height: 1px;
  background-color: white;
  width: 80%; /* Breite der Linie */
  transition: transform 0.3s;
  transform-origin: center;
}

.teaser_img .teaser_title::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px); /* Zentrierte Position */
  left: 0;
  width: 50%;
  background-color: white;
  transition: transform 0.3s;
  transform-origin: right;
  transform: scaleX(0.8); /* 80% der Titelbreite */
}

.teaser_img .teaser_title::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px); /* Zentrierte Position */
  right: 0;
  width: 50%;
  background-color: white;
  transition: transform 0.3s;
  transform-origin: left;
  transform: scaleX(0.8); /* 80% der Titelbreite */
}

.teaser_img:hover .teaser_title::before,
.teaser_img:hover .teaser_title::after {
  transform: scaleX(1); /* 100% der Titelbreite */
  width: 120%; /* Verbreiterung der Linie */
}





/* FONTS --------------------------------------------------- */

#logo .name{
	font-size: 56px;
	margin-bottom: 8px;
}
#logo .profession{
	font-size: 28px;
	color:gray;
}

/* BASIC SETUP ------------- */
body, h1, h2, p{
	font-family: "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
	color: white;
	font-weight: 200;
	margin: 0;
	padding: 0;
}
body{
	background-color: #232323;
	width: 100%;
}
h1{
	font-family: serif; 
	font-style: italic;
	font-size: 72px;text-align: center;
}

.page-title{
	position: absolute;
	z-index: 101;
	top: 700px;
	width:100%; 
}
.page-title span{
	text-align: center;
	font-size: 24px;
	display: block;
	
}


/* LOGO ------------------------------------------------------ */

#logo{
	position: absolute;
	z-index:100;
	left: 14%;
	top: 8%;
}



/* MENU  ------------------------------------------------------ */


/* Rest Link Styles ---------------- */ 
a, a:focus, a:link, a:active, a:visited{
	color:white;
	text-decoration:none;
}


/* Main Items ---------------------- */ 
.main a{
	border-bottom: 0.04rem solid #232323;
}
.main a:hover{
	border-bottom: 0.04rem solid white;
}
/* Highlighting */
#menschen-unserer-zeit #_men, 
#stadtszenen #_sta,
#formen #_for,
#abstrakt #_abs{ 
	border-bottom: 0.04rem solid white; 
}


/* Sub Items ---------------------- */ 
.sub a{
	color:gray;
	display: inline-block;
}
.sub a:hover{
	color:white;
}
/* Highlighting */
#vita #_vit,
#kontakt #_kon{
	color:white;
	border-bottom: 0.04rem solid white; 
}


/* Menu Setup ---------------------- */
.menu{
	position: absolute;
	z-index:100;
	right: 14%;
	top: 9%;
	text-align: right;
}
.menu a{
	display: inline-block;
	margin-bottom: 0.4rem;
	padding: 1px 0px;
}

.menu .main{
	font-size: 24px;
	margin-bottom: 32px;
}
.menu .sub{
	font-size: 20px;
}


/* Footer Setup   ---------------------- */
.footer{
	text-align: right;
	position: relative;
	height:400px;
	width: 100%;
	margin-top:80px;
}





/* OVERVIEW  ------------------------------------------------------ */

.overview{
	position: relative;
	margin: 0 auto;
	width:80%;

	text-align: center;
}

.image-container {
	position: relative;
	width: 40%;
	height: 50vh;
	max-width: 40vw;
	max-height: 50vh;
	/*overflow: hidden;*/
  
	margin:3%;
	margin-bottom: 120px;
	display: inline-block;
	/*background-color:blue; */
}


.image-container .inner {
  position: absolute;
	width: 100%;
	height:100%;
/*  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);*/
	  display: flex;
  justify-content: center;
  align-items: center;
}

.image-container .inner .painting {

  max-width: 100%;
	max-height: 100%;
	display: block;
	
}

.image-container .inner span{
/*	position: absolute;*/
	width:120px;
	z-index:100;
	top:0px;
	left: 50%;
	 max-height: 100%;
	font-size: 14px;
	transform: translate(-50%, -50%);
	color: white;

	
}


/* Responsive Adjustments -------------------------------------- */



.spacer_1{
	height:380px;
}



@media (max-width: 1200px) {
	.teaser_img {
		width: 94vw;
  	}
	.overview{
	width:90%;
	}
}
@media (max-width: 1800px) {
	#logo{
		left:6%;
	}
	.menu{
		right:6%;
	}
	
}

/* MOBILE ------------------------------- */

@media (max-width: 800px) {
	
	
	/* GLOBAL  ------------------ */
	#logo {
		top:24px;
		left:24px;
	}
	.menu{
		top:120px;
		right:20px;
		font-size: 18px;
	}
	/* Schriften -*/
	#logo .name{	font-size:34px; margin-bottom: 0;	}
	#logo .profession{	font-size: 24px;	}
	.menu .main{ font-size:20px;	}
	.menu .sub{ font-size:18px;	}
	
	
	/* HOMEPAGE*/
	.teaser_img {
		height: 72vh;
	}
	.teaser_img .teaser_title {
		font-size: 48px;
		width: 300px;
	}
	
	/* GALLERY ------------------ */
	.gallery .spacer_1, #start .spacer_1{ /* Abdstand oben*/
		height:380px;
	}
	.overview{ /* Content Container über volle Breite*/
		width:90%;
	}
	
	.image-container {
		width:100%;
		max-width: 90vw;
		max-height: 90vh;
		display: block;
	}
	
}








