@charset "UTF-8";
/* --- Grid Sizing --- */
/* --- Breakpoints --- */
/* --- Fonts --- */
/* --- Colors --- */
@import url("//hello.myfonts.net/count/313b7d");
* {
  margin: 0;
  padding: 0;
  border: 0; }

/* --- Body Styles --- */
.wrapper {
  margin: 0 auto;
  /* --- Form Styles --- */ }
  .wrapper h1 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: 2.4em; }
    .wrapper h1 a {
      text-decoration: none; }
      .wrapper h1 a:hover {
        text-decoration: underline; }
  .wrapper h2 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: 2em; }
    .wrapper h2 a {
      text-decoration: none; }
      .wrapper h2 a:hover {
        text-decoration: underline; }
  .wrapper h3 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: 1.25em; }
    .wrapper h3 a {
      text-decoration: none; }
      .wrapper h3 a:hover {
        text-decoration: underline; }
  .wrapper h4 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: 1.125em; }
    .wrapper h4 a {
      text-decoration: none; }
      .wrapper h4 a:hover {
        text-decoration: underline; }
  .wrapper h5 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: 1em; }
    .wrapper h5 a {
      text-decoration: none; }
      .wrapper h5 a:hover {
        text-decoration: underline; }
  .wrapper h6 {
    margin-bottom: .9em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.2;
    font-weight: normal;
    font-size: .9em; }
    .wrapper h6 a {
      text-decoration: none; }
      .wrapper h6 a:hover {
        text-decoration: underline; }
  .wrapper p {
    margin-bottom: 2em; }
    .wrapper p.intro {
      margin-bottom: 1.75em;
      font-size: 1.4em;
      line-height: 1.7;
      font-family: "HelveticaNeueLTStd-Lt", Helvetica, Arial, sans-serif; }
    .wrapper p.caption {
      position: relative;
      z-index: 1;
      margin-top: -2.8em;
      padding: .65em 1em;
      font-size: .9em;
      font-family: "HelveticaNeueLTStd-LtIt", Helvetica, Arial, sans-serif;
      color: #FFF;
      background: #333;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; }
  .wrapper ul {
    margin-bottom: 2em;
    padding-left: 2em; }
  .wrapper hr {
    margin: 2em 0;
    border-bottom: 1px solid #E5E5E5; }
  .wrapper strong {
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif; }
  .wrapper img {
    max-width: 100%; }
  .wrapper .page-image {
    margin-bottom: 2em; }
  .wrapper blockquote {
    margin-bottom: 2em;
    font-size: 1.5em;
    line-height: 1.5;
    font-style: italic; }
  .wrapper .date-group, .wrapper .check-group {
    margin-bottom: 1em; }
  .wrapper input, .wrapper select, .wrapper textarea {
    display: inline-block;
    margin-bottom: 1em;
    padding: .5em;
    font-size: 14px;
    font-family: "HelveticaNeueLTStd-Lt", Helvetica, Arial, sans-serif;
    line-height: 1.4;
    vertical-align: middle;
    background: #FFF;
    border: 1px solid #cccccc;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  .wrapper select {
    padding: 0;
    height: 2.5em; }
  .wrapper label {
    display: block;
    font-weight: 200;
    margin-bottom: .4em; }
  .wrapper input[type="checkbox"], .wrapper input[type="radio"] {
    position: relative;
    top: 5px; }
    .wrapper input[type="checkbox"]:first-child, .wrapper input[type="radio"]:first-child {
      margin-left: 0; }
  .wrapper input[type="file"] {
    padding: 0 !important;
    border: none; }

/* --- Wrap video and Preserve Ratio --- */
.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* --- Overlay --- */
#overlay {
  display: none;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #FFF;
  background: rgba(255, 255, 255, 0.87); }

#overlay-close {
  display: none;
  position: fixed;
  z-index: 102;
  top: 20px;
  right: 20px;
  font-size: 1.4em;
  color: #000;
  cursor: pointer; }

#overlay-image {
  position: fixed;
  z-index: 101; }

#overlay-content {
  position: fixed;
  z-index: 101;
  top: 200%;
  left: 50%;
  width: 998px; }

/* --- Error Reporting --- */
.error {
  font-size: 1.1em;
  font-weight: bold;
  color: #F00; }

/* --- Pagination Styles --- */
.pagination {
  float: left;
  width: 100%;
  text-align: center; }

.pagination a {
  margin: 0 3px;
  font-size: 1.2em; }

.pagination a.selected {
  font-weight: bold; }

/* --- Buttons and Links --- */
a, a:active, a:visited {
  color: #DA291C;
  text-decoration: underline; }
  a:hover, a:active:hover, a:visited:hover {
    text-decoration: none; }

button, .button {
  display: inline-block;
  height: 45px;
  padding: 0 22px;
  line-height: 45px;
  color: #FFF !important;
  text-decoration: none;
  font-size: .9em;
  font-family: "CopperplateGothicLTPro-31AB", Georgia, serif;
  text-transform: uppercase;
  cursor: pointer;
  background: #DA291C url(../images/button-bg.png) repeat-x 0 0;
  border-radius: 22px;
  -moz-border-radius: 22px;
  -webkit-border-radius: 22px;
  -o-border-radius: 22px;
  -ms-border-radius: 22px;
  background-clip: padding-box;
  -moz-background-clip: padding-box;
  -webkit-background-clip: padding-box;
  -o-background-clip: padding-box;
  -ms-background-clip: padding-box; }
  button.small, .button.small {
    height: 40px;
    line-height: 40px;
    font-size: .9em;
    text-transform: lowercase; }
  button img, .button img {
    margin-left: .5em; }
  button:hover, .button:hover {
    background-image: none; }
  @media only screen and (max-width: 568px) {
    button span, .button span {
      display: none; } }

/* --- Miscellaneous --- */
#recaptcha_widget_div {
  margin-bottom: 10px; }

a img {
  border: none; }

