@font-face {
  font-family: OpenSans;
  src: url(/fonts/OpenSans-Regular.ttf);
}

@font-face {
  font-family: OpenSans;
  src: url(/fonts/OpenSans-Bold.ttf);
  font-weight: bold;
}

@font-face {
  font-family: "Material Symbols Rounded";
  font-style: normal;
  src: url(/fonts/materials/MaterialSymbolsRounded.ttf) format("truetype");
}

.material-symbols-rounded {
  font-family: "Material Symbols Rounded";
  font-weight: normal;
  font-style: normal;
  font-size: 24px; /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
}

@media only screen and (max-width: 1241px) {
  html {
    scroll-behavior: smooth;
  }

  wrapper {
    font-family: "OpenSans", sans-serif;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 60px;
  }

  page {
    display: block;
    position: relative;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  topImage {
    width: 100%;
    height: 100vh;
    position: relative;
    display: flex;
    overflow: hidden;
  }

  topImage backGroundMobile {
    width: 100%;
    height: 100vh;
    position: relative;
    display: flex;
    overflow: hidden;
    background-color: #242424;
    opacity: 0.4;
  }

  topImage backGroundDesktop {
    display: none;
  }

  topImage img {
    left: -160%;
    position: absolute;
    height: 100%;
  }

  topImage button {
    width: 15em;
    height: 15em;
    position: absolute;
    bottom: 28em;
    left: 50%;
    transform: translateX(-50%);
    background-color: transparent;
    border: none;
  }

  topImage button .material-symbols-rounded {
    font-size: 18em;
    color: #f5f3f0;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;
  }

  /*TOP NAVIGATION BAR*/
  #navBar {
    display: none;
  }

  .navbar {
    display: inline-block;
    position: -webkit-sticky;
    /* Safari */
    position: fixed;
    top: 0;
    z-index: 12;
    background-color: #e0d8cc;
    overflow: hidden;
    width: 100%;
    color: #242424;
    border-radius: 0 0 20px 20px;
  }

  navbarHead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-height: 3em;
  }

  .menu-icon {
    display: block;
    float: right;
    margin-right: 0.5em;
    cursor: pointer;
  }

  .menu-icon .material-symbols-rounded {
    font-size: 1.5em;
  }

  .logo {
    display: inline-block;
    margin-left: 0.5em;
  }

  .logo img {
    height: 2em;
    vertical-align: middle;
    /* Neue Zeile hinzugefügt */
    float: left;
  }

  navbarBody {
    position: relative;
    display: none;
  }

  .nav-links button {
    width: 100%;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1em;
    font-weight: bold;
    margin-top: 0.4em;
    margin-right: 0.5em;
    margin-bottom: 0.4em;
    display: block;
    width: 100%;
    text-align: right;
    float: right;
  }

  /*NEWS BOX*/
  newsBox {
    width: 90%;
    box-sizing: border-box;
    display: block;
    margin-left: 5%;
    border-style: solid;
    border-color: #770801;
    border-width: 2px;
    border-radius: 20px 0 20px 0;
    min-height: 100px;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
  }

  newsBox p {
    margin-left: 5%;
    line-height: 1.2em;
  }

  newsBox a {
    color: #770801;
  }

  newsBox headingBox {
    background-color: #770801;
    display: block;
    width: 100%;
    height: 2em;
    border-radius: 20px 0 20px 0px;
  }

  newsBox p.heading {
    display: inline-block;
    color: #f5f3f0;
    margin-top: 0.5em;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  /*WELCOME SECTION*/
  welcomeSection {
    display: block;
  }

  welcomeText {
    margin-left: 5%;
    display: inline-block;
    max-width: 90%;
  }

  welcomeText h1 {
    margin-top: 0;
    margin-bottom: 0.5em;
    font-size: 1.5em;
  }

  welcomeText p {
    margin-bottom: 1em;
  }

  openingHours {
    display: block;
    width: 80%;
    background-color: #f5f3f0;
    border-radius: 20px;
    padding: 0.5em 1.5em;
    margin-bottom: 1em;
  }

  openingText {
    display: block;
    position: relative;
    text-align: center;
  }

  openingHours p {
    margin-bottom: 1em;
  }

  /*TEST SLIDESHOW*/

  .slideShow {
    position: relative;
    display: inline-block;
    /* Bildverhältnis muss 3zu2 sein */
    width: 90%;
    aspect-ratio: 3 / 2;
    /*height: calc(100vw * 0.9 * 0.6666);*/
    margin-left: 5%;
  }

  .service .slideShow {
    margin-left: 0%;
    width: 100%;
  }

  .service .slideShow img {
    width: 100%;
  }

  #desktopSlideShow {
    display: none;
  }

  .slideShow img {
    width: calc(100% - 0.5em);
    height: calc(100% - 0.5em);
    position: absolute;
    right: 0;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    border-radius: 20px;
    box-shadow: -0.5em 0.5em 0 #770801;
  }

  .slideShow img.active {
    opacity: 1;
  }

  .prev,
  .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #f5f3f0;
  }

  .slideShow .material-symbols-rounded {
    font-size: 3.5em;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;
  }

  .prev {
    left: -0.2em;
  }

  .next {
    right: -0.5em;
  }

  .dots {
    display: none;
  }

  /*EMERGENCY NUMBER*/
  emergencyNumber {
    position: relative;
    z-index: 1;
    width: 100%;
    display: block;
    float: left;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    border-radius: 20px 0 20px 0;
    background-color: #770801;
  }

  emergencyNumber p {
    width: 90%;
    font-size: 0.8em;
    margin-left: 5%;
    color: #f5f3f0;
    text-align: left;
  }

  notrufNummer {
    display: none;
  }

  notrufNummerMobile a {
    color: #f5f3f0;
  }

  /* UNSER TEAM*/

  teamSection {
    margin-top: -1em;
    width: 100%;
    display: inline-block;
    background-color: #f5f3f0;
    padding-bottom: 2em;
  }

  teamSection h2 {
    margin-top: 2em;
    text-align: center;
  }

  hardSection * {
    margin: 0;
    box-sizing: border-box;
  }

  hardSection > employees {
    display: flex;
    justify-content: center;
    align-items: center;
    max-height: 50vh;
    width: 100%;
  }

  .card {
    margin: 20px 0;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    border-radius: 20px;
  }

  .card .card-content {
    padding: 1em;
    position: relative;
    z-index: 5;
  }

  .swiper {
    width: 100%;
    --swiper-navigation-size: 1.8em;
    --swiper-theme-color: #e0d8cc;
  }

  .swiper-button-next,
  .swiper-button-prev {
    opacity: 0.7;
    transition: all 0.3s ease;
  }

  hardSection {
    display: block;
    width: 90%;
    margin-left: 5%;
    position: relative;
    min-height: 10em;
  }

  doctors {
    justify-content: center;
    width: 100%;
    align-items: center;
    display: block;
    margin-top: 1em;
  }

  doctorCard {
    line-height: 0.75em;
    text-align: left;
    margin-left: 5%;
    width: 90%;
    display: inline-block;
    background-size: cover;
    background-position: 50% 50%;
    border-radius: 20px;
    height: calc(100vw * 0.9 * 0.75);
  }

  doctorCard img {
    width: 100%;
    position: relative;
    box-shadow: 0px 4px 0px #e0d8cc;
  }

  doctorCard docTextField {
    font-size: 1em;
    background-color: #f5f3f0;
    border-radius: 20px;
    max-width: 50%;
    height: 9em;
    position: relative;
    float: right;
    margin: 0.5em;
    padding: 0.5em;
  }

  docTextField p {
    font-size: 0.65em;
    margin-left: 1%;
  }

  docTextField h4 {
    font-size: 0.8em;
    margin: 1% 1% 1% 1%;
  }

  docTextField a {
    color: #770801;
    position: absolute;
    bottom: 1em;
  }

  employees {
    position: relative;
    --justify-content: center;
  }

  personCard {
    line-height: 0.75em;
    text-align: left;
    width: 100%;
    height: calc(100vw * 0.9 * 0.75);
    display: block;
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    box-shadow: 0px 4px 0px #e0d8cc;
    border-radius: 20px;

    align-items: center;
    z-index: 4;
  }

  personCard img {
    width: 100%;
    position: relative;
  }

  personCard perTextField {
    background-color: #f5f3f0;
    border-radius: 20px;
    position: relative;
    width: calc(100vw * 0.51);
    height: calc(100vw * 0.9 * 0.75);
    float: right;
    margin: 0.5em;
    padding: 0.5em;
    right: 0;
  }

  perTextField p {
    font-size: 0.65em;;
  }

  perTextField h4 {
    font-size: 0.8em;
    margin-top: 0.5em;
    margin-bottom: 1em;
  }

  .werdegang {
    margin-top: 1em;
  }

  /*Job Ausschreibung*/

  jobSearch {
    position: relative;
    width: 100%;
    margin-top: -0.5em;
    display: inline-block;
    background-color: #ecb733;
    border-radius: 20px 0 20px 0;
    z-index: 5;
  }

  jobSearch p {
    color: #242424;
    text-align: center;
    margin: 0.5em;
    margin-top: 1em;
  }

  jobSearch a {
    display: block;
    margin-bottom: 1em;
    color: #770801;
    text-align: center;
  }

  /*SERVICES*/
  servicesList {
    display: none;
  }

  servicesSection {
    box-sizing: border-box;
    display: block;
    min-height: 100px;
    margin-top: 2em;
    margin-bottom: 50px;
    width: 100%;
  }

  servicesSection h2 {
    text-align: center;
    margin-bottom: 0em;
  }

  servicesText p {
    width: 90%;
    margin-left: 5%;
    text-align: left;
    color: #242424;
  }

  servicesListMobile {
    width: 90%;
    margin-left: 5%;
    display: inline-block;
  }

  servicesListMobile button {
    width: 100%;
    background-color: #f5f3f0;
    border-style: none;
    border-radius: 20px;
    margin-bottom: 2em;
    height: 12em;
  }

  servicesListMobile button {
    float: right;
    text-align: left;
  }

  servicesListMobile button p {
    position: relative;
    display: inline-block;
    font-family: sans-serif;
    font-size: 3.5em;
    font-weight: 600;
    margin-right: 1em;
  }

  servicesListMobile button p {
    margin-left: 1em;
  }

  iconCircle {
    margin-left: 1em;
    display: inline-block;
    width: 9em;
    height: 9em;
    line-height: 9em;
    /* Gleiche Höhe wie der Container */
    text-align: center;
    background-color: #770801;
    border-radius: 50%;
  }

  servicesListMobile button.right iconCircle {
    margin-left: 2em;
  }

  iconCircle .material-symbols-rounded {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    font-size: 6em;
    color: #f5f3f0;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
  }

  /*Contact and Directions*/

  contactSection {
    display: block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px 20px 0 0;
    margin-top: 1em;
  }

  contactLeft {
    display: block;
    width: 100%;
  }

  contactHeading h2 {
    padding-top: 1em;
    width: 90%;
    position: relative;
    margin-left: 5%;
    text-align: left;
    font-weight: 400;
    margin-bottom: 0em;
  }

  contactText {
    width: 90%;
    margin-left: 5%;
    position: relative;
    display: inline-block;
  }

  contactText a {
    color: #770801;
  }

  contactText h3 {
    font-size: medium;
  }

  .phoneNumber {
    display: none;
  }

  .phoneNumberMobile {
    color: #770801;
    font-weight: bold;
    --webkit-appearance: none;
  }

  /*GOOGLE MAPS*/

  contactRight {
    width: 100%;
    display: block;
  }

  directions {
    width: 90%;
    margin-left: 5%;
    display: block;
  }

  directions iframe {
    width: 100%;
    height: calc(100vw * 0.9);
    margin-top: 1em;
    position: relative;
    border-radius: 20px;
    box-shadow: 0.5em 0.5em 0 #770801;
    margin-bottom: 3em;
  }

  /*BACK TO TOP*/
  backToTop button {
    width: 10em;
    height: 10em;
    position: fixed;
    bottom: 4em;
    right: 4em;
    background-color: #ecb733;
    color: #f5f3f0;
    border: none;
    cursor: pointer;
    border-radius: 50%;
    z-index: 10;
  }

  backToTop button .material-symbols-rounded {
    position: absolute;
    font-size: 6em;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
  }

  /*FOOTER*/
  footer {
    margin-top: -0.5em;
    border-radius: 20px 20px 0 0;
    background-color: #770801;
    color: white;
    text-align: center;
    padding-top: 2em;
    padding-bottom: 3em;
  }

  footer p {
    background-color: #770801;
    margin: 0;
  }

  /*VITA*/

  vita {
    display: block;
    width: 100%;
  }

  vita h1 {
    margin-left: 0.5em;
    margin-top: 3em;
    font-size: 1.6em;
  }

  vitaWerdegang table tbody {
    display: inline-block;
    width: 100%;
  }

  vitaWerdegang {
    display: block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  vitaWerdegang h2 {
    margin-left: 0.5em;
    padding-top: 1em;
    font-size: 1.3em;
  }

  vitaWerdegang table {
    display: block;
    width: 100%;
    padding-bottom: 2em;
  }

  vitaWerdegang table tr,
  td {
    display: block;
    text-align: left;
    font-size: 1.1em;
  }

  vitaWerdegang table tr td p {
    margin-left: 0.5em;
    margin-right: 0.5em;
    margin-top: 0;
    margin-bottom: 0.2em;
    font-size: 0.8em;
  }

  vitaWerdegang table tr td:first-child {
    margin-top: 1em;
  }

  vitaWerdegang a {
    display: block;
    margin-top: 0.5em;
    color: #770801;
    margin-bottom: 0.5em;
  }

  vitaFortbildung table tbody {
    display: inline-block;
    width: 100%;
  }

  vitaFortbildung {
    display: block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  vitaFortbildung h2 {
    margin-left: 0.5em;
    padding-top: 1em;
    font-size: 1.3em;
  }

  vitaFortbildung table {
    display: block;
    width: 100%;
    padding-bottom: 2em;
  }

  vitaFortbildung table tr,
  td {
    display: block;
    text-align: left;
    font-size: 1.1em;
  }

  vitaFortbildung table tr td p {
    margin-left: 0.5em;
    margin-right: 0.5em;
    margin-top: 0;
    margin-bottom: 0.2em;
    font-size: 0.8em;
  }

  vitaFortbildung table tr td:first-child {
    margin-top: 1em;
  }

  vitaFortbildung a {
    display: block;
    margin-top: 0.5em;
    color: #770801;
    margin-bottom: 0.5em;
  }

  backButton {
    display: none;
  }

  /*SERVICES PAGE*/

  .serviceSection {
    margin-top: 2em;
    display: block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px;
    padding-bottom: 1em;
  }

  .serviceSection:first-child {
    margin-top: 4em;
  }

  .serviceSection h2 {
    text-align: center;
    padding-top: 1em;
    font-size: 1em;
    display: block;
    width: 100%;
  }

  .serviceSection img {
    width: 90%;
    margin-left: 5%;
    border-radius: 20px;
    box-shadow: 0.5em 0.5em #770801;
  }

  .serviceText {
    width: 90%;
    margin-left: 5%;
    font-size: 0.8em;
  }

  infoButton {
    display: inline-block;
  }

  infoButton button {
    font-size: 1em;
    border: none;
    background-color: transparent;
    color: #770801;
    padding: 0;
  }

  infoButton .material-symbols-rounded {
    font-size: 1.1em;
    font-variation-settings: "FILL" 0, "wght" 350, "GRAD" 0, "opsz" 24;
  }

  /*POP UP*/

  .popup {
    display: none;
    position: fixed;
    top: 2em;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(36, 36, 36, 0.5);
    overflow-y: auto;
    z-index: 11;
  }

  .popup-content {
    background-color: #f5f3f0;
    border-radius: 20px;
    margin: 5%;
    width: 90%;
    padding-bottom: 3em;
  }

  cite {
    display: inline-block;
    margin-left: 10%;
    margin-right: 10%;
  }

  .popup-content h2 {
    padding-top: 1em;
    font-size: 1.2em;
    width: 90%;
    margin-left: 5%;
  }

  .popup-content p {
    padding-top: 1em;
    font-size: 0.8em;
    width: 90%;
    margin-left: 5%;
  }

  .popup-content ul {
    font-size: 0.8em;
    width: 90%;
    margin-left: 5%;
  }

  .popup-content ul li {
    margin-top: 0.5em;
  }

  .popup-content h3 {
    font-size: 1.1em;
    width: 90%;
    margin-left: 5%;
  }

  .close {
    color: #aaa;
    float: right;
    font-size: 2em;
    font-weight: bold;
    cursor: pointer;
    margin-right: 0.2em;
  }

  .popup-content .quelle {
    font-size: 0.6em;
  }

  .horizontalImage {
    width: 80%;
    border-radius: 20px;
    margin-left: 10%;
  }

  .verticalImage {
    width: 60%;
    border-radius: 20px;
    margin-left: 20%;
  }

  popupImageContainer {
    margin-top: 2em;
    display: inline-block;
  }

  popupImageContainer img:first-child {
    margin-left: 9%;
  }

  popupImageContainer img:last-child {
    margin-right: 9%;
  }

  /*IMPRESSUM*/
  impressum {
    margin-top: 2em;
    display: inline-block;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  impressum h1 {
    width: 90%;
    margin-left: 5%;
    font-size: 1.2em;
    margin-top: 2em;
  }

  impressum p {
    width: 90%;
    margin-left: 5%;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 0.8em;
  }

  /*DATENSCHUTZ*/
  datenschutz {
    margin-top: 2em;
    display: inline-block;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  datenschutz h1 {
    width: 90%;
    margin-left: 5%;
    margin-top: 2em;
    font-size: 1.2em;
  }

  datenschutz h2 {
    width: 90%;
    margin-left: 5%;
    margin-top: 1em;
    font-size: 1em;
  }

  datenschutz h3 {
    width: 90%;
    margin-left: 5%;
    margin-top: 1em;
    font-size: 0.8em;
  }

  datenschutz ul {
    width: 90%;
    margin-left: 5%;
    font-size: 0.8em;
  }

  datenschutz p {
    width: 90%;
    margin-left: 5%;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 0.8em;
  }
}

@media only screen and (min-width: 1240px) {
  topNavMobile {
    display: none;
  }

  html {
    scroll-behavior: smooth;
  }

  wrapper {
    font-family: "OpenSans", sans-serif;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
  }

  page {
    display: block;
    position: relative;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    max-width: 75em;
  }

  topSection {
    display: block;
    position: relative;
  }

  topImage {
    width: 100%;
    height: auto;
    position: relative;
    display: inline-block;
  }

  topImage img {
    position: relative;
    width: 100%;
    height: 100%;
  }

  topImage button {
    width: 10em;
    height: 10em;
    position: absolute;
    bottom: 0;
    padding-bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background-color: transparent;
    border: none;
  }

  topImage button .material-symbols-rounded {
    font-size: 5em;
    color: #f5f3f0;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;
  }

  topImage button :hover {
    font-size: 5.5em;
    color: #e0d8cc;
  }

  topImage backGroundDesktop {
    width: 100%;
    height: 15em;
    position: absolute;
    display: flex;
    overflow: hidden;
    background-image: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0),
      rgb(0, 0, 0, 1)
    );
    bottom: 0;
  }

  topImage backGroundMobile {
    display: none;
  }

  /*TOP NAVIGATION BAR*/

  ul.topNav {
    list-style-type: none;
    margin-top: -1.5em;
    padding-left: 0;
    padding-right: 1em;
    overflow: hidden;
    background-color: #e0d8cc;
    position: -webkit-sticky;
    /* Safari */
    position: sticky;
    top: 0;
    z-index: 10;
    border-radius: 0 0 10px 10px;
  }

  ul.topNav li {
    float: right;
    margin-top: 0.6em;
    margin-bottom: 0.5em;
  }

  ul.topNav li.img {
    float: left;
  }

  .logo {
    width: max-content;
    margin-left: 1em;
  }

  ul.topNav li button {
    display: block;
    color: #242424;
    text-align: center;
    padding: 0.75em 1.2em;
    text-decoration: none;
    border: none;
    background-color: transparent;
    font-size: 1.2em;
    font-weight: bold;
  }

  /* Change the link color to #111 (black) on hover */
  ul.topNav li button:hover {
    text-decoration: underline;
  }

  /*NEWS BOX*/
  newsBox {
    width: 100%;
    box-sizing: border-box;
    display: block;
    float: left;
    border-style: solid;
    border-color: #770801;
    border-width: 2px;
    border-radius: 10px 0 10px 0;
    min-height: 100px;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
  }

  newsBox p {
    margin-left: 5%;
    line-height: 1.2em;
  }

  newsBox a {
    color: #770801;
  }

  newsBox headingBox {
    background-color: #770801;
    display: block;
    margin-top: -0.1em;
    margin-left: -0.1em;
    width: 15%;
    height: 2em;
    border-radius: 10px 0 10px 0px;
  }

  newsBox p.heading {
    display: inline-block;
    color: #f5f3f0;
    margin-top: 0.5em;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  /*WELCOME SECTION*/
  welcomeSection {
    margin-top: 12em;
    display: block;
    min-height: 20em;
  }

  welcomeText {
    clear: both;
    display: inline-block;
    max-width: calc(100% - 40% - 15%);
  }

  welcomeText h1 {
    margin-top: 0;
    margin-bottom: 0.5em;
    font-size: 1.75em;
  }

  welcomeText p {
    margin-bottom: 1.75em;
  }

  openingHours {
    display: block;
    width: 80%;
    margin-left: 5%;
    background-color: #f5f3f0;
    border-radius: 10px;
    padding: 0.5em 1.5em;
    margin-bottom: 3em;
  }

  openingText {
    display: block;
    position: relative;
    text-align: center;
  }

  openingHours p {
    margin-bottom: 1em;
  }

  /*TEST SLIDESHOW*/

  .slideShow {
    position: relative;
    display: block;
    float: right;
    /* Bildverhältnis muss 3zu2 sein */
    width: 36em;
    aspect-ratio: 3 / 2;
    max-width: 600px;
    max-height: 450px;
    overflow: hidden;
  }

  .service .slideShow {
    display: flex;
    position: absolute;
    width: 30%;
    float: left;
    align-self: flex-end;
    margin-top: 15%;
  }

  #mobileSlideShow {
    display: none;
  }

  .slideShow img {
    width: calc(100% - 0.5em);
    height: calc(100% - 0.5em);
    position: absolute;
    right: 0;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    border-radius: 10px;
    box-shadow: -0.5em 0.5em 0 #770801;
  }

  .slideShow img.active {
    opacity: 1;
  }

  .prev,
  .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #f5f3f0;
  }

  .slideShow .material-symbols-rounded {
    font-size: 3em;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;
  }

  .prev {
    left: 0px;
  }

  .next {
    right: 0px;
  }

  .prev :hover,
  .next :hover {
    font-size: 3.2em;
    color: #e0d8cc;
  }

  .dots {
    position: absolute;
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
  }

  .dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #f5f3f0;
    margin: 0 5px;
    cursor: pointer;
  }

  .dot.active {
    background-color: #ecb733;
  }

  /*EMERGENCY NUMBER*/
  emergencyNumber {
    position: relative;
    z-index: 1;
    width: 100%;
    display: block;
    float: left;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    border-radius: 10px 0 10px 0;
    background-color: #770801;
  }

  emergencyNumber p {
    margin-right: 1em;
    margin-left: 1em;
    color: #f5f3f0;
    text-align: center;
  }

  notrufNummerMobile {
    display: none;
  }

  /* UNSER TEAM*/

  teamSection {
    margin-top: -1em;
    width: 100%;
    display: inline-block;
    background-color: #f5f3f0;
    padding-bottom: 4.5em;
  }

  teamSection h2 {
    margin-top: 3em;
    text-align: center;
  }

  hardSection * {
    margin: 0;
    box-sizing: border-box;
    /* font-family: 'K2D', sans-serif; */
  }

  hardSection > employees {
    display: flex;
    justify-content: center;
    align-items: center;
    max-height: 50vh;
    min-height: 10em;
    width: 100%;
  }

  .card {
    margin: 20px 0;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
  }

  .card .card-content {
    padding: 1em;
    position: relative;
    z-index: 5;
  }

  .swiper {
    width: 100%;
    --swiper-navigation-size: 2em;
    --swiper-theme-color: #e0d8cc;
  }

  .card .name-profession {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 10px;
  }

  .name-profession .name {
    font-size: 20px;
    font-weight: 600;
    color: #242424;
  }

  .name-profession .profession {
    font-size: 15px;
    font-weight: 500;
    color: #242424;
  }

  .swiper-button-next,
  .swiper-button-prev {
    opacity: 0.7;
    transition: all 0.3s ease;
  }

  .swiper-button-next:hover,
  .swiper-button-prev:hover {
    opacity: 1;
    color: #e0d8cc;
  }

  hardSection {
    display: block;
    width: 90%;
    margin-left: 5%;
    position: relative;
    min-height: 10em;
  }

  doctors {
    justify-content: center;
    width: 100%;
    align-items: center;
    display: flex;
    margin-top: 1em;
  }

  doctorCard {
    line-height: 1em;
    text-align: left;
    width: 44.5%;
    display: inline-block;
    background-size: cover;
    background-position: 50% 50%;
    border-radius: 10px;
    height: fit-content;
  }

  doctorCard.second {
    margin-left: 1%;
  }

  doctorCard img {
    width: 100%;
    position: relative;
    box-shadow: 0px 4px 0px #e0d8cc;
  }

  doctorCard docTextField {
    font-size: 1.5em;
    background-color: #f5f3f0;
    border-radius: 10px;
    max-width: 40%;
    height: 10em;
    position: relative;
    float: right;
    margin: 1em;
    padding: 1em;
    line-height: 0.9em;
  }

  docTextField p {
    font-size: 0.75em;
    margin-left: 1%;
  }

  docTextField h4 {
    font-size: 0.8em;
    margin: 1% 1% 1% 1%;
  }

  docTextField a {
    color: #770801;
    position: absolute;
    bottom: 1em;
  }

  employees {
    position: relative;
    --justify-content: center;
  }

  personCard {
    line-height: 1em;
    text-align: left;
    width: 16em;
    height: fit-content;
    display: inline-block;
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    box-shadow: 0px 4px 0px #e0d8cc;
  }

  employees personCard {
    line-height: 1.1em;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px;
    position: relative;
    z-index: 4;
  }

  personCard img {
    width: 100%;
    position: relative;
  }

  personCard perTextField {
    background-color: #f5f3f0;
    border-radius: 10px;
    position: relative;
    max-width: 52%;
    height: 15em;
    float: right;
    margin: 0.5em;
    padding: 0.5em;
    right: -6em;
  }

  perTextField p {
    font-size: 1.1em;
  }

  perTextField h4 {
    font-size: 1.2em;
    margin-top: 0.5em;
    margin-bottom: 1em;
  }

  .werdegang {
    margin-top: 1em;
  }

  /*Job Ausschreibung*/

  jobSearch {
    position: relative;
    width: 100%;
    display: block;
    float: left;
    background-color: #ecb733;
    border-radius: 10px 0 10px 0;
    margin-top: -10px;
    margin-bottom: 50px;
    z-index: 5;
  }

  jobSearch p {
    margin-left: 1em;
    color: #242424;
    text-align: center;
    margin-top: 2em;
  }

  jobSearch a {
    display: block;
    margin-bottom: 2em;
    color: #770801;
    text-align: center;
  }

  /*SERVICES*/
  servicesListMobile {
    display: none;
  }

  servicesSection {
    box-sizing: border-box;
    display: block;
    float: left;
    border-style: solid;
    border-color: #e0d8cc;
    border-width: 2px;
    border-radius: 10px;
    min-height: 100px;
    margin-top: 25px;
    margin-bottom: 50px;
    width: 100%;
    padding: 20px;
  }

  servicesSection h2 {
    text-align: center;
    margin-bottom: 0em;
  }

  servicesText p {
    text-align: center;
    color: #242424;
  }

  table.services {
    margin-left: auto;
    margin-right: auto;
  }

  th.right button.serviceCard:hover,
  th.left button.serviceCard:hover {
    background-color: #e0d8cc;
  }

  th.left button.serviceCard {
    width: 32em;
    height: 6em;
    text-align: right;
    border-style: none;
    background-color: #f5f3f0;
    border-radius: 10px;
    margin-right: 2em;
  }

  th.right button.serviceCard {
    float: right;
    width: 32em;
    height: 6em;
    text-align: left;
    border-style: none;
    background-color: #f5f3f0;
    border-radius: 10px;
  }

  button.serviceCard p {
    position: relative;
    display: inline-block;
    font-family: sans-serif;
    font-size: 1.5em;
    font-weight: 600;
    margin-right: 1em;
  }

  th.right button.serviceCard p {
    margin-left: 1em;
  }

  iconCircle {
    display: inline-block;
    width: 4.5em;
    height: 4.5em;
    line-height: 4.5em;
    /* Gleiche Höhe wie der Container */
    text-align: center;
    background-color: #770801;
    border-radius: 50%;
  }

  th.right button.serviceCard iconCircle {
    margin-right: 5px;
  }

  iconCircle .material-symbols-rounded {
    vertical-align: middle;
    font-size: 2.2em;
    color: #f5f3f0;
    justify-content: center;
    align-items: center;
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
  }

  /*Contact and Directions*/

  contactLeft,
  contactRight {
    flex: 1;
    /* teilt den verfügbaren Platz gleichmäßig zwischen den beiden Elementen auf */
  }

  contactSection {
    padding-top: 2em;
    padding-bottom: 4em;
    display: flex;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 10px 10px 0 0;
    margin-top: 1em;
  }

  contactLeft {
    display: inline-block;
    width: 40%;
    margin-left: 4.5em;
  }

  contactHeading h1 {
    text-align: left;
    font-weight: 400;
    margin-bottom: 0em;
  }

  contactText {
    position: relative;
    display: inline-block;
    width: 50%;
  }

  contactText a {
    color: #770801;
  }

  .phoneNumberMobile {
    display: none;
  }

  contactText h3 {
    font-size: medium;
  }

  /*GOOGLE MAPS*/

  contactRight {
    padding-top: 1.1em;
    margin-right: 4.5em;
  }

  directions iframe {
    float: right;
    width: 28em;
    height: 22em;
    position: relative;
    border-radius: 10px;
    box-shadow: 0.5em 0.5em 0 #770801;
  }

  /*BACK TO TOP*/
  backToTop button {
    width: 5em;
    height: 5em;
    position: fixed;
    bottom: 2em;
    right: 4em;
    background-color: #ecb733;
    color: #f5f3f0;
    border: none;
    cursor: pointer;
    border-radius: 50%;
    z-index: 10;
  }

  backToTop button .material-symbols-rounded {
    position: absolute;
    font-size: 3em;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
  }

  backToTop button:hover .material-symbols-rounded {
    opacity: 0.8;
    font-size: 3.25em;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
  }

  /*FOOTER*/
  footer {
    margin-top: -1em;
    border-radius: 20px 20px 0 0;
    background-color: #770801;
    color: white;
    text-align: center;
    padding-top: 2em;
    padding-bottom: 3em;
  }

  footer p {
    background-color: #770801;
    margin: 0;
  }

  /*VITA*/

  vita h1 {
    margin-top: 1em;
  }

  vitaWerdegang {
    display: inline-block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  vitaWerdegang table tr td p {
    margin: 0;
  }

  vitaWerdegang h2 {
    margin-left: 1em;
    margin-top: 1em;
  }

  vitaWerdegang table {
    width: 100%;
    margin: 1.25em;
  }

  vitaWerdegang table tr,
  td {
    display: flex;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    text-align: left;
    min-width: 15%;
    font-size: 1.1em;
  }

  vitaWerdegang a {
    display: block;
    margin-top: 0.5em;
    color: #770801;
    margin-bottom: 0.5em;
  }

  vitaFortbildung {
    display: inline-block;
    width: 100%;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  vitaFortbildung h2 {
    margin-left: 1em;
    margin-top: 1em;
  }

  vitaFortbildung table {
    width: 100%;
    margin: 1.25em;
  }

  vitaFortbildung table tr,
  td {
    display: flex;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    text-align: left;
    min-width: 15%;
    max-width: 90%;
    font-size: 1.1em;
  }

  vitaFortbildung table td a {
    display: contents;
    color: #770801;
  }

  backButton {
    display: inline-block;
    margin-top: 2em;
  }

  backButton button {
    font-weight: bold;
    font-size: 1em;
    border: none;
    background-color: transparent;
    color: #770801;
  }

  backButton button:hover {
    text-decoration: underline;
  }

  backButton .material-symbols-rounded {
    vertical-align: middle;
    font-variation-settings: "FILL" 0, "wght" 600, "GRAD" 0, "opsz" 24;
  }

  /*SERVICES PAGE*/

  infoButton {
    display: inline-block;
  }

  infoButton button {
    font-size: 1em;
    border: none;
    background-color: transparent;
    color: #770801;
    padding: 0;
  }

  infoButton .material-symbols-rounded {
    font-family: "Material Symbols Rounded";
    font-size: 1.1em;
    font-variation-settings: "FILL" 0, "wght" 350, "GRAD" 0, "opsz" 24;
  }

  .serviceSection h2 {
    display: block;
    text-align: center;
    clear: both;
  }

  .serviceSection {
    margin-top: 2em;
    margin-bottom: 4em;
    display: inline-block;
    padding-top: 1em;
    min-height: 25em;
  }

  #futtermittelberatung {
    margin-bottom: 0;
    padding-bottom: 4em;
  }

  .odd .serviceText {
    display: block;
    float: right;
    background-color: #f5f3f0;
    padding: 1em;
    border-radius: 10px;
    width: 60%;
    top: 0;
  }

  .odd .service {
    width: 100%;
    display: block;
  }

  .odd .serviceImage {
    display: inline-block;
    width: 30%;
  }

  .serviceImage img {
    border-radius: 10px;
    box-shadow: 0.5em 0.5em #770801;
  }

  .even {
    width: 100%;
    display: block;
    background-color: #f5f3f0;
    border-radius: 10px 0px 10px 0px;
    padding-bottom: 1em;
  }

  .even .serviceText {
    display: inline-block;
    width: 60%;
    margin-left: 2em;
  }

  .even .serviceImage {
    display: block;
    float: right;
    width: 30%;
    margin-right: 2em;
    margin-top: 2em;
  }

  .even .serviceImage img {
    width: 100%;
    margin-right: 2em;
    border-radius: 10px;
  }

  /*IMPRESSUM*/
  impressum {
    display: inline-block;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  impressum h1 {
    margin-left: 1em;
    margin-top: 1em;
  }

  impressum p {
    margin: 2em;
  }

  /*DATENSCHUTZ*/
  datenschutz {
    display: inline-block;
    background-color: #f5f3f0;
    border-radius: 20px;
    margin-bottom: 2em;
  }

  datenschutz h1 {
    margin-left: 1em;
    margin-top: 1em;
  }

  datenschutz h2 {
    margin-left: 1.4em;
    margin-top: 1em;
    font-size: 1.4em;
  }

  datenschutz h3 {
    margin-left: 2em;
    margin-top: 1em;
    font-size: 1em;
  }

  datenschutz ul {
    margin-left: 1.8em;
  }

  datenschutz p {
    margin: 2em;
  }

  /*POP UP*/
  .popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(36, 36, 36, 0.5);
    overflow-y: auto;
    z-index: 11;
  }

  .popup-content {
    background-color: #f5f3f0;
    margin: 10% auto;
    padding: 4em;
    border-radius: 10px;
    width: 40%;
  }

  cite {
    display: inline-block;
    margin-left: 10%;
    margin-right: 10%;
  }

  .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
  }

  .close:hover {
    color: black;
  }

  .quelle {
    font-size: 0.8em;
  }

  .horizontalImage {
    width: 40%;
    border-radius: 10px;
    margin-left: 30%;
  }

  .verticalImage {
    width: 20%;
    border-radius: 10px;
    margin-left: 40%;
  }

  popupImageContainer {
    margin-top: 2em;
    display: inline-block;
  }

  popupImageContainer img:first-child {
    float: left;
    margin-left: 9%;
  }

  popupImageContainer img:last-child {
    float: right;
    margin-left: 0;
    margin-right: 9%;
  }
}
