/* Base Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
/* width */
::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 15px #D96D2C; 
  border-radius: 10px;
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: #834d94; 
  border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #0e777d; 
  cursor: default;
}
@font-face {
  font-family: 'vibes';
  src: url(../fonts/great-vibes/GreatVibes-Regular.ttf);
}
html{
    scroll-behavior: smooth;
    /* cursor: url('../assets/logo.svg'),auto; */
    cursor: none;
}
body {
  font-family: 'Segoe UI', sans-serif;
  /* font-family: 'Playfiar Display',serif; */
  /* background: #fff; */
  background: #EDD7C7;
  color: #333;
  line-height: 1.6;
  position: relative;
  overflow-x: hidden;
}
.page{
  width: 100%;
  height: 100%;
  position: relative;
}
.big{
  width: 50px;
  height: 50px;
  /* background-color: rgba(255,255,255,.5); */
  border-radius: 50%; 
  position: fixed;
  z-index: 12;
  /* transition: .1s ease; */
  /* opacity: .5; */
  pointer-events: none;
  
}
/* .big::before{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: white;
  opacity: 0.2;
} */
.big img{
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
  /* object-position: -14px -5px; */
}

h1,h2{
    font-family: "Edu NSW ACT Cursive", cursive;
    font-family: 'vibes',cursive;
    /* font-size: 5rem; */
}
a {
  text-decoration: none;
  color: inherit;
  
}

/* Navigation */
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: .2rem 1rem;
  /* background: #f8c4d4; */
  /* background: #742893; */
  background: #e1e0e0b5;
  background: #DCC6B6ab;
  /* background: #C1AB9Bb5; */
  backdrop-filter: blur(20px);
  position: sticky;
  top: 0;
  left:0;
  width: 100%;
  z-index: 100;
  cursor: default;
}
.whatsapp{
  width: 180px!important;
}
.logo {
    width: 90px;
    height: 90px;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.2;
  position: relative;
  margin-left:15%;
}

.logo img {
  position: absolute;
  width: 100%;
  height: 100%;
  top:0;
  left:0;
}

.nav-links {
  list-style: none;
  display: flex;
  gap: 1.5rem;
  margin-right: 15%;
}

.nav-links a {
  font-weight: 500;
  transition: color 0.3s ease;
  /* color:white; */
  /* font-family: "Playfair Display", serif; */
}

.nav-links a:hover ,.nav-links a.active{
  color: #e57141;
  
}
.close{
  width: 50px;
  height: 50px;
  
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap:5px;
  position: absolute;
  right:5%;
  display: none;
}
.bar{
  width: 30px;
  height: 3px;
  background: white;
  transition: .2s ease;
}
.close.active .bar:nth-of-type(1){
transform: rotateZ(45deg) translateX(11px);
}
.close.active .bar:nth-of-type(2){
opacity: 0;
}
.close.active .bar:nth-of-type(3){
transform: rotateZ(-45deg) translateX(10px);
}
/* Hero */
.hero {
  /* background: #f8c4d4; */
  text-align: center;
  padding: 6rem 2rem 4rem;
  width: 100%;
  max-width: 100%!important;
  height: 88vh;
  position: relative;
  margin: auto!important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  /* top:15vh; */
}
.hero img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: auto;
    top:0;
    left:0;
    z-index: 0;
    filter:brightness(.6);
}
.hero::after{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #e571411f;
}
.hero-content{
  width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.hero-content h1 {
  font-size: 5rem;
  margin-bottom: 1rem;
  font-weight: 100;
}

.hero-content p {
  font-size: 1.1rem;
  margin-bottom: 2rem;
}

.btn {
  background: #e76e99;
  background: #D96D2C;
  background-color: #834d94;
  color: white;
  padding: 0.75rem 1.5rem;
  border-radius: 30px;
  font-weight: bold;
  transition: background 0.3s;
  border:0;
  
}

form button{
    background: #D96D2B;
    background-color: #834d94;
    color:white;
    padding: 0.75rem 1.5rem;
    border-radius: 30px;
    font-weight: bold;
    transition: background 0.3s;
    border: 0;
}

.btn:hover,form button:hover {
    background: #D96D2B;
    background-color: #0e777d;
  color:white;
  /* cursor: pointer; */
}
/* swiper */
.swiper {
      width: 100%;
      height: 100%;
    }

    .swiper-slide {
      text-align: center;
      font-size: 18px;
      /* background: #444; */
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .swiper-button-next,.swiper-button-prev{
      color:#D96D2C!important;
      top:45%!important;
      cursor: none!important;
    }
/* Sections */
.section {
  padding:2rem;
  max-width: 1100px;
  margin:20px auto;
  min-height: 80vh;
}

.section h2 {
  font-size: 3rem;
  margin: 1rem auto;
  font-weight: 100;
  color:#D96D2C;
}

/* About */
.about-wrapper {
    display: flex;
    width: 100%;
    /* flex-direction: column ; */
    justify-content: space-between;
    align-items: center;
    gap:20px;
    margin:30px auto;
}
.desc-holder{
  display: grid;
  place-items:center;
}
.about-wrapper a{
  margin:25px auto ;
}

.img-holder{
  position: relative;
  margin-top:20px;
}
.img-holder:hover .bg1{
transform: scale(1.05) rotateZ(-5deg);
right:10px;
}
.img-holder:hover .bg2{
transform: scale(1.05) rotateZ(5deg);
right:-15px;
}
.img-holder:hover > img{
  transform: translateY(-10px) rotateZ(5deg);
}
.bg1,.bg2{
  position: absolute;
  width: 100%;
  height: 98%;
  /* top:0; */
  z-index: 0;
  border-radius: 30px;
  transition: .3s ease;
}
.bg1{
  background: #0e777d;
  right:-10px;
  top:-5%;
  
}
.bg2{
  background: #834d94;
  right:10px;
  top:5%;
  
}
#about img{
    width: 350px;
    height: 350px;
    border-radius: 30px;
    background-color: #ccc;
    position: relative;
    margin: auto;
    object-fit: cover;
    z-index: 2;
    transition:all .3s ease;
    /* left:-100px; */
    
}

#about p {
  max-width: 85%;
  font-size: 1.2rem;
  line-height: 1.5;
  margin:10px auto;
  text-align: left;
}