.separator {
  margin: 2em 0;
  border-bottom: 1px solid #E5E5E5; }

img {
  max-width: 100%; }

/* --- Grid Structure --- */
.clearfix {
  *zoom: 1; }

.clearfix:before,
.clearfix:after {
  display: table;
  content: "";
  line-height: 0; }

.clearfix:after {
  clear: both; }

.row {
  margin-left: -10px;
  *zoom: 1; }
  @media only screen and (max-width: 568px) {
    .row {
      margin-left: 0; } }

.row:before,
.row:after {
  display: table;
  content: "";
  line-height: 0; }

.row:after {
  clear: both; }

[class*="span"] {
  float: left;
  min-height: 1px;
  margin-left: 10px; }

[class*="span"].border-left {
  margin-left: 9px;
  border-left: 1px solid #E5E5E5; }

[class*="span"].border-right {
  margin-left: 9px;
  border-right: 1px solid #E5E5E5; }

[class*="span"].right {
  text-align: right; }

.span1 {
  width: 32px; }
  @media only screen and (max-width: 1100px) {
    .span1 {
      width: 19px; } }

.offset1 {
  margin-left: 52px; }
  @media only screen and (max-width: 1100px) {
    .offset1 {
      margin-left: 39px; } }
  .offset1.border-left, .offset1.border-right {
    margin-left: 51px; }
    @media only screen and (max-width: 1100px) {
      .offset1.border-left, .offset1.border-right {
        margin-left: 38px; } }

.inset-l1 {
  padding-left: 42px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l1 {
      padding-left: 29px !important; } }

.inset-r1 {
  padding-right: 42px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r1 {
      padding-right: 29px !important; } }

.span2 {
  width: 74px; }
  @media only screen and (max-width: 1100px) {
    .span2 {
      width: 48px; } }

.offset2 {
  margin-left: 94px; }
  @media only screen and (max-width: 1100px) {
    .offset2 {
      margin-left: 68px; } }
  .offset2.border-left, .offset2.border-right {
    margin-left: 93px; }
    @media only screen and (max-width: 1100px) {
      .offset2.border-left, .offset2.border-right {
        margin-left: 67px; } }

.inset-l2 {
  padding-left: 84px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l2 {
      padding-left: 58px !important; } }

.inset-r2 {
  padding-right: 84px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r2 {
      padding-right: 58px !important; } }

.span3 {
  width: 116px; }
  @media only screen and (max-width: 1100px) {
    .span3 {
      width: 77px; } }

.offset3 {
  margin-left: 136px; }
  @media only screen and (max-width: 1100px) {
    .offset3 {
      margin-left: 97px; } }
  .offset3.border-left, .offset3.border-right {
    margin-left: 135px; }
    @media only screen and (max-width: 1100px) {
      .offset3.border-left, .offset3.border-right {
        margin-left: 96px; } }

.inset-l3 {
  padding-left: 126px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l3 {
      padding-left: 87px !important; } }

.inset-r3 {
  padding-right: 126px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r3 {
      padding-right: 87px !important; } }

.span4 {
  width: 158px; }
  @media only screen and (max-width: 1100px) {
    .span4 {
      width: 106px; } }

.offset4 {
  margin-left: 178px; }
  @media only screen and (max-width: 1100px) {
    .offset4 {
      margin-left: 126px; } }
  .offset4.border-left, .offset4.border-right {
    margin-left: 177px; }
    @media only screen and (max-width: 1100px) {
      .offset4.border-left, .offset4.border-right {
        margin-left: 125px; } }

.inset-l4 {
  padding-left: 168px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l4 {
      padding-left: 116px !important; } }

.inset-r4 {
  padding-right: 168px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r4 {
      padding-right: 116px !important; } }

.span5 {
  width: 200px; }
  @media only screen and (max-width: 1100px) {
    .span5 {
      width: 135px; } }

.offset5 {
  margin-left: 220px; }
  @media only screen and (max-width: 1100px) {
    .offset5 {
      margin-left: 155px; } }
  .offset5.border-left, .offset5.border-right {
    margin-left: 219px; }
    @media only screen and (max-width: 1100px) {
      .offset5.border-left, .offset5.border-right {
        margin-left: 154px; } }

.inset-l5 {
  padding-left: 210px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l5 {
      padding-left: 145px !important; } }

.inset-r5 {
  padding-right: 210px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r5 {
      padding-right: 145px !important; } }

.span6 {
  width: 242px; }
  @media only screen and (max-width: 1100px) {
    .span6 {
      width: 164px; } }

.offset6 {
  margin-left: 262px; }
  @media only screen and (max-width: 1100px) {
    .offset6 {
      margin-left: 184px; } }
  .offset6.border-left, .offset6.border-right {
    margin-left: 261px; }
    @media only screen and (max-width: 1100px) {
      .offset6.border-left, .offset6.border-right {
        margin-left: 183px; } }

.inset-l6 {
  padding-left: 252px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l6 {
      padding-left: 174px !important; } }

.inset-r6 {
  padding-right: 252px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r6 {
      padding-right: 174px !important; } }

.span7 {
  width: 284px; }
  @media only screen and (max-width: 1100px) {
    .span7 {
      width: 193px; } }

.offset7 {
  margin-left: 304px; }
  @media only screen and (max-width: 1100px) {
    .offset7 {
      margin-left: 213px; } }
  .offset7.border-left, .offset7.border-right {
    margin-left: 303px; }
    @media only screen and (max-width: 1100px) {
      .offset7.border-left, .offset7.border-right {
        margin-left: 212px; } }

.inset-l7 {
  padding-left: 294px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l7 {
      padding-left: 203px !important; } }

.inset-r7 {
  padding-right: 294px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r7 {
      padding-right: 203px !important; } }

.span8 {
  width: 326px; }
  @media only screen and (max-width: 1100px) {
    .span8 {
      width: 222px; } }

.offset8 {
  margin-left: 346px; }
  @media only screen and (max-width: 1100px) {
    .offset8 {
      margin-left: 242px; } }
  .offset8.border-left, .offset8.border-right {
    margin-left: 345px; }
    @media only screen and (max-width: 1100px) {
      .offset8.border-left, .offset8.border-right {
        margin-left: 241px; } }

.inset-l8 {
  padding-left: 336px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l8 {
      padding-left: 232px !important; } }

.inset-r8 {
  padding-right: 336px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r8 {
      padding-right: 232px !important; } }

.span9 {
  width: 368px; }
  @media only screen and (max-width: 1100px) {
    .span9 {
      width: 251px; } }

.offset9 {
  margin-left: 388px; }
  @media only screen and (max-width: 1100px) {
    .offset9 {
      margin-left: 271px; } }
  .offset9.border-left, .offset9.border-right {
    margin-left: 387px; }
    @media only screen and (max-width: 1100px) {
      .offset9.border-left, .offset9.border-right {
        margin-left: 270px; } }

.inset-l9 {
  padding-left: 378px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l9 {
      padding-left: 261px !important; } }

.inset-r9 {
  padding-right: 378px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r9 {
      padding-right: 261px !important; } }

.span10 {
  width: 410px; }
  @media only screen and (max-width: 1100px) {
    .span10 {
      width: 280px; } }

.offset10 {
  margin-left: 430px; }
  @media only screen and (max-width: 1100px) {
    .offset10 {
      margin-left: 300px; } }
  .offset10.border-left, .offset10.border-right {
    margin-left: 429px; }
    @media only screen and (max-width: 1100px) {
      .offset10.border-left, .offset10.border-right {
        margin-left: 299px; } }

.inset-l10 {
  padding-left: 420px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l10 {
      padding-left: 290px !important; } }

.inset-r10 {
  padding-right: 420px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r10 {
      padding-right: 290px !important; } }

.span11 {
  width: 452px; }
  @media only screen and (max-width: 1100px) {
    .span11 {
      width: 309px; } }

.offset11 {
  margin-left: 472px; }
  @media only screen and (max-width: 1100px) {
    .offset11 {
      margin-left: 329px; } }
  .offset11.border-left, .offset11.border-right {
    margin-left: 471px; }
    @media only screen and (max-width: 1100px) {
      .offset11.border-left, .offset11.border-right {
        margin-left: 328px; } }

.inset-l11 {
  padding-left: 462px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l11 {
      padding-left: 319px !important; } }

.inset-r11 {
  padding-right: 462px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r11 {
      padding-right: 319px !important; } }

.span12 {
  width: 494px; }
  @media only screen and (max-width: 1100px) {
    .span12 {
      width: 338px; } }

.offset12 {
  margin-left: 514px; }
  @media only screen and (max-width: 1100px) {
    .offset12 {
      margin-left: 358px; } }
  .offset12.border-left, .offset12.border-right {
    margin-left: 513px; }
    @media only screen and (max-width: 1100px) {
      .offset12.border-left, .offset12.border-right {
        margin-left: 357px; } }

.inset-l12 {
  padding-left: 504px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l12 {
      padding-left: 348px !important; } }

.inset-r12 {
  padding-right: 504px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r12 {
      padding-right: 348px !important; } }

.span13 {
  width: 536px; }
  @media only screen and (max-width: 1100px) {
    .span13 {
      width: 367px; } }

.offset13 {
  margin-left: 556px; }
  @media only screen and (max-width: 1100px) {
    .offset13 {
      margin-left: 387px; } }
  .offset13.border-left, .offset13.border-right {
    margin-left: 555px; }
    @media only screen and (max-width: 1100px) {
      .offset13.border-left, .offset13.border-right {
        margin-left: 386px; } }

.inset-l13 {
  padding-left: 546px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l13 {
      padding-left: 377px !important; } }

.inset-r13 {
  padding-right: 546px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r13 {
      padding-right: 377px !important; } }

.span14 {
  width: 578px; }
  @media only screen and (max-width: 1100px) {
    .span14 {
      width: 396px; } }

.offset14 {
  margin-left: 598px; }
  @media only screen and (max-width: 1100px) {
    .offset14 {
      margin-left: 416px; } }
  .offset14.border-left, .offset14.border-right {
    margin-left: 597px; }
    @media only screen and (max-width: 1100px) {
      .offset14.border-left, .offset14.border-right {
        margin-left: 415px; } }

.inset-l14 {
  padding-left: 588px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l14 {
      padding-left: 406px !important; } }

.inset-r14 {
  padding-right: 588px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r14 {
      padding-right: 406px !important; } }

.span15 {
  width: 620px; }
  @media only screen and (max-width: 1100px) {
    .span15 {
      width: 425px; } }

.offset15 {
  margin-left: 640px; }
  @media only screen and (max-width: 1100px) {
    .offset15 {
      margin-left: 445px; } }
  .offset15.border-left, .offset15.border-right {
    margin-left: 639px; }
    @media only screen and (max-width: 1100px) {
      .offset15.border-left, .offset15.border-right {
        margin-left: 444px; } }

.inset-l15 {
  padding-left: 630px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l15 {
      padding-left: 435px !important; } }

.inset-r15 {
  padding-right: 630px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r15 {
      padding-right: 435px !important; } }

.span16 {
  width: 662px; }
  @media only screen and (max-width: 1100px) {
    .span16 {
      width: 454px; } }

.offset16 {
  margin-left: 682px; }
  @media only screen and (max-width: 1100px) {
    .offset16 {
      margin-left: 474px; } }
  .offset16.border-left, .offset16.border-right {
    margin-left: 681px; }
    @media only screen and (max-width: 1100px) {
      .offset16.border-left, .offset16.border-right {
        margin-left: 473px; } }

.inset-l16 {
  padding-left: 672px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l16 {
      padding-left: 464px !important; } }

.inset-r16 {
  padding-right: 672px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r16 {
      padding-right: 464px !important; } }

.span17 {
  width: 704px; }
  @media only screen and (max-width: 1100px) {
    .span17 {
      width: 483px; } }

.offset17 {
  margin-left: 724px; }
  @media only screen and (max-width: 1100px) {
    .offset17 {
      margin-left: 503px; } }
  .offset17.border-left, .offset17.border-right {
    margin-left: 723px; }
    @media only screen and (max-width: 1100px) {
      .offset17.border-left, .offset17.border-right {
        margin-left: 502px; } }

.inset-l17 {
  padding-left: 714px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l17 {
      padding-left: 493px !important; } }

.inset-r17 {
  padding-right: 714px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r17 {
      padding-right: 493px !important; } }

.span18 {
  width: 746px; }
  @media only screen and (max-width: 1100px) {
    .span18 {
      width: 512px; } }

.offset18 {
  margin-left: 766px; }
  @media only screen and (max-width: 1100px) {
    .offset18 {
      margin-left: 532px; } }
  .offset18.border-left, .offset18.border-right {
    margin-left: 765px; }
    @media only screen and (max-width: 1100px) {
      .offset18.border-left, .offset18.border-right {
        margin-left: 531px; } }

.inset-l18 {
  padding-left: 756px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l18 {
      padding-left: 522px !important; } }

.inset-r18 {
  padding-right: 756px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r18 {
      padding-right: 522px !important; } }

.span19 {
  width: 788px; }
  @media only screen and (max-width: 1100px) {
    .span19 {
      width: 541px; } }

.offset19 {
  margin-left: 808px; }
  @media only screen and (max-width: 1100px) {
    .offset19 {
      margin-left: 561px; } }
  .offset19.border-left, .offset19.border-right {
    margin-left: 807px; }
    @media only screen and (max-width: 1100px) {
      .offset19.border-left, .offset19.border-right {
        margin-left: 560px; } }

.inset-l19 {
  padding-left: 798px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l19 {
      padding-left: 551px !important; } }

.inset-r19 {
  padding-right: 798px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r19 {
      padding-right: 551px !important; } }

.span20 {
  width: 830px; }
  @media only screen and (max-width: 1100px) {
    .span20 {
      width: 570px; } }

.offset20 {
  margin-left: 850px; }
  @media only screen and (max-width: 1100px) {
    .offset20 {
      margin-left: 590px; } }
  .offset20.border-left, .offset20.border-right {
    margin-left: 849px; }
    @media only screen and (max-width: 1100px) {
      .offset20.border-left, .offset20.border-right {
        margin-left: 589px; } }

.inset-l20 {
  padding-left: 840px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l20 {
      padding-left: 580px !important; } }

.inset-r20 {
  padding-right: 840px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r20 {
      padding-right: 580px !important; } }

.span21 {
  width: 872px; }
  @media only screen and (max-width: 1100px) {
    .span21 {
      width: 599px; } }

.offset21 {
  margin-left: 892px; }
  @media only screen and (max-width: 1100px) {
    .offset21 {
      margin-left: 619px; } }
  .offset21.border-left, .offset21.border-right {
    margin-left: 891px; }
    @media only screen and (max-width: 1100px) {
      .offset21.border-left, .offset21.border-right {
        margin-left: 618px; } }

.inset-l21 {
  padding-left: 882px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l21 {
      padding-left: 609px !important; } }

.inset-r21 {
  padding-right: 882px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r21 {
      padding-right: 609px !important; } }

.span22 {
  width: 914px; }
  @media only screen and (max-width: 1100px) {
    .span22 {
      width: 628px; } }

.offset22 {
  margin-left: 934px; }
  @media only screen and (max-width: 1100px) {
    .offset22 {
      margin-left: 648px; } }
  .offset22.border-left, .offset22.border-right {
    margin-left: 933px; }
    @media only screen and (max-width: 1100px) {
      .offset22.border-left, .offset22.border-right {
        margin-left: 647px; } }

.inset-l22 {
  padding-left: 924px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l22 {
      padding-left: 638px !important; } }

.inset-r22 {
  padding-right: 924px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r22 {
      padding-right: 638px !important; } }

.span23 {
  width: 956px; }
  @media only screen and (max-width: 1100px) {
    .span23 {
      width: 657px; } }

.offset23 {
  margin-left: 976px; }
  @media only screen and (max-width: 1100px) {
    .offset23 {
      margin-left: 677px; } }
  .offset23.border-left, .offset23.border-right {
    margin-left: 975px; }
    @media only screen and (max-width: 1100px) {
      .offset23.border-left, .offset23.border-right {
        margin-left: 676px; } }

.inset-l23 {
  padding-left: 966px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l23 {
      padding-left: 667px !important; } }

.inset-r23 {
  padding-right: 966px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r23 {
      padding-right: 667px !important; } }

.span24 {
  width: 998px; }
  @media only screen and (max-width: 1100px) {
    .span24 {
      width: 686px; } }

.offset24 {
  margin-left: 1018px; }
  @media only screen and (max-width: 1100px) {
    .offset24 {
      margin-left: 706px; } }
  .offset24.border-left, .offset24.border-right {
    margin-left: 1017px; }
    @media only screen and (max-width: 1100px) {
      .offset24.border-left, .offset24.border-right {
        margin-left: 705px; } }

.inset-l24 {
  padding-left: 1008px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-l24 {
      padding-left: 696px !important; } }

.inset-r24 {
  padding-right: 1008px !important; }
  @media only screen and (max-width: 1100px) {
    .inset-r24 {
      padding-right: 696px !important; } }

@media only screen and (max-width: 1100px) {
  .span-tablet1 {
    width: 19px !important; }

  .span-tablet2 {
    width: 48px !important; }

  .span-tablet3 {
    width: 77px !important; }

  .span-tablet4 {
    width: 106px !important; }

  .span-tablet5 {
    width: 135px !important; }

  .span-tablet6 {
    width: 164px !important; }

  .span-tablet7 {
    width: 193px !important; }

  .span-tablet8 {
    width: 222px !important; }

  .span-tablet9 {
    width: 251px !important; }

  .span-tablet10 {
    width: 280px !important; }

  .span-tablet11 {
    width: 309px !important; }

  .span-tablet12 {
    width: 338px !important; }

  .span-tablet13 {
    width: 367px !important; }

  .span-tablet14 {
    width: 396px !important; }

  .span-tablet15 {
    width: 425px !important; }

  .span-tablet16 {
    width: 454px !important; }

  .span-tablet17 {
    width: 483px !important; }

  .span-tablet18 {
    width: 512px !important; }

  .span-tablet19 {
    width: 541px !important; }

  .span-tablet20 {
    width: 570px !important; }

  .span-tablet21 {
    width: 599px !important; }

  .span-tablet22 {
    width: 628px !important; }

  .span-tablet23 {
    width: 657px !important; }

  .span-tablet24 {
    width: 686px !important; } }
@media only screen and (max-width: 568px) {
  [class*="span"] {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    [class*="span"][class*="inset"] {
      padding-left: 0 !important;
      padding-right: 0 !important; }
    [class*="span"].border-left, [class*="span"].border-right {
      border: none !important; } }
/**
 * @license
 * MyFonts Webfont Build ID 3226493, 2016-05-31T19:22:36-0400
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: CopperplateGothicLTPro-31AB by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/copperplate-gothic/pro-31-ab/
 * Copyright: Copyright &#x00A9; 2008 Linotype GmbH, www.linotype.com. All rights reserved. This font software may not be reproduced, modified, disclosed or transferred without the express written approval of Linotype GmbH. Copperplate Gothic This typeface is original 
 * 
 * Webfont: HelveticaNeueLTStd-BlkCn by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-97-black-condensed/
 * Copyright: Copyright &#x00A9; 1990, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-HvCn by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-87-heavy-condensed/
 * Copyright: Copyright &#x00A9; 1990, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-LtIt by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-46-light-italic/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-HvIt by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-86-heavy-italic/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-Hv by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-85-heavy/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-Lt by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-45-light/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-MdIt by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-66-medium-italic/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * Webfont: HelveticaNeueLTStd-Md by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neue-helvetica/helvetica-65-medium/
 * Copyright: Copyright &#x00A9; 1988, 1990, 1993, 2002 Adobe Systems Incorporated.  All Rights Reserved. &#x00A9; 1981, 2002 Heidelberger Druckmaschinen AG. All rights reserved.
 * 
 * 
 * License: http://www.myfonts.com/viewlicense?type=web&buildid=3226493
 * Licensed pageviews: 250,000
 * 
 * © 2016 MyFonts Inc
*/
/* @import must be at top of file, otherwise CSS will not work */
@font-face {
  font-family: 'CopperplateGothicLTPro-31AB';
  src: url("/css/fonts/313B7D_0_0.eot");
  src: url("/css/fonts/313B7D_0_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_0_0.woff2") format("woff2"), url("/css/fonts/313B7D_0_0.woff") format("woff"), url("/css/fonts/313B7D_0_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-BlkCn';
  src: url("/css/fonts/313B7D_1_0.eot");
  src: url("/css/fonts/313B7D_1_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_1_0.woff2") format("woff2"), url("/css/fonts/313B7D_1_0.woff") format("woff"), url("/css/fonts/313B7D_1_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-HvCn';
  src: url("/css/fonts/313B7D_2_0.eot");
  src: url("/css/fonts/313B7D_2_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_2_0.woff2") format("woff2"), url("/css/fonts/313B7D_2_0.woff") format("woff"), url("/css/fonts/313B7D_2_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-LtIt';
  src: url("/css/fonts/313B7D_3_0.eot");
  src: url("/css/fonts/313B7D_3_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_3_0.woff2") format("woff2"), url("/css/fonts/313B7D_3_0.woff") format("woff"), url("/css/fonts/313B7D_3_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-HvIt';
  src: url("/css/fonts/313B7D_4_0.eot");
  src: url("/css/fonts/313B7D_4_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_4_0.woff2") format("woff2"), url("/css/fonts/313B7D_4_0.woff") format("woff"), url("/css/fonts/313B7D_4_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-Hv';
  src: url("/css/fonts/313B7D_5_0.eot");
  src: url("/css/fonts/313B7D_5_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_5_0.woff2") format("woff2"), url("/css/fonts/313B7D_5_0.woff") format("woff"), url("/css/fonts/313B7D_5_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-Lt';
  src: url("/css/fonts/313B7D_6_0.eot");
  src: url("/css/fonts/313B7D_6_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_6_0.woff2") format("woff2"), url("/css/fonts/313B7D_6_0.woff") format("woff"), url("/css/fonts/313B7D_6_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-MdIt';
  src: url("/css/fonts/313B7D_7_0.eot");
  src: url("/css/fonts/313B7D_7_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_7_0.woff2") format("woff2"), url("/css/fonts/313B7D_7_0.woff") format("woff"), url("/css/fonts/313B7D_7_0.ttf") format("truetype"); }
@font-face {
  font-family: 'HelveticaNeueLTStd-Md';
  src: url("/css/fonts/313B7D_8_0.eot");
  src: url("/css/fonts/313B7D_8_0.eot?#iefix") format("embedded-opentype"), url("/css/fonts/313B7D_8_0.woff2") format("woff2"), url("/css/fonts/313B7D_8_0.woff") format("woff"), url("/css/fonts/313B7D_8_0.ttf") format("truetype"); }
body {
  font-family: "HelveticaNeueLTStd-Md", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  background: #FAFAFA; }

#site {
  width: 100%;
  margin: 0 auto;
  padding-top: 130px;
  background: #FFF;
  overflow: hidden;
  box-shadow: 0 5px 15px 5px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 5px 15px 5px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 0 5px 15px 5px rgba(0, 0, 0, 0.05);
  -o-box-shadow: 0 5px 15px 5px rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 0 5px 15px 5px rgba(0, 0, 0, 0.05); }
  @media only screen and (max-width: 1100px) {
    #site {
      padding-top: 90px; } }
  @media only screen and (max-width: 568px) {
    #site {
      padding-top: 60px; } }

.wrapper {
  width: 998px;
  margin: 0 auto; }
  @media only screen and (max-width: 1100px) {
    .wrapper {
      width: 686px;
      font-size: 12px; } }
  @media only screen and (max-width: 568px) {
    .wrapper {
      width: 100%;
      padding: 0 2em;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box; } }

header {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%; }
  header .header-wrap {
    position: relative;
    width: 100%;
    height: 130px;
    margin: 0 auto;
    padding-top: 40px;
    background: #FFF;
    border-bottom: 1px solid #E5E5E5;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    header .header-wrap.scroll:after {
      position: absolute;
      z-index: 1;
      top: 100%;
      left: 0;
      width: 100%;
      height: 35px;
      background: transparent url(../images/header-shadow.png) repeat-x 0 0;
      content: ''; }
    @media only screen and (max-width: 1100px) {
      header .header-wrap {
        height: 90px;
        padding-top: 30px; } }
    @media only screen and (max-width: 568px) {
      header .header-wrap {
        height: 60px;
        padding-top: 12px; } }
  header .wrapper #logo {
    display: inline-block;
    width: 300px; }
    @media only screen and (max-width: 1100px) {
      header .wrapper #logo {
        width: 200px; } }
    @media only screen and (max-width: 568px) {
      header .wrapper #logo {
        width: 175px; } }
  header .wrapper nav {
    float: right;
    margin-top: .5em; }
    header .wrapper nav img {
      width: 16px; }
    header .wrapper nav ul {
      margin-bottom: 0;
      padding: 0;
      font-size: 1.15em;
      list-style-type: none;
      text-align: right;
      font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif; }
      header .wrapper nav ul li {
        display: inline-block;
        margin-left: 1em; }
        header .wrapper nav ul li.phone {
          font-family: "CopperplateGothicLTPro-31AB", Georgia, serif;
          font-size: .8em; }
      header .wrapper nav ul a, header .wrapper nav ul a:active, header .wrapper nav ul a:visited {
        color: #333;
        text-decoration: none;
        text-transform: lowercase;
        border-bottom: 2px solid transparent; }
        header .wrapper nav ul a.active, header .wrapper nav ul a:active.active, header .wrapper nav ul a:visited.active {
          border-color: #000; }
      header .wrapper nav ul.primary {
        margin-top: .3em;
        font-size: 1.15em;
        font-family: "CopperplateGothicLTPro-31AB", Georgia, serif; }
        header .wrapper nav ul.primary a {
          text-transform: uppercase;
          color: #DA291C;
          border-bottom: 3px solid transparent; }
          header .wrapper nav ul.primary a:hover, header .wrapper nav ul.primary a.active {
            border-color: #DA291C; }
        @media only screen and (max-width: 1100px) {
          header .wrapper nav ul.primary {
            font-size: 1em; } }
      @media only screen and (max-width: 1100px) {
        header .wrapper nav ul {
          font-size: 1em; } }
    @media only screen and (max-width: 1100px) {
      header .wrapper nav {
        margin-top: .2em; } }
    @media only screen and (max-width: 568px) {
      header .wrapper nav {
        position: fixed;
        z-index: 2;
        top: 60px;
        left: 0;
        width: 100%;
        display: none;
        margin: 0;
        padding: 1.5em 1.7em 4.5em 1.7em;
        font-size: 1.2em;
        background: #FFF;
        border-top: 1px solid #E5E5E5;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        header .wrapper nav.open {
          display: block; }
        header .wrapper nav ul {
          text-align: left; }
          header .wrapper nav ul li {
            margin: 0 .6em 0 0; }
            header .wrapper nav ul li.phone {
              position: absolute;
              bottom: 0;
              left: 0;
              display: block;
              width: 100%;
              padding: 1em 2em;
              border-top: 1px solid #E5E5E5;
              background: #DA291C; }
              header .wrapper nav ul li.phone a {
                display: block;
                color: #FFF; }
                header .wrapper nav ul li.phone a:after {
                  content: ' - Free Estimates!'; }
              header .wrapper nav ul li.phone img {
                display: none; }
          header .wrapper nav ul.primary {
            margin: 1em 0 0 0;
            font-size: 1.1em;
            line-height: 1.7; }
            header .wrapper nav ul.primary li {
              width: 100%; }
        header .wrapper nav:after {
          position: absolute;
          z-index: 1;
          top: 100%;
          left: 0;
          width: 100%;
          height: 35px;
          background: transparent url(../images/header-shadow.png) repeat-x 0 0;
          content: ''; } }
  header #mobile-menu {
    float: right;
    display: none;
    width: 21px;
    height: 16px;
    margin-top: 10px;
    background: transparent url(../images/menu.png) no-repeat 0 0;
    background-size: cover;
    cursor: pointer; }
    @media only screen and (max-width: 568px) {
      header #mobile-menu {
        display: inline-block; } }
  header #mobile-call {
    float: right;
    display: none;
    margin: 8px 1em 0 0; }
    header #mobile-call img {
      height: 20px; }
    @media only screen and (max-width: 568px) {
      header #mobile-call {
        display: inline-block; } }

/* --- Home Page --- */
#home-intro {
  padding: 3.5em 0; }
  #home-intro p:last-child {
    margin-bottom: 0; }
  @media only screen and (max-width: 568px) {
    #home-intro {
      padding: 2.5em 0; } }

#home-slideshow, #page-slideshow {
  position: relative;
  width: 100%;
  height: 0;
  text-align: center;
  color: #FFF;
  overflow: hidden; }
  #home-slideshow .slider, #page-slideshow .slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out; }
    #home-slideshow .slider .slide, #page-slideshow .slider .slide {
      position: relative;
      float: left;
      display: inline;
      color: #FFF; }
      #home-slideshow .slider .slide img, #page-slideshow .slider .slide img {
        width: 100%; }
      #home-slideshow .slider .slide:before, #page-slideshow .slider .slide:before {
        position: absolute;
        z-index: 1;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: transparent url(../images/slider-shadow.png) no-repeat bottom left;
        background-size: 100%;
        content: ''; }
        @media only screen and (max-width: 568px) {
          #home-slideshow .slider .slide:before, #page-slideshow .slider .slide:before {
            filter: alpha(opacity=50);
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
            -moz-opacity: 0.5;
            -khtml-opacity: 0.5;
            opacity: 0.5; } }
    #home-slideshow .slider.count1, #page-slideshow .slider.count1 {
      width: 100%; }
      #home-slideshow .slider.count1 .slide, #page-slideshow .slider.count1 .slide {
        width: 100%; }
    #home-slideshow .slider.count2, #page-slideshow .slider.count2 {
      width: 200%; }
      #home-slideshow .slider.count2 .slide, #page-slideshow .slider.count2 .slide {
        width: 50%; }
    #home-slideshow .slider.count3, #page-slideshow .slider.count3 {
      width: 300%; }
      #home-slideshow .slider.count3 .slide, #page-slideshow .slider.count3 .slide {
        width: 33.3333333333%; }
    #home-slideshow .slider.count4, #page-slideshow .slider.count4 {
      width: 400%; }
      #home-slideshow .slider.count4 .slide, #page-slideshow .slider.count4 .slide {
        width: 25%; }
    #home-slideshow .slider.count5, #page-slideshow .slider.count5 {
      width: 500%; }
      #home-slideshow .slider.count5 .slide, #page-slideshow .slider.count5 .slide {
        width: 20%; }
  #home-slideshow.position1 .slider, #page-slideshow.position1 .slider {
    left: 0%; }
  #home-slideshow.position2 .slider, #page-slideshow.position2 .slider {
    left: -100%; }
  #home-slideshow.position3 .slider, #page-slideshow.position3 .slider {
    left: -200%; }
  #home-slideshow.position4 .slider, #page-slideshow.position4 .slider {
    left: -300%; }
  #home-slideshow.position5 .slider, #page-slideshow.position5 .slider {
    left: -400%; }
  #home-slideshow .overlay, #page-slideshow .overlay {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
    line-height: 1.5; }
  #home-slideshow h1, #page-slideshow h1 {
    margin-bottom: .25em;
    color: #FFF;
    font-size: 3.25em;
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif; }
    @media only screen and (max-width: 568px) {
      #home-slideshow h1, #page-slideshow h1 {
        margin-bottom: .75em;
        font-size: 2.5em; } }
  #home-slideshow p, #page-slideshow p {
    margin-bottom: 2.5em;
    font-size: 1.2em; }
    @media only screen and (max-width: 568px) {
      #home-slideshow p, #page-slideshow p {
        display: none; } }
  #home-slideshow nav, #page-slideshow nav {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px; }
    @media only screen and (max-width: 568px) {
      #home-slideshow nav, #page-slideshow nav {
        display: none; } }
    #home-slideshow nav .slide-button, #page-slideshow nav .slide-button {
      position: relative;
      float: left;
      width: 40px;
      height: 40px;
      border: 2px solid #FFF;
      cursor: pointer;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      background-clip: padding-box;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box;
      filter: alpha(opacity=65);
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)";
      -moz-opacity: 0.65;
      -khtml-opacity: 0.65;
      opacity: 0.65;
      transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out; }
      #home-slideshow nav .slide-button:after, #page-slideshow nav .slide-button:after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 0;
        height: 0;
        margin: -10px 0 0 -9px;
        border-style: solid;
        border-width: 9px 13px 9px 0;
        border-color: transparent #FFF transparent transparent;
        content: ''; }
      #home-slideshow nav .slide-button.next, #page-slideshow nav .slide-button.next {
        float: right; }
        #home-slideshow nav .slide-button.next:after, #page-slideshow nav .slide-button.next:after {
          margin: -10px 0 0 -5px;
          border-width: 9px 0 9px 13px;
          border-color: transparent transparent transparent #FFF; }
      #home-slideshow nav .slide-button:hover, #page-slideshow nav .slide-button:hover {
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1; }

