/* Customized CSS */
/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v32-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v32-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v32-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v32-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/roboto-v32-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inria-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inria Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/inria-sans-v14-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inria-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inria Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/inria-sans-v14-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inria-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inria Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/inria-sans-v14-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


html, body * {
    padding: 0;
    
}
body {
  background-color: rgb(255, 255, 255) !important;
  font-family: 'Roboto' !important;
  font-size: 18px !important;
  color: #1d1d1b !important;
  overflow-x: hidden !important;
}
h1, h2, h3, h4, h5, h6, .text-deco, .navbar-brand {
  font-family: 'Inria Sans' !important;
}
.container {
  max-width: 1140px !important;
}

section {
  position: relative;
}
/* Farbschema-Einstellungen --/ color scheme settings /- */
.text-color {
  color: rgb(94, 59, 40) !important;
}

.bg-brown, 
#send,
.form-check-input:checked {
  background-color: rgb(94, 59, 40) !important;
}

.nv-over {
  background-color: rgb(94, 59, 40) !important;
  transition: all 0.4s ease-in-out;
}
.bg-color {
  background-color: rgb(235, 229, 225) !important;
}
.bg-color-hell {
  background-color: rgb(245, 243, 242) !important;
}

.border-color {
  border: 1px solid rgba(94, 59, 40, .6) !important;
}

.bg-figcaption {
  background: rgba(67, 79, 91, .9) !important;
}
.bg-transparent .bg-figcaption {
  background: rgba(67, 79, 91, .65) !important;
}
.bg-footer {
  background-color: rgb(94, 59, 40) !important;
}

/* ----------------------------------------------------- */
.navbar:not(#ebFrontEndFrame .navbar) {
  width: 100% !important;
  transition: all 0.9s ease-in-out;
  background-color: rgb(94, 59, 40) !important;
  z-index: 1600 !important;
  
}
a.nav-link {
  position: relative !important;
  padding: .5rem .65rem !important;
  text-transform: uppercase;
  font-family: 'Inria Sans' !important;
  font-size: 1.25rem !important;
}
a.nav-link:hover, a.nav-link.active {
  font-weight: 600 !important;
  background: rgb(148, 18, 8);
  color: rgb(255, 255, 255)  !important;
}
a.nav-link.active::after,
a.nav-link:hover::after {
  position: absolute;
  content: "";
  width: 100%;
  bottom: -5px;
  height: 5px;
  left: 0;
  background: rgb(148, 18, 8);
  z-index: 1560;
}
.navbar-toggler, .navbar-toggler:focus {
  border: 0 !important;
  box-shadow: none !important;
}
.navbar-toggler-icon {
  background-image: none !important;
  /* background-image: url("../images/navbar-toggler.png") !important; */
}
.navbar-toggler .bi {
  font-size: 2.0rem !important;
  font-weight: bold !important;
}
.offcanvas {
  background-color: #404F5C !important;
}
.offcanvas-header .btn-close{
  background-image: none !important;
  /* background-image: url("../images/navbar-close.png") !important; */
}
.offcanvas-top {
  top: 60px !important;
}
/*.navbar-brand {
  margin-left: 10%;
}*/
img.logo-base {
  width: 160px !important;
  opacity: 0;
}
img.logo {
  /*position: absolute;*/
  width: 380px;
  transition: all 0.6s ease-in-out;
}
.logo-mobil {
  position: fixed;
  top: 0;
  left: 0;
  background: white;
  z-index: 1610;
}
.logo-mobil .navbar-brand img {
    width: 180px !important;
}
/*---- Startseite Carousel -------------- */
#bogen_top {
  position: relative;
  margin-top: -10%;
  z-index: 1560 !important;
}
#bogen_unten {
  margin-top: -5%;
}

.carousel {
    overflow: hidden !important;
    position: relative;
}
.carousel-images {
  
    display: flex;
    transition: transform 0.5s ease;
}
.button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(255, 255, 255, 0.8);
    border: none;
    font-size: 2.5rem !important;
    cursor: pointer;
}
.button-left {
    left: 7px;
}
.button-right {
    right: 7px;
}

.btn-fewo {
  background:rgb(148, 18, 8) !important;
  padding: .75rem 1.0rem !important;
}

#home5 {
  background: url(../images/hg_start_bottom.jpg) no-repeat center;
  background-size: cover;
}

.img-scale:hover img {
  transition: .6s;
  transform: scaleY(1.07);
}
.img-scale-right:hover img {
  transition: 1.2s;
  transform: translate(10px, -10px);
}
.img-scale:not(:hover) img {
  transition: .6s;
}

#preise img.card-img-top {
  max-height: 90px;
  width: auto !important;
}

.accordion {
  --bs-accordion-bg: transparent !important;
}
.accordion-button {
  padding: .75rem 1.0rem !important;
  background: transparent !important;
  /*background: rgb(95, 109, 122) !important;
  color: #ffffff !important;*/
}

.accordion-button:not(.collapsed) {
  background-color: rgba(95, 109, 122, .6) !important;
  color: rgb(255, 255, 255, .9) !important;
}

.accordion-flush > .accordion-item {
  border-bottom: 1px solid rgb(255, 255, 255) !important;
}

.accordion-button:not(.collapsed)::after {
  filter: invert(100%) !important;
}

#leistungen figure a:hover img {
  transition: .7s ease-in-out;
  filter: grayscale(.75);
}
/* ----- Taste scroll-Top ----- */
.scrollup {
    position: fixed;
    bottom: 70px;
    right: 30px;
    background: rgba(0, 0, 0, .5) !important;
    color: rgb(255, 255, 255);
    cursor: pointer;
    z-index: 1600;
}
.scrollup:hover, 
.scrollup:focus,
.scrollup:active {
    background: rgba(94, 59, 40, .7) !important;
}
#sidebar {
  width: 270px;
  background: transparent;
  z-index: 1600;
  transition: .7s;
}
.sidebar-out {
  left: -130px;
  transition: .7s;
}

