:root {
    --bs-primary: #355e3b;
    --bs-green: #355e3b;
    --bs-primary-rgb: 53, 94, 59;
    --bs-font-sans-serif: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-body-font-family: Merriweather, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
    font-family: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

a {
    color: #355e3b;
}

    a:hover {
        color: #728e76;
    }

.table-primary {
    --bs-table-bg: #fde0d8;
    --bs-table-striped-bg: #f0d5cd;
    --bs-table-active-bg: #e4cac2;
    --bs-table-hover-bg: #eacfc8;
    border-color: #e4cac2;
}

.form-control:focus {
    border-color: #fab19d;
    box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.form-control:-ms-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-select:focus {
    border-color: #fab19d;
    box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.form-check-input:focus {
    border-color: #fab19d;
    box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.form-check-input:checked {
    background-color: #355e3b;
    border-color: #355e3b;
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #355e3b;
    border-color: #355e3b;
}

.form-switch .form-check-input:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fab19d'/%3e%3c/svg%3e");
}

.form-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.form-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.form-range::-webkit-slider-thumb {
    background-color: #355e3b;
}

    .form-range::-webkit-slider-thumb:active {
        background-color: #fcd0c4;
    }

.form-range::-moz-range-thumb {
    background-color: #355e3b;
}

    .form-range::-moz-range-thumb:active {
        background-color: #fcd0c4;
    }

.form-floating > .form-control:-ms-input-placeholder {
    color: transparent;
}

.form-floating > .form-control:not(:-ms-input-placeholder) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

    .form-floating > .form-control:not(:-ms-input-placeholder) ~ label {
        opacity: 0.65;
        transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    }

.btn {
    font-family: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    -moz-user-select: none;
}

    .btn-check:focus + .btn, .btn:focus {
        box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
    }

.btn-primary {
    background-color: #355e3b;
    border-color: #355e3b;
}

    .btn-primary:hover {
        background-color: #728e76;
        border-color: #728e76;
    }

    .btn-check:focus + .btn-primary, .btn-primary:focus {
        background-color: #728e76;
        border-color: #728e76;
        box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.5);
    }

    .btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {
        background-color: #728e76;
        border-color: #728e76;
    }

        .btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {
            box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.5);
        }

    .btn-primary:disabled, .btn-primary.disabled {
        background-color: #355e3b;
        border-color: #355e3b;
    }

.btn-outline-primary {
    color: #355e3b;
    border-color: #355e3b;
}

    .btn-outline-primary:hover {
        background-color: #355e3b;
        border-color: #355e3b;
    }

    .btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {
        box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.5);
    }

    .btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {
        background-color: #355e3b;
        border-color: #355e3b;
    }

        .btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {
            box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.5);
        }

    .btn-outline-primary:disabled, .btn-outline-primary.disabled {
        color: #355e3b;
    }

.btn-link {
    color: #355e3b;
}

    .btn-link:hover {
        color: #728e76;
    }

.dropdown-item.active, .dropdown-item:active {
    background-color: #355e3b;
}

.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
    background-color: #355e3b;
}

.nav-link {
    color: #355e3b;
}

    .nav-link:hover, .nav-link:focus {
        color: #728e76;
    }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: #355e3b;
}

