/*==========================================================
    SIDDHI PEST CONTROL
    Responsive Header v2.0
    PART 1
==========================================================*/


/*==================================
RESET
==================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    padding:0;
    font-family:Arial,Helvetica,sans-serif;
    overflow-x:hidden;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}


/*==================================
CONTAINER
==================================*/

.container{

    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:0 15px;

}


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

.site-header{

    position:relative;
    width:100%;
    z-index:9999;
    background:#fff;

}


/*==================================
TOP BAR
==================================*/

.top-bar{

    background:#67c23a;
    color:#fff;
    font-size:14px;

}

.top-bar .container{

    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:46px;

}


/*==================================
TOP LEFT
==================================*/

.top-left{

    display:flex;
    align-items:center;
    gap:25px;

}

.top-left span{

    display:flex;
    align-items:center;
    color:#fff;

}

.top-left i{

    margin-right:8px;

}


/*==================================
TOP RIGHT
==================================*/

.top-right{

    display:flex;
    align-items:center;
    gap:12px;

}


/*==================================
BUTTONS
==================================*/

.call-btn{

    background:#143d74;
    color:#fff;
    padding:10px 18px;
    border-radius:4px;
    font-size:14px;
    font-weight:600;
    transition:.3s;

}

.call-btn:hover{

    background:#0d2f5c;

}

.quote-btn{

    background:#0f9d58;
    color:#fff;
    padding:10px 18px;
    border-radius:4px;
    font-size:14px;
    font-weight:600;
    transition:.3s;

}

.quote-btn:hover{

    background:#0d7e46;

}


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

.main-header{

    background:#fff;
    box-shadow:0 3px 10px rgba(0,0,0,.08);

}

.main-header .container{

    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:90px;
    position:relative;

}


/*==================================
LOGO
==================================*/

.logo{

    flex:0 0 220px;

}

.logo img{

    width:100%;

}


/*==================================
PHONE
==================================*/

.phone-box{

    display:flex;
    align-items:center;
    gap:10px;

}

.phone-box img{

    width:42px;

}

.phone-box a{

    color:#163d77;
    font-size:24px;
    font-weight:bold;

}


/*==================================
MOBILE BUTTON
==================================*/

.mobile-toggle{

    display:none;

    width:48px;
    height:48px;

    border:none;

    background:#143d74;

    color:#fff;

    border-radius:5px;

    cursor:pointer;

    font-size:24px;

    transition:.3s;

}

.mobile-toggle:hover{

    background:#0d2f5c;

}


/*==================================
NAVIGATION
==================================*/

.navigation{

    margin-left:auto;

}

.menu{

    display:flex;
    align-items:center;
    gap:0;

}

.menu > li{

    position:relative;

}

.menu > li > a{

    display:flex;
    align-items:center;
    padding:34px 18px;

    color:#222;

    font-size:15px;

    font-weight:600;

    transition:.3s;

}


/*==================================
MENU HOVER
==================================*/

.menu > li > a:hover{

    color:#173d75;

}

.menu > li > a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:18px;

    width:0;

    height:3px;

    background:#67c23a;

    transition:.35s;

}

.menu > li:hover > a::after{

    width:100%;

}


/*==================================
ACTIVE MENU
==================================*/

.menu > li.active > a{

    color:#173d75;

}

.menu > li.active > a::after{

    width:100%;

}


/*==================================
ARROW
==================================*/

.arrow{

    margin-left:6px;
    font-size:12px;
    transition:.3s;

}

.has-dropdown:hover .arrow{

    transform:rotate(180deg);

}

/*==========================================================
    PART 2
    SERVICES MEGA MENU
==========================================================*/


/*==================================
DROPDOWN PARENT
==================================*/

.has-dropdown{

    position:relative;

}


/*==================================
MEGA MENU
==================================*/

.services-dropdown{

    position:absolute;

    top:100%;

    left:50%;

    transform:translateX(-50%) translateY(20px);

    width:620px;

    display:flex;

    justify-content:space-between;

    gap:30px;

    padding:25px;

    background:#173d75;

    border-top:4px solid #67c23a;

    border-radius:0 0 6px 6px;

    box-shadow:0 10px 30px rgba(0,0,0,.20);

    opacity:0;

    visibility:hidden;

    transition:all .35s ease;

    z-index:99999;

}


