/*
Description: The stylesheet with a main responsive style.
Author:      Cherry Team
Version:     1.0.0
*/
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    line-height: 34px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg {
    line-height: 46px;
  }
}

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 14.3px;
  }
}

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
  }
}

@media (max-width: 768px) {
  ol.comment-list li.comment ol.children {
    padding-left: 15px;
  }
}

@media (max-width: 767px) {
  .table-responsive {
    width: 100%;
    overflow-y: hidden;
    overflow-x: scroll;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}

@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}

@-ms-viewport {
  width: device-width;
}

.visible-xs, .visible-sm, .visible-md, .visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}

.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .site-header.boxed,
  .site-content.boxed,
  .site-footer.boxed {
    max-width: 750px;
  }
}

@media (min-width: 992px) {
  .site-header.boxed,
  .site-content.boxed,
  .site-footer.boxed {
    max-width: 970px;
  }
}

@media (min-width: 1200px) {
  .site-header.boxed,
  .site-content.boxed,
  .site-footer.boxed {
    max-width: 1170px;
  }
}

@media (min-width: 768px) {
  .site-header.extra-boxed,
  .site-content.extra-boxed,
  .site-footer.extra-boxed {
    max-width: 780px;
  }
}

@media (min-width: 992px) {
  .site-header.extra-boxed,
  .site-content.extra-boxed,
  .site-footer.extra-boxed {
    max-width: 1000px;
  }
}

@media (min-width: 1200px) {
  .site-header.extra-boxed,
  .site-content.extra-boxed,
  .site-footer.extra-boxed {
    max-width: 1200px;
  }
}

.entry-content .container .container {
  width: auto;
}

@media (min-width: 992px) {
  .sidebar-sidebar-content-wrapper,
  .sidebar-content-sidebar-wrapper,
  .content-sidebar-sidebar-wrapper {
    width: 80%;
  }
  .sidebar-content-sidebar-wrapper,
  .sidebar-sidebar-content-wrapper {
    float: right;
  }
  .content-sidebar-sidebar-wrapper {
    float: left;
  }
  .sidebar-content-wrapper #primary,
  .content-sidebar-wrapper #primary,
  .sidebar-sidebar-content-wrapper #primary,
  .sidebar-content-sidebar-wrapper #primary,
  .content-sidebar-sidebar-wrapper #primary {
    width: 75%;
  }
  .sidebar-content-wrapper #primary,
  .sidebar-sidebar-content-wrapper #primary {
    float: right;
  }
  .content-sidebar-wrapper #primary,
  .content-sidebar-sidebar-wrapper #primary,
  .sidebar-content-sidebar-wrapper #primary {
    float: left;
  }
  .sidebar-content-wrapper .widget-area,
  .sidebar-sidebar-content-wrapper .widget-area {
    float: left;
    width: 23%;
  }
  .content-sidebar-wrapper .widget-area,
  .content-sidebar-sidebar-wrapper .widget-area,
  .sidebar-content-sidebar-wrapper .widget-area {
    float: right;
    width: 23%;
  }
  .sidebar-sidebar-content-wrapper + .widget-area,
  .sidebar-content-sidebar-wrapper + .widget-area {
    float: left;
    width: 18%;
  }
  .content-sidebar-sidebar-wrapper + .widget-area {
    float: right;
    width: 18%;
  }
  .cherry-with-sidebar .content-area .container {
    width: 80%;
  }
}

