/*============== GOOGLE FONT ==============*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

html{
    scroll-behavior:smooth;
}

body{
    background:#F5F7FA;
    color:#222;
}

/*================ NAVBAR ================*/

header{

    position:fixed;
    width:100%;
    top:0;
    left:0;

    background:rgba(255, 255, 255, 0.785);

    backdrop-filter:blur(12px);

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    z-index:1000;
}

.navbar{

    width:90%;
    margin:auto;

    display:flex;
    justify-content:space-between;
    align-items:center;

    height:80px;
}

.logo{

    font-size:32px;
    font-weight:800;
    color:#0A6CFF;
}

.logo span{

    color:#00B894;
}

.nav-links{

    display:flex;
    list-style:none;
    gap:35px;
}

.nav-links a{

    text-decoration:none;
    color:#333;
    font-weight:500;
    transition:.3s;
}

.nav-links a:hover{

    color:#0A6CFF;
}

.btn{

    text-decoration:none;

    background:#0A6CFF;
    color:#fff;

    padding:12px 28px;

    border-radius:50px;

    transition:.4s;
}

.btn:hover{

    background:#0057D9;
}

.btn-outline{

    text-decoration:none;

    border:2px solid #0A6CFF;

    color:#0A6CFF;

    padding:12px 28px;

    border-radius:50px;

    margin-left:15px;

    transition:.4s;
}

.btn-outline:hover{

    background:#0A6CFF;
    color:white;
}

/*================ MOBILE MENU ================*/

.menu-toggle{

    display:none;

    font-size:28px;

    cursor:pointer;

    color:#0A6CFF;

}

@media (max-width:900px){

    .menu-toggle{

        display:block;

    }

    .nav-btn{

        display:none;

    }

    .nav-links{

        position:absolute;

        top:80px;

        left:0;

        width:100%;

        background:#fff;

        display:flex;

        flex-direction:column;

        align-items:center;

        gap:0;

        max-height:0;

        overflow:hidden;

        transition:.4s ease;

        box-shadow:0 10px 30px rgba(0,0,0,.08);

    }

    .nav-links.active{

        max-height:500px;

        padding:20px 0;

    }

    .nav-links li{

        width:100%;

        text-align:center;

    }

    .nav-links li a{

        display:block;

        padding:18px;

        border-bottom:1px solid #eee;

    }

    .navbar{

        height:80px;

    }

}

/*================ HERO ================*/

.hero{

    width:90%;

    margin:auto;

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:60px;
}

.hero-content{

    flex:1;
}

.hero-content h1{

    font-size:64px;

    line-height:1.15;

    margin-bottom:25px;
}

.hero-content p{

    font-size:18px;

    color:#555;

    line-height:1.8;

    margin-bottom:40px;
}

.hero-image{

    flex:1;
}

.hero-image img{

    width:100%;

    border-radius:25px;

    box-shadow:0 20px 60px rgba(0,0,0,.15);
}

/*================ RESPONSIVE ================*/

@media(max-width:900px){

.hero{

flex-direction:column;

padding-top:130px;

text-align:center;

}

.hero-content h1{

font-size:42px;

}

.navbar{

flex-direction:column;

height:auto;

padding:20px;
}

.nav-links{

margin:20px 0;

flex-wrap:wrap;

justify-content:center;

}

}

.about{

    flex-direction:column;
    text-align:center;
}

.about-features{

    align-items:center;
}

.feature{

    flex-direction:column;
    align-items:center;
}

.experience-card{

    right:20px;
}

/*================ ABOUT SECTION ================*/

.about{

    width:90%;
    margin:100px auto;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:80px;
}

.about-image{

    flex:1;
    position:relative;
}

.about-image img{

    width:100%;
    border-radius:20px;
    display:block;
}

.experience-card{

    position:absolute;
    bottom:30px;
    right:-30px;

    background:#0A6CFF;
    color:#fff;

    padding:25px;

    border-radius:15px;

    text-align:center;

    box-shadow:0 15px 35px rgba(0,0,0,.2);
}

.experience-card h2{

    font-size:42px;
    margin-bottom:5px;
}

.about-content{

    flex:1;
}

.section-tag{

    display:inline-block;

    background:#EAF2FF;
    color:#0A6CFF;

    padding:8px 18px;

    border-radius:30px;

    font-weight:600;

    margin-bottom:20px;
}

.about-content h2{

    font-size:42px;
    line-height:1.3;

    margin-bottom:25px;
}

