/* style.css */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Poppins', sans-serif;
  background:#dac6e5;
  overflow-x:hidden;
}

/* NAVBAR */

.custom-navbar{
  background:#dac6e5;
  padding:16px 0;
}

.navbar-brand{
  font-size:40px;
  font-weight:700;
  color:#000;
}

.nav-link{
  color:#000;
  margin:0 12px;
  font-weight:500;
  transition:0.3s;
}

.nav-link:hover{
  color:#7c3aed;
}

.social-icons i{
  margin-left:18px;
  font-size:18px;
  cursor:pointer;
}

/*********/
.logo-size {
    width: 100px;
    height: 100px;
    object-fit: contain;
    margin-right: 10px;
  
}

.aura-heading {
    font-size: 22px;
    font-weight: 700;
    color: #000;
    margin: 0;
    letter-spacing: 2px;
}

.production-heading{
  font-weight: 500;
}

.tag-line {
    font-size: 12px;
    color: #444;
    margin: 0;
    letter-spacing: 3px;
    font-weight: 500;
}

.navbar-brand {
    text-decoration: none;
}
/********/
.call-btn{
  background:#8b5cf6;
  color:#fff;
  padding:12px 28px;
  border:none;
  font-weight:600;
  transition:0.3s ease;
  text-decoration:none;

  display:flex;
  align-items:center;
  gap:10px;

  border-radius:8px;
}

.call-btn:hover{
  background:#6d28d9;
  color:white;
  transform:translateY(-2px);
}

.call-btn i{
  font-size:15px;
}


@media(max-width:991px){

  .custom-navbar .container{
    display:flex;
    align-items:center;
    justify-content:space-between;
  }

  .navbar-toggler{
    margin-left:auto;
    border:none;
    box-shadow:none !important;
  }

  .navbar-collapse{
    background:#E7D1EF;
    padding:25px;
    border-radius:14px;
    margin-top:20px;
  }

  .navbar-nav{
    gap:10px;
  }

  .nav-link{
    padding:10px 0;
  }

}
/*************/

/* HERO SECTION */

.hero-section{
    position: relative;
    height: 100vh;
    overflow: hidden;

    display: flex;
    align-items: center;

    z-index: 1;
}

.bg-video{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}

.hero-overlay{
    position: absolute;
    inset: 0;
    background: rgba(49,11,77,0.70);
    z-index: -1;
}

.hero-content{
    color: white;
    max-width: 700px;
    position: relative;
    z-index: 2;
    margin-top: 70px;
}

.small-title{
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    font-weight: 500;
}

.small-line{
    width: 40px;
    height: 1px;
    background: currentColor;
    margin-right: 15px;
}

.hero-title{
    font-family: 'Playfair Display', serif;
    font-size: 50px;
    line-height: 1.1;
    font-weight: 700;
    margin-bottom: 40px;
}

