html{
    scroll-behavior: smooth;
}
/* ==========================
   GOOGLE FONT
========================== */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background:#fff;
    color:#222;
    line-height:1.6;
}

.container{
    width:90%;
    max-width:1200px;
    margin:auto;
}

/* ==========================
   HEADER
========================== */

.header{
    background:#fff;
    position:sticky;
    top:0;
    z-index:999;
    box-shadow:0 2px 10px rgba(0,0,0,.08);
}

.header .container{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:18px 0;
}

.logo{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:30px;
    font-weight:700;
    color:#f39c12;
}

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

.logo span{
    color:#f39c12;
}

nav ul{
    display:flex;
    list-style:none;
    gap:35px;
}

nav ul li a{
    text-decoration:none;
    color:#222;
    font-weight:500;
}

.call-btn{
    background:#f39c12;
    color:#fff;
    text-decoration:none;
    padding:12px 26px;
    border-radius:40px;
    font-weight:600;
}

/* ==========================
   HERO
========================== */

.hero{
    padding:120px 0 80px;
    background:linear-gradient(135deg,#fff8ee 0%,#ffffff 50%,#fff4e0 100%);
    position:relative;
    overflow:hidden;
}

.hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
}

.hero-text h1{
    font-size:58px;
    line-height:1.15;
    font-weight:800;
    color:#222;
    margin-bottom:20px;
}

.hero-text h1 span{
    color:#f39c12;
}

.hero-text p{
    font-size:20px;
    color:#666;
    line-height:1.8;
    margin-bottom:35px;
}

.hero-buttons{
    display:flex;
    gap:15px;
    margin-bottom:40px;
}

.primary-btn,
.secondary-btn,
.btn-primary{
    padding:15px 34px;
    border-radius:50px;
    text-decoration:none;
    font-weight:600;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    transition:all .35s ease;
}

.primary-btn,
.btn-primary{
    background:linear-gradient(135deg,#ffb300,#f57c00);
    color:#fff;
    box-shadow:0 10px 25px rgba(245,124,0,.35);
}

.primary-btn:hover,
.btn-primary:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 35px rgba(245,124,0,.45);
}

.secondary-btn{
    border:2px solid #f39c12;
    color:#f39c12;
    background:#fff;
}

.secondary-btn:hover{
    background:#f39c12;
    color:#fff;
    transform:translateY(-4px);
    box-shadow:0 18px 35px rgba(243,156,18,.35);
}

.hero-info{
    display:flex;
    gap:60px;
}

.hero-info h3{
    color:#f39c12;
    font-size:34px;
}

.hero-image img{
    width:100%;
    border-radius:20px;
}

/* ==========================
   ABOUT
========================== */

.about{
    padding:90px 0;
    background:#fafafa;
}

.section-title{
    text-align:center;
    margin-bottom:60px;
}

.section-title h2{
    font-size:42px;
    margin-bottom:15px;
}

.section-title p{
    color:#666;
    max-width:700px;
    margin:auto;
}

.about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
    margin-bottom:70px;
}

.about-image img{
    width:100%;
    border-radius:18px;
}

.about-content h3{
    font-size:34px;
    margin-bottom:20px;
}

.about-content p{
    color:#666;
    margin-bottom:20px;
}

.about-content ul{
    list-style:none;
    margin-bottom:30px;
}

.about-content ul li{
    margin-bottom:12px;
}

/* ==========================
   ABOUT CARDS
========================== */

.about-grid:last-child{
    grid-template-columns:repeat(3,1fr);
}

