/* RESET */
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* BODY */
body{
    font-family: 'Poppins', sans-serif;
    background: #ffffff;
    color: #222;
}

/* CONTAINER */
.container{
    width: 95%;
    max-width: 1400px;
    margin: auto;
}

/* TOP BAR */
.top-bar{
    background: #1f2b3d;
    padding: 10px 0;
}

.top-bar-content{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}

.top-contact,
.top-website{
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 14px;
}

.top-contact i,
.top-website i{
    color: #e41515;
}

/* MAIN HEADER */
.main-header{
    background: #ffffff;
    padding: 18px 0;
}

.header-content{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* LOGO AREA */
.logo-area{
    display: flex;
    align-items: center;
    gap: 18px;
}

.logo-area img{
    width: 85px;
}

.logo-area h1{
    font-size: 38px;
    font-weight: 700;
    color: #2e5da7;
    letter-spacing: 1px;
    text-shadow: 0px 3px 10px rgba(0,0,0,0.15);
}

/* CTA BUTTONS */
.header-cta{
    display: flex;
    align-items: center;
    gap: 15px;
}

/* ROUND BUTTONS */
.cta-btn{
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-size: 22px;
    transition: 0.3s ease;
}

.call-btn{
    background: #2f7edb;
    color: #fff;
}

.whatsapp-btn{
    background: #2f7edb;
    color: #fff;
}

.cta-btn:hover{
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

/* NAVBAR */
.navbar{
    background: #263246;
    width: 100%;
    overflow: hidden;
}

/* NAV SCROLL */
.nav-scroll{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;

    padding: 18px 20px;

    overflow-x: auto;
    white-space: nowrap;

    scrollbar-width: none;
}

/* HIDE SCROLLBAR */
.nav-scroll::-webkit-scrollbar{
    display: none;
}

/* NAV LINKS */
.nav-scroll a{
    text-decoration: none;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    position: relative;
    flex-shrink: 0;
}

/* HOVER EFFECT */
.nav-scroll a::after{
    content: '';
    position: absolute;
    left: 0;
    bottom: -18px;
    width: 0%;
    height: 4px;
    background: #c40505;
    transition: 0.3s ease;
}

.nav-scroll a:hover::after{
    width: 100%;
}

/* ================= MOBILE ================= */

@media(max-width:768px){

    .nav-scroll{
        justify-content: flex-start;
        gap: 30px;
        padding: 16px 15px;
    }

    .nav-scroll a{
        font-size: 14px;
    }
}

@media(max-width: 768px){

    /* TOP BAR */
    .top-bar{
        padding: 8px 0;
    }

    .top-bar-content{
        justify-content: center;
        gap: 12px;
        flex-direction:row;
    }

    .top-contact,
    .top-website{
        font-size: 13px;
    }

    /* HEADER */
    .main-header{
        padding: 15px 0;
    }

    .header-content{
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .logo-area{
        gap: 10px;
    }

    .logo-area img{
        width: 60px;
    }

    .logo-area h1{
        font-size: 18px;
        line-height: 1.3;
    }

    /* CTA BUTTONS */
    .header-cta{
        gap: 10px;
    }

    .cta-btn{
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    /* NAVBAR */
    .nav-container{
        justify-content: flex-end;
    }

    .menu-toggle{
        display: block;
    }

    .nav-links{
        position: absolute;
        top: 60px;
        left: 0;
        width: 100%;
        background: #263246;
        flex-direction: column;
        align-items: center;
        gap: 0;
        display: none;
        z-index: 999;
    }

    .nav-links.active{
        display: flex;
    }

    .nav-links li{
        width: 100%;
        text-align: center;
        border-top: 1px solid rgba(255,255,255,0.08);
        padding: 18px 0;
    }

    .nav-links a::after{
        display: none;
    }
}



/* =========================
   BRAND SECTION
========================= */

.brand-section{
    background: #f7f7f7;
    padding: 50px 0;
    overflow: hidden;
}

.brand-section h2{
    text-align: center;
    font-size: 34px;
    margin-bottom: 40px;
    color: #263246;
}

/* SLIDER */
.brand-slider{
    overflow: hidden;
    width: 100%;
}

/* TRACK */
.brand-track{
    display: flex;
    width: max-content;

    animation: scrollBrands 35s linear infinite;
}

/* BRAND CARD */
.brand-card{
    width: 150px;
    height: 140px;

    background: #fff;

    margin-right: 20px;

    border-radius: 16px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    flex-shrink: 0;

    box-shadow: 0 5px 18px rgba(0,0,0,0.05);
}

/* IMAGE */
.brand-card img{
    width: 80px;
    height: 60px;
    object-fit: contain;
}

/* TEXT */
.brand-card p{
    margin-top: 10px;
    font-size: 13px;
    font-weight: 600;
}

/* INFINITE ANIMATION */
@keyframes scrollBrands{

    0%{
        transform: translateX(0);
    }

    100%{
        transform: translateX(-50%);
    }
}

/* MOBILE */
@media(max-width:768px){

    .brand-section{
        padding: 40px 0;
    }

    .brand-section h2{
        font-size: 24px;
        padding: 0 15px;
    }

    .brand-track{
        animation-duration: 22s;
    }

    .brand-card{
        width: 110px;
        height: 105px;
    }

    .brand-card img{
        width: 60px;
        height: 42px;
    }

    .brand-card p{
        font-size: 11px;
    }
}



/* =========================
   PRODUCT SECTION
========================= */

.product-section{
    background: #f7f7f7;
    padding: 60px 0;
}

.product-section h2{
    text-align: center;
    font-size: 38px;
    color: #263246;
    margin-bottom: 50px;
    font-weight: 700;
}

/* GRID */
.product-grid{
    width: 92%;
    margin: auto;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 30px;
}

/* CARD */
.product-card{
    background: #ffffff;

    border-radius: 20px;

    padding: 30px 20px;

    text-align: center;

    box-shadow: 0 5px 20px rgba(0,0,0,0.05);

    transition: 0.3s ease;
}

.product-card:hover{
    transform: translateY(-6px);
}

/* TITLE */
.product-card h3{
    font-size: 28px;
    color: #263246;
    margin-bottom: 25px;
    font-weight: 700;
}

/* IMAGE */
.product-card img{
    width: 100%;
    max-width: 240px;
    height: 220px;
    object-fit: contain;
}

/* BUTTON AREA */
.card-buttons{
    margin-top: 25px;

    display: flex;
    justify-content: center;
    gap: 15px;
}

/* BUTTONS */
.card-buttons a{
    text-decoration: none;

    padding: 12px 24px;

    border-radius: 40px;

    color: #fff;

    font-size: 15px;
    font-weight: 600;

    display: flex;
    align-items: center;
    gap: 8px;
}

/* CALL */
.call-btn{
    background: #fb5252;
}

/* WHATSAPP */
.whatsapp-btn{
    background: #25D366;
}

/* =========================
   TABLET
========================= */

@media(max-width:992px){

    .product-grid{
        grid-template-columns: repeat(2, 1fr);
    }
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .product-section{
        padding: 40px 0;
    }

    .product-section h2{
        font-size: 26px;
        margin-bottom: 30px;
    }

    /* SINGLE CARD */
    .product-grid{
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .product-card{
        padding: 25px 18px;
        border-radius: 18px;
    }

    .product-card h3{
        font-size: 22px;
        margin-bottom: 18px;
    }

    .product-card img{
        max-width: 200px;
        height: 180px;
    }

    .card-buttons{
        gap: 10px;
    }

    .card-buttons a{
        padding: 11px 18px;
        font-size: 14px;
    }
}

.logo-text{
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 1.1;
}

.logo-text h1{
    color: #ff0000;
    font-size: 38px;
    font-weight: 700;
    margin: 0;
}

.logo-text h2{
    color: #263246;
    font-size: 22px;
    font-weight: 600;
    margin-top: 4px;
}

/* MOBILE */
@media(max-width:768px){

    .logo-text h1{
        font-size: 22px;
    }

    .logo-text h2{
        font-size: 14px;
    }
}


/* =========================
         FOOTER
========================= */

.footer{
    background: #050505;
    padding-top: 50px;
    margin-top: 60px;
}

/* CONTAINER */
.footer-container{
    width: 95%;
    margin: auto;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    gap: 50px;

    padding-bottom: 40px;
}

/* LEFT SIDE */
.footer-left{
    width: 45%;
}

.footer-left h2{
    color: #fb2020;
    font-size: 46px;
    margin-bottom: 25px;
    font-weight: 700;
}

/* ITEMS */
.footer-item{
    display: flex;
    align-items: flex-start;
    gap: 14px;

    margin-bottom: 16px;
}

/* ICONS */
.footer-item i{
    color: #ff0000;
    font-size: 20px;
    margin-top: 3px;
}

/* LINKS */
.footer-item a{
    color: #ffffff;
    text-decoration: none;
    font-size: 18px;
    line-height: 1.6;

    transition: 0.3s ease;
}

.footer-item a:hover{
    color: #ff0303;
}

/* MAP */
.footer-map{
    width: 50%;
}

.footer-map iframe{
    width: 100%;
    height: 320px;
    border: none;
    border-radius: 6px;
}

/* BOTTOM */
.footer-bottom{
    border-top: 1px solid rgba(255,255,255,0.1);

    text-align: center;

    padding: 28px 15px;
}

.footer-bottom p{
    color: #ffffff;
    font-size: 15px;
    margin-bottom: 12px;
}

/* =========================
         TABLET
========================= */

@media(max-width:992px){

    .footer-container{
        flex-direction: column;
        align-items: center;
    }

    .footer-left,
    .footer-map{
        width: 100%;
    }

    .footer-left{
        text-align: center;
    }

    .footer-item{
        justify-content: center;
    }
}

/* =========================
         MOBILE
========================= */

@media(max-width:768px){

    .footer{
        padding-top: 40px;
    }

    .footer-left h2{
        font-size: 28px;
        margin-bottom: 20px;
    }

    .footer-item{
        gap: 10px;
        margin-bottom: 14px;
    }

    .footer-item i{
        font-size: 16px;
    }

    .footer-item a{
        font-size: 14px;
        line-height: 1.5;
    }

    .footer-map iframe{
        height: 250px;
    }

    .footer-bottom{
        padding: 22px 10px;
    }

    .footer-bottom p{
        font-size: 13px;
        line-height: 1.5;
    }
}

.footer-title{
    margin-bottom: 25px;
}

.footer-title h2{
    color: #ff4d00;
    font-size: 46px;
    font-weight: 700;
    margin-bottom: 5px;
}

.footer-title h3{
    color: #ffffff;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 2px;
}

/* MOBILE */
@media(max-width:768px){

    .footer-title h2{
        font-size: 28px;
    }

    .footer-title h3{
        font-size: 15px;
    }
}



/* =========================
   INSTALLATION SECTION
========================= */

.installation-section{
    padding: 60px 0;
    background: #f7f7f7;
    overflow: hidden;
}

.installation-section h2{
    text-align: center;
    font-size: 36px;
    color: #263246;
    margin-bottom: 40px;
}

/* SLIDER */
.installation-slider{
    overflow: hidden;
    width: 100%;
}

/* TRACK */
.installation-track{
    display: flex;
    width: max-content;

    animation: installationScroll 35s linear infinite;
}

/* CARD */
.install-card{
    width: 320px;
    height: 240px;

    margin-right: 22px;

    border-radius: 18px;

    overflow: hidden;

    flex-shrink: 0;

    background: #fff;

    box-shadow: 0 5px 20px rgba(0,0,0,0.08);
}

/* IMAGE */
.install-card img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ANIMATION */
@keyframes installationScroll{

    0%{
        transform: translateX(0);
    }

    100%{
        transform: translateX(-50%);
    }
}

/* MOBILE */
@media(max-width:768px){

    .installation-section{
        padding: 40px 0;
    }

    .installation-section h2{
        font-size: 24px;
        margin-bottom: 25px;
    }

    .installation-track{
        animation-duration: 22s;
    }

    .install-card{
        width: 240px;
        height: 180px;
        margin-right: 15px;
        border-radius: 14px;
    }
}


/* =========================
   FLOATING GOOGLE REVIEW
========================= */

.google-review-float{
    position: fixed;

    bottom: 20px;
    left: 20px;

    background: #ffffff;

    padding: 12px 16px;

    border-radius: 18px;

    box-shadow: 0 6px 20px rgba(0,0,0,0.12);

    text-decoration: none;

    z-index: 9999;

    transition: 0.3s ease;

    border: 1px solid #ececec;
}

/* HOVER */
.google-review-float:hover{
    transform: translateY(-4px);
}

/* TOP */
.review-top{
    display: flex;
    align-items: center;
    gap: 6px;

    margin-bottom: 2px;
}

/* STAR */
.star{
    font-size: 18px;
}

/* RATING */
.rating{
    color: #222;
    font-size: 16px;
    font-weight: 700;
}

/* TEXT */
.review-bottom{
    color: #666;
    font-size: 13px;
    font-weight: 500;
}

/* MOBILE */
@media(max-width:768px){

    .google-review-float{
        left: 12px;
        bottom: 14px;

        padding: 10px 14px;

        border-radius: 15px;
    }

    .rating{
        font-size: 14px;
    }

    .review-bottom{
        font-size: 11px;
    }

    .star{
        font-size: 16px;
    }
}


/* =========================
     COUNTER SECTION
========================= */

.counter-section{
    padding: 60px 0;
    background: #ffffff;
}

.counter-container{
    width: 92%;
    margin: auto;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 25px;
}

.counter-box{
    background: #f7f7f7;

    border-radius: 20px;

    padding: 40px 20px;

    text-align: center;

    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
}

.counter-box h2{
    font-size: 48px;
    color: #ff9800;
    margin-bottom: 10px;
}

.counter-box p{
    font-size: 18px;
    color: #263246;
    font-weight: 600;
}

/* =========================
     WHY SECTION
========================= */

.why-section{
    padding: 60px 0;
    background: #f7f7f7;
}

.why-section h2{
    text-align: center;
    font-size: 38px;
    color: #263246;
    margin-bottom: 45px;
}

.why-grid{
    width: 92%;
    margin: auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 25px;
}

.why-card{
    background: #ffffff;

    padding: 35px 20px;

    border-radius: 20px;

    text-align: center;

    box-shadow: 0 5px 20px rgba(0,0,0,0.05);

    transition: 0.3s ease;
}

.why-card:hover{
    transform: translateY(-5px);
}

.why-card i{
    font-size: 42px;
    color: #ff9800;
    margin-bottom: 20px;
}

.why-card h3{
    font-size: 22px;
    color: #263246;
    margin-bottom: 12px;
}

.why-card p{
    font-size: 15px;
    color: #666;
    line-height: 1.6;
}

/* =========================
     FLOATING BUTTONS
========================= */

.floating-whatsapp,
.floating-call{
    position: fixed;

    width: 60px;
    height: 60px;

    border-radius: 50%;

    display: flex;
    justify-content: center;
    align-items: center;

    color: #ffffff;

    font-size: 28px;

    text-decoration: none;

    z-index: 9999;

    box-shadow: 0 5px 20px rgba(0,0,0,0.18);

    transition: 0.3s ease;
}

/* WHATSAPP */
.floating-whatsapp{
    right: 20px;
    bottom: 20px;

    background: #25D366;
}

/* CALL */
.floating-call{
    right: 20px;
    bottom: 95px;

    background: #ff9800;
}

/* HOVER */
.floating-whatsapp:hover,
.floating-call:hover{
    transform: scale(1.08);
}

/* =========================
     MOBILE
========================= */

@media(max-width:768px){

 /* =========================
     MOBILE COUNTERS
========================= */

@media(max-width:768px){

    .counter-section{
        padding: 35px 12px;
    }

    .counter-container{
        display: flex;
        flex-direction: row;

        gap: 10px;
    }

    .counter-box{
        flex: 1;

        padding: 18px 8px;

        border-radius: 14px;
    }

    .counter-box h2{
        font-size: 24px;
        margin-bottom: 5px;
    }

    .counter-box p{
        font-size: 12px;
        line-height: 1.3;
    }
}

    /* WHY SECTION */
    .why-section{
        padding: 45px 0;
    }

    .why-section h2{
        font-size: 28px;
        margin-bottom: 30px;
    }

    .why-grid{
        grid-template-columns: 1fr;
    }

    .why-card{
        padding: 28px 18px;
    }

    .why-card i{
        font-size: 34px;
    }

    .why-card h3{
        font-size: 20px;
    }

    .why-card p{
        font-size: 14px;
    }

    /* FLOATING BUTTONS */
    .floating-whatsapp,
    .floating-call{
        width: 54px;
        height: 54px;

        font-size: 24px;
    }

    .floating-whatsapp{
        bottom: 16px;
        right: 16px;
    }

    .floating-call{
        bottom: 82px;
        right: 16px;
    }
}


/* =========================
     SEO CONTENT SECTION
========================= */

.seo-content{
    padding: 60px 0;
    background: #ffffff;
}

.seo-container{
    width: 92%;
    max-width: 1100px;
    margin: auto;
}

.seo-content h2{
    font-size: 36px;
    color: #263246;
    margin-bottom: 25px;
    line-height: 1.4;
}

.seo-content p{
    font-size: 17px;
    color: #555;
    line-height: 1.9;
    margin-bottom: 18px;
}

/* MOBILE */
@media(max-width:768px){

    .seo-content{
        padding: 40px 0;
    }

    .seo-content h2{
        font-size: 26px;
    }

    .seo-content p{
        font-size: 15px;
        line-height: 1.8;
    }
}


/* =========================
     SERVICE AREAS
========================= */

.service-areas{
    padding: 60px 0;
    background: #f7f7f7;
    text-align: center;
}

.service-areas h2{
    font-size: 36px;
    color: #263246;
    margin-bottom: 40px;
}

/* GRID */
.area-grid{
    width: 92%;
    margin: auto;

    display: flex;
    flex-wrap: wrap;
    justify-content: center;

    gap: 15px;
}

/* AREA TAG */
.area-grid span{
    background: #ffffff;

    padding: 14px 22px;

    border-radius: 40px;

    font-size: 15px;
    font-weight: 600;

    color: #263246;

    box-shadow: 0 4px 15px rgba(0,0,0,0.05);

    transition: 0.3s ease;
}

.area-grid span:hover{
    transform: translateY(-3px);
}

/* MOBILE */
@media(max-width:768px){

    .service-areas{
        padding: 40px 0;
    }

    .service-areas h2{
        font-size: 26px;
        margin-bottom: 25px;
    }

    .area-grid{
        gap: 10px;
    }

    .area-grid span{
        font-size: 13px;
        padding: 10px 16px;
    }
}