@font-face {
    font-family: 'Basteleur-Bold';
    src: url('fonts/') format('woff2'),
         url('fonts/') format('woff');
}

@font-face {
    font-family: 'Bold';
    src: url('fonts/') format('woff2');
    font-variation-settings: "wght" 700;
}

@font-face {
    font-family: 'SemiBold';
    src: url('fonts/') format('woff2');
    font-variation-settings: "wght" 400;
}

@font-face {
    font-family: 'Medium';
    src: url('fonts/') format('woff2');
}

@font-face {
    font-family: 'Regular';
    src: url('fonts/NostresRegular.otf') format('woff2');
}

@font-face {
    font-family: 'RegularSerif';
    src: url('fonts/S') format('woff2');
}

@font-face {
    font-family: 'RegularMono';
    src: url('fonts/NostresMonoRegular.otf') format('woff2');
}

@font-face {
    font-family: 'Light';
    src: url('fonts/GT-Haptik-Light.woff2') format('woff2');
}

html {
  scroll-behavior: smooth;
}


/* Allgemeine Stile */


body {
    font-family: Regular;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: #FAF6EF;
}

header {
  background-color: transparent;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: 0;
  z-index: 1000;
  padding: 0;
  width: 100vw;
}



h1 {
    font-family: Regular;
    font-size: 20px;
    text-transform: uppercase;
    margin-top: 0px;
    margin-bottom: 15px;
    text-align: right;
}

h2 {
    font-family: Regular;
    font-size: 34px;
}

h3 {
    font-family: Regular;
    font-size: 40px;
}

h4 {
    font-family: RegularMono;
    font-size: 16px;
    text-align: left;
    text-transform: uppercase;
}

h5 {
    font-family: RegularMono;
    font-size: 16px;
    text-align: left;
    text-transform: uppercase;
    margin: 0;
}

h6 {
    font-family: Regular;
    font-size: 100px;
    text-align: center;
    text-transform: uppercase;
}

p {
    font-family: Regular;
    font-size: 20px;
    margin-top: 0px;
}

a {
    font-family: Regular;
    font-size: 20px;
    color: inherit;
    text-decoration: none;
    margin-top: 0px;
}

.scroll-to-top {
  position: fixed;
  bottom: 50px;
  right: 20px;
  background-color: white;
  color: black;
  padding: 20px;
  border-radius: 100vh;
  text-align: center;
  text-decoration: none;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
  z-index: 999;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
}

.scroll-to-top:hover {
  background-color: black;
  color: white;
  box-shadow: 0px 0px 30px rgb(247, 207, 163);
}

/* Sichtbar machen beim Scrollen */
body.scrolled .scroll-to-top {
  opacity: 1;
  pointer-events: auto;
}


/* Logo in Navigation */


.navbar-container {

  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}



.logo img {
  height: 45px;           /* Logo‑Größe */
  width: auto;
  filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 1));
  transition: height 0.3s ease;
  padding: 20px;
  padding-top: 0;
}


.scrolled .logo img {
  height: 25px;
}


nav {
    font-family: Regular;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    
}

nav ul {
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 20px;
    padding-right: 15px;
    padding-top: 0px;


}

nav ul li {
    text-align: center;

}

nav ul li a.logo-link {
    background-color: transparent;
    box-shadow: none;
    border-radius: 0;
    
}

nav ul li a.logo-link:hover {
    background-color: transparent;
    color: inherit;
    box-shadow: none;

}


nav ul li a {
    display: block;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
    padding: 5px 25px 10px 25px;
    color: #000;
    text-decoration: none;
    font-size: 30px;
    border-radius: 100vh;
    background-color: #fff;
    margin: 5px;
    
}

nav ul li a:hover {
    background-color: black;
    color: #fff;
    box-shadow: 0px 0px 30px rgb(247, 207, 163);
}


.menu-icon {
    font-size: 24px;
    cursor: pointer;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
    padding: 15px 15px;
    margin: auto;
    border-radius: 100vh;
    display: none;
}

.bar1, .bar2, .bar3 {
    width: 50px;
    height: 3px;
    background-color: #000;
    margin: 6px 0;
    transition: 0.4s;
}

.change .bar1 {
    transform: rotate(-45deg) translate(-5px, 5px);
}

.change .bar2 {
    opacity: 0;
}

.change .bar3 {
    transform: rotate(45deg) translate(-8px, -8px);
}

.responsive-svg {
    width: 95%;
    height: auto;
    display: block;
    z-index: 2;       /* ganz vorne */
    position: relative;
    padding: 2vh;
  }

main {
    padding: 0;
    margin-top: 0;
    flex: 1;
}

.content-section {
    display: none;
}

.content-section.active {
    display: block;
}

