/* Main Stylesheet for Northwestern Theme - SchoolSite */

@import url('https://fonts.googleapis.com/css?family=Epilogue:400,500,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Archivo:700&display=swap');
@import '../../_common/css/accred_logo.css';

/**** Fonts 

font-family: 'Archivo', sans-serif; (only used on H6)
font-family: 'Epilogue', sans-serif;

*****/

/***** Default Font Size (used for determining REMs

16px

*********/

html,body{ font-family: 'Epilogue', sans-serif; font-size: 100%; margin: 0; padding: 0; color: #262626; position: relative;}
html{ overflow-x: hidden; overflow-y: auto;}

.flex{ display: flex;}

.wrapper{ margin: 0 auto; width: 90%; max-width: 1170px;}

*.white{ color: #fff;}

.mobile{ display: none;}

svg{ vertical-align: middle;}

h1,h2,h3,h4,h5,h6, .tool_headline1, .tool_headline2{ margin: 10px 0; padding: 0; font-weight: 700;}

h1{ font-family: 'Epilogue', sans-serif; font-size: 3.4375rem; line-height: 118%;}
h2{ font-family: 'Epilogue', sans-serif; font-size: 2.8125rem; line-height: 122%;}
h3, .tool_headline1{ font-family: 'Epilogue', sans-serif; font-size: 1.75rem; line-height: 129%;}
h4, .tool_headline2{ font-family: 'Epilogue', sans-serif; font-size: 1.25rem; line-height: 140%;}
h5{ font-family: 'Epilogue', sans-serif; font-size: 1.125rem; line-height: 156%;}
h6{ font-family: 'Archivo','Epilogue', sans-serif; text-transform: uppercase; letter-spacing: 2px; font-size: 0.875rem; line-height: 143%;}

p{ font-size: 1rem; line-height: 175%; color: #262626; font-weight: 400; margin: 10px 0; padding: 0;}
p.small{ font-size: 0.875rem; line-height: 170%;}
p.large{ font-size: 1.25rem; line-height: 140%;}
a{ text-decoration: none; transition: all 0.3s;}
#main_container ul, #main_container ol{ font-size: 1rem; line-height: 175%; color: #262626; font-weight: 400;}

blockquote{ display: block; background: rgba(var(--color-rgb-1),0.15); padding: 1rem 1.25rem; margin: 2rem 0; border-radius: 6px;}
blockquote > *{ font-size: 1.25rem !important; line-height: 175% !important; font-family: 'Epilogue', sans-serif !important;}

/** Theme Buttons **/
a.button{ display: inline-flex; justify-content: center; align-items: center; padding: 1rem 1.25rem; background-color: var(--color-base-2); color: var(--color-overlay-2); font-size: 1rem; font-weight: 500; transition: all 0.3s; position: relative; z-index: 1; border-radius: 6px;}
a.button *{ transition: all 0.3s;}
a.button span.button_icon{ font-size: 0; display: inline-block; margin-left: 2rem;}
a.button span.button_icon svg{ height: 15px; width: 26.5px;}
a.button span.button_icon svg, a.button span.button_icon svg *{ fill: var(--color-overlay-2);}
a.button.alt span.button_icon svg, a.button.alt span.button_icon svg *{ fill: var(--color-overlay-1) !important;}
a.button:hover span.button_icon{ opacity: 0; margin-left: 0;}
a.button.has_arrow:hover{ padding-left: calc(1.25rem + 26.5px);}

a.button.alt{ background-color: var(--color-base-1); color: var(--color-overlay-1);}

a.button:hover{ background-color: rgba(var(--color-rgb-2), 0.8);}
a.button.alt:hover{ background-color: rgba(var(--color-rgb-1), 0.8);}

h3.toolhead{ margin-bottom: 2.5rem;}

.detail_padding a:not(.button), .right_per_detail a:not(.button){ 
	color: var(--color-base-1); 
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 2px;
	text-decoration-thickness: 2px ;
	text-decoration-color: #000; 
	transition: all 0s ease-out; 
	font-weight: 700;
}
.detail_padding a:not(.button):hover, .right_per_detail a:not(.button):hover{ 
	text-decoration-color: var(--color-base-1) !important; 
  }

/***** HEADER *******/

.header_wrapper{ width: 94%; margin: 0 auto; display: flex; justify-content: space-between; align-items: center;}

header{ margin: 0; padding: 0; position: static; z-index: 1001;}

.header_top{ padding: 1rem 0; background: #fff; z-index: 1001;}

/* header top right */
.togglemenu{ display: none; align-items: center; justify-content: center; width: 50px; height: 50px; background: var(--color-base-1); border-radius: 50%; font-size: 0;}
.togglemenu svg{ height: 18px;}
.togglemenu svg, .togglemenu svg *{ fill: var(--color-overlay-1) !important;}

.togglemenu_close{ display: none;}
.togglemenu.active .togglemenu_close{ display: block;}
.togglemenu.active .togglemenu_bars{ display: none;}

.header_top_right{ display: flex; align-items: center;}

/* logo */
header .logo{ font-size: 0;}
header .logo img{ max-height: 60px; max-width: 350px; display: block;}
.fallback_logo {  font-family: 'Epilogue', sans-serif; font-size: 1.75rem; line-height: 129%; margin: 10px 0; padding: 0; font-weight: 700; }
header .fallback_logo {color: var(--color-base-1);}

/* header search */
.header_search_container{ position: relative;}

.search_icon{ font-size: 0; width: 50px; height: 50px; background-color: var(--color-base-1); border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: all 0.3s;}
.search_icon svg{ height: 18px;}
.search_icon svg, .search_icon svg *{ fill: var(--color-overlay-1) !important;}

.search_icon:hover, .search_icon.active{ background-color: var(--color-base-2); color: var(--color-overlay-2);}

.close_search{ display: none;}
.search_icon.active .close_search{ display: block;}
.search_icon.active .open_search{ display: none;}

.search_form_container{ opacity: 0; position: absolute; top: 0; height: 100%; width: 0; left: 0; transition: all 0.3s; z-index: -100; display: flex; align-items: center; justify-content: center;}
.search_form_container.active{ width: 200px; opacity: 1; z-index: 1; left: -215px;}

.search_form_container legend{ display: none;}
.search_form_container fieldset, .search_form_container form, .search_form_container input{ border: 0; padding: 0; margin: 0;}

.search_form_container input{ line-height: 2rem; padding: 0 5px; border: solid 2px var(--color-base-1); border-radius: 0 6px 6px 0; font-family: 'Epilogue', sans-serif; font-size: 0.9rem; color: #262626; box-sizing: border-box; border-left: none;}

.search_form_container button[type="submit"]{ border: none; background: none; padding: 0; margin: 0; font-size: 0; cursor: pointer; background-color: var(--color-base-1); border-radius: 6px 0 0 6px; border: solid 2px var(--color-base-1); display: flex; align-items: center; justify-content: center; padding: 0 5px; line-height: 2rem; box-sizing: border-box; transition: all 0.3s;}
.search_form_container button[type="submit"] svg{ height: 20px;}

.search_form_container button[type="submit"]:hover{ background-color: var(--color-base-2); border: solid 2px var(--color-base-2);}

.search_form_container button[type="submit"] svg, .search_form_container button[type="submit"] svg *{ fill: var(--color-overlay-1) !important;}
.search_form_container button[type="submit"]:hover svg, .search_form_container button[type="submit"]:hover svg *{ fill: var(--color-overlay-2) !important;}

/* header utility links */
.header_search_container + .header_utility_container{ margin-left: 1.5rem;}

.header_utility_container{ position: relative;}

.header_util_button{ width: calc(250px - 3rem); display: flex; align-items: center; justify-content: space-between; font-size: 1rem ; font-weight: 500; color: var(--color-base-1); border: solid 2px var(--color-base-1); border-radius: 6px; padding: 1rem 1.5rem; transition: all 0.3s;}
.header_util_button.active, .header_util_button:hover{ color: var(--color-overlay-1); background-color: var(--color-base-1);}
.header_util_button svg{ height: 15px; width: auto;}
.header_util_button svg, .header_util_button svg *{ fill: var(--color-base-1) !important;}

.header_util_button.active svg, .header_util_button.active svg *, .header_util_button:hover svg, .header_util_button:hover svg *{ fill: var(--color-overlay-1) !important;}

.header_utility_links{ display: none; position: absolute; top: calc(100% + 10px); left: 0; width: 100%; list-style: none; margin: 0; padding: 0; box-shadow: 0 20px 20px 0 rgba(38, 38, 38,0.35); list-style: none; margin: 0; padding: 0; background-color: #fff; border-radius: 6px; border: solid 2px var(--color-base-1); box-sizing: border-box; overflow: hidden;}
.header_utility_links.active{ display: block; z-index: 100;}

.header_utility_links a{ font-size: 1rem ; font-weight: 500; color: var(--color-base-1); display: block; transition: all 0.3s; padding: 1rem 1.25rem; box-sizing: border-box; border-bottom: solid 2px var(--color-base-1);}
.header_utility_links a:hover{ color: var(--color-overlay-1); background-color: var(--color-base-1);}

.header_utility_links li:last-child a{ border-bottom: none;}

.mobile_bottom_row{ display: none;}

/* header bottom row (nav row) */
.header_bottom{ border-top: solid thin rgba(var(--color-rgb-1), 0.2); z-index: 1001;}

/* header social icons */
.header_social_container{ display: flex; align-items: center;}
.header_social_container a{ font-size: 0; transition: all 0.3s; margin: 0 0.5rem;}
.header_social_container a svg{ height: 25px; width: auto;}
.header_social_container a svg, .header_social_container a svg *{ fill: var(--color-base-1) !important; transition: all 0.3s;}
.header_social_container a:hover svg, .header_social_container a:hover svg *{ fill: var(--color-base-2) !important;}

/** FOOTER **/
footer{ position: relative;}

.footer_left_bg{ position: absolute; left: 0; top: 0; width: 50%; height: 100%; z-index: 1; background-color: var(--color-base-1);}
.footer_right_bg{ position: absolute; right: 0; top: 0; width: 50%; height: 100%; z-index: 1; background-color: rgba(var(--color-rgb-1), 0.1);}

footer > .wrapper{ position: relative; z-index: 2;}

footer > .wrapper > section{ width: 50%; padding: 6.25rem 0;}

footer section.footer_left{ padding-right: 5.88235294117647vw;}
footer section.footer_right{ padding-left: 5.88235294117647vw;}

#footer_logo img{ max-width: 280px; max-height: 200px;} /* 10-5-21 */

address *{ color: var(--color-overlay-1); font-size: 1rem; font-style: normal; line-height: 175%; font-size: 400;}
.address_line{ display: block;}

address, .footer_social_icons, .accreditation, .footer_brand_logo{ margin-top: 2rem;}
.footer_social_icons{ margin-bottom: 2rem;}
.accreditation{margin-bottom:2rem;}

.footer_social_icons a{ font-size: 0; opacity: 0.8;}
.footer_social_icons a:hover{ opacity: 1;}
.footer_social_icons a, .footer_social_icons a *{ transition: all 0.3s;}

.footer_social_icons a svg{ height: 24px; width: auto;}
.footer_social_icons a svg, .footer_social_icons a svg *{ fill: var(--color-overlay-1) !important;}

.footer_social_icons a + a{ margin-left: 1rem;}

/* .accred_item img{ max-height: 30px; width: auto;} */
.accred_item + .accred_item{ margin-left: 1rem;}

.footer_brand_logo img{ max-height: 30px; width: auto;}

.footer_right > .footer_col_padding > .flex{justify-content: space-between;}

.footer_right_col h6{ color: var(--color-base-1);}

.footer_links_list{ margin: 1.5rem 0 0 0; padding: 0; list-style: none;}
.footer_links_list li + li{ margin-top: 1rem;}
.footer_links_list a{ color: #262626; font-size: 1rem; font-weight: 500; transition: all 0.3s;}
.footer_links_list a:hover{ color: var(--color-base-2);}

.flex + p.copyright{ margin: 4rem 0 0 0;}

.footer_statement_text a{ color: var(--color-base-1);}
.nce_logo img {max-height: 40px;}

.footer_right .credit_logo img{filter: brightness(0%);}


/** INSIDE PAGES **/

/* banner area (banner photo, page title, and breadcrumbs) */
.banner{ position: relative;}
.banner:not(.has_photo){ background-color: var(--color-base-1); padding: 5rem 0;}

.banner_photo_container{ position: relative; z-index: 1; background: var(--color-base-1);}
.banner_photo_container::before{ content:""; background-color: #000; opacity: 0.6; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0;}

.banner_photo_container img{display: blockk; width: 100%; height: auto; opacity: 0.4;}

.banner_content{ max-width: 1170px; width: 90%; margin: 0 auto;}
.banner.has_photo .banner_content{ position: absolute; bottom: 5rem; left: 50%; transform: translateX(-50%); z-index: 2;}

.breadcrumbs{ display: flex; flex-flow: wrap; align-items: center;}
.breadcrumb_divide{ margin: 0 1rem; display: block;}
.breadcrumb_divide svg{ height: 15px; width: auto;}
.breadcrumb_divide svg, .breadcrumb_divide svg *{ fill: #fff !important;}
.breadcrumb_item{ padding: 10px 0;}

.breadcrumbs a{ color: #fff; font-size: 1rem; font-weight: 500; transition: all 0.3s;}
.breadcrumbs a:hover{ color: var(--color-base-2);}

/* page title */
.page_title_container{ max-width: 1170px; margin: 0 auto; width: 90%;}
.has_photo .page_title_container{ position: absolute; bottom: 0; left: 0; z-index: 2; transform: translateY(50%); max-width: 73%; background-color: var(--color-base-1); border-radius: 0 6px 6px 0;}

.page_title_container h1{ padding: 2rem 0 0 0; color: var(--color-overlay-1); margin: 0;}
.banner.has_photo .page_title_container h1{ padding: 2rem 2rem 2rem 0;}

/* inside layouts */
#main_container{ padding: 6.25rem 0;}

.middle_column{ display: inline-block; box-sizing: border-box; width: 100%; vertical-align: top;}
.middle_column.with_right{ width: calc(65% - 4px);}

.right_column{ display: inline-block; box-sizing: border-box; margin-left: 11%; width: calc(24% - 4px); vertical-align: top;}

.right_per_detail + .right_per_detail{ margin-top: 4rem;}

.detail_padding img, .right_per_detail img{ border-radius: 6px; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5);}
.detail_padding caption, .right_per_detail caption{ font-size: 0.875rem; color: #262626; margin: 10px 0;}

/* inside menu */
#menu ul{ list-style: none; margin: 0; padding: 0;}
#menu ul li{ position: relative;}
#menu > ul > li{ border-bottom: solid thin rgba(var(--color-rgb-1), 0.2);}
#menu ul li a{ display: inline-block; color: #262626; transition: all 0.3s;}
#menu ul li a *{ transition: all 0.3s;}
#menu > ul > li > a{ font-size: 1rem; font-weight: 500; position: relative; padding: 1rem 0;}
#menu > ul > li > a::after{ content:""; position: absolute; bottom: 0; left: 0; height: 8px; width: 100%; background-color: var(--color-base-1); opacity: 0;}
#menu > ul > li > a:hover{ color: var(--color-base-1);}
#menu > ul > li > a:hover::after{ opacity: 1;}
#menu li li{ padding-left: 1rem;}
#menu li li a{ font-size: 0.875rem; font-weight: 400; padding: 10px 0;}
#menu li li a:hover{ color: var(--color-base-2);}

#menu > ul > li > ul{ display: none; border-top: solid thin rgba(var(--color-rgb-1), 0.2);}

.inside_nav_toggle{ position: absolute; top: 1rem; right: 0;}
.inside_nav_toggle, .inside_nav_toggle *{ transition: all 0.3s;}
.inside_nav_toggle svg{ height: 15px; width: 24px;}
.inside_nav_toggle.active{ transform: rotate(180deg);}
.inside_nav_toggle svg, .inside_nav_toggle svg *{ fill: #262626 !important;}

#inside_nav + div{ margin-top: 5rem;}

/* theme styled forms */
.detail_form_db{ box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5);}

.detail_form_db .tool_headline1{ color: var(--color-overlay-1); background-color: var(--color-base-1); border-radius: 6px 6px 0 0; padding: 1rem 2rem; text-transform: uppercase; font-family: "Archivo", sans-serif; font-size: 0.875rem; letter-spacing: 2px; font-weight: 700;}
.detail_form_db form{ background-color: #fff; border-radius: 0 0 6px 6px;}
.detail_form_db form ul{ margin: 0; padding: 1rem 2rem;}

.responsive-form input, .responsive-form textarea, .responsive-form select{ border: none !important; background-color: rgba(var(--color-rgb-1), 0.1) !important; border-radius: 6px;}
.responsive-form fieldset{ border: none; background: none; margin: 0; padding: 0;}

/* theme styles right calendar */
.right_per_detail.detail_upcomingevents .calendar_list_date{ color: var(--color-overlay-1); background-color: var(--color-base-1); border-radius: 6px 6px 0 0; padding: 1rem 2rem; text-transform: uppercase; font-family: "Archivo", sans-serif; font-size: 0.875rem; letter-spacing: 2px; font-weight: 700; width: calc(100% - 4rem);}
.right_per_detail.detail_upcomingevents .calendar_list_event{ background-color: rgba(var(--color-rgb-1), 0.1) !important; margin-bottom: 1rem; border-radius: 0 0 6px 6px;}
.right_per_detail.detail_upcomingevents .calendar_list_event .details{ margin: 0; padding: 1rem 2rem; width: calc(100% - 4rem);}
.right_per_detail.detail_upcomingevents .calendar_list_title a{ color: #262626; font-size: 1.125rem; font-weight: 700;}

.right_per_detail.detail_upcomingevents .calendar_list_dt{ font-size: 0.875rem;}

/** HOME PAGE **/

/* general */
.homepage section + section{ padding: 6.25rem 0;}

/* hero */
.hero{ position: relative;}

.hero_slidehshow_container{ position: relative; background: var(--color-base-1);}
.hero_slidehshow_container::before{ content:""; background-color: #000; opacity: 0.6; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0;}

.hero_slidehshow_container .slide_img{ position: relative; z-index: 1; opacity: 0.4;}
.hero_slidehshow_container .slide_img.no-slide-text{ opacity: 1;}


.hero_slidehshow_container .slide_img img{ display: block; width: 100%; height: auto; }

.slide_content_containter{ position: absolute; z-index: 2; width: 90%; max-width: 1170px; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); text-align: left;}

.slide_content_containter h2, .slide_content_containter p{ max-width: 50%; color: #fff;}

.slide_content_containter h2{ font-size: 4.375rem; letter-spacing: 0; line-height: 114%;}

.hero_slideshow_nav{ position: absolute; z-index: 3; top: 50%; transform: translateY(-50%);}

@media all and (min-width: 1287px){
	.hero_slideshow_nav{ right: calc( (100vw - 1170px) / 2);}
	.has_photo .page_title_container{ padding-left: calc( (100vw - 1170px) / 2);}
}

@media all and (max-width: 1287px){
	.hero_slideshow_nav{ right: 5%;}
	.has_photo .page_title_container{ padding-left: 5%;}
}

.hero_arrow{ display: flex; width: 50px; height: 50px; align-items: center; justify-content: center; border: solid 2px #fff; border-radius: 50%; cursor: pointer; transition: all 0.3s;}
.hero_arrow svg{ height: 18px;}
.hero_arrow svg, .hero_arrow svg *{ fill: #fff !important; transition: all 0.3s;}

.hero_arrow:hover{ background-color: #fff;}
.hero_arrow:hover svg, .hero_arrow:hover svg *{ fill: var(--color-base-1) !important;}

.hero_arrow + .hero_arrow{ margin-top: 0.75rem;}

.slide_content_containter h2 + .hero_link, .slide_content_containter p + .hero_link{ margin-top: 2rem;}

/* hero cta */
.hero_cta{ width: 72.6%; background: #fff; margin: 0 0 0 auto; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5); position: relative; }

.hero_cta_padding{ display: flex; align-items: center; justify-content: space-between; padding: 1.5rem;}
.hero_cta_padding p{ font-weight: 700; font-size: 1.125rem;}

.hero_cta_title{ position: absolute; top: 0; left: 0; transform: translateY(-100%); background-color: var(--color-base-1); color: var(--color-overlay-1); display: inline-block; padding: 1rem; border-radius: 6px 6px 0 0; font-family: 'Archivo', 'Epilogue', sans-serif; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 2px; font-weight: 700;}

.hero_cta .button{ white-space: nowrap;}

.hero_cta_padding p + .button{ margin-left: 1rem;}

/* home tabs */
.tabcontent:not(.active){ display: none;}

.mobile_tabs_title{ display: none;}

.home_tabs_nav{ margin-bottom: 2rem;}
.desktop_tabs_container{ display: flex;}
.home_tabs_nav button{ padding: 1.5rem; margin: 0; max-width: 33.33333%; border: none; color: #262626; font-size: 0.875rem; letter-spacing: 2px; text-transform: uppercase; font-weight: 700; font-family: 'Archivo', 'Epilogue', sans-serif; text-align: center; border-bottom: solid thin rgba(var(--color-rgb-1), 0.2); position: relative; cursor: pointer; width: 100%; background: none; transition: all 0.3s;}
.home_tabs_nav button:hover, .home_tabs_nav button.active, .home_tabs_nav button.default{ color: var(--color-base-1);}

.home_tabs_nav button::after{ content:""; position: absolute; width: 100%; height: 0.5rem; bottom: 0; left: 0; background: var(--color-base-1); opacity: 0; transition: all 0.3s;}
.home_tabs_nav button:hover::after, .home_tabs_nav button.active::after, .home_tabs_nav button.default::after{ opacity: 1;}

.tab_col{ width: 47.5%;}
.tab_col.full{ width: 100%;}

.tab_content_wrapper{ justify-content: space-between;}

.tab_col.tab_right_col img{ display: block; width: 100%; height: auto; border-radius: 6px; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5);}

.mobile_tabs_button{ display: none; padding: 1.5rem; margin: 0; border: none; color: #262626; font-size: 0.875rem; letter-spacing: 2px; text-transform: uppercase; font-weight: 700; font-family: 'Archivo', 'Epilogue', sans-serif; text-align: center; border-bottom: solid thin rgba(var(--color-rgb-1), 0.2); position: relative; cursor: pointer; width: 100%; background: none; transition: all 0.3s;}

/* blog section */
.home_blog{ position: relative; background: var(--color-base-1); padding: 6.25rem 0;}

.section_bg{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; opacity: 0.4;}
.section_bg img{ display: block; width: 100%; height: 100%; object-fit: cover;}

.home_blog::before{ content:""; background-color: #000; opacity: 0.6; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0;}

.home_blog_container{ position: relative; z-index: 1; justify-content: space-between;}

.home_blog_col{ width: 47.5%;}
.home_blog_col.full{ width: 100%;}

.home_blog_left_col .button{ margin-top: 1.5rem;}

.home_blog_post{ position: relative; border: 2px solid #fff; background: #fff; border-radius: 6px; transition: all 0.3s; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5); margin-bottom: 1rem; padding: 1.5rem;}
.home_blog_post:last-child{ margin-bottom: 0;}

.home_post_tile_link{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2;}

.home_blog_post:hover{ border: 2px solid var(--color-base-2);}

.home_blog_post *{ transition: all 0.3s;}
h4.blog_post_title a{ color: #262626;}
h4.blog_post_title:hover a{ color: var(--color-base-2);}

.home_blog_post_link{ display: flex; font-size: 1rem; font-weight: 500; color: #262626; margin: 10px 0; align-items: center;}
.home_blog_post_link .button_icon{ margin-left: 10px;}
.home_blog_post_link .button_icon svg{ height: 15px; width: 26.5px;}
.home_blog_post_link .button_icon svg, .home_blog_post_link .button_icon svg *{ fill: var(--color-base-2) !important;}

a.button.mobile_blog_button{ display: none;}

/* home events section */
.section_heading_row .flex{ justify-content: space-between; align-items: center;}
.section_heading_row a.button{ height: 100%;}

.home_event_feed_container{ margin-top: calc(4rem - 40px);}

.home_event_feed > .slick-list{ padding: 40px 0;}

.event_item{ border-radius: 6px; overflow: hidden; background-color: rgba(var(--color-rgb-1),0.1); margin: 0 1rem;}
.date_header{ background-color: var(--color-base-1); padding: 1rem 1.5rem; color: var(--color-overlay-1); font-size: 0.875rem; text-transform: uppercase; letter-spacing: 2px; font-family: "Archivo", "Epilogue", sans-serif;}

.event_item, .event_item *{ transition: all 0.3s;}

.event_content{ padding: 1.5rem;}

.event_item:hover{ background-color: #fff; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5);}

h5.event_title{ color: #262626;}

.time_icon{ display: inline-block; margin-right: 7px; font-size: 0; vertical-align: middle;}
.time_icon svg{ height: 14px; width: 14px;}
.time_icon svg, .time_icon svg *{ fill: var(--color-base-1) !important;}

a.button.mobile_events_button{ display: none;}

.home_event_feed_container .slick-dots{ list-style: none; margin: 2rem 0; padding: 0; display: flex; width: 100%; justify-content: center; align-items: center;}
.home_event_feed_container .slick-dots li{ margin: 0 1rem;}
.home_event_feed_container .slick-dots li button{ font-size: 0; background-color: rgba(var(--color-rgb-1),0.5); border-radius: 50%; width: 30px; height: 30px; border: none; cursor: pointer;}
.home_event_feed_container .slick-dots li, .home_event_feed_container .slick-dots li *{ transition: all 0.3s;}

.home_event_feed_container .slick-dots li.slick-active button, .home_event_feed_container .slick-dots li:hover button{ background-color: rgba(var(--color-rgb-1),1);}

/* home page highlights */
.homepage section.home_highlights{ position: relative; background: var(--color-base-1); padding: 6.25rem 0;}
.homepage section.home_highlights.has_stats{ padding-bottom: 0;}
.homepage section.home_highlights.has_stats.no_hightlight_content{ padding-bottom: 6.25rem;}
.home_highlights::before{ content:""; background-color: #000; opacity: 0.6; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0;}

.home_highlights_container{ position: relative; z-index: 2; text-align: center;}

h6.small_section_title{ margin: 0;}
.small_section_title + p{ margin: 2rem 0 0 0;}
.home_hightlights_text + .home_highlights_buttons{ margin-top: 2rem;}

.home_highlights_buttons a{ margin: 0 1rem;}

/* home stats box */
.home_stats{ position: relative; z-index: 2; max-width: 950px; margin: -2rem auto 0; background-color: #fff; border-radius: 6px; box-shadow: 0 20px 20px 0 rgba(208,208,208, 0.5); transform: translateY(50%);}
.home_stats.no_hightlight_content{ transform: none; margin: 0 auto; box-shadow: none;}

.home_stats_padding{ padding: 1.5rem; justify-content: center;}

.home_stat_item{ width: 25%; text-align: center;}
.home_stat_item + .home_stat_item{ margin-left: 1rem;}

h5.stat_title{ margin: 0 0 1rem 0; padding: 2rem 1rem; color: var(--color-overlay-1); background-color: rgba(var(--color-rgb-1),1); font-size: clamp(1.7rem,3vw,2.375rem); letter-spacing: -1px; font-weight: 700;min-width: 85px;}
p.stat_caption{ font-weight: 500; color: #262626; margin: 0;}

/* .home_stat_item:nth-child(2) h5.stat_title,.home_stat_item:nth-child(4) h5.stat_title{ color: var(--color-overlay-2); background-color: rgba(var(--color-rgb-2),1);} */

/** Tool Fixes/Overides **/

.dir-head-link{ color: #fff !important;}

/**column tools**/

.multi-column-wrapper{ display: inline-block;/* font-size: 0;*/ vertical-align: top;}
.multi-column-wrapper.maxcols-2{ width: calc(50% - 5px);}
.multi-column-wrapper.maxcols-3{ width: calc(33.3333333333% - 5px);}
.multi-column-wrapper.maxcols-4{ width: calc(25% - 5px);}

.multi-column{ float: none; width: auto !important; margin: 0 !important; padding: 1rem !important;}

@media all and (max-width: 960px){
	.multi-column-wrapper.maxcols-4{ width: calc(50% - 5px);}
}

@media all and (max-width: 640px){
	.multi-column-wrapper{ width: 100% !important;}
}

/**********************************************
	MEDIA QUERIES
***********************************************/

@media all and (min-width: 767px){
	.home_stats{ margin-top: 0 !important;}
}

@media all and (max-width: 1024px){
	/* Mobile Heading Styles */
	h1{ font-size: 2.8125rem; line-height: 122%;}
	h2{ font-size: 2rem; line-height: 125%;}
	h3, .tool_headline1{ font-size: 1.25rem; line-height: 140%;}
	h4, .tool_headline2{ font-size: 1rem; line-height: 175%;}
	h5{ font-size: 0.9rem; line-height: 175%;}
	p.large{ line-height: 140%;}
	
	.header_top_right .header_utility_container, .header_top_right .header_search_container, .header_social_container, .header_bottom{ display: none;}
	
	.mobile_bottom_row{ display: block; width: 100%; margin: 2rem 0 0 0;}
	.togglemenu{ display: flex;}
	
	.header_wrapper{ width: 88%;}
	
	.header_top{ padding: 0;}
	.header_top .header_wrapper{ height: 82px;}
	
	/* nav panel */	
	html.nav_open{ overflow: hidden !important;}
	
	.header_bottom{ position: absolute; top: 82px; left: 0; width: 100%; background: #fff; height: 100%; max-height: calc(100vh - 82px); overflow-x: hidden; overflow-y: auto;}
	.header_bottom .header_wrapper{ width: 100%; padding-bottom: 5rem; flex-direction: column; justify-content: center;}
	
	/* mobile utility links */
	.header_util_button{ width: 88%; margin: 0 auto; box-sizing: border-box;}
	.header_util_button.active{ border-radius: 6px 6px 0 0;}
	.header_utility_links{ width: 88%; box-shadow: none; margin: 0 auto; position: relative; top: auto; left: auto; border-radius: 0 0 6px 6px;}
	
	/* mobile search */
	.search_form_container{ position: relative; top: auto; left: auto; z-index: 1; opacity: 1; height: auto; width: 88%; margin: 2rem auto 0 auto;}
	.search_form_container button[type="submit"]{ padding: 0; width: 50px; line-height: 3rem;}
	.search_form_container form{ width: calc(100% - 50px);}
	.search_form_container input{ width: 100%; line-height: 3rem; padding: 0 10px;}
	
	/** INSIDE PAGES **/
	
	/* banner area */
	.banner.has_photo .banner_photo_container{ height: 400px; overflow: hidden;}
	.banner.has_photo .banner_photo_container img{ height: 100%; object-fit: cover;}
	
	
	/* page title */
	.has_photo .page_title_container{ max-width: 90%;}
	
	h1.page_title{ font-size: 2rem;}
	
	/** HOME PAGE **/
	
	/* hero */
	
	.hero_slidehshow_container .slide_img{ height: 626px; overflow: hidden;}
	.hero_slidehshow_container .slide_img img{ object-fit: cover; width: 100%; height: 100%;}
	
	.slide_content_containter h2{ font-size: 2.8125rem;}
	
	.slide_content_containter{ text-align: center; top: calc(50% - 2rem - 50px);}
	.slide_content_containter h2, .slide_content_containter p{ max-width: 100%; text-align: center;}
	
	.hero_slideshow_nav{ right: auto; left: 50%; top: auto; bottom: 8rem; display: flex; transform: translateX(-50%);}
	.hero_arrow + .hero_arrow{ margin-top: 0; margin-left: 1rem;}
	
	/* hero cta */
	.hero_cta{ width: 90%; margin: 0 auto;}
}

@media all and (max-width: 767px){
	/** FOOTER **/
	.footer_right_bg, .footer_left_bg{ display: none;}
	footer > .wrapper{ flex-direction: column; justify-content: center; width: 100%;}
	footer > .wrapper > section{ width: 100%; padding: 3rem 0;}
	.footer_col_padding{ margin: 0 auto; width: 90%;}
	footer section.footer_left{ padding-right: 0; text-align: center; background-color: var(--color-base-1);}
	footer section.footer_right{ padding-left: 0; text-align: center; background-color: rgba(var(--color-rgb-1), 0.1);}
	.footer_right > .footer_col_padding > .flex{ justify-content: center; flex-direction: column;}
	.footer_brand_logo.desktop{ display: none;}
	.footer_brand_logo.mobile{ display: block;}
	
	.footer_social_icons, .accreditation{ justify-content: center;}
	
	.footer_right_col + .footer_right_col{ margin-top: 2rem;}

	header .logo img {max-width: 250px;}
	
	/** INSIDE PAGES **/
	
	/* inside layouts */
	#main_container{ padding: 3rem 0;}
	
	.middle_column.with_right{ width: 100%;}
	.right_column{ margin-left: 0; width: 100%; margin-top: 3rem; padding-top: 3rem; border-top: solid 1rem rgba(var(--color-rgb-1), 0.2);}
	
	#right_within{ display: flex; flex-direction: column;}
	#inside_nav{ order: 2; margin-top: 3rem; padding-top: 3rem;}
	
	/** HOME PAGE **/
	.homepage section + section{ padding: 3rem 0;}
	
	/* hero cta */
	.hero_cta{ text-align: center;}
	.hero_cta_padding{ flex-direction: column; justify-content: center;}
	.hero_cta_padding p + .button{ margin-left: 0; margin-top: 1rem;}
	
	.hero_cta_title{ width: calc( 100% - 2rem); left: 50%; transform: translateX(-50%) translateY(-100%);}
	
	.has_hero_video .hero_cta_title{ position: relative; width: calc( 100% - 2rem); left: 0; transform: none;}
	
	/* home tabs */
	.home_tabs_nav.desktop{ display: none;}
	.mobile_tabs_button{ display: flex; justify-content: space-between; align-items: center;}
	
	.tabcontent{ display: block !important;}
	.tab_content_wrapper{ display: none; padding: 2rem 0;}
	
	.mobile_tabs_button.active{ color: var(--color-base-1);}
	.mobile_tabs_button .close_tab{ display: none;}
	.mobile_tabs_button.active .close_tab{ display: block;}
	.mobile_tabs_button.active .open_tab{ display: none;}
	.mobile_tabs_button::after{ content:""; position: absolute; width: 100%; height: 0.5rem; bottom: 0; left: 0; background: var(--color-base-1); opacity: 0; transition: all 0.3s;}
	.mobile_tabs_button.active::after{ opacity: 1;}
	
	.tab_col{ width: 100%; text-align: center;}
	.tab_col p, .tab_col h3{ text-align: left;}
	
	.tab_col + .tab_col{ margin-top: 2rem;}
	
	/* home blog section */
	.home_blog{ padding: 3rem 0;}
	
	.home_blog_container{ flex-direction: column; justify-content: center;}
	.home_blog_col{ width: 100%;}
	.home_blog_col + .home_blog_col{ margin-top: 2rem;}
	
	.home_blog_left_col{ text-align: center;}
	
	a.button.desktop_blog_button{ display: none;}
	a.button.mobile_blog_button{ display: inline-flex; margin-top: 2rem;}
	
	/* home events section */
	.home_events{ text-align: center;}
	.section_heading_row .flex{ justify-content: center; text-align: center;}
	
	a.button.desktop_events_button{ display: none;}
	a.button.mobile_events_button{ display: inline-flex; margin-top: 2rem;}
	
	.home_event_feed_container{ margin-top: 0;}
	
	/* home stats */
	.homepage section.home_highlights.has_stats.no_hightlight_content{ padding-bottom: 3rem;}
	
	.home_stats_padding{ flex-flow: wrap;}
	.home_stat_item{ width: calc(50% - 2rem); margin: 0 1rem 1rem 1rem !important;}
	.home_stat_item:nth-child(3), .home_stat_item:nth-child(4){ margin-bottom: 0 !important;}
	
	.home_highlights_buttons{ display: flex; flex-direction: column;}
	.home_highlights_buttons a + a{ margin-top: 1.5rem;}
	
}

/* SM 3.0 CSS */
.tool_content { font-family: 'Epilogue', sans-serif;}
.sm3_header_right .account_info a{ font-weight: 500;}
#sm3_body footer{ background: none !important; padding: 0; border: none !important;}
#sm3_body .page_heading_row h1{ font-family: inherit; text-transform: none;}
#sm3_body .main-section{ border: none !important;}


.detail_profiles .staff_header .profile ul li a {color: #ffffff!important;}

/* Screen Reader Only class */
.sr-only {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
}

/** Color Variables **/

:root {
	--color-base-1: #317F96; 
	--color-rgb-1: 49,127,150; 

	--color-base-2: #D02A47; 
	--color-rgb-2: 208,42,71; 
	
	--color-overlay-1: #ffffff; 
	--color-overlay-2: #ffffff; 
  }

  /* #topnav > li:nth-child(1){
	padding: 1.5rem 0;
  } */

  .nav_open #topnav > li.nav-item > a{
		padding: 0 6%;
	}
	
  .hero_cta.no-hero {
    width: 90%;
    margin: 5rem auto 0 auto;
}

@media (max-width: 1024px){
	.hero_cta.no-hero {
		width: 90%;
		margin: 5rem auto 0 auto;
	}
}

@media screen and (min-width:960px){
    .accreditation{ 
        justify-content: inherit;
    }    
}
@media screen and (min-width:767px){
    .accreditation{ 
        justify-content: start;
    }    
}

/** Theme Buttons **/
.middle_column a:not([class*="ln"],[class^="ln"],.button,.sm3_tool_handle,.overlaycolor), 
.right_column a:not([class*="ln"],[class^="ln"],.button,.sm3_tool_handle,.overlaycolor), 
.ck-content a:not([class*="ln"],[class^="ln"],.button),  
.swal2-html-container p a:not(.button),
.ck-content a:not(.button)
{
	text-decoration: underline; 
	text-decoration-thickness: 2px;
	text-decoration-color: #000; 
	text-underline-position: under; 
    color: var(--color-base-1); 
	transition: all 0s ease-out; 
	font-weight: 700;
    transition: all 0.3s
}
.middle_column a:not([class*="ln"],[class^="ln"],.button,.sm3_tool_handle,.overlaycolor):hover, 
.right_column a:not([class*="ln"],[class^="ln"],.button,.sm3_tool_handle,.overlaycolor):hover, 
.ck-content a:not([class*="ln"],[class^="ln"],.button):hover,  
.swal2-html-container p a:not(.button):hover,
.ck-content a:not(.button):hover
{
    text-decoration-color: var(--color-base-1);
}
.swal2-html-container p a.button,.ck-content a.button{ 
    display: inline-flex; 
    justify-content: center; 
    align-items: center; 
    padding: 0.8rem 1.25rem; 
    border:2px solid var(--color-base-1); 
    background-color: var(--color-base-1); 
    color: var(--color-overlay-1) !important; 
    font-size: 1rem; 
    font-weight: 500; 
    transition: all 0.3s; 
    position: relative; 
    border-radius: 6px;
    text-decoration: none; 
}
.swal2-html-container p a.button:hover,.ck-content a.button:hover{
    background-color: var(--color-overlay-1); 
    color: var(--color-base-1) !important; 
}


/** Tool Headings **/
h3.toolhead{ margin-bottom: 2rem;font-weight:700;font-size: 2rem !important;}

/** Quotes **/
.ck-content blockquote, .tool_content blockquote, blockquote{ 
	display: block; 
	background: #fff; 
	padding: 1.5rem 1.5rem 1.5rem 2rem !important; 
	border-left: none !important;
	margin: 0 !important;
	font-style: italic; 
}
.ck-content blockquote p, .tool_content blockquote p,  blockquote p{ margin: 0;}
.ck-content p + blockquote,.tool_content p + blockquote{padding-top:0 !important;}
.ck-content blockquote > *, .tool_content blockquote > *, blockquote > *{ 
	font-size: 1.22rem !important; 
	line-height: 136% !important; 
	font-family: 'DM Sans', sans-serif !important;
}


a.sm3_tool_handle{
	text-decoration: none !important;
	font-weight: 400 !important;
	&:hover{
		text-decoration: none !important;
	}
}
.ck-content .button:hover{
    text-decoration: none !important;
}

.social_icon_bar a,
.ec-expandme a,
.back_btn a,
.middle_column .calendar_event_title a,
.right_column .calendar_event_title a,
.middle_column .calendar_grid_day a,
.right_column .calendar_grid_day a{
	text-decoration: none !important;
}