.about-content p{

    color:#666;
    line-height:1.8;
    margin-bottom:35px;
}

.about-features{

    display:flex;
    flex-direction:column;

    gap:25px;

    margin-bottom:40px;
}

.feature{

    display:flex;
    align-items:flex-start;
    gap:18px;
}

.feature i{

    font-size:28px;
    color:#0A6CFF;
}

.feature h4{

    margin-bottom:6px;
    font-size:20px;
}

.feature p{

    margin:0;
}

/*================ PRODUCTS ================*/

.products{

    width:90%;
    margin:100px auto;
}

.section-header{

    text-align:center;
    max-width:700px;
    margin:auto;
    margin-bottom:60px;
}

.section-header h2{

    font-size:42px;
    margin:20px 0;
}

.section-header p{

    color:#666;
    line-height:1.8;
}

.products-grid{

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:35px;
}

.product-card{

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    transition:.4s;

    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.product-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 45px rgba(0,0,0,.15);
}

.product-image{

    position:relative;

    overflow:hidden;
}

.product-image img{

    width:100%;

    height:260px;

    object-fit:cover;

    transition:.5s;
}

.product-card:hover img{

    transform:scale(1.08);
}

.product-badge{

    position:absolute;

    top:20px;
    left:20px;

    background:#00B894;

    color:#fff;

    padding:8px 15px;

    border-radius:30px;

    font-size:13px;

    font-weight:600;
}

.product-info{

    padding:25px;
}

.product-info h3{

    margin-bottom:15px;

    font-size:24px;
}

.product-info p{

    color:#666;

    line-height:1.7;

    margin-bottom:25px;
}

.product-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;
}

.price{

    background:#EAF2FF;

    color:#0A6CFF;

    padding:8px 15px;

    border-radius:20px;

    font-size:14px;

    font-weight:600;
}

.product-footer a{

    text-decoration:none;

    color:#0A6CFF;

    font-weight:600;

    transition:.3s;
}

.product-footer a:hover{

    color:#00B894;
}

/*================ CATEGORIES ================*/

.categories{

    width:90%;
    margin:120px auto;

}

.category-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));

    gap:30px;

}

.category-card{

    position:relative;

    height:330px;

    overflow:hidden;

    border-radius:25px;

    cursor:pointer;

}

.category-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.category-card:hover img{

    transform:scale(1.12);

}

.overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(to top,
    rgba(0,0,0,.8),
    rgba(0,0,0,.2));

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:35px;

    color:white;

}

.overlay h3{

    font-size:28px;

    margin-bottom:10px;

}

.overlay p{

    margin-bottom:20px;

    color:#ddd;

}

.category-btn{

    width:150px;

    text-align:center;

    text-decoration:none;

    color:white;

    border:2px solid white;

    padding:12px;

    border-radius:40px;

    transition:.4s;

}

.category-btn:hover{

    background:white;

    color:#0A6CFF;

}

/*================ CEO SECTION ================*/

.ceo{

    width:90%;
    margin:120px auto;

    display:flex;

    align-items:center;

    gap:80px;

}

.ceo-image{

    flex:1;

    position:relative;

}