.about-card{
    background:#fff;
    text-align:center;
    padding:40px 25px;
    border-radius:15px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.about-card:hover{
    transform:translateY(-10px);
}

.about-card i{
    font-size:50px;
    color:#f39c12;
    margin-bottom:20px;
}

.about-card h3{
    margin-bottom:15px;
}

.about-card p{
    color:#666;
}

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

@media(max-width:992px){

.hero-grid,
.about-grid{
grid-template-columns:1fr;
}

.about-grid:last-child{
grid-template-columns:1fr;
}

.hero h1{
font-size:42px;
}

nav{
display:none;
}

.hero-info{
flex-wrap:wrap;
gap:25px;
}

}

/* ==========================
   WHY CHOOSE US
========================== */

.section-title{
    text-align:center;
    margin:70px 0 40px;
}

.section-title h2{
    font-size:40px;
    font-weight:700;
}

.section-title p{
    color:#666;
    margin-top:10px;
}

.about-g.section-title{
    text-align:center;
    margin:80px 0 50px;
}

.about-cards{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}


.about-card{
    background:#fff;
    padding:35px;
    border-radius:15px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.about-card:hover{
    transform:translateY(-8px);
}

.about-card i{
    font-size:55px;
    color:#f39c12;
    margin-bottom:20px;
}

.about-card h3{
    margin-bottom:15px;
    font-size:24px;
}

.about-card p{
    color:#666;
}

/* =========================
   WHY CHOOSE SOLAR WALE
========================= */

.about-cards{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 30px;
    margin-top: 40px;
}

.about-card{
    background: #fff;
    padding: 35px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    transition: .3s;
}

.about-card:hover{
    transform: translateY(-8px);
}

.about-card i{
    font-size: 55px;
    color: #f39c12;
    margin-bottom: 20px;
}

.about-card h3{
    margin-bottom: 15px;
    font-size: 24px;
}

.about-card p{
    color:#666;
}
.about-card p{
    color:#666;
}

/* ===========================
   SERVICES SECTION
=========================== */

.services{
    padding:90px 0;
    background:#f8fafc;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.service-card{
    background:#fff;
    padding:35px 25px;
    border-radius:18px;
    text-align:center;
    transition:.3s;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

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

.service-card i{
    font-size:55px;
    color:#f59e0b;
    margin-bottom:20px;
}

.service-card h3{
    margin-bottom:15px;
    font-size:24px;
}

.service-card p{
    color:#666;
}
/* ================= PROJECTS ================= */

.projects{
    padding:80px 0;
    background:#fff;
}

.projects-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
    margin-top:40px;
}

.project-card{
    background:#fff;
    border-radius:15px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
    text-align:center;
}

.project-card:hover{
    transform:translateY(-8px);
}

.project-card img{
    width:100%;
    height:220px;
    object-fit:cover;
}

.project-card h3{
    padding:20px;
}


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

.contact{
    padding:80px 0;
    background:#f8f9fb;
}

.contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    margin-top:40px;
}

.contact-info h3{
    font-size:30px;
    margin-bottom:20px;
}

.contact-info p{
    margin:15px 0;
    font-size:18px;
}

.contact form{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.contact input,
.contact textarea{
    width:100%;
    padding:15px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:16px;
}

.contact textarea{
    height:160px;
}


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

footer{
    background:#111;
    color:#fff;
    padding:25px 0;
    text-align:center;
}
/* WhatsApp Floating Button */

.whatsapp{
    position:fixed;
    right:25px;
    bottom:25px;
    width:60px;
    height:60px;
    background:#25D366;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:32px;
    text-decoration:none;
    box-shadow:0 10px 25px rgba(0,0,0,.25);
    z-index:999;
    transition:.3s;
}

.whatsapp:hover{
    transform:scale(1.1);
}
.service-card img{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius:10px;
    margin-bottom:15px;
}

.service-card{
    overflow:hidden;
}
.service-card{
    transition:.3s;
}

.service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 15px 35px rgba(0,0,0,.2);
}
/* FEATURES */

.features{
    padding:40px 0;
    background:#f8f8f8;
}

.features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.feature-box{
    background:#fff;
    padding:35px 25px;
    text-align:center;
    border-radius:20px;
    transition:.4s ease;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    position:relative;
    overflow:hidden;
    cursor:pointer;
}

.feature-box::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:4px;
    background:#f39c12;
    transition:.4s;
}

.feature-box:hover::before{
    left:0;
}

.feature-box:hover{
    transform:translateY(-12px);
    box-shadow:0 20px 45px rgba(243,156,18,.25);
}

.feature-box i{
    font-size:48px;
    color:#f39c12;
    margin-bottom:20px;
    transition:.3s;
}

.feature-box:hover i{
    transform:rotate(10deg) scale(1.1);
}

.feature-box h4{
    font-size:22px;
    color:#222;
    line-height:1.5;
}

/* ABOUT STATS */

.about-stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    margin-top:40px;
}

.stat-box{
    background:#fff;
    padding:25px;
    border-radius:15px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
}

.stat-box:hover{
    transform:translateY(-8px);
}

.stat-box h3{
    color:#f39c12;
    font-size:34px;
    margin-bottom:10px;
}

