/* Bhavans Off-Canvas Menu 1.3.1 */
#bom-tools.bom-tools{
    position:relative!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:stretch!important;
    justify-content:flex-end!important;
    gap:0!important;
    margin:0!important;
    padding:0!important;
    height:54px;
}

/* SEARCH: input is on the LEFT, black icon stays next to MENU */
#bom-search.bom-search{
    position:relative!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:stretch!important;
    height:54px;
    margin:0!important;
    padding:0!important;
}
#bom-search-field.bom-search-field{
    width:0;
    height:100%;
    overflow:hidden;
    background:#fff;
    transition:width .45s cubic-bezier(.77,0,.18,1);
}
#bom-search.bom-search-open #bom-search-field{
    width:230px;
    box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);
}
#bom-search-input{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0 16px!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    background:transparent!important;
    font:14px/1.2 inherit!important;
    box-shadow:none!important;
}
#bom-search-button.bom-search-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 58px!important;
    width:58px;
    height:54px;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#050505;
    cursor:pointer;
    box-shadow:none!important;
}
#bom-search-button svg{
    display:block!important;
    width:25px!important;
    height:25px!important;
    fill:none!important;
    stroke:#fff;
    stroke-width:3!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    transition:transform .28s ease!important;
}
#bom-search-button:hover svg{transform:scale(1.15) rotate(-6deg)!important}

/* MENU */
#bom-menu-trigger.bom-menu-trigger{
    position:relative!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    flex:0 0 auto!important;
    width:116px;
    height:54px;
    margin:0!important;
    padding:0 18px!important;
    border:0!important;
    border-radius:0!important;
    background:#245d99;
    color:#fff;
    cursor:pointer;
    box-shadow:none!important;
    font-family:inherit!important;
    font-size:14px;
    font-weight:500;
}
.bom-menu-label{display:block;white-space:nowrap}
.bom-hamburger{
    position:relative!important;
    display:block!important;
    width:23px!important;
    height:18px!important;
    flex:0 0 23px!important;
}
#bom-menu-trigger .bom-hamburger i{
    position:absolute!important;
    right:0!important;
    display:block!important;
    height:2px!important;
    margin:0!important;
    padding:0!important;
    background:#fff;
    border-radius:2px!important;
    transition:all .30s cubic-bezier(.4,0,.2,1)!important;
}
#bom-menu-trigger .bom-hamburger i:nth-child(1){top:1px;width:23px}
#bom-menu-trigger .bom-hamburger i:nth-child(2){top:8px;width:16px}
#bom-menu-trigger .bom-hamburger i:nth-child(3){top:15px;width:23px}

/* Strong, visible hover animation */
#bom-menu-trigger:hover .bom-hamburger i:nth-child(1){
    top:3px;width:15px;transform:translateX(-4px) rotate(-8deg)
}
#bom-menu-trigger:hover .bom-hamburger i:nth-child(2){
    width:23px;transform:translateX(0)
}
#bom-menu-trigger:hover .bom-hamburger i:nth-child(3){
    top:13px;width:15px;transform:translateX(-4px) rotate(8deg)
}

/* Click/open animation into X */
#bom-menu-trigger.bom-trigger-active .bom-hamburger i:nth-child(1){
    top:8px;width:23px;transform:rotate(45deg)
}
#bom-menu-trigger.bom-trigger-active .bom-hamburger i:nth-child(2){
    opacity:0;transform:scaleX(0)
}
#bom-menu-trigger.bom-trigger-active .bom-hamburger i:nth-child(3){
    top:8px;width:23px;transform:rotate(-45deg)
}

.bom-overlay{
    position:fixed;inset:0;background:rgba(0,0,0,.55);
    opacity:0;visibility:hidden;z-index:99990;
    transition:opacity .35s ease,visibility .35s ease
}
.bom-overlay.bom-active{opacity:1;visibility:visible}

.bom-offcanvas{
    position:fixed;top:0;right:0;width:420px;max-width:90vw;
    height:100vh;height:100dvh;padding:30px 38px 50px;
    box-sizing:border-box;background:#fff;z-index:99999;
    transform:translateX(100%);
    transition:transform .45s cubic-bezier(.77,0,.18,1);
    overflow-x:hidden;overflow-y:auto;
    box-shadow:-10px 0 40px rgba(0,0,0,.12)
}
.bom-offcanvas.bom-active{transform:translateX(0)}
.bom-panel-head{
    display:flex;align-items:center;justify-content:space-between;
    min-height:50px;padding:0 0 25px;border-bottom:1px solid #eee
}
.bom-panel-title{color:#777;font-size:13px;font-weight:700;letter-spacing:3px}
.bom-close{position:relative;width:44px;height:44px;margin:0;padding:0;border:0;background:transparent;cursor:pointer}
.bom-close span{position:absolute;left:10px;top:21px;width:25px;height:2px;background:#111;border-radius:5px}
.bom-close span:first-child{transform:rotate(45deg)}
.bom-close span:last-child{transform:rotate(-45deg)}
.bom-navigation{width:100%;padding-top:30px}
.bom-menu,.bom-menu ul{list-style:none;margin:0;padding:0}
.bom-menu li{position:relative;margin:0;padding:0}
.bom-menu>li{border-bottom:1px solid #eee}
.bom-menu li>a{
    display:block;width:100%;box-sizing:border-box;
    padding:18px 48px 18px 0;color:#171717;background:transparent;
    font-size:20px;font-weight:600;line-height:1.35;text-decoration:none;
    transition:opacity .25s ease,padding-left .25s ease
}
.bom-menu li>a:hover{opacity:.7;padding-left:5px}
.bom-submenu-toggle{
    position:absolute;top:9px;right:0;width:42px;height:42px;
    margin:0;padding:0;border:0;background:transparent;cursor:pointer;z-index:5
}
.bom-plus{position:relative;display:block;width:16px;height:16px;margin:auto}
.bom-plus::before,.bom-plus::after{
    content:"";position:absolute;display:block;background:#111;
    transition:opacity .25s ease,transform .25s ease
}
.bom-plus::before{width:16px;height:2px;left:0;top:7px}
.bom-plus::after{width:2px;height:16px;left:7px;top:0}
.bom-submenu-toggle.bom-open .bom-plus::after{opacity:0;transform:rotate(90deg)}
.bom-menu .sub-menu{display:none;margin:0;padding:0 0 14px 18px}
.bom-menu .sub-menu.bom-submenu-open{display:block}
.bom-menu .sub-menu li>a{padding:10px 45px 10px 0;color:#555;font-size:16px;font-weight:400}
.bom-menu .sub-menu .sub-menu{padding-left:18px}
.bom-menu .sub-menu .sub-menu li>a{font-size:15px}
.bom-no-menu{margin:20px 0;color:#777;font-size:14px;line-height:1.6}
body.bom-menu-open{overflow:hidden}

@media(max-width:767px){
    #bom-search.bom-search-open{position:absolute!important;right:116px;top:0;z-index:20}
    #bom-search.bom-search-open #bom-search-field{width:min(220px,calc(100vw - 180px))!important}
    .bom-offcanvas{width:88vw!important;max-width:88vw;padding:24px 25px 40px}
    .bom-navigation{padding-top:20px}
    .bom-menu li>a{padding-top:16px;padding-bottom:16px;font-size:18px}
    .bom-menu .sub-menu li>a{padding-top:9px;padding-bottom:9px;font-size:15px}
}
