/* ------------------------------------------------------------------------------


  1.  Projects

      1.1 Project Carousel
      1.2 Magnific popup
      1.3 Project Details

  2. Responsive styles

      2.1 Min width: 768px
      2.2 Min width 992px
      2.3 Min width 1200px 
      2.4 Max height 480px

    


/* ------------------------------------------------------------------------------- */
/*  1. Projects
/* ------------------------------------------------------------------------------- */
.project-details-img.col-md-8.col-md-offset-4 {
    margin-left: 33.33% !important;
}

body{
background-color: #272727;  
}


.layout {
    position: relative;
    overflow: hidden;
}

.bg-projects{
  position: relative;
  background:url("http://localhost/goarch/wp-content/uploads/2025/05/projects.jpg") 50% 0 no-repeat;
  background-size: cover;
}

.main-header {
    position: relative;
    z-index: 2;
    color: #fff;
    text-align: right;
    padding-left: 38.5vmin;
}

.project{
  padding: 0 !important;
  overflow: hidden !important;
}

.main-projects, .main-contacts {
    padding: 34.2vmin 0 34vmin !important;
}

.main-project {
    padding: 33.7vmin 0 11vmin;
    background-size: cover;
    background-position: center 0;
}

.project figure{
  position: relative;
}

.project figure img{
  display: block;
  width: 100%;
  -webkit-transition: all 8s linear;
  -o-transition: all 8s linear;
  transition: all 8s linear;
}