.hero-buttons{
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

/* BUTTONS */

.btn-purple{
    background: #8b5cf6;
    color: white;
    border: none;
    padding: 16px 32px;
    font-weight: 600;
    transition: 0.3s;
}

.btn-purple:hover{
    background: #6d28d9;
}

.btn-light-custom{
    background: white;
    color: black;
    border: none;
    padding: 16px 32px;
    font-weight: 600;
    transition: 0.3s;
}

.btn-light-custom:hover{
    background: #f1f1f1;
}

/* COMMON SECTION */

.about-section,
.decor-section,
.work-section,
.contact-section{
    padding: 100px 0;
    position: relative;
    background:  rgb(228, 205, 238);
    z-index: 2;
}

.small-heading{
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.small-heading span{
    font-size: 14px;
    font-weight: 600;
}

/* ABOUT */

*{
      margin:0;
      padding:0;
      box-sizing:border-box;
      font-family:'Poppins', sans-serif;
    }

    body{
      background:#E4CDEE;
    }

    /* ABOUT SECTION */

    .about-section{
      padding:100px 0;
      background:#E4CDEE;
    }

    .small-heading{
      display:flex;
      align-items:center;
      margin-bottom:40px;
    }

    .small-line{
      width:40px;
      height:1px;
      background:black;
      margin-right:15px;
    }

    .small-heading span{
      font-size:14px;
      font-weight:500;
      letter-spacing:1px;
    }

    .about-title{
      font-family:'Playfair Display', serif;
      font-size:58px;
      line-height:1.1;
      font-weight:700;
      color:black;
    }

    .about-text{
      font-size:18px;
      line-height:1.9;
      color:#222;
      margin-top:20px;
    }

    /* RESPONSIVE */

    @media screen and (max-width:992px){

      .about-title{
        font-size:58px;
      }

    }

    @media screen and (max-width:768px){

      .about-section{
        padding:70px 0;
      }

      .about-title{
        font-size:42px;
      }

      .about-text{
        font-size:17px;
        margin-top:30px;
      }

    }


    /**********/
.mission-section {
  background: #e4cdee;
  padding: 24px 0 40px;
}

.small-heading {
  display: flex;
  align-items: center;
  margin-bottom: 18px;
}

.small-line {
  width: 24px;
  height: 1px;
  background: #000;
  margin-right: 10px;
}

.small-heading span {
  font-size: 12px;
  font-weight: 600;
  color: #000;
}

.mission-title {
  font-family: 'Playfair Display', serif;
  font-size: 58px;
  line-height: 1.05;
  font-weight: 700;
  color: #000;
  margin: 0;
}

.mission-text {
  font-size: 18px;
  line-height: 1.7;
  color: #111;
  max-width: 540px;
  margin: 0 0 30px;
}

.mission-buttons {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.btn-purple,
.btn-light-custom {
  display: inline-block;
  padding: 16px 28px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  transition: 0.3s ease;
}

.btn-purple {
  background: #8b5cf6;
  color: #000;
}

.btn-purple:hover {
  background: #7c3aed;
  color: #000;
}

.btn-light-custom {
  background: #f2e5f8;
  color: #000;
}

.btn-light-custom:hover {
  background: #e9d6f2;
  color: #000;
}

@media (max-width: 991px) {
  .mission-title {
    font-size: 44px;
    margin-bottom: 24px;
  }

  .mission-text {
    max-width: 100%;
  }
}

@media (max-width: 576px) {
  .mission-section {
    padding: 20px 0 30px;
  }

  .mission-title {
    font-size: 34px;
  }

  .btn-purple,
  .btn-light-custom {
    width: 100%;
    text-align: center;
  }

  .mission-buttons {
    flex-direction: column;
  }
}
    /******************/


/****ABOUT GALLERY*****/
.features-section{
    background:#E4CDEE;
    padding:80px 0;
}

.feature-card{
    transition:0.3s;
}

.feature-img{
    width:100%;
    height:300px;
    object-fit:cover;
    margin-bottom:18px;
}

.feature-title{
    font-size:24px;
    font-weight:700;
    color:#000;
    margin-bottom:10px;
}

.feature-text{
    font-size:15px;
    line-height:1.8;
    color:#222;
}

.feature-card:hover{
    transform:translateY(-6px);
}

/* RESPONSIVE */

@media screen and (max-width:768px){

    .feature-img{
        height:240px;
    }

    .feature-title{
        font-size:22px;
    }

}
/**********************************/


/*******VALUE SECTION*******/
.values-section{
    background:#E4CDEE;
    padding:90px 0;
}

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:40px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

.values-content{
    max-width:900px;
}

.values-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:40px;
}

.values-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:900px;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .values-title{
        font-size:56px;
    }

    .values-text{
        font-size:19px;
    }

}

@media screen and (max-width:768px){

    .values-section{
        padding:70px 0;
    }

    .values-title{
        font-size:42px;
    }

    .values-text{
        font-size:17px;
        line-height:1.7;
    }

}
/*******************/

/*******FOUNDATION*******/
.foundation-section{
    background:#E4CDEE;
    padding:90px 0;
}

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:40px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

.foundation-content{
    max-width:1000px;
}

.foundation-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:40px;
}

.foundation-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:900px;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .foundation-title{
        font-size:56px;
    }

    .foundation-text{
        font-size:19px;
    }

}

@media screen and (max-width:768px){

    .foundation-section{
        padding:70px 0;
    }

    .foundation-title{
        font-size:42px;
    }

    .foundation-text{
        font-size:17px;
        line-height:1.7;
    }

}
/**********************/


/* SERVICES */



/******OUR SERVICE******/
.services-section{
    background:#E4CDEE;
    padding:90px 0;
}

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:40px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

