/*
Theme Name: LAS
Theme URI: http://las.iastate.edu
Author: Will Stone
Description: Parent theme for LAS sites.
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: las
*/

@import url("css/js.css");


/*  clear fix  */
.clear-fix:after, article:after, .island:after, nav:after, .clear:after {
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}


body {
    font-family: 'Nimbus Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 16px;
    background: #222;
}
a {
    color: #cc0000;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
figure img {
    max-width: 100%;
}

i, em {
    font-style: italic;
}
b, strong {
    font-weight: bold;
}
u {
    text-decoration: underline;
}
sup {
    vertical-align: super;
    font-size: smaller;
}
sub {
    vertical-align: sub;
    font-size: smaller;
}
img {
    vertical-align: middle;
    max-width: 100%;
}
cite {
    font-style: italic;
}
ol, ul, dl {
    margin-bottom: 1rem;
  margin-left: 1rem;
}
dl {
    overflow:hidden;
    line-height: 1.5;
}
dd:before {
    /* content: '\2014 \0000a0 '; */
    color: #aaa;
}
dt, dd {
display: block;
padding: 1rem 0;
}
dt {
    font-weight: bold;
    padding-bottom: 0;
}
dd {
    line-height: 1.5;
}
dd > *:last-child {
    margin-bottom: 0;
}
dl p, article dl p, article dl ul, article dl ol {
    margin-top: 0;
    float: none;
    clear: none;
}
code {
    font-weight: normal;
    font-family: Monospace;
    color: rgb(224, 101, 101);
}
small {
  font-size: smaller;
}

table {
    margin: 1rem 0;
    font-size: .9rem;
    line-height: 1.2;
    border-collapse: separate;
    background-color: #fff;
}
th, td {
    padding: .5rem 1rem;
    vertical-align: middle;
}
th {
    text-align: left;
    white-space: nowrap;
    border-color: #bbb;
    font-weight: bold;
}
table.right-left-aligned tr td:first-of-type {
    text-align: right;
}
video {
    display: block;
    margin: 1rem 0;
}
hr {
  margin-top: 2rem;
  margin-bottom: 2rem;
  border: 2px solid #eee;
  clear: both;
}
nav > a {
    display: block;
    padding: .5rem 0;
}
button, a.button {
display: block;
font-size: 1.1em;
font-weight: bold;
border-radius: .4em;
text-align: center;
color: #fff;
background: #f4b859;
padding: 1em 3em;
margin: 1rem 0;
border: none;
display: inline-block;
}
a.image {
    color: transparent;
    display: block;
}
button:hover, a.button:hover {
text-decoration: none;
background: rgb(225,164,70);
cursor: pointer;
}
mark {
    background-color: rgba(248, 255, 0, 0.5);
}

.screen-reader-text {
    display: none;
}

.css-img {
    color: transparent;
    text-indent: -2000px;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
  overflow: hidden;
  float: none;
  max-width: 40rem;
}
@media only screen and (min-width: 800px) {
    .video-container {
     padding-bottom: 30.25%;
    padding-top: 30px;
    }
}
.video-container iframe, .video-container object, .video-container embed {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
@media only screen and (min-width: 800px) {
    .columns {
        clear: both;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        display: -webkit-flex;
        -webkit-align-items: flex-start;
        -webkit-justify-content: space-between;
    }
    ul.columns {
        display: block;
        -webkit-columns: 3 12rem;
        -moz-columns: 3 12rem;
        columns: 3 12rem;
        column-width: 12rem;
        -webkit-column-span: all;
        column-span: all;
    }
    .columns > * {
        clear: none;
        margin-right: 1rem;
        flex: 1 0 0;
    }
    .columns > * > h1 {
      //padding-top: 0;
      //margin-top: 0;
    }
    article.page .columns > section {
        border: none;
    }

    .flex-row {
      display: flex;
      flex-flow: row nowrap;
    }
    .flex-row > .tile {
      margin-left: .5rem;
      margin-right: .5rem;
    }
    .flex-row > .tile:first-child {
      margin-left: 0;
    }
    .flex-row > .tile:last-child {
      margin-right: 0;
    }
    .flex-row > * {
      flex: 1;
    }
}
.columns > *:last-child {
    margin-right: 0;
}
.columns .social-feed {
    display: flex;
    justify-content: center;
}

.nowrap {
    white-space: nowrap;
}
.placeholder {
    color: #aaa;
}

.wide-viewport-only {
    display: none;
}

.clear {
    clear: both;
}


.uppercase {
    text-transform: uppercase;
    letter-spacing: .1rem;
    font-weight: normal;
    font-size: 1.2rem;
        padding-top: 0;
}
.centered {
    text-align: center;
}
.centered p {
  margin: 1rem auto;
}
.subtitle {
    line-height: 1.2;
}
.light {
    font-weight: 100;
    letter-spacing: .18rem;
    font-size: 2rem;
}
.smaller {
    font-size: .8rem;
}
.lighter {
    color: #aaa;
}
.italic {
    font-style: italic;
}
.publication, .publications p {
text-indent: -2rem;
max-width: 37rem;
margin-left: 2rem;
line-height: 1.5;
font-size: .95rem;
margin-bottom: 1rem;
}


p.special {
    background: #C8102E;
    padding: 1rem;
    color: #fff;
    display: inline-block;
}
p.special strong {
    color: #f4b859;
}

a.apply-now {
  color: #f4b859;
  display: block;
  background: #c02;
  padding: 2rem 2rem 2rem 6.5rem;
  text-transform: uppercase;
  letter-spacing: .08rem;
      margin-bottom: 1rem;
}
a.apply-now:hover {
    color: #fff;
    text-decoration: none;
}
a.apply-now:before {
  content: '';
  background-image: url(images/yellow-arrow.png);
  background-repeat: no-repeat;
  width: 5rem;
  height: 38px;
  background-size: contain;
  position: absolute;
  left: 1rem;
  top: 0;
  height: 100%;
  background-position: center;
}
.apply-now a.apply-now {
  margin: 0;
}
@media only screen and (min-width: 580px) {
    .apply-now a.apply-now {
      display: inline-block;
      position: absolute;
      z-index: 10;
      right: 1rem;
      top: 2rem;
      box-shadow: rgba(0,0,0,.3) 0 1px 1px;
    }
}
body.full-width .island.apply-now {
  padding: 0;
  z-index: 1000;
}



section.contrast-stratum .light {
    color: #eee;
}
.tile {
    border: none;
    padding: 1rem;
    background: #fff;
    box-shadow: rgba(0,0,0,.2) 0 1px 2px;
    margin-bottom: 1rem;
}
.tile.light-contrast-tile {
    background: #fafafa;
}
section.float {
    border: none;
      padding: 2rem 0;
}
section.centered section.float {
    border-bottom: 4px solid rgba(0,0,0,.05);
}
section.centered section.float:last-of-type {
    border-bottom: none;
}
section.float h1 {
    padding: 0;
}

article section.tile h1, article section.tile h2, article section.tile h3 {
    padding: .5rem 0 0;
}


body.admin-bar {
  padding-top: 46px;
}
@media only screen and (min-width: 783px) {
  body.admin-bar {
    padding-top: 32px;
  }
}


nav.parent-site {
  background: rgb(187, 22, 43);
}
nav.parent-site a {
  display: block;
  color: #fff;
  font-weight: bold;
  padding: 0.75rem 1rem .75rem 5.25rem;
  font-size: .85rem;
  background-image: url(images/isu-nameplate-vert-yellow.png);
  background-size: 62px;
  background-repeat: no-repeat;
  background-position: 1rem center;
}
nav.parent-site a:hover {
  text-decoration: none;
}


nav ul {
  margin: 0;
}

header.banner {
    z-index: 200;
    background: #c02;
}
@media only screen and (min-width: 1000px) {
  header.banner > .wrap.top {
    padding: 1rem 0;
  }
}
header.banner .home, footer.top .home {
font-weight: bold;
color: #fff;
display: block;
font-size: 1.1rem;
letter-spacing: .03rem;
line-height: 1;
padding: 1rem;
}
header.banner .isu, footer.top .isu {
    background: url(images/isu-wordmark-gold.svg);
    background-size: 240px;
    background-repeat: no-repeat;
    background-position: 1rem 1rem;
    padding-top: 2.6rem;
    min-width: 240px;
}
@media only screen and (min-width: 650px) {
  header.banner .isu, footer.top .isu {
    background-size: 355px;
    background-position: 1rem 1rem;
    padding-top: 3.3rem;
    min-width: 355px;
  }
}
@media only screen and (min-width: 1000px) {
header.banner a.home {
  margin-right: auto;
}

}
a.home:hover {
    text-decoration: none;
}

header.banner > .wrap.top {
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: space-between;
}

header.banner .controls {
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: flex-end;
}
@media only screen and (min-width: 1000px) {
  header.banner .control.menu {
    display: none;
  }
}
header.banner .control {
  color: #fff;
      font-size: 1.2rem;
      width: 3rem;
      height: 3rem;
      display: flex;
      align-items: center;
      text-align: center;
      justify-content: center;
  cursor: pointer;
}
header.banner .control:hover {
  cursor: pointer;
  color: #f4b859;
}
header.banner .control span {
  display: none;
}

header.banner .container.menu {
  display: none;
  position: absolute;
  z-index: 100;
  background: #eee;
  right: 0;
  box-shadow: rgba(0,0,0,.8) 0 5px 9px;
}
@media only screen and (min-width: 1000px) {
  header.banner .container.menu {
    right: auto;
        width: 40rem;
        left: 50%;
        margin-left: -20rem;
  }
}
.menu-container-active header.banner .container.menu {
  display: block;
}


header.banner nav {
  display: none;
}
header.banner nav.site.wide {
  display: block;
}
header.banner nav.site.wide ul.menu {
  display: flex;
  flex-flow: row;
  margin: 0;
  align-items: center;
}
header.banner nav.site.wide a {
  color: #fff;
  text-transform: uppercase;
  font-weight: bold;
  padding: 1rem;
  display: block;
  font-size: .9rem;
  letter-spacing: .05rem;
  text-align: center;
}
header.banner nav.site.wide a:hover {
  text-decoration: none;
  color: #f4b859;
}
header.banner nav.site.wide .current-menu-item > a {
  color: #f4b859;
}

header.banner nav.skinny a, header.top nav.skinny .title {
  padding: 1.5rem 1rem 1.5rem 2rem;
}
header.banner nav .title {
  display: none;
}
header.banner nav.skinny {
  display: none;
}
.menu-active header.banner nav.skinny, .search-active header.banner #site {
  display: block;
}
header.banner nav.skinny .title {
  text-transform: uppercase;
  letter-spacing: .09rem;
  padding-left: 1rem;
  font-weight: bold;
  color: #777;
  font-size: .85rem;
  display: block;
  border-top: 1px solid #fff;
}
header.banner nav.site.skinny .title {
  color: #f4b859;
  border-color: rgba(255,255,255,.4);
}
header.banner .container.menu nav.menu.collapsible .title:hover {
    cursor: pointer;
}
header.banner .container.menu nav.menu.collapsible a {
    display: none;
}
header.banner .container.menu nav.menu.collapsible.active a {
    display: block;
}
header.banner .container.menu nav.menu.collapsible .title:before {
    content: "\f067";
    font-family: FontAwesome;
    display: inline-block;
    margin-right: .5rem;
}
header.banner .container.menu nav.menu.active.collapsible .title:before {
    content: "\f00d";
}
header.banner nav.skinny a {
  display: block;
  font-weight: bold;
  min-width: 20rem;
  border-top: 1px solid #fff;
}
header.banner nav.skinny a:hover {
    text-decoration: none;
}
header.banner nav.site.skinny {
  background: #C8102E;
}
header.banner nav.page.skinny {
  background: #eee;
}
header.banner nav.site.skinny a {
  color: #fff;
  border-color: rgba(255,255,255,.4);
  text-transform: uppercase;
  letter-spacing: .08rem;
}
header.banner nav.page.skinny a {
  color: #444;
}

header.banner ul.sub-menu {
  display: none;
  position: absolute;
  padding-bottom: 1rem;
  background: #C8102E;
}
header.banner ul.menu li.menu-item-has-children:hover, header.banner ul.menu ul.sub-menu {
  box-shadow: rgba(0,0,0,.4) 0 2px 3px;
}
header.banner nav.wide ul.menu li.menu-item-has-children:hover ul.sub-menu {
  display: block;
}
header.banner nav.site.wide ul.sub-menu a {
  background: #C8102E;
      min-width: 14rem;
  text-transform: none;
  letter-spacing: normal;
  padding-top: .5rem;
  padding-bottom: .5rem;
      text-align: left;
}


.mask {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0,0,0,.6);
  z-index: 100;
  display: none;
}
.mask-active .mask {
  display: block;
}



