/*************************
Base Styles
*************************/

  body {
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color:#2C2727;
  }

  /*---------------------
  Headings
  ---------------------**/

  h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    color: #2C2727;
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  }

  h1, h2, h3, .h1, .h2, .h3 {
    font-weight: 300;
  }

  h4, .h4 {
    font-weight: 400;
  }  

  /*--- Pixel to EM Conversion ---*/
  h1, .h1 { font-size: 2.571em; /* 36 px */ }
  h2, .h2 { font-size: 2.143em; /* 30 px */ }
  h3, .h3 { font-size: 1.714em; /* 24 px */ }
  h4, .h4 { font-size: 1.286em; /* 18 px */ }
  h5, .h5 { font-size: 1em; /* 14 px */ }
  h6, .h6 { font-size: .857em; /* 12 px */ }


  /* Bootstrap removes margins from the 'last' paragraph, but Drupal
   * often wraps paragraphs in extra divs and such. */
  p:last-child { margin-bottom: 10px; }

  blockquote {
    font-size: 1.250em;
  }

  blockquote p {
    font-weight: 500;
  }

  blockquote h1, 
  blockquote h2, 
  blockquote h3 {
    margin-top: 0;
  }


  @media (min-width: 768px) {
    .lead {
        font-size: 21px !important;
    }
  }

  /*---------------------
  Links
  ---------------------**/
  a,
  a h1, a h2, a h3, a h4, a h5, a h6 {
      color: #2174BB; 
      /* WCAG 2.0 AA on #EEEEEE, #F5F5F5, #FFFFFF */
  }

  /* default - no underline */

  a:link{
    text-decoration: none;
  }
  
  a.h1, a.h2, a.h3, a.h4, a.h5, a.h6 {
    color:#2174BB;
    cursor:pointer;
  }
  
  /* hover/focus - underline */
  a:focus, a:hover {
      text-decoration: underline;
  }

  /*--- Links surrounded by text ---*/

  /* default - underline (border-bottom) */
  p a:link, 
  li a, dl a, blockquote a, figcaption a, pre a {
   text-decoration: none; 
   border-bottom: 1px solid;
  }

  /* hover/focus - stronger underline (border-bottom) */
  p a:focus, p a:hover, 
  li a:focus, li a:hover, 
  dl a:focus, dl a:hover,
  blockquote a:focus, blockquote a:hover,
  figcaption a:focus, figcaption a:hover,
  pre a:focus, pre a:hover {
   text-decoration: none; 
   border-bottom: 2px solid; 
  }

  /*--- EXCEPTIONS ---*/ 

  /* hover/focus - links styled as buttons */
  p a.btn:focus, p a.btn:hover {
    border-bottom: 1px solid;
  }

  nav li a, .navbar a, .menu a, a.active, .nav a, ul.list-inline li a {
      text-decoration: none;
      border-bottom: 0;
  }

  nav li a:focus, nav li a:hover, 
  .navbar a:focus, .navbar a:hover, 
  .nav a:focus, .nav a:hover {
    border-bottom: 0;
  }

  /* temporary fix until media-heading is used across all listing views */
  h1 a, h2 a { text-decoration: none !important; }
  h1 a:focus, h1 a:hover,
  h2 a:focus, h2 a:hover { border-bottom: 2px solid !important;}

  .more-link { margin-top: 15px; }

  /*--- Optional class to remove line from list links ---*/
  .no-link-lines li a{
    text-decoration: none;
    border-bottom: 0;
  }

  .no-link-lines li a:focus,
  .no-link-lines li a:hover {
    text-decoration: none;
    border-bottom: 1px solid;
  }
  
  /* Adjust calendar all-day link to have sufficient color contrast */
  /* E8b */
  .calendar-calendar .month-view .full td.multi-day .inner div a {
    color:#000;
    font-size:11px;
  }
  
  .calendar-calendar .month-view .full td.multi-day div.monthview {
    color:#000;
  }
  
  /* E9b */
  .calendar-calendar .week-view .full td.multi-day .inner div a {
    color:#000;
    font-size:11px;
  }
  
  .calendar-calendar .week-view .full td.multi-day div.weekview {
    color:#000;
  }

  /*---------------------
  Lists
  ---------------------**/

  dl {
    margin-top: 0;
  }

  dt {
     padding: 1.5em 0 1em 0;
  }

  dt:first-child {
    padding-top: 0;
  }

  dd {
    padding-bottom: 1.5em;
    border-bottom: 1px solid #EFEFEF;
  }

  ol.search-results {
    padding:0;
    list-style:none;
  }

  /*---------------------
  Images
  ---------------------**/

  figure {
      margin-bottom: 20px;
  }

  figcaption {
      color: #2C2727;
      font-size: 1em; /* 14px */
      /*font-style: italic;*/
      padding: 9px;
      text-align: center;
  }

  /*
   * Icons - FontAwesome icons are variable width, which makes it hard
   * to do layout. Enforce a minimum width.
   */
  .media-object { min-width: 1.8ex; text-align: center; }

  /*---------------------
  File Attachments
  ---------------------**/

  img.file-icon {
    margin-right: 10px;
  }

  /*---------------------
  Form Elements
  ---------------------**/

  input::-webkit-input-placeholder { color: #767676 !important; }
  input::-moz-placeholder { color: #767676 !important; }
  input:-moz-placeholder { color: #767676 !important; /* Older versions of Firefox */ }
  input:-ms-input-placeholder { color: #767676 !important; }

  /*---------------------
  Menus
  ---------------------**/

    /*--- Layout ---*/


     /** Option A - Add nested menus **/
     .main-container .menu .menu {
      padding-left: 20px;
     }

    /** Option B (Disabled) - Add nested menus that keep full width of menu container **/
    /* .main-container .menu .menu li a {  padding-left: 30px; }
    .main-container .menu .menu .menu li a {  padding-left: 50px; }
    .main-container .menu .menu .menu .menu li a {  padding-left: 70px; }*/

    .main-container .menu li.collapsed>a,
    .main-container .menu li.expanded>a {
      padding-right: 30px;
    }

    /*--- Theming ---*/

    .main-container .menu li a { 
      border-bottom: 1px solid #EEEEEE;
      color: #666666;
      font-size: 1.071em;
    }

    .main-container .menu .menu li a {
      font-size: 1em;
    }

    .main-container .menu li a.active-trail {
      color: #2F70A9;
      font-weight: 700;
    }

    .main-container .menu li a:focus,
    .main-container .menu li a:hover { 
      background: #F3F3F3;
    }

    /* Caret for all parent menu items */
    .caret-default,
    .main-container .menu li.expanded>a:after {
      border-top: 4px dashed;
      border-right: 4px solid transparent;
      border-left:4px solid transparent;
      content: "";
      display: block;
      height:0;
      position: absolute;
      right: 10px;
      top: 20px;
      width: 0;
    }

    .caret-right {
      border-bottom: 4px solid transparent;
      border-top: 4px solid transparent;
      border-left: 4px solid;
    }

  /*---------------------
   Panels
  ---------------------**/

    /*--- Theming ---*/
    .panel-title {
      color: inherit;
      font-weight: 500;
    }

    .panel-primary { border-color: #275C8B; }
    .panel-success { border-color: #C2DEAA; }
    .panel-info { border-color: #9CDDEA; }
    .panel-warning { border-color: #F6DDA8; }
    .panel-danger { border-color: #E0B0B8; }
    
    .panel-primary>.panel-heading { 
      background: #2B669A;
      border-color: #275C8B;
    }

    .panel-success>.panel-heading { 
      color: #057A51; 
      border-color: #C2DEAA;
    }

    .panel-info>.panel-heading { 
      color: #336F98; 
      border-color: #9CDDEA;
    }

    .panel-warning>.panel-heading { 
      color: #A66208; 
      border-color: #F6DDA8;
    }

    .panel-danger>.panel-heading { 
      color: #B83635; 
      border-color: #E0B0B8;
    }

  /*---------------------
   Blocks
  ---------------------**/

    /*--- Theming ---*/

    /* title links - underline made thinner */
    .block-title a:focus,
    .block-title a:hover {
      border-bottom: 2px solid;
      text-decoration: none;
    }

  /*---------------------
   Panes
  ---------------------**/

    /*--- Theming ---*/

    /* title links - underline made thinner */
    .pane-title a:focus,
    .pane-title a:hover {
      border-bottom: 2px solid;
      text-decoration: none;
    }

  /*---------------------
  Labels
  ---------------------**/

  .label {
    font-size: .857em;
  }

  .label-default { background: #333333; }
  .label-primary{ background: #2B669A; }
  .label-success{ background: #088856; }
  .label-info{ background: #5B7C85; }
  .label-warning{ background: #CA500F; }
  .label-danger{ background: #AC2118; }

  /*---------------------
  Alerts
  ---------------------**/

  .alert-success{ border-color: #C2DEAA;}
  .alert-info{ border-color: #9CDDEA;}
  .alert-warning{ border-color: #F6DDA8;}
  .alert-danger{ border-color: #E0B0B8;}

  .alert-success, .alert-success .alert-link { color: #057A51; }
  .alert-info, .alert-info .alert-link { color: #336F98; }
  .alert-warning, .alert-warning .alert-link { color: #A66208; }
  div.error, table tr.error, .alert-danger, .alert-danger .alert-link { color: #B83635;}

  /*---------------------
  Buttons
  ---------------------**/

    /* Default */
    p a.btn-default:link { border-bottom-color: #CCCCCC;}

    /* Primary */
    .btn-primary {
      background: #2B669A;
      border-color: #265C8A;
    }

    p a.btn-primary:link { border-bottom-color: #265C8A;}

    .btn-primary:focus,
    .btn-primary:hover,
    .btn-primary:active,
    .btn-primary.active {
      background: #1E476C;
      border-color: #1A3D5C;
    }

    .btn-primary.disabled, 
    .btn-primary[disabled], fieldset[disabled] .btn-primary, 
    .btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, 
    .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, 
    .btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active, 
    .btn-primary.disabled.active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary.active {
      background: #2B669A;
      border-color: #265C8A;
    }

    /* Success */
    .btn-success {
      background: #088856;
      border-color: #07754A;
    }

    p a.btn-success:link { border-bottom-color: #07754A;}

    .btn-success:focus,
    .btn-success:hover,
    .btn-success:active,
    .btn-success.active {
      background: #06633F;
      border-color: #055033;
      
    }

    .btn-success.disabled, 
    .btn-success[disabled], fieldset[disabled] .btn-success, 
    .btn-success.disabled:hover, .btn-success[disabled]:hover, fieldset[disabled] .btn-success:hover, 
    .btn-success.disabled:focus, .btn-success[disabled]:focus, fieldset[disabled] .btn-success:focus, 
    .btn-success.disabled:active, .btn-success[disabled]:active, fieldset[disabled] .btn-success:active, 
    .btn-success.disabled.active, .btn-success[disabled].active, fieldset[disabled] .btn-success.active {
      background: #088856;
      border-color: #07754A;
    }

    /* Info */
    .btn-info {
      background: #5B7C85;
      border-color: #537179;
    }

    p a.btn-info:link { border-bottom-color: #537179;}

    .btn-info:hover,
    .btn-info:focus,
    .btn-info:active,
    .btn-info.active {
      background: #4B666E;
      border-color: #435B62;
    }

    .btn-info.disabled, 
    .btn-info[disabled], fieldset[disabled] .btn-info, 
    .btn-info.disabled:hover, .btn-info[disabled]:hover, fieldset[disabled] .btn-info:hover, 
    .btn-info.disabled:focus, .btn-info[disabled]:focus, fieldset[disabled] .btn-info:focus, 
    .btn-info.disabled:active, .btn-info[disabled]:active, fieldset[disabled] .btn-info:active, 
    .btn-info.disabled.active, .btn-info[disabled].active, fieldset[disabled] .btn-info.active {
      background: #5B7C85;
      border-color: #537179;
    }

    /* Warning */
    .btn-warning {
      background: #CA500F;
      border-color: #B8490E;
    }

    p a.btn-warning:link { border-bottom-color: #B8490E;}

    .btn-warning:focus,
    .btn-warning:hover,
    .btn-warning:active,
    .btn-warning.active {
      background: #A5420C;
      border-color: #933A0B;
    }

    .btn-warning.disabled, 
    .btn-warning[disabled], fieldset[disabled] .btn-warning, 
    .btn-warning.disabled:hover, .btn-warning[disabled]:hover, fieldset[disabled] .btn-warning:hover, 
    .btn-warning.disabled:focus, .btn-warning[disabled]:focus, fieldset[disabled] .btn-warning:focus, 
    .btn-warning.disabled:active, .btn-warning[disabled]:active, fieldset[disabled] .btn-warning:active, 
    .btn-warning.disabled.active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning.active {
      background: #CA500F;
      border-color: #B8490E;
    }

    /* Danger */
    .btn-danger {
      background: #AC2118;
      border-color: #9B1E16;
    }

    p a.btn-danger:link { border-bottom-color: #9B1E16;}

    .btn-danger:focus,
    .btn-danger:hover,
    .btn-danger:active,
    .btn-danger.active {
      background: #8A1A13;
      border-color: #781711;
    }

    .btn-danger.disabled, 
    .btn-danger[disabled], fieldset[disabled] .btn-danger, 
    .btn-danger.disabled:hover, .btn-danger[disabled]:hover, fieldset[disabled] .btn-danger:hover, 
    .btn-danger.disabled:focus, .btn-danger[disabled]:focus, fieldset[disabled] .btn-danger:focus, 
    .btn-danger.disabled:active, .btn-danger[disabled]:active, fieldset[disabled] .btn-danger:active, 
    .btn-danger.disabled.active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger.active {
      background: #AC2118;
      border-color: #9B1E16;
    }

  /*--------------------------------
  Responsive Video Embed
  --------------------------------**/
  .embed-responsive-4by3 {
    padding-bottom: 75% !important;
    }
    .embed-responsive-16by9 {
    padding-bottom: 56.25% !important;
    }
    .embed-responsive {
    position: relative;
    display: block;
    height: 0;
    padding: 0;
    overflow: hidden;
    }
    .embed-responsive .embed-responsive-item, 
    .embed-responsive embed, .embed-responsive iframe, 
    .embed-responsive object, .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    }

  /*---------------------
  Pagination
  ---------------------**/
    .pagination>.disabled>span, 
    .pagination>.disabled>span:hover, 
    .pagination>.disabled>span:focus {
      color: #2C2727;
    }

    .pagination>.active>a, .pagination>.active>span, 
    .pagination>.active>a:hover, .pagination>.active>span:hover, 
    .pagination>.active>a:focus, .pagination>.active>span:focus{
      background-color: #2F70A9;
      border-color: #2F70A9;
    }

    .pagination>li>a:focus, .pagination>li>a:hover {
      border: 1px solid #DDDDDD;
    }

    .pagination>li.prev>a:before {
      content: "‹";
      padding-right: 4px;
    }

    .pagination>li.first>a:before {
      content: "«";
      padding-right: 4px;
    }

    .pagination>li.next>a:after {
      content: "›";
      padding-left: 4px;
    }

    .pagination>li.last>a:after {
      content: "»";
      padding-left: 4px;
    }

  /*---------------------
  Tabs - Secondary
  ---------------------**/

  .tabs--secondary.pagination-sm>li>a,
  .tabs--secondary.pagination-sm>li>a>span {
    font-size: 14px;
  }

  .tabs--secondary.pagination>.active>a, 
  .tabs--secondary.pagination>.active>span, 
  .tabs--secondary.pagination>.active>a:hover, 
  .tabs--secondary.pagination>.active>span:hover, 
  .tabs--secondary.pagination>.active>a:focus, 
  .tabs--secondary.pagination>.active>span:focus {
      background-color: #FFFFFF;
      border-color: #DDDDDD;
      color: #333333;
  }

  p {
    word-wrap: break-word;
  }
  
/*---------------------
Carousel Overrides
---------------------**/

.carousel-indicators {
    all: initial;
    display: table-cell;
    text-align: center;
}

.carousel-indicators li {
    all: initial;
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
}

@media (max-width: 768px) {
    .carousel-indicators li a {
        font-size: 12px;
        padding: 5px 10px;
    }
}

.carousel-inner > .item > img {
    margin-top: 0.5em;
    margin-bottom: 1em;
}

.carousel-table {
    display: table;
    margin: auto;
}

.carousel-table a.glyphicon {
    padding: 6px;
    top: -10px;
    border: 1px solid #ddd;
    border-radius: 50%;
}

.carousel-table a.glyphicon:hover,
.carousel-table a.glyphicon:focus {
    background-color: #eee;
    text-decoration: none;
}

.carousel-table a.glyphicon-chevron-left {
    margin-right: 0.75em;
}

.carousel-table a.glyphicon-chevron-right {
    margin-left: 0.75em;
}

/* Hack for IE 11's lack of support for css all:initial */

_:-ms-fullscreen, :root .carousel-indicators { 
    position: static;
    width: auto;
    margin: 0;
}

_:-ms-fullscreen, :root .carousel-indicators li { 
    width: auto;
    height: auto;
    text-indent: 0;
    display: table-cell;
}

_:-ms-fullscreen, :root .carousel-table a.glyphicon {
    top: -10px;
}

/* Hack for MS Edge's inadequate support of css all:initial ' */

@supports (-ms-ime-align:auto)  {
    .carousel-indicators { 
        position: static;
        width: auto;
        margin: 0;
    }
    .carousel-indicators li { 
        width: auto;
        height: auto;
        text-indent: 0;
        display: table-cell;
    }
    .carousel-table a.glyphicon {
        top: -10px;
    }
}

/* For CKeditor image alignment */

.gap-left {
    padding-left: 1em;
}
.gap-right {
    padding-right: 1em;
}

/* Custom fields overrides */
.field-collection-container .field-items .field-item {
  margin-bottom:0;
}

.field-collection-view {
  padding:0;
}

.field-collection-view .field-label {
  width:auto;
}

/* Fix CTools inplace editor */
.ctools-modal-dialog .modal-body {
  overflow:auto;
}

/* Fix CTools admin description control */
.ctools-modal-dialog .modal-body #edit-admin-description-wrapper {
  height:auto;
}

/* For the plus/minus icons on expandible/collapsible content */

a[data-toggle="collapse"]:before {
    /* symbol for "opening" panels */
    font-family: 'Glyphicons Halflings';  /* essential for enabling glyphicon */
    font-size: 0.7em;
    content: "\2212";    /* adjust as needed, taken from bootstrap.css */
    color: inherit;         /* adjust as needed */
    padding-right: 0.3em;
}
a[data-toggle="collapse"].collapsed:before {
    /* symbol for "collapsed" panels */
    content: "\2b";    /* adjust as needed, taken from bootstrap.css */
}

/* For flexible, responsive boxes of equal height */

.row-flex, .row-flex > div[class*='col-'] {  
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex: 1 1 auto;
}

.row-flex-wrap {
  -webkit-flex-flow: row wrap;
  align-content: flex-start;
  flex:0;
}

.row-flex > div[class*='col-'], .container-flex > div[class*='col-'] {
  margin:-.2px; /* hack adjust for wrapping */
}

.container-flex > div[class*='col-'] div,.row-flex > div[class*='col-'] div {
  width:100%;
}

.flex-col {
  display: flex;
  display: -webkit-flex;
  flex: 1 100%;
  flex-flow: column nowrap;
}
.flex-col-center {
  align-items: center;
}

.flex-grow {
    flex-grow: 1;
}

/* For giving lists on basic pages smaller, tighter text */

ul.list-narrow {
    padding-left: 1.5em !important;
}
ul.list-narrow li {
    font-size: 14px !important;
    line-height: 1 !important;
}
.help-block {
 color: #504F58;
}

/* To fix tab gap on pages with detail-page class */

.detail-page .nav-tabs > li {
    margin-bottom: -1px !important;
}

