/**
 * Resets
 */
*,
*::before,
*::after 	{box-sizing: border-box;}
a			{text-decoration: none;}
body,
h1,
h2,
h3,
h4,
p,
li,
figure,
figcaption,
blockquote,
dl,
dd 			{margin: 0;}
img 		{display: block; height: auto; max-width: 100%;}
input,
button,
textarea,
select 		{font: inherit; border-radius: 0; border-color: #445876;}
small		{display: block;}


/**
 * Tag Styles
 */
body	{letter-spacing: 0.4px; font-weight: 500; font-family: 'Montserrat', sans-serif;}
p		{margin-bottom: 1.1em;}
h1		{margin: 0 0 0.3em; line-height: 1.2; font-size: 36px; font-weight: 700;}
h2		{margin: 0 0 0.4em; line-height: 1.2; font-size: 26px; font-weight: 700;}
h3		{margin: 0 0 0.4em; font-size: 24px; font-weight: 700;}
h4		{margin: 0 0 0.4em; font-size: 20px; font-weight: 700;}
h5		{margin: 0 0 0.4em; font-size: 18px; font-weight: 700;}
h6		{margin: 0 0 0.4em; font-size: 16px; font-weight: 700;}
button	{border-radius: 0; border: 0; background: transparent;}
label	{text-transform: uppercase; font-weight: 700;}
button[type="submit"]	{cursor: pointer;}
figure {
    background-color: #cfdff6;
    overflow-wrap: break-word;
    word-wrap: break-word
}
figcaption		{padding: 40px 0; width: 100%; max-width: 80%; margin: 0 auto; }
a:hover > img	{opacity: 0.8;}

.myh1 {
	margin: 0 0 0.3em;
	line-height: 1.2;
	font-size: 36px;
	font-weight: 700;
}
/**
 * Classes
 */
.primaryWidth	{width: 100%; max-width: 1920px; margin: 0 auto;}
.mobile			{display: none;}
.menu			{margin: 0; padding: 0; list-style: none;}
.hidden			{display: none;}
.screen-reader-text	{border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important;}
.display-inline		{display: inline;}
.display-block		{display: block;}
.display-inline-block{display: inline-block;}
.text-normal		{text-transform: none !important;}
.text-uppercase		{text-transform: uppercase !important;}

.margin-0			{margin: 0 !important;}
.margin-top-40		{margin-top: 40px;}
.margin-bot-40		{margin-bottom: 40px;}
.margin-bot			{margin-bottom: 1.1em;}
.padding-0			{padding: 0 !important;}
.padding-top-40		{padding-top: 40px;}
.padding-top-60		{padding-top: 60px;}
.padding-bot-40		{padding-bottom: 40px;}

.underline				{text-decoration: underline;}
a.underline:hover,
button.underline:hover	{text-decoration: none;}

.textalign-center	{text-align: center;}
.textalign-left		{text-align: left;}
.textalign-right	{text-align: right;}

img.aligncenter		{margin: 0 auto 1.1em;}
img.alignleft		{margin: 0 1.1em 0 0;}
img.alignright		{margin: 0 0 0 1.1em;}

.list-simple		{padding-left: 30px;}
.list-spaced > li	{margin-bottom: 1.1em;}
.list-spaced > :last-child	{margin-bottom: 0;}

.ico-justify			{display: flex; flex-direction: column; justify-content: space-between; width: 25px; height: 15px; margin-right: 4px;}
.ico-justify:after,
.ico-justify:before,
.ico-justify > span		{content: ''; width: 100%; height: 3px; background-color: #fff;}

.color-primary		{color: #e51937 !important;}
.color-secondary	{color: #445876 !important;}
.color-tertiary		{color: #647793 !important;}
.color-complimentary{color: #273855 !important;}
.color-good {
	color: darkgreen !important;
}
/* Fonts */
.font-montserrat	{font-family: 'Montserrat', sans-serif;}
.weight-400			{font-weight: 400;}
.weight-500			{font-weight: 500;}
.weight-600			{font-weight: 600;}
.weight-700			{font-weight: 700;}
.size-70			{font-size: 70%;}
.size-80			{font-size: 80%;}
.size-90			{font-size: 90%;}
.size-100			{font-size: 100%;}
.size-110			{font-size: 110%;}
.size-125			{font-size: 125%;}
.size-150			{font-size: 150%;}
.size-175			{font-size: 175%;}
.size-200			{font-size: 200%;}

/* Buttons */
.btn			{display: inline-block; padding: 8px 12px; border: 2px solid; text-align: center; text-transform: uppercase; font-weight: 700;}

.btnPrimary			{border-color: #e51937; color: #fff; background-color: #e51937;}
.btnPrimary:hover	{border-color: #781130; color: #fff; background-color: #781130;}

.btnSecondary		{border-color: #445876; color: #fff; background-color: #647793;}
.btnSecondary:hover	{border-color: #121e37; color: #fff; background-color: #273855;}

.btnTertiary		{border-color: #445876; color: #fff; background-color: #445876;}
.btnTertiary:hover	{border-color: #445876; color: #fff; background-color: #647793;}

.btnComplimentary		{border-color: #aed5f3; color: #445876; background-color: #aed5f3;}
.btnComplimentary:hover	{border-color: #77b2e8; color: #445876; background-color: #77b2e8;}

.btnWhite		{border-color: #e51937; color: #e51937; background-color: #fff;}
.btnWhite:hover	{border-color: #e51937; color: #e51937; background-color: rgba( 229, 25, 55, 0.1 );}

.btn100			{width: 100%;}
.btnLarge		{padding: 33px 12px; line-height: 1.2; font-weight: 700;}
.btnMedium		{width: 100%; max-width: 420px; padding: 4px 10px; font-weight: 700;}
.btnLong		{width: 100%; padding: 8px 10px; font-size: 36px; font-weight: 700;}

/* Navigation Bars */
.navbar,
.navbar a			{text-transform: uppercase; font-weight: 700;}
.navbar				{color: #fff; background-color: #445876;}
.navbar a			{display: block; color: #fff;}
.navbar .menu > li	{padding: 10px 0;}
.navbar .menu > li > a			{padding: 3px 20px; border-left: 1px solid; border-right: 1px solid; border-color: #fff;}
.navbar .menu > li:first-child > a	{border-left: 0;}
.navbar .menu > li:last-child > a	{border-right: 0;}
.navbar .menu > li:hover			{background-color: #273855;}
.navbar .sub-menu	{display: none; list-style: none;}

/* Flexbox */
.flex,
.flex-2,
.flex-3,
.flex-4				{display: flex;}
.flex-2 > *			{width: 50%;}
.flex-3 > *			{width: 33.33%;}
.flex-4 > *			{width: 25%;}
.flex-inline		{display: flex;}
.flex-inline > *	{margin-right: 12px;}
.flex-inline > :last-child	{margin-right: 0;}
.flex-row			{-webkit-flex-direction: row; flex-direction: row;}
.flex-col			{-webkit-flex-direction: column; flex-direction: column;}
.flex-wrap			{-webkit-flex-wrap: wrap; flex-wrap: wrap;}
.flex-hor-center	{-webkit-justify-content: center; justify-content: center;}
.flex-hor-end		{-webkit-justify-content: flex-end; justify-content: flex-end;}
.flex-hor-between	{-webkit-justify-content: space-between; justify-content: space-between;}
.flex-hor-around	{-webkit-justify-content: space-around; justify-content: space-around;}
.flex-vert-center	{-webkit-align-items: center; align-items: center;}
.flex-vert-end		{-webkit-align-items: flex-end; align-items: flex-end;}

/* Grid */
.grid,
.grid-1,
.grid-2,
.grid-2-1,
.grid-3,
.grid-4		{display: grid; column-gap: 40px;}
.grid-2		{grid-template-columns: repeat( 2, 1fr );}
.grid-3		{grid-template-columns: repeat( 3, 1fr );}
.grid-4		{grid-template-columns: repeat( 4, 1fr );}
.grid-2-1	{grid-template-columns: repeat( 3, 1fr );}
.grid-2-1 > :first-child	{grid-column-end: 2 span;}

/* Image Slider */
.image-slider			{position: relative;}
.image-slider > *		{display: none; opacity: 0; position: absolute; top: 0; z-index: 1;}
.image-slider > .active	{display: block; opacity: 1; position: static; z-index: 2;}

/* Owl Carousel */
.owl-carousel .owl-nav				{margin-top: 0; opacity: 0;}
.owl-carousel.owl-theme .owl-nav button	{position: absolute; top: 50%; transform: translateY( -50% ); font-size: 40px; color: #aaa; background: none !important; outline: none;}
.owl-carousel.owl-theme .owl-nav button:hover	{color: #777;}
.owl-carousel .owl-nav .owl-prev	{left: 4px;}
.owl-carousel .owl-nav .owl-next	{right: 4px;}
.owl-carousel:hover .owl-nav		{opacity: 1;}


/**
 * Header
 */
#headerWrapper	{padding: 0 0 4px; background-color: #fff;}
#logo			{width: 33.33%; padding: 60px 75px;}
#headerBanner	{width: 66.67%; color: #fff; background-repeat: no-repeat; background-position: center left; background-size: cover;}
#headerBanner > a		{display: block; min-width: 186px; padding: 25px 33px; margin-left: 60px; border: 3px solid #fff; line-height: 1.2; text-transform: uppercase; text-align: center; font-size: 32px; color: #fff; background-color: rgba( 229, 25, 55, 0.85 );}
#headerBanner > a > *	{display: block;}


/**
 * Main Navigation
 */
#mainNav						{position: relative; font-size: 18px;}
#mainNav > div.mobile			{width: 100%;}
#mainNav.has-secondary:before	{content: ''; display: block; width: 33.33%;}

#mainMenu	{width: 75%;}
#mainMenu li.has-children > a:after			{content: "\25BC"; display: inline-block; margin-left: 4px; transform: rotate( 0deg );}
#mainMenu li.has-children:hover > a:after	{transform: rotate( 180deg );}

#mainMenu ul.sub-menu				{display: block; position: absolute; z-index: -10; margin-top: -10px; padding: 0; opacity: 0; background: #fff; box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.4);}
#mainMenu > li:hover > .sub-menu	{margin-top: 10px; opacity: 1; z-index: 10;}
#mainMenu ul.sub-menu li a			{padding: 8px 20px; text-transform: uppercase; font-weight: 700; color: #445876; background-color: #fff;}
#mainMenu ul.sub-menu li a:hover	{background-color: #d7d7d7;}

#secondaryMenu {width: 25%;}
#secondaryMenu li.has-children > a:after {content: "\25BC"; display: inline-block; margin-left: 4px; transform: rotate( 0deg );}
#secondaryMenu li.has-children:hover > a:after {transform: rotate( 180deg );    }

    #secondaryMenu ul.sub-menu {
        display: block;
        position: absolute;
        z-index: -10;
        margin-top: -10px;
        padding: 0;
        opacity: 0;
        background: #fff;
        box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.4);
    }

    #secondaryMenu > li:hover > .sub-menu {
        margin-top: 10px;
        opacity: 1;
        z-index: 10;
    }

    #secondaryMenu ul.sub-menu li a {
        padding: 8px 20px;
        text-transform: uppercase;
        font-weight: 700;
        color: #445876;
        background-color: #fff;
    }

    #secondaryMenu ul.sub-menu li a:hover {
            background-color: #d7d7d7;
        }

/* Mobile Navigation */
#openMobileMenu	{width: 100%; padding: 14px; line-height: 1; text-transform: uppercase; color: #fff; font-size: 18px; font-weight: 700; cursor: pointer;}
#openMobileMenu:hover,
#openMobileMenu.active	{background-color: #273855;}


/**
 * Content Wrapper
 */
#contentWrapper	{padding: 4px 0; line-height: 1.6; font-size: 18px; color: #445876; background-color: #fff;}

#contentWrapper .sidebar .widget		{position: relative; margin-bottom: 40px;}
#contentWrapper .sidebar > :last-child	{margin-bottom: 0;}


/**
 * Sidebar - Left
 */
#sidebarLeft	{width: 33.33%;}

/*
#sidebarLeft {
	flex: 33.33% 1 1;
	max-width: 33.33%;
}
*/

#sidebarLeft figcaption h3	{text-transform: uppercase; font-size: 18px;}

/* Figure - Overlaid Text */
#sidebarLeft .text-overlay	{position: relative;}
#sidebarLeft .text-overlay .text-to-overlay {position: absolute; top: 50%; transform: translateY( -50% ); display: block; width: 100%; padding: 3px 10px; border-top: 3px solid #fff; border-bottom: 3px solid #fff; text-align: center; line-height: 1.2; text-transform: uppercase; font-size: 40px; font-weight: 700; color: #fff; background-color: rgba( 229, 25, 55, 0.85 );}

/* Figure Captions */
#sidebarLeft .link-c2a	{display: block; text-align: center; padding: 3px 10px; border-top: 3px solid #fff; border-bottom: 3px solid #fff; text-align: center; text-transform: uppercase; font-weight: 500; color: #fff; background-color: #e51937;}

/* Linked List - Flex Column */
#sidebarLeft .link-list		{height: 100%; min-height: 100%;}
#sidebarLeft .link-list > a	{flex: 1; display: flex; justify-content: center; align-items: center; margin-bottom: 5px; padding: 20px; text-align: center; text-transform: uppercase; font-size: 36px; font-weight: 700; color: #445876; background-color: #aed5f3;}
#sidebarLeft .link-list > a:hover,
#sidebarLeft .link-list > a.active		{background-color: #77b2e8;}
#sidebarLeft .link-list > a:last-child	{margin-bottom: 0;}

/**
 * Content
 */
#contentWrapper.sidebar-both #content	{width: 50%;}
#contentWrapper.sidebar-left #content	{width: 66.67%;}
#contentWrapper.sidebar-right #content	{width: 83.33%;}

#contentWrapper ::-webkit-scrollbar 				{width: 20px;}
#contentWrapper ::-webkit-scrollbar-button			{display: none;}
#contentWrapper ::-webkit-scrollbar-thumb			{background: #445876; border: 0; border-radius: 30px;}
#contentWrapper ::-webkit-scrollbar-thumb:hover,
#contentWrapper ::-webkit-scrollbar-thumb:active	{background: #445876;}
#contentWrapper ::-webkit-scrollbar-track			{border: 1px solid #445876; border-bottom: 0; border-right: 0; border-radius: 0; background: #ffffff;}
#contentWrapper ::-webkit-scrollbar-track:hover,
#contentWrapper ::-webkit-scrollbar-track:active 	{background: #ffffff;}
#contentWrapper ::-webkit-scrollbar-corner 			{display: none; width: 0; height: 0;}

#content		{padding: 90px 56px; font-size: 18px;}
#content:after	{content: ''; display: table; clear: both;}
#content.compact{padding: 40px 56px;}
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6		{color: #e51937;}

#content .header-special	{font-size: 42px; font-weight: 500; color: #445876;}

#content a:not(.btn)		{color: #445876;}
#content a:not(.btn):hover	{color: #e51937;}

#content small			{font-size: 12px; font-weight: 600;}
#content .size-150		{line-height: 1.2;}

#content > ul,
#content > ol,
#content > table		{margin-bottom: 1.1em;}
#content > :last-child	{margin-bottom: 0 !important;}

#content .linkgroup > *	{margin-right: 20px;}
#content .linkgroup > :last-child	{margin-right: 0;}

/* Page - FAQ Loation Specific */
#content.faq-flex		{display: flex; align-items: flex-start}

/* Page - Group Volunteer opportunities Specific */
#content.group-opportunities-flex	{display: flex;}

/* Page - Shift Thanks */
#content .thanks-flex				{display: flex;}
#content .thanks-flex .content-section-right	{width: 450px; min-width: 450px; margin-left: 40px;}

/* Page - Available Shifts */
#reserveShift.grid-4	{grid-gap: 6px;}

/* Content Tables */
#content .table-scroller			{position: relative; border: 1px solid #445876; border-top: 0; overflow-y: auto;}
#content .table-scroller table		{border: 0;}
#content .table-scroller thead th	{position: sticky; top: 0; border-top: 1px solid #445876;}

#content table			{width: 100%; border: 1px solid #445876; border-collapse: separate; border-spacing: 0; font-weight: 600; color: #445876;}
#content table tr.shaded > *	{background-color: #e1f0fb;}
#content table td,
#content table th		{vertical-align: top; padding: 8px 12px; border-bottom: 1px solid #445876;}
#content table th		{text-align: left; text-transform: uppercase; background-color: #aed5f3;}
#content table tbody > tr:last-child > *	{border-bottom: 0;}

#content table.theme-clean			{border: 0;}
#content table.theme-clean thead th,
#content table.theme-clean tbody td	{border-bottom: 1px solid #445876;}
#content table.theme-clean thead th	{text-transform: none; background-color: transparent;}

#content table tr.theme-light td	{background-color: #e1f0fb;}

#content table .actions-minwidth	{min-width: 200px;}

/* Module - Edit Table Row */
#content table a.active				{font-weight: 700; color: #e51937;}
#content table tr.edit-row			{position: relative;}
#content table tr.edit-row td		{padding: 12px; background-color: #aed5f3;}
#content table tr.edit-row form		{margin: 0 0 1.1em;}
#content table tr.edit-row form:last-child	{margin-bottom: 0;}
#content table tr.edit-row .flex			{margin-bottom: 3px;}
#content table tr.edit-row > :last-child	{margin-bottom: 0;}
#content table tr.edit-row .flex > * 		{flex: 1; margin-left: 3px;}
#content table tr.edit-row .flex > :first-child {margin-left: 0;}
#content table tr.edit-row label,
#content table tr.edit-row input,
#content table tr.edit-row select,
#content table tr.edit-row textarea	{padding: 4px 12px; border-width: 1px;}
#content table tr.edit-row label,
#content table tr.edit-row input	{height: 34px; box-sizing: border-box;}
#content table tr.edit-row label	{border: 1px solid #445876; text-transform: none; background-color: #fff;}
#content table tr.edit-row .btn			{padding: 4px 12px; box-sizing: border-box; text-align: center; font-size: 90%;}
#content table tr.edit-row .btn.active	{color: #fff;}
#content table tr.edit-row .edit-small	{width: 100px; max-width: 100px; min-width: 100px;}

/* Forms & Form Inputs */
#content form					{margin: 1.1em 0;}
#content form .input			{display: block; width: 100%; padding: 1px 6px; border: 1px solid #445876; font-weight: 700; color: #445876; background-color: #fff;}
#content form select.input,
#content form select.input option		{font-weight: 700; color: #6b9cc1;}
#content form .input-wrap .description	{display: block; margin-top: 4px; margin-bottom: 0; font-size: 70%; font-style: italic;}

/** Special Large Zipcode **/
#content form .special-zip		{width: 100%; padding: 30px 15px; border-width: 2px; text-align: center;}
#content form .special-zip::placeholder	{text-transform: uppercase; color: #e51937;}

/** Label Top, Input Bottom **/
#content form .input-block				{margin-bottom: 0.6em;}
#content form .input-block label		{display: block; margin-bottom: 2px;}
#content form .input-block .input		{padding: 0 6px;}
#content form .input-block select.input	{padding: 2px 6px;}

/** Label Left, Input Right **/
#content form .input-row		{display: flex; align-items: center; margin-bottom: 15px;}
#content form .input-row label	{display: block; width: 180px; padding-right: 20px;}
#content form .input-row .input-wrap	{width: 100%; width: calc( 100% - 180px );}
#content form .input-row .input			{padding: 7px 20px;}
#content form .input-row select.input	{padding: 9px 20px;}
#content form .input-row:nth-of-type(even) .input	{background-color: #ebebeb;}

/** Date Range, From/To **/
#content form .daterange		{display: flex;}
#content form .daterange > *	{width: 50%;}
#content form .daterange .daterange-divider	{display: block; padding: 2px; text-align: center; text-transform: uppercase; font-weight: 700; color: #fff; background-color: #445876}

/** Boxed Input Checkbox/Radio **/
#content form .inputgroup-row,
#content form .inputgroup-column		{text-transform: uppercase; border: 1px solid #445876;}

#content form .inputgroup-row					{text-align: center;}
#content form .inputgroup-row > *				{border-left: 1px solid #445876;}
#content form .inputgroup-row > :first-child	{border-left: 0}

#content form .inputgroup-column				{text-align: left; overflow-y: auto;}
#content form .inputgroup-column label			{text-transform: none;}
#content form .inputgroup-column > *			{border-top: 1px solid #445876;}
#content form .inputgroup-column > :first-child	{border-top: 0}
#content form .inputgroup-column label > div	{padding: 12px;}
#content form .inputgroup-column label.inputgroup-indented > div	{padding-left: 40px;}

#content form label.inputgroup-boxed	{position: relative; margin: 0; cursor: pointer;}
#content form .inputgroup-boxed input	{border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important;}
#content form .inputgroup-boxed > div,
#content form .inputgroup-empty > div	{width: 100%; padding: 2px; color: #445876; background-color: #f7f9fb; cursor: pointer;}
#content form .inputgroup-boxed input:focus + div,
#content form .inputgroup-boxed input:hover + div,
#content form .inputgroup-boxed input:active + div	{background-color: rgba(247, 249, 251, 0.8);}
#content form .inputgroup-titlebar > div,
#content form .inputgroup-boxed input:checked + div	{background-color: #d8e8ff;}

#content form label.inputgroup-empty,
#content form label.inputgroup-empty > div		{cursor: unset;}
#content form label.inputgroup-titlebar,
#content form label.inputgroup-titlebar > div	{cursor: unset;}

#content form .theme-darker .inputgroup-empty > div,
#content form .theme-darker .inputgroup-boxed input + div			{background-color: #e1f0fb;}
#content form .theme-darker .inputgroup-boxed input:focus + div,
#content form .theme-darker .inputgroup-boxed input:hover + div		{background-color: rgba(174, 213, 243,0.75);}
#content form .theme-darker .inputgroup-titlebar > div,
#content form .theme-darker .inputgroup-boxed input:checked + div	{background-color: #aed5f3;}

/** Listed Checkbox/Radio - Stylized Inputs **/
#content form .inputgroup-listed label	{display: flex;}
#content form .inputgroup-listed input	{border-style: none;
    border-color: inherit;
    border-width: 0;
    clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 0px; 
    word-wrap: normal !important;
    top: 2493px;
    left: 57px;
}
#content form .inputgroup-listed input + span			{display: flex; justify-content: center; align-items: center; width: 14px; min-width: 14px; max-width: 14px; height: 14px; margin: 6px 16px 0 2px; border: 1px solid #a1abba; box-shadow: 1px 1px 1px 1px #445876; background-color: #fff;}
#content form .inputgroup-listed.size-125 input + span	{margin-top: 12px;}
#content form .inputgroup-listed input + span:before	{content: ''; display: none; width: 8px; height: 8px;}
#content form .inputgroup-listed input[type="radio"] + span			{border-radius: 15px;}
#content form .inputgroup-listed input[type="radio"] + span:before	{border-radius: 6px;}
#content form .inputgroup-listed input:hover + span:before,
#content form .inputgroup-listed input:active + span:before			{display: block; background-color: #aed5f3;}
#content form .inputgroup-listed input:checked + span:before		{display: block; background-color: #445876;}

/* Module - Message Box */
#content .messagebox			{margin: 1.1em 0; padding: 20px; border: 1px solid #445876; background-color: #cfdff6; overflow-y: auto;}
#content .messagebox > :last-child	{margin-bottom: 0;}

/* Module - Video */
#content .videowrapper			{width: 520px; min-width: 520px; margin-left: 40px;}
#content .videowrapper h2		{font-size: 34px; line-height: 1.2;}
#content .videowrapper .video-player			{position: relative; margin-top: 20px; padding-bottom: 56.25%;}
#content .videowrapper .video-player > iframe	{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

/* Module - Inline Socials */
#content .socials-inline			{display: flex; justify-content: center; align-items: center;}
#content .socials-inline > a + a	{margin-left: 12px;}

/* Module - Location Box */
#content .locationinfo			{padding: 30px; border: 1px solid #a0aab9; color: #445876; background-color: #f0f5fd;}
#content .locationinfo h3		{line-height: 1.2;}
#content .locationinfo p		{margin-bottom: 0.4em;}
#content .locationinfo strong	{display: block;}
#content .locationinfo > :last-child		{margin-bottom: 0;}
#content .locationinfo .color-primary:hover	{color: #445876 !important;}

/* Module - Content Block */
#content .content-block	{padding: 40px; background-color: #e5effd;}

/* Module - Progress Arrows / Progress Navigation */
#content .progress-arrows		{display: flex; flex-wrap: wrap; width: 100%; width: calc( 100% - 20px ); text-align: center; text-transform: uppercase; background-color: #fff;}
#content .progress-arrows a		{flex: 1; position: relative; margin-bottom: 1px; padding: 8px 0 8px 28px; white-space: nowrap; font-size: 16px; font-weight: 700; color: #fff; background-color: #98a1af;}
#content .progress-arrows a:first-child:before	{display: none;}
#content .progress-arrows a:after,
#content .progress-arrows a:before	{content: ''; position: absolute; top: 0; width: 0; height: 0;}
#content .progress-arrows a:before	{left: 0; top: -2px; border-left: 22px solid #fff; border-top: 22px solid transparent; border-bottom: 22px solid transparent;}
#content .progress-arrows a:after	{right: -20px; z-index: 2; border-left: 20px solid #98a1af; border-top: 20px solid transparent; border-bottom: 20px solid transparent;}
#content .progress-arrows a:hover,
#content .progress-arrows a.active			{color: #fff; background-color: #445876;}
#content .progress-arrows a:hover:after,
#content .progress-arrows a.active:after	{border-left-color: #445876;}
#content .progress-arrows .btnBack	{max-width: 150px;}

/* Module - OR Columns */
#content .module-or					{margin-bottom: 1.1em;}
#content .module-or .flex-3 > *		{width: 42%;}
#content .module-or .flex-3 > span	{width: 16%; margin: 0 0 auto; padding: 33px 0; font-size: 36px; font-weight: 700; color: #445876;}
#content .module-or .flex-3 .btnLarge	{display: block; padding-left: 20px; padding-right: 20px;}
#content .module-or .flex-3 .btnLarge + *	{margin-top: 12px;}


/**
 * Sidebar - Right
 */
#sidebarRight	{width: 16.67%;}


/**
 * Footer
 */
#mainFooter			{font-size: 16px;}
#mainFooter .menu	{letter-spacing: 2px;}


/**
 * Animations
 */
a,
.btn,
button,
.menu a,
.menu li	{transition: color 0.4s, background 0.4s, background-color 0.4s;}
img,
.owl-carousel:hover .owl-nav		{transition: opacity 0.4s;}
#mainMenu li.has-children > a:after	{transition: transform 0.4s;}
#content .progress-arrows a:after,
#content .progress-arrows a:before	{transition: border-color 0.4s;}
ul.menu ul.sub-menu					{transition: margin 0.4s, opacity 0.4s, z-index 0.4s step-end;}
ul.menu > li:hover > ul.sub-menu	{transition: margin 0.4s, opacity 0.4s, z-index 0.4s step-start;}


/**
 * Mobile/Media Queries
 */
@media( max-width: 1500px ) {

	#content .videowrapper					{min-width: 0;}
	#content.group-opportunities-flex		{flex-wrap: wrap;}
	#content.group-opportunities-flex .videowrapper	{width: 100%; margin-left: 0;}
	
}


@media( max-width: 1441px ) {

	
	#contentWrapper.sidebar-both				{flex-wrap: wrap;}
	#contentWrapper.sidebar-both #content		{width: 66.67%;}
	#contentWrapper.sidebar-both #sidebarRight	{width: 66.67%; margin-left: auto; margin-right: 0;}
	
}


@media( max-width: 1240px ) {
	
	.text-overlay figcaption	{font-size: 30px;}
	.btnLarge					{font-size: 24px;}
	.navbar .menu > li > a		{padding-left: 12px; padding-right: 12px; font-size: 16px;}
	
	#logo							{padding-left: 20px; padding-right: 20px;}
	#mainNav.has-secondary:before	{display: none;}
	#content						{padding: 60px 20px;}
	#content.compact				{padding: 40px 20px;}
	#sidebarLeft .link-list > a		{font-size: 30px;}
	#content .thanks-flex			{flex-wrap: wrap;}
	#content .thanks-flex .content-section-right	{width: 100%; min-width: 0; max-width: none; margin-left: 0;}
	
	#content .grid-2-1			{grid-template-columns: 1fr;}
	.grid, .grid-1, .grid-2,
	.grid-2-1, .grid-3, .grid-4	{column-gap: 20px;}
	
}


@media( max-width: 1120px ) {
	
	.grid-4			{grid-template-columns: repeat( 2, 1fr );}
	.grid-4 input,
	.grid-4 button	{padding: 2px 6px;}
	
	#content.faq-flex,
	#content.group-opportunities-flex	{flex-wrap: wrap;}
	#content.faq-flex .locationinfo,
	#content.group-opportunities-flex .videowrapper	{width: 100%; margin-left: 0;}
	#content form .input-block label	{font-size: 90%;}
	
	#content table tr.edit-row form.flex		{display: flex; flex-wrap: wrap;}
	#content table tr.edit-row form.flex > *	{flex: unset; width: 100%; margin-bottom: 3px; margin-left: 0;}
	
}


@media( max-width: 950px ) {
	
	.mobile,
	.display-mobile		{display: block;}
	.hide-laptop-l {
		display: none;
	}
	
	#mainHeader			{padding: 0 20px;}
	#logo				{padding: 20px 0;}
	#headerWrapper #mainHeader > *{width: 50%;}
	#headerBanner		{background-image: none !important;}
	#headerBanner > a	{width: 100%; padding-left: 12px; padding-right: 12px; border: 0; font-size: 26px; background-color: #e51937;}
	
	#mainNav > ul.menu	{display: none;}
	#mainMenu			{position: absolute; top: 100%; left: 0; width: 100%; z-index: 100;}
	#mainMenu li		{padding: 0; text-align: center; border-bottom: 3px solid #fff; background-color: #647793;}
	#mainMenu a			{padding: 14px; border: 0; font-size: 24px; color: #fff;}
	#mainMenu li:hover	{background-color: #273855;}
	#mainMenu ul.sub-menu		{display: none; position: static; margin: 0; opacity: 1; box-shadow: none; background: transparent;}
	#mainMenu ul.sub-menu li	{border: 0; background-color: transparent;}
	#mainMenu ul.sub-menu li a	{display: block; width: 90%; margin: 0 auto; border-top: 1px solid #fff; font-size: 20px; background-color: transparent; color: #fff;}
	#mainMenu ul.sub-menu li:hover,
	#mainMenu ul.sub-menu li:hover a	{background-color: #647793;}
	#mainMenu > li:hover > .sub-menu	{margin-top: 0; opacity: 1;}
	#mainMenu > li:last-child			{border-bottom: 0;}
	
	#contentWrapper.has-sidebar		{flex-wrap: wrap;}
	#contentWrapper.has-sidebar > *	{width: 100% !important;}
	
	#sidebarLeft *,
	#sidebarRight *	{margin: 0 auto; text-align: center;}
	#sidebarLeft .link-list,
	#sidebarLeft .link-list	a	{display: block;}
	#sidebarLeft .link-list	a	{font-size: 6vw;}
	
}


@media( max-width: 768px ) {
	
	.grid-3		{grid-template-columns: repeat( 2, 1fr );}
	
	#headerBanner > a	{margin-left: 20px; font-size: 3vw;}
	
	#content .module-or .flex-3			{flex-direction: column;}
	#content .module-or .flex-3 > *		{width: 100%;}
	#content .module-or .flex-3 > span	{display: none;}
	
	#content table,
	#content .table-scroller,
	#content .table-scroller table	{border: 0;}
	#content table thead		{display: none;}
	#content table tr:not(.hidden)	{display: block;}
	#content table tr			{margin-bottom: 20px; border: 1px solid #445876;}
	#content table td			{display: flex;}
	#content table td > .flex	{display: inline-flex; width: 100%;}
	#content table td:last-child{border-bottom: 0;}
	#content table td:before	{content: attr( data-label ) ":"; display: inline-block; width: 140px; min-width: 140px; margin-right: 20px;}
	#content table tr.no-mobile-label td		{display: block;}
	#content table tr.no-mobile-label td:before	{display: none;}
	
	#content .btnLong	{font-size: 5vw;}
	
	#content form .daterange		{flex-wrap: wrap;}
	#content form .daterange > *	{width: 100%;}
	#content form .daterange-divider{width: 100% !important;}
	
}


@media( max-width: 640px ) {
	
	.grid-2,
	.grid-3,
	.grid-4	{grid-template-columns: 1fr;}
	
	#content	{padding-left: 20px; padding-right: 20px;}
	#content h1.header-special	{font-size: 7.4vw;}
	
	#footerWrapper .menu > li > a 	{padding-left: 6px; padding-right: 6px; font-size: 12px;}
	
}


@media( max-width: 540px ) {
	
	#content .progress-arrows a			{flex: unset; width: 100%;}
	#content .progress-arrows .btnBack	{max-width: none;}
	#content form .special-zip			{font-size: 16px;}
	#content form.zipform-flex			{flex-wrap: wrap;}
	#content form.zipform-flex > *		{width: 100%;}
	
}


@media( max-width: 450px ) {
	
	#sidebarLeft .text-overlay .text-to-overlay	{font-size: 6vw;}
	
	#mainHeader			{flex-direction: column; padding: 0;}
	#logo				{padding: 20px;}
	#headerWrapper #mainHeader > *{width: 100%;}
	#headerBanner > a	{margin-left: 0; font-size: 5vw;}
	#contentWrapper		{font-size: 5.2vw;}
	#contentWrapper .size-90	{font-size: 80%;}
	#contentWrapper .size-80	{font-size: 75%;}
	#contentWrapper .size-70	{font-size: 65%;}
	#content table td:before	{width: 100px; min-width: 100px;}
	
	#content form .input-row	{flex-wrap: wrap;}
	#content form .input-row .input-wrap	{width: 100%;}
	
	#content .linkgroup	{flex-wrap: wrap;}
	
	#footerWrapper .menu		{display: block; text-align: center;}
	#footerWrapper .menu li		{padding: 0;}
	#footerWrapper .menu li	a	{padding: 8px; border: 0; border-bottom: 1px solid #fff;}
		
}

#myCookieConsent {
	z-index: 999;
	min-height: 20px;
	font-family: OpenSans, arial, "sans-serif";
	padding: 10px 20px;
	background: rgba(100,119,147,1);
	overflow: hidden;
	position: fixed;
	color: #FFF;
	top: 0px;
	right: 10px;
	display: none;
	left: 0px;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
}

	#myCookieConsent div {
		padding: 5px 0 0;
	}

	#myCookieConsent a {
		color: #fff;
		background-color: #647793;
		border-color: darkred;
		display: inline-block;
		padding: 2px 20px;
		border-radius: 30px;
	}

		#myCookieConsent a:hover {
			color: #fff;
			background-color: #273855;
		}

		#myCookieConsent a#cookieButton {
			display: inline-block;
			color: #fff;
			font-size: 1.1em;
			background: #647793;
			border-color: darkred;
			text-decoration: none;
			cursor: pointer;
			padding: 2px 20px;
			float: right;
			border-radius: 30px;
		}

		#myCookieConsent a#cookieButton:hover {
			background: #273855;
			color: #fff;
		}

		.tooltip {
			position: relative;
			display: inline-block;
			cursor: pointer;
		}

		.tooltip .tooltiptext {
			visibility: hidden;
			width: 120px;
			background-color: #333;
			color: #fff;
			text-align: center;
			border-radius: 6px;
			padding: 5px;
			position: absolute;
			z-index: 1;
			bottom: 125%;
			left: 50%;
			margin-left: -60px;
			opacity: 0;
			transition: opacity 0.3s;
		}

		.tooltip:hover .tooltiptext {
			visibility: visible;
			opacity: 1;
		}

