/* corresponds with navbar padding-left: 1rem */
/*
 * Google Fonts uses Lato 1. For version 2 switch to Adobe Typekit
 *  https://fonts.adobe.com/fonts/lato
 * or download a local copy from
 *  http://www.latofonts.com/lato-free-fonts/
 *
 * If you want to tweak the @font-face settings, you might use something like
 *  @import 'font/Lato';
 * instead.
 *
 */
@import url('https://fonts.googleapis.com/css?family=Lato:400,400i,700,700i&display=swap&subset=latin-ext');
@font-face {
  font-family: 'ghi_icons_16';
  src: url('../fonts/ghi_icons_16.eot?7vfwjk');
  src: url('../fonts/ghi_icons_16.eot?7vfwjk#iefix') format('embedded-opentype'), url('../fonts/ghi_icons_16.ttf?7vfwjk') format('truetype'), url('../fonts/ghi_icons_16.woff?7vfwjk') format('woff'), url('../fonts/ghi_icons_16.svg?7vfwjk#ghi_icons_16') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block; }

.icn {
  font-family: 'ghi_icons_16';
  font-size: 16px;
  font-style: normal; }
  .icn.icn-document::after {
    content: "\E901"; }
  .icn.icn-image::after {
    content: "\E902"; }

/* sticky footer, see https://gist.github.com/seyDoggy/e919a429b2459aedf509 */
html, body {
  height: 100%;
  width: 100%; }

html {
  font-size: 14px;
  /* use bootstrap 3 sizes: 14px instead of 16px */
  color: #212529; }

body {
  display: table; }

main {
  height: auto;
  margin-bottom: 4rem; }

footer {
  display: table-row;
  height: 1px; }

/* general styles */
body {
  font-family: 'Lato', Arial, "Arial Unicode MS", sans-serif; }
  body .combining-e {
    font-family: Arial, "Arial Unicode MS", sans-serif;
    font-size: 95%; }
  body a, body a:hover {
    color: #0F256E; }

/* see https://github.com/mnater/Hyphenopoly */
.hyphens-auto {
  hyphens: auto;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto; }

ul#menu-volumes li {
  font-weight: bold;
  text-transform: uppercase; }
  ul#menu-volumes li a {
    color: #0F256E; }
    ul#menu-volumes li a:hover {
      text-decoration: none; }
  ul#menu-volumes li.volume-1 a:hover {
    color: #5D349E; }
  ul#menu-volumes li.volume-2 a:hover {
    color: #00935d; }
  ul#menu-volumes li.volume-3 a:hover {
    color: #f0600e; }

ul#navbar-about-locale li {
  /* text-transform: uppercase; */
  text-align: right; }
  ul#navbar-about-locale li a {
    color: #616161; }
    ul#navbar-about-locale li a:hover {
      color: #0F256E; }
  ul#navbar-about-locale li.current a, ul#navbar-about-locale li.current a:hover {
    color: #0F256E; }

footer {
  background-color: #F4F4F4; }
  footer .row {
    padding-top: 2rem;
    padding-bottom: 2rem; }
  footer a {
    color: #616161; }
    footer a:hover {
      color: #0F256E; }

.color-inverse {
  color: white;
  background-color: #0F256E; }

/* == $grid-breakpoints
 * see https://github.com/twbs/bootstrap/blob/master/scss/_variables.scss
 */
#logo {
  width: 200px;
  height: auto; }
@media (min-width: 576px) {
  #logo {
    margin-left: -14px;
    /* remove left navbar padding so it is aligned with container */ } }

#logo-ghi {
  margin-top: 0.4rem;
  margin-left: 39px; }

/* adjust $container-max-widths
 @media only screen and (min-width: $screen-md-min) and (max-width: $screen-md-max) {
 .container {
 max-width: 720px + $logo-offset; // 720px is too wide for shifted -78px
 }
 }
 @media only screen and (min-width: $screen-lg-min) and (max-width: $screen-lg-max) {
 .container {
 max-width: 960px + $logo-offset; // 960px is too wide for shifted -78px
 }
 }
 @media only screen and (min-width: $screen-xl-min) {
 .container {
 max-width: 1140px + $logo-offset; // 1140px is too wide for shifted -78px
 }
 }
 */
@media print {
  /* http://drupal.stackexchange.com/a/59908*/
    a[href]:after {
      content: none; } }

/* general styles */
main h1 {
  margin-bottom: 1rem;
  font-size: 2.375rem;
  font-weight: bold;
  line-height: 1.2;
  color: #0F256E;
  letter-spacing: 0.01em; }
main h2 {
  text-transform: uppercase;
  font-size: 1.75rem;
  font-weight: bold;
  color: #0F256E; }

/* override bootstrap style */
.breadcrumb {
  background-color: inherit;
  padding: 0; }
  .breadcrumb.p-2 {
    padding-left: 0 !important; }
  .breadcrumb li {
    text-transform: uppercase;
    color: #616161;
    font-size: 1rem; }
    .breadcrumb li:not(:last-child):after {
      margin-left: 0.3rem;
      content: '/';
      margin-right: 0.3rem; }

a.print-view {
  white-space: nowrap;
  text-transform: uppercase;
  color: #616161 !important;
  font-size: 1rem; }
  a.print-view::after {
    background: url("../img/pdf.png") no-repeat;
    background-size: contain;
    background-position: center top;
    content: "";
    display: inline-block;
    width: 15px;
    height: 16px;
    margin-left: 4px; }

/* route-specific styles */
body.route-home main > .row > .container {
  padding-left: 54px;
  /* increase left padding in order to align below text */ }
body.route-home .row.section {
  padding-top: 3rem;
  padding-bottom: 2rem; }
  body.route-home .row.section .btn.btn-primary {
    background-color: inherit;
    border-radius: 0;
    border: 1px solid white;
    text-transform: uppercase;
    min-width: 20rem; }
body.route-home .row > .volume-teaser {
  position: relative;
  height: 215px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  body.route-home .row > .volume-teaser .overlay {
    position: absolute;
    padding: 16px;
    height: 40%;
    width: 100%;
    bottom: 0;
    background-color: gray;
    background: rgba(0, 0, 0, 0.3); }
    body.route-home .row > .volume-teaser .overlay h4 {
      font-weight: bold; }
      body.route-home .row > .volume-teaser .overlay h4 a {
        color: white;
        opacity: 1; }
        body.route-home .row > .volume-teaser .overlay h4 a .octicon {
          fill: white; }
body.route-home .row.volumes {
  padding-top: 1rem; }
  body.route-home .row.volumes h5 {
    font-weight: bold;
    font-size: 1rem;
    display: inline; }
    body.route-home .row.volumes h5::after {
      content: " \2014 "; }
    body.route-home .row.volumes h5 a {
      color: #0F256E; }
body.route-home .row.focus .col-sm-9 blockquote {
  position: relative;
  background-color: #F4F4F4;
  margin-top: 3.6rem;
  margin-left: -4rem;
  padding-left: 6.5rem;
  padding-top: 2rem;
  padding-right: 1rem; }
  body.route-home .row.focus .col-sm-9 blockquote::before {
    content: "\201C";
    color: #0F256E;
    font-size: 6rem;
    position: absolute;
    left: 4rem;
    top: -1rem; }
body.route-home h3 {
  border-top: 1px solid;
  padding-top: 1rem;
  margin-bottom: 1.4rem; }
body.route-home .row.color-inverse h3 {
  color: white; }
