﻿body{
  overflow-x: hidden;
}
body > form{
  display:inline;
}

.container{
  min-height: 500px;
}

/*Row max-width overwrite - to match width of blog aggregator */
/*.row {
  max-width: 1440px;
}*/
/*Breadcrumb*/
#breadcrumbs li{
  background-position:0 6px;
}

/*Generic Content*/
.generic-content-rtf {
  clear: both;
  padding-top:15px;
  padding-bottom: 10px;
  font-size: .81rem;
  line-height:1.4;
}
.generic-content-rtf .column, .generic-content-rtf .columns {
    padding-left:15px;
    padding-right:15px;
}
.generic-content-rtf .column .generic-content-rtf .column, .generic-content-rtf .columns .generic-content-rtf .columns {
    padding-left:0;
    padding-right:0;
}
.generic-content-rtf h1 {
  font-size: 1.125rem;
  color: #021a32;
  font-weight: 700;
  clear: both;
  text-align: center;
  margin-bottom: 25px;
}

.generic-content-rtf h2, .generic-content-rtf h3, .generic-content-rtf h4, .generic-content-rtf h5, .generic-content-rtf h6 {
  font-size: 1.0625rem;
  color: #333333;
  margin-bottom: 15px;
  clear: both;
}
.generic-content-rtf h3 {
  font-size: 1rem;
}
.generic-content-rtf h4 {
  font-size: .9375rem;
}
.generic-content-rtf h5 {
  font-size: .875rem;
}
.generic-content-rtf h6 {
  font-size: .8125rem;
}

.generic-content-rtf p {
  font-size: .81rem;
  color: #4d4f53;
  margin-top: 0;
  margin-bottom: 25px;
}

.generic-content-rtf a {
  text-decoration:underline;
  color: #021a32;
}

.generic-content-rtf ol, .generic-content-rtf ul:not(#share):not(#breadcrumbs) {
  margin: 0;
  font-size: .81rem;
  line-height: 1.3;
  padding-left: 15px;
}
.generic-content-rtf ol:nth-of-type(1), .generic-content-rtf ul:not(#share):not(#breadcrumbs):nth-of-type(1){
  margin-top: 26px;
}
.generic-content-rtf ol li{
  line-height: 1.66;
}

.generic-content-rtf ul:not(#share):not(#breadcrumbs) {
  padding-left: 0;
  list-style: none;
}
.generic-content-rtf ul:last-child:not(#share):not(#breadcrumbs){
  margin-top: 0;
}

.generic-content-rtf ul:not(#share):not(#breadcrumbs) li {
  padding-left: 55px;
  position: relative;
  line-height: 1.66;
}

.generic-content-rtf ul:not(#share):not(#breadcrumbs) li:before {
  content: '»';
  padding-right: 7px;
  color: #021a32;
  position: absolute;
  left: 43px;
  top: -1px;
}
.generic-content-rtf h2 {
    color: #021a32 !important;
}
@media only screen and (min-width: 767px) {
  .generic-content-rtf h1 {
    font-size: 22px;
  }

  .generic-content-rtf h2{
    font-size: 1.31rem;
  }
  .generic-content-rtf h3 {
    font-size: 1.125rem;
  }
  .generic-content-rtf h4 {
    font-size: 1.0625rem;
  }
  .generic-content-rtf h5 {
    font-size: 1rem;
  }
  .generic-content-rtf, .generic-content-rtf p, .generic-content-rtf h6 {
    font-size: 18px;
  }
  .generic-content-rtf ol, .generic-content-rtf ul:not(#share):not(#breadcrumbs) {
    font-size: 18px;
    margin-top: 26px
  }
}

/*Hero Banner CSS*/
.hero-banner {
  background: #ab1a2d;
  float: left;
  margin-bottom: 10px;
  width: 100%;
}

.hero-banner .banner-img {
  position: relative;
  left: 0;
  padding: 0;
  overflow: hidden;
  line-height: 0;
  background-repeat: no-repeat;
  background-image: none !important;
}

.hero-banner .banner-img:before {
  content: '';
  position: absolute;
  border-top: 70px solid hsla(352, 74%, 39%, 0.8);
  border-right: 36px solid transparent;
}

.hero-banner .banner-img:after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  border-bottom: 233px solid #ab1a2d;
  border-left: 85px solid transparent;
}
.hero-banner .banner-img img {
    width:100%;
}
.hero-banner .banner-desc {
  position: relative;
}

.hero-banner .banner-desc p {
  color: #ffffff;
  font-size: .81rem;
  padding: 0 15px;
  margin: 0 0 15px;
}
.hero-banner .banner-desc > p:nth-of-type(1){
  margin-top: 14px;
}

.hero-banner .banner-desc a{
  color: #ffffff;
  text-decoration: underline;
}

.hero-banner .banner-desc .centered{
  text-align:center;
}

.hero-banner .banner-desc .button-wrapper {
  background: #ffffff;
  padding: 7px 25px 5px;
  border-radius: 2px;
  display: inline-block;
  min-height: 23px;
  margin-bottom: 10px;
  padding-top: 10px;
}

.hero-banner .banner-desc .button {
  font-weight: 600;
  font-size: .87rem;
  color: #ab1a2d !important;
  float: none;
  margin: 0;
  padding: 0;
  background:none;
  line-height: 1.4;
}

.hero-banner .overlay-bg {
  position: absolute;
  top: 0;
  border-bottom: black;
  right: -70px;
  height: 65px;
  width: 140px;
  background: hsla(352, 74%, 39%, 0.8);
  transform: skewX(-23deg);
  -webkit-transform: skewX(-23deg);
  -ms-transform: skewX(-23deg);
  -moz-transform: skewX(-23deg);
}
@media only screen and (max-width: 40.0624em) {
    .hero-banner .banner-img {
        background-image:none !important;
        max-height:200px;
    }
}
@media only screen and (min-width: 40.0625em) {
  .overlay-bg {
    right: 25px;
    height: 135px;
  }
  .hero-banner{
    display: flex;
  }
  .hero-banner .banner-img:before {
    border-top: 120px solid hsla(352, 74%, 39%, 0.8);
    border-right: 66px solid transparent;
  }
  .hero-banner .banner-img img {
        /*display:none;*/
    }
  .hero-banner .banner-img{
    background-size: 100% auto;
    background-repeat: no-repeat;
    /*min-height: 124px;*/
    max-height:233px;
  }
  .hero-banner .banner-img:after {
    border-bottom: 242px solid #ab1a2d;
    border-left: 97px solid transparent;
  }
  .banner-desc{
    padding-top: 10px;
  }
  .hero-banner .overlay-bg {
    right: -30px;
    height: 105px;
  }

}

@media only screen and (min-width: 64.0625em) {
  .hero-banner {
    max-height: 233px;
    overflow: hidden;
  }
  .overlay-bg {
    height: 165px;
    right: 0;
  }
  .banner-desc {
    padding-top: 25px;
  }
  .hero-banner .banner-desc p,.hero-banner .banner-desc .centered{
    max-width: 310px;
  }
    .hero-banner .banner-desc .centered {
        margin-left: 12px;
    }
}

/* Banner themes */
/*gray*/
.hero-banner.theme-gray {
  background: #666666;
}

.hero-banner.theme-gray .overlay-bg {
  background: hsla(0, 0%, 40%, 0.8);
}

.hero-banner.theme-gray .banner-img:before {
  border-top-color: hsla(0, 0%, 40%, 0.8);
}

.hero-banner.theme-gray .banner-img:after {
  border-bottom-color: #666666;
}

.hero-banner.theme-gray .banner-desc .button {
  color: #666666 !important;
}

/*Dark Blue*/
.hero-banner.theme-dark-blue {
  background: #021A32;
}

.hero-banner.theme-dark-blue .overlay-bg {
  background: hsla(210, 92%, 10%, 0.8);
}

.hero-banner.theme-dark-blue .banner-img:before {
  border-top-color: hsla(210, 92%, 10%, 0.8);
}

.hero-banner.theme-dark-blue .banner-img:after {
  border-bottom-color: #021a32;
}

.hero-banner.theme-dark-blue .banner-desc .button {
  color: #021A32 !important;
}

/*Medium Blue*/
.hero-banner.theme-medium-blue {
  background: #0095D3;
}

.hero-banner.theme-medium-blue .overlay-bg {
  background: hsla(198, 100%, 41%, 0.8);
}

.hero-banner.theme-medium-blue .banner-img:before {
  border-top-color:hsla(198, 100%, 41%, 0.8);
}

.hero-banner.theme-medium-blue .banner-img:after {
  border-bottom-color:#0095d3;
}

.hero-banner.theme-medium-blue .banner-desc .button {
  color: #0095D3 !important;
}

/*Blue*/
.hero-banner.theme-blue {
  background: #035797;
}

.hero-banner.theme-blue .overlay-bg {
  background: hsla(206, 96%, 30%, 0.8);
}

.hero-banner.theme-blue .banner-img:before {
  border-top-color:hsla(206, 96%, 30%, 0.8);
}

.hero-banner.theme-blue .banner-img:after {
  border-bottom-color:#035797;
}