.project figure:after{
  content:'';
  position: absolute;
  left: 0;
  top:0;
  width: 100%;
  height: 100%;
  background-color: #111;
  opacity: 0.7;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

.project.project-light figure:after{
  opacity: 0.4;
}
    
.project figcaption{
  position: absolute;
  z-index: 1;
  left: 0;
  top:0;
  right:0;
  bottom:0;
  margin: 3.2em 3.6em;
}

.project-title{
  position: relative;
  top:0;
  left:0;
  margin:0;
  font-family: 'Oswald', sans-serif;
  font-weight: normal;
  font-size: 1.56em;
  line-height: 1.45;
  letter-spacing: 0.07em;
  color: #fff;
  text-transform: uppercase;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

.project-category{
  /*position: absolute;*/
  left: 0;
  bottom: 0;
  margin:0 0 -0.8em;
  font-family: 'Oswald', sans-serif;
  font-weight: normal;
  font-size: 14px;
  color: #000;

}

.project-zoom{
  position: absolute;
  left: 50%;
  top:50%;
  width: 9em;
  height: 9em;
  margin:-4.5em;
  border-radius: 50%;
  background-color: rgba(197,164,126,0.84);
  overflow: hidden;
  opacity: 0;
  -webkit-transform: scale(0.5);
  -ms-transform:scale(0.5);
  -o-transform:scale(0.5);
  transform:scale(0.5);
  -webkit-transition: all 0.7s;
  -o-transition: all 0.7s;
  transition: all 0.7s;
}

.project-zoom:after{
  content: '';
  position: absolute;
  left: 50%;
  top:50%;
  width: 2.625em;
  height:2.625em;
  background:url("http://localhost/goarch/wp-content/uploads/2025/05/zoom.png") 0 0 no-repeat;
  background-size: cover;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.project figure:hover:after{
  opacity: 0;
}

.project figure:hover img{
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
}

.project figure:hover .project-title{
  top:30px;
  opacity: 0;
}

.project figure:hover .project-category{
  opacity: 0;
  letter-spacing: 2em;
}

.project figure:hover .project-zoom{
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform:scale(1);
  -o-transform:scale(1);
  transform:scale(1);
}



/* 1.1 Carousel */



.owl-prev,
.owl-next{
  position: absolute;
  top:50%;
  font-family: 'Oswald', sans-serif;
  font-size:1em;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: #fff;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0.7;
}

.owl-prev:hover,
.owl-next:hover{
  opacity: 1;
}

.owl-prev{
  left: 0.8em;
  padding-left: 35px;
  background:url(../img/img-icon/prev.png) left 50% no-repeat;
  background-size: 1.3em 1em;
  
}

.owl-next{
  left: auto;
  right: 0.8em;
  padding-right: 35px;
  background:url(../img/img-icon/next.png) right 50% no-repeat;
  background-size: 1.3em 1em;
}



/* 1.2 Magnific popup */



.mfp-figure{
  box-shadow: none;
}

.mfp-iframe-scaler{
  overflow: visible;
}

.mfp-image-holder .mfp-close, 
.mfp-iframe-holder .mfp-close{
  padding: 0;
  margin-top: -10px;
  font-family: inherit;
  font-size: 40px;
  font-weight: 300;
  line-height: 0;
}

img.mfp-img{
  min-height: 460px;
}


.mfp-title{
  padding-right: 40px;
  font-size:1.2em;
  line-height: 1.2;
  margin-top: 3px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding-bottom: 10px;
}

.mfp-counter{
  top:5px;
}

.mfp-bg{
  background-color: #141414;
}

.mfp-arrow-left:before, .mfp-arrow-left .mfp-b{
  display: none;
}

.mfp-arrow-right:before, .mfp-arrow-right .mfp-b{
  display: none;
}

.mfp-wrap .mfp-content {
  -webkit-perspective: 1300px;
          perspective: 1300px
}

.mfp-wrap .mfp-figure,
.mfp-wrap .mfp-iframe-scaler {
  opacity: 0;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform:scale(0) rotateY(60deg);
  -o-transform:scale(0) rotateY(60deg);
  transform:scale(0) rotateY(60deg);
}

.mfp-bg {
  opacity: 0;
  -webkit-transition: .5s;
       -o-transition: .5s;
          transition: .5s;
}

.mfp-wrap .mfp-figure,
.mfp-wrap .mfp-iframe-scaler {
  opacity: 0;
  -webkit-transition: .3s ease-in-out;
       -o-transition: .3s ease-in-out;
          transition: .3s ease-in-out;
  -webkit-transform: rotateY(-60deg);
      -ms-transform: rotateY(-60deg);
       -o-transform: rotateY(-60deg);
          transform: rotateY(-60deg);
}

.mfp-bg {
  opacity: 0;
  -webkit-transition: .5s;
       -o-transition: .5s;
          transition: .5s;
}

.mfp-wrap.mfp-ready .mfp-figure,
.mfp-wrap.mfp-ready .mfp-iframe-scaler {
  opacity: 1;
  -webkit-transform:rotateX(0);
      -ms-transform:rotateX(0);
       -o-transform:rotateX(0);
          transform:rotateX(0);
}

.mfp-ready.mfp-bg {
  opacity: 0.8;
}

.mfp-wrap.mfp-removing .mfp-figure ,
.mfp-wrap.mfp-removing .mfp-iframe-scaler {
  opacity: 0;
  -webkit-transform: rotateX(-60deg);
      -ms-transform: rotateX(-60deg);
       -o-transform: rotateX(-60deg);
          transform: rotateX(-60deg);
  
}

.mfp-zoom-out-cur, 
.mfp-zoom-out-cur 
.mfp-image-holder .mfp-close{
  cursor:url(../img/zoom-out.cur), zoom-out;
}

.mfp-removing.mfp-bg {
  opacity: 0;
}



/* 1.3 Project Details */



.project-title-info{
  font-family: 'Montserrat', sans-serif;
  font-weight: bold;
  font-size: 2vmin;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-top: 2.2em;
  margin-left: -1.8em;
}

.project-title-info .project-info-item{
  display: inline-block;
  margin-left: 1.8em;
}

.project-details-item{
  position: relative;
}

.project-details-img{
  position: relative;
  padding: 0;
}

.project-details-info{
  background-color: #c5a47e;
  padding: 4.8em 3.1em 4.8em;
  color:#fff;
}

.project-details-title{
  position: relative;
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  font-size: 1.9em;
  line-height: 1.5;
  text-transform: uppercase;
  color: #fff;
  margin: 0 0 0.7em;
}

.project-details-title:before{
  content: '';
  position: absolute;
  bottom: -0.35em;
  width: 10em;
  border-top: 1px solid #ededed;
  left: -4.4em;
  width: 5.5em;
}

.project-details-descr{
  font-size: 1.1em;
  line-height: 1.62;
}

.project-details-descr p:last-child{
  margin-bottom: 0;
}

.project-details-item:nth-child(even) .project-details-info{
  right:0;
  left: auto;
  top:13%;
  background-color: #212121;
}







/* ------------------------------------------------------------------------------- */
/*  2. Responsive styles
/* ------------------------------------------------------------------------------- */



/* 2.1 Min width 768px */



@media (min-width: 768px){



  html{
    font-size: 85%;
  }



  /* Slider */



  .arrow-left{
    top: 43.5vmin;
    bottom: auto;
  }

  .arrow-right{
    left: 28vmin;
    right: auto;
    margin-left: 5em;
    top: 43.5vmin;
    bottom: auto;
  }



  /* About */



  .entry{
    padding: 0 7.5em;
  }

  .col-about-spec{
    padding: 0 4.4em;
  }



  /* Project Carousel */



  .owl-prev{
    left: 3.6em
  }

  .owl-next{
    right:3.6em;
  }



  /* Projects Deatails */



  .project-details{
    margin-top: 7.1em;
  }


  .project-details-item{
    margin-bottom: 7.1em;
  }

 .project-details-info{
    position: absolute;
    z-index: 1;
    left: 0;
    top:13%;
    bottom: 13%;
    width: 55%;
  }

  .project-details-item:nth-child(odd) .project-details-img{
    padding-left: 15px;
    padding-right: 15px;
  }

  .project-details-item:nth-child(even) .project-details-img{
    padding-right:15px;
    padding-left: 15px;
  }

}



/* 2.2 Min width 992px */



@media (min-width: 992px){



  html{
    font-size: 92%;
  }



  /* Content styles */



  .text-center-md{
    text-align: center;
  }

  .text-right-md{
    text-align: right;
  }

  .text-left-md{
    text-align: left;
  }



  /* Navbar Mobile */


  .navbar-mobile{
    position: absolute;
    left: -50000px;
    top: -50000px;
  }



  /* About */



  .col-about-img{
    padding-left: 0;
    left: -5px;
  }

  .col-about-img img{
    max-width: calc(100% + 5px);
  }



  /* Project Details */



  .project-details-item:nth-child(odd) .project-details-img{
    padding-left: 5px;
    padding-right: 15px;
  }

  .project-details-item:nth-child(even) .project-details-img{
    padding-right:5px;
    padding-left: 15px;
  }



  /* Blog Details */


  
  .col-primary{
    padding-right: 2.2em;
  }

  .col-secondary{
    margin-top: 10.62em;
    margin-left: -5px;
    padding:0 10px 0 0;
  }



  /* Contacts */


  .row-field{
    margin-left: -15px;
  }

  .col-map{
    position:static;
    height: 100%;
  }
}


/* 2.3 Min width 1200px */



@media (min-width: 1200px){


   html{
    font-size: 100%;
  }



   /* Header */



  .main-header{
    padding-left: 0;
  }



  /* Project Details */


  .project-details-info{
    width: 44% !important;
  }

}



/* 2.4 Max height 480px  */



  @media (max-height: 480px){



  /* Slider */



  .arrow-left{
    top: 43.5vmin;
    bottom: auto;
  }

  .arrow-right{
    left: 28vmin;
    right:auto;
    margin-left: 5em;
    top: 43.5vmin;
    bottom: auto;
  }




}


  @media (min-width: 992px) {
    .col-md-offset-4 {
        margin-left: 33.33333333% !important;
    }
}


/* ─────────────────────────────────────────────────────────────
   Demo 2 – Residential Gallery Card
───────────────────────────────────────────────────────────── */

/* Section background — dark green */
.residential-gallery-wrap {
    background: #1a3a2c;
    padding: 40px 30px 60px;
}

/* Grid */
.projects-grid.demo2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    max-width: 1200px;
    margin: 0 auto;
}
.projects-grid.demo2.columns-1 { grid-template-columns: 1fr; }
.projects-grid.demo2.columns-2 { grid-template-columns: repeat(2, 1fr); }
.projects-grid.demo2.columns-3 { grid-template-columns: repeat(3, 1fr); }

/* Card shell */
.projects-grid.demo2 .card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(255,255,255,0.18);
    transition: transform 0.25s, box-shadow 0.25s;
}
.projects-grid.demo2 .card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(0,0,0,0.35);
}

