@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.0.3');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),
  url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'),
  url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),
  url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* -----------------------------------
 TIMELINE FLAT PORTFOLIO
 ---------------------------------- */

.timelineFlat.timelineFlatPortfolio .item .read_more {
  margin-top:20px;
}

.timelineFlat.timelineFlatPortfolio .item,
.timelineFlat.timelineFlatPortfolio .item_open {
  height: 427px;
}

/* -----------------------------------
 TIMELINE FLAT BLOG
 ---------------------------------- */
.timelineFlat.timelineFlatBlog .item,
.timelineFlat.timelineFlatBlog .item_open {
  height: 338px;
}
.tl2.timelineFlat.timelineFlatBlog .item,
.tl2.timelineFlat.timelineFlatBlog .item_open{
  height: 338px;
  background-color: #f1e9cf;
}
.tl2.timelineFlat.timelineFlatBlog .item{
  width: 300px;
  padding-top: 50px
}
.tl2.timelineFlat.timelineFlatBlog .item img{
  width: 80%;
  margin-bottom: 10px;
}
.tl2.timelineFlat.timelineFlatBlog .item span{
  font-size: 21px;
  height: auto;
}
.tl2.timelineFlat.timelineFlatBlog .item h2{
  margin-bottom: 10px;
  line-height: 38px;
}
.tl2.timelineFlat.timelineFlatBlog .t_controles{
  display: block;
}
.timelineFlat.timelineFlatBlog .item .post_date {
  font-family: Montserrat;
  background: #dd5555;
  color: #ffffff;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  padding: 15px;
  text-align: center;
  font-size: 24px;
  line-height: 24px;
  margin: -34px 18px 0 0;
  float: right;
  position: relative;
  z-index: 2;
}

.timelineFlat.timelineFlatBlog .item .post_date span {
  display: block;
  width: auto;
  height: auto;
  font-size: 12px;
  line-height: 12px;
  margin: 0;
}

/* -----------------------------------
 TIMELINE FLAT BASE DESIGN
 ---------------------------------- */

.timelineFlat {
  display:none;
}
.timelineLoader {
  width:100%;
  text-align:center;
  padding:150px 0;
}

/* fixed line holder */
.timelineFlat .timeline_line {
  margin-top:10px;
  margin-bottom:45px;
  width:900px;
}

/* full (including months that are not shown) line holder */
.timelineFlat .t_line_holder {
  padding: 10px 0 0 0;
  height:80px;
  background:url('../../src/img/line.jpg') repeat-x 0 49px;
}

/* 2 months are stored in one view */
.timelineFlat .t_line_view {
  height:20px;
  width:900px;
}

/* holder for 1 month (constist of nodes and month caption) - we use borders to separate months thats why it has width 2px less then 50% */
.timelineFlat .t_line_m {
  margin-top:37px;
  height:10px;
  border-left:1px solid transparent;
  border-right:1px solid #b7b6b6;
  width:448px;
}

/* month on the right side - has left set at 459 so border would overlap border from first element (to evade duplicated borders) */
.timelineFlat .t_line_m.right {
  left:449px;
  width:449px;
  border-left:1px solid #b7b6b6;
  border-right:1px solid transparent;
}

/* month caption */
.timelineFlat h4.t_line_month {
  font-size: 12px;
  margin:-30px 0 0;
  color:#b7b6b6;
}

/* node on the timeline */
.timelineFlat a.t_line_node {
  text-decoration:none;
  padding:38px 0 4px;
  height:10px;
  font-size:12px;
  top:-25px;
  position: relative;
  color:#b7b6b6;
}
.timelineFlat a.t_line_node:after {
  content: "";
  border-radius: 22px;
  height: 10px;
  width: 10px;
  border: 2px solid #ffffff;
  position: absolute;
  top: 23px;
  left: 50%;
  margin: 0 0 0 -7px;
  background:#dd5555;
}
.timelineFlat a.t_line_node.active {
  color:#dd5555;
}

.timelineFlat a.t_line_node.active:after {
  border: 2px solid #b7b6b6;
}

/* node description */
.timelineFlat .t_node_desc {
  white-space: normal !important;
  top:-50px;
  opacity: 0;
  filter: alpha(opacity=0);
  left: 50%;
  color:#fff;
  display: inline-block !important;
  position: relative;
  transition:top 200ms, opacity 500ms;
  -webkit-transition:top 200ms, opacity 500ms;
  -moz-transition:top 200ms, opacity 500ms;
}