#home-slideshow {
  padding-bottom: 38.5%; }

#page-slideshow {
  padding-bottom: 66.7%; }
  #page-slideshow .wrapper {
    width: 90%; }
  #page-slideshow p {
    padding: 0 4em;
    margin-bottom: 4.5em;
    font-size: 1em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }

/* --- Home Featured --- */
#home-featured {
  position: relative;
  line-height: 0;
  font-size: 0;
  overflow: hidden; }
  #home-featured a {
    position: relative;
    display: inline-block;
    width: 50%;
    height: 0;
    padding-bottom: 29.25%;
    line-height: 1.7;
    font-size: 14px;
    color: #FFF;
    text-decoration: none; }
    #home-featured a:hover h2 {
      text-decoration: underline; }
    #home-featured a:hover .image {
      background-size: 105% 105%; }
    #home-featured a:before {
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 195px;
      background: transparent url(../images/home-featured-shadow.png) repeat-x 0 0;
      content: ''; }
    @media only screen and (max-width: 1100px) {
      #home-featured a {
        padding-bottom: 40%; }
        #home-featured a .image {
          background-size: cover !important; } }
    @media only screen and (max-width: 568px) {
      #home-featured a {
        width: 100%;
        padding-bottom: 50%; }
        #home-featured a .image {
          background-size: cover !important; } }
  #home-featured h2 {
    margin-bottom: .3em;
    color: #FFF;
    font-size: 3em;
    line-height: 1.1; }
    @media only screen and (max-width: 1100px) {
      #home-featured h2 {
        font-size: 2em; } }
  #home-featured p {
    margin-bottom: 0;
    font-size: 1.1em; }
    #home-featured p em {
      text-decoration: underline;
      font-style: normal; }
  #home-featured .inner {
    position: absolute;
    z-index: 2;
    bottom: 3em;
    left: 0;
    width: 100%;
    padding: 0 6em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
    @media only screen and (max-width: 1100px) {
      #home-featured .inner {
        padding: 0 4em; } }
  #home-featured .image {
    position: absolute;
    z-index: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    content: '';
    transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 568px) {
      #home-featured .image {
        right: 0;
        width: 100%; } }

