@charset "UTF-8";

/* <----- CSS Setup -----> */
*,
*:after,
*:before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-padding-start: 0px;
}

:root {
    --font-color-black: #000;
    --font-color-white: #FFFFFF;

    --font-size-93: 9.3rem;
    --font-size-88: 8.8rem;
    --font-size-62: 6.2rem;
    --font-size-58: 5.8rem;
    --font-size-48: 4.8rem;
    --font-size-44: 4.4rem;
    --font-size-38: 3.8rem;
    --font-size-35: 3.5rem;
    --font-size-34: 3.4rem;
    --font-size-32: 3.2rem;
    --font-size-22: 2.2rem;
    --font-size-21: 2.1rem;
    --font-size-20: 2rem;
    --font-size-18: 1.8rem;
    --font-size-17: 1.7rem;
    --font-size-15: 1.5rem;
    --font-size-12: 1.2rem;

    --font-family-ArialNarrow: "ArialNarrow";
    --font-family-TimesNewRoman: "TimesNewRoman";
    --font-family-TimesNewRomanItalic: "TimesNewRomanItalic";
    --font-family-TimesNewRomanNarrow: "TimesNewRomanNarrow";

    --menu-size: calc(8rem * var(--a11y-font-scale, 1));
    --focus-ring-color: #0a66ff;
}

html {
    font-family: var(--font-family-ArialNarrow), Arial, Helvetica, sans-serif;
    line-height: 1.15;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html,
body {
    margin: 0;
    padding: 0;
}

html.overlay-open,
html.overlay-open body,
body.overlay-open {
    overflow: hidden;
}

main {
    min-height: calc(100svh - 20rem);
}

html .transition-main,
html .transition-articles {
    transition: opacity 0.4s ease-in-out;
    opacity: 1;
}

/* First hard-load only: avoid a visible initial flash on main container. */
html.is-initial-main-load .transition-main {
    opacity: 0;
}

html.is-initial-main-load.is-initial-overlay-route .transition-main {
    opacity: 1;
}

html.is-initial-main-load.is-initial-main-load-ready .transition-main {
    opacity: 1;
}

html.is-initial-main-load.is-initial-overlay-route #transition-header-root {
    opacity: 0;
    pointer-events: none;
}

html .transition-search-results {
    transition: opacity 0.4s ease-in-out;
    opacity: 1;
}

html.is-animating .transition-main {
    opacity: 0;
}

html.is-animating.from-route-article.to-route-article .transition-main,
html.is-animating.from-route-article.to-route-reel .transition-main,
html.is-animating.from-route-reel.to-route-article .transition-main,
html.is-animating.from-route-reel.to-route-reel .transition-main {
    opacity: 1;
}

html.is-animating .transition-main:has(#article-detail.to-article-update) {
    opacity: 1;
}

html.is-animating.to-filter .transition-articles {
    opacity: 0;
}

html.is-animating.to-search .transition-main {
    opacity: 0.99;
}

html.is-animating.to-search .transition-search-results {
    opacity: 0;
}

@media (prefers-reduced-motion: reduce) {

    html.is-initial-main-load .transition-main,
    html.is-initial-main-load.is-initial-main-load-ready .transition-main {
        transition: none;
        opacity: 1;
    }
}

.main-header-inline .tags-fade-wrap,
.main-header-inline .sep {
    transition: opacity 0.3s ease-in-out;
}

html.is-animating.from-route-home.to-route-any .main-header-inline .tags-fade-wrap,
html.is-animating.from-route-home.to-route-any .main-header-inline .sep,
html.is-animating.from-route-any.to-route-home .main-header-inline .tags-fade-wrap,
html.is-animating.from-route-any.to-route-home .main-header-inline .sep {
    opacity: 0;
}

/* Header fix */
.transition-header {
    opacity: 1;
}

html.is-animating.from-route-article.to-route-home #transition-header-root,
html.is-animating.from-route-reel.to-route-home #transition-header-root,
html.is-animating.from-route-article.to-route-any #transition-header-root,
html.is-animating.from-route-reel.to-route-any #transition-header-root {
    opacity: 0;
}

/* beim Eintritt der Zielseite von 0 -> 1 */
html.is-rendering.to-route-home #transition-header-root,
html.is-rendering.to-route-any #transition-header-root {
    transition: opacity 0.4s ease-in-out;
}