header.banner nav.menu a[title='Search'] {
  display: none;
}



/*  search  */

.search-results-summary {
  padding: 1rem;
}
p.search-results-helper {
    font-size: .8rem;
    color: #666;
    margin-top: 0;
}
p.search-result {
  line-height: 1.3;
  font-size: .9rem;
  color: #888;
}

header.top nav.top-level ul.menu > li > a[href*='securelb.imodules.com'], header.top nav.top-level ul.menu > li > a[href*='foundation.iastate'], .dark-site-nav #site section.contact a[href*='securelb.imodules.com'] {
  font-weight: bold;
  text-transform: none;
  color: #f4b859;
  letter-spacing: 0;
  font-size: 1rem;
  display: inline-block;
  border-radius: 4px;
  text-decoration: none;
  color:
}
.dark-site-nav #site section.contact a[href*='securelb.imodules.com'] {
  background: rgb(209,34,57);
  padding: 1rem 1.25rem;
}
.dark-site-nav #site section.contact a[href*='securelb.imodules.com']:hover {
  text-decoration: none;
}
form[title='Search'] label {
  color: transparent;
  display: inline-block;
  width: 0;
  height: 0;
  font-size: 0;
}



/*  footer.top  */
footer.top {
  font-size: .8rem;
      line-height: 1.5;
      color: #333;
      padding: 2rem 0 1rem;
      background-image: url(images/bg-footer.png);
      background-size: contain;
      background-repeat: repeat-x;
      background-color: #fff;
      background-position: center bottom;
}
footer.top p {
  color: #666;
  line-height: 1.2;
}
footer.top p br {
  display: block;
  margin-bottom: .5rem;
  content: '';
}
@media only screen and (min-width: 1000px) {
footer.top {
padding: 5rem 0 0;
}
}
footer.top > .wrap.top {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-between;
  padding: 2rem 1rem;
  text-align: center;
}
footer.top > .wrap.top > * {
  max-width: 80%;
  margin-bottom: 2rem;
}


footer.top nav.footer .wrap.top {
  width: auto;
}
footer.top .copyright {
    color: #888;
}