.timelineFlat a.t_line_node:hover .t_node_desc {
  top:0;
  opacity: 1;
  filter: alpha(opacity=100);
}

.timelineFlat .t_node_desc span {
  white-space: nowrap;
  margin-left: -50%;
  margin-right: 50%;
  margin-top: -16px;
  display: block !important;
  padding:8px;
  border-radius: 3px;
  background: #dd5555;
  position: relative;
}
.timelineFlat .t_node_desc span:after {
  content: "";
  width: 0;
  height: 0;
  display: block;
  position: absolute;
  bottom: -10px;
  border:5px solid transparent;
  border-top:5px solid #dd5555;
  left:50%;
  margin-left: -5px;
}

.timelineFlat #t_line_left,
.timelineFlat #t_line_right {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  cursor:pointer;
  top:39px;
  width:14px;
  height:21px;
  font-size: 21px;
  color: #b7b6b6;
  position: relative;
}

.timelineFlat #t_line_left:hover,
.timelineFlat #t_line_right:hover {
  color: #dd5555;
}

/* line arrow left */
.timelineFlat #t_line_left {
  left:-30px;
}
.timelineFlat #t_line_left:after {
  content: "\f104";
  position: absolute;
  right: 0;
  top:0;
}

/* line arrow right */
.timelineFlat #t_line_right {
  right:-30px;
}
.timelineFlat #t_line_right:after {
  content: "\f105";
  position: absolute;
  left: 0;
  top:0;
}

.timelineFlat {
  display:none;
}

.timeline_items_wrapper {
  position: relative;
  width: 100%;
  margin: 10px auto 50px;
}
/* items container */
.timelineFlat .timeline_items {
  padding:0;
}

/* single item (margines set from javascript) */
.timelineFlat .item {
  width:240px;
  height:240px;
  background:#eaeaea;
  color:#000;
  font-size:12px;
  line-height:14px;
  position: relative;
  text-align: center;
}
.timelineFlat .item.item_node_hover:before {
  content: "";
  position: absolute;
  height: 4px;
  background: #dd5555;
  width: 100%;
  z-index: 2;
  top:0;
  left:0;
}
.timelineFlat .item.item_node_hover:after {
  content: "";
  position: absolute;
  height: 0;
  width: 0;
  z-index: 2;
  top:0;
  left:50%;
  margin: 4px 0 0 -6px;
  border: 6px solid transparent;
  border-top: 6px solid #dd5555;

}
.t_controles{
  position: absolute;
  top: 50%;
  left: -35px;
  right: -35px;
  z-index: 1;
}
/* ----- content - non-plugin elements ----- */
.timelineFlat .item img {
  margin-top:0;
  width:100%;
}

.timelineFlat .item h2 {
  padding: 10px 20px 10px;
  margin: 0;
  font-family: Bobby J Rough Regular;
  font-size:16px;
  line-height:29px;
  color: #000;

}
.timelineFlat .item span{
  display:block;
  height:75px;
  margin:0 20px 10px;
}
/*.timelineFlat .item .read_more {
	padding:10px;
	font-size:12px;
	line-height:12px;
	float:left;
	color:#fff;
	cursor:pointer;
	margin: 0 20px 20px;
	border-radius: 3px;
	background:#d55;
	transition:background-color 300ms;
	-webkit-transition: background-color 300ms;
	-moz-transition: background-color 300ms;
}
.timelineFlat .item .read_more:hover {
	background:#f75f5f;
}*/
/* ----------------------------------------- */

/* item details (margines set from javascript) */
.timelineFlat .item_open {
  width:410px;
  height:410px;
  background:#fff;
  position:relative;
  color:#333;
  z-index:2;
  margin-left: -5px!important;
  font-size: 14px;
  line-height: 21px;
}

.timelineFlat .item_open h2 {
  margin:0;
  padding-top:0;
  font-family: Arial, serif;
  font-size:14px;
  font-weight: 600;
  color: #333;
}

.timelineFlat .item_open a {
  color: #fc1c1b;
}

/* item details content wrapper (used for animation - shuld have same width as .item_open) */
.timelineFlat .item_open_cwrapper {
  width:410px;
  height:100%;
}

.timelineFlat .item_open_content {
  width:100%;
  height:100%;
  position:relative;
}