.swup-progress-bar {
    height: 2px;
    background-color: var(--a11y-color-text, #000000);
}

.vh {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

main:focus {
    outline: none;
}

h1 {
    font-size: 2em;
    margin: 0;
    font-weight: normal;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

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

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: 600;
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

img {
    width: 100%;
    height: auto;
    border-style: none;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    display: block;
}

img:not([src]):not([srcset]) {
    visibility: hidden;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button:focus,
input:focus {
    outline: none;
}

/* Strong keyboard focus visibility across all interactive elements */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[role="button"]:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
    outline: 2px solid var(--focus-ring-color);
    outline-offset: 2px;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 2px solid var(--focus-ring-color);
    outline-offset: 2px;
}

fieldset {
    padding: 0;
    border: none;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
    outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    appearance: button;
    font: inherit;
}

details {
    display: block;
}

summary {
    display: list-item;
}

template {
    display: none;
}

ul {
    list-style-type: none;
}

a {
    -webkit-touch-callout: none;
}

button {
    background: transparent;
    border: none;
    color: #000;
    cursor: pointer;
}

/* General */

.lazy {
    transition: opacity 0.3s ease-in-out;
    opacity: 0;
}

.lazy.lazy-loaded {
    opacity: 1;
}

.skip-to-main-content-link {
    position: absolute;
    left: -9999px;
    z-index: 999;
    padding: 0.5rem;
    background-color: #fff;
    color: #000;
    opacity: 0;
    transition: none;
}

.skip-to-main-content-link:focus {
    left: 50%;
    transform: translateX(-50%);
    opacity: 1;
}

.page-container {
    padding-bottom: 1px;
}

/* Texts */

u,
.info-text a,
.underline-1px {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

/* Menu */

.btn-menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 101;
    width: var(--menu-size, 8rem);
    height: var(--menu-size, 8rem);
    border: 0;
    padding: 0;
    background: transparent;
    overflow: hidden;
    color: var(--a11y-invert-fg-current, #fff);
}

.btn-menu::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-top: var(--menu-size, 8rem) solid var(--a11y-invert-bg-current, #000);
    border-left: var(--menu-size, 8rem) solid transparent;
}

.btn-menu span {
    position: absolute;
    z-index: 1;
    top: 35%;
    left: 70%;
    transform: translate(-50%, -50%) rotate(45deg);
    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-18);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0.011em;
    text-align: center;
    color: currentColor;
    white-space: nowrap;
}

.menu-layer {
    --menu-layer-fade-duration: 0.2s;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 98;
    background-color: #000;
    color: #FFFFFF;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--menu-layer-fade-duration) ease-in-out,
        visibility var(--menu-layer-fade-duration) ease-in-out;
}

.main-nav[data-menu-close-variant="link"] .menu-layer {
    transition-delay: 0s;
    --menu-layer-fade-duration: 0.3s;
}

.menu-layer-scroll {
    height: 100%;
    overflow-y: scroll;
}

.main-nav.is-menu-open .menu-layer {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.main-nav.is-menu-open .btn-menu {
    --a11y-invert-bg: #FFFFFF;
    --a11y-invert-fg: #000000;
}

@media (max-width: 50em) {

    /* 800px */
    .btn-menu {
        -webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
        clip-path: polygon(100% 0, 100% 100%, 0 0);
    }
}

/* Keep the open-state close button white even in high-contrast mode. */
html[data-theme="high-contrast"] .main-nav.is-menu-open .btn-menu {
    --a11y-invert-bg-current: #FFFFFF;
    --a11y-invert-fg-current: #000000;
}

.menu-layer ul {
    text-align: center;
    margin: 4rem;
}

.menu-layer a {
    font-family: var(--font-family-ArialNarrow);
    font-style: normal;
    font-weight: 400;
    font-size: var(--font-size-35);
    line-height: 1;
    letter-spacing: 0.003em;
    color: var(--font-color-white);
    text-align: center;
}

.menu-layer a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 2px;
}

.menu-layer[hidden] {
    display: block;
}

/* Main Header */

.site-brand {
    white-space: nowrap;
}

.site-brand,
.tag-line a,
.tag-line li::after {
    font-size: var(--font-size-35);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.06;
    letter-spacing: 0.003em;
    text-align: left;
    color: var(--a11y-invert-fg-current, #000000);
}

.tag-line a {
    padding-bottom: 0.3rem;
}

.tag-line a.is-active {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 2px;
}

.tag-line a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 2px;
}

.main-header-inline {
    padding: 0.5rem 6rem 0.5rem 1rem;

    position: fixed;
    z-index: 88;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    max-height: 100%;
    overflow: hidden;

    --a11y-invert-bg: #ffffff;
    --a11y-invert-fg: #000000;
    background-color: var(--a11y-invert-bg-current);
    color: var(--a11y-invert-fg-current);
}

.main-header-spacer {
    display: block;
    width: 100%;
    height: var(--main-header-spacer-height, 0px);
    min-height: 4.7rem;
}

@media (max-width: 50em) {

    /* 800px */
    .main-header-spacer {
        min-height: 4rem;
        height: 4rem;
    }

    .main-header-inline {
        max-height: 8rem;
    }

    .main-header-inline[data-mobile-spacer="home"]+.main-header-spacer {
        height: 8rem;
    }

    .main-header-inline {
        overflow: hidden;
        height: 4rem;
        padding: 0.1rem 1rem 0.3rem 1rem;
    }

    .main-header-inline[data-mobile-spacer="home"] {
        padding: 0.1rem 1rem 0 1rem;
        height: auto;
    }
}

.main-header-inline .site-brand,
.main-header-inline nav,
.main-header-inline .tag-line {
    display: inline;
}

.main-header-inline .tag-line li {
    display: inline-block;
}

.main-header-inline .sep {
    margin: 0;
    display: inline-block;
    width: 0.25em;
    text-align: left;
    opacity: 1;
    visibility: visible;
}

.main-header-inline .sep.is-hidden {
    opacity: 0;
    visibility: hidden;
}

.main-header-inline .site-brand {
    transition: none !important;
    opacity: 1 !important;
    /* transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform; */
}

.tag-line {
    display: inline;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tag-line li::after {
    content: ",\00a0";
}

.tag-line li {
    white-space: nowrap;
}

.tag-line li:last-child::after {
    content: "";
}

/* Generic cookie consent blocker for third-party embeds (YouTube, Vimeo, SoundCloud, etc.) */
.module-embed {
    position: relative;
}

.module-embed .embed-block__media {
    position: relative;
    min-height: 8rem;
}

.module-embed .embed-block__provider {
    width: 100%;
    height: 100%;
}

.module-embed [data-embed-content][hidden] {
    display: none !important;
}

.module-embed .embed-block__media iframe {
    display: block;
    width: 100%;
}

.module-embed:not(.module-embed--dynamic-height) .embed-block__media iframe {
    height: 100%;
}

.module-embed--dynamic-height .embed-block__media {
    height: auto;
}

@media screen and (min-width: 50.0625em) {
    .content-blocks__item--embedblock:has(> .module-embed--dynamic-height) {
        grid-column: 8 / 18;
    }
}

.video-block.module-embed .embed-block__media {
    aspect-ratio: 16 / 9;
    min-height: 0;
}

.video-block.module-embed .embed-block__media iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 16 / 9;
}

.video-block.module-embed [data-manual-embed-stage] {
    position: relative;
    overflow: hidden;
    background: #000;
}

.video-block.module-embed [data-manual-embed-stage] iframe,
.video-block.module-embed [data-manual-embed-poster] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: 16 / 9;
}

.video-block.module-embed [data-manual-embed-poster] {
    z-index: 1;
    -o-object-fit: cover;
    object-fit: cover;
    transition: opacity 0.25s ease;
}

.video-block.module-embed [data-manual-embed-stage] iframe {
    z-index: 2;
}

.video-block.module-embed [data-manual-embed-stage][data-playing="1"] [data-manual-embed-poster] {
    opacity: 0;
    pointer-events: none;
}

.cookie-embed-placeholder,
.embed-load-failure {
    --cookie-embed-bg: #000000;
    --cookie-embed-fg: #ffffff;
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: var(--cookie-embed-bg);

    min-height: 15rem;

    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.07;
    letter-spacing: normal;
    text-align: center;
    color: var(--cookie-embed-fg);
}

html[data-theme="high-contrast"] .cookie-embed-placeholder,
html[data-theme="high-contrast"] .embed-load-failure {
    --cookie-embed-bg: #ffffff;
    --cookie-embed-fg: #000000;
}

.cookie-embed-placeholder-inner,
.embed-load-failure {
    gap: 0.75rem;
}

.cookie-embed-placeholder-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.embed-load-failure {
    flex-direction: column;
}

.cookie-embed-placeholder .accept-cookies,
.embed-load-failure .embed-external-link {
    color: inherit;
}

.accept-cookies {
    padding: 1rem;
}

/* Default Main Header */

.page-header__title {
    font-size: var(--font-size-88);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.has-times-font .page-header__title {
    font-family: var(--font-family-TimesNewRomanNarrow);
    font-size: var(--font-size-93);
    line-height: 0.96;
}

.has-times-font .article-intro-text {
    font-family: var(--font-family-TimesNewRomanNarrow);
    font-size: var(--font-size-48);
    line-height: 0.96;
}

.has-times-font.article-teaser--large .article-teaser-title {
    font-family: var(--font-family-TimesNewRomanNarrow);
    line-height: 0.96;
}

.has-times-font .headline h2 {
    font-family: var(--font-family-TimesNewRomanNarrow);
    font-size: var(--font-size-38);
    line-height: 0.96;
}

.has-times-font em,
.interview-line--interviewee em {
    font-family: var(--font-family-TimesNewRomanItalic);
}

/* Article Overlay */
.article-meta__inner {
    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-17);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.06;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);

    margin-bottom: 0.8rem;
}

.article-meta__inner a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 1.5px;

    color: var(--a11y-color-text, #000000);
}

.article-intro-text {
    font-size: var(--font-size-44);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.05;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);

    padding: 0.4rem 1rem;
}

