
/* *{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

body{
background:#fff;
color:#222;
} */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Arial, sans-serif;
}

img{
width:100%;
display:block;
}

section{
width:100%;
}


/* ===== TOP HEADER ===== */
.top-header {
    width: 100%;
    background: #7a1d1d;
    color: #fff;
    padding: 7px 6vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    flex-wrap: wrap;
}

.top-left{
display:flex;
gap:40px;
align-items:center;
}

.top-left i{
font-size:24px;
margin-right:10px;
}

.top-right{
display:flex;
gap:25px;
}

.top-right i{
font-size:26px;
cursor:pointer;
}

/* ===== MAIN HEADER ===== */
header{
width:100%;
background:#fff;
border-bottom:1px solid #eee;
padding:1px 2vw;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:1000;
}

.logo{
font-size:34px;
font-weight:900;
color:#7a1d1d;
}

.nav{
display:flex;
gap:45px;
}

.nav a{
text-decoration:none;
color:#333;
font-size:18px;
font-weight:600;
}

/* ===== FOOTER ===== */



/* ===== RESET ===== */




/* ===== PAGE BANNER ===== */
.page-banner{
background:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),
url("https://images.unsplash.com/photo-1527529482837-4698179dc6ce");
background-size:cover;
background-position:center;
color:#fff;
padding:60px 20px;
text-align:center;
}

.banner-content h1{
margin:10px 0;
font-size:28px;
}

.breadcrumb{
margin-top:10px;
font-size:14px;
border-top:1px solid rgba(255,255,255,.3);
padding-top:10px;
}

/* ===== CONTACT SECTION ===== */
/* ===== SECTION ===== */
.contact-section{
padding:60px 20px;
background:#fff;
width:100%;
}

/* CONTAINER */

.contact-container{
max-width:1200px;
width:100%;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:start;
}

/* FORM */

.contact-form{
background:#f8f8f8;
padding:30px;
border-radius:14px;
width:100%;
}

.contact-form h2{
color:red;
margin-bottom:20px;
font-size:28px;
}

.contact-form label{
display:block;
margin:14px 0 6px;
font-weight:600;
font-size:14px;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
width:100%;
padding:12px 14px;
border-radius:20px;
border:1px solid #ccc;
outline:none;
font-size:14px;
}

.contact-form textarea{
border-radius:14px;
resize:none;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
border-color:red;
}

/* NAME ROW */

.name-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

/* BUTTON */

.contact-form button{
margin-top:18px;
background:red;
color:#fff;
border:none;
padding:12px 25px;
border-radius:25px;
cursor:pointer;
font-size:15px;
transition:.3s;
}

.contact-form button:hover{
background:#7a1d1d;
}

/* CONTACT INFO */

.contact-info{
padding:20px;
}

.contact-info h2{
color:red;
margin-bottom:10px;
font-size:28px;
}

.contact-info p{
color:#555;
margin-bottom:20px;
line-height:1.6;
}

.info-item{
display:flex;
gap:14px;
margin-bottom:18px;
align-items:flex-start;
flex-wrap:wrap;
}

.info-item i{
font-size:20px;
color:red;
margin-top:4px;
min-width:22px;
}

.info-item h4{
color:#7a1d1d;
margin-bottom:4px;
font-size:17px;
}

.info-item p{
margin:0;
font-size:15px;
}

/* EMAIL RESPONSIVE FIX */

.info-item a{
text-decoration:none;
color:inherit;
word-break:break-word;
overflow-wrap:break-word;
}

.info-item a:hover{
color:#7a1d1d;
}

/* TABLET */

@media (max-width:992px){

.contact-container{
grid-template-columns:1fr;
gap:35px;
}

.contact-form h2,
.contact-info h2{
font-size:24px;
}

}

/* MOBILE */

@media (max-width:600px){

.contact-section{
padding:40px 15px;
}

.contact-form{
padding:20px;
}

.name-row{
grid-template-columns:1fr;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
font-size:13px;
padding:10px 12px;
}

.contact-form button{
width:100%;
}

.contact-info{
padding:10px;
}

.info-item{
gap:10px;
}

}


/* ===== MAP ===== */
.map iframe{
width:100%;
height:300px;
border:0;
}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){

.contact-container{
grid-template-columns:1fr;
}

.name-row{
grid-template-columns:1fr;
}

.page-banner{
padding:40px 15px;
}

.banner-content h1{
font-size:22px;
}

}

@media(max-width:500px){

.contact-form{
padding:20px;
}

.contact-section{
padding:40px 0;
}

}



/* ----------------header----------- */

/* ===== TOP HEADER ===== */
.top-header {
    width: 100%;
    background: #7a1d1d;
    color: #fff;
    padding: 7px 6vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    flex-wrap: wrap;
}

.top-left{
display:flex;
gap:40px;
align-items:center;
}

.top-left i{
font-size:24px;
margin-right:10px;
}

.top-right{
display:flex;
gap:25px;
}

.top-right i{
font-size:26px;
cursor:pointer;
transition:0.3s;
}

