/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.0
*/

*{
    box-sizing:border-box;
}

/* Header */
.asl-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    background:#fff;
    z-index:999999;
    border-bottom:3px solid #00a0d2;
    box-shadow:none;
}

.asl-header-inner{
    max-width:1280px;
    margin:0 auto;
    height:95px;
    padding:0 28px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

/* Logo */
.asl-logo img,
.asl-logo .custom-logo{
    max-height:88px !important;
    width:auto;
    display:block;
}

/* Navigation */
.asl-nav{
    flex:1;
    display:flex;
    justify-content:center;
    align-items:center;
}

.asl-menu{
    display:flex !important;
    align-items:center;
    gap:35px !important;
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}

.asl-menu li{
    position:relative;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.asl-menu li a{
    display:flex;
    align-items:center;
    height:95px;
    text-decoration:none !important;
    color:#000 !important;
    font-size:16px !important;
    font-weight:700;
    transition:.3s;
}

.asl-menu li a:hover,
.asl-menu li.current-menu-item > a{
    color:#00a0d2 !important;
}

/* Dropdown */
.asl-menu li ul{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    min-width:220px;
    background:#fff;
    padding:14px 0 !important;
    margin:0;
    list-style:none !important;
    border:1px solid #f28c28;
    border-radius:0 14px 14px 14px;
    box-shadow:none;
    z-index:999999;
}

.asl-menu li:hover > ul{
    display:block;
}

.asl-menu li ul li{
    width:100%;
    margin:0 !important;
    padding:0 !important;
}

.asl-menu li ul li a{
    height:auto !important;
    display:block !important;
    padding:13px 26px !important;
    color:#000 !important;
    font-size:16px !important;
    font-weight:600 !important;
    white-space:nowrap;
}

.asl-menu li ul li a:hover{
    color:#2db84d !important;
    background:#f1fff4 !important;
}

.asl-menu li.menu-item-has-children > a::after{
    content:"";
    margin-left:6px;
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:6px solid #000;
}

/* Contact Button */
.asl-contact-btn a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:40px !important;
    padding:0 26px !important;
    background:#000;
    color:#fff !important;
    text-decoration:none !important;
    border-radius:3px;
    font-size:17px !important;
    font-weight:700;
    transition:.3s;
}

/* Desktop Only */
@media(min-width:769px){

    .asl-contact-btn a{
        background:#2db84d !important; /* Logo Green */
    }

    .asl-contact-btn a:hover{
        background:#24963e !important;
        color:#fff !important;
    }

}

@media(min-width:769px){

    .asl-contact-btn{
        margin-right:80px;
    }

}

/* Top Social Bar */
.asl-top-social{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:42px;
    background:#fff;
    z-index:9999999;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    border-bottom:1px solid #eee;
}

.asl-top-social a{
    font-size:18px;
    text-decoration:none;
}

.asl-top-social .facebook{
    color:#1877F2 !important;
}

.asl-top-social .instagram{
    color:#E1306C !important;
}

.asl-top-social .youtube{
    color:#FF0000 !important;
}

/* Header নিচে নামানো */
.asl-header{
    top:42px;
}

/* Mobile Toggle */
.asl-mobile-toggle{
    display:none;
    width:45px;
    height:45px;
    border:0;
    border-radius:10px;
    background:#2db84d !important;
    color:#fff;
    font-size:26px;
    cursor:pointer;
}

.asl-mobile-toggle i{
    font-size:25px !important;
}

/* Mobile Offcanvas */
.asl-mobile-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.45);
    opacity:0;
    visibility:hidden;
    z-index:9999998;
    transition:.3s;
}

.asl-mobile-overlay.active{
    opacity:1;
    visibility:visible;
}

.asl-mobile-menu{
    position:fixed;
    top:0;
    left:-270px;
    width:270px;
    max-width:80%;
    height:100vh;
    background:#fff;
    z-index:9999999;
    padding:0 28px 25px;
    transition:.35s;
    overflow-y:auto;
    overflow-x:hidden;
}

