/*! 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}

/* screen reader */
.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}

/* vars */
:root {
	--dark_blue: #4687af;
	--light_blue: #b7d5e1;
	--red: #d80044;
	--darker_blue: #2e5a74;
	--transparent_blue: #234357e6;
	--white: #ffffff;
	--black: #000000;
}

html {height: 100%; scroll-behavior: smooth}
body {display: flex; flex-direction: column; font-family: 'Open Sans', sans-serif; height: 100%; margin: 0 auto; max-width: 1920px; }
[id] {scroll-margin-top: 7rem}
a {color: inherit; text-decoration: none}
a:hover{text-decoration: underline}
section a, section .accordion_toggle {color: var(--darker_blue)}
img {height: auto; max-width: 100%}
.container {padding: 0 1em}
.container > :first-child, .copy > :first-child {margin-top: 0}
.container > :last-child, .copy > :last-child {margin-bottom: 0}
.tbl {border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
.tbl_row {display: table-row}
.tbl_cell {border: 1em solid transparent; display: table-cell; vertical-align: top}
.caps {text-transform: uppercase}
.button {background-color: var(--red); border: none; border-radius: 0.5em; color: var(--white); cursor: pointer; display: inline-block; padding: 0.5em 1em; width: 100%; font-weight: bold; font-size: 1.5rem; width: auto}
.button_sm {font-size: 1.125rem}
.buttonholder .button {margin: 0 0.5rem 0.5rem 0.5rem}
.button:hover {text-decoration: none}
.buttonholder {margin-top: 2em; text-align: center}
.accordion_toggle {cursor: pointer}
body.js .accordion_content{display: none}
.centered {text-align: center}
.centered ol, .centered ul, ol.centered, ul.centered {display: inline-block; margin: 0; padding: 0; text-align: left}
h1, h2.h1 {font-size: 2rem}
h2.centered {text-align: center}
h2.altcol {color: var(--red)}
.fancylist {list-style: none}
ol.fancylist {counter-reset: ol-counter}
ol.fancylist > li {position: relative}
ol.fancylist > li::before {background-color: var(--dark_blue); border-radius: 100%; color: var(--white); content: counter(ol-counter); counter-increment: ol-counter; height: 1em; line-height: 1; margin-right: 0.5em; padding: 0.5em; position: absolute; right: 100%; text-align: center; width: 1em}
ul.fancylist {padding: 0}
ul.fancylist li::before, .check::before {content: '\02713'; margin-right: 0.25em; color: #3f9f2c; font-weight: bold}
.mapholder {height: 0; padding-bottom: 56.25%; position: relative}
.mapholder iframe {height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.videoWrap {aspect-ratio: 16/9; margin: 2em auto; max-height: calc(85vh - 6rem); position: relative}
.videoWrap.vertical_vid {aspect-ratio: 9/16}
.videoWrap iframe, .videoWrap video {height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.cert-logo {display: block; margin: 1em auto}
.highlight {color: var(--darker_blue); font-weight: 800}
.highlight.highlight2 {color: var(--red)}

/* header */
header, footer {background-color: var(--dark_blue); color: var(--white); flex-grow: 0; flex-shrink: 0}
header {position: sticky; top: 0; z-index: 5}
#header_cta {display: none}
#header_logo, #header_menu {vertical-align: middle}
#header_logo img {display: block; margin: 0 auto; width: 320px}
#header_menu {position: relative; width: 3em; z-index: 10}
#header_menu_toggle {border: none; background-color: transparent; padding: 0; color: var(--white); font-size: 300%}
#header_menu_menu {display: none; position: absolute; right: 0; background-color: var(--light_blue);padding: 0.5em 1em; top: 100%; box-shadow: 0 0.25em 0.5em var(--dark_blue)}
body.nojs #header_menu:hover #header_menu_menu {display: block}
#header_menu_menu ul {list-style: none; padding: 0; white-space: nowrap; margin: 0}
#header_menu_menu a {color: var(--black); padding: 0.25em; display: block}

/* hero */
#hero {padding: 0}
#hero_img {background-image: url('/sem/assets/img/hero/ma_640.jpg'); background-position: center; background-size: cover; height: 0; padding-bottom: 50%}
#hero_wrap {padding: 0}
#hero_wrap .container {padding: 0}
#hero_copy { padding: 2em 1em 0em}
#hero_copy h1 {font-size: 2rem; margin: 1rem 0}
#hero_copy h1 .subhead {display: block; font-size: 1.5rem}
#top_form {background-color: var(--dark_blue); color: var(--white); padding: 2em 1em}
#hero_img:has(#thanks.thanks_fullheight) {background-position: left; box-sizing: border-box; display: flex; flex-direction: column; height: 100%; justify-content: center; padding: 4rem 0}
#thanks .buttonholder {margin-top: 0}
#thanks a {font-weight: bold}
#thanks.thanks2026 {background-color: var(--darker_blue); background-position: center; background-size: cover; box-sizing: border-box;  display: flex; flex-direction: column; height: 100%; justify-content: center; padding: 2rem}
#thankswrap {background-color: rgba(255,255,255,0.8); border-radius: 2rem; font-size: 1.25rem; margin: 0 auto; padding: 2rem; text-align: center}


/*form*/
.field {margin: 1em 0}
.fieldset .field {border-width: 1em; vertical-align: bottom}
.field label {display: block; margin-bottom: 0.25em}
.field input[type=email], .field input[type=tel], .field input[type=text], .field select {height: 1.75em; width: 100%; box-sizing: border-box; border: none; padding: 0.25em 0.5em; border-radius: 0.25em; background-color: var(--white)}
.field input[type="submit"] {    background-color: #a4d7f1;
    border: none;
    border-radius: 0.5em;
    cursor: pointer;
    padding: 0.5em;
    width: 100%;
    box-sizing: border-box;
    color: #254a5de6;
    font-weight: bold;
    font-size: 150%;}
fieldset.cb {border: none; margin: 1em 0; padding: 0}
fieldset.cb .fields {display: table; border-collapse: collapse; border-style: hidden}
fieldset.cb .field {display: table-row}
fieldset.cb .cb_wrap, fieldset.cb .lb_wrap {display: table-cell; border: 0.5em solid transparent}
legend {margin-bottom: 0.25rem}
.lb_wrap label {margin: 0}
textarea.comments{display: none}
.deadline {background-color: var(--white); border-radius: 10rem; color: var(--dark_blue); font-size: 1rem; font-weight: bold; padding: 1rem; text-align: center; text-transform: none}
.deadline span {whitespace: nowrap}
.guide_cta {font-size: 90%; font-weight: bold}
.disclaimer {font-size: 75%}
.disclaimer.pp {text-align: center}
.disclaimer .accordion_toggle, .disclaimer.pp a {color: var(--white)}
.englishonly {text-align: center}
.cf-turnstile {text-align: center}

/* footer */
footer {text-align: center}
footer > .container {padding: 1em} 
footer .location {margin-bottom: 2em}
.subfooter {background-color: var(--red); padding: 0.5em 0}
.subfooter p {font-size: 66.6667%; margin: 0.5em 0}
#footerbtn {background-color: transparent; bottom: 0; padding: 0.5em 0; position: sticky}
#footerbtn .button {border: 2px solid var(--white)}
.phones ul {display: inline-block; list-style: none; margin: 0; text-align: left}

/* sections */
main{flex-grow: 1}
section::after {clear: both; content: ""; display: block}
main section {padding: 2rem 0}
main section:nth-child(2n):not(section section) {background-color: var(--light_blue); margin: 0; padding: 2rem 0}
main .bar + #bottom, main .bar + #bottom + #accreditation {background-color: transparent; margin: 2rem 0; padding: 0}
.subsection {margin-top: 4rem}
.subsection:first-child {margin-top: 0}
.row .imgholder {background-position: center; background-size: cover; padding-bottom: 60%}

/*accreditation*/
#accreditation h2 {text-align: center}
.accred {margin-bottom: 2rem; text-align: center}
.accred hr {display: none}
.accred img {display: block; margin: 1em auto; width: 100px}
.accred p {font-size: 80%}

/*alphabox*/
.alphabox {background-color: rgba(255,255,255,0.75); margin: 0 auto; max-width: 512px; padding: 1rem 2rem}

/*bottom bar*/
main section.bar, main section.bar:nth-child(2n):not(section section), section.bar {background-color: #2a7ea8; color: var(--white); margin: 0; padding: 2em 0; text-align: center}

/*gridlist*/
ol.gridlist {counter-reset: ol-counter; list-style-type: none; padding: 0}
ol.gridlist li {align-items: center; background-color: var(--light_blue) border-radius: 0.5rem; display: flex; font-size: 125%; font-weight: bold; margin: 0.5rem; padding: 1rem}
ol.gridlist li::before {background-color: var(--dark_blue); border-radius: 100%; color: var(--white); content: counter(ol-counter); counter-increment: ol-counter; display: inline-block; height: 1em; line-height: 1; margin-right: 0.5em; min-width: 1em; padding: 0.5em; text-align: center; width: 1em}

/*footer form*/
#footerform .disclaimer {font-size: inherit}
#footerform .disclaimer .accordion_toggle, #footerform .privacy a {color: inherit}
#footerform .field.submit {margin-top: 2rem}
.bubble {background-color: var(--light_blue) border-radius: 0.5rem; font-weight: bold; padding: 1rem; text-align: center}
main section:nth-child(2n) .bubble, main section:nth-child(2n) ol.gridlist li {background-color: var(--white)}

/*half-video*/
main section:nth-child(2n).halfwidth_video, .halfwidth_video {padding: 0}
.halfwidth_video .t-cell {vertical-align: middle}
.halfwidth_video .copyholder {padding: 1rem}

/*tabs*/
body.js .tabnav {display: none}
body.js .accordion_toggle.tabheading {color: var(--black); padding-right: 1em; position: relative}
body.js .accordion_toggle.tabheading::after {content: " \00BB"; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%)}
.tab:nth-child(2n) {background-color: #f0f0f0}
.tab {padding: 1em}

/*testimonials*/
#testimonials h2 {text-align: center}
.testimonial {background-color: var(--light_blue) border-radius: 0.5em; margin: 2em 0; padding: 1em}
 #testimonials:nth-child(2n) .testimonial {background-color: #f7fbfc}
.testimonial .quote {font-weight: bold}
.testimonial .copy {padding: 0 1em}
.testimonial .firstchar {background-color: var(--red); border-radius: 50%; color: var(--white); display: inline-block; font-size: 150%; font-weight: bold; height: 1em; line-height: 1; padding: 0.5em; text-align: center; width: 1em}
.testimonial:nth-child(3n+1) .firstchar {background-color: var(--darker_blue)}
.testimonial:nth-child(3n+2) .firstchar {background-color: var(--dark_blue)}
.testimonial .namewrap {margin-bottom: 1em}
.testimonial .firstcharwrap {width: 3em}
.testimonial .firstcharwrap, .testimonial .namenamewrap {border-width: 1em; vertical-align: middle}
.testimonial .name, .testimonial .stars {margin: 0}
.testimonial .stars {color: #eed555}

/* curriculum */
.curriculum {list-style: none; padding: 0}
.curriculum li {margin: 1rem 0}


/* thankyou */
#thanks h1, #thanks .socials, .phones {text-align: center}
#thanks .social {display: inline-block; margin: 0 1em}
#thanks .social img {display: block; margin: 0 auto; height: 75px; width: auto}

.container#thanks {background-color: rgba(255,255,255,0.8); border-radius: 2rem; font-size: 1.25rem; margin: 0 1rem; padding: 2rem}
.container#thanks a {font-weight: bold}
#thanks.thanks_fullheight {text-align: center}
#thanksBottom {background-color: transparent}

@media(min-width: 640px) {
}

@media(min-width: 980px) {
	.container {margin: 0 auto; max-width: 980px}
	.d-tbl {border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
	.d-tbl.rev {direction: rtl}
	.d-tbl_row {display: table-row}
	.tbl_cell, .d-tbl_cell {border: 2em solid transparent; direction: ltr; display: table-cell; vertical-align: top}
	.d-tbl_cell.middle {vertical-align: middle}
	.cert-logo {float: right; margin: -2em 0 0 2em}
	ul.cols {column-count: 2; column-gap: 1rem}
  
	/* header */
	header .container, footer .container {margin: 0 auto; max-width: 1200px}
	header {padding: 0.5em 0}
	#header_logo {width: 30%; vertical-align: middle}
	#header_logo img {margin: 0; width: auto}
	#header_cta {display: table-cell; text-align: center; vertical-align: middle}
	header .phones {margin-top: 1em}
	header .phones a, header .phones a span {display: block}
	header .phones .location_name {color: #e0e0e0}
	header .tagline {font-size: 110%; margin: 0}
	.phone_callout {margin: 0}
	.phone_callout_heading {font-size: 175%; font-weight: bold; margin: 0.33em 0}

	/* hero */
	#hero_img {background-image: url('/sem/assets/img/hero/ma_1920.jpg'); padding-bottom: 400px; position: relative; z-index: 2}
	#hero {position: relative}
	#hero_wrap {background-color: var(--light_blue) padding-bottom: 2em}
	#hero_wrap .container {margin-top: -400px; padding: 0 1em}
	#hero_copy, #top_form {border: none; vertical-align: top}
	#hero_copy {padding-left: 0; padding-right: 2em; position: relative; width: 60%; z-index: 1}
	#hero_copy .copy {margin-top: 400px}
	#top_form {background-color: transparent; padding: 0; position: relative; width: 24rem; z-index: 3}
	#top_form_inner {background-color: var(--transparent_blue); padding: 1rem}
	#top_form h2 {color: #a4d7f1; font-size: 1.5rem; text-align: center}
	
	/* form */
	.deadline {white-space: nowrap}

	/* sections */
	/*accreditation*/  
	.accred img {height: 100px; width: auto}
	.accred hr {display: block}

	/*gridlist*/
	ol.gridlist {align-items: stretch; display: grid; grid-template-columns: repeat(3, 1fr)}

	/*footer form*/
	#footerform .d-tbl-cell.formwrap {border-width: 4rem}

	/*half-video*/	
	.halfwidth_video .d-tbl_cell {vertical-align: middle}
	.halfwidth_video .copyholder {padding-right: calc(((100% - 980px) / 2) - 1rem)}
	.halfwidth_video .videoWrap, .halfwidth_video video {margin: 0}

	/*row*/
	.row .copyholder, .row .imgholder {border-width: 4rem}
	.row .imgholder {background-clip: padding-box; padding-bottom: 20rem}
	.row .copyholder {vertical-align: middle}
	.row .copyholder > :first-child {margin-top: 0}
	.row .copyholder > :last-child {margin-bottom: 0}

	/*tabs*/
	body.js .tab {display: none}
	body.js .tab.active, body.js .tab.active .accordion_content {display: block}
	.tabheading {display: none}
	.tab:nth-child(2n) {background-color: transparent}
	body.js .tabnav, .tabnav {display: table; list-style: none; margin: 0; padding: 0; table-layout: fixed; width: 95%}
	.tabnav li {background-color: var(--red); border: 1px solid #252525; border-radius: 1em 1em 0 0; color: var(--white); cursor: pointer; display: table-cell; padding: 0.5em 1em; vertical-align: middle}
	.tabnav li a {color: inherit  }
	.tabnav li a:hover {text-decoration: none}
	.tabnav li .heading {display: block; font-weight: bold}
	.tabnav li .subhead {display: block; font-size: 66%; margin-top: 0.5em}
	.tabnav li:first-child {border-left-width: 2px}
	.tabnav li.active {background-color: var(--white); color: var(--black)}
	.tab{border: 1px solid #252525; border-left-width: 2px; border-radius: 0 0 1em 1em}
	
	/*video*/
	.video_row {margin: 2rem auto; max-height: calc(85vh - 6rem)}
	.video_row.single {width: 50%}
	.videoWrap {margin: 0 auto}

	/* curriculum */
	.curriculum {column-gap: 2rem; column-count: 2}
	.curriculum li {break-inside: avoid}
	.curriculum li:first-child {margin-top: 0}

	/*thanks*/
	.container#thanks {margin: 0 auto}

}