body {
  font-family: 'Fira Sans', sans-serif;
}
.navbar {
  border-radius: 0.3rem;
  background-color: #fac200 !important;
  line-height: 2.5;
  margin: 0 15px;
  background-image: linear-gradient(to top, #fac200, #fbd450);
}
.navbar .nav-item {
  padding: 0 20px;
}
.navbar .nav-item:not(:first-child) {
  border-left: 1px solid rgba(0, 0, 0, 0.05);
}
.navbar-light .navbar-nav .nav-link {
  color: black;
}
.logo {
  margin: 0 2rem 2rem 0;
  border: 1rem solid white;
  border-radius: 0 0 1rem 1rem;
}
.top-info i {
  padding: 2rem 0 1rem 0;
  font-size: 2rem;
  color: #fac200;
  display: block;
}
@media (max-width: 991px) {
  .top-info i {
    padding: 1rem 0 0.5rem 0;
    font-size: 1rem;
  }
}
.main .bg-picture {
  height: 100vh;
  width: 100vw;
  background-image: url("img/main.jpg");
  background-size: cover;
  background-position: center center;
  position: fixed;
  top: 0;
  z-index: -1;
}
.main .container {
  min-height: 80vh;
}
.main .container h1 {
  color: white;
  text-shadow: 0.1rem 0.1rem black;
  margin-top: 5rem;
}
.main .container p.lead {
  border: 0.1rem solid white;
  border-radius: 0.3rem;
  background: rgba(255, 255, 255);
  padding: 1rem;
  color: black;
  margin-top: 3rem;
}
#cookie-info {
  display: none;
  position: fixed;
  padding: 7px;
  font-size: 14px;
  text-align: center;
  border-top: 1px solid lightgray;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: white;
}
#footer {
  padding: 4rem 0 2rem 0;
  background: #eee !important;
  border-top: 0.1rem solid #fac200;
}
#footer h5 {
  padding-left: 10px;
  border-left: 3px solid #fac200;
  padding-bottom: 6px;
  margin-bottom: 20px;
  color: black;
}
@media (max-width: 767px) {
  #footer h5 {
    padding-left: 0;
    border-left: transparent;
    padding-bottom: 0;
    margin-bottom: 10px;
  }
}
#footer a {
  color: black;
  text-decoration: none !important;
  background-color: transparent;
}
#footer ul.quick-links li {
  padding: 3px 0;
  -webkit-transition: 0.5s all ease;
  -moz-transition: 0.5s all ease;
  transition: 0.5s all ease;
}
#footer ul.quick-links li a {
  color: black;
}
#footer ul.quick-links li a i {
  color: #fac200;
  margin-right: 5px;
}
#footer ul.quick-links li:hover {
  padding: 3px 0;
  margin-left: 5px;
}
#footer ul.quick-links li:hover a {
  color: #fac200;
}
#footer p a:hover {
  color: #fac200;
}
section#page {
  padding: 4rem 0 2rem 0;
}
section#page .container h1 {
  color: black;
  border-bottom: 0.15rem solid #fac200;
  padding-bottom: 0.5rem;
  margin-bottom: 3rem;
}
section#page .container h1 i {
  color: #fac200;
}
section#page .container h2 {
  color: black;
  border-left: 0.5rem solid #fac200;
  padding-left: 1rem;
}
section#page .container div.empty-page-info {
  min-height: 300px;
}
section#page .container div.row {
  border-bottom: 1px dotted #eee;
  margin-bottom: 3rem;
  padding-bottom: 1rem;
}
section#page .container div.row a.news-link {
  margin-bottom: 1rem;
  display: inline-block;
}
section#page .container div.row div {
  margin-top: 1rem;
}
section#page .container div.row div img {
  max-width: 100%;
  border-radius: 1rem;
  border: 0.5rem solid #eee;
}
section#page .container div.row:last-child {
  border-bottom: none;
  margin-bottom: 1rem;
}
section#page .container div.row:nth-child(odd) img {
  margin: 0 0 1rem 1rem;
}
section#page .container div.row:nth-child(even) img {
  margin: 0 1rem 1rem 0;
}
section#realizations {
  padding: 4rem 0 2rem 0;
}
section#realizations .container h1 {
  color: black;
  border-bottom: 0.15rem solid #fac200;
  padding-bottom: 0.5rem;
  margin-bottom: 3rem;
}
section#realizations .container h1 i {
  color: #fac200;
}
section#realizations .container div.empty-page-info {
  min-height: 300px;
}
section#realizations .container a {
  display: block;
  margin-bottom: 1rem;
  border-radius: 1rem;
  border: 0.5rem solid #eee;
  height: 20rem;
  position: relative;
  background-size: cover;
}
section#realizations .container a span {
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.7);
  padding: 1rem;
  text-align: center;
  color: black;
  text-shadow: 1px 1px #eee;
  border-radius: 0 0 0.5rem 0.5rem;
}
section#realizations .container a:hover {
  border-color: #fac200;
}
section#realizations .container a:hover span {
  background-color: white;
}
section#single-page {
  padding: 4rem 0 2rem 0;
}
section#single-page .container h1 {
  color: black;
  border-bottom: 0.15rem solid #fac200;
  padding-bottom: 0.5rem;
  margin-bottom: 3rem;
}
section#single-page .container h1 i {
  color: #fac200;
}
section#single-page .container h2 {
  color: black;
  border-left: 0.5rem solid #fac200;
  padding-left: 1rem;
}
section#single-page .container div.row {
  border-bottom: 1px dotted #eee;
  margin-bottom: 3rem;
  padding-bottom: 1rem;
}
section#single-page .container div.row a.news-link {
  margin-bottom: 1rem;
  display: inline-block;
}
section#single-page .container div.message-gallery {
  margin-top: 1rem;
}
section#single-page .container div.message-gallery a img {
  max-width: 100%;
  border-radius: 0.5rem;
  border: 0.25rem solid #eee;
  margin: 0 1rem 1rem 0;
}
@media (min-width: 768px) {
  section#single-page .container div.message-gallery a img {
    max-width: 47%;
  }
}
@media (min-width: 992px) {
  section#single-page .container div.message-gallery a img {
    max-width: 31%;
  }
}
section#single-page .container div.message-gallery a:hover {
  text-decoration: none;
}
section#single-page .container div.message-gallery a:hover img {
  border: 0.25rem solid #fac200;
}
section#single-page .container div.back-link {
  border: none;
}
section#contact-page {
  padding: 4rem 0 2rem 0;
}
section#contact-page .container h1 {
  color: black;
  border-bottom: 0.15rem solid #fac200;
  padding-bottom: 0.5rem;
  margin-bottom: 4rem;
}
section#contact-page .container h1 i {
  color: #fac200;
}
section#contact-page .container h2 i {
  color: #fac200;
}
section#contact-page .container div.row {
  text-align: center;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
section#contact-page .container div.row > div {
  margin-bottom: 1rem;
}
section#contact-page .container div.row > div p {
  font-size: 1.5rem;
}
section#contact-page .container #map {
  width: 100%;
  height: 400px;
}
section#contact-page .container .contact-form {
  text-align: left;
  padding: 2rem;
  border-radius: 2rem;
  border: 0.2rem solid #fac200;
}
section#contact-page .container .contact-form h5 {
  border-bottom: 1px solid #eee;
  padding-bottom: 0.25rem;
  margin-bottom: 1rem;
}
section#contact-page .container .contact-form h5 i {
  color: #fac200;
}
section#contact-page .container .contact-form .error {
  color: orangered;
  border-color: orangered;
}
section#contact-page .container .contact-form .alert-info,
section#contact-page .container .contact-form .alert-danger {
  padding: 1rem;
  border-radius: 1rem;
  color: black;
  margin-bottom: 1rem;
}
section#contact-page .container .contact-form .alert-info p,
section#contact-page .container .contact-form .alert-danger p {
  font-size: 1rem;
  margin: 0;
}
