/*
    GENERAL
*/

// Titles
.wpb_heading {
  background-color: #222;
  color: #fff;
  display: inline-block;
  padding: 8px 12px;
  font-family: @font3;
  font-size: 14px;
  line-height: 1;
  margin-bottom: 26px;
  margin-top: 0;
}


/*
    Single Image
*/

.vc_single_image-img {
  display: block;
}



/*
    Text block
*/
.wpb_text_column {
  // make the first h to be without top margin to perfect fit
  h1,h2,h3,h4,h5 {
    &:first-child {
      margin-top: 0;
    }
  }
}


/*
    FAQ - toggle
*/
.vc_toggle_title {
  padding: 7px 13px 8px 36px !important;
  margin: 0;
}

.vc_toggle_content {
  padding-left: 15px !important;
}

.vc_toggle_active .vc_toggle_title {
  background-color: #fcfcfc !important;
}

.vc_toggle_title {
  border: 1px solid @td_grid_border_color;

  &:hover {
    background-color: #fcfcfc !important;
  }

  h4 {
    font-family: @font3;
    font-size: 14px;
    line-height: 21px;
    font-weight: 400;
  }

  .vc_toggle_icon {
    left: 10px !important;
  }
}

.vc_toggle {
  margin-bottom: 10px !important;

  &.vc_toggle_size_md .vc_toggle_title {
    padding: 11px 13px 10px 45px !important;
  }

  &.vc_toggle_size_lg .vc_toggle_title {
    padding: 14px 13px 14px 48px !important;
  }
}


/*
    Image gallery
*/
.wpb_gallery {
  .flexslider {
    overflow: hidden;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    position: relative;
  }
  .nivoSlider {
    box-shadow: none !important;
  }

  .post-title {
    font-size: 26px;
    line-height: 31px;
    margin-bottom: 10px;
    margin-top: 10px;
  }
}

// Flex slider - fix navigation
.wpb_gallery .wpb_flexslider .flex-control-nav {
  bottom: 0;
  z-index: 2;
}


/*
    Image carousel
*/
.wpb_content_element {
  .icon-next:before {
    font-family: @font4 !important;
    content: '\e808' !important;
    color: #ffffff;
    font-size: 30px;
    top: 0 !important;
  }
  .icon-prev:before {
    font-family: @font4 !important;
    content: '\e807' !important;
    color: #ffffff;
    font-size: 30px;
    top: 0 !important;
  }
}


/*
    Tabs
*/
.wpb_tabs {
  .wpb_tab {
    background-color: #fff !important;
    padding: 0 !important;
  }

  .wpb_tabs_nav {
    border-bottom: 2px solid #222;
    margin-bottom: 26px;
  }

  li {
    a {
      background-color: #fff;
      color: #222;
      padding: 8px 12px 5px 12px !important;
      font-family: @font3;
      font-size: 14px;
      line-height: 15px;
      font-weight: 400;
      white-space: nowrap;
    }

    &.ui-tabs-active,
    &:hover {
      a {
        background-color: #222;
        color: #fff;
      }
    }
  }
}
// firefox fix
@-moz-document url-prefix() {
  .wpb_tabs li a {
    padding: 7px 12px 5px 12px !important;
    line-height: 16px;
  }
}



/*
    Progress bar
*/
.vc_progress_bar {
  .vc_label,
  div {
    border-radius: 0 !important;
  }
}



/*
    Tour section
*/
.wpb_tour {
  .wpb_heading {
    float: left;
  }

  .wpb_tabs_nav {
    clear: both;
    border-bottom: 1px solid @td_grid_border_color;
  }

  .wpb_tabs_nav li {
    line-height: 16px;
    margin: 0 !important;
    overflow: hidden;

    a {
      color: #222;
      padding: 7px 12px 7px 12px !important;
      font-family: @font3;
      font-size: 14px;
      line-height: 17px;
      font-weight: 400;
      white-space: nowrap;
      min-height: 30px;
      border: 1px solid @td_grid_border_color;
    }

    &.ui-tabs-active,
    &:hover {
      a {
        background-color: #222;
        color: #fff;
        border-width: 1px 1px 0 1px;
        border-style: solid;
        border-color: #222;
      }
    }
  }
}


