/*------------------------------------*\
	$BASE DEFAULTS
\*------------------------------------*/

// Box Sizing
*,
*::before,
*::after {
    box-sizing: border-box;
}

// Prevent text size change on orientation change.
// sass-lint:disable no-vendor-prefixes
html {
    font-family: $font--primary;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    overflow-x: hidden;

    &.no-scroll {
        overflow-y: hidden;
	}
}

// Prevent empty space below images appearing
img,
svg {
    vertical-align: top;
}

// Responsive images
img {
    height: auto;
    max-width: 100%;
}

// sass-lint:disable single-line-per-selector
button, input, select, textarea {
    font-family: inherit;
}
// sass-lint:enddisable

a {
    color: $color--primary;
    text-decoration: none;
    transition: color $transition;

    &:hover {
        color: darken($color--primary, 20%);
        cursor: pointer;
  }
}

ul,
ol {
    padding: 0;
    margin: 0;
    list-style: none;
}

.is-invisible,
%is-invisible {
    z-index: -1;
    opacity: 0;
    transition: opacity, z-index, $transition;
}

.is-visible,
%is-visible {
    z-index: 5;
    opacity: 1;
    transition: opacity, z-index, $transition;
}

.is-hidden,
%is-hidden {
    display: none;
}

.is-unhidden,
%is-unhidden {
    display: block;
}