.button {
    background-color: white;
    border: none;
    color: black;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-family: Regular;
    transition-duration: 0.4s;
    border-radius: 100vh;
    cursor: pointer;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
  }

  .button:hover {
    background-color: black;
    color: white;
    border-radius: 0vh;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
  }

  /* startseite */
#start {
  position: relative;
  width: 100vw;
  height: 100vh; /* volle Höhe des Viewports */
  background-image: url('img/titel.JPG');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white; /* Textfarbe anpassen */
}


/* collection Grid */
.grid-container-collection {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    padding: 0;
    margin-top: 0px;
    gap: 0px;
    
}

.item-collection{
    overflow: hidden;
    padding: 0px;
    position: relative;
    height: auto;

}

.item-collection img {
    width: 100%;
    height: 100%;
    object-fit: relative;

}


.grid-container-collection .item-collection:nth-child(1),
.grid-container-collection .item-collection:nth-child(2) {
    grid-column: span 6;
    padding: 5vw;
    background-color: #000;
    color: white;
    text-align: center;
}




/* stories Grid */
.grid-container-stories {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    padding: 0vw;
    margin-top: 0px;
    gap: 20px;
    padding: 20px;
    padding-bottom: 40px;
    background-color: #000;
}



.item-stories {

    position: relative;
    height: auto;
    overflow: hidden;
    
}


.item-stories img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;

    
}


.item-stories .overlay {
    position: absolute;
    top: 20;
    left: 20;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    transition: background-color 0.5s ease;
    color: #fff;

}

.item-stories .overlay-text {
    position: absolute;
    top: 50%;
    left: 50%;
    color:#fff;
    text-align: center;
    opacity: 0;
    transition: opacity 0.5s ease;
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
    font-family: regular;
    
}

.item-stories .text {

    position: absolute;
    bottom: 20px;
    left: 40px;
    right: 40px;
    color:#fff;
    text-align: left;
    opacity: 1;
    transition: opacity 0.5s ease;
    font-family: regular;
    
}

.item-stories:hover img {
    filter: blur(10px); 
}

.item-stories:hover .overlay {
    background-color: rgba(0, 0, 0, 0.1);

}

.item-stories:hover .overlay-text {
    opacity: 1;
}

.item-stories:hover .text {
    opacity: 0;
}



.grid-container-stories .item-stories:nth-child(1){
    grid-column: span 3;
    height: 500px;
 
}


.grid-container-stories .item-stories:nth-child(2){
    grid-column: span 3;
    height: 500px;

}

.grid-container-stories .item-stories:nth-child(3){
    grid-column: span 6;
    height: 500px;

}



/* Wir Grid */
.grid-container-wir {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    padding: 0vw;
    margin-top: 0px;
    gap: 0px;
    
}

.item-wir {
    overflow: hidden;
    padding: 0px;
    position: relative;
    height: auto;

}

.item-wir img {
    width: 100%;
    height: 100%;
    object-fit: relative;

}

.grid-container-wir .item-wir:nth-child(1) {
    grid-column: span 6;
    padding: 5vw;
    text-align: center;
}

.grid-container-wir .item-wir:nth-child(2),
.grid-container-wir .item-wir:nth-child(3),
.grid-container-wir .item-wir:nth-child(4) {
    grid-column: span 2;

}

.grid-container-wir .item-wir:nth-child(5),
.grid-container-wir .item-wir:nth-child(6),
.grid-container-wir .item-wir:nth-child(7) {
    grid-column: span 2;
    padding: 20px;
}




.item-kontakt {
    overflow: hidden;
    padding: 0px;
    position: relative;
    height: 100px;
    border-top: 1.5px solid lightgrey; 

}
  
  .scroll-wrapper-mail {
    display: flex;
    align-items: center;
    height: 100%;
    white-space: nowrap;
    padding-bottom: 1.5vh;
    background-color: #fff; 
  }
  
  .scroll-content-mail {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-loop 60s linear infinite;
  }

  .scroll-wrapper-linkedin {
    display: flex;
    align-items: center;
    height: 100%;
    white-space: nowrap;
    padding-bottom: 1.5vh;
    background-color: #fff; 
  }
  
  .scroll-content-linkedin {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-loop 60s linear infinite;
  }

  .scroll-wrapper-instagram {
    display: flex;
    align-items: center;
    height: 100%;
    white-space: nowrap;
    padding-bottom: 1.5vh;
    background-color: #fff; 
  }
  
  .scroll-content-instagram {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-loop 60s linear infinite;
  }
  
  @keyframes scroll-loop {
    0% { transform: translateX(-20%); }
    100% { transform: translateX(-80%); }
  }
  
   .scroll-content-mail:hover {
    color: #fff;
    background-color: black;

  }

  .scroll-content-linkedin:hover {
    color: #fff;
    background-color: black;

  }

  .scroll-content-instagram:hover {
    color: #fff;
    background-color: black;

  }
  



