body {
    .ui-breadcrumb {
        background-color: $headerBgColor;
        padding: $headerPadding;

        ul {
            li {
                float: none;
                display: inline-block;
                vertical-align: middle;

                .ui-menuitem-link {
                    font-size: $fontSize + 2;
                    color: $headerTextColor;
                    margin: 0;
                }

                &.ui-breadcrumb-chevron {
                    font-size: $fontSize + 2;
                    margin: 0 .45em;
                    color:$headerIconColor;
                }

                &:first-child {
                    font-size: $fontSize + 2;

                    a.ui-icon-home {
                        color:$headerIconColor;
                        margin: 0;
                    }
                }
            }
        }
    }

    .ui-steps {
        position: relative;

        .ui-steps-item {
            background-color: transparent;
            text-align: center;

            .ui-menuitem-link {
                display: inline-block;
                text-align: center;
                background-color: transparent;
                overflow: hidden;

                .ui-steps-number {
                    display: inline-block;
                    background-color: $primaryColor;
                    @include border-radius(5px);
                    padding: 0.5em 1em;
                    font-weight: bold;
                    font-size: 1em;
                    color: #ffffff;
                    position: relative;
                    top: 1.1em;
                    margin-bottom: 1em;
                    border: 1px solid lighten($primaryColor,15%);
                }

                .ui-steps-title {
                    display: block;
                    margin-top: 0.45em;
                    color: $textSecondaryColor;
                }
            }

            &.ui-state-disabled {
                @include opacity(1);
                .ui-steps-number {
                    background-color: $headerBgColor;
                    border-color: $headerBorderColor;
                    color: $headerTextColor;
                }
            }

            &.ui-state-highlight {
                .ui-steps-number {
                    background-color: $primaryColor;
                }

                .ui-steps-title {
                    font-weight: 700;
                    color: $textColor;
                }
            }

            &:last-child {
                .ui-menuitem-link {
                    display: block;
                }
            }
        }

        &:before {
            content:' ';
            border: 1px solid $primaryColor;
            width: 100%;
            top: 45%;
            left: 0;
            display: block;
            position: absolute;
        }
    }

    .ui-menu .ui-menuitem-link,
    .ui-menubar .ui-menuitem-link,
    .ui-tieredmenu .ui-menuitem-link,
    .ui-contextmenu .ui-menuitem-link,
    .ui-megamenu .ui-menuitem-link,
    .ui-slidemenu .ui-menuitem-link {
        padding: $listItemPadding;
        color: $textColor;
        @include border-radius(0);

        &:hover {
            @include menu-item-hover();
        }

        &:focus {
            @include menu-item-hover();
        }
    }

    .ui-menubar, .ui-contextmenu,
    .ui-slidemenu, .ui-tieredmenu {
        .ui-submenu-list {
            padding: 0;

            .ui-menuitem {
                margin: 0;
            }
        }
    }

    .ui-menu {
        min-width: 12.5em;
        padding: 0;

        .ui-menuitem {
            margin: 0;

            .ui-menuitem-link {
                .ui-menuitem-icon {
                    vertical-align: middle;
                }
            }
        }

        &.ui-shadow, .ui-shadow {
            @include overlay-shadow();
        }

        :first-child.ui-submenu-header {
            margin: 0 0 1px 0;
        }

        .ui-submenu-header {
            margin: 1px 0 1px 0;
            border: 0 none;
            background-color: $headerBgColor;
            @include border-radius(0);
            padding: .75em 1.5em;
            font-weight: 400;
            color: $textColor;
        }
    }

    .ui-menubar {
        padding: 0;
        background-color: $headerBgColor;
        .ui-submenu-list {
            .ui-menuitem-link .ui-submenu-icon {
                right: 1em;
            }
        }

        .ui-menubar-root-list {
            &>.ui-menuitem>.ui-menuitem-link {
                padding: $listItemPadding;
                border: 1px solid transparent;

                .ui-submenu-icon {
                    vertical-align: middle;
                }
            }
        }

        .ui-menuitem {
            &.ui-menuitem-active {
                > .ui-menuitem-link {
                    @include menu-item-hover();
                }
            }
        }
    }

    .ui-contextmenu {
        padding: 0;
        .ui-menuitem-link .ui-submenu-icon {
            right: 1em;
        }

        .ui-menuitem {
            &.ui-menuitem-active {
                > .ui-menuitem-link {
                    @include menu-item-hover();
                }
            }
        }
    }

    .ui-slidemenu {
        padding: 0;

        .ui-menuitem {
            margin: 0;

            &.ui-menuitem-active {
                > .ui-menuitem-link {
                    @include menu-item-hover();
                }
            }
        }
        .ui-menuitem-link .ui-submenu-icon {
            right: 1em;
        }

        .ui-slidemenu-backward {
            padding: $headerPadding;
            width: 100%;
            color: $textColor;
            background-color: $headerBgColor;
            box-sizing: border-box;
            @include border-radius(0);
            border: 0 none;
            border-top: 1px solid $headerBorderColor;
            @include transition(background-color .3s);

            span:last-child {
                vertical-align: bottom;
            }

            &:hover {
                background-color: $headerHoverBgColor;
            }
        }
    }

    .ui-tieredmenu {
        padding: 0;

        .ui-menuitem-link .ui-submenu-icon {
            right: 1em;
        }

        .ui-menuitem {
            margin: 0;
            &.ui-menuitem-active {
                > .ui-menuitem-link {
                    @include menu-item-hover();
                }
            }
        }
    }

    .ui-megamenu {
        padding: 0;
        background-color: $headerBgColor;

        .ui-megamenu-submenu-header {
            margin: 1px 0 1px 0;
            border: 0 none;
            background-color: $headerBgColor;
            @include border-radius(0);
            padding: .75em 1.5em;
            font-weight: 700;
            color: $textColor;
        }

        .ui-megamenu-submenu .ui-menuitem .ui-menuitem-link {
            line-height: 1em;
        }

        .ui-menuitem-link {
            border: 1px solid transparent;
        }

        .ui-menuitem {
            margin: 0;

            &.ui-menuitem-active {
                > .ui-menuitem-link {
                    @include menu-item-hover();
                }
            }
        }

        .ui-megamenu-root-list {
            &>.ui-menuitem>.ui-menuitem-link {
                .ui-submenu-icon {
                    vertical-align: middle;
                }
            }
        }
    }

    .ui-tabmenu {
        border: 0 none;

        .ui-tabmenu-nav {
            padding: 0;

            .ui-tabmenuitem {
                margin: 0;
                position: static;
                @include transition(background-color $transitionDuration);
                @include border-radius(0);

                .ui-menuitem-link {
                    color: $headerTextColor;
                    padding: $headerPadding;

                    .ui-menuitem-icon, .ui-menuitem-text {
                        vertical-align: middle;
                        display: inline-block;
                        float: none;
                    }

                    .ui-menuitem-icon {
                        color: $headerIconColor;
                    }
                }

                &:not(.ui-state-active):not(.ui-state-disabled):hover {
                    background-color: $headerHoverBgColor;

                    .ui-menuitem-icon {
                        color: $headerIconHoverColor;
                    }
                }

                &.ui-state-active {
                    .ui-menuitem-link {
                        background-color:$primaryColor;
                        color:$highlightTextColor;

                        .ui-menuitem-icon {
                            color:$highlightTextColor;
                        }
                    }
                }
            }
        }
    }

    .ui-menubutton {
        .ui-button.ui-button-text-icon-left {
             .ui-icon {
                 margin-top: -0.75em;
             }
         }
    }

    .ui-panelmenu {
        .ui-icon {
            position: static;
        }

        .ui-panelmenu-header {
            background-color: $headerBgColor;
            padding: 0;
            font-size: $fontSize;
            color: $headerTextColor;
            margin-bottom: 1px;
            @include transition(background-color $transitionDuration);

            a {
                padding: $headerPadding;
                color: $headerTextColor;
                border-bottom: 1px solid #ffffff;
            }

            &:not(.ui-state-active):hover {
                background-color: $headerHoverBgColor;

                .ui-icon {
                    color: $headerIconHoverColor;
                }
            }

            &.ui-state-active {
                background-color: $primaryColor;

                a {
                    color: $highlightTextColor;
                }

                .ui-icon {
                    color: $highlightTextColor;
                }
            }
        }

        .ui-panelmenu-content {
            padding: .25em 0;
            .ui-menuitem-link {
                padding: $listItemPadding;
                color: $textColor;
                @include transition(background-color );

                &:hover {
                    @include list-item-hover();
                }

                > span.ui-icon {
                    display: inline-block;
                    vertical-align: middle;
                    left: auto;
                    margin-right: 0.3em;

                    &.ui-panelmenu-icon.ui-icon-triangle-1-s {
                        margin-top: -0.3em;
                    }
                }

                .ui-menuitem-text {
                    display: inline-block;
                    vertical-align: middle;
                }
            }
        }
    }
}
