@charset "UTF-8";
/* Web Solutions 4.0 Compatible */

/* NAV ------------------------------ */
.slideNav{overflow: hidden;}
body>header {position: relative;}
body>header:before{bottom: 0;content: "";opacity: 0;z-index: 3;background-color: #000;display: block;position: fixed;left:100vw;top:0;width:100vw;height: 100%;-webkit-transition:left 0ms ease 200ms, opacity 200ms ease;-o-transition:left 0ms ease 200ms, opacity 200ms ease;transition:left 0ms ease 200ms, opacity 200ms ease;}
body.slideNav>header:before{left:0;opacity: .5;-webkit-transition:left 0ms ease 0ms, opacity 200ms ease;-o-transition:left 0ms ease 0ms, opacity 200ms ease;transition:left 0ms ease 0ms, opacity 200ms ease}
#navContainer{position: fixed;left: 100%;top:0;bottom:0;width: 75%;max-height: 100vh;background-color: #000066;z-index:3;-webkit-transition: left 200ms ease;-o-transition: left 200ms ease;transition: left 200ms ease;overflow:auto;-webkit-overflow-scrolling: touch;}
body.management #navContainer { top: 2rem; }
body.slideNav {overflow: hidden;}
.slideNav #navContainer{left: 25%;}
#navContainer nav{display: inline}
#navContainer ul{display: block;float: left;width: 100%;margin: 0;padding-left: 0}
#navContainer li{display:block;float: left;width: 100%; position: relative}
#navContainer a, #navContainer .menu{color:#ccc;line-height:2em;padding:0 1rem;display:block;float: left;width: 100%}

#navContainer li.open{background: rgba(255,255,255,.08);}
#navContainer li>span{color: #000;background-color:#fff;opacity: .25;border-radius: 50%;display: block;position: absolute;right: .5rem;top: .25em;line-height: 1.5em;width: 1.75rem;height: 1.75rem;}
#navContainer li>span:hover, #navContainer li.on>span{opacity: .3}

#brand {float: none;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-justify-content: center;justify-content: center;padding: 1rem 5vw;display: block;margin: 0 auto;text-align: center;}
#brand img{max-width: 90%;}

#navContainer li>span:before{content: "";display: block;width: .875rem;height: .0625rem;background-color: #000;position: absolute;left: 50%;top: 50%;-webkit-transform: translate(-50%, -50%) rotate(90deg);-ms-transform: translate(-50%, -50%) rotate(90deg);transform: translate(-50%, -50%) rotate(90deg);-webkit-transform-origin: center center;-ms-transform-origin: center center;transform-origin: center center;}
#navContainer li>span:after{content: "";display: block;width: .875rem;height: .0625rem;background-color: #000;position: absolute;left: 50%;top: 50%;-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);transform: translate(-50%, -50%);-webkit-transform-origin: center center;-ms-transform-origin: center center;transform-origin: center center;}
#navContainer li.open > span:before {-webkit-transform: translate(-50%, -50%)rotate(0deg);-ms-transform: translate(-50%, -50%)rotate(0deg);transform: translate(-50%, -50%)rotate(0deg);}
#navContainer li > span::before { -webkit-transition: -webkit-transform .2s ease; transition: -webkit-transform .2s ease; -o-transition: transform .2s ease; transition: transform .2s ease; transition: transform .2s ease, -webkit-transform .2s ease;}
#navContainer ul ul {font-size: .8em;display: none}
#navContainer ul ul a {padding-left: 2rem}
#navContainer ul li.on>a, #navContainer ul ul li.on a {background-color: #F8CB47;color: #000066;}

#navContainer a, #navContainer .menu {font-size: 1.1875rem;}
#mobilenav{background-color: #000066;float: left;width: 100%;text-align: center; display: -ms-flexbox; display: -webkit-box; display: -webkit-flex; display: flex; -ms-flex-direction: row; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; flex-direction: row; -ms-flex-wrap: nowrap; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -ms-flex-pack: center; -webkit-box-pack: center; -webkit-justify-content: center; justify-content: center; -ms-flex-line-pack: center; -webkit-align-content: center; align-content: center; -ms-flex-align: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center;}
#mobilenav a, #mobilenav span{color: #fff;font-size: 1.125em;line-height: 2;-ms-flex-order: 0;-webkit-box-ordinal-group: 1;-webkit-order: 0;order: 0;-ms-flex: 1 1 auto;-webkit-box-flex: 1;-webkit-flex: 1 1 auto;flex: 1 1 auto;-webkit-align-self: auto;-ms-flex-item-align: auto;align-self: auto;padding: 0 0 .125rem;}
#mobilenav a:hover, #mobilenav span:hover{color: #000066;background-color: #F8CB47;}
#mobilenav .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
#mobilenav .menu svg {height: .875em;width: .875em;fill: #fff;display: inline-block;margin-right: .25rem;pointer-events: none;position: relative;top: 0;}
.hamburger{height: 2em;width: 2em;display: block;position: fixed;right: 3px;top:3px;z-index:2;opacity: 0;background-color: #000066;    padding: 3px 4px 4px 4px;}
.hamburger path {fill:#fff;font-size: 1.75em;}
.hamburger svg {pointer-events: none;}
.hamburger.on{opacity: .3}

.videoContainer {width: 100%;height:0;line-height:0;position: relative;padding-top:56.25%; /* 16:9 */}
.videoContainer.ratio-4-3 {padding-top:75%; /* 4:3 full-frame */}
.videoContainer iframe {position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;border:0}

.home .wrap,body>footer>.fatFooter  {padding: 2em 5vw}
body > footer > .fatFooter + .wrap {padding:0 5vw}
.home-callout > .callout-content img{width: 100%;max-width: 100%;height: auto;float: left;}
.megamenu {display: none;}
/* MAIN ------------------------------ */
.interior main > .wrap {padding-left: 1.25rem;padding-right: 1.25rem;}
.twoCol, .threeCol, .resCol{
  -webkit-column-rule:1px outset rgba(0,0,0,.15);
  -moz-column-rule:1px outset rgba(0,0,0,.15);
  column-rule:1px outset rgba(0,0,0,.15);
  -webkit-columns: auto;
  -moz-columns: auto;
  columns: auto;
  -webkit-column-width: 13em;
  -moz-column-width: 13em;
  column-width: 13em;
}

.content ul li {padding-left: 1.5em;}
.content ul li:before{left: .5em;}
.formTable, .formTable table{width:100%;display: block}
.formTable tbody{display: block}
.formTable tr{display: block}
.formTable td{display: block;width:100%;padding: 0}
.formTable input[type="text"], .formTable input[type="password"], .formTable input[type="tel"], .formTable input[type="number"], .formTable input[type="email"], .formTable input[type="url"], .formTable textarea{margin-bottom:1em}
.formTable table td + td {padding-left: 0 !important;}
#content img {max-width: 100%;height: auto;}

.photoright.photoside, .photoleft.photoside { max-width: -webkit-calc(50% - .5em); max-width: calc(50% - .5em); }
.photoright.photoside { margin: 0 0 3em .5em; }
.photoleft.photoside { margin: 0 .5em 3em 0; }
.photoright{margin:0 0 .75em 1em;}
.photoleft{margin:0 1em .75em 0;}
.pageHeader { padding-top: 5.8rem; }

#content .mapLocations li { width: 100%; }
#sidenav { margin-top: 2.5rem; }

.hero h2 {font-size: 10vw;line-height: 1;}
.hero:before { display: none; }

/* RIBBON 2 ---------------------------- */
.home-events svg { bottom: auto; top: 4em; max-width: 95%; height: auto; }
.home-events svg path, .home-events svg ellipse {fill: #FFF;}
.home-events ul {padding-left: 0;}
.home-events ul li.animate-up { top: 0; opacity: 1; }
.home-events .container {margin-bottom: 2rem;}
.home-events .container section + section { margin-top: 3rem; }
.home-events .container ul li { max-width: 100%; }

/* RIBBON 3 ---------------------------- */
.home-callout>.callout-content {overflow: hidden; padding: 0 5vw;}

/* RIBBON 4 / WELCOME MESSAGE ---------- */
.welcome-message {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;-webkit-flex-direction: column;flex-direction: column;}
.welcome-message-image {
  width: 100%;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
  padding-top: 50%;
  background-position: center;
}
.welcome-message-text {
  width: 100%;
  padding: 5vw;
  max-width: none;
}
.welcome-message h1 {margin-bottom: 1rem;}

figure tr:nth-of-type(2n) { background: rgba(207, 212, 216, 0.3); }

/* RESPONSIVE TABLES ------------------- */
table.mobileTable {
  border: 0;
  display: block;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.mobileTable tbody tr > td:first-of-type:before {content: none;}

/*table.mobileTable th {display: none;}*/
table.mobileTable tr th {display: block;}
table.mobileTable tbody {
  display: block;
  width: 100%;
  margin: 0 auto 2rem;
}

table.mobileTable  tr {
  display: block;
  margin-bottom: 1em;
  background:#E8E8E8;
}

table.mobileTable tr:first-of-type {display: none;}
#main #content table.mobileTable tr > td:first-of-type:before {content: none;}
table.mobileTable td {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  font-weight: 500;
  border-bottom: dashed 1px #ccc;
}
table.mobileTable td:first-child{border: none;}
table.mobileTable td::before {
  display: inline-block;
  margin-right: auto;
  padding-right: .5em;
}
table.mobileTable td:last-child {border-bottom: 0;}
table.mobileTable td:nth-child(odd){background-color: #fff;}
table.mobileTable tr > td:first-of-type { background-color: #000066; color: #FFF; }
.content table.mobileTable ul {margin: 0;}
.content .mobileTable h3 {margin-left: .5rem;}
/* FOOTER ------------------------------ */
body>footer .wrap{
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -ms-flex-line-pack: stretch;
  -webkit-align-content: stretch;
  align-content: stretch;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  align-items: stretch;
}

#web-solutions-exposure {
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  order: 1;
}

body>footer .wrap nav a+span:before {content: "|"; margin: 0 0.5em}
footer h2 { text-align: center; }
.footer-navigation, .footer-contact-info { text-align: center; width: 100%; margin-bottom: 2em; }
.footer-logos { float: none; margin-top: 0; }
.footer-logos img {margin: 0 auto; max-width: 100%;}
.footer-logos a img {float: none; margin-top: 1rem;}
.footer-contact-info address {margin-bottom: 1em;}
body>footer>.wrap {text-align: center; margin-top: 3em;}

/* Google Translate Inline Widget */
body>footer .google {
	display: flex;
	justify-content: center;
	margin-top: 2em;
}

/* 550 */
@media (max-width: 550px) {

  .home-events ul li { width: 100%; margin-right: 0; }
  .home-callout h2 {font-size: 2em;}
  .welcome-message-text {font-size: .9em;}
  #content blockquote {float: none;margin: 1.5rem 0;text-align: left;width: 100%;}
  #content blockquote footer { text-align: right; }
  .highlight, .content .highlight { padding: 2rem 1.25rem; }

}

/* IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .home-events svg {display: none;}
}


/* -------------------- STYLE-M.CSS -------------------- */