/* --- Interior --- */
#interior .span16.inset-r1, #interior .span6 {
  padding: 3em 0; }
#interior #page-nav {
  width: 100%;
  padding: 1em 0;
  border-bottom: 1px solid #E5E5E5; }
  #interior #page-nav label {
    display: inline-block;
    margin: 0 1em 0 0;
    padding-right: 1em;
    font-size: 1.25em;
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif;
    border-right: 1px solid #E5E5E5; }
  #interior #page-nav ul {
    display: inline-block;
    margin: 0;
    padding: 0;
    list-style-type: none; }
    #interior #page-nav ul li {
      display: inline-block;
      margin-right: 1em; }
    #interior #page-nav ul a, #interior #page-nav ul a:active, #interior #page-nav ul a:visited {
      text-decoration: none;
      font-family: "HelveticaNeueLTStd-Lt", Helvetica, Arial, sans-serif;
      border-bottom: 2px solid transparent; }
      #interior #page-nav ul a.active, #interior #page-nav ul a:active.active, #interior #page-nav ul a:visited.active {
        color: #333;
        font-family: "HelveticaNeueLTStd-Md", Helvetica, Arial, sans-serif;
        border-color: #333; }
      #interior #page-nav ul a:hover, #interior #page-nav ul a:active:hover, #interior #page-nav ul a:visited:hover {
        color: #333;
        text-decoration: none; }
