@charset "UTF-8";
/*!
 * Customizations to Bootstrap 4 -- for use throughout the site
 * by Jimmy Lo, 2019-ish for the DeKalb County Public Library

 */
/***************** DCPL Colors **********************/
/****************************************************/
/**************************/
/****** GEN. STYLES *******/
body {
  color: #005c83;
  background-image: url("https://dekalblibrary.org/assets-foundation/images/DLF_texture.png");
  background-repeat: repeat;
}

blockquote, body, p {
  font-family: "Verlag A", "Verlag B", Muli, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000000;
  -webkit-font-smoothing: antialiased; /* Chrome, Safari */
  -moz-osx-font-smoothing: grayscale; /* Firefox */
  letter-spacing: 0.015em;
  word-spacing: 0.001em;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Verlag A", "Verlag B", Muli, "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #005c83;
}

h2, h3, h4, h5, h6 {
  clear: both;
}

.flexContent ul, ol {
  overflow: hidden;
}

.container.main-body {
  background-color: #FFF;
}

/************************/
@media (max-width: 767px) {
  .logo-area {
    text-align: center;
  }
}
/************************/
/***** NAV BAR **********/
.nav-container {
  /*  min-width: 1000px; */
}

.navbar-dark .navbar-nav .nav-link {
  color: #FFF;
}

.navbar {
  font-family: "Verlag A", "Verlag B", Muli, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.3rem;
  height: 50px;
  min-height: 50px;
  border-radius: 0px;
  margin-bottom: 0px;
}
.navbar .sub-menu:before {
  border-bottom: 7px solid transparent;
  border-left: none;
  border-right: 7px solid rgba(0, 0, 0, 0.2);
  border-top: 7px solid transparent;
  left: -7px;
  top: 10px;
}
.navbar .sub-menu:after {
  border-top: 6px solid transparent;
  border-left: none;
  border-right: 6px solid #fff;
  border-bottom: 6px solid transparent;
  left: 10px;
  top: 11px;
  left: -6px;
}

li.nav-item {
  margin-left: 0.6em;
  margin-right: 0.6em;
}

@media (min-width: 768px) {
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.1em;
    padding-left: 0.1em;
    padding-top: 0.4em;
  }
}
.sidebar-nav {
  padding: 9px 0;
}

.dropdown-menu .sub-menu {
  left: 100%;
  position: absolute;
  top: 0;
  visibility: hidden;
  margin-top: -1px;
}

.dropdown-menu li:hover .sub-menu {
  visibility: visible;
}

.nav-tabs .dropdown-menu, .nav-pills .dropdown-menu, .navbar .dropdown-menu {
  background-color: #eeeeee;
  color: #005c83;
  margin-top: 0;
}

.navbar .dropdown-menu a:hover {
  color: #ffffff;
  background-color: #00748d;
}

.navbar-container {
  background-color: #005c83;
}

.navbar-dark {
  background-color: #005c83;
  border-color: #005c83;
}
.navbar-dark .navbar-nav > .active > a, .navbar-dark .navbar-nav > .active > a:focus, .navbar-dark .navbar-nav > .active > a:hover {
  background-color: #00748d;
}
.navbar-dark .navbar-nav > li > a {
  height: 49px;
  color: #FFFFFF;
  padding-top: 2px;
}
.navbar-dark .navbar-nav > li > a:hover {
  background-color: #00748d;
}

.navbar-mobile {
  height: auto;
  min-height: 0;
  text-align: center;
}
.navbar-mobile li > a:hover {
  color: white;
  background-color: #00748d;
}
.navbar-mobile li > ul {
  list-style-type: none;
  padding-left: 0;
}
.navbar-mobile li > ul > li {
  display: block;
  background-color: #005C69;
}
.navbar-mobile li > ul > li > a {
  padding: 0.7em 0;
  display: block;
  color: white;
}
.navbar-mobile li > ul > li > a:hover {
  text-decoration: none;
  background-color: #00748d;
}