/*==================================
SHOW MEGA MENU
==================================*/

.has-dropdown:hover > .services-dropdown{

    opacity:1;

    visibility:visible;

    transform:translateX(-50%) translateY(0);

}


/*==================================
COLUMNS
==================================*/

.dropdown-column{

    flex:1;

    display:flex;

    flex-direction:column;

}


/*==================================
LINKS
==================================*/

.dropdown-column a{

    display:block;

    color:#fff;

    font-size:14px;

    padding:12px 15px;

    border-bottom:1px solid rgba(255,255,255,.08);

    transition:all .30s ease;

}


.dropdown-column a:last-child{

    border-bottom:none;

}


/*==================================
HOVER
==================================*/

.dropdown-column a:hover{

    background:#0d2f5c;

    padding-left:25px;

    color:#fff;

}


/*==================================
COLUMN SPACING
==================================*/

.dropdown-column:first-child{

    border-right:1px solid rgba(255,255,255,.10);

    padding-right:15px;

}

.dropdown-column:last-child{

    padding-left:15px;

}


/*==================================
SCROLL SUPPORT
==================================*/

.services-dropdown{

    max-height:520px;

    overflow-y:auto;

}


/*==================================
SCROLLBAR
==================================*/

.services-dropdown::-webkit-scrollbar{

    width:6px;

}

.services-dropdown::-webkit-scrollbar-track{

    background:#173d75;

}

.services-dropdown::-webkit-scrollbar-thumb{

    background:#67c23a;

    border-radius:20px;

}


/*==================================
MEGA MENU ANIMATION
==================================*/

@keyframes megaMenuFade{

    from{

        opacity:0;

        transform:translateX(-50%) translateY(25px);

    }

    to{

        opacity:1;

        transform:translateX(-50%) translateY(0);

    }

}

.has-dropdown:hover .services-dropdown{

    animation:megaMenuFade .35s ease;

}


/*==================================
ARROW ROTATION
==================================*/

.has-dropdown:hover .arrow{

    transform:rotate(180deg);

}


/*==================================
PREVENT BOOTSTRAP CONFLICTS
==================================*/

.navigation ul{

    margin:0;

    padding:0;

}

.navigation li{

    list-style:none;

}

.navigation a{

    text-decoration:none;

}


/*==================================
DESKTOP ONLY
==================================*/

@media(min-width:992px){

    .services-dropdown{

        display:flex;

    }

}

/*==========================================================
    PART 3
    TABLET & MOBILE RESPONSIVE
==========================================================*/