.top-right i:hover{
transform:scale(1.15);
}

/* ===== MAIN HEADER ===== */
header{
width:100%;
background:#fff;
border-bottom:1px solid #eee;
padding:1px 2vw;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:1000;
}

.logo{
font-size:34px;
font-weight:900;
color:#7a1d1d;
}

.nav{
display:flex;
gap:45px;
align-items:center;
}

.nav a{
text-decoration:none;
color:#333;
font-size:18px;
font-weight:600;
}

.menu-toggle{
display:none;
font-size:32px;
cursor:pointer;
}

/* ----------------header end ----------- */


/* ----------------footer start ----------- */


/* ----------------footer end ----------- */



/* ===== RESET ===== */
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

body{
background:#fff;
color:#222;
}

/* ===== TOP HEADER ===== */
.top-header {
    width: 100%;
    background: #7a1d1d;
    color: #fff;
    padding: 7px 6vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    flex-wrap: wrap;
}

.top-left{
display:flex;
gap:40px;
align-items:center;
}

.top-left i{
font-size:24px;
margin-right:10px;
}

.top-right{
display:flex;
gap:25px;
}

.top-right i{
font-size:26px;
cursor:pointer;
transition:0.3s;
}

.top-right i:hover{
transform:scale(1.15);
}

/* ===== MAIN HEADER ===== */
header{
width:100%;
background:#fff;
border-bottom:1px solid #eee;
padding:1px 2vw;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:1000;
}

.logo{
font-size:34px;
font-weight:900;
color:#7a1d1d;
}

.nav{
display:flex;
gap:45px;
align-items:center;
}

.nav a{
text-decoration:none;
color:#333;
font-size:18px;
font-weight:600;
}

.menu-toggle{
display:none;
font-size:32px;
cursor:pointer;
}

/* ===== SECTION ===== */
.section{
width:100%;
padding:70px 6vw;
}

/* ===== HERO ===== */
.hero{
display:grid;
grid-template-columns:1.2fr 1fr;
gap:60px;
align-items:center;
}

.hero img{
width:100%;
border-radius:14px;
}

.hero h1 {
    color: #7a1d1d;
    font-size: 38px;
    margin-bottom: 15px;
    font-family: "Playfair Display", serif;
}

.hero p {
    color: #555;
    line-height: 1.7;
    font-size: 20px;
    text-align: justify;
}

/* ===== STATS1 ===== */
.stats{
background:linear-gradient(to bottom,#ffe6e7);
color:#fff;
padding:40px 6vw;
}

.stats-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
text-align:center;
}

.stats-grid h2{
font-size:32px;
margin-bottom:6px;
}

/* ===== GALLERY ===== */
.gallery-wrapper{
display:grid;
grid-template-columns:360px 1fr;
gap:40px;
align-items:center;
}

/*.review-box{*/
/*background:#000;*/
/*color:#fff;*/
/*border-radius:20px;*/
/*padding:30px;*/
/*height:400px;*/
/*width:530px;*/
/*display:flex;*/
/*flex-direction:column;*/
/*justify-content:center;*/
/*}*/

.quote{
font-size:60px;
color:#7a1d1d;
}

.review-box p{
margin:15px 0 25px;
color:#ddd;
width: 340px;
line-height:1.6;
}

.review-user{
display:flex;
align-items:center;
gap:12px;
}

.review-user img{
width:45px;
height:45px;
border-radius:50%;
}

/* SLIDER */
/* ========================= */
/* ===== SLIDER SECTION ==== */
/* ========================= */

.slider{
  position:relative;
  overflow:hidden;
  width:100%;
  height:320px; /* flexible base height */
}

.track{
  display:flex;
  gap:20px;
  transition:0.5s ease;
  height:100%;
}

.slide{
  min-width:calc(25% - 15px); /* 4 per row desktop */
  height:100%;
  border-radius:14px;
  overflow:hidden;
  flex-shrink:0;
}

.slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  border:18px solid #fff;
  border-radius:20px;
  display:block;
}


/* ===== NAV BUTTONS ===== */
.nav-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:#7a1d1d;
  color:#fff;
  border:none;
  padding:10px 14px;
  cursor:pointer;
  border-radius:6px;
  z-index:10;
}

.prev{ left:10px; }
.next{ right:10px; }


/* ========================= */
/* ===== ABOUT SECTION ===== */
/* ========================= */

.about{
  display:grid;
  grid-template-columns:1fr 1fr; /* 2 column desktop */
  gap:60px;
  align-items:center;
}

.about img{
  width:100%;
  height:auto;
  border-radius:12px;
  display:block;
}

.about h2{
  color:#7a1d1d;
  font-size:32px;
  margin-bottom:10px;
  line-height:1.2;
}


/* ============================ */
/* ===== TABLET RESPONSIVE ==== */
/* ============================ */
@media (max-width: 992px){

  .slider{
    height:280px;
  }

  .slide{
    min-width:calc(50% - 10px); /* 2 per row */
  }

  .about{
    grid-template-columns:1fr; /* stack sections */
    gap:40px;
    text-align:center;
  }

  .about h2{
    font-size:28px;
  }
}


