@charset "utf-8";
/* CSS Document */

* {box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; *behavior:url('/css/boxsizing.htc');}
html {min-height:100%; height:100%; width:100%;}

body {background:#fff; margin:0; padding:0; color:#333; font-family:'Source Sans Pro', Arial, Helvetica, sans-serif; font-size:14px;}

.container {clear:both; width:90%; max-width:1150px; padding-top:0; padding-bottom:0; margin:0 auto; position:relative;}

header {position:fixed; z-index:10; width:100%; background:#111; text-align:left; padding:20px 0;}
header img.logo {display:block; margin:3px 0; padding:0; height:28px; width:auto;}

ul.nav {list-style: none; margin:0; padding:0; font-size:0.000000001px; width:100%; text-align:right;}
ul.nav li {display:inline-block; font-size:18px; margin:0 0 0 20px;}
ul.nav li a {color:#fff; padding:3px 10px;}
ul.nav li.active a {color:#000; background:#fff; border-radius: 1px;}
ul.nav li a:hover {color:#000; background:#fff; border-radius: 1px;}
ul.nav i {opacity:0.7; margin-right:10px;}
/*ul.nav li:last-of-type {font-size:16px;}*/

.response {background:#ff3; z-index:500; position:fixed; top:40px; left:0; right:0; margin:0 auto; width:700px; max-width:100%; opacity:0.9;}
.response p {margin:0; padding:20px 30px; color:#000; font-size:20px; text-align: center;}
.response .fa-times {position:absolute; top:20px; right:20px;}

.subheader {background:linear-gradient(to bottom, #111, #111, #333); padding-top:120px; padding-bottom:150px; text-align:center;}
.subheaderindex {padding-bottom:150px;}
.subheader h3 {color:rgba(255,255,255,1); text-align:center; font-size:20px; display:block; padding:0; margin:30px auto 0 auto; text-transform: uppercase; font-weight:normal; letter-spacing: 0.3em;}

.subsubheader {background:linear-gradient(to bottom, #fff, #fff, #ccc); padding-top:50px;}
.subsubheader h3 {color:rgba(0,0,0,0.6); margin-bottom:50px;}


.subheader h1 {color:rgba(255,255,255,1); text-align:center; font-size:50px; display:block; padding:0; margin:20px auto 0 auto; text-transform: uppercase; font-weight:bold; letter-spacing: 0.3em;}

.subheader p {color:rgba(255,255,255,0.7); max-width:700px; margin:30px auto 0 auto; font-size:22px;}
.subheader p strong {color:rgba(255,255,255,1); font-weight:400;}
.subheader p span {background:#ff3; padding:1px 6px; font-weight:bold; font-size:20px; border-radius: 2px; color:#000; margin-left:5px; margin-right:5px;}
.subheader p a {color:rgba(255,255,255,1); text-decoration: underline;}

.subheader ul {border-top:1px dashed rgba(255,255,255,0.1); padding-top:20px; opacity:1; max-width:650px; margin:20px auto 0 auto; font-size:14px; list-style:square; text-align:left;}
.subheader ul li {color:rgba(255,255,255,0.4);}
.subheader ul li strong {color:rgba(255,255,255,0.7); font-weight:400;}

.subheader form {max-width:800px; background:rgba(255,255,255,0.1); padding:25px; margin:40px auto 0 auto; text-align:left;}
.subheader form img {margin-bottom:20px;}
.subheader form h3 {text-align:left; padding:0 0 20px 0; margin:0 0 20px 0; border-bottom:1px solid rgba(255,255,255,0.1);}
.subheader form h3 i {margin-right:10px; color:#ff3;}
.subheader form h5 {background:#ff3; color:#000; padding:5px; margin:0; position:absolute; top:10px; left:25px; display:inline-block; font-weight:bold; border-radius: 3px; font-size:16px;}
.subheader form input {margin:10px 0; padding:10px; border:0; border-radius: 2px; color:#333; width:100%;}
.subheader form textarea {margin:10px 0; padding:10px; border:0; border-radius: 2px; color:#333; width:100%; height:70px;}
.subheader form button {margin:10px 0; padding:5px 20px; background:#ff3; color:#000; border:0; border-radius: 2px; font-weight:bold; font-size:16px;}
.subheader form button:hover {opacity:0.8;}

.showsmall {display:none;}
.showbig {display:inline-block;}

section hr {width:30%; background:rgba(0,0,0,0.2); border:0; height:1px; margin:30px auto;}
section p {max-width:700px; margin:auto; font-size:30px;}

header section p {color:#fff;}
header section hr {background:rgba(255,255,255,0.2);}

section {clear:both; padding:30px 0;}
section.content {padding:10vh 0;}
section h2 {color:rgba(0,0,0,0.5); text-align: center; font-size:18px; padding:0; font-weight:normal; letter-spacing: 0.3em; margin:0 auto; text-transform: uppercase;}
section p {font-size:24px; text-align: center;}

.negmarg {margin-top:-120px;}

.frontprojects {margin-top:-120px; padding-bottom:50px;}

.cards {width:100%; font-size:0.0000001px; margin:0; padding:15px 0 0 0;
-webkit-column-width: 300px; -moz-column-width: 300px; column-width: 300px;
    -webkit-column-gap: 15px; -moz-column-gap: 15px; column-gap: 15px;
    -webkit-column-fill: balance; -moz-column-fill: balance; column-fill: balance;
    -webkit-margin-bottom-collapse: separate;}

.card {display:inline-block; /*width:100%;*/ position:relative; /*border-right:15px solid transparent;*/ margin:0 0 15px 0; background:transparent;
       -webkit-column-break-inside: avoid; break-inside: avoid; -moz-column-break-inside: avoid; column-break-inside: avoid;}
/*.card:hover {opacity: 0.8;}*/
.card img {width:100%; display:block;}
.card p {margin:20px; font-size:15px; display:block; color:#333;}
.card p a {text-decoration: underline;}
.card p b {font-weight:700;}
.card i {font-size:15px; color:#999; margin-right:3px;}
.card p i:last-of-type {margin-right:7px;}

.card ul.links {list-style:none; margin:-5px 0 0 0; padding:0 0 20px 0; width:100%; text-align: center;}
.card ul.links li {display: inline-block; margin:0 10px; padding:0;}
.card ul.links li a i {color:#666; opacity:1; font-size:20px;}
.card ul.links li a i:hover {opacity:0.8;}

.fatcards {padding:15px 0 50px 15px; -webkit-column-width: 400px; -moz-column-width: 400px; column-width: 400px;}

/*.cardlink {margin-bottom:35px; height:300px; overflow:hidden;}*/
.cardlink img {opacity:1;}
.cardlink .cardlinkinfo {z-index:5; position:absolute; top:50px; left:50%; transform: translatex(-50%); color:#fff; font-size:20px; background:#000; border-radius: 3px; padding:20px 20px;}
.cardlink .cardlinkinfo h3 {display:block; font-weight:bold; font-size:16px; text-transform: uppercase; text-align:center; margin:0;}
.cardlink .cardlinkinfo h3:nth-of-type(2) {margin-top:10px;}
.cardlink .cardlinkinfo h3 span {font-weight:normal; font-size:16px; color:#999;}
.cardlink .cardlinkinfo h3 span:last-of-type {background:#ff3; padding:1px 4px; font-weight:bold; border-radius: 2px; color:#000; margin-left:15px;}
.cardlink .cardlinkinfo p {display:none; color:#fff; text-align:center;}

.printcards .cardlink .cardlinkinfo {display:block; top:10px; left:initial; right:10px; transform:none; padding:8px 8px 8px 10px; font-size:14px;}
/*.printcards .cardlink .cardlinkinfo h3 span:last-of-type {display:none;}*/
.printcards .cardlink .cardlinkinfo h3 {font-size:11px; font-weight:normal; text-transform: initial;}
.printcards .cardlink:hover .cardlinkinfo h5 {display: block;}
.printcards .cardlink .cardlinkinfo h3 span {font-size:10px; margin-left:10px;}

/*.printcards .cardlink:hover {border-top:12px solid #7a5f55; border-left:12px solid #ddb18d; border-right:12px solid #f0c59d; border-bottom:12px solid #f8d8ba;}*/

.cardlink:hover {opacity:1;}
/*.cardlink:hover img {opacity:0.8;}*/
.cardlink:hover .cardlinkinfo {opacity: 1;}
/*.cardlink:hover .cardlinkinfo h3 {display:none;}
/*.cardlink:hover .cardlinkinfo p {display:block;}*/

/*.cardlink .cardlinkgradient {display:block; height:200px; width:100%; background:linear-gradient(to top, rgba(255,255,255,1), rgba(255,255,255,0.7), rgba(255,255,255,0)); position:absolute; bottom:0; left:0; z-index:2;}*/

.projecthero {width:100%; margin:0;}
.projecthero img {width:100%;}

/*section.content h2 {font-size:40px; font-weight:normal;}*/

.col img, .col video {width:100%; margin-bottom:20px;}
.hero {overflow:hidden;}
/*.hero video {margin-top:-150px; margin-bottom:-150px;}*/

.grid .item.top20 {padding-top:20px;}
.grid .item.top40 {padding-top:40px;}
.grid .item.top60 {padding-top:60px;}
.grid .item.top80 {padding-top:80px;}

.buffer {clear:both; min-height:80px;}

.button {position:relative; padding:10px 20px; z-index:2; text-transform: uppercase; background:#fff; color:#000; border:2px solid #fff; text-decoration: none; display: inline-block; font-weight:bold;}
.button:hover {background:transparent; color:#fff; text-decoration: none;}

.everything {position:relative; background:#fff; z-index:3;}

footer {clear:both; /*position:fixed; bottom:0; left:0; right:0; */z-index:1; background:linear-gradient(to top, #333 50%, #111 100%);}
footer h2 {color:#fff; text-align: center; font-size:30px; font-weight:bold; text-transform: uppercase;}
footer p {color:#fff; font-size:24px; text-align: center;}

footer ul {margin:10px 0;}
footer ul b {text-transform: uppercase;}
footer ul li {color:#fff; margin:0; padding:5px 0; text-align: center; display: block; border-bottom:1px solid rgba(255,255,255,0.1);}

footer p.final {padding:20px 0 50px 0; margin-top:50px; opacity:0.5; font-size:14px; border-top:1px solid rgba(255,255,255,0.1);}
footer p.final span {opacity:0.1; margin:0 20px;}

@media (max-width: 768px) {

  .container {width:95%;}

  .showsmall {display:inline-block;}
  .showbig {display:none;}

  header {text-align:center;}
  header img.logo {margin:5px auto; width:100%; height:auto;}

  ul.nav {margin:0;}
  ul.nav li {font-size:13px; margin-left:5px;}
  ul.nav i {margin-right:0;}
  ul.nav li:last-of-type {font-size:13px;}
  ul.nav li a {padding:2px 4px;}
  ul.nav .extraneous {display: none;}

  .subheader h1 {font-size:30px;}
  .subheader h3 {font-size:15px;}

  .subheader p {font-size:18px;}
  .subheader p span {font-size:16px;}

  .cardnest {-webkit-column-width: 100px; -moz-column-width: 100px; column-width: 100px;}
  .cardlink .cardlinkgradient {height:100px;}

  .cardlink .cardlinkinfo {border-radius: 2px; padding:15px 25px;}
  .cardlink .cardlinkinfo h3 {font-size:16px !important;}
  .cardlink .cardlinkinfo h3 span {font-size:14px;}
  .cardlink .cardlinkinfo h3 span:last-of-type {margin-left:10px;}

  footer {position:relative; bottom:initial; left:initial; right:initial; z-index:1; padding-bottom:100px;}

  /*.buffer {min-height:initial;}*/
  .grid .item.top20 {padding-top:0;}
  .grid .item.top40 {padding-top:0;}
  .grid .item.top60 {padding-top:0;}
  .grid .item.top80 {padding-top:0;}
}





/* Responsive Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Number is amount of items in row - eg; grid-lg-8 = 8 items per row at 1200px and above */
.grid { width: 100%; }
.grid .item { display: inline-block; float: left; padding: 0 10px; min-height: 1px; position: relative; }

@media (max-width: 550px) {
  /* Widths */
  .grid-xs-12 .item { width: 8.333333%; }
  .grid-xs-11 .item { width: 9.088888%; }
  .grid-xs-10 .item { width: 10%; }
  .grid-xs-9 .item { width: 11.111111%; }
  .grid-xs-8 .item { width: 12.5%; }
  .grid-xs-7 .item { width: 14.277777%; }
  .grid-xs-6 .item { width: 16.666667%; }
  .grid-xs-5 .item { width: 20%; }
  .grid-xs-4 .item { width: 25%; }
  .grid-xs-3 .item { width: 33.333333333333333%; }
  .grid-xs-2 .item { width: 50%; }
  .grid-xs-1 .item { width: 100%; }
}

@media (min-width: 550px) {
  /* Widths */
  .grid-xs-12 .item { width: 8.333333%; }
  .grid-xs-11 .item { width: 9.088888%; }
  .grid-xs-10 .item { width: 10%; }
  .grid-xs-9 .item { width: 11.111111%; }
  .grid-xs-8 .item { width: 12.5%; }
  .grid-xs-7 .item { width: 14.277777%; }
  .grid-xs-6 .item { width: 16.666667%; }
  .grid-xs-5 .item { width: 20%; }
  .grid-xs-4 .item { width: 25%; }
  .grid-xs-3 .item { width: 33.333333333333333%; }
  .grid-xs-2 .item { width: 50%; }
  .grid-xs-1 .item { width: 100%; }
}

@media (min-width: 768px) {
  /* Widths */
  .grid-sm-12 .item { width: 8.333333%; }
  .grid-sm-11 .item { width: 9.088888%; }
  .grid-sm-10 .item { width: 10%; }
  .grid-sm-9 .item { width: 11.111111%; }
  .grid-sm-8 .item { width: 12.5%; }
  .grid-sm-7 .item { width: 14.277777%; }
  .grid-sm-6 .item { width: 16.666667%; }
  .grid-sm-5 .item { width: 20%; }
  .grid-sm-4 .item { width: 25%; }
  .grid-sm-3 .item { width: 33.333333333333333%; }
  .grid-sm-2 .item { width: 50%; }
  .grid-sm-1 .item { width: 100%; }
}

@media (min-width: 800px) {
  /* Widths */
  .grid-sma-5 .item { width: 20%; }
}

@media (min-width: 992px) {
  /* Widths */
  .grid-md-12 .item { width: 8.333333%; }
  .grid-md-11 .item { width: 9.088888%; }
  .grid-md-10 .item { width: 10%; }
  .grid-md-9 .item { width: 11.111111%; }
  .grid-md-8 .item { width: 12.5%; }
  .grid-md-7 .item { width: 14.277777%; }
  .grid-md-6 .item { width: 16.666667%; }
  .grid-md-5 .item { width: 20%; }
  .grid-md-4 .item { width: 25%; }
  .grid-md-3 .item { width: 33.333333333333333%; }
  .grid-md-2 .item { width: 50%; }
  .grid-md-1 .item { width: 100%; }
}

@media (min-width: 1200px) {
  /* Widths */
  .grid-lg-12 .item { width: 8.333333%; }
  .grid-lg-11 .item { width: 9.088888%; }
  .grid-lg-10 .item { width: 10%; }
  .grid-lg-9 .item { width: 11.111111%; }
  .grid-lg-8 .item { width: 12.5%; }
  .grid-lg-7 .item { width: 14.277777%; }
  .grid-lg-6 .item { width: 16.666667%; }
  .grid-lg-5 .item { width: 20%; }
  .grid-lg-4 .item { width: 25%; }
  .grid-lg-3 .item { width: 33.333333333333333%; }
  .grid-lg-2 .item { width: 50%; }
  .grid-lg-1 .item { width: 100%; }
}

@media (min-width:1200px){
    .auto-clear.grid-lg-1 .item:nth-of-type(n+1){clear:left;}
    .auto-clear.grid-lg-2 .item:nth-of-type(2n+1){clear:left;}
    .auto-clear.grid-lg-3 .item:nth-of-type(3n+1){clear:left;}
    .auto-clear.grid-lg-4 .item:nth-of-type(4n+1){clear:left;}
    .auto-clear.grid-lg-5 .item:nth-of-type(5n+1){clear:left;}
    .auto-clear.grid-lg-6 .item:nth-of-type(6n+1){clear:left;}
}
@media (min-width:992px) and (max-width:1199px){
    .auto-clear.grid-md-1 .item:nth-of-type(n+1){clear:left;}
    .auto-clear.grid-md-2 .item:nth-of-type(2n+1){clear:left;}
    .auto-clear.grid-md-3 .item:nth-of-type(3n+1){clear:left;}
    .auto-clear.grid-md-4 .item:nth-of-type(4n+1){clear:left;}
    .auto-clear.grid-md-5 .item:nth-of-type(5n+1){clear:left;}
    .auto-clear.grid-md-6 .item:nth-of-type(6n+1){clear:left;}
}
@media (min-width:768px) and (max-width:991px){
    .auto-clear.grid-sm-1 .item:nth-of-type(n+1){clear:left;}
    .auto-clear.grid-sm-2 .item:nth-of-type(2n+1){clear:left;}
    .auto-clear.grid-sm-3 .item:nth-of-type(3n+1){clear:left;}
    .auto-clear.grid-sm-4 .item:nth-of-type(4n+1){clear:left;}
    .auto-clear.grid-sm-5 .item:nth-of-type(5n+1){clear:left;}
    .auto-clear.grid-sm-6 .item:nth-of-type(6n+1){clear:left;}
}
@media (max-width:767px){
    .auto-clear.grid-xs-1 .item:nth-of-type(n+1){clear:left;}
    .auto-clear.grid-xs-2 .item:nth-of-type(2n+1){clear:left;}
    .auto-clear.grid-xs-3 .item:nth-of-type(3n+1){clear:left;}
    .auto-clear.grid-xs-4 .item:nth-of-type(4n+1){clear:left;}
    .auto-clear.grid-xs-5 .item:nth-of-type(5n+1){clear:left;}
    .auto-clear.grid-xs-6 .item:nth-of-type(6n+1){clear:left;}
}