/* Section WP Bakery */
.vc_row.section.section-with-divider .section-divider,
.vc_column_container.section.section-with-divider .section-divider {
  position: absolute;
  right: 0;
  width: 100%;
  top: 50px;
}
.vc_row.section.section-with-divider-footer .section-divider,
.vc_column_container.section.section-with-divider-footer .section-divider {
  position: absolute;
  right: 0;
  width: 100%;
  bottom: 55px;
}

@media (min-width: 768px) {
  .vc_row-o-equal-height > .container > .align-items-center > .vc_column_container {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
  }
  .vc_row-o-equal-height > .container > .align-items-center > .vc_column_container > .vc_column-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .vc_row-o-full-height > .container > .row,
  .vc_row-o-equal-height > .container > .row > .vc_column_container > .vc_column-inner {
    height: 100%;
  }
}
.vc_row-o-columns-middle > .container > .row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.vc_column_container.section {
  margin: 0;
  padding: 50px var(--porto-column-spacing, 15px);
}

.vc_row.section > .vc_column_container .wpb_wrapper > div:last-child,
.vc_row.section > .porto-container > .vc_row > .vc_column_container .wpb_wrapper > div:last-child,
.vc_column_container.section .wpb_wrapper > div:last-child {
  margin-bottom: 0;
}

.porto-section.vc_section {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}

.row.no-padding > .vc_column_container.section {
  padding-left: var(--porto-res-spacing, 15px);
  padding-right: var(--porto-res-spacing, 15px);
}
.row.no-padding > .vc_column_container.section .col-half-section {
  padding-left: 0;
  padding-right: 0;
}

.vc_row.no-padding {
  --bs-gutter-x: 0px;
}
.vc_row.porto_stretch_css {
  position: relative;
  width: calc(100vw - var(--porto-scroll-w, 0px) - var(--porto-side-header-width, 0px));
}

.container .vc_row.porto_stretch_css {
  right: calc(50% - 50vw + var(--porto-scroll-w, 0px) / 2 + var(--bs-gutter-x) / 2 + var(--porto-side-header-width, 0px) / 2);
}
.container .vc_row.porto_stretch_css:not(.row) {
  right: calc(50% - 50vw + var(--porto-scroll-w, 0px) / 2 + var(--porto-side-header-width, 0px) / 2);
}
.container .vc_row.stretch_row_css:not(.no-padding) {
  padding-left: calc((100vw - 100% - var(--porto-scroll-w, 0px) - var(--bs-gutter-x) - var(--porto-side-header-width, 0px)) / 2) !important;
  padding-right: calc((100vw - 100% - var(--porto-scroll-w, 0px) - var(--bs-gutter-x) - var(--porto-side-header-width, 0px)) / 2) !important;
}
.container .vc_row.stretch_row_css:not(.no-padding):not(.row) {
  padding-left: calc((100vw - 100% - var(--porto-scroll-w, 0px) - var(--porto-side-header-width, 0px)) / 2) !important;
  padding-right: calc((100vw - 100% - var(--porto-scroll-w, 0px) - var(--porto-side-header-width, 0px)) / 2) !important;
}
.container .vc_row.stretch_row_content_no_spaces_css > .vc_column_container {
  padding-left: 0;
  padding-right: 0;
}

.container .stretch_row_content_css:not(.porto-inner-container) {
  padding-left: var(--porto-container-spacing);
  padding-right: var(--porto-container-spacing);
}
.container .stretch_row_content_css > .porto-wrap-container {
  padding-left: var(--porto-res-spacing);
  padding-right: var(--porto-res-spacing);
}

.container-fluid .vc_row.stretch_row_content_css, .container-fluid .vc_row.stretch_row_content_no_spaces_css {
  padding-left: 0;
  padding-right: 0;
}
.container-fluid .vc_row.stretch_row_content_no_spaces_css > .vc_column_container {
  padding-left: 0;
  padding-right: 0;
}

body.boxed .vc_row[data-vc-stretch-content].section,
#main.main-boxed .vc_row[data-vc-stretch-content].section {
  padding-left: var(--porto-column-spacing);
  padding-right: var(--porto-column-spacing);
}

.container .vc_row[data-vc-stretch-content] .porto-wrap-container,
#main.main-boxed .vc_row[data-vc-stretch-content] .porto-container,
#main.boxed .vc_row[data-vc-stretch-content] .porto-container,
body.boxed #main.wide .vc_row[data-vc-stretch-content] .container {
  padding-left: var(--porto-container-spacing);
  padding-right: var(--porto-container-spacing);
}

.container .vc_row[data-vc-stretch-content] > .porto-wrap-container,
.container .vc_row.vc_row-no-padding .porto-wrap-container,
.container .vc_row.vc_row-no-padding .porto-container,
#main.main-boxed .vc_row.vc_row-no-padding .porto-container,
#main.boxed .vc_row.vc_row-no-padding .porto-container {
  padding-left: var(--porto-res-spacing);
  padding-right: var(--porto-res-spacing);
}

body.boxed #main.wide .vc_row[data-vc-stretch-content] > .porto-wrap-container,
body.boxed #main.wide .vc_row.vc_row-no-padding .container {
  max-width: none;
  padding-left: var(--porto-fluid-spacing);
  padding-right: var(--porto-fluid-spacing);
}

