:root {
    /* colors */
    --color-border: #e5e5e5;
    --color-white: #ffffff;
    --color-primary: #1b6ec2;
    --color-secondary: #1861ac;
    --color-focus: #258cfb;
    --color-background: #f8f9fa;
    /* gradients */
    --gradient-start: #567d46;
    --gradient-end: #023311;
    --gradient-signin-1: #8F9B66;
    --gradient-signin-2: #D5DDBA;
    --gradient-signin-3: #8F9B66;
    /* spacing scale */
    --space-xs: 0.25rem; /* 4px */
    --space-sm: 0.5rem; /* 8px */
    --space-md: 1rem; /* 16px */
    --space-lg: 1.5rem; /* 24px */
    /* typography */
    --font-size-base: 1rem; /* 16px */
    --line-height-base: 1.5;
}



html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}
@media (min-width: 768px) {
  html { font-size: 16px; }
}

.btn:focus,
.form-control:focus,
.form-check-input:focus,
.btn-link.nav-link:focus {
    box-shadow: 0 0 0 0.1rem var(--color-white), 0 0 0 0.25rem var(--color-focus);
}

.gradient-background {
    background: linear-gradient(to bottom, var(--gradient-start), var(--gradient-end) );
}

.form-signin {
    background: linear-gradient(to right, var(--gradient-signin-1), var(--gradient-signin-2), var(--gradient-signin-3) );
}

select { max-width: 100%; }

hr { all: revert; }

hr.fancy {
    border: none;
    border-top: 3px double #333;
    color: #333;
    overflow: visible;
    text-align: center;
    height: 5px;
}

/* footer base styling */
.site-footer .container {
    background-color: var(--color-background);
    padding-left: 0;
    padding-right: 0;
}

/* logo sizing */
.footer-logo {
    max-height: var(--space-lg);
}

/* very small screens */
@media (max-width: 576px) {
    .footer-logo { max-height: 32px; }
}
