*{
    box-sizing: border-box;
    padding: 0px;
    margin: 0px;
}

body {
    display: flex;
    font-family: 'Roboto';
    height: 100vh;
    flex-direction: column;
}

/* Bigger picture CSS */

.Hero,
.Main-content,
.Footer {
    width: 100vw;
}

.Hero,
.Footer {
    background-color: #1F2937;
    font-size: 18px;
    color: #E5E7EB;
}

.Hero {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Hero block part CSS */

.Header,
.hero-body {
    width: 70%;
    display: flex;
}

/* Header block CSS */

.Header {
    padding: 1em 0;
    align-items: center;
}

.Header > .logo {
    font-size: 24px;
    color: #F9FAF8;
    margin-right: auto;
}

.Header > .right-part {
    list-style: none;
    display: flex;
    gap: 1em;
}

.Header > .right-part > li a {
    text-decoration: none;
    color: inherit;
}

/* Hero content block CSS */

.hero-body {
    gap: 2em;
    padding: 2em 0;
    flex-wrap: wrap;
}

.main-text {
    font-size: 48px;
    color: #F9FAF8;
    font-weight: 900;
}

.hero-body > .left-part {
    flex: 1;
    padding: 0.5em 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1em;
}

.signup {
    padding: 0.5em 1.5em;
    background-color: #3882F6;
    color: #F9FAF8;
    font-weight: bold;
    border-radius: 12px;
    border: none;
}

.hero-body > .right-part {
    flex: 1;
}

.hero-body > img {
    max-width: 50%;
    height: 250px;
}

/* Main-content block CSS */

.Main-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.first-content,
.quote-container,
.blue-box-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2em 0 3em 0;
    width: 70%
}

.first-content,
.quote-block {
    flex: 1;
}

/* First part of main content block CSS */

.information-header {
    font-size: 36px;
    color: #1F2937;
    font-weight: 900;
    padding: 0.5em 0;
}

.gallery {
    display: flex;
    gap: 2em;
    justify-content: center;
    flex-wrap: wrap;
}

.gallery-box {
    width: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
    text-align: center;
}

.image {
    height: 150px;
    width: 150px;
    border: 3px solid #3882F6;
    border-radius: 12px;
}

/* Second part of main content block CSS */
.quote-block {
    background-color: #E5E7EB;
    width: 100%;
    display: flex;
    justify-content: center;
}

.quote-container {
    width: 40%;
    gap: 0.5em;
    padding: 5em 0;
}

.quote {
    font-size: 36px;
    font-style: italic;
    font-weight: lighter;
    color: #1F2937;
}

.quote-author {
    align-self: flex-end;
    font-weight: 900;
}

/* Third part of main content block CSS */
.blue-box {
    display: flex;
    gap: 10em;
    background-color: #3882F6;
    width: 80%;
    padding: 2em 4em;
    border-radius: 12px;
    color: #E5E7EB;
    align-items: center;
    justify-content: center;
}

.blue-box > .left-part > .title {
    font-weight: bold;
    font-size: 24px;
}

.blue-box > .signup {
    box-shadow: #F9FAF8;
    border: 2px solid #E5E7EB;
}

/* Footer block CSS */

.Footer {
    align-self: flex-end;
    display: flex;
    justify-content: center;
    padding: 16px 0px;
}