#interior aside {
  position: relative;
  min-height: 583px; }
  #interior aside .image {
    position: relative;
    z-index: 1;
    margin-bottom: 2em; }
  #interior aside h2 {
    margin-bottom: .7em;
    font-size: 2em;
    color: #DA291C; }
  #interior aside:before {
    position: absolute;
    z-index: 0;
    top: 0;
    left: -10px;
    width: 1000%;
    height: 100%;
    background: transparent url(../images/aside-gradient.png) no-repeat 0 0;
    content: ''; }
    @media only screen and (max-width: 568px) {
      #interior aside:before {
        left: -25px; } }
  @media only screen and (max-width: 568px) {
    #interior aside {
      left: -2em;
      padding-left: 2em !important;
      padding-right: 2em !important;
      overflow: hidden;
      box-sizing: content-box;
      -moz-box-sizing: content-box;
      -webkit-box-sizing: content-box;
      -o-box-sizing: content-box;
      -ms-box-sizing: content-box; } }
#interior .callout {
  position: relative;
  z-index: 1;
  margin-bottom: 2em;
  padding-bottom: 3em;
  border-bottom: 1px solid #E5E5E5; }
  #interior .callout p {
    margin-bottom: 1.5em; }
    #interior .callout p:last-child {
      margin-bottom: 0; }
  #interior .callout .image {
    margin-bottom: 10px; }
  #interior .callout strong {
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif;
    font-size: 1.1em;
    font-weight: normal;
    line-height: 1.3; }
  #interior .callout:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }

/* --- Staff --- */
#staff .member {
  margin-bottom: 3.25em;
  padding-bottom: 3em;
  border-bottom: 1px solid #E5E5E5; }
  #staff .member h2 {
    font-size: 1.3em;
    color: #DA291C;
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif; }
  #staff .member .span11 h2, #staff .member .span11 p {
    position: relative;
    left: 10px; }
    @media only screen and (max-width: 568px) {
      #staff .member .span11 h2, #staff .member .span11 p {
        left: 0; } }
  #staff .member p {
    font-size: .9em; }
    #staff .member p:last-child {
      margin-bottom: 0; }
  #staff .member:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }
  @media only screen and (max-width: 568px) {
    #staff .member img {
      margin-bottom: 1em; } }

/* --- Careers --- */
#careers-list {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #E5E5E5; }

/* --- Frequently Asked Questions --- */
#faqs .faq {
  padding: 3em 0 2em 0;
  border-top: 1px solid #E5E5E5; }
  #faqs .faq .span12 {
    position: relative;
    left: 10px; }
    #faqs .faq .span12 h2 {
      margin-bottom: .4em; }
    @media only screen and (max-width: 568px) {
      #faqs .faq .span12 {
        left: 0; } }
  @media only screen and (max-width: 568px) {
    #faqs .faq img {
      margin-bottom: 1em; } }

