* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    background: #ffffff;
}

/* ================= HERO SECTION ================= */

.hero {
    position: relative;
    min-height: 100vh;
    padding: 40px 80px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* ================= NAVBAR ================= */

.navbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;  /* move everything left */
    padding: 15px 40px;
    gap: 30px; /* space between logo & nav */
}

.logo img {
    width: 250px;
    margin-left: -45px;
}

/* NAV LINKS */
nav a {
    text-decoration: none;
    margin-left: 20px;
    padding: 12px 26px;
    background: #f1f1f1;
    border-radius: 30px;
    font-weight: 500;
    color: #000;
    transition: 0.3s ease;
}

nav a:hover {
    background: #f4a100;
    color: #fff;
}

/* ================= HERO IMAGE ================= */

.hero-image {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: auto;          /* keeps original proportion */
    object-fit: contain;  /* prevents cropping */
}

/* ================= HERO TEXT ================= */

.hero-content {
    max-width: 1000px;
    margin-top: 100px;
}

.hero-content h1 {
    font-size: 50px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 30px;
}

.hero-content p {
    max-width: 750px;        /* Text ki width control karega */
    font-size: 20px;         /* Screenshot jaisa size */
    line-height: 1.8;        /* Line spacing */
    color: #444;             /* Soft dark grey */
    margin-top: 25px;
    font-weight: 400;
    letter-spacing: 0.3px;

}

/* Keep text above image */
.navbar,
.hero-content {
    position: relative;
    z-index: 2;
}

/* ================= RESPONSIVE ================= */

@media (max-width: 992px) {

    .hero {
        padding: 30px;
    }

    .navbar {
        flex-direction: column;
        gap: 20px;
    }

    nav a {
        margin: 5px;
    }

    .hero-content {
        margin-top: 60px;
        text-align: center;
    }

    .hero-content h1 {
        font-size: 36px;
    }

    .hero-image {
        opacity: 0.2;
        height: auto;
        width: 100%;
    }
}


/* Featute */
/* SECTION */

.why-section1{
    position:relative;
    padding:160px 0;
    background:#f2f2f2;
    margin-bottom: 60px;
    margin-top: -60px;
}

/* ORANGE BACKGROUND */

.why-section1::after{
    content:"";
    position:absolute;
    bottom: 10px;;
    left:0;
    width:100%;
    height:60%;
    background:#e9be73;
    border-bottom-left-radius:120px;
    z-index:0;
    margin-bottom: -60px;
}


/* CARD CONTAINER */

.cards-container{
    width:85%;
    margin:auto;
    display:flex;
    justify-content:space-between;
    position:relative;
    z-index:2;
}


/* CARD */

.card{
    width:320px;
    padding:55px 30px;
    background:white;
    text-align:center;
    border-radius:30px;
    position:relative;
    transition:0.3s;
}


/* ICON */

.icon img{
    width:90px;
    margin-bottom:20px;
    filter: invert(48%) sepia(89%) saturate(1000%) hue-rotate(2deg);
    transition:0.4s;
}


/* TITLE */

.card{
    width:320px;
    padding:55px 30px;
    background:white;
    text-align:center;
    border-radius:30px;
    position:relative;

      /* important */
}




/* DESCRIPTION */

.desc{
    position:absolute;
    top:100%;
    left:0;

    width:100%;

    padding:6px 10px;

    background:#ffffff !important;
    color:#333 !important;

    font-size:14px;
    line-height:1.6;

    margin:0;

    border-bottom-left-radius:18px;
    border-bottom-right-radius:18px;

    box-shadow:0 4px 10px rgba(0,0,0,0.12);

    max-height:80px;      /* height limit */
    overflow:hidden;      /* extra text hide */

    opacity:0;
    visibility:hidden;

    transform:translateY(-10px);
    transition:all 0.3s ease;
}


/* HOVER */

.card:hover{
    background:#f39c12;

    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
}

.card:hover h3{
    color:white;
}