.ceo-image img{

    width:100%;

    border-radius:25px;

    display:block;

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

.ceo-badge{

    position:absolute;

    left:30px;

    bottom:30px;

    background:#0A6CFF;

    color:white;

    padding:15px 30px;

    border-radius:50px;

    font-weight:600;

}

.ceo-content{

    flex:1;

}

.ceo-content h2{

    font-size:44px;

    margin:20px 0 10px;

}

.ceo-content h3{

    color:#0A6CFF;

    font-size:28px;

    margin-bottom:25px;

}

.ceo-message{

    font-size:22px;

    line-height:1.8;

    color:#333;

    font-style:italic;

    margin-bottom:30px;

    border-left:5px solid #0A6CFF;

    padding-left:20px;

}

.ceo-content p{

    color:#666;

    line-height:1.9;

    margin-bottom:25px;

}

.ceo-signature{

    margin-top:40px;

}

.ceo-signature h4{

    font-size:28px;

}

.ceo-signature span{

    color:#0A6CFF;

    font-weight:600;

}

/*================ STATS ================*/

.stats{

    width:90%;

    margin:120px auto;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.stat-box{

    background:white;

    padding:45px;

    border-radius:20px;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.4s;

}

.stat-box:hover{

    transform:translateY(-10px);

}

.stat-box h2{

    color:#0A6CFF;

    font-size:52px;

    margin-bottom:10px;

}

.stat-box p{

    color:#666;

    font-weight:500;

}

/*================ RESPONSIVE ================*/

@media(max-width:900px){

.ceo{

    flex-direction:column;

    text-align:center;

}

.ceo-message{

    border:none;

    padding:0;

}

.stats{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.stats{

    grid-template-columns:1fr;

}

}

/*================ WHY CHOOSE US ================*/

.why-us{

    width:90%;
    margin:120px auto;

}

.why-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:30px;

}

.why-card{

    background:#fff;

    border-radius:20px;

    padding:40px 30px;

    text-align:center;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    transition:.4s;

    border-top:5px solid transparent;

}

.why-card:hover{

    transform:translateY(-12px);

    border-color:#0A6CFF;

    box-shadow:0 25px 45px rgba(0,0,0,.15);

}

.icon{

    width:80px;

    height:80px;

    background:#EAF2FF;

    color:#0A6CFF;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:0 auto 25px;

    font-size:32px;

    transition:.4s;

}

.why-card:hover .icon{

    background:#0A6CFF;

    color:#fff;

    transform:rotate(360deg);

}

.why-card h3{

    margin-bottom:15px;

    font-size:24px;

}

.why-card p{

    color:#666;

    line-height:1.8;

}

/*================ PROJECTS ================*/

.projects{

    width:90%;

    margin:120px auto;

}

.gallery{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

}

.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:20px;

    height:300px;

}

.gallery-item.large{

    grid-row:span 2;

    height:620px;

}

.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.gallery-item:hover img{

    transform:scale(1.1);

}

.gallery-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
    to top,
    rgba(0,0,0,.85),
    rgba(0,0,0,.2)
    );

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:30px;

    color:white;

    opacity:0;

    transition:.4s;

}

.gallery-item:hover .gallery-overlay{

    opacity:1;

}

.gallery-overlay h3{

    font-size:28px;

    margin-bottom:8px;

}

.gallery-overlay p{

    color:#ddd;

}

@media(max-width:900px){

.gallery{

grid-template-columns:1fr;

}

.gallery-item.large{

grid-row:unset;

height:320px;

}

}

/*================ TESTIMONIALS ================*/

.testimonials{

    width:90%;

    margin:120px auto;

}

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

    gap:35px;

}

.testimonial-card{

    background:white;

    padding:35px;

    border-radius:20px;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    transition:.4s;

}

.testimonial-card:hover{

    transform:translateY(-10px);

}

.stars{

    color:#FFD43B;

    margin-bottom:20px;

    font-size:18px;

}

.testimonial-card p{

    color:#666;

    line-height:1.8;

    margin-bottom:30px;

}

.client{

    display:flex;

    align-items:center;

    gap:15px;

}

.client img{

    width:65px;

    height:65px;

    border-radius:50%;

    object-fit:cover;

}

.client h4{

    margin-bottom:5px;

}

.client span{

    color:#0A6CFF;

    font-size:14px;

}

/*================ CONTACT ================*/

.contact{

    width:90%;
    margin:120px auto;

}

.contact-container{

    display:grid;

    grid-template-columns:1fr 1.2fr;

    gap:50px;

    margin-top:60px;

}

