#menubg {display: block; position: fixed; left:0; right: 0; top:0; bottom: 0; -webkit-transition: background .6s ease 0s, visibility 0s ease .6s, height 0s ease .6s; transition: background .6s ease 0s, visibility 0s ease .6s, height 0s ease .6s; background:none; visibility: hidden; height: 0px; z-index:7;}
html.showmenu #menubg {background:rgba(0,0,0,0.4); visibility: visible; height:100%; -webkit-transition: background .6s ease 0s, visibility 0s ease 0s, height 0s ease 0s; transition: background .6s ease 0s, visibility 0s ease 0s, height 0s ease 0s;}

#mobilemenu {position: fixed; left:-100%; top: 0; bottom: 0; background:#fff; width:100%; max-width:480px;z-index:11; -webkit-transition:all .6s cubic-bezier(0.55, 0, 0.1, 1); transition:all .6s cubic-bezier(0.55, 0, 0.1, 1); overflow: hidden;}
html.showmenu #mobilemenu {left: 0;}
#mobilemenu > div {height:100%; padding: 50px 30px 30px 30px; position: relative;}
#mobilemenu a.closemenu {display: block; position: absolute; top:30px; right:40px; color:#333; width:20px;height:20px;line-height: 20px;font-size: 20px; text-align: center;text-decoration: none;}

#mobilemenu form {position: relative; margin: 15px auto 0px auto; padding: 0px 0 21px 0; border-bottom: 1px solid #e6e6e6;}
#mobilemenu form input {padding: 0 10px 0 35px; background: transparent; width:100%; height: 40px;margin: 0; border: 0px solid #ddd; border-radius: 0; font-size: 14px; font-weight: 400; color:#333;font-family: 'Noto Serif', serif; font-style: italic; position: relative;}
#mobilemenu form ::-webkit-input-placeholder {color:#333;}
#mobilemenu form button {width:30px; height: 40px; position: absolute;top:0; left: 0; border: 0 none; padding: 0; margin: 0; cursor: pointer; background: none; font-size:17px; color:#333;}

#mobilemenu > div ul {position: relative;}
#mobilemenu > div ul > li {position: relative; border-bottom: 1px solid #e6e6e6;}
#mobilemenu > div ul > li > a {font-size: 16px; text-transform: uppercase; padding: 16px 0; font-family: "Open Sans", sans-serif; font-weight: 600;line-height:1.4em; color:#333; display: block;position: relative; text-decoration: none;}
#mobilemenu > div ul > li > a i {font-size: 12px; position: absolute; right: 10px; top:50%; margin-top:-6px; width:12px; height:12px; text-align: center;}

#mobilemenu .submenu {position: fixed; left:-100%; top:50px; bottom:0; background:#fff;width:100%; max-width:480px; height:100%; padding: 0 30px; z-index:201; -webkit-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0); -webkit-transition: all 0.5s; -moz-transition: all 0.5s; transition: all 0.5s;}
#mobilemenu .submenu.subopen {left:0; -webkit-transform: translate3d(0px, 0, 0); -moz-transform: translate3d(0px, 0, 0); transform: translate3d(0px, 0, 0);}

#mobilemenu .submenu a.mp-back {padding-left: 30px;}
.submenu a.mp-back i {position: absolute; left:0;}
#mobilemenu .submenu a.dropdown-item {font-size:14px; padding: 18px 0 17px; text-transform: none;}
#mobilemenu .submenu a.dropdown-item:hover {background:none;}
#mobilemenu .submenu li.nothing {padding:18px 0 17px;font-size:14px; font-weight: 600;}

/*
#searchmenu {position: fixed;top:40px;left:0;right:0;background:#fff;width:100%;z-index:7; -webkit-transition:all 250ms cubic-bezier(0.55, 0, 0.1, 1); transition:all 250ms cubic-bezier(0.55, 0, 0.1, 1); overflow: hidden;height:0;}
html.showsearch #searchmenu {height:120px;}
html.showsearch #menubg {background:rgba(0,0,0,0.4); visibility: visible; height:calc(100% - 40px); -webkit-transition: background .6s ease 0s, visibility 0s ease 0s, height 0s ease 0s; transition: background .6s ease 0s, visibility 0s ease 0s, height 0s ease 0s;}

#searchmenu > div {padding: 22px; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -ms-flex-line-pack: center; align-content: center; -webkit-box-pack: center; -ms-flex-pack:center; justify-content: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; height:100%;}

#searchmenu form {position: relative; width:100%; }
#searchmenu form input { border: 2px solid #B3B3B3; border-radius: 8px; box-sizing: border-box; height:45px; width:100%; padding: 0 40px 0 14px; color:#111; font-size: 18px; line-height:1.4}
#searchmenu form input:focus {border: 2px solid #000;}
#searchmenu form ::-webkit-input-placeholder {color:#999;}
#searchmenu form button {position: absolute; right: 5px; top: 0; width:40px; height: 45px; border: 0 none; padding: 0; background:none; -webkit-appearance: none; appearance: none; color:#999; text-align: center; font-size: 22px; }
#searchmenu form button i {position: relative; }
*/

body.search .modal-backdrop {background:#009DDC;opacity: .5;}
#searchmodal .close {position: absolute; top:-50px; right: 0; text-shadow: none; opacity: 1; /*color:#004e83; background:#fff; border:0px solid #fff; padding: 0px;border-radius: 50%; height:40px;width:40px; line-height: 40px;*/}
#searchmodal .modal-content {overflow: inherit !important; border:none; box-shadow: 0 0 4px rgba(0, 0, 0, 0.4); border-radius: 0; margin-left: 10px;margin-right:10px; }
#searchmodal .modal-body {padding: 0;border-radius: 0}
#searchmodal form {width:100%; position: relative; display: block;}
#searchmodal form input {width:100%; height:75px; letter-spacing: 2px; border: 0 none; border-radius: 0; box-sizing: border-box; font-size: 20px;color:#004e83; line-height: 1; padding:10px 40px 10px 20px;}
#searchmodal form input:focus {transition: none !important; -webkit-animation: csAnimateFocus .7s forwards; animation: csAnimateFocus .7s forwards;}
#searchmodal form ::-webkit-input-placeholder {color:#004e83;line-height: 1.3;}
#searchmodal form button {position: absolute; right: 10px; top:0; background:none; border: none; -webkit-appearance: none; appearance: none; color:#004e83; font-size: 22px; height:75px; text-align: center; width:30px; display: block;}

@media (min-width: 576px) {
    #searchmodal .modal-dialog {max-width:900px; }
    #searchmodal form input {height:95px;padding:20px 80px 20px 40px; font-size: 30px;}
    #searchmodal form button {height:95px; font-size: 30px; right: 30px; width:50px;}
}