//--- RESETS ---//
:focus { outline: none; }
a { cursor: pointer; }

//--- clearfix --//
.clearfix {
    &:before,
    &:after {
        content:"";
        width: 100%;
        clear: both;
        float: left;
    }
}

.clearinner:after { /* clears all floating divs inside a block */
    content: "";
    display: table;
    clear: both;
}

.js-template { /* mark a template for javascript use */
    display: none;
}

.linebreak {
    display: block;
}

.clear-both {
    clear: both;
}

.display-none {
    display: none;
}

.pull-right {
    float: right !important;
}

.pull-left {
    float: left !important;
}

.block-left {
    float: left;
}

.block-right {
    float: right;
    clear: right;

    li {
        list-style-type: none;
    }
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

//--- DEVICE-SPECIFIC CLASSES ---------------//
//regular tablet and up
@media (min-width:768px) {
    .no-mobile {
        display: block;
    }
    .mobile-only {
        display: none;
    }
}
//small tablet and phone
@media (max-width:767px) {
    .mobile-only {
        display: block;
    }
    .no-mobile {
        display: none;
    }
}

//--- STICKY FOOTER ---//
html, body {
    height: 100%;
    margin: 0;
}
.outerwrapper {
    height: 100%;
    min-height: 100%;
    margin: 0;
    padding-bottom: 3em; /* must be equal to footer height */
}
.outerwrapper:after{
    content:" ";
}
#footer {
    clear: both;
    position: relative;
    height: 3em; /* footer height */
    margin: -3em 0 0; /* must be equal to footer height */
}
