﻿/*---------------------+
 | Site: IGFOA         |
 | Part: Master styles |
 +---------------------*/

/* Imports
=====================================================================*/
/*@import url(/content/styles/reset.css);*/
@import url(/content/styles/forms.css);
/*@import url(/content/styles/ie.css);*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}

html{-webkit-text-size-adjust:100%;box-sizing: border-box;scroll-behavior: smooth;}

*,*:before,*:after{box-sizing: inherit;}

.clearfix{*zoom:1}
.clearfix:before,.clearfix:after{display:table;content:"";}
.clearfix:after{clear:both}

@media(prefers-reduced-motion: reduce) {*,*::before,*::after {transition: none !important;animation: none !important;scroll-behavior: auto !important;}}

/*------typography,etc.------*/
body{background-color:#336699; margin:0;text-rendering:optimizeSpeed; font-family: 'Open Sans', sans-serif;font-weight:400;font-size: 17px;line-height:1.5;color:#333000; color:#333;}
p {margin:0 0 1.5em;}
a{color: #336699;text-decoration: underline;background-color:transparent;transition:all .2s ease-in;}
a:hover {color:#2F4858; text-decoration: none;}

ul, ol {padding:0 0 0 1.25rem; margin:0 0 1.5rem 0;}
ol { list-style:disc; }

img{height:auto;border:0;-ms-interpolation-mode:bicubic;vertical-align:middle; max-width:100%;}

h1, h2, h3, h4, h5, h6 {margin-top: 0;}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {margin-bottom:.75em;line-height:1.2;}

h1,h1 a,.h1{font-size:2em;font-weight:500;font-family: 'Roboto Slab', serif;color: #336699; letter-spacing: -.025em;}
h2,h2 a,.h2{font-size:1.4em;font-weight:500;font-family: 'Roboto Slab', serif;color: #336699; letter-spacing: -.025em;}
h3,h3 a,.h3{font-size:1.35em;font-weight:600;}
h4,h4 a,.h4{font-size:1.2em;font-weight:600;}
h5,h5 a,.h5{font-size:1.1em;font-weight:600;}
h6,h6 a,.h6{font-size:1.1em;margin-bottom:0;font-weight:600;}

h1 a,.h1 a,h2 a,.h2 a,h3 a,.h3 a,h4 a,.h4 a,h5 a,.h5 a,h6 a,.h6 a{text-decoration:none;font-size:1em;}

p+div,p+fieldset{margin-top:1.5em;}
p+ul,p+ol{margin-top:-.125em;margin-bottom:1.5em;}
p+h2,ul+h2,ol+h2,aside+h2,p+h3,ul+h3,ol+h3,aside+h3,p+h4,ul+h4,ol+h4,aside+h4,p+h5,ul+h5,ol+h5,aside+h5,p+h6,ul+h6,ol+h6,aside+h6{margin-top:1.25em;}

.lead{font-size:1.2em; line-height:1.4; margin-bottom:1.25em;}
.text_spaced {font-size:smaller; font-weight:500; font-family: 'Roboto Slab', serif; letter-spacing:2px; text-transform:uppercase;}
table { border-collapse: collapse; width: 100%; }
hr{color:#eeeeee ;background-color:#eeeeee;height:1px;border:0;width:100%;margin:2rem 0;clear:both;}

blockquote{margin-bottom:1rem;font-size:1.25rem;}
blockquote p{margin-bottom:.5em}
cite{display:block;font-size:.9em;}

em {font-style:italic}
b,strong{font-weight:600;}
small{font-size:80%;}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}
sub{bottom:-0.25em;}
sup{top:-0.5em;}

iframe{margin:0 auto 1.5em auto;display:block;width:100%;}

code{font-family:monospace,monospace;font-size:1em;background-color:rgba(0,0,0,.085);padding:0 3px;}
pre code{display:block;background:#f4f6f9;font-family:Monaco,monospace;border:1px solid #eeeeee;margin-bottom:2.5em;overflow:auto;width:100%;padding:1em 1em;font-size:1.25em;}
pre{white-space:pre;padding:0;font-size:12px;line-height:1.4;}

address {font-style: normal;line-height: inherit;}

aside, figure {background:#f4f6f9;padding:.75em;font-size:.75em;line-height:1.333;margin:0 0 1em 0;}
aside img, figure img{margin:0 0 1em;}

dl{margin-bottom:1em;}
dt{font-weight:600;}

.mobile{display:none;}
.visuallyhidden{position:absolute;white-space:nowrap;width:1px;height:1px;overflow:hidden;border:0;padding:0;clip:rect(0 0 0 0);clip-path:inset(50%);}
.center{text-align:center;}

.skip{position:absolute;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0;}
.skip:focus{position:static;width:auto;height:auto;margin:.5em .5em;} 

.wrapper{position:relative;margin:0 auto;max-width:1440px;padding:0 30px;}

/************************
* Structure *
************************/

.staging-banner { color:white; align-items: center; text-align: center; padding: 1.5em; width: 100%; font-size: larger; background-image: url('/Content/images/spinutech-header.png'); }
.staging-banner a { color:white;}

.col_2x {display: flex; flex-wrap: wrap; justify-content:flex-end;}
.col_2x .nav_section { width:30%;}
.col_2x .content, .col_2x .related { width:70%; padding-left:4em;}


@supports (display: grid) {

	.col_2x {
		display: grid;
		grid-auto-flow: row;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: auto 1fr;
		gap: 0px 0px;
		grid-template-areas:
		"nav_section content content content"
		"related content content content"
		"related content content content"
		"related content content content";
	}

	.col_2x .nav_section { width:inherit; grid-area: nav_section; }
	.col_2x .content { width:inherit; grid-area: content;  min-height: 0; min-width: 0;}
	.col_2x .related { width:inherit; padding-left:0; grid-area: related; }

}

/************************
* Flex Columns *
************************/

.group {box-sizing:border-box; display:-ms-flexbox; display:-webkit-box; display:flex; -ms-flex:0 1 auto; -webkit-box-flex:0; flex:0 1 auto; -ms-flex-direction:row; -webkit-box-orient:horizontal; -webkit-box-direction:normal; flex-direction:row; -ms-flex-wrap: wrap; flex-wrap: wrap; margin:0 -1.75% 1.5em -1.75%;}
	.group:last-child {margin-bottom:0;}
.group > * {box-sizing: border-box; -ms-flex: 0 0 auto; -webkit-box-flex: 0; flex: 0 0 auto; padding-right:1.75%; padding-left:1.75%;}

.group_1of2,table.table_structure_2x td {-ms-flex-preferred-size: 50%; flex-basis: 50%; max-width: 50%;}

.group_1of3,table.table_structure_3x td {-ms-flex-preferred-size: 33.333%; flex-basis: 33.333%; max-width: 33.333%;}
.group_2of3 {-ms-flex-preferred-size: 66.667%; flex-basis: 66.667%; max-width: 66.667%;}

.group_1of4,table.table_structure_4x td {-ms-flex-preferred-size: 25%; flex-basis: 25%; max-width: 25%;}
.group_3of4 {-ms-flex-preferred-size: 75%; flex-basis: 75%; max-width: 75%;}

.group_1of5 {-ms-flex-preferred-size: 20%; flex-basis: 20%; max-width: 20%;}
.group_2of5 {-ms-flex-preferred-size: 40%; flex-basis: 40%; max-width: 40%;}
.group_3of5 {-ms-flex-preferred-size: 60%; flex-basis: 60%; max-width: 60%;}
.group_4of5 {-ms-flex-preferred-size: 80%; flex-basis: 80%; max-width: 80%;}

.group_1of6 {-ms-flex-preferred-size: 16.667%; flex-basis: 16.667%; max-width: 16.667%;}
.group_5of6 {-ms-flex-preferred-size: 83.333%; flex-basis: 83.333%; max-width: 83.333%;}

.group_1of7 {-ms-flex-preferred-size: 14.285%; flex-basis: 14.285%; max-width: 14.285%;}
.group_2of7 {-ms-flex-preferred-size: 28.57%; flex-basis: 28.57%; max-width: 28.57%;}
.group_3of7 {-ms-flex-preferred-size: 42.855%; flex-basis: 42.855%; max-width: 42.855%;}
.group_4of7 {-ms-flex-preferred-size: 57.14%; flex-basis: 57.14%; max-width: 57.14%;}
.group_5of7 {-ms-flex-preferred-size: 71.425%; flex-basis: 71.425%; max-width: 71.425%;}
.group_6of7 {-ms-flex-preferred-size: 85.71%; flex-basis: 85.71%; max-width: 85.71%;}

.group_1of8 {-ms-flex-preferred-size: 12.5%; flex-basis: 12.5%; max-width: 12.5%;}
.group_3of8 {-ms-flex-preferred-size: 37.5%; flex-basis: 37.5%; max-width: 37.5%;}
.group_5of8 {-ms-flex-preferred-size: 62.5%; flex-basis: 62.5%; max-width: 62.5%;}
.group_7of8 {-ms-flex-preferred-size: 87.5%; flex-basis: 87.5%; max-width: 87.5%;}

.group .first {-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1;}
.group .last {-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1;}
.group.reverse {-ms-flex-direction:row-reverse; -webkit-box-orient:horizontal; -webkit-box-direction:reverse; flex-direction:row-reverse;}
.group.start {-ms-flex-pack:start; -webkit-box-pack:start; justify-content:flex-start;}
.group.center {-ms-flex-pack:center; -webkit-box-pack:center; justify-content:center; text-align:left;}
.group.end {-ms-flex-pack:end; -webkit-box-pack:end; justify-content:flex-end;}
.group.top {-ms-flex-align:start; -webkit-box-align:start; align-items:flex-start;}
.group.middle {-ms-flex-align:center;-webkit-box-align:center;align-items:center;}
.group.bottom {-ms-flex-align:end;-webkit-box-align:end;align-items:flex-end;}
.group.around {-ms-flex-pack:distribute;justify-content:space-around;}
.group.between {-ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between;}

/*------site header------*/
.site_header {background-color:#eeeeee;}
.site_header .logo {display:inline-block; margin:25px 0;}
	
/*------site footer------*/
.site_footer {background-color:#336699; border-top:6px solid #44928A; color:#fff; padding:2em 0;text-align:center; font-size:.9em;}
.site_footer a {color:#fff; }
.site_footer ul {padding:0; margin:0; list-style:none; display:flex; flex-wrap:wrap; justify-content:center;}
.site_footer ul li {margin:0 .5em .5em .5em;}
.site_footer address {display:inline-block;}

.site_footer .top_site {position:fixed; bottom:30px; right:30px; z-index:5; display:none;}
.site_footer .top_site a {color: rgba(14,73,140,.6);}
.site_footer .top_site a:hover, .site_footer .top_site a:focus {color: rgba(14,73,140,1);}

/************************
* Navigation *
************************/

/* Primary Navigation Resets and Defaults*/
nav.nav_primary {position:absolute; bottom:-23px; right:0; }
	nav.nav_primary ul {list-style: none; margin:0; padding:0; -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);}
	nav.nav_primary li svg {margin-left:.25em; color:#2F4858;  font-size: .8em;}
	nav.nav_primary li:hover svg {transition:.3s transform ease-in-out;transform: rotate(180deg);}
	nav.nav_primary > ul > li > a {text-decoration:none;}
	
/* Mobile Button*/
.nav_primary_btn {display:none; position:absolute; right:30px; top:27px;}

/* Level 1 (All) */
nav.nav_primary ul.parent {display:flex; justify-content: flex-end;}
nav.nav_primary ul.parent > li {position:relative;}
nav.nav_primary ul.parent > li.nav_mobile {display:none;}
nav.nav_primary ul.parent > li > a {font-size: 1.15em; font-weight:500;font-family: 'Roboto Slab', serif; letter-spacing: -.025em; color: #336699; background-color:#fff; padding:.5em .75em; text-align:center; display:block;}
nav.nav_primary ul.parent > li > a:hover, nav.nav_primary ul.parent > li.drop_nav.hover > a, nav.nav_primary ul.parent > li > a.selected, nav.nav_primary ul.parent > li.selected > a {color:#2F4858;}
	nav.nav_primary ul.parent > li > a.selected::after, nav.nav_primary ul.parent > li.selected > a::before {content:""; display:block; position:absolute; bottom:-6px; left:0; width:100%; height:6px; background-color:#44928A;}

/* Level 1 Dropdown (Mega)*/
nav.nav_primary ul.parent li.drop_mega{ position: static;}
	
/* Level 2 Dropdown (All)*/
nav.nav_primary ul.parent > li > ul { background:#fff; display:none; position:absolute; left: 0; z-index:3; -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.15); -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.15); box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.15);}
	nav.nav_primary ul.parent > li:nth-child(4) > ul { left:auto; right: 0;}
	.no-js nav.nav_primary ul.parent > li:hover > ul, .no-js nav.nav_primary ul.parent > li:focus-within > ul {display:block;}  /*no js fallback */
	
	/* Level 2 Dropdown (Nav)*/
	nav.nav_primary ul.parent li.drop_nav > ul { border-top:6px solid #44928A; width: 250px; top: 100%;}
	nav.nav_primary ul.parent li.drop_nav > ul > li > a {color:#333000; padding:.625em .75em; display:block; text-decoration:none; line-height:1.3;}
	nav.nav_primary ul.parent li.drop_nav > ul > li:not(:last-child) {border-bottom:1px solid #eeeeee;}
	nav.nav_primary ul.parent li.drop_nav > ul > li > a:hover {background:#eeeeee;}

.mobile_nav {display:none;}
	
/*------secondary navigation------*/
nav.nav_secondary {position:absolute; top:45px; right:30px;}
nav.nav_secondary ul {display:flex; flex-wrap:wrap; justify-content:flex-end; margin:0; padding:0; list-style:none;}
nav.nav_secondary li {margin-left:1.5em;}
nav.nav_secondary li a {color:#333; text-decoration:none; font-weight:bold;}
	nav.nav_secondary li a:hover {color:#1C2C36;}

/*------tertiary navigation------*/
nav.nav_tertiary {background-color:#44928A; padding:10px 0; font-size:.8em; text-align:right; text-transform:uppercase; color:#fff; font-weight:600; letter-spacing:1px;}
nav.nav_tertiary .mission {margin:0; float:left;}
nav.nav_tertiary ul {float:right; margin:0; padding:0; list-style:none; display:flex;}
nav.nav_tertiary li:not(:last-child) {margin-right:1.25em;}
nav.nav_tertiary a {color:#fff; text-decoration:none;}
	nav.nav_tertiary a:hover {color:#eeeeee;}
nav.nav_tertiary svg {margin-left:.5em}

/*------section navigation (vertical)------*/ 
.nav_section {margin-bottom:2em;}
.nav_section h4 {font-size:inherit;}
.nav_section > ul, .featured_list > ul {margin:0;list-style:none;padding:0;border-top:6px solid #44928A; background-color:#fff; -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);}
.nav_section > ul li a, .featured_list > ul li a {display:block; color:#333000; padding:.625em .75em; display:block; text-decoration:none; line-height:1.3; font-size:1.1em;}
.nav_section > ul li:not(:last-child), .featured_list > ul li:not(:last-child) {border-bottom:1px solid #eeeeee;}
.nav_section > ul li a:hover, .featured_list > ul li a:hover {background:#eeeeee;color:#2F4858;}
.nav_section > ul .selected{background:#eeeeee;color:#2F4858;}
/*------nested------*/ 
.nav_section > ul ul{list-style:none;padding:0 0 0 .5em;font-size:.9em;margin-bottom:.5em;}
.nav_section > ul ul li a {background:#eeeeee;}
.nav_section ul .selected_parent {font-weight:bold;}

.nav_section_btn {display:none; margin-bottom:1.5em;}
.nav_section_btn svg {margin-left:.5em;}
.nav_section.show {display:block;}
	
/*------paging, crumbs, tags (articles)------*/ 
nav.page {padding:0; margin-top:3em;}
nav.page ul {padding:0;}
	nav.page ul li {display: inline; margin: 0 4px 0 0;}
	nav.page ul li a {border-radius: 6px; text-decoration:none; background: #eeeeee; line-height: 1;font-weight: 600;font-size: 1rem;margin: 0 .25em 0 0;padding: .75em 1em;}
	nav.page ul li a:hover,nav.page ul li a:focus {background:#1C2C36;color:#fff;text-decoration:none;}
	nav.page ul li a:active, nav.page ul li a.current {background: #fff;color:#333000;}

nav.breadcrumb {font-size:.9em;margin-bottom:3em;}
	nav.breadcrumb a {margin: 0 5px;text-decoration: none;color: #333;}
	nav.breadcrumb a:first-child {margin-left: 0;}
	nav.breadcrumb a:hover,nav.breadcrumb a:focus {color: #333;text-decoration:underline;}
	nav.breadcrumb a:active {color: #333;}
	nav.breadcrumb strong {font-weight: 600;color: #333;}
	
ol.tags {list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;}
	ol.tags li {margin: 0 5px 5px 0;}
	ol.tags li a {text-decoration:none;background:#eee;float: left;padding: .25em .5em;font-weight:600;color: #336699;border-radius: 4px;}
	ol.tags li a:hover, ol.tags li a:focus, ol.tags li a:active {background-color: #2F4858; color:#fff;}

/************************
* Content *
************************/

main {display:block; background: #fff; padding:3em 0;}

/* Cart */
.cart { width: 100%; }
.cart .num { text-align: right; }
.cart .price { background: #f0f0f0; font-weight: bold; text-align: right; }
.cart .total { font-weight: bold; text-align: right; }
.cart .transaction-item { padding-left: 0.75em; }
.cart .transaction-type { color: #999; font-size: 90%; font-weight: bold; }
.cart p, .cart ul { margin: 0; }
.cart tbody td { border-top: 1px solid #ddd;}
.cart td, .cart th { padding: 0.5em 1em 0.5em 0; vertical-align: top; }
.cart tfoot td { border-top: 3px double #ccc; }
.cart tfoot td { padding-top: 0.2em; }
.cart thead th { border-bottom: double 3px #ccc; font-size: 11px; font-weight: bold; }
.cart-options { float: right; text-align: right; }

.banner {overflow: hidden; margin-bottom:2em;}
.banner h1 {font-family: 'Source Sans Pro', sans-serif; font-weight:400; font-size:1.1em; margin:0; color:#fff;}
.banner .banner_content {padding:1em 1.5em; color:#fff; background-color:#336699;}

/* Filters */
.browse-filters {
    background: #f3fbfa;
    border: 1px solid #cce5e3;
    border-radius: 6px;
    margin-bottom: 15px;
    padding: 15px 0 20px 20px;
    position: relative;
}

.browse-filters .close { position: absolute; right: 20px; top: 15px; }
.browse-filters h3 { color: #58595b; margin-bottom: 0.5em; }
.browse-filters .mute { color: #939598; font-size: 11px; }
.browse-filters p, .browse-filters ul { list-style: none; margin: 0; }
.browse-filters .panel { float: left; margin: 0 2% 10px 0; width: 31%; }
.browse-filters .panel-2 { float: left; margin: 0 2% 10px 0; width: 48%; }
.browse-filters ul a:hover { text-decoration: none; }
.browse-filters ul a:hover .filter-name { text-decoration: underline; }

    /* Applied filters */
    .applied-filters { list-style: none; margin: 0; }
    .applied-filters .close { position: absolute; right: 5px; top: 0; }
    .applied-filters .filter-type { display: block; font-size: 10px; padding-right: 20px; text-transform: uppercase; }
    
    .applied-filters li {
        background: #f5f5f5;
        border: 1px solid #ddd;
        border-radius: 6px;
        float: left;
        margin: 0 0.5em 0.5em 0;
        padding: 5px;
        position: relative;
    }
    
    .applied-filters img { vertical-align: middle; }


.partner_rotator {position:relative; z-index:1; padding:1.5em 0; background-color:#fff; -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);}

.cookie_notice {width:100%; padding:.75em 70px .75em 30px; background-color:#eeeeee; position: fixed; z-index:4; bottom:0; left: 0; text-align:center;}
.cookie_notice > span {margin-right:.5em;}
.cookie_notice a:last-child {position:absolute; right:0; top:0; padding:.75em 1.25em;}

article footer {border-top:1px solid #CCC;font-size:.875em;padding:1em 0;color:#888;margin-top:3em;}
article footer footer img {float:left; margin: 0 10px 0 0;}

.well{display:block;padding:1.5em 1.5em;background:#FFF;border:1px solid #eeeeee;margin-bottom:2em;}
.platform{display:block;margin-bottom:2em;list-style:none;padding:1.5em 1.5em;border-top:6px solid #44928A; background-color:#fff; -webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); -moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1); box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.1);}
	.nav_section > .platform {margin-bottom:0;}

.comments {margin-top:5em;}

.item_list {padding:0; list-style:none;}
.item_list > li:not(:last-child) {padding-bottom:1.5em; border-bottom: 1px solid #eeeeee; margin-bottom:1.5em; }

.item a {text-decoration:none; color:#333;}
.item_text > a, .item span {display:block;}
.item_image {margin-bottom:.5em;}
.item_title {text-decoration:none; color: #336699!important;}
	.item_title:hover {text-decoration:underline;}
.item_posted {font-size:.9em; margin-bottom:1em;font-weight:bold;}
	.item_posted svg {margin-right:.25em;}
.item_details {font-size:.9em;}

.member_list .item a {display:flex; width:100%;}
.member_list .item a:hover .item_title {text-decoration:underline;}
.member_list .item .item_posted {color:#44928A; font-size:.8em; text-transform:uppercase; margin-bottom:.5em; font-weight:bold;}
.member_list .item ul {padding:0; margin:0; list-style:none;}

.member_contact {padding:0; list-style:none;}
.member_contact svg {margin-right:.5em;}

.item_list.exchange_list {margin:0;}
.exchange_list .item {display:flex;}
.exchange_list .item_image {margin:0 1.5em 0 0;}
.exchange_list .item_title {margin-bottom:.5em}
.exchange_list .item_tags {display:flex; font-size:.9em;}
.exchange_list .item_tags > span {display:block; margin-right:.5em;}

.service_categories {display:flex; flex-wrap:wrap; align-items:center; margin-bottom:.75em;}
.service_categories h5 {margin:.25em 1em .25em 0;}
.service_categories ol.tags li {margin:.25em .5em .25em 0;}

.committee-list dd:not(first-child) {margin-bottom:1.25em;}
.directory {padding:0; list-style:none; display:flex; flex-wrap:wrap; margin-bottom:1.5em;}
.directory li {margin-top:1.25em; width:33.333%}
.directory a img {margin-bottom:.5em; max-width:75px;}
.directory a {display:flex; flex-direction: column; font-size:.9em; text-decoration:none; color:#000; line-height: 1.4; border-left:3px solid #eee; padding:0 2.5em 0 1em;}
.directory a .name {font-weight: bold;}
	.directory li:hover .name {text-decoration:underline;}

.events_list .item {display:flex; align-items: center; padding:1.5em 0;}
.events_list .item_date { padding:.75em 1em; background-color:#336699; color:#fff; line-height:.7; font-size:.8em; font-weight:600; text-align:center; -moz-border-radius:6px; border-radius:6px; margin-right:4em;}
.month {text-transform:uppercase;}
.day {font-size:1.4em}
.events_list .item_text {display:flex; width:100%; align-items: center;}
.events_list .item_title {width:50%; padding-right:2em; margin:0;}
.events_list .item_posted {width:25%; padding-right:2em; margin:0;}
.events_list .item_description {width:25%; text-align:right; margin:0;font-size:.9em;}

.events_list .item.item_expired .item_date {background-color:#999999;}
.events_list .item.item_expired .item_description {font-weight:700; text-transform: uppercase;}

.event_policy {padding:2em 0; border-top:1px solid #eee; font-size:.85em; color:#666666;}

.cal_detail {border-collapse:collapse; width:100%; margin-bottom:2em; font-size:.9em; line-height:1.4em;}
.cal_detail tr {border-bottom:1px solid #eeeeee;}
.cal_detail tr td {padding:1em 1.5em 1em 0;}
.cal_detail tr td:first-child {font-weight:bold;}

.cal_timeframe {float:right;}
.timeframe_arrow {background: none; color: #336699; border: none; padding: 0; font: inherit; cursor: pointer; outline: inherit;}
.timeframe_arrow:first-child {margin-right:2em;}
.timeframe_arrow:hover { color:#2F4858;}

/* Tables */
.col-opts { white-space: nowrap; width: 7em; }
.data a { text-decoration: none; }
.data a:hover { text-decoration: underline; }
.data td, .data th { border: 1px solid #ddd; border-width: 1px 0; padding: 4px 10px 4px 0; }
.data thead th { background: none; border-bottom: 2px solid #777; border-top: 0; color: #777; font-weight: bold; }
table.data { border-collapse: collapse; width: 100%; }
.nb { white-space: nowrap; }
.data-table-loading { background: url(/content/images/shared/loading.gif) no-repeat 45% 0; height: 100px; }

.user_settings {padding:0; list-style:none; position:relative;}
.user_settings svg {margin-right:.5em;}
.user_settings > li {display:inline-block;}
.user_settings > li:last-child {position:absolute; top:0; right:0;}
.user_settings .well {margin-top:.5em; padding:1.5em .25em 0 .25em;}
.user_settings .well > div {width:33.333%; padding:0 1.25em;}

.toolbar {padding:0; list-style:none; margin:1.25em 0; display:flex; flex-wrap:wrap; justify-content:center; padding:.5em 0; background-color:#336699; color:#fff; font-size:.9em;}
.toolbar svg {margin-right:.5em;}
.toolbar a {display:block; color:#fff; text-decoration:none; padding:.25em 1.25em}
	.toolbar a:hover {text-decoration:underline;}

.tabs {display:flex; flex-wrap: wrap; }
.tabs .radiotab {position:absolute; opacity:0;}
.tabs label, .stream-button {flex-grow: 1; border-radius:6px 6px 0 0; margin-bottom:0; margin-top:3px; padding: 1em 1em; background:#eeeeee; cursor:pointer; font-size:.9em; color:#336699; text-align:center; z-index:1; transition:all .2s ease-in; text-decoration:none}
.tabs a {text-decoration:none; font-weight: 600;}
	.tabs label:not(:last-of-type), .stream-button:not(:last-of-type) {margin-right:3px;}
	.tabs label:hover, .tabs .label:active, .tabs > a:hover, .tabs > a:active {background:#1C2C36; color:#fff;}
		.tabs label:hover a, .tabs .label:active a, .tabs > a:hover, .tabs > a:active {color:#fff;}
.tabs .radiotab:checked + label, .stream-button.current {background:#44928A!important;color:#fff;}
	.tabs .radiotab:checked + label a {color:#fff;}
.tabs .tab_panel {order:99; display:none; width:100%; }
.tabs .radiotab:checked + label + .tab_panel {display:block;}

.directory_list {list-style:none; padding:0; font-size:.95em;}
.directory_list li {padding:.125em 0;}

.stream .stream-item .item-wrapper { padding: 15px 15px 15px 100px; }
.stream .stream-item .item-wrapper:hover { background: #fafafa; }

.list_3col {columns: 3; -webkit-columns: 3; -moz-columns: 3; column-gap: 2.5em;}

a .filter_count {display:inline-block; font-size:.8em; color:#666; margin-left:.325em; text-decoration:none;}

.jobline_filter {display:flex; flex-wrap:wrap; padding:0; list-style:none; margin-bottom:2em;}
.jobline_filter li {white-space: nowrap; margin-bottom:1em;}
.jobline_filter li:first-child {margin-right:2em;}
.jobline_filter label {display:inline-block; margin-right:.5em;}

.show_hide input {display:none;}
.show_hide label {display:inline-block; color: #336699; text-decoration: underline; font-size:inherit; font-weight:inherit; transition: all .2s ease-in; cursor:pointer;}
	.show_hide label:hover, .show_hide label:active {color:#2F4858; text-decoration: none;}
.show_hide label svg:last-child {margin-left:.5em;}
.show_hide input:checked + label svg:last-child {transition: all .2s ease-in; transform: rotate(180deg);}
.show_hide input + label + .show_hide_content {display:none;}
.show_hide input:checked + label + .show_hide_content {display:flex; flex-wrap: wrap;}

/* Paging */
.pages, .pages ul { clear: both; float: none; font-size: 16px; list-style: none; margin: 50px 0 30px; text-align: center; }
.pages li { display: inline; margin: 0 10px 0 0; }

/*------Insets & Outsets ------*/
.inset {padding:2rem;}

.inset_right_large {padding-right:4rem;}
.inset_right {padding-right:2rem;}
.inset_right_small {padding-right:.5rem;}

.inset_left_large {padding-left:4rem;}
.inset_left {padding-left:2rem;}
.inset_left_small {padding-left:.5rem;}

.inset_top_large {padding-top:4rem;}
.inset_top {padding-top:2rem;}
.inset_top_small {padding-top:.5rem;}

.inset_bottom_large {padding-bottom:4rem;}
.inset_bottom {padding-bottom:2rem;}
.inset_bottom_small {padding-bottom:.5rem;}

.outset {margin:2rem;}

.outset_right_large {margin-right:4rem;}
.outset_right {margin-right:2rem;}
.outset_right_small {margin-right:.5rem;}

.outset_left_large {margin-left:4rem;}
.outset_left {margin-left:2rem;}
.outset_left_small {margin-left:.5rem;}

.outset_top_large {margin-top:4rem;}
.outset_top {margin-top:2rem;}
.outset_top_small {margin-top:.5rem;}

.outset_bottom_large {margin-bottom:4rem;}
.outset_bottom {margin-bottom:2rem;}
.outset_bottom_small {margin-bottom:.5rem;}

/* Progress navigation */
.progress { font-size: 13px; list-style: none; margin: 1em auto 3em; text-align: center; white-space: nowrap; }
.progress li { display: inline; margin-right: 10px; }
.progress li.current .step { background: #00345b; }
.progress li.current .title { color: #000; }

.progress .step {
    background: #aaa;
    border-radius: 20px;
    color: #fff;
    line-height: 1;
    margin-right: 0.3em;
    padding: 0.25em 0.6em;
}

.progress .step .icon-chevron-right { color: #fff; }

/*------Spinternet Defaults ------*/
.page_banner {margin-bottom:1.5em;}
.page_video {font-size:.875em;line-height:1.666;padding:1.5em;margin-bottom:1.5em;}
	.page_video .fluid_video{margin-bottom:0;}
	.page_video .last{margin-left:1em;}

.img_left {float:left;margin:0 1em 1em 0;max-width:30%;}
	.img_captioned.img_left {float:left;margin:0 1em 1em 0;}
.img_right {float:right;margin:0 0 1em 1em;max-width:30%;}
	.img_captioned.img_right {float:right;margin:0 0 1em 1em;}
.img_center {text-align:center;}
	.img_center .img_captioned {text-align:center;}

.fluid_video{margin-bottom:1.5em;}

.fluid_map {width: 100%;height: 0;padding-top: 60%;position: relative; margin-bottom:1.5em;}
	.fluid_map iframe {width: 100%;height: 100%; position: absolute;top: 0; right: 0;left: 0; bottom: 0; }
	.fluid_map img {max-width: none;}/*-- fixes max-width conflict in Google API maps --*/
	
.login_links {position: fixed; top: 0; right: 0; margin: 0; padding: 4px; list-style: none; font-size: 12px;}
	.login_links li {float: right; margin-left: .5em;}
	.login_links li > a {line-height: 1; padding: .333em .5em; text-decoration: none; background-color: #333000; border: 1px solid #333000; color: #FFF;}

.test_site {color: #FFECEC; background-color: #A40000; width: 100%; height: 30px; text-align: center; font-weight: 600; line-height: 30px; font-size: 13px; text-transform:uppercase;}

/* Knowledge exchange */
    /* Actions */
       /* Rating */
        .rate-tools { float: right; list-style: none; text-align: right; white-space: nowrap; }
        .rate-tools a { color: #bbb; }
        .rate-tools a:hover { color: #215fa6 }
        .rate-tools li { display: inline; margin-left: 0.7em; }
        .rate-post.up .fa { color: #2e8b57; }
        .rate-post.down .fa { color: #cd5c5c; }
    
    /* Comments */
    .comments { border-top: 1px solid #ddd; padding-top: 30px; }
    .comments h3 { font-weight: normal; text-transform: none; }
    .comments ol { list-style: none; margin: 0; }
    .comments ol > li { border: 1px solid #ddd; border-radius: 6px; margin-bottom: 15px; overflow: hidden; padding: 15px 20px 15px 100px; }
    .comments .highlighted { background: #ff9; }
    .comments .thumb { float: left; margin: 1px 0 10px -80px; width: 60px; }
    
    /* Contribute */
/*    #contribute { background: #f3fbfa; border: 1px solid #cce5e3; border-radius: 6px; margin-bottom: 1.4em; padding: 20px; }
    #contribute h3 { font-size: 20px; font-weight: normal; line-height: 40px; text-transform: none; }
    #contribute h3 .fa { color: #007f71; display: inline-block; width: 26px; }*/
    
    /* Header */
/*    #kx-header h1 { margin-bottom: 0.5em; }
    #kx-header p { margin-bottom: 0.2em; }*/
    
    /* Stream nav */
/*    .stream-nav { list-style: none; margin: 10px 0 0 0; padding: 0; display: flex; }
    .stream-nav li { flex: auto; font-size: 14px; }
    .stream-nav li a { background: #fafafa; border: 1px solid #ccc; display: block; margin: 0 -1px -1px 0; padding: 0.7em 1em; }
    .stream-nav li.current a { background: #fff; border-bottom-color: #fff; color: #000; }*/
    
    /* Stream posts */
    /*.stream .stream-items { border: 1px solid #ccc; }
    .stream .stream-item { border-bottom: 1px solid #ddd; }
    .stream .stream-item .item-wrapper { display: block; overflow: hidden; padding: 15px 15px 15px 100px; position: relative; }
    .stream .stream-item .item-wrapper:hover { background: #fafafa; }
    .stream .stream-item .post-details-link {  }
    .stream .stream-item .post-details-link:hover { text-decoration: none; }
    .stream .stream-item p { margin: 0; }
    .stream .stream-item .verb { font-size: 1em; font-weight: 600; margin: 0; }
    .stream .stream-item-thumb { border: 1px solid #fff; float: left; margin: 3px 0 0 -80px; width: 60px; }    
    .stream .stream-item-tags { display: block; }
    .stream .stream-item-tags a { cursor: pointer; }
    .stream .stream-item-title { display: block; font-size: 18px; }
    .stream .stream-item.highlighted { background: #ff9; }
    .stream .stream-more a, .stream-loading { border-radius: 0 0 7px 7px; clear: both; display: block; padding: 10px 20px; text-align: center; }
    .stream .stream-more a:hover { background: #f0f0f0; }*/
    
        /* Stream item tools */
        /*.stream .stream-tools { list-style: none; position: absolute; float: right; margin: 5px 5px 0 0; right: 0; top: 0; width: 64px; }
        .stream .stream-tools li { float: left; }
        .stream .stream-tools li a { border: 1px solid #bbb; border-radius: 4px; background: #369; color: #eee; display: block; margin-bottom: 4px; padding: 0.15em; text-align: center; width: 24px; }
        .stream .stream-tools li a:hover { background: #eee; color: #369; text-decoration: none; }*/
        
        /* Stream search */
       /* .stream .search-tools { float: right; list-style: none; margin: 0; padding: 0; }
        .stream .search-tools > li { float: left; margin: 0; }
        .stream .search-tools .action { margin: 2px 0 0 0; padding: 0.65em 1em; }
        .stream .search-tools >li:first-child .action { border-radius: 4px 0px 0px 4px; }
        .stream .search-tools >li:last-child .action { border-left: none; border-radius: 0px 4px 4px 0px; }
        .stream .stream-search { border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-top: 1px solid #ccc; padding: 1em; }
        .stream .stream-tags { border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-top: 1px solid #ccc; padding: 1em; }
        .stream .stream-tags .options-h { margin-bottom: 1em; }
        .stream .stream-tags .header { margin-bottom: 1em; }
        .stream .stream-tags ul li a { margin-bottom: 1em; }
        .stream .stream-search button { float: right; }
        .stream .stream-search input { width: 84%; }*/

		/* Options */
/*		.stream .stream-tags .options-h, .options-v { list-style: none; margin: 0; }
		.stream .stream-tags .options-h input, .options-v input { margin: 0 0.5em -0.05em 0; }
		.stream .stream-tags .options-h img { border-bottom: 3px solid #fff; padding: 5px; vertical-align: middle; }
		.stream .stream-tags .options-h li, .options-v li { background: none; margin-bottom: 0.3em; padding: 0; }
		.stream .stream-tags .options-h li { display: inline; margin-right: 0.7em; white-space: nowrap; }
		.stream .stream-tags .options-v li { padding-left: 22px; text-indent: -22px; }
		.stream .stream-tags .options-v ul { margin: 0.3em 0 1em; }*/

		/* Columns */
/*		.stream .stream-tags .c2l, .c2r { width: 48%; }
		.stream .stream-tags .c2l, .c3l, .c3m { float: left; }
		.stream .stream-tags .c2r, .c3r { float: right; }
		.stream .stream-tags .c3l { margin-right: 3%; }
		.stream .stream-tags .c3l, .c3m, .c3r { width: 31%; }*/

		/* Stock classes */
/*		.stream .stream-tags .l { float: left; }
		.stream .stream-tags .r { float: right; }*/

		/* Calendar */
.calendar .date { float: left; margin-left: -160px; width: 150px; }
.calendar .date .days { display: block; font-size: 18px; }
.calendar .date .weekdays { display: block; font-size: 14px; }
.calendar dd { margin-bottom: 0.7em; }
.calendar dd, .calendar dt { padding-left: 160px; }
.calendar dt { border-top: 1px solid #ddd; clear: both; font-weight: normal; margin: 0; padding-top: 0.7em; }
.calendar .mute { margin-bottom: 0.2em; }
.calendar p { margin: 0; }
.calendar .time { margin-right: 0.5em; }

	/* Event header */
	.event-header { font-size: 22px; }
	.event-header h2 { margin: 0; }
	
	/* Mini */
	.calendar-mini .date { border: 1px solid #ddd; border-radius: 6px; float: left; margin: 3px 0 20px -60px; padding: 3px 0; text-align: center; width: 50px; }
	.calendar-mini .date .day { display: block; font-weight: 300; line-height: 1; font-size: 24px; }
	.calendar-mini .date .month { color: #d83240; display: block; font-size: 14px; text-transform: uppercase; }
    .calendar-mini dd, .calendar-mini dt { padding-left: 60px; }
    .calendar-mini dt { clear: both; }
    
    /* Switcher */
	#cal-nav { float: right; margin: 0; white-space: nowrap; }
	#cal-nav li { background: none; display: inline; margin: 0 0 0 1em; padding: 0; }
	#cal-nav li.active a { color: #58595b; font-weight: bold; }
	
	/* Upcoming */
	.upcoming { border: 1px solid #cce5e3; border-radius: 6px; margin-bottom: 30px; }
	.upcoming .calendar .date .days { color: #007f71; font-weight: bold; }
	.upcoming .date { margin-left: -140px; width: 130px; }
	.upcoming h2 { color: #007f71; text-transform: uppercase; }
	.upcoming .view { margin: 0; }
	.upcoming-header { background: #f3fbfa; padding: 20px; }
	.upcoming-footer { clear: both; text-align: center; padding: 20px; }

	/* Muted text */
	.disclaimer { border-top: 1px solid #ddd; padding-top: 1em; }
	.disclaimer, .mute { color: #7f7f7f; font-size: 13px; font-weight: normal; }
	.disclaimer a, .mute a { color: #5baca3; }
	.disclaimer h6 { font-size: 15px; margin-bottom: 1em; text-transform: uppercase; }
	.mute { text-transform: uppercase; }

/* Maps */
.geo { display: none; }

    /* Mapped results */
    #map-mini #map { border: 1px solid #ccc; height: 250px; margin-bottom: 20px ; }
    #mapped-results #map { border: 1px solid #ccc; border-bottom-right-radius: 6px; border-top-right-radius: 6px; float: right; height: 500px; width: 69%; }
    #mapped-results #map, #mapped-results .results { margin-bottom: 20px; }
    
    #mapped-results .results {
        border: 1px solid #ccc;
        border-bottom-left-radius: 6px;
        border-top-left-radius: 6px;
        float: left;
        font-size: 0.9em;
        height: 470px;
        line-height: 1.3;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 15px 1%;
        width: 28.5%;
    }
    
    #mapped-results .results ol { list-style: none; margin: 0; padding-left: 32px; }
    #mapped-results .results ol li { clear: both; margin-bottom: 15px; }
    #mapped-results .results ol h2 { font-size: 16px; }
    #mapped-results .results ol h2, #mapped-results .results ol p { font-weight: normal; margin: 0; }
    #mapped-results .results .marker { float: left; margin-left: -32px; }
    #mapped-results .results .thumb { float: left; margin: 3px 10px 10px 0; width: 44px; }
    
    /* Windows (new, custom popup using ExtInfoWindow) */
	/* http://gmaps-utility-library.googlecode.com/svn/trunk/extinfowindow/release/docs/examples.html */
	#gwindow { width: 350px; }
	#gwindow_b { background: url(/images/shared/gwindow_b.png); height: 15px; }
	#gwindow_beak { background: url(/images/shared/gwindow_beak.png); height: 49px; width: 47px; }
	#gwindow_bl { background: url(/images/shared/gwindow_bl.png); height: 15px; width: 10px; }
	#gwindow_br { background: url(/images/shared/gwindow_br.png); height: 15px; width: 15px; }
	#gwindow_close { background: url(/images/shared/gwindow_close.png) no-repeat; cursor: pointer; height: 16px; width: 16px; }
	#gwindow_l { background: url(/images/shared/gwindow_l.png); width: 10px; }
	#gwindow_r { background: url(/images/shared/gwindow_r.png); width: 15px; }
	#gwindow_t { background: url(/images/shared/gwindow_t.png); height: 1px; }
	#gwindow_tl { background: url(/images/shared/gwindow_tl.png); height: 10px; width: 10px; }
	#gwindow_tr { background: url(/images/shared/gwindow_tr.png); height: 10px; width: 15px; }
    
        /* Window contents */
        #info-window-content { background-color: #fff; }
        #info-window-content .desc-content { font-size: 12px; }
        #info-window-content h3 { font-size: 1.5em; line-height: 1.2; }
        #info-window-content p { font-size: 1.2em; }
        #info-window-content .thumb { float: left; margin: 3px 10px 0 0; width: 44px; }

    /* Jobs */
    #job-map .map { height: 380px; }

/*------Locations------*/
.location_results {padding:1em;border:1px solid #CCC;font-size:.875em;}
	.location_results ol{list-style:none;margin:0;padding:0;line-height:1.5;width:100%;}
	.location_results ol li{list-style:none;margin:0;display:inline-block;width:100%;}
	.location_results ol li div{float:left;width:80%;}
	.location_results img{float:left;margin-right:5%;max-width:15%;}

/*------video container ------*/
.video_link {display:block; margin-bottom:1em;}
.video_link .video_thumb {position:relative; display:block; margin-bottom:.5em; }
.video_link .video_play {position:absolute; top: 50%; left: 50%; margin-right: -50%; transform: translate(-50%, -50%); color:rgba(255,0,0,0.80); font-size:5em; line-height:1;}
.video_link:hover .video_play {color:rgba(255,0,0,0.40);}

/* Payment history */
.payment-history .n { color: red; }
.payment-history .num { text-align: right; }
.payment-history .p { color: green; }
.payment-history td { border-bottom: 1px dotted #ccc; font-size: 14px; padding: 0.35em 0.15em; }
.payment-history th { border-bottom: 2px solid #ccc; font-size: 14px; font-weight: bold; padding: 0.35em 0.15em; }
.payment-history .total td { border-top: 3px double #ccc; font-weight: bold; }
.payment-history tr.transaction-row:hover td { background: #f3ff87; cursor: pointer; }
.payment-history tr.transaction-row.current td { background: #fff; font-weight: bold; }

    /* Columns */
    .payment-history .amount { width: 11%; }
    .payment-history .date { width: 96px; }
    .payment-history .tools { width: 5%; }
    
    /* Transaction detail */
    .payment-history .transaction-detail:hover td { background: #fff; cursor: default; }
    .transaction-detail > td { background: #fff; padding: 8px; }
    .transaction-detail th { background: #f0f0f0; }
    .transaction-detail th.memo { width: 45%; }
    .transaction-detail:hover .current td { background: #ffc; }
    
        /* Transaction item */
        .transaction-details .current th { background: #eec; font-weight: bold; }
        .transaction-details .current td { background: #ffc; }
        .transaction-details tfoot td { border-top: 3px double #888; font-weight: bold; }

/*------text options------*/

.text_cooler {color:#06C;}
.text_success {color:#2e8540;}
.text_warmer {color:#fdb81e;}
.text_danger, .ecom-error {color:#cd2026;}

.text_smaller {font-size:.75em;}
.text_small {font-size:.875em;}
.text_large {font-size:1.25em;line-height:1.5;}
.text_larger {font-size:1.5em;}
.text_largest {font-size:1.75em;}

.text_primary {color:royalblue}
.text_secondary {color:saddlebrown}

/*------highlighting / alerts------*/

.alert_banner {background:#cd2026; color:#fff;padding:1.25em 1em;margin-bottom:0; font-size:.9em;line-height:1.4;}
.alert_banner a {color:#fff;}
.alert_banner .btn {padding:0; border:none; background:none; margin:0 0 0 3em; float:right;}
.alert_banner .btn:hover {border:none; background:none; color:#ccc;}
.hidden {position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden;}

.alert {padding:.5em 1em;color:#333000;border:1px solid #fdb81e;background:#FEF9EE;font-size:.875em;margin:.25em 0 2em;}
	.alert p:last-child{margin:0;}
.alert.alert_success{color:#2e8540;border:1px solid #E7FBEB;background:#E7FBEB;}
.alert.alert_danger{color:#cd2026;border:1px solid #FBEFEF;background:#FBEFEF;}
/*.site_alert{z-index:4000; position:relative; top:0; left:0; padding:25px; background:#C00; color:#FFF; font-size:18px; font-weight:600;}
.site_alert a{color:#F1C411;}*/

/*------Flags------*/

.flag {z-index:1;min-width:40px;max-width:100%;background:#333000;color:#fff;line-height:1.2;padding:.5em;position:absolute;top:15px;left:-7px;font-size:.875em;}
  .flag:after {width: 0;height: 0;display:block;content:' ';border-top: 10px solid #777;opacity:.3;border-left: 7px solid transparent;position:absolute;bottom:-10px;left:0;}

.flag.flag_success {background:#2e8540;}
  .flag.flag_success:after{border-top-color: #2e8540;}

.flag.flag_danger {background:#cd2026;}
  .flag.flag_danger:after  {border-top-color: #cd2026;}

.flag.flag_cool {background:#06C;}
  .flag.flag_cool:after  {border-top-color: #06C;}

.flag.flag_warm {background:#fdb81e;}
  .flag.flag_warm:after  {border-top-color: #fdb81e;}

/* --- lists --- */
.list--horizontal {list-style:none;margin:0;padding:0;display:table;}
	.list--horizontal > li{width:auto;margin:0 2rem 0 0;display:inline-block;vertical-align:middle;}
	.list--horizontal > li:last-child{margin-right:0;}
	.list--horizontal.last > li:first-child{margin-right:0;}

	.list--horizontal.list--m--small > li{margin:0 1rem 0 0;}
	.list--horizontal.list--m--xsmall > li{margin:0 .5rem 0 0;}
	.list--horizontal.list--m--none > li{margin:0;}

.list--horizontal.last > li{margin:0 0 0 2rem;}
	.list--horizontal.list--m--small.last > li{margin:0 0 0 1rem;}
	.list--horizontal.list--m--xsmall.last > li{margin:0 0 0 .5rem;}

/* --- Definition Lists --- */	
.dl--horizontal {-ms-flex-wrap: wrap;
flex-wrap: wrap;
-ms-flex-align: start;
align-items: flex-start;
display: -ms-flexbox;
display: flex;max-width:400px;}

.dl--horizontal__label {width: 30%;padding-right: .75rem;margin:0;}
.dl--horizontal__detail {width: 70%;margin:0;}

.no-flexbox .dl--horizontal__label {display:inline-block;padding-right:0;}
.no-flexbox .dl--horizontal__detail {display:inline-block;width:68%;}
	
/*------rows and grid views (e-commerce, typically generated dynamically)------*/ 

.list {clear:both; margin:0 0 2em;}

.list_row {padding:0; padding-top:1em;}
.list_row > li {margin:0;display: table;border-collapse: collapse;width: 100%;float: left;}
.list_row .inner {display: table-row;text-decoration:none;}
.list_row .li-img {display: table-cell;vertical-align: middle;width: 20%;padding-right: 1.5em;padding-top:1em;padding-bottom:1em;}
.list_row .li-img img {display: block;width: 100%;height: auto;}
.list_row .li-text {display: table-cell;vertical-align: middle;width: 70%;padding:1.5em 1em 1.5em 0;}
.list_row .li-summary {display: block;color:#333000;margin-bottom:.25em;font-size:1em;}
.list_row .li-action {margin: 0;text-decoration:none;}
span.posted_info {display:block; font-style:italic;color:#999; font-size:.9em; margin-bottom:1em;}
.list_row .author {display:block; font-style:italic;color:#999;}
.list_row > li.clear_even,.list_row > li.clear_third,.list_row > li.clear_fourth, .list_row > li.clear_fifth {width:100%;display:none;margin:0;}
	
/*------processing, please wait buttons-------*/
.spnWaitMessage {color:#CC0000;font-weight:600;font-size:16px;}
	
/*------related content (often used in side column, or below main content)------*/ 

.related .related_item:not(:last-child) {margin-bottom:2em;}
.related .related_item *:last-child{margin-bottom:0;}

.related .related_item.related_html {background-color:#336699; padding:1.5em 1.5em; color:#fff;}
	.related .related_item.related_html a:not(.btn) {color:#fff;}
.related .related_item.related_banner figure{float:none;width:auto;}
.related .related_item.related_banner img{margin-bottom:.5em;}
.related .related_item.related_testimonial img{width:75px;float:left;margin:0 1em 1em 0;border-radius:50%;}
.related .related_item.related_video img {cursor:pointer;}
	
/*------panels (often used to create different secions of content on the same page)------*/ 

.panel {-webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-repeat:no-repeat; background-position: center center;}

/*------table structure (in editor template)------*/ 

table.table_structure_4x {width:100%;margin-bottom:1em;border-collapse:collapse;line-height:1.3;display:block;}
	table.table_structure_4x tbody, table.table_structure_4x tr{display:block;width:100%;}
	table.table_structure_4x tr td{display:block;float:left;padding-bottom:.5em;margin-right:2.5%;}/*margin matches column structure*/
	table.table_structure_4x td td {display:table-cell;float:none;width:auto;}/*fix embeded tables*/
	table.table_structure_4x td.clear {display:none;clear:both;width:100%;}

table.table_structure_3x {width:100%;margin-bottom:1em;border-collapse:collapse;display:block;}
	table.table_structure_3x tbody, table.table_structure_3x tr{display:block;width:100%;}
	table.table_structure_3x tr td{display:block;float:left;padding-bottom:.5em;line-height:1.4;margin-right:2.5%;}/*margin matches column structure*/
	table.table_structure_3x td td {display:table-cell;float:none;width:auto;}/*fix embeded tables*/
	
table.table_structure_2x {width:100%;margin-bottom:1em;border-collapse:collapse;display:block;}
	table.table_structure_2x tbody, table.table_structure_2x tr{display:block;width:100%;}
	table.table_structure_2x tr td{display:block;float:left;padding-bottom:.5em;margin-right:2.5%;}/*margin matches column structure*/
	table.table_structure_2x td td {display:table-cell;float:none;width:auto;}/*fix embeded tables*/
	
	table.table_structure_2x tr td:last-child, table.table_structure_3x tr td:last-child, table.table_structure_4x tr td:last-child{margin-right:0;}/*margin matches column structure*/
	
	
/*------data tables (min-width for overflow on small devices, can be adjusted)------*/ 

table.table_data, table.table_list { font-size:.9em; line-height:1.4em; border-collapse: collapse;overflow:auto;width:100%; margin-bottom:2em;}
	table.table_data thead th, table.table_list thead th{background:#eeeeee; font-weight:bold;color:#333;padding:10px 10px; text-align:left;}


	.table_data td{padding:.5em .75em;border:1px solid #eeeeee;}

	.table_list td{padding:.5em .75em;border-bottom:1px solid #eeeeee;border-right:1px solid #eeeeee;}
	.table_list td:last-child{border-right:0;}
	.table_list.table_stripe {border-top:0;}
		
	table.table_stripe tbody tr:nth-child(even) {background:#f7f7f7;}
	table.table_condensed th{padding:.25em .5em;font-size:1rem;}
	table.table_condensed td{padding:.25em .5em;font-size:.875rem;}

/************************
* Forms *
************************/

fieldset {min-width:0; padding:0; margin:0 0 1.5em 0; border:0;}
	fieldset:last-child {margin-bottom:0;}
legend {margin-bottom:.75em; font-weight:600; font-family: 'Roboto Slab', serif; letter-spacing:2px; text-transform:uppercase;}
label {font-weight:600; margin-bottom:.25em;}
input, textarea, select {line-height:1; padding: 1em 1em; border: 1px solid #dddddd; background-color: #fff; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; font-family: 'Open Sans', sans-serif;}
input:focus, textarea:focus, select:focus {-webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px;}
input[type="checkbox"], input[type="radio"] {padding:0;}
select {cursor:pointer; padding: 1em 2.5em 1em 1em; -webkit-appearance:none; -moz-appearance:none; appearance:none;  text-indent:0.01px; text-overflow:''; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23000000'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat; background-size:12px; background-position:calc(100% - 1em) 60%; background-repeat:no-repeat;}
select::-ms-expand{display:none;}
select::-ms-expand{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;}

.help_text {display:block; font-size:.9em; padding:.5em 0 0 0; margin:0; list-style:none;}
.form_optional {font-size:.9em;}

.required {font-weight:600; color:#990000;}
.required input, .required textarea, .required select {border: 2px solid #990000; background-color:#FAF2F2;}
		
.form {margin-bottom:1.5em;}
.form fieldset input[type="text"], .form fieldset input[type="email"], .form fieldset input[type="password"], .form fieldset input[type="tel"], .form fieldset textarea, .form fieldset select {min-width:40%;}
.form fieldset > div {padding:.5em 0;}
.form fieldset > div > label {display:block;}

.form fieldset > .form_check {margin-bottom:.25em;}
	.form fieldset > .form_check:last-child {margin-bottom:0;}
.form fieldset > .form_check input {float:left; margin-top:.325em }
.form fieldset > .form_check label {margin-top:-1px; padding-left:1.75em;}

.form [disabled="disabled"]{opacity:.60;}

.form.form_horizontal fieldset > div {display: block;}
.form.form_horizontal fieldset > div > label {float:left; text-align:right; width:35%; margin-right:5%;}
.form.form_horizontal fieldset > div > .help_text {margin-left:40%;}
.form.form_horizontal fieldset > .form_check {margin-left:40%;}
.form.form_horizontal fieldset > .form_check label {float:none; text-align:left; width:inherit;}
.form.form_horizontal fieldset > .form_check .help_text {margin-left:0;}

.app_hours label {display:block}
.app_hours div {float:left;}

/*------Directory Search------*/
.directory_search form fieldset {display:flex; align-content: flex-end; margin-bottom:.5em;}
.directory_search form fieldset div:not(:last-child) {margin-right:1em; width:40%;}
.directory_search form fieldset div:last-child {align-self:flex-end;}
.directory_search form fieldset div input {width:100%;}
.directory_search p {margin-bottom:0;}

/*------Login------*/
.form.login {clear:none;}
.form.login fieldset input:not([type="checkbox"]), .form.login fieldset select {width:100%;max-width:none;}
.form.login fieldset > div:not(.form_check) {border-bottom:none;}
.form.login fieldset > div:not(.form_check) > label {width:inherit;padding:0;text-align:left;}
.form.login fieldset input[type="submit"] {width:inherit;}

.form.login .action_list {padding:0; list-style:none; margin:0; display:flex; flex-wrap:wrap; align-items: center;}
.form.login .action_list li:not(:last-child) {margin-right:1.5em;}
.form.login .action_list li:not(.btn) {font-size:.9em; padding:.5em 0;}

/*------Search Bar------*/
.searchbar {display: none; margin:0 auto; padding:.75em 0; background-color:#44928A;}
.search_box form {display:flex; justify-content:flex-end; align-items:center;}
.search_box form input {width:50%; float:left; margin-right:.5em; border-color:#fff;}

/*------buttons------*/

.btn{text-decoration:none;display:inline-block;*display:inline;*zoom:1;background: #336699;color: #fff;line-height: 1;font-weight: 600;font-size: 1rem;margin: 0 .25em .5em 0;padding: 1em 1.5em;cursor: pointer;-moz-border-radius:6px;border-radius:6px;border:1px solid #336699;text-align:center; -webkit-appearance: none; white-space:nowrap;}
	.btn:only-of-type {margin:0;}
	.btn:hover {border-color:#1C2C36;background:#1C2C36;color:#fff;text-decoration:none;}
	.btn:active {background-image: none;outline: 0;-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);-moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);}
.btn-danger {background-color:#cd2026;color:#fff;border-color: #cd2026;}
	.btn-danger:hover {border-color:#1C2C36;background-color:#1C2C36;color:#fff;}
.btn-success {background-color:#2e8540;color: #fff;border-color: #2e8540;}
	.btn-success:hover {border-color:#1C2C36;background-color:#1C2C36;color:#fff;}

.btn-light {background-color:#fff;color:#336699;border-color: #336699;}
	.btn-light:hover {border-color:#1C2C36;background-color:#1C2C36;color:#fff;}

.btn-dark {background-color:#2F4858;color:#fff;border-color: #2F4858;}
	.btn-dark:hover {border-color:#1C2C36;background-color:#1C2C36;color:#fff;}

.btn-special {background-color:#326699;color:#fff;border-color: #326699;}
	.btn-special:hover {border-color:#1C2C36;background-color:#1C2C36;color:#fff;}

.btn > svg {margin-left:.325em; transition:all .2s ease-in-out;}
.btn:hover > svg {transform: translateX(30%);}

.btn-full {display:block;margin:0;}

.btn-group {padding:0; list-style:none; display:flex;}

.btn-xlarge{font-size: 1.25rem;border-radius: 5px;}
.btn-large{font-size: 1.15rem;border-radius: 5px;}
.btn-small{font-size: .875rem;}
.btn-mini{font-size: .75rem; padding: .5em .75em;}

/* accordion */
.accordion {margin: 0; padding: 0; list-style: none;}
.accordion input {display:none;}
.accordion label {display: flex; align-items:center; border: none; padding: .5rem 1rem; margin: 0 0 .25rem 0; width:100%; text-decoration: none; border:1px solid #333000; background-color: #333000; color: #fff; cursor: pointer; text-align: left; transition: ease .3s; -webkit-appearance: none; -moz-appearance: none; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;}
.accordion label:hover, .accordion label:focus {border:1px solid #333000; background-color:#fff; color:#333000;}
.accordion label svg {margin-left:auto;}
	.accordion input:checked + label svg {transition: .3s transform ease-in-out;transform: rotate(180deg);}
.accordion_content {padding: .75rem .75rem;}
.accordion_content ul {list-style-type: initial;}
	.accordion input + label + .accordion_content {display:none;}
	.accordion input:checked + label + .accordion_content {display:block;}

/* Slick Slider */
.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent;}
.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0;}
.slick-list:focus{outline:none;}
.slick-list.dragging{cursor:pointer;cursor:hand;}
.slick-slider .slick-track,
.slick-slider .slick-list{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0);}
.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto;}
.slick-track:before,
.slick-track:after{display:table;content:'';}
.slick-track:after{clear:both;}
.slick-loading .slick-track{visibility:hidden;}
.slick-slide{display:none;float:left;height:100%;min-height:1px;position:relative;}
[dir='rtl'] .slick-slide{float:right;}
.slick-slide img{display:block;}
.slick-slide.slick-loading img{display:none;}
.slick-slide.dragging img{pointer-events:none;}
.slick-initialized .slick-slide{display:block;}
.slick-loading .slick-slide{visibility:hidden;}
.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent;}
.slick-arrow.slick-hidden{display:none;}
.slick-loading .slick-list{background:#fff url('/content/images/ajax-loader.gif') center center no-repeat;}
/* Arrows */
.slick-prev, .slick-next{z-index:1; font-size:0; line-height:0; position:absolute; top:50%; margin-top:-20px; left:30px; display:block; width:40px;height:40px; padding:0; cursor:pointer; color:transparent; border:none; outline:none; background: url('/content/images/chevron-left.svg') center center no-repeat; }
.slick-next {background: url('/content/images/chevron-right.svg') center center no-repeat; left:auto; right:30px;}
.slick-prev:hover, .slick-next:hover, .slick-prev:focus, .slick-next:focus {opacity:.7;}

@media only screen and (max-width: 1200px) {

nav.nav_primary {position:relative; bottom:auto; right:auto; margin-bottom:-23px;}
nav.nav_primary ul.parent {justify-content: center; padding:0;}
nav.nav_primary ul.parent > li {flex-grow:1; flex-basis:fit-content;}
	
.site_header .logo {width:280px; height:68px;}

}

@media only screen and (min-width: 992px) and (max-width: 1199px) {

nav.nav_primary ul.parent > li > ul { left: 50%!important; right:auto!important; margin-left:-100px;}
nav.nav_primary ul.parent li.drop_nav > ul { width: 200px;}

.list_3col {columns: 2; -webkit-columns: 2; -moz-columns: 2;}

}

@media only screen and (max-width: 991px) {

.site_header .logo {width:228px; height:55px; margin:15px 0;}

/* Level 1 Dropdown (All)*/
nav.nav_primary {margin:0;}
nav.nav_primary ul.parent { display:none; margin-bottom:30px;}
	nav.nav_primary ul.parent.show { display:block;}
nav.nav_primary ul.parent > li:not(:last-child) {display:block; width:100%; border-bottom:1px solid #eeeeee;}
nav.nav_primary ul.parent > li.nav_mobile {display:block;}
nav.nav_primary ul.parent > li > a.selected::after, nav.nav_primary ul.parent > li.selected > a::before, nav.nav_primary ul.parent > li > ul {display:none;}
nav.nav_primary li > a svg {display:none;}
.nav_primary_btn, nav.nav_primary .mobile_nav {display:block;}
nav.nav_primary ul.parent li.drop_nav > ul {display:none!important;}

nav.nav_secondary, nav.nav_tertiary ul li:not(:nth-last-child(-n+3)) {display:none;}

nav.nav_tertiary {letter-spacing:normal; padding:7px 0; }

.cookie_notice {text-align:left;}
.cookie_notice > span {display:block; margin:0 0 .5em 0;}

main {padding:2em 0;}

nav.breadcrumb {margin-bottom:2em;}

.directory li {width:50%}

}

@media only screen and (min-width: 769px) and (max-width: 991px) {

h1,.h1{font-size:1.7em;}
h2,.h2{font-size:1.4em;}

.events_list .item {flex-direction: column; align-items:flex-start}
.events_list .item_date {margin:0 0 1.5em 0;}
.events_list .item_text {display:block;}
.events_list .item_text span {display:block;}
.events_list .item_title, .events_list .item_posted {width:100%; padding-right:0; margin-bottom:.5em;}
.events_list .item_description {width:100%; text-align:left;}

.list_3col {columns: 2; -webkit-columns: 2; -moz-columns: 2;}

.user_settings .well > div {width:50%;}

}

@media only screen and (max-width: 768px) {

.col_2x {display: block;}
.col_2x .nav_section, .col_2x .content, .col_2x .related {width:100%; padding-left:0;}
.col_2x .content, .col_2x .related {margin-top:2.5em;}

/* Flex Columns */
.group {display:block; margin:0 0 2em 0;}
	.group > * {padding:0; -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; margin-bottom:2em;}
	.group:last-child, .group > *:last-child {margin-bottom:0;}

/* default breakpoints for table structure */
table.table_structure_4x tr {clear:both;}
table.table_structure_4x tr td {width:47%;}
table.table_structure_4x td.clear {display:block;}

nav.nav_tertiary {text-align:center;}
nav.nav_tertiary .mission {display:none;}
nav.nav_tertiary ul {float:none; justify-content:center;}

.banner h1 {font-size:1em;}

.tab_panel {order:inherit}
.tabs label, .stream-button  {flex-grow:inherit; margin-right:0!important; border-radius:0; width:100%;}
.tabs label:last-of-type, .stream-button:last-of-type {margin-bottom:3px;}

.slick-prev, .slick-next{margin-top:-15px; width:30px; height:30px; left:15px;}
.slick-next {left:auto; right:15px;}

.nav_section_btn, .nav_section_btn .btn {display:block;}
.nav_section {display:none;margin-top:1em;}

/*------Insets & Outsets ------*/
[class*="outset_r"], [class*="outset_l"] {margin:0}

input[type="date"] {-webkit-appearance: textfield; -moz-appearance: textfield; min-height:2em;}

.mobile {display:block;}

}

@media only screen and (min-width: 480px) and (max-width: 768px) {

h1,.h1{font-size:1.5em;}
h2,.h2{font-size:1.3em;}
h3,.h3{font-size:1.25em;}
h4,.h4{font-size:1.1em;}

.list_3col {columns: 2; -webkit-columns: 2; -moz-columns: 2;}

}

/* Interim breakpoint for some phones (landscape) and tablets (portrait) */
@media only screen and (max-width: 640px) {
	
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea, select {width:100%;}

.form.form_horizontal fieldset > div > label {float:none; text-align:left; width:100%; margin-right:0;}
.form.form_horizontal fieldset > div > .help_text {margin-left:0;}
.form.form_horizontal fieldset > .form_check {margin-left:0;}

.search_box form {justify-content:center;}
.search_box form input {width:70%;}

.jobline_filter {display:block;}
.jobline_filter li {margin-bottom:1em; margin-right:0!important;}
.jobline_filter label {display:block; margin-right:0; margin-bottom:.25em;}

nav.page ul li {display:none;}
nav.page ul li.page-prev, nav.page ul li.page-next {display:inline;}

.events_list .item, .member_list .item a {flex-direction: column; align-items:flex-start}
.events_list .item_date {margin:0 0 1.5em 0;}
.events_list .item_text {display:block;}
.events_list .item_text span {display:block;}
.events_list .item_title, .events_list .item_posted {width:100%; padding-right:0; margin-bottom:.5em;}
.events_list .item_description {width:100%; text-align:left;}

.directory_search form fieldset {display:flex; flex-direction:column; align-content: unset;}
.directory_search form fieldset div:not(:last-child) {margin-right:0; width:100%;}
.directory_search form fieldset div:last-child {align-self:unset;}

.user_settings .well > div {width:50%;}

.directory li {width:100%}

}

@media only screen and (min-width: 0px) and (max-width: 479px) {

body{font-size: 16px;}

h1,.h1{font-size:1.35em;}
h2,.h2{font-size:1.25em;}
h3,.h3{font-size:1.2em;}
h4,.h4{font-size:1.1em;}
h5,.h5{font-size:1.05em;}
h6,.h6{font-size:1.05em;}
.lead{font-size:1.1em;}

/* default breakpoints for table structure */
table.table_structure_4x tr td, table.table_structure_3x tr td, table.table_structure_2x tr td {width:100%;margin:0;}
	table.table_structure_4x tr td td, table.table_structure_3x tr td td, table.table_structure_2x tr td td{width: auto;}

nav.nav_tertiary li:not(:last-child) {margin-right: 1em;}

.site_header .logo {width:207px; height:50px; margin:15px 0;}

.nav_primary_btn {top:23px;}

aside, figure {width:auto;float:none;margin-left:0;}

.img_left, .img_right {max-width:33%;}

.list .li-summary {display: none;}

.toolbar li {width:100%; text-align:center;}
.toolbar a {padding:.5em .5em;}

.user_settings > li {display:block;}
.user_settings > li:last-child {position:relative; top:auto; right:auto;}
.user_settings .well > div {width:100%;}

.exchange_list .item {display:block;}
.exchange_list .item_image {margin:0 0 1em 0;}
.exchange_list .item_tags {display:block;}
.exchange_list .item_tags > span {margin:0 0 .5em 0;}

.list_3col {columns: 1; -webkit-columns: 1; -moz-columns: 1;}

/*---form builder captcha---*/
#rc-imageselect, .g-recaptcha {transform:scale(0.77);-webkit-transform:scale(0.77);transform-origin:0 0;-webkit-transform-origin:0 0;}
#rc-imageselect > div, .g-recaptcha > div {margin:0;width:291px!important;}

}

/*Print styles */
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;-ms-filter: none !important; } /* Black prints faster */
  a, a:visited { color: #444 !important; text-decoration: underline; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
  tr, img { page-break-inside: avoid; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3{ page-break-after: avoid; }

}