/* ============================ */
/* ===== MOBILE RESPONSIVE ==== */
/* ============================ */
@media (max-width: 600px){

  .slider{
    height:240px;
  }

  .slide{
    min-width:100%; /* 1 per row */
  }

  .slide img{
    border:10px solid #fff;
    border-radius:14px;
  }

  .about{
    gap:30px;
  }

  .about h2{
    font-size:24px;
  }

  .nav-btn{
    padding:8px 10px;
  }
}

/* ===== SERVICES ===== */
.services{
text-align:center;
}

.service-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:30px;
}

.card{
padding:35px;
border-radius:12px;
background:#f5f5f5;
font-weight:600;
}

.card.primary{
background:#7a1d1d;
color:#fff;
}

/* ===== FOOTER ===== */
/* footer{
background:#111;
color:#fff;
text-align:center;
padding:30px 6vw;
margin-top:40px;
} */

/* ===== RESPONSIVE ===== */
@media(max-width:1200px){
.slide{ min-width:calc(33.33% - 14px); }
}

@media(max-width:992px){

.hero,
.about,
.gallery-wrapper{
grid-template-columns:1fr;
text-align:center;
}

.review-user{ justify-content:center; }

.stats-grid{
grid-template-columns:repeat(2,1fr);
gap:20px;
}

.service-grid{
grid-template-columns:1fr 1fr;
}

.slide{ min-width:calc(50% - 10px); }

.nav{
position:absolute;
top:100%;
left:0;
width:100%;
background:#fff;
flex-direction:column;
padding:20px 0;
display:none;
border-bottom:1px solid #eee;
}

.nav.show{ display:flex; }
.menu-toggle{ display:block; }

}

@media(max-width:600px){

.section{ padding:50px 20px; }

.stats-grid{ grid-template-columns:1fr; }

.service-grid{ grid-template-columns:1fr; }

.slide{ min-width:100%; }

.slider{ height:240px; }

.review-box{ height:auto; }

.top-header{
flex-direction:column;
gap:8px;
text-align:center;
}

}

/* SECTION TITLE */
.section{
padding:70px 0vw;
text-align:center;
}

.section h2{
color:#7a1d1d;
margin-bottom:35px;
font-size:30px;

}

/* SERVICES */
.services-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}

.service-card{
background:#eee;
padding:35px 25px;
border-radius:14px;
transition:.3s;
}

.service-card i{
font-size:28px;
margin-bottom:15px;
}

.service-card h4{
margin-bottom:10px;
}

.service-card.red{
background:#7a1d1d;
color:#fff;
}

.service-card.black{
background:#000;
color:#fff;
}

/* WHY CHOOSE */
.why{
display:grid;
grid-template-columns:1fr 1fr;
margin-top:40px;
}

.why-left{
background:#7a1d1d;
color:#fff;
padding:10px;
text-align:left;
}

.why-left h2{
color:#fff;
margin-bottom:20px;
}

.why-left li{
margin:12px 0;
list-style:none;
}

.why-right img{
width:100%;
height:100%;
object-fit:cover;
}

/* GALLERY */
.gallery-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
margin-top:30px;
}

.gallery-grid img{
width:100%;
border-radius:12px;
}

/* TESTIMONIAL */
.testimonial{
display:grid;
grid-template-columns:200px 1fr;
gap:25px;
align-items:center;
margin-top:40px;
}

.testimonial img{
width:100%;
border-radius:12px;
}

.testimonial-box{
background:#f5f5f5;
padding:30px;
border-radius:12px;
text-align:left;
}

.testimonial-box h4{
color:#7a1d1d;
margin-top:10px;
}
.service-card:hover{
    background-color:#7a1d1d;
    color:#fff;
    
}

/* RESPONSIVE */

@media(max-width:900px){

.services-grid{
grid-template-columns:repeat(2,1fr);
}

.gallery-grid{
grid-template-columns:repeat(2,1fr);
}

.why{
grid-template-columns:1fr;
}

.testimonial{
grid-template-columns:1fr;
text-align:center;
}

}

@media(max-width:600px){

.services-grid{
grid-template-columns:1fr;
}

.gallery-grid{
grid-template-columns:1fr;
}

.top-header{
flex-direction:column;
gap:6px;
text-align:center;
}

}

/* ===== CONTAINER ===== */
.container{
  max-width: 1200px;
  margin: auto;
  padding: 70px 20px;
}


/* ===== INTRO + FAQ ===== */
.info-section{
padding:60px 0;
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:start;
}

.info-text h2{
font-size:22px;
margin-bottom:15px;
}

.info-text p{
line-height:1.7;
margin-bottom:15px;
color:#444;
}

/* ===== FAQ ===== */
.faq-item{
border:1px solid #ddd;
border-radius:8px;
margin-bottom:12px;
overflow:hidden;
}

.faq-question{
padding:14px 18px;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
background:#f7f7f7;
font-weight:600;
}

.faq-answer{
padding:15px 18px;
display:none;
color:#555;
background:#fff;
}