.hero-banner.theme-blue .banner-desc .button {
  color: #035797 !important;
}

/*Teal*/
.hero-banner.theme-teal {
  background: #007698;
}

.hero-banner.theme-teal .overlay-bg {
  background: hsla(193, 100%, 30%, 0.8);
}

.hero-banner.theme-teal .banner-img:before {
  border-top-color: hsla(193, 100%, 30%, 0.8);
}

.hero-banner.theme-teal .banner-img:after {
  border-bottom-color:#007698;
}

.hero-banner.theme-teal .banner-desc .button {
  color: #007698 !important;
}

/*Green*/
.hero-banner.theme-green {
  background: #8DC63F;
}

.hero-banner.theme-green .overlay-bg {
  background: hsla(85, 54%, 51%, 0.8);
}

.hero-banner.theme-green .banner-img:before {
  border-top-color:hsla(85, 54%, 51%, 0.8);
}

.hero-banner.theme-green .banner-img:after {
  border-bottom-color:#8dc63f;
}

.hero-banner.theme-green .banner-desc .button {
  color: #8DC63F !important;
}

/*Orange*/
.hero-banner.theme-orange {
  background: #DF7D1C;
}

.hero-banner.theme-orange .overlay-bg {
  background: hsla(30, 78%, 49%, 0.8);
}

.hero-banner.theme-orange .banner-img:before {
  border-top-color:hsla(30, 78%, 49%, 0.8);
}

.hero-banner.theme-orange .banner-img:after {
  border-bottom-color: #df7d1c;
}

.hero-banner.theme-orange .banner-desc .button {
  color: #DF7D1C !important;
}

/*Marketing Module*/
.marketing-module {
  margin-top: 30px;
  background: #efefef;
  position: relative;
  margin-bottom: 20px;
  width: 100%;
  float: left;
  font-size: .81rem;
  line-height: 1.4;
  color:#333333;
}

.marketing-module .centered{
  text-align: center;
  margin-bottom: 30px;
}
.marketing-module .centered p{
  margin-bottom: 24px;
}

.marketing-module .centered a.button{
  float: none !important;
}

.marketing-module h3 {
  font-size: 1.25rem;
  margin-top: 10px;
  color: #021a32;
}

.marketing-module p {
  margin-top: 12px;
  font-size: .81rem;
  color:#333333;
}

.marketing-module a.button {
  font-size: 1.12rem;
  text-transform: uppercase;
  position: relative;
  float: left;
  margin: 20px 0 20px 0;
  border-radius: 2px;
  line-height: 1.61;
}

.marketing-module a.button img {
  width: 21px;
  height: 27px;
  right: 15px;
  margin-left: 10px;
  margin-bottom: -7px;
}

.marketing-module .image-container {
  position: relative;
  top: -20px;
  text-align: center;
  margin-bottom: -25px;
}
.marketing-module .columns{
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 40.0625em) {
  .marketing-module h3 {
    padding-top: 20px;
  }
}

@media only screen and (min-width: 64.0625em) {
  .marketing-module h3 {
    padding-top: 30px;
  }
  .marketing-module a {
    margin-bottom: 2.81rem;
  }
}

@media only screen and (min-width: 767px) {
  .marketing-module, .marketing-module p{
      font-size: .93rem;
  }
  .marketing-module > .row{
    display: flex;
  }
  .marketing-module .image-container{
    top:auto;
    bottom: 0;
    padding: 0;
    margin: 5px 15px 0 15px;
    min-height: 270px;
  }
  .marketing-module .image-container img{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    max-height: 297px;
    width: auto;
  }
  .marketing-module.white-paper-download .image-container{
    min-height: 502px;
    max-width: 48%;
    margin: 0 0 0 2%;
  }
  .marketing-module.white-paper-download .image-container img{
      max-height:522px;
  }

}

/* Marketing Module themes */
/* Gray */
.marketing-module.theme-gray h3 {
  color: #666666;
}

.marketing-module.theme-gray a, .marketing-module.theme-gray input[type="submit"] {
  background: #666666;
}

/*White*/
.marketing-module.theme-white h3 {
  color: #5f6062;
}

.marketing-module.theme-white a, .marketing-module.theme-white input[type="submit"] {
  background: #ffffff;
  color:#5f6062 !important;
  border: 2px solid #8b8b8d;
  padding: 8px 18px 6px;
}

/*Dark Blue*/
.marketing-module.theme-dark-blue h3 {
  color: #021A32;
}

.marketing-module.theme-dark-blue a, .marketing-module.theme-dark-blue input[type="submit"] {
  background: #021A32;
}

/*Medium Blue*/
.marketing-module.theme-medium-blue h3 {
  color: #0095D3;
}

.marketing-module.theme-medium-blue a, .marketing-module.theme-medium-blue input[type="submit"] {
  background: #0095D3;
}

/*Blue*/
.marketing-module.theme-blue h3 {
  color: #035797;
}

.marketing-module.theme-blue a, .marketing-module.theme-blue input[type="submit"] {
  background: #035797;
}

/*Teal*/
.marketing-module.theme-teal h3 {
  color: #007698;
}

.marketing-module.theme-teal a, .marketing-module.theme-teal input[type="submit"] {
  background: #007698;
}

/*Green*/
.marketing-module.theme-green h3 {
  color: #8DC63F;
}

.marketing-module.theme-green a, .marketing-module.theme-green input[type="submit"] {
  background: #8DC63F;
}

/*Orange*/
.marketing-module.theme-orange h3 {
  color: #DF7D1C;
}

.marketing-module.theme-orange a, .marketing-module.theme-orange input[type="submit"]{
  background: #DF7D1C;
}

/*

List of themes classes
.theme-gray
.theme-white
.theme-dark-blue
.theme-medium-blue
.theme-blue
.theme-teal
.theme-green
.theme-orange

*/

/*Mosaic*/
.mosaic {
  width: 100%;
  clear: both;
  max-width: 1440px;
  margin-top:30px;
  margin-left: auto;
  margin-right: auto;
}

.mosaic .columns {
  position: relative;
  padding-left:0;
  padding-right:0;
}

.mosaic [class*="column"] + [class*="column"]:last-child{
  float:left;
}

.mosaic .featured{
  height: auto;
}

.mosaic .featured .callout-title {
  min-height: 33px;
}
.mosaic .callout{
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
}

.callout.callout-img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position:center;
}

/* Reusable CSS for all callouts */
.callout {
  color: #fff;
  background: #a51d25;
  overflow: hidden;
  height: 138px;
  position: relative;
  cursor: pointer;
}
.callout[data-location=""]{
  cursor: default;
}
.callout .new{
  position: absolute;
  top: 0;
  right: 0;
  background: #df7c1b;
  padding: 2px 5px 0;
  line-height: 1.5;
  text-transform: uppercase;
}

.callout:before {
  content: '';
  float: left;
  padding-bottom: 59.22346%;
}

.callout:after {
  content: '';
  display: table;
  clear: both;
}

.callout .callout-title {
  font-size: .68rem;
  line-height: 1.09;
  font-weight: 600;
  min-height: 33px;
  text-align:left;
  background-size: 15px;
  padding: 0 0 0 20px;
  margin: 16px 5px 12px 20px;
  color:#ffffff;
}
.callout .callout-title:after {
  content: "";
  position: absolute;
  top: 60px;
  left: 0;
  display: block;
  width: 0;
  height: 2px;
  background: #fff;
  -webkit-transition: width .3s;
  -moz-transition: width .3s;
  -o-transition: width .3s;
  transition: width .3s;
  -webkit-transition-delay: .2s;
  -moz-transition-delay: .2s;
  -o-transition-delay: .2s;
  transition-delay: .2s;
}
@media only screen and (max-width: 767px) {
  .callout .callout-title:after {
    display: none;
  }
}
.callout:hover .callout-title:after {
  width: 50%;
}
.callout:hover .callout-desc {
  opacity: 1;
  -webkit-transition: opacity .3s ease-in-out;
  -moz-transition: opacity .3s ease-in-out;
  -o-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
  -webkit-transition-delay: .5s;
  -moz-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
}
.callout div.callout-desc {
  font-size: .68rem;
  line-height: 1.09;
  padding: 10px 18px 3px;
  max-height: 42px;
  position: relative;
  text-align:left;
  color:#ffffff;
  margin:0;
}
.callout div.callout-desc p, .callout div.callout-desc h1, .callout div.callout-desc h2, .callout div.callout-desc h3, .callout div.callout-desc h4, .callout div.callout-desc h5, .callout div.callout-desc h6{
  font-size: .68rem;
  line-height: 1.09;
  color:#ffffff;
}

.callout .link {
  text-transform: uppercase;
  text-align: right;
  font-size: .75rem;
  font-weight: 600;
  padding: 3px 18px 10px 0px;
  position: absolute;
  bottom: 0;
  right: 10px;
  line-height: 1;
  color: #ffffff;
  text-decoration: none;
  background:none;
  width: auto;
  cursor: pointer;
  opacity: 0;
}
.callout .link:after{
  content: '»';
  color: #ffffff;
  float: right;
  padding-left: 5px;
  margin-top:-1px;
}
.callout:hover .link{
  opacity: 1;
  -webkit-transition: opacity .3s ease-in-out;
  -moz-transition: opacity .3s ease-in-out;
  -o-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
  -webkit-transition-delay: 1s;
  -moz-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s;
}
.callout-img .callout-title, .event-post .callout-title{
  padding: inherit;
}