/* Services */
.service-cards {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  margin-top: 2rem;
}

.card {
 display: flex;
    flex-direction: column;
    background: #fff0f5;
    background: #DCC6B6;
    padding: 1.5rem;
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    /* transition: transform 0.2s; */
    justify-content: flex-start;
    align-items: center;
    flex: 1 1 25px;
    text-align: center;
    gap:15px;
    position: relative;
}
.card img{
    width: 80px;
    height: 80px;
    object-fit: contain;
}
/* .card:hover {
  transform: translateY(-5px);
} */

.card h3 {
  margin-bottom: 0.5rem;
  color:#D96D2B;
  /* color: #d05580; */
}

/* Gallery */
#gallery .gallery-wrap img{
  height: 350px;
  width: 400px;
}
.gallery-wrap{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin:20px auto;
}
.gallery-wrap h3{
    font-size: 2rem;
}
.gallery-wrap h4{
    width: 75%;
    line-height: 1.5;
}
.gallery {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 1rem .5rem;
  place-items: center;
  margin:20px auto;
  width: 100%;
display: flex;
justify-content: space-around;
align-items: center;
}


.gallery img {
  width: 250px;
  height: 300px;
  border-radius: 10px;
  /* cursor: pointer; */
  transition: all 0.3s;
  object-fit: cover;
  z-index: 1;
  position: relative;
}

.gallery img:hover {
  transform: scale(1.02);
  /* cursor:
    url('../assets/images/o.png'),auto; */
    /* cursor: pointer; */
}
.overlay:hover >p{
  opacity: 0;
}
.overlay:hover > img{
  filter:brightness(1);
}
.before-hold,.after-hold{
  position: relative;
  width: 60%;
  height: 100%;
  display: grid;
  place-items: center;
  margin: auto;
}
.overlay{
  
  position: relative;
  width: 78%;
  height: 100%;
  /* background-color: #333; */
  left:0;
  /* opacity: 0.2; */
  z-index: 2;
  border-radius: 10px;
  margin: auto;
  display: grid;
  place-items: center;
  
}

.overlay img{
  filter:brightness(.5);
}
.overlay p{
 position: absolute; 
 top:50%;
 left:50%;
 transform: translate(-50%,-50%);
 z-index: 2;
 color:white;
 opacity: 1;
 font-size: 1.5rem;
 text-transform: uppercase;
 /* width: 50%; */
}

/* Testimonials */
#testimonials .gallery{
    grid-template-columns: repeat(2,1fr);
    width: 60%;
}
#testimonials .gallery-wrap{
  margin-top:10%;
}
blockquote {
  background: #ffe3ed;
    background: #EDD7C7;
    padding: 1.25rem;
    border: 2px solid #D96D2B;
    border-left: 5px solid #D96D2B;
    margin-bottom: 1.5rem;
    border-radius: 8px;
    font-style: italic;
    width: 86%;
    margin: auto;
    font-size: 1.2rem;
    
}