.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.info-card{

    background:white;

    padding:25px;

    border-radius:18px;

    display:flex;

    gap:20px;

    align-items:flex-start;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.info-card i{

    width:60px;

    height:60px;

    background:#0A6CFF;

    color:white;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

}

.info-card h3{

    margin-bottom:8px;

}

.info-card p{

    color:#666;

    line-height:1.7;

}

.contact-form{

    background:white;

    padding:40px;

    border-radius:20px;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.row{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:20px;

}

.contact-form input,
.contact-form textarea{

    width:100%;

    padding:18px;

    margin-top:20px;

    border:1px solid #ddd;

    border-radius:10px;

    outline:none;

    font-size:15px;

}

.contact-form input:focus,
.contact-form textarea:focus{

    border-color:#0A6CFF;

}

.contact-form button{

    margin-top:25px;

    padding:16px 35px;

    border:none;

    background:#0A6CFF;

    color:white;

    font-size:16px;

    border-radius:50px;

    cursor:pointer;

    transition:.3s;

}

.contact-form button:hover{

    background:#0056d6;

}

@media(max-width:900px){

.contact-container{

grid-template-columns:1fr;

}

.row{

grid-template-columns:1fr;

}

}

/*================ FOOTER ================*/

.footer{

    background:#0F172A;

    color:white;

    margin-top:120px;

}

.footer-container{

    width:90%;

    margin:auto;

    padding:80px 0;

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1.5fr;

    gap:50px;

}

.footer-logo{

    font-size:36px;

    margin-bottom:20px;

}

.footer-logo span{

    color:#00B894;

}

.footer-column p{

    color:#CBD5E1;

    line-height:1.8;

}

.footer-column h3{

    margin-bottom:25px;

}

.footer-column ul{

    list-style:none;

}

.footer-column li{

    margin-bottom:14px;

}

.footer-column a{

    color:#CBD5E1;

    text-decoration:none;

    transition:.3s;

}

.footer-column a:hover{

    color:white;

    padding-left:6px;

}

.social-links{

    display:flex;

    gap:15px;

    margin-top:25px;

}

.social-links a{

    width:45px;

    height:45px;

    border-radius:50%;

    background:#1E293B;

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    transition:.4s;

}

.social-links a:hover{

    background:#0A6CFF;

    transform:translateY(-5px);

}

.newsletter{

    margin-top:20px;

}

.newsletter input{

    width:100%;

    padding:15px;

    border:none;

    border-radius:10px;

    margin-bottom:15px;

}

.newsletter button{

    width:100%;

    padding:15px;

    border:none;

    background:#0A6CFF;

    color:white;

    border-radius:10px;

    cursor:pointer;

    transition:.3s;

}

.newsletter button:hover{

    background:#0056d6;

}

.footer-bottom{

    text-align:center;

    border-top:1px solid rgba(255,255,255,.1);

    padding:25px;

    color:#CBD5E1;

}

/*================ BACK TO TOP ================*/

.back-top{

    position:fixed;

    right:25px;

    bottom:25px;

    width:55px;

    height:55px;

    background:#0A6CFF;

    color:white;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-size:20px;

    box-shadow:0 10px 25px rgba(0,0,0,.2);

    transition:.4s;

}

.back-top:hover{

    transform:translateY(-5px);

}

/*================ RESPONSIVE ================*/

@media(max-width:900px){

.footer-container{

grid-template-columns:1fr;

text-align:center;

}

.social-links{

justify-content:center;

}

}

/*================ PRODUCT MODAL ================*/

.product-modal{

position:fixed;

left:0;
top:0;

width:100%;
height:100%;

background:rgba(0,0,0,.65);

backdrop-filter:blur(8px);

display:none;

justify-content:center;

align-items:center;

padding:30px;

z-index:99999;

}

.modal-box{

background:white;

width:1100px;

max-width:100%;

display:grid;

grid-template-columns:1fr 1fr;

border-radius:25px;

overflow:hidden;

animation:popup .35s ease;

}

@keyframes popup{

from{

transform:scale(.8);

opacity:0;

}

to{

transform:scale(1);

opacity:1;

}

}

.modal-image{

background:#f5f5f5;

}

.modal-image img{

width:100%;

height:100%;

object-fit:cover;

display:block;

}

.modal-details{

padding:45px;

position:relative;

overflow-y:auto;

max-height:80vh;

}

.close-modal{

position:absolute;

right:25px;

top:15px;

font-size:38px;

cursor:pointer;

color:#888;

transition:.3s;

}

.close-modal:hover{

color:#0A6CFF;

}

.modal-details h2{

font-size:38px;

margin-bottom:20px;

}

.modal-details p{

line-height:1.8;

margin-bottom:30px;

color:#555;

}

.specifications{

margin-bottom:35px;

}

.specifications h3{

margin-bottom:15px;

}

.specifications table{

width:100%;

border-collapse:collapse;

}

.specifications td{

padding:14px;

border-bottom:1px solid #eee;

}

.specifications td:first-child{

font-weight:600;

width:35%;

}

.view-btn{

padding:12px 20px;

border:none;

background:#0A6CFF;

color:white;

border-radius:30px;

cursor:pointer;

font-weight:600;

transition:.3s;

}

.view-btn:hover{

background:#0056d6;

}

@media(max-width:900px){

.modal-box{

grid-template-columns:1fr;

}

.modal-image{

height:300px;

}

.modal-details{

padding:30px;

}

.modal-details h2{

font-size:28px;

}

}


.explore-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

}

.explore-btn i{

    transition:.4s;

}

.explore-btn:hover i{

    transform:translateY(6px);

}