.asl-mobile-menu.active{
    left:0;
}

.asl-mobile-close{
    position:absolute;
    right:14px;
    top:40px;

    width:36px !important;
    min-width:36px !important;
    height:36px !important;

    padding:0 !important;

    border:0;
    border-radius:4px;

    background:#f5d814;
    color:#000;

    font-size:20px;
    line-height:1;

    display:flex;
    align-items:center;
    justify-content:center;
}

.asl-mobile-logo{
    height:145px;
    display:flex;
    align-items:center;
    margin-top:30px !important;
}

.asl-mobile-logo img{
    max-width:130px;
    height:auto;
    
}

.asl-mobile-menu-list{
    list-style:none !important;
    margin-top:35px !important;
    padding:0 !important;
}

.asl-mobile-menu-list li{
    list-style:none !important;
    border-bottom:1px solid #eee;
}

.asl-mobile-menu-list li a{
    display:block;
    padding:12px 0;
    font-size:15.5px;
    font-weight:500;
    color:#111 !important;
    text-decoration:none !important;
}

/* Mobile Responsive */
@media(max-width:768px){

    body{
       padding-top:140px !important;
    }

    .asl-header{
        position:fixed;
        top:42px;
    }

    .asl-header-inner{
        height:105px;
        flex-direction:row;
        padding:0 18px;
        gap:15px;
    }

    .asl-logo img,
    .asl-logo .custom-logo{
        max-height:82px !important;
    }

    .asl-nav,
    .asl-contact-btn{
        display:none !important;
    }

    .asl-mobile-toggle{
        display:flex;
        align-items:center;
        justify-content:center;
    }
}

/* Social Fixed */
.asl-social-fixed{
    position:fixed !important;
    right:0 !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:9999999 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
}

.asl-social-fixed a{
    width:38px !important;
    height:36px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
    padding:0 13px !important;
    color:#fff !important;
    text-decoration:none !important;
    font-size:15px !important;
    overflow:hidden !important;
    transition:width .35s ease;
}

.asl-social-fixed a i{
    min-width:16px !important;
    text-align:center !important;
    display:block !important;
    opacity:1 !important;
}

.asl-social-fixed a span{
    opacity:0 !important;
    white-space:nowrap !important;
    font-size:14px !important;
    font-weight:700 !important;
}

.asl-social-fixed a:hover{
    width:160px !important;
}

.asl-social-fixed a:hover span{
    opacity:1 !important;
}