/* Large devices (large desktops, 1200px and down) */
@media (max-width: 1200px) {
  .site input[type="text"], .site input[type="email"], .site input[type="url"], .site input[type="search"], .site textarea {
    padding-right: 20px;
    padding-left: 20px;
  }
  .site-header .search-form input[type="search"] {
    width: 300px;
    padding-right: 20px;
    padding-left: 20px;
  }
  .moto-slider .motoslider_wrapper {
    padding-right: 52px;
    padding-left: 52px;
  }
  .moto-slider .motoslider_wrapper .ms_wrapper .ms_arrows .ms_prev {
    left: -52px !important;
  }
  .moto-slider .motoslider_wrapper .ms_wrapper .ms_arrows .ms_next {
    right: -52px !important;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner h4 {
    line-height: 18px;
    font-size: 14px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .caption .indent {
    padding: 0 10px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .post-meta {
    font-size: 10px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .post-meta .meta-rank-views, .cherry-posts-list.style_2 .cherry-posts-item .inner .post-meta .post_date {
    margin: 0 4px;
  }
  .portfolio-container.list-layout .portfolio-list .portfolio-item .inner-wrap .item-content {
    padding-top: 0;
  }
  .cherry-services.style_1 .services-listing .cherry-services_item .cherry-services_thumb {
    max-width: 45%;
    margin-right: 20px;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item .cherry-services_icon {
    margin-right: 20px;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item .caption {
    overflow: visible;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item .caption h3 {
    padding-top: 0;
  }
}

/* Medium devices (desktops, 992px and down) */
@media (max-width: 992px) {
  .site-header #menu-primary .menu-items .mega-sub > li {
    padding: 0 10px;
  }
  .cherry-banner.style_1 .cherry-banner_wrap a.cherry-banner_link .inner {
    padding: 0 15px;
  }
  .cherry-banner.style_1 .cherry-banner_wrap h2 {
    line-height: 20px;
    font-size: 16px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner h4 {
    margin: 0;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .post_meta {
    display: none;
  }
  .cherry-posts-list.style_2 .cherry-posts-item .inner h4 {
    line-height: 24px;
    font-size: 18px;
  }
  .cherry-posts-list.style_3 .cherry-posts-item .inner .inner_box .post-thumbnail {
    max-width: 45%;
    margin-top: 0;
  }
  .cherry-posts-list.style_3 .cherry-posts-item .inner .inner_box h4 {
    line-height: 18px;
    font-size: 12px;
  }
  .cherry-posts-list.style_4 .cherry-posts-item .inner figure {
    float: left;
    max-width: 50%;
    margin: 6px 20px 6px 0;
  }
  .cherry-posts-list.style_4 .cherry-posts-item .inner .post-meta {
    line-height: 18px;
    font-size: 12px;
  }
  .cherry-posts-list.style_5 .cherry-posts-item > .inner .caption .indent {
    padding: 0 10px;
  }
  .related-posts ul li {
    margin-bottom: 20px;
  }
  .related-posts ul li figure {
    float: left;
    max-width: 45%;
    margin: 0 20px 5px 0;
  }
  .related-posts ul li h4 {
    margin-top: 0;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item .cherry-services_icon {
    float: none;
    margin: 0 0 20px 0;
  }
  .error-404 .error-404-num {
    line-height: 200px;
    font-size: 200px;
  }
  .login-button .custom-tooltip,
  .logout-button .custom-tooltip {
    padding-right: 10px;
    padding-left: 10px;
  }
  .login-button .custom-tooltip:before,
  .logout-button .custom-tooltip:before {
    margin-right: 5px;
  }
}

/* Small devices (tablets, 768px and down) */
@media (max-width: 768px) {
  h2 strong {
    display: block;
    position: relative;
    padding: 10px 0 0 0;
    top: auto;
    right: auto;
  }
  h2 strong a {
    display: inline-block;
    vertical-align: top;
  }
  .site-header {
    padding-top: 20px;
    text-align: center;
  }
  .site-header .header-top {
    padding-bottom: 20px;
  }
  .site-header .header-bottom {
    padding: 15px 0;
  }
  .site-header .site-branding {
    margin: 0 0 20px 0;
  }
  .site-header .site-branding .site-title {
    text-align: center;
  }
  .site-header .site-branding .site-title.text-logo {
    text-align: center;
  }
  .site-header .search-form {
    padding-bottom: 15px;
  }
  .site-header #menu-primary {
    text-align: center;
  }
  .site-header #menu-primary button {
    display: block;
    width: 100%;
    margin: 0;
    padding: 5px 10px;
    transition: all, 0.8s, ease-in-out;
    border: none;
    box-shadow: none;
    vertical-align: top;
    line-height: 20px;
    font-size: 14px;
  }
  .site-header #menu-primary button:hover {
    transition: all, 0.4s, ease-in-out;
  }
  .site-header #menu-primary .cherry-mega-menu-mobile-close {
    margin-top: 1px !important;
  }
  .site-header #menu-primary .menu-items, .site-header #menu-primary .menu-items ul, .site-header #menu-primary .menu-items ul ul {
    background: none !important;
    position: relative !important;
    z-index: 99 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
  }
  .site-header #menu-primary .menu-items li, .site-header #menu-primary .menu-items li li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 1px 0 0 0 !important;
    padding: 0 !important;
    border: none !important;
  }
  .site-header #menu-primary .menu-items li a, .site-header #menu-primary .menu-items li li a {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    transition: all, 0.8s, ease-in-out;
    border: none !important;
    box-shadow: none !important;
    vertical-align: top !important;
    line-height: 20px !important;
    font-size: 14px !important;
    text-decoration: none !important;
  }
  .site-header .textwidget {
    text-align: center;
  }
  .login-form-wrapper .login-box {
    right: 0;
    margin-right: 0;
  }
  .cherry-banner.style_1 .cherry-banner_wrap h2 {
    line-height: 24px;
    font-size: 20px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .inner_box .post-thumbnail img {
    width: 100%;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner h4 {
    margin: 0 0 6px 0;
    line-height: 20px;
    font-size: 14px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item .inner .post_meta {
    display: block;
  }
  .cherry-posts-list.style_2 .cherry-posts-item .inner .caption .indent {
    padding: 0 20px;
  }
  .cherry-posts-list.style_2 .cherry-posts-item .inner .inner_box .post-thumbnail img {
    width: 100%;
  }
  a.cherry-btn-primary {
    margin-bottom: 30px;
  }
  .cherry-breadcrumbs .cherry-breadcrumbs_content .cherry-breadcrumbs_wrap .cherry-breadcrumbs_item a, .cherry-breadcrumbs .cherry-breadcrumbs_content .cherry-breadcrumbs_wrap .cherry-breadcrumbs_item .cherry-breadcrumbs_item_sep, .cherry-breadcrumbs .cherry-breadcrumbs_content .cherry-breadcrumbs_wrap .cherry-breadcrumbs_item span {
    line-height: 20px;
    font-size: 14px;
  }
  .portfolio-wrap .portfolio-filter {
    text-align: center;
  }
  .portfolio-wrap .portfolio-filter ul.filter li {
    display: inline-block;
    float: none;
    margin: 2px 6px;
    vertical-align: top;
  }
  .testimonials-wrap.style_1 .testimonials-list .testimonials-item {
    width: 100%;
    margin: 30px 0 0 0;
  }
  .testimonials-wrap.style_1 .testimonials-list .testimonials-item:first-child {
    margin: 0;
  }
  .cherry-services.style_1 .services-listing .cherry-services_item {
    width: 100%;
  }
  .cherry-services.style_2 .services-listing .cherry-services_item {
    width: 100%;
    margin-top: 30px;
  }
  .cherry-services.style_2 .services-listing .cherry-services_item:first-child {
    margin-top: 0;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item {
    width: 100%;
    margin: 30px 0 0 0;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item:first-child {
    margin: 0;
  }
  .cherry-services.style_3 .services-listing .cherry-services_item .cherry-services_icon {
    float: left;
    margin: 0 20px 5px 0;
  }
  .error-404 {
    text-align: center;
  }
  .error-404 h2 {
    text-align: center;
  }
  .testimonials-wrap .testimonials-list .testimonials-item {
    margin: 0 0 20px 0;
  }
  .testimonials-wrap .testimonials-list .testimonials-item blockquote {
    overflow: visible;
    padding: 0;
    border: none;
    line-height: 18px;
    font-size: 12px;
  }
  .testimonials-wrap .testimonials-list .testimonials-item blockquote footer {
    line-height: 20px;
    font-size: 14px;
  }
  .login-button .custom-tooltip,
  .logout-button .custom-tooltip {
    font-size: 12px;
  }
  .login-button .custom-tooltip:before,
  .logout-button .custom-tooltip:before {
    margin-right: 5px;
  }
  article.type-service figure {
    max-width: 50%;
    margin-right: 20px !important;
  }
  article.type-service h3 {
    line-height: 24px;
    font-size: 18px;
  }
  .site-footer .footer-top {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .site-footer .widget-area {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .site-footer .widget-area .widget {
    margin: 0;
  }
}

@media (max-width: 767px) {
  .login-form-wrapper .login-box {
    right: 50%;
    margin-right: -150px;
  }
}

/* (480px and down) */
@media (max-width: 480px) {
  .site-header .search-form input[type="search"] {
    width: 180px;
  }
  .moto-slider .motoslider_wrapper .ms_wrapper .ms_youtube_layer_preview_button {
    width: 80px;
    height: 80px;
    margin-top: -40px;
    margin-left: -40px;
    line-height: 80px;
  }
  .moto-slider .motoslider_wrapper .ms_wrapper .ms_youtube_layer_preview_button:before {
    line-height: 80px;
    font-size: 80px;
  }
  .cherry-posts-list.style_1 .cherry-posts-item {
    width: 100%;
  }
  .cherry-posts-list.style_2 .cherry-posts-item .inner .inner_box h4 {
    margin: 0 0 6px 0;
    line-height: 18px;
    font-size: 12px;
  }
  .cherry-posts-list.style_2 .cherry-posts-item .inner .caption a.play_video {
    display: none;
  }
  .cherry-posts-list.style_3 .cherry-posts-item .inner .inner_box h4 {
    line-height: 18px;
    font-size: 12px;
  }
  .portfolio-container.list-layout .portfolio-list .portfolio-item .inner-wrap .media-content {
    float: none !important;
    width: 100% !important;
    margin: 0 0 20px 0 !important;
  }
  .portfolio-container.list-layout .portfolio-list .portfolio-item .inner-wrap .item-content {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
  .error-404 .error-404-num {
    line-height: 160px;
    font-size: 160px;
  }
  article.post .entry-thumbnail {
    display: block;
    float: none;
    width: 100%;
    overflow: hidden;
    margin: 0 0 20px 0 !important;
  }
  article.post .entry-thumbnail a {
    display: block;
    width: 100%;
  }
  article.post .entry-thumbnail img {
    width: 100%;
  }
  article.type-service figure {
    max-width: 45%;
  }
  article.type-service h3 {
    line-height: 20px;
    font-size: 14px;
  }
  .login-form-wrapper .login-box {
    right: 50%;
    margin-right: -150px;
  }
}