footer.top ul.menu a {
display: block;
    margin: 0 0 .25rem;
}
footer.top ul.menu a[href='http://www.iastate.edu'], footer.top ul.menu a[href='http://iastate.edu'] {
  color: transparent;
  background-image: url(images/isu-wordmark-stacked-red.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  font-size: 1rem;
  line-height: 3rem;
  margin-bottom: 1.25rem;
}

@media only screen and (min-width: 800px) {
  footer.top {
    padding-top: 7rem;
  }
  footer.top > .wrap.top {
    flex-flow: row wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 2rem 1rem;
    text-align: left;
  }
  footer.top > .wrap.top > * {
    max-width: 25%;
    margin-bottom: 0;
  }
  footer.top ul.menu a[href='http://www.iastate.edu'], footer.top ul.menu a[href='http://iastate.edu'] {
    background-position: left center;
  }
}


a.social-icon, footer.top ul.menu a[href*='facebook.com'], footer.top ul.menu a[href*='twitter.com'], footer.top ul.menu a[href*='youtube.com'], #site .social-icon {
    color: transparent;
    display: inline-block;
    height: 2.5rem;
    width: 2rem;
}
@font-face {
    font-family: 'Mono Social Icons Font';
    src: url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.eot');
    src: url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.eot?#iefix') format('embedded-opentype'),
         url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.woff') format('woff'),
         url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.ttf') format('truetype'),
         url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.svg#MonoSocialIconsFont') format('svg');
    src: url('fonts/MonoSocialIconsFont-1.10/MonoSocialIconsFont-1.10.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
a.social-icon:before, footer.top ul.menu a[href*='facebook.com']:before, footer.top ul.menu a[href*='twitter.com']:before, footer.top ul.menu a[href*='youtube.com']:before {
    font-family: 'Mono Social Icons Font';
    -webkit-text-rendering: optimizeLegibility;
    -moz-text-rendering: optimizeLegibility;
    -ms-text-rendering: optimizeLegibility;
    -o-text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    font-size: 2rem;
    position: absolute;
    top: -.05rem;
    color: #f4b859;
}
footer.top ul.menu a[href*='facebook.com']:before, a.social-icon[href*='facebook.com']:before {
    content: '\E227';
}
footer.top ul.menu a[href*='twitter.com']:before, a.social-icon[href*='twitter.com']:before {
    content: '\E286';
}
footer.top ul.menu a[href*='youtube.com']:before, a.social-icon[href*='youtube.com']:before {
    content: '\E299';
}
footer.top ul.menu a[href*='linkedin.com']:before, a.social-icon[href*='linkedin.com']:before {
    content: '\E252';
}
#fb-root {
    display: none;
}





main {
    min-height: 500px;
    background: #fff;
    z-index: 100;
    padding-bottom: 1rem;
}
body.archive main, body.search main {
  background: #fafafa;
      padding-top: 2rem;
}
body.full-width main {
  padding-bottom: 0;
}
main h1 {
    color: #333;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 2rem;
}
main section section h1 {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    padding-top: 0;
}
main h1 span.sub {
    font-size: 1rem;
    color: #aaa;
    font-weight: normal;
}
h1.multi-posts {
  border-bottom: 1px solid #eee;
  line-height: 1;
}
h1.multi-posts span.term {
    font-size: 1.3rem;
    color: #555;
}
h1.multi-posts span.page {
    font-size: .8rem;
    color: #aaa;
}
h1.multi-posts span.posts-descr {
  display: block;
  margin-top: 1rem;
  letter-spacing: normal;
  text-transform: none;
  font-weight: normal;
  font-size: 1rem;
  color: #555;
  line-height: 1.4;
  max-width: 40rem;
}

header.author {
  padding: 1rem;
  margin: 1rem 0;
  max-width: 50rem;
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: space-between;
}
header.author .text {
  width: 66%;
}
header.author .author-name {
  font-size: 1.8rem;
  margin-bottom: 1rem;
  text-transform: none;
  color: #333;
  letter-spacing: normal;
}
header.author .author-name .label {
  display: block;
  margin-bottom: .25rem;
}
header.author .label {
  font-weight: bold;
  text-transform: uppercase;
  color: #aaa;
  letter-spacing: .01rem;
  font-size: .75rem;
}
header.author .author-bio {
  line-height: 1.4;
  font-size: .9rem;
  max-width: 54rem;
  margin: 1rem 0;
}
header.author .author-img {
  width: 33%;
}
header.author .author-img img {
  width: 150px;
  border-radius: 100px;
  margin-left: 2rem;
}


.multi-posts article footer.single {
  display: none;
}


main .wrap.top {
    min-height: 500px;
    width: 100%;
}
body.splash .wrap.top {
  flex-flow: row wrap;
}
body.single-post main .wrap.top  {
    width: auto;
    margin: 0 auto;
}
body.full-width main .wrap.top {
    display: block;
    width: auto;
}
body.blog main .wrap.top, body.search main .wrap.top, body.archive main .wrap.top {
    box-sizing: border-box;
}



header.top nav.page {
}
main nav.page {
  float: right;
  width: 22rem;
  z-index: 101;
  margin: 0 0 4rem 3rem;
  display: none;
  clear: right;
}
body.home main nav.page {
  margin-top: 6rem;
}
@media only screen and (min-width: 1000px) {
  main nav.page {
      display: block;
  }
}
main nav.page .title {
    display: none;
}
main nav.page ul, main nav.page li {
  list-style: none;
  margin: 0;
  padding: 0;
}
main nav.page ul {
  background: #eee;
  border-top: 3px solid #c02;
  border-bottom: 3px solid #f4b859;
}
main nav.page a {
  font-size: 1.1rem;
      line-height: 1.1;
      padding: 1rem;
      color: #000;
      min-width: 14rem;
      text-decoration: none;
      display: block;
      font-weight: bold;
      border-bottom: 1px solid #fff;
}
main nav.page li:last-of-type a {
    background-image: none;
}
main nav.page .current-menu-item a {
  color: #c02;
  font-weight: bold;
}
main nav.page li:not(.current-menu-item):not(.current-page-ancestor) a:hover {
  color: #fff;
  background-color: #c02;
}
main nav.page li:first-of-type a {
  color: #666;
  text-transform: uppercase;
  font-size: 1.2rem;
}
main nav.page li:last-of-type a {
  border: none;
}



/*  breadcrumbs  */
nav.breadcrumbs {
background: #fff;
color: #ddd;
padding: .5rem 0;
font-size: .8rem;
display: none;
}
nav.breadcrumbs .wrap > span {
color: #ccc;
}
nav.breadcrumbs .wrap > span:first-of-type {
    margin-left: 1rem;
}
nav.breadcrumbs a {
color: #aaa;
}
body.blog nav.breadcrumbs, body.single-post nav.breadcrumbs {
    display: none;
}

/*  splash image */



/*  article  */

article {
    padding: 0 1rem 2rem;
}
article.main {
  flex: 1 0 100%;
}
body.full-width article.main {
    padding: 0;
}
body.single article {
  //padding-top: 1rem;
}
body:not(.single):not(.single-post):not(.page):not(.error404) article {
    background: #fff;
    padding: 1rem;
    margin: 1rem 0;
    border: none;
    box-shadow: rgba(0,0,0,.1) 0 1px 1px;
}
@media only screen and (min-width: 700px) {
body:not(.single):not(.single-post):not(.page):not(.error404) article {
    padding: 2rem;
    margin: 1rem;
}
}
body.single-post article {
    max-width: 54rem;
    margin: 0 auto;
}
body.error404 article {
    padding: 2rem;
}
body.blog main {
  padding: 1rem;
}

/* article featured image */

article header .media.featured-image {
    width: 100%;
    clear: both;
    float: none;
    margin: 0 0 2rem;
    text-align: center;
    z-index: 0;
}
body.full-width article header .media.featured-image {
  margin: 0;
}
article header .media.featured-image .portrait, article header .media.featured-image .landscape.narrow  {
//display: none;
}
article .content .media.featured-image {
    width: 20rem;
    float: right;
    margin: 0 0 2rem 3rem;
    clear: right;
}
div.multi-posts {
  max-width: 100%;
}
@media only screen and (min-width: 700px) {
    body:not(.single-post):not(.page) article .featured-image {
width: auto;
  clear: none;
  float: right;
  margin: 0 0 0 2rem;
  text-align: center;
  max-width: 35%;
  display: block;
  max-height: 12rem;
    }
}
article .featured-image a {
    text-align: center;
}
@media only screen and (min-width: 700px) {
body:not(.single-post) article .featured-image a {
    text-align: left;
}
}
article.post header .featured-image img {
  width: auto;
  max-width: 100%;
  display: inline;
  border-top: none;
  max-height: 10rem;
}
body.single-post article.post header .featured-image img {
  max-height: none;
}
article .content .featured-image img {
  width: 100%;
}
body:.single-post article.post .featured-image img.landscape {
  max-height: none;
}
body.page article .featured-image img.landscape.wide, body.single article .featured-image img.landscape.wide {
  width: 100%;
  border: none;
}
body:.single-post article header .featured-image img.portrait {
  max-height: 12rem;
}
body:not(.single-post) article .featured-image figcaption, body:not(.single-post) article .featured-image .credit {
    display: none
}

/*  article header  */

article header {
    margin: 0 0 1rem;
}
body.page article header {
    margin-bottom: 0;
}
@media only screen and (min-width: 700px) {
    body:not(.single-post):not(.page):not(.error404):not(.single-directory) article:not(.directory) header {
        //max-width: 48rem;
    }
}
body.page.home article header h1, body.page.home article header .entry-subtitle {
    display: none;
}
body.single-post article header {
  margin: 0 0 2rem;
      padding-top: 2rem;
}
article header h1 {
    margin-bottom: 1rem;
    padding: 0;
}
body.search-results article header h1 {
  font-size: 1.6rem;
}
body:not(.single-directory):not(.single-post) main header h1 {
  color: #000;
      font-family: "Nimbus Sans",sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 2rem 0 0;
    line-height: 1.2;
      font-size: 2.25rem;
      margin: 0 0 2rem;
      transform: scale(1,1.2);
}
body.page article header h1 a {
  color: #C8102E;
  font-size: 2rem;
  line-height: 1;
  display: block;
}
body.page article header h1 a:hover {
    color: #C8102E;
    text-decoration: none;
}
article header .entry-subtitle {
  float: none;
      clear: none;
      line-height: 1.4;
      color: #666665;
      margin: 0;
      font-weight: 400;
      font-size: 1.15rem;
      margin-top: 1rem;
      letter-spacing: normal;
}
article header .entry-excerpt {
    line-height: 1.5;
    margin-bottom: 1rem;
}
article header a.continue {
    display: block;
    font-size: .9rem;
    margin-bottom: 1rem;
}

/* article footer */

article footer {
clear: both;
}

article header .entry-categories {
    text-transform: uppercase;
    letter-spacing: .05rem;
    margin-bottom: 1rem;
    font-weight: bold;
    padding-top: 1rem;
}
article header .entry-categories a {
    color: #aaa;
}
article header .entry-date {
    display: none;
}
article header .entry-meta.event-datetime {
  font-size: 1rem;
  color: #555;
  margin: 1rem 0;
  display: inline-block;
  line-height: 1.3;
}
article header .entry-meta.event-datetime i {
display: none;
}
article header .entry-meta.event-datetime .date:before {
  font-family: dashicons;
  content: "\f508";
  font-size: 1rem;
  padding-right: .5rem;
  vertical-align: bottom;
}
article .entry-meta .label {
  text-transform: uppercase;
  font-weight: bold;
  color: #bbb;
  font-size: .75rem;
}
article footer .entry-meta.entry-date .label {
  font-size: .6rem;
}

article footer .post-nav {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 5rem;
}
article footer .post-nav a:hover {
  text-decoration: none;
}
article footer a.next {
  text-align: right;
}
article footer .post-nav .title {
  font-size: .8rem;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .04rem;
  color: #999;
  margin-bottom: .5rem;
}
article footer .post-nav .entry-date {
  margin-top: .5rem;
}
article footer .post-nav .entry-date .label {
  display: none;
}






@media only screen and (min-width: 900px) {

}


article header .addtocalendar {
  display: inline-block;
  margin-left: 1rem;
}
.addtocalendar .atcb-link {
  display: inline-block;
      font-size: .7rem;
      vertical-align: middle;
      border-radius: .3rem;
}
.addtocalendar .atcb-link .text {
display: none;
}
.addtocalendar .atcb-list {
  background: #fff;
  color: #444;
  border: 1px solid #ddd;
}
.addtocalendar .atcb-list a {
  display: block;
  padding: .25rem .5rem;
  color: #444;
  font-size: .9rem;
}
.atcb-list {
  display: none;
}
.atcb-link:focus~ul,
.atcb-link:active~ul,
.atcb-list:hover{
    display: block;
}
article footer .entry-categories {
    margin-bottom: 1rem;
    line-height: 1.5;
}
article footer .entry-meta, article header .entry-meta, article footer .label {
    color: #aaa;
    font-size: .75rem;
}
article footer .label {
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .01rem;
  font-size: .6rem;
  color: #bbb;
}
footer.single .meta-tags {
  margin: 2rem 0;
}
.multi-posts footer.single .meta-tags {
  display: none;
}
footer.single .meta-tags a {
  display: inline-block;
  margin: .2rem .1rem;
  background: #f3f3f3;
  color: #555;
  padding: .4rem .8rem;
  border-radius: .25rem;
  font-size: 1rem;
}
footer.single .meta-tags a:hover {
  background: #eee;
  color: #222;
}
body.page article header .entry-meta, body.page article footer .entry-meta {
    display: none;
}


/*  article content  */

article h1, article h2, article h3, article h4, article h5, article h6 {
text-transform: none;
letter-spacing: 0;
margin-bottom: 1.5rem;
line-height: 1.1;
letter-spacing: -.05rem;
color: #333;
font-weight: bold;
}
article h1 {
  font-size: 1.5rem;
  padding-top: 1rem;
}
article h2 {
  font-size: 1.7rem;
  padding-top: 2rem;
}
article h3 {
  font-size: 1.2rem;
  padding-top: 1rem;
  margin-bottom: .75rem;
}
article h4 {
  font-size: 1.1rem;
}
article h5, article h6 {
  font-size: 1rem;
}
article.type-post p, body:not(.page) article.type-revision p {
    float: none;
}
article section:first-of-type > h1, article section:first-of-type > h2, article section:first-of-type > h3 {
    padding-top: .5rem;
}
article h1 a {
    color: #222;
}
article.type-post h1 a, article.type-revision h1 a {
    color: rgb(68,68,68);
}
p, article ol li, article ul li {
    line-height: 1.8;
    max-width: 54rem;
}
p {
    margin: 0 0 1rem;
}
p, ol, ul, dl {
    color: #191919;
}
aside {
    width: 100%;
    z-index: 10;
}
figure {
    width: 100%;
    margin: 0 0 2rem;
    max-width: 45rem;
}
@media only screen and (min-width: 900px) {
  body.single-post figure:not(.post-featured-image):not(.aligned):not(.splash) {
    margin: 2rem auto;
    max-width: none;
  }
  body.single-post aside figure {
    margin: 0 auto 2rem;
    max-width: 100%;
    left: 0;
    width: auto;
  }
}
figure > a {
    display: block;
}
article figure img {
    width: 100%;
    float: none;
}
figure .img {
float: none;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
height: 100%;
}
figure figcaption {
    color: rgb(117,117,117);
font-size: .9rem;
padding: .25rem 0;
line-height: 1.1;
}
figure > p {
  display: none;
}
figure a:hover {
    text-decoration: none;
}
figure .credit {
    display: block;
    font-size: .7rem;
    font-style: italic;
    color: #aaa;
    float: none;
    clear: none;
}

article ul li, article ol li {
margin-left: 1.5rem;
margin-bottom: .25rem;
padding-left: .5rem;
line-height: 1.5;
}
article li ul, article li ol {
    margin: .5rem 0;
    float: none;
}
article ul > li {
    list-style: disc;
}
article ul.no-bull > li {
  list-style: none;
      margin-left: 0;
      padding-left: 0;
      line-height: 1.1;
      margin-bottom: 1rem;
      text-indent: -1.5rem;
      margin-left: 1.5rem;
}
article ol > li {
    list-style: decimal;
}
article section {
    padding: 1rem 0 3rem;
}
body.search-results article section {
  padding-bottom: 1rem;
}
article section section {
    padding-bottom: 1rem;
}
article .columns section section {
  padding-top: 0;
}
article.page section section, article.page section:last-of-type {
    border: none;
}
article aside {
    clear: both;
    margin: 1rem auto;
    float: none;
}
.media {
  max-width: 100%;
  margin-bottom: 1rem;
  z-index: 100;
}
.media img, .media .img {
  max-width: 100vw;
}
article .media img, article .media .img {
  max-width: 100%;
}
article .media.align-center {
  margin: 4rem auto;
  text-align: center;
  clear: left;
}
article .media.align-center img {
  display: inline-block;
}
article.post .media img, article.revision .media img, article.post .media .img, article.revision .media .img {
  max-width: 100%;
}
.media.splash {
  flex: 1 100%;
  text-align: center;
  max-width: 100vw;
  overflow: hidden;
}
section.splash .media .credit {
  display: none;
}
section.splash .media {
  margin: 0;
  z-index: 0;
}
section.splash h2 {
  position: absolute;
  bottom: 1rem;
  left: 10%;
  z-index: 1;
  color: #fff;
  text-shadow: rgba(0,0,0,.8) 0 1px 1px;
}
@media only screen and (min-width: 700px) {
    article aside {
        clear: right;
        width: 40%;
        float: right;
        margin-left: 1rem;
        max-width: 26rem;
    }
    article aside.float-left {
        clear: left;
        width: 40%;
        float: left;
        margin-left: 0;
        margin-right: 1rem;
        max-width: 20rem;
    }

    figure.align-right, .media.align-right  {
      float: right;
      clear: right;
      margin: 2rem auto 2rem 2rem;
      text-align: right;
      max-width: none;
      width: auto;
      max-width: 50%;
    }
    article figure.align-right:not(.size-thumbnail):not(.size-medium) img, article .media.align-right:not(.size-thumbnail):not(.size-medium) img {
      width: auto;
    }
    figure.align-left, article.page .media.align-left, article.post .media.align-left, article.revision .media.align-left {
      float: left;
      margin-right: 2rem;
      margin-bottom: 1.3rem;
      max-width: 50%;
      width: auto;
    }
    article.revision .media.align-left, article.post .media.align-left, article.page .media.align-left, figure.align-left {
      //width: 11rem;
    }
    figure.size-full, .media .size-full {
      width: auto;
      max-width: none;
    }
    figure.size-large, .media .size-large {
      width: 34rem;
      max-height: none;
    }
    figure.size-medium, .media .size-medium, figure.media.size-medium figcaption {
      width: auto;
    }
    figure.size-thumbnail, .media .size-thumbnail, figure.align-left.size-thumbnail, article.page .media.align-left.size-thumbnail {
      width: 11rem;
    }
    figure.media.size-thumbnail figcaption {
      //display: none;
    }
}
.media.size-medium {
  max-width: 39%;
}
@media only screen and (min-width: 1260px) {
    article aside {
        width: 21rem;
        margin-left: 1rem;
    }
    article.type-post aside, article.type-revision aside {
        width: 13rem;
    }
}
article p img {
    margin: 1rem;
    max-width: 10rem;
    float: left;
}
article blockquote {
font-size: 1.25rem;
color: #888;
line-height: 1.4;
border-left: 4px solid #C8102E;
padding-left: 1.5rem;
margin: 4rem 0;
}
@media only screen and (min-width: 800px) {
  article blockquote {
  font-size: 1.5rem;
  }
}
article blockquote:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 4px;
    background-color: #f4b859;
}
@media only screen and (min-width: 900px) {
    article blockquote {
    margin: 4rem -3rem;
    }
}
article blockquote strong {
font-size: 5rem;
font-weight: bold;
color: #aaa;
line-height: 1.4rem;
}

