@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700&display=swap');

/* public */
body {
    margin: 0;
    font-family: 'Roboto', sans-serif;
}

/* container */
.container, main > * {
    padding: 15px;
}

@media (min-width: 400px) {
    .container, main > * {
        padding: 20px 40px;
    }
}

@media (min-width: 800px) {
    .container, main > * {
        box-sizing: border-box;
        width: 900px;
        max-width: 80%;
        margin: auto;
    }
}

/* header & footer */
.main-header, .main-footer {
    background-color: #368BC1;
}

.main-header .container, .main-footer .container {
    display: flex;
    align-items: center;
    justify-content: space-between;

    box-sizing: border-box;
    min-height: 90px;

    color: white;
}

.main-footer {
    min-height: 75px;
}

.main-header a, .main-footer a, .main-header p, .main-footer p {
    color: white;
    text-decoration: none;
}

@media (min-width: 400px) { 
    .main-header a, .main-footer a, .main-header p, .main-footer p {
        display: inline-block;  
        padding: 15px;
    }
}

.main-header__brand {
    font-size: 28px;
    font-weight: 500;
    word-spacing: 4px;
}

.main-header__nav ul {
    margin: 0;
    padding: 0;

    list-style: none;
}

/* post list */
.posts {
    list-style: none;
}

.post {
    margin: 25px 0;
}

.post__img {
    display: inline-block;
}

.post__img, .post__img img {
    width: 100%;
}

.post__tags {
    margin: 0;
    padding: 0;

    list-style: none;
}

.post__tags li {
    display: inline-block;
}

.post__tags a {
    display: inline-block;

    padding: 5px;
    padding-left: 0;
    padding-bottom: 0;

    color: rgb(18, 52, 86, 0.8);
    font-weight: 500;
    text-decoration: none;
}

.post__summary h3 {
    margin: 15px 0;

    font-size: 20px;
    font-weight: 400;
}

.post__summary h3 a {
    color: black;
    text-decoration: none;
}

.post__summary p {
    margin: 0;

    font-size: 16px;
    line-height: 1.35;
}

.post__divider {
    margin: 0;
}

@media (min-width: 600px) {
    .post {
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

    .post__img, .post__summary {
        padding: 0 20px;
    }

    .post__img {
        width: 60%;
    }

    .post__summary {
        width: 40%;
    }
}