.callout-img .callout-details {
  background: hsla(0, 0%, 0%, 0.5);
  position: absolute;
  bottom:0;
  width: 100%;
  -webkit-transition: bottom .5s;
  -moz-transition: bottom .5s;
  -o-transition: bottom .5s;
  transition: bottom .5s;
}

.callout-img div.callout-desc, .callout-img .link{
  display: block;
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .callout-img div.callout-desc, .callout-img .link{
    display: none;
  }
}
.callout-img .callout-details:before {
  content: '';
  float: left;
  padding-bottom: 59.22346%;
}

.callout-img .callout-details:after {
  content: '';
  display: table;
  clear: both;
}

@media only screen and (max-width: 400px) {
    .mosaic .callout-img:not(.featured) .callout-details, .header .callout-img .callout-details{
        bottom: -45px !important;
    }
}
@media only screen and (min-width: 400px) {
  .callout{
    height: auto;
  }
}

@media only screen and (min-width: 40.0625em) {
  .callout .callout-title{
    font-size: .91rem;
    line-height: 1.33;
    margin: 18px 20px 13px;
    background-size: auto;
    padding: inherit;
  }

  .not-touch-device .callout-img.hover:hover .callout-details {
    bottom:0 !important;
  }


  .not-touch-device .callout-img.hover:hover div.callout-desc{
    display: block;
    opacity: 1;
    -webkit-transition: opacity .3s ease-in-out;
    -moz-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
    -webkit-transition-delay: .5s;
    -moz-transition-delay: .5s;
    -o-transition-delay: .5s;
    transition-delay: .5s;
  }

  .callout div.callout-desc{
    font-size: .81rem;
    line-height: 1.46;
    opacity: 0;
  }

  .callout .link {
    font-size: .87rem;
  }
}

/* Callout themes and icons */
.callout.case-study{
  background-color: #007698;
}
.callout.case-study:hover
{
  background-color: #015c76;
}

.callout.white-paper{
  background-color: #A51D25;
}
.callout.white-paper:hover
{
  background-color: #88181f;
}

.callout.case-study .callout-title, .callout.white-paper .callout-title{
  background:url(/_res/ags/ags2016/img/icon-doc.png) no-repeat;
  padding-left:40px;
  margin-right: 10px;
}

.callout.blog-article{
  background-color: #8DC63F;
}
.callout.blog-article:hover
{
  background-color: #76a635;
}

.callout.press-release{
  background-color: #0195D3;
}
.callout.press-release:hover
{
  background-color: #0475a4;
}

.callout.blog-article .callout-title, .callout.press-release .callout-title{
  background:url(/_res/ags/ags2016/img/icon-article.png) no-repeat left top;
  padding-left:45px;
  margin-right: 10px;
}

.callout.video-article{
  background-color: #C42530;
  cursor: pointer;
}
.callout.video-article:hover{
  background-color: #981e26;
}
.callout.video-article:after{
  content: '';
  position: absolute;
  background: url(/_res/ags/ags2016/img/icon-video.png) no-repeat center;
  background-size: contain;
  height: 50px;
  width: 50px;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
}

.callout.event-post{
  background-color: #035797;
}
.callout.event-post:hover{
  background-color: #033861;
}

@media screen and (max-width: 39.999em) {
  .callout .callout-title, .callout div.callout-desc{
    margin-left: 10px;
    padding-left: 0;
    line-height: 1.29;
  }
  .callout.case-study .callout-title, .callout.white-paper .callout-title{
    background-size: 17px;
    padding-left:22px;
  }

  .callout.blog-article .callout-title, .callout.press-release .callout-title{
    background-size: 20px;
    padding-left:25px;
    background-position: top left;
  }
  .callout.case-study .callout-title, .callout.white-paper .callout-title,
  .callout.blog-article .callout-title, .callout.press-release .callout-title,
  .callout.case-study .callout-desc, .callout.white-paper .callout-desc,
  .callout.blog-article .callout-desc, .callout.press-release .callout-desc{
    margin-left: 8px;
  }
  .callout .new{
    font-size: .625rem;
  }
  .callout .callout-title{
    margin: 13px 5px 5px 10px;
  }
    .reveal-modal, dialog {
        position:fixed;
        top:25% !important;
    }
}
@media only screen and (max-width: 345px){
  .mosaic .callout-img:not(.featured) .callout-details, .header .callout-img .callout-details{
    bottom: -35px !important;
  }
}

/*Primary Mosaic*/
@media only screen and (min-width: 900px){
  .primary-mosaic .featured-outer{
    left: 25%;
    right: auto;
    width: 50%;
  }
  .mosaic .featured-outer:before{
    content: "";
    float: left;
    padding-bottom: 59.2235%;
  }
}
@media only screen and (min-width: 767px) and (max-width: 1080px){
  .primary-mosaic .columns{
    margin-bottom: -0.02px;
  }
  .primary-mosaic .callout .callout-title{
    line-height: 1.23;
    font-size: .88rem;
  }
  .primary-mosaic .callout div.callout-desc{
    line-height: 1.26;
  }
}

/* ----------------
      Header CSS
-------------------*/

.header {
  width: 100%;
  margin-top: 0;
  position:relative;
  z-index: 11;  
}

.header .bg{
    background: #021a32;
}
.ags-logo{
  max-height: 31px;
  max-width: 140px;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* Navigation*/
.js .nav-collapse {
  position: absolute;
  display: block;
  overflow: hidden;
  zoom: 1;
}
.nav-collapse,
.nav-collapse *,
.nav-container,
.nav-container * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.nav-collapse {
  float: left;
  list-style: none;
}

.nav-container {
    display: none;
}

.nav-collapse > ul,
.nav-container > ul {
  margin: 0;
  padding: 0;
  display: inline;
  font-size: 1rem;
  width: auto;
  list-style: none;
}

.nav-collapse li,
.nav-container li {
  width: 100%;
  display: block;
  float: left;
}

.nav-collapse .left >li > a {
  color: #fff;
  text-decoration: none;
  font-size:.81rem;
  padding: 0 7px;
  text-transform: uppercase;
}

.nav-collapse.opened {
  max-height: 9999px;
}

.nav-collapse .right a,
.nav-container .right a{
  font-size:.61rem;
  text-transform: uppercase;
  padding: 0 5px;
  text-decoration: none;
}

.nav-collapse .search-container,
.nav-container .search-container{
  position: static;
  width: 183px;
}

.nav-toggle {
  background: url(/_res/ags/ags2016/img/icon-hambuger.png) no-repeat 12px 15px;
  width: 24px;
  height: 20px;
  position: absolute;
  right: 0;
  padding: 15px 12px;
}
.nav-toggle.active{
  width: 100%;
  height: 100%;
  left: 0;
  padding: 0;
}
.nav-toggle.active:before{
    content:'';
    position:fixed;
    height:100%;
    width:100%;
}

.nav-toggle[aria-expanded="true"] {
  background: url(/_res/ags/ags2016/img/icon-close.png) no-repeat right 15px;
}

.search-container .search-input{
  outline: none;
  padding: 0 5px;
  box-shadow: none;
  border-radius: 0;
  height: 28px;
  border: 1px solid #cccccc;
  width:85%;
}

.search-container .search{
  width:11%;
  background:none;
  margin:0;
  padding: 1%;
  outline: none;
}

/* Language Dropdown */
.nav-collapse #top-nav,
.nav-container #top-nav {
    margin-top: 0;
}
.nav-collapse #top-nav li.localize > span,
.nav-container #top-nav li.localize > span  {
    color: #4f4f4f ;
    font-size: .68rem;
    padding: 0 7px;
    text-transform: uppercase;
    display: inline-block;
}
.nav-collapse #top-nav li.localize ul,
.nav-container #top-nav li.localize ul {
    top: 43px;
}
.nav-collapse #top-nav li.localize ul li,
.nav-container #top-nav li.localize ul li {
    height: auto;
    line-height: 1.5;
}
.nav-collapse #top-nav li.localize ul li a,
.nav-container #top-nav li.localize ul li a {
    width: 100%;
    text-align: left;
    line-height: 1.81;
    height: auto;
}

/* Dropdown*/
@media screen and (min-width: 640px){
    .dropdown > a:after {
      content:'';
      background: url(/_res/ags/ags2016/img/menu-dropdown.png) no-repeat center;
      height: 9px;
      width: 100%;
      top: 50px;
      position: absolute;
      left: 0;
      pointer-events: none;
    }
}
.dropdown .left > li > a {
  background: #282e34;
  padding-left: 1.5em;
}

.dropdown ul ul {
  border: 0;
  padding: 0;
}

.dropdown .dropdown.opened .has-dropdown {
  background: #9c2c12;
}