.stat-box p{
    font-weight:600;
}
/* ================= ABOUT SECTION ================= */

.about{
    padding:100px 10%;
    background:#f8fafc;
}

.about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
    margin-top:50px;
}

.about-image img{
    width:100%;
    border-radius:20px;
}

.about-content h3{
    font-size:32px;
    margin-bottom:20px;
    color:#0f172a;
}

.about-content p{
    color:#555;
    line-height:1.8;
    margin-bottom:20px;
}

.about-content ul{
    list-style:none;
    padding:0;
}

.about-content ul li{
    margin-bottom:12px;
    font-size:17px;
    color:#333;
}

.about-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:70px;
}

.stat-box{
    background:#fff;
    text-align:center;
    padding:30px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.stat-box h3{
    color:#16a34a;
    font-size:32px;
}

.stat-box p{
    margin-top:10px;
    color:#555;
}

.about-cards{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
    margin-top:60px;
}

.about-card{
    background:#fff;
    padding:35px;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
}

.about-card:hover{
    transform:translateY(-10px);
}

.about-card i{
    font-size:45px;
    color:#16a34a;
    margin-bottom:20px;
}

.about-card h3{
    margin-bottom:15px;
}

.about-card p{
    color:#555;
    line-height:1.7;
    margin-bottom:20px;
}

.about-btn{
    color:#16a34a;
    font-weight:600;
    text-decoration:none;
}

.about-btn:hover{
    color:#0f172a;
}
/*========== FOOTER ==========*/

.footer{
    background:#111827;
    color:#fff;
    padding:70px 8%;
    margin-top:80px;
}

.footer-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:40px;
}

.footer h3{
    margin-bottom:20px;
    color:#f59e0b;
}

.footer p,
.footer a{
    color:#ddd;
    text-decoration:none;
    line-height:2;
}

.footer a:hover{
    color:#f59e0b;
}

.footer-bottom{
    text-align:center;
    margin-top:40px;
    border-top:1px solid rgba(255,255,255,.15);
    padding-top:20px;
    font-size:14px;
}

/* Active Navbar Link */
.nav-links a.active {
    color: #f59e0b;
    font-weight: 700;
}

.nav-links a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 0;
    height: 2px;
    background: #f59e0b;
    transition: .3s;
}

.nav-links a.active::after,
.nav-links a:hover::after {
    width: 100%;
}

.nav-links a{
    position: relative;
}

.header {
    position: sticky;
    top: 0;
    z-index: 1000;
    backdrop-filter: blur(12px);
    background: rgba(255,255,255,0.92);
    transition: .3s;
}

.header.scrolled{
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

/* Service Card Hover Effect */
.service-card {
    transition: all 0.4s ease;
    cursor: pointer;
}

.service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

/* Project Card Hover */
.project-card{
    overflow: hidden;
    transition: all .4s ease;
    cursor: pointer;
}

.project-card img{
    transition: transform .5s ease;
}

.project-card:hover{
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,.15);
}

.project-card:hover img{
    transform: scale(1.08);
}

/* ================= GALLERY ================= */

.gallery{
    padding:90px 0;
    background:#f8f9fa;
}

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:25px;
}

.gallery-item{
    overflow:hidden;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    cursor:pointer;
    transition:.4s;
    background:#fff;
}

.gallery-item img{
    width:100%;
    height:260px;
    object-fit:cover;
    display:block;
    transition:.5s;
}

.gallery-item:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(0,0,0,.18);
}

.gallery-item:hover img{
    transform:scale(1.08);
}

.gallery .section-title{
    text-align:center;
    margin-bottom:45px;
}

.gallery .section-title h2{
    font-size:38px;
    color:#222;
    margin-bottom:10px;
}

.gallery .section-title p{
    color:#666;
    font-size:17px;
}

/* ================= HERO IMAGE EFFECT ================= */

.hero-image{
    position:relative;
    animation:float 4s ease-in-out infinite;
}

.hero-image img{
    filter:drop-shadow(0 25px 40px rgba(243,156,18,.35));
}

@keyframes float{
    0%{transform:translateY(0);}
    50%{transform:translateY(-15px);}
    100%{transform:translateY(0);}
}

.primary-btn{
    box-shadow:0 10px 25px rgba(243,156,18,.35);
}

.primary-btn:hover{
    background:#ffb300;
    transform:translateY(-3px);
}