.faq-item.active .faq-answer{
display:block;
}

/* ===== CTA BANNER ===== */
.cta{
margin:40px auto;
border-radius:16px;
overflow:hidden;
position:relative;
}

.cta img{
width:100%;
height:280px;
object-fit:cover;
filter:brightness(0.6);
}

.cta-content{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
color:#fff;
text-align:center;
width:90%;
}

.cta-content h2{
font-size:28px;
margin-bottom:10px;
}

.cta-content p{
margin-bottom:15px;
}

.cta-btn{
background:#000;
color:#fff;
padding:10px 20px;
border-radius:25px;
text-decoration:none;
display:inline-block;
}

/* ===== FOOTER ===== */
/* ===== SAFE GLOBAL FIX ===== */
*{
  box-sizing:border-box;
}

/* ===== FOOTER FULL WIDTH ===== */
.footer{
  width:100%;
  background:#000;
  color:#fff;
  padding:50px 5vw 25px;
  margin-top:40px;
  overflow:hidden; /* prevents breaking */
}

/* ===== FLEX RESPONSIVE LAYOUT ===== */
.footer-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:40px;
}

/* EACH COLUMN */
.footer-grid > div{
  flex:1 1 220px; /* auto responsive width */
  min-width:220px;
}

/* ===== BRAND CENTER ===== */
.logo{
  text-align:center;
}

.logo img{
  width:180px;
  max-width:100%;
  height:auto;
  display:block;
  margin:auto;
}

/* ===== TEXT ===== */
.footer p{
  color:#ccc;
  font-size:20px;
  line-height:1.6;
  text-align:center;
  margin:15px 0 20px;
  word-wrap:break-word;
}

/* ===== HEADINGS ===== */
.footer h4{
  color:#7a1d1d;
  margin-bottom:12px;
  font-size:22px;
}

/* ===== LIST ===== */
.footer ul{
  list-style:none;
  padding:0;
}

.footer li{
  margin-bottom:10px;
  font-size:18px;
  color:#ddd;
  line-height:1.5;
}

/* ===== LINKS ===== */
.footer a{
  color:#fff;
  text-decoration:none;
  word-break:break-word;
}

/* ===== SOCIAL CENTER ===== */
.social{
  display:flex;
  justify-content:center;
  gap:14px;
}

.social i{
  background:#7a1d1d;
  padding:10px;
  border-radius:50%;
  font-size:16px;
}

/* ===== BOTTOM ===== */
.footer-bottom{
  border-top:1px solid #222;
  margin-top:35px;
  padding-top:18px;
  text-align:center;
  font-size:18px;
  color:#aaa;
  line-height:1.6;
}

/* ===== MOBILE FIX ===== */
@media(max-width:600px){

  .footer{
    padding:40px 6vw 20px;
  }

  .footer-grid{
    text-align:center;
  }

  .footer h4{
    font-size:20px;
  }

  .footer p{
    font-size:18px;
  }

  .footer li{
    font-size:16px;
  }

  .footer-bottom{
    font-size:16px;
  }
}


/* ===== PAGE BANNER ===== */
.page-banner{
background:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),
url("https://images.unsplash.com/photo-1527529482837-4698179dc6ce");
background-size:cover;
background-position:center;
color:#fff;
padding:60px 20px;
text-align:center;
}

.banner-content h1{
margin:10px 0;
font-size:28px;
}

.breadcrumb{
margin-top:10px;
font-size:14px;
border-top:1px solid rgba(255,255,255,.3);
padding-top:10px;
}

/* ===== CONTACT SECTION ===== */
.contact-section{
padding:60px 0;
}

.contact-container{
max-width:1450px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
padding:0 20px;
}

/* ===== FORM ===== */
.contact-form{
background:#f8f8f8;
padding:30px;
font-size: 18px;
border-radius:14px;
}

.contact-form h2{
color:red;
margin-bottom:20px;
}

.contact-form label{
display:block;
margin:14px 0 6px;
font-weight:600;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
width:100%;
padding:10px 12px;
border-radius:20px;
border:1px solid #ccc;
outline:none;
}

.name-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

.contact-form textarea{
border-radius:14px;
resize:none;
}

.contact-form button{
margin-top:15px;
background:red;
color:#fff;
font-size: 18px;
border:none;
padding:18px 28px;
border-radius:20px;
cursor:pointer;
}

/* ===== INFO ===== */
.contact-info{
padding:20px;
}

.contact-info h2{
color:red;
margin-bottom:10px;
}

.contact-info p{
color:#555;
margin-bottom:20px;
}

.info-item{
display:flex;
gap:14px;
margin-bottom:18px;
align-items:flex-start;
}

.info-item i{
font-size:20px;
margin-top:4px;
}

.info-item h4{
color:red;
margin-bottom:4px;
}

/* ===== MAP ===== */
.map iframe{
width:100%;
height:300px;
border:0;
}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){

.contact-container{
grid-template-columns:1fr;
}

.name-row{
grid-template-columns:1fr;
}

.page-banner{
padding:40px 15px;
}

.banner-content h1{
font-size:22px;
}

}