/* Colors */
.asl-social-fixed .facebook{background:#3b5998 !important;}
.asl-social-fixed .twitter{background:#000 !important;}
.asl-social-fixed .instagram{background:#ff3f7a !important;}
.asl-social-fixed .youtube{background:#ff0000 !important;}
.asl-social-fixed .whatsapp{background:#009688 !important;}

@media(min-width:769px){

    .asl-mobile-toggle,
    .asl-mobile-menu,
    .asl-mobile-overlay{
        display:none !important;
    }

    .asl-top-social{
        display:none !important;
    }

    .asl-header{
        top:0 !important;
    }

    body{
        padding-top:60px !important;
    }

}

.asl-mobile-menu-list .sub-menu{
    display:none !important;
    padding-left:25px !important;
}

.asl-mobile-menu-list li.submenu-open > .sub-menu{
    display:block !important;
}

.asl-mobile-menu-list li.menu-item-has-children{
    position:relative;
}

.asl-mobile-menu-list li.menu-item-has-children{
    position:relative;
}

.asl-mobile-menu-list li.menu-item-has-children > a{
    padding-right:45px !important;
}

.asl-submenu-toggle{
    position:absolute;
    right:15px;
    top:12px;
    transform:none !important;

    width:28px;
    height:28px;

    border:0;
    border-radius:4px;
    background:#2db84d !important;
    color:#fff !important;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:20px !important;
    font-weight:900;
    line-height:1;
    padding:0;
    cursor:pointer;
}

.asl-mobile-menu-list li.submenu-open > .asl-submenu-toggle{
    transform:none !important;
}
.asl-mobile-menu-list li.menu-item-has-children > a{
    padding-right:45px !important;
}

.asl-mobile-menu-list .sub-menu li a::before{
    content:"›";
    display:inline-block;
    margin-right:8px;
    color:#666;
    font-size:20px;
    font-weight:700;
}

.asl-mobile-contact{
    margin-top:30px;
    padding-bottom:20px;
}

.asl-mobile-contact a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:60%;
    height:44px;

    background:#ff0000; /* Red */
    color:#fff !important;

    text-decoration:none !important;
    font-size:15px;
    font-weight:700;

    border-radius:4px;
}

.asl-mobile-contact a:active,
.asl-mobile-contact a:focus{
    background:#2db84d !important; /* Logo-এর Green */
    color:#fff !important;
}

/* Mobile এ Hide */
@media(max-width:768px){
    .asl-social-fixed{
        display:none !important;
    }
}

/* Desktop এ Show */
@media(min-width:769px){
    .asl-social-fixed{
        display:flex !important;
    }
}

/* FOOTER START */

.asl-footer{
    background:#2d6098;
    color:#fff;
    position:relative;
}

.asl-footer-top{
    max-width:1160px;
    margin:auto;
    padding:100px 15px 80px;
    display:flex;
    justify-content:space-between;
    gap:55px;
}

.asl-footer-col{
    flex:1;
}

.asl-footer-logo img{
    width:160px;
    background:#fff;
    border-radius:10px;
    padding:5px;
}

.asl-footer-col h3{
    font-size:22px;
    font-weight:800;
    margin-bottom:25px;
    position:relative;
    display:inline-block;
}

.asl-footer-col h3:after{
    content:"";
    width:78px;
    height:1px;
    background:#fff;
    position:absolute;
    left:110%;
    top:50%;
}

.asl-footer-col ul{
    list-style:none;
    padding:0;
    margin:0;
}

.asl-footer-col ul li{
    margin-bottom:13px;
}

.asl-footer-col ul li a{
    color:#fff;
    text-decoration:none;
    font-size:16px;
    font-weight:600;
}

.asl-footer-col ul li a:before{
    content:"→";
    margin-right:8px;
}

.asl-footer-col p{
    font-size:16px;
    font-weight:600;
    line-height:1.7;
}

.asl-footer-col p i{
    margin-right:10px;
}

.asl-footer-social{
    margin-top:18px;
    display:flex;
    gap:10px;
}

.asl-footer-social a{
    width:28px;
    height:28px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
}

.asl-footer-social .facebook{background:#1877f2;}
.asl-footer-social .instagram{background:#111;}
.asl-footer-social .youtube{background:#ff0000;}
.asl-footer-social .whatsapp{background:#25d366;}

.asl-footer iframe{
    width:100%;
    height:150px;
    border:0;
}

.asl-footer-bottom{
    background:#000;
    text-align:center;
    padding:16px 15px;
    font-size:14px;
    font-weight:700;
    border-bottom:4px solid #22c55e;
}

@media(max-width:991px){
    .asl-footer-top{
        flex-wrap:wrap;
        gap:35px;
    }

    .asl-footer-col{
        flex:0 0 calc(50% - 35px);
    }
}

@media(max-width:575px){
    .asl-footer-col{
        flex:0 0 100%;
    }
}

/* Phone Icon */
.asl-footer .fa-phone{
    color:#25D366 !important; /* WhatsApp Green */
}

/* Email Icon */
.asl-footer .fa-envelope-open{
    color:#EA4335 !important; /* Gmail Red */
}

/* Location Icon */
.asl-footer .fa-map-marker-alt{
    color:#FF0000 !important; /* Google Maps Red */
}

/* FOOTER END */