html{font-size:16px;box-sizing:border-box;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{padding:0;margin:0;background:#fff;font-family:var(--text-family);font-weight:var(--text-weight);line-height:1.5;color: var(--gray);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*::before,*::after{box-sizing:inherit}article,aside,footer,header,nav,section{display:block}figcaption,figure{display:block}figure{margin:1em 2.5em}hr{box-sizing:content-box;height:0;overflow:visible}main{display:block; outline:none;}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bold}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:var(--primary);color:#000}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}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button,[type="button"],[type="reset"],[type="submit"]{}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}input{overflow:visible}[type="checkbox"],[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-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid var(--light-gray);margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;display:table;max-width:100%;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}template{display:none}[hidden]{display:none}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:3px}select{box-sizing:border-box;width:100%;border-radius:3px}button{padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:3px;background:transparent;line-height:1;cursor:auto}pre{overflow:auto}button,input,optgroup,select,textarea{font-family:inherit}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}::placeholder {color: var(--gray); opacity: 1;}:-ms-input-placeholder {color: var(--gray); opacity: 1;}::-ms-input-placeholder {color: var(--gray); opacity: 1;}

/*Reduce Root Element (html) Sizing For REMs*/
@media only screen and (max-width: 1199px){html{font-size:15px}}@media only screen and (max-width: 1023px){html{font-size:14px}}@media only screen and (max-width: 800px){html{font-size:13px}}@media only screen and (max-width: 375px){html{font-size:12px}}

/********************************************************************************
--- Template Layout ---
*********************************************************************************/

@media only screen and (max-width: 800px) {
	/*-----------Adjust for Height of Fixed Mobile Menu-----------*/
	.wrapper { padding-top: 60px; }
}

/********************************************************************************
--- ADA Jump to Main Content---
*********************************************************************************/
.ada-banner {position: relative;}
a.skip-main {left: -999px; position: absolute; top: auto; width: 1px; height: 1px; overflow: hidden; z-index: -999; transition: all 300ms ease-out;}
a.skip-main:focus, a.skip-main:active { color: #fff;  background-color: var(--black); left: auto; top: auto; width: auto; height: auto; overflow: auto; margin: 0 5% ; padding: 0.4em 1em; border-radius: 0 0 5px 5px; text-align: center; font-size: 1.2em; z-index: 99999;}

/********************************************************************************
--- Components Device Type ---
*********************************************************************************/
.device__type { background: #fff; border-radius: 3px; bottom: 50px; color: var(--darker-gray); display: none; font-size: 3rem; padding: 10px; position: fixed; right: 49px; }
.device__type a {	color: var(--darker-gray); display: flex; justify-content: center; padding: 0 10px; }

/********************************************************************************
--- Site Search---
*********************************************************************************/
.search-results__item {padding-bottom: 1.875em; margin-bottom: 1.875em; border-bottom: 1px solid #EDECE6}
.search-results__item :last-child {margin-bottom: 0}

/********************************************************************************
--- Template - Page Elements ---
*********************************************************************************/
/*-----------Graphics-----------*/
/* NOTE: opacity is adjusted for a given section via an ACF field in the Starting Page Component. See background-for-multiple-components-start.php */
.bg-graphic-01:before {	content: "";position: absolute;width: 100%;height: 100%; background-image: url('../../images/dot-pattern-light.png'); background-position: bottom left; background-size: contain; background-repeat: no-repeat; opacity: .5;}
.bg-graphic-02:before { content: "";position: absolute;width: 100%;height: 100%; 	background-image: url('../../images/dot-pattern-dark.png'); background-position: bottom left; background-size: contain; background-repeat: no-repeat; opacity: .5;}

/*-----------Patterns-----------*/
/* NOTE: opacity is adjusted for a given section via an ACF field in the Starting Page Component. See background-for-multiple-components-start.php */
.bg-pattern-01:before {	content: "";position: absolute;width: 100%;height: 100%; background-image: url('../../images/bg-pattern-for-dark-bg.png'); background-position: top left; background-size: auto; background-repeat: repeat; opacity: .5; }
.bg-pattern-02:before {	content: "";position: absolute;width: 100%;height: 100%; background-image: url('../../images/bg-pattern-for-light-bg.png'); background-position: top left; background-size: auto; background-repeat: repeat; opacity: .5; }

.article { font-size: 1.125rem; }
.article h1, .article h2, .article h3, .article h4, .article h5, .article h6 { margin: 1.750em 0 1.500em; }
/*-----------Images-----------*/
img { max-width: 100%; height: auto; -ms-interpolation-mode: bicubic; display: inline-block; vertical-align: middle; }
img.aligntop { margin: 0 0 1.500em 0; }
img.alignleft, img.alignright {max-width:35%; margin-top:0.333em; margin-bottom:0.333em}
img.alignleft { float: left; margin-right:1.389em;}
img.alignright { float: right; margin-left:1.389em;}
img.border { border: 1px solid var(--light-gray); padding:0.278em; background: #fff;}
/*-----------Responsive Embed-----------*/
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* --- SWITCH --- */
.switch * { cursor: pointer; }
.switch input { opacity: 0; position: absolute; z-index: -1; }
.switch span { position: relative; display: inline-block; width: 58px; height: 30px; background-color: #fff; border: 1px solid var(--light-gray); border-radius: 100px; transition: all .5s; box-shadow: 1px 2px 3px rgba(0,0,0,0.1) inset; }
.switch span:after { content: ""; position: absolute; background-color: #fff; top: 0; left: 0; height: 28px; width: 28px; border: 1px solid var(--light-gray); border-radius: 400px; box-shadow: 1px 1px 3px rgba(0,0,0,0.1); transition: all .2s; }
.switch input:checked + span { background-color: var(--primary); border-color: var(--primary); transition: all .5s; }
.switch input:checked + span:after { left: 50%; transition: all .2s; }
/*-----------Error Validation-----------*/
form small.form-error {font-size: 0.667rem; background: #ee0000; color: #fff; padding: 0.222rem 0.333rem; font-weight: 500; margin: -1.000rem 0 0.556rem 0; display: block; }
/*-----------Success Container-----------*/
.success-container {display: none; text-align: center; margin-top: 5em; margin-bottom: 5em;}
.success-container__icon {font-size:7.5em; line-height: 1; color: var(--primary);}
.success-container p {font-size: 1.125em;}