@media(max-width:500px){

.contact-form{
padding:20px;
}

.contact-section{
padding:40px 0;
}

}



/* *{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Poppins, sans-serif;
} */

/* ===== FULL WIDTH SPECIAL SECTION ===== */

.special-section{
width:100%;
margin-top: 10px;
}

.special-wrapper{
display:grid;
grid-template-columns:1fr 1.2fr;
width:100%;
min-height:520px;
}

.special-left img{
width:100%;
height:100%;
object-fit:cover;
}

.special-right{
background:#7a1d1d;
color:#fff;
padding:80px 60px;
position:relative;
display:flex;
flex-direction:column;
justify-content:center;
}

.tag{
font-size:18px;
opacity:.95;
}

.special-right h2{
font-size:40px;
line-height:1.3;
margin:15px 0 40px;
font-weight:600;
max-width:700px;
}

.features{
display:flex;
flex-direction:column;
gap:18px;
max-width:420px;
}

.feature{
background:#fff;
color:#000;
padding:18px 24px;
border-radius:40px;
font-size:18px;
font-weight:500;
}

.feature-image{
position:absolute;
right:60px;
bottom:60px;
width:320px;
}

.feature-image img{
width:100%;
border-radius:18px;
box-shadow:0 15px 40px rgba(0,0,0,0.2);
}

.feature-image button{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
padding:12px 24px;
border:none;
border-radius:30px;
background:#fff;
font-size:16px;
cursor:pointer;
}

/* ===== ABOUT SECTION ===== */

.about-section{
width:100%;
padding:90px 60px;
}

.about-container{
max-width:1400px;
margin:auto;
}

.title{
text-align:center;
color:#7a1d1d;
font-size:36px;
margin-bottom:25px;
}

.desc{
text-align:center;
font-size:25px;
line-height:1.8;
max-width:100%;
margin:0 auto 40px;
}

.why{
color:#7a1d1d;
font-size:30px;
margin-bottom:15px;
}

.list{
margin-left:20px;
font-size:25px;
line-height:2;
margin-bottom:30px;
}

.about-flex{
display:flex;
gap:50px;
align-items:center;
flex-wrap:wrap;
}

.about-flex img{
width:420px;
border-radius:20px;
}

.about-text{
flex:1;
font-size:25px;
line-height:1.8;
}

.contact-btn{
margin-top:25px;
background:#7a1d1d;
color:#fff;
border:none;
padding:14px 36px;
border-radius:40px;
font-size:20px;
cursor:pointer;
}

/* ===== RESPONSIVE ===== */

@media(max-width:1100px){

.special-right{
padding:60px 40px 220px;
text-align:center;
}

.special-right h2{
font-size:32px;
margin:auto;
}

.features{
margin:auto;
}

.feature-image{
position:static;
margin:40px auto 0;
}

.about-section{
padding:70px 30px;
}

}

@media(max-width:768px){

.special-wrapper{
grid-template-columns:1fr;
}

.special-right{
padding:50px 20px;
}

.special-right h2{
font-size:26px;
}

.feature{
font-size:16px;
}

.title{
font-size:26px;
}

.desc{
font-size:16px;
}

.about-flex{
flex-direction:column;
text-align:center;
}

.about-flex img{
width:100%;
max-width:420px;
}

}



/* ------- footer Logo ------------ */

/* .footer-logo{
  display:inline-block;
} */

/* ===== FOOTER LOGO FIX ===== */

/* ===== FORCE FOOTER LOGO SIZE ===== */




/* ---------- toggle ------------- */


/* ===== TOP HEADER ===== */
.top-header {
    width: 100%;
    background: #7a1d1d;
    color: #fff;
    padding: 7px 6vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    flex-wrap: wrap;
}

.top-left{
display:flex;
gap:40px;
align-items:center;
}

.top-left i{
font-size:24px;
margin-right:10px;
}

.top-right{
display:flex;
gap:25px;
}

.top-right i{
font-size:26px;
cursor:pointer;
transition:0.3s;
}

.top-right i:hover{
transform:scale(1.15);
}

/* ===== MAIN HEADER ===== */
header{
width:100%;
background:#fff;
border-bottom:1px solid #eee;
padding:1px 2vw;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:1000;
}

/* .logo{
font-size:34px;
font-weight:900;
color:#7a1d1d;
} */
.logo img{
  height:120px;
  width:auto;
  display:block;
}

@media(max-width:768px){
  .logo img{
    height:48px;
  }
}

.nav{
display:flex;
gap:45px;
align-items:center;
}

.nav a{
text-decoration:none;
color:#333;
font-size:18px;
font-weight:600;
}

.menu-toggle{
display:none;
font-size:32px;
cursor:pointer;
}



/* --------------- Index Page CSS --------------- */

/* * ===== RESET ===== */ 
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

body{
background:#fff;
color:#222;
}

/* ===== TOP HEADER ===== */
.top-header {
    width: 100%;
    background: #7a1d1d;
    color: #fff;
    padding: 7px 6vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    flex-wrap: wrap;
}

