#header #topBar {
  display: block;
  height: 27px;
  padding-top: 5px;
  position: relative; }
  #header #topBar #userLoginInset {
    position: absolute;
    right: 50px;
    border-radius: 8px; }
    #header #topBar #userLoginInset div {
      display: inline-block;
      margin: 0 12px;
      font-family: 'Inter', Arial, Helvetica, sans-serif;
      color: #111; }
      #header #topBar #userLoginInset div a {
        color: #111;
        text-decoration: none; }
        #header #topBar #userLoginInset div a:hover {
          color: #fff;
          transition: 0.2s ease-in-out; }
  #header #topBar #userLoginInset.notSignedIn a.button {
    background: unset !important;
    text-decoration: none;
    width: auto; }
    #header #topBar #userLoginInset.notSignedIn a.button span {
      background: unset !important;
      color: #222;
      font-family: 'Inter', Arial, Helvetica, sans-serif;
      font-weight: 500; }
#header .navBar {
  display: flex;
  padding: 15px;
  position: relative;
  justify-content: flex-start; }
  #header .navBar .logoContainer {
    max-width: 150px;
    padding-left: 16px; }
    #header .navBar .logoContainer .mainLogo {
      display: inline-block; }
      #header .navBar .logoContainer .mainLogo img {
        width: 100%;
        max-height: 75px; }
  #header .navBar .menuContainer {
    width: calc(100vw - 150px);
    height: fit-content;
    margin: auto 0; }
    #header .navBar .menuContainer #mainMenu ul#mainMenuLinks {
      margin: 0 auto;
      width: fit-content;
      display: flex; }
      #header .navBar .menuContainer #mainMenu ul#mainMenuLinks li.mainMenuItem {
        display: inline-block;
        vertical-align: top;
        padding: 10px 15px;
        margin: 0 10px; }
        #header .navBar .menuContainer #mainMenu ul#mainMenuLinks li.mainMenuItem a {
          font-family: Inter, Arial, Helvetica, sans-serif;
          line-height: normal; }
      #header .navBar .menuContainer #mainMenu ul#mainMenuLinks div.subMenu {
        position: absolute;
        z-index: 3;
        text-align: left;
        padding: 0px;
        border-top: 0;
        top: 95px;
        margin-left: -15px;
        box-shadow: rgba(40, 40, 40, 0.8) 0px 4px 8px; }
        #header .navBar .menuContainer #mainMenu ul#mainMenuLinks div.subMenu ul {
          padding: 0; }
          #header .navBar .menuContainer #mainMenu ul#mainMenuLinks div.subMenu ul li {
            display: block;
            padding: 12px 15px; }
            #header .navBar .menuContainer #mainMenu ul#mainMenuLinks div.subMenu ul li a {
              line-height: normal; }
            #header .navBar .menuContainer #mainMenu ul#mainMenuLinks div.subMenu ul li a:hover {
              color: white;
              transition: 0.2s ease-in-out; }

#footer {
  padding: 50px 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative; }
  #footer .column {
    margin: 20px 45px; }
  #footer .logoSocialColumn .mainLogo a img {
    max-height: 80px;
    width: auto; }
  #footer .logoSocialColumn .socialIconsLinks {
    margin-top: 15px; }
    #footer .logoSocialColumn .socialIconsLinks .socialLink a {
      color: white; }
  #footer .footerMenus h4 {
    font-size: 22px;
    margin-bottom: 10px;
    font-family: 'Inter', Arial, Helvetica, sans-serif;
    margin-bottom: 20px; }
  #footer .footerMenus ul {
    list-style: none;
    padding: 0; }
    #footer .footerMenus ul li {
      margin-bottom: 5px; }
      #footer .footerMenus ul li a {
        text-decoration: none;
        font-size: 16px;
        line-height: 1.8em; }
        #footer .footerMenus ul li a:hover {
          color: white; }

.pageWidth {
  width: 978px;
  max-width: 95vw;
  margin: 30px auto; }

#mainPage {
  margin: 30px auto; }
  #mainPage.fullPageWidth {
    width: 100vw;
    margin: 0 auto !important;
    padding: 0 0; }
  #mainPage .image {
    max-width: 100vw; }
  #mainPage #homePageMainImage {
    width: 100%;
    display: block;
    max-height: 550px; }
    #mainPage #homePageMainImage a.imageLink {
      width: 100%;
      height: 100%;
      display: block; }
      #mainPage #homePageMainImage a.imageLink img.image {
        width: 100%;
        height: 100%;
        max-height: 530px;
        object-fit: cover; }
  #mainPage #homePageTextbox {
    max-height: 500px;
    display: block;
    width: 100%;
    background-color: white;
    position: relative; }
    #mainPage #homePageTextbox .headlineContent {
      margin: auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      height: 100%;
      justify-content: center; }
      #mainPage #homePageTextbox .headlineContent .bigTitle {
        width: fit-content;
        padding: 10px;
        line-height: normal;
        font-weight: 700; }
      #mainPage #homePageTextbox .headlineContent h4.textSubtitle {
        width: fit-content;
        padding: 10px;
        font-family: Inter, Helvetica, Arial, Sans-serif; }
  #mainPage #homePageHalfImages {
    display: flex;
    flex-direction: row;
    width: 100%; }
    #mainPage #homePageHalfImages .leftHalfImage,
    #mainPage #homePageHalfImages .rightHalfImage {
      flex-basis: 100%;
      z-index: 0; }
      #mainPage #homePageHalfImages .leftHalfImage img.halfImages,
      #mainPage #homePageHalfImages .rightHalfImage img.halfImages {
        width: 100%;
        height: 100%;
        object-fit: cover; }
  #mainPage h2.halfImageTitle {
    display: block;
    font-family: Inter, Helvetica, Arial, Sans-serif; }
  #mainPage a.buttonOverImage {
    display: block;
    width: fit-content;
    border-radius: 10px;
    margin: 10px auto;
    text-decoration: none;
    font-family: Inter, Helvetica, Arial, Sans-serif; }
  #mainPage h2.bigTitle,
  #mainPage a.buttonOverImage {
    z-index: 2;
    position: relative;
    text-align: center;
    line-height: normal;
    font-family: Inter, Helvetica, Arial, Sans-serif; }
  #mainPage #homePageBottomImage {
    height: min(500px, 45vw);
    display: block;
    position: relative; }
    #mainPage #homePageBottomImage img.bottomImage {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    #mainPage #homePageBottomImage a.bottomButton {
      display: block;
      border-radius: 10px;
      margin: 10px auto;
      text-align: center;
      font-family: Inter, Helvetica, Arial, Sans-serif; }
  #mainPage #switchboardRow {
    margin-bottom: 40px; }
    #mainPage #switchboardRow div.component.size_3 {
      width: 100%; }
    #mainPage #switchboardRow div.componentRow {
      width: unset; }