.logo-outer{
  text-align: center;
  padding: 0 1%;
  margin: auto;
  display: inline-block;
  position: relative;
}

.megamenu .sub-menu .row > ul{
  position: static;
  text-align:left;
  margin-left:0;
}
.megamenu .sub-menu .row > ul > li{
  position: relative;
  padding-left: 17px;
  margin-bottom:19px;
  margin-top:0;
  font-size:.93rem;
}
.megamenu .sub-menu .row > ul li a, .megamenu .sub-menu .row > ul li a:hover, .megamenu .sub-menu .row > ul li a:visited{
  text-decoration: none;
  color: #021a32;
}
.megamenu .sub-menu .row > ul li a:hover{
  font-weight: 600;
}

.megamenu .sub-menu .row > ul li.active{
  font-weight: 600;
}
.megamenu .sub-menu .row > ul li:before{
  content: '»';
  color: #777777;
  position: absolute;
  left: 0;
  top: -4px;
  font-size: 1.18rem;
}
.megamenu .sub-menu .row > ul ul{
  padding-left:5px;
  padding-top: 5px;
  margin-left: 10px;
}
.megamenu .sub-menu ul ul li{
  padding-left: 13px;
  margin-bottom: 5px;
  font-size:.81rem;
}
.megamenu .sub-menu .row > ul ul li:before{
  content: '›';
}
@media screen and (max-width: 639px) {
  .logo-outer{
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .js .nav-collapse {
    z-index: 1;
    right: -275px;
    width: 275px;
    min-height: 300px;
    -webkit-transition: all 583ms linear;
    -moz-transition: all 583ms linear;
    transition: all 583ms linear;
    background: #021a32;
    position: absolute !important;
    top:50px;
  }
  .js .nav-collapse.opened {
    visibility: visible;
    right:0;
  }
  .dropdown > a:after{
    display:none;
  }
  /* Enable active class to let the navigation expand over the calculated max height. */
  .js .nav-collapse.multiple-level-nav.opened.dropdown-active {
    max-height: 9999px !important;
  }

  .js .nav-collapse.multiple-level-nav .sub-menu {
    clip: rect(0 0 0 0);
    max-height: 0;
    position: absolute;
    display: none; /* This way you don't have focus on sub menu items unless you open the sub menu. */
    overflow: hidden;
    zoom: 1;
  }

  .js .nav-collapse.multiple-level-nav .sub-menu.toggled {
    display: block;
    max-height: 9999px;
    position: relative;
    margin:0;
    padding-bottom: 20px;
    clear: both;
  }

  .js .nav-collapse li {
    position: relative;
  }
  .megamenu .sub-menu .row > ul li a, .megamenu .sub-menu .row > ul li a:hover, .megamenu .sub-menu .row > ul li a:visited, 
  .nav-collapse li a,
  .nav-container li a {
    color:#ffffff;
    text-decoration: none;
  }
  .nav-collapse .menu-items > li,
  .nav-container .menu-items > li {
    line-height: 1.25;
    padding: 0;
  }

  .nav-collapse .menu-items > li >a,
  .nav-container .menu-items > li > a {
    padding: 20px 0 20px 20px;  
    display: block;
    float: left;
    width: 80%;
  }

  .nav-collapse .menu-items > li > a:after,
  .nav-container .menu-items > li > a:after {
    display: block;
    width: 86%;
    content: " ";
    position: absolute;
    bottom: 0;
    left: 7%;
    border-bottom: 1px solid #32485f;
  }

  .nav-collapse .menu-items > li:last-child > a:after,
  .nav-container .menu-items > li:last-child > a:after {
      display: none;
  }

  .nav-collapse .dropdown-toggle,
  .nav-container .dropdown-toggle {
    display: none;
  }
  .nav-collapse .dropdown .dropdown-toggle,
  .nav-container .dropdown .dropdown-toggle {
    border: 0;
    display: inline-block;
    background: none;
    position: absolute;
    height: 46px;
    width: 46px;
    padding: 0;
  }

  .nav-collapse .dropdown .dropdown-toggle:after,
  .nav-container .dropdown .dropdown-toggle:after {
    content: "";
    height: 46px;
    width: 30px;
    background: url(/_res/ags/ags2016/img/menu-dropdown.png) no-repeat center;
    position: absolute;
    top: 0;
    right: 20%;
    font-size: 0 !important;
  }


  .nav-collapse .right,
  .nav-container right { 
    background: #010f1c;
    padding: 20px 30px 50px;
  }

  .nav-collapse .right .search-container,
  .nav-container .right .search-container {
    margin-top: 20px;
    width: 100%;
  }

  .nav-collapse .sub-menu, 
  .nav-container .sub-menu {
    background: #010c12;
    padding-left: 25px;
    padding-right: 25px;
    padding-top:10px;
    padding-bottom:10px;
  }
  .nav-collapse .sub-menu .row > ul,
  .nav-container .sub-menu .row > ul {
    color:#ffffff;
    padding-top:0;
  }
  .nav-collapse .sub-menu .row > ul li,
  .nav-container .sub-menu .row > ul li {
    margin-bottom: 10px;
    font-size: .81rem;
  }
  .nav-collapse #top-nav li.localize > span,
  .nav-container #top-nav li.localize > span {
      color: #ffffff;
  }
  .nav-collapse #top-nav li.localize:hover ul,
  .nav-container #top-nav li.localize:hover ul{
      right: 0;
  }
  .nav-collapse #top-nav li.localize ul li a,
  .nav-container #top-nav li.localize ul li a {
      color: #000000;
  }
  .logo-outer{
    height: 50px;
  }
  .search-container .search{
    padding: 2%;
  }
}

@media screen and (min-width: 640px) {
  .header{
    padding-top:47px;
    margin-top: -47px;
    background:url(/_res/ags/ags2016/img/menu-bg-02.png) right top no-repeat;
  }
  
  .logo-outer{
    height:81px;
  }
  .ags-logo{
    max-height: 76px;
    height: auto;
  }
  .nav-container {
      display: block;
  }
  .nav-collapse {
    position: relative;
    width: auto;
    float: right;
  }
  
  .nav-collapse.closed {
    max-height: none;
  }
  .nav-collapse .left{
    min-width: 610px;
    min-height: 81px
  }
  .nav-collapse .right {
      display: none;
  }
  
  .nav-collapse .left > li > a {
    margin: 0;
    text-align: center;
    display: inline-block;
    height: 100%;
    font-size: .91rem;
    padding: 0 7px;
  }
  .nav-collapse .left > li > a:hover{
      background: #010C12;
  }
  .nav-collapse .left > li{
    height: 81px;
    line-height: 72px;
    margin: 0 4px;
  }
  .nav-collapse li,
  .nav-container li {
    width: auto;
    border: 0;
    display: inline-block;
    position: relative;
  }
  .nav-toggle {
    display: none;
  }
  .dropdown-toggle  {
    display: none;
  }
  
  .dropdown .left >li:after {
    content: "";
    width: 0;
    height: 0;
    margin: 0.3em 0 0 0.5em;
    border-bottom: 6px solid transparent;
    border-top: 6px solid transparent;
    border-left: 6px solid #fff;
  }
  .js .nav-collapse,
  .js .nav-collapse .dropdown .sub-menu {
    max-height: none;
    overflow: visible;
  }
  .nav-collapse .dropdown li,
  .nav-container .dropdown li {
    width: 100%;
    padding-left: 20px;
    font-size: .93rem;
  }
  .nav-collapse .dropdown ul > li a,
  .nav-container .dropdown ul > li a {
    text-align: left;
    border: 0;
  }
  .nav-collapse li.active,
  .nav-container li.active {
    background: #010C12;
  }

  .nav-collapse ul .sub-menu,
  .nav-container ul .sub-menu {
    float: left;
    margin: 0;
    position: absolute;
    top: 81px;
    left: -999em;
    z-index: 2;
    text-align: center;
  }
  .nav-collapse ul .sub-menu > li > a,
  .nav-container ul .sub-menu > li > a {
    padding: 15px 12px;
    white-space: normal;
    width: 150px;
  }
  .nav-collapse li ul > li,
  .nav-container li ul > li {
    border: 0;
    display: block;
    height: auto;
    line-height: 1.0909090909;
  }

  .nav-collapse .left > li:not(:first-child):before{
    content: '';
    margin-top: 22px;
    height: 28px;
    width: 1px;
    background: #929292;
    position: absolute;
    left: -6px;
  }

  .nav-container .right {
    position: relative;
    margin-bottom: 0;
    z-index: 9999;
    padding-left: 40px;
    min-width: 620px;
    background: #e9e9e9; /* Old browsers */
    background: -moz-linear-gradient(top,  #e9e9e9 0%, #ffffff 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #e9e9e9 0%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #e9e9e9 0%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e9e9e9', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
  }

  .nav-collapse .right {
    position: absolute;
    right: 0;
    bottom: 162px;
    width: 100%;
  }

  .nav-collapse .right:before,
  .nav-container .right:before {
    content: '';
    border-top: 47px solid #ffffff;
    border-bottom: 23px solid transparent;
    border-right: 23px solid transparent;
    position: absolute;
    left: 0;
  }

  .nav-collapse .right li,
  .nav-container .right li{
    height: 47px;
    line-height: 47px;
  }
  .nav-collapse .right li a,
  .nav-container .right li a {
    color:#4f4f4f;
    font-size:.68rem;
    padding: 0 6px;
  }
  .nav-collapse .right .inline,
  .nav-container .right .inline {
    padding:0;
  }
  .nav-collapse .right .inline li,
  .nav-container .right .inline li {
    float:left;
    width: auto;
    padding:0;
  }
  .nav-collapse .callout-img .callout-title {
    height: 40px;
    margin-top: 10px;
  }
  .nav-collapse .callout-img .callout-details {
    bottom:-75px;
  }

  .nav-collapse div.columns{
    border-left: 1px solid #dddddd;
  }
  .megamenu .sub-menu{
    background: #ffffff;
    border-bottom: 10px solid #dddddd;
  }
  .megamenu .sub-menu .row > ul:nth-of-type(1){
    border-right: 1px dotted #777777;
    min-height: 168px;
  }

  .megamenu .sub-menu .row{
    margin: 0 auto;
    width: inherit;
    max-width: 940px;
    padding-bottom: 20px;
    padding-top: 20px;
    float:none;
  }
  .megamenu .sub-menu .row > .columns{
    padding-left: 15px;
    padding-right: 15px;
  }
  .megamenu .sub-menu .row > ul.columns{
    float:left;
  }
}
@media (max-width: 767px){
  .nav-collapse #top-nav li.localize ul,
  .nav-container #top-nav li.localize ul {
    left:-999em;
    margin-top: 0;
    right: auto;
  }
  .nav-collapse #top-nav li.localize:hover ul,
  .nav-container #top-nav li.localize:hover ul {
    left: -15%;
  }
}
@media (max-width: 639px){
  .js .nav-collapse{
    overflow: visible;
  }
  .nav-collapse #top-nav li.localize,
  .nav-container #top-nav .li.localize {
    position:static;
  }
  .nav-collapse #top-nav li.localize:hover ul,
  .nav-container #top-nav li.localize:hover ul {
    left: 20px;
  }
  .js .nav-collapse.closed{
    width: 0;
    overflow: hidden;
  }
}
@media (min-width: 640px) and (max-width: 768px) {
  .nav-collapse .left > li > a{
    padding: 0 3px;
  }
  .nav-collapse .medium-8,
  .nav-container .medium-8 {
      width: 33.33333%;
  }
  .nav-collapse .callout .callout-title{
    font-size: .81rem;
    line-height: 1.22;
    margin: 5px 5px 12px 20px;
  }
  .nav-collapse .callout div.callout-desc{
    font-size: .71rem;
  }
}
@media (min-width: 640px) and (max-width: 749px) {
  .header > .bg > .row{
    text-align:center;
  }
}
@media (min-width: 750px) and (max-width: 845px) {
  .nav-collapse .left{
    min-width: 599px;
  }
  .ags-logo{
    max-width: 120px;
  }
}
@media (min-width: 750px){
  .logo-outer{
    width: auto;
    text-align: center;
    float: left;
  }
  .nav-collapse .right {
    bottom: 81px;
  }
}
@media only screen and (max-width: 639px){
  .nav-collapse .callout-img .callout-details {
    bottom: -75px !important; 
  }
}
@media (min-width: 640px) and (max-width: 885px) {
  .nav-collapse .callout-img .callout-title{
    height:55px;
  }
}

