body {
    background-color: #ffffff;
    overflow-x: hidden;
    outline-color: transparent !important;
    transition: none !important;
    word-break: normal !important;
    margin: 0 !important;
}

.wow {
    visibility: hidden;
}

h1, .h1 {
    font-size: calc(3rem + 1.5vw);
    line-height: 1em;
}

h2, .h2 {
    font-size: calc(2.5rem + 1vw);
    line-height: 1em;
}

h3, .h3 {
    font-size: calc(2rem + 0.5vw);
    line-height: 1em;
}

h4, .h4, .navbar .nav-link {
    font-size: calc(1.5rem + 0.25vw);
    line-height: 1em;
}

h1, .h1, 
h2, .h2, 
footer h5, 
footer .h5, 
.news-card 
.card-title, 
.navbar .nav-link, 
.modal-title {
    font-family: 'Palo Lotto', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 900 !important;
}

h3, .h3, h4, .h4, h5, .h5, h6, .h6, .btn, form label:not(.form-check-label) {
    font-family: 'Palo', sans-serif !important;
    font-weight: bold;
}

p *, .text-content *, footer .nav-link, form label.form-check-label {
    font-family: 'Palo', sans-serif !important;
    font-weight: 500 !important;
}

.navbar .nav-link:hover {
    opacity: 1 !important;
}

section {
    overflow: hidden;
}

.text-primary {
    color: #ee3124 !important;
}

.text-secondary {
    color: #ffffff !important;
}

.btn-pill, .modal-content {
    border-radius: 25px;
}

.btn-primary, .btn-primary:hover, .btn-primary:active, .btn-primary:visited {
    background-color: #ee3124 !important;
    border-color: #ee3124 !important;
    color: #ffffff !important;
}

.btn-secondary, .btn-secondary:hover, .btn-secondary:active, .btn-secondary:visited {
    background-color: transparent !important;
    border-color: #ffffff !important;
    border-width: 3px !important;
    color: #ffffff !important;
}

.btn-secondary:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
}

.hero .btn-secondary {
    filter: drop-shadow(0px 0px 20px #000000);
}


.bg-primary {
    background-color: #ee3124 !important;
}

.bg-light {
    background-color: #FEEAE8 !important;
}

.slider-wrapper {
    position: relative;
    width: 100vw; /* Slider moet tot de rand van het scherm kunnen */
    margin-left: calc(-1 * (100vw - 100%) / 2); /* Verplaats de wrapper naar links zodat hij met container begint */
    padding-left: var(--bs-gutter-x, 1.5rem); /* Zorg dat de inhoud links aligned is met container */
    padding-right: 0; /* Geen padding rechts */
    box-sizing: border-box;
    overflow: hidden; /* voorkomt overspill van slides */
}

.vh-33 {
    height: 33vh;
}

.vh-50 {
    height: 50vh;
}

.vh-66 {
    height: 66vh;
}

.vh-75 {
    height: 75vh;
}

.bg-container {
    background-size: cover; 
    background-position: center center;
    position: absolute;
    width: 100%;
    overflow: hidden;
}

.bg-container::after {
    content: "";
    position: absolute;
    inset: 0; /* top:0;right:0;bottom:0;left:0; */
    background-image: inherit; /* same image */
    background-size: cover;
    background-position: center;
}

.card {
    border: none;
    overflow: hidden;
    border-radius: 25px;
}

.card-body {
    padding: 25px;
}

.news-card {
    border-radius: 0 !important;
    display: block;
}

.news-card .card-title,
.news-card .card-subtitle {
    text-transform: uppercase;
}

.news-card.bg-primary {
    background-image: linear-gradient(70deg, #85100d, #f64b33);
}

.news-image-mask,
.feature-image-mask {
    background-size: cover; 
    background-position: center center;
}

.news-image-mask {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 9999px;
    border-top-left-radius: 0;
    border-top-right-radius: 9999px;
    -webkit-box-shadow: 0 0 67px rgba(0, 0, 0, .5);
    box-shadow: 0 0 67px rgba(0, 0, 0, .5);
    overflow: hidden;
    width: 35vw;
    height: 50vh;
}


.feature-card.bg-primary, 
.modal-content.bg-primary {
    background-image: linear-gradient(70deg, #ee3124 0%, rgba(173, 32, 26, 1) 100%);
}

.feature-image-mask {
    border-bottom-left-radius: 9999px;
    border-bottom-right-radius: 9999px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    -webkit-box-shadow: 0 0 67px rgba(0, 0, 0, .5);
    box-shadow: 0 0 67px rgba(0, 0, 0, .5);
    overflow: hidden;
    height: 33vh;
    width: 100%;
}

footer .card {
    background: linear-gradient(202deg,rgba(173, 32, 26, 1) 0%, rgba(219, 35, 21, 1) 70%);
}

.swiper-outer {
    position: relative;
    padding-left: 60px;
    padding-right: 60px;
}

.swiper-nav::after {
    color: #f3b6b6;
    font-weight: 900;
}

.accordion-item {
    border: 0;
}

.accordion-header {
    border-left: 4px solid #ee3124;
    box-shadow: 0 3px 10px #0003;
    border-radius: 4px;
}

.accordion-button, .accordion-button:focus {
    outline: none !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    /*box-shadow: none !important;*/
}

.accordion-button:focus {
    border: none !important;
    box-shadow: rgba(238, 49, 36, 0.5) 0px 0px 0px 2px;

}
.accordion-button::after {
    transform: rotate(-90deg);
}

.video-play {
    width: 25%;
    height: auto;
    transform: translate(-50%, -50%);
    transition: all 0.1s ease-in-out;
}

.mp-iframe:hover .video-play {
    width: 30%;
    transition: all 0.1s ease-in-out;
}

.slide-up-text {
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
}

.slide-up-text span {
    display: inline-block;
    transform: translateY(100%);

    opacity: 0;

    animation-name: slideUp;
    animation-duration: 0.4s;
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;

    /* stagger */
    animation-delay: calc(var(--i) * 0.04s);
}

.back-to-top {
    background: linear-gradient(25deg,rgba(173, 32, 26, 1) 0%, rgba(219, 35, 21, 1) 70%) !important;
    border: none;
    color: white !important;
    border-radius: 50%;
    position: fixed;
    bottom: 85px;
    right: 20px;
    display: none;
    z-index: 999;
    font-size: 24px;
    text-align: center;
    line-height: 1;
    padding: 12px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

@keyframes slideUp {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@media only screen and (min-width: 992px) {
    .ratio-lg-1x1 {
        aspect-ratio: 1 / 1;
    }
}

@media only screen and (max-width: 1199px) {
    .news-card.bg-primary {
        background-image: linear-gradient(180deg,#85100d,#f64b33);
    }

    .news-image-mask {
        border-bottom-left-radius: 9999px;
        border-bottom-right-radius: 9999px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        -webkit-box-shadow: 0 0 67px rgba(0, 0, 0, .5);
        box-shadow: 0 0 67px rgba(0, 0, 0, .5);
        overflow: hidden;
        width: 100%;
        height: 35vh;
    }
}

@media only screen and (max-width: 767px) {
    .swiper-outer {
        padding-left: 0;
        padding-right: 0;
    }
}