.secondary-btn:hover{
    background:#25D366;
    color:#fff;
    border-color:#25D366;
}

/* ================= TESTIMONIAL ================= */

.testimonials{
    padding:90px 0;
    background:#fff;
}

.testimonial-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:25px;
}

.testimonial-card{
    background:#fff;
    padding:30px;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
}

.testimonial-card:hover{
    transform:translateY(-10px);
}

.testimonial-card p{
    margin:20px 0;
    color:#555;
    line-height:1.8;
}

.testimonial-card h4{
    color:#f39c12;
}
/*==========================
TESTIMONIALS
==========================*/

.testimonials{
    padding:90px 0;
    background:#f8fafc;
}

.testimonial-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:25px;
    margin-top:50px;
}

.testimonial-card{
    background:#fff;
    padding:35px 30px;
    border-radius:20px;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
    transition:.35s;
    position:relative;
    overflow:hidden;
}

.testimonial-card::before{
    content:"★★★★★";
    position:absolute;
    top:20px;
    right:20px;
    color:#f39c12;
    opacity:.15;
    font-size:26px;
}

.testimonial-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 40px rgba(243,156,18,.25);
}

.testimonial-card p{
    color:#555;
    line-height:1.8;
    margin-bottom:25px;
    font-size:15px;
}

.testimonial-card h4{
    color:#f39c12;
    font-size:20px;
    margin-bottom:5px;
}

.testimonial-card span{
    color:#777;
    font-weight:600;
}

/*==========================
FAQ
==========================*/

.faq{
    padding:90px 0;
    background:#fff;
}

.faq-box{
    max-width:900px;
    margin:40px auto 0;
}

.faq-box details{
    background:#f8f8f8;
    margin-bottom:15px;
    border-radius:12px;
    padding:18px 22px;
    transition:.3s;
    border-left:5px solid #f39c12;
}

.faq-box details:hover{
    background:#fff;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.faq-box summary{
    cursor:pointer;
    font-size:18px;
    font-weight:600;
    color:#222;
    list-style:none;
}

.faq-box summary::-webkit-details-marker{
    display:none;
}

.faq-box p{
    margin-top:15px;
    color:#666;
    line-height:1.8;
}

/*==========================
BRANDS
==========================*/

.brands{
    padding:90px 0;
    background:#f8fafc;
}

.brands-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:25px;
    margin-top:50px;
}

.brand-card{
    background:#fff;
    border-radius:18px;
    padding:25px;
    display:flex;
    justify-content:center;
    align-items:center;
    height:120px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}

.brand-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(243,156,18,.20);
}

.brand-card img{
    max-width:130px;
    max-height:60px;
    object-fit:contain;
    filter:grayscale(100%);
    transition:.35s;
}

.brand-card:hover img{
    filter:none;
}

/*==========================
GOOGLE MAP
==========================*/

.map-section{
    padding:90px 0;
    background:#f8fafc;
}

.map-box{
    overflow:hidden;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

.map-box iframe{
    display:block;
    width:100%;
}
/*==========================
SOLAR CALCULATOR
==========================*/

.calculator{
    padding:90px 0;
    background:#f8f9fa;
}

.calculator-box{
    max-width:600px;
    margin:auto;
    background:#fff;
    padding:40px;
    border-radius:20px;
    box-shadow:0 15px 40px rgba(0,0,0,.1);
    text-align:center;
}

.calculator-box input{
    width:100%;
    padding:15px;
    border:2px solid #ddd;
    border-radius:10px;
    font-size:18px;
    margin-bottom:20px;
}

.calculator-box button{
    width:100%;
    padding:15px;
    border:none;
    border-radius:10px;
    background:#f39c12;
    color:#fff;
    font-size:18px;
    cursor:pointer;
    transition:.3s;
}

.calculator-box button:hover{
    background:#d68910;
}

.result{
    margin-top:30px;
}

.result h3{
    margin:15px 0;
    color:#333;
}

/*==========================
BACK TO TOP BUTTON
==========================*/

#topBtn{
    position:fixed;
    bottom:25px;
    right:25px;
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:#f39c12;
    color:#fff;
    font-size:22px;
    cursor:pointer;
    display:none;
    z-index:999;
    box-shadow:0 10px 25px rgba(0,0,0,.25);
    transition:.3s;
}

