:root {
--white: #eee;
--black: #38322D;
--blue: #0088d4;
}

body {
background-color: var(--black);
overflow-x: hidden;
font-family: Noto-Thin;
margin: 0px;
position: relative;
left: 0px;
top: 0px;
scroll-behavior: smooth;
}

#text_1 p {
max-width: 80%;
width: 100%;
font-size: clamp(1.2rem, 2.5vw, 1.5rem);
text-align: center;
font-weight: 900;
line-height: 200%;
}

#text_2 p {
max-width: 80%;
width: 100%;
font-size: clamp(1.2rem, 2.5vw, 1.5rem);
text-align: center;
font-weight: 900;
line-height: 200%;
}

#text_3 p {
max-width: 80%;
width: 100%;
font-size: clamp(1.2rem, 2.5vw, 1.5rem);
text-align: center;
font-weight: 900;
line-height: 200%;
}

#contact h1, h2, h3 {
width: 100%;
text-align: center;
font-weight: 900;
color: var(--white);
}

#contact h1 {
font-size: clamp(1.5rem, 2.5vw, 1.8rem);
}

#contact h2 {
font-size: clamp(1.2rem, 2.5vw, 1.5rem);
}

#contact h3 {
font-size: clamp(1rem, 2.5vw, 1.2rem);
}

#footer h3 {
font-size: clamp(1rem, 2.5vw, 1.2rem);
display:inline;
}

#first-sight {
position: relative;
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;
height: 100vh;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
background-color: var(--black);
color: var(--white);
}

#first-sight img {
position: relative;
margin-bottom: 100px;
max-width: 90vw;
max-height: 80vh;
aspect-ratio: 1 / 1;		
}

#text_1 {
position: relative;
background-color: var(--white);
color: var(--black);
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;
min-height: 100vh;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
}

#pop, #templates{
color: var(--blue);
}


#pop::before{
content: "";
opacity: 0;
position: absolute;
left: 50px;
top: 0px;
display: block;
width: 0px;
max-width: 400px;
max-height: 150px;
height: 0px;
transform: scale(0%);
transform: translate(0px, 0px);
transform-origin: left bottom;
background-image: url("../bilder/power_user.webp");
background-size: contain;
background-repeat: no-repeat;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

#pop:hover::before{
opacity: 0.9;
content: "";
position: absolute;
left: 50px;
top: 0px;
display: block;
width: 50vw;
max-width: 400px;
max-height: 150px;
height: calc( 50vw/2.42727 );
transform: scale(100%);
transform: translate(0px, -100%);
background-image: url("../bilder/power_user.webp");
background-size: contain;
background-repeat: no-repeat;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}



#portrait {
position: relative;
background-color: var(--white);
color: var(--black);
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
}

#portrait img {
position: relative;
max-width: 35vw;
max-height: 35vh;
border-radius: 500px;
border-style: solid;
border-width: 3px;
background-color: var(--black);
margin: 50px;
aspect-ratio: 1 / 1;
}

#logos {
display: inline;
margin-bottom: 50px;
margin-left: 50px;
margin-right: 50px;
width: 100%;
text-align: center;
}

#logos img {
width: 8vw;
margin: 1vw;
max-width: 100px;
border-radius: 500px;
border-style: solid;
border-width: clamp(1px, 0.1vw, 5px);
aspect-ratio: 1 / 1;
display: inline;
}

#bsh {
grid-column: 1;
grid-row: 1;
}

#wiz {
grid-column: 5;
grid-row: 3;
}

#text_2 {
position: relative;
background-color: var(--black);
color: var(--white);
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;

min-height: 100vh;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
}

#text_3 {
position: relative;
background-color: var(--white);
color: var(--black);
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;
padding-top: 50px;
padding-bottom: 50px;
min-height: 100vh;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: center;
align-items: center;
align-content: center;
}

#contact {
position: relative;
display: flex;
flex-direction: column;
flex-wrap: no-wrap;
justify-content: center;
align-items: center;
align-content: center;
gap: 0px 0px;
top: 0px;
left: 0%;
width: 80%;
padding-left: 10%;
padding-right: 10%;
padding-bottom: 50px;
min-height: 100vh;
background-color: var(--black);
color: var(--white);
}