@media screen and (max-width:991px){

    /*==================================
    TOP BAR
    ==================================*/
    
    .top-bar .container{
    
        flex-direction:column;
        justify-content:center;
        align-items:center;
        padding:12px 15px;
        gap:12px;
    
    }
    
    .top-left,
    .top-right{
    
        width:100%;
        display:flex;
        justify-content:center;
        align-items:center;
        /* flex-wrap:wrap; */
        gap:10px;
        text-align:center;
    
    }
    
    .call-btn,
    .quote-btn{
    
        padding:10px 16px;
        font-size:13px;
    
    }
    
    
    /*==================================
    MAIN HEADER
    ==================================*/
    
    .main-header .container{
    
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        justify-content:space-between;
    
        min-height:auto;
    
        padding:0px 0;
    
    }
    
    
    /*==================================
    LOGO
    ==================================*/
    
    .logo{
    
        width:170px;
        flex:none;
    
    }
    
    
    /*==================================
    MOBILE TOGGLE
    ==================================*/
    
    .mobile-toggle{
    
        display:flex;
    
        align-items:center;
        justify-content:center;
    
        width:46px;
        height:46px;
    
        margin-left:auto;
    
        z-index:10002;
    
    }
    
    
    /*==================================
    PHONE
    ==================================*/
    
    .phone-box{
    
        order:3;
    
        width:100%;
    
        display:flex;
    
        justify-content:center;
    
        align-items:center;
    
        gap:10px;
    
        margin-top:15px;
    
    }
    
    .phone-box img{
    
        width:34px;
    
    }
    
    .phone-box a{
    
        font-size:22px;
    
    }
    
    
    /*==================================
    NAVIGATION
    ==================================*/
    
    .navigation{
    
        order:4;
    
        width:100%;
    
        margin-top:18px;
    
    }
    
    
    /*==================================
    MAIN MENU
    ==================================*/
    
    .menu{
    
        display:flex;
    
        flex-direction:column;
    
        width:100%;
    
        background:#ffffff;
    
        border-top:1px solid #e5e5e5;
    
        box-shadow:0 5px 20px rgba(0,0,0,.08);
    
        overflow:hidden;
    
        max-height:0;
    
        transition:max-height .45s ease;
    
    }
    
    
    /*==================================
    OPEN MENU
    ==================================*/
    
    .menu.active{
    
        max-height:2500px;
    
    }
    
    
    /*==================================
    MENU ITEMS
    ==================================*/
    
    .menu > li{
    
        width:100%;
    
        border-bottom:1px solid #ececec;
    
    }
    
    .menu > li:last-child{
    
        border-bottom:none;
    
    }
    
    
    /*==================================
    MENU LINKS
    ==================================*/
    
    .menu > li > a{
    
        display:flex;
    
        justify-content:space-between;
    
        align-items:center;
    
        padding:16px 20px;
    
        color:#222;
    
        font-size:15px;
    
        font-weight:600;
    
    }
    
    
    /*==================================
    REMOVE DESKTOP UNDERLINE
    ==================================*/
    
    .menu > li > a::after{
    
        display:none;
    
    }
    
    
    /*==================================
    ARROW
    ==================================*/
    
    .arrow{
    
        margin-left:auto;
    
    }
    
    
    /*==================================
    REMOVE DESKTOP HOVER
    ==================================*/
    
    .has-dropdown:hover> .services-dropdown{
    
        opacity:1;
        visibility:visible;
        transform:none;
        animation:none;
    
    }
    
    
    /*==================================
    MOBILE MENU SCROLL
    ==================================*/
    
    .menu{
    
        overflow-y:auto;
    
        max-height:0;
    
    }
    
    .menu.active{
    
        max-height:80vh;
    
    }
    
    
    /*==================================
    BOOTSTRAP CONFLICT FIXES
    ==================================*/
    
    .navigation ul{
    
        margin:0 !important;
    
        padding:0 !important;
    
    }
    
    .navigation li{
    
        float:none !important;
    
    }
    
    .navigation a{
    
        display:flex !important;
    
    }
    
    
    /*==================================
    IMAGE SAFETY
    ==================================*/
    
    .logo img,
    .phone-box img{
    
        max-width:100%;
    
        height:auto;
    
    }
    
    }

    /*==========================================================
    PART 4
    MOBILE ACCORDION + STICKY HEADER + UTILITIES
==========================================================*/


/*==================================
MOBILE SERVICES ACCORDION
==================================*/

