@charset "UTF-8";

@font-face {
    font-family: 'fontregular';
    src: url('../assets/font/standaard/Standaard-Display.woff2') format('woff2'),
         url('../assets/font/standaard/Standaard-Display.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;    
}

@font-face {
    font-family: 'fontitalic';
    src: url('../assets/font/standaard/Standaard-Display-Italic.woff2') format('woff2'),
         url('../assets/font/standaard/Standaard-Display-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: block;    
}

@font-face {
    font-family: 'titlefont';
    src: url('../assets/font/copperplate/Copperplate-ThirtyTwoBC.woff2') format('woff2'),
         url('../assets/font/copperplate/Copperplate-ThirtyTwoBC.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

* {
    margin: 0;
    padding: 0;
}

::-webkit-scrollbar {
    display: none;
}

::selection {
    color: #776868;
}

::-moz-selection {
    color: #776868;
}

/* TYPOGRAPHY */

h1 {
    font-family: 'titlefont';
    font-weight: normal;    
    font-size: 3.5rem;
    letter-spacing: 5px;
    font-weight: normal;
    text-align: center;
    rotate: 90deg;
}

h2 {
    font-family: 'titlefont';
    font-weight: normal;    
    font-size: 2.5rem;
    letter-spacing: 5px;
    font-weight: normal;
    text-align: center;
}

h3 {
    font-family: 'fontregular', Times New Roman, Times, serif;  
    font-weight: normal;
    text-align: center;  
    font-size: 22px;
    line-height: 35px;
    letter-spacing: .2px;
    padding: 0 0 15px 0;
}

a, p, ul {
    font-family: 'fontregular', Times New Roman, Times, serif;
    font-variant-numeric: oldstyle-nums;
    font-size: 22px;
    line-height: 35px;
    letter-spacing: 0px;
    color: black;
    text-decoration: none;
}

span {
    display: inline;     
}

i {
    display: inline;    
    font-family: 'fontitalic', Times New Roman, Times, serif;
    letter-spacing: 1px;
    text-transform: none;
}

strong {
    display: inline;        
    text-transform: uppercase;
    letter-spacing: 2.5px; 
    font-weight: normal; 
}


.allcaps {
    text-transform: uppercase;
    letter-spacing: 2.5px;  
}

.letterspacing a {
    letter-spacing: .2px;
}

.sansserif, .sansserif a {
    font-family: 'Univers', Arial, sans-serif;
    font-variant-numeric: normal;
    font-size: 18px;
    line-height: 35px;
    word-spacing: .1px;
    letter-spacing: .3px;    
}

/* DESIGN */

html {
    width: 100vw;
    height: auto;
    background: white;
    cursor: default;
    font-size: 100.0%;
    overflow-y: scroll;
    text-rendering: optimizeLegibility;    
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;    
}

ul {
    height: auto;
}

ul li {
    list-style-type: none;
}

.ignoreclick {
    display: inline-block;
}

#projects {
    display: block;
    width: 100vw;
    height: auto;
    /* Fallback for browsers that do not support Custom Properties */
    height: calc(var(--vh, 1vh) * 100);
    margin: 0;
}

.projektdetail {
    width: 100%;
    height: 100%;
    opacity: 1;
}

#div1 {
    overflow: hidden;
    position: relative;
}

#div2,
#div3,
#div4,
#div5,
#div6,
#div7,
#div8,
#div9,
#div10,
#div11,
#div12,
#div13 {
    display: none;
}

.teaser {
    width: 100%;
    height: 100%;
}

.teaser video {
    display: flex; /* Falls das Bild innerhalb zentriert sein soll */
    justify-content: center;
    align-items: center;
    max-height: 60%;
    max-width: 80vw;   
    /*object-fit: cover;      */
    user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;     
}

.intro {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;        
    height: 100%;
    width: 100%;
}

.intro a, p {
    display: inline-flex;
    justify-content: center;
    align-items: baseline;
    flex-wrap: wrap;
    max-width: calc(100% - 50px);
    font-family: "MagdaLight", Arial, sans-serif;
    font-size: 14vw;
    line-height: 1;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
}

.title {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

/* BILDFORMATE */

.twocolumns {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    gap: 0vw;
}

.twocolumns picture{
    display: inline-block;
    margin: 0;
}

.twocolumns img {
    max-height: 60vh;    
    max-width: 40vw;
    display: block;    
    user-drag: none;
    user-select: none;   
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.passepartout {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.passepartout img {   
    max-height: 60vh;
    max-width: 80vw;
    display: block; /* Entfernt mögliche extra Abstände */
    user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.framed {
  display: inline-block;
  padding: 8px;
  background: white;
  box-shadow:
    0 0 0 2.5px black,   /* äußerer Rahmen */
    0 0 0 10px white,  /* Abstand (weiß) */
    0 0 0 11px black;  /* innerer Rahmen */
}

.stroke {
  outline: 3.25px solid black;
  outline-offset: -3.25px;
}

.pagina {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: calc(100% - 40px);
    position: absolute;
    top: 80px;
    left: 20px;
    text-align: center;
}

.indexpagina {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 35px;
    width: calc(100% - 80px);
    position: absolute;
    top: 80px;
    text-align: center;
}

.indexpagina a:hover {
    font-family: 'fontitalic', Times New Roman, Times, serif;;
    letter-spacing: 1px;    
}

.hint:hover {
    font-family: 'fontitalic', Times New Roman, Times, serif;;
    letter-spacing: 1px;
}

/* ////////////////////////////////////////// INDEX */

#indexcontainer {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100vw - 80px);
    padding: 180px 40px 0 40px;
    background: white;
}

#indexcontainer ul {
    display: flex;
    flex-direction: column;
    z-index: 20;
    gap: 1rem;
}

.indexcontent {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;    
    width: 100%;
    height: auto;
    gap: 1rem;    
}

.indexcontentrow {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    min-height: 100vh;
    gap: 2vh;
}

.description {
    width: calc(100vw - 80px)
}

.indexhover {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    object-fit: cover; /* Zuschneiden, um den Container zu füllen */              
    z-index: 10;  
}

.indexhover img {
    max-height: 60vh;
    background: yellow;
}

.indexhover video {
    max-height: 60vh;
    background: yellow;
}

.indexandria,
.indexconstance,
.indexcastelmonte,
.indexcorbusieur,
.indexdublin,
.indexberlin,
.indexmangiare,
.indexgravina,
.indexstuttgart,
.indexalberobello,
.indexhowth,
.indexflixtrain {
    display: none;
}

.loader {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed; /* nicht absolute */
    top: 0;
    left: 0;
    width: 100vw;
    min-height: 100%;
    overflow: hidden; /* kein internes Scrollen */
    z-index: 9999;
    background: white;
}

.loader-text {
    max-width: 70%;
    font-variant-numeric: oldstyle-nums;
}

/* MEDIA SCREEN MIN 800PX */

@media screen and (min-width: 800px) {

#indexcontainer {
    padding: 0 40px 0 40px;
} 

#indexcontainer ul {
    gap: 1.5rem;
}

.indexcontent {
    align-items: center;    
    flex-direction: row;    
    gap: 10vw;
    min-height: 100vh;
}    

.pagina {
    flex-direction: row;
    gap: 35px;
}    

h1 {
    font-size: 6rem;
    letter-spacing: 5px;
    margin: 0;
    padding: 0;
    max-width: 80%;
    rotate: 0deg;
    margin: 0 0 20px 0;        
}

h2 {
    font-size: 6rem;
    letter-spacing: 5px;
    margin: 0;
    padding: 0;
    max-width: 80%;
}

h3 {
    font-size: 30px;
    letter-spacing: 1.5px;    
}

.description {
    width: 50vw;
}

.twocolumns {
    gap: 15vw;
}

.framed {
  padding: 15px;
  box-shadow:
    0 0 0 3.5px black,   /* äußerer Rahmen */
    0 0 0 11px white,  /* Abstand (weiß) */
    0 0 0 12.5px black;  /* innerer Rahmen */
}

.stroke {
  outline: 4.5px solid black;
  outline-offset: -4.5px;
}

}