.top-left{
display:flex;
gap:40px;
align-items:center;
}

.top-left i{
font-size:24px;
margin-right:10px;
}

.top-right{
display:flex;
gap:25px;
}

.top-right i{
font-size:26px;
cursor:pointer;
transition:0.3s;
}

.top-right i:hover{
transform:scale(1.15);
}

/* ===== MAIN HEADER ===== */
header{
width:100%;
background:#fff;
border-bottom:1px solid #eee;
padding:1px 2vw;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:1000;
}

/* .logo{
font-size:34px;
font-weight:900;
color:#7a1d1d;
} */
.logo img{
  height:120px;
  width:auto;
  display:block;
}

@media(max-width:768px){
  .logo img{
    height:100px;
  }
}

.nav{
display:flex;
gap:45px;
align-items:center;
}

.nav a{
text-decoration:none;
color:#333;
font-size:18px;
font-weight:600;
}

.menu-toggle{
display:none;
font-size:32px;
cursor:pointer;
}

/* ===== SECTION ===== */
.section{
width:100%;
padding:70px 6vw;
}

/* ===== HERO ===== */
.hero{
display:grid;
grid-template-columns:1.2fr 1fr;
gap:60px;
align-items:center;
}

.hero img{
width:100%;
border-radius:14px;
}

.hero h1 {
    color: #7a1d1d;
    font-size: 38px;
    margin-bottom: 15px;
    font-family: "Playfair Display", serif;
}

.hero p {
    color: #555;
    line-height: 1.7;
    padding: 15px;
    font-size: 20px;
    text-align: justify;
}


/* ===== GALLERY ===== */
.gallery-wrapper{
display:grid;
grid-template-columns:360px 1fr;
gap:40px;
align-items:center;
}

.review-box{
background:#000;
color:#fff;
border-radius:20px;
padding:0px;
height:400px;
width:460px;
display:flex;
flex-direction:column;
justify-content:center;
}

.quote{
font-size:60px;
color:#7a1d1d;
}

.review-box p{
margin:15px 0 25px;
color:#ddd;
width: 340px;
line-height:1.6;
}

.review-user{
display:flex;
align-items:center;
gap:12px;
}

.review-user img{
width:45px;
height:45px;
border-radius:50%;
}

/* SLIDER */
.slider{
position:relative;
overflow:hidden;
height:270px;
}

.track{
display:flex;
gap:20px;
transition:0.5s ease;
height:100%;
}

.slide{
min-width:calc(25% - 15px);
height:100%;
border-radius:14px;
overflow:hidden;
flex-shrink:0;
}

.slide img{
width:100%;
height:100%;
object-fit:cover;
border:18px solid #eeecec;
border-radius:20px;
}

.nav-btn{
position:absolute;
top:50%;
transform:translateY(-50%);
background:#7a1d1d;
color:#fff;
border:none;
padding:10px 14px;
cursor:pointer;
border-radius:6px;
z-index:10;
}

.prev{ left:10px; }
.next{ right:10px; }

/* ===== ABOUT ===== */
.about{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.about img{
width:100%;
border-radius:12px;
}

.about h2{
color:#7a1d1d;
font-size:32px;
margin-bottom:10px;
}

/* ===== SERVICES ===== */
.services{
text-align:center;
}

.service-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:30px;
}

.card{
padding:35px;
border-radius:12px;
background:#f5f5f5;
font-weight:600;
}

.card.primary{
background:#7a1d1d;
color:#fff;
}

/* ===== FOOTER ===== */
footer{
background:#111;
color:#fff;
text-align:center;
padding:30px 6vw;
margin-top:40px;
}

/* ===== RESPONSIVE ===== */
@media(max-width:1200px){
.slide{ min-width:calc(33.33% - 14px); }
}

@media(max-width:992px){

.hero,
.about,
.gallery-wrapper{
grid-template-columns:1fr;
text-align:center;
}

.review-user{ justify-content:center; }



.service-grid{
grid-template-columns:1fr 1fr;
}

.slide{ min-width:calc(50% - 10px); }

.nav{
position:absolute;
top:100%;
left:0;
width:100%;
background:#fff;
flex-direction:column;
padding:20px 0;
display:none;
border-bottom:1px solid #eee;
}

.nav.show{ display:flex; }
.menu-toggle{ display:block; }

}

@media(max-width:600px){

.section{ padding:50px 20px; }



.service-grid{ grid-template-columns:1fr; }

.slide{ min-width:100%; }

.slider{ height:240px; }

.review-box{ 
    height:auto;
    width: 350px;}

.top-header{
flex-direction:column;
gap:8px;
text-align:center;
}

}

/* SECTION TITLE */
.section{
padding:70px 0vw;
text-align:center;
}


.section-1 {
    padding: 80px 10vw;
    text-align: center;
    width:70%;
    align-items: center;
}

.section h2{
color:#7a1d1d;
margin-bottom:35px;
font-size:30px;
}

/* SERVICES */
.services-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
font-size: 20px;
}