.services-content{
    max-width:1000px;
}

.services-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:40px;
}

.services-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:900px;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .services-title{
        font-size:56px;
    }

    .services-text{
        font-size:19px;
    }

}

@media screen and (max-width:768px){

    .services-section{
        padding:70px 0;
    }

    .services-title{
        font-size:42px;
    }

    .services-text{
        font-size:17px;
        line-height:1.7;
    }

}
/**************************/


/****Dream Event ****/
.event-services-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:25px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
}

/* TOP CONTENT */

.event-services-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
}

.event-services-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:500px;
    margin-bottom:30px;
}

/* BUTTONS */

.event-buttons{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.btn-purple,
.btn-light-custom{
    padding:14px 28px;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:0.3s;
}

.btn-purple{
    background:#8b5cf6;
    color:#000;
}

.btn-purple:hover{
    background:#7c3aed;
    color:#000;
}

.btn-light-custom{
    background:#f3e8ff;
    color:#000;
}

.btn-light-custom:hover{
    background:#ead5ff;
    color:#000;
}

/* SERVICE CARDS */

.service-card{
    transition:0.3s;
}

.service-card:hover{
    transform:translateY(-6px);
}

.service-img{
    width:100%;
    height:270px;
    object-fit:cover;
    margin-bottom:18px;
}

.service-title{
    font-size:28px;
    font-weight:700;
    margin-bottom:10px;
    color:#000;
}

.service-text{
    font-size:15px;
    line-height:1.8;
    color:#222;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .event-services-title{
        font-size:52px;
        margin-bottom:30px;
    }

}

@media screen and (max-width:768px){

    .event-services-section{
        padding:70px 0;
    }

    .event-services-title{
        font-size:40px;
    }

    .service-img{
        height:240px;
    }

    .service-title{
        font-size:24px;
    }

}
/*******************/


/**** Event Lights***/
.lighting-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:25px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
}

/* TOP CONTENT */

.lighting-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
}

.lighting-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:520px;
    margin-bottom:30px;
}

/* BUTTON */

.lighting-buttons{
    display:flex;
    flex-wrap:wrap;
}

.btn-purple{
    background:#8b5cf6;
    color:#000;
    padding:14px 28px;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:0.3s;
}

.btn-purple:hover{
    background:#7c3aed;
    color:#000;
}

/* CARDS */

.lighting-card{
    transition:0.3s;
}

.lighting-card:hover{
    transform:translateY(-6px);
}

.lighting-img{
    width:100%;
    height:270px;
    object-fit:cover;
    margin-bottom:18px;
}

.lighting-card-title{
    font-size:28px;
    font-weight:700;
    margin-bottom:10px;
    color:#000;
}

.lighting-card-text{
    font-size:15px;
    line-height:1.8;
    color:#222;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .lighting-title{
        font-size:52px;
        margin-bottom:30px;
    }

}

@media screen and (max-width:768px){

    .lighting-section{
        padding:70px 0;
    }

    .lighting-title{
        font-size:40px;
    }

    .lighting-img{
        height:240px;
    }

    .lighting-card-title{
        font-size:24px;
    }

}
/*********************/

/***********Decorate with Flowers********/

.floral-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:25px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
}

/* TOP CONTENT */

.floral-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
}

.floral-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:520px;
    margin-bottom:30px;
}

/* BUTTONS */

.floral-buttons{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.btn-purple,
.btn-light-custom{
    padding:14px 28px;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:0.3s;
}

.btn-purple{
    background:#8b5cf6;
    color:#000;
}

.btn-purple:hover{
    background:#7c3aed;
    color:#000;
}

.btn-light-custom{
    background:#f3e8ff;
    color:#000;
}

.btn-light-custom:hover{
    background:#ead5ff;
    color:#000;
}

/* CARDS */

.floral-card{
    transition:0.3s;
}

.floral-card:hover{
    transform:translateY(-6px);
}

.floral-img{
    width:100%;
    height:270px;
    object-fit:cover;
    margin-bottom:18px;
}

.floral-card-title{
    font-size:28px;
    font-weight:700;
    margin-bottom:10px;
    color:#000;
}

.floral-card-text{
    font-size:15px;
    line-height:1.8;
    color:#222;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .floral-title{
        font-size:52px;
        margin-bottom:30px;
    }

}