.inner-page .navbar-mobile {
  background-color: #00748d;
}
.inner-page .navbar-mobile a {
  color: white;
}
.inner-page .navbar-mobile li > a:hover {
  background-color: #005C69;
}
.inner-page .navbar-mobile li > ul a {
  color: black;
}
.inner-page .navbar-mobile li > ul > li {
  color: black;
  background-image: url("https://dekalblibrary.org/assets-foundation/images/DLF_texture.png");
  background-repeat: repeat;
}
.inner-page .navbar-mobile li > ul > li > a:hover {
  color: white;
  background-color: #005C69;
}

/*****************************/
/****** RIBBON ***************/
.ribbon-wrapper {
  position: relative;
  top: 0px;
  left: 0px;
}

#ribbon {
  font-size: 90%;
  text-align: center;
  position: absolute;
  padding: 5px;
  top: 0px;
  height: 130px;
  width: 100px;
  left: 850px;
  color: white;
  background-image: url("https://dekalblibrary.org/assets-foundation/images/DLF_ribbon-bg2b.png");
  background-position: top;
  background-repeat: round no-repeat;
  z-index: 999;
}
#ribbon em {
  font-size: 165%;
  font-style: normal;
  display: block;
}
#ribbon a, #ribbon a:hover {
  color: white;
  text-decoration: none;
}

/***************************/
/***** DONATE BAR **********/
.donate-bar {
  font-size: 170%;
  color: #FFFFFF;
  margin: 0px;
  text-align: center;
  background-color: #ec5923;
  width: 100%;
  padding: 12px 0px;
}
.donate-bar a {
  color: #FFFFFF;
}

/****** LOON *************/
.loon-area img {
  width: 100%;
}

/**************************/
/***** CAROUSEL ***********/
.owl-area {
  background-color: white;
  position: relative;
}

.carousel-wrapper {
  background-color: #FFFFFF;
  background-image: url("https://dekalblibrary.org/assets-foundation/images/DLF_texture.png");
}
.carousel-wrapper img {
  width: 100%;
  max-width: 1300px;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23999' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E") !important;
}

.carousel-control-prev:hover .carousel-control-prev-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E") !important;
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23999' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E") !important;
}

.carousel-control-next:hover .carousel-control-next-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E") !important;
}

#home-images .item {
  font-size: 3.5rem;
}
#home-images .item img {
  display: block;
  width: 100%;
  height: auto;
}
#home-images .item .teaser {
  width: 100%;
  height: 100%;
  color: white;
  position: absolute;
}
#home-images .item .teaser div {
  display: block;
  margin-top: 29%;
  margin-left: 5rem;
  margin-right: 5rem;
  text-shadow: 1px 1px 3px #000;
}
#home-images .item .teaser div.right {
  float: right;
}
#home-images .item .teaser div.left {
  float: left;
}
#home-images .item a {
  color: white;
  text-decoration: underline;
}
#home-images .item a:hover {
  text-decoration: none;
}

/** so that text appearing inside banner won't automatically be underlined **/
a.slide_img_link {
  text-decoration: none !important;
}

@media only screen and (min-width: 1150px) {
  #home-images .item {
    font-size: 3rem;
  }
}
@media only screen and (min-width: 900px) and (max-width: 1149px) {
  #home-images .item {
    font-size: 2.5rem;
  }
}
@media only screen and (min-width: 700px) and (max-width: 899px) {
  #home-images .item {
    font-size: 2rem;
  }
}
/**************************/
/***** MAIN POINTS *******/
.main-points {
  padding: 2rem 0rem;
}
.main-points .row > div {
  text-align: center;
  color: #006080;
  font-weight: bold;
}
.main-points .row > div a {
  color: #006080;
  text-decoration: none;
}
.main-points .row > div a:hover {
  text-decoration: none;
}
.main-points img {
  margin-top: 3rem;
}

/****************************/
/***** INNER CONTENTS *******/
.inner-contents {
  padding: 1rem 6rem;
  background-color: white;
  color: black;
}
.inner-contents h1, .inner-contents h2, .inner-contents h3, .inner-contents h4, .inner-contents h5, .inner-contents h6 {
  color: #005c83;
}
.inner-contents img {
  margin: 10px;
}