/*------Header Callout-----*/
.generic-callout .callout-title{
  background: hsla(0, 0%, 0%, 0.5);
  position: absolute;
  bottom: 0;
  margin: 0;
  padding:19px 20px 19px;
}

/* ---------------------
        FOOTER CSS
----------------------*/
footer#main-footer{
  background:#021a32;
  padding-bottom:30px;
  display: block;
  height: auto;
  clear: both;
}
#main-footer > .row{
    padding-bottom:30px;
}
#main-footer > .row .columns{
  padding:0 15px;
}
#main-footer h2{
    font-size:1rem;
}
#main-footer ul.social > li a{
    background-image: url(/_res/ags/ags2016/img/footer-social-sprite.png);
    background-position: -1px 0px;
    height:26px;
}
#main-footer ul.social > li a.tw {
    background-position: -30px 0px;
}
#main-footer ul.social > li a.li {
    background-position: -58px 0px;
}
#main-footer ul.social > li a.gp {
    background-position: -88px 0px;
}
#main-footer ul.social > li a.yt {
    background-position: -116px 0px;
}
#main-footer .block {
    padding: 20px 0 10px 0;
}
#main-footer .footer-links-container ul{
    width:28%;
}
#main-footer .block nav li, #main-footer .block nav li a {
    margin-bottom: 5px;
}
#main-footer .copyright, #main-footer .copyright a {
    font-size: .68rem;
    padding-left:0;
}
#main-footer .copyright p strong {
    font-weight:200;
}
#main-footer nav a{
    font-size:.75rem;
}
#main-footer nav ul {
    margin-right:.75rem;
}

@media only screen and (min-width: 40.0625em) {
    #main-footer nav a{
        font-size:.93rem;
    }
    #main-footer nav ul {
        margin-right:30px;
    }
    #main-footer .copyright p, #main-footer .copyright a {
        font-size: .93rem;
    }
    #main-footer .footer-links-container ul{
        width:auto;
    }
}


/* ---------------------
        SECONDARY MOSAIC CSS
----------------------*/
.secondary-mosaic{
  margin-top: 20px;
}
.secondary-mosaic .mosaic-title{
  background: #eeeeee;
  color:#333333;
  font-size: .81rem;
  line-height: 1.615;
  padding-bottom: 5px;
}
.secondary-mosaic .mosaic-title .columns{
  padding: 0 15px;
}
.secondary-mosaic h3{
  font-size: .93rem;
  color: #666666;
}
.secondary-mosaic p{
  font-size: .81rem;
  color:#333333;
}

.secondary-mosaic img{
  float:left;
  max-width: 100%;
  padding-right: 20px;
  padding-bottom: 10px;
}

.secondary-mosaic .callout-list{
  background: #ffffff;
  height: auto;
  overflow: visible;
  padding-right: 10px;
  overflow-Y: auto;
}
.secondary-mosaic .callout-list a, .secondary-mosaic .callout-list a:visited, .secondary-mosaic .callout-list a:focus, .secondary-mosaic .callout-list a:active{
  text-decoration: none;
  color:#333333;
}
.secondary-mosaic .callout-list a:hover{
  font-weight: bold;
}

.secondary-mosaic .callout-list .callout-title{
  color:#021a32;
  font-weight: bold;
  font-size:1rem;
  margin-bottom: 20px;
  overflow: visible;
  max-height: none;
  margin-left: 20px;
}
.secondary-mosaic .callout-list .callout-desc{
  margin: 0;
  list-style: none;
  padding-top: 0;
  overflow: visible;
  max-height: none;
  position: relative;
  margin-top:20px;
}

.secondary-mosaic .callout-list .callout-title + .callout-desc:before{
  content: '';
  background:#021a32;
  height:2px;
  width: 40%;
  position: absolute;
  top: -11px;
  left: 20px;
}
.secondary-mosaic .callout-list .callout-desc li{
  padding-left: 35px;
  position: relative;
  font-size:.81rem;
  margin-bottom: 15px;
  margin-left: 17px;
}
.secondary-mosaic .callout-list .callout-desc li:before{
  content: '»';
  color: #021a32;
  font-size:1.18rem;
  position:  absolute;
  left: 13px;
}

@media only screen and (min-width: 40.0625em) {
  .secondary-mosaic .mosaic-title, .secondary-mosaic .mosaic-title p{
    font-size: .93rem;
    line-height: 1.4;
  }

  .secondary-mosaic h3{
    font-size: 1.31rem;
  }
  .secondary-mosaic img{
    width: 300px;
  }

  .secondary-mosaic .callout-list .callout-desc li{
    font-size:.93rem;
    margin-bottom: 20px;
  }
}

/*Filter Page*/
.listing-filter{
  background: #f3f3f3;
  margin-top: 20px;
}
.listing-filter .columns{
  padding-left:15px;
  padding-right: 15px;
}
.listing-filter .columns.error{
  padding-bottom:20px;
  font-size:.93rem;
  line-height:1.3;
}
.listing-filter [class*="column"] + [class*="column"]:last-child{
  float: left;
}
.filter-row{
  background: #efefef;
  padding: 17px 0;
  margin-bottom: 25px;
}
.filter-row h3{
  text-transform: uppercase;
  color: #021a32;
  font-size: 1.31rem;
  line-height: 1.71;
  margin:0;
}
.filter-row h5{
  text-transform: uppercase;
  color:#333333;
  font-size: 0.93rem;
  font-weight: normal;
  line-height: 2.4;
  padding: 0 !important;
  margin: 0;
}
.filter-row .filter-div{
  padding: 0;
}
.filter-row select{
  background: url(/_res/ags/ags2016/img/filter-dropdown.png) no-repeat right #666666;
  border:0;
  color:#ffffff;
  height: 32px;
  outline: none;
  margin-top: 2px;
  cursor: pointer;
  font-size: 1rem;
  padding-right: 35px;
}
.filter-listing .columns{
  list-style: none;
}
.filter-listing .callout{
  margin-bottom: 15px;
  height: auto;
}
.filter-listing .callout .callout-title {
    min-height:initial;
    font-size: .88rem;
}
.filter-listing .callout.case-study .callout-title,
.filter-listing .callout.white-paper .callout-title,
.filter-listing .callout.blog-article .callout-title,
.filter-listing .callout.press-release .callout-title{
    min-height: 33px;
}