#faq-detail .photos {
  margin-bottom: 1em; }

/* --- Blog --- */
#blog .span8 {
  position: relative;
  height: 0;
  padding-bottom: 35%;
  color: #FFF;
  text-decoration: none;
  background-size: cover;
  background-position: center;
  overflow: hidden; }
  #blog .span8 .inner {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 2em;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; }
  #blog .span8 .title {
    margin-bottom: 0;
    font-size: 1.5em;
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif; }
  #blog .span8:before {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/home-featured-shadow.png) repeat-x bottom left;
    content: ''; }
  @media only screen and (max-width: 568px) {
    #blog .span8 {
      padding-bottom: 50%; } }
#blog .subtitle {
  margin-top: -1.5em;
  font-size: 1.4em;
  line-height: 1.7;
  font-family: "HelveticaNeueLTStd-Lt", Helvetica, Arial, sans-serif; }

#blog-list .entry {
  padding: 3em 0 2em 0;
  border-top: 1px solid #E5E5E5; }
  #blog-list .entry h2 {
    font-size: 1.5em; }
    #blog-list .entry h2 a, #blog-list .entry h2 a:active, #blog-list .entry h2 a:visited {
      color: #000;
      text-decoration: none; }
      #blog-list .entry h2 a:hover, #blog-list .entry h2 a:active:hover, #blog-list .entry h2 a:visited:hover {
        text-decoration: underline; }
  #blog-list .entry p {
    margin-bottom: 0; }
  #blog-list .entry .span12 {
    position: relative;
    left: 10px; }
    #blog-list .entry .span12 h2 {
      margin-bottom: .4em; }
    @media only screen and (max-width: 568px) {
      #blog-list .entry .span12 {
        left: 0; } }
  @media only screen and (max-width: 568px) {
    #blog-list .entry img {
      margin-bottom: 1em; } }