article aside section {
    font-size: .9rem;
    margin-bottom: 1rem;
    border-bottom: 1px dashed #ccc;
    padding: 0 0 1rem;
}
article aside section:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
    border: none;
}
aside p, article aside ol li, article aside ul li {
    line-height: 1.3;
}
aside figure {
    float: none;
    clear: none;
}
aside.sidebox {
    background: #fafafa;
    box-shadow: rgba(0,0,0,.2) 0 1px 1px;
    padding: 1rem;
    width: auto;
}
aside h1 {
    padding: 0;
    font-size: 1.2rem;
    margin-bottom: 1rem;
}
aside > * :not(p) {
    margin-bottom: 0;
}


figure.float {
  max-width: 10rem;
  margin: 0 auto 1rem;
  width: auto;
}
@media only screen and (min-width: 900px) {
    figure.float {
    max-width: 15rem;
      float: right;
      margin: 0 1rem 2rem;
    }
}


dl.faq dt, dl.faq dd {
  padding: 0;
  float: none;
  clear: none;
  width: auto;
}
dl.faq dd {
margin-bottom: 2rem;
}
@media only screen and (min-width: 700px) {
  dl.faq dd {
  margin-left: 2.5rem;
}
}
dl.faq dd p {
  line-height: 1.4;
}