.filter-listing .callout div.callout-desc,
.filter-listing .callout div.callout-desc p,
.filter-listing .callout div.callout-desc h1,
.filter-listing .callout div.callout-desc h2,
.filter-listing .callout div.callout-desc h3,
.filter-listing .callout div.callout-desc h4,
.filter-listing .callout div.callout-desc h5,
.filter-listing .callout div.callout-desc h6 {
  font-size: .78rem;
  line-height: 1.29;
}
.filter-listing .callout .link{
    bottom: 10px;
}
.filter-listing .callout .new {
    padding: 4px 10px 3px;
}

@media only screen and (min-width: 40.0625em) {
  .filter-row .filter-div{
    padding-right: 15px;
  }
  .filter-row select{
    font-size: .93rem;
  }
}
@media only screen and (min-width: 900px) {
  .filter-row h3{
    border-right: 1px solid #cfcfcf;
  }
  .filter-row .large-7{
      width: 29.16667%;
  }
}
@media only screen and (min-width: 940px) {
    .filter-listing.row {
        max-width:934px;
    }
  .filter-listing .columns{
    padding-left:12px;
    padding-right:12px;
  }
}

/*White paper Detail Page - - HS Forms */
.hbspt-form{
  padding-top:30px;
}
.hbspt-form .hs-form fieldset{
  max-width: none;
}
.hbspt-form .hs-form input[type="text"], .hbspt-form .hs-form input[type="email"], .hbspt-form .hs-form .input select{
  height: 36px !important;
  background: #ffffff;
  box-shadow: none;
  border-radius: 0;
  width: 100%;
  padding: 0 3%;
  margin-bottom: 12px;
}
.hbspt-form .hs-form .input select{
  background: url(/_res/ags/ags2016/img/icon-dropdown.png) no-repeat center right #ffffff;
}
.hbspt-form .hs-form fieldset .hs-form-field .input{
  margin-right: 0;
}
.hbspt-form .hs-form fieldset.form-columns-1 input[type="text"], .hbspt-form .hs-form fieldset.form-columns-2 input[type="text"], .hbspt-form .hs-form fieldset.form-columns-1 input[type="email"]{
  width: 100%;
  padding: 0 2%;
}
.hbspt-form .hs-form fieldset.form-columns-1 select{
  width: 96%;
  padding: 0 2%;
}
.hs-form .field label{
  margin-bottom: 0;
  color: #202020;
  font-size: .81rem;
  line-height: 1.7;
}

.hs-form fieldset.form-columns-1 input[type="checkbox"], .hs-form fieldset.form-columns-1 input[type="radio"]{
  margin-top: 0;
  margin-right: 10px;
}
.hbspt-form .hs-form .actions{
  text-align: center;
}

.hbspt-form .hs-form .actions input[type="submit"]{
  font-size: 1.12rem;
  text-transform: uppercase;
  position: relative;
  float: none;
  margin: 20px 0 20px 0;
  border-radius: 2px;
  line-height: 1.61;
  padding-right: 40px;
  background-image: url(/_res/ags/ags2016/img/icon-white-paper-btn.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 31px 27px;
}

@media only screen and (min-width: 40.0625em) {
  .hbspt-form .hs-form .form-columns-2 .hs-form-field:nth-of-type(1) .input{
    margin-right: 12px;
  }
  .hbspt-form .hs-form .form-columns-2 .hs-form-field .input select{
      width: 94%;
  }
}

/* ---------
Hero Slider CSS
------------*/
#hero-slider-div {
  max-width: 100%;
  overflow: hidden;
  margin-bottom: 30px;
  max-height: 496px;
}
#hero-slider-div * {
  -webkit-text-size-adjust: auto;
}
#hero-slider-div h2 {
  font-size: .93rem;
  font-weight: 600;
  color:#002d55;
}
#hero-slider-div p {
  color:#002d55;
  line-height: 1;
  font-size: 25px;
  margin:15px 0 25px;
}
#hero-slider-div .slides > li {
  background: #ab1a2d;
  float: left;
}
#hero-slider-div .flex-next {
  display: none;
  opacity: 0.7;
  right: 0;
}
#hero-slider-div .flex-prev {
  opacity: 0.7;
  left: 0;
}
#hero-slider-div .flex-direction-nav a {
  display: none;
  width: 68px;
  height: 54px;
  padding: 0;
}
#hero-slider-div:hover .flex-direction-nav a {
  display: block;
}
#hero-slider-div .flex-direction-nav a:before {
  width: 68px;
  height:54px;
  background: url(/_res/ags/ags2016/img/prev.png) no-repeat;
}
#hero-slider-div .flex-direction-nav a.flex-next:before {
  background: url(/_res/ags/ags2016/img/next.png) no-repeat;
}
#hero-slider-div .hero-desc {
  padding: 4% 5% 1%;
}
#hero-slider-div .hero-desc > h2.hTagHeroTitle {
  font-family: 'GibsonRegular', sans-serif;
  font-weight: 300;
}
#hero-slider-div .hero-desc > h2.hTagHeroTitleSecondRow {
  font-weight: 700;
}
#hero-slider-div .hero-desc > h2 {
  display: block;
  font-size: 50px;
  line-height: 1;
  text-transform: uppercase;
  margin: 0;
}



@media only screen and (min-width: 768px) {
  #hero-slider-div .hero-desc > h2 {
    font-size: 70px;
  }
}
#hero-slider-div .flex-control-nav {
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
}
@media only screen and (min-width: 992px) {
  #hero-slider-div .flex-control-nav {
    bottom: 5px;
    left: 40px;
  }
}
#hero-slider-div .flex-control-paging li {
  margin:0;
  padding:0 6px;
}
#hero-slider-div .flex-control-paging li a {
  background: #a7a9ac;
  border-color: #a7a9ac;

}
#hero-slider-div .flex-control-paging li a.flex-active, #hero-slider-div .flex-control-paging li a:hover{
  background: #fff;
  border-color: #a7a9ac;
}
#hero-slider-div aside{
  margin-top:25px;
}
#hero-slider-div aside:last-child{
  margin-bottom: 35px;
}
#hero-slider-div a:hover, #hero-slider-div a:active, #hero-slider-div a:visited{
  text-decoration: none;
}

#hero-slider-div aside h3{
  color:#ffffff;
}
#hero-slider-div  .hero-callout-desc{
    width:100%;
}
#hero-slider-div .hero-callout-img, #hero-slider-div  .hero-callout-img + .hero-callout-desc{
  float:left;
  width: 64%;
}
#hero-slider-div .hero-callout-img{
  padding-right: 15px;
  text-align: center;
  width: 26%;
  max-width: 100px
}
#hero-slider-div .hero-callout-img img{
  width: auto !important; /* !important is used to override the 100% property, to avoid streching*/
  display: inline;
  max-height: 100px;
}
#hero-slider-div .hero-callout-desc h3{
  font-size: .81rem;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 3px;
}
#hero-slider-div .hero-callout-desc p{
  font-size: .93rem;
  line-height: 1.33;
  margin-top: 0;
  margin-bottom: 6px;
}

#hero-slider-div .btn-read-more{
  border:0;
  border-radius: 2px;
  padding:2px 15px;
  background: #18235a;
  color: #f8971d;
  text-transform: uppercase;
  outline: none;
  cursor: pointer;
  display:inline;
}
#hero-slider-div a.btn-read-more {
  padding: 15px 50px;
  float: left;
  font-size: 24px;
  border-radius: 5px;
  text-transform: none;
}
#hero-slider-div .hero-img{
    max-height: 300px;
    overflow:hidden;
}

