@page {
    margin: 20mm 15mm;
}

section.re_search,
.fullscreen-menu,
section.re_header header.web,
section.re_header section.desktopmenu,
footer,
form,
#sp-sw-main,
section.re_share,
.share,
section.re_teasers .article .legend,
section.re_teasers .article .foot .info.comments,
section.halfpage,
.widearea,
.sidearea,
.backtohome {
    display: none !important;
}

.pagewidth {
    padding: 0 20px;
}

.pagecolumns {
    display: block;
}

section.re_header {
    padding-top: 0;
    margin-bottom: 2cm;
}

section.re_header header.print {
    display: flex;
}

section.re_teasers .article {
    page-break-inside: avoid;
}

section.re_teasers .article .head,
section.re_teasers .article h2,
section.re_teasers .article figure,
section.re_teasers .article p {
    page-break-after: avoid;
}

article section.re_teasers {
    page-break-inside: avoid;
}

section.re_authorbox {
    page-break-inside: avoid;
}

section.re_comments {
    page-break-before: always;
}

section.re_comments .comment {
    page-break-inside: avoid;
}

section.re_text h2 {
    page-break-after: avoid;
    margin-top: 1em;
}

section.re_text p:first-of-type {
    page-break-before: avoid;
}

.ccm-page {
    min-height: 0;
}

.ccm-page,
.ccm-page p,
.ccm-page td,
section.re_text p {
    font-size: 16px;
    line-height: 1.4;
}

.ccm-page p {
    margin-bottom: 1.5em;
}

section.re_lead h1,
.page-type-interview section.re_lead h1,
.page-type-opinion section.re_lead h1 {
    font-size: 32px;
}

.page-type-interview section.re_lead .lead p,
.page-type-opinion section.re_lead .lead p {
    font-size: 20px;
}

section.re_lead .lead p {
    font-size: 18px;
}

section.re_teasers.three .article h2 {
    font-size: 18px;
}

section.re_teasers.three .article p {
    font-size: 15px;
}

section.re_teasers.three .article.interview p,
section.re_teasers.three .article.opinion p {
    font-size: 17px;
}
