.gs_portfolio_area {
  padding: 10px;
}

.single-gsp {
  margin: 5px 0;
}

.gs_p_icons {
	position: absolute;
	top: 60%;
	width: 100%;
	left: 0;
}

figure.effect-sadie .gs_p_icons {
	opacity: 0;
	transition: opacity 0.35s, transform 0.35s;
}

figure.effect-sadie:hover .gs_p_icons {
	color: #fff;
	transform: translate3d(0,-40%,0) translate3d(0,-20px,0);
	opacity: 1;
}

/* Portfolio content icons */
.gs_p_icons > a {
  width: 42px;
  display: inline-block;
  height: 42px;
  background: rgba(255, 255, 255, 0.18);
  text-align: center;
  -webkit-transition: 1s;
  -o-transition: 1s;
  transition: 1s;
  border: none !important;
  text-decoration: none;
}

.gs_p_icons > a > i {
  display: block;
  line-height: 42px;
  font-size: 18px;
  color: #fff;
}

.gs_p_icons > a:hover {
  text-decoration: none;
  background: rgba(255, 255, 255, 0.45);
}

.gs_p_icons > a:hover,
.gs_p_icons > a:visited {
  color: transparent !important;
}

/* text-based popup styling */
.white-popup {
  position: relative;
  background: #FFF;
  padding: 0;
  width:auto;
  max-width: 80%;
  margin: 0 auto; 
}
.gs_p_popup img{
  width: 100%;
  padding: 10px;
}
.gs_p_popup_content {
  padding-top: 30px;
  padding-right: 30px;
}
.gs_p_popup_content h2 {
  font-size: 28px;
  font-weight: lighter;
  margin-bottom: 20px;
  margin-top: 0;
}
.gs_p_popup_content p {
  margin-bottom: 12px;
  line-height: 18px;
  font-size: 13px;
}
.gsp_btn,
.gsp_btn:hover,
.gsp_btn:visited {
  padding: 10px 16px;
  border-radius: 3px;
  margin-top: 7px;
  display: inline-block;
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 25px;
  text-decoration: none;
}

.gs_p_popup_content .gs_p_btn:hover{
  background: transparent;
}

.gs-filter-cats {
  padding: 0 !important; 
  margin: 0 !important;
}

.gs-filter-cats li {
  list-style-type: none;
  display: inline-block;
  margin: 0 10px 10px 0!important;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 1px 6px;
  cursor: pointer;
}

.mix {
  display: none;
  margin-bottom: 5px;
}

.gs_portfolio_area a {
  text-decoration: none;
  border: none !important;
}

/*============ for bootstrap based theme ==========*/
.gs_p_popup .container {
  width: auto;
}

/* ======== Custom hover effects for 4 columns =======*/

.gs_p_portfolio .col-md-3 figure.effect-sadie p {
  line-height: 1.2;
  padding: 10px;
}

.gs_p_portfolio figure.effect-zoe h2 {
  width: 75%;
  text-align: left;
  line-height: 1;
} 

@media only screen and (min-width: 1280px) {
  .gs_p_portfolio .col-md-3 figure.effect-zoe p.description {
    bottom: 4em;
    padding: 1em;
  }
  .gs_p_portfolio .col-md-3 .effect-zoe a i {
    padding: 8px 5px;
  }
  .gs_p_portfolio .col-md-3 figure.effect-julia figcaption h2 {
    font-size: 20px;
    line-height: 1.2;
  }
  .gs_p_portfolio .col-md-3 figure.effect-julia p {
    font-size: 63%;
    line-height: 1.2;
  }
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption {
    padding: .5em;
  }
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption::before {
    top: -35px !important;
    height: 2.5em !important;
  }
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption h2 {
    font-size: 20px;
    line-height: 1.2;
  }
  .gs_p_portfolio figure.effect-kira figcaption h2,
  .gs_p_portfolio .col-md-3 figure.effect-kira:hover p {
    text-align: center;
  }
}