#hero-slider-div .hero-img img{
  display: none;
  height:0 !important;
}
#hero-slider-div .flex-viewport{
  margin-bottom: 10px;
}
#hero-slider-div .hero-desc .hero-callouts{
  margin-top:14px;
  position: relative;
  float:left;
  clear: both;
  width: 100%;
}
#hero-slider-div .hero-callouts > aside:first-child:before{
  content: '';
  width: 100%;
  position: absolute;
  top:0;
  left:0;
  border-top:1px solid hsla(0, 100%, 100%, 0.5);
}
.scEnabledChrome #hero-slider-div .slides > li {
    display:block !important;
    width:100%;
}
@media only screen and (max-width: 899px) {
    #hero-slider-div .slides > li {
        display:block !important;
    }
    #hero-slider-div .hero-img{
        background-image:none !important;
    }
    #hero-slider-div .hero-img img{
      display: block;
      height:auto !important;
    }
    #hero-slider-div .flex-direction-nav {
        display:none;
    }
}
@media only screen and (min-width: 767px) {
    #hero-slider-div {
        margin-bottom: 40px;
    }

    #hero-slider-div h2 {
        font-size: 1.11rem;
        line-height: 1.36;
    }

    #hero-slider-div .slides > li {
        overflow: hidden;       
    }
  #hero-slider-div .hero-desc aside{
    padding: 20px 20px 5px;
    margin-top:12px;
    margin-bottom:20px;
  }
  #hero-slider-div aside:nth-of-type(1){
    padding-left: 0;
  }
  #hero-slider-div aside:nth-of-type(2){
    border-left:1px dotted hsla(0, 100%, 100%, 1);
    padding-right: 0;
  }
}
@media only screen and (min-width: 900px) {
  #hero-slider-div .hero-img, #hero-slider-div .hero-desc{
    position:relative;
    background-size: cover;
    
  }
  #hero-slider-div .hero-img{
      max-height:none;
  }
  #hero-slider-div .hero-img:after{
    content: '';
    position: absolute;
    right: 50px;
    border-bottom: black;
    height: 230px;
    width: 70px;
    background: hsla(352, 74%, 28%, 0.7);
    transform: skewX(-25deg);
    -webkit-transform: skewX(-25deg);
    -ms-transform: skewX(-25deg);
    -moz-transform: skewX(-25deg);
    top: 0;
  }
  #hero-slider-div  .hero-img + .hero-desc:before{
    content: '';
    position: absolute;
    border-top: 502px solid transparent;
    border-right: 230px solid #ab1a2d;
    left: -229px;
    top:0;
    height: 100%;
  }
  #hero-slider-div  .hero-img + .hero-desc:after{
    content: '';
    position: absolute;
    height: 556px;
    width: 20px;
    background: hsla(352, 74%, 28%, 0.7);
    transform: rotate(25deg);
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
    -moz-transform: rotate(25deg);
    left: -132px;
    top: -30px;
  }
  
  #hero-slider-div .flex-viewport{
    margin-bottom: 0;
    overflow:hidden !important;
  }
}

@media only screen and (min-width: 1517px){
  #hero-slider-div{
    max-height: 456px;
  }
  #hero-slider-div h2{
    font-size: 1.31rem;
    line-height: 1.36;
  }
  #hero-slider-div p{
    font-size: 25px;
    margin: 5px 0 30px;
  }
}

/*Theme CSS for Flex-slider*/
/*Gray*/
#hero-slider-div .slides > .theme-gray{
  background: #666666;
}
#hero-slider-div .theme-gray .hero-desc:before{
  border-right-color: #666666;
}
#hero-slider-div .theme-gray .hero-desc:after{
  background:hsla(0, 0%, 11%, 0.7);
}
#hero-slider-div .theme-gray .hero-img:after{
  background:hsla(0, 0%, 11%, 0.7);
}
#hero-slider-div .theme-gray .btn-read-more{
  color: #666666;
}

/*Dark Blue*/
#hero-slider-div .slides > .theme-dark-blue{
  background: #021A32;
}
#hero-slider-div .theme-dark-blue .hero-desc:before{
  border-right-color: #021A32;
}
#hero-slider-div .theme-dark-blue .hero-desc:after{
  background:hsla(210, 91%, 4%, 0.9);
}
#hero-slider-div .theme-dark-blue .hero-img:after{
  background:hsla(210, 91%, 4%, 0.7);
}
#hero-slider-div .theme-dark-blue .btn-read-more{
  color: #021A32;
}

/*Medium Blue*/
#hero-slider-div .slides > .theme-medium-blue{
  background: #0095D3;
}
#hero-slider-div .theme-medium-blue .hero-desc:before{
  border-right-color: #0095D3;
}
#hero-slider-div .theme-medium-blue .hero-desc:after{
  background:hsla(198, 100%, 23%, 0.7);
}
#hero-slider-div .theme-medium-blue .hero-img:after{
  background:hsla(198, 100%, 23%, 0.7);
}
#hero-slider-div .theme-medium-blue .btn-read-more{
  color: #0095D3;
}

/*Blue*/
#hero-slider-div .slides > .theme-blue{
  background: #035797;
}
#hero-slider-div .theme-blue .hero-desc:before{
  border-right-color: #035797;
}
#hero-slider-div .theme-blue .hero-desc:after{
  background:hsla(206, 96%, 18%, 0.7);
}
#hero-slider-div .theme-blue .hero-img:after{
  background:hsla(206, 96%, 18%, 0.7);
}
#hero-slider-div .theme-blue .btn-read-more{
  color: #035797;
}

/*Teal*/
#hero-slider-div .slides > .theme-teal{
  background: #007698;
}
#hero-slider-div .theme-teal .hero-desc:before{
  border-right-color: #007698;
}
#hero-slider-div .theme-teal .hero-desc:after{
  background:hsla(194, 100%, 16%, 0.7);
}
#hero-slider-div .theme-teal .hero-img:after{
  background:hsla(194, 100%, 16%, 0.7);
}
#hero-slider-div .theme-teal .btn-read-more{
  color: #007698;
}

/*Green*/
#hero-slider-div .slides > .theme-green{
  background: #8DC63F;
}
#hero-slider-div .theme-green .hero-desc:before{
  border-right-color: #8DC63F;
}
#hero-slider-div .theme-green .hero-desc:after{
  background:hsla(85, 51%, 39%, 0.7);
}
#hero-slider-div .theme-green .hero-img:after{
  background:hsla(85, 51%, 39%, 0.7);
}
#hero-slider-div .theme-green .btn-read-more{
  color: #8DC63F;
}

/*Orange*/
#hero-slider-div .slides > .theme-orange{
  background: #DF7D1C;
}
#hero-slider-div .theme-orange .hero-desc:before{
  border-right-color: #DF7D1C;
}
#hero-slider-div .theme-orange .hero-desc:after{
  background:hsla(30, 76%, 40%, 0.7);
}
#hero-slider-div .theme-orange .hero-img:after{
  background:hsla(30, 76%, 40%, 0.7);
}
#hero-slider-div .theme-orange .btn-read-more{
  color: #DF7D1C;
}

/*White*/
#hero-slider-div .slides > .theme-white{
  background: #fff;
  color: #002d55;
}
#hero-slider-div .theme-white .hero-desc:before{
  border-right-color: #fff;
}
#hero-slider-div .theme-white .hero-desc:after{
  background:hsla(0, 0%, 100%, 0.7);
}
#hero-slider-div .theme-white .hero-img:after{
  background:hsla(0, 0%, 100%, 0.7);
}
#hero-slider-div .theme-white .btn-read-more{
  color: #f8971d;
  background: #18235a;
}


/*Tiles for Contact Us and Work with AGS*/
.home-callouts{
  background:#eeeeee;
  padding-bottom: 30px;
  clear: both;
}
.tiles{
  display: flex;
  margin:18px 0 0;
}
.tiles > div{
  background:#ffffff;
  border-radius: 0 4px 4px 0;
  padding:15px;
}
.tiles figure{
  text-align: center;
  flex-direction: column;
  background:#666666;
  border-radius: 4px 0 0 4px;
  min-height: 100px;
  position: relative;
}
.tiles figure img{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
.tiles h3{
  text-transform: uppercase;
  margin:0 0 5px;
  font-size: .93rem;
  color:#8cc53f;
}
.tiles.work-at h3{
  color:#df7d1b;
}
.tiles p{
  margin:0;
  font-size: .68rem;
  line-height: 1.39;
}

@media only screen and (min-width: 767px) {
  .home-callouts{
    padding-bottom: 80px;
  }
  .tiles h3{
    font-size: 1.31rem;
  }
  .tiles p{
    font-size: .81rem;
  }
  .tiles figure{
    min-height: 160px;
  }
}


/*Share and Breadcrumb*/
div[itemscope]{
  margin: 5px 0;
}
#share {
    text-align:left;
}
@media only screen and (min-width: 767px){
  div[itemscope]{
    width: 75%;
    float: left;
  }
  #share{
    margin: 5px 0;
  }
}
@media only screen and (max-width: 480px){
  #share{
    padding-top: 10px !important;
  }
}

/**Pagination CSS**/
.pagination li, .pagination li a{
    font-size: 1rem;
}
.pagination li a {
    color:#021a32;
    text-decoration: underline;
    font-weight:normal;
}


.error-page {
    margin: 40px 0;
}
.error-page h1 {
    text-align: left !important;
    font-size: 28px;
    color: #ab192e;
    font-weight: 300;
    margin-bottom: 40px;
}

.error-page p{font-size: 14px;}