/* Card header — title left, category right */
.projects-grid.demo2 .card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px 8px;
    gap: 8px;
    background: #fff;
}
.projects-grid.demo2 .card-title {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #1a3a2c;
    line-height: 1.3;
}
.projects-grid.demo2 .card-title a {
    color: inherit;
    text-decoration: none;
}
.projects-grid.demo2 .card-title a:hover {
    text-decoration: underline;
    opacity: 0.75;
}
.projects-grid.demo2 .card-meta {
    font-size: 0.68rem;
    font-style: italic;
    color: #1a3a2c;
    white-space: nowrap;
    font-weight: 500;
}

/* 3-image mosaic — flush to card edges */
.projects-grid.demo2 .gallery {
    display: flex;
    gap: 4px;
    flex: 1;
    height: 210px;
    position: relative;
    overflow: hidden;
}

/* Left: large image */
.projects-grid.demo2 .gallery .left {
    flex: 0 0 55%;
    overflow: hidden;
}
.projects-grid.demo2 .gallery .left a {
    display: block;
    width: 100%;
    height: 100%;
}
.projects-grid.demo2 .gallery .left img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

/* Right column: two stacked images */
.projects-grid.demo2 .gallery .right {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.projects-grid.demo2 .gallery .right .top {
    flex: 0 0 38%;
    overflow: hidden;
}
.projects-grid.demo2 .gallery .right .bottom {
    flex: 1;
    overflow: hidden;
}
.projects-grid.demo2 .gallery .right .top a,
.projects-grid.demo2 .gallery .right .bottom a {
    display: block;
    width: 100%;
    height: 100%;
}
.projects-grid.demo2 .gallery .right .top img,
.projects-grid.demo2 .gallery .right .bottom img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

/* Subtle zoom on hover */
.projects-grid.demo2 .card:hover .gallery img {
    transform: scale(1.05);
}

/* Open Album overlay — appears on hover */
.projects-grid.demo2 .gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 18px;
    background: linear-gradient(to top, rgba(0,0,0,0.35) 0%, transparent 55%);
    opacity: 0;
    transition: opacity 0.3s;
    z-index: 3;
    pointer-events: none;
}
.projects-grid.demo2 .card:hover .gallery-overlay {
    opacity: 1;
    pointer-events: auto;
}
.projects-grid.demo2 .open-album-btn {
    display: inline-block;
    padding: 7px 18px;
    background: #c5922a;
    color: #fff;
    border-radius: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background 0.2s;
}
.projects-grid.demo2 .open-album-btn:hover {
    background: #a87820;
    color: #fff;
}

/* Responsive */
@media (max-width: 767px) {
    .residential-gallery-wrap {
        padding: 24px 16px 40px;
    }
    .projects-grid.demo2,
    .projects-grid.demo2.columns-2,
    .projects-grid.demo2.columns-3 {
        grid-template-columns: 1fr;
    }
    .projects-grid.demo2 .gallery {
        height: 200px;
    }
}


