:root {
    --fusion-primary-rgb: 56, 179, 74;
    --fusion-primary: rgb(var(--fusion-primary-rgb));
    --fusion-primary-light: rgba(56, 179, 74, .5);
    --fusion-primary-dark: #004D00;
    --fusion-dark-grey: #44575C;
    --fusion-med-grey: #8292A0;
    --fusion-orange: #FE7A36;

    --bs-btn-color: rgb(255, 255, 255);
    --bs-btn-bg: var(--fusion-primary-rgb);
    --bs-btn-border-color: var(--fusion-primary-rgb);
    --bs-btn-hover-color: rgb(255, 255, 255);
    --bs-btn-hover-bg: var(--fusion-primary-rgb);
    --bs-btn-hover-border-color: var(--fusion-primary-rgb);
    --bs-btn-focus-shadow-rgb: 217, 164, 6;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: var(--fusion-primary-rgb);
    --bs-btn-active-border-color: var(--fusion-primary-rgb);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: var(--fusion-primary-rgb);
    --bs-btn-disabled-border-color: var(--fusion-primary-rgb);
    --bs-body-line-height: 1.5;
    font-size: 18px;
}

html {
    font-size: 22px;
}

/* X-Small	None	<576px
Small	sm	≥576px
Medium	md	≥768px
Large	lg	≥992px
Extra large	xl	≥1200px
Extra extra large	xxl	≥1400px */

.navbar {
    --bs-navbar-padding-y: 0 !important;
}

.navbar-brand .logo {
    height: 70px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-bottom: 0;
    line-height: 1;
    font-family: "kallisto", sans-serif;
    color: var(--fusion-dark-grey)
}

a.nav-link {
    font-family: "kallisto", sans-serif;
    color: var(--fusion-primary)
}

a.nav-link:hover {
    font-family: "kallisto", sans-serif;
    color: var(--fusion-dark-grey)
}


.hero-image {
    height: 40vh;
    background-size: cover;
    border-radius: 10px;
}

.blog-post-summary {
    cursor: pointer;
}

.post-summary-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    background-color: #000000;
    background-size: contain;
    background-position: center;
    border-radius: 10px;
    background-repeat: no-repeat;
}

.post-hero-image {
    width: 100%;
    aspect-ratio: 32 / 9;
    background-color: #000000;
    background-size: contain;
    background-position: center;
    background-size: contain;
    border-radius: 10px;
    background-repeat: no-repeat;
}

.blog-post-content {
    font-size: 18px;
}

.full-height-sans-header {
    min-height: calc(100vh - 70px - 70px);
}

.bg-accent {
    background-color: var(--fusion-dark-grey);
    color: white;
}

.bg-accent h1,
.bg-accent h2,
.bg-accent h3,
.bg-accent h4,
.bg-accent h5,
.bg-accent h6 {
    margin-bottom: 0;
    line-height: 1;
    font-family: "kallisto", sans-serif;
    color: #FFFFFF;
}

.font-fusion,
.font-fusion-primary {
    font-family: "kallisto", sans-serif;
}

.font-fusion {
    color: var(--fusion-dark-grey);
}

.font-fusion-orange {
    color: var(--fusion-orange);
}

.font-fusion-primary {
    color: var(--fusion-primary) !important;
}

.font-fusion-emphasis {
    font-family: "kallisto light", sans-serif;
    color: var(--fusion-dark-grey);
}

.bg-accent-primary-light {
    background-color: var(--fusion-primary-light);
}

.bg-accent-primary-dark {
    background-color: var(--fusion-primary-dark);
}

.feature i {
    font-size: 3rem;
    color: var(--fusion-primary);
    line-height: 1;
}

.feature.col {
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: right;
}

.align-p-right p {
    text-align: left;
}

.feature .icon {
    height: 4rem;
}

.feature h3 {
    margin-bottom: 1rem !important;
}

.learn-more .nav-link {
    color: #ffffff;
}

.font-white {
    color: #FFFFFF;
}

.form-check-input[type=radio] {
    width: 2rem;
    height: 2rem;
}

.form-check label {
    font-size: 1.5rem;
    margin-left: 0.5rem;
    padding-top: 0.15rem;
}

.form-check {
    padding-left: 2rem;
    min-height: 2rem;
}

.form-check .form-check-input {
    margin-left: -2rem;
}

.form-check-input:checked {
    background-color: var(--fusion-primary);
    border-color: var(--fusion-primary);
}

.fmFooter {
    padding: 0;
}

.hero-title {
    font-size: 5rem;
    line-height: 1;
}

.hero-subtitle {
    font-size: 1.9rem;
    line-height: 1;
}

.note {
    font-size: 10px;
    font-style: italic;
}

@media (max-width: 992px) {

    .full-height-sans-header {
        min-height: 40vh;
    }

    .form-check label {
        font-size: 1rem;
        margin-left: 0rem;
        padding-top: 0.1rem;
    }

    .form-check-input[type=radio] {
        width: 1.3rem;
        height: 1.3rem;
    }

    .hero-title {
        font-size: 3.4rem;
        line-height: 1;
    }

    .hero-subtitle {
        font-size: 1.3rem;
        line-height: 1;
    }
}