@charset "utf-8";

/******************************************************************************
												 ** BOOTSTRAP WEBKIT FLEXBOX FIXINGS **
******************************************************************************/

.d-flex, .row{ display: -webkit-flex!important; display: -ms-flexbox!important; display: flex!important; }
.flex-grow-1{ -webkit-flex-grow: 1!important; -ms-flex-positive: 1!important; flex-grow: 1!important; }
.flex-wrap, .row{ -webkit-flex-wrap: wrap!important; -ms-flex-wrap: wrap!important; flex-wrap: wrap!important; }
.align-content-center{ -webkit-align-content: center!important; -ms-flex-line-pack: center!important; align-content: center!important; }
.align-items-center{ -webkit-align-items: center!important; -ms-flex-align: center!important; align-items: center!important; }
.justify-content-center{ -webkit-justify-content: center!important; -ms-flex-pack: center!important; justify-content: center!important; }
.justify-content-between{ -webkit-justify-content: justify!important; -ms-flex-pack: justify!important; justify-content: space-between!important; }
.align-self-center{ -webkit-align-self: center!important; -ms-flex-item-align: center!important; align-self: center!important; }
.align-self-end{ -webkit-align-self: end!important; -ms-flex-item-align: end!important; align-self: flex-end!important; }
.flex-column{ -webkit-flex-direction: column!important; -ms-flex-direction: column!important; flex-direction: column!important; }
.flex-fill{ -webkit-flex: 1 1 auto!important; -ms-flex: 1 1 auto!important; flex: 1 1 auto!important; }

@media (min-width: 992px){
	.align-self-lg-center{ -webkit-align-self: center!important; -ms-flex-item-align: center!important; align-self: center!important; }
	.align-content-lg-center{ -webkit-align-content: center!important; -ms-flex-line-pack: center!important; align-content: center!important; }
	.d-lg-flex{ display: -webkit-flex!important; display: -ms-flexbox!important; display: flex!important; }
	.flex-lg-wrap{ -webkit-flex-wrap: wrap!important; -ms-flex-wrap: wrap!important; flex-wrap: wrap!important; }
}
@media (min-width: 768px){
	.d-md-flex{ display: -webkit-flex!important; display: -ms-flexbox!important; display: flex!important; }
}
@media (min-width: 576px){
	.d-sm-flex{ display: -webkit-flex!important; display: -ms-flexbox!important; display: flex!important; }
}

/******************************************************************************
												 ** BASE STYLES **
******************************************************************************/
html{
	font-size: 14px;
	line-height: 1;
}
body{
  font-family: 'Open Sans', sans-serif;
	font-size: 1rem;
	line-height: 1.4;
	font-weight: 400;
  -webkit-font-smoothing: unset !important;
	position: relative;
  color: #000;
}
a, a:visited{
  color: #000;
	text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
a:hover, a:active, a:focus, a:visited:hover{
	text-decoration: underline;
	outline: none;
}
p:last-child, h1, h2, h3, h4{
  margin-bottom: 0;
}
h2{
  padding: 0 0 20px 20px;
  font-size: 1.8rem;
}
.home-template h2{
  padding: 0 0 26px 0;
  font-size: 2rem;
  font-weight: 600;
}
h3.lang-title,h3.tag-title{
  margin: 10px 0 20px 20px;
  font-size: 1.4rem;
  font-weight: 700;
}
h4{
  font-size: 1.45rem;
  font-weight: 700;
  margin-bottom: 1.0rem;
}

/******************************************************************************
												 ** LAYOUT ELEMENTS **
******************************************************************************/

/** Header
***************************************/
#website-title{
  background: #000010;
  padding: 20px;
}
#website-title h1{
	font-size: 2.8rem;
	line-height: 1.6;
  font-weight: 400;
  color: #fff;
  margin: 0;
}
#website-title h1 strong{
  font-weight: 800;
}
#nav-holder{
  background: #00adef;
  padding: 30px 20px 15px 20px;
}
#nav-main ul{
  margin: 0;
  padding: 0;
  list-style-type: none;
}
#nav-main li{
  display: inline-block;
  margin: 0 20px 15px 0;
}
#nav-main a{
  display: block;
  padding: 10px 30px;
  background: #fff;
  color: #000;
  border-radius: 0;
  font-weight: 600;
  text-decoration: none !important;
}
#nav-main > ul > li.current-category-ancestor > a, #nav-main > ul > li.current-menu-item > a{
  background: #2f687c;
  color: #fff !important;
}
#nav-main > ul > li a:hover{
  background: #2f687c !important;
  color: #fff !important;
}
#nav-main > ul ul{
  min-width: 0;
  border-radius: 0;
  border: 0;
  -webkit-box-shadow: 5px 5px 8px -2px rgba(0,0,0,0.75);
  -moz-box-shadow: 5px 5px 8px -2px rgba(0,0,0,0.75);
  box-shadow: 5px 5px 8px -2px rgba(0,0,0,0.75);
}
#nav-main .dropdown-menu li{
  width: 100%;
  margin: 0;
}
#nav-main ul ul.dropdown-menu li a{
  background: #ccc;
  color: #000;
}
#nav-main ul ul.dropdown-menu > li.current-menu-item > a{
  background: #619da7;
  color: #fff !important;
}
#nav-main ul ul.dropdown-menu li a:hover{
  background: #619da7;
  color: #fff;
}

