/*** ESSENTIAL STYLES ***/

.top_border {
       background-color: #8F8268;
       height: 1px;
       margin-top: 1px;
       position: fixed;
       top: 0;
       width: 100%;
       z-index: 999;
}

.megamenu {
    height: inherit;
    margin: 0 auto;
    position: relative;
    top: -15px;
    width: 118px;
    z-index: 999;
}

.topnav_logo_wrapper {
    background: url(../img/rupert_wine_megamenu_logo.png) no-repeat;
    width: 42px;
    height: 30px;
    position: relative;
    z-index: 9999;
    margin: 0 auto;
}

#top_nav {
    /*height: 1px;*/
    /*background-color: #8f8268;*/
    width: 100%;
    position: fixed;
    z-index: 992;
    height: 50px;
    background: #8f8268 url(../images/nav_bg.gif) repeat-x;
    top: 0px
}

.sf-contener {
    clear: both;
    line-height: 30px;
    position: relative;
    margin: 0 auto;
    top: 0px;
    width: 1180px;
    height: 49px;
    z-index: 10;
    background: url(../images/nav_bg.gif) repeat-x;
}

#dropdown {
    width: 100%;
    margin: 0 auto;
    border: solid 1px #ccc;
    border-top: none;
    display: none;
    overflow: hidden;
    height: 402px;
    background: #f6f2ed;
    z-index: -1;
    -moz-box-shadow: 0 8px 15px #787878;
    -webkit-box-shadow: 0 8px 15px #787878;
    box-shadow: 0 8px 15px #787878;
    line-height: normal;
    position: fixed;
    top: 48px;
    left: 0px;
    width: 100%;
    z-index: 2;
}

.sf-menu, .sf-menu * {
    margin: 0;
    padding: 0;
    list-style: none;
}

#megamenu_arrow
.sf-menu ul {
    position: absolute;
    top: -999em;
    width: 20em; /* left offset of submenus need to match (see below) */
}

.sf-menu ul li {
    width: 100%;
}

.sf-menu img {

}

.sf-menu span.first_letter {
    font-size: 16px;
}

.sf-menu li:hover {
    visibility: inherit; /* fixes IE7 'sticky bug' */
}

.sf-menu li {
    float: left;
    position: relative;
    text-align: center;;
    z-index: 999;
    display: inline-table;
}

#top_menu_01, #top_menu_02, #top_menu_03, #top_menu_04 {
    float: left;
    position: relative;
    text-align: left;
    margin-right: 45px;
    padding: 13px 20px 0 0;

}

#top_menu_05, #top_menu_06, #top_menu_07, #top_menu_08 {
    float: right;
    position: relative;
    text-align: right;
    margin-left: 48px;
    margin-right: -10px;
    padding: 13px 20px 0 0;
}

.sf-menu a {
    display: block;
    position: relative;
}

.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
    left: 0;
    top: 2.7em; /* match top ul list item height */
    z-index: 99;
}

ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
    top: -999em;
}

ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
    left: 20em; /* match ul width */
    top: 0;
}

ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
    top: -999em;
}

ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
    left: 20em; /* match ul width */
    top: 0;
}

/*** DEMO SKIN ***/
.sf-menu a {
    border: 0;
    /*	border-left:	1px solid #fff;
        border-top:		1px solid #CFDEFF; */
    /*	padding: 		.75em 1em;*/

    text-decoration: none;
}

.sf-menu a, .sf-menu a:visited {
    /* visited pseudo selector so IE6 applies text colour*/
    color: #374853;
}

.sf-menu li li {
    background: #ebebed; /*#AABDE6;*/
}

.sf-menu li li li {
    background: #ebebed; /*#9AAEDB;*/
}

.sf-menu a:active {
    background: url("../images/active_link_icon.png") no-repeat scroll right 14px transparent;
    color: #dddddd;
}

.sf-menu li:hover, .sf-menu li.sfHover, .sf-menu li.sfHoverForce,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
    color: #bcac8b;
}

.sf-menu-active, .sf-menu li.sfHover {
    background: url("../images/active_link_icon.png") no-repeat scroll right 14px transparent !important;
    color: #dddddd !important;
}

.sf-menu-active a, .sf-menu li.sfHover a {
    color: #dddddd !important;
}

.sf-menu li.noBack:hover, .sf-menu li.sfHover.noBack, .sf-menu li.sfHoverForce.noBack,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
    background: inherit;
}