@media screen and (max-width:991px){

    .services-dropdown{
    
        position:relative;
    
        left:0;
    
        top:0;
    
        width:100%;
    
        display:block;
    
        padding:0;
    
        margin:0;
    
        border:none;
    
        border-radius:0;
    
        background:#173d75;
    
        box-shadow:none;
    
        transform:none;
    
        opacity:1;
    
        visibility:visible;
    
        overflow:hidden;
    
        max-height:0;
    
        transition:max-height .40s ease;
    
    }
    
    
    /* OPEN ACCORDION */
    
    .has-dropdown.open > .services-dropdown{
    
        max-height:900px;
		opacity:1;
		visibility:visible;
		transform:none;
    
    }
    
    
    /* COLUMNS */
    
    .dropdown-column{
    
        width:100%;
    
        display:block;
    
        padding:0;
    
        border:none;
    
    }
    
    
    /* REMOVE COLUMN DIVIDER */
    
    .dropdown-column:first-child{
    
        border-right:none;
    
        padding-right:0;
    
    }
    
    .dropdown-column:last-child{
    
        padding-left:0;
    
    }
    
    
    /* LINKS */
    
    .dropdown-column a{
    
        display:block;
    
        color:#fff;
    
        padding:14px 25px;
    
        font-size:14px;
    
        border-bottom:1px solid rgba(255,255,255,.08);
    
        transition:.30s;
    
    }
    
    .dropdown-column a:hover{
    
        background:#0d2f5c;
    
        padding-left:35px;
    
    }
    
    
    /* LAST LINK */
    
    .dropdown-column a:last-child{
    
        border-bottom:none;
    
    }
    
    
    /* ROTATE ARROW */
    
    .has-dropdown.open > a .arrow{
    
        transform:rotate(180deg);
    
    }
    
    
    /* REMOVE DESKTOP ANIMATION */
    
    .has-dropdown:hover .services-dropdown{
    
        animation:none;
    
    }
    
    }
    
    
    /*==================================
    STICKY HEADER
    ==================================*/
    
    .site-header.sticky{
    
        position:fixed;
    
        top:0;
    
        left:0;
    
        width:100%;
    
        z-index:99999;
    
        background:#fff;
    
        animation:headerSlide .35s ease;
    
        box-shadow:0 5px 18px rgba(0,0,0,.12);
    
    }
    
    
    /* Sticky Animation */
    
    @keyframes headerSlide{
    
        from{
    
            transform:translateY(-100%);
    
        }
    
        to{
    
            transform:translateY(0);
    
        }
    
    }
    
    
    /*==================================
    TRANSITIONS
    ==================================*/
    
    .menu,
    .services-dropdown,
    .mobile-toggle,
    .arrow{
    
        transition:all .35s ease;
    
    }
    
    
    /*==================================
    FOCUS ACCESSIBILITY
    ==================================*/
    
    .menu a:focus,
    .call-btn:focus,
    .quote-btn:focus,
    .mobile-toggle:focus{
    
        outline:2px solid #67c23a;
    
        outline-offset:2px;
    
    }
    
    
    /*==================================
    PREVENT IMAGE SHIFT
    ==================================*/
    
    .logo img,
    .phone-box img{
    
        display:block;
    
    }
    
    
    /*==================================
    CLEAR FLOATS (BOOTSTRAP SAFETY)
    ==================================*/
    
    .navigation::after{
    
        content:"";
    
        display:block;
    
        clear:both;
    
    }
    
    
    /*==================================
    UTILITY
    ==================================*/
    
    .hide{
    
        display:none !important;
    
    }
    
    .show{
    
        display:block !important;
    
    }
    
    
    /*==================================
    DESKTOP SAFETY
    ==================================*/
    
    @media(min-width:992px){
    
    .mobile-toggle{
    
        display:none !important;
    
    }
    
    .menu{
    
        display:flex !important;
    
        max-height:none !important;
    
        overflow:visible !important;
    
    }
    
    .services-dropdown{
    
        display:flex;
    
    }
    
    }
    
    
    /*==================================
    SMALL MOBILE
    ==================================*/
    
    @media(max-width:480px){
    
    .logo{
    
        width:150px;
    
    }
    
    .phone-box a{
    
        font-size:19px;
    
    }
    
    .call-btn,
    .quote-btn{
    
        width:100%;
    
        text-align:center;
    
    }
    
    .menu > li > a{
    
        font-size:14px;
    
    }
    
    .dropdown-column a{
    
        font-size:13px;
    
    }
    
    }
    
    
    /*==========================================================
    END OF HEADER CSS
    ==========================================================*/
@media screen and (max-width:991px){

    .mobile-toggle{
        display:flex !important;
    }

    .navigation{
        display:block !important;
        width:100% !important;
        order:4;
    }

    .navigation .menu{
        display:block !important;
        width:100% !important;
        max-height:0 !important;
        overflow:hidden !important;
        background:#fff;
        transition:max-height .35s ease;
    }

    .navigation .menu.active{
        max-height:80vh !important;
        overflow-y:auto !important;
    }

    .navigation .menu > li{
        display:block !important;
        width:100% !important;
        float:none !important;
    }

    .navigation .menu > li > a{
        display:flex !important;
        justify-content:space-between;
        align-items:center;
        padding:16px 20px !important;
    }

    .services-dropdown{
        position:static !important;
        width:100% !important;
        display:block !important;
        max-height:0 !important;
        overflow:hidden !important;
        opacity:1 !important;
        visibility:visible !important;
        transform:none !important;
        padding:0 !important;
    }

    .has-dropdown.open > .services-dropdown{
        max-height:900px !important;
    }
}

@media screen and (max-width:991px){
    .site-header.sticky{
        overflow:visible !important;
    }

    .site-header.sticky .navigation{
        display:block !important;
        width:100% !important;
    }

    .site-header.sticky .menu.active{
        max-height:80vh !important;
        overflow-y:auto !important;
        visibility:visible !important;
        opacity:1 !important;
        z-index:999999 !important;
    }
}
    