.fst1 {
  font-size: 20px !important;
}
.fst2 {
  font-size: 22px !important;
}
.fst3 {
  font-size: 24px !important;
}

.people-icon {
  font-size: 5rem !important;
}
.gallery-item:not(.ohne_deco) a:before {
  position: absolute;
  content: "";
  width: calc(100% - 36px);
  height: calc(100% - 32px);
  top: 16px;
  left: 18px;
  background: rgba(0, 0, 0, .5);
  display: none;
}
.gallery-item:not(.ohne_deco) a:after {
  position: absolute;
  content: "";
  width: 57px;
  height: 57px;
  top: 16px;
  right: 18px;
  background: rgb(252, 71, 54);
  display: none;
}
.gallery-item:not(.ohne_deco) a span {
  position: absolute;
  top: 16px;
  right: 27px;
  font-size: 2.5rem;
  z-index: 1580;
  display: none;
}
.gallery-item:not(.ohne_deco) a:hover:before,
.gallery-item:not(.ohne_deco) a:hover:after,
.gallery-item:not(.ohne_deco) a:hover span {
  display: block;
}
.gallery-item:not(.ohne_deco) div {
  position: absolute;
  width:100%;
  z-index: 1580;
  display: none !important;
  font-size: .9rem;
}
.gallery-item:not(.ohne_deco):hover div {
  display: block !important;
}
.gallery-item:not(.ohne_deco) div p {
  width: calc(100% -36px);
  text-align: center;
  margin-bottom: 0 !important;
}
.glightbox-clean .gslide-description {
  background: transparent !important;
}
.glightbox-clean .gdesc-inner {
  padding: 1.0rem 1.0rem 0rem 1.0rem !important; 
}
.glightbox-clean .gslide-title {
  color: #ffffff !important;
}
.g-maps img {
  max-width: 40px;
}

#kontakt .link-light:hover {
  text-decoration: underline !important;
}
#kontakt1 img.map-button {
  margin-bottom: -7% !important;
}

#formAbfrage {
  transition: .7s ease-in-out;
}
#formAbfrage .form-control,
#formAbfrage .form-select,
#formAbfrage .form-check-input,
.btn-outline-secondary {
  border-radius: 3px !important;
  background-clip: border-box !important;
}
textarea.form-control {
  max-height: 77px !important;
}
#formAbfrage #Webseite {
  display: none !important;
}
.flex-wrap-ohne {
  flex-wrap: nowrap !important;
}
#formAbfrage select#Zeitwahl {
  min-width: 125px !important;
}
#send-alert, #fehler-alert {
    display: none;
    max-height: 70px;
    /*
    left: 1.0rem;
    right: 1.0rem;
    bottom: .5rem;
    */
}

::-webkit-input-placeholder {
  font-size: 13px;
}
::-moz-placeholder {
  font-size: 13px;
}
:-ms-input-placeholder {
  font-size: 13px;
}
::placeholder {
  font-size: 13px;
}

footer {
  margin-bottom: 0rem;
}
footer .card {
  max-width: 450px;
  margin: 0 auto;
  background: transparent !important;
  border: none !important;
}
footer .card-footer {
  background: transparent !important;
  border-top: none !important;
}

/* ------------------------------------- */

@media screen and (max-width: 1400px){
  
}

@media screen and (max-width: 992px){
  .offcanvas-top {
    background-color: rgb(94, 59, 40) !important;
    
  }
  .offcanvas-top.show {
    height: 400px !important;
  }
  #offcanvasDarkNavbar .nav-link {
    padding: .5rem 1.0rem !important;
    color: #ffffff !important;
  }
  #offcanvasDarkNavbar .nav-link:hover, #offcanvasDarkNavbar .nav-link.active {
    font-weight: 500;
  }
  
  .nv-over {
    background-color: rgb(94, 59, 40) !important;
  }
 
  footer {
    margin-bottom: 3.9rem;
  }
}

@media screen and (max-width: 768px){
  #aktuelles .w-50 {
    width: 100% !important;
  }
  #carousel.px-5 {
    padding: 0 1.0rem !important;
  }
  .button {
    font-size: 2rem !important;
  }
  .button-left {
    left: 0px;
  }
  .button-right {
      right: 0px;
  }
  .gallery-item:not(.ohne_deco) div {
    display: block !important;
    background: rgba(0, 0, 0, .6);
  }
  .glightbox-clean .gnext {
    top: 45% !important;
    right: 5px !important;
  }
  .glightbox-clean .gprev {
    top: 45% !important;
    left: 5px !important;
  }
  #preise .card, #umgebung .row .col {
    border: 0 !important;
  }
  footer {
    margin-bottom: 3.8rem;
  }

  .footer-menu {
    max-width: 120px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 576px){

  figcaption h1 {
    font-size: 1.4rem !important;
  }
  figcaption h4 {
    font-size: .87rem !important;
  }
  .start-titel-text h1 {
    font-size: 1.0rem !important
  }
  .start-titel-text h2 {
    font-size: .9rem !important
  }
  .img-scale:hover {
    transition: 1.2s;
    transform: translate3d(7px,7px,7px);
  }

  footer {
    margin-bottom: 0;
  }
  #home5 {
    background: url(../images/hg_start_bottom.jpg) no-repeat center;
    background-size: 1600%;
  }
}

@media screen and (max-width: 420px) {

}