.accordion-button:not(.collapsed) {
    color: #dc5834;
    background-color: #feefeb;
}

    .accordion-button:not(.collapsed)::after {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc5834'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    }

.accordion-button:focus {
    border-color: #fab19d;
    box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.page-link {
    color: #355e3b;
}

    .page-link:hover {
        color: #728e76;
    }

    .page-link:focus {
        color: #728e76;
        box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
    }

.page-item.active .page-link {
    background-color: #355e3b;
    border-color: #355e3b;
}

.alert-primary {
    color: #923b23;
    background-color: #fde0d8;
    border-color: #fcd0c4;
}

    .alert-primary .alert-link {
        color: #752f1c;
    }

.alert-info {
    color: #087990;
}

    .alert-info .alert-link {
        color: #066173;
    }

.alert-warning {
    color: #997404;
}

    .alert-warning .alert-link {
        color: #7a5d03;
    }

.progress-bar {
    background-color: #355e3b;
}

.list-group-item.active {
    background-color: #355e3b;
    border-color: #355e3b;
}

.list-group-item-primary {
    color: #923b23;
    background-color: #fde0d8;
}

    .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
        color: #923b23;
        background-color: #e4cac2;
    }

    .list-group-item-primary.list-group-item-action.active {
        background-color: #923b23;
        border-color: #923b23;
    }


.list-group-item-info {
    color: #087990;
}

    .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
        color: #087990;
    }

    .list-group-item-info.list-group-item-action.active {
        background-color: #087990;
        border-color: #087990;
    }

.list-group-item-warning {
    color: #997404;
}

    .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
        color: #997404;
    }

    .list-group-item-warning.list-group-item-action.active {
        background-color: #997404;
        border-color: #997404;
    }

.btn-close:focus {
    box-shadow: 0 0 0 0.25rem rgba(53, 94, 59, 0.25);
}

.btn-close:disabled, .btn-close.disabled {
    -ms-user-select: none;
}

.tooltip {
    font-family: "Merriweather", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.popover {
    font-family: "Merriweather", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.link-primary {
    color: #355e3b;
}

    .link-primary:hover, .link-primary:focus {
        color: #728e76;
    }

.border-primary {
    border-color: #355e3b !important;
}

.user-select-auto {
    -ms-user-select: auto !important;
}

.user-select-none {
    -ms-user-select: none !important;
}

html {
    height: 100%;
    scroll-padding-top: calc(4.5rem - 1px);
}

body {
    width: 100%;
    height: 100%;
}

.page-section {
    padding: 8rem 0;
}

.text-white-75 {
    color: rgba(255, 255, 255, 0.75) !important;
}

.btn-xl {
    padding: 1.25rem 2.25rem;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    border: none;
    border-radius: 10rem;
}

hr.divider {
    height: 0.2rem;
    max-width: 3.25rem;
    margin: 1.5rem auto;
    background-color: #355e3b;
    opacity: 1;
}

hr.divider-light {
    background-color: #fff;
}

#mainNav {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    background-color: #fff;
    transition: background-color 0.2s ease;
}

    #mainNav .navbar-brand {
        font-family: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
        font-weight: 700;
        color: #212529;
    }

    #mainNav .navbar-nav .nav-item .nav-link {
        color: #6c757d;
        font-family: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
        font-weight: 700;
        font-size: 0.9rem;
        padding: 0.75rem 0;
    }

        #mainNav .navbar-nav .nav-item .nav-link:hover, #mainNav .navbar-nav .nav-item .nav-link:active {
            color: #355e3b;
        }

        #mainNav .navbar-nav .nav-item .nav-link.active {
            color: #355e3b !important;
        }

@media (min-width: 992px) {
    #mainNav {
        box-shadow: none;
        background-color: transparent;
    }

        #mainNav .navbar-brand {
            color: rgba(255, 255, 255, 0.7);
        }

            #mainNav .navbar-brand:hover {
                color: #fff;
            }

        #mainNav .navbar-nav .nav-item .nav-link {
            color: rgba(255, 255, 255, 0.7);
            padding: 0 1rem;
        }

            #mainNav .navbar-nav .nav-item .nav-link:hover {
                color: #fff;
            }

        #mainNav .navbar-nav .nav-item:last-child .nav-link {
            padding-right: 0;
        }

        #mainNav.navbar-shrink {
            box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
            background-color: #fff;
        }

            #mainNav.navbar-shrink .navbar-brand {
                color: #212529;
            }

                #mainNav.navbar-shrink .navbar-brand:hover {
                    color: #355e3b;
                }

            #mainNav.navbar-shrink .navbar-nav .nav-item .nav-link {
                color: #212529;
            }

                #mainNav.navbar-shrink .navbar-nav .nav-item .nav-link:hover {
                    color: #355e3b;
                }
}