.service-card{
background:#eee;
padding:35px 25px;
border-radius:14px;
transition:.3s;
}

.service-card i{
font-size:28px;
margin-bottom:15px;
}

.service-card h4{
margin-bottom:10px;
}

.service-card.red{
background:#7a1d1d;
color:#fff;
}

.service-card.black{
background:#000;
color:#fff;
}

/* WHY CHOOSE */
.why{
display:grid;
grid-template-columns:1fr 1fr;
margin-top:40px;
}

.why-left{
background:#7a1d1d;
color:#fff;
padding:10px;
text-align:left;
}

.why-left h2{
color:#fff;
margin-bottom:20px;
}

.why-left li{
margin:12px 0;
list-style:none;
}

.why-right img{
width:100%;
height:100%;
object-fit:cover;
}

/* GALLERY */
/* ===== GALLERY GRID ===== */
.gallery-grid{
  display:grid;
  gap:20px;
  margin-top:30px;

  /* Desktop */
  grid-template-columns:repeat(3, 1fr);
}

/* IMAGES SAME SIZE */
.gallery-grid img{
  width:100%;
  aspect-ratio: 1 / 1;   /* perfect square */
  object-fit:cover;
  border-radius:12px;
  display:block;
}

/* ===== TABLET ===== */
@media (max-width: 900px){
  .gallery-grid{
    grid-template-columns:repeat(2, 1fr);
  }
}

/* ===== MOBILE ===== */
@media (max-width: 500px){
  .gallery-grid{
    grid-template-columns:1fr;
  }
}
/* TESTIMONIAL */
.testimonial{
display:grid;
grid-template-columns:200px 1fr;
gap:25px;
align-items:center;
margin-top:40px;
}

.testimonial img{
width:100%;
border-radius:12px;
}

.testimonial-box{
background:#f5f5f5;
padding:30px;
font-size: 20px;
border-radius:12px;
text-align:left;
}

.testimonial-box h4{
color:#7a1d1d;
margin-top:10px;
}
.service-card:hover{
    background-color:#7a1d1d;
    color:#fff;
    
}

/* RESPONSIVE */

@media(max-width:900px){

.services-grid{
grid-template-columns:repeat(2,1fr);
}

.gallery-grid{
grid-template-columns:repeat(2,1fr);
}

.why{
grid-template-columns:1fr;
}

.testimonial{
grid-template-columns:1fr;
text-align:center;
}

}

@media(max-width:600px){

.services-grid{
grid-template-columns:1fr;
}

.gallery-grid{
grid-template-columns:1fr;
}

.top-header{
flex-direction:column;
gap:6px;
text-align:center;
}

}

/* ===== CONTAINER ===== */
.container{
width:100%;
max-width:1450px;
margin:auto;
}
/* ===== INTRO + FAQ ===== */
.info-section{
padding:60px 0;
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:start;
}

.info-text h2{
font-size:25px;
margin-bottom:15px;
}

.info-text p{
line-height:1.7;
margin-bottom:15px;
color:#444;
font-size: 20px;
}

/* ===== FAQ ===== */
.faq-item{
border:1px solid #ddd;
border-radius:8px;
margin-bottom:12px;
overflow:hidden;
}

.faq-question{
padding:14px 18px;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
background:#f7f7f7;
font-weight:600;
}

.faq-answer{
padding:15px 18px;
display:none;
color:#555;
background:#fff;
}

.faq-item.active .faq-answer{
display:block;
}

/* ===== CTA BANNER ===== */
.cta{
margin:40px auto;
border-radius:16px;
overflow:hidden;
position:relative;
}

.cta img{
width:100%;
height:280px;
object-fit:cover;
filter:brightness(0.6);
}

.cta-content{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
color:#fff;
text-align:center;
width:90%;
}

.cta-content h2{
font-size:28px;
margin-bottom:10px;
}

.cta-content p{
margin-bottom:15px;
}

.cta-btn{
background:#000;
color:#fff;
padding:10px 20px;
border-radius:25px;
text-decoration:none;
display:inline-block;
}

/* ===== FOOTER ===== */
.footer{
background:#000;
color:#fff;
height: 350px;
padding:40px 0 10px; /* reduced top & bottom space */
margin-top:40px;
}

.footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:25px; /* reduced gap */
align-items:start;
}

.footer h4{
color:#7a1d1d;
margin-bottom:10px; /* reduced space */
font-size:20px;
}

.footer p{
color:#ccc;
font-size:20px;
line-height:1.5;
margin-bottom:10px; /* reduced space */
}

.footer ul{
list-style:none;
padding:0;
margin:0;
}

.footer li{
margin-bottom:6px; /* tighter list spacing */
font-size:20px;
color:#ddd;
}

.social{
margin-top:10px;
}

.social i{
margin-right:8px;
background:#7a1d1d;
padding:7px;
border-radius:10%;
font-size:25px;
}

.footer-bottom{
border-top:1px solid #222;
margin-top:20px; /* reduced space */
padding-top:10px;
text-align:center;
font-size:18px;
color:#aaa;
}