/*
    Accordion
*/
.wpb_accordion {

  .ui-state-active {
    a {
      background-color: #222 !important;
      color: #fff !important;
      border: 0 !important;
    }
  }

  .wpb_accordion_header {
    background-color: #ffffff !important;
    margin-bottom: 10px !important;

    a {
      color: #222;
      padding: 10px 12px !important;
      font-family: @font3;
      font-size: 14px;
      line-height: 17px;
      font-weight: 400;
      white-space: nowrap;
      min-height: 30px;
      border: 1px solid @td_grid_border_color;
    }
  }

  .wpb_accordion_content {
    margin-bottom: 10px;
  }
}


/*
    Buttons
*/
.wpb_button,
.vc_btn {
  display: inline-block;
  font-family: @font1;
  font-weight: 600;
  line-height: 24px;
  text-shadow: none;
  border: none;
  transition: none;
  border-radius: 0;
  margin-bottom: 21px;

  &:hover {
    text-shadow: none;
    text-decoration: none !important;
  }
}

a.vc_btn-black {
  .transition(all 0.2s ease);

  &:hover {
    background-color: @td_theme_color;
    border-color: @td_theme_color;
    color: @td_theme_color;
  }

  &.vc_btn_square_outlined,
  &.vc_btn_outlined {
    &:hover {
      color: @td_theme_color !important;
    }
  }
}

.wpb_default {
  background-color: @td_theme_color;

  &:hover {
    text-shadow: none;
    background-color: @td_theme_color;
    opacity: 0.8;
    .transition(opacity @td_transition_time);
  }
}


/*
    Call to action
*/
.wpb_call_to_action {
  background-color: #fcfcfc;
}

.vc_call_to_action {
  .wpb_heading {
    background-color: inherit;
    color: inherit;
    margin-top: inherit;
    padding: inherit;
    line-height: 34px;
    margin-bottom: 8px;
  }

  h2 {
    font-size: 27px;
  }

  h4 {
    line-height: 20px !important;
  }
}


/*
    Video
*/
.wpb_video_widget .wpb_video_wrapper {
  margin-bottom: 50px;
}


/*
    Custom heading
*/
.vc_custom_heading {
  & > * {
    margin-top: 0;
    margin-bottom: 26px;
  }
}


/*
    Widgets
*/
.widget {
  overflow: hidden;
}

// all widgets
.vc_wp_rss,
.vc_wp_archives,
.vc_wp_categories,
.vc_wp_posts,
.vc_wp_text,
.vc_wp_custommenu,
.vc_wp_tagcloud,
.vc_wp_pages,
.vc_wp_calendar,
.vc_wp_recentcomments,
.vc_wp_meta,
.vc_wp_search {
  ul {
    margin: 0;
  }
}

// title
.widgettitle {
  background-color: #222;
  color: #fff;
  display: inline-block;
  padding: 6px 12px 4px;
  font-family: @font3;
  font-size: 14px;
  line-height: 19px;
  margin-bottom: 14px;
  margin-top: 0;
  min-height: 30px;
  position: relative;

  &:after {
    content: '';
    height: 2px;
    width: 300%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #222;
  }
}
// firefox fix
@-moz-document url-prefix() {
  .widgettitle {
    line-height: 18px;
  }
}

// rss
.vc_wp_rss {
  margin-bottom: 0;

  .widgettitle {
    a:first-child {
      display: none;
    }

    .rsswidget {
      color: #ffffff;
    }
  }

  .widget_rss {
    margin-bottom: 21px;
  }

  ul {
    margin: 4px 0 0 12px;

    li {
      margin-left: 0;
      padding-bottom: 0;
    }
  }
}

// archive
.vc_wp_archives {
  ul {
    margin: 0;
  }
}

// text
.vc_wp_text {
  .textwidget {
    margin: 12px 0 43px 0;
  }
}

// tags
.vc_wp_tagcloud {
  .widgettitle {
    margin-bottom: 26px;
  }
}

// search
.vc_wp_search {
  .widgettitle {
    margin-bottom: 26px;
  }
}

// raw html
.wpb_raw_code {
  margin-bottom: 26px;
}



.wpb_single_image .vc_single_image-wrapper {
  display: block;
}

.wpb_flickr_heading {
  display: table;
}