/* Footer */

.grid-container-footer {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 40px;
    margin-top: 0px;
    gap: 40px;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
    background-color: #fff;
    border-top: 1.5px solid lightgrey; 
}

.item-footer {
    padding: 0;
    align-content: center, top;
    position: relative;
    height: auto;
}

.grid-container-footer .item-footer:nth-child(1),
.grid-container-footer .item-footer:nth-child(2) {
    grid-column: span 2;
}



@media screen and (max-width: 1000px) {

    
    .menu-icon {
        display: block;
        margin: 15px;
        color: #000;
        background-color: #fff;
    }

    .menu-icon:hover {
        background-color: black;
        box-shadow: 0px 0px 30px rgb(247, 207, 163);
    }

    .menu-icon:hover .bar1, 
    .menu-icon:hover .bar2, 
    .menu-icon:hover .bar3 {
        background-color: #fff;
    }


  .logo {
    display: block;


  }

 
  nav {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 100%;
    width: 100%;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    border-radius: 0 0 20px 20px;
    z-index: 999; /* sicherstellen, dass es über allem liegt */

  }

  nav.active {
    display: flex;
    
  }




  nav ul {
    flex-direction: column;
    padding: 30px;
    

    
  }


    nav ul li {
        width: 95vw;
        margin: 0;
        padding: 10px;
        
    }

    nav ul li a {
        font-size: 40px;
    }


.logo img {
  height: 30px;           /* Logo‑Größe */
  width: auto;
  padding-left: 20px;
  padding-top: 20px;
  margin-top: 0;
  filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 1));
  transition: height 0.3s ease;
}


.scrolled .logo img {
  height: 20px;
  margin-top: 0;
}

.nav-links {
  display: column;
  gap: none;
  list-style-type: style;
  margin: 0;
  padding: 0;
}

.nav-links li a {
  color: #fff;
  text-decoration: none;
  font-size: 1rem;
}



    h1 {
        font-size: 20px;
    }

    h2 {
        font-size: 28px;
    }

    h3 {
        font-size: 28px;
    }

    h4 {
        font-size: 20px;
    }

    h5 {
        font-size: 16px;
        text-align: center;
    }

    h6 {
        font-size: 70px;
    }

    p {
        font-size: 20px;
    }

    a {
        font-size: 20px;
    }


    
    

 .grid-container-collection,
 .grid-container-wir,
 .grid-container-kontakt {
        grid-template-columns: repeat(4, 1fr);
        padding: 0;
        margin-top: 0;
        gap: 0;
    }

        .grid-container-stories {
        grid-template-columns: repeat(4, 1fr);
        padding: 20px;
        margin-top: 0;
        gap: 20px;
        padding: 20px;

    }


     .grid-container-footer {
        grid-template-columns: repeat(4, 1fr);
        padding: 20px;
        margin-top: 0;
        gap: 0;
    }


    .grid-container-collection .item-collection:nth-child(1),
    .grid-container-collection .item-collection:nth-child(2),
    .grid-container-collection .item-collection:nth-child(3),
    .grid-container-collection .item-collection:nth-child(4) {
        grid-column: span 6;
        

    }

    .grid-container-stories .item-stories:nth-child(1),
    .grid-container-stories .item-stories:nth-child(2),
    .grid-container-stories .item-stories:nth-child(3),
    .grid-container-stories .item-stories:nth-child(4) {
        grid-column: span 6;
    }


    .grid-container-wir .item-wir:nth-child(1),
    .grid-container-wir .item-wir:nth-child(2),
    .grid-container-wir .item-wir:nth-child(3),
    .grid-container-wir .item-wir:nth-child(4),
    .grid-container-wir .item-wir:nth-child(5),
    .grid-container-wir .item-wir:nth-child(6),
    .grid-container-wir .item-wir:nth-child(7) {
        grid-column: span 6;

        

    }


    .grid-container-footer .item-footer:nth-child(1),
    .grid-container-footer .item-footer:nth-child(2) {
        grid-column: span 2;
    }

    .scroll-to-top {
        position: fixed;
        bottom: 100px;
        right: 20px;

    }



    .item-1 {
        order: 1;
    }
    .item-2 {
        order: 2;
    }
    .item-3 {
        order: 4;
    }
    .item-4 {
        order: 6;
    }
    .item-5 {
        order: 3;
    }
    .item-6 {
        order: 5;
    }
    .item-7 {
        order: 7;
    }
    .item-8 {
        order: 8;
    }
    .item-9 {
        order: 9;
    }
    .item-10 {
        order: 10;
    }
    .item-11 {
        order: 11;
    }
    .item-12 {
        order: 12;
    }
    .item-13 {
        order: 13;
    }


}