@import url('https://fonts.googleapis.com/css2?family=Tinos:ital@0;1&display=swap');

:root {
    box-sizing: border-box;
}

*,
::before,
::after {
    font-weight: normal;
    box-sizing: inherit;
}

body {
    background-image: url("../img/istockphoto-501655522-170667a.jpg");
    color: #fff;
    font-family: Tinos, serif;
    width: 1000px;
    margin: 0 auto;
    font-size: .95rem;
}

.site-logo {
    font-size: 3.5rem;
    text-align: center;
    margin: .68em 0 .25em;
}

.site-header {
    display: flex;
    padding: .85em 0;
    font-size: .85rem;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    text-align: center;
}

.site-header>* {
    text-transform: uppercase;
}

.site-header .issue-info {
    flex:2;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.site-header .issue-info>* {
    flex:1;
}

.site-header nav {
    flex:1;
    display:flex;
    justify-content: space-around;
}

a {
    text-decoration: none;
    color: inherit;
}

p {
    text-align: justify;
}

.nav-link:hover {
    text-decoration: underline;
}

img {
    width: 100%;
    filter: grayscale(100%);
}

img:hover {
    filter: grayscale(0%);
}

figcaption {
    font-size: .85rem;
    font-style: italic;
    text-align: center;
}

main {
    display: grid;
    grid-template-columns: repeat(5, 1fr)
}

.newspaper {
    grid-column: 1 / 5;
    padding-right: 1em;
    padding-bottom: 1em;
    display: grid;
    grid-template-rows: minmax(100px, 1fr);
    row-gap: 1em;
}

.section-1 h2 {
    text-align: center;
    font-size: 2.25rem;
    margin: .5em 0 0;
}

.main-article-body {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 1rem;
    margin: .75em 0;
}

.main-article-body .main-article-text {
    grid-column: 1 / 3;
    columns:2;
    column-fill: auto;
    text-align: justify;
    line-height: 1.4;
    font-size: .95rem;
    margin-top: 0;
}

.main-article-body figure {
    margin: .5em 0;
    grid-column: 3 / 5;
}

.section-2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 1rem;
}

.section-2 article {
    grid-column: 1 / 3; 
    border-bottom: 1px solid #fff;
}

.section-2 article img {
    margin-bottom: .5em;
}

.section-2 article p {
    columns: 2;
    line-height: 1.4;
}

.section-2>:last-child>div:first-of-type  {
    border-bottom: 1px solid #fff;
    padding-bottom: 4em;
    margin-bottom: .5em;
}

.section-2>:last-of-type {
    border-bottom: 1px solid #fff;
}

.title {
    background-color: rgb(30, 30, 61);
    text-align: center;
    font-size: 1.2rem;
    margin: 0;
    padding: .25em 1em;
}

.title+p {
    margin: 0.5em 0;
}

.section-3 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 1rem;
}

.article-col-3 {
    grid-column: 1 / 4;
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-gap: 1rem;
}

.article-fig {
    margin: 0;
}

main aside {
    grid-column: 5 / 6;
    padding-left: 1em;
}

aside .title {
    margin: .5em 0;
}

.human-news {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background-color: #666;
}

.human-news img {
    grid-column: 1 / 2;
}

.human-news div {
    grid-column: 2 / 5;
}

.human-news div p {
    padding: 0 .5em;
}

.human-news div h3,
.hot-topic div:first-of-type {
    background-color: #aaa;
    text-transform: uppercase;
    font-family: sans-serif;
    font-size: .75rem;
    padding: .2rem 1rem;
}

.human-news div h3 {
    margin: 0;
    padding: .5em;
}

.hot-topic {
    display: flex;
    flex-direction: column;
}

.hot-topic div {
    background-color: #666;
    padding: 1rem;
}

.hot-topic p {
    margin: 0;
}

.hot-topic div h2 {
    font-size: 1rem;
    text-align: justify;
    font-weight: 700;
}

aside {
    border-left: 1px solid #fff;
    margin: 1em 0;
}

aside h2 {
    margin: 0 0 .25em;
    text-align: center;
}
aside a {
    color: rgb(84, 84, 186);
}

.activism-article {
    border: 2px solid #fff;
}

.activism-article p {
    padding: 1em;
    line-height: 1.5;
}

.activism-article span.title {
    display: block;
    margin: 0;
}

footer {
    margin-top: 1rem;
    padding: 1rem 0;
}

footer a {
    color: #ddd;
}

footer a:hover {
    text-decoration: underline;
}

footer p {
    text-align: center;
    font-family: sans-serif;
    font-size: .75rem;
    color:#999;
}