.timelineFlat .item_open_content .ajaxloader {
  position:absolute;
  top:50%;
  left:50%;
  margin:-10px 0 0 -100px;

}

.tl2 .timeline_line{
  display: none;
}
/* ----- content - non-plugin elements ----- */
.timelineFlat .timeline_open_content {
  padding:20px;
}
.timelineFlat .mCSB_container {
  margin-right: 16px;
}
.timelineFlat .mCS-light-thin > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar  {
  background: #dd5555;
}
.timelineFlat .mCS-light-thin > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  color:#f75f5f;
}
.timelineFlat .mCS-light-thin > .mCSB_scrollTools .mCSB_draggerRail {
  background: #aaaaaa;
}
.timelineFlat .mCustomScrollBox > .mCSB_scrollTools {
  width: 8px;
}
.timelineFlat .item_open .t_close {
  position:absolute;
  top:20px;
  right:16px;
  padding:0 2px 2px 2px;
  width: 12px;
  height: 12px;
  font-size:16px;
  line-height: 12px;
  color: #000;
  cursor:pointer;
  z-index:2;
  text-align: center;
  transition:color 300ms;
  -webkit-transition: color 300ms;
  -moz-transition: color 300ms;
}
.timelineFlat .item_open .t_close:hover {
  color:#dd5555;
}
/* ----------------------------------------- */

/* left/right controles */
.timelineFlat .t_controles {
  margin:0;
}

.t_controles .t_left,
.t_controles .t_right{
  position: absolute;
  width: 30px;
  height: 55px;
  margin-top: -15px;
  background: none;
  cursor: pointer;
}

.t_controles .t_left{
  left: 48px;

}
.t_controles .t_right{
  right: 48px;
}
.t_controles .t_left:before,
.t_controles .t_right:before,
.t_controles .t_left:after,
.t_controles .t_right:after{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../../src/img/img-arrows.png") no-repeat 0 0;
  opacity: 1;
  transition: opacity .5s ease;
  -webkit-transition: opacity .5s ease;
}
.t_controles .t_left:hover:before,
.t_controles .t_left:after,
.t_controles .t_right:hover:before,
.t_controles .t_right:after{
  opacity: 0;
}
.t_controles .t_left:before{
  background-position: 0 0;
}
.t_controles .t_left:after{
  background-position: 0 -133px;
}
.t_controles .t_left:hover:after{
  opacity: 1;
}
.t_controles .t_right:before{
  background-position: -70px 0;
}
.t_controles .t_right:after{
  background-position: -70px -133px;
}
.t_controles .t_right:hover:after{
  opacity: 1;
}

/* -----------------------------------------------------------------------*/
/* ------------------------------ RESPONSIVE -----------------------------*/
/* -----------------------------------------------------------------------*/


/* --- 768px --- */
@media screen and (max-width:980px) {
  .timelineFlat .timeline_line {
    width:680px;
  }

  .timelineFlat .t_line_view {
    width:680px;
  }

  .timelineFlat .t_line_m {
    width: 338px;
  }
  .timelineFlat .t_line_m.right {
    left: 339px;
    width: 339px;
  }
}

/* --- 610px --- */
@media screen and (max-width:767px) {

  .timelineFlat .timeline_line {
    width:530px;
  }

  .timelineFlat .t_line_view {
    width:1060px;
  }

  .timelineFlat .t_line_m {
    width: 528px;
  }
  .timelineFlat .t_line_m.right {
    left: 530px;
    width: 528px;
  }

  .timelineFlat .t_line_node span {

  }
  .timelineFlat .t_node_desc {
    font-size:8px;
  }
  .timelineFlat .t_line_m.right .t_node_desc {
    right:auto;
    left:0;
  }
}

/* --- 300px --- */
@media screen and (max-width:609px) {
  .timelineFlat .timeline_line {
    width:240px;
  }

  .timelineFlat .t_line_view {
    width:480px;
  }

  .timelineFlat .t_line_m {
    width: 238px;
  }
  .timelineFlat .t_line_m.right {
    left: 240px;
    width: 238px;
  }

  .timelineFlat .item_open {
    width:280px;
    height:390px;
  }
  .timelineFlat .item_open img {
    max-width:280px;
  }
  .timelineFlat .item_open_cwrapper {
    width:280px;
  }
}