article section.note {
    padding: 2rem;
    background: #f3f3f3;
}

nav.contents, nav.filter {
padding-left: 1em;
margin-bottom: 1em;
float: none;
background-image: url(images/bg-dotted-square-grey.svg);
background-size: 6px;
background-repeat: repeat-y;
}
nav.contents:after, nav.filter:after {
  display: none;
}

nav.filter h1 {
font-size: 1rem;
color: #aaa;
font-weight: normal;
letter-spacing: 0;
padding: 0;
margin: 0;
}
nav.filter h1:hover {
    cursor: pointer;
}
nav.filter:not(.active) h1:hover {
    color: #c00;
}
nav.filter.filtered h1 {
    font-style: italic;
}
nav.filter.filtered h1:after {
    content: '*';
}
nav.filter a {
    display: none;
    font-size: .9rem;
}
nav.filter.active a {
    display: block;
}
nav.filter.horiz.active a {
    display: inline-block;
}
nav.filter a.active {
    font-weight: bold;
}
nav.filter a span {
    color: #aaa;
}




nav.horiz {
    float: none;
    margin-bottom: 1rem;
}
nav.horiz h1 {
    font-size: 1rem;
    color: #777;
    display: inline-block;
    margin: 0 1rem 0 0;
    padding: 0;
}
nav.horiz > a {
    display: inline-block;
    margin-right: 1rem;
        padding: .25rem .5rem;
        background-color: #f3f3f3;
        color: #222;
        border-radius: .15rem;
        margin-bottom: .5rem;
        border: 1px solid #ddd;
}
nav.horiz > a:hover {
  text-decoration: none;
  color: #000;
  background: #eee;
  border-color: #666;
}
nav.horiz > a.active {
  background: #555;
  color: #fff;
  font-weight: normal;
}
nav.horiz > a span {
  font-size: .75rem;
  color: #666;
  display: inline-block;
  margin-left: .25rem;
}
nav.horiz > a.active span {
  color: #eee;
}

nav.posts {
    padding: 2em 0 1em;
}
nav.posts > * {
padding: .5rem .75rem;
border-radius: 3px;
float: left;
display: inline-block;
text-align: center;
}
nav.posts > * {
    margin: 0 .2em;
}
nav.posts a:hover {
    background-color: #c00;
    color: #fff;
    text-decoration: none;
}
nav.posts span.current {
    background: #ccc;
    color: #fff;
}

#site .wrap.top {
    max-width: 45rem;
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
}
#site .title, #site h1 {
font-weight: bold;
margin: 0 0 .5rem;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 1rem;
padding: 0;
line-height: 1;
}
#site #site-index ul.menu > li {
vertical-align: top;
margin-bottom: .1rem;
}
#site ul.menu a {
line-height: 1.1;
padding: .75rem 0;
display: block;
}

#site nav {
  display: none;
}

@media only screen and (min-width: 900px) {
    #site ul.menu a {
    padding: .5rem 0;
    }
}
#site nav.section ul.menu {
    padding-left: 1rem;
    border-left: 4px solid #444;
}
#site nav.section h1 {
    margin-bottom: .75rem;
}
#site nav.section ul.menu a {
    font-weight: normal;
}
#site nav.section ul.menu li.current-menu-item > a {
    font-weight: bold;
}
#site ul.menu a:hover {
    text-decoration: underline;
}
#site #site-index ul.menu > li > a {
    font-weight: bold;
}
form[title='Search'] {
border-radius: 4px;
-webkit-appearance: none;
width: 100%;
background: #fff;
border: 1px solid transparent;
margin: 0 1rem;
}
#site form[title='Search'] {
  margin: 0 auto;
      max-width: 99%;
      flex: 1 100%;
      min-width: 17rem;
}
#site nav.top-level form[title='Search'] {
    border: none;
}
input[name='search'],input[name='s'] {
font-size: .9rem;
-webkit-appearance: none;
width: 80%;
border: none;
display: inline-block;
float: left;
padding: 1rem 0 .75rem;
margin: 0;
outline: none;
border-radius: 3px;
}
@media only screen and (min-width: 900px) {
    input[name='search'],input[name='s'] {
    font-size: 1.2rem;
    padding: .75rem;
    }
}
form[title='Search'] input[type='submit'] {
-webkit-appearance: none;
border: none;
display: inline-block;
float: left;
margin: 0;
font-size: 1.2rem;
color: transparent;
background-image: url(images/search-icon-grey.png);
background-color: transparent;
background-repeat: no-repeat;
background-position: center center;
padding: .75rem;
border-radius: 4px 0 0 4px;
}
form[title='Search'] input[type='submit']:hover {
    cursor: pointer;
    background-image: url(images/search-icon-red.png);
}
form[title='Search'] h1 {
    display: none;
}
#site nav.top-level ul.sub-menu {
    display: none;
}
#site nav {
    margin: 0 0 2rem;
      flex: 1 0 0;
}
#site-index ul.children {
    border-left: 4px solid #444;
    padding-left: 1rem;
}
#site section.contact {
line-height: 1.7;
color: #999;
font-size: .9rem;
    flex: 1 0 0;
      margin-top: 1rem;
}
#site section.contact p {
  line-height: 1.5;
  margin-bottom: 0;
  margin-top: 1rem;
}
#site .social-icon {
  color: transparent;
}

/*  site nav color schemes  */
#site {
    background: #f3f3f3;
      padding: 1rem;
}
#site h1 {
    color: #aaa;
}
#site ul.menu a {
    color: #999;
}
#site #site-index ul.menu > li > a {
color: #888;
}
#site-index ul.children {
border-color: #ddd;
}
#site section.contact a:not(.social-icon) {
color: #444;
}
#site section.contact strong {
    color: #888;
}
#site section.contact a:not(.social-icon) {
  color: #000;
  text-decoration: underline;
}
#site section.contact a.social-icon:before {
    color: #888;
}
#site.active form[title='Search'], #site:hover form[title='Search'] {
    border-color: #aaa;
}
.contact-info a[href*='map']:before, .event-location-link:before {
    content: "\f041 \00a0";
    font-family: FontAwesome;
}
.contact-info a[href*='@']:before {
    content: "\f0e0";
    font-family: FontAwesome;
    display: inline-block;
    margin-right: .25rem;
}
.contact-info a[href*='tel:']:before {
    content: "\f095";
    font-family: FontAwesome;
    display: inline-block;
    margin-right: .25rem;
}