@media screen and (max-width:768px){

    .floral-section{
        padding:70px 0;
    }

    .floral-title{
        font-size:40px;
    }

    .floral-img{
        height:240px;
    }

    .floral-card-title{
        font-size:24px;
    }

}
/*************************/


/***********Perfect Venue****/
.venue-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:30px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

/* CONTENT */

.venue-content{
    max-width:1000px;
}

.venue-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:35px;
}

.venue-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:850px;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .venue-title{
        font-size:56px;
    }

    .venue-text{
        font-size:18px;
    }

}

@media screen and (max-width:768px){

    .venue-section{
        padding:70px 0;
    }

    .venue-title{
        font-size:42px;
    }

    .venue-text{
        font-size:16px;
        line-height:1.7;
    }

}

/**********************************/


/******Decoration***************/
.catering-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:30px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

/* CONTENT */

.catering-content{
    max-width:900px;
    margin:auto;
    text-align:center;
}

.catering-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:35px;
}

.catering-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:850px;
    margin:auto;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .catering-title{
        font-size:56px;
    }

    .catering-text{
        font-size:18px;
    }

}

@media screen and (max-width:768px){

    .catering-section{
        padding:70px 0;
    }

    .catering-title{
        font-size:42px;
    }

    .catering-text{
        font-size:16px;
        line-height:1.7;
    }

}
/************************************/

/****************Entertainment****/
.entertainment-section{
    background:#E4CDEE;
    padding:90px 0;
}

/* SMALL HEADING */

.small-heading{
    display:flex;
    align-items:center;
    margin-bottom:30px;
}

.small-line{
    width:40px;
    height:1px;
    background:#000;
    margin-right:14px;
}

.small-heading span{
    font-size:14px;
    font-weight:500;
    color:#000;
}

/* CONTENT */

.entertainment-content{
    max-width:1000px;
}

.entertainment-title{
    font-family:'Playfair Display', serif;
    font-size:52px;
    line-height:1.1;
    font-weight:700;
    color:#000;
    margin-bottom:35px;
}

.entertainment-text{
    font-size:18px;
    line-height:1.8;
    color:#111;
    max-width:850px;
}

/* RESPONSIVE */

@media screen and (max-width:992px){

    .entertainment-title{
        font-size:56px;
    }

    .entertainment-text{
        font-size:18px;
    }

}

@media screen and (max-width:768px){

    .entertainment-section{
        padding:70px 0;
    }

    .entertainment-title{
        font-size:42px;
    }

    .entertainment-text{
        font-size:16px;
        line-height:1.7;
    }

}
/************************/
/* GALLERY SECTION */

.work-title{
  font-family:'Playfair Display', serif;
  font-size:52px;
  line-height:1.1;
  margin-bottom:25px;
}

.work-text{
  font-size:18px;
}

.gallery-card{
  overflow:hidden;
}

.gallery-card img{
  width:100%;
  height:350px;
  object-fit:cover;
  transition:0.4s;
}

.gallery-card:hover img{
  transform:scale(1.05);
}

/* CONTACT */

/* =========================
   CONTACT SECTION
========================= */

.contact-section{
  background:#e7d1ef;
  padding:100px 0;
  overflow:hidden;
}

.contact-title{
  font-family:'Playfair Display', serif;
  font-size:52px;
  line-height:1.15;
  margin-bottom:30px;
  color:#1f1b2d;
  font-weight:700;
}

.contact-text{
  font-size:18px;
  line-height:1.9;
  color:#4d445c;
  max-width:540px;
}

/* =========================
   SMALL HEADING
========================= */

.small-heading{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:25px;
}

.small-line{
  width:38px;
  height:1.5px;
  background:#1f1b2d;
}

.small-heading span{
  font-size:13px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#1f1b2d;
  font-weight:600;
}

/* =========================
   WHATSAPP FORM
========================= */

.whatsapp-form{
  background:#faf5ff;
  padding:45px;
  border-radius:22px;
  box-shadow:0 15px 40px rgba(0,0,0,0.08);
  border:1px solid #eadcf3;
  position:relative;
}

.form-title{
  font-family:'Playfair Display', serif;
  font-size:40px;
  margin-bottom:32px;
  color:#1f1b2d;
  font-weight:700;
}

