* {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Overpass', Verdana, Geneva, sans-serif;
    background-color: var(--color-bg);
    color: var(--color-text);
}

button {
    cursor: pointer;
}

.container {
    max-width: var(--container-max-width);
    margin: 0 auto;
}

body.full-width .container {
    max-width: 100%;
}

main.main {
    overflow: hidden;
}

nav.main-nav {
    height: var(--header-height);
    background-color: var(--color-header-bg);
    color: var(--color-header-text);
}

nav.main-nav .container {
    display: flex;
    justify-content: space-between;
}

nav.main-nav .nav-group {
    display: flex;
}

nav.main-nav .nav-group .nav-item.nav-brand {
    font-size: 20px;
    font-weight: bold;
}

nav.main-nav .nav-group .nav-item a {
    display: block;
    height: 100%;
    padding: 0 var(--header-item-padding);
    line-height: var(--header-height);
    text-decoration: none;
    color: var(--color-header-text);
}

nav.main-nav .nav-group .nav-item a:hover,
nav.main-nav .nav-group .nav-item a:active {
    background-color: var(--color-header-hover-bg);
    color: var(--color-header-hover-text);
}
