html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
u, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
html,
body {
    height: 100%;
}
body {
    background: #fff;
    color: #4b4b4b;
    font-family: "Helvetica Neue", Helvetica, Arial, Sans-serif;
    font-size: 16px;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
*:focus {
	outline: 2px solid #78CFF5;
}
a {
    background-color: transparent;
    color: #2C9ED9;
}
a:hover {
    cursor: pointer;
}
#mainWrapper {
	margin: 0 auto;
	padding: 2.25em 1.25em 1.25em;
	position: relative;
	width: 100%;
	max-width: 900px;
}
.CAIHeader {
    padding: 0;
}
.branding {
    border: 1px solid #ccc;
    border-bottom-color: #fff;
    border-radius: 10px 10px 0 0;
    padding: 1em 1.5em 0;
    z-index: 1;
}
#api_download {
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 0 10px 0 0;
    display: flex;
    flex-flow: row wrap;
    margin-top: -1px;
    padding: 2em;
}
h2 {
    color: #333;
    font-size: 1.5em;
    font-weight: bold;
    margin-bottom: 0.5em;
}
.hide {
  display: none !important;
}
.intro_text {
    flex: 1 1 0;
    margin-right: 2em;
}
.intro_text {
    border-right: 1px dotted #ccc;
    padding: 0 1em 0 0; 
}
p {
    font-size: 0.875em;
    line-height: 1.75;
    margin-bottom: 1em;
}
.intro_text p {
    margin-bottom: 0;
}
.links {
    align-items: center;
    display: flex;
    flex-flow: column nowrap;
    margin: 0 auto;
}
.text_link {
    font-size: 0.875em;
    color: #005E9C;
}
.text_link:hover {
    color: #002C4A;
}
.btn_download {
	display: block;
	background: #FFFCFA;
	border: 1px solid #FD9644;
	border-bottom-width: 6px;
	border-radius: 10px;
	color: #005E9C;
    font-size: 1.5em;
	font-weight: bold;
    margin: 1em auto;
    padding: 10px 10px 12px;
    text-decoration: none;
    transition: all .1s linear;
}
.btn_download:hover {
    background: #FFF4EC;
    border-bottom-width: 1px;
    color: #1B4679;
    cursor: pointer;
    margin-top: calc(1em + 5px);
}
.btn_wrapper {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
}
.icon.icon-download_arrow {
	margin-left: 0.5em;
}
.icon.icon-document {
	font-size: 2em;
	margin-right: 0.2em;
}
#mc_embed_signup {
    background: #E7F2FA;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 10px 10px;
    clear: left;
    padding: 2em;
}
#mc_embed_signup_scroll {
    display: flex;
    flex-flow: row wrap;
}
.indicates-required {
    flex: 1 1 100%;
    font-size: 0.75em;
    margin-bottom: 0.5em;
    text-align: right;
}
.asterisk {
    color: red;
}
.mc-field-group {
    display: flex;
    flex-flow: column nowrap;
    margin: 0 0 1em;
}
.mc-field-group label,
.mc-field-group strong {
    font-size: 0.875em;
    margin-bottom: 0.25em;
}
.mc-field-group label .asterisk,
.mc-field-group strong .asterisk {
    font-size: 1.25em;
    line-height: 0;
}
.mc-field-group input[type="email"],
.mc-field-group input[type="text"] {
    border: 1px solid #ABB0AF;
    border-radius: 3px;
    padding: 0.5em;
}
.phonefield .small-meta {
    font-size: 0.75em;
    margin: 0 0 0 1em;
}
.col {
    flex: 0 0 45%;
    margin: 0 5% 0 0;
}
.input-group {
    flex: 1 1 100%;
    margin: 0 0 1em;
}
.input-group ul {
    display: flex;
    flex-flow: row wrap;
    list-style: none;
    margin: 0.25em 0;
}
.input-group ul li {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    margin: 0 1em 0 0;
}
.input-group ul li input[type="radio"] {
    margin: 0 0.5em 0.25em 0;
}
#mc-embedded-subscribe {
    background: #005E9C;
    border: 1px solid #002C4A;
    border-bottom-width: 4px;
    border-radius: 10px;
    color: #fff;
    font-size: 0.850em;
    padding: 0.714em;
    transition: all .1s linear;
    width: 120px;
}
#mc-embedded-subscribe:hover {
    background: #002C4A;
    border-bottom-width: 1px;
    cursor: pointer;
    margin-top: 3px;
}

#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error,
#mce-error-response {
    display: inline-block;
    margin: 2px 0 0;
    padding: 5px 10px;
    background-color: rgba(255, 255, 255, 0.85);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 0.875em;
    font-weight: normal;
    z-index: 1;
    color: #e85c41;
}
#mc_embed_signup #mc-embedded-subscribe-form input.mce_inline_error {
    border: 2px solid #e85c41;
}
#mce-success-response {
    display: inline-block;
    margin: 2px 0 0;
    padding: 5px 10px;
    background-color: #92EEC0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 0.875em;
    font-weight: normal;
    z-index: 1;
    color: #000;
}
#mce-responses {
    flex: 1 1 100%;
}
#mce-responses .response {
    font-size: 0.875em;
    margin: 0 0 1em;
}
footer {
    background: none;
    font-size: 0.750em;
    padding: 0.5em 0;
    position: relative;
    text-align: right;
}

@media only screen and (max-width: 620px) {
    .intro_text {
        border-right: none;
        flex: 1 1 100%;
        margin: 0 0 1em;
        padding: 0;
    }
    .col {
        flex: 1 1 100%;
    }
}