.annotated-image-component {
  opacity: 0;
  transition: opacity 0.5s;
  -webkit-transition: opacity 0.5s;
  -moz-transition: opacity 0.5s;
  -ms-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  position: relative;
}

.annotated-image-component.appeared {
  opacity: 1;
}

.annotated-image-component .popover-title {
  background-color: transparent;
  font-weight: normal;
  border-bottom: 0;
  line-height: 0.85em;
}

.annotated-image-component .sidebar-wrapper {
  height: 300px;
  overflow: auto;
  position: relative;
  padding: 20px;
  box-shadow: inset -3px 0px 8px rgba(0, 0, 0, 0.6);
}

.annotated-image-component .sidebar-wrapper .close {
  position: absolute;
  top: 20px;
  right:10px;
  font-size: 32px;
}

.annotated-image-component.sidebar-fixed .details > div,
.annotated-image-component.sidebar-fixed .details > div > div {
  height: 100%;
}

.annotated-image-component figcaption {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.revealed-image-wrapper {
  position: fixed;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  width:100%;
  height:100%;
  padding:10px;
  z-index: 2000;
}

.revealed-image-container {
   box-sizing:border-box;
  -moz-box-sizing:border-box;
  height:100%;
  width: 100%;
  background: #444;
  background: rgba(1,1,1, 0.95);
  text-align: center;
  padding:40px;
  border:2px solid #222;
  box-shadow: 1px 1px 3px #000;
  border-radius: 6px;
}

.revealed-image-container img {
  height:auto;
  width:auto;
  max-width: 100%;
  max-height: 100%;
  position: relative;
  top:50%;
}

.revealed-image-container .image {
  width: 100%;
  height: 100%;
  background-size: contain;
  -moz-background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

.revealed-image-wrapper .close {
  position: absolute;
  right: 30px;
  top: 20px;
  color: #fff!important;
  opacity: 0.85;
  filter:alpha(opacity=85);
}

.revealed-image .close:hover {
  opacity: 1;
  filter:alpha(opacity=100);
}

.reveal-button {
  position: absolute;
  right: 10px;
  background: ;
  bottom: 10px;
  color: #fff;
  background: #000;
  padding: 2px 5px;
  border-radius: 4px;
  opacity: 0.75;
  filter:alpha(opacity=75);
}

.reveal-button:hover {
  opacity: 1;
  filter:alpha(opacity=100);
  color:#fff;
  text-decoration: none;
}

.with-background-image{
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}


.brief-component .nav li a {
position: relative;
padding-right: 0.5em;
}

.brief-component .nav .menu-item .nested {
  display: none;
}

.brief-component .nav .menu-item.active .nested {
  display: block;
}

.brief-component .section-nav-wrapper > * {
height: 100%;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.brief-component > .section-container {
  padding: 50px 0;
}

.brief-component > .section-container > .section-content{
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  padding:20px;
}

.brief-component > .section-container > .section-nav-wrapper{
   display: none;
 }

.section-content{
  overflow:auto;
}

.section-items .section-content {
  overflow: visible;
}

.brief-component .brief-component{
  height:auto!important;
}

.brief-component > .section-container > .section-content .section-content,
.brief-component > .section-container .section-container{
  width:100%;
  padding:0;
  margin:0;
}

.brief-component{
  position:relative;
}

.section-items .brief-component {
  width: 100%!important;
  float: none;
  margin: 0;
  position: static;
}

.section-title {
  margin-bottom: 0.5em;
}

.section-items .section-title {
  font-size: 22px;
}

.section-content img{
  max-width: 38.2%;
  float: right;
  margin: 0 0 1em 1em;
}

.section-nav-wrapper .active > a{
  font-weight:bold;
}

.section-items > .subcomponent-container > * {
  float:none;
  display:block;
}

.brief-component .download {
  font-size: 11px;
  text-decoration: none;
  text-transform: uppercase;
  display: block;
}

.brief-component .download:hover {
  text-decoration: underline;
}

.brief-component .download i {
  margin-right: 5px;
  color: #666666;
  font-size: 11px;
}

.brief-component .section-content .highlight {
  font-weight: bold;
  display: block;
  color: #000;
}

.brief-component .section-title.expanded {
  margin-bottom: 1em;
}

.brief-component .section-title.section-root .section-expand {
  display: none;
}

@media only screen and (min-width: 1025px) {
  .brief-component .section-content .section-expand {
    display: none;
  }
}

.date-list-wrapper {
  padding: 50px 0;
}

.date-list {
  list-style: none;
  margin:0;
}

.date-list-title {
  margin-bottom: 25px;
}

.date-item {
  margin: 10px 0;
}

.date-item .description {
  margin-left: 25%;
}

.date-item .date {
  float:left;
  width: 25%;
  font-size: 0.75em;
  text-transform: uppercase;
  line-height: 20px;
}

.component-container > .divider-component.component {
  border-top: 2px solid #000;
}

.divider-component .component-container h2,
.divider-component .component-container h3{
  display: inline;
}

/**
 * Flow Components
 */
  .flow-chart-component{
    overflow: hidden;
  }
  .flow-chart-component svg {
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
  }

  .flow-chart-component svg.admin:not(.active) {
    cursor: crosshair;
  }

  .flow-chart-component .flow-chart path.link{
    fill: none;
    stroke: #000;
    stroke-width: 4px;
    cursor: default;
  }

  .flow-chart-component svg.admin:not(.active) {
    cursor: crosshair;
  }

  .flow-chart-component svg:not(.active) circle.node,
  .flow-chart-component svg.admin:not(.active) path.link {
    cursor: pointer;
  }

  .flow-chart-component .flow-chart path.link.selected {
    stroke-dasharray: 10,2;
  }

  .flow-chart-component .flow-chart path.link.dragline {
    pointer-events: none;
  }

  .flow-chart-component .flow-chart path.link.hidden {
    stroke-width: 0;
  }

  .flow-chart-component .flow-chart circle.node {
    cursor: pointer;
  }

  .flow-chart-component .flow-chart text {
    pointer-events: none;
  }

  .flow-chart-component .flow-chart text.id {
    text-anchor: middle;
  }

  .flow-chart-component svg defs marker path{
    fill: #444;
  }

  .flow-chart-component .svg-wrapper{
    position: relative;
  }

  .flow-chart-component .svg-wrapper .svg-admin{
    position: absolute;
    z-index: 1001;
    background: rgba(255,255,255, 0.75);
    padding: 2px 10px;
    color: #000;
    border-radius: 10px;
    font-weight: bold;
    border: 1px solid #444;
  }

  .flow-chart-component .svg-wrapper .svg-admin button:focus,
  .flow-chart-component .svg-wrapper .svg-admin button:hover{
    text-decoration: none;
    outline: none;
  }

  .flow-chart-component .svg-wrapper .svg-admin.link .btn.handle,
  .flow-chart-component .svg-wrapper .svg-admin.link .btn.edit,
  .flow-chart-component .svg-wrapper .svg-admin .btn-group{
    display: none;
  }
  .flow-chart-component .svg-wrapper .svg-admin.link .btn-group {
    display: inline-block;
  }

  .flow-chart-component .show-more {
    display: block;
    background: url('../img/arrow-line-up.png') no-repeat center center;
    width: 100%;
    height: 30px;
    cursor: pointer;
  }

  .flow-chart-component.show-all .show-more {
    background: url('../img/arrow-line-down.png') no-repeat center center;
  }

  .flow-chart-component .details{
    position: absolute;
    top: 100%;
    margin-top: -70px;
  }
  .flow-chart-component.show-all .details{
    top: 0;
    height: 100%;
    background-color: #ffffff;
    margin-top:0;
  }

  .flow-chart-component > .row-fluid{
    overflow: hidden;
  }

  .flow-chart__legend {
    position: absolute;
    top: 25px;
    left: 25px;
    padding: 5px 7px;
    background-color: #40403f;
    box-sizing: border-box;
  }

  .legend__keys {
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: transparent;
  }

  .legend__key {
    height: 20px;
    padding: 2px 0;
    background-color: transparent !important;
  }

  .key__color {
    width: 12px;
    height: 12px;
    display: inline-block;
  }

  .key__text {
    color: #fff;
    font-size: 14px;
    line-height: 20px;
    text-shadow: 1px 1px 1px rgba(0,0,0,.25);
  }

  @media only screen and (min-width: 768px) {
    .flow-chart-component .show-more-overlay,
    .flow-chart-component .show-more {
      display: none;
    }
    .flow-chart-component.show-all .details{
      height: auto;
      background-color: transparent;
    }
    .flow-chart-component .details{
      position: relative;
      margin-top: 0px;
      top:0;
    }
  }

/* End Flow Components */


/**
 * Flow Components
 */
  .flow-component > .component-wrapper > .component-container > .map-component:last-child {
    padding-bottom: 0;
  }

  .flow-component > .component-wrapper.collapsed{
    padding: 0;
  }
/* End Flow Components */


/**
 * Grid Component
 */
  .grid-component{
    position:relative;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
  }

  .grid-component.with-background-image .grid-wrapper{
    background-image:url(../img/bg-stripe-grey.png);
    height:100%;
    width:100%;
    box-sizing:content-box;
    -moz-box-sizing: content-box;
  }

  .grid-component.without-background-image .grid-wrapper{
    background-image:url(../img/bg-stripe-tan.png);
  }

  .grid-component .grid-header{
    color: #fff;
    text-align:center;
    padding-bottom:30px;
  }


  .grid-component .grid-wrapper {
    position: relative;
  }

  .grid-component .grid-content-wrapper {
    position: absolute;
    bottom:0;
    width: 100%;
  }

  .grid-component.with-active-item .grid-content-wrapper {
    position: relative;
  }

  .grid-items-wrapper {
    background: #333;
    background: rgba(0, 0, 0, 0.8);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#cc000000',GradientType=0 ); /* IE6-9 */
    padding-bottom: 50px;
  }

  .grid-component.with-active-item .grid-items-wrapper {
    padding-bottom: 0;
    background:transparent;
    filter:none;
  }

  .grid-items-wrapper > .title {
    width: 100%;
    text-align: center;
    font-size: 1em;
    line-height: 3em;
    color: #fff;
  }

  .grid-item-wrapper.active-item > .grid-item-contents > .grid-item-container {
    z-index: 10;
  }

.grid-item-wrapper.active-item > .grid-item-contents > .grid-item-container > .component {
  background-color:#fff;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

  .grid-component.without-background-image .grid-header{
    color: #000;
  }


  .grid-component .grid-header h2{
    font-size:8em;
    padding-bottom:10px;
  }

  .grid-component .grid-header h3{
    font-size:4em;
    padding-bottom:10px;
  }


  .grid-component .grid-header p{
    line-height:1em;
    padding: 50px 0;
  }

  .grid-header h2{
    line-height:1em!important;
  }

  .grid-component .grid-wrapper{
    padding: 50px 0 0;
  }

  .grid-item-component{
    box-sizing:border-box;
    -moz-box-sizing: border-box;
    display: none;
  }

  .grid-item-component.active-item {
    display: block;
  }

  .grid-item-text{
    position:relative;
    -moz-box-sizing:border-box;;
    box-sizing:border-box;
  }
  .grid-item-text > button{
    position:absolute;
    right:0;
    top:0;
    z-index:100;
    padding: 5px;
  }

  .grid-background{
    height: 100px;
    background-position: top center;
    -moz-background-size: cover;
    background-size: cover;
    min-height:100px;
    margin: -10px -10px 10px;
    box-shadow: 0px 0px 60px rgba(0,0,0,.5);
    -moz-box-shadow: 0px 0px 60px rgba(0,0,0,.5);
    border-bottom: 3px solid rgba(255,255,255,.9);
  }

  .grid-item-text{cursor:pointer;}
  .grid-component:not(.with-active-item) .grid-item-image.with-background-image {
    display: block;
    margin: -10px -10px 10px;
    height: 100px;
  }

  .grid-container{
    margin: 0 -10px;
    height:100%;
  }

  .grid-component.with-active-item .grid-item-text {
    opacity: .7;
    filter:alpha(opacity=70);
  }

  .grid-component.with-active-item .grid-item-text.active {
    opacity: 1;
    filter:alpha(opacity=100);
  }

  .grid-items-wrapper .grid-item-text{
    padding:10px;
    border-top: 3px solid #666;
    box-shadow: 0px 0px 2px rgba(50, 50, 50, 0.5);
    background-color: #fff;
  }

  .grid-items-wrapper .tabs .grid-item-text-wrapper {
    box-sizing: border-box;
    -moz-box-sizing:border-box;
  }

  .grid-items-wrapper .grid-item-text.active {
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9);
  }


  .grid-items-wrapper .grid-item-text:after{
    display:block;
    width:30px;
    height:30px;
    position:absolute;
    right:0;
    bottom:0;
    content: ' ';
    background: #ccc url(../img/grid-arrow.png) no-repeat center center;
  }

  .grid-component.with-active-item .grid-items-wrapper  .grid-item-text:after{
    display:none;
  }

  .grid-item-title{
    font-size:16px;
    line-height:1em;
    padding: 5px 0;
    margin-right:10px;
  }

  .grid-item-subtitle{
    font-size: 12px;
    font-weight:bold;
    margin-bottom:0;
  }

  .grid-items-wrapper .grid-container > .grid-item-wrapper.inactive-item {
    display: none;
  }

  .grid-items-wrapper .tabs {
    position:relative;
  }

  .grid-items-wrapper .tabs .nav-link {
    position: absolute;
    top: 50%;
    margin-top: -14px;
    background-color: #fff;
    padding: 5px 7px;
    opacity: 0.7;
  }

  .grid-items-wrapper .tabs .nav-link.prev {
    border-radius: 4px 0 0 4px;
  }

  .grid-items-wrapper .tabs .nav-link.next {
    border-radius: 0 4px 4px 0;
  }

  .grid-items-wrapper .tabs .nav-link:hover {
    opacity: 1;
  }

  .grid-items-wrapper .tabs .nav-link.next {
    right: -25px;
  }

  .grid-items-wrapper .tabs .nav-link.prev {
    left: -25px;
  }

  .grid-item-contents,
  .grid-item-contents .grid-item-container {
    height:100%;
  }

  .grid-item-contents .grid-item-container {
    overflow: auto;
  }

.grid-item-component {
  height:100%;
}

  .grid-item-component .grid-item-text.internal-header {
    padding-bottom: 20px;
  }

  .grid-items-wrapper .tabs .grid-item-text{
    padding-bottom: 30px;
  }

  .grid-items-wrapper .tabs .grid-item-text{
    padding-bottom: 30px;
  }

  .with-active-item .grid-items-wrapper .tabs .grid-item-text{
    padding-bottom: 15px;
  }
/* End Grid Component */

/**
 * Image components
 */
  .image-component {
    padding:0!important;
    opacity: 0;
    transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
  }

  .image-component figcaption {
    padding-top: 3px;
  }

  .image-component.appeared {
    opacity: 1;
  }

  .annotated-image-component figcaption {
    padding: 0 10px;
  }

  .annotated-image-component figcaption .credit,
  .image-component figcaption .credit {
    display: inline;
    margin: 0;
    font-size: 0.9em;
  }

  .annotated-image-component figcaption .credit:before,
  .image-component figcaption .credit:before{
    content: '(';
  }

  .annotated-image-component figcaption .credit:after,
  .image-component figcaption .credit:after {
    content: ')';
  }

  .slider-item-component .layout-block-component .image-component,
  .slider-item-component .layout-block-component .image-component > .component-container {
    max-height: 100%;
    height: 100%;
  }

/* End Image components */


.gallery-item > .component-wrapper {
  display:none;
}

.gallery-item.active-item > .component-wrapper {
  display: block;
}

.landing-gallery-component{
  position:relative;
}
.landing-gallery-component > .subcomponent-slider,
.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper{
  height: 100%;
  width: 100%;
  position: absolute;
}

.landing-gallery-component > .subcomponent-slider{
  top:0;
}

.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper{
  padding-top:0;
  top:0;
}

.landing-gallery-component > .subcomponent-slider{
  z-index: 1;
}

.landing-gallery-component > .subcomponent-slider > .slider-wrapper,
.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper > .slider-container,
.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper > .slider-container > .component,
.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper > .slider-container > .component > .gallery-slide-item{
  height:100%;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}

.landing-gallery-component > .subcomponent-slider > .slider-wrapper > .slider-contents-wrapper > .slider-container > .component > .gallery-slide-item{
  padding-left: 0;
  padding-right:0;
  padding-top: 250px;
}

.landing-gallery-component > .landing-header-wrapper,
.landing-gallery-component > .gallery-items-wrapper{
  position:relative;
}

.landing-gallery-component > .landing-header-wrapper{
  padding:50px 0;
  box-sizing:content-box!important;
  -moz-box-sizing:content-box!important;
}

.gallery-items-wrapper{
  z-index:2;
}

.gallery-slide-contents{
  width:38.2%;
  float:right;
}
.landing-header{
  line-height:2em;
  color: #fff;
  padding-right:20px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}

.landing-header > *{
  position:relative;
  z-index:2;
}

.landing-header > h2{
    line-height:1em;
    font-weight:normal;
    padding:40px 0 20px;
    letter-spacing: normal;
    text-transform: uppercase;
    width:61.8%;
  }

.landing-gallery-component > .subcomponent-wrapper > .subcomponent-container > .gallery-item-component{
  width:50%;
  float:left;
  background-color:transparent!important;
  border: 0;
}

.landing-gallery-component > .subcomponent-wrapper > .subcomponent-container{
  margin: 0 -10px;
}

.landing-gallery-component.with-loaded-interactive > .subcomponent-wrapper > .subcomponent-container{
  margin: 0px;
}

.gallery-item-click{
  margin: 10px 10px 0;
  padding:10px;
  position:relative;
  z-index:2;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  cursor:pointer;
  background-color: #fff;
}

.with-loaded-interactive > .gallery-items-wrapper > .subcomponent-container > .gallery-item-component > .gallery-item > .gallery-item-click{
  padding:0;
  margin:0;
  background-color:transparent;
  height:auto!important;
}

.gallery-slide-contents .btn{
  display:block;
}

.gallery-slide-contents .count{
  position: absolute;
  bottom: 10px;
  right: 10px;
  margin-bottom: 0;
}

.gallery-slide-contents{
  position:relative;
}

.landing-gallery-component.with-loaded-interactive > div{
  display:none;
}

.landing-gallery-component.with-loaded-interactive > .gallery-items-wrapper{
  margin: 0;
  display:block;
  width:100%;
}

.landing-gallery-component.with-loaded-interactive > .gallery-items-wrapper > .subcomponent-container > .gallery-item-component > .gallery-item{
  display:none;
}

.landing-gallery-component.with-loaded-interactive > .gallery-items-wrapper > .subcomponent-container > .gallery-item-component > .gallery-item.loaded-interactive{
  display:block;
}

.landing-gallery-component.with-loaded-interactive > .subcomponent-wrapper > .subcomponent-container > .gallery-item-component{
  width:100%;
  float:none;
}

.landing-gallery-component.with-loaded-interactive >.gallery-items-wrapper > .uber-button-wrapper{
  display:none;
}

.gallery-slide-contents{
  color:#fff;
  background:#000;
  background: rgba(0,0,0,.8);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#cc000000',GradientType=0 ); /* IE6-9 */
  box-sizing: border-box;
  -moz-box-sizing:border-box;
  padding:20px;
}

.gallery-slide-contents h2{
  font-weight:normal;
  text-shadow:none;
  -moz-text-shadow:none;
}

.landing-gallery-component{
  padding: 200px 0 50px;
}

.landing-gallery-component.with-loaded-interactive{
  padding:0;
}

.gallery-item-container > .component {
  max-height:100%;
}
.gallery-item .top-wrapper.affix {
  position: relative;
}
.gallery-item.active-item > .top-wrapper.affix {
  position: fixed;
  top:0px;
  left:0px;
  width:100%;
}

.gallery-item-component .sub-nav {
  list-style: none;
  margin:0;
  padding: 5px 0;
}

.gallery-item-component .sub-nav > li a {
  padding:15px 10px;
}

.open-gallery-item .interactive .page-header {
  position: relative!important;
}


/**
 * Layout Block Component
 */
  .layout-block-component{padding: 0}

  .layout-block-component .layout-region,
  .first-layout-block .row-middle,
  .layout-block-list-item .row-middle {
    border-bottom: 1px solid #aaa;
    padding-bottom: 15px;
  }

  .layout-block-component .layout-region {
    margin-bottom: 15px;
  }

  .layout-region .image-wrapper {
    text-align: center;
  }

  .layout-block-component .region-footer {
    border-top: 2px solid #eee;
  }

  .layout-block-component .layout-region.middle-region:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }

  .layout-block-component .layout-region.empty {
    display:none;
  }

  .layout-block-component .region-footer {
    margin-top: 10px;
    padding-top: 10px;
    border-bottom: 0;
  }

  .flow-component > .component-wrapper > .component-container > .layout-block-component h2{
    font-size: 2em;
    line-height: 1.2em;
    margin-bottom: 10px;
  }

  .flow-component > .component-wrapper > .component-container > .layout-block-component p{
    font-size: 16px;
    line-height: 1.33em;
    margin-bottom: 15px;
    margin-top: 0;
  }

  .flow-component > .component-wrapper > .component-container > .layout-block-component figcaption p:last-child {
    margin-bottom: 0;
  }

  .layout-region > .component-container > .component {
    margin-top: 20px;
  }

  .layout-region > .component-container > .component:first-child {
    margin-top: 0;
  }

  .layout-block-component > .component-wrapper.full-padding {
    padding: 50px 0;
  }

  .layout-block-component.first-layout-block > .component-wrapper {
    padding: 50px 0 15px;
    margin-top:0;
  }

  .layout-block-component.layout-block-list-item > .component-wrapper {
    padding: 0;
    margin-top:0;
  }

  .layout-block-component > .component-wrapper,
  .layout-block-component.last-layout-block > .component-wrapper {
    padding: 15px 0 50px;
    margin-top:0;
  }

  .layout-block-component.first-layout-block > .component-wrapper {
    border-top:none!important;
  }

/* End Layout Block */


.map-container {
  position: relative;
  height:100%;
  background: transparent url('../img/ajax-loader.gif') no-repeat center center;
}

.actual-map {
  height:100%;
  width:100%;
}

.map-wrapper {
  position: relative;
  overflow: hidden;
}

.map-wrapper > .subcomponent-container {
  display: none;
}

.map-point {
  min-height: 50px;
  min-width: 100px;
}

.map-component .zoom-toggle {
  position: absolute;
  bottom: 10px;
  left: 10px;
}

.map-component.with-credit .zoom-toggle {
  bottom:20px;
  left:5px;
}

.map-wrapper .leaflet-label {
  background:none;
  border:none;
  color:#222;
  text-shadow: -1px 0 2px #fff, 0 1px 2px #fff,
      1px 0 2px #fff, 0 -1px 2px #fff;
  font-size: 14px;
}

.map-wrapper .leaflet-label.marker-label {
  border:0;
  padding:5px 15px;
  border-radius: 0 4px 4px 0;
  font-family: "Helvetica Neue Regular", arial, sans-serif;
  background-color: #948672;
  color: #fff;
  z-index: 0 !important;
  text-shadow:none;
}

.map-wrapper .leaflet-label::before {
  border:0;
}

.legend .legend-item {
  border-bottom: 2px solid transparent;
  position: relative;
  cursor: pointer;
  display: inline-block;
  margin: 2px 10px 2px 20px;
}

.legend ul {
  list-style: none;
  margin: 0;
  background: #fff;
  z-index: 1001;
  display: none;
  padding: 5px 10px;
  position: absolute;
  width: 100%;
  opacity: 0.9;
  filter: alpha(opacity=90);
}

.legend.open ul {
  display: block;
}


.legend .legend-item i {
  background: url('../img/map-checkbox-mobile.png') 0px -26px no-repeat;
  position: absolute;
  top: 0;
  left: -22px;
  height: 22px;
  width: 22px;
}

.legend .legend-item.active i {
  background-position: 0 -2px;
}

.legend-item .description {
  padding-right: 24px;
}

.legend-item.no-select .description {
  padding-right: 0;
}

.legend .legend-item.no-select i {
  display: none;
}

.legend .legend-item.no-select {
  cursor: auto;
  display: inline-block;
  margin: 0 10px;
  border-top: none;
  padding: 5px 0 0px;
  /* width: 95%; */
}

.legend .legend-item.no-select a {
  cursor: text;
  color:#000;
}

.legend .legend-item p {
  font-family: "HelveticaNeueW01-55Roma", arial, sans-serif;
  font-size: 11px;
}

.legend .legend-title {
  padding: 10px 15px;
  width: 100%;
  background:#fff;
  border-bottom:1px solid #e0dfdc;
  font-size: 2em;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  z-index: 10;
  display: block;
}

.legend .legend-item p:last-child {
  margin-bottom: 0;
}

.legend.open .legend-items {
  box-shadow: 2px 2px 3px #666;
}

.legend .legend-item a {
  color: #444;
  text-decoration: none;
  font-family: "HelveticaNeueW01-55Roma", arial, sans-serif;
  font-size: 12px;
}

.map-component .embed-link {
  position: absolute;
  bottom: 5px;
  right: 5px;
}

.map-point-component .modal-header {
  margin: 0;
  padding: 0;
}

.map-point-component p,
.map-point-component .text-component > .component-container p {
  font-size: 14px;
  margin: 10px 0;
}

.leaflet-popup-content-wrapper {
  border-radius: 6px;
}

.legend .legend-toggle {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  right:0;
  top: 0;
  background-color: #fff;
  border: 0;
  width:40px;
  height: 40px;
  padding: 0;
  text-align:center;
}

.legend.open .legend-toggle {
  border-left: 1px solid #e0dfdc;
  height: 42px;
}

.legend .legend-toggle:after{
  content: ' ';
  display:block;
  height: 20px;
  width: 19px;
  position: absolute;
  left: 50%;
  margin-left: -9.5px;
  top: 12px;
  background-image: url(../img/map-key-mobile.png);
  background-position:bottom left;
}

.legend.open .legend-toggle:after{
  background-position:top left;
}

.leaflet-control-zoom a,
.leaflet-control-zoom a:link,
.leaflet-control-zoom a:visited,
.leaflet-control-zoom a:active {
  color: #000;
}

.leaflet-control-zoom a.leaflet-disabled,
.leaflet-control-zoom a.leaflet-disabled:link,
.leaflet-control-zoom a.leaflet-disabled:visited,
.leaflet-control-zoom a.leaflet-disabled:active {
  color: #bbb;
}

.leaflet-popup {
  z-index: 10;
}

.leaflet-marker-icon {
  z-index: 1 !important;
}

.leaflet-touch .leaflet-bar {
  border: none;
}

.map-component .transparent-overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  background: transparent;
  z-index: 1001;
}

.map-component .enable-btn.overlay-button {
  position: absolute;
  left:5px;
  bottom: 20px;
  z-index: 1002;
}

@media screen and (max-width: 1024px) {
  .legend {
    position: absolute;
    z-index: 1001;
    top:0 !important;
    width: 100%;
  }

  .leaflet-top .leaflet-control {
    margin-top: 55px;
  }
}

@media screen and (min-width: 1025px) {
  .legend .legend-toggle {
    position: relative;
    left:0;
    top:auto;
    border: 0;
    width:40px;
    height: 40px;
    padding: 0;
    border-radius: 0px 0px 6px 6px;
  }

  .legend .legend-title {
    max-width: 250px;
  }

  .legend.open .legend-title,
  .legend-toggle {
    box-shadow: 2px 2px 3px #666;
  }

  .legend ul {
    max-width: 250px;
    overflow: auto;
    position: relative;
    max-height: 60%;
    height:auto;
    border-bottom: 30px solid #fff;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    border-radius: 0px 0px 6px 0;
    display: block;
    opacity: 1;
    filter:alpha(opacity=100);
    z-index: 0;
    padding: 0;
  }

  .map-component .legend {
    position: absolute;
    left: 7.5%;
    z-index: 100;
    padding:0;
    margin:0;
    width: 250px;
    -webkit-transition: top .5s;
       -moz-transition: top .5s;
        -ms-transition: top .5s;
         -o-transition: top .5s;
            transition: top .5s;
  }

  .legend .legend-item {
    border-left:7px solid transparent;
    border-bottom: 0;
    padding: 10px 8px;
    float: none;
    display: list-item;
    margin:0;
  }

  .legend .active {
    background-color: #e4dfdc;
  }

  .legend .active.no-select {
    background-color: #aba49c;
  }

  .legend .legend-item.active a {
    color: #000;
  }

  .legend .active p {
    color: #fff;
  }

  .legend .legend-item p {
    font-size: 12px;
    line-height: 16px;
  }

  .legend .legend-item a {
    color: #4b6997;
    text-decoration: none;
    display: inline-block;
    padding-right: 24px;
    font-size: 1em;
  }

  .legend .legend-item i {
      right: 10px;
      left: auto;
      top: 0;
  }

  .legend .legend-item a {
    display: block;
    font-family: "HelveticaNeueW01-75Bold", arial, sans-serif;
  }

  .legend .legend-toggle:after {
    background-image: url(../img/map-key.png);
    height: 34px;
    top: 3px;
  }

  .legend .legend-item i {
    background: url('../img/map-checkbox.png') 0px 0px no-repeat;
    height: 18px;
    width: 18px;
    margin-top: 10px;
  }

  .legend .legend-item.active i {
    background-position: 0px -41px;
  }

  .legend .legend-toggle {
    height: 40px;
    border-left: 0;
  }

  .legend .legend-item .seperator {
    height: 1px;
    width: 100%;
    background-color: #fff;
    position: absolute;
    left: -7px;
    padding-left: 7px;
    bottom: 0;
  }

  .legend .legend-item.no-select {
    margin: 0;
    padding: 10px 8px;
    width: auto;
  }
}


.matrix-details {
  box-sizing:border-box;
  -moz-box-sizing:border-box;

  border-top:0;
  height: 100%;
  overflow: auto;
  max-height: 400px;
  padding-bottom: 30px;
}

.matrix-component .filter-form {
  margin-top: 15px;
  position: relative;
  width: 100%;
}

.matrix-container > .wrapper {
  height:100%;
  position: relative;
  padding: 30px 10px;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.matrix-component .filter-form input {
  font-size:0.75em;
  width:92.5%;
}

.matrix-component .filter-form .remove-button {
  position: absolute;
  right:28px;
  top:15px;
  opacity: 0.6;
}

.matrix-component .filter-form .remove-button:hover {
  opacity: 1;
}

.grid-matrix-component .grid-matrix-wrapper {
  position: relative;
}

.grid-matrix-component .grid-matrix-wrapper .overlay-button {
  position: absolute;
  right: 10px;
  bottom: 10px;
  z-index: 30;
  padding: 8px 15px;
  font-size: 11px;
  text-decoration: none;
  text-transform: uppercase;
}

.matrix-detail h3 {
  font-size:16px;
  text-transform: uppercase;
  line-height: 22px;
  margin: 5px 0 10px;
}

.component.point-component {
  position: absolute;
  font-size: 0px;
  height: 0px;
}

.point-component > .wrapper {
  height: 0px;
}

.point-component .marker{
  line-height: 0;
  text-indent: -9000em;
  display: inline-block;
  opacity:0.75;
  filter:alpha(opacity=75);
  cursor: pointer;
  width:100%;
  vertical-align: top;

}

.point-component .marker img {
  display: block;
  margin: 0 auto;
}

.point-component .marker.no-icon {
  padding:10px;
  border-radius: 15px;
  background-color:#efefef;
  height:0;
  width: 0;
  border:2px solid #444;
}

.point-component > .wrapper > .point-content {
  display: none;
}


/**
 * Pull Quote Components
 */
  .pull-quote-component{
    background-position: center center;
    background-size: cover;
    padding:0!important;
  }

  .pull-quote-component .component-container{
    padding: 60px 0;
  }
  .pull-quote-component .component-container{
    background: url(../img/bg-stripe-tan.png) center center repeat fixed;
    text-shadow: 0 0 5px #aaa;
  }

  .pull-quote-component.reversed .component-container{
    color: #fff;
    background-image: url(../img/bg-stripe-grey.png);
    text-shadow: 0 0 5px #444;
  }

  .layout-block-component .pull-quote-component{
    box-shadow: none;
  }

  .layout-block-component .pull-quote-component .component-container{
    background-image: none!important;
  }

  .pull-quote-component blockquote{
    margin:0 auto;
    border-left:0;
    padding:0;
  }

  .pull-quote-component blockquote p{
    font-size: 32px;
    text-align: center;
    margin: 0 0 50px 0;
  }

  .layout-block-component .pull-quote-component .component-container{
    padding: 0;
  }

  .layout-block-component .pull-quote-component blockquote,
  .layout-block-component .pull-quote-component figcaption{
    width:100%;
  }

  .layout-block-component .pull-quote-component blockquote p{
    font-size: 35px!important;
    line-height:normal!important;
    color: #000!important;
  }

  .layout-block-component .pull-quote-component figcaption {
    color: #000;
  }

  .layout-block-component .pull-quote-component figcaption {
    font-size: 22px;
  }

  .pull-quote-component.quotations blockquote p:before{
    content:open-quote;
  }

  .pull-quote-component.quotations blockquote p:after{
    content:close-quote;
  }

  .pull-quote-component figcaption{
    text-transform: uppercase;
    font-size: 22px;
    text-align:center;
  }

  .pull-quote-component figcaption:before{
    content: "~";
  }

  .pull-quote-component .quote-cite {
    display: block;
    line-height: 125%;
  }

  .flow-component > .component-wrapper > .component-container > figcaption .caption p,
  .slider-component .image-wrapper figcaption .caption p,
  figcaption .caption p {
    margin: 5px 0 0 0;
    line-height: normal;
  }

  .pull-quote-component figcaption{
    text-transform: uppercase;
  }

  /* End Pull Quote Component */


/**
 * Slider Component
 */
  .slider-component {
    padding-bottom:0 !important;
  }

  .slider-component .nav-wrapper{
    height:100%;
    position:absolute;
    width:100%;
    top:0;
  }

  .slider-component .nav-wrapper nav{
    position: absolute;
    bottom:0!important;
    height:28px;
    line-height:28px;
    width: 100%;
    text-align: center;
    z-index: 60;
    background:rgba(255, 255, 255, 0.8);
  }

  .slider-component .nav-wrapper .btn {
    position: relative;
    height: 8px;
    width: 8px;
    display: inline-block;
    padding:10px 18px 18px 10px;
    background-image: none;
    background-color: transparent;
    border:0;
    box-shadow: none;
  }

  .slider-component .slider-pager-top {
    display: none;
  }

  .slider-component .nav-wrapper .btn i {
    background-image: url(../img/slide-indicators.png);
    background-repeat: no-repeat;
    margin: 0;
    height: 8px;
    width: 8px;
    display: block;
  }

  .slider-component .nav-wrapper .btn-next i {
     background-position: -78px 0;
  }

  .slider-component .nav-wrapper .btn-prev i {
     background-position: 0 0;
  }

  .slider-item-component > .slider-item-wrapper.no-background h2{
    font-weight: normal;
    font-size: 22px;
    line-height: 100%;
  }

  .slider-item-component > .slider-item-wrapper.no-background h3{
    font-weight: normal;
    line-height: 100%;
    font-size: 15px;
    font-style: italic;
    margin: 25px 0;
  }

  .slider-item-component > .slider-item-wrapper.no-background p{
    font-size: 13px;
    text-shadow: 0 1px 1px white;
    color: #aaa;
    margin: 0;
    margin-top: 10px;
    line-height: 150%;
  }

  .slider-container, .slider-wrapper {
    display:block;
    position:relative;
  }
  .slider-component .slider-container {
    -webkit-transition: left .5s;
       -moz-transition: left .5s, right .5s
        -ms-transition: left .5s;
         -o-transition: left .5s;
            transition: left .5s, right .5s;
    left: 0%; /* Initialize left so firefox will work correctly */
  }

  .slider-item-container {
    overflow: auto;
    height:100%;
    box-sizing:border-box;
    -mox-box-sizing: border-box;
  }

  .slider-item-container > .component:last-child {
    height: 100%;
    overflow: hidden;
    padding-bottom: 40px;
  }

  .slider-item-container > .layout-block-component .row-fluid.empty {
    display: none;
  }

  .slider-component .layout-region .text-component {
    max-height: 100%;
    overflow: auto;
  }

  .slider-component .layout-region .image-component figcaption {
    text-align: center;
  }

  .slider-component .slider-item-component .slider-item-wrapper.with-background-image {
    padding-bottom: 0px;
    position: relative;
    opacity: 0;
    transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
  }

  .slider-component .slider-item-component .slider-item-wrapper.with-background-image.appeared {
    opacity: 1;
  }


  .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper {
    position: absolute;
    max-height: 92%;
    height: auto;
    bottom:0px;
    overflow: auto;
  }

  .slider-container.no-animate {
    -webkit-transition: none;
     -moz-transition: none;
      -ms-transition: none;
       -o-transition: none;
          transition: none;
  }

  .slider-container {
    -webkit-transition: left .5s;
       -moz-transition: left .5s, right .5s
        -ms-transition: left .5s;
         -o-transition: left .5s;
            transition: left .5s, right .5s;
    left: 0%; /* Initialize left so firefox will work correctly */
  }

  .slider-item-container {
    position: relative;
    overflow: hidden;
  }


  .slider-component.fixed-height .slider-item-component,
  .slider-component.fixed-height .slider-item-component .slider-item-wrapper {
    height:100%;
    box-sizing:border-box;
  }

  .slider-item-wrapper {
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    overflow:hidden;
    padding:50px .25px;  /* deal with subpixel % based rendering issues */
    position: relative;

  }

  .slider-item-component > .slider-item-wrapper.with-background-image a,
  .slider-item-component > .slider-item-wrapper.with-background-image a:link,
  .slider-item-component > .slider-item-wrapper.with-background-image a:visited,
  .video-component figcaption a,
  .video-component figcaption a:link,
  .video-component figcaption a:visited {
    color: #57aacc;
    text-shadow: 1px 1px 5px #000;
    font-size: 1em;
  }

  .slider-item-component .slider-item-wrapper a.reveal-button,
  .slider-item-component .slider-item-wrapper.with-background-image a.reveal-button {
    color:#fff;
    z-index: 60;
    bottom: 7px;
  }

  .slider-component .nav-wrapper .nav{
    display:block;
    position:absolute;
    height: 100%;
    width: 100%;
  }

  .slider-component .nav-wrapper{
    height: 100%;
  }

  .slider-contents-wrapper{
    overflow:hidden;
  }

  .slider-item-component .slider-item-wrapper h2.subtitle {
    font-size: 16px;
    line-height: normal;
    text-transform: uppercase;
    text-shadow: none;
    margin-top: -34px!important;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    padding:8px;
    position: absolute;
    display: inline-block;
    width:50%;
  }

  .slider-item-component .slider-item-wrapper.with-background-image h2.subtitle {
    background:transparent;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#a6000000,endColorstr=#a6000000);
    background:rgba(0,0,0,.65);
    color:#fff;
    text-align: center;
    width: auto;
  }

  .slider-item-container > .component{padding-top:25px;}
  .slider-item-container > .component:first-child{padding-top:0}

  .slider-item-wrapper.with-background-image .slider-item-container{
    padding:20px;
    /* IE8 Fallback for no-rbga */
    background:transparent;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#a6000000,endColorstr=#a6000000);
    background: rgba(0,0,0,.65);
    color: #fff;
  }

  .slider-item-wrapper.with-background-image.reversed .slider-item-container,
  .slider-item-component .slider-item-wrapper.with-background-image.reversed .subtitle {
    color: #000;
    /* IE8 Fallback for no-rbga */
    background:transparent;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4BFFFFFF,endColorstr=#4BFFFFFF);
    background-color: rgba(255,255,255,.75);
  }

  .slider-component .layout-region figure {
    text-align: center;
  }

  .slider-component .layout-region figure img {
    max-height: 65%;
    max-width: 100%;
    box-sizing: border-box;
    -moz-box-sizing:border-box;
    width:auto;
  }

  .slider-component .slider-item-wrapper.with-background-image .layout-region .text-component {
    padding:0;
  }

  .slider-item-container > .image-component img{
    width:auto;
    max-height:100%;
    display:block;
    margin: 0 auto;
  }

  .slider-item-wrapper.with-background-image .slider-item-container .content {
    font-size: 1em;
    line-height: 150%;
  }

  .slider-item-wrapper.with-background-image .slider-item-container.empty {
    display: none;
  }

  .slider-item-wrapper.with-background-image.reversed .slider-item-container h1,
  .slider-item-wrapper.with-background-image.reversed .slider-item-container h2,
  .slider-item-wrapper.with-background-image.reversed .slider-item-container h3,
  .slider-item-wrapper.with-background-image.reversed .slider-item-container p {
    color: #000 !important;
    text-shadow:none;
  }

  .slider-item-wrapper.with-background-image.reversed .slider-item-container a,
  .slider-item-wrapper.with-background-image.reversed .slider-item-container a:link,
  .slider-item-wrapper.with-background-image.reversed .slider-item-container a:visited {
    color: #2a69a1;
    text-shadow:none;
    font-size: 1em;
  }

  .slider-item-wrapper.with-background-image .slider-item-container h1,
  .slider-item-wrapper.with-background-image .slider-item-container h2,
  .slider-item-wrapper.with-background-image .slider-item-container h3,
  .slider-item-wrapper.with-background-image .slider-item-container p {
    text-shadow: 0 1px 1px #000;
    color:#fff !important;
    margin-bottom: 15px;
  }

  .slider-item-wrapper.with-background-image .slider-item-container figcaption p {
    margin-bottom: 0;
  }

  .slider-item-wrapper.with-background-image .slider-item-container p {
    font-size: 0.85em;
    line-height: 1.25em;
    margin-bottom: 10px;
  }

  .slider-item-wrapper.with-background-image .slider-item-container h2 {
    font-size: 28px;
  }

  .slider-component .slider-pager {
    color: #666;
    padding:0 5px;
    font-size: 0.85em;
  }

  .slider-item-wrapper.with-background-image .slider-item-container .pull-quote-component p {
    font-size: 2em;
  }

  .slider-item-wrapper.with-background-image .slider-item-container .pull-quote-component figcaption {
    font-size: 16px;
  }

  .slider-component .slider-title-wrapper {
    padding: 5px 15px;
  }

  .slider-item-wrapper .toggled > .text-component .content {
    display: none;
  }

  .slider-item-wrapper .toggled > .text-component {
    padding:0;
  }

.slider-item-wrapper .hide-overlay {
    position: absolute;
    right: 0;
    z-index: 10;
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255, 0.5);
    border-top: 0;
    border-right: 0;
    padding: 7px 15px 5px;
    font-family: "HelveticaNeueW01-75Bold", arial, sans-serif;
  }

  @media (min-width: 500px) {
    .slider-item-wrapper .hide-overlay {
      right: 6.25%;
    }
  }

  .reversed .slider-item-wrapper .hide-overlay {
    color: #000;
    border:1px solid rgba(0,0,0, 0.5);
    border-top: 0;
    border-right: 0;
  }

  .slider-item-wrapper .hide-overlay i {
    color: #fff;
    font-weight: bold;
    margin-right:5px;
    font-size: 22px;
    vertical-align: middle;
  }

  .reversed .slider-item-wrapper .hide-overlay i {
    color: #000;
  }

  @media only screen and (max-width: 940px) {
    .slider-component .nav-wrapper{
      top:0 !important;
    }
  }

  /* This is for tablet too */
  @media only screen and (max-width: 1024px) {
    .no-embed .slider-component .nav-wrapper{
      top:0 !important;
    }
  }

  /* Embedded Only Styles - unfortunately these styles need to be duplicated to make the embed work when put in a 960 grid */
  @media only screen and (min-width: 940px) and (max-width: 1024px) {
    /**
     * Slider
     */
    .embedded .slider-component .nav-wrapper .btn {
      display: block;
      height: 35px;
      width: 40px;
      position:absolute;
      border:none;
      box-shadow:none;
      padding:0;
      border-radius:0;
      background-image: url(../img/arrows-next-back-small.png);
      background-color: transparent;
      transition: all 0s;
      -webkit-transition: all 0s;
      -o-transition:all 0s;
      -moz-transition:all 0s;
      -ms-transition: all 0s;
      text-indent: -1000px;
      overflow:hidden;
      text-transform:uppercase;
      z-index:30;
    }

    .embedded .slider-component .nav-wrapper .btn i {
      display: none;
    }

    .embedded .slider-component .btn-prev{left: 0; background-position: -4px -8px;}
    .embedded .slider-component .btn-next {right: 0;background-position: -56px -8px;}
    .embedded .slider-component .btn-prev:hover {background-position: -4px -56px;}
    .embedded .slider-component .btn-next:hover {background-position: -55px -56px;}
    .embedded .slider-component .btn-prev:hover, .btn-next:hover{
      background-color:transparent;
    }

    .embedded .slider-component .nav-wrapper nav {
      line-height:inherit;
      position: relative;
      background:none;
      padding:0;
      height:0;
    }

    .embedded .slider-component .slider-pager {
      display: none;
    }

    .embedded .slider-component .nav-wrapper {
      position:absolute;
      padding:0;
      height:0;
      width: 100%; /*  Got Phi? */
      margin:0 auto;
      left:0;
      bottom:auto;
    }

    .embedded .slider-item-container > .component{padding-top:25px;}
    .embedded .slider-item-container > .component:first-child{padding-top:0}

    .embedded .slider-item-wrapper.with-background-image{
      padding: 50px;
    }

    .embedded .slider-item-container {
      overflow: hidden;
      position: relative;
    }

    .embedded .slider-component.small .slider-item-wrapper.with-background-image .slider-item-container {
      padding:25px;
    }

    .embedded .slider-component.small .slider-item-wrapper.with-background-image{
      padding: 25px;
    }

    .embedded .slider-item-component .slider-item-wrapper a.reveal-button {
      bottom: 10px;
    }

    .embedded .slider-component .slider-pager-top {
      display: block;
      position: absolute;
      bottom:2px;
      right: 20px;
      font-size: 12px;
    }

    .embedded .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper {
      width: 80%;
      left:10%;
    }
  /* End Slider */

  /**
   * Timeline component
   */
    .embedded .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
    .embedded .spine > .slider-component .slider-item-wrapper > h2.subtitle {
      font-size: 16px;
      z-index: 101;
    }
  /* End Timeline Component */
  }
/* End Slider */


/**
 * Text Components
 */

  .text-component > .component-container h2 {
    font-size: 2.5em;
  }

  .text-component > .component-container p {
    margin-bottom: 20px;
  }

  .flow-component > .component-wrapper > .component-container > .text-component {
    padding: 50px 0 10px;
    clear:both;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container > .content {
    padding: 20px 0 40px;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container h2,
  .slider-item-wrapper.with-background-image > .slider-item-container > .text-component > .component-container h2 {
    font-weight: normal;
    line-height: 110%;
    letter-spacing: -0.01em;
    border-bottom: 2px solid #e0ded9;
    padding: 0 0 0 0;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container h2 {
    text-align: center;
  }

  .slider-item-wrapper.with-background-image > .slider-item-container > .text-component > .component-container h2{
    border: 0;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container p,
  .slider-item-container > .text-component > .component-container p{
    margin:0 0 50px;
    text-align: justify;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container > * {
    font-size: 1.2em;
    line-height: 160%;
    margin:0;
  }

  .flow-component > .component-wrapper > .component-container > .text-component > .component-container > h2,
  .slider-item-container > .text-component > .component-container h2 {
    font-size: 2.5em;
  }

  .text-component > .component-container ul{
    font-size: 18px;
  }

  .text-component > .component-container li {
    margin-bottom: 5px;
    font-size: 1em;
    line-height: normal;
  }
/* End Text Components */


/**
 * Timeline Components
 */
  .timeline-component{
    padding-bottom:0!important;
    position: relative;
  }

  .timeline-component .slider-item-component .slider-item-wrapper{
    padding:50px 0.25px 20px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  .timeline-component .slider-component.small .slider-item-wrapper.with-background-image {
    padding: 40px 0.25px 25px;
  }

  .plots{
    border-bottom: 1px solid #fff;
  }
  .plot, .timeline-wrap .plots .plot.primary{
    background-color: #ccc !important;
  }

  .timeline-point-line.active{
    width:4px;
    margin-left: -2px;
    background-color: #b94619;
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
    border-left:0;
    z-index:22;
  }

  .ranges{
    border:0;
    background-color: transparent!important;
    bottom: -5px!important;
  }

  .ranges .point-range{
    padding: 4px;
    border: 2px solid #ccc;
    background: #fff;
    border-radius: 10px;
    margin-left:-6px;
  }

  .ranges .point-range.active{
    background-color: #b94619;
    border: 2px solid #ccc;
  }

  .timeline-viewport{
    border-top: 1px solid #aaa;
    cursor: move;
  }

  .timeline-wrap{
    border:0;
    min-height: 0;
  }

  .timeline-holder {
    margin-top: 1px;
  }

  .active-line{
    display:none;
  }

  .timeline-point{
    z-index: 20;
    padding:0;
    width:200px;
  }
  .timeline-point:hover{
    z-index:22;
  }
  .timeline-point .point-content{
    padding:5px;
    background-color:#fff;
    position:relative;
    z-index: 20;
    padding: 5px 10px;
    min-height: 40px;
  }
  .timeline-point .point-content:hover{
    z-index: 999;
  }
  .timeline-point .point-content .thumbnail {
    margin-right:5px;
  }

  .timeline-point .point-content h3{
    font-size:11px;
    text-shadow:none;
    margin-bottom: 0;
  }

  .point-content .date-label {
    line-height: 12px;
    padding-bottom: 2px;
  }

  .point-content {
    clear:both;
    min-height: 34px;
  }

  .point-content h3 {
    font-size: 14px;
    line-height: 1.25em;
    margin: 0 0 5px;
  }

  .point-content .thumbnail {
    width:40px;
    float:left;
    border-radius: 0;
    border: 0;
    padding: 0;
  }

  .point-content .wrapper {
    float:left;
    padding-left: 10px;
  }

  .point-content .content-wrapper {
    float:left;
  }

  .timeline-point,
  .timeline-point:before{
    box-shadow: 0;
  }

  .timeline-point.active,
  .timeline-point.active:before,
  .timeline-point:hover,
  .timeline-point:hover :before
  {
    box-shadow: 1px 1px 7px rgba(0, 0, 0, 0.7);
    opacity: 1;
    filter:alpha(opacity=100);
  }
  .timeline-point:before,
  .timeline-point:after{
    display:inline-block;
    content:' ';
    text-indent:-1000px;
    overflow:hidden;
    position:absolute;
    bottom:-12px;
    left:-1px;
    z-index: 10
  }
  .timeline-point.active:before{
    width: 1px;
    height: 7px;
    bottom: -10px;
    z-index: -1;
    left: 4px;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Safari and Chrome */
  }
  .timeline-point:after{
    border-color: #fff transparent transparent transparent;
    border-style: solid;
    border-width: 12px 12px 0 0;
    z-index:10;
  }
  .center-marker{
    overflow:hidden;
    width: 31px;
    margin-left:-15px;
    z-index:30;
  }

  .center-marker .triangle{
    display:block;
    zoom:1;
    height:20px;
    width:20px;
    border: 1px solid #aaa;
    background-color: #fff;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Safari and Chrome */
    border-radius:1px;
    top: -15px;
    left: 4px;
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  }

  /* Triangle for IE8 */
  .ie8 .center-marker .triangle {
    border-top: 15px solid #fff;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    position: relative;
    z-index: 2;
    top:-1px;
    height:0;
    width: 0;
    border-bottom:0;
    background:transparent;
  }

  .timeline-container .labels{
    height:25px;
  }
  .labels p{
    line-height: 25px;
  }
  .labels .label{
    text-transform: uppercase;
    font-size: 11px;
    padding:0;
    margin:0;
    color: #888;
    background:transparent;
    border-radius:none;
    font-weight:normal;
    text-shadow:none;
  }

  .timeline-component .embed-dialog .embed-link {
    position: absolute;
    bottom: 23%;
    right: 10px;
  }

  .interactive .overlay-button {
    padding:3px 8px;
    line-height: 11px;
    font-size: 10px;
    border-radius: 8px;
    background-color:rgba(0, 0, 0, 0.65);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#a6000000',GradientType=0 );
    color:#fff;
    text-shadow:none;
    opacity: 0.85;
    filter:alpha(opacity=85);
    z-index: 20;
  }

  .interactive .overlay-button:hover {
    opacity: 1;
    filter:alpha(opacity=100);
    text-decoration: none;
  }

  .timeline-component .embed-dialog .embed-link i {
    display: none;
  }

/* End Timeline Components */


/**
 * Video Component
 */
  .youtube-wrapper,
  .player-wrapper {
    height:100%;
  }

  .youtube_player, iframe.youtube_player {
    width:100%!important;
    height:100%!important;
  }

  .video-component .presentation {
    overflow: hidden;
    background-color: #000;
  }

  .video-component .preview_image{
    cursor:pointer;
  }

  .video-component{
    overflow:hidden;
    position:relative;
    padding:0!important;
    min-height: 225px;
    min-width: 300px;
    width: 100%;
    box-sizing:border-box;
    -moz-box-sizing: border-box;
  }

  .modal-body .video-component {
    min-width: 0;
  }

  .video-component figcaption{
    position:absolute;
    bottom:0;
    color:#fff;
    width:100%;
    padding: 10px 10px;
    max-height: 100%;
    overflow:auto;
    box-sizing: border-box
  }

  .video-component figcaption.caption {
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#a6000000,endColorstr=#a6000000);
    background: rgba(0, 0, 0, 0.65);
  }

  .video-component figcaption.caption.background-reversed {
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#a6ffffff,endColorstr=#a6ffffff);
    background: rgba(255, 255, 255, 0.65);
    color: #000;
  }

  .video-component .btn-video {
    color: #000;
    background-image: url('../img/button-video-play-dark.png');
  }

  .video-component figcaption .caption {
    display: block;
  }

  .video-component .preview_image{
    cursor:pointer;
  }

  .video-component figcaption p{
    font-size: 12px;
    line-height: 160%;
    font-style: normal
  }

  .video-component figcaption * {
    text-shadow: none;
  }

  .video-component h2 {
    font-size: 24px;
    margin: 15px 0
  }

  .video-component h3{
    font-size:16px;
  }

  .video-component figcaption h2,
  .video-component figcaption h3{
    font-weight:normal;
  }

  .video-component .btn-video{
    background: transparent url(../img/button-video-play.png) no-repeat right top;
    font-size: 17px;
    padding: 0 55px 0 0;
    display: block;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
    line-height: 35px;
    margin-top:20px;
    float:left;
    display:block;
    clear:both;
  }

  .video-component .btn-video.pull-right{
    float:right;
  }

  .video-component .btn-video.centered{
    margin-left: auto;
    margin-right: auto;
    float:none;
  }

  .video-component .btn-video:hover{
    text-decoration:none;
    background-position: right -113px;
  }

  .video-component .player-wrapper,
  .video-component .player-wrapper > div,
  .video-component .player-wrapper video {
    height:100%;
    width:100%;
    position: relative;
  }

  .video-component .player-wrapper {
    margin:0 auto;
  }

  /* Media Element Player theming */
  .video-component .mejs-controls,
  .video-component .mejs-controls .mejs-volume-button .mejs-volume-slider,
  .video-component .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector {
    background: #232323;
    background: rgba(35, 35, 35, 0.66);
    box-shadow: -1px -1px 1px #222;
    border-radius: 0;
  }

  .video-component .mejs-controls {
    height:40px;
  }

  .video-component .mejs-controls .mejs-button {
    padding:7px;
    border-right: 1px solid #141414;
  }

  .video-component .mejs-controls .mejs-time-rail .mejs-time-float {
    z-index: 2;
  }

  .video-component .mejs-controls .mejs-volume-button .mejs-volume-slider {
    width: 40px;
  }

  .video-component .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-current {
    width:10px;
    left:15px;
    background: #9e8730;
  }

  .video-component .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-total {
    background: #3d3d3d;
    border: 1px solid #373737;
    width:10px;
    left:14px;
  }

  .video-component .mejs-controls .mejs-volume-button .mejs-volume-slider .mejs-volume-handle {
    width:10px;
    left:15px;
    height:0px;
  }

  .video-component .mejs-controls .mejs-volume-button {
    border-left: 1px solid #141414;
  }

  .video-component .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector {
    bottom: 40px;
    right:0px;
  }

  .video-component .mejs-controls .mejs-sourcechooser-button .mejs-sourcechooser-selector ul li label {
    font-family: "Helvetica Neue Regular", arial, sans-serif;
    font-size: 12px;
  }

  .video-component .mejs-controls .mejs-button:last-child {
    border:0;
  }

  .video-component .mejs-controls div.mejs-time-rail {
    padding-top: 10px;
  }

  .video-component .mejs-controls .mejs-time-rail .mejs-time-total {
    background: #3d3d3d;
    border: 1px solid #373737;
    box-shadow: 1px 0 0 #000;
    border-radius: 0;
  }

  .video-component .mejs-controls .mejs-time-rail .mejs-time-loaded,
  .video-component .mejs-controls .mejs-time-rail .mejs-time-buffered {
    background: #5c5c5c;
    border-radius: 0;
  }

  .video-component .mejs-controls .mejs-time-rail .mejs-time-current {
    background: #9e8730;
    border-radius: 0;
  }

/* End Video Component */


/**
 * Mobile / All
 */
  body{
    padding:0;
    color: #000;
    font-family: "Helvetica Neue Regular", arial, sans-serif;
  }

/**
 * Base Styles
 */
  h1, h2, h3, h4, h5, h6{
    margin:0;
    font-weight: normal;
  }

  img{
    width:100%;
  }

  a {
    cursor: pointer;
  }

  .underline {
    text-decoration: underline;
  }

  del {
    color:#222;
  }

  ul {
    list-style-type: square;
  }

  li {
    font-family: "Haarlemmer MT W01", Georgia, "Times New Roman";
    font-size:1em;
  }

  .clickable {
    cursor: pointer;
  }

  .text-hidden {
    display: inline;
    opacity: 0;
  }

  .text-component p:last-child{
    margin-bottom:0!important;
  }
/* End Base Styles */

/**
 * Shared Top-Level Component Styles
 */
  .spine > .text-component > .component-container,
  .pull-quote-component blockquote,
  .pull-quote-component figcaption,
  .spine > .layout-block-component > .component-wrapper,
  .spine > .slider-component .slider-item-wrapper > .component-wrapper,
  .spine > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .slider-component  .slider-item-wrapper > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .layout-block-component > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .text-component > .component-container,
  .spine > .video-component > figcaption > *,
  .landing-gallery-component > .subcomponent-wrapper
  .landing-gallery-component > .subcomponent-wrapper,
  .video-caption,
  .centered,
  .gallery-slide-contents {
    width: 95%;
    margin:0 auto;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
  }
  .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
  .spine > .slider-component .slider-item-wrapper > h2.subtitle,
  .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper,
  .gallery-slide-contents {
      left:2.5%;
  }
/* End Shared/Top-level Component Styles */

/**
 * Header
 */
  .interactive .page-header {
    background: #ffffff; /* Old browsers */
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1005;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    margin:0;
    padding-bottom: 0;
    border-bottom: 1px solid #666;
    border-top: 1px solid #666;
  }

  .page-header.affix{
    min-height: 0;
  }

  .page-header .interactive-title {
    padding:10px 10px;
    margin-left:50px;
    margin-right: 50px;
  }

  .page-header .interactive-title,
  .page-header .interactive-title a,
  .page-header .interactive-title a:visited,
  .page-header .interactive-title a:hover {
    font-weight: normal;
    font-size: 16px;
    line-height: 1em;
  }

  .page-header .nav-wrapper {
    position: absolute;
    top:100%;
    clear:both;
    margin:0;
    width:100%;
    display: none; /* hide initially */
    padding: 0;
  }

  .page-header .interactive-nav {
    margin-bottom: 0;
  }

  .page-header .interactive-nav li {
    display: block;
    float:none;
    margin:0;
    padding:0;
  }

  ul.interactive-nav a {
    font-size: 14px;
    padding:15px;
    margin:0;
    display: block;
    border-radius: 0;
  }

  .page-header .interactive-nav li:first-child a {
    border-top: 0;
  }

  ul.interactive-nav li.active a {
/*    background: #ccc;
    color: #000;*/
  }

  ul.interactive-nav li a:hover {
    text-shadow: none;
  }
  .nav-pills>.active>a, .nav-pills>.active>a:hover{
    background-color:#aaa;
  }

  .sharing{
    background: #fff;
    height:50px;
    margin:0;
    list-style: none;
    border-bottom:1px solid #666;
  }

  .sharing li{
    width: 50%;
    float:left;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
  }

  .sharing a{
    display:block;
    text-indent: -1000px;
    text-transform: uppercase;
    background-repeat: no-repeat;
    overflow:hidden;
    position:relative;
    height:50px;
    width:100%;
  }

  .sharing li:last-child {
    padding-right:0px;
  }
  
  .sharing li a {
    background-position: 50% 16px;
  }

  .sharing li a:hover {
    background-position: 50% -105px;
  }

  .sharing .twitter-share {
    background-image: url(../img/icon-tw.png);
  }

  .sharing .facebook-share {
    background-image: url(../img/icon-fb.png);
    background-position: 50% 28px;
  }

  .sharing li .facebook-share:hover {
    background-position: 50% -92px;
  }
  
  .sharing .twitter-share {
    background-position: 50% 29px;
  }

  .sharing li .twitter-share:hover {
    background-position: 50% -92px;
  }

  #logo {
    background-repeat: no-repeat;
    background-image: url('../img/cfr-monogram.png');
    background-position:center center;
    width:48px;
    position:absolute;
    top:0;
    height:100%;
    text-indent: -1000px;
    overflow:hidden;
    text-transform: uppercase;
    display:block;
  }

  #monogram {
    background-repeat: no-repeat;
    background-image: url('../img/cfr-monogram.png');
    background-position:center center;
    width: 48px;
    height: 48px;
    display: none;
    float: left;
  }

  .page-header.affix #monogram {
    display: block;
  }

  .page-header .brand-share {
    height: 60px;
    padding: 0px;
    position: relative;
    background-color: #fff;
  }

  .page-header .wrapper {
    margin:0;
    position: relative;
  }

  .embedded .page-header .wrapper {
    margin-top:0;
    margin-bottom: 0;
  }

  .nav-trigger {
    display:block;
    background: url(../img/menu-icon.png) no-repeat -2px center;
    height: 22px;
    width: 32px;
    text-indent: 100%;
    white-space:nowrap;
    overflow: hidden;
    padding:0;
    border:0;
    position: absolute;
    top: 2px;
    right: 10px;
    height: 100%;
  }


  .nav-trigger.open {
    background-position: -54px center;
  }

  .embedded .nav-trigger {
    display: none;
  }
/* End Header */

.component-wrapper{
  clear:both;
}

.subcomponent-container {
  min-height: 0;
}

.layout-region.empty{
  display:none;
}

/* Try to keep images in layout regions in the screen */
.layout-region .image-component img {
  width:auto;
  height: auto;
  max-width: 100%;
  max-height: 85%;
}

.subcomponent-wrapper{
  position:relative;
}



.popover {
  min-width: 350px;
  min-height: 300px;
  width:100%;
  height: 75%;
  max-height: 450px;
  max-width:400px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  padding-bottom: 10px;
}
.popover.popover-overflow-x{
  width:100%!important;
  max-width:100%!important;
  margin-top:-15px;
  left:0!important;
}
.popover.popover-overflow-y .arrow,
.popover.popover-overflow-x .arrow
{
  display:none;
}

.popover.popover-overflow-y,
.popover.popover-overflow-x{
  position: fixed;
  left:50%!important;
  top:10%!important;
}
.modal-backdrop{
  position:fixed;
  width:100%;
  height:100%;
  left:0;
  top:0;
  z-index:1000;
  background-color: rgba(0,0,0,.33);
}

.popover-content {
  overflow-y: auto;
  height: 89%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.annotated-image-component .popover-content {
    height: auto;
}

.popover-title {
  font-size:28px;
  font-weight: bold;
  line-height: 20px;
  min-height: 20px;
}

.subcomponent-container > *{
  float:left;
  box-sizing:border-box;
  -moz-box-sizing: border-box;
}

.grid-container.subcomponent-container > * {
  float:none;
}

iframe {
  padding:0;
  border:0;
  margin:0;
  width:100%;
  background:transparent;
  overflow:hidden;
}

.close {
  color:#000!important;
}

.anchor {
  display: block;
  overflow: hidden;
  opacity: 0;
  filter:alpha(opacity=0);
  -webkit-transition: opacity .5s;
     -moz-transition: opacity .5s;
      -ms-transition: opacity .5s;
       -o-transition: opacity .5s;
          transition: opacity .5s;
  position:absolute;
  margin-left:10px;
  margin-top:10px;
  z-index: 250;
  color:#222;
  text-shadow: 0 0 3px #eee;
  font-size: 18px;
}

.anchor i {
  font-weight: bolder;
  line-height: 22px;
  padding:2px;
  text-decoration: none;
}

.anchor:hover {
  text-decoration: none;
  color:#000;
  text-shadow: 0 0 3px #fff;
}

.component:hover > .anchor {
  opacity: 1;
  filter:alpha(opacity=100);
}

.grid-item-text .btn i,
.tabs .nav-link i {
  color: #000;
  text-decoration: none;
}

html {
  height:100%;
}

body{
  height: 100%;
}

figure{
  margin:0;
}

.interactive .page-header.affix {
  top:0px;
  margin-top:0;
}

.interactive .page-header.fixed {
  top:0px;
  margin-top:0;
  position: fixed;
}

.interactive-container > .flow-component > .component-wrapper{
  padding: 0!important;
}

.embed-link {
  display: none;
  color: #666;
}

.embed-link:hover {
  color: #222;
  text-decoration: none;
}

.embed-dialog textarea {
  width:97%;
}

.grid-wrapper{height:100%;}

.grid-item-text-wrapper{
  margin-bottom:20px;
  float:none;
  overflow: auto;
  width:100%;
}

.grid-items-wrapper .tabs .nav-link {
  display:none;
}

.with-active-item .grid-item-wrapper > .grid-item-text{
  padding-bottom: 10px;
}

.gallery-items-wrapper{
  display:none;
}

.gallery-slide-contents{
  position:absolute;
  bottom:60px;
  padding-bottom:30px;
}

.landing-header{
  width:100%;
  margin:0;
}

.landing-header h2{
  font-size: 40px;
  line-height:1em;
  width: 100%;
}

.landing-header h2 .highlight {
  font-size: 72px;
  line-height: 1em;
  text-transform: none;
}

.landing-header .description{
  font-size: 22px;
}

.landing-gallery-component > .landing-header-wrapper {
  padding: 20px 0;
}

.gallery-item.loaded-interactive > .top-wrapper .gallery-item-click {
  height: auto !important;
}

.map-wrapper .leaflet-label {
  font-size:11px;
}

/**
   * Grid
   */
  .grid-component .grid-header h2 {
    font-size: 4em;
  }

  .grid-component .grid-header h3 {
    font-size: 2em;
  }

  .grid-items-wrapper .tabs {
    display: none;
  }

  .grid-items-wrapper > .subcomponent-wrapper {
    width: 95%;
    margin: 0 auto;
  }
  /* Grid */

.open-gallery-item .interactive{
  padding-top: 0px!important;
}

/** Base side menu styles */
  .side-menu {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 5px 0;
    position: relative;
    z-index: 2;
  }

  .side-menu .menu-item a {
    text-transform: uppercase;
    font-size: 0.75em;
    line-height: normal;
    display: inline-block;
    color: #7e7e7e;
    padding: 7px 5px;
    text-decoration: none;
    border-left: 5px solid transparent;
  }

  .side-menu .menu-item {
    float:left;
  }

  .side-menu .menu-item a:hover {
    color: #222;
    text-decoration: none;
  }

  .side-menu .menu-item a:hover,
  .side-menu .menu-item.active > a,
  .side-menu .menu-item.active:hover > a {
    color:#222;
    border-left: 5px solid #666;
    background-color: transparent;
  }

  .side-menu .nested .menu-item a:hover {
    font-weight: normal;
  }

  .side-menu .menu-item a:hover {
    border-left: 5px solid #e0e0e0;
  }

  .side-menu .menu-item.active.not-direct {
    background:none;
    padding-right: 0;
  }

  .side-menu .nested .menu-item.active {
    padding-right: 34px;
  }

  .side-menu .nested .menu-item.active > a {
    border-left:5px solid #e0e0e0;
  }

  .side-menu-wrapper {
    border-right:1px solid #e9e9e9;
  }

  .side-menu .nested {
    border-bottom: 1px solid #e9e9e9;
    border-top: 1px solid #e9e9e9;
    margin-right: 25px;
    padding: 10px 0;
    margin-bottom: 0;
  }

  .side-menu .nested li a {
    padding-left:15px;
  }

  .filter-form {
    padding: 10px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    clear:both;
    width: 100%;
  }

  .filter-form input {
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    height:30px;
    margin-bottom: 0;
  }

  .grid-component.with-active-item .grid-items-wrapper {
    padding-bottom: 25px;
  }
/* End Side Menu */

/** References */
  .group .count {
    font-size: 9px;
    padding: 1px 4px;
    background: #f2f2f2;
    border-radius: 2px;
  }

  .references-title {
    font-size: 26px;
    font-weight: normal;
    line-height: 40px;
    margin-bottom: 15px;
  }

  .references-component .group {
    padding-right:2px;
    font-size: 13px;
  }

  .references-component .count {
    display: none;
  }

  .references-list {
    list-style: none;
    margin: 20px 0 0;
  }

  .references-list li {
    margin-bottom: 5px;
  }

  .references-component .category-title {
    font-size: 16px;
  }

  .reference-item .header {
    font-weight: bold;
    font-size: 1.1em;
    color: #000;
    margin: 25px 0 0;
    display: block;
  }

  .matrix-details .gradient {
    height: 3em;
    width: 100%;
    background: -moz-linear-gradient(top, rgba(244,243,241,0) 0%, rgba(244,243,241,1) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(244,243,241,0)), color-stop(100%,rgba(244,243,241,1))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(244,243,241,0) 0%,rgba(244,243,241,1) 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(244,243,241,0) 0%,rgba(244,243,241,1) 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(244,243,241,0) 0%,rgba(244,243,241,1) 100%); /* IE10+ */
    background: linear-gradient(to bottom, rgba(244,243,241,0) 0%,rgba(244,243,241,1) 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f4f3f1', endColorstr='#f4f3f1',GradientType=0 ); /* IE6-9 */
    position: absolute;
    bottom: 30px;
    left: 0;
  }
/** End References */

.slider-item-container > .text-component > .component-container p {
  margin-bottom: 10px;
  font-size: 1em;
  line-height: 1.2em;
}

.slider-item-container > .text-component > .component-container h2,
.slider-component .layout-region .text-component h2 {
  font-size: 1.5em;
  line-height: 30px;
}

.slider-component .layout-block-component .row-middle {
  height: 100%;
}

.slider-component .layout-block-component > .component-wrapper{
  padding-top: 0;
  height: 100%;
  box-sizing:border-box;
}

.text-component .show-more {
  display: block;
  background: url('../img/arrow-line-up.png') no-repeat center center;
  width: 100%;
  height: 30px;
  cursor: pointer;
}

.text-component .show-more-overlay,
.text-component .show-more {
  display: none;
}

.slider-component .layout-block-component .show-more-overlay,
.slider-component .layout-block-component .show-more {
  display: block;
}

.text-component.show-all .show-more {
  background: url('../img/arrow-line-down.png') no-repeat center center;
}

.layout-block-component .text-component.show-all {
  position: absolute;
  top: 0;
  height: 100%;
}

.video-component figcaption.caption {
  position: relative;
  background:transparent;
  filter:none;
  color: #000;
  overflow: visible;
  padding-bottom: 30px;
}

.video-component figcaption .play-container {
  position: absolute;
  top: -70px;
}

.video-component h1 {
  font-size: 2em;
}

.video-component figcaption.caption.reversed h1 {
  font-size: 18px;
  line-height: normal;
  border-bottom: 0;
}

.video-component figcaption.caption.reversed h3 {
  font-size: 28px;
  line-height: 1.15em;
  margin-bottom: 0.5em;
}

.mejs-controls .mejs-button button {
  background-image: url('../img/controls.svg');
}

.mejs-overlay-button {
  background-image: url('../img/bigplay.svg');
}

.embedded .interactive {
  border: 1px solid #e1e1e1;
  overflow: hidden;
  background-color: #fff;
  padding-top: 0 !important;
}

.embedded .interactive .interactive-container {
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}

.embedded .interactive > .page-header {
  display: none;
}

.embedded .interactive > .footer {
  background-color: transparent;
  background-image: none;
  color: #9a9696;
  font-size: 12px;
  padding: 10px 5% 5px;
  text-transform: none;
}

.embedded-footer .share-group {
  width: auto;
  float: right;
}

.embedded .interactive > .footer a {
  color: #2A69A1;
  text-transform: none;
  font-family: "HelveticaNeueW01-55Roma", arial, sans-serif;
}

.embedded-footer h6 {
  text-transform: none;
  display: inline;
  display: inline-block;
}

.embedded .interactive > .footer .copyright {
  text-transform: none;
  float: none;
  width: auto;
}

.embedded-footer .branding {
  text-align: center;
  width: 100%;
  margin-top: 10px;
  border-top: 1px solid #e1e1e1;
  padding-top: 10px;
}

.embedded .interactive > .footer .branding a {
  color: #767070;
}

.embedded-footer .branding i {
  background: transparent url('../img/cfr-logo-light.png') no-repeat 0 0;
  height: 30px;
  width: 30px;
  display: inline;
  zoom: 1;
  display: inline-block;
  vertical-align: middle;
}

.embedded-footer .sharing {
  background: none;
  border: 0;
  height: auto;
}

.embedded-footer .sharing li {
  background-color: transparent;
  border: 0;
  box-shadow: none;
  width: 20px;
  height: 20px;
}

.embedded-footer .sharing li a {
  background-position: 50% 50%;
  top: auto;
  height: 18px;
  width: 15px;
  margin: 0;
  vertical-align: middle;
}

.embedded-footer .sharing li a:hover {
  background-position: 50% 50%;
}

.embedded-footer .share-group .share-label {
  float:left;
  text-transform: uppercase;
  margin-right: 10px;
  font-size: 11px;
}

.embedded-footer .share-group .interactive-links {
  float:right;
}

.embedded-footer .sharing .twitter-share {
  background-image: url('../img/twitter-footer.png');
}

.embedded-footer .sharing .facebook-share {
  background-image: url('../img/facebook-footer.png');
}

.interactive > .footer .wrapper {
  padding: 20px 0;
}

.interactive > .footer .copyright {
  float: left;
  width: 70%;
}

.interactive > .footer .extra-link {
  float: right;
  margin-left: 15px;
}

.legend  .legend-title {
  font-size: 1.25em;
  line-height: normal;
}

.reveal-button {
  color: #fff;
}

.dialog-modal .modal-body .text-component  {
  padding: 10px 0;
}

.show-more {
  display: none;
}

.interactive .overlay-button {
  background-color:rgba(0, 0, 0, 0.65);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#a6000000',GradientType=0 );
  color:#fff;
  opacity: 0.85;
  filter:alpha(opacity=85);
}

.interactive .overlay-button:hover {
  opacity: 1;
  filter:alpha(opacity=100);
  text-decoration: none;
}

.slider-item-container > .layout-block-component > .component-wrapper {
  padding-bottom: 0px;
}

.component-share-links {
  position: absolute;
  top:5px;
  right:15px;
  z-index: 1000;
  line-height: normal;
}

.component-container > .shareable > .component-share-links,
figure > .shareable > .component-share-links {
  position: relative;
  top: auto;
  right: auto;
}

.component-container .shareable {
  padding:0 !important;
}

.with-background-image .component-share-links,
.timeline-component-wrapper > div > .component-share-links {
  background: rgba(0, 0, 0, 0.65);
  padding: 0 10px;
  border-radius: 10px;
  opacity: 0.85;
  filter:alpha(opacity=85);
}

.with-background-image .component-share-links:hover,
.timeline-component-wrapper > div > .component-share-links:hover {
  opacity: 1;
  filter:alpha(opacity=100);
}

.timeline-component-wrapper > div > .component-share-links {
  top:auto;
  bottom: 37px;
  right: 125px;
}

.with-background-image .component-share-links a,
.timeline-component-wrapper > div > .component-share-links a {
  color:#fff;
}

.component-share-links a {
  color: #9f9b98;
  font-size: 11px;
}

.component-share-links a:hover {
  text-decoration: none;
  color: #9d9b99;
}

.component-share-links .share-overlay {
  position: absolute;
  width: 40px;
  z-index: 1001;
  left:7px;
  background: transparent url('../img/share-background.png') no-repeat;
  padding: 8px 1px 1px 0px;
}

.component-share-links .share-overlay .sharing {
  background:transparent;
  border:0;
}

.component-share-links .share-overlay li {
  display: block;
  width: 100%;
  background: transparent !important;
  float:none;
  height: 33px;
  border:0;
  box-shadow: none;
  padding: 0!important;
  margin: 0!important;
}

.component-share-links .share-overlay li a {
  overflow: hidden;
  position: relative;
  top: auto;
  height: 33px;
  width: 100%;
  margin-top: 0;
  background-position: 7px 8px;
}

.component-share-links .share-overlay li a:hover {
  background-position: 7px -113px;
}

.component-share-links .share-overlay li a:hover {
  text-decoration: none;
}


.component-share-links .sharing {
  border: 1px solid rgb(213,212,209);
  height: auto;
}

.component-share-links .sharing .facebook-share {
  background-position: 12px 9px;
}
.component-share-links .sharing .facebook-share:hover {
  background-position: 12px -111px;
}


.component-share-links i.share-component-icon {
  background: transparent url('../img/share-icon.png') no-repeat;
  height: 16px;
  width: 15px;
  display: inline-block;
  vertical-align: middle;
}

.print-button {
  margin: 15px 15px 0;
  float:right;
}

.print-logo {
  display: none;
}

@media only screen and (max-width: 500px) {
  .video-component figcaption {
    display: block !important;
  }
}


@media only screen and (max-width: 767px) {
  .grid-item-component  {
    display: block!important;
    height: auto!important;
    margin-bottom: 20px;
  }

  .grid-item-component .grid-item-contents {
    display: none;
  }

  .grid-item-component.active-item .grid-item-contents {
    display:block;
  }

  .grid-component,
  .grid-wrapper,
  .grid-items-wrapper > .subcomponent-wrapper{
    height:auto !important;
  }

  .grid-component .grid-content-wrapper {
    position: static;
  }

  .grid-container,
  .matrix-container {
    display: block !important;
    height: auto !important;
  }

  .slider-component.fixed-height .slider-item-component {
    box-sizing: content-box;
    -moz-box-sizing: content-box;
  }

  .slider-component.fixed-height .slider-item-component .slider-item-wrapper {
    padding-bottom: 4px;
    padding-top: 24px;
  }

  .slider-item-component .slider-item-wrapper h2.subtitle {
    margin-top: -24px !important;
    padding:5px;
  }

  .slider-component.fixed-height .slider-item-component {
    padding-bottom: 30px;
  }

  .slider-item-container > .component:last-child {
    padding-bottom: 0;
  }

  .slider-item-container > .layout-block-component .row-fluid > .layout-region {
    height:auto;
    padding-bottom: 5px;
    margin-bottom: 0;
    border:0;
  }

  .slider-component .layout-block-component .row-middle .layout-region.region-a {
    height: 75%;
  }
}

@media print {
  .page-header .default-header .sharing,
  .print-button {
    display: none !important;
  }
}


/**
 * Tablet Breakpoint
 */
@media only screen and (min-width: 500px) {
  /**
   * Tablet Cenetered Components/Shared Top-Level Styles
   */
    .spine > .text-component > .component-container,
    .pull-quote-component blockquote,
    .pull-quote-component figcaption,
    .spine > .layout-block-component > .component-wrapper,
    .spine > .slider-component .slider-item-wrapper > .component-wrapper,
    .slider-item-container,
    .spine > .video-component > figcaption > *,
    .landing-gallery-component > .subcomponent-wrapper .video-caption,
    .spine > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .text-component > .component-container,
    .spine > .flow-component > .component-wrapper > .component-container > .layout-block-component > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .grid-component > .grid-wrapper > .grid-header,
    .spine > .grid-component > .grid-wrapper > .grid-header > .text-component,
    .landing-gallery-component > .subcomponent-wrapper,
    .gallery-slide-container,
    .gallery-slide-contents,
    .centered
    {
      width: 87.5%;
      margin:0 auto;
    }

    .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
    .spine > .slider-component .slider-item-wrapper > h2.subtitle,
    .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper,
    .gallery-slide-contents {
      left:6.25%;
    }

    #logo {
      background-image: url('../img/logo-cfr-sm.png');
      width:90px;
    }

    .page-header .interactive-title {
      font-size: 19px;
      padding:17px 10px;
      margin-left:90px;
      margin-right: 50px;
    }
  /* End Tablet Cenetered Components/Shared Top-Level Styles */

  /**
   * Tablet Slider
   */

    .slider-component p {
      margin-top: 20px;
    }

    .slider-component .layout-region figure {
      text-align: left;
    }

    .slider-component .layout-region figure img {
      max-height: 100%;
      max-width: 100%;
      width:auto;
    }

    .slider-component .layout-region .text-component h2 {
      font-size: 1.5em;
      line-height: 1.25em;
    }

    .slider-item-wrapper.with-background-image .slider-item-container p,
    .slider-item-wrapper.with-background-image .slider-item-container em {
      font-size: 1em;
      line-height: 1.5em;
      margin-bottom: 15px;
    }

    .slider-item-component > .slider-item-wrapper > .component-wrapper,
    .slider-item-component > .slider-item-wrapper > .subtitle {
      left:0;
    }

    .slider-item-wrapper > .component-wrapper,
    .slider-item-container > .layout-block-component > .component-wrapper,
    .slider-item-container > .layout-block-component .row-fluid,
    .slider-item-container > .layout-block-component .row-fluid > .layout-region,
    .slider-item-container > .layout-block-component .row-fluid > .layout-region > .component-container {
      max-height: 100%;
      height: 100%;
    }

    .slider-item-container .layout-block-component {
      overflow: hidden;
      height: 100%;
    }

    .slider-item-container > .text-component > .component-container h2 {
      font-size: 2.5em;
    }
  /* End Tablet Slider */

  /**
   * Tablet Layout Region
   */
    .layout-region .video-component figcaption > * {
      width: 87.6%;
      margin-left:6.2%;
    }
  /* End Tablet Layout Region */

  /**
   * Text Component
   */
    .flow-component > .component-wrapper > .component-container > .text-component > .component-container > h2 {
      font-size: 60px;
    }

    .flow-component > .component-wrapper > .component-container > .text-component > .component-container > * {
      font-size: 21px;
      padding-top:50px;
    }

    .flow-component > .component-wrapper > .component-container > .text-component > .component-container p {
      margin-bottom: 30px;
    }
  /* End Text Component */

  /**
   *  Timeline Component
   */

    .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
    .spine > .slider-component .slider-item-wrapper > h2.subtitle {
      font-size: 12px;
    }
  /* End Timeline Component */

  /**
   * Video Component
   */
    .video-component .btn-video {
      margin-top:50px;
    }

    .layout-region .video-component .btn-video {
      margin-top:20px;
    }

    .layout-region .video-component figcaption > * {
      width: 87.6%;
      margin-left:6.2%;
    }



    .video-component h2 {
      font-size: 36px;
    }
    .video-component h3{
      font-size: 28px;
    }

    .video-component figcaption p{
      font-size: 16px;
    }
  /* End Video component */

  /**
   * Pull Quote Component
   */
    .pull-quote-component blockquote p{
      font-size: 48px;
    }

    .pull-quote-component figcaption{
      font-size: 28px;
    }

    .pull-quote-component .component-container{
      padding: 80px 0;
    }
  /* End Pull Quote Component */

  /**
   * Grid
   */
    .grid-component.with-active-item .grid-items-wrapper {
      padding-bottom: 0;
    }
  /* Grid */

  /** References */
    .references-title {
      font-size: 18px;
      padding: 0 10px;
    }
  /** End References */

  /** Date List */
  .date-item .description,
  .date-list-title {
    margin-left:15%;
  }

  .date-item .date {
    width: 15%;
  }

  .slider-component .layout-block-component .row-middle .region-a {
    max-height: 75%;
    height: auto;
  }

  .map-wrapper .leaflet-label {
    font-size:14px;
  }

}

@media only screen and (min-width: 768px) {
  .layout-block-component .layout-region {
    padding-bottom: 0;
    border: 0;
    margin-bottom: 0;
  }

  .video-component figcaption.caption {
    padding:20px 0;
    position: absolute;
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#66000000', endColorstr='#66000000',GradientType=0 ); /* IE6-9 */    background: rgba(0, 0, 0, 0.4);
    color: #fff;
  }

  .video-component figcaption.caption.reversed h1 {
    font-size: 28px;
    line-height: normal;
    border-bottom: 0;
  }

  .video-component figcaption.caption.reversed h3 {
    font-size: 44px;
    border-bottom: 1px solid #888;
    margin-bottom: 0.25em;
  }

  /** STACKED TITLE LAYOUT FOR VIDEO **/
  .video-component figcaption.caption.stacked-title {
    width:70%;
    left:10%;
    padding: 20px 20px;
  }

  .video-component figcaption.caption.stacked-title h1 {
    font-size:48px;
    line-height: 1em;
    text-transform: none;
    width: 90%;
    text-align: center;
    border-bottom: 0;
    margin-bottom: 0.5em;
    word-break: break-word;
  }

  .video-component figcaption.stacked-title h1 .highlight {
    font-size: 2em;
    line-height: 0.75em;
    text-transform: none;
    display: block;
  }

  .video-component figcaption.stacked-title .video-caption p {
    font-size: 13px;
    font-family: "Haarlemmer MT W01", Georgia, "Times New Roman";
    line-height: 1.4em;
  }

  .video-component figcaption.stacked-title .subtitle {
    width: 45%;
    float: left;
    font-size: 22px;
    font-family: "HaarlemmerMTW01-Italic", Georgia, "Times New Roman";
    text-align: center;
  }

  .video-component figcaption.stacked-title .video-caption {
    width: 55%;
    float: right;
  }

  .video-component figcaption.stacked-title .play-container {
    margin: 25px 0 15px;
  }

  .video-component figcaption.stacked-title .play-container .btn-video {
    font-size: 14px;
    letter-spacing: normal;
    line-height: 34px;
  }

  .video-component figcaption .play-container {
    position: relative;
    top: auto;
  }

  /** End Stacked layout **/

  /** Two Column Video Layout **/

  .video-component figcaption.caption.two-column {
    width: 90%;
    left:5%;
    background:none;
    padding-bottom: 50px;
  }

  .video-component figcaption.two-column h1 {
    width: 50%;
    float:left;
    border-bottom: 0;
    font-size: 74px;
    line-height: 0.85em;
    position: absolute;
    bottom: 90px;
    left: 0;
  }

  .video-component figcaption.two-column .subtitle,
  .video-component figcaption.two-column .video-caption {
    float: right;
    width: 50%;
    margin-right: 1px;
  }

  .video-component figcaption.two-column .subtitle {
    font-family: "HaarlemmerMTW01-Italic", Georgia, "Times New Roman";
  }

  .video-component figcaption.two-column .video-caption p {
    font-family: "Haarlemmer MT W01", Georgia, "Times New Roman";
  }

  /** End Two Column Layout **/

  /**
   * Grid
   */
    .grid-item-container{
      border: 20px 0;
    }

    .grid-items-wrapper > .subcomponent-wrapper {
      width:100%;
    }

    .grid-items-wrapper .tabs .nav-link {
      display:block;
    }

    .grid-items-wrapper .tabs .grid-item-text-wrapper {
      float:left;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
      padding: 0 9px;
      margin-bottom: 0;
    }

    .grid-item-component .grid-item-text.internal-header {
      display: none;
    }

    .grid-items-wrapper .tabs {
      display: block
    }
  /* End Grid */


  .landing-header h2{
    font-size: 66px;
    line-height:0.5em;
    letter-spacing: -3px;
  }

  .landing-header h2 .highlight {
    font-size: 116px;
  }

  .landing-header .description{
    font-size: 31px;
    line-height: 1em;
  }

  .matrix-container > .wrapper {
    padding: 50px 0 30px;
  }

  .matrix-details .gradient {
    bottom:30px;
  }

  /** Side Menu Styles */
    .side-menu {
      border-left: 5px solid #f4f4f4;
      height: 100%;
      padding: 15px 0;
    }

    .side-menu .menu-item a:hover,
    .side-menu .menu-item.active > a,
    .side-menu .menu-item.active:hover > a {
      margin-left: -5px;
    }

    .side-menu .menu-item a {
      border-left: 0;
      padding: 7px 10px;

    }

    .side-menu .menu-item {
      float:none;
    }

    .references-component .group {
      padding-right: 0;
    }

    .references-component .count {
      display: inline;
      margin-left: 15px;
    }
  /* End Side Menu Styles */

  /** Matrix Component */
    .matrix-categories {
      width: 25%;
      float: left;
      min-width: 120px;
    }

    .matrix-details {
      float: left;
      width: 75%;
      border: 1px solid #dddddd;
      max-height: none;
      padding:5px 30px;
    }

    .matrix-details .group-detail {
      margin-bottom: 30px;
    }
  /* End Matrix */

  .embed-link {
    display: block;
    position: absolute;
    right:10px;
    bottom:10px;
  }

  .video-component figcaption.three-fourths {
    width: 87.5%;
  }

  .legend .legend-title {
    font-size: 1.5em;
  }

  .layout-block-component .layout-region,
  .first-layout-block .row-middle,
  .layout-block-list-item .row-middle  {
    border: 0;
  }

  /* Try to keep images in layout regions in the screen */
  .layout-region .image-component img {
    max-height: 100%;
    max-width: 100%;
    width: auto;
  }

  .slider-component .layout-region .text-component {
    padding-bottom: 10px;
    -moz-box-sizing:border-box;
    box-sizing: border-box;
  }

  .slider-component .layout-block-component .show-more-overlay,
  .slider-component .layout-block-component .show-more {
    display: none;
  }

  .slider-component .layout-block-component .row-middle .region-a {
    max-height: 100%;
    height: 100%;
  }

  .annotated-image-component .sidebar-wrapper {
    width: 40%;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    overflow: auto;
    background: #fff;
    background: rgba(244, 243, 241, 0.9);
    padding: 10px 15px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-shadow: -2px 0 3px rgba(0, 0, 0, 0.6);
  }

  .annotated-image-component.sidebar-fixed .subcomponent-wrapper {
    width: 60%;
    float: left;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin:0;
  }

  .annotated-image-component.sidebar-fixed figcaption {
    width: 60%;
  }

  .annotated-image-component.sidebar-fixed .details {
    width: 40%;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin:0;
    padding: 0 0 15px;
  }

  .annotated-image-component.sidebar-fixed .details .sidebar-wrapper {
    width: 100%;
    box-shadow: none;
    position: relative;
  }

  .annotated-image-component.sidebar-fixed .details .sidebar-wrapper .close {
    display: none;
  }

  .embedded-footer .branding {
    margin-top:15px;
    padding-top:15px;
  }

  .embedded .interactive > .footer {
    padding: 25px 5% 10px;
  }
}


/**
 * Desktop Breakpoint
 */
@media only screen and (min-width: 1025px) {
  /**
   * Cenetered Components/Shared Top-Level Component Styles
   */
    .spine > .text-component > .component-container,
    .pull-quote-component blockquote,
    .pull-quote-component figcaption,
    .spine > .layout-block-component > .component-wrapper,
    .spine > .slider-component .slider-item-wrapper > .component-wrapper,
    .slider-item-wrapper > .component-wrapper,
    .landing-gallery-component > .subcomponent-wrapper .video-caption,
    .spine > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .text-component > .component-container,
    .spine > .flow-component > .component-wrapper > .component-container > .layout-block-component > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .flow-component > .component-wrapper > .component-container > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
    .spine > .grid-component > .grid-wrapper > .grid-header,
    .spine > .grid-component > .grid-wrapper > .grid-header > .text-component,
    .landing-gallery-component > .subcomponent-wrapper,
    .gallery-slide-container,
    .centered,
    .grid-item-contents > .grid-item-container > .component > .component-container,
    .matrix-container .wrapper
    {
      width: 74%;
      margin:0 auto;
    }

    .spine > .video-component > figcaption > * {
      width: 95%;
      margin:0 auto;
    }

    .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
    .spine > .slider-component .slider-item-wrapper > h2.subtitle,
    .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper {
      left:13%;
    }
  /* End Centered */

  /**
   * Layout Block Component
   */
    .layout-block-component .region-header {
      margin-bottom:50px;
    }

    .layout-block-component .region-footer {
      margin-top:50px;
      padding-top: 0;
      border: 0;
    }
  /* End Layout Block Component */


  /**
   * Slider
   */
    .slider-component .nav-wrapper .btn {
      display: block;
      height: 83px;
      width: 83px;
      position:absolute;
      border:none;
      box-shadow:none;
      padding:0;
      border-radius:0;
      background-image: url(../img/arrows-next-back4.png);
      background-color: transparent;
      transition: all 0s;
      -webkit-transition: all 0s;
      -o-transition:all 0s;
      -moz-transition:all 0s;
      -ms-transition: all 0s;
      text-indent: -1000px;
      overflow:hidden;
      text-transform:uppercase;
      z-index:30;
    }

    .slider-component .nav-wrapper .btn i {
      display: none;
    }

    .slider-component .btn-prev{left: -10%;background-position: -11px -8px;}
    .slider-component .btn-next {right: -10%;background-position: -109px -8px;}
    .slider-component .btn-prev:hover {background-position: -11px -105px;}
    .slider-component .btn-next:hover {background-position: -108px -105px;}
    .slider-component .btn-prev:hover, .btn-next:hover{
      background-color:transparent;
    }

    .slider-component .nav-wrapper nav {
      line-height:inherit;
      position: relative;
      background:none;
      padding:0;
      height:0;
    }

    .slider-component .slider-pager {
      display: none;
    }

    .slider-component .nav-wrapper {
      position:absolute;
      padding:0;
      height:0;
      width: 72.5%;
      margin:0 auto;
      left:13.75%;
      bottom:auto;
    }

    .slider-item-container > .component{padding-top:25px;}
    .slider-item-container > .component:first-child{padding-top:0}

    .slider-item-wrapper.with-background-image{
      padding: 50px;
    }

    .slider-item-container {
      overflow: hidden;
      position: relative;
    }

    .slider-component.small .slider-item-wrapper.with-background-image .slider-item-container {
      padding:25px;
    }

    .slider-component.small .slider-item-wrapper.with-background-image{
      padding: 25px;
    }

    .slider-item-component .slider-item-wrapper a.reveal-button {
      bottom: 10px;
    }

    .slider-component .slider-pager-top {
      display: block;
      position: absolute;
      bottom:2px;
      right: 20px;
      font-size: 13px;
      white-space: nowrap;
    }

    .slider-component .layout-region .text-component {
      padding-bottom: 0;
    }
  /* End Slider */

  /**
   * Timeline component
   */
    .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
    .spine > .slider-component .slider-item-wrapper > h2.subtitle {
      font-size: 16px;
      z-index: 101;
    }
  /* End Timeline Component */

  /**
   * Video Component
   */
    .video-component h2 {
      font-size: 50px;
    }

    .video-component figcaption p{
      font-size: 20px;
      line-height: 150%;
    }

    .video-component figcaption {
      padding:30px 0px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
    }

    .map-point-wrapper .video-component {
      min-height: 360px;
      min-width: 640px;
    }

    .video-component figcaption.three-fourths {
     width: 75%;
    }

    .video-component figcaption.caption.stacked-title {
      width:55%;
    }

    .video-component figcaption.caption.stacked-title h1 {
      font-size: 62px;
    }

    .video-component figcaption.two-column h1 {
      font-size: 94px;
    }

    .video-component figcaption.caption.reversed h1 {
      font-size: 26px;
    }

    .video-component figcaption.caption.reversed h3 {
      font-size: 54px;
    }
  /* End Video */

  /**
   * Pull Quote Component
   */
    .pull-quote-component {
      background-attachment: fixed;
    }

    .pull-quote-component.pull-quote-component-parallax-off {
      background-attachment: scroll;
    }

    .pull-quote-component blockquote p{
      font-size: 54px;
    }

    .pull-quote-component figcaption{
      font-size: 33px;
    }

    .pull-quote-component .component-container{
      padding: 100px 0;
    }
  /* End Pull Quote */

  /**
   * Embedded styles
   */
    .embedded .page-header {
      padding:5px 0;
    }

    .embedded .page-header .wrapper {
      margin: 0 115px 0 110px;
    }

    .embedded .page-header #logo {
      background-image: url('../img/logo-cfr-sm.png');
      width:90px;
    }
  /* End Embedded */

  /**
   * Page Header
   */
    .interactive .page-header {
      padding: 10px 0;
    }

    .interactive-title {
      padding-bottom: 5px;
    }

    #logo {
      background-image: url('../img/logo-cfr.png');

      width:115px;
    }

    .page-header.affix #monogram {
      display: none;
    }

    .nav-trigger {
      display: none;
    }

    .page-header .brand-share {
      height:100%;
      background-color: transparent;
      position: static;
      display: block;
    }

    .page-header.affix .brand-share {
      display: block;
    }

    .page-header > .wrapper,
    .page-header > .header-wrapper > .wrapper {
      position: static;
      margin:0 115px 0 140px;
      padding:15px 0 15px;
    }

    .page-header .interactive-title {
      margin-right: 20px;
      margin-left:0;
      padding:0;
    }

    .page-header .nav-wrapper {
      position: static;
      display: block !important;
      clear:none;
      top:auto;
      box-shadow: none;
      border:0;
    }

    .page-header .interactive-nav {
      float:left;
      margin:0;
      border-top:0;
      display: block;
      position: static;
      width:auto;
      clear:none;
    }

    ul.interactive-nav, ul#share-links {
      display: block;
    }

    .page-header .interactive-nav li {
      display: inline-block;
    }

    ul.interactive-nav a {
      padding: 5px 10px;
      margin:0 1px 1px 0;
      background: #fff;
      font-size: 10px;
      text-transform: uppercase;
      box-shadow: none;
      border-top: 0;
    }

    .page-header .extra-link {
      float:left;
      padding:10px;
    }

    .page-header .sharing {
      background:transparent;
      right: 0;
      position: absolute;
      top: 0;
      width: 100px;
      height: 100%;
      border-top:0;
      border-bottom: 0;
    }

    .sharing li {
      position: relative;
      width: 50%;
      height: 100%;
      float: left;
      border-left: 1px solid #ccc;
      box-shadow: inset 1px 0 0 #fff;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
    }

    .sharing a {
      overflow: hidden;
      height: 100%;
      width: 100%;
    }
  /* End Page Header */

  .gallery-items-wrapper{
    display:block;
  }

  /**
   * Landing gallery
   */
  .gallery-slide-contents{
    position:relative;
    bottom: auto;
    left: auto;
    width: 41.6%;
    padding: 10px 15px 20px;
  }
  .landing-header{
    margin: 0!important;
  }

  .landing-gallery-component > .landing-header-wrapper {
    padding: 25px 0;
  }

  .landing-gallery-component > .subcomponent-slider > .slider-wrapper > .nav-wrapper {
    top: 300px !important;
  }

  .landing-gallery-component > .subcomponent-slider > .slider-wrapper > .nav-wrapper.current-background .btn {
    background:transparent;
  }

  .landing-header h2 {
    width: 59.4%;
    font-size: 54px;
    line-height: 1em;
  }

  .landing-header h2 .highlight {
    font-size:96px;
  }

  .gallery-item-component .sub-nav > li a {
    float:left;
    padding:5px 10px;
  }

  /**
   * Grid
   */


  /* End Grid */

  .brief-component > .section-container > .section-nav-wrapper{
    width:20%;
    display:inline-block;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding:20px 0;
    float:left;
  }

  .brief-component .section-nav-wrapper .nested > li {
    margin-left: 15px;
    font-size: 12px;
  }

  .brief-component > .section-container > .section-content {
    width:80%;
    display:inline-block;
  }

  .annotated-image-component .sidebar-wrapper {
    width: 33%;
  }

  .annotated-image-component.sidebar-fixed .subcomponent-wrapper,
  .annotated-image-component.sidebar-fixed figcaption {
    width: 67%;
  }

  .annotated-image-component.sidebar-fixed .details {
    width: 33%;
  }

  /**
   * Map Component
   */

      .legend ul {
        max-height: 80%;
      }

      .legend  .legend-title {
        font-size: 2em;
      }

      .map-wrapper {
        padding-bottom: 0;
      }
   /* End Map Component */
}