.card:hover .icon img{
    filter:brightness(0) invert(1);
}


/* DESCRIPTION OPEN DOWNWARD */

.card:hover .desc{
    opacity:1;
    visibility:visible;

    transform:translateY(0);   /* niche slide */
}
/* ================= ABOUT SECTION ================= */

.about-section{
    top: 80px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:120px 0 120px 120px;
    background-color: #ffffff;
    
}

/* LEFT SIDE */

.about-left{
    position:relative;
    width:50%;
    min-height:600px;
    margin-top: -40px;
    margin-left: 40px;
}

.img-top{
    width:400px;
    border-radius:25px;
    box-shadow:0 15px 40px rgba(0,0,0,0.15);
    margin-right: 80px;
}

.img-bottom{
    position:absolute;
    bottom:120px;
    margin-left: 20px;
    left:180px;
    width:360px;
    border-radius:25px;
    box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

.img-small{
    position:absolute;
    bottom:125px;
    left:5px;
    width:190px;
    border-radius:25px;
    box-shadow:0 10px 30px rgba(0,0,0,0.2);
}

.img-circle{
    position:absolute;
    top:10px;
    left:390px;
    width:180px;
    height:180px;
    border-radius:50%;
    object-fit:cover;
    box-shadow:0 10px 30px rgba(0,0,0,0.2);
}

/* RIGHT SIDE */

.about-right{
    width:50%;
    top : 50px;
    margin-right: 80px;
}

.about-right h1{
    font-size:50px;
    font-weight:500;
    margin-top: -100px;
    margin-left: 10px;
}

.underline1{
    width:150px;
    height:5px;
    background:#f4a000;
    border-radius:15px;
    margin-left: 40px;
    
}

.about-text{
    background:#efc67d;
    padding:50px 50px;
    font-size:18px;
    line-height:1.8;
    border-radius:60px 0 0 60px; /* LEFT side round only */
    margin-top: 15px;
    margin-right: -100px;
}

/* ================= SERVICES SECTION ================= */
.services-section{
    width:100%;
    margin:auto;
    padding:60px 0;
    background-color: #ffffff;
    margin-top: -200px;
}

/* heading */

.services-title{
    text-align:center;
    font-size:50px;
    font-weight:700;
    margin-bottom:40px;
    position:relative;
}

.services-title::after{
    content:"";
    width:180px;
    height:4px;
    background:orange;
    display:block;
    margin:10px auto;
    border-radius:5px;
    margin-top: -10px;
}

/* GRID */

.services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    grid-template-rows:180px 180px 180px 180px;
    gap:18px;
}

/* IMAGE BOX */

.service{
    position:relative;
    overflow:hidden;
    border-radius:14px;
}

.service img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:0.4s;
}

/* TITLE */

.title{
    position:absolute;
    bottom:15px;
    left:50%;
    transform:translateX(-50%);
    color:white;
    font-size:18px;
    font-weight:500;
    z-index:2;
}

/* DESCRIPTION */

.desc1{
    position:absolute;
    bottom:-100%;
    left:0;
    width:100%;
    padding:20px;
    background:rgba(0,0,0,0.6);
    color:white;
    text-align:center;
    transition:0.4s;
}

/* HOVER */

.service:hover img{
    transform:scale(1.08);
    filter:brightness(1.1);
}

.service:hover .desc1{
    bottom:0;
}

.service:hover .title{
    opacity:0;
}


/* IMAGE PLACEMENT */

/* water tank */

.water{
    grid-column:1;
    grid-row:1 / 3;
}

/* sofa */

.sofa{
    grid-column:2;
    grid-row:1;
}

/* floor */

.floor{
    grid-column:3;
    grid-row:1;
}

/* house */

.house{
    grid-column:4;
    grid-row:1 / 3;
}

/* carpet */

.carpet{
    grid-column:1;
    grid-row:3 / 5;
}

/* pest control center */

.pest{
    grid-column:2 / 4;
    grid-row:2 / 4;
}

/* bathroom */

