.main {
    max-width: 70em;
}

.logo .image {
    /* max-width: 23em; */
    height: 10.8em;
    /* max-height: 25em; */
    background-size: contain !important;
    /* margin: -1em auto -3em auto; */
    width: 14em;
    display: flex;
    flex-flow: row wrap;
    font-size: 1.1em;
}

.area.landing {
    max-width: 100%;
    display: flex;
    flex-flow: row wrap;
    width: calc(100vw - 0.8em);
    /* margin: 0 0.4em; */
    align-items: center;
    gap: 0em;
}

.area.landing>h1:first-child {
    margin-top: 0em;
}

.area.landing .chunk {
    max-width: 100%;
    display: flex;
    flex-flow: row wrap;
    width: calc(100vw - 0.8em);
    /* margin: 0 0.4em; */
    /* justify-content: center; */
    align-items: flex-start;
    gap: 0em;
    justify-content: center;
}

.area.landing h1, .area.landing h2 {
    font-family: 'concourse_sc';
    text-transform: uppercase;
    /* font-feature-settings: 'c2sc'; */
    font-size: 2.5em;
    font-weight: 500;
    margin: 0;
    /* text-align: center; */
    background-color: #2b2b2b;
    color: white;
    width: 100%;
    margin-top: 0.6em;
    margin-bottom: 0.2em;
    line-height: 1.2;
    display: flex;
    justify-content: left;
    align-items: center;
    letter-spacing: 0.001em;
    position: relative;
    padding: 0 0.5em;
}

.area.landing h2 {
    /* justify-content: center; */
    padding-left: 0.7em;
    /* width: 75%; */
    font-size: 2em;
    font-weight: 300;
    text-align: right;
    /* justify-content: flex-end; */
    /* padding-right: 0.5em; */
}

.area.landing .parent .parent {
    width: 92%;
}

.area.landing .article.first, .area.landing .parent {
    width: 100%;
}

.article.first {
    height: 28em;
    margin: 0.2em;
}

.area.landing>.parent {
    margin-top: 1em;
}
.article.second, .article.third, .article.fourth {
    height: 24em;
    margin: 0.2em;
}

.article.second {
    /* width: calc(100% / 2); */
    flex: 1 calc(100em / 2.98);
}

.article.third, .article.fourth {
    /* width: calc(100% / 3); */
    flex: 1 calc(100em / 4.6);
}

.article.rest {
    /* width: calc(100% / 3.18); */
    height: 4.4em;
    margin: 0.5em 0.3em;
    margin-right: calc(10% / 12);
    margin-left: calc(10% / 12);
    box-shadow: var(--button_shadow);
    outline: 0.07em solid gainsboro;
    display: flex;
    flex-flow: column wrap;
    /* flex: 1 1 calc(100% / 3.18); */
    /* flex-grow: 10; */
    flex: 1 calc(100em / 3.98);
    font-size: 0.87em;
}

.article.fourth + .gap {
    margin-top: 1em;
    width: 100%;
}

.bg.title {
    display: flex;
    flex-flow: row nowrap;
}

.first .bg.title {
    width: 100%;
    height: 32em;
    height: 100%;
}

.second .bg.title {
    width: 100%;
    height: 26em;
    /* height: calc(25em + 118 * ((100vw - 100em)/(450 - 1153))); */
    height: 100%;
}

.third .bg.title {
    width: 100%;
    height: 35em;
    height: 26em;
    height: 100%;
}

.fourth .bg.title {
    width: 100%;
    /* height: 20em; */
    /* height: 26em; */
    height: 100%;
}

.bg.title:before {
    content: var(--title);
    width: 100%;
    padding: 0.2em 0.3em;
    background-color: rgba(255,255,255,0.8);
    min-height: 2em;
    display: flex;
    justify-content: left;
    align-items: center;
    font-family: 'concourse_sc';
    font-feature-settings: 'c2sc';
    font-size: 1.3em;
    font-weight: 400;
    line-height: 1;
    color: var(--black);
    position: absolute;
    box-shadow: var(--button_shadow);
}

.first .bg.title:before {
    /* padding-left: 1.1em; */
}

.bg.title:after {
    content: var(--date);
    /* width: 100%; */
    padding: 0.1em 0.3em;
    background-color: rgba(255,255,255,1);
    min-height: 1.7em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'concourse_sc';
    font-feature-settings: 'c2sc';
    font-size: 0.8em;
    font-weight: 300;
    line-height: 1;
    color: var(--black);
    position: absolute;
    bottom: 0;
    right: 0;
    border-top-left-radius: 0.4em;
    /* border-top: 0.01em solid var(--black); */
    /* border-left: 0.01em solid var(--black); */
}

.bg.title {
    /* margin: 0.2em; */
    border-radius: 0.3em;
    position: relative;
}

.bare.title {
    height: 100%;
    width: 100%;
}

.bare.title:before {
    content: var(--title);
    max-width: calc(95% - 4.1em);
    margin: 0 0.3em;
    /* background-color: rgba(255,255,255,0.8); */
    /* min-height: 1.15em; */
    display: inline;
    justify-content: left;
    align-items: center;
    font-family: 'concourse_sc';
    font-feature-settings: 'c2sc';
    font-size: 1.2em;
    font-weight: 400;
    line-height: 1;
    color: var(--black);
    position: absolute;
    /* box-shadow: var(--button_shadow); */
    border-bottom: .07em dashed rgba(200, 200, 200, 0.9);
    /* margin: 0; */
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.bare.title:after {
    content: var(--date);
    width: 100%;
    margin: 0 0.3em;
    /* background-color: rgba(255,255,255,0.8); */
    /* min-height: 2em; */
    display: flex;
    justify-content: right;
    align-items: center;
    font-family: 'concourse_sc';
    font-feature-settings: 'c2sc';
    font-size: 0.9em;
    font-weight: 300;
    line-height: 1;
    color: var(--black);
    position: absolute;
    bottom: 0;
    right: 0;
}

.first a {
    align-items: center;
}

.first a, .second a, .third a, .fourth a, .rest a {
    /* margin: 0.2em; */
    /* border-radius: 1.5em; */
    height: 100%;
}

.rest a {
    margin: 0.1em;
}

.rest a {
    /* border: 0.14em solid gainsboro; */
    /* margin: 0.4em; */
    /* box-shadow: var(--button_shadow); */
    display: flex;
    flex-flow: row nowrap;
    flex: 1;
}

.rest a:after {
    content: var(--author);
    /* margin: 0 0.3em; */
    font-family: 'concourse_sc';
    font-weight: 200;
    font-feature-settings: 'c2sc';
    display: inline;
    max-width: 44%;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    /* min-height: 1.5em; */
    position: absolute;
    bottom: 0;
    left: 4.5em;
}

.rest a:before {
    background: transparent var(--img_url) no-repeat center;
    background-size: cover;
    content: "";
    width: 5.1em;
    height: calc(100% - 0.1em);
    height: 100%;
    /* display: flex; */
    /* margin-right: 0.3em; */
}