@font-face {
  font-family: 'Frutiger-Light';
  src: url("../fonts/FrutigerLTStd-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'Frutiger-Roman';
  src: url("../fonts/FrutigerLTStd-Roman.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

:root {
  --bs-body-font-family: 'Frutiger-Light'; }

* {
  color: #4C4C4C; }

a {
  color: #4C4C4C;
  transition: color .1s ease-out;
  text-decoration: none; }
  a:hover {
    color: #F6A435; }

a[href^="mailto:"] {
  color: #F6A435; }
  a[href^="mailto:"]:hover {
    color: #4C4C4C; }

h1 {
  color: #FFFFFF;
  font-size: 40px;
  font-family: Frutiger-Light;
  font-weight: 300;
  text-shadow: 0px 1px 3px rgba(0, 5, 2, 0.72); }

h2 {
  color: #4C4C4C;
  font-size: 32px;
  font-family: Frutiger-Light;
  font-weight: 200;
  margin-bottom: 0.65rem; }

p {
  color: #4C4C4C;
  margin-bottom: 0.9rem;
  font-family: Frutiger-Light; }

@media (max-width: 1200px) {
  .container {
    width: 100% !important;
    max-width: unset !important; } }

.infobar {
  max-height: 0;
  overflow: hidden;
  transition: max-height .5s ease-out; }
  .infobar.true {
    max-height: 200px; }
  .infobar #close-infobar {
    position: relative;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center; }
    .infobar #close-infobar:hover {
      cursor: pointer; }
    .infobar #close-infobar::after, .infobar #close-infobar::before {
      content: "";
      border-top: 2px solid #4C4C4C;
      width: 30px;
      transform: rotate(45deg);
      position: absolute; }
    .infobar #close-infobar::after {
      transform: rotate(-45deg); }

#navbar {
  height: 100px; }
  @media (max-width: 768px) {
    #navbar {
      height: unset; } }
  #navbar img {
    max-height: 50px;
    max-width: 30vw; }

#hero {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important; }
  #hero .wrapper {
    min-height: 55svh; }
  @media (min-width: 768px) {
    #hero h1 {
      margin-left: 30px; } }

#main {
  margin-top: 90px; }
  #main .intro {
    margin-bottom: calc(90px / 2); }
    #main .intro p {
      white-space: pre;
      text-wrap: wrap; }
  #main #news {
    display: flex;
    flex-direction: column-reverse;
    gap: 40px;
    margin: calc(90px) 0;
    position: relative; }
    #main #news::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: calc(90px / -2);
      border-top: 1px solid #4C4C4C;
      opacity: .3; }
    #main #news .news-item p {
      white-space: pre;
      text-wrap: wrap;
      margin: 0; }

#contact {
  margin-top: calc(90px + 3rem);
  margin-bottom: calc(1.5 * 90px);
  position: relative; }
  #contact::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -30px;
    border-top: 1px solid #4C4C4C;
    opacity: .3; }

footer {
  background-color: #F6F6F6; }
  footer img {
    max-width: 200px;
    margin-top: 8px; }