header.main-headline {
    padding-top: 10rem;
    padding-bottom: calc(10rem - 4.5rem);
    background: linear-gradient(to bottom, rgba(92, 77, 66, 0.8) 0%, rgba(92, 77, 66, 0.8) 100%), url("../img/header-bg.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-size: cover;
}

    header.main-headline h1, header.main-headline .h1 {
        font-size: 2.25rem;
    }

@media (min-width: 992px) {
    header.main-headline {
        height: 100vh;
        min-height: 40rem;
        padding-top: 4.5rem;
        padding-bottom: 0;
    }

        header.main-headline p {
            font-size: 1.15rem;
        }

        header.main-headline h1, header.main-headline .h1 {
            font-size: 3rem;
        }
}

@media (min-width: 1200px) {
    header.main-headline h1, header.main-headline .h1 {
        font-size: 3.5rem;
    }
}

#portfolio .container-fluid, #portfolio .container-sm, #portfolio .container-md, #portfolio .container-lg, #portfolio .container-xl, #portfolio .container-xxl {
    max-width: 1920px;
}

    #portfolio .container-fluid .portfolio-box, #portfolio .container-sm .portfolio-box, #portfolio .container-md .portfolio-box, #portfolio .container-lg .portfolio-box, #portfolio .container-xl .portfolio-box, #portfolio .container-xxl .portfolio-box {
        position: relative;
        display: block;
    }

        #portfolio .container-fluid .portfolio-box .portfolio-box-caption, #portfolio .container-sm .portfolio-box .portfolio-box-caption, #portfolio .container-md .portfolio-box .portfolio-box-caption, #portfolio .container-lg .portfolio-box .portfolio-box-caption, #portfolio .container-xl .portfolio-box .portfolio-box-caption, #portfolio .container-xxl .portfolio-box .portfolio-box-caption {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            width: 100%;
            height: 100%;
            position: absolute;
            bottom: 0;
            text-align: center;
            opacity: 0;
            color: #fff;
            background: rgba(53, 94, 59, 0.9);
            transition: opacity 0.25s ease;
            text-align: center;
        }

            #portfolio .container-fluid .portfolio-box .portfolio-box-caption .project-category, #portfolio .container-sm .portfolio-box .portfolio-box-caption .project-category, #portfolio .container-md .portfolio-box .portfolio-box-caption .project-category, #portfolio .container-lg .portfolio-box .portfolio-box-caption .project-category, #portfolio .container-xl .portfolio-box .portfolio-box-caption .project-category, #portfolio .container-xxl .portfolio-box .portfolio-box-caption .project-category {
                font-family: "Merriweather Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
                font-size: 0.85rem;
                font-weight: 600;
                text-transform: uppercase;
            }

            #portfolio .container-fluid .portfolio-box .portfolio-box-caption .project-name, #portfolio .container-sm .portfolio-box .portfolio-box-caption .project-name, #portfolio .container-md .portfolio-box .portfolio-box-caption .project-name, #portfolio .container-lg .portfolio-box .portfolio-box-caption .project-name, #portfolio .container-xl .portfolio-box .portfolio-box-caption .project-name, #portfolio .container-xxl .portfolio-box .portfolio-box-caption .project-name {
                font-size: 1.2rem;
            }

        #portfolio .container-fluid .portfolio-box:hover .portfolio-box-caption, #portfolio .container-sm .portfolio-box:hover .portfolio-box-caption, #portfolio .container-md .portfolio-box:hover .portfolio-box-caption, #portfolio .container-lg .portfolio-box:hover .portfolio-box-caption, #portfolio .container-xl .portfolio-box:hover .portfolio-box-caption, #portfolio .container-xxl .portfolio-box:hover .portfolio-box-caption {
            opacity: 1;
        }
