  @charset "utf-8";

:root {
	--main-color: #164453;
	--grey: #eeeeee;
	--footer_bg: var(--main-color);
	--mxWidth: 98.125em;
}

/*------------------- ADJUST GLOBAL STYLES -----------------------*/

header.sonj > .row {
	max-width: var(--mxWidth);
	margin: 0 auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	justify-content: space-between !important;
}

#logo {
	flex: 1;
	white-space: nowrap;
}

.sonj-nav {
	background: transparent;
	border-bottom: 2px solid #d2d3d5;
	font-size: inherit;
}

.sonj-nav .navbar-nav .nav-link {
	color: #000;
	border-bottom: .3125em solid #fff;
	font-weight: bold;
	padding: .7rem;
}

.sonj-nav .nav-link.active, .sonj-nav .show >.nav-link, .navbar-dark .navbar-nav .nav-link.active {
	background: transparent;
	border-color: var(--main-color);
	border-radius: 0;
	color: var(--main-color);
}

#statewide_links img {
	position: absolute;
    pointer-events: none;
    right: 0;
    opacity: .3;
    font-size: 6.4em;
    margin-top: .875rem;
    display: flex;
    height: .98em;
    align-items: center;
}

.statewide {
	list-style: none;
	padding-left: 0;
}

#statewide_links::after {
	content:"";
	display: block;
	clear: both;
}

#statewide_links li {
	padding: .25em 0;
}

#statewide_links li:first-child {
	padding-top: .875em;
}

#statewide_links .d-lg-inline {
	display: block !important;
}

header.sonj .statewide a {
	font-weight: normal;
}

header.sonj .col-lg-6 {
	display: flex;
    flex-direction: column;
    justify-content: space-around;
	flex: 2;
    max-width: none;
}

@media screen and (max-width: 101.25em) {
	header.sonj { padding-left: 3%; padding-right: 3%; }
}

@media screen and (max-width: 61.9375em) {
	header.sonj + .container-fluid { display: none; }
}

@media screen and (max-width: 41.875em) {
	header.sonj > .row { display: block; }
}

/*------------------- ADJUST GLOBAL STYLES END -----------------------*/

/*------------------- STRUCTURE STYLES -----------------------*/

.home .sonj-nav {
	border-bottom: 0;
}

#site-name h1 {
	min-height: 6rem;
	display: flex;
	align-items: center;
}

.sonj-nav .navbar-brand, #site-name h1 {
	color: var(--main-color);
	font-weight: bold;
}

.sonj-nav .navbar-toggler {
	background: var(--main-color);
}

.sonj-nav .nav-link:hover {
	background: var(--grey);
	color: var(--main-color);
}

.wrap {
	max-width: var(--mxWidth);
	position: relative;
}

.breadcrumb-item {
	padding: .25em 0;
}

.page-title {
	color: var(--main-color);
}

.bg-grey {
	background: var(--grey);
}

.fa-solid {
	color: var(--main-color);
}

.container-fluid.wrap {
	padding-left:0;
	padding-right: 0;
}

.accordion .accordion-button {
	font-size: inherit;
	border-left: .4375rem solid var(--main-color);
	background: #fff;
	color: var(--main-color);
}

.accordion .accordion-button.collapsed {
	border-color: var(--grey);
	background: #fff;
	color: #595959;
}

#main_content p, #main_content .sec > h3 {
	max-width: 71.25rem;
}

/*------------------- STRUCTURE STYLES END -----------------------*/

/*------------------- HOME PAGE  -----------------------*/

.card-grid {
	display: flex;
	flex-wrap: wrap;
	grid-gap: 1.875em;
}

.card-grid .card {
	max-width: 20.625em;
}

a.card:hover {
	box-shadow: 0 0 2em rgba(204, 204,204, 0.55);
}

.card-links {
	padding-left: 0;
	list-style: none;
}

.card-links li {
	padding-top: 1.4em;
	line-height: 1.3;
}

.card-links li:first-child {
	padding-top: 0;
}

.carousel-caption {
	background: rgba(14,17,21,.78);
	bottom: 0;
    top: 0;
    margin: auto;
    height: max-content;
    max-width: 43.75em;
    text-align: left;
    padding: 2em;
    right: auto;
}

.carousel-caption p:last-child {
	margin-bottom: 0;
}

.card.all {
	width: 100%;
}

.card.all .card-body {
	flex: none;
}

.h4.card-title {
	color: var(--main-color);
}

/*------------------- HOME PAGE END  -----------------------*/



/*------------------- SECONDARY PAGES  -----------------------*/

.card-body:empty {
	padding: 0;
}

.btn-primary {
	background: #0056b3;
	border-color: #0056b3;
}

.grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, 240px);
	list-style: none;
	padding-left: 0;
    justify-content: center;
}

.grid > li {
	border: 1px solid #ddd;
	padding: 1em;
}

.grid a {
	line-height: 1.3;
}

.comments.subpage #main_content p {
	max-width: 57em;
}

/*------------------- SECONDARY PAGES END  -----------------------*/

@media screen and (max-width: 45.625em) {
	.card-grid {
		justify-content: center;
		padding-bottom: 2em;
	}
}

@media screen and (max-width: 41.875em) {
	.sec > p:last-child {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 30em) {
	.grid { display: block; }
}