.authors-list,
.authors-list a {
    font-size: var(--font-size-44);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.05;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

/* Article Paywall */

.steady_paywall {
    border: 1px solid var(--a11y-color-text, #000000);
}

.steady_paywall__header {
    margin: 4rem 0 2rem 0;
}

.steady_paywall__header h3 {
    font-size: var(--font-size-35);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.steady_paywall__content {
    margin: 2rem 0 4rem 0;
}

.steady_paywall__info {
    margin: 3.5rem 0 3.5rem 0;

    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);
}

.steady_paywall__info>div {
    position: relative;
    gap: 0.8rem;
}

.steady_paywall__info .check,
.steady-plan-card__benefits .check {
    width: 1.1rem;
    height: 1.1rem;
    display: inline-block;
    position: relative;
    left: 0;
    top: 0.25rem;
    flex: 0 0 1.1rem;
}

.steady_paywall__info .check::after,
.steady-plan-card__benefits .check::after {
    content: "";
    position: absolute;
    left: 0.1rem;
    top: -0.1rem;
    width: 0.6rem;
    height: 1.1rem;
    border-right: 1px solid var(--a11y-color-text, #000000);
    border-bottom: 1px solid var(--a11y-color-text, #000000);
    transform: rotate(45deg);
}

.steady_paywall__content p {
    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-17);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.18;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.steady_paywall__footer {
    border-top: 1px solid var(--a11y-color-text, #000000);
    padding: 1.5rem 1rem;
}

.steady_paywall__footer p, .steady_paywall__footer a {
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.steady_paywall__cta-wrapper {
    margin: 3rem 0 0 0;
    display: flex;
    justify-content: center;
}

.btn {
    padding: 0.8rem 3rem;
    border: 1px solid var(--a11y-button-border);
    border-radius: 50%;
    background: var(--a11y-button-bg);
    color: var(--a11y-button-text);
    cursor: pointer;

    font-size: var(--font-size-20);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;

    display: block;
}


/* Blocks */

.content-blocks__item:not(.col-full) {
    padding: 0 1rem;
}

.headline h2 {
    font-size: var(--font-size-44);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.05;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.caption {
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);

    margin-top: 0.8rem;
}

.caption a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

.text-copy p {
    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-21);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.29;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);

    text-indent: 50px;
}

.text-copy p:first-of-type {
    text-indent: 0;
}

.text-copy em {
    font-family: var(--font-family-TimesNewRomanItalic);
}

.text-copy ul p {
    margin-top: 2.7rem;
    margin-bottom: 2.7rem;
}

.text-copy ul+p {
    text-indent: 0;
}

.text-pages .text-copy p {
    text-indent: 0;
    margin-bottom: 2.7rem;
}

.text-pages .text-copy>p:last-of-type {
    margin-bottom: 0;
}

.text-copy ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.text-copy ul li {
    position: relative;
    padding-left: 1em;
    margin-left: 0;
}

.text-copy ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0.3em;
    line-height: 1;
    font-size: var(--font-size-18);
    color: var(--a11y-color-text, #000000);
}

.text-copy>ul:last-child>li:last-child p:last-child {
    margin-bottom: 0;
}

.interview-copy a,
.text-copy a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;

    color: var(--a11y-color-text, #000000);
}

.interview-line p {
    font-size: var(--font-size-20);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.3;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);
}

.interview-copy {
    display: grid;
    row-gap: 2.6rem;
}

.interview-line--interviewer {
    font-family: var(--font-family-ArialNarrow);
}

.interview-line--interviewee {
    font-family: var(--font-family-TimesNewRoman);
}

.interview-line__speaker {
    white-space: nowrap;
}

.quote-block--small .quote-text {
    font-size: var(--font-size-44);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.05;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.quote-block--large .quote-text {
    font-size: var(--font-size-88);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.quote-name {
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.07;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
    margin-top: 2.6rem;
}

.image-block--full .caption,
.gallery-block .caption,
.video-block--full .caption {
    padding: 0 1rem;
}

.image-block__figure {
    margin: 0;
    line-height: 0;
}

.image-block__figure+.image-block__figure .caption {
    padding: 0;
}

.image-block__media {
    overflow: hidden;
    aspect-ratio: var(--image-block-ratio);
}

.image-block__media picture,
.image-block__media img {
    display: block;
    width: 100%;
}

.gallery-block {
    position: relative;
    --swiper-theme-color: var(--a11y-color-text, #000000);
    --swiper-navigation-color: var(--a11y-color-text, #000000);
    background: var(--a11y-color-bg, #ffffff);
}

.gallery-block__swiper {
    overflow: hidden;
}

.gallery-block__swiper .swiper-wrapper {
    align-items: stretch;
    transform: translate3d(0, 0, 0);
}

.gallery-block__swiper .swiper-slide {
    margin-right: 0 !important;
}

.gallery-block__slide {
    height: auto;
    overflow: hidden;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
}

.gallery-block__figure {
    margin: 0;
    line-height: 0;
}

.gallery-block__media,
.gallery-block__media picture,
.gallery-block__media img {
    display: block;
    width: 100%;
}

.gallery-block__media {
    overflow: hidden;
    aspect-ratio: var(--gallery-media-ratio);
}

.gallery-block__media img {
    transform: scale(1.005);
    transform-origin: center;
    will-change: transform;
}

.gallery-block__caption {
    margin-top: 1rem;
}

.gallery-block__controls {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.6rem;
    margin-top: 0;
}

.gallery-block__button {
    width: 5rem;
    height: 5rem;
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    color: var(--a11y-color-text, #000000);
    display: grid;
    place-items: center;
    cursor: pointer;

    position: relative;
    isolation: isolate;

    mix-blend-mode: difference;
}

.gallery-block__button.swiper-button-prev {
    justify-content: flex-start;
    left: 1rem;
    height: 50px;
    width: 50px;
}

.gallery-block__button.swiper-button-next {
    justify-content: flex-end;
    right: 1rem;
    height: 50px;
    width: 50px;
}

.gallery-block__button .gallery-block__icon {
    display: block;
    width: 1rem;
    height: 1.5rem;
    fill: #FFFFFF;
    pointer-events: none;
}

html[data-alt-mode="on"] .gallery-block__button {
    color: #FFFFFF;
}

html[data-alt-mode="on"] .gallery-block {
    --swiper-theme-color: #FFFFFF;
    --swiper-navigation-color: #FFFFFF;
}

.reel-block {
    width: 100%;
}

.reel-block__media {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: var(--a11y-color-text, #000000);
    aspect-ratio: 9 / 16;
}

.reel-block__video {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.reel-block__caption {
    margin-top: 1rem;
}

.media-player {
    width: 100%;
}

.media-player__stage {
    position: relative;
}

.media-player__sound {
    position: absolute;
    z-index: 5;
    left: 1rem;
    top: 1rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #fff;
    background: #fff;
    color: #000;
    padding: 0.4rem 1rem;
    height: 2.5rem;

    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-12);
    text-transform: uppercase;
    line-height: 1;
    cursor: pointer;
}

.media-player__play-indicator {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    height: auto;
    width: auto;
    border: 1px solid #fff;
    padding: 0.8rem 3rem;
    color: #000;
    background-color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 1.16s ease;
    pointer-events: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: var(--font-size-20);
    line-height: 1;
    cursor: default;
}

.media-player__play-indicator.is-visible {
    opacity: 1;
    pointer-events: auto;
    cursor: pointer;
}

.media-player__timeline {
    position: absolute;
    z-index: 4;
    left: 0;
    top: 0;
    width: 100%;
    height: 5rem;
    cursor: pointer;
    touch-action: none;
    background: transparent;
    display: block;
    opacity: 0;
}

.media-player__timeline.is-positioned {
    opacity: 1;
}

html[data-alt-mode="on"] .media-player__timeline.is-positioned {
    opacity: 0;
    pointer-events: none;
}

.media-player__timeline::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1.5px;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.5);
    pointer-events: none;
}

.media-player__timeline-current {
    position: absolute;
    left: 0;
    top: 50%;
    height: 1.5px;
    transform: translateY(-50%);
    width: 0%;
    background: rgba(255, 255, 255, 1);
    pointer-events: none;
    will-change: width;
}

/* Search */

.searchform {
    margin-top: 12.5rem;
    position: relative;

    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-20);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.3;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text, #000000);
}

.searchform .searchform__input {
    width: 100%;
    padding-bottom: 1rem;
    padding-right: 3.2rem;
    border: none;
    border-bottom: 1px solid var(--a11y-color-text, #000000);
    background: transparent;
    color: var(--a11y-color-text, #000000);
}

.searchform .searchform__input::-webkit-search-decoration,
.searchform .searchform__input::-webkit-search-cancel-button,
.searchform .searchform__input::-webkit-search-results-button,
.searchform .searchform__input::-webkit-search-results-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}

.searchform .searchform__input::-ms-clear,
.searchform .searchform__input::-ms-reveal {
    display: none;
    width: 0;
    height: 0;
}

.searchform .searchform__submit {
    position: absolute;
    right: 0;
    bottom: 1.5rem;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--a11y-color-text, #000000);
    cursor: pointer;
}

.searchform .nav-icon-search {
    width: 2rem;
    height: 2rem;
    display: block;
}

.searchform .nav-icon-search svg {
    width: 100%;
    height: 100%;
    display: block;
}

.searchform .nav-icon-search circle,
.searchform .nav-icon-search path {
    stroke: currentColor;
}

.searchform .searchform__input:focus,
.searchform .searchform__submit:focus {
    outline: none;
    box-shadow: none;
}

html[data-input-modality="keyboard"] .searchform .searchform__input:focus,
html[data-input-modality="keyboard"] .searchform .searchform__submit:focus {
    outline: 1px solid currentColor;
    outline-offset: 2px;
}

/* Default */
.text-centered {
    text-align: center;
}

.default-text-note {
    font-family: var(--font-family-TimesNewRoman);
    font-size: var(--font-size-20);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.3;
    letter-spacing: normal;
    color: var(--a11y-color-text, #000000);
}

video,
iframe {
    width: 100%;
    border: none;
    background: none;
    display: block;
}

.video-block video,
.video-block iframe {
    aspect-ratio: 16/9;
}

.video-block video {
    -o-object-fit: cover;
    object-fit: cover;
}

.video-load-indicator {
    display: none;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 8;
    text-align: center;
    pointer-events: none;
    color: #fff;
    font-size: var(--font-size-20);
    line-height: 1;
}

.video-load-indicator.is-visible {
    display: block;
}

.steady-plan-list-wrap {
    width: 100%;
}

.steady-plan-list__billing {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin: 0 0 2.5rem 0;
}

.steady-plan-list__billing-label {
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.013em;
    color: var(--a11y-color-text, #000000);
    opacity: 1;
}

.steady-plan-list__billing-label.is-active {
    opacity: 1;
}

.steady-plan-list__billing-switch {
    width: 4.5rem;
    height: 2.7rem;
    border: 1px solid var(--a11y-color-text, #000000);
    border-radius: 3.5rem;
    background: var(--a11y-color-bg, #ffffff);
    padding: 0.2rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

.steady-plan-list__billing-thumb {
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 50%;
    background: var(--a11y-color-text, #000000);
    transform: translateX(0);
    transition: transform 0.2s ease-in-out;
}

.steady-plan-list__billing-switch.is-annual .steady-plan-list__billing-thumb {
    transform: translateX(1.8rem);
}

.steady-plan-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: center;
    gap: 2rem;
    margin: 0 auto;
}

.steady-plan-card {
    border: 1px solid var(--a11y-color-text, #000000);
    display: flex;
    flex-direction: column;
    background: var(--a11y-color-bg, #ffffff);
    min-height: 49rem;
}

.steady-plan-list>*:only-child {
    grid-column: 1 / -1;
    width: calc((100% - var(--gap)) / 2);
    justify-self: center;
}

.steady-plan-card__head {
    background: var(--a11y-color-text, #000000);
    color: var(--a11y-color-bg, #ffffff);
    min-height: 14rem;
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.steady-plan-card__head h3 {
    margin: 0;
    text-align: center;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-35);
    font-weight: normal;
    line-height: 1;
    letter-spacing: 0.003em;
}

.account-logout-wrapper {
    display: flex;
    justify-content: center;
}

.account-sections {
    display: flex;
    flex-direction: column;
    gap: 5rem;
}

.account-sections h3,
.my-articles-block h3 {
    margin: 0 0 1.7rem 0;
    text-align: center;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-35);
    font-weight: normal;
    line-height: 1;
    letter-spacing: 0.003em;
    color: var(--a11y-color-text, #000000);
}

.account-block p {
    margin-bottom: 1.7rem;
}

.my-articles-block p {
    margin-bottom: 1.7rem;
}

.info-text .signed-out-message {
    margin-bottom: 64px;
}

.steady-plan-card__body {
    padding: 2rem;
    flex: 1 1 auto;
}

.steady-plan-card__meta,
.steady-plan-card__save,
.steady-plan-card__benefits,
.steady-plan-card__cta,
.steady-plan-list__gift {
    margin: 0;
}

.steady-plan-card__meta {
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-20);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.01em;
    color: var(--a11y-color-text, #000000);
}

.steady-plan-card__priceline {
    margin: 1.4rem 0 0 0;
    display: flex;
    align-items: baseline;
    gap: 1rem;
}

.steady-plan-card__price {
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-35);
    font-weight: normal;
    line-height: 1;
    letter-spacing: 0.003em;
}

.steady-plan-card__period {
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.013em;
}

.steady-plan-card__save {
    margin-top: 0.8rem;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.013em;
}

.steady-plan-card__save.is-hidden {
    display: none;
}

.steady-plan-card__benefits {
    list-style: none;
    margin: 2.2rem 0 0 0;
    padding: 0;
}

.steady-plan-card__benefits li {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin: 0.7rem 0 0 0;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.013em;
}

.steady-plan-card__cta {
    margin-top: auto;
}

.steady-plan-card__cta .button {
    display: block;
    width: 100%;
    text-align: center;
    border-radius: 0;
    background: var(--a11y-color-text, #000000);
    color: var(--a11y-color-bg, #ffffff);
    border: 1px solid var(--a11y-color-text, #000000);
    min-height: 5rem;
    padding: 1.5rem 1.5rem;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.013em;
}

.steady-plan-list__gift {
    margin-top: 3rem;
    text-align: center;
}

.steady-plan-list__gift a {
    display: inline-block;
    border: 1px solid var(--a11y-color-text, #000000);
    color: var(--a11y-color-text, #000000);
    border-radius: 50%;
    padding: 0.8rem 3rem;
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-18);
    font-weight: normal;
    line-height: normal;
    letter-spacing: normal;
}

/* Section Titles */

.section-header__title {
    font-size: var(--font-size-44);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text, #000000);
}

.info-text {
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: var(--a11y-color-text);
}

.info-text a {
    color: var(--a11y-color-text);
}

/* Footer */

.main-footer {
    width: 100%;

    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0 2rem;
}

.footer-group-links {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0 2rem;
}

.footer-group-links li span,
.footer-group-links li a,
.footer-group-links li button {
    font-family: var(--font-family-ArialNarrow);
    font-size: var(--font-size-15);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.07;
    letter-spacing: normal;
    text-align: left;
    color: var(--a11y-color-text);
    padding: 0.7rem 0;
    display: block;
}

/* Sitemap */

.sitemap-index__item--level-1,
.sitemap-index__list {
    margin-bottom: 2.3rem;
}

.sitemap-index__list {
    padding-left: 0;
}

.sitemap-index__list .sitemap-index__list {
    padding-left: 0rem;
}

.sitemap-index__content {
    text-align: left;
}

.text-copy ul p.sitemap-index__link-row {
    margin: 0;
}

@media screen and (max-width: 50em) {
    /* 800px */

    :root {
        --font-size-93: 6.2rem;
        --font-size-88: 5.8rem;
        --font-size-62: 6.2rem;
        --font-size-58: 5.8rem;
        --font-size-48: 3.4rem;
        --font-size-44: 3.2rem;
        --font-size-38: 3.4rem;
        --font-size-35: 3.2rem;
        --font-size-22: 1.5rem;

        /* --font-size-34: 3.4rem; 
         --font-size-32: 3.2rem;
        --font-size-21: 2.1rem;
        --font-size-20: 2rem;
        --font-size-18: 1.8rem;
        --font-size-17: 1.7rem;
        --font-size-15: 1.5rem;
        --font-size-12: 1.2rem; */
    }

    .tag-line a:not(.is-active):hover {
        text-decoration: none
    }

    .site-brand, .tag-line a, .tag-line li::after {
        font-size: var(--font-size-35);
        line-height: 1.13;
        letter-spacing: 0.003em;
    }

    .menu-layer a:hover {
        text-decoration: none
    }

    .main-header-inline .tag-line {
        width: calc(100% + 2rem);
        display: flex;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;

        margin-inline: -1rem;
        padding-inline: 1rem;
        padding-right: 4rem;
        padding-bottom: 0.3rem;
    }

    .tag-line a.is-active {
        text-underline-offset: 0.3rem;
        text-decoration-thickness: 2px;
    }

    .menu-layer ul {
        margin: 3.5rem;
    }

    .main-footer {
        flex-direction: column;
        gap: 0 2rem;
        margin-bottom: 3rem;
    }

    .footer-group-links {
        flex-direction: column;
        align-items: center;
        gap: 0 2rem;
    }

    .caption,
    .image-block--full .caption,
    .gallery-block .caption,
    .video-block--full .caption {
        padding: 0 1rem;
    }

    .content-blocks__item--imagesblock .image-block__figure:first-of-type {
        display: flex;
        flex-direction: column-reverse;
    }

    .content-blocks__item--imagesblock .image-block__figure:first-of-type .caption {
        margin: 0 0 0.8rem 0;
    }

    .image-block__figure+.image-block__figure .caption {
        padding: 0 1rem;
    }

    .module-embed .caption {
        padding: 0;
    }

    .quote-block--large .quote-text {
        font-size: 4.4rem;
    }

    .content-blocks__item:not(.col-full) {
        padding: 0 1rem;
    }

    .content-blocks__item:not(.content-blocks__item--textblock, .content-blocks__item--headlineblock, .content-blocks__item--interviewblock, .content-blocks__item--quoteblock, .content-blocks__item--embedblock, .content-blocks__item--videoblock) {
        padding: 0;
    }

    .main-header-inline .tags-fade-wrap {
        display: inline-block;
        width: 100%;
    }

    .steady-plan-list {
        grid-template-columns: 1fr;
        gap: 1.4rem;
    }

    .steady-plan-card__head h3 {
        font-size: var(--font-size-35);
    }

    .steady-plan-card__meta {
        font-size: var(--font-size-20);
    }

    .steady-plan-card__price {
        font-size: var(--font-size-35);
    }

    .steady-plan-card__period {
        font-size: var(--font-size-15);
    }

    main {
        min-height: calc(100svh - 14rem);
    }

}