/*  dark scheme  */
.dark-site-nav #site  {
    background: #333;
}
.dark-site-nav #site .title, .dark-site-nav #site h1 {
    color: #888;
}
.dark-site-nav #site #site-index ul.menu > li > a {
color: #ccc;
}
.dark-site-nav #site ul.menu a {
    color: #bbb;
}
.dark-site-nav #site-index ul.children {
border-color: #444;
}
.dark-site-nav #site section.contact p {
    color: #aaa;
}
.dark-site-nav #site section.contact strong, .dark-site-nav #site section.contact b {
    color: #ddd;
}
.dark-site-nav #site section.contact a:not(.social-icon) {
    color: #eee;
}
.dark-site-nav #site section.contact a.social-icon:before {
    color: #888;
}
.dark-site-nav #site.active form[title='Search'], .dark-site-nav #site:hover form[title='Search'] {
    border-color: #000;
}

#site nav.top-level {
  background: #C8102E;
}
#site nav.top-level ul.menu li > a {
  padding: 1rem;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06rem;
}





section.splash {
    overflow: hidden;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
section.splash img {
    width: 100%;
}
section.splash figure {
    max-width: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
section.splash figure figcaption {
margin: 0 auto;
color: #fff;
font-size: 1.7rem;
font-weight: bold;
box-shadow: rgba(0,0,0,.45) 0 0 78px;
background-color: rgba(0,0,0,.4);
display: inline-block;
padding: 12vw;
}
section.splash figure figcaption .subtitle {
font-size: 1.3rem;
font-weight: normal;
display: block;
margin-top: .5rem;
}
section.splash, article.page section.splash {
    border: none;
    width: 100%;
    padding: 0;
    max-width: 100vw;
    max-height: 50vh;
}
article.main section.splash .bg-img, section.splash .img {
  height: 50vh;
  width: 100vw;
  background-size: cover;
  background-position: center;
}

section.feature.tile {
    margin-top: 1rem;
}
section.feature figure {
    max-width: none;
}
section.feature figure a {
    display: table;
}
section.feature figure img, section.feature figure figcaption {
    display: table-cell;
    float: none;
    clear: none;
    vertical-align: middle;
}
section.feature figcaption {
padding: 2rem;
max-width: 31rem;
}
section.feature h1 {
    font-size: 3rem;
}
section.feature p {
    font-size: 1.5rem;
}



/*  recent-post-item  */
figure.recent-post-item {
    margin: 0;
}
figure.recent-post-item.tile {
    background: #fafafa;
    padding: 0;
}
figure.recent-post-item:not(.no-img) {
    margin-bottom: 1rem;
}
figure.recent-post-item figcaption {
font-size: 1rem;
padding: 0 1rem;
color: #333;
}
figure.recent-post-item.no-img figcaption {
padding: .5rem 0;
}
figure.recent-post-item:not(.no-img) > a {
    display: table;
}
figure.recent-post-item:not(.no-img) a:hover {
    color: #333;
}
figure.recent-post-item a > * {
    display: table-cell;
    vertical-align: middle;
}
figure.recent-post-item.no-img figcaption {
    color: inherit;
    padding-left: 0;
    padding-right: 0;
}
figure.recent-post-item .recent-post-item-image {
    width: 6rem;
    height: 6rem;
    background-size: cover;
    background-position: center;
    float: none;
border: 1px solid #f3f3f3;
}
figure.recent-post-item:hover {
    text-decoration: underline;
}
figure.recent-post-item.subtitle figcaption {
    font-weight: bold;
}
figure.recent-post-item.subtitle figcaption .subtitle {
    font-weight: normal;
    margin-top: .5rem;
    float: none;
}
figure.recent-post-item.title {
  border: 1px solid #eee;
  border-left: none;
  border-right: none;
}
figure.recent-post-item.title:last-of-type {
  margin-bottom: 1rem;
}
figure.recent-post-item.title figcaption {
  font-weight: bold;
}

figure.recent-post-item.no-img a {
    background: #f3f3f3;
    color: #333;
    padding: .5rem 1rem;
    border-bottom: 1px solid #fff;
}
figure.recent-post-item.no-img figcaption {
  padding: 0;
}







    body.full-width .island {
        padding: 0 1rem;
        box-sizing: border-box;
        float: none;
    }

section.stratum, section.contrast-stratum, section.light-contrast-stratum {
    padding: 1rem 0;
    background: #fff;
    border: none;
}
@media only screen and (min-width: 800px) {
    section.stratum, section.contrast-stratum, section.light-contrast-stratum {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}
article section.stratum h1, article section.stratum h2, article section.stratum h3, article section.stratum h4 {
    padding-top: 0;
}
section.contrast-stratum {
    background: rgb(71,91,104);
}
section.light-contrast-stratum {
    background: #fafafa;
}
section.contrast-stratum p, section.contrast-stratum blockquote, section.contrast-stratum figcaption, section.contrast-stratum li {
    color: #eee;
}
section.contrast-stratum figcaption {
    color: #ddd;
}
section.contrast-stratum blockquote strong {
    color: #fff;
}
section.contrast-stratum a:not(.button), section.contrast-stratum h1 a {
    color: #f4b859;
}
section.contrast-stratum section.tile {
    background: rgb(78, 101, 116);
}
section.contrast-stratum h1 {
    color: #fff;
}
section.alt-contrast-stratum {
    background: rgb(226, 179, 74);
}
section.alt-contrast-stratum h1 {
    color: #fff;
    padding-top: 2rem;
}
section.alt-contrast-stratum p {
    color: #333;
}
section.alt-contrast-stratum figure figcaption {
  color: #555;
}
section.alt-contrast-stratum a {
    color: #C8102E;
}
section.centered {
    text-align: center;
}
section.centered .fb-feed {
max-width: 31rem;
margin: 0 auto;
text-align: left;
}
section.centered p, section.centered blockquote, section.centered ul, section.centered ol, section.centered img {
    margin: 1rem auto;
    float: none;
}
section.centered ul > li {
list-style: none;
margin-left: auto;
padding: 0;
margin-right: auto;
}
section.centered figure {
    margin: 1rem auto;
}
section.centered figure img {
    max-height: 25rem;
    width: auto;
    margin: 0 auto;
}

section.cover-image {
background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: none;
  padding: 0;
}

.island.dark-contrast {
  background-color: rgba(0,0,0,.7);
}
.island.dark-contrast h1, .island.dark-contrast p {
  color: #fff;
}
.island.dark-contrast a {
  color: #f4b859;
}

section.case-studies {
    width: 100%;
    padding: 0;
}
article section.case-studies section {
    padding: 2rem 0;
    font-size: .9rem;
}
section.case-studies figure {
    width: 100%;
    background-size: cover;
    box-shadow: rgba(0,0,0,.3) 0 1px 2px;
    max-height: 20rem;
    min-height: 15rem;
}
article section.case-studies h1, section.case-studies p {
    padding: 0;
    margin: 1rem 0;
}

/*
a.pdf:after, a[href*='.pdf']:after {
    content: '\00A0[PDF]';
    font-size: .6rem;
    vertical-align: super;
    font-weight: bold;
    color: #aaa;
}
.post-view.archive a[href*='.pdf']:after, .recent-post-item a[href*='.pdf']:after {
  content: '';
}
*/
.references p {
    line-height: 1.3;
    padding-left: 4rem;
    text-indent: -4rem;
}


@media only screen and (min-width: 600px) {
    #site #site-index ul.menu > li {
        margin-right: 1rem;
        margin-bottom: 0;
        font-size: .9rem;
    }
    #site ul.children {
      margin-left: 1rem;
      border-left: 3px solid #555;
      padding-left: 1rem;
    }

  body.page:not(.full-width) article.main,body.post article.main {
    display: block;
    vertical-align: top;
    }

    section.case-studies {
        display: table;
    }
    article section.case-studies section {
        display: table-cell;
        width: 50%;
        border: none;
        vertical-align: top;
    }
    article section.case-studies section:first-of-type {
        padding-right: 1rem;
    }
    article section.case-studies section:last-of-type {
        padding-left: 1rem;
    }
    section.case-studies figure {
        height: 27vw;
    }
    #site nav.main {
        display: none;
    }
}

