/* MOBILE CUSTOMIZE */

/* 7 inch = 17.78 cm */
@media 
only screen and (max-width: 7in),
only screen and (max-device-width: 7in),
only screen and (max-width: 1080px), 
only screen and (max-device-width: 1080px) {

#headerTopBack {
 border-bottom: 0px;
 height:104px;
}

#headerTop {
 
 text-align:left;
}

#menuBack {
 margin-top:0px;
 background:#ffffff;
}

#headerLogo {
  margin-top:-4px;
}

#menuMobile {
  display:block;
  text-align:right;
  width:auto;
  min-width:auto;
  max-width:auto;
  float:right;
  margin-top:15px;
}

#menuMobile .iconNavi {
 top:11px;
 font-size:30px;
 height:25px;
 padding:20px;
 text-rendering:optimizeLegibility;
}

#menu .iconPlus {
 font-size:18px;
 color:#bbbbbb;
 height:18px;
 margin:11px 11px 0px 10px;
}

#menuMobile {
}

#menu ul li { 
 border-top:1px #dbdbdb solid;  
 border-bottom:0px;
}

#menu ul li a,
#menu ul li a:visited,
#menu ul li a:active,
#menu ul li a:hover,
#menu ul li a.act {
 border-bottom:0px;
 padding-bottom:0px;
 padding-left:0px;
}

#menu ul li ul li {
 border-top:1px #dbdbdb solid; 
 border-bottom:0px; 
}

#menu ul li ul li a {
 line-height:44px;
 height:44px;
}

#menu ul li ul li a.act,
#menu ul li ul li a:hover {
  padding-left:14px;

}

#menu ul li:last-child {
  margin-bottom:15px;
}


#menuMobile,
#menuMobile a,
#menuMobile a:visited,
#menuMobile a:active,
#menuMobile a:link {
 color:#55ACB6;
}

#menuMobile a:hover {
 color:#70C6CF;
}

#contentFooterLine {
  padding-top:3px;
}

#contentFooterLine .blockItem {
  margin-top:0px;
  padding-top:0px;
}

.footerCompany {
  float:none;
}

.footerMenu { 
  float:none;
  left:0px;
 }

 .scrollUp {
  display:block;
  bottom: 9px;
  z-index: 101;
 }

 .scrollUp .iconUp,
 .iconUp {
  color: #55ACB6;
 }

.headerAppointmentButton {
 display: none;
}

/* Mobile: fixe Termin-Leiste unten */
#appointmentMobileBar {
 display: block;
 position: fixed;
 bottom: 0;
 left: 0;
 right: 0;
 z-index: 100;
 padding: 10px 16px;
 padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
 background: rgba(255, 255, 255, 0.98);
 border-top: 1px solid #ececec;
 box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.04);
 box-sizing: border-box;
 -webkit-transform: translateZ(0);
 transform: translateZ(0);
 -webkit-backface-visibility: hidden;
 backface-visibility: hidden;
 will-change: transform;
}

.appointmentMobileBarInner {
 display: flex;
 gap: 10px;
 align-items: stretch;
}

.mobileBarButton,
.mobileBarButton:link,
.mobileBarButton:visited,
.mobileBarButton:active {
 display: flex;
 flex: 1;
 align-items: center;
 justify-content: center;
 box-sizing: border-box;
 padding: 12px 10px;
 min-height: 48px;
 border-radius: 6px;
 border: 1px solid #77CBD5;
 background-color: #FAFDFD;
 color: #3d4f54;
 font-size: 14px;
 line-height: 1.3;
 font-weight: bold;
 text-align: center;
 white-space: normal;
 transition: none;
}

.mobileBarButton .fa {
 margin-right: 8px;
 color: #70C6CF;
}

.mobileBarButton:hover {
 background-color: #A5DEE5;
 color: #1a454c;
}

.appointmentButtonMobile,
.appointmentButtonMobile:link,
.appointmentButtonMobile:visited,
.appointmentButtonMobile:active {
 display: flex;
 flex: 1;
 align-items: center;
 justify-content: center;
 width: auto;
 text-align: center;
 box-sizing: border-box;
 padding: 12px 10px;
 min-height: 48px;
 font-size: 14px;
 line-height: 1.3;
 white-space: normal;
 text-transform: none;
}

/* Abstand unten = Höhe der fixen Button-Leiste */
#pageBack {
 padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px));
}

body {
 padding-bottom: 0;
}


/* SUBMENU PAGE NAVIGATION */

#headerBottomBack {
 position: relative;
 overflow: visible;
}

#submenuNavBack {
 position: absolute;
 bottom: -13px;
 left: 0;
 right: 0;
 width: 100%;
 max-width: 100%;
 margin: 0;
 padding: 0;
 box-sizing: border-box;
 z-index: 6;
}

#headerBottomBack:has(#submenuNavBack) {
 margin-bottom: 13px;
}

#submenuNav {
 position: relative;
 width: 100%;
 max-width: 100%;
 margin: 0;
 padding: 0;
 box-sizing: border-box;
 min-height: 38px;
 height: 38px;
}

.submenuNavTabs,
.submenuNavCurrent {
 display: none;
}

#submenuNav .submenuNavArrow,
#submenuNav .submenuNavArrow:link,
#submenuNav .submenuNavArrow:visited,
#submenuNav .submenuNavArrow:active {
 display: flex;
 align-items: center;
 justify-content: center;
 position: absolute;
 top: 0;
 transform: none;
 width: 32px;
 height: 38px;
 padding: 0;
 margin: 0;
 border: 0;
 font-size: 13px;
 line-height: 1;
 font-weight: bold;
 color: #ffffff;
 background-color: #55ACB6;
 text-shadow: 0 1px 2px rgba(0, 45, 55, 0.18);
 border-radius: 0;
 z-index: 2;
 overflow: hidden;
}

#submenuNav .submenuNavArrow .fa {
 color: #ffffff;
 margin: 0;
 font-size: 14px;
}

#submenuNav .submenuNavArrow.submenuNavPrev,
#submenuNav .submenuNavArrow.submenuNavPrev:link,
#submenuNav .submenuNavArrow.submenuNavPrev:visited,
#submenuNav .submenuNavArrow.submenuNavPrev:active {
 left: 0;
 border-radius: 0 19px 19px 0;
}

#submenuNav .submenuNavArrow.submenuNavNext,
#submenuNav .submenuNavArrow.submenuNavNext:link,
#submenuNav .submenuNavArrow.submenuNavNext:visited,
#submenuNav .submenuNavArrow.submenuNavNext:active {
 right: 0;
 border-radius: 19px 0 0 19px;
}

/* >>> MODULES */
.slideshowbutton, .slideshowleftbutton, .slideshowrightbutton { display: none; }

/* <<< MODULES */

}

