:root {
	--background-color: #fff;
	--content-background-color: #fff;
	--text-color: #333;
	--link-color: #cc3931;
	--hover-color: #ef423b;
	--active-color: #ef423b;
	--secondary-color: #643db3;
	--tertiary-color: #000;
	--dim-color: rgba(0, 0, 0, 0.06);
	--highlight-color: #ef423b;
}

BODY {
	color: var(--text-color);
	background-color: var(--background-color);
	font-family: Helvetica, sans-serif;
 }


/** Links **/

A:link, A:visited, LI A.active, INPUT[type="submit"], summary, button.link, ul.menu a.is-active { color: var(--link-color);  }
A:hover, A:focus, LI A.active:hover, LI A.active:focus, summary:hover, summary:focus, button.link:hover, button.link:focus { color: var(--hover-color); }
A:active { color: var(--active-color); }

header[role=banner] A:link, header[role=banner] A:visited { }
footer A:link, footer A:visited { }


button, INPUT[type="submit"], .button, .image-button,
.webform-options-display-buttons input + label.webform-options-display-buttons-label {
	border-color: var(--link-color);
	background-color: transparent;
}

.button:hover,
.button:focus,
.button:active,
.webform-options-display-buttons input:hover + label.webform-options-display-buttons-label {
	background-color: var(--dim-color);
}

INPUT[id|="edit-submit"], INPUT.button-primary, P.promo .button,
.webform-options-display-buttons input:checked + label.webform-options-display-buttons-label {
	border-color: var(--link-color);
	background-color: var(--link-color);
	color: #fff;
	text-shadow: none;
	background-image: none;
}

INPUT[id|="edit-submit"]:hover, INPUT.button-primary:hover, P.promo .button:hover,
.webform-options-display-buttons input:checked:hover + label.webform-options-display-buttons-label {
	background-color: var(--hover-color);
}

.pager__item A:hover, .pager__item A:focus { border-color: var(--hover-color) !important; }
.pager__item.is-active A { color: #fff !important; background-color: var(--link-color); }


/** Header **/

header[role=banner]
{
	border-width: 0 0 1px 0;
	border-color: #333;
	border-style: solid;
	background-color: var(--background-color);
}

.site-name A {
	display: block; 
	
	z-index: 15; 
	margin-top: 0;
	background: url(../images/logo-mobile.svg) no-repeat;
	text-indent: -9999px;
	background-size: 186px 38px;
	width: 186px;
	height: 38px;
	background-position: left top;
}

.site-slogan { display: none; }

header[role=banner] .block-social { clear: right; float: right; }
footer .block-social { text-align: center; }


#search-block-form, .accessibility--controls {
	background-color: var(--dim-color);
}

.accessibility--control { color: var(--link-color); }

@media (min-width: 768px) {
	.block-system-branding-block { display: flex; gap: 20px; }
	.site-slogan { display: block; align-content: end; }

	.site-name A {
		background: url(../images/logo.svg) no-repeat;
		background-size: 215px 125px;
		width: 215px;
		height: 125px;
	}
	header[role=banner] { border-width: 0; }
	#block-accessibilitytoolbar { margin-top: 10px; }
	#block-accessibilitytoolbar .color-contrast { float: right; }
	#block-accessibilitytoolbar .text-sizing { float: right; margin-right: 2em; }
	header[role=banner] .search-block-form { margin-top: 1em; float: right; }
	#search-block-form, .accessibility--controls { background-color: transparent; }
}

@media (min-width: 992px) {
	.site-name A {
		background: url(../images/logo.svg) no-repeat;
		background-size: 258px 150px;
		width: 258px;
		height: 150px;
	}
}

@media (min-width: 1200px) {
}

@media (min-width: 1400px) {
}







/** Navigation **/

.layout-sidebar-first .block-menu { font-size: 0.888888888888889em; }

header[role=banner] .collapsiblock A, #superfish-main-toggle { 
	background-color: var(--link-color); /* icon color */
}

#superfish-main-accordion { 
	background-color: #eee; /* accordion menu color */
}

ul.sf-menu a, ul.sf-menu a:visited, ul.sf-menu span.nolink { /** all menu items **/
	color: var(--link-color);
}

ul.sf-menu.sf-accordion li.sf-depth-1 > A { /* main menu items */
	color: #fff;
	background-color: var(--link-color);
}

ul.sf-menu li.sf-depth-1 {
	border-color: rgba(255, 255, 255, 0.5); /* line between main menu items */
}

ul.sf-menu.sf-horizontal li.sf-depth-1 { flex-grow: 1; }

ul.sf-menu.sf-horizontal li.sf-depth-1 > A { /* main menu items */
	color: #fff;
	background-color: var(--link-color);
}



ul.sf-menu li A:hover:not(.sf-accordion-button), 
ul.sf-menu li A:focus:not(.sf-accordion-button), 
ul.sf-menu span.nolink:hover { background-color: var(--hover-color) !important; color: #fff !important; } /* hover all menu items */

ul.sf-menu li.active-trail A.is-active { text-decoration: underline; text-decoration-thickness: 1px; }
ul.sf-menu li.active-trail.sf-depth-1 > A { background-color: var(--active-color); } /* active main menu items */
ul.sf-menu li.active-trail:not(.sf-depth-1) > A { background-color: #f4d8da; } /* active drop down menu items */


@media (min-width: 768px) {
	/* .block-superfishmain { display: none; } */
	
	nav.menu { background-color: #f4d8da; }

	ul.sf-menu li A.sf-depth-1 {
		/* height: 2em; max number of lines */
		color: var(--link-color);
		padding: .5em 1em;
	}

	ul.sf-menu li:hover > ul, ul.sf-menu li.sfHover > ul { top: 2em; }

	ul.sf-menu.menu ul { /** sub menu outline **/
		border: 1px #ccc solid; 
		background-color: #fff; 
	}
}



/** Headers **/

H1, H2, H3, H4, H5, H6 { font-weight: normal; }

H1 { color: #000; }
H2, H2+P.subtitle { color: var(--secondary-color); }
P.subtitle, .node .field--name-field-subtitle { color: #000; margin-bottom: .5em; }

H3, H4, H5, H6 { color: var(--tertiary-color); }

/* Fields */

main .field, .view-eva { margin-bottom: 1em; }

BLOCKQUOTE {   }





/** Images & Video **/



/** Forms **/

textarea:focus, input:is([type="text"], [type="search"], [type="number"], [type="date"], [type="time"], [type="datetime-local"], [type="month"], [type="week"], [type="password"], [type="email"], [type="tel"], [type="url"]):focus {
	border-color: #cc0;
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 0 8px #ff9;
}

input:checked[type="checkbox"] {
	background-color: #005569;
}


/** Tables **/

THEAD TH {
	color: var(--tertiary-color);
	border-width: 0 0 2px 0;
	border-color: var(--tertiary-color);
	border-style: solid;
}


/** Footer **/

.region-footer {
	border-width: 1px 0 0 0;
	border-color: #ccc;
	border-style: solid;
	color: #666;
	text-align: center;
}


/** Programs **/
.views-field-title.sticky { font-weight: bold; }


/** Front Page **/

.featured { background-color: #ccc; }

.path-frontpage H1 { display: none; }
.view-slideshow-front { clear: both; }
.view-slideshow-front .views-row { display: flex; gap: 20px; }
.view-slideshow-front .views-field-field-front-page-image { flex-basis: 66%; }
.view-slideshow-front .views-field-fieldset { flex-basis: 33%; align-content: end; }
