/*Change bootstrap default Variables here*/
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto-Thin.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto-ThinItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto-Black.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto-BlackItalic.ttf") format("truetype");
}
/*-------------*/
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Thin.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-ThinItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: normal;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-Black.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto SemiCondensed";
  font-style: italic;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto_SemiCondensed-BlackItalic.ttf") format("truetype");
}
/*-------*/
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Thin.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 100;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-ThinItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 300;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 400;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 500;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 700;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-Black.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: italic;
  font-weight: 900;
  src: local(""), url("/media/fonts/roboto/Roboto_Condensed-BlackItalic.ttf") format("truetype");
}
.IsResponsive #Inhalte, .IsResponsive #HauptMenuRahmen, .IsResponsive #Clickpath, .IsResponsive #fam-Footer > .skyline, .IsResponsive #fam-Footer > .menu > ul {
  max-width: 1184px;
  width: 100%;
}
.IsResponsive #HauptMenu, .IsResponsive #Clickpath {
  padding-left: 10px;
  padding-right: 10px;
}
.IsResponsive .Inhalt {
  width: 100%;
  max-width: 884px;
}
.IsResponsive #Rahmen:not(.RahmenT16) .Inhalt {
  padding: 1rem;
  box-shadow: 0px 0 8px 0px rgba(84, 84, 84, 0.2);
}
@media only screen and (max-width: 1170px) {
  .IsResponsive #Inhalte, .IsResponsive #Footer {
    padding-right: 20px;
    padding-left: 20px;
  }
  .IsResponsive .Inhalt {
    padding-right: 0px;
  }
  .IsResponsive .Leftbar, .IsResponsive .Sidebar {
    float: left;
    padding-left: 0px;
  }
  .IsResponsive .Sidebar {
    clear: left;
  }
  .IsResponsive .Sidebar #Printbutton a {
    width: 100%;
    text-align: center;
  }
  .IsResponsive .Inhalt {
    margin-bottom: 2%;
    width: 100%;
  }
}
@media only screen and (max-width: 1049px) {
  .IsResponsive #Inhalte, .IsResponsive #Footer {
    padding-right: 20px;
    padding-left: 20px;
  }
  .IsResponsive .Inhalt {
    padding-right: 0px;
  }
  .IsResponsive .Leftbar, .IsResponsive .Sidebar {
    float: left;
    padding-left: 0px;
  }
  .IsResponsive .Sidebar {
    clear: left;
  }
  .IsResponsive .Sidebar #Printbutton a {
    width: 100%;
    text-align: center;
  }
  .IsResponsive .EventAppointmentMonth > div:first-child[id^=EventAppointmentMonth], .IsResponsive .EventAppointmentMonth .EventAppointmentMonthDataAside {
    width: 100%;
    margin-bottom: 12px;
  }
  .IsResponsive .EventAppointmentMonth #EventAppointmentMonth .EventAppointmentMonthTable tbody tr td {
    width: auto;
    height: auto;
  }
  .IsResponsive .EventAppointmentMonth #EventAppointmentMonth .EventAppointmentMonthTable tbody tr td span, .IsResponsive .EventAppointmentMonth #EventAppointmentMonth .EventAppointmentMonthTable tbody tr td button {
    display: inline-block;
    height: 32px;
    width: 32px;
  }
  .IsResponsive .EventAppointmentMonth div[id^=EventAppointmentMonthData] {
    border-left: 0px;
  }
}
@media only screen and (max-width: 969px) {
  .IsResponsive #HeaderContent .logo p {
    text-align: right;
    width: 60%;
    font-size: 245%;
    font-weight: 300;
    margin-bottom: -10px;
  }
  .IsResponsive #Header, .IsResponsive #Inhalte, .IsResponsive #Footer {
    width: 100%;
    max-width: 970px;
  }
  .IsResponsive #Inhalte, .IsResponsive #Footer {
    padding-right: 20px;
    padding-left: 20px;
  }
  .IsResponsive #Footer #FooterContent #FooterContentText #fam-Footer .menu ul {
    display: block;
  }
}
@media only screen and (max-width: 799px) {
  .IsResponsive #HeaderContent .logo {
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }
  .IsResponsive #HeaderContent .logo p {
    text-align: right;
    width: 113%;
    font-size: 150%;
    font-weight: 300;
    margin-bottom: -7px;
  }
  .IsResponsive #TopMenu .NavResponsiveSwitch {
    margin-right: 20px;
  }
  .IsResponsive #Navigation .NavResponsiveSwitch {
    margin-left: 20px;
  }
  .IsResponsive #Clickpath {
    padding-left: 20px;
    padding-right: 20px;
  }
  .IsResponsive #TopMenuRahmen {
    background-color: #36444e;
  }
  .IsResponsive #Inhalte {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .IsResponsive .Inhalt {
    order: 1;
    width: 100%;
  }
  .IsResponsive .Leftbar {
    order: 3;
  }
  .IsResponsive .Sidebar {
    order: 2;
  }
  .IsResponsive .Leftbar, .IsResponsive .Inhalt, .IsResponsive .Sidebar {
    padding-right: 0px;
    padding-left: 0px;
    float: none;
    margin: auto;
  }
  .IsResponsive #Gesamt.ResponsiveButtonOpenUp #TopMenuRahmen {
    position: fixed;
  }
  .IsResponsive #Gesamt.ResponsiveButtonOpenUp #NavigationResponsiveSwitch {
    position: fixed;
    top: 32px;
    right: 20px;
  }
  .IsResponsive #Gesamt.ResponsiveButtonOpenUp #HeaderContent .logo {
    position: fixed;
    top: 24px;
    transition: all 0.2s ease-in-out;
  }
  .IsResponsive #Gesamt.ResponsiveButtonOpenUp #Inhalte {
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
  }
  .IsResponsive #HeaderContent .logo img {
    max-width: 575px;
    width: 100%;
  }
  .IsResponsive #NavigationResponsiveSwitch {
    display: inline-block;
    position: absolute;
    top: 32px;
    right: 20px;
    z-index: 101;
  }
  .IsResponsive #Navigation {
    margin-bottom: 0px;
    padding-top: 0px;
    margin-top: unset;
    height: unset;
  }
  .IsResponsive #Navigation #HauptMenu ul li:first-child.mainMenue > a::before {
    display: none;
  }
  .IsResponsive #Navigation #HauptMenu {
    height: auto;
    border-bottom: 0px;
    margin-top: 100px;
  }
  .IsResponsive #Gesamt > #Navigation #HauptMenu ul .mainMenue {
    float: none;
  }
  .IsResponsive #Gesamt > #Navigation #HauptMenu .MenueLevel2 {
    display: inline-block;
    position: relative;
    width: 100%;
    padding-left: 0;
    border: none;
    opacity: 1;
    box-shadow: none;
  }
  .IsResponsive #Gesamt > #Navigation #HauptMenu .MenueLevel2 > li > a {
    padding-left: 15px;
  }
  .IsResponsive .ResponsiveSwitch {
    text-indent: -99999px;
    height: 29px;
    width: 33px;
    cursor: pointer;
    background-color: #aaa;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown {
    position: absolute;
    left: 6px;
    top: 13px;
    height: 3px;
    width: 20px;
    background: #fff;
    display: block;
    transition: all 0.3s ease 0s;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown::after, .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown::before {
    content: "";
    position: absolute;
    left: 0;
    height: 3px;
    width: 20px;
    background: #fff;
    display: block;
    transition: all 0.3s ease 0s;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown::after {
    top: 7px;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown::before {
    top: -7px;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown.ResponsiveButtonOpenUp {
    background-color: transparent;
    transform: rotate(45deg);
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown.ResponsiveButtonOpenUp::before, .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown.ResponsiveButtonOpenUp::after {
    top: 0px;
  }
  .IsResponsive .ResponsiveSwitch .ResponsiveButtonDown.ResponsiveButtonOpenUp::after {
    transform: rotate(-90deg);
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0s;
  }
  .IsResponsive #HauptMenuRahmen {
    display: none;
    margin-bottom: 0px;
    margin-bottom: 0px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    background: white;
  }
  .IsResponsive #CalendarSmallCage table td, .IsResponsive .calendar_cage table td {
    width: 110px;
  }
  .IsResponsive .Inhalt {
    margin-bottom: 2%;
  }
  .IsResponsive .logo {
    z-index: 10;
    position: relative;
  }
  .IsResponsive #Footer #FooterContent #FooterContentText {
    flex-direction: column;
  }
  .IsResponsive #Footer #FooterContent #FooterContentText #menu--footer, .IsResponsive #Footer #FooterContent #FooterContentText #powered-by {
    text-align: center;
    margin: auto;
    max-width: 100%;
  }
}
@media only screen and (max-width: 479px) {
  .IsResponsive #HeaderContent .logo p {
    text-align: right;
    width: 150%;
    font-size: 124%;
    font-weight: 300;
    margin-bottom: -7px;
  }
  .IsResponsive #Gesamt .TextInput, .IsResponsive #Gesamt .EmailInput, .IsResponsive #Gesamt .UrlInput, .IsResponsive #Gesamt .NumberInput, .IsResponsive #Gesamt .CurrencyInput, .IsResponsive #Gesamt .TextareaInput, .IsResponsive #Gesamt .SelectInput, .IsResponsive #Gesamt .FileInput, .IsResponsive #Gesamt #SucheEingabe, .IsResponsive #Gesamt .customfile, .IsResponsive #Gesamt .LabelTextInput, .IsResponsive #Gesamt .LabelRadioGroup, .IsResponsive #Gesamt .LabelTextarea, .IsResponsive #Gesamt .LabelDateInput, .IsResponsive #Gesamt .LabelDatetimeInput, .IsResponsive #Gesamt .LabelTimeInput, .IsResponsive #Gesamt .LabelSelect, .IsResponsive #Gesamt .LabelFileUpload {
    width: 50%;
  }
  .IsResponsive #Gesamt .teilnehmerabfrage > select {
    max-width: 95%;
  }
  .IsResponsive .f-col-wrapper .f-col-3 {
    width: 100%;
  }
  .IsResponsive .Sidebar, .IsResponsive .Leftbar {
    width: 100%;
  }
  .IsResponsive #FormularBuchungsnummer {
    padding-left: 18px;
    padding-right: 18px;
  }
  .IsResponsive #Buchungsnummer #EingabeBN {
    width: 100% !important;
    float: none;
    margin-right: 0px;
  }
  .IsResponsive #Buchungsnummer #EingabeBN #Buchungsnr {
    width: 100% !important;
    margin-bottom: 10px;
    margin-top: 6px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
  }
  .IsResponsive #Buchungsnummer #WeiterBN {
    float: none;
  }
  .IsResponsive #Buchungsnummer #WeiterBN .submitBuchungsnummer {
    width: 100%;
    margin-left: 0px !important;
    border-top-left-radius: 3px !important;
    border-bottom-left-radius: 3px !important;
  }
  .IsResponsive #Inhalte {
    padding: 0 23px;
  }
  .IsResponsive #Printbutton {
    margin-top: 23px;
  }
  .IsResponsive #Printbutton a {
    display: block;
    text-align: center;
  }
  .IsResponsive #NewsletterAbmeldung #abmelden #EMailFrageAbsage {
    padding: 8px 13px 13px;
  }
  .IsResponsive #NavigationTop #TopMenu ul {
    display: flex;
  }
  .IsResponsive #NavigationTop #TopMenu ul li a {
    border-left: 0px solid #7E8284;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