.bathroom{
    grid-column:2;
    grid-row:4;
}

/* chimney */

.chimney{
    grid-column:3;
    grid-row:4;
}

/* kitchen */

.kitchen{
    grid-column:4;
    grid-row:3 / 5;
}



/* WHY CHOOSE US */

body {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  background: #ffffff;
}

/* Section */
.why-section {
  padding: 80px 40px;
  text-align: center;
}

/* Title */
.why-title {
  font-size: 60px;
  font-weight: 700;
  margin-bottom: 15px;
}

.title-line {
  width: 450px;
  height: 8px;
  background: #f4a000;
  margin: 0 auto 60px;
  border-radius: 10px;
  margin-top: -20px;
}

/* Grid Layout */
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  max-width: 1300px;
  margin: auto;
}

/* Card */
.why-card {
  background: #ffffff;
  border-radius: 30px;
  padding: 60px 30px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: 0.3s ease;
}

/* Green Box */
.green-box {
  width: 260px;
  height: 260px;
  background: #7cc4ac;
  margin: 0 auto 40px;
  border-radius: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.4s ease;
}

/* Rotate Left on Hover */
.green-box:hover {
  transform: rotate(-6deg);
}

/* Image inside green box */
.green-box img {
  width: 120px;
  height: 120px;
  object-fit: contain;
}

/* Card Text */
.why-card h3 {
  font-size: 26px;
  font-weight: 500;
  color: #111;
  line-height: 1.4;
}


.testimonial-section {
    padding: 100px 80px;
    background: #f5f5f5;
}

/* GRID STRUCTURE */
.image-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: 250px 250px 250px;
    gap: 25px;
}

/* ALL IMAGES COMMON STYLE */
.image-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px;
    transition: 0.4s ease;
    filter: brightness(85%);
}

/* HOVER EFFECT */
.image-grid img:hover {
    filter: brightness(100%);
    transform: scale(1.03);
}

/* EXACT POSITIONS */

/* Row 1 */
.r1c1 { grid-column: 1; grid-row: 1; }
.r1c2 { grid-column: 2; grid-row: 1; }
.r1c3 { grid-column: 3; grid-row: 1 / 3; } /* Tall */
.r1c4 { grid-column: 4; grid-row: 1 / 3; } /* Tall */
.r1c5 { grid-column: 5; grid-row: 1; }
.r1c6 { grid-column: 6; grid-row: 1; }

/* Row 2 */
.r2c1 { grid-column: 1; grid-row: 2; }
.r2c2 { grid-column: 2; grid-row: 2; }
.r2c5 { grid-column: 5; grid-row: 2; }
.r2c6 { grid-column: 6; grid-row: 2; } /* Tall */

/* Row 3 */
.r3c3 { grid-column: 2; grid-row: 3; }
.r3c4 { grid-column: 4; grid-row: 3; margin-left: 220px;;}

/* HEADING */
.testimonial-heading {
    text-align: center;
    margin-top: -180px;
}

.testimonial-heading h2 {
    font-size: 52px;
    font-weight: 700;
    margin-bottom: 15px;
}

/* ORANGE UNDERLINE */
.underline {
    width: 290px;
    height: 6px;
    background: #f4a100;
    margin: auto;
    border-radius: 10px;
    margin-top: -30px;
}

.trusted-text-section {
    background-color: #f2f2f2;
    padding: 40px 80px;
    text-align: center;
}

.trusted-text-section p {
    font-size: 20px;
    font-weight: 500;
    color: #111;
    line-height: 1.6;
    max-width: 1100px;
    margin: auto;
    margin-top: 90px;
}

/* Rating */

/* ================= TESTIMONIAL CARDS ================= */

.testimonial-cards-section {
    background: #f5f5f5;
    padding: 80px 60px;
    font-family: 'Poppins', sans-serif;
    margin-top: -100px;
}

.testimonial-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

/* CARD STYLE */
.testimonial-card {
    background: #f8f8f8;
    padding: 40px;
    border-radius: 25px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    transition: 0.3s ease;
}

