/* CSS Document */

#gallery_header, 
#gallery_content {
	display: block;
	width: 100%;
	clear: both;
}

#portfolio-cat-description {
    margin: 0 0 20px;
}

#gallery_content {
    margin: 0;
}

#gallery_header {margin: 0 0 20px;}
#gallery_footer {
	display: block;
	width: 100%;
	clear: both;
    margin-top: 20px;
}

#galleria{padding:10px 0!important;}

.gallery_item {
	display: block;
	float: left;
	margin: 0 20px 20px 0;
}
#portfolio-index .galery_item img {
	display:block;
	margin:auto;
}

/* Magnific popup */
#portfolio-index .grid3column-progression:nth-child(3n+3) {margin-right:0;}

.editing #portfolio-index .grid3column-progression{margin:0;width:33.33%;}
.editing #portfolio-index .grid3column-progression .portfolio-index-pro{margin-right:6.5%}

@media (max-width: 767px) {
	.editing #portfolio-index .grid3column-progression{margin:0;width:100%;}
	.editing #portfolio-index .grid3column-progression .portfolio-index-pro{margin-right:0}
}

.view_link {
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:rgba(0,10,15, 0);
	z-index:5;
	transition: background 300ms;
	-webkit-transition: background 300ms;	
}

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=80); }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10001;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 10005; }

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 10004; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 10006;
  -webkit-box-shadow: none;
  box-shadow: none; }
button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  filter: alpha(opacity=65);
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 1;
    filter: alpha(opacity=100); }
  .mfp-close:active {
    top: 0; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  filter: alpha(opacity=65);
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1;
    filter: alpha(opacity=100); }
  .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after, .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before, .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -44px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 50px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }
  
@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; }
 }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; }
 }

.mfp-ie7 .mfp-img {
  padding: 0; }
.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px; }
.mfp-ie7 .mfp-container {
  padding: 0; }
.mfp-ie7 .mfp-content {
  padding-top: 44px; }
.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0;
}

body.mfp-zoom-out-cur {
	margin:0 -17px 0 0 !important;
}

.mfp-zoom-out-cur .main_header,
.mfp-zoom-out-cur .breadcrumbs,
.mfp-zoom-out-cur .wrapper,
.mfp-zoom-out-cur .fixed-menu header,
.mfp-zoom-out-cur .footer {
	padding-right:17px !important;
}

.mfp-zoom-out-cur .wall_map {
	margin-left:-17px !important;
}

/* Custom Magnific Popup Arrows */
.mfp-arrow {
	opacity: 1;
	filter: alpha(opacity=100);
	margin-top: 0;
	padding: 30px !important;
	width: 16px;
	height: 14px;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	transition: opacity 300ms;
	-webkit-transition: opacity 300ms;
	background-image:url(../../images/sprite.png) !important;
	background-repeat:no-repeat !important;	
}
.mfp-arrow:active {
	margin-top: 0;
}
.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
    filter: alpha(opacity=100);
}
.mfp-arrow:hover {
	opacity: 0.7;
    filter: alpha(opacity=70);
} 
.mfp-arrow:before,
.mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
	content: '';
	display: none;
}
.mfp-arrow-left {
	left: 0;
    background-position: -39px -46px !important;
}
.mfp-arrow-right {
	right: 0px;
	background-position: -39px -101px !important;
}
.mfp-title,
.mfp-counter {
	padding-top:19px;
	font-size:14px;
	font-weight:300;
	color:#fff;
	line-height:24px;
}
.mfp-title {
	font-size:16px;
	position:absolute;
}

.mfp-close {
  opacity: 1;
  filter: alpha(opacity=100); 
  transition: opacity 300ms;
	-webkit-transition: opacity 300ms; 
}
.mfp-close:focus {
    opacity: 1;
    filter: alpha(opacity=100);
}
.mfp-close:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
}
.mfp-close:active {
    top: 0; 
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  right: 0;
  text-align: right;
  padding-right: 0;
  width: 100%;
}
.mfp-iframe-holder .mfp-close {
    top:0;
}
.mfp-close {
  text-indent:-9999px;
  font-size:0 !important;
  line-height:0 !important;
}
.mfp-close:before {
	width:12px;
	height:12px;
	position:absolute;
	content:'';
	right:0;
	top:0;
	display:block;
	background-image:url(../../images/sprite.png);
	background-repeat:no-repeat;
	background-position:-268px -138px;
}

.mfp-iframe-scaler .mfp-close {
	top:-40px;
}

.mfp-iframe-scaler .mfp-counter {
	top:auto;
	bottom:-47px;
}

/* classic */
.module_galleria_classic .galleria-thumbnails-container img{max-width:none}

/* folio */
.module_galleria_folio  .galleria-thumbnails .galleria-image img {max-width:none}
/* portfolio image css custom */
.flex-wrap {
    -ms-flex-wrap: wrap!important;
    flex-wrap: wrap!important;
}
.d-flex {
    display: -ms-flexbox!important;
    display: flex!important;
}
.justify-content-center {
    -ms-flex-pack: center!important;
    justify-content: center!important;
}
.portfolio {
    position: relative;
    margin: 0 -12px -12px 0;
}
.portfolio-3 .portfolio-item {
    width: 32.33333333%;
    padding: 2px 2px;
}
.portfolio-item {
    float: left;
    position: relative;
    width: 25%;
    height: auto;
    padding: 0 12px 12px 0;
}
.portfolio-item .grid-inner {
    padding: 0 1px;
}
/*.grid-inner {
    width: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}*/
#portfolio .portfolio-item{
  text-align:center;
}
#portfolio .grid-inner .portfolio-image{
  margin-bottom:15px;
}
#portfolio .grid-inner:hover .portfolio-image a .overlay-image{
  position:relative;
  height:100%;
  width:100%;
}
#portfolio .grid-inner:hover .portfolio-image a .overlay-image:before{
  content:"";
  background:rgba(0, 0, 0,.5);
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:1;
}
.m-0{
  margin:0px!important;
}
.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

/* overlay bg */
.bg-overlay {
    z-index: 5;
}
.bg-overlay, .bg-overlay-bg, .bg-overlay-content {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
}
.bg-overlay-content {
    display:none;
    align-items: center;
    justify-content: center;
    z-index: 1;
}
.portfolio-desc {
    position: relative;
    z-index: 6;
}
.center {
    text-align: center!important;
}
.h-100 {
    height: 100%!important;
}
.w-100 {
    width: 100%!important;
}
.full-link{
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2;
}
.full-link span{
    color: #fff;
    padding: 0 15px;
}
.bg-overlay-bg.dark, .dark .bg-overlay-bg {
    display:none;
    background-color: rgba(0,0,0,.5);
}
.bg-overlay:hover .bg-overlay-bg,.bg-overlay:hover .bg-overlay-content{
    display: -ms-flexbox;
    display: flex;
}
.content-gallery .portfolio-index-pro{
  margin-bottom:5px;
}
.no-gutters>.col, .no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0;
}
.portfolio-item {
    padding-bottom: 2px;
}
#posts, .portfolio, .portfolio-item {
    position: relative;
}
.no-gutters {
    margin-right: 0;
    margin-left: 0;
}
body:not(.device-touch) .portfolio {
    -webkit-transition: height .4s linear;
    -o-transition: height .4s linear;
    transition: height .4s linear;
}
.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}
@media only screen and (min-width: 992px){
  .col-lg-3 {
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
  }
}
@media only screen and (min-width: 576px) and (max-width:991.98px){
  .col-sm-4 {
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
  }  
}
