html {
  scroll-padding-top: 10rem;
}

.hero-content-container {
  height: fit-content !important;
  min-height: none !important;
  /* display: none; */
}

#hero {
  height: fit-content !important;
  /* min-height: calc(140px + 5rem) !important; */
}

#services-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;


  
}

.service-block {
  margin-bottom: 2rem;
  padding-top: 0.3rem;
  padding-bottom: 2rem;
  padding-left: max(2vw, 52vw - 36rem );
  padding-right: max(2vw, 52vw - 36rem );
  width: 100vw;
  /* max-width: 72rem; */
  background-color: var(--offwhite);
  /* background-color: yellow; */
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  /* border-radius: 2rem; */

}

.general-info-container{
  flex-direction: column;
  padding: 1.5rem 3vw;
  width: 100%;
  align-items: flex-start;
  justify-content: flex-start;
  background:linear-gradient( #ffffff, #f6f6f6 50%);
  margin-top: 3rem;
  margin-bottom: 0rem;
  padding-left: max(2.2vw, 52.2vw - 36rem );
  padding-right: max(2.2vw, 52.2vw - 36rem );





}



.title-image{    
    display: flex;
    flex-direction: column;
    background-color: var(--mediumgray);
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    width: 44%;
    aspect-ratio: 1/1;
    border-radius: 1rem;
    align-items: center;
    justify-content: center;
    position: sticky;
    top: calc(3rem + 12vh);
    text-align: center;
    padding: 0 1rem;




}

h3{
    /* background-color: red; */
    /* width: 94%;
    aspect-ratio: 1/1; */
    /* text-align: center; */
    font-size: clamp(1.9rem, 4vw, 3rem);
}

.services-liste{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 54%;

}


/* Service-Einträge */
.service-box {
  display: flex;
  flex-direction: column;
  background-color: white;
  height: fit-content;
  width: 100%;
  border-radius: 1.505rem;
  margin: 0.38rem 0;
  overflow: hidden;
}

.service-header {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0.3rem;
  cursor: pointer;
  background-color: var(--mediumgray);




  min-height: 3.1rem;
  padding-left: 2rem;
}

.service-icon {
  height: 80%;
  min-height: 3rem;
  aspect-ratio: 1/1;
  margin-right: 1rem;
  background-color: #048700;
  flex-shrink: 0;
  border-radius: 50%;
}

.service-header h4 {
  margin: 0;
  font-size: clamp(0.8rem, 4vw, 1.1rem);
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--offblack);
}

/* Pfeil rechts neben Titel */
.service-toggle {
  transition: transform 0.3s ease;
  
  height: 80%;
  height: 1.5rem;
  width: 1.5rem;
  aspect-ratio: 1/1;
  /* background-color: #ffffff; */
  flex-shrink: 0;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 1rem;
  margin-left: 1rem;

  background-image: url("elements/dropdown-icon.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;


}

.service-box.open .service-toggle {
  transform: rotate(180deg);
}

/* Beschreibungstext (anfangs versteckt) */
.service-description {
    opacity: 0;
    overflow: hidden;
    padding: 0 1.5rem;
    transition: all 0.3s ease;
    max-height:0;
    padding: 0 2rem;
}

.service-description p{
    font-size: clamp(0.8rem, 4vw, 1rem) !important;

}

.service-box.open .service-description {
    height:fit-content;
    opacity: 1;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    max-height: 10rem;

}


/* Optionaler Content-Wrapper (nicht zwingend nötig) */
.service-content {
  display: flex;
  flex-direction: column;
}



/* Responsive Styles */
@media (max-width: 32rem) {

  /* .service-box {
    flex-direction: column;
    border-radius: 0;
    padding: 0.3rem 0.5rem;
  } */

  /* .service-icon {
    height: 5rem;
    aspect-ratio: 1 / 1 !important;
    margin-right: 0;
    display: none;
  } */

  /* .service-header {
    padding: 1.2rem;
  } */

  .service-description {
    padding: 0 1.2rem;
  }

  /* .service-box.open .service-description {
    padding-bottom: 1.2rem;
  } */
}

@media (max-width: 52rem) {
    .service-block {
        flex-direction: column;
        align-items: center;
        margin-bottom: 0;
    }

    .title-image{
   
        position: static;
        width: 100%;
        height: 30vh;
        min-height: 5rem;

    }

    .services-liste{
      width: 100%;

    }

    .general-info-container{

      height: 4.5rem;
      background:linear-gradient( #ffffff, #f6f6f6);
      margin-top: 0;



    }

    .hero-content-container{
      width: min(64vw, 52vh);
    }

    .desktop-only{
      display: none;
    }

    

}

@media (min-width: 52rem) {

  /* h1{
    font-size: 10px;
  } */



  .hero-content-container{
    width: 70vw;
    max-width: 230vh;

  }

  .mobile-only{
    display: none;
  }

}