html {
    scroll-behavior: smooth;
    color-scheme: light;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    background-color: #fdf8f7;
    margin: 0 0 0 0;
}


#kontakt {
    scroll-margin-top: 80px;
    scroll-behavior: smooth;
}

#kontakttablet {
    scroll-margin-top: 80px;
    scroll-behavior: smooth;
}

@font-face {
    font-family: 'Boska-Regular';
    src: url(fonts/Boska-Regular.woff2) format(woff2);
    font-style: normal;
    font-weight: 400;
    font-display: swap;  
}

@font-face {
    font-family: 'Boska-Light';
    src: url(fonts/Boska-Light.woff2) format(woff2);
    font-style: normal;
    font-weight: 400;
    font-display: swap;  
}

@font-face {
    font-family: 'GeneralSans-Regular';
    src: url(fonts/GeneralSans-Regular.woff2) format(woff2) ;
    font-style: normal;
    font-weight: 400;
    font-display: swap;

}

@font-face {
    font-family: 'GeneralSans-Semibold';
    src: url(fonts/GeneralSans-Semibold.woff2) format(woff2) ;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

h1 {
    font-family: 'Boska-Light';
    font-size: 48px;
    font-weight: 400;
    margin: 0;
    line-height: 1.1;
}

h5{
    font-family: 'Boska-Regular';
    font-size: 48px;
    font-weight: 400;
    margin: 0;
    line-height: 1.3;
}

h6 {
    font-family: 'GeneralSans-Semibold';
    font-size: 16px;
    margin: 0;
    text-transform: uppercase;

}

p {
    font-family: 'GeneralSans-Regular';
    font-size: 16px;
    margin: 0;
}

button {
    background-color: #b96755;
    color: #0D0907;
    border: 1px solid #ffe4dd;
    padding: 10px 32px 10px 32px;
    font-family: 'GeneralSans-Semibold';
    font-size: 16px;
    border-radius: 100px;
    width: fit-content;
}

.button {
    background-color: #b96755;
    color: #0D0907;
    border: 1px solid #ffe4dd;
    padding: 10px 32px 10px 32px;
    font-family: 'GeneralSans-Semibold';
    font-size: 16px;
    border-radius: 100px;
    width: fit-content;
    text-decoration: none;
}

.button:hover,
.button:active {
    background-color: #ffe4dd;
    border: 1px solid #b96755;
    color: #0D0907;
}


button:hover {
    background-color: #ffe4dd;
    border: 1px solid #b96755;
}

a {
    font-family: 'GeneralSans-Regular';
    text-decoration: underline;
    color: #ffe4dd;
}

a::after {
    color: #ffffff;
}

a:hover,
a:active {
    color: #864f2e;
}

a[href^="tel"] {
    color: inherit;
    font-family: inherit;
}

.semibold {
    font-family: 'GeneralSans-Semibold';
}


.hell {
    color: #ffe4dd;
}


.kontakt{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 40px;
    background-color: #ffe4dd;
    color: #b96755;
    padding: 16px 0 16px 0;
    
}

.quotesatz {
    text-align: center;
    line-height: 1.1;
}

.newquote {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    align-items: center;
    gap: 24px;
    margin: 320px auto;
    padding: 0 80px;
    max-width: 1400px;
}

.anf {
    color: #864f2e;
    font-size: 48px;
    font-family: 'GeneralSans-Semibold';
}

.circle {
    width: 8px;
    height: 8px;
    border-radius: 100px;
    background-color: #b96755;
}

.banner {
    background-color: #2e1b10;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 40px;
    padding: 56px 40px 0 40px;
}

.fotoklein {
    display: none;
    aspect-ratio: auto;
}

.pfeil {
display: block;
width: auto;
height: 72px;
object-fit: contain;

}

.haupt {
    display: flex;
    flex-direction: row;
    gap: 16px;
    margin-left: -24px;
    justify-content: center;
    align-items: center;
}

.foto {
    margin-bottom: -40px;
    max-width: 100%;
    height: auto;
    display: block;
}

.top {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.main {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.rechts {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-top: 56px;
    max-width: 700px;
}


.AnführungszeichenOben{
    background-color: #ffe4dd;
    border-radius: 100px;
    width: 56px;
    min-width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 12px 8px 0px 8px;
    box-sizing: content-box;

}

.AnführungszeichenUnten{
    background-color: #ffe4dd;
    border-radius: 100px;
    width: 56px;
    min-width: 56px;
    height: 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0px 8px 24px 8px;
    box-sizing: content-box;
    
}


.Zitat1{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    text-align: start;
    margin-top: 80px;
}

.Satz {
    display: inline;
    max-width: 700px;
}

.mark {
    min-width: 56px;
    height: 56px;
    display: inline;
    margin: 0;
    line-height: 1;
    box-sizing: content-box;
    background-color: #ffe4dd;
    border-radius: 100px;
}

.beschreibung {
    width: auto;
}

.tag {
    background-color: #ffe4dd;
    padding: 8px 16px 8px 16px;
    display: flex;
    flex-direction: row;
    margin: 0;
}

.tagcontainer {
    display: flex;
    flex-wrap: wrap;
    row-gap: 8px;
    column-gap: 8px;
    border-radius: 4px;
    height: fit-content;
    width: 200%;
    max-width: 1200px;
}

.Leistungen {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 40px;
    margin: 320px auto;
    padding: 0 80px;
    max-width: 1400px;
}

.Leistung {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.section {
    display: flex;
    flex-direction: row;
    justify-content: center;
    background-color: #2e1b10;
    margin: 320px auto;
    padding: 40px 80px;
    gap: 24px;
}

.content {
    width: 100%;
    height: fit-content;
    background-color: #ffffff;
    padding: 40px 24px 16px 24px;
    margin: 0 auto;
    border-radius: 24px;
    box-sizing: border-box;
}


.überschrift {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    padding: 8px 24px 8px 24px;
    background-color: #ffe4dd;
    width: fit-content;
    border-radius: 100px;
    margin-bottom: -24px;
    z-index: 0;
}

.ganz {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 688px;
}

.bewertung {
    display: flex;
    flex-basis: 1;
    background-color: #ffffff;
    border: 1px solid #864f2e;
    padding: 24px 16px 24px 16px;
    border-radius: 8px;
    height: fit-content;
    box-sizing: border-box;
}

.referenzen {
    display: flex;
    flex-direction: row;
    gap: 24px;
    margin: 320px auto;
    padding: 0 80px;
    z-index: 1;
    max-width: 1400px;
}

.single {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.sterne {
    display: flex;
    flex-direction: row;
    gap: 2px;
    background-color: #864f2e;
    padding: 8px;
    width: fit-content;
    margin-bottom: -16px;
    margin-left: -8px;
    z-index: 1;
}

.name {
    display: flex;
    background-color: #ffe4dd;
    border-radius: 100px;
    padding: 16px;
    width: fit-content;
    align-self: flex-end;
    margin-top: -16px;
}


.close {
    align-self: flex-end;
    height: fit-content;
    padding: 10px 32px 8px 32px;
}

.popup {
    background-color: rgba(0,0,0,0.5);
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.4s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.popup.open {
    opacity: 1;
    z-index: 100;
    overflow: hidden;
    pointer-events: auto;
   }

.overlay-joypix {
    display: flex;
    flex-direction: column;
    background-color: #2C0759;
    padding: 40px;
    gap: 40px;
    border: 2px solid #9945FF;
    border-radius: 24px;
    margin: 80px;
    max-width: 1200px;
    max-height: 90vh;
    overflow-y: auto;
}

.overlay-up {
    display: flex;
    flex-direction: column;
    background-color: #04305D;
    padding: 40px;
    gap: 40px;
    border: 2px solid #B0C4DE;
    border-radius: 24px;
    margin: 80px;
    max-width: 1200px;
    max-height: 90vh;
    overflow-y: auto;
}

.overlay-resqx {
    display: flex;
    flex-direction: column;
    background-color: #2C2B37;
    padding: 40px;
    gap: 40px;
    border: 2px solid #FF561E;
    border-radius: 24px;
    margin: 80px;
    max-width: 1200px;
    max-height: 90vh;
    overflow-y: auto;
}

.overlay-bookandplay {
    display: flex;
    flex-direction: column;
    background-color: #016349;
    padding: 40px;
    gap: 40px;
    border: 2px solid #B0D06F;
    border-radius: 24px;
    margin: 80px;
    max-width: 1200px;
    max-height: 90vh;
    overflow-y: auto;
}

.screens {
    display: flex;
    flex-direction: row;
    justify-content: center;
    width: 100%;
}

.bild {
    width: 50%;
    height: auto;
}

.overlay-bookandplay .projektbeschreibung {
    border: 2px solid #B0D06F;
}

.overlay-joypix .projektbeschreibung {
    border: 2px solid #9945FF;
}

.overlay-up .projektbeschreibung {
    border: 2px solid #B0C4DE;
}

.overlay-resqx .projektbeschreibung {
    border: 2px solid #FF561E;
}

.projektbeschreibung {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background-color: #ffffffe7;
    border-radius: 16px;
    padding: 24px;
}

.Mockups.desktop {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  margin: 240px auto;
  padding: 0 80px;
  gap: 24px;
  justify-content: center;
  align-items: center;
  max-width: 1400px;
}

.mockup-card.desktop {
  position: relative;
  transition: transform 0.4s ease, z-index 0.3s;
  z-index: 1;
  border-radius: 16px;
  overflow: visible;
}

.displays {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 16px;
  transition: transform 0.4s ease;
  backface-visibility: hidden;
  transform-origin: center;
}

/* Hovereffekt auf die Karte selbst */
.mockup-card.desktop:hover {
  z-index: 2;
}


.mockup-card.desktop:hover .mockup-inner.desktop {
  transform: scale(1.15);

}

/* Effekte für die anderen drei beim Hover */
.Mockups.desktop:hover .mockup-card.desktop:not(:hover):nth-child(1) {
  transform: scale(0.85);
  transform-origin: bottom right;
  transition: transform 0.4s ease-in-out 0.1s;
}

.Mockups.desktop:hover .mockup-card.desktop:not(:hover):nth-child(2) {
  transform: scale(0.85);
  transform-origin: bottom left;
  transition: transform 0.4s ease-in-out 0.1;
}

.Mockups.desktop:hover .mockup-card.desktop:not(:hover):nth-child(3) {
  transform: scale(0.85);
  transform-origin: top right;
  transition: transform 0.4s ease-in-out 0.1s;
}

.Mockups.desktop:hover .mockup-card.desktop:not(:hover):nth-child(4) {
  transform: scale(0.85);
  transform-origin: top left;
  transition: transform 0.4s ease-in-out 0.1s;
}


/* Tag-Effekte */
.project-tag.desktop {
  position: absolute;
  bottom: 16px;
  right: 16px;
  background-color: #b96755;
  color: #0D0907;
  padding: 8px;
  border-radius: 100px;
  font-size: 14px;
  font-family: 'GeneralSans-Regular';
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
}

.mockup-card.desktop:hover .project-tag.desktop {
  opacity: 1;
  transform: translateY(0);
}


.formular {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 320px auto;
    padding: 0 80px;
    gap: 40px;
    max-width: 1400px;
}

.KontaktText {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: center;
    align-items: center;
}


label, input {
    display: block;
    font-family: 'GeneralSans-Regular';
}

label {
    font-size: 14px;
}

input {
  font-size: 16px;
  background-color: #fdf8f7;
  border: 2px solid #ffe4dd;
  height: 48px;
  border-radius: 16px;
  padding-left: 8px;
}

input:focus {
    background-color: #ffe4dd;
}

textarea {
    height: auto;
    background-color: #fdf8f7;
    border: 2px solid #ffe4dd;
    border-radius: 16px;
    padding-left: 8px;
    min-height: 144px;
    width: 100%;
    resize: vertical;
    font-size: 16px;
    font-family: 'GeneralSans-Regular';
    padding: 8px;
}

textarea:focus {
    background-color: #ffe4dd;
}

.kontaktformular {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 40px;
    background-color: #ffffff;
    border-radius: 24px;
    border: 1px solid #864f2e;
}

.input {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.zeile {
    display: flex;
    flex-direction: row;
    gap: 16px;
}

.input textarea {
    width: 100%;
    box-sizing: border-box;
}

.daten {
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
}

.dunkel {
    color: #2e1b10;
}

.absenden {
    align-self: flex-end;
}

.footer {
    background-color: #2e1b10;
    display: flex;
    flex-direction: row;
    color: #fdf8f7;
    padding: 80px 56px 56px 56px;
    justify-content: space-between;

}

.links {
    display: flex;
    flex-direction: row;
    gap: 24px;
}

.body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
}

.extern {
    display: flex;
    flex-direction: column;
    margin: 80px auto;
    padding: 0 80px;
    gap: 80px;
    justify-content: center;
    max-width: 1600px;
}

.datenschutz {
    display: flex;
    flex-direction: row;
    gap: 40px;
    width: fit-content;
    box-sizing: content-box;
}

.datenschutzFoto {
    width: 300px;
    height: auto;
    margin: 0;
}

.datenschutzText {
    width: auto;
    margin: 0;
    box-sizing: border-box;

}

.Dank {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 40px;
    background-color: #ffffff;
    border: 2px solid #864f2e;
    border-radius: 24px;
    padding: 80px 40px 80px 40px;
    margin: 80px auto;
}

.banner.tablet {
    background-color: #2e1b10;
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 16px 24px 24px 24px;
}

.pfeil.tablet {
display: block;
width: auto;
height: 44px;
object-fit: contain;

}

.haupt.tablet {
    display: flex;
    flex-direction: row;
    gap: 8px;
    margin-left: -24px;
    justify-content: center;
    align-items: center;
}

.foto.tablet {
    margin-bottom: -40px;
    width: auto;
    height: 400px;
    display: block;
}

.top.tablet {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.main.tablet {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.rechts.tablet {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 16px;
    margin-top: 32px;
    max-width: 700px;
}


.banner.mobile {
    background-color: #2e1b10;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
    padding: 40px 16px 24px 16px;
}

.pfeil.mobile {
display: block;
width: auto;
height: 40px;
object-fit: contain;
align-self: flex-end;
margin-left: 0;
transform: scaleY(-1);
}

.pfeilfoto {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    width: fit-content;
}

.haupt.mobile {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    margin: 0;
    height: fit-content;
    gap: 8px;
}

.foto.mobile {
    margin-bottom: 0;
    margin-top: 24px;
    width: auto;
    height: 400px;
    display: none;
}

.top.mobile {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.mitfoto {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
}


.main.mobile {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.rechts.mobile {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    margin-top: 0px;
    max-width: 700px;
}

.rechtsneu {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 24px;
    align-self: flex-end;
}


.newquote.tablet {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    align-items: center;
    gap: 24px;
    margin: 180px auto;
    padding: 0 40px;
    max-width: 1400px;
}


.Leistungen.tablet {
    display: none;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    margin: 180px auto;
    padding: 0 40px;
    max-width: 1400px;
}

.tagcontainer.tablet {
    display: flex;
    flex-wrap: wrap;
    row-gap: 8px;
    column-gap: 8px;
    border-radius: 4px;
    height: fit-content;
    width: 100%;
    max-width: 1200px;
}

.tag.tablet {
    background-color: #ffe4dd;
     padding: 4px 8px 4px 8px;

    }

.section.tablet {
    flex-direction: column;
    align-content: center;
    justify-content: center;
    font-size: 14px;
    margin: 180px auto;
    padding: 40px;
    display: none;
}

.ganz.childtablet {
    max-width: 100%;
}

.referenzen.tablet {
    display: none;
    flex-direction: column;
    gap: 16px;
    margin: 180px auto;
    padding: 0 40px;
    z-index: 1;
    max-width: 1400px;
}

.name.tablet {
    display: flex;
    background-color: #ffe4dd;
    border-radius: 100px;
    padding: 12px;
    width: fit-content;
    align-self: flex-end;
    margin-top: -22px;
}

.Mockups.tablet {
  display: none;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 1fr 1fr 1fr;
  margin: 180px auto;
  padding: 0 40px;
  gap: 24px;
  justify-content: center;
  align-items: center;
  max-width: 1400px;
  z-index: 1;
}

.mockup-card.tablet {
    position: relative;
    border-radius: 16px;
    overflow: visible;
  }

.project-tag.tablet {
 position: absolute;
  bottom: 16px;
  right: 16px;
  background-color: #b96755;
  color: #0D0907;
  padding: 12px;
  border-radius: 100px;
  font-size: 14px;
  font-family: 'GeneralSans-Semibold';
  opacity: 1;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
  }

  .overlay-joypix.tablet {
    display: flex;
    flex-direction: column;
    background-color: #2C0759;
    padding: 24px;
    gap: 24px;
    border: 2px solid #9945FF;
    border-radius: 24px;
    margin: 40px;
    max-width: 1200px;
}

.overlay-up.tablet {
    display: flex;
    flex-direction: column;
    background-color: #04305D;
    padding: 24px;
    gap: 24px;
    border: 2px solid #B0C4DE;
    border-radius: 24px;
    margin: 40px;
    max-width: 1200px;
}

.overlay-resqx.tablet {
    display: flex;
    flex-direction: column;
    background-color: #2C2B37;
    padding: 24px;
    gap: 24px;
    border: 2px solid #FF561E;
    border-radius: 24px;
    margin: 40px;
    max-width: 1200px;
}

.overlay-bookandplay.tablet {
    display: flex;
    flex-direction: column;
    background-color: #016349;
    padding: 24px;
    gap: 24px;
    border: 2px solid #B0D06F;
    border-radius: 24px;
    margin: 40px;
    max-width: 1200px;
}


.formular.tablet {
    display: none;
    flex-direction: column;
    justify-content: center;
    margin: 180px auto;
    padding: 0 24px;
    gap: 40px;
    max-width: 1400px;
}

.kontaktformular.tablet {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 56px;
    background-color: #ffffff;
    border-radius: 24px;
    border: 1px solid #864f2e;
}

.zeile.tablet {
    display: flex;
    flex-direction: row;
    gap: 16px;
}



@media (max-width: 960px) {
    .Mockups.desktop {
        display: none;
    }

    .desktop {
        display: none;
    }
    p {
        font-size: 15px;
    }
    h6 {
        font-size: 15px;
    }
    h5 {
        font-size: 40px;
        line-height: 56px;
    }
    h1 {
        font-size: 40px;
    }

    .button {
        font-size: 15px;
    }

    button {
        font-size: 15px;
    }

    a {
        font-size: 15px;
    }

    .banner.tablet {
        display: flex;
    }

    .newquote.tablet {
        display: flex;
    }

    .newquote {
    margin: 180px auto;
    }

    .section.tablet {
        display: flex;
    }
    .Leistungen.tablet {
        display: flex;
    }
    .referenzen.tablet {
        display: flex;
    }
    .Mockups.tablet {
        display: grid;
    }
    .formular.tablet {
        display: flex;
        max-width: 100%;
        overflow: hidden;
    }

    .body {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 100vh;
    }
    
    .extern {
        display: flex;
        flex-direction: column;
        margin: 80px auto;
        padding: 0 24px;
        gap: 40px;
        justify-content: center;
        max-width: 1600px;
    }
    
    .datenschutz {
        display: flex;
        flex-direction: column;
        gap: 24px;
        width: fit-content;
        box-sizing: content-box;
    }
    
    .datenschutzFoto {
        width: 240px;
        height: auto;
        margin: 0;
        display: none;
    }
    
    .datenschutzText {
        width: auto;
        margin: 0;
        box-sizing: border-box;
    
    }

    .Dank {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 40px;
        background-color: #ffffff;
        border: 2px solid #864f2e;
        border-radius: 24px;
        padding: 80px 40px 80px 40px;
        margin: 80px 24px;
    }
    }


@media (max-width: 600px) {

    .mobileinv {
        display: none;
    }

    p {
        font-size: 14px;
    }

    h6 {
        font-size: 14px;
    }
    h5 {
        font-size: 32px;
    }
    h1 {
        font-size: 32px;
    }
    .button {
        font-size: 14px;
    }

    button {
        font-size: 14px;
    }

    a {
        font-size: 14px;
    }

    .newquote.tablet {
        gap: 16px;
        margin: 208px auto;
        padding: 0 16px;
    }

    .newquote {
        gap: 16px;
        margin: 208px auto;
        padding: 0 16px;
    }

    .anf {
        font-size: 40px;
        line-height: 0px;
        z-index: -1;
    }

    .überschrift {
        gap: 8px;
        padding: 4px 18px 4px 18px;
    }

    .content {
        padding: 32px 16px 16px 16px;
        margin: 0 auto;
        border-radius: 16px;
    }

    .kontakt{
        display: flex;
        font-size: 13px;
        gap: 16px;
        padding: 8px 0 8px 0;
    }

    .circle {
        width: 6px;
        height: 6px;
    }   

    .foto.tablet {
        display: none;
    }

    .fotoklein {
    max-width: 32%;
    height: auto;
    display: block;
    object-fit: contain;

    }

    .banner.tablet {
        display: none;
    }

    .banner.mobile {
        display: flex;
    }

    .Leistungen.tablet {
        flex-direction: column;
        align-items: center;
        gap: 24px;
        margin: 208px auto;
        padding: 0 16px;
        max-width: 1400px;
    }

    .section.tablet {
        margin: 208px auto;
        padding: 32px 16px;
        gap: 24px;
    }
    
    .referenzen.tablet {
        gap: 8px;
        margin: 208px auto;
        padding: 0 16px;
    }

    .Mockups.tablet {
        margin: 208px auto;
        padding: 0 16px;
        gap: 24px;
        justify-content: center;
        align-items: center;
      }

      .close {
        align-self: flex-end;
        height: fit-content;
        padding: 8px 16px 4px 16px;
    }

    .popup.tablet {
        background-color: rgba(0,0,0,0.5);
        opacity: 0;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        transition: all 0.4s ease-in-out;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        pointer-events: none;
    }

      .overlay-joypix.tablet {
        display: flex;
        flex-direction: column;
        background-color: #2C0759;
        padding: 12px;
        gap: 8px;
        border: 2px solid #9945FF;
        border-radius: 16px;
        margin: 8px;
        max-width: 1200px;
    }
    
    .overlay-up.tablet {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        background-color: #04305D;
        padding: 12px;
        gap: 8px;
        border: 2px solid #B0C4DE;
        border-radius: 16px;
        margin: 8px;
        max-width: 1200px;
    }
    
    .overlay-resqx.tablet {
        display: flex;
        flex-direction: column;
        background-color: #2C2B37;
        padding: 12px;
        gap: 8px;
        border: 2px solid #FF561E;
        border-radius: 16px;
        margin: 8px;
        max-width: 1200px;
    }
    
    .overlay-bookandplay.tablet {
        display: flex;
        flex-direction: column;
        background-color: #016349;
        padding: 12px;
        gap: 8px;
        border: 2px solid #B0D06F;
        border-radius: 16px;
        margin: 8px;
        max-width: 1200px;
    }


    .project-tag.tablet {
        padding: 4px 8px 4px 8px;
        font-size: 13px;
        border-radius: 100px;
        font-size: 14px;
      }
      
      .projektbeschreibung.tablet {
        display: flex;
        flex-direction: column;
        gap: 8px;
        background-color: #ffffffe7;
        border-radius: 8px;
        padding: 16px;
    }


    .kontaktformular.tablet {
        padding: 16px;
        gap: 16px;
    }

    .zeile.tablet {
        flex-direction: column;
    }

    input {
        font-size: 14px;
        height: 40px;
        border-radius: 12px;
        padding-left: 8px;
      }

    .footer {
        background-color: #2e1b10;
        display: flex;
        flex-direction: column-reverse;
        color: #fdf8f7;
        padding: 24px 24px 24px 24px;
        justify-content: center;
        align-items: center;
        gap: 24px;
    }
    
    .links {
        display: flex;
        flex-direction: row;
        gap: 16px;
    }

    .Dank {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 24px;
        border-radius: 16px;
        padding: 80px 40px 80px 40px;
        margin: 80px 24px;
    }

}