@media only screen and (min-width: 1000px) {
  main nav.page {
      display: inline-block;
  }
    dt, dd {
    float: left;
    }
    dt {
        width: 13rem;
        clear: left;
        padding-right: 1rem;
    }
    dl.table dt {
        width: auto;
    }
    dd {
        clear: right;
        max-width: 37rem;
    }

    #site nav.top-level {
        display: none;
    }
}

@media only screen and (min-width: 1260px) {
    aside.float-left {
        float: left;
        margin: 0 2rem 2rem 0;
        clear: left;
    }
    .wide-viewport-only {
        display: block;
    }
    aside button, aside a.button {
        width: 10rem;
    }
    nav.parent-site .wrap.top, header.top > .wrap.top, footer.top .wrap.top, nav.breadcrumbs .wrap.top, .island, main .wrap.top, .superheader .wrap.top  {
        width: 1200px;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
    }
    body.full-width main .wrap.top {
        width: 100%;
    }
    section.float {
        float: left;
        margin-right: 1rem;
        width: 28.6%;
    }
    section.centered section.float {
    margin: 0;
    min-height: 20rem;
    border-right: 4px solid rgba(0,0,0,.05);
    border-bottom: none;
    padding: 2rem;
    text-align: center;
        width: 27%;
    }
    section.float:last-of-type, section.centered section.float:last-of-type {
        border: none;
    }
    section.centered section.float:last-of-type {
    }
    section.centered figure.directory-photo {
        margin: 1rem;
        display: inline-block;
          float: none;
    }
}






/*  things added after branch to test-style  */

.construction {
  background-image: url(images/construction.png);
  background-repeat: repeat-x;
  text-align: center;
  color: #fff;
  padding: 1rem;
  text-shadow: rgba(0,0,0,1) 0 1px 7px;
  font-weight: bold;
  font-style: italic;
  box-shadow: rgba(0,0,0,1) 0 1px 200px inset;
}

body.error404 main form[title='Search'] {
    clear: both;
    float: left;
    border: 1px solid #ccc;
      max-width: 40rem;
}
body.error404 main code {
    color: #444;
    font-weight: bold;
}

section.grid, .gallery {
    background: #f6f6f6;
    padding: 1rem;
}

@media only screen and (min-width: 700px) {
    section.grid, .gallery {
      -webkit-column-count: 2;
      -moz-column-count: 2;
      column-count: 2;
    }
}
@media only screen and (min-width: 1200px) {
    section.grid, .gallery {
      -webkit-column-count:; 3;
      -moz-column-count: 3;
      column-count: 3;
    }
}
section.grid figure, .gallery .media {
    display: inline-block;
    -webkit-column-break-inside: avoid;
  width: auto;
  margin: 0 0 1rem;
  float: none;
  clear: none;
  padding: 0;
  border: 1px solid #ddd;
}
section.grid figure figcaption, .gallery .media figcaption {
    padding: .5rem;
    color: #555;
}
.gallery .media .size-medium {
  width: auto;
}
@media only screen and (min-width: 900px) {
body.single-post .gallery figure:not(.post-featured-image):not(.aligned):not(.splash) {
    margin: 0 0 1rem;
}
}
@media only screen and (min-width: 700px) {
.gallery figure.size-medium, .media .size-medium, .gallery figure.media.size-medium figcaption {
    width: auto;
}
}






/*  alpha index view  */
nav.alpha-index a {
  display: inline-block;
  color: #bbb;
  padding: .25rem;
  border-radius: .15rem;
  width: 1rem;
  text-align: center;
  margin: .2rem;
}
nav.alpha-index a:not(.empty) {
  background: #666;
  color: #fff;
}

nav.alpha-index a.all-selected {
  width: 2rem;
  background: #bbb;
}

nav.alpha-index a.all-selected-opt {
  background: #666;
    width: 2rem;
}

nav.alpha-index a:hover {
  text-decoration: none;
}
nav.alpha-index a:hover:not(.empty), nav.alpha-index a.selected, a.all-selected, nav.alpha-index a:focus {
  background: #aaa;
}
table.alpha-index td:first-of-type {
    font-weight: bold;
    vertical-align: top;
    padding-top: 1rem;
}
table.alpha-index .profiles-list {
    -webkit-columns: 3 12rem; /* Chrome, Safari, Opera */
    -moz-columns: 3 12rem; /* Firefox */
    columns: 3 12rem;
    column-width: 12rem;
  -webkit-column-span: all;
    column-span: all;
}
table.alpha-index a {
  display: block;
  padding: .5rem 0;
}
table.alpha-index.one-alpha td {
  border: none;
}



a.term span.count {
  color: #666;
      font-size: .65rem;
      background: #f3f3f3;
      display: inline-block;
      padding: .1rem .3rem;
      border-radius: .5rem;
}


aside.main {
  width: auto;
  padding: 2rem;
}
aside.main section {
  margin-bottom: 3rem;
}
aside.main section h3 {
  border-bottom: 1px solid #eee;
  padding-bottom: .5rem;
  color: #777;
  margin-bottom: .75rem;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .08rem;
  font-size: .9rem;
}
aside.main section h3 a {
  color: inherit;
}



a.more {
  margin: 1rem 0 0;
  display: block;
}
#twitter-widget-0 {
  margin: 1rem 0 0;
}



figure.media:not(.featured-image):not(.no-zoom):hover a:after {
  content: "\f065";
  font-family: FontAwesome;
  z-index: 100;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  background: rgba(0,0,0,.8);
  padding: .5rem;
}

.photo-lightbox {
  position: fixed;
  background: rgba(0,0,0,.85);
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1000;
}
.photo-lightbox:hover {
  cursor: pointer;
}
.photo-lightbox .close {
  position: absolute;
  top: 3rem;
  right: 0;
  z-index: 100;
}
.photo-lightbox .close:after {
  content: "\f066";
  color: #fff;
  font-size: 2rem;
  font-family: FontAwesome;
  padding: 1rem;
}
.photo-lightbox img {
  display: block;
  margin: 6vh auto 0;
}
.photo-lightbox img.landscape {
  width: 90%;
  height: auto;
}
.photo-lightbox img.portrait {
  height: 90%;
  width: auto;
}


.archive.fimg {
  display: block;
  width: 20rem;
  height: 14rem;
  background-position: center;
  background-size: cover;
  float: right;
  margin-left: 2rem;
  z-index: 1;
}


.post-view.archive {
  margin: 1rem 0;
  padding: 2rem;
  background: #fff;
  box-shadow: rgba(0,0,0,.1) 0 1px 3px;
  display: block;
}
.post-view.archive a:hover {
  text-decoration: none;
}
.post-view.archive .post-title {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1rem;
  color: #444;
}
.post-view.archive .post-title a {
    color: #444;
}
.post-view.archive:hover .post-title a {
  color: #c00;
}
.post-view.archive .post-excerpt {
  line-height: 1.4;
  margin-bottom: 1rem;
  min-height: 7.25rem;
}
.post-view.archive.no-img .post-excerpt {
  min-height: auto;
  margin-bottom: 0;
}
.post-view.archive .post-excerpt a {
  color: #222;
}
.post-view.archive .post-featured-image {
  display: block;
      width: 20rem;
      height: 14rem;
      background-position: center;
      background-size: cover;
      float: right;
      margin-left: 4rem;
      z-index: 1;
}
.post-view.archive.directory .post-featured-image {
  width: 9rem;
  height: 9rem;
}
.post-view .post-meta {
  text-transform: uppercase;
    letter-spacing: .05rem;
    margin-bottom: 1rem;
    font-weight: bold;
  color: #aaa;
  font-size: .85rem;
}
.post-view .post-meta a {
  color: #aaa;
}
.post-view .post-meta a:hover {
  color: #c00;
}
.post-view.archive .highlight {
  font-weight: bold;
      background: #ffe553;
      border-bottom: 1px dotted #aaa;
}

body.single-post .post-featured-image {
  display: block;
  margin: 0 auto 2rem;
  max-height: 70vh;
}
body.single-post .post-featured-image img {
  display: block;
  margin: 0 auto;
  max-height: 70vh;
}
body.single-post .post-featured-image figcaption {
text-align: center;
}
body.single-post .post-content .post-featured-image {
  display: block;
  margin: 0 0 1rem 1rem;
  float: right;
  width: auto;
      max-width: 29rem;
}
body.single-post .post-content .post-featured-image img {
  display: block;
  max-height: 20rem;
  width: auto;
}
body.single-post .post-featured-image.wide-landscape, body.single-post figure.post-featured-image.wide-landscape {
      max-width: 90%;
}
.post-view.single {
padding: 0 0 1rem;
}
.post-view.single h1 {
  //margin-top: 2rem;
}