/*************************/
/***** BREADCRUMBS *******/
.breadcrumb {
  padding: 0em;
  font-size: 90%;
  background-color: white;
  color: #999999;
}
.breadcrumb > li {
  padding-right: 0.5em;
}
.breadcrumb > li:first-child + li:before {
  content: "> ";
}
.breadcrumb > li:nth-child(n+2) + li:before {
  content: "> ";
}
.breadcrumb a {
  color: #999999;
}

/**************************/
/***** NEWSLETTER BLURB ***/
.newsletter-blurb {
  text-align: center;
}
.newsletter-blurb .hr {
  width: 50%;
  margin: 0rem auto;
  height: 73px;
  background-image: url("https://dekalblibrary.org/assets-foundation/images/DLF_divider.png");
  background-position: center center;
  /*    -moz-box-shadow:    0px 3px 6px 3px black;
      -webkit-box-shadow: 0px 3px 6px 3px black;
      box-shadow:         0px 3px 6px 3px black; */
}
.newsletter-blurb form.form-inline {
  display: inline-block;
}
.newsletter-blurb form label {
  font-family: "Verlag A", "Verlag B", Muli, "Helvetica Neue", Helvetica, Arial, sans-serif;
  margin-right: 2rem;
  font-size: 180%;
  vertical-align: middle;
  margin-bottom: 0px;
}
.newsletter-blurb form input {
  height: 25px;
  width: 150px !important;
  margin-right: 15px;
  padding: 0px 12px;
  font-size: 100%;
  border-radius: 0px;
}
.newsletter-blurb form .btn {
  padding: 0px 12px;
  font-size: 30px;
  border-radius: 0px;
  color: #333;
  background-color: #FFF;
  border: 1px solid #CCC;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

/**************************/
/****** FOOTER ************/
footer {
  margin-top: 0rem;
  padding-top: 3rem;
  color: white;
  background-color: #005c83;
}
footer .connect {
  text-align: center;
}
footer .connect p {
  color: #fff;
}
footer .connect a {
  color: #dddddd;
  margin-right: 2rem;
}
footer .connect a:hover {
  color: #ffffff;
}
footer .legal {
  font-size: 85%;
}
footer nav.navbar-dark {
  border: 0;
  margin-top: 3rem;
  background-color: #01758e;
}
footer nav.navbar-dark .container {
  text-align: center;
  width: 100%;
}
footer nav.navbar-dark .container .navbar-nav {
  float: none;
  margin: auto;
}
footer nav.navbar-inverse {
  border: 0;
  margin-top: 3rem;
  background-color: #01758e;
}
footer nav.navbar-inverse .container {
  text-align: center;
  width: 100%;
}
footer nav.navbar-inverse .container .navbar-nav {
  display: inline-block;
  float: none;
}
footer nav.navbar-inverse .container .navbar-nav > li > a {
  padding-top: 3px;
  /* line-height fixed the gap before bootstrap, but now not :( why? */
}
footer nav.navbar-inverse .container .navbar-nav > li > a:hover {
  background-color: #005c83;
}

@media (min-width: 768px) {
  .dropdown:hover .dropdown-menu {
    display: block;
  }
}
@media (max-width: 767px) {
  .navbar-inverse a.navbar-brand {
    color: #ffffff;
  }
  .navbar {
    height: auto;
  }
  .navbar ul.dropdown-menu li {
    background-color: #DDDDDD;
  }
  .navbar-inverse .navbar-nav > li > a {
    height: auto;
    padding-top: 7px;
    border-bottom: 1px solid #333333;
  }
  footer {
    padding-bottom: 3rem;
  }
  footer .about {
    text-align: center;
  }
  footer .connect {
    padding-top: 2rem;
    text-align: center;
  }
  footer .connect p {
    font-size: 2rem;
  }
  footer .legal {
    padding-top: 2rem;
    margin-left: 2rem;
    margin-right: 2rem;
  }
}
/******* CAROUSEL *****************/
.carousel-caption {
  border-radius: 1em;
  margin: 0 5em;
  bottom: auto;
  top: 160px;
}

@media only screen and (min-width: 770px) and (max-width: 1100px) {
  .carousel-caption {
    top: 80px;
    margin: 0 1em;
  }
}
@media only screen and (max-width: 770px) {
  .carousel-caption {
    top: 10px;
    margin: 0;
  }
}
.carousel-caption.whiteBox {
  background-color: #fff;
  color: #000;
  -webkit-box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
}

.carousel-caption.greenBox {
  background-color: #008264;
  color: #fff;
  -webkit-box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 7px 6px 7px 0px rgba(0, 0, 0, 0.75);
}
.carousel-caption.greenBox a.btn-calltoaction {
  background-color: #fff;
  color: #000;
}
.carousel-caption.greenBox a.btn-calltoaction:hover {
  border: 1px solid #000000;
  background-color: #DDDDDD;
}

.carousel-caption.noBox {
  padding-top: 90px;
  color: #000;
}

.carousel-caption.orangeButton a.btn-calltoaction {
  background-color: #F9423A;
}
.carousel-caption.orangeButton a.btn-calltoaction:hover {
  color: #FFFFFF;
  background-color: rgb(247.4926108374, 18.5172413793, 8.5073891626);
}

.carousel-caption.brightGreenButton a.btn-calltoaction {
  background-color: #5ABA47;
}
.carousel-caption.brightGreenButton a.btn-calltoaction:hover {
  background-color: rgb(71.652173913, 149.8181818182, 56.1818181818);
}

a.btn-calltoaction {
  background-color: #008264;
  padding: 0.5em 2em;
  color: #ffffff;
  text-decoration: none;
}
a.btn-calltoaction:hover {
  background-color: #5ABA47;
}

.carousel-inner {
  max-height: 500px;
}

.carousel-caption.catalog {
  padding-top: 0px;
  color: #000;
  top: 50px;
}
.carousel-caption.catalog h2 {
  font-size: 3em;
  margin-bottom: 1.5em;
}
.carousel-caption.catalog input {
  margin-bottom: 2.5em;
}
.carousel-caption.catalog .btn-calltoaction {
  color: #fff;
  background-color: #5ABA47;
  border: 2px solid #FFFFFF;
  border-radius: 0.4em;
}
.carousel-caption.catalog .btn-calltoaction:hover {
  background-color: rgb(71.652173913, 149.8181818182, 56.1818181818);
  border: 2px solid #008264;
  color: #FFFFFF;
}
.carousel-caption.catalog .catalog-buttons {
  margin-top: 30px;
}
.carousel-caption.catalog .catalog-buttons a {
  padding-left: 20px;
  padding-right: 20px;
}

/******** formatting quotes in body flexContent *************/
.align-right {
  float: right;
}

.align-left {
  float: left;
}

.align-center {
  margin: 2em auto;
  width: 500px;
}
.align-center .quote {
  max-width: 500px;
}

.quote {
  background: url("/assets/images/green_quote.png") top left no-repeat;
  display: inline-block;
  max-width: 380px;
  padding-left: 60px;
  padding-right: 20px;
}
.quote p {
  font-size: 2em;
  margin-bottom: 0px;
}
.quote .author {
  font-size: 1.5em;
  text-align: right;
}

td {
  vertical-align: top;
}

/********** customizing index page styles ******************/
.index p {
  font-size: 18px;
}

.index h2 {
  margin-top: 1em;
  text-align: center;
  margin-bottom: 0.8em;
}

.index p.large-text {
  font-size: 22px;
}

/************ SKIP TO CONTENT BUTTONS ********/
.skip-link {
  background: #fff; /* High contrast with text */
  color: #000000;
  font-size: 1.1em; /* Comfortably tappable size */
  padding: 6px 10px; /* Finger-friendly hit area */
  z-index: 999999991; /* Above other elements */
  text-decoration: none; /* No underline */
  text-align: center; /* Clear relationship */
  position: absolute;
  left: -999px;
}

.skip-link:focus {
  position: absolute;
  left: 25px;
}

/*# sourceMappingURL=sitewide.css.map */
