:root {
    --flmc-primary: #f55424;
    --flmc-secondary: #a5523b;
    --flmc-light: #f4eacf;
    --flmc-dark: #351714;
    --flmc-primary-rgb: 245, 84, 36;
    --flmc-secondary-rgb: 165, 82, 59;
    --flmc-light-rgb: 244, 234, 207;
    --flmc-dark-rgb: 52, 23, 20;
    --flmc-link-hover-color: #db3b0a;
    --flmc-link-hover-color-rgb: 219, 59, 10;
    --flmc-secondary-hover-color: #7f402e;
    --flmc-secondary-hover-color-rgb: 127, 64, 46;
    --flmc-dark-hover-color: #592622;
    --flmc-dark-hover-color-rgb: 89, 38, 34;
    --flmc-focus-box-shadow: 0 0 0 0.25rem rgba(var(--flmc-primary-rgb), 0.25);
    
    --bs-link-color: var(--flmc-primary);
    --bs-link-color-rgb: var(--flmc-primary-rgb);
    --bs-link-hover-color: var(--flmc-link-hover-color);
    --bs-link-hover-color-rgb: var(--flmc-link-hover-color-rgb);
    --bs-dark: var(--flmc-dark);
    --bs-light-rgb: var(--flmc-light-rgb);
    --bs-dark-rgb: var(--flmc-dark-rgb);
    --bs-secondary-rgb: var(--flmc-secondary-rgb);
}