.sf-menu ul li:hover, .sf-menu ul li.sfHover,
.sf-menu ul li a:focus, .sf-menu ul li a:hover, .sf-menu ul li a:active {
    background: #d0d3d8;
    outline: 0;
}

/*** arrows **/
.sf-menu a.sf-with-ul {
    padding-right: 2.25em;
    min-width: 2px; /* trigger IE7 hasLayout so spans position accurately */
}

.sf-sub-indicator {
    position: absolute;
    display: block;
    right: .75em;
    top: 1.05em; /* IE6 only */
    width: 10px;
    height: 10px;
    text-indent: -999em;
    overflow: hidden;
    background: url(../gfx/menu/arrows-ffffff.png) no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}

a > .sf-sub-indicator {
    /* give all except IE6 the correct values */
    top: .8em;
    background-position: 0 -100px; /* use translucent arrow for modern browsers*/
}

/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
    background-position: -10px -100px; /* arrow hovers for modern browsers*/
}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator {
    background-position: -10px 0;
}

.sf-menu ul a > .sf-sub-indicator {
    background-position: 0 0;
}

/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
    background-position: -10px 0; /* arrow hovers for modern browsers*/
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
    background: url(../gfx/menu/shadow.png) no-repeat bottom right;
    padding: 0 8px 9px 0;
    -moz-border-radius-bottomleft: 17px;
    -moz-border-radius-topright: 17px;
    -webkit-border-top-right-radius: 17px;
    -webkit-border-bottom-left-radius: 17px;
}

.sf-shadow ul.sf-shadow-off {
    background: transparent;
}

li.sf-search {
    background: inherit;
    float: right;
    line-height: 25px;
    margin-right: 8px;
}

li.sf-search input.search {
    -moz-border-radius: 0 5px 5px 0;
    padding: 3px 0 3px 20px;

    margin-top: 4px;
    background: #fff url(../gfx/menu/search.gif) no-repeat left center;
}

li.sf-search input.search_button {
    background-color: #fff;
    height: 20px;
    line-height: 20px;
    -moz-border-radius: 5px;
    margin-top: 5px;
    cursor: pointer;
}

/*Only 4 the betest browser*/
li.sf-search input.search_button:hover {
    background-color: #000;
    color: #fff;
}

#megamenu_arrow {
    background: url("../images/megamenu_arrow.png") no-repeat scroll center top transparent;
    float: left;
    height: 9px;
    margin-left: 53px;
    position: fixed;
    top: 61px;
    width: 12px;
}

.megamenu_arrow_active {
    background-position: bottom !important;
}

/* OCT 28 2014 */

.mobile-menu-container {
    display: none;
    width: 30%;
    height: 50px;
    position: absolute;
    box-sizing: border-box;
    transition: all 0.2s ease;
    z-index: 1000;
    background-color: #4b4d53;
}

.mobile-menu-container a,
.mobile-menu-container a:visited,
.mobile-menu-container a:active {
    text-decoration: none;
    color: #ECD9B1;

}
.mobile-menu-container a:hover {
    text-decoration: none;
    color: #BCAC8B;
}
.mobile-menu-main {
    padding: 0 10px;
    left: 0;
    position: fixed;
    transition: all 0.2s ease;
}
.sf-search {
    display: none;
}

.sf-contener {
    background: none;
}

.mobile-menu-container h1 {
    margin: 0;
    padding: 10px 0;
}

.mobile-menu span{
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
}

.sf-menu.mobile {
    display: none;
    margin: 0;
    height: 440px;
    overflow: auto;
    box-shadow: none;
}

.mobile-menu-close {
    display: none;
    position: absolute;
    top: 12px;
    right: 12px;
}

.mobile-menu-container.expanded {
    z-index: 1200;
    width: 100%;
    height: 100%;
    transition: all 0.2s ease;
    left: 0;
}
.mobile-menu-close img {
    vertical-align: top;
}
.mobile-menu-container.expanded .mobile-menu-main {
    border-bottom: 1px solid #404144;
    left: 0;
    right: 0;
    transition: all 0.2s ease;
}

