/* first hide all elements with a language class */
/* then show elements that match their language class */
.en, .no { display:none; } 
.en:lang(en):not(.item), .no:lang(no):not(.item) { display:block; } 

/* Basic styling */
* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-family: 'Roboto', sans-serif;
}
.bg_one{
    background: #212121;
}
.bg_two{
    background: #1a1a20;
}
.bg_dark{
    background: #141414;
}
.txt_blue{
    color: blue;
}
.txt_meetings{
	color: #4682B4;
}
.txt_red{
    color: #ec4a4a;
}
.txt_discord{
    color: #7289da;
}
body {
    font-family: sans-serif;
    background: #141414;
    color: #cacaca;
}
nav {
    background: #141414;
    padding: 5px 20px;
}
.skip{
    position:absolute;
    top:0px;
    left: 0px;
    clip: rect(1px, 1px, 1px, 1px);
}
.skip:focus{
    clip: auto;
    width: fit-content;
    background: rgba(65, 105, 225, 0.541);
}
ul {
    list-style-type: none;
}
a {
    color: #e7e7e7;
    text-decoration: none;
    padding: 7.5px 15px;
    background: transparent;
    border: 1px transparent solid;
}
a:hover {
    background: #444;
}
.logo a:hover {
    background: transparent;
}
.menu li.item {
    font-size: 16px;
    padding: 15px 5px;
    white-space: nowrap;
}
.logo a,
.toggle a {
    font-size: 20px;
}
.logo a, .logo li {
    padding: 0;
}
.logo a {
    display: block;
    width: fit-content;
}
.logo img {
    height: 40px;
    display: block;
}
.eng {
    border-bottom: 1px #cacaca solid;
}
a.mail, main a{
    padding: 7.5px 0px;
}
a.mail:hover, main a:hover{
    color: #ff2c2c;
    background: none;
}
section{
    width: 100%;
}
article{
    max-width: 1100px;
    margin: auto;
    padding: 40px 20px;
}
h3{
    color: #ec4a4a;
}
h1{
    font-size: 2.0em;
    color: #cc0909;
}
h1, h2{
    margin: 20px 0px;
}
p{
    padding: 10px 0px;
}
.board_member, .info div{
    padding: 20px 0px;
}
.board_member img{
    max-width: 225px;
    padding-top: 20px;
}
.wip img{
    opacity: 10%;
}
.wip2 img{
	opacity: 50%;
}
.board_member p, .board_member h3{
    padding: 5px 0px;
}
.news_item{
    padding: 20px 0px;
}
#volunteer_content li, #member_content li{
    list-style: disc;
}
#volunteer_content ol, #member_content ol{
    padding-left: 40px;
}
/* Mobile menu */
.menu, .about, .info, .events, .events span div{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.news_container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.fb{
    margin: auto;
}
.news_container div{
    flex-grow: 3;
}
.board_member{
    width: 100%;
    text-align: center;
    flex:1;
}
.events{
    justify-content: center;
    align-items: flex-start;
}
.events span div{
    justify-content: flex-start;
    align-items: flex-start;
}
.events span div p{
    padding: 5px 3px;
}
.events span{
    flex: 1;
    text-align: center;
    padding: 20px 20px;
    max-width: 310px;
    min-width: 310px;
}
h4{
    font-size: 110%;
}
.events h3{
    width: 100%;
    text-align: center;
}
.events h4{
    border-bottom: 1px #cacaca solid;
}
.toggle {
    order: 1;
}
.item.button {
    order: 2;
}
.item {
    width: 100%;
    text-align: center;
    order: 3;
    display: none;
}
.board_member, .info div{
    padding: 20px 0px;
}
.item.en:lang(en).active, .item.no:lang(no).active {
    display: block;
}
.button a {
    padding: 7.5px 15px;
    background: #a70f0f;
    border: 2px #6c0000 solid;
}
#set_no{
    padding-left: 20.5px;
    padding-right: 20.55px;
}
html:lang(no) .eng a, 
html:lang(en) .nor a {
    background: transparent;    
}
.button a:hover {
    text-decoration: none;
}
html:lang(en) .eng a:hover, 
html:lang(no) .nor a:hover {
    background: #a70f0f;
    border-color: #6c0000;
}
html:lang(no) .eng a:hover, 
html:lang(en) .nor a:hover {
    color: #ddd;
    background: #444;
}

/* Tablet menu */
@media all and (min-width: 500px) {
    .menu {
        justify-content: center;
        max-width: 1100px;
        margin: auto;
    }
    .logo {
        flex: 1;
    }
    .toggle {
        flex: 1;
        text-align: right;
    }
    .item.button {
        width: auto;
        order: 1;
        display: block;
    }
    .toggle {
        order: 2;
    }
    .eng, .nor {
        border: 0;
    }
    .board_member, .info div{
        padding: 20px;
    }
}

/* Desktop menu */
@media all and (min-width: 900px) {
    .item.no:lang(no), .item.en:lang(en) {
        display: block;
        width: auto;
    }
    .toggle {
        display: none;
    }
    .logo {
        order: 0;
    }
    .item:not(.button) {
        order: 1;
    }
    .button {
        order: 2;
    }
    .menu li.item {
        padding: 15px 10px;
    }
    .menu li.button {
        padding-right: 0;
    }
}