* {
    margin: 0;
    padding: 0;
    border: 0;
}

@font-face {
    font-family: "Elephant";
    src: url("assets/elephant.ttf");
}

@font-face {
    font-family: "Euphorigenic";
    src: url("assets/euphorigenic.ttf");
}

@font-face {
    font-family: "Charm";
    src: url("assets/charm.ttf");
}

@font-face {
    font-family: "Roboto";
    src: url("assets/roboto.ttf");
}

body {
    background: url("assets/background.jpg");
    font-family: "Roboto", sans-serif;
    font-size: 21px;
    color: #091827;
    padding: 0 30px;
}

h1 {
    font-family: "Charm", serif;
    font-size: 33px;
    font-style: normal;
    font-weight: bolder;
    padding: 16px 0px;
}

h2 {
    font-family: "Charm", serif;
    font-size: 27px;
    font-style: normal;
    font-weight: bold;
    padding: 14px 0px;
}

h3 {
    font-family: "Roboto", sans-serif;
    font-size: 24px;
    font-style: italic;
    font-weight: bold;
    padding: 12px 0px;
}

h4 {
    font-family: "Roboto", sans-serif;
    font-size: 21px;
    font-style: normal;
    font-weight: bold;
    padding: 12px 0px;
}

h5 {
    font-family: "Roboto", sans-serif;
    font-size: 21px;
    font-style: normal;
    font-weight: bold;
    padding: 12px 0px;
}

p {
    font-family: "Roboto", sans-serif;
    font-size: 21px;
    font-style: normal;
    font-weight: normal;
    padding: 12px 0px;
    line-height: 1.6;
}

a {
    font-size: 21px;
    color: #091827;
    text-decoration: underline;
}

a:active {
    font-size: 21px;
    color: #091827;
    text-decoration: underline;
}

a:hover {
    font-size: 21px;
    color: #091827;
    text-decoration: underline;
}

a:visited {
    font-size: 21px;
    color: #091827;
    text-decoration: underline;
}

input {
    font-family: "Roboto", sans-serif;
    font-size: 21px;
    color: #091827;
    padding: 6px;
    border: 2px solid #091827;
    border-radius: 4px;
}

#view {
    margin: auto;
    max-width: 1040px;
    border-left: 3px solid #091827;
    border-right: 3px solid #091827;
    overflow: hidden;
}

#top {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: stretch;
    background-image: url("assets/banner.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 300px;
}

#top-line {
    flex: 1;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-around;
}

#logo {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    background-color: #ffffffdd;
    min-width: 400px;
    padding: 18px;
}

#logo img {
    width: 120px;
    height: 120px;
}

#title {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

#title-tiny {
    font-family: "Elephant", serif;
    font-size: 72px;
    text-align: center;
    border-bottom: 2px solid #091827;
    margin-left: 18px;
}

#title-wide {
    font-family: "Euphorigenic", serif;
    font-size: 18px;
    text-align: center;
    margin-top: 12px;
    margin-left: 18px;
}

#slogan {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffffdd;
    min-width: 400px;
    padding: 18px;
}

#slogan div {
    font-family: "Euphorigenic", serif;
    font-size: 27px;
    text-align: center;
}

#line-menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    border-top: 2px solid #091827;
    border-bottom: 2px solid #091827;
    background-color: #270909;
    color: #ffffff;
}

#line-menu form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: end;
    padding: 5px;
}

#line-menu form * {
    margin: 5px;
}

#line-menu a {
    color: #ffffff;
}

#line-menu a:active {
    color: #ffffff;
}

#line-menu a:hover {
    color: #ffffff;
}

#line-menu a:visited {
    color: #ffffff;
}

.line-row {
    background-color: #ffffff;
    padding: 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.col-small {
    flex: 3;
    min-width: 270px;
    margin-right: 27px;
}

.col-bigger {
    flex: 7;
    min-width: 430px;
}

.blue-box {
    background-color: #c2e1ff;
    border-radius: 12px;
    padding: 3px;
}

.blue-title {
    background-color: #c2e1ff;
    margin: 9px;
    padding: 5px;
    border-bottom: 2px solid #8ac4ff;
}

.blue-item {
    background-color: #d2e9ff;
    border-radius: 5px;
    margin: 9px;
    padding: 5px;
}