html { font-family: sans-serif; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0px; }
[hidden], template { display: none; }
a { background: transparent none repeat scroll 0px 0px; }
a:active, a:hover { outline: 0px none; }
b, strong { font-weight: 700; }
dfn { font-style: italic; }
h1 { font-size: 2em; margin: 0.67em 0px; }
mark { background: rgb(255, 255, 0) none repeat scroll 0% 0%; color: rgb(0, 0, 0); }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border: 0px none; }
svg:not(:root) { overflow: hidden; }
figure { margin: 1em 40px; }
hr { box-sizing: content-box; }
pre { overflow: auto; }
code, kbd, pre, samp { font-family: monospace,monospace; font-size: 1em; }
button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0px; }
button { overflow: visible; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0px none; padding: 0px; }
input { line-height: normal; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0px; }
input[type="search"] { box-sizing: content-box; }
fieldset { border: 1px solid silver; margin: 0px 2px; padding: 0.35em 0.625em 0.75em; }
legend { border: 0px none; padding: 0px; }
textarea { overflow: auto; }
optgroup { font-weight: 700; }
table { border-collapse: collapse; border-spacing: 0px; }
td, th { padding: 0px; }
.nocallout {  }
.pressed { background-color: rgba(0, 0, 0, 0.7); }
textarea[contenteditable] {  }
.gifhidden { position: absolute; left: -100%; }
.ir, .js .js-ir { text-indent: 100%; white-space: nowrap; overflow: hidden; }
.hidden { display: none ! important; visibility: hidden; }
.visuallyhidden { border: 0px none; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0px; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix::after, .clearfix::before { content: ""; display: table; }
.clearfix::after { clear: both; }
* { box-sizing: border-box; }
html { height: 100%; }
body { min-height: 100%; margin: 0px auto; }
ul { padding-left: 0px; list-style-type: none; }
dl dd { margin-left: 0px; }
img { vertical-align: middle; }
abbr[title] { border: medium none; }
.flushleft { float: left; }
.flushright { float: right; }
.clearboth { clear: both; }
.clearleft { clear: left; }
.clearright { clear: right; }
.clearnone { clear: none ! important; }
@media (min-width: 30em) {
  .flushleft-sm { float: left; }
  .flushright-sm { float: right; }
  .clearboth-sm { clear: both; }
  .clearleft-sm { clear: left; }
  .clearright-sm { clear: right; }
  .clearnone-sm { clear: none; }
}
@media (min-width: 45em) {
  .flushleft-md { float: left; }
  .flushright-md { float: right; }
  .clearboth-md { clear: both; }
  .clearleft-md { clear: left; }
  .clearright-md { clear: right; }
  .clearnone-md { clear: none; }
}
@media (min-width: 60em) {
  .flushleft-lg { float: left; }
  .flushright-lg { float: right; }
  .clearboth-lg { clear: both; }
  .clearleft-lg { clear: left; }
  .clearright-lg { clear: right; }
  .clearnone-lg { clear: none; }
}
@media (min-width: 75em) {
  .flushleft-xl { float: left; }
  .flushright-xl { float: right; }
  .clearboth-xl { clear: both; }
  .clearleft-xl { clear: left; }
  .clearright-xl { clear: right; }
  .clearnone-xl { clear: none; }
}
.hide-xs, .hide-xs-inline { display: none; }
@media (min-width: 30em) {
  .hide-xs { display: block; }
  .hide-xs-inline { display: inline; }
  .hide-sm, .hide-sm-inline { display: none; }
}
@media (min-width: 45em) {
  .hide-sm { display: block; }
  .hide-sm-inline { display: inline; }
  .hide-md, .hide-md-inline { display: none; }
}
@media (min-width: 60em) {
  .hide-md { display: block; }
  .hide-md-inline { display: inline; }
  .hide-lg, .hide-lg-inline { display: none; }
}
@media (min-width: 75em) {
  .hide-lg { display: block; }
  .hide-lg-inline { display: inline; }
  .hide-xl, .hide-xl-inline { display: none; }
}
.svg .svgfallback { display: none ! important; visibility: hidden; }
.resetcoords { position: relative; }
.freeflow { position: absolute; }
.freeflow.flushleft { left: 0px; }
.freeflow.flushright { right: 0px; }
.freeflow.flushtop { top: 0px; }
.freeflow.flushbottom { bottom: 0px; }
.layer-base { z-index: 0; }
.layer-one { z-index: 10; }
.layer-two { z-index: 20; }
.freeflow.fill { top: 0px; left: 0px; right: 0px; bottom: 0px; width: auto; height: auto; }
.freeflow.fill.center, .freeflow.fill > .center { margin: auto; }
.aspect-2-3 { padding-bottom: 150% ! important; }
.aspect-3-4 { padding-bottom: 133.333% ! important; }
.aspect-square { padding-bottom: 100% ! important; }
.aspect-4-3 { padding-bottom: 75% ! important; }
.aspect-3-2 { padding-bottom: 66.6667% ! important; }
.aspect-16-9 { padding-bottom: 56.25% ! important; }
.aspect-16-7 { padding-bottom: 43.75% ! important; }
@media (min-width: 30em) {
  .aspect-2-3-sm { padding-bottom: 150% ! important; }
  .aspect-3-4-sm { padding-bottom: 133.333% ! important; }
  .aspect-square-sm { padding-bottom: 100% ! important; }
  .aspect-4-3-sm { padding-bottom: 75% ! important; }
  .aspect-3-2-sm { padding-bottom: 66.6667% ! important; }
  .aspect-16-9-sm { padding-bottom: 56.25% ! important; }
  .aspect-16-7-sm { padding-bottom: 43.75% ! important; }
}
@media (min-width: 45em) {
  .aspect-2-3-md { padding-bottom: 150% ! important; }
  .aspect-3-4-md { padding-bottom: 133.333% ! important; }
  .aspect-square-md { padding-bottom: 100% ! important; }
  .aspect-4-3-md { padding-bottom: 75% ! important; }
  .aspect-3-2-md { padding-bottom: 66.6667% ! important; }
  .aspect-16-9-md { padding-bottom: 56.25% ! important; }
  .aspect-16-7-md { padding-bottom: 43.75% ! important; }
}
@media (min-width: 60em) {
  .aspect-2-3-lg { padding-bottom: 150% ! important; }
  .aspect-3-4-lg { padding-bottom: 133.333% ! important; }
  .aspect-square-lg { padding-bottom: 100% ! important; }
  .aspect-4-3-lg { padding-bottom: 75% ! important; }
  .aspect-3-2-lg { padding-bottom: 66.6667% ! important; }
  .aspect-16-9-lg { padding-bottom: 56.25% ! important; }
  .aspect-16-7-lg { padding-bottom: 43.75% ! important; }
}
@media (min-width: 75em) {
  .aspect-2-3-xl { padding-bottom: 150% ! important; }
  .aspect-3-4-xl { padding-bottom: 133.333% ! important; }
  .aspect-square-xl { padding-bottom: 100% ! important; }
  .aspect-4-3-xl { padding-bottom: 75% ! important; }
  .aspect-3-2-xl { padding-bottom: 66.6667% ! important; }
  .aspect-16-9-xl { padding-bottom: 56.25% ! important; }
  .aspect-16-7-xl { padding-bottom: 43.75% ! important; }
}
.occupy { display: block; }
.inline { display: inline; }
.inline-block { display: inline-block; }
.center-block { margin-left: auto; margin-right: auto; }
.right-block { margin-left: auto; margin-right: 0px; }
.left-block { margin-left: 0px; margin-right: auto; }
.truncate { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.nooverflow { overflow: hidden; }
.forcewrap { word-wrap: break-word; }
.contain-width img { max-width: 100%; height: auto; }
.contain-height img { max-height: 100%; width: auto; }
.background-contain, .background-fill { background-repeat: no-repeat; background-position: center center; background-attachment: scroll; background-size: cover; }
.background-contain { background-size: contain; }
.imagemask { position: relative; overflow: hidden; height: 0px; }
.imagemask img { position: absolute; top: 0px; left: 0px; width: 100%; height: auto; max-height: none; }
.imagemask, .imagemask-4-3 { padding-bottom: 75%; }
.imagemask-16-9 { padding-bottom: 56.25%; }
.imagemask-13-5 { padding-bottom: 38.46%; }
.imagemask-height img { bottom: 0px; left: auto; height: 100%; width: auto; max-width: none; }
.center-vertical { display: flex; flex-direction: column; justify-content: center; }
.center-vertical-text { vertical-align: middle; }
.embed-16-9, .embed-21-29, .embed-vimeo, .embed-youtube { position: relative; overflow: hidden; height: 0px; }
.embed-youtube { padding-bottom: 60.94%; }
.embed-16-9, .embed-vimeo { padding-bottom: 56.25%; }
.embed-21-29 { padding-bottom: 138.09%; }
.embed-16-9 iframe, .embed-21-29 iframe, .embed-vimeo iframe, .embed-youtube iframe { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
.js .js-hidden, .js-nonjs-hidden, .no-js .nonjs-hidden { display: none; }
.no-js .nonjs-visible { display: block ! important; }
@media (min-width: 50em) {
  .mobile-only { display: none; }
}
.almosthalf, .block-1of2, .block-1of3, .block-2of3, .block-3of4, .eighty, .fifth, .forty, .fourth, .full, .half, .ninety, .quarter, .seventy, .seventyfive, .sixty, .stretch, .third, .thirtyfive, .threefourth, .twofifth, .twothird { width: 100%; }
.block-1of4, .sixth { width: 50%; }
.container { padding: 0px 1.25rem; }
.full-xs { width: 100%; }
.half-xs { width: 50%; }
.quarter-xs { width: 25%; }
.fifth-xs { width: 20%; }
.block-1of4:nth-child(2n+1) { clear: both; }
@media (min-width: 30em) {
  .ninety { width: 90%; }
  .almosthalf, .block-1of3, .block-1of4, .fifth, .forty, .fourth, .half-sm, .quarter, .third, .thirtyfive, .twofifth { width: 50%; }
  .sixth, .third-sm { width: calc(0.333333 * 100%); }
  .quarter-sm { width: 25%; }
  .container, .container-sm { padding: 0px 2rem; }
  .block-1of2:nth-child(2n+1), .block-1of3:nth-child(2n+1), .block-1of4:nth-child(2n+1) { clear: both; }
}
@media (min-width: 30em) and (max-width: 44.99em) {
  .full-sm { width: 100%; }
}
@media (min-width: 45em) {
  .eighty { width: 80%; }
  .seventyfive, .threefourth { width: 75%; }
  .block-2of4, .twothird, .twothird-md { width: calc(0.666667 * 100%); }
  .seventy { width: 70%; }
  .sixty { width: 60%; }
  .block-1of2, .block-2of3, .half, .half-md { width: 50%; }
  .almosthalf, .twofifth { width: 45%; }
  .forty { width: 40%; }
  .thirtyfive { width: 35%; }
  .block-1of4, .third, .third-md { width: calc(0.333333 * 100%); }
  .thirty { width: 30%; }
  .fourth, .quarter, .quarter-md { width: 25%; }
  .fifth, .fifth-md, .sixth { width: 20%; }
  .container, .container-md, .container-sm { padding: 0px 2.5rem; }
  .block-1of4:nth-child(2n+1) { clear: none; }
  .block-1of4:nth-child(3n+1) { clear: both; }
}
@media (min-width: 30em) and (max-width: 59.99em) {
  .full-sm-md-lg { width: 100%; }
}
@media (min-width: 60em) {
  .half-lg { width: 50%; }
  .third, .third-lg { width: calc(0.333333 * 100%); }
  .sixth, .sixth-lg { width: calc(0.166667 * 100%); }
  .container, .container-lg, .container-md, .container-sm { padding: 0px 3rem; }
  .block-3of4 { width: 75%; }
  .block-2of3 { width: calc(0.666667 * 100%); }
  .block-2of4 { width: 50%; }
  .block-1of3 { width: calc(0.333333 * 100%); }
  .block-1of4 { width: 25%; }
  .block-1of3:nth-child(2n+1), .block-1of4:nth-child(3n+1) { clear: none; }
  .block-1of3:nth-child(3n+1), .block-1of4:nth-child(4n+1) { clear: both; }
}
@media (min-width: 75em) {
  .container, .container-lg, .container-md, .container-sm, .container-xl { margin-left: auto; margin-right: auto; padding: 0px 4rem; }
}
@media (min-width: 85em) {
  .container, .container-lg, .container-md, .container-sm, .container-xl { margin-left: auto; margin-right: auto; padding: 0px 6rem; max-width: 68rem; }
}
.fluid { width: auto ! important; }
.width-fifteen { width: 15rem ! important; }
.width-fourteen { width: 14rem ! important; }
.width-twelve { width: 12rem ! important; }
.width-ten { width: 10rem ! important; }
.width-eight { width: 8rem ! important; }
.width-six { width: 6rem ! important; }
.width-five { width: 5rem ! important; }
.width-four { width: 4rem ! important; }
.width-three { width: 3rem ! important; }
.width-two { width: 2rem ! important; }
.width-one { width: 1rem ! important; }
.min-eight { min-width: 8rem; }
.min-six { min-width: 6rem; }
.min-five { min-width: 5rem; }
.min-four { min-width: 4rem; }
.min-two { min-width: 2rem; }
.max-twelve { max-width: 12rem; }
.max-six { max-width: 6rem; }
.max-full { max-width: 100%; }
.max-ninety { max-width: 90%; }
.max-eighty { max-width: 80%; }
.max-sixty { max-width: 60%; }
.max-half { max-width: 50%; }
.max-fortyfive { max-width: 45%; }
.max-forty { max-width: 40%; }
.max-thirtyfive { max-width: 35%; }
.max-third { max-width: 30%; }
.max-fifth { max-width: 20%; }
.measure-10words, .measure-12words, .measure-4words, .measure-8words { padding-left: 1rem; padding-right: 1rem; transition: padding 0.3s ease-out 0s; }
.measure-4words { max-width: 16em; }
.measure-8words { max-width: 22em; }
.measure-10words { max-width: 25em; }
.measure-12words { max-width: 27em; }
@media (min-width: 35em) {
  .measure-10words, .measure-12words, .measure-8words { padding-left: 3rem; padding-right: 3rem; }
  .measure-8words { max-width: 27em; }
  .measure-10words { max-width: 30em; }
  .measure-12words { max-width: 33em; }
}
@media (min-width: 50em) {
  .measure-10words, .measure-12words, .measure-8words { padding-left: 1rem; padding-right: 1rem; }
}
.height-full-container { display: flex; flex-direction: column; }
.height-full { flex: 1 1 0%; height: 100%; }
.min-height-10l { min-height: 15em; }
.min-height-6l { min-height: 9em; }
.min-height-5l { min-height: 7.5em; }
.min-height-4l { min-height: 6em; }
.min-height-3l { min-height: 3.5em; }
.min-height-2l { min-height: 2.5em; }
.min-height-1l { min-height: 2em; }
.height-10l { height: 15em; }
.height-9l { height: 13.5em; }
.height-8l { height: 12em; }
.height-7l { height: 10.5em; }
.height-6l { height: 9em; }
.height-5l { height: 7.5em; }
.height-4l { height: 6em; }
.height-3l { height: 3.5em; }
.height-2l { height: 2.5em; }
.height-1l { height: 2em; }
.max-height-full { max-height: 100%; }
.max-height-half { max-height: 50%; }
.max-height-forty { max-height: 40%; }
.max-height-thirty { max-height: 30%; }
.cols-five, .cols-four, .cols-three, .cols-two { -moz-column-count: 2; -moz-column-gap: 1rem; }
@media (min-width: 30em) {
  .cols-three, .cols-two, .cols-two-sm { -moz-column-count: 2; -moz-column-gap: 2rem; }
  .cols-five, .cols-four { -moz-column-count: 3; -moz-column-gap: 0.5rem; }
}
@media (min-width: 45em) {
  .cols-prose-three, .cols-prose-two, .cols-two-md, .cols-two-sm { -moz-column-count: 2; -moz-column-gap: 3rem; }
  .cols-three { -moz-column-count: 3; -moz-column-gap: 1.5rem; }
  .cols-five, .cols-four, .cols-four-md { -moz-column-count: 4; -moz-column-gap: 0.5rem; }
}
@media (min-width: 60em) {
  .cols-prose-three { -moz-column-count: 3; }
  .cols-four { -moz-column-gap: 1.5rem; }
  .cols-five { -moz-column-count: 5; }
}
.colsspan {  }
.nocolsgap { -moz-column-gap: 0px ! important; }
@media (min-width: 30em) {
  .sidebar, .sidebar-one { float: left; width: 50%; }
  .mainbar, .mainbar-four { clear: both; }
}
@media (min-width: 30em) and (max-width: 44.99em) {
  .sidebar-right-sm { float: right; margin-left: 2rem ! important; }
}
@media (min-width: 45em) {
  .sidebar-md { float: left; }
  .sidebar, .sidebar-md, .sidebar-one { clear: both; width: 28%; }
  .sidebar-one { width: 20%; }
  .mainbar, .mainbar-four, .mainbar-md { clear: none ! important; margin-left: calc(0.333333 * 100%); }
  .mainbar-four { margin-left: 20%; }
}
.block-3up { display: flex; flex-wrap: wrap; width: 100%; }
.block-6up { width: 100%; }
.block-1by-6up { float: left; width: calc(0.333333 * 100%); border-color: rgba(0, 0, 0, 0.1); border-style: solid; border-width: 0px; }
.block-1by-6up:nth-child(3n+1) { clear: both; }
.block-1by-6up:nth-child(3n+2), .block-1by-6up:nth-child(3n+3) { border-left-width: 1px; }
.block-1by-6up:nth-child(-n+3) { border-bottom-width: 1px; }
@media (min-width: 45em) {
  .block-6up { max-width: 100%; }
  .block-1by-6up { width: calc(0.166667 * 100%); }
  .block-1by-6up:last-child { float: right; }
  .block-1by-6up:nth-child(3n+1) { clear: none; }
  .block-1by-6up:nth-child(-n+3) { border-bottom: medium none; }
  .block-1by-6up + .block-1by-6up { border-left-width: 1px; }
  .flexbox .block-6up, .flexboxlegacy .block-6up { display: flex ! important; width: 100%; }
  .flexbox .block-1by-6up, .flexboxlegacy .block-1by-6up { float: none; flex: 1 1 0%; width: 25px; min-width: 16%; }
  .flexbox .block-1by-6up:last-child, .flexboxlegacy .block-1by-6up:last-child { float: none; }
}
.space-eight, .space-eight-top { margin-top: 8rem ! important; }
.space-eight, .space-eight-bottom { margin-bottom: 8rem ! important; }
.space-six, .space-six-top { margin-top: 6rem ! important; }
.space-six, .space-six-bottom { margin-bottom: 6rem ! important; }
.space-four, .space-four-top { margin-top: 4rem ! important; }
.space-four, .space-four-bottom { margin-bottom: 4rem ! important; }
.space-three, .space-three-top { margin-top: 3rem ! important; }
.space-three, .space-three-bottom { margin-bottom: 3rem ! important; }
.space-two, .space-two-top { margin-top: 2rem ! important; }
.space-two, .space-two-bottom { margin-bottom: 2rem ! important; }
.space-line, .space-line-top { margin-top: 1.5rem ! important; }
.space-line, .space-line-bottom { margin-bottom: 1.5rem ! important; }
.space-one, .space-one-top { margin-top: 1rem ! important; }
.space-one, .space-one-bottom { margin-bottom: 1rem ! important; }
.space-3q, .space-3q-top { margin-top: 0.75rem ! important; }
.space-3q, .space-3q-bottom { margin-bottom: 0.75rem ! important; }
.space-half, .space-half-top { margin-top: 0.5rem ! important; }
.space-half, .space-half-bottom { margin-bottom: 0.5rem ! important; }
.space-1q, .space-1q-top { margin-top: 0.25rem ! important; }
.space-1q, .space-1q-bottom { margin-bottom: 0.25rem ! important; }
.nospace, .nospace-top { margin-top: 0px ! important; }
.nospace, .nospace-bottom { margin-bottom: 0px ! important; }
.nspace-line, .nspace-line-top { margin-top: -1.5rem ! important; }
.nspace-line, .nspace-line-bottom { margin-bottom: -1.5rem ! important; }
.nspace-one, .nspace-one-top { margin-top: -1rem ! important; }
.nspace-one, .nspace-one-bottom { margin-bottom: -1rem ! important; }
.nspace-3q, .nspace-3q-top { margin-top: -0.75rem ! important; }
.nspace-3q, .nspace-3q-bottom { margin-bottom: -0.75rem ! important; }
.nspace-half, .nspace-half-top { margin-top: -0.5rem ! important; }
.nspace-half, .nspace-half-bottom { margin-bottom: -0.5rem ! important; }
.nspace-1q, .nspace-1q-top { margin-top: -0.25rem ! important; }
.nspace-1q, .nspace-1q-bottom { margin-bottom: -0.25rem ! important; }
.space-opener, .space-section { margin-bottom: 2rem ! important; }
.pad-page { padding: 0.75rem 0.25rem ! important; }
.pad-block1of4:nth-child(2n+1) { padding-right: 0.25rem; }
.pad-block1of4:nth-child(2n) { padding-left: 0.25rem; }
@media (min-width: 30em) {
  .space-opener { margin-bottom: 2rem ! important; }
  .space-section { margin-bottom: 2.5rem ! important; }
  .pad-page { padding: 0.75rem 0.5rem ! important; }
  .pad-block1of3:nth-child(2n+1), .pad-block1of4:nth-child(2n+1) { padding-right: 0.75rem; }
  .pad-block1of3:nth-child(2n), .pad-block1of4:nth-child(2n) { padding-left: 0.75rem; }
}
@media (min-width: 45em) {
  .space-section { margin-bottom: 3rem ! important; }
  .pad-block1of4:nth-child(2n+1) { padding-right: 0px; }
  .pad-block1of4:nth-child(2n) { padding-left: 0px; }
  .pad-block1of2:nth-child(2n+1), .pad-block1of4:nth-child(3n+1) { padding-right: 1rem; }
  .pad-block1of4:nth-child(3n+2) { padding-left: 0.5rem; padding-right: 0.5rem; }
  .pad-block1of2:nth-child(2n), .pad-block1of4:nth-child(3n+3) { padding-left: 1rem; }
}
@media (min-width: 60em) {
  .space-opener { margin-bottom: 3rem ! important; margin-top: 1rem ! important; }
  .space-section { margin-bottom: 3rem ! important; }
  .pad-page { padding: 0.75rem ! important; }
  .pad-block1of3:nth-child(2n+1) { padding-right: 0px; }
  .pad-block1of3:nth-child(2n) { padding-left: 0px; }
  .pad-block1of2:nth-child(2n+1), .pad-block1of3:nth-child(3n+1) { padding-right: 1.5rem; }
  .pad-block1of3:nth-child(3n+2) { padding-left: 0.75rem; padding-right: 0.75rem; }
  .pad-block1of2:nth-child(2n), .pad-block1of3:nth-child(3n+3) { padding-left: 1.5rem; }
  .pad-block1of4:nth-child(3n+1), .pad-block1of4:nth-child(3n+2), .pad-block1of4:nth-child(3n+3) { padding-right: 0px; padding-left: 0px; }
  .pad-block1of4:nth-child(4n+1) { padding-right: 1rem; }
  .pad-block1of4:nth-child(4n+2) { padding-left: 0.33rem; padding-right: 0.67rem; }
  .pad-block1of4:nth-child(4n+3) { padding-left: 0.67rem; padding-right: 0.33rem; }
  .pad-block1of4:nth-child(4n+4) { padding-left: 1rem; }
}
@media (min-width: 75em) {
  .space-section { margin-bottom: 4rem ! important; }
}
.pad-six, .pad-six-left { padding-left: 6rem ! important; }
.pad-six, .pad-six-right { padding-right: 6rem ! important; }
.pad-four, .pad-four-left { padding-left: 4rem ! important; }
.pad-four, .pad-four-right { padding-right: 4rem ! important; }
.pad-three, .pad-three-left { padding-left: 3rem ! important; }
.pad-three, .pad-three-right { padding-right: 3rem ! important; }
.pad-two, .pad-two-left { padding-left: 2rem ! important; }
.pad-two, .pad-two-right { padding-right: 2rem ! important; }
.pad-line, .pad-line-left { padding-left: 1.5rem ! important; }
.pad-line, .pad-line-right { padding-right: 1.5rem ! important; }
.pad-one, .pad-one-left { padding-left: 1rem ! important; }
.pad-one, .pad-one-right { padding-right: 1rem ! important; }
.pad-3q, .pad-3q-left { padding-left: 0.75rem ! important; }
.pad-3q, .pad-3q-right { padding-right: 0.75rem ! important; }
.pad-half, .pad-half-left { padding-left: 0.5rem ! important; }
.pad-half, .pad-half-right { padding-right: 0.5rem ! important; }
.pad-1q, .pad-1q-left { padding-left: 0.25rem ! important; }
.pad-1q, .pad-1q-right { padding-right: 0.25rem ! important; }
.nopad, .nopad-left { padding-left: 0px ! important; }
.nopad, .nopad-right { padding-right: 0px ! important; }
.push-four, .push-four-top { padding-top: 4rem ! important; }
.push-four, .push-four-bottom { padding-bottom: 4rem ! important; }
.push-three, .push-three-top { padding-top: 3rem ! important; }
.push-three, .push-three-bottom { padding-bottom: 3rem ! important; }
.push-two, .push-two-top { padding-top: 2rem ! important; }
.push-two, .push-two-bottom { padding-bottom: 2rem ! important; }
.push-line, .push-line-top { padding-top: 1.5rem ! important; }
.push-line, .push-line-bottom { padding-bottom: 1.5rem ! important; }
.push-one, .push-one-top { padding-top: 1rem ! important; }
.push-one, .push-one-bottom { padding-bottom: 1rem ! important; }
.push-3q, .push-3q-top { padding-top: 0.75rem ! important; }
.push-3q, .push-3q-bottom { padding-bottom: 0.75rem ! important; }
.push-half, .push-half-top { padding-top: 0.5rem ! important; }
.push-half, .push-half-bottom { padding-bottom: 0.5rem ! important; }
.push-1q, .push-1q-top { padding-top: 0.25rem ! important; }
.push-1q, .push-1q-bottom { padding-bottom: 0.25rem ! important; }
.push-1e, .push-1e-top { padding-top: 0.125rem ! important; }
.push-1e, .push-1e-bottom { padding-bottom: 0.125rem ! important; }
.nopush, .nopush-top { padding-top: 0px ! important; }
.nopush, .nopush-bottom { padding-bottom: 0px ! important; }
.gap-three, .gap-three-left { margin-left: 3rem ! important; }
.gap-three, .gap-three-right { margin-right: 3rem ! important; }
.gap-two, .gap-two-left { margin-left: 2rem ! important; }
.gap-two, .gap-two-right { margin-right: 2rem ! important; }
.gap-line, .gap-line-left { margin-left: 1.5rem ! important; }
.gap-line, .gap-line-right { margin-right: 1.5rem ! important; }
.gap-one, .gap-one-left { margin-left: 1rem ! important; }
.gap-one, .gap-one-right { margin-right: 1rem ! important; }
.gap-3q, .gap-3q-left { margin-left: 0.75rem ! important; }
.gap-3q, .gap-3q-right { margin-right: 0.75rem ! important; }
.gap-half, .gap-half-left { margin-left: 0.5rem ! important; }
.gap-half, .gap-half-right { margin-right: 0.5rem ! important; }
.gap-1q, .gap-1q-left { margin-left: 0.25rem ! important; }
.gap-1q, .gap-1q-right { margin-right: 0.25rem ! important; }
.nogap, .nogap-left { margin-left: 0px ! important; }
.nogap, .nogap-right { margin-right: 0px ! important; }
.ngap-six, .ngap-six-left { margin-left: -6rem ! important; }
.ngap-six, .ngap-six-right { margin-right: -6rem ! important; }
.ngap-four, .ngap-four-left { margin-left: -4rem ! important; }
.ngap-four, .ngap-four-right { margin-right: -4rem ! important; }
.ngap-three, .ngap-three-left { margin-left: -3rem ! important; }
.ngap-three, .ngap-three-right { margin-right: -3rem ! important; }
.ngap-two, .ngap-two-left { margin-left: -2rem ! important; }
.ngap-two, .ngap-two-right { margin-right: -2rem ! important; }
.ngap-line, .ngap-line-left { margin-left: -1.5rem ! important; }
.ngap-line, .ngap-line-right { margin-right: -1.5rem ! important; }
.ngap-one, .ngap-one-left { margin-left: -1rem ! important; }
.ngap-one, .ngap-one-right { margin-right: -1rem ! important; }
.ngap-3q, .ngap-3q-left { margin-left: -0.75rem ! important; }
.ngap-3q, .ngap-3q-right { margin-right: -0.75rem ! important; }
.ngap-half, .ngap-half-left { margin-left: -0.5rem ! important; }
.ngap-half, .ngap-half-right { margin-right: -0.5rem ! important; }
.ngap-1q, .ngap-1q-left { margin-left: -0.25rem ! important; }
.ngap-1q, .ngap-1q-right { margin-right: -0.25rem ! important; }
body { font-family: Source Sans Pro,Avenir,Futura,Trebuchet MS,sans-serif; font-weight: 400; }
.button, button, dt, h1, h2, h3, h4, input[type="button"], input[type="submit"], label, th { font-family: Source Sans Pro,Avenir,Futura,Trebuchet MS,sans-serif; line-height: 1.3; font-weight: 700; }
.body-type { font-family: Source Sans Pro,Avenir,Futura,Trebuchet MS,sans-serif ! important; font-weight: 400 ! important; }
.title-type { font-family: Source Sans Pro,Avenir,Futura,Trebuchet MS,sans-serif ! important; font-weight: 700 ! important; }
.monospace, code, pre { font-family: Menlo,Monaco,Consolas,Bitstream Vera Sans Mono,monospace; }
html { font-size: 16px; line-height: 1.6; }
.title-huge { font-size: 1.3rem; line-height: 1.3; }
.title-large { font-size: 1.15rem; line-height: 1.3; }
.title-regular { font-size: 1rem; line-height: 1.3; }
.title-small { font-size: 0.85rem; line-height: 1.3; }
.title-tiny { font-size: 0.8rem; line-height: 1.25; }
.prose-huge { font-size: 1.25rem; line-height: 1.6; }
.prose-large, .prose-regular { font-size: 1rem; line-height: 1.6; }
.prose-small { font-size: 0.85rem; line-height: 1.6; }
.prose-tiny { font-size: 0.8rem; line-height: 1.6; }
@media (min-width: 30em) {
  .title-huge { font-size: 1.5rem; line-height: 1.3; }
  .title-tiny { font-size: 0.75rem; line-height: 1.3; }
  .prose-huge { font-size: 1.3rem; line-height: 1.6; }
  .prose-large { font-size: 1.15rem; line-height: 1.6; }
  .prose-tiny { font-size: 0.75rem; }
}
@media (min-width: 45em) {
  html { font-size: 18px; line-height: 1.6; }
  .title-tiny { line-height: 1.3; }
}
@media (min-width: 60em) {
  html { font-size: 20px; line-height: 1.6; }
  .title-huge { font-size: 1.75rem; line-height: 1.3; }
  .title-tiny { font-size: 0.7rem; }
  .prose-huge { font-size: 1.5rem; line-height: 1.6; }
  .prose-tiny { font-size: 0.7rem; }
}
@media (min-width: 75em) {
  html { font-size: 21px; line-height: 1.5; }
}
.centered { text-align: center; }
.right-aligned { text-align: right; }
.left-aligned { text-align: left; }
@media (min-width: 30em) {
  .centered-sm { text-align: center; }
}
@media (min-width: 45em) {
  .centered-md { text-align: center; }
  .left-aligned-md { text-align: left; }
}
.calm, .slightbold, .thin { font-weight: 400 ! important; }
.semibold { font-weight: 600 ! important; }
.bold { font-weight: 700 ! important; }
.italic { font-style: italic; }
.no-italic { font-style: normal; }
.all-caps { text-transform: uppercase; }
.all-lower { text-transform: lowercase; }
.reset-caps { text-transform: none; }
.strike { text-decoration: line-through; }
.no-underline { text-decoration: none; }
.underline { text-decoration: underline; }
.letter-spaced { letter-spacing: 0.15em; }
.quo { margin-left: -0.24em; }
.dquo { margin-left: -0.44em; }
.tquo { margin-left: -0.68em; }
.amp { font-family: "Hoefler Text",Baskerville,Palatino,"Book Antiqua",Constantia,"URW Palladio L"; font-style: italic; font-weight: 400; font-size: 1.2em; line-height: 0.5em; }
.prose a:not(.no-underline) { text-decoration: underline; }
.prose h1 { margin-top: 0px; }
.prose h2 { font-size: 1.25em; text-transform: uppercase; }
.prose dl, .prose ol, .prose p, .prose ul { margin-top: 0px; }
.prose h4 { margin-bottom: 0.25em; }
.prose ol, .prose ul { padding-left: 1.5em; }
.prose li { margin-bottom: 0.5em; }
.prose li li { margin-left: 0.5em; }
.prose ol { list-style-type: decimal; }
.prose ul { list-style-type: disc; }
.prose ol ol, .prose ol ul, .prose ul ol, .prose ul ul { margin-bottom: 1em; }
.prose ol ol:last-child, .prose ol ul:last-child, .prose ul ol:last-child, .prose ul ul:last-child { margin-bottom: 0px; }
.prose-longform blockquote { margin-top: 0px ! important; background-color: rgb(88, 83, 74); color: rgb(245, 241, 227); padding: 1.5rem ! important; }
.prose-longform blockquote > p:last-child { margin-bottom: 0px; }
.prose-longform h3 { color: rgb(57, 146, 96) ! important; }
.prose-pullquote { color: rgb(88, 83, 74) ! important; }
.prose-pullquote strong { color: rgb(218, 89, 70) ! important; }
a, a:visited { text-decoration: none; color: inherit; transition: all 0.15s ease-out 0s; }
a:hover:not(.silent-hover) { text-decoration: underline; color: rgb(218, 89, 70) ! important; }
a.colour-hover:hover { text-decoration: none; }
.underline-hover a:hover, a.underline-hover:hover { color: inherit ! important; }
a.light-hover:hover { text-decoration: none; color: rgb(0, 0, 0) ! important; background-color: rgba(0, 0, 0, 0.1); }
hr { display: block; clear: both; height: 0px; margin: 0px; padding: 0px; border-width: 0.15em medium medium; border-style: solid none none; border-color: -moz-use-text-color; -moz-border-top-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz-border-left-colors: none; border-image: none; }
.invisible-hover { display: none; }
.invisible-hover:focus, .invisible-hover:hover, a:focus .invisible-hover, a:hover .invisible-hover { display: block; }
.invisible-inline-hover { display: none; }
.invisible-inline-hover:focus, .invisible-inline-hover:hover, a:focus .invisible-inline-hover, a:hover .invisible-inline-hover { display: inline; }
.black { color: rgb(0, 0, 0) ! important; }
.white { color: rgb(255, 255, 255) ! important; }
.dark { color: rgb(54, 54, 54) ! important; }
.gray { color: rgb(88, 83, 74) ! important; }
.pink { color: rgb(223, 110, 151) ! important; }
.red { color: rgb(218, 89, 70) ! important; }
.green { color: rgb(57, 146, 96) ! important; }
.blue { color: rgb(56, 80, 145) ! important; }
.ub-blue { color: rgb(0, 174, 239) ! important; }
.ub-red { color: rgb(240, 78, 35) ! important; }
.ub-yellow { color: rgb(253, 184, 19) ! important; }
.ub-green { color: rgb(77, 184, 72) ! important; }
.s-white { fill: rgb(255, 255, 255); }
.s-black { fill: rgb(0, 0, 0); }
.s-dark { fill: rgb(54, 54, 54); }
.s-gray { fill: rgb(88, 83, 74); }
.s-pink { fill: rgb(223, 110, 151); }
.s-red { fill: rgb(218, 89, 70); }
.s-green { fill: rgb(57, 146, 96); }
.s-blue { fill: rgb(56, 80, 145); }
.light-dark { color: rgb(223, 226, 218) ! important; }
.light-gray { color: rgb(245, 241, 227) ! important; }
.light-pink { color: rgb(243, 208, 208) ! important; }
.light-red { color: rgb(242, 196, 167) ! important; }
.light-green { color: rgb(214, 229, 219) ! important; }
.light-blue { color: rgb(211, 223, 222) ! important; }
.s-light-dark { fill: rgb(223, 226, 218); }
.s-light-gray { fill: rgb(245, 241, 227); }
.s-light-pink { fill: rgb(243, 208, 208); }
.s-light-red { fill: rgb(242, 196, 167); }
.s-light-green { fill: rgb(214, 229, 219); }
.s-light-blue { fill: rgb(211, 223, 222); }
.off-white { color: rgba(255, 255, 255, 0.9) ! important; }
.hud-black { color: rgba(0, 0, 0, 0.55) ! important; }
.hud-white { color: rgba(255, 255, 255, 0.5) ! important; }
.light-hud-black { color: rgba(0, 0, 0, 0.25) ! important; }
.light-hud-white { color: rgba(255, 255, 255, 0.25) ! important; }
.fill-white, body { background-color: rgb(255, 255, 255); color: rgb(54, 54, 54); }
.fill-black { background-color: rgb(0, 0, 0); color: rgb(238, 238, 238); }
.fill-dark { background-color: rgb(54, 54, 54); color: rgb(223, 226, 218); }
.fill-gray { background-color: rgb(88, 83, 74); color: rgb(245, 241, 227); }
.fill-pink { background-color: rgb(223, 110, 151); color: rgb(243, 208, 208); }
.fill-red { background-color: rgb(218, 89, 70); color: rgb(242, 196, 167); }
.fill-green { background-color: rgb(57, 146, 96); color: rgb(214, 229, 219); }
.fill-blue { background-color: rgb(56, 80, 145); color: rgb(211, 223, 222); }
.fill-ub-blue { background-color: rgb(0, 174, 239); color: rgb(173, 233, 255); }
.fill-ub-red { background-color: rgb(240, 78, 35); color: rgb(252, 220, 212); }
.fill-ub-yellow { background-color: rgb(253, 184, 19); color: rgb(255, 240, 206); }
.fill-ub-green { background-color: rgb(77, 184, 72); color: rgb(209, 237, 208); }
.fill-light-dark { background-color: rgb(223, 226, 218); color: rgb(54, 54, 54); }
.fill-light-gray { background-color: rgb(245, 241, 227); color: rgb(88, 83, 74); }
.fill-light-pink { background-color: rgb(243, 208, 208); color: rgb(223, 110, 151); }
.fill-light-red { background-color: rgb(242, 196, 167); color: rgb(218, 89, 70); }
.fill-light-green { background-color: rgb(214, 229, 219); color: rgb(57, 146, 96); }
.fill-light-blue { background-color: rgb(211, 223, 222); color: rgb(56, 80, 145); }
.fill-dark .fill-invert { background-color: rgb(223, 226, 218); color: rgb(54, 54, 54); }
.fill-gray .fill-invert { background-color: rgb(245, 241, 227); color: rgb(88, 83, 74); }
.fill-pink .fill-invert { background-color: rgb(243, 208, 208); color: rgb(223, 110, 151); }
.fill-red .fill-invert { background-color: rgb(242, 196, 167); color: rgb(218, 89, 70); }
.fill-green .fill-invert { background-color: rgb(214, 229, 219); color: rgb(57, 146, 96); }
.fill-blue .fill-invert { background-color: rgb(211, 223, 222); color: rgb(56, 80, 145); }
.fill-white .fill-invert { background-color: rgb(0, 0, 0); color: rgb(238, 238, 238); }
.fill-black .fill-invert { background-color: rgb(255, 255, 255); color: rgb(54, 54, 54); }
.fill-light-dark .fill-invert { background-color: rgb(54, 54, 54); color: rgb(223, 226, 218); }
.fill-light-gray .fill-invert { background-color: rgb(88, 83, 74); color: rgb(245, 241, 227); }
.fill-light-pink .fill-invert { background-color: rgb(223, 110, 151); color: rgb(243, 208, 208); }
.fill-light-red .fill-invert { background-color: rgb(218, 89, 70); color: rgb(242, 196, 167); }
.fill-light-green .fill-invert { background-color: rgb(57, 146, 96); color: rgb(214, 229, 219); }
.fill-light-blue .fill-invert { background-color: rgb(56, 80, 145); color: rgb(211, 223, 222); }
.fill-hud-white { background-color: rgba(255, 255, 255, 0.5); color: rgb(54, 54, 54); }
.fill-hud-black { background-color: rgba(0, 0, 0, 0.35); color: rgb(223, 226, 218); }
.fade-from-white { background: transparent linear-gradient(to bottom, rgb(255, 255, 255) 65%, rgba(255, 255, 255, 0)) repeat scroll 0% 0%; color: rgb(54, 54, 54); }
.fade-to-black { background: transparent linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.75)) repeat scroll 0% 0%; color: rgb(223, 226, 218); }
.nofill { background-color: transparent; color: inherit; }
.grayscale { filter: grayscale(100%) contrast(110%); }
.grayscale:hover, a:hover .grayscale { filter: none; }
.lifted { box-shadow: 0px 0px 0.15rem rgba(0, 0, 0, 0.5); }
.lifted-text { text-shadow: 0px 0px 0.15rem rgba(0, 0, 0, 0.5); }
.lifted-image { filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.5)); }
.rounded { border-radius: 100%; }
.lined { border: 0.15em solid; }
.line-top { border-top: 0.15em solid; }
.line-bottom { border-bottom: 0.15em solid; }
.line-left { border-left: 0.15em solid; }
.line-right { border-right: 0.15em solid; }
.noline { border: medium none ! important; }
.transition { transition: all 0.15s ease-out 0s; }
body.show-grid { position: relative; }
body.show-grid #page::after { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: transparent url(eaeeb720489d5ba894ec07bfa98ebb023b9a41b1.png)  repeat scroll center top / 2.1rem auto; }
.primary-nav > ul { text-align: center; margin-top: 0px ! important; margin-bottom: 0px ! important; }
.primary-nav > ul > li { display: inline-block; }
@media (min-width: 30em) and (max-width: 44.99em) {
  .primary-nav > ul > li { float: left; width: 20%; }
}
.primary-nav > ul > li > a { padding: 0.75rem 0.5rem ! important; display: block; text-transform: uppercase; font-weight: 700 ! important; }
.primary-nav .active-primary-nav { background-color: rgb(255, 255, 255); color: rgb(54, 54, 54); }
@media (max-width: 44.99em) {
  .primary-nav { padding-left: 0px ! important; padding-right: 0px ! important; }
}
@media (min-width: 45em) {
  .primary-nav { display: block; position: absolute; right: 0px; color: rgb(54, 54, 54) ! important; }
  .primary-nav.white { color: rgb(255, 255, 255) ! important; }
  .primary-nav > ul { text-align: right; margin-right: -1rem ! important; margin-top: 2rem ! important; padding-top: 0.125rem ! important; }
  .primary-nav > ul > li > a { margin-top: 0.25rem ! important; padding: 0.5rem 1rem ! important; }
  .primary-nav .active-primary-nav { background-color: transparent; color: inherit; border-bottom: 0.15em solid; }
}
@media (max-width: 29.99em) {
  .flexbox .primary-nav > ul { display: flex; }
}
.logo { display: block; width: 6rem; height: 6rem; }
.logo > .ir { width: 100%; height: 100%; background: transparent url(e9f314b343a6e42c829c9d10579e0b96a85d98c5.svg)  no-repeat scroll center center / contain ; }
.logo.logo-invert > .ir { background-image: url(36572af775f3611d5f993bd74dc2df3aaf8a1bdd.svg) ; }
.logo:hover { background: transparent none repeat scroll 0px 0px; }
.header-navline { padding-top: 0.5rem ! important; }
.header-navline .logo { float: left; margin: 0.3rem 0px 0.3rem -0.75rem; width: 8.75rem; height: 2.5rem; }
.header-navline .logo .ir { margin-top: 0px ! important; background-image: url(331ed6f422da88d765b1a1fdf0dcead4c1db3677.svg) ; background-size: 100% auto; }
.header-navline .menu-toggle { float: right; margin-top: 1rem; }
.header-navline .header-nav ~ hr { margin-left: auto; margin-right: 0px; width: 2.5rem; }
.header-navline .active-header-nav { border-bottom: 0.15em solid; }
.header-navline.header-white .logo .ir { background-image: url(519f21325f290655fda97e61e9f787456b376c80.svg) ; }
.header-navline.header-white .header-nav, .header-navline.header-white .menu-toggle, .header-navline.header-white hr { color: rgb(255, 255, 255) ! important; }
@media (min-width: 30em) {
  .header-navline .logo { margin: 0.5rem 0px 0px -0.75rem; width: 6rem; height: 6rem; }
  .header-navline .logo .ir { background-image: url(e9f314b343a6e42c829c9d10579e0b96a85d98c5.svg) ; background-size: contain; }
  .header-navline .menu-toggle { padding-top: 0.25rem ! important; padding-bottom: 0.25rem ! important; }
  .header-navline .header-nav ~ hr { float: right; width: 2.25rem; margin-top: -3rem; }
  .header-navline.header-white .logo .ir { background-image: url(36572af775f3611d5f993bd74dc2df3aaf8a1bdd.svg) ; }
}
@media (min-width: 45em) {
  .header-navline { padding-top: 1rem ! important; }
}
@media (min-width: 45em) {
  .header-navline { padding-top: 1.5rem ! important; }
}
@media (min-width: 30em) {
  .header-caption-container { position: absolute; top: 1.1rem; left: 8rem; padding-top: 0.5rem ! important; width: 4.5rem; }
}
@media (min-width: 45em) {
  .header-caption-container { top: 1rem; left: 8.5rem; padding-top: 1.5rem ! important; }
}
@media (min-width: 60em) {
  .header-caption-container { top: 1.2rem; left: 9rem; }
}
@media (min-width: 75em) {
  .header-caption-container { left: 10rem; }
}
@media (min-width: 85em) {
  .header-caption-container { left: 12rem; }
}
.header-caption { clear: both; }
.tab-bar { text-align: center; }
@media (max-width: 29.99em) {
  .flexbox .tab-bar { display: flex; margin-left: -1px; margin-right: -1px; }
}
.tab-bar > li { display: inline-block; }
@media (max-width: 29.99em) {
  .tab-bar > li { font-weight: 600 ! important; }
  .tab-bar > li:nth-child(1) { flex: 2 1 0%; }
  .tab-bar > li:nth-child(2), .tab-bar > li:nth-child(3), .tab-bar > li:nth-child(4) { flex: 4 1 0%; }
  .tab-bar > li:nth-child(5) { flex: 3 1 0%; }
}
@media (min-width: 30em) {
  .tab-bar > li + li { margin-left: 2px; }
}
.tab-bar > li > a { display: block; padding-top: 0.25rem ! important; padding-bottom: 0.25rem ! important; text-align: center; }
@media (min-width: 30em) {
  .tab-bar > li > a { padding: 0.5rem 0.75rem ! important; }
}
@media (min-width: 45em) {
  .tab-bar > li > a { padding-left: 1rem ! important; padding-right: 1rem ! important; }
}
.meta-list { padding-left: 6rem ! important; }
@media (min-width: 45em) {
  .meta-list { padding-left: 0px ! important; padding-right: 0px ! important; }
}
.meta-list .meta-title { float: left; padding-right: 1rem ! important; width: 6rem ! important; margin-left: -6rem ! important; }
@media (min-width: 45em) {
  .meta-list .meta-title { text-align: right; }
}
.newsletter-form input[type="submit"]:focus, .newsletter-form input[type="submit"]:hover { background: rgba(255, 255, 255, 0.5) none repeat scroll 0% 0%; color: rgb(0, 0, 0); }
#newsletter-form-email { padding: 0.25rem 0.5rem 0.25rem 0.25rem ! important; margin-top: -0.25rem ! important; margin-bottom: 0.25rem ! important; margin-right: 0.25rem ! important; background-color: transparent; color: inherit; transition: all 0.15s ease-out 0s; border-width: medium medium 1px; border-style: none none dashed; border-color: -moz-use-text-color -moz-use-text-color rgba(255, 255, 255, 0.25); -moz-border-top-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz-border-left-colors: none; border-image: none; }
#newsletter-form-email:-moz-placeholder { color: rgba(255, 255, 255, 0.6); }
#newsletter-form-email::-moz-placeholder { color: rgba(255, 255, 255, 0.6); }
#newsletter-form-email:hover { background: rgba(255, 255, 255, 0.07) none repeat scroll 0% 0%; border-bottom-color: transparent; }
#newsletter-form-email:focus { outline: 0px none; background: rgba(255, 255, 255, 0.15) none repeat scroll 0% 0%; border-bottom-color: transparent; }
@media (min-width: 60em) {
  .flushbottom-lg { position: absolute; bottom: 0px; }
}
@media (max-width: 29.99em) {
  .bleed-container-xs { margin-left: -1.25rem; margin-right: -1.25rem; }
}
.grid-projects-container { transition: height 0.2s ease 0s; }
.grid-projects-panel { position: relative; margin-bottom: 2rem ! important; }
.grid-projects-panel > a { display: block; overflow: auto; outline: 0px solid rgb(255, 255, 255); transition: all 0.2s ease 0s; }
.grid-projects-panel > a:hover { text-decoration: none; background-color: rgb(223, 226, 218); color: rgb(54, 54, 54); margin-top: -0.5rem ! important; margin-bottom: -0.5rem ! important; padding-top: 0.5rem ! important; padding-bottom: 0.5rem ! important; margin-left: -0.5rem ! important; padding-left: 0.5rem ! important; }
.grid-projects-panel a:hover::after { content: " "; position: absolute; height: auto; background-color: rgb(255, 255, 255); color: rgb(54, 54, 54); width: 0.25rem; top: -0.5rem; bottom: -0.5rem; right: 0px; left: auto; z-index: 100; }
.grid-projects-banner { margin: 0px ! important; float: left; position: relative; height: 0px; width: 45%; padding-bottom: 45%; background-size: cover; background-position: center center; background-repeat: no-repeat; }
.grid-projects-banner > img { display: none ! important; visibility: hidden; }
@media (min-width: 30em) {
  .grid-projects-banner .grid-projects-banner { width: 40%; padding-bottom: 40%; }
}
.grid-projects-info { float: left; width: 55%; padding: 0px 1rem; font-size: 0.6rem; }
.grid-projects-info > h2 { font-size: 1.6em; line-height: 1.4; }
@media (min-width: 30em) {
  .grid-projects-info { font-size: 0.5rem; padding: 0px 0.75rem; }
}
@media (min-width: 45em) {
  .grid-projects-info { font-size: 0.55rem; }
}
@media (min-width: 60em) {
  .grid-projects-info { font-size: 0.425rem; }
}
@media (min-width: 75em) {
  .grid-projects-info { font-size: 0.45rem; }
}
@media (max-width: 29.99em) {
  .grid-projects-panel { float: left; width: calc(100% / 1); }
  .grid-projects-panel:nth-child(n+1) { clear: left; }
}
@media (min-width: 30em) and (max-width: 59.99em) {
  .grid-projects-panel { float: left; width: calc(100% / 2); }
  .grid-projects-panel:nth-child(2n+1) { clear: left; }
}
@media (min-width: 60em) and (max-width: 74.99em) {
  .grid-projects-panel { float: left; width: calc(100% / 3); }
  .grid-projects-panel:nth-child(3n+1) { clear: left; }
}
@media (min-width: 75em) {
  .grid-projects-panel { float: left; width: calc(100% / 4); }
  .grid-projects-panel:nth-child(4n+1) { clear: left; }
}
@media (max-width: 29.99em) {
  .filter-tags-container li.client-category-col { margin-bottom: 1rem ! important; }
}
.filter-tags-container a.filter-item { display: inline-block; padding: 0.25rem ! important; margin-top: 1px; margin-bottom: 0.15rem; }
.filter-tags-container a.filter-item.fill-red:hover { color: inherit ! important; }
.empty-tab-panel { width: 1px; height: 1px; margin-top: -1px; margin-bottom: -1px; background: red none repeat scroll 0% 0%; z-index: -999; visibility: hidden; }
.case-study-banner { background-size: cover; background-position: center center; padding-bottom: 150%; }
.case-study-banner > img { display: none ! important; visibility: hidden; }
.case-study-banner.align-center { background-position: center center; }
.case-study-banner.align-left { background-position: left center; }
.case-study-banner.align-right { background-position: right center; }
@media (min-width: 30em) {
  .case-study-banner { padding-bottom: 100% ! important; }
}
@media (min-width: 45em) {
  .case-study-banner { padding-bottom: 85% ! important; }
}
@media (min-width: 60em) {
  .case-study-banner { padding-bottom: 56.25% ! important; }
}
.case-study-title { position: absolute; bottom: 0px; color: rgb(255, 255, 255) ! important; z-index: 20; max-width: 75%; text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); }
.case-study-title.black { color: rgb(0, 0, 0) ! important; text-shadow: 0px 0px 5px rgba(255, 255, 255, 0.25); }
@media (min-width: 60em) {
  .case-study-title { max-width: 62.5%; }
}
.timeline { position: relative; margin-top: 7.5rem; }
.timeline::before { content: ""; position: absolute; top: 0px; left: 18px; height: 100%; width: 2px; background-color: rgb(56, 80, 145); color: rgb(211, 223, 222); }
.timeline-block { margin-bottom: 3rem ! important; margin-left: 3rem; max-width: 20.5rem; }
.timeline-node { position: absolute; background-color: rgb(255, 255, 255); color: rgb(56, 80, 145) ! important; border-bottom: 0.15em solid; padding-top: 0.5rem ! important; padding-bottom: 0.5rem ! important; font-size: 0.8rem; line-height: 1.25; left: 0px; width: 8.5rem; margin-top: -1.9rem; }
@media (min-width: 30em) {
  .timeline { margin-top: 8rem; }
  .timeline::before { left: 50%; margin-left: -1px; }
  .timeline-block { float: left; clear: left; margin-left: 0px ! important; margin-right: 0px ! important; padding-right: 3rem ! important; margin-bottom: 4rem ! important; width: 50%; max-width: 20.5rem; }
  .timeline-node { text-align: right; left: auto; right: 50%; width: 8.5rem; margin-right: -1.3rem; margin-top: -1.9rem; font-size: 0.7rem; }
  .timeline-block:nth-child(2n) { float: right; clear: right; padding-right: 0px ! important; padding-left: 3rem ! important; }
  .timeline-block:nth-child(2n) .timeline-node { left: 50%; margin-left: -1.3rem; margin-right: 0px; text-align: left; }
  .timeline-block:nth-child(2) { margin-top: 8rem; }
  .timeline-block:last-child { margin-bottom: 0px ! important; padding-bottom: 0px ! important; }
}
@media (min-width: 45em) {
  .timeline { margin-top: 8.5rem; }
  .cssanimations .timeline-content.is-hidden { visibility: hidden; transform: translateZ(0px); backface-visibility: hidden; }
  .cssanimations .timeline-content.bounce-in { visibility: visible; animation: 0.6s ease 0s normal none 1 running timeline-slide; }
  .cssanimations .timeline-block:nth-child(2n) .timeline-content.bounce-in { animation: 0.6s ease 0s normal none 1 running timeline-slide-inverse; }
  @keyframes timeline-slide {
0% { opacity: 0; transform: translateX(100px); }
60% { opacity: 1; transform: translateX(-20px); }
100% { transform: translateX(0px); }
}
  @keyframes timeline-slide-inverse {
0% { opacity: 0; transform: translateX(-100px); }
60% { opacity: 1; transform: translateX(20px); }
100% { transform: translateX(0px); }
}
}
.timeline-graph-container, .timeline-nav-trigger { position: absolute; top: 8.75rem; }
.timeline-graph-container { overflow: auto; left: 0.1rem; right: 0px; padding-right: 1.25rem; padding-left: 1.25rem; z-index: 20; background-color: rgb(255, 255, 255); color: rgb(54, 54, 54); padding-top: 1rem ! important; padding-bottom: 2rem ! important; }
.timeline-graph-container.fixed { position: fixed; top: 0px; background: transparent linear-gradient(to bottom, rgb(255, 255, 255) 65%, rgba(255, 255, 255, 0)) repeat scroll 0% 0%; color: rgb(54, 54, 54); }
.timeline-graph-overflow { min-width: 45rem; padding-right: 1rem ! important; padding-bottom: 1.5rem ! important; margin-bottom: -0.5rem ! important; }
.timeline-graph { position: relative; padding-top: 1.5rem ! important; margin-left: 1rem ! important; margin-right: 1rem ! important; }
.timeline-graph-label { position: absolute; z-index: 10; top: 0px; font-weight: 400 ! important; width: 2rem ! important; text-align: center; margin-left: -1rem ! important; }
.timeline-graph-label::after { content: ""; position: absolute; background-color: rgb(211, 223, 222); color: rgb(56, 80, 145); width: 2px; height: 0.75rem; left: 50%; bottom: 0px; margin-bottom: -1rem; }
.timeline-graph-point { position: absolute; bottom: 0px; z-index: 20; margin-left: -0.1rem; margin-bottom: -0.13rem; }
.timeline-graph-link { width: 0.35rem; height: 0.35rem; padding: 0px ! important; border-radius: 100%; background-color: rgb(56, 80, 145); color: rgb(211, 223, 222); display: block; overflow: hidden; transition: all 0.15s ease-out 0s; }
.timeline-graph-link:hover .timeline-graph-tooltip { display: block; }
.timeline-graph-tooltip { display: none; position: absolute; z-index: 20; padding: 0.25rem 0.5rem ! important; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; left: 0px; top: 1rem; max-width: 10rem; font-size: 0.7rem; color: rgb(255, 255, 255) ! important; border-radius: 0.2rem; background-color: rgba(0, 0, 0, 0.75); transform: translateX(-50%); }
@media (min-width: 30em) {
  .timeline-graph-container, .timeline-nav-trigger { top: 12.4rem; }
}
@media (min-width: 45em) {
  .timeline-graph-container, .timeline-nav-trigger { top: 14rem; }
  .timeline-graph-container { overflow: visible; left: 0px; }
  .timeline-graph-overflow { min-width: 100%; padding-right: 0px ! important; padding-bottom: 0px ! important; margin-bottom: 0px ! important; }
}
@media print {
  * { background: transparent none repeat scroll 0px 0px ! important; color: rgb(0, 0, 0) ! important; text-shadow: none ! important; filter: none ! important; }
  a, a:visited { text-decoration: underline; }
  a[href]::after { content: " (" attr(href) ")"; }
  abbr[title]::after { content: " (" attr(title) ")"; }
  .ir a::after, a[href^="javascript:"]::after, a[href^="#"]::after { content: ""; }
  blockquote, pre { border: 1px solid rgb(153, 153, 153); page-break-inside: avoid; }
  thead { display: table-header-group; }
  img, tr { page-break-inside: avoid; }
  img { max-width: 100% ! important; }
  @page { margin: 0.5cm; }
  h2, h3, p {  }
  h2, h3 { page-break-after: avoid; }
}