.mce-content-body {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.mce-content-body:not([dir=rtl])[data-mce-placeholder]:not(.mce-visualblocks)::before {
    left: 4px !important;
}

.active > .page-link, .page-link.active {
    background-color: var(--flmc-primary);
    border-color: var(--flmc-primary);
    font-weight: bold;
}

body {
    background-color: var(--flmc-dark);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .btn {
    font-weight: bold;
}

::selection {
    color: white;
    background-color: var(--flmc-primary);
}

.link-primary {
    color: var(--flmc-primary) !important;
}

.text-primary {
    color: var(--flmc-primary) !important;
}

.bg-primary,
.text-bg-primary {
    background-color: rgba(var(--flmc-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.btn {
    text-transform: uppercase;
}

header a, footer a, .legal a {
    text-decoration: none;
}

header a:hover, footer a:hover, .legal a:hover {
    text-decoration: underline;
}

.bg-cover {
    background-size: cover;
}

.bg-no-repeat {
    background-repeat: no-repeat;
}

.bg-center {
    background-position: center center;
}

.btn-primary {
    --bs-btn-bg: var(--flmc-primary);
    --bs-btn-border-color: var(--flmc-primary);
    --bs-btn-hover-bg: var(--flmc-link-hover-color);
    --bs-btn-hover-border-color: var(--flmc-link-hover-color);
    --bs-btn-focus-shadow-rgb: var(--flmc-link-hover-color-rgb);
    --bs-btn-active-bg: var(--flmc-link-hover-color);
    --bs-btn-active-border-color: var(--flmc-link-hover-color);
    --bs-btn-disabled-bg: var(--flmc-primary);
    --bs-btn-disabled-border-color: var(--flmc-primary);
}

.btn-secondary {
    --bs-btn-bg: var(--flmc-secondary);
    --bs-btn-border-color: var(--flmc-secondary);
    --bs-btn-hover-bg: var(--flmc-secondary-hover-color);
    --bs-btn-hover-border-color: var(--flmc-secondary-hover-color);
    --bs-btn-focus-shadow-rgb: var(--flmc-secondary-hover-color-rgb);
    --bs-btn-active-bg: var(--flmc-secondary-hover-color);
    --bs-btn-active-border-color: var(--flmc-secondary-hover-color);
    --bs-btn-disabled-bg: var(--flmc-secondary);
    --bs-btn-disabled-border-color: var(--flmc-secondary);
}

.btn-dark {
    --bs-btn-bg: var(--flmc-dark);
    --bs-btn-border-color: var(--flmc-dark);
    --bs-btn-hover-bg: var(--flmc-dark-hover-color);
    --bs-btn-hover-border-color: var(--flmc-dark-hover-color);
    --bs-btn-focus-shadow-rgb: var(--flmc-dark-hover-color-rgb);
    --bs-btn-active-bg: var(--flmc-dark-hover-color);
    --bs-btn-active-border-color: var(--flmc-dark-hover-color);
    --bs-btn-disabled-bg: var(--flmc-dark);
    --bs-btn-disabled-border-color: var(--flmc-dark);
}

.btn-light {
    border-color: var(--bs-btn-hover-border-color);
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    color: var(--bs-btn-disabled-color);
    pointer-events: none;
    background-color: var(--bs-btn-disabled-bg);
    border-color: var(--bs-btn-disabled-border-color);
    opacity: var(--bs-btn-disabled-opacity);
}

.disabled, :disabled {
    pointer-events: auto !important;
    cursor: not-allowed;
}

i:has(> svg) {
	display: inline-flex;
	align-self: center;
}

i:has(> svg).baseline {
	top: .125em;
	position: relative;
}

i > svg {
	fill: currentColor;
	height: 1em;
	width: 1em;
}

.text-bg-dark {
    color: #e9a888 !important;
}

.navbar-text a {
    color: var(--bs-link-color);
}

.navbar-text a:focus, .navbar-text a:hover {
    color: var(--bs-link-hover-color);
}

.nav-pills {
    --bs-nav-pills-link-active-bg: var(--flmc-dark);
}

.nav-pills .active:hover {
    background-color: var(--bs-link-color);
}

.nav {
    font-weight: bold;
    --bs-nav-link-color: #fff;
    --bs-nav-link-hover-color: var(--flmc-light);
}

.nav a:hover {
    text-decoration: none;
}

.nav-link:focus, .nav-link:hover {
    color: var(--flmc-light);
}

.dropdown-menu {
    --bs-dropdown-link-color: var(--bs-link-color);
    --bs-dropdown-link-hover-color: var(--bs-link-color);
    --bs-dropdown-link-hover-bg: var(--flmc-light);
    --bs-dropdown-link-active-bg: var(--bs-link-color);
}

.dropdown-item {
    font-weight: bold;
}

.fancybox-image {
    border-radius: var(--bs-border-radius) !important;
}

.required label:not(.form-check-label):after {
    color: var(--bs-danger);
    content: ' * ' / 'required';
    font-weight: bold;
}

.form-check-input:checked {
    background-color: var(--flmc-primary);
    border-color: var(--flmc-primary);
}

.form-control:focus, .form-check-input:focus, .form-select:focus, .page-link:focus {
    border-color: var(--flmc-primary);
    box-shadow: var(--flmc-focus-box-shadow);
}

.form-text {
    font-size: .75em;
}

.was-validated .form-check-inline input:invalid~.invalid-feedback {
    display: inline;;
}

[data-bs-toggle="tooltip"] {
    cursor: help;
    text-decoration: underline dotted var(--flmc-primary);
}

body.reviews main .blockquote {
    max-height: 6em;
    overflow: auto;
}

body.availability main .card,
body.links main .card,
body.locations main .card {
    border: 0;
}

body.availability main .card,
body.links main .card,
body.locations main .card {
    background-color: var(--flmc-light);
}

body.locations main .btn.active,
body.locations-county main .btn.active {
    background-color: var(--flmc-dark);
    border-color: var(--flmc-dark);
}

main .bg-dark .card,
main .bg-light .card,
main .text-bg-dark .card,
main .text-bg-light .card {
    background-color: white !important;
}

/* CSP: Avoid inline styles */

#home-splash {
    min-height: 550px;
}

#list-teachers .card-img-top {
    max-height: 414px;
}

.bg-image-01 {
    background-image: url('../images/sportbike-rider-bg-blur-rtl.jpg');
}

.bg-image-02 {
    background-image: url('../images/dirtbike-rider-dark-clouds.jpg');
}

.bg-image-03 {
    background-image: url('../images/sportbike-rider-bg-blur-ltr.jpg');
}