.post-view.archive .post-date {
  display: none;
  text-transform: none;
      letter-spacing: normal;
      font-weight: normal;
      font-size: .8rem;
      margin: 0;
}
.post-view.archive .post-date .label {
  text-transform: uppercase;
  font-size: .7rem;
  font-weight: bold;
}
.post-previews.title {
  //border-top: 1px solid #eee;
}
.post-view.title:last-of-type {
  //border-bottom: 1px solid #eee;
}
.post-view.title a {
  display: block;
  padding: .5rem 0;
}
.post-view.title a:before {
  content: '\2022';
  display: inline-block;
  margin-right: .5rem;
  color: #555;
}

.post-view.preview-vertical, .post-view.preview-horizontal {
  margin: .5rem;
  background: #fff;
  border: 1px solid #eee;
  flex: 1 0 auto;
  align-items: flex-start;
    max-width: 22rem;
}
@media only screen and (min-width: 800px) {
  .post-view.preview-vertical, .post-view.preview-horizontal {
    width: 25%;
  }
}
.post-previews.featured-first .post-view.preview-vertical:first-of-type {
  flex: 1 0 55%;
}
.post-view.preview-vertical .post-featured-image, .post-view.preview-horizontal .post-featured-image {
  height: 13rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-color: #ddd;
}
.post-view.preview-vertical .text, .post-view.preview-horizontal .text {
  padding: .75rem;
}
.post-view.preview-vertical a, .post-view.preview-horizontal a {
  color: #333;
}
.post-view.preview-vertical a:hover, .post-view.preview-horizontal a:hover {
  text-decoration: none;
}
.post-view.preview-vertical .post-title, .post-view.preview-horizontal .post-title {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: .5rem;
    color: #222;
    line-height: 1.2;
}
.post-view.preview-vertical:hover .post-title a, .post-view.preview-horizontal:hover .post-title a {
  color: #c00;
}
.post-view.preview-vertical .post-excerpt, .post-view.preview-horizontal .post-excerpt {
  font-size: .85rem;
  line-height: 1.6;
}

.post-view.preview-horizontal {
  min-height: 10rem;
  padding-left: 10rem;
}
@media only screen and (min-width: 1000px) {
  .post-view.preview-horizontal {
    width: 34%;
  }
}
.post-view .post-image-link {
  display: block;
}
.post-view.preview-horizontal .post-image-link {
  position: absolute;
  left: 0;
  top: 0;
}
.post-view.preview-horizontal .post-featured-image {
  width: 10rem;
  height: 10rem;
}
.post-view.preview-horizontal.small .post-featured-image {
  width: 5rem;
  height: 5rem;
}
.post-view.preview-horizontal.small {
  max-width: none;
  height: auto;
}


.categories-preview {
  display: flex;
      flex-flow: row wrap;
      justify-content: center;
      clear: both;
      margin-top: 2rem;
}
.category-preview {
  margin: .5rem;
  width: 15rem;
  max-width: 15rem;
  border: 1px solid #eee;
  padding: 1rem;
  background: #fff;
  border-radius: 4px;
  flex-grow: 1;
  color: #333;
}
.category-preview:hover {
  text-decoration: none;
  color: #c00;
  border-color: #ddd;
}
.category-preview .title {
    z-index: 1;
    width: 100%;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: .5rem;
}
.category-preview .img {
    width: 5rem;
    height: 5rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    float: right;
    margin: 0 0 .5rem .5rem;
    border-radius: 4px;
}
@media only screen and (min-width: 1000px) {
.category-preview .img {
    width: 7rem;
    height: 7rem;
}
}
.category-preview .description {
    color: #333;
    line-height: 1.3;
}
.category-preview .mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: rgba(0,0,0,.4);
    display: none;
}


.hr {
  border-top: 3px solid #eee;
  margin: 3rem auto 1rem;
}

.multi-posts header.has-featured-image {
  background: #333;
}
main .multi-posts header.has-featured-image h1.multi-posts {
  padding: 0;
  border: none;
  color: #666;
}
.multi-posts header.has-featured-image h1.multi-posts span.term {
  display: block;
  color: #ddd;
  margin-top: .5rem;
}
.multi-posts header.has-featured-image .island {
    display: flex;
    flex-flow: row;
    padding-right: 0;
}
.multi-posts header.has-featured-image .text {
    padding: 1.5rem;
    color: #fff;
    width: 60%;
    line-height: 1.8;
}
.multi-posts header.has-featured-image .img {
  width: 40%;
  background-size: cover;
  background-position: center;
}

h2.cover-text {
  position: absolute;
  top: 300px;
  left: 20%;
}

.flex {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}
.flex > * {

}

.links-all-pages {
  padding: 1rem 0;
}
.links-all-pages.default {
  line-height: 1.4;
}
.links-all-pages.tiles {
  display: flex;
  justify-content: center;
  flex-flow: row wrap;
  padding: 1rem;
}
.links-all-pages a:hover {
  cursor: pointer;
}
.links-all-pages .default {
  display: block;
}
.links-all-pages .menu {
  background: #eee;
      color: #444;
      display: block;
      padding: .75rem 2.25rem .75rem .75rem;
      border-bottom: 1px solid #fff;
      max-width: 16rem;
      text-decoration: none;
}
.links-all-pages .menu:hover {
  background: #c00;
  color: #fff;
}
.links-all-pages .pages-tiles {
  display: flex;
  align-items: center;
  width: 12rem;
  text-align: center;
  background: #f3f3f3;
  border: 1px solid #ddd;
  height: 7rem;
  justify-content: center;
  margin: .5rem;
  padding: .5rem;
}

.superheader {
  z-index: 2000;
  background: #c02;
  height: 10px;
  font-size: .9rem;
}
body.admin-bar .superheader {
  //top: 32px;
}
.superheader .wrap.links {
  display: flex;
  justify-content: flex-end;
  padding: .5rem 0;
  color: rgba(0,0,0,.3);
}
.superheader .wrap.links a {
  display: inline-block;
  padding: 0 1rem;
  color: #fff;
}
.superheader a.give {

}
.superheader nav.isu {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;;
  align-items: center;
  max-width: 1172px;
  margin: 0 auto;
  padding: 1rem 0;
}
.superheader nav.isu > *:first-of-type {
  margin-right: auto;
}
.superheader nav.isu a {
  color: #ddd;
  font-weight: bold;
  padding: 1rem 0;
  font-size: .85rem;
  margin: 0 1rem;
  border-bottom: 3px solid transparent;
}
.superheader nav.isu a:first-of-type {
  margin-left: 0;
}
.superheader nav.isu a:last-of-type {
  margin-right: 0;
}
.superheader nav.isu a:hover {
  color: #fff;
  border-color: #c00;
  text-decoration: none;
}


.hide-page-nav main nav.page {
  display: none;
}

.tiles {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
}
.tiles .tile, .tiles .page-preview.tile {
  flex: none;
  margin: auto auto 1rem;
  width: 23rem;
  height: 16rem;
}


body > nav#site {
  display: none;
}


.text-box-overlay {
  display: block;
  padding: 3rem;
  margin: 4rem 1rem 4rem;
  max-width: 25rem;
  background: rgba(57, 47, 44, 0.88);
}
.text-box-overlay:hover {
  text-decoration: none;
}
.text-box-overlay .key-message {
  font-size: 1.3rem;
  line-height: 1.1;
  margin-bottom: 1rem;
  padding: 0 0 1rem;
  color: #fff;
  text-transform: uppercase;
  font-weight: bold;
}
@media only screen and (min-width: 1000px) {
.text-box-overlay .key-message {
    font-size: 2.8rem;
}
}
.text-box-overlay .key-message-description {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 100;
  line-height: 1.3;
  font-family: 'Merriweather', serif;
}

.atc, .ath {
  display: table-cell;
  padding: 15px;

}
.award-view {
  display:table;
  width:100%;
  margin-top: 15px;
}
.atr {
  display: table-row;
}

.atr.tint1 .atc {
  font-weight: bold;
}

.tint1 {
  background: #dedede;
}

.ahc { 
  background-color: #ddd;
}

.atr:nth-child(0), .atr:nth-child(even){
  background: #efefef;
}

span.award-date {
  font-size: .75rem;
}

span.aos {
  font-size: .75rem;
  color: #666;
}
