/* TODO: clean the style */
header {
    margin-top: 10px !important;
}

body {
    background-color: var(--body-background-color);
    font-family: var(--font);
}

article {
    width: 50%;
    margin: 20px auto 0 auto;
    padding: 15px;
    text-align: center;
    color: var(--article-color-text);
}

article.article-extended {
    width: 80%;
}

h1 {
    width: 100%;
    color: var(--h1-color-text);
}

h2 {
    width: 100%;
    color: var(--h2-color-text);
}

h4 {
    width: 100%;
    color: var(--h4-color-text);
}

h2 i {
    margin-right: 10px;
    font-size: 30px;
}

h4 i {
    margin-right: 10px;
    font-size: 15px;
}

p {
    color: var(--p-color-text);
    word-break: break-word;
}

p i {
    font-size: 15px;
}

.font-twenty {
    font-size: 20px;
}

div {
    word-break: break-word;
}

a {
    color: var(--a-color-text);
    text-decoration: none;
}

img {
    /* equals to the header logo size */
    width: 100px;
}

i {
    /* equals to the menu icons size */
    font-size: 70px;
}

i:hover {
    transform: scale(1.5);
}

img.news {
    width: 150px;
}

/* Flexbox */
.flex-element {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    align-content: center;
    width: 70%;
    margin: 0 auto;
}

.flex-element.extended {
    width: 100%;
}

/* hide an element without move the others */
.hide-element {
    visibility: hidden;
}

.hide-element-full {
    display: none;
}

.center {
    margin: 0 auto;
}