/* playfair-display-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: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  src: url('/fileadmin/layout/fonts/playfair-display-v40-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}



html {
    font-family: ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";
    font-feature-settings: normal;
    font-variation-settings: normal;
}

.h1 {
    font-size: 3.5rem;
}
@media (min-width: 768px) {
    .h1 {
        font-size: 4.0rem;
    }
}
@media (min-width: 1400px) {
    .h1 {
        font-size: 4.5rem;
    }
}

.h2-start {
    color: #318160;
}

.mobile-menu {
    flex-basis: 100%;
}

@media (min-width: 992px) {
    .mobile-menu {
        flex-basis: auto;
    }
}

/*nav {
    background-color: #ffffff;
    }*/

    .btn-primary {
        background-color: #318160;
        border: #318160;
    }
    
    .btn-primary:hover {
        background-color: #318160;
        border: #318160;
    }
    
    /* Menü */
    
    .btn-language {
        background-color: #ffffff;
        border: 1px solid #e7e7e7;
        border-radius: 10px;
        padding: 8px 13px;
        transition: background-color 0.3s ease, border-color 0.3s ease;
    }
    
    .btn-language .icon {
        width: 17px;
        height: 17px;
        color: #000;
        transition: color 0.3s ease;
    }
    
    .btn-language:hover {
    background-color: #228ec3;
    border: 1px solid #e7e7e7;
    border-radius: 10px;
}

.btn-language:hover .icon {
    color: #ffffff;
}

@media (min-width: 1200px) {
  .container-nav {
    padding-left: 110px;
    padding-right: 110px;
  }
}
@media (min-width: 1400px) {
  .container-nav {
    padding-left: 210px;
    padding-right: 210px;
  }
}

svg {
    vertical-align: middle;
    padding-bottom: 1px;
}







.nav-link:hover,
.nav-link.active {
    background-color: #228ec3;
    color: #ffffff;
    border-radius: 10px;
}

.nav-link:active {
    background-color: #318160;
    color: #ffffff;
    border-radius: 10px;
}

.dropdown-item:hover {
    background-color: #228ec3;
    color: #ffffff;
}


/* Scroll-Down-Mouse-Animation */

.scroll-indicator {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
}

.scroll-mouse {
    width: 28px;
    height: 48px;
    border: 2px solid rgba(255, 255, 255, 0.75);
    border-radius: 999px;
    position: relative;
    display: inline-block;
    animation: scrollMouseSpring 1.8s cubic-bezier(.28, .84, .42, 1) infinite;
}

.scroll-wheel {
    width: 4px;
    height: 10px;
    background-color: rgba(255, 255, 255, 0.85);
    border-radius: 999px;
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
}

@keyframes scrollMouseSpring {
    0% {
        transform: translateY(0);
    }
    
    25% {
        transform: translateY(-13px);
    }
    
    50% {
        transform: translateY(-10px);
    }
    
    75% {
        transform: translateY(-13px);
    }
    
    100% {
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .scroll-mouse {
        animation: none;
    }
}




/* Footer */

.h4-footer {
    font-weight: bold;
}

.ul-footer {
    list-style-type: none;
    padding-left: 0;
}

.faded {
    color: #b6bcb9;
}

.insta-link {
    text-decoration: none;
    color: #ffffff;
}
.insta-link:hover {
    color: #b6bcb9;
}

.footer-link {
    text-decoration: none;
    color: #b6bcb9;
}
.footer-link:hover {
    color: #ffffff;
}

hr {
    color: #b6bcb9;
}

.mt-85px {
    margin-top: 85px;
}

footer {
    color: white;
    background-color: #2b3b33;
}

/* Slider stabil + runde Ecken */
#campingSlider {
    border-radius: 20px;
    overflow: hidden;
}

#campingSlider .carousel-inner {
    border-radius: 20px;
    overflow: hidden;
}

/* verhindert das "hoch/runter springen" */
#campingSlider .carousel-item {
    height: 320px;
}

@media (min-width: 992px) {
    #campingSlider .carousel-item {
        height: 500px;
    }
}

@media (min-width: 1200px) {
    #campingSlider .carousel-item {
        height: 800px;
    }
}

/* Bilder sauber füllen */
#campingSlider .carousel-item img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    display: block;
}

.img-round-border {
    border-radius: 10px;
}

/* header bereich */

.header-img {
    background-image: url('/fileadmin/layout/img/header_640.webp'); 
    background-size: cover; 
    background-position: center;
    height: 550px;
}

@media (min-width: 992px) {
    .header-img {
        background-image: url('/fileadmin/layout/img/header_1280.webp'); 
        background-size: cover; 
        background-position: center;
        height: 700px;
    }
}

@media (min-width: 1400px) {
    .header-img {
        background-image: url('/fileadmin/layout/img/header_1920.webp'); 
        background-size: cover; 
        background-position: center;
        height: 950px;
    }
}

.dim {
    background-color: rgba(0,0,0,0.8);
}

.header-text-box {
    border-radius: 10px; 
    background-color: rgba(62, 39, 35, 0.7); 
    color: rgb(212, 165, 116);
}

.header-text-box p {
    font-size: larger;
}

/* Button */
.btn-book {
    background-color: #318160;
    color: white;
    text-decoration: none;
    border-radius: 999px;
    padding: 12px 30px;
    font-weight: 600;
    display: inline-block;
}

.btn-booking {
    border-radius: 40px; 
    font-size: large;
}

/* List styling */
ul {
    list-style: none; 
    padding-left: 0;
}

/* Svg styling */
.checkmark {
    color: #318160;
    margin-top: 6px;
}

/* Boxen */
.box-start {
    background-color: #f1f4f2; 
    border: none;
    border-radius: 20px;
}

.box-prices {
    background-color: #f6f2e9; 
    border: none; 
    border-radius: 20px;
}

.box-summer {
    background-color: #e6efeb; 
    border-color: #b8d3c8;
}

.h3-summer {
    color: #318160;
}

.box-winter {
    background-color: #e4f0f5; 
    border-color: #b3d7e8;
}

.h3-winter {
    color: #228ec3;
}

.box-offer {
    border-radius: 24px; overflow:hidden;
}

.box-offer img {
    height:267px; object-fit:cover;
}

.h3-offer {
    font-weight: 600;
}

.price-offer-1 {
    color:#318160;
}

.price-offer-2 {
    color:#228ec3;
}

.box-extra {
    background:#f0f6f8; 
    border-color:#b3d7e8;
}

.badge-extra {
    background:#c55c2d;
}

.svg-extra {
    background:#eaf4fa;
}

.price-extra {
    color: #3d9cca;
}

.box-special-offers {
    background:#f3f7f4; 
    border-color:#b9d7c3;
}

.badge-special-offers {
    background:#318160;
}

.box-special-offers ul {
    color:#2f7d59; 
    font-size:1.5rem;
}

.box-round {
    background-color: #eaf2ef; 
    border: none;
    border-radius: 100px;
    max-width: 115px;
}

.svg-kulinarisch {
    background-color: #e0ece8;
    max-width: 70px;
}

/* Images */
.img-round {
    border-radius: 20px;
}