/* =========================
   FORM INPUTS
========================= */

.form-control{
  height:60px;
  border-radius:12px;
  padding:0 20px;
  border:1px solid #d8c5df;
  background:#ffffff;
  box-shadow:none !important;
  font-size:16px;
  color:#1f1b2d;
  transition:all 0.3s ease;
}

.form-control::placeholder{
  color:#7b7188;
  font-size:15px;
}

.form-control:focus{
  border-color:#25D366;
  background:#fff;
  transform:translateY(-1px);
}

textarea.form-control{
  height:140px;
  padding-top:18px;
  resize:none;
}

/* =========================
   WHATSAPP BUTTON
========================= */

.whatsapp-btn{
  width:100%;
  background:#25D366;
  color:#ffffff;
  border:none;
  padding:17px;
  font-size:17px;
  font-weight:600;
  border-radius:12px;
  transition:all 0.3s ease;
  letter-spacing:0.3px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.whatsapp-btn i{
  font-size:20px;
}

.whatsapp-btn:hover{
  background:#1ebe5d;
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(37,211,102,0.28);
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:991px){

  .contact-section{
    padding:70px 0;
  }

  .contact-title{
    font-size:42px;
  }

  .form-title{
    font-size:34px;
  }

}

@media (max-width:576px){

  .contact-title{
    font-size:34px;
  }

  .contact-text{
    font-size:16px;
  }

  .whatsapp-form{
    padding:30px 24px;
  }

  .form-title{
    font-size:30px;
  }

  .form-control{
    height:56px;
  }

}
/* FOOTER */

.footer-section{
  padding:30px 0;
}

.footer-line{
  border:none;
  border-top:1px solid rgba(0,0,0,0.2);
  margin-bottom:25px;
}

.footer-content{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
}

.footer-content p{
  margin:0;
  font-size:14px;
}

.footer-social{
  display:flex;
  gap:18px;
}

.footer-social i{
  font-size:18px;
  cursor:pointer;
  transition:0.3s;
}

.footer-social i:hover{
  color:#7b2cbf;
}

/* RESPONSIVE */

@media(max-width:991px){

  .hero-title,
  .about-title,
  .decor-title,
  .work-title,
  .contact-title{
    font-size:55px;
  }

  .navbar-brand{
    font-size:30px;
  }

}

@media(max-width:768px){

  .hero-section{
    height:auto;
    padding:120px 0;
  }

  .hero-title,
  .about-title,
  .decor-title,
  .work-title,
  .contact-title{
    font-size:42px;
  }

  .about-section,
  .decor-section,
  .work-section,
  .contact-section{
    padding:70px 0;
  }

  .footer-content{
    flex-direction:column;
    text-align:center;
  }

}

@media(max-width:500px){

  .hero-title,
  .about-title,
  .decor-title,
  .work-title,
  .contact-title{
    font-size:34px;
  }

  .btn-purple,
  .btn-light-custom{
    width:100%;
  }

  .whatsapp-form{
    padding:25px;
  }

}







*{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    body{
      font-family:'Poppins', sans-serif;
      background:#f5f5f5;
    }

    /* MAP */

    .map-section iframe{
      width:100%;
      height:250px;
      border:0;
      display:block;
    }

/* =========================
   FOOTER
========================= */

.footer{
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:60px;
  background:#E7D1EF;
  padding:70px 80px;
  align-items:start;
  overflow:hidden;
}

/* =========================
   COMMON
========================= */

.footer-box{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

/* =========================
   LOGO SECTION
========================= */

.footer-logo{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

.footer-logo img{
  width:80px;
  height:80px;
  object-fit:contain;
}

.footer-brand{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.footer-brand h1{
  font-size:34px;
  font-weight:700;
  margin:0;
  color:#111;
  letter-spacing:2px;
  line-height:1.2;
  word-break:break-word;
}

.footer-brand span{
  font-weight:400;
}

.footer-tagline{
  font-size:12px;
  letter-spacing:4px;
  margin-top:6px;
  color:#444;
  font-weight:500;
  line-height:1.6;
}

/* =========================
   TITLES
========================= */

.footer-title{
  font-size:28px;
  font-weight:700;
  margin-bottom:24px;
  font-family:'Playfair Display', serif;
  color:#111;
}

/* =========================
   QUICK LINKS
========================= */

.quick-links ul{
  list-style:none;
  padding:0;
  margin:0;
}

.quick-links ul li{
  margin-bottom:14px;
}

.quick-links ul li a{
  text-decoration:none;
  color:#111;
  font-size:17px;
  transition:0.3s ease;
}

.quick-links ul li a:hover{
  color:#7b2cbf;
  padding-left:4px;
}

/* =========================
   CONTACT
========================= */

.contact-box{
  text-align:left;
}

.contact-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:22px;
  flex-wrap:wrap;
}

.contact-item i{
  font-size:24px;
  color:#111;
  margin-top:2px;
}

.contact-item p{
  margin:0;
  font-size:17px;
  color:#222;
  line-height:1.7;
  word-break:break-word;
}

/* =========================
   COPYRIGHT
========================= */

.copyright{
  background:#1f1f1f;
  color:white;
  text-align:center;
  padding:14px 20px;
  font-size:14px;
  line-height:1.7;
}

.copyright-link{
  color:white;
  text-decoration:none;
  transition:0.3s ease;
  font-weight:500;
}

.copyright-link:hover{
  color:#c084fc;
}

/* =========================
   TABLET
========================= */

@media(max-width:991px){

  .footer{
    grid-template-columns:1fr 1fr;
    gap:45px;
    padding:60px 40px;
  }

}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

  .footer{
    grid-template-columns:1fr;
    gap:40px;
    padding:50px 25px;
    text-align:center;
  }

  .footer-box{
    align-items:center;
  }

  .footer-logo{
    flex-direction:column;
    justify-content:center;
    text-align:center;
  }

  .footer-brand h1{
    font-size:26px;
  }

  .footer-tagline{
    font-size:11px;
    letter-spacing:3px;
  }

  .footer-title{
    font-size:24px;
    margin-bottom:20px;
  }

  .quick-links ul li a{
    font-size:16px;
  }

  .contact-box{
    text-align:center;
  }

  .contact-item{
    justify-content:center;
  }

  .contact-item p{
    font-size:15px;
  }

  .copyright{
    font-size:12px;
    padding:16px;
  }

}

/* =========================
   EXTRA SMALL DEVICES
========================= */

@media(max-width:480px){

  .footer{
    padding:40px 18px;
  }

  .footer-brand h1{
    font-size:22px;
    letter-spacing:1px;
  }

  .footer-tagline{
    letter-spacing:2px;
  }

  .footer-title{
    font-size:22px;
  }

}





  /* MAP SECTION */

.map-section{
  background:rgb(231, 209, 239);
  padding-top:40px;
}

/* MAP WRAPPER */

.map-wrapper{
  position:relative;
  width:100%;
  height:320px;
  overflow:hidden;
}

/* MAP */

.map-wrapper iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
  transition:0.5s ease;
}

/* INVERTED SEMI CIRCLE */

.map-wrapper::after{
  content:"";

  position:absolute;

  left:-5%;
  bottom:-120px;

  width:110%;
  height:180px;

  background:rgb(231, 209, 239);

  border-radius:50%;
  z-index:2;
}

/* HOVER EFFECT */

.map-wrapper:hover iframe{
  transform:scale(1.05);
  filter:brightness(65%);
}

/* OVERLAY */

.map-overlay{
  position:absolute;
  inset:0;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  background:rgba(0,0,0,0.35);

  color:white;

  opacity:0;
  transition:0.4s ease;

  z-index:1;

  pointer-events:none;
}

/* SHOW OVERLAY */

.map-wrapper:hover .map-overlay{
  opacity:1;
}

/* TEXT */

.map-overlay h2{
  font-size:42px;
  font-weight:700;
  margin-bottom:10px;
}

.map-overlay p{
  font-size:18px;
}

/* MOBILE */

@media(max-width:768px){

  .map-wrapper{
    height:240px;
  }

  .map-wrapper::after{
    height:120px;
    bottom:-80px;
  }

  .map-overlay h2{
    font-size:28px;
  }

}


/***Mobile Responsive background width fix *******/
html,
body{
  overflow-x:hidden;
  width:100%;
}

*{
  max-width:100%;
}

.footer{
  overflow:hidden;
}

.container,
.container-fluid{
  padding-left:15px;
  padding-right:15px;
}