@media only screen and (max-width: 860px) {
    .error-page .dual-column-content > .columns{
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media only screen and (min-width: 40.0625em) {
  .error-page .dual-column-content > .columns:first-child {
    border-right: 1px solid #d3d3d3;
    padding-right: 2.5rem;
  }
}

@media only screen and (min-width: 40.0625em) {
  .error-page .dual-column-content > .columns:last-child {
    padding-left: 2.5rem;
  }
}

.error-page .dual-column-content > .columns:first-child p{
    font-size: 18px;
}

.error-page .dual-column-content > .columns:last-child .medium-9, 
.error-page-search > .columns, .error-page .embed-video-outer  {
    width: 100%;
}

.error-page .embed-video-outer {
    margin-bottom: 25px;
}

/* reset cols to 12 grid */
@media only screen and (min-width: 40.063em) {
    .error-page .large-7, .error-page .medium-7 {
        width: 58.33333% !important;
    }
}
@media only screen and (min-width: 40.063em) {
    .error-page .large-5, .error-page .medium-5 {
        width: 41.66667% !important;
    }
}

.error-page .medium-9.contract-abstract {
    width: 100%;
}


.error-page-search {
    margin: 35px 0;

}
.error-page-search p {
    float: none;
    color: #4D4F53;
    font-weight: 700;
    font-size: 18px;
    text-align:left;
}
.error-page-search input[type="search"],
.error-page-search input[type="text"] {
    background: #fff;
    color: #4D4F53;
    font-size: 15px;
    padding: 1rem;
    height: auto;
    width: 84%;
    border: 1px solid #dadada;
}

@media (max-width:860px){
    .error-page-search input[type="search"],
    .error-page-search input[type="text"]{
        width: 73%;
    }
}

.error-page-search::-webkit-input-placeholder {
    color: #9A9B9C
}
.error-page-search:-moz-placeholder {
    color: #9A9B9C
}
.error-page-search::-moz-placeholder {
    color: #9A9B9C
}
.error-page-search:-ms-input-placeholder {
    color: #9A9B9C
}
.error-page-search-fields-container {
    position: relative;
}
.error-page-search-fields-container input[type="image"],
.error-page-search-fields-container input[type="search"],
.error-page-search-fields-container input[type="text"]{
    float: left;
}
.error-page-search-fields-container input[type="image"] {
    margin: 12px 0 0 15px;
    width: 25px;
}

.error-page .search-results-listing{
    padding: 0;
    margin: 0 0 40px;
    clear:both; 
}
.error-page .search-results-listing p{color: #545454; font-size: 14px !important;}
.error-page .search-results-listing h2 {
    text-align: left !important;
    font-size: 14px;
    margin: 0 !important;
    font-weight: 300;
}

.error-page .search-result-details {
    margin-bottom: 25px;
}

.error-page .search-results-listing h2 a {
    text-decoration: underline !important;
    font-weight: 300 !important;
}
.error-page .search-results-listing b{
    color: #f8971d;
    font-weight: 300;
}
.error-page .search-results-listing h2:after {
    display: none !important;
}
.error-page .search-results-listing .read-more {
  color: #545454 !important;
  text-decoration: underline;
  font-weight: 700;
}

/*AGS talent acquisition solutions*/
.ags-talent-acquisition {
  position: relative;
  background-color: #f6f6f6;
  padding-top: 40px;
  padding-bottom: 50px;
}

.ags-talent-acquisition h2 {
  color: #f8971d;
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .ags-talent-acquisition h2 {
    color: #f8971d;
    font-size: 22px;
    font-weight: 700;
  }
}
.ags-talent-acquisition p {
  font-size: 18px;
  font-weight: 400;
  color: #4d4f53;
  margin-bottom: 40px;
  padding: 0 15px;
}

@media screen and (min-width: 768px) {
  .ags-talent-acquisition p {
    padding: 0 60px;
  }
}
.ags-talent-acquisition .col-3.first,
.ags-talent-acquisition .col-3.third {
  text-align: center;
}
.ags-talent-acquisition .col-3 > div {
  position: static;
  display: block;
  text-align: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .ags-talent-acquisition .col-3 > div {
    width: 225px;
  }
}
@media screen and (min-width: 768px) {
  .ags-talent-acquisition .col-3.first > div,
  .ags-talent-acquisition .col-3.third > div {
    display: inline-block;
  }
}
.ags-talent-acquisition .col-3.second div:first-child {
  margin: 0 auto 20px;
}
.ags-talent-acquisition .image-placeholder {
  margin-bottom: 20px;
}
.ags-talent-acquisition .image-placeholder:before {
  background-image: linear-gradient(to right, #9a9b9c 55%, rgba(255, 255, 255, 0) 0%);
  background-position: top;
  background-size: 13px 1px;
  background-repeat: repeat-x;
  padding: 10px;
  content: "";
  position: absolute;
  top: 32%;
  right: 20%;
  left: 20%;
  /*border-bottom: 1px dashed #9a9b9c;*/
}
@media screen and (max-width: 767px) {
  .ags-talent-acquisition .image-placeholder:before {
    display: none;
  }
}
.ags-talent-acquisition .image-placeholder div:first-child {
  position: relative;
  background-color: #f6f6f6;
  z-index: 9999;
}
.ags-talent-acquisition .image-placeholder div:first-child:hover img {
  padding: 0;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 10px #f9f3ce;
  opacity: 0.35;
}
.ags-talent-acquisition .image-placeholder div:first-child .hover {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 150px;
  border-radius: 50%;
  opacity: 0;
  transition: .2s ease-in-out;
  transform: translate(-50%, -50%);
}
.ags-talent-acquisition .image-placeholder div:first-child:hover .hover {
  opacity: 1;
}
.ags-talent-acquisition .image-placeholder img {
  position: relative;
  width: 150px;
  padding: 0 15px;
  background-color: #f6f6f6;
  opacity: 1;
  -webkit-transition: .2s;
  -moz-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
  z-index: 2;

}
.ags-talent-acquisition .content-placeholder h3 a {
  color: #001436;
  font-weight: 700;
  font-size: 18px;
}
.ags-talent-acquisition .content-placeholder h3 a:hover {
  text-decoration: none;
}
.ags-talent-acquisition .content-placeholder p {
  font-size: 18px;
  padding: 0;
}
/*3 column structure*/
.col-container {
  position: relative;
  float: left;
  width: 100%;
}
.col-3 {
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 767px) {
  .col-3 {
    float: left;
    width: 33.3%;
  }
}
/* AGS services */
.ags-services {
  padding: 60px 0;
}
.ags-services .image-placeholder {
  z-index: 1;
}
.ags-services .content {
  position: relative;
  margin-top: -46px;
  padding-bottom: 35px;
  z-index: 2;
}
.ags-services .content-heading {
  text-align: center;
  color: #fff;
  padding: 10px;
}
.ags-services .content-heading h2 {
  font-size: 22px;
  color: #fff;
  text-transform: uppercase;
  margin: 0;
}
.ags-services .content-body {
  padding: 15px;
}
.ags-services .content-body ul {
  list-style: none;
  margin: 0;
}
.ags-services .content-body ul li {
  position: relative;
  font-size: 16px;
  padding-left: 20px;
  margin-bottom: 5px;
}
.ags-services .content-body ul li:before {
  content: "\25b6";
  position: absolute;
  left: 0;
}
.ags-services .content-body a {
  position: absolute; 
  right: 15px;
  bottom: 10px;
  font-size: 16px;
  color: #fff;
  border: none;
  background: transparent;
}

/* theme color */
.ags-services .theme-orange {
  background: rgba(248, 151, 29, .5);
  color: #fff;
}
.ags-services .theme-blue {
  background: rgba(3, 87, 151, .5);
  color: #fff;
}
.ags-services .theme-green {
  background: rgba(141, 198, 63, .5);
  color: #fff;
}
.ags-services .theme-orange .content-heading {
  background-color: #f8971d;
}
.ags-services .theme-blue .content-heading {
  background-color: #035797;
}
.ags-services .theme-green .content-heading {
  background-color: #8dc63f;
}

/* Styles for Dec 2017 Homepage refresh */
.home .row.generic-content-rtf, .home .mosaic, .home .ags-talent-acquisition .row, .home .ags-services .row {
    max-width: 1280px
}

.home .generic-content-rtf p:last-of-type {
    margin-bottom: 90px;
}



@media only screen and (max-width: 1200px) {
    #hero-slider-div .hero-desc > h2  {
        font-size: 60px;
    }
}
@media only screen and (max-width: 899px) {
    #hero-slider-div .hero-desc > h2  {
        font-size: 40px;
    }

    #hero-slider-div p {
        font-size: 20px;
    }

    #hero-slider-div .slides li {
        height: 565px;
    }

    #hero-slider-div .flex-control-nav {
        bottom: 10px;
    }
   
    #hero-slider-div a.btn-read-more {
        font-size: 20px;
        padding: 15px 25px;
   }

    #hero-slider-div {
        min-height:565px;
    }
}

@media only screen and (max-width: 420px) {
    #hero-slider-div .hero-desc > h2  {
        font-size: 38px;
    }

    #hero-slider-div p {
        font-size: 18px;
    }

    #hero-slider-div .slides li {
        height: 500px;
    }

    #hero-slider-div .flex-control-nav {
        bottom: 10px;
    }
   
    #hero-slider-div a.btn-read-more {
        font-size: 20px;
        padding: 15px 25px;
   }

     #hero-slider-div {
        min-height: auto;
    }
}
