#top > .helper
{
    margin: auto;
    max-width: 100%; /* modified */
    padding: 0;
    padding-left: 1em;
    padding-right: 1em;
}

#top
{
    background: #B03931;
    border-bottom: 1px #98312A solid;
    position: relative;
}

#top > .helper > .helper
{
    display: table;
    width: 100%;
}

#top #cssmenu
{
    display: table-cell;
    vertical-align: middle;
}

#top .logo
{
    display: block;
    float: left;
    white-space: nowrap;
}

#top img#logo
{
    height: 2.533em;
    vertical-align: middle;
    width: 13.69em;
}

#top #d-language
{
    display: none;
}

#top a.hamburger
{
    display: none;
}

#top a
{
    color: white;
    text-decoration: none;
}

#top a:hover,
#top #cssmenu li.open > a,
#top #cssmenu li.active > a
{
    background: #98312A;
}

#top .expand-container
{
    position: relative;
}

/* main menu */

#top #cssmenu
{
    max-width: 100%; /* take all available space */
}

/* Hide expandable sections by default in #cssmenu. They have fallback URLs. */
#top #cssmenu .expand-container > *
{
    display: none;
}
#top #cssmenu .expand-container.open > *,
#top #cssmenu .expand-container > .expand-toggle
{
    display: block;
}

#top #cssmenu ul
{
    list-style: none;
    margin: 0;
    padding: 0;
}

#top #cssmenu a
{
    display: block;
    height: 100%; /* manually modified */
    padding: 0.6em 1em;
    position: relative;
    white-space: nowrap;
}

#top #cssmenu > ul > li
{
    float: left;
}

#top #cssmenu > ul > li > ul
{
    background: #B03931;
    border: 1px solid #98312A;

    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;

    -moz-box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.176);
    -webkit-box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.176);
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.176);

    position: absolute;
    z-index: 5;
}

#top #cssmenu > ul > li > ul > li > a
{
    font-size: small;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    padding-right: 2em;
}

#top #cssmenu > ul > li > ul > li:first-child > a
{
    padding-top: 0.6em;
}

#top #cssmenu > ul > li > ul > li:last-child > a
{
    padding-bottom: 0.6em;
}

#top #cssmenu > ul > li .menu-divider {
    border-top: 1px solid #943029;
}

.expand-container > .expand-toggle::after {
    content: " \f0d7";
    font-family: FontAwesome;
}

/* Narrow layout stage 2: hamburger menu, forum/twitter widgets disappear from
the home page, intro pitch and your-code-here layed out vertically */
@media only screen and (max-width:54em)
{
    #top > .helper
    {
        padding: 0;
    }

    /* lay out navigation vertically */

    #top #cssmenu
    {
        display: block;
    }

    #top .logo
    {
        width: auto;
    }

    #top .logo > a
    {
        background: transparent; /* override :hover background change */
        margin-left: 1em;
    }

    #top #cssmenu
    {
        display: none;
    }

    #top .expand-container.open #cssmenu
    {
        display: block;
    }

    #top #cssmenu
    {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        border-top: 1px solid #943029;
        clear: both;
    }
    #top #cssmenu > ul
    {
        border-bottom: 1px solid #943029;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    #top #cssmenu > ul > li
    {
        float: none;
    }

    #top #cssmenu > ul > li.expand-container.open > ul
    {
        border: none;

        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;

        position: static;
    }

    #top #cssmenu > ul > li.expand-container.open > ul > li > a
    {
        padding-left: 2em;
    }

    /* menu button */

    #top a.hamburger
    {
        display: inline;
        float: right;
        font-size: 2em;
        height: 100%;
        line-height: 1;
        margin-top: 0.2em;
        margin-right: 0.75em;
    }
    #top a.hamburger span
    {
        display: none;
    }
    #top a.hamburger::after
    {
		content: "\f0c9";
		font-family: FontAwesome;
    }
}