@media only screen and (min-width: 1280px) {
  .video-component figcaption.caption.stacked-title h1 {
    font-size: 76px;
  }

  .video-component figcaption.two-column h1 {
    font-size: 118px;
  }

  .video-component figcaption.caption.reversed h1 {
    font-size: 28px;
  }

  .video-component figcaption.caption.reversed h3 {
    font-size: 84px;
  }

  .annotated-image-component .sidebar-wrapper {
    width: 30%;
  }

  .annotated-image-component .sidebar-wrapper .close {
    font-size: 20px;
  }

  .annotated-image-component.sidebar-fixed .subcomponent-wrapper,
  .annotated-image-component.sidebar-fixed figcaption {
    width: 70%;
  }

  .annotated-image-component.sidebar-fixed .details {
    width: 30%;
  }
}

@media only screen and (min-width: 1440px) {
  /**
   * Cenetered Components/Shared Top-Level Component Styles
   */
  .spine > .text-component > .component-container,
  .pull-quote-component blockquote,
  .pull-quote-component figcaption,
  .spine > .layout-block-component > .component-wrapper,
  .spine > .slider-component .slider-item-wrapper > .component-wrapper,
  .slider-item-wrapper > .component-wrapper,
  .video-caption,
  .video-component > figcaption > *,
  .spine > .timeline-component > .slider-component .slider-item-wrapper > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .text-component > .component-container,
  .spine > .flow-component > .component-wrapper > .component-container > .layout-block-component > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .slider-component .slider-item-wrapper > .component-wrapper,
  .spine > .flow-component > .component-wrapper > .component-container > .timeline-component > .slider-item-wrapper > .component-wrapper,
  .spine > .grid-component > .grid-wrapper > .grid-header,
  .spine > .grid-component > .grid-wrapper > .grid-header > .text-component,
  .landing-gallery-component > .subcomponent-wrapper,
  .gallery-slide-container,
  .centered,
  .grid-item-contents > .grid-item-container > .component > .component-container,
  .matrix-container .wrapper
  {
    width: 61.8%;
    margin:0 auto;
  }

  .timeline-component > .slider-component .slider-item-wrapper > h2.subtitle,
  .spine > .slider-component .slider-item-wrapper > h2.subtitle,
  .slider-component .slider-item-component .slider-item-wrapper.with-background-image > .component-wrapper {
    left:19.125%;
  }
  /* End Centered */

  .landing-header h2 {
    font-size: 65px;
  }

  .landing-header h2 .highlight {
    font-size:114px;
  }

  .gallery-slide-contents{
    width: 38.2%;
    padding:20px;
  }

  .landing-header h2 {
    width: 61.8%;
  }

  .matrix-container > .wrapper {
    padding:50px 0;
  }

  .matrix-details .gradient {
    display: none;
  }

  .video-component figcaption.caption.stacked-title h1 {
    font-size: 90px;
  }

  .video-component figcaption.caption.reversed h1 {
    font-size: 32px;
  }

  .video-component figcaption.caption.reversed h3 {
    font-size: 86px;
  }

  .annotated-image-component .sidebar-wrapper {
    width: 25%;
  }

  .annotated-image-component.sidebar-fixed .subcomponent-wrapper,
  .annotated-image-component.sidebar-fixed figcaption {
    width: 75%;
  }


  .annotated-image-component.sidebar-fixed .details {
    width: 25%;
  }
}