/* Contact */
form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 500px;
}
.contact-wrap{
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2,1fr);

}
.policy{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap:5px;
    height: 100%;
    width: 100%;
    margin: auto;
    top:-18%;
    /* text-align: center; */
}
.policy p{
    font-size: .7rem;
}

.address-phone{
   display: flex;
    position: relative;
    justify-content: space-between;
    align-items: center;
    bottom: 5%;
    gap: 40px;
}
.address-phone img{
  width: 50px;
}
.address,.phone{
  display: grid;
  place-items: center;
}
input, textarea {
  padding: 0.75rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 1rem;
}
textarea{
height: 150px;
font-family: sans-serif;
}


/* Footer */
footer {
  background: #EDD7C7;
  background-color: #DCC6B6;
  text-align: center;
  padding: 1rem;
  font-size: 0.9rem;
  color: #444;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;

}
footer .logo{
  margin: auto;
  
}
/* services page */
.service-hero{
  display: flex
;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    justify-content: space-around;
    gap: 20px;
}
.service-hero h2{
  font-size: 5rem;
  text-align: center;
}
.service-hero .service-cards{
  display: grid;
  place-items: center;
  grid-template-columns: repeat(2,1fr);
  width: 100%;
  gap:20px;
}
.service-hero .card{
  /* width: 400px; */
  height: 400px;
  justify-content: center;
  gap:10px; 
  /* align-items: center; */
}
.service-hero .card img{
  width: 100px;
  height: 100px;
}
.service-hero .card h3{
  font-size: 2rem;
}
.service-hero .card p{
  font-size: 1.2rem;
}
.service-hero a{
  margin-top:50px;
  border:none;
}
.service-hero .btn{
  border:0;
  width: 150px;
  padding: 1rem 1.5rem;
}
.work-wrap{
  width: 100%;
  display: flex;
  flex-direction: column;
  gap:20px;
  align-items: center;
  
}
.work{
display: flex;
justify-content: space-between;
width: 80%;
  gap:20px;
  margin: auto;
}
.work img{
  width: 350px;
  height: 350px;
  border-radius: 20px;
  object-fit: cover;
}

.desc{
  display: flex;
  flex-direction: column;
  justify-content:center;
  align-items: center;
  text-align: center;
  width: 100%;
}
.desc h3{
  color:#D96D2C;
  font-size: 2rem;
  text-align: center;
}
.desc p{
  width: 85%;
}
/* Responsive */
@media screen and (min-width:280px) and (max-width:600px) {
  .big{
    display: none;
  }

  .nav-links{
    flex-direction: column;
    height: 100vh;
    width: 100vw;
    position: absolute;
    z-index: 9;
    top:0;
    left:-100% ;
    justify-content: center;
    align-items: center;
    background: #DCC6B6;
    transition: .2s ease;
    font-size: 2rem;
  }
  .nav-links.active{
    left:0;
  }
  .close{
    z-index: 10;
    display: flex;
  }
  .logo{
    z-index: 11!important;
    margin:auto;
    position: relative;
  }
  .section {
    padding:1rem;
  }
  .section h2{
    font-size: 3rem;
    text-align: center;
  }
  .hero-content h1{
    font-size: 3rem!important;
  }
  .about-wrapper{
    flex-direction: column;
  }
  .contact-wrap{
        grid-template-columns: repeat(1, 1fr);
  }
  .policy{
    top:30px;
    gap:20px;
  }
  .address-phone{
    bottom:0;
    flex-direction: column;
  }
  #about img{
    width: 250px;
    height: 250px;
  }
  .gallery{
    grid-template-columns: repeat(1,1fr);
  }
  .swiper .gallery{
    display: flex;
    justify-content: center;
    align-items: center;
    grid-template-columns: repeat(2,1fr);
  }
#gallery .gallery-wrap img{
    width: 160px;
    height: 350px;
  }
  
  .service-hero .service-cards{
    grid-template-columns: 1fr;
  }
  .service-hero .card h3{
    font-size: 1.5rem;
  }
  .work{
    flex-direction: column;
    width: 100%;
  }
  .work img{
    width: 100%;
  }
  .desc{
    order:10;
  }
  form{
    max-width: 100%;
  }
}
@media (max-width: 768px) {
  .nav-links {
    flex-direction: column;
    gap: 1rem;
  }

  .service-cards {
    flex-direction: column;
  }

  .hero-content h1 {
    font-size: 2rem;
  }
}
