:root {
    --narrow: 1140px !important;
    --shadow: 0px 20px 40px -10px rgba(0, 0, 0, 0.15);
    --primaryhover: var(--dark) !important;
    --blue: #0b2f70;
    --darkblue: #031735;
    --black: #000000;
    --red: #d73534;
    --redhover: #941b1b;
}

:is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
    font-weight: 400 !important;
}

.btn {
    font-weight: 600 !important;
    text-shadow: none !important;
}

.btn.btn-secondary {
    padding: .85rem 2.25rem!important;
}

.divider::after {
    content: '';
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    background: #ffffff;
    bottom: -1px;
    height: 75px;
    -webkit-clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
    clip-path: polygon(100% 0%, 0% 100%, 100% 100%);
}

.rounded,
.rounded img {
    border-radius: 0;
}

.bg-blue {
    background-color: var(--blue);
}

.bg-darkblue {
    background-color: var(--darkblue);
}

.overlay-custom {
    background-color: rgb(0 52 111 / 85%);
}

.overlay-primary {
    background: linear-gradient(0deg, rgba(0,0,0,0.3477591720281863) 0%, rgba(0,0,0,0.6474790599833684) 80%, rgba(0,0,0,0.7511205165660014) 100%) !important;
}

.z-index-2 {
    z-index: 2;
    position: relative;
}

.red-btn .btn-primary {
    background-color: var(--red);
    border-color: var(--red);
}

.red-btn .btn-primary:hover,
.red-btn .btn-primary:focus,
.red-btn .btn-primary:active {
    background-color: var(--redhover);
    border-color: var(--redhover);
}

select.form-control:not([size]):not([multiple]) {
    height: auto !important;
}

/*slider styles*/
.atf-slider-elem {
    cursor: default !important;
}

/*admin-styles*/
.admin-page-settings {
    font-size: 1rem;
}

@media (prefers-reduced-motion: no-preference) {

    .fade-elem,
    .article-list-hl-block .item,
    .article-list-archive-block .item,
    .image-text-mosaic-block .image-content-item,
    .highlightbox-bg-image-block .hlbox,
    .block-staffListSelect .content {
        opacity: 0;
        transition: transform 2000ms ease, opacity 0.9s;
        transform: translateY(150px);
    }
    
    .fade-elem.loaded,
    .article-list-hl-block .item.loaded,
    .article-list-archive-block .item.loaded,
    .image-text-mosaic-block .image-content-item.loaded,
    .highlightbox-bg-image-block .hlbox.loaded,
    .block-staffListSelect .content.loaded {
        opacity: 1;
        transform: translateY(0);
        animation-delay: 0s;
    }

}

@media (min-width: 1199px) {

    .divider::after {
        height: 150px;
    }

}

@media (min-width: 1680px) {

    body,
    p {
        font-size: 1.2rem !important;
    }

    .h1, 
    h1 {
        font-size: 3rem !important;
    }

    .h2, 
    h2 {
        font-size: 2.5rem !important;
    }

    .h3, 
    h3 {
        font-size: 2.25rem !important;
    }

    .h4, 
    h4 {
        font-size: 1.75rem !important;
    }

    .h5, 
    h5 {
        font-size: 1.5rem !important;
    }

}

@media (max-width: 1279px) {

    .h3, 
    h3 {
        font-size: 1.5rem !important;
    }

    .h4, 
    h4 {
        font-size: 1.4rem !important;
    }

    .h5, 
    h5 {
        font-size: 1.3rem !important;
    }

}

@media (max-width: 1199px) {
    .fixed-bg {
        background-attachment: scroll !important;
    }
}

/* Responsive */
@media screen and (max-width: 479px) {

    h1, 
    .h1 {
        font-size: 2rem !important;
    }

    h2, 
    .h2 {
        font-size: 1.5rem !important;
    }

    .h3, 
    h3 {
        font-size: 1.3rem !important;
    }

    .h4, 
    h4 {
        font-size: 1.25rem !important;
    }

    .h5, 
    h5 {
        font-size: 1.2rem !important;
    }

    .btn {
        padding: 0.85rem 1rem !important;
    }

    .cookie-settings .cookie-btn {
        padding: 0.5rem 1rem !important;
    }

}

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

    h1, 
    .h1 {
        font-size: 1.5rem !important;
    }

    h2, 
    .h2 {
        font-size: 1.3rem !important;
    }

    h3, 
    .h3 {
        font-size: 1.25rem !important;
    }

    .h4, 
    h4 {
        font-size: 1.2rem !important;
    }

    .h5, 
    h5 {
        font-size: 1.15rem !important;
    }

}