#topBtn:hover{
    background:#25D366;
    transform:translateY(-5px);
}

/* ================= BACK TO TOP ================= */

#topBtn{
    position:fixed;
    bottom:25px;
    right:25px;
    width:50px;
    height:50px;
    border:none;
    border-radius:50%;
    background:#f39c12;
    color:#fff;
    font-size:20px;
    cursor:pointer;
    display:none;
    z-index:999;
    transition:.3s;
    box-shadow:0 10px 20px rgba(0,0,0,.25);
}

#topBtn:hover{
    background:#222;
    transform:translateY(-5px);
}

/* =========================
   Floating Buttons
========================= */

.floating-buttons{
    position:fixed;
    right:20px;
    bottom:20px;
    display:flex;
    flex-direction:column;
    gap:15px;
    z-index:9999;
}

.float-btn{
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    text-decoration:none;
    font-size:26px;
    box-shadow:0 8px 20px rgba(0,0,0,.25);
    transition:.3s;
}

.float-btn:hover{
    transform:translateY(-5px) scale(1.08);
}

.whatsapp-btn{
    background:#25D366;
}

.call-btn{
    background:#f39c12;
}

/*==========================
LIGHTBOX
==========================*/

.lightbox{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:100%;

    background:rgba(0,0,0,.9);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:99999;

}

.lightbox img{

    max-width:90%;

    max-height:90%;

    border-radius:10px;

}

.close-lightbox{

    position:absolute;

    top:30px;

    right:40px;

    font-size:45px;

    color:#fff;

    cursor:pointer;

}

/*==========================
PRELOADER
==========================*/

#preloader{
    position:fixed;
    inset:0;
    background:#ffffff;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:999999;
}

.loader{
    width:70px;
    height:70px;
    border:6px solid #eee;
    border-top:6px solid #f39c12;
    border-radius:50%;
    animation:spin 1s linear infinite;
}

@keyframes spin{
    100%{
        transform:rotate(360deg);
    }
}

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

.menu-toggle{
    display:none;
    font-size:28px;
    cursor:pointer;
    color:#222;
}

@media (max-width:768px){

    .menu-toggle{
        display:block;
    }

    .nav-btn{
        display:none;
    }

    .nav-links{
        position:absolute;
        top:80px;
        left:0;
        width:100%;
        background:#fff;
        flex-direction:column;
        align-items:center;
        padding:20px 0;
        box-shadow:0 10px 20px rgba(0,0,0,.1);

        display:none;
    }

    .nav-links.active{
        display:flex;
    }

    .nav-links li{
        margin:15px 0;
    }

}

/* Floating WhatsApp Button */

.whatsapp-float{
position:fixed;
bottom:25px;
right:25px;
width:65px;
height:65px;
background:#25D366;
color:#fff;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:34px;
text-decoration:none;
box-shadow:0 8px 25px rgba(0,0,0,.25);
z-index:99999;
transition:.3s;
animation:whatsappPulse 2s infinite;
}

.whatsapp-float:hover{
transform:scale(1.12);
background:#20ba5a;
}

@keyframes whatsappPulse{

0%{
box-shadow:0 0 0 0 rgba(37,211,102,.6);
}

70%{
box-shadow:0 0 0 18px rgba(37,211,102,0);
}

100%{
box-shadow:0 0 0 0 rgba(37,211,102,0);
}

}

/* Government Subsidy Banner */

.subsidy-banner{

background:linear-gradient(90deg,#0b7a3b,#16a34a);

padding:35px 0;

color:#fff;

}

.subsidy-grid{

display:flex;

justify-content:space-between;

align-items:center;

gap:20px;

flex-wrap:wrap;

}

.subsidy-banner h2{

font-size:32px;

margin-bottom:10px;

}

.subsidy-banner p{

font-size:18px;

line-height:1.7;

max-width:700px;

}

.subsidy-banner .primary-btn{

background:#fff;

color:#0b7a3b;

font-weight:700;

}

.subsidy-banner .primary-btn:hover{

background:#f5f5f5;

}

/* Quote Form */

.quote-section{

padding:80px 0;

background:#f7f9fc;

}

.quote-form{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:20px;

margin-top:40px;

}

.quote-form input,
.quote-form select,
.quote-form textarea{

padding:16px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

outline:none;

}

.quote-form textarea{

height:150px;

resize:none;

}

.quote-form button{

grid-column:1/-1;

}