.sf-menu.mobile li {
    float: none !important;
    display: block;
    text-align: left !important;
    padding: 0 10px !important;
    margin: 0 !important;
    background-color: #4b4d53;
    border-bottom: 1px solid #404144;
}
.mobile-menu-container.expanded .mobile-menu-close {
    display: block;
    height: 15px;
    width: 15px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.mobile-menu-container li h1 {
    margin: 0;
    padding: 13px 0;
}
.mobile-menu .first_letter {
    font-size: 16px;
}
.mobile-menu-container .sf-menu-active h1 a:after {
    background: url('../images/active_link_icon.png') no-repeat scroll 0px -2px transparent !important;
    content: "" !important;
    width: 13px;
    height: 10px;
    display: inline-block;
}

.sf-menu.mobile li.sf-search input.search {
    background: #fff ;
    margin: 10px 0px;
    padding: 5px 10px;
    min-width: 250px;
    box-sizing: border-box;
    vertical-align: middle;
    height: 31px;
}
.sf-menu.mobile li.dark-nav h1{
    padding-left: 6px;
}
.sf-menu.mobile li.dark-nav {
    background: #404144;
    border-bottom: 1px #4b4d53 solid;
}
.sf-menu.mobile .dark-nav.selected_language {
    display: none;
}
.sf-menu.mobile li.sf-search {
    padding-left: 6px;
}
.sf-menu.mobile li.sf-search .search_button {
    height: 31px;
    width: 31px;
    display: inline-block;
    position: relative;
    line-height: 50px;
    box-sizing: content-box;
    vertical-align: middle;
    background: none;
    border: 0;

}

.sf-menu.mobile li.sf-search .search_button img {
    vertical-align: middle;
    margin: auto;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    width: 100%;
    height: auto;
}
@media only screen and (max-width: 480px) {

    .mobile-logout-menu {
        float: right;
    }
    .my-account-mobile-menu {
        float: left;
    }



    .mobile-logout-menu span {
        font-size: 12px;
    }
    .mobile-logout-menu .first_letter {
        font-size: 13px;
    }
    .sf-menu-active, .sf-menu li.sfHover {
        background-color: #4b4d53 !important;
    }
    .sf-contener,
    .sf-contener .sf-menu {
        width: 100%;
    }
    .sf-menu {
        display: none;
    }
    .mobile-menu-container.expanded .sf-menu.mobile {
        display: block;
    }

    .mobile-menu-container.expanded .mobile-menu span{
        display: inline-block;
        opacity: 1;
        -webkit-transition: opacity 0.5s ease;
        transition: opacity 0.5s ease;
    }

    #megamenu_arrow {
        display: none;
    }

    .mobile-menu-container {
        display: block;
        left: -100%;
        height: 100vh;
    }

    .sf-menu.mobile {
      height: 100%;
      height: 100vh;
    }

    .sf-menu.mobile li.sf-search input.search {
      width: 89%;
    }

    .sf-menu img, .mobile-menu-close img {
        width: 15px;
        height: auto;
    }

    #top_menu_02, #top_menu_06, #top_menu_08 {
        display: none;
    }

    .megamenu .show-mobile {
        display: block;
    }

}

@media (max-width: 414px) {
}

@media (max-width: 384px) {
    /*.sf-menu.mobile {*/
        /*height: 590px;*/
    /*}*/
}

@media (max-width: 375px) {
    /*.sf-menu.mobile {*/
        /*height: 660px;*/
    /*}*/
}

@media (max-width: 360px) {
  /*.sf-menu.mobile {*/
      /*height: 600px;*/
  /*}*/
}

@media (max-width: 320px) {
  .sf-menu.mobile li.sf-search input.search {
      width: 86%;
  }


}
/*@media (max-height: 720px) {*/
    /*.sf-menu.mobile {*/
        /*height: 670px;*/
    /*}*/
/*}*/
/*@media (max-height: 610px) {*/
    /*.sf-menu.mobile {*/
        /*height: 610px;*/
    /*}*/
/*}*/
/*@media (max-height: 568px) {*/
    /*.sf-menu.mobile {*/
        /*height: 515px;*/
    /*}*/
/*}*/
/*@media (max-height: 480px) {*/
    /*.sf-menu.mobile {*/
        /*height: 425px;*/
    /*}*/
/*}*/

.mobile-menu-button-overlay {
    width: 38px;
    height: 45px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20000000;
}

.sf-menu.mobile .sf-menu-active, .sf-menu.mobile .sfHover {
    background-image: none !important;
    background-color: #4b4d53 !important;
}

.sf-menu.mobile .sf-search.noBack:hover {
    background-color: #4b4d53;
}

.sf-menu.mobile li:last-child {
    height: 100px;
    border: none;
    padding: 0 !important;
};