.bd-slider-wrapper{
  position:relative;
  width:100%;
  height:60vh;
  overflow:hidden;
}

.bd-slide-item{
  position:absolute;
  width:100%;
  height:100%;
  opacity:0;
  transition:opacity .6s ease;
}

.bd-slide-item.active{
  opacity:1;
}

.bd-slide-item img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.bd-slide-content{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  color:#fff;
  text-align:center;
  width:90%;
}

.bd-slide-content h2{
  font-size:48px;
  margin-bottom:10px;
}

.bd-slide-content p{
  font-size:20px;
}

.bd-slider-prev,
.bd-slider-next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,.5);
  color:#fff;
  border:none;
  padding:14px 18px;
  cursor:pointer;
  font-size:22px;
}

.bd-slider-prev{ left:20px; }
.bd-slider-next{ right:20px; }

.bd-slider-dots{
  position:absolute;
  bottom:20px;
  left:50%;
  transform:translateX(-50%);
}

.bd-dot{
  height:12px;
  width:12px;
  margin:0 6px;
  background:#fff;
  display:inline-block;
  border-radius:50%;
  opacity:.5;
  cursor:pointer;
}

.bd-dot.active{
  opacity:1;
  background:#7a1d1d;
}

/* MOBILE */
@media(max-width:768px){
  .bd-slider-wrapper{ height:60vh; }
  .bd-slide-content h2{ font-size:26px; }
  .bd-slide-content p{ font-size:16px; }
}
/* -------------------------- Index Page CSS----------- */
/* .stats-grid1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    text-align: center;
    border: 4px solid #a37070;
    gap: 10px;
    padding: 27px 50px;
    border-radius: 10px;
} */

.stats-grid1 {
    text-align: center;
    border: 2px solid #a37070;
    padding: 27px 51px;
    border-radius: 10px;
    background: linear-gradient(to bottom, #f8f7f7, #ffffff);
    color: #000000;

    /* 🌤 Realistic soft depth shadow */
    box-shadow:
        0 1px 2px rgba(0, 0, 0, 0.06),
        0 6px 14px rgba(0, 0, 0, 0.08),
        0 16px 30px rgba(0, 0, 0, 0.06);
}
.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;   /* 👈 THIS CREATES SPACE */
}
@media (max-width: 600px) {

    .stats-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 cards per row */
        gap: 12px;
        padding: 15px;
    }

    .stats-grid1 {
        padding: 16px 12px; /* reduce padding for mobile */
        border-radius: 8px;
    }

    .stats-grid1 h2 {
        font-size: 18px;
        margin-bottom: 4px;
    }

    .stats-grid1 p {
        font-size: 12px;
        line-height: 1.3;
    }
}
@media (max-width: 480px) {
    .top-header {
        display: none;
    }
}
@media (max-width: 768px) {
    .top-header {
        display: none;
    }
}
@media (max-width: 768px) {

    .info-section {
        grid-template-columns: 1fr;   /* ✅ single column */
        gap: 24px;
        padding: 30px 16px;           /* reduce side padding */
    }

    .info-text {
        text-align: left;             /* better readability */
    }
}
@media (max-width: 768px) {

    /* CTA section fix */
    .container.cta {
        padding: 30px 16px;
        text-align: center;
    }

    /* Footer fix */
    .footer {
        height: auto;              /* ✅ remove fixed height */
        padding: 30px 16px;        /* reduce padding */
        margin-top: 20px;
    }

    .footer-grid {
        display: grid;
        grid-template-columns: 1fr; /* ✅ stack columns */
        gap: 24px;
        text-align: center;
    }

    .footer-grid img {
        margin: 0 auto;
    }

    .footer-grid ul {
        padding: 0;
    }

    .footer-grid li {
        list-style: none;
    }

    .footer-bottom {
        margin-top: 20px;
        font-size: 13px;
        text-align: center;
    }
}
.fixed_enquiry_btn_web {
	position: fixed;
	bottom: 5%;
	left: 3%;
	z-index: 99;
}

.fixed_enquiry_btn_web a:nth-child(1) {
	background-color: #F15D30;
	padding:10px 15px 10px 15px;
	border-radius: 100px;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .3px;
	word-spacing: 1px;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	display: inline-block;
	margin-bottom: 20px;
	color: #fff;
}

.fixed_enquiry_btn_web a span {
	font-size: 20px;
	color: #fff;
}

.fixed_enquiry_btn_web a:nth-child(2) {
	background-color: #24CC63;
	padding: 5px 10px 5px 10px;
	border-radius: 100px;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .3px;
	word-spacing: 1px;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	display: block;
	margin-bottom: 20px;
	color: #fff;
}

.fixed_enquiry_btn_web > a:nth-child(3), .envelope {
	background-color: #0693e3;
	padding: 11px 15px 11px 15px;
	border-radius: 100px;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .3px;
	word-spacing: 1px;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	display: block;
	margin-bottom: 20px;
	color: #fff;
}
.fixed_enquiry_btn_web svg path {
    fill: #fff;
}