/* --- Process List --- */
#waterproofing-content h2 {
  margin-top: 2em; }

#process {
  padding-top: 2em;
  border-top: 1px solid #E5E5E5; }
  #process .step {
    position: relative;
    margin-bottom: 2em;
    border-bottom: 1px solid #E5E5E5; }
    #process .step h3 {
      margin-bottom: .5em;
      color: #DA291C;
      text-transform: uppercase; }
    #process .step .span2 span {
      position: relative;
      z-index: 1;
      display: inline-block;
      width: 100%;
      height: 74px;
      line-height: 74px;
      font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif;
      color: #333;
      text-align: center;
      font-size: 2em;
      background: #EEE;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%;
      -o-border-radius: 50%;
      -ms-border-radius: 50%;
      background-clip: padding-box;
      -moz-background-clip: padding-box;
      -webkit-background-clip: padding-box;
      -o-background-clip: padding-box;
      -ms-background-clip: padding-box; }
      @media only screen and (max-width: 1100px) {
        #process .step .span2 span {
          height: 48px;
          line-height: 48px; } }
      @media only screen and (max-width: 568px) {
        #process .step .span2 span {
          position: absolute;
          top: 0;
          left: 0;
          width: 48px; } }
    #process .step .span14 {
      position: relative;
      left: 10px; }
      @media only screen and (max-width: 568px) {
        #process .step .span14 {
          left: auto;
          padding-left: 70px;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
          -webkit-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box; } }

/* --- Testimonial --- */
#testimonials .testimonial {
  padding: 3em 0 1em 0;
  border-top: 1px solid #E5E5E5; }
  #testimonials .testimonial p {
    margin-bottom: 1em; }
  #testimonials .testimonial audio {
    width: 50%;
    margin-bottom: 1em; }
    @media only screen and (max-width: 568px) {
      #testimonials .testimonial audio {
        width: 100%; } }
  #testimonials .testimonial .from {
    font-family: "HelveticaNeueLTStd-Hv", Helvetica, Arial, sans-serif; }

#testimonial {
  position: relative;
  display: block;
  padding: 3.5em 0;
  text-decoration: none;
  color: #FFF;
  background-color: #333; }
  #testimonial p {
    position: relative;
    z-index: 2;
    margin-bottom: 0;
    font-family: Georgia, serif;
    font-style: italic;
    font-size: 1.4em;
    line-height: 2;
    color: #FFF; }
  #testimonial span {
    position: relative;
    top: 20px;
    display: inline-block;
    margin-right: .15em;
    line-height: .5;
    font-size: 2.5em;
    font-style: normal; }
    #testimonial span:last-child {
      margin: 0 0 0 .15em; }
    @media only screen and (max-width: 1100px) {
      #testimonial span {
        line-height: .1; } }
  #testimonial:before {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/testimonial-logo.png) no-repeat 0 0;
    background-size: auto 100%;
    content: ''; }
  #testimonial:after {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent url(../images/testimonial-bg-new.png) repeat-x bottom left;
    content: ''; }
  @media only screen and (max-width: 1100px) {
    #testimonial .span20 {
      width: 100% !important;
      margin: 0 !important; } }

/* --- Power Footer --- */
#power {
  overflow: hidden; }
  #power .span10 {
    position: relative;
    padding: 3.5em 0; }
    #power .span10 ul {
      position: relative;
      z-index: 1;
      margin: 0;
      padding: 0;
      list-style-type: none; }
      #power .span10 ul a.large {
        color: #DA291C;
        font-size: 1.15em;
        font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif; }
      #power .span10 ul a {
        text-decoration: none;
        color: #333;
        font-family: "HelveticaNeueLTStd-Lt", Helvetica, Arial, sans-serif; }
        #power .span10 ul a:hover {
          text-decoration: underline; }
      #power .span10 ul .bottom-space {
        margin-bottom: .75em; }
      #power .span10 ul ul {
        padding-left: 1.4em; }
        #power .span10 ul ul a {
          font-family: "HelveticaNeueLTStd-LtIt", Helvetica, Arial, sans-serif; }
    #power .span10:before {
      position: absolute;
      top: 0;
      right: 0;
      width: 800px;
      height: 100%;
      background: #FBFBFB;
      border-right: 1px solid #E5E5E5;
      content: ''; }
      @media only screen and (max-width: 568px) {
        #power .span10:before {
          left: -2em;
          width: 150%;
          border-right: none;
          border-bottom: 1px solid #E5E5E5; } }
    @media only screen and (max-width: 1100px) {
      #power .span10 {
        padding: 2em 0; } }
    @media only screen and (max-width: 568px) {
      #power .span10 .span4, #power .span10 .span5 {
        width: 50% !important; } }
  #power .span13 {
    padding: 3.5em 0;
    line-height: 1.85; }
    #power .span13 a {
      color: #333; }
    #power .span13 p:last-child {
      margin-bottom: 0; }
    @media only screen and (max-width: 1100px) {
      #power .span13 {
        padding: 2em 0; } }
  #power .badges {
    margin-bottom: 1em; }
    #power .badges .badge {
      display: inline-block;
      margin-right: 1em;
      vertical-align: middle; }
      @media only screen and (max-width: 1100px) {
        #power .badges .badge {
          width: 28%; } }
    #power .badges .home-advisor img {
      max-height: 100px; }
  #power .angies-list-reviews img {
    width: 140px; }
  #power .bbb img {
    width: 140px; }

/* --- Footer --- */
footer {
  padding: 3em 0;
  font-size: .9em;
  line-height: 2em;
  border-top: 1px solid #E5E5E5; }
  footer .wrapper p {
    margin-bottom: 0; }
  footer span {
    display: inline-block;
    margin-right: 1.25em;
    padding-right: 1.25em;
    border-right: 1px solid #E5E5E5; }
    footer span:last-child {
      margin-right: 0;
      padding-right: 0;
      border-right: none; }
    @media only screen and (max-width: 568px) {
      footer span {
        display: block;
        margin: 0;
        padding: 0;
        border: none; } }
  footer a {
    color: #333; }
  footer .span8 {
    font-family: "HelveticaNeueLTStd-HvCn", Helvetica, Arial, sans-serif; }
    footer .span8 a {
      color: #333;
      text-decoration: none; }
      footer .span8 a img {
        position: relative;
        top: 2px;
        vertical-align: text-bottom; }
      footer .span8 a:hover {
        text-decoration: underline; }
    @media only screen and (max-width: 568px) {
      footer .span8 {
        margin-top: 1em;
        text-align: left !important; } }
  @media only screen and (max-width: 568px) {
    footer {
      padding: 2em 0; } }
