/*
Theme Name: ETI 2025
Description: ETI 2025 WordPress Theme
Author: Gragg Advertising
Author URI: http://graggadv.com/
Version: 0
*/

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}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}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type="button"],[type="reset"],[type="submit"],button{-webkit-appearance:button}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checklist"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* screenreader */
.sr-only, .m-sr-only {border:0; clip:rect(0, 0, 0, 0); height:1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px}
.sr-only-focusable:active,.sr-only-focusable:focus {clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
#skipnav {background-color: #2c713c; display: inline-block; color: #fff; left: 0; padding: 0.5em 1em; position: absolute; text-decoration: none; top: 0; z-index: 10}

:root {
	--border: #21356a80;
	--brand: #21356a;
	--brand2: #be1e2d;
	--dark: #000000;
	--dark2: #606060;
	--field: #d4e6ff;
	--highlight: #f8ba00;
	--light: #ffffff;
	--light2: #f7f7f7;
	--light3: #f0f0f0;
	--light-alt: #f1fafe;
	--light-alt2: #e2f5fc;
	--light-alt3: #ceeffb;
	--notice: #0568fd;
	--font: "Inter", sans-serif;
	--font2: "proxima-nova", sans-serif;
	--font3: "Noto Sans", sans-serif;
	--gradient: rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 50%;
	--h1: 3rem;
	--h2: 2.5rem;
	--h3: 2rem;
	--h4: 1.5rem;
	--h5: 1.25rem;
	--h6: 1.125rem;
	--p: 1rem;
	--small: 0.875rem;
	--small2: 0.75rem;
}

/* basic */
html {background-color: var(--light); height: 100%; scroll-behavior: smooth}
body {align-items: stretch; background-color: var(--light); color: var(--dark); display: flex; flex-direction: column; font-family: var(--font); overflow-x: hidden; min-height: 100%; margin: 0 auto; position: relative; width: 100%}
h1, h2, h3, h4, h5, h6, p, li {margin: 1rem 0}
h1, h2, h3, h4, h5, h6 {color: var(--brand); font-family: var(--font2); line-height: 1}
h3, h4, h5, h6 {font-weight: normal}
h1 {font-size: var(--h1)}
h2 {font-size: var(--h2)}
h3 {font-size: var(--h3)}
h4 {font-size: var(--h4)}
h5 {font-size: var(--h5)}
h6 {font-size: var(--h6)}
ul {padding-left: 1rem}
p.disclaimer {font-size: 0.75rem; font-style: italic; margin-top: 2rem}
p.disclaimer + p.disclaimer {margin-top: 1rem}
a {color: inherit}
img {height: auto; object-fit: contain; max-width: 100%}
pre {text-align: left !important; white-space: pre-wrap}
main {flex-grow: 1}
ul.check {list-style-image: url('img/check.png')}
hr {border-bottom: 1px solid var(--brand); border-left: none; border-right: none; border-top:none; display: block; height: 0; margin: 0 auto; opacity: 0.5}
[id] {scroll-margin-top: 6.5rem}

/* general */
#nojs_warning {background-color: red; border: 3px double white; color: white; display: block; font-weight: bold; padding: 1rem; text-align: center}
.container {padding: 0 1rem; position: relative; z-index: 0}
.container .container {padding: 0}
/*buttons/links*/
#main a:not(.button):not([role="tab"]) {color: var(--brand)}
#main a[target="_blank"]:not(.button):not(.social_link):not(.social_share)::after {content: '\00a0\2197'; display: inline-block}
#main a[href^="#"]:not(.button):not([role="tab"])::after {content: '\00a0\00bb\0131'; display: inline-block}
.links {display: flex; flex-wrap: wrap; gap: 1rem 2rem}
.links:not(:first-child) {margin-top: 2rem}
.button {align-self: end; background-color: var(--brand); border-radius: 10rem; box-shadow: 0 0.25rem 0.125rem #00000040; color: var(--light); display: inline-block; font-family: var(--font2); font-weight: bold; max-width: 100%; padding: 0.75rem 3rem; text-align: center; text-decoration: none}
.button[target="_blank"]:not(.icon) > span::after {content: '\2197'; padding: 0}
.button.col_light {background-color: var(--highlight); color: var(--dark)}
.button.icon {padding-bottom: 0.125rem; padding-top: 0.5rem; white-space: nowrap}
.button.icon::after {display: inline-block; height:2.125rem; margin-left: 1rem; vertical-align: middle; width: auto}
.button.icon_book::after {content: url('img/icon/book_white.png')}
.button.col_light.icon_book::after {content: url('img/icon/book.png')}
.button.icon_calendar::after {content: url('img/icon/calendar_white.png')}
.button.col_light.icon_calendar::after {content: url('img/icon/calendar.png')}
.button.icon_download::after {content: url('img/icon/download_white.png')}
.button.col_light.icon_download::after {content: url('img/icon/download.png')}
.button.icon_phone::after {content: url('img/icon/phone_white.png')}
.button.col_light.icon_phone::after {content: url('img/icon/phone.png')}
.link {align-self: center; color: var(--brand); font-weight: bold; text-decoration: underline}
.link::after {content: "\00a0\2192"; display: inline-block; vertical-align: middle}
.overlay {position: relative}
.overlay::before {background-color: #ffffffaa; content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0}
.overlay > container {position: relative; z-index: 1}

/*accordions*/
.accordion_toggle {cursor: pointer; margin: 0; padding: 0.5rem 2rem 0.5rem 0; position: relative; user-select: none}
.accordion_toggle::after {content: '\2228'; font-size: var(--h4); font-weight: normal; color: var(--inherit); line-height: 1; opacity: 0.75; position: absolute; right: 0; top: 0.5rem; transform: scalex(2)}
.accordion_toggle[aria-expanded='true']::after {content: '\2227'}
body.js .accordion_content{display: none}
/*pagination*/
.paginationwrap {margin: 2rem 0 1rem 0; text-align: center}
.pagination a {text-decoration: none}
.pagination a.page-numbers:not(.prev):not(.next), .pagination .page-numbers.current {align-items: center; border: 2px solid var(--brand); border-radius: 100rem; display: inline-flex; height: 2rem; justify-content: center; line-height: 1; width: 2rem}
.pagination .page-numbers.current {background-color: var(--brand); color: var(--light)}
.pagination a.prev, .pagination a.next {display: inline-block; font-size: var(--p); font-weight: bold; margin: 0 1rem; text-transform: uppercase; vertical-align: middle}

/*socials*/
.social_links {display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center}
.social_link {border-radius: 50%; display: inline-block; height: 48px; padding: 16px; width: 48px}
.social_icon {height: 100%; object-fit: contain; width: 100%}
/*swiper*/
.swiper-button-next, .swiper-button-prev {color: var(--light); text-shadow: 1px 0 2px var(--dark2), 0 1px 2px var(--dark2), -1px 0 2px var(--dark2), 0 -1px 2px var(--dark2)}
/*video*/
.videowrapper {margin: 1rem auto; max-width: 854px}
.videoholder:has(iframe) {height: 0; padding-bottom: 56.25%; position: relative}
.videoholder iframe, .mapholder iframe {border: none; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.videoholder video {height: auto; width: 100%}

/* form */
.theme-form .field {margin: 1rem 0}
.theme-form input, .theme-form select, .theme-form textarea {background-color: var(--light); border: 1px solid var(--border); border-radius: 0.5rem; box-sizing: border-box; height: 2.6875rem; padding: 0.5rem 1rem; width: 100%}
.bgCol_none .theme-form input, .bgCol_none .theme-form select, .bgCol_none .theme-form textarea {background-color: var(--light3)}
.theme-form textarea {min-height: 4rem; resize: vertical}
.theme-form input[type="submit"], .bgCol_none .theme-form input[type="submit"] {background-color: var(--brand); border-radius: 10rem; box-shadow: 0 0.25rem 0.125rem #00000040; color: var(--light); cursor: pointer; display: block; font-size: var(--h5); font-weight: bold; height: auto; margin: 0 auto; padding: 1rem 3rem; width: auto}
.bgCol_dk_blue .theme-form input[type="submit"] {background-color: var(--highlight); color: var(--dark)}
.theme-form .cb_wrap  {align-items: flex-start; display: flex; gap: 0.5rem; width: 100%}
.theme-form .field.cb label > :first-child {margin-top: 0}
.theme-form .field.cb label > :last-child {margin-bottom: 0}
.theme-form .field.cb input {height: auto; margin-top: 0.125rem; padding: 0; width: auto}
.theme-form .form_disclaimer, .theme-form .optin label {font-size: var(--small)}
.theme-form .form_disclaimer {text-align: center}
.theme-form [name="comments"] {display: none}
.theme-form fieldset {background-color: var(--light); border: 1px solid var(--border);  border-radius: 0.5rem; margin: 0; padding: 1rem}
.bgCol_none .theme-form fieldset {background-color: var(--light3)}
.theme-form legend {display: block; float: left; font-weight: bold; margin: 0 0 1rem 0; position: static}
.theme-form legend + * {clear: left}
.theme-form .field.cb {align-items: center; display: flex; gap: 0.5rem; margin: 0.5rem 0}
.theme-form .field.other {flex-grow: 1; margin: 0}
.theme-form .field.other > input {background-color: transparent; border-color: var(--brand); border-radius: unset; border-style: none none solid none; width: 100%}
.theme-form .cf-turnstile {margin: 1rem auto; width: max-content}
.search_form .fieldset {margin: 0 auto; position: relative; width: max-content}
.searchfield {background-color: var(--field); border: 2px solid var(--brand); border-radius: 10rem; box-sizing: content-box; font-size: 1rem; height: 1rem; padding: 0.67rem 3rem 0.67rem 1rem; width: 10rem}
.search_form .field.submit {height: 100%; position: absolute; right: 0; top: 0}
.search_form .field.submit input {background-color: transparent; border: none; cursor: pointer; font-size: 2rem; height: 100%; width: 3rem}
.theme-form .cb_has_other {align-items: center; display: flex; gap: 0.5rem}
.theme-form .cb_has_other .field.cb, .theme-form .cb_has_other .field.other {margin: 0}
.theme-form .cb_has_other .field.other > input {height: auto; margin: 0; padding: 0}

/* header */
#top_banner {background-color: var(--notice); color: var(--light); padding: 1rem 0}
#header {background-color: var(--light)}
body.js #header {position: sticky; top: 0; z-index: 1}
#header .container {padding: 0}
#button_bar, #logomenu_bar {display: table; table-layout: fixed}
#button_bar, #logomenu_bar {width: 100%}
#top_phone, #top_reqinfo, #top_logo, #top_menu_open {display: table-cell}
#top_phone, #top_reqinfo {color: var(--light); font-family: var(--font3); font-weight: bold; padding: 1rem; text-align: center; text-decoration: none; text-transform: uppercase}
#top_phone {background-color: var(--brand2)}
#top_searchform {display: none}
#top_reqinfo {background-color: var(--brand)}
#logomenu_bar {margin: 0 1rem; width: calc(100% - 2rem)}
.header_logo {display: block; height: auto; max-height: 5rem; max-width: 100%; width: auto}
#top_menu_open {background: transparent; border: none; color: var(--primary); cursor: pointer; font-size: 5rem; line-height: 0.8; margin: 0 0 0 auto; padding: 0; text-align: right; text-decoration: none; width: 4rem}

/* menu */
#top_menu_close {background-color: var(--dark); border: none; color: var(--light); cursor: pointer; display: block; padding: 0.5rem 1rem; position: sticky; text-align: right; top: 0; width: auto; z-index: 1}
#top_menu .menu, #top_menu .sub-menu {list-style: none}
#top_menu .menu {background-color: var(--brand); color: var(--light); margin: 0; padding: 0.75rem 0 0.75rem 1rem}
#top_menu .sub-menu {padding: 0 0 0 1rem}
#top_menu li {margin: 0}
#top_menu a {display: block; font-size: 1.5rem; padding: 0.25rem 0; text-decoration: none}
#top_menu .menu-item-has-children {position: relative}
#top_menu .menu-item-has-children a {margin-right: 3rem}
#top_menu .submenu_toggle {background-color: transparent; border: none; color: var(--light); box-sizing: content-box; cursor: pointer; padding: 0.25rem 1rem 0.25rem 1rem; position: absolute; right: 0; top: 0; width: 1rem}
#top_menu .submenu_toggle span {display: inline-block; transform: scale(1.25, 0.75)}
body.js #top_menu_overlay {display: none}
body.nojs #top_menu_close {display: none}
body.nojs #top_menu li {margin: 0}
body.nojs #top_menu a {display: inline-block; margin: 0 0.5rem}
body.nojs #top_menu .sub-menu li {display: inline}
body.menu_open {overflow: hidden}
body.menu_open #top_menu_overlay {background-color: rgba(0,0,0,0.5); bottom: 0; display: block; left: 0; overflow-y: auto; position: fixed; right: 0; top: 0}
body.menu_open #top_menu_inner {height:auto; margin: 0 0 0 auto; max-width: 360px; position:static; white-space:normal; width:auto}

/* hero */
#hero {background-color: #000000; background-size: cover; color: var(--light); padding: 20rem 0 2rem; position: relative}
#hero:before {background: linear-gradient(0deg, var(--hero-gradient)); content: ''; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
#hero.top {padding: 2rem 0 20rem}
#hero.top:before {background: linear-gradient(180deg, var(--hero-gradient))}
#hero .pagehead {color: inherit; font-family: var(--font2); font-weight:bold; text-shadow: 0.25rem 0.25rem 0.25rem #000000c0}
body.home #hero .pagehead {text-transform: uppercase}
.pagehead .prehead {display: block; font-size: var(--h2)}
#hero .pagehead .prehead {color: var(--highlight)}
.pagehead_copy {font-size: var(--h5)}
#hero .pagehead_copy {text-shadow: 0.125rem 0.125rem 0.125rem #000000c0}

/* sections */
.section, #post > .section, #main_content:has(+ .section) {border-bottom: 1px solid var(--border); margin: 0; padding: 4rem 0}
section:last-child {border: none}
section.hasBG {background-size: cover}
section.no_bottom_pad {padding-bottom: 0}
section.no_top_pad {padding-top: 0}
.bgCol_white2 {background-color: var(--light2)}
.bgCol_white3 {background-color: var(--light3)}
.bgCol_blue {background-color: var(--light-alt)}
.bgCol_blue2 {background-color: var(--light-alt2)}
.bgCol_blue3 {background-color: var(--light-alt3)}
.bgCol_dk_blue {background-color: var(--brand); color: var(--light)}
.bgCol_dk_red {background-color: var(--brand2); color: var(--light)}
.altCol {color: var(--light)}
.bgCol_dk_blue h2, .bgCol_dk_blue h3, .bgCol_dk_blue h4, .bgCol_dk_blue h5, .bgCol_dk_blue h6, #main .bgCol_dk_blue a:not(.button):not([role="tab"]) {color: var(--highlight)}
.bgCol_dk_red h2, .bgCol_dk_red h3, .bgCol_dk_red h4, .bgCol_dk_red h5, .bgCol_dk_red h6, #main .bgCol_dk_red a:not(.button):not([role="tab"]) {color: var(--light)}
section.altCol .heading, section.altCol .subheading {color: var(--highlight)}
section.sub_borders .sub_section:after {border-bottom: 1px solid var(--brand); content: ''; display: block; height: 0; margin: 0 auto; opacity: 0.5; width: calc(100% - 2rem)}
.bgCol_dk_blue.sub_borders .sub_section:after, .bgCol_dk_blue hr {border-color: var(--light)}
section.sub_borders .sub_section:last-child::after {display: none}
.sub_section + .sub_section {margin-top: 2rem}
.section_preheading {color: var(--dark2)}
.heading, .subheading {color: var(--brand)}
.heading {font-size: var(--h2); font-weight: bold}
h2.big, .heading.big {font-size: var(--h1)}
.subheading {font-size: var(--h4); font-weight: normal}
.no_bottom_pad .copywrap {padding-bottom: 2rem}
.no_top_pad .sub_section:first-child .copywrap {padding-top: 2rem}
.layout_center {text-align: center}
.layout_center ol, .layout_center ul {display: inline-block; margin: 0; text-align: left}
.layout_center .links {justify-content: center}
.copy h2:not(:first-child), .copy h3:not(:first-child), .copy h4:not(:first-child), .copy h5:not(:first-child), .copy h6:not(:first-child) {margin-top: 2rem}
.small_h h2 {font-size: var(--h3); font-weight: normal}
.small_h h3 {font-size: var(--h4)}
.small_h h4 {font-size: var(--h5)}
.small_h h5 {font-size: var(--h6)}
.small_h h6 {font-size: var(--p)}
.imgholder .empty_post_img.img {background-repeat: no-repeat; background-size: contain}
/*composted bg*/
.imgholder.composted, .imgholder.img, .imgholder .img {background-repeat: no-repeat; background-size: cover; padding-bottom: 50%}
.imgholder .img.aspect {margin: 1rem auto; max-height: 50vw; padding:0}
.imgholder.composted {position: relative}
.imgholder.composted .img {padding-bottom: 0; position: absolute}
.imgholder.composted .img_fg {background-position: bottom center; background-size: contain; bottom: 0; left: 0; right: 0; top: 1rem; z-index: 1}
.imgholder.composted .img_bg {background-size: cover; bottom: 3rem; left: 0; right: 0; top: 0; z-index: 0}
.imgholder.composted.fg_pos_auto .img_fg, .imgholder.composted.fg_pos_left .img_fg {background-position: bottom left}
.imgholder.composted.fg_pos_auto .img_bg {left: 3rem}
.rev .imgholder.composted.fg_pos_auto .img_fg, .imgholder.composted.fg_pos_right .img_fg {background-position: bottom right}
.rev .imgholder.composted.fg_pos_auto .img_bg {left: 0; right: 3rem}
.imgholder .empty_img.img {background-repeat: no-repeat; background-size: contain}

/*section: boxes*/
.sub_section_boxes .copy {text-align: center}
.box {margin: 2rem 0}
.boximg img {display: block; margin: 0 auto}
.boximg {margin: 1rem auto; max-width: 100%; width: max-content}
.boximg.boximg_staffphoto {aspect-ratio: 0.95; background-size: cover; width: auto}
.boximg:has(img)::after {background-color: var(--brand); border-radius: 10rem; content: ''; display: block; height: 0.25rem; margin: 0.5rem 0 0 0; width: auto}
h2.boxheading {color: var(--brand); font-size: var(--h3); margin: 0}
.boxsubheading {font-weight: bold}
.box .links {display: block; margin: 0}
.boxlinks .links a {display:block; margin: 1rem 0}
.boxlinks .links a:first-child {margin-top: 0}
.boxlinks .links a:last-child {margin-bottom: 0}
.boxlinks .links:not(:has(.link)) .button {margin-left: auto; margin-right: auto; width: max-content}
.sub_section_boxes.layout_icon {text-align: center}
.sub_section_boxes.layout_icon .boximg:has(img)::after {display: none}
.sub_section_boxes.layout_icon .boxheading {font-size: var(--h5)}

/*section: carousel-info*/
.info-carousel_slide .imgholder {margin: 1rem auto; max-width: 640px}
.info-carousel_slide .imgholder .img {padding: 0}
.info-carousel_slide .slide_title {color: var(--brand); text-transform: uppercase}
.sub_section_carousel_info .swiper-nav {text-align: center}
.sub_section_carousel_info .swiper-button-next, .sub_section_carousel_info .swiper-button-prev {display: inline-block; margin: 1rem; position: static}

/*section: faqs*/
.sub_section_faqs .copy {text-align: center}
.faq {border-bottom: 1px solid var(--border); padding: 1rem 0 1px 0}
.faq_question {color: inherit; font-size: var(--h3); font-weight: normal}

/*section: form*/
.sub_section_form .formhead {margin-bottom: 2rem; text-align: center}
.formBG_wrap_inputs {padding: 1rem 0 2rem}
.formBG_wrap_bg .img {background-size: cover; padding: 0}

/*section: image bar*/
.sub_section_imgbar {background-position: center; background-size: cover; background-color: var(--brand); height: 25rem}

/*section: link table*/
.link_table dt {font-size: var(--h5); font-weight: bold; margin: 1.5rem 0 0 0}
.link_table dd {margin: 0.5rem 0 1rem 0}

/*section: program info columns*/
.program_col_heading {font-weight: normal}
.program_col_heading span {display: block; font-size: var(--h3)}
.program_col_stat {margin: 1rem 0}
.program_col_stat h3, .program_col_stat p {margin: 0}
.program_col_stat h3 {color: var(--dark2); font-size: var(--h4)}
.program_col_stat .stat_number {font-size: var(--h3); font-weight: bold}
.program_col_datasheet {margin-top: 2rem}

/*section: main content*/
#main_content {padding: 2rem 0 3rem 0}
#main_content.hasBG, #main_content.hasForm, #main_content.hasBG .container, #main_content.hasForm .container {padding: 0}
#topform {background-color: var(--brand2); border-top: 0.625rem solid var(--highlight); color: var(--light); padding: 1rem}
#topform .form_heading {color: inherit; font-size: var(--h4)}
#topform form {margin-top: 2rem}
#topform input[type="submit"] {background-color: var(--highlight); color: var(--dark)}
#topform .optin label {font-size: var(--small2)}
#main #topform a {color: inherit}
#main_content.hasBG #main_content_content, #main_content.hasForm #main_content_content {background-size: cover; padding: 3rem 1rem}
#home_promo {align-items: center; display: flex; gap: 1rem; margin: 1rem auto 1rem 0; max-width: 480px}
.home_promo_copy {font-size: var(--h6)}

/*section: logos*/
.sub_section_logos {text-align: center}
.sub_section_logos .logos {align-items: baseline; display: flex; flex-wrap: wrap; gap: 2rem; justify-content: space-evenly; margin: 2rem 0}

/*section: row*/
.sub_section_row.rounded .img {border-radius: 1rem}

/*section: row(links)*/
.sub_section_link_row .linksholder {padding: 2rem}
.sub_section_link_row .linksholder .copy {background-color: var(--light3); padding: 2rem}
.bgCol_white3 .sub_section_link_row .linksholder .copy {background-color: var(--light)}
.bgCol_blue .sub_section_link_row .linksholder .copy, .bgCol_blue2 .sub_section_link_row .linksholder .copy {background-color: var(--light-alt3)}
.bgCol_blue3 .sub_section_link_row .linksholder .copy {background-color: var(--light-alt)}
.bgCol_dk_blue {background-color: var(--brand); color: var(--light)}

.sub_section_link_row .links_heading {font-size: var(--h5); font-weight: bold; text-align:center}
.sub_section_link_row .linksholder .links {display: block}
.sub_section_link_row .linksholder .links a {display: block; margin: 1rem auto; max-width: 12rem}

/*section: schedule visit*/
.sub_section_visit {background-color: var(--brand); color: var(--light)}
.sub_section_visit .container {padding: 0}
.sub_section_visit .copy {padding: 2rem 1rem}
.sub_section_visit .schedule_visit_heading {color: inherit; font-size: var(--h3)}
.sub_section_visit .schedule_visit_address {font-size: var(--h5)}

/*section: search*/
.subsection_searchform {margin: 0 0 2rem 0}

/*section: social links*/
.sub_section_social .copy {text-align: center}
.sub_section_social .social_links {margin: 1rem 0}

/*section: tabs*/
.section:has(+ .section > .sub_section_tabs:first-child), .section:has(.sub_section_tabs:last-child) {border-bottom: none;  padding-bottom: 0}
.tabs {background-size: cover; border-bottom: 1px solid var(--border); border-top: 1px solid var(--border); overflow: hidden}
.tabs_nav {display: flex; flex-wrap: wrap; gap: 1rem; list-style: none; margin: 0; padding: 0}
.tabs_nav li {margin: 0}
body.js .tabs_nav a {padding: 0 0.5rem; text-decoration: none}
.tabs_nav .active a {border-bottom: 3px solid; color: var(--brand)}
.tab {margin: 2rem 0}
body.js .tab{display:none}
.videotabwrapper .links {justify-content: center}

/*section: testimonial*/
.testimonial_content {font-family: var(--font2); font-size: var(--h4)}
.testimonial_content .quotemark {display: block; font-size: 4rem; height: 0.5em}
.testimonial .img {background-size: contain; margin: 1rem auto; max-width:640px; padding: 0}

/*section: video*/
.sub_section_video .copy {text-align: center}
.videotitle {font-weight: bold; margin: 0 0 1rem 0}

/* program data */
.program_info_copy .imgholder {margin-top: -2rem}
.program_info_copy .imgholder .img {border-radius: 1rem; padding-bottom: 115%}
.program_info_data_stats {text-align: center}
.program_info_data_stats .program_stat {display: inline-block; margin: 1rem; vertical-align: top}
.program_info_data_stats .stat_heading, .program_info_data_stats .stat_number, .program_info_data_stats .stat_note {display: block}
.program_info_data_stats .stat_heading, .program_info_data_stats .stat_source {color: var(--dark2)}
.program_info_data_stats .stat_heading {text-transform: uppercase}
.program_info_data_stats .stat_number {font-size: var(--h3); font-weight: bold; margin: 0.25rem 0}
.program_info_data_stats .stat_number.icon_up:after {content: url('img/icon/job_outlook.png'); display: inline-block; margin-left: 0.5rem}
.program_info_data_stats .stat_source {font-size: var(--small2); font-weight: bold; margin: 0 0 2rem; text-align: center}
.program_info_data .links {justify-content: center}

/* news/events */
.subsection_home_calendar .sectioncopy, .subsection_home_events .sectioncopy, .subsection_home_featured_post .sectioncopy {text-align: center}
.subsection_home_events .home_event .img, .featured_post .img, .subsection_home_posts .postimg .img {border-radius: 0.5rem}
.subsection_home_events .home_event_wrap {border-bottom: 1px solid var(--border); padding: 1.5rem 1rem}
.subsection_home_events .post_date {color: var(--brand); margin: 1rem 0 0.5rem 0}
.subsection_home_events .post_title {font-size: var(--h4); font-weight: bold; margin: 0.5rem 0 2rem 0 !important}
.featured_post {margin: 2rem 0}
.featured_post .copyholder {margin: 1rem 0}
.featured_post .post_title {color: inherit; font-size: var(--h2)}
.subsection_home_posts .home_post {margin: 3rem 0}
.subsection_home_posts .postimg::after {background-color: var(--brand); border-radius: 10rem; content: ''; display: block; height: 0.25rem; margin: 0.5rem 0 0 0; width: auto}
.subsection_home_posts .postimg .img {background-size: cover; padding-bottom: 50%}
.subsection_home_posts .postimg .img.empty_post_img {background-repeat: no-repeat; background-size: contain}
.subsection_home_posts .post_title {color: inherit; font-size: var(--h3)}
.home_search_form {margin: 1rem 0}
.home_search_form .fieldset .field {display: inline-block}
.home_search_form .field input {background-color: transparent; border: none}
.home_search_form .field input[type="search"] {border-bottom: 1px solid var(--border)}

/* generic posts */
.post {margin: 3rem 0}
.post .imgholder {width: 25%}
.post .img {aspect-ratio: 1.3333; background-size: cover; border-radius: 0.5rem}
.post .img.empty_post_img {background-size: contain}
.post .copyholder {vertical-align: middle}
.post .post_date {margin: 0}
.post .post_title {font-size: var(--h3); margin: 0 0 1rem 0 !important}

/* post-single */
#post.hasBG {background-size: cover; padding: 2rem 0 0 0}
#post #pageheading {text-align: center}
#post_hero_img {background-size: cover; height: 24rem; margin: 1rem 0}
#post_cats {gap: 1rem; justify-content: center; margin: 1rem 0}
#post_cats .button {background-color: transparent; border: 2px solid var(--border); box-shadow: none; color: inherit; padding: 0.75rem 2rem}
#social_share {margin: 1rem 0}
#social_share .social_share img {display: block; height: 1rem; object-fit:contain; width: 1rem}
#social_share .social_share {background-color: var(--brand); border-radius: 10rem; display: inline-block; padding: 0.5rem}
#social_share .social_share.facebook {background-color: #1877f2}
#social_share .social_share.linkedin {background-color: #0a66c2}
#post #main_content {padding-top: 1rem}
#post h2 {font-size: var(--h4)}
#post h3, #post h4, #post h5, #post h6 {font-weight: bold}
#post h3, #post h4 {font-size: var(--h5)}
#post h5, #post h6 {font-size: var(--h6)}
#post .asideholder .asidecopy {border-bottom: 2px solid var(--border); font-weight: bold}
#post .asideholder .asidecopy p {font-size: var(--h5)}
#related_links {margin-top: 2rem}
#related_links a {font-weight: bold}
#posts .sectioncopy {text-align: center}

/* event-single */
#event_img {border-radius: 1rem}

/* footer */
#footer {background-color: var(--light3); border-top: 1px solid var(--border); padding: 1rem 0}
#footer_logo .footer_logo {display: block; margin: 1rem 0; max-width: 640px; width: 100%}
.footer_col {margin: 3rem 0}
.footer_col a {text-decoration: none}
#footer_contact {font-size: var(--h5)}
#footer_nav .menu {font-weight: bold; list-style: none; padding: 0}
#footer_logos_social {text-align: center}
#footer_promo {align-items: center; display: flex; gap: 1rem; margin: 1rem 0}
.footer_promo_copy {font-size: var(--h5); text-align: left}
#footer_social {margin: 2rem 0}
#footer_logos {align-items: center; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin: 1rem 0}
.footer_logo {height: auto; width: 120px}
#subfooter {text-align: center}
#subfooter_copyright, #subfooter_nav, #subfooter_nav li {display: inline}
#subfooter_nav {list-style: none; padding: 0}
#subfooter_nav:before {content: " "}
#subfooter_nav li:not(:last-child)::after {content: " | "}

/* temp/diag */
/*h3 p {outline: 2px dotted orange}*/
/*.section_heading, .section_subheading {outline: 2px dotted red}*/

/* WPUS Silo hacks */
ul.wpus-listings {list-style: none; padding: 0}
div.wpus-related {margin: 1rem 0}