.logo {
    max-width: 180px;
    line-height: 0;
}
  
header#masthead {
    background-color: #000;
    position: relative;
}

.container {
    align-items: center;
    display: flex;
    flex-direction: row;
    font-family: var(--font-family-primary);
    padding: 0.5rem 1rem;
    max-width: 1270px;
    margin: auto;
    justify-content: space-between;
}

.main-navigation li a {
    color: #fff;
}

.top {
    display: flex;
    justify-content: center;
    gap: 1rem;
    background-color: #079acd;
    flex-wrap: wrap;
    padding: 0.5rem;
}

.top a,
.top p {
    color: #fff;
    margin: 0;
    font-family: var(--font-family-primary);
}

ul#primary-menu li a::before {
    content: '';
    width: 0;
    height: 3px;
    bottom: 0;
    left: 0;
    background: #079acd;
    position: absolute;
    transition: all 400ms;
    -webkit-transition: all 400ms;
}

ul#primary-menu li a:hover:before {
    width: 100%;
}

button.menu-close,
button.menu-toggle {
    background: none;
    border: none;
    color: #fff;
}

button.menu-close{
position: absolute;
top: 1rem;
left: 1rem;
display: none;
}

button.menu-close i,
button.menu-toggle i {
    font-size: 3rem;
}

.top a:hover {
    color: #333;
}

ul.sub-menu {
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    width: max-content;
    background-color: #000;
}