:root {
    --bs-primary: #3f51b5;
    --bs-primary-rgb: 63, 81, 181;
    --bs-link-color-rgb: 63, 81, 181;
    --sz-primary-darker: #3849a2;
    --sz-navbar-height: 57px;
    --sz-spacer: 1rem;
}

body {
    min-height: 100vh;
}

.accordion {
    --bs-accordion-active-color: var(--bs-white);
    --bs-accordion-active-bg: var(--bs-primary);
}

.btn-primary {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: var(--sz-primary-darker);
    --bs-btn-hover-border-color: var(--sz-primary-darker);
    --bs-btn-active-bg: var(--sz-primary-darker);
    --bs-btn-active-border-color: var(--sz-primary-darker);
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.table-primary {
    --bs-table-color: var(--bs-white);
    --bs-table-bg: var(--bs-primary);
    --bs-table-border-color: #6574c4;
    --bs-table-hover-bg: #4d5ebb;
    --bs-table-hover-color: var(--bs-white);
}

.navbar {
    transition: 0.5s all ease;
    border-bottom: 1px solid transparent;
}

.navbar.bg-primary {
    border-color: var(--sz-primary-darker);
}

.navbar.transparent {
    border-color: var(--bs-white);
    background-color: transparent !important;
}

.nav-link {
    color: var(--bs-white);
}

.nav-icon {
    font-size: 1.5rem;
}

.nav-icon .nav-link {
    margin-left: 1rem;
}

.nav-icon .nav-link>i {
    display: block;
}

.landing-page {
    background-image: url('/images/ebba_brahe.jpg');
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

@media (max-width: 1124px) and (max-height: 843px) {
    .landing-page {
        background-image: url('/images/ebba_brahe_small.jpg');
    }
}

.landing-page.background-attachment-initial {
    background-attachment: initial;
}

.header-content-bg {
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(3px);
    margin-left: calc(-0.5 * var(--bs-gutter-x));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-top: var(--sz-navbar-height);
}

body.home .landing-page {
    min-height: 100vh;
}

body.home .landing-page .header-content-bg {
    background-color: rgba(0, 0, 0, 0.3);
    margin-top: 100px;
    padding-top: 0;
}

.website-title {
    font-size: 6vw;
    line-height: 1;
}

.header-hr {
    width: 80%;
}

.subline {
    font-size: 1.2rem;
}

main {
    margin-top: var(--sz-spacer);
}

.home main {
    margin-top: 0;
}

.home #kontakt a.text-light {
    margin-left: calc(var(--bs-body-font-size) + 0.5rem);
}

.home #kontakt .fa-solid {
    position: absolute;
    top: 0;
    left: calc(calc(var(--bs-body-font-size) * -1) - 0.5rem);
    line-height: var(--bs-body-line-height);
}

/* Breakpoint md */
@media (max-width: 767.98px) {
    .navbar .nav-item.icon:first-child .nav-link {
        margin-left: 0;
    }
}

/* Breakpoint lg */
@media (min-width: 992px) {
    .website-title {
        font-size: 4rem;
    }

    .subline {
        font-size: 1.4rem;
    }
}