/** Home
***************************************/
.home-template{
  padding: 40px 0;
}

/** Archives
***************************************/
.archive-template{
  padding: 40px 40px 0px 20px;
}
#archive-container ul{
  margin: 0;
  padding: 0;
  list-style-type: none;
}
#archive-container li{
  padding: 0 0 20px 20px;
}
#archive-container .item{
  width: 150px;
  padding: 10px;
  border: 1px solid #ccc;
}
#archive-container .item-thumbnail{
  position: relative;
  width: 100%;
  height: 128px;
}
#archive-container .item-thumbnail-image{
  position: absolute;
  top: 10px;
  left: 10px;
  width: 108px;
  height: 108px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
}
#archive-container .item-thumbnail-image:hover{
  cursor: zoom-in;
}
#archive-container .item-thumbnail:after{
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #F0AB00;
  z-index: 1;
}
#archive-container .item-thumbnail.bg_yellow:after, .modal-body.bg_yellow{ background-color: #F0AB00; }
#archive-container .item-thumbnail.bg_green:after, .modal-body.bg_green{ background-color: #3ab54a; }
#archive-container .item-thumbnail.bg_blue:after, .modal-body.bg_blue{ background-color: #00adef; }
#archive-container .item-thumbnail.bg_lilac:after, .modal-body.bg_lilac{ background-color: #8781bd; }
#archive-container .item-thumbnail.bg_red:after, .modal-body.bg_red{ background-color: #ec1b30; }
#archive-container .item-thumbnail.bg_pink:after, .modal-body.bg_pink{ background-color: #f06793; }
#archive-container .item-thumbnail.bg_white:after, .modal-body.bg_white{ background-color: #fff; }
#archive-container .item-thumbnail.bg_black:after, .modal-body.bg_black{ background-color: #000; }
#archive-container .item-thumbnail.bg_grey:after, .modal-body.bg_grey{ background-color: #eee; }
#archive-container .item-thumbnail.bg_chessboard:after, .modal-body.bg_chessboard{ 
  background-color: #fff;
  background-position: 0 0,5px 5px;
  background-size: 10px 10px;
  background-image: linear-gradient(45deg,#c4c4c4 25%,transparent 25%,transparent 75%,#c4c4c4 75%,#c4c4c4),linear-gradient(45deg,#c4c4c4 25%,transparent 25%,transparent 75%,#c4c4c4 75%,#c4c4c4);
}
#archive-container .item-heading{
  padding-top: 10px;
  height: auto !important;
}
#archive-container .item-title{
  font-weight: 700;
  word-break: break-word;
}
#archive-container .item-tags{
  font-size: 0.85rem;
}
#archive-container .item-links{
  padding-top: 8px;
}
#archive-container .item-links a{
  display: inline-block;
  padding: 2px 0;
  font-size: 0.9rem;
  text-decoration: underline;
}
#archive-container .item-links a:hover{
  color: #000;
  text-decoration: none;
}
.modal-body{
  padding: 40px;
  background: #ffee00;
}
.modal-body .item-thumbnail-image{
  width: 256px;
  height: 256px;
  margin: 0 auto;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
