@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.3/font/bootstrap-icons.css");

/* *** Theme ***/
:root {
	--red: #ee161F;
	--red-rgb: (238, 22, 31);
	--black: #000000;
	--white: #f8f8f8;
	--garnet: #682727;
	--garnet-rgb: (104, 39, 39);
	--lt-grey: #cfcfcf;
	--font-header: 'Lora', serif;
	--font-body: 'Raleway', var(--bs-font-sans-serif), sans-serif;
	--bs-body-font-size: 16px;
	--bs-body-text-align: start;
	--bs-link-color-rgb: var(--red-rgb);
	--bs-link-hover-color-rgb: var(--garnet-rgb);
}
/* Accessibility Contrast (WCAG) coolors.co & venngage.com
with --white bkgd, use --black or --garnet font
with --red bkgd, use ONLY --black font
with --black bkgd, use any except --garnet
with --garnet bkgd, use --white or --lt-grey font
with --lt-grey bkgd, use --black or --garnet font
*/
.bk-red {background-color: var(--red);}
.bk-white {background-color: var(--white);}
.bk-black {background-color: var(--black);}
.bk-garnet {background-color: var(--garnet);}
.bk-lt-grey {background-color: var(--lt-grey);}
.font-red {color: var(--red);}
.font-white {color: var(--white);}
.font-black {color: var(--black);}
.font-garnet {color: var(--garnet);}
.font-lt-grey {color: var(--lt-grey);}


/********** Base **********/
main {
	margin-top: 100px;
	margin-bottom: 50px;
}
body {
    background-color: var(--black);
    font-family: var(--font-body);
    color: var(--white);
    font-size: 1.25rem;
}
h1,h2,h3 {
    color: var(--white);
    font-family: var(--font-header);
}
h4 {
    color: var(--white);
    font-family: var(--font-body);
	font-size: 1.25rem;
}
p, ul {
    font-family: var(--font-body);
    font-size: 1rem;
}
.headerFont {
    font-family: var(--font-header);
}
.copyFont {
    font-family: var(--font-body);
}
a {
	color: var(--red);
}
a:hover {
	color: var(--garnet);
}

blockquote {
     font-size: 0.8em !important;
     font-style: italic;
     padding-left: 30px;
     border-left: var(--lt-grey) 3px solid;
}
hr {
    border-color: var(--lt-grey);
}
.btn-primary {
    --bs-btn-bg: var(--red);
	--bs-btn-border-color: var(--red);
	--bs-btn-font-size: 1rem;
	--bs-btn-font-weight: bold;
	--bs-btn-color: var(--black);
	--bs-btn-hover-bg: var(--garnet);
	--bs-btn-hover-color: var(--white);
	--bs-btn-hover-border-color: var(--garnet);
}
.btn-secondary {
	--bs-btn-bg: var(--garnet);
	--bs-btn-border-color: var(--garnet);
	--bs-btn-color: var(--white);
	--bs-btn-font-size: 1rem;
	--bs-btn-font-weight: bold;
	--bs-btn-hover-bg: var(--blag);
	--bs-btn-hover-color: var(--white);
	--bs-btn-hover-border-color: var(--black);
}
.textSection p {
	
}
.textSection h2 {
	margin-top: 3.5rem;
	color: var(--red);
	text-align: center;
}
.textSection h3 {
	margin-top: 3rem;
}
footer {
    color: var(--lt-grey) !important;
    margin-top: 15px;
}
footer p {
    font-size: 0.7em;
}
footer i {
    font-size: 30px;
    color: var(--lt-grey) !important;
    text-align: center;
}
footer a {
	color: var(--garnet);
}
#jrBadge {
    width: 30px;
    height: 30px;
}


/********** NavBar **********/
.navbar {
	font-family: var(--font-header);
	background-color: var(--white);
	--bs-navbar-color: var(--black);
	--bs-navbar-hover-color: var(--red);
	--bs-navbar-brand-font-size: 1.5rem;
	--bs-navbar-brand-color: var(--bs-navbar-color);
	--bs-navbar-brand-hover-color: var(--bs-navbar-hover-color);
	
	--bs-navbar-toggler-border-color: var(--red);
	
	--bs-nav-link-font-size: 1.25rem;
	--bs-nav-link-color: var(--bs-navbar-color);
	--bs-nav-link-hover-color: var(--bs-navbar-hover-color);
	--bs-navbar-nav-link-padding-x: 1rem;
/* 	
	--navbar-padding-x: ;
	--bs-navbar-padding-y: ;
	--bs-navbar-disabled-color: ;
	--bs-navbar-active-color: ;
	--bs-navbar-brand-padding-y: ;
	--bs-navbar-brand-margin-end: ;
	--bs-navbar-nav-link-padding-x: ;
	--bs-navbar-toggler-padding-y: ;
	--bs-navbar-toggler-padding-x: ;
	--bs-navbar-toggler-font-size: ;
	--bs-navbar-toggler-icon-bg: ;
	--bs-navbar-toggler-border-color: ;
	--bs-navbar-toggler-border-radius: ;
	--bs-navbar-toggler-focus-width: ;
	--bs-navbar-toggler-transition: ; 
	--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
	--bs-nav-link-padding-x: ;
	--bs-nav-link-padding-y: ;
	--bs-nav-link-font-weight: ;
*/
}
.navbar-brand {font-weight: bold;}
.navbar-toggler {color: var(--red);}

/********** Hero **********/
.hero {
     min-height: 100vh;
     margin-left: -15px;
     margin-right: -15px;
     background-repeat: no-repeat;
     background-size: cover;
}
#mainNav + .hero {
     background-position-y: 80px;
}
.hero h2 {
     font-size: 2em;
}
.heroText {
    font-size: 3.5rem;
    /* text-shadow: 0px 2px #14146c, 0px -2px #14146c, 2px 0px #14146c, -2px 0px #14146C;*/
}


/********** Images **********/
.fullImg {
	 display: block;
     width: 100%;
     margin: auto;
}
#homePageLogo {
	max-width: 75%;
}


/********** Misc Classes **********/
.jrTable {
    background-color: var(--white);
}
.jrTable a {
	background-color: var(--red);
	color: var(--black);
	border-radius: 10px;
	text-decoration: none;
	padding: 2px 15px;
}
.jrTable a:hover {
	background-color: var(--garnet);
	color: var(--white);
}
.jrTable tbody tr {
	min-height: 10px;
}
#cal {
    height: 665px;
	max-width: 1000px;
	margin-left: -10px;
	margin-right: -10px;
}

/********** Form **********/
.form-signin {
	max-width: 330px;
	padding: 15px;
}
.form-signin .form-floating:focus-within {
	z-index: 2;
}
.form-signin input[type="text"] {
	margin-bottom: -1px;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.form-signin input[type="password"] {
	margin-bottom: 10px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.form-floating {
	color: var(--garnet);
}

/********** Media Queries **********/
/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {

}

/* Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
    tbody, thead {
        font-size: 1.25em;
    }
     .hero h2 {
         font-size: 4em;
    }
    footer p {
        font-size: 0.75em;
    }
    footer i {
        font-size: 50px;
    }
    #jrBadge {
        width: 50px;
        height: 50px;
    }
	#homePageLogo {
		max-width: 100%;
	}
	#cal {
		margin-right: auto!important;
		margin-left: auto!important;
	}
}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
    h2 {
        font-size: 2.5em;
    }
    h3 {
        font-size: 2em;
    }
	.textSection h2 {
		font-size: 2.5rem;
	}
	.textSection h3 {
		font-size: 2rem;
	}
}

/* Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
}