/*==================================
    TIMELINE
==================================*/
/*-- GENERAL STYLES
------------------------------*/
.timeline {
  line-height: 1.4em;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.timeline h1, .timeline h2, .timeline h3, .timeline h4, .timeline h5, .timeline h6 {
  line-height: inherit;
}

/* Small Mobile  N.B. iPhone 320x568px */
  @media screen and (max-width: 360px) {
    .timeline h2 {
      padding: 15px 0 15px 0;
      font-size: 1.2em;
    }
  }

/*----- TIMELINE ITEM -----*/
.timeline-item {
  padding-left: 40px;
  position: relative;
}
.timeline-item:last-child {
  padding-bottom: 0;
}
.timeline-item h2 {
  padding-bottom: 40px;
  position: relative;
}


/*----- TIMELINE INFO -----*/
.timeline-info {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 1px;
  margin: 0 0 .5em 0;
  text-transform: uppercase;
  white-space: nowrap;
  color: #e36126;
}

/*----- TIMELINE MARKER -----*/
.timeline-marker {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15px;
}
.timeline-marker:before {
  background: #e36126;
  border: 3px solid transparent;
  border-radius: 100%;
  content: "";
  display: block;
  height: 15px;
  position: absolute;
  top: 4px;
  left: 0;
  width: 15px;
  transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
}
.timeline-marker:after {
  content: "";
  width: 3px;
  background: #999;
  display: block;
  position: absolute;
  top: 24px;
  bottom: 0;
  left: 6px;
}
.timeline-item:last-child .timeline-marker:after {
  content: none;
}

.timeline-item:not(.period):hover .timeline-marker:before {
  background: transparent;
  border: 3px solid #e36126;
}

/*----- TIMELINE CONTENT -----*/
.timeline-content {
  padding-bottom: 40px;
}
.timeline-content p:last-child {
  margin-bottom: 0;
}

/*----- TIMELINE PERIOD ICONS ETC -----*/

.period {
  padding: 0;
}
.timeline-period h2 {
}

/*.timeline-period a:hover i:hover { 
  visibility: visible;
}*/

/*.timeline-period a i { /* in all other case hide it */
/*  visibility: hidden;
}*/


.timeline-period h2 {
  padding: 15px 0 15px 0;
  font-size: 2em;
  font-weight: 700;
  margin: 0 0 0.5em 0;
  white-space: nowrap;
  color: #666666;
}
.timeline-period h2 b {
  font-weight: 800;
  left: -18px; 
  position:relative;
}





.period .timeline-info {
  display: none;
}
.period .timeline-marker:before {
  background: transparent;
  content: "";
  width: 15px;
  height: auto;
  border: none;
  border-radius: 0;
  top: 0;
  bottom: 30px;
  position: absolute;
  border-top: 3px solid #CCD5DB;
  border-bottom: 3px solid #CCD5DB;
}
.period .timeline-marker:after {  
  content: "";
  height: 32px;
  top: auto;
}
.period .timeline-content {
  padding: 40px 0 70px;
}
.period .timeline-title {
  margin: 0;
}

/*----------------------------------------------
    MOD: MARKER OUTLINE
----------------------------------------------*/
.marker-outline .timeline-marker:before {
  background: transparent;
  border-color: #FF6B6B;
}
.marker-outline .timeline-item:hover .timeline-marker:before {
  background: #FF6B6B;
}


/*----------------------------------------------
    Margins for Timeline list, from Bootstrap
----------------------------------------------*/

.col-sm-offset-2 {    margin-left: 16.66666667%;  }



/* Small Mobile  N.B. iPhone 320x568px */
  @media screen and (max-width: 360px) {
    .col-sm-offset-2 {
      margin-left: 6.66666667%;
    }
  }




.col-sm-8 {    width: 66.66666667%; }
.col-sm-8 {    float: left; }

.col-sm-8, .col-xs-10 {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

/*----------------------------------------------
    Timeline filter menu
----------------------------------------------*/

#timeline-search h2 {
  font-size:20px;
  display: inline;  
}

.timeline-search .button {
  top: 0;
  left: 0;
  transition: all .1s linear 0s;
  position: relative;
  display: inline-block;
  padding: 8px 18px 8px 18px;
  margin: 0 0 8px 0;
  background-color: #61bad6;
  text-transform: uppercase;
  color: #333;
  letter-spacing: 1px;
  box-shadow: -6px 6px 0 #333;
  text-decoration: none;
  border-radius: 20px 0px 20px 0px;
}
.timeline-search .button:hover { 
  top: 3px;
  left: -3px;
  box-shadow: -3px 3px 0 #333;
}

#timeline-filter h2 {
  font-size:20px;
  display: inline;  
}


#timeline-filter ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: inline;
}

#timeline-filter  ul li { display: inline; padding: 0 2px 0 2px;}
#timeline-filter  ul li a {
  top: 0;
  left: 0;
  transition: all .1s linear 0s;
  position: relative;
  display: inline-block;
  padding: 4px 12px 4px 12px;
  margin: 0 0 8px 0;
  background-color: #61bad6;
  text-transform: uppercase;
  color: #333;
  letter-spacing: 1px;
  box-shadow: -6px 6px 0 #333;
  text-decoration: none;
  border-radius: 20px 0px 20px 0px;
}
#timeline-filter  ul li a:hover { 
  top: 3px;
  left: -3px;
  box-shadow: -3px 3px 0 #333;
}


/*----------------------------------------------
     Read More links
----------------------------------------------*/

.read-more-state {
  display: none;
}

.read-more-target {
  opacity: 0;
  max-height: 0;
  font-size: 0;
  transition: .20s ease;
}

.read-more-state:checked ~ .read-more-wrap .read-more-target {
  opacity: 1;
  font-size: inherit;
  max-height: 999em;
}

.read-more-state ~ .read-more-trigger:before {
  content: 'Show more';
}

.read-more-state:checked ~ .read-more-trigger:before {
  content: 'Show less';
}

.read-more-trigger {
  cursor: pointer;
  display: inline-block;
  padding: 0 .5em;
  color: #666;
  font-size: .9em;
  line-height: 2;
  border: 1px solid #ddd;
  border-radius: .25em;
}


/*----------------------------------------------
     Google Calendar styles
----------------------------------------------*/

.google-calendar{
  position: relative;
  height: 0;
  width: 100%;
  padding-bottom: 50%;
}

.google-calendar iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/*----------------------------------------------
     Responsive Google Calendar styles
----------------------------------------------*/

 .calendar-container {
         width: 100%;
     }
 
  /* Responsive iFrame  (screens up to 550px wide) */
  @media (max-width: 550px) {
     .big-container {
         display: none;
         width: 50%;
     }
 }

   /* Responsive iFrame  (screens larger than 550px) */
 @media (min-width: 550px) {
     .small-container {
         display: none;
         width: 100%;
     }
 }

 /* Responsive iFrame */
 .responsive-iframe-container {
     position: relative;
     padding-bottom: 56.25%;
     padding-top: 30px;
     height: 0;
     overflow: hidden;
 }
 .responsive-iframe-container iframe,   
 .vresponsive-iframe-container object,  
 .vresponsive-iframe-container embed {
     position: absolute;
     top: 0;
     left: 0;     
     height: 100%;
 }


/*----------------------------------------------
     Responsive Video styles
----------------------------------------------*/

 .video-container {
         width: 100%;
     }
