// -----------------------------------------------------------------------------
// This file contains CSS utiltiy classes.
// -----------------------------------------------------------------------------

//
// Clear inner floats
//
.u-clearfix::after {
    clear: both;
    content: '';
    display: table;
}

// Hide overflowed content
.u-overflow-hidden {
    overflow: hidden;
}

// Clean button default styles
.u-empty {
    background-color: transparent;
    border: 0;

    &:focus:not(.main-nav__item) {
        outline: none;
    }
}

//
// Hide text while making it readable for screen readers
// 1. Needed in WebKit-based browsers because of an implementation bug;
//    See: https://code.google.com/p/chromium/issues/detail?id=457146
//
.u-hide-text {
    overflow: hidden;
    padding: 0; // 1
    text-indent: 101%;
    white-space: nowrap;
}

//
// Hide element while making it readable for screen readers
// Shamelessly borrowed from HTML5Boilerplate:
// https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css#L119-L133
//
.u-visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