/* Stars */
.stars {
    font-size: 24px;
    color: #f4b400;
    margin-bottom: 20px;
}

.stars span {
    color: #000;
    font-size: 20px;
    font-weight: 500;
    margin-left: 10px;
}

/* Paragraph */
.testimonial-card p {
    font-size: 20px;
    color: #111;
    line-height: 1.7;
    margin-bottom: 35px;
}

/* Profile section */
.profile {
    display: flex;
    align-items: center;
    gap: 20px;
}

.profile img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 5px 10px rgba(0,0,0,0.1);
}

.profile h4 {
    font-size: 22px;
    font-weight: 600;
    margin: 0;
}

/* Contact US */

/* ================= CONTACT SECTION ================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

.contact-banner {
    width: 90%; /* Banner chhota ho jayega (thodi horizontal spacing ke liye) */
    max-width: 1300px; /* Max size limit */
    min-height: 260px; /* Pehle se kam height, layout ko Compact banane ke liye */
    margin: 20px auto; /* Centered layout padding ke saath */
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 6%; /* Text ki alignment left side mein maintain karne ke liye */
    
    /* Background settings */
    background-image: url("images/star.png"); /* Apni image path dalen */
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    
    /* Rounded Borders - Sirf Right Side Round Hoga */
    border-radius: 50px 50px 50px 50px; /* Top-Right aur Bottom-Right 50px round */
    
    
    font-family: 'Poppins', sans-serif;
    color: #000; /* Text black rahega */
    
    /* Optional shadow look clear karne ke liye */
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    overflow: hidden; /* Rounded corners ke bahar background na jaye */
}

.banner-content {
    max-width: 500px; /* Content width chhota compact look ke liye */
}

.banner-title {
    font-size: 42px; /* Pehle se thoda chhota heading size */
    font-weight: 700;
    margin-bottom: 10px;
    letter-spacing: -1px;
}

.banner-text {
    font-size: 13px; /* Sub-text size bhi reduce kiya gaya hai */
    font-weight: 600;
    line-height: 1.6;
    margin: 0;
    color: #1a1a1a;
}

/* Responsive adjustment for mobile screens */
@media (max-width: 768px) {
    .contact-banner {
        width: 95%;
        padding-left: 5%;
        text-align: center;
        justify-content: center;
        border-radius: 20px; /* Mobile par sabhi sides round kar sakte hain */
    }
    .banner-title {
        font-size: 32px;
    }
    .banner-text {
        font-size: 16px;
    }
}
/* Map aur contact */

body {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    background: #f3f3f3;
}

/* Section */
.contact-section {
    padding: 80px 100px;
    background-color: #ffffff;
}

/* Layout */
.contact-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 80px;
}

/* LEFT SIDE */
.contact-left {
    flex: 1;
}

.logo {
    width: 220px;
    margin-bottom: 30px;
}

.description {
    font-size: 20px;
    line-height: 1.7;
    margin-bottom: 40px;
    color: #111;
}

/* Contact Items */
.contact-item {
    display: flex;
    align-items: center;
    gap: 18px;
    font-size: 22px;
    margin-bottom: 25px;
}

.contact-item i {
    width: 28px;
    height: 28px;
    color: #111;
}

/* Social */
.social-icons {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 25px;
}

.social-icons img {
    width: 40px;
    height: 40px;
    object-fit: contain;
    cursor: pointer;
    transition: 0.3s;
}

.social-icons img:hover {
    transform: scale(1.1);
}

.social-icons span {
    font-size: 20px;
    margin-left: 10px;
}

/* RIGHT SIDE MAP */
.contact-right {
    flex: 1;
}

.contact-right iframe {
    width: 100%;
    height: 500px;
    border: none;
    border-radius: 30px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}

/* Footer Bar */
.footer-bar {
    background: #f4a000;
    text-align: center;
    padding: 5px;
    font-size: 20px;
    font-weight: 500;
}