body.boxed .vc_row[data-vc-stretch-content],
#main.main-boxed .vc_row[data-vc-stretch-content] {
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  body.boxed .vc_row[data-vc-stretch-content],
  #main.main-boxed .vc_row[data-vc-stretch-content] {
    right: auto !important;
    margin-left: calc(var(--porto-grid-gutter-width) * -1) !important;
    margin-right: calc(var(--porto-grid-gutter-width) * -1) !important;
    max-width: calc(var(--porto-grid-gutter-width) + 720px);
  }
}
@media (max-width: 767px) {
  body.boxed .vc_row[data-vc-stretch-content],
  #main.main-boxed .vc_row[data-vc-stretch-content] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media (min-width: 992px) {
  body.boxed .vc_row[data-vc-stretch-content],
  #main.main-boxed .vc_row[data-vc-stretch-content] {
    max-width: calc(var(--porto-grid-gutter-width) + 960px);
  }
}

@media (min-width: 768px) {
  body.boxed #main.wide .vc_row[data-vc-stretch-content] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
body.boxed #main.wide .container .top-row {
  margin-left: calc(var(--porto-fluid-spacing) * -1);
  margin-right: calc(var(--porto-fluid-spacing) * -1);
  padding-left: var(--porto-container-spacing);
  padding-right: var(--porto-container-spacing);
}
body.boxed #main.wide .container .porto-inner-container {
  padding-left: var(--porto-fluid-spacing);
  padding-right: var(--porto-fluid-spacing);
}

@media (min-width: 992px) {
  body:not(.boxed) .side-nav .vc_row[data-vc-stretch-content] {
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: 0 !important;
    right: 0 !important;
    /*width: 100% !important;*/
  }
}

.portfolio-modal .vc_row[data-vc-full-width],
body.boxed .portfolio-modal .vc_row[data-vc-full-width],
#main.main-boxed .portfolio-modal .vc_row[data-vc-full-width],
.portfolio-modal .vc_row[data-vc-stretch-content],
body.boxed .portfolio-modal .vc_row[data-vc-stretch-content],
#main.main-boxed .portfolio-modal .vc_row[data-vc-stretch-content],
.portfolio-ajax-modal .vc_row[data-vc-full-width],
body.boxed .portfolio-ajax-modal .vc_row[data-vc-full-width],
#main.main-boxed .portfolio-ajax-modal .vc_row[data-vc-full-width],
.portfolio-ajax-modal .vc_row[data-vc-stretch-content],
body.boxed .portfolio-ajax-modal .vc_row[data-vc-stretch-content],
#main.main-boxed .portfolio-ajax-modal .vc_row[data-vc-stretch-content] {
  padding-left: var(--porto-grid-gutter-width) !important;
  padding-right: var(--porto-grid-gutter-width) !important;
}

/* frontend editor */
.compose-mode .vc_element[class*=vc_porto_hb_] {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.875rem;
}
.compose-mode .vc_element[class*=vc_porto_hb_]:last-child {
  margin-left: 0;
}

/* Header Builder */
.header-builder-p .vc_row.vc_row-flex > .vc_column_container > .vc_column-inner {
  z-index: auto;
}
.header-builder-p .vc_column-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.header-builder-p .vc_column-inner > *:not(.vc_row) {
  margin-left: 0.875rem;
}
.header-builder-p .vc_column-inner > *:last-child {
  margin-left: 0;
}
.header-builder-p .vc_column-inner > .vc_row, .header-builder-p .vc_column-inner > .vc_vc_row_inner {
  width: calc(100% + var(--porto-grid-gutter-width));
}
.header-builder-p .vc_row-o-full-height > .vc_column_container > .vc_column-inner,
.header-builder-p .vc_row-o-full-height > .vc_vc_column > .vc_column_container > .vc_column-inner,
.header-builder-p .vc_row-o-full-height > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
  -ms-flex-line-pack: start;
      align-content: flex-start;
}
.header-builder-p .vc_row-flex > .vc_column_container > .vc_column-inner,
.header-builder-p .vc_row-flex > .vc_vc_column > .vc_column_container > .vc_column-inner,
.header-builder-p .vc_row-flex > .vc_vc_column_inner > .vc_column_container > .vc_column-inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.header-builder-p .porto-block .porto-block .vc_column-inner {
  display: block;
}
.header-builder-p .porto-block .porto-block .vc_column-inner > * {
  margin-left: 0;
}

#header.header-builder-p .header-main .container > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.wpb-flex-1, .vc_column_container.flex-1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.wpb-flex-auto, .vc_column_container.flex-auto {
  width: auto;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}

.wpb-flex-1:last-of-type .vc_column-inner,
.vc_column_container.flex-1:last-of-type .vc_column-inner {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.wpb-flex-1:nth-of-type(2):not(:last-of-type) .vc_column-inner,
.vc_column_container.flex-1:nth-of-type(2):not(:last-of-type) .vc_column-inner {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

[data-inviewport-style].vc_row.view-scale-wrapper, .vc_row.cursor-shape-wrapper {
  padding-top: 30px;
}

#header li.menu-item .vc_custom_heading a {
  font: inherit;
}