@media only screen and (min-width: 1024px) and (max-width: 1220px) {
  .gs_p_portfolio .col-md-3 figure.effect-sadie p {
    font-size: 63%;
  }
  .gs_p_portfolio .col-md-3 .gs_p_icons > a {
    width: 36px;
    height: 36px;
  }
  .gs_p_portfolio .col-md-3 .gs_p_icons > a > i {
    line-height: 36px;
  }
  .gs_p_portfolio .col-md-4 figure.effect-zoe p.description {
    bottom: 4em;
    padding: 1em;
  }  
  .gs_p_portfolio .col-md-4 .effect-zoe a i {
    padding: 8px 7px;
  }

  .gs_p_portfolio .col-md-3 figure.effect-zoe p.description {
    display: none;
  }
  .gs_p_portfolio .col-md-3 figure.effect-zoe figcaption {
    height: auto;
  }
  .gs_p_portfolio .col-md-3 figure.effect-zoe h2 {
    width: 100%;
  }
  .gs_p_portfolio .col-md-3 figure.effect-zoe .icon-links{
    float: left;
    margin: 10px 0 !important;
  }
  .gs_p_portfolio .col-md-3 figure.effect-julia figcaption,
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption {
    padding: .5em;
  }
  .gs_p_portfolio .col-md-3 figure.effect-julia figcaption h2,
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption h2 {
    font-size: 20px;
    line-height: 1.2;
  }
  .gs_p_portfolio .col-md-3 figure.effect-julia p {
    font-size: 63%;
    line-height: 1.2;
  }
  .gs_p_portfolio .col-md-4 figure.effect-julia figcaption,
  .gs_p_portfolio .col-md-3 figure.effect-winston figcaption {
    padding: 1em;
  }
  .gs_p_portfolio .col-md-3 figure.effect-winston figcaption p {
    padding: 0 1em 2% 0;
  }
  .gs_p_portfolio .col-md-3 figure.effect-kira figcaption::before {
    top: -35px !important;
    height: 2.5em !important;
  }
  .gs_p_portfolio figure.effect-kira figcaption h2,
  .gs_p_portfolio .col-md-3 figure.effect-kira:hover p {
    text-align: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px){
  .gs_p_portfolio .col-md-3 figure.effect-sadie p {
    font-size: 63%;
  }

  .gs_p_portfolio .col-md-3 .gs_p_icons > a {
    width: 36px;
    height: 36px;
  }
  .gs_p_portfolio .col-md-3 .gs_p_icons > a > i {
    line-height: 36px;
  }

  figure.effect-zoe p.description {
    bottom: 4em;
    padding: 2em 1em;
  }
} /*media end */

/*---- for popup content ----*/
@media (min-width: 768px){
  .gs_p_popup_content{
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (min-width: 600px){
  .gs_p_popup_content{
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (min-width: 480px){
  .gs_p_popup_content{
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media only screen and (max-width: 479px) {
  .gs_p_popup_content{
    padding-left: 15px;
    padding-right: 15px;
  }
  .gs_p_portfolio figure.effect-sadie p {
    font-size: 60% !important;
  }

  .gs_p_portfolio .gs_p_icons > a {
    width: 36px;
    height: 36px;
  }
  .gs_p_portfolio .gs_p_icons > a > i {
    line-height: 36px;
  }
  
  .single-gsp figure.effect-zoe:hover p.description {
    display: none;
  }
  figure.effect-zoe figcaption {
    height: auto;
  }
  .gs_p_portfolio figure.effect-zoe h2 {
    width: 100%;
  }
  .gs_p_portfolio figure.effect-zoe .icon-links{
    float: left;
    margin: 10px 0 !important;
  }
  .gs_p_portfolio .col-md-6 figure.effect-julia figcaption,
  .gs_p_portfolio .col-md-3 figure.effect-julia figcaption,
  .gs_p_portfolio .col-md-4 figure.effect-julia figcaption,
  .gs_p_portfolio figure.effect-kira figcaption {
    padding: .5em;
  }
  .gs_p_portfolio .col-md-6 figure.effect-julia figcaption h2,
  .gs_p_portfolio .col-md-3 figure.effect-julia figcaption h2,
  .gs_p_portfolio .col-md-4 figure.effect-julia figcaption h2 {
    font-size: 20px;
    line-height: 1.2;
  }
  .gs_p_portfolio figure.effect-kira figcaption h2 {
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
  }
  .gs_p_portfolio .col-md-6 figure.effect-julia p,
  .gs_p_portfolio .col-md-3 figure.effect-julia p,
  .gs_p_portfolio .col-md-4 figure.effect-julia p {
    font-size: 63%;
    line-height: 1.2;
  }
  .gs_p_portfolio .col-md-3 figure.effect-winston figcaption p {
    padding: 0 1em 2% 0;
  }
  .gs_p_portfolio figure.effect-kira figcaption::before {
    top: -35px !important;
    height: 2.5em !important;
  }
  figure.effect-kira:hover p {
    text-align: center;
  }

}

/*====== Zoom effect ======*/

.mfp-zoom-in .mfp-with-anim {
  opacity: 0;
  filter: alpha(opacity=0);
  transition: all 0.2s ease-in-out;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}
.mfp-zoom-in.mfp-bg {
  opacity: 0;
  filter: alpha(opacity=0);
  transition: all 0.3s ease-out;
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1);
          transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.mfp-zoom-in.mfp-removing .mfp-with-anim {
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  opacity: 0;
  filter: alpha(opacity=0);
}
.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
  filter: alpha(opacity=0);
}