#contact img {
position: relative;
margin-bottom: 100px;
max-width: 50vw;
width: 300px;
max-height: 80vh;
aspect-ratio: 1 / 1;		
}

#footer {
text-align: center;
position: absolute;
left: 0%;
width: 100%;
top: 90vh;
overflow-x: hidden;
color: var(--white);
}

a:link,
a:visited,
a:hover,
a:active {
text-decoration: none;
color: var(--black);
font-weight: 900;
}

@font-face {
font-display: swap;
font-family: Noto-Thin;
src: url(../fonts/NotoSans-Thin.ttf);
}

.bigger {
scale: 1.2;
}

.fade {
opacity: 0;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.fadeinup {	
-webkit-animation-name: fadeInUp;
animation-name: fadeInUp;
-webkit-animation-duration: 0.3s;
animation-duration: 0.3s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}

.fadeindown {	
-webkit-animation-name: fadeInDown;
animation-name: fadeInDown;
-webkit-animation-duration: 0.3s;
animation-duration: 0.3s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
		
@-webkit-keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translate3d(0, 100px, 0);
transform: translate3d(0, 100px, 0);	
}
to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}

@keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translate3d(0, 100px, 0);
transform: translate3d(0, 100px, 0);
}
to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
 }
 }
 
@-webkit-keyframes fadeInDown {
from {
opacity: 0;
-webkit-transform: translate3d(0, -100px, 0);
transform: translate3d(0, -100px, 0);	
}
to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}

@keyframes fadeInDown {
from {
opacity: 0;
-webkit-transform: translate3d(0, -100px, 0);
transform: translate3d(0, -100px, 0);
}
to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
 }
 }
 
.tilesWrap {
list-style: none;
text-align: center;
padding: 0px;

}

.tilesWrap li {
display: inline-block;
width: 40%;
min-width: 200px;
max-width: 600px;
padding: 80px 20px;
position: relative;
vertical-align: top;
margin: 50px;
min-height: 15vh;
background: var(--black);
border: 1px solid var(--black);
text-align: left;
border-radius: 15px;
}

.tilesWrap li h2 {
font-size: clamp(1.6rem, 2.5vw, 1.9rem);
margin: 0px;
position: absolute;
text-align: center;
top: 30px;
left: 0px;
transition: all 0.3s ease-in-out;
text-wrap: balance;
}

.tilesWrap li h3 {
position: relative;
font-size: clamp(1rem, 2.5vw, 1.3rem);
color: var(--white);
margin-bottom: 5px;
top: 50px;
}

.tilesWrap li h4 {
font-size: clamp(2rem, 4vw, 2.5rem);
color: var(--white);
margin: 0;
position: absolute;
bottom: 0px;
right: 10px;
transition: all 0.3s ease-in-out;
}

#template_grid {
position: relative;
top: 0px;
left: 0px;
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
align-items: baseline;
align-content: space-around;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.update_card {

position: relative;
top: 0px;
left: 0%;
width: 25%;
min-width: 400px;
padding-top: 20px;
padding-bottom: 20px;
display: flex;
flex-direction: column;
flex-wrap: wrap;
justify-content: space-around;
align-items: baseline;
align-content: space-around;
color: var(--white);
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.yaml_text {
text-align: center;
position: relative;
left: 0%;
width: 80%;
min-width: 400px;
max-width: 600px;
overflow-x: hidden;
color: var(--white);
margin-top: 20px;
margin-bottom: 20px;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;		
}

.yaml,
.yaml_img {
display: block;
width: 80%;
min-width: 400px;
max-width: 600px;
position: relative;
vertical-align: top;
background: var(--black);
border: 1px solid var(--black);
text-align: left;
border-radius: 15px;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.yaml:hover {
display: block;
width: 80%;
min-width: 400px;
max-width: 600px;
position: relative;
vertical-align: top;
min-height: 15vh;
height: 500px;
background: var(--black);
border: 1px solid var(--black);
text-align: left;
border-radius: 15px;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.template_text {
text-align: center;
position: relative;
left: 0%;
width: 100%;
overflow-x: hidden;
color: var(--white);
margin-top: 20px;
margin-bottom: 20px;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
transition: all 0.5s ease;		
}