:root {
    --swiper-navigation-color: #fff;

    --teq-orange: 226, 159, 118;
    --teq-orange-strong: 242, 149, 92;
    --teq-orange-dark: 175, 103, 59;
    --teq-orange-pale: 244, 206, 184;

    --teq-grey-dark: 37, 37, 38;
    --teq-grey-medium: 211, 211, 211;
    --teq-grey-light: 243, 243, 242;
    --teq-creme: 242, 240, 232;

    --teq-disruptive: 191, 165, 142;
    --teq-disruptive-alternate: 217, 201, 186;

    --teq-smc: 85, 63, 48;
    --teq-smc-alternate: 118, 97, 79;

    --teq-clean: 83, 144, 144;
    --teq-clean-alternate: 16, 110, 110;

    --brand-highlight: var(--teq-orange);
    --brand-highlight-alternate: var(--teq-orange-strong);

    --brand-text: 84, 84, 84;
    --brand-title: var(--teq-grey-dark);

    --brand-highlight-disruptive: var(--teq-disruptive);
    --brand-highlight-smc: var(--teq-smc);
    --brand-highlight-clean: var(--teq-clean);

    --headline-font: Poppins, "Helvetica Neue", sans-serif;
    --content-font: var(--headline-font);

    --content-max-width: 1280px;
    --content-max-width-narrow: 960px;
    --border-radius-small: 8px;
    --border-radius-medium: 15px;
    --border-radius-large: 22px;
    --border-radius: var(--border-radius-medium);

    --navigation-height: 72px;

    --card-box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.15);
    --card-box-shadow-hover: 0px 4px 30px rgba(0, 0, 0, 0.3);
    --card-padding: 24px 24px;
    --card-grid-gap: 38px;
}
html {
    -webkit-text-size-adjust: 100%;
    scroll-padding-block-start: 72px;
}
@media (min-width: 800px) {
    :root {
        --navigation-height: 132px;
    }
    html {
        scroll-padding-block-start: 134px;
    }
}
@media (min-width: 1140px) {
    :root {
        --navigation-height: 96px;
    }
    html {
        scroll-padding-block-start: 96px;
    }
}

[v-cloak] {
    display: none !important;
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    margin: 0;
    background: #fff;
    color: rgb(var(--brand-text));
    font-family: var(--content-font);
    font-weight: 400;
    line-height: 1.6;
    font-size: max(15px, min(4vw, 16px));
    hyphenate-limit-chars: 10 4 4;
}
.smallprint {
    line-height: 1.2;
}
details summary {
    cursor: pointer;
}
img,
svg,
video {
    display: block;
    max-width: 100%;
}
video[width],
img[width] {
    height: auto;
}
code {
    display: block;
}
strong {
    font-weight: 500;
}
a {
    color: rgb(var(--brand-highlight));
    text-decoration: none;
}
a:hover,
a:focus {
    text-decoration: underline;
}
p {
    margin-bottom: 24px;
}
hr {
    width: 100%;
    height: 1px;
    border: 0 none;
    margin: 24px 0;
    border-bottom: 1px dashed rgba(var(--brand-text), 0.5);
}
sup {
    font-size: 0.6em;
}
sup a.footnote-ref {
    padding: 0 4px;
}

/* HEADLINES */
hgroup {
    margin-bottom: 24px;
}
.kicker {
    text-transform: uppercase;
    font-size: min(18px, 3.6vw);
    letter-spacing: 0.08em;
    color: rgb(var(--brand-highlight));
    font-weight: 400;
    margin-bottom: 6px;
}
.kicker.--medium {
    font-size: min(14px, 2.8vw);
    margin-bottom: 2px;
}
.headline.--xlarge {
    font-size: min(8vw, 52px);
    line-height: 1.25;
}
.headline.--large {
    font-size: min(6vw, 42px);
    line-height: 1.25;
}
.headline.--mediumlarge {
    font-size: min(5.5vw, 32px);
    line-height: 1.25;
}
.headline.--medium {
    font-size: min(5vw, 22px);
    line-height: 1.25;
}
.headline.--small {
    font-size: max(15px, min(4vw, 18px));
    line-height: 1.25;
}

h1,
h2,
h3,
h4,
h5,
h6,
.headline {
    font-family: var(--headline-font);
    color: rgb(var(--brand-title));
    font-weight: 500;
    line-height: 1.25;
    margin: 0;
    letter-spacing: 0.03em;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
.headline:first-child {
    margin-top: 0;
}
h1 strong,
h2 strong,
h3 strong,
h4 strong,
.headline strong {
    color: rgb(var(--brand-highlight));
    font-weight: inherit;
}
.headline.--centered {
    text-align: center;
}
/* HEADLINES END */

.wrapper {
    max-width: var(--content-max-width);
    margin: 0 auto;
    padding: 0 20px;
}
.content-grid {
    padding: min(12.8vw, 72px) 0;

    --gap: clamp(1rem, 6vw, 3rem);
    --full: minmax(var(--gap), 1fr);
    --content: min(840px, 100% - var(--gap) * 2);
    --popout: minmax(0, 80px);
    --feature: minmax(0, 120px);

    display: grid;
    grid-template-columns:
        [full-start] var(--full)
        [feature-start] var(--feature)
        [popout-start] var(--popout)
        [content-start] var(--content) [content-end]
        var(--popout) [popout-end]
        var(--feature) [feature-end]
        var(--full) [full-end];
}
.content-grid > * {
    grid-column: content;
}
.content-grid > .popout {
    grid-column: popout;
}
.content-grid > .feature {
    grid-column: feature;
}
.content-grid > .full {
    grid-column: full;
}
.content-grid > h1.headline.--large:first-child {
    margin-bottom: 24px;
    margin-top: 0;
}
.text-content .headline {
    margin: 2em 0 1em;
}

.main-header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 10;
    background: #fff;
    background: rgba(255, 255, 255, 0.9);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    transform: translateZ(0);
    transition:
        box-shadow 0.3s,
        background-color 0.5s;
}
.main-header.--docked {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0);
    background: rgba(255, 255, 255, 0.4);
}
.main-header .wrapper {
    display: grid;
    grid-template-columns: 48px 1fr 48px;
    grid-column-gap: 20px;
    padding: 20px 20px 24px 20px;
    align-items: start;
}
.main-header .home-logo {
    display: block;
    grid-column-start: 2;
    margin: 0 auto;
}
.main-header .main-nav-toggle {
    display: block;
    width: 48px;
    height: 48px;
    background: transparent url("/images/icons/navigation-dark.svg") no-repeat
        50% 50%;
    border: 0 none;
    font-size: 0;
    color: transparent;
}
.main-header .main-nav-toggle.is-active {
    background-image: url("/images/icons/navigation-cross-dark.svg");
}

.main-nav {
    white-space: nowrap;
}
.main-nav ul {
    list-style: none;
    letter-spacing: 0.05em;
}
.main-nav li {
    display: block;
}
.main-nav a {
    display: block;
    text-decoration: none;
    color: inherit;
}
.main-nav a .__inner {
    padding-bottom: 2px;
}
.main-nav a.is-active .__inner {
    border-bottom: 2px solid currentColor;

    color: rgb(var(--brand-highlight));
}
.main-nav .main-nav-social-media {
    display: none;
}
@media (min-width: 1140px) {
    .main-nav .main-nav-social-media {
        display: block;
    }
    .main-nav .main-nav-social-media-link {
        padding-top: 24px;
        padding-left: 6px;
        padding-right: 6px;
    }
    .main-nav .main-nav-social-media:nth-last-child(2) {
        padding-left: 40px;
    }
}

.content-wrapper {
    max-width: var(--content-max-width);
    margin: 0 auto;
}
.content-wrapper.--attach-top {
    padding-top: 0;
}
.content-wrapper.--no-bottom-padding {
    padding-bottom: 0;
}
.content-wrapper.--centered {
    text-align: center;
}
.content-wrapper.--narrow {
    max-width: var(--content-max-width-narrow);
    box-sizing: content-box;
}
.content-wrapper .narrow-content {
    max-width: var(--content-max-width-narrow);
    margin-left: auto;
    margin-right: auto;
}
#content {
    min-height: 80vh;
    /* overflow: hidden; */
    /* contain: paint; */ /* Disabled, causes issues with position:fixed on children */
    max-width: 1920px;
    margin: 0 auto;
}
@media (min-width: 1920px) {
    #content {
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    }
}
#content > .content-grid:first-child {
    padding-top: calc(72px + var(--navigation-height));
}

@media (max-width: 799px) {
    .main-header .wrapper {
        padding: 12px;
        align-items: center;
    }
    .main-header .home-logo img {
        max-height: 44px;
    }
    .main-nav {
        position: fixed;
        top: 88px;
        background: rgba(255, 255, 255, 0.9);
        left: 0;
        padding: 20px 20px;
        -webkit-backdrop-filter: blur(6px);
        backdrop-filter: blur(6px);
        transform: translate(-100%, 0);
        transition: transform 0.3s ease-in-out;
        box-shadow: 0 0 10px rgb(0 0 0 / 10%);
        z-index: 9;
    }
    .main-nav.is-active {
        transform: translate(0%, 0);
    }
    .main-nav a {
        padding: 8px 10px;
    }
    .main-nav li {
        margin: 0;
    }
    .content-wrapper {
        padding-top: 110px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .header-teaser {
        padding-top: 88px;
    }
}
@media (min-width: 800px) {
    .main-header .home-logo {
        padding: 28px 0 0 0;
        grid-column-start: auto;
    }
    .main-header .home-logo img {
        height: 44px;
        width: auto;
    }
    .main-header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 10;
        font-size: 14px;
    }
    .main-header .wrapper {
        grid-template-columns: 1fr;
        align-items: center;
        justify-items: center;
        font-weight: 500;
        padding: 0 20px 24px;
        max-width: var(--content-max-width);
        margin: 0 auto;
    }
    .main-header .main-nav-toggle {
        display: none;
    }
    .main-nav ul {
        display: flex;
    }
    .main-nav a {
        padding: 10px 9px;
    }

    #content > .content-wrapper:first-child {
        padding-top: 180px;
    }
    .content-wrapper {
        padding: 72px 80px;
    }
    .header-teaser {
        padding-top: 180px;
    }
    .content-wrapper > p {
        text-align: justify;
    }
}
@media (min-width: 860px) {
    .main-nav a {
        padding: 10px 12px;
    }
}
@media (min-width: 1140px) {
    .main-header .wrapper {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
    .main-header .home-logo {
        margin: 0;
    }
    /*
    .main-nav a:hover,
    .main-nav a:focus {
        box-shadow: 0 4px 0 0 #fff inset;
    }
    */
    .main-nav a:hover .__inner,
    .main-nav a:focus .__inner {
        border-bottom: 2px solid currentColor;
    }
    .main-nav a {
        padding: 36px 20px 10px 20px;
    }
    #content > .content-wrapper:first-child {
        padding-top: 168px;
    }
    .header-teaser {
        padding-top: 168px;
    }
}

.main-footer {
    padding: 24px 0;
    position: relative;
    z-index: 2;
    background: rgb(var(--teq-grey-light));
    border-bottom: 35px solid rgb(var(--teq-orange));
}
.main-footer .wrapper {
    text-align: center;
    display: grid;
    grid-row-gap: 24px;
    font-size: 14px;
}
.footer-nav {
    letter-spacing: 0.05em;
    line-height: 2;
}
.footer-nav ul {
    list-style: none;
}
.footer-nav a {
    display: block;
    text-decoration: none;
    color: inherit;
}
.footer-nav a.is-active {
    text-decoration: underline;
}
.footer-nav a:hover,
.footer-nav a:focus {
    text-decoration: underline;
}
.footer-logo {
    display: block;
    max-width: 90px;
    margin: 0 auto 12px;
}
.footer-logo img {
    height: auto;
}
.footer-social {
    text-align: center;
    list-style: none;
    padding: 0;
    display: flex;
    justify-content: center;
    gap: 20px;
}
.footer-social a:hover img,
.footer-social a:focus img {
    filter: brightness(0.7) sepia(1) hue-rotate(140deg) saturate(2);
}
.main-footer .__newsletter {
    padding: 20px 20px 60px;
    margin: 0 auto;
    width: 100%;
    max-width: 520px;
    text-align: center;
}
.main-footer-social {
    list-style: none;
    display: flex;
    gap: 12px;
    justify-content: center;
}
@media (min-width: 960px) {
    .main-footer {
        padding: 48px 0;
    }
    .main-footer .wrapper {
        grid-template-columns: 240px 1fr;
        grid-column-gap: 40px;
        max-width: var(--content-max-width);
        align-items: start;
        text-align: left;
    }
    .main-footer-social {
        justify-content: flex-start;
    }
    .footer-nav {
        padding: 0;
    }
    .footer-nav ul {
        columns: 2;
        max-width: 360px;
        margin-left: auto;
    }
    .footer-nav a {
        white-space: nowrap;
    }
    .footer-nav li:first-child a {
        padding-left: 0;
    }
    .footer-nav li:last-child a {
        padding-right: 0;
    }
    .footer-logo {
        margin: 0 0 24px 0;
    }
    .main-footer .__section:nth-child(3) {
        grid-column: 1 / span 2;
    }
}
@media (pointer: coarse) {
    .footer-nav ul li {
        margin: 12px 0;
    }
}

.content-article {
    padding-top: calc(72px + var(--navigation-height));
}
.content-article .content-grid {
    padding-top: 0;
    padding-bottom: 0;
}
.content-article-date {
    text-align: right;
}
.content-article .content-article__companies {
    color: rgb(var(--brand-highlight));
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 0.08em;
}
.content-article .content-article__companies a:not(:last-child)::after {
    content: ", ";
}
.content-article .headline {
    -webkit-hyphens: auto;
    hyphens: auto;
    hyphenate-limit-chars: 16 8 8;
}
.content-article .headline.--medium {
    margin-top: 3rem;
}
.content-article .headline.--small {
    margin-top: 2rem;
}
.content-article a {
    word-break: break-word;
}
.content-article ul,
.content-article ol {
    padding-left: 1.2em;
    margin-bottom: 1em;
}
.content-article ul {
    list-style: disc;
}
.content-article .quote-figure {
    text-align: center;
    margin: 4em auto;
}
.content-article ul {
    margin-bottom: 1em;
}
.content-article blockquote {
    font-size: 1.4em;
    line-height: 1.4;
    margin-bottom: 1em;
    border-left: 4px solid rgb(var(--brand-highlight));
    padding-left: 20px;
}
.content-article blockquote em {
    font-style: normal;
}
.content-article blockquote > p:last-child {
    margin-bottom: 0;
}
.content-article table {
    margin: 2em 0;
    border-collapse: collapse;
    text-align: left;
    width: 100%;
}
.content-article table th {
    font-weight: 400;
}
.content-article table th,
.content-article table td {
    padding: 4px 10px;
    vertical-align: top;
}
.content-article table thead tr,
.content-article table tr:not(:last-child) {
    border-bottom: 1px dashed rgba(var(--teq-grey-dark), 0.3);
}
.content-article table th:not(:last-child),
.content-article table td:not(:last-child) {
    border-right: 1px dashed rgba(var(--teq-grey-dark), 0.3);
}
.content-article table td[colspan="2"] {
    text-align: center;
}
.content-article table.--light tbody th {
    font-weight: 300;
}
.content-article table.--light tbody th strong {
    color: rgb(var(--brand-highlight));
}
.content-article table tr.--italic td:not(:last-child) {
    font-style: italic;
}
.content-article figure {
    width: fit-content;
    margin: 0 auto 1em;
}
.content-article figure.--full {
    width: auto;
}
.content-article figure img {
    height: auto;
}
.content-article figure figcaption {
    font-size: 0.8em;
    margin-top: 6px;
}
.content-article .disclaimers {
    margin-top: 24px;
}
.content-article .disclaimer {
    padding: 20px;
    background: rgba(var(--teq-grey-dark), 0.05);
    border: 2px solid rgb(var(--brand-text));
    margin-bottom: 1em;
    font-size: 13px;
    line-height: 1.2;
}
.content-article .disclaimer p:last-child {
    margin-bottom: 0;
}
.content-article hgroup {
    margin-bottom: 24px;
}
.content-article h1 {
    font-size: min(6vw, 42px);
    line-height: 1.25;
    margin-bottom: 24px;
}
.content-article hgroup h1,
.content-article hgroup p {
    margin-bottom: 0;
}
.content-article h2 {
    margin: 1.5em 0 0.5em;
}
.content-article h2:first-child {
    margin-top: 0;
}
.content-article h3 {
    margin: 0.5em 0 0.5em;
}
.content-article iframe {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
}
.content-article .content-grid > figure {
    grid-column: popout;
}
.content-article .content-grid > figure.--portrait {
    grid-column: content;
    max-width: 480px;
}
.content-article ol li {
    margin-bottom: 0.5em;
}
.content-article .__meta {
    padding: 0;
    margin: 24px 0 0;
    font-size: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.5);
    padding-top: 20px;
}
.content-article .__meta p {
    margin: 0;
}
.content-article .__share {
    margin-top: 72px;
    text-align: center;
}
@media (min-width: 800px) {
    .content-article > [itemprop="articleBody"] > p {
        text-align: justify;
    }
}
@media (max-width: 799px) {
    .content-article .responsive-table {
        width: 100%;
    }
    .content-article .responsive-table thead {
        display: none;
    }
    .content-article .responsive-table tbody {
        display: block;
    }
    .content-article .responsive-table tr {
        display: block;
        border: 0 !important;
    }
    .content-article .responsive-table th,
    .content-article .responsive-table td {
        display: block;
        padding: 0;
        border: 0 !important;
    }
    .content-article .responsive-table th {
        margin-top: 1em;
        color: rgb(var(--brand-highlight));
        border-bottom: 1px dashed rgba(var(--teq-grey-dark), 0.5) !important;
        text-transform: uppercase;
        font-weight: 300;
        letter-spacing: 0.05em;
        font-size: 0.8em;
    }
    .content-article .responsive-table td {
        text-align: left;
    }
    .content-article .responsive-table td::before {
        content: attr(data-label);
        display: inline-block;
        margin-right: 12px;
        float: left;
        font-weight: 700;
        width: 100%;
        text-align: left;
    }
}

.banner.--cookie {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgb(var(--teq-grey-dark));
    padding: 20px 20px;
    display: grid;
    grid-row-gap: 24px;
    grid-column-gap: 40px;
    justify-items: center;
    font-size: 14px;
}
.banner.is-hidden {
    display: none;
}
.banner.--cookie p {
    margin: 0;
}
.banner .__responses {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
    justify-items: center;
    grid-row-gap: 12px;
}
.banner button {
    display: block;
    -webkit-appearance: none;
    font: inherit;
    background: rgb(var(--teq-grey-dark));
    color: rgb(var(--teq-grey-light));
    border: 2px solid rgb(var(--teq-grey-light));
    font-weight: 400;
    padding: 4px 12px;
    cursor: pointer;
    font-size: 14px;
}
.banner button:hover,
.banner button:focus {
    background: rgba(255, 255, 255, 0.1);
}
@media (min-width: 800px) {
    .banner.--cookie {
        grid-template-columns: 1fr 320px;
        justify-items: stretch;
        align-items: center;
    }
    .banner.--cookie .__responses {
        justify-items: end;
    }
}

.alternating-content {
    display: grid;
    grid-column-gap: 40px;
    grid-row-gap: 24px;
    justify-items: center;
    padding: 24px 0;
}
.alternating-content .__image {
}
.alternating-content .__image img {
    height: auto;
}
.alternating-content .__content p:last-child {
    margin-bottom: 0;
}
.alternating-content .__content > h3:first-child {
    margin-top: 0;
}
@media (min-width: 960px) {
    .alternating-content {
        grid-template-columns: 400px 1fr;
    }
    .alternating-content .__content {
        align-self: end;
    }
    .alternating-content .__image {
        align-self: center;
    }
    .alternating-content.--alternate {
        grid-template-columns: 1fr 400px;
    }
    .alternating-content.--alternate .__image {
        order: 2;
    }
    .alternating-content.--vcenter .__content {
        align-self: center;
    }
    .alternating-content.--vtop .__image {
        align-self: start;
    }
}

.quote-figure {
    font-weight: 300;
    letter-spacing: 0.06em;
}
.quote-figure figcaption {
    font-size: 16px;
    text-transform: uppercase;
    margin-top: 24px;
}
.quote-figure figcaption p::before,
.quote-figure figcaption p::after {
    content: "—";
    display: inline-block;
    margin: 0 6px 0 0;
}
.quote-figure figcaption p::after {
    margin: 0 0 0 6px;
}

.earth-header {
    background: url("/images/headers/earth-horizon-640.jpg") no-repeat 50% -24px;
    background-size: 100% auto;
    mix-blend-mode: screen;
    position: relative;
}
@media (min-width: 800px) {
    .earth-header {
        background-image: url("/images/headers/earth-horizon-1280.jpg");
    }
}
@media (min-width: 1400px) {
    .earth-header {
        background-image: url("/images/headers/earth-horizon-1920.jpg");
    }
}
@media (min-width: 2000px) {
    .earth-header {
        background-image: url("/images/headers/earth-horizon-3840.jpg");
    }
}

.earth-header .__content {
    max-width: var(--content-max-width-narrow);
    margin: 0 auto;
    padding: 12vw 20px 0;
    text-align: center;
}
.earth-header .dual-title {
    text-align: center;
}
.earth-header h1 {
    text-transform: uppercase;
    text-align: center;
}
.earth-header h2 {
    color: rgb(var(--brand-highlight));
}
.earth-header::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    z-index: -1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
}

@media (max-width: 480px) {
    .earth-header {
        background-position: 50% 48px;
    }
    .earth-header .__content {
        padding-top: 25vw;
    }
}

.content-article .hypothesis {
    max-width: 680px;
    margin: 48px auto;
    width: auto;
    padding: 20px 20px;
    display: flex;
    flex-flow: column;
    border-left: 4px solid rgb(var(--brand-highlight));
    background: rgba(var(--brand-highlight), 0.3);
}
.content-article .hypothesis blockquote {
    width: auto;
    background: transparent;
    border: 0 none;
    padding: 0;
    margin: 0;
    order: 2;
    font-weight: 400;
    max-width: none;
    font-size: 1.2em;
}
.content-article .hypothesis figcaption {
    order: 1;
    margin: 0 0 12px 0;
    color: rgb(var(--brand-highlight));
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    text-shadow: 0 0 1px #fff;
}

.business-partners {
    max-width: 520px;
    margin: 0 auto;
    list-style: none;
    padding: 0;
    display: grid;
    grid-row-gap: 24px;
    margin-top: 24px;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 20px;
}
.business-partners li {
    display: block;
}
.business-partners li a {
    display: block;
    padding: 20px;
}
.business-partners li.--premium a {
    border: 2px solid rgb(var(--teq-grey-light));
    border-radius: var(--border-radius);
    position: relative;
    padding-top: 30px;
}
.business-partners li.--premium a::before {
    content: "Premium-Partner";
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translate(-50%, 0);
    background: rgb(var(--teq-grey-light));
    color: rgb(var(--teq-grey-dark));
    padding: 0 12px;
    border-radius: 4px;
    white-space: nowrap;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.08em;
    font-size: 0.8em;
}
.business-partners li img {
    width: 100%;
}

.business-analysis-steps {
    padding: 0;

    list-style: none;
    counter-reset: analysis-steps;
}
.business-analysis-steps li {
    position: relative;
    padding-left: 60px;
    counter-increment: analysis-steps;
}
.business-analysis-steps li::before {
    content: counter(analysis-steps);
    position: absolute;
    display: block;
    left: 0;
    top: -0.12em;
    font-size: 6em;
    line-height: 1;
    text-align: right;
    width: 50px;
    -webkit-mask: linear-gradient(90deg, black 50%, transparent);
    -moz-mask: linear-gradient(90deg, black 50%, transparent);
    mask: linear-gradient(90deg, black 50%, transparent);
    font-weight: 400;
    color: rgb(var(--brand-highlight));
}
.business-analysis-steps li p {
    font-weight: 300;
    color: rgb(var(--brand-text));
}
.business-analysis-steps li p strong {
    color: rgb(var(--brand-highlight));
    font-weight: 400;
}
.business-analysis-steps li p:first-child:last-child {
    min-height: 108px;
}

.partner-footnote {
    font-size: 12px;
}

.disclosure-footnote {
    font-size: 12px;
    margin-top: 20px;
    padding-left: 8px;
}

.header-image {
    height: 40vw;
    overflow: hidden;
    min-height: 240px;
    max-height: 600px;
    margin-bottom: -15vw;
    position: relative;
    z-index: -1;
    mix-blend-mode: screen;
}
.header-image::before,
.header-image::after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 20vw;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
    z-index: 1;
}
.header-image::after {
    top: auto;
    bottom: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
}
.header-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    object-fit: cover;
    z-index: 0;
}
@media (min-width: 1500px) {
    .header-image {
        margin-bottom: -225px;
    }
}
@media (max-width: 479px) {
    .header-image {
        margin-bottom: -120px;
    }
}

.newsletter-teaser {
    background: linear-gradient(
        180deg,
        #fff 30%,
        rgb(var(--teq-grey-light)) 30%
    );
}
.newsletter-teaser-box,
.event-signup-box {
    box-shadow: var(--card-box-shadow);
    background-color: #fff;
    padding: 40px;
    display: grid;
}
.event-signup-box .headline.--large strong {
    font-size: min(4.2vw, 36px);
}
.newsletter-teaser-content {
    container-type: inline-size;
}
.newsletter-teaser-content hgroup {
    margin-bottom: 4px;
}
.newsletter-teaser .headline {
    font-size: min(6vw, 36px);
    margin-bottom: 24px;
}
.newsletter-teaser-content p {
    font-size: 16px;
    opacity: 0.8;
}
.newsletter-teaser-content ul {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-size: min(16px, 4vw);
    list-style: none;
}
.newsletter-teaser-content li {
    margin: 12px 0;
    padding-left: 42px;
    position: relative;
}
.newsletter-teaser-content li::before {
    content: "";
    width: 26px;
    height: 26px;
    background: url("/images/newsletter/newsletter-stack.svg") no-repeat 50% 50%;
    background-size: 100% auto;
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
}
.newsletter-teaser-content li:nth-child(2)::before {
    background-image: url("/images/newsletter/newsletter-network.svg");
}
.newsletter-teaser-content li:nth-child(3)::before {
    background-image: url("/images/newsletter/newsletter-bars.svg");
}
.newsletter-teaser-content li:nth-child(4)::before {
    background-image: url("/images/newsletter/newsletter-arrow.svg");
    background-size: auto 80%;
}
.newsletter-teaser-visual {
}
.newsletter-teaser-visual img {
    max-width: 303px;
    margin: 0 auto;
}
@media (max-width: 767px) {
    .newsletter-teaser-visual {
        display: none;
    }
    .newsletter-teaser-box.popout,
    .event-signup-box.popout {
        grid-column: full;
    }
}
@media (min-width: 768px) {
    .newsletter-teaser-box,
    .event-signup-box {
        border-radius: var(--border-radius-large);
        grid-template-columns: 2fr 3fr;
        grid-column-gap: 20px;
        align-items: center;
        background: #fff url("/images/newsletter/newsletter-background.jpg")
            no-repeat 50% 100%;
        background-size: 100% auto;
    }
    .event-signup-box {
        grid-template-columns: 0fr 1fr;
    }
    .newsletter-teaser-content {
        max-width: 500px;
        order: 2;
    }
    .newsletter-teaser-visual {
        display: block;
        position: relative;
        margin-top: -12px;
        margin-bottom: -36px;
        order: 1;
    }
    .newsletter-teaser-box .newsletter-form,
    .event-signup-box .event-form {
        margin-bottom: 0;
    }
}

.newsletter-form-success,
.event-form-success {
    color: rgb(var(--brand-highlight));
    opacity: 1;
}
.event-form-success {
    color: rgb(var(--brand-text));
}
.newsletter-form,
.event-form {
    margin: 24px auto;
    display: grid;
    grid-column-gap: 12px;
    grid-template-columns: 1fr auto;
    grid-template-areas:
        "field button"
        "privacy privacy";
}
.event-form {
    grid-row-gap: 12px;
    grid-template-areas:
        "name none"
        "phone none"
        "email button"
        "privacy privacy";
}
@media (max-width: 479px) {
    .event-form {
        grid-template-columns: 1fr;
        grid-template-areas:
            "name"
            "phone"
            "email"
            "button"
            "privacy";
    }
}
.newsletter-form .__field,
.event-form .__field {
    display: flex;
    justify-content: stretch;
    width: 100%;
    grid-area: field;
}
.event-form .__field:nth-child(1) {
    grid-area: name;
}
.event-form .__field:nth-child(2) {
    grid-area: phone;
}
.event-form .__field:nth-child(3) {
    grid-area: email;
}
.newsletter-form .__field label,
.event-form .__field label {
    display: none;
}
.newsletter-form .__field input,
.event-form .__field input {
    font: inherit;
    width: 100%;
    background: transparent;
    color: #333;
    padding: 10px 16px;
    border: none;
    background: #fff;
    border-radius: var(--border-radius-small);
    box-shadow: 0 0 0 2px rgb(var(--teq-grey-dark)) inset;
}
.newsletter-form .__field input:focus,
.event-form .__field input:focus {
    outline: none;
    border-color: rgb(var(--brand-highlight));
}
.newsletter-form .__privacy,
.event-form .__privacy {
    margin: 20px 0;
    text-align: left;
    grid-area: privacy;
    margin-bottom: 0;
}
.event-form .__privacy {
    margin-top: 0;
}
.newsletter-form div.__privacy,
.event-form div.__privacy {
    display: flex;
    align-items: center;
}
.newsletter-form .__privacy input,
.event-form .__privacy input {
    -webkit-appearance: none;
    appearance: none;
    border: 2px solid rgb(var(--teq-grey-light));
    width: 24px;
    height: 24px;
    margin-right: 12px;
    cursor: pointer;
    flex: 0 0 24px;
    align-self: start;
}
.newsletter-form .__privacy label,
.newsletter-form p.__privacy,
.event-form .__privacy label,
.event-form p.__privacy {
    font-size: 12px;
    line-height: 1.2;
}
.newsletter-form .__privacy input:checked,
.event-form .__privacy input:checked {
    background: url("/images/icons/general/checkbox-cross.svg") no-repeat 50%
        50%;
}
.newsletter-teaser .newsletter-form .button {
    margin: 0 auto;
    width: 100%;
    grid-area: button;
    min-width: 160px;
}
.event-form .button {
    margin: 0 auto;
    width: 100%;
    grid-area: button;
    min-width: 160px;
}
@container (max-width: 439px) {
    .newsletter-form {
        grid-row-gap: 6px;
        grid-template-columns: 1fr;
        grid-template-areas:
            "field"
            "button"
            "privacy";
    }
}

.related-articles-section {
}
.related-articles-section > .headline {
    margin-bottom: 24px;
}
.related-articles {
    list-style: none;
    display: grid;
    grid-column-gap: 40px;
    text-align: left;
    font-size: 16px;
}
@media (min-width: 1024px) {
    .related-articles {
        grid-template-columns: repeat(2, 1fr);
    }
}

.summary {
    margin: 0 0 0 20px;
    padding: 0 20px;
    border-left: 2px solid currentColor;
    border-right: 2px solid currentColor;
    position: relative;
}
.summary::before {
    content: attr(data-title);
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-100%, -100%) rotate(-90deg);
    transform-origin: 100% 100%;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 16px;
    font-weight: 400;
}

.newsletter-signup-banner {
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 20px 40px 20px 20px;
    background: rgb(var(--teq-grey-dark));
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    z-index: 20;
    width: 540px;
    max-width: 100vw;
}
.newsletter-signup-banner.is-hidden {
    display: none;
}
.newsletter-signup-banner .__close {
    -webkit-appearance: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background: transparent url("/images/icons/popup-close.svg") no-repeat 50%
        50%;
    background-size: 12px auto;
    display: block;
    font-size: 0;
    color: transparent;
    border: none;
    cursor: pointer;
}
.newsletter-signup-banner .__close:hover,
.newsletter-signup-banner .__close:focus {
    filter: brightness(0.7) sepia(1) hue-rotate(180deg) saturate(5);
}
.newsletter-signup-banner h2 {
    font-size: 19px;
    margin-bottom: 12px;
    letter-spacing: 0.08em;
    color: inherit;
}
.newsletter-signup-banner .newsletter-form {
    margin: 0;
}
@media (max-width: 1023px) {
    .newsletter-signup-banner {
        display: none;
    }
}

.page-banner {
    width: 100%;
    background: rgb(var(--brand-highlight));
    color: rgb(var(--teq-grey-dark));
    z-index: 50;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 0.05em;
    display: grid;
    grid-template-columns: 1fr 45px;
}
.page-banner.--hidden {
    display: none;
}
.page-banner .__inner {
    display: block;
    padding: 12px 20px;
    text-align: center;
    color: inherit;
    text-decoration: underline;
}
.page-banner a.__inner:hover,
.page-banner a.__inner:focus {
    background: rgb(111, 222, 225);
}
.page-banner p {
    margin: 0;
}
.page-banner .__close {
    display: block;
    -webkit-appearance: none;
    border: 0 none;
    background: transparent
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M2,2l20,20M2,22l20,-20" fill="none" stroke="rgb(33,30,40)" stroke-width="2" /></svg>')
        no-repeat 50% 50%;
    font-size: 0;
    cursor: pointer;
    color: transparent;
    width: 45px;
    height: 45px;
}
.page-banner .__close:hover,
.page-banner .__close:focus {
    background-color: rgb(111, 222, 225);
}
@media (max-width: 479px) {
    .page-banner {
        font-size: 13px;
        letter-spacing: 0;
    }
    .page-banner .__inner {
        text-align: left;
    }
}

.buttons {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin: 2rem 0;
    gap: 20px;
    row-gap: 6px;
}
.buttons.--centered {
    justify-content: center;
}
.buttons.--vertical {
    flex-flow: column;
    align-items: center;
    row-gap: 40px;
}
.button {
    text-decoration: none;
    display: block;
    padding: 14px 20px;
    border: 2px solid rgb(var(--brand-highlight));
    border-radius: var(--border-radius);
    background: #fff;
    white-space: nowrap;
    line-height: 1;
    cursor: pointer;
    font-family: var(--headline-font);
    font-size: 16px;
    font-weight: 500;
    color: #000;
    min-width: 140px;
    text-align: center;
    transition:
        background-color 0.1s,
        color 0.1s,
        border-color 0.1s;
}
.button.--small {
    font-size: 15px;
    padding: 8px 16px;
    min-width: 140px;
}
.button:hover,
.button:focus-visible {
    background: rgb(var(--brand-highlight-alternate));
    border-color: rgb(var(--brand-highlight-alternate));
    color: #fff;
    text-decoration: none;
}
.button:disabled,
.button.--disabled {
    cursor: not-allowed;
    opacity: 0.8;
}
.button.--disabled:hover,
.button.--disabled:focus-visible,
.button:disabled:hover,
.button:disabled:focus-visible {
    background: inherit;
    color: #000;
    text-decoration: none;
}
.button.--primary {
    background: rgb(var(--brand-highlight));
    color: #fff;
}
.button.--primary:hover,
.button.--primary:focus {
    background: rgb(var(--brand-highlight-alternate));
    border-color: rgb(var(--brand-highlight-alternate));
}
.button.--more-button {
    border-color: transparent;
    background: transparent;
    padding-left: 0;
    padding-right: 0;
    min-width: 0;
}
.button.--more-button.--arrow::after {
    content: " >";
}
.button.--more-button:hover {
    color: inherit;
}

.arrow-button {
    position: relative;
    color: inherit;
    text-align: right;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 20px;
    line-height: 1.2;
}
.arrow-button::after {
    content: "";
    display: block;
    width: 56px;
    height: 56px;
    border-radius: 100%;
    border: 2px solid rgb(var(--brand-highlight));
    background: transparent url("/images/icons/arrow-button.svg") no-repeat 50%
        50%;
}
.arrow-button span {
    display: block;
    max-width: 100px;
}
.arrow-button.--primary {
    font-weight: 700;
}
.arrow-button.--primary::after {
    background-color: rgb(var(--brand-highlight));
    background-image: url("/images/icons/arrow-button-white.svg");
}

.dark-section {
    background: rgb(var(--teq-grey-dark));
    --brand-text: 230, 230, 230;
    --brand-title: 255, 255, 255;
    color: rgb(var(--brand-text));
    padding: 48px 0;
}
.dark-section .headline,
.dark-section h1,
.dark-section h2,
.dark-section h3,
.dark-section h4 {
}
.dark-section .button {
    background: transparent;
    color: inherit;
}
.dark-section .button:hover,
.dark-section .button:focus {
    background: rgba(255, 255, 255, 0.1);
}
.dark-section .button.--primary {
    color: #fff;
    background: rgb(var(--brand-highlight));
}

.funds-teaser {
    padding: 72px 0;
    position: relative;
}
.funds-teaser > .wrapper {
    position: relative;
}

.funds-teaser-items {
    display: grid;
    grid-row-gap: 40px;
}
.funds-teaser-item {
    display: block;
    flex: 0 0 100%;
    position: relative;
    background: #fff;
    box-shadow: var(--card-box-shadow);
    box-shadow: 0px 4px 30px rgba(var(--brand-highlight), 0.15);
    border-radius: 22px;
    padding: min(4vw, 48px) max(10px, min(80px, 4vw));

    font-size: min(4vw, 16px);

    color: inherit;
}
.funds-teaser-item .button.--more-button {
    padding-left: 0;
    padding-right: 0;
    min-width: 0;
}
.funds-teaser-item .button.--more-button::after {
    content: " >";
}
.funds-teaser-item .fund-title .headline {
    color: rgb(var(--brand-highlight));
    letter-spacing: 0.05em;
}
.funds-teaser-item .fund-title .headline strong {
    color: #000;
    font-weight: 500;
    letter-spacing: inherit;
}
a.funds-teaser-item {
}
a.funds-teaser-item:hover,
a.funds-teaser-item:focus {
    text-decoration: none;
    outline: 3px solid rgb(var(--brand-highlight));
}
div.funds-teaser-item:hover {
    outline: 3px solid rgb(var(--brand-highlight));
}
.funds-teaser-item > a,
.funds-teaser-item > a:hover {
    color: inherit;
    text-decoration: none;
}
.funds-teaser-item::after {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: rgb(var(--brand-highlight));
    z-index: -1;
    filter: blur(100px);
    opacity: 0.3;
    transition: background-color 0.3s;
    transform: translateZ(10px);
}
.funds-teaser-item#funds-teaser-disruptive-technologies::after {
    opacity: 0.6;
}
.funds-teaser-item#funds-teaser-small-mid-cap-technologies::after {
    opacity: 0.4;
}
.funds-teaser-item hgroup img {
    width: 80px;
    margin-bottom: 6px;
}
.funds-teaser-item .buttons {
    margin: 0;
    justify-content: space-between;
}
#funds-teaser-disruptive-technologies {
    --brand-highlight: var(--teq-disruptive);
    --brand-highlight-alternate: var(--teq-disruptive-alternate);
}
#funds-teaser-clean-technologies {
    --brand-highlight: var(--teq-clean);
    --brand-highlight-alternate: var(--teq-clean-alternate);
}
#funds-teaser-small-mid-cap-technologies {
    --brand-highlight: var(--teq-smc);
    --brand-highlight-alternate: var(--teq-smc-alternate);
}
.funds-teaser.--compact .funds-teaser-item .fund-description {
    display: none;
}
.funds-teaser.--compact .funds-teaser-item {
    background: #fff;
    max-width: 400px;
}
.funds-teaser.--compact .funds-teaser-items {
    justify-items: center;
}
@media (max-width: 767px) {
    .funds-teaser.--compact .funds-teaser-items {
        grid-row-gap: 14vw;
    }
    .funds-teaser.--compact .funds-teaser-item {
        padding: 20px;
        width: clamp(280px, 70vw, 360px);
        box-shadow: var(--card-box-shadow);
    }
    .funds-teaser.--compact .funds-teaser-item .buttons {
        justify-content: start;
    }
    .funds-teaser.--compact .funds-teaser-item .button {
        font-size: 12px;
        min-width: 0;
        padding: 8px 12px;
    }
    .funds-teaser-item .buttons {
        margin-top: 24px;
    }
    .funds-teaser.--compact .funds-teaser-item::after {
        display: none;
    }
    .funds-teaser.--compact .funds-teaser-item::before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100vw;
        aspect-ratio: 1;
        background: url("/images/lines_2/disruptive-technologies.webp")
            no-repeat 50% 50%;
        background-size: 100% auto;
        z-index: -1;
        opacity: 0.8;
    }
    .funds-teaser.--compact
        .funds-teaser-item#funds-teaser-small-mid-cap-technologies::before {
        background-image: url("/images/lines_2/small-mid-cap-technologies.webp");
    }
    .funds-teaser.--compact
        .funds-teaser-item#funds-teaser-clean-technologies::before {
        background-image: url("/images/lines_2/clean-technologies.webp");
    }
}
@media (min-width: 768px) {
    .funds-teaser.--compact .funds-teaser-item {
        background: #fff url("/images/lines_2/disruptive-technologies.webp")
            no-repeat 50% 100%;
        background-size: 100% auto;
        width: 100%;
    }
    .funds-teaser.--compact
        .funds-teaser-item#funds-teaser-small-mid-cap-technologies {
        background-image: url("/images/lines_2/small-mid-cap-technologies.webp");
    }
    .funds-teaser.--compact .funds-teaser-item#funds-teaser-clean-technologies {
        background-image: url("/images/lines_2/clean-technologies.webp");
    }
    .funds-teaser.--compact .funds-teaser-item .fund-description {
        display: block;
        padding-bottom: 90%;
    }
}
@media (min-width: 1024px) {
    .funds-teaser.--compact .funds-teaser-items {
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: min(24px, 2vw);
    }
    .funds-teaser-item {
        display: grid;
        grid-template-columns: 1fr;
        grid-column-gap: 80px;
        align-items: start;

        padding: 32px;
    }
    .funds-teaser-item p {
        font-size: 16px;
    }
    .funds-teaser__sheet {
        grid-column-end: span 2;
    }
}

.funds-teaser__sheet {
    margin-top: 20px;
}
.funds-teaser__sheet .fund-sheet {
    padding: 0;
    box-shadow: none;
    align-self: start;
}

.team-teaser {
    background: #f3f3f3;
}
.team-teaser > .wrapper:first-child {
    padding: 48px 40px;
}
.team-teaser > .wrapper:first-child .headline {
}
.team-teaser-people {
    display: flex;
    overflow: hidden;
    justify-content: center;
    position: relative;
    height: 200px;
}
.team-teaser-people > a {
    flex: 1 1 12.5%;
    height: 100%;
    position: relative;
    transition:
        flex-basis 0.3s,
        opacity 0.3s;
}
.team-teaser-people img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 10%;
}
.team-teaser-people a:hover {
    flex-basis: 19%;
}
@media (max-width: 479px) {
    .team-teaser-people > a {
        height: 200px;
    }
    .team-teaser-people img {
    }
}
@media (min-width: 768px) {
    .team-teaser {
        display: grid;
        grid-template-columns: 320px auto;
    }
    .team-teaser .headline {
        font-size: 26px;
        margin-bottom: 12px;
    }
    .team-teaser-people {
        height: 100%;
    }
    .team-teaser-people > a:nth-child(5) {
        opacity: 0.8;
    }
    .team-teaser-people > a:nth-child(6) {
        opacity: 0.6;
    }
    .team-teaser-people > a:nth-child(7) {
        opacity: 0.4;
    }
    .team-teaser-people > a:nth-child(8) {
        opacity: 0.2;
    }
    .team-teaser-people > a:hover {
        opacity: 1;
    }
}
@media (max-width: 1700px) {
    .team-teaser-people > a:nth-child(n + 8) {
        display: none;
    }
}
@media (max-width: 1400px) {
    .team-teaser-people > a:nth-child(n + 6) {
        display: none;
    }
}

.sustainability-teaser {
    overflow: hidden;
}
.sustainability-teaser .wrapper {
    position: relative;
    max-width: 1920px;
}
.sustainability-teaser .__inner {
    padding-top: 72px;
    padding-bottom: 48px;
    max-width: 720px;
    text-align: center;
    margin: 0 auto;
}
.sustainability-teaser .headline {
    margin-bottom: 24px;
}
.sustainability-teaser-withlogo {
    display: grid;
    grid-gap: 24px 40px;
    justify-content: center;
}
.sustainability-teaser-withlogo .__logo {
    display: block;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .sustainability-teaser-withlogo {
        grid-template-columns: 100px 1fr;
        text-align: left;
    }
}
.sustainability-teaser-logos {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 80px;
    overflow: hidden;
    margin-bottom: 24px;
}
.sustainability-teaser-logos a:hover,
.sustainability-teaser-logos a:focus {
    filter: brightness(50%) contrast(200%) brightness(200%);
}
@media (min-width: 768px) {
    .sustainability-teaser .wrapper .leaf-1,
    .sustainability-teaser .wrapper .leaf-2 {
        display: block;
        position: absolute;
        z-index: -1;
        will-change: transform;
    }
    .sustainability-teaser .wrapper .leaf-1 .__bg,
    .sustainability-teaser .wrapper .leaf-2 .__bg {
        background: url("/images/sustainability/leaves.webp") no-repeat;
        background-size: 100% auto;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .sustainability-teaser .wrapper .leaf-1 {
        width: 560px;
        height: 382px;
        top: 0;
        left: 0;
        max-width: 40%;
    }
    .sustainability-teaser .wrapper .leaf-1 .__bg {
        background-position: 100% 0;
    }
    .sustainability-teaser .wrapper .leaf-2 {
        width: 560px;
        height: 382px;
        bottom: 0;
        right: 0;
        max-width: 35%;
    }
    .sustainability-teaser .wrapper .leaf-2 .__bg {
        background-position: 100% 0;
        transform: scale(-1, -1);
        opacity: 0.8;
    }
}

.js-accordion.--interactive li {
    cursor: pointer;
}
.js-accordion.--interactive li p {
    height: 0;
    overflow: hidden;
    transition: height 0.3s ease-in-out;
}
.js-accordion.--interactive li.--active p {
    height: 320px;
}

.dual-column-text {
}
@media (min-width: 768px) {
    .dual-column-text {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-column-gap: min(80px, 10vw);
        align-items: start;
    }
    .dual-column-text > div {
        padding-left: 20px;
        border-left: 2px solid rgb(var(--brand-highlight));
    }
    .dual-column-text > div > p:last-child {
        margin-bottom: 0;
    }
}

.post-article {
    line-height: 1.8;
    margin-top: calc(48px + var(--navigation-height));

    --gap: clamp(1rem, 6vw, 3rem);
    --full: minmax(var(--gap), 1fr);
    --content: min(80ch, 100% - var(--gap) * 2);
    --popout: minmax(0, 2rem);
    --feature: minmax(0, 5rem);

    display: grid;
    grid-template-columns:
        [full-start] var(--full)
        [feature-start] var(--feature)
        [popout-start] var(--popout)
        [content-start] var(--content) [content-end]
        var(--popout) [popout-end]
        var(--feature) [feature-end]
        var(--full) [full-end];
}

.post-article > * {
    grid-column: content;
}
.post-article .popout {
    grid-column: popout;
}
.post-article .feature {
    grid-column: feature;
}
.post-article .full {
    grid-column: full;
}
.post-article h1,
.post-article h2,
.post-article h3,
.post-article h4 {
    margin: 2em 0 1em;
}
.post-article ul,
.post-article ol {
    padding-left: 1.1em;
    margin: 24px 0;
}
.post-article ul p,
.post-article ol p {
    margin: 0;
}
.post-article table {
    border-collapse: collapse;
    min-width: 50%;
}
.post-article table td,
.post-article table th {
    border: 1px solid currentColor;
    padding: 2px 10px;
    text-align: left;
}
.post-article table tr td:first-child,
.post-article table tr th:first-child {
    border-left: none;
}
.post-article table thead tr:first-child th {
    border-top: none;
}
.post-article table tr td:last-child,
.post-article table tr th:last-child {
    border-right: none;
}
.post-article table tbody tr:last-child td {
    border-bottom: none;
}
.post-article hr {
    margin: 24px 0;
    height: 2px;
    background: currentColor;
}
.post-article blockquote {
    background: rgba(0, 0, 0, 0.05);
    border-left: 2px solid rgb(var(--brand-highlight));
    padding: 12px 20px;
    margin: 24px 0;
}
.post-article blockquote p:last-child {
    margin: 0;
}

.video-container {
    background: #eee;
    aspect-ratio: 16 / 9;
    position: relative;
}
.video-container iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.dual-column,
.triple-column {
    display: grid;
    grid-row-gap: 20px;
}
@media (min-width: 768px) {
    .dual-column {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 80px;
    }
    .dual-column .double-width {
        grid-column-end: span 2;
    }
}
@media (min-width: 1024px) {
    .triple-column {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 80px;
    }
}

.toggle-text {
    position: relative;
    text-align: left;
}
.toggle-text-headline {
    font-size: 22px;
    font-weight: 400;
    line-height: 30px;
}
.toggle-text-header {
    height: 72px;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding-bottom: 12px;
}
.toggle-text-content {
    font-size: 16px;
    line-height: 1.6;
}
.toggle-text.--interactive {
    max-height: 260px;
    overflow: hidden;
    -webkit-mask: linear-gradient(0deg, transparent, #fff 200px);
    -webkit-mask-size: 100% 10000px;
    -webkit-mask-position: 0 100%;
    -webkit-mask-repeat: no-repeat;
    mask: linear-gradient(0deg, transparent, #fff 200px);
    mask-size: 100% 10000px;
    mask-position: 0 100%;
    mask-repeat: no-repeat;
    transition:
        max-height 0.3s,
        -webkit-mask-position 0.3s,
        mask-position 0.3s;
}
.toggle-text.--interactive .toggle-text-header {
    cursor: pointer;
    padding-left: 64px;
    position: relative;
}
.toggle-text.--interactive .toggle-text-header::before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 6px;
    width: 48px;
    height: 48px;
    border-radius: 48px;
    border: 1px solid rgb(var(--brand-highlight));
}
.toggle-text.--interactive .toggle-text-content {
    padding-left: 64px;
}
.toggle-text.--interactive.--active {
    max-height: 1000px;
    -webkit-mask-position: 0 calc(100% + 200px);
    mask-position: 0 calc(100% + 200px);
}

.clipboard-copy-button {
    display: inline-block;
    padding-left: 6px;
    cursor: pointer;
    display: none;
    transition: transform 0.2s;
}
.clipboard-copy-button svg {
    display: block;
}
.clipboard-copy-button.--interactive {
    display: inline-block;
}
.clipboard-copy-button.--clicked {
    transform: translate(0, -2px);
}
.clipboard-copy-button.--clicked svg {
    fill: rgb(var(--brand-highlight));
}

.company-page {
    padding-top: var(--navigation-height);
    background: linear-gradient(
        180deg,
        rgb(255, 255, 255),
        rgb(var(--teq-grey-light)),
        rgb(255, 255, 255)
    );
    padding-bottom: 48px;
}
.company-page .wrapper {
}
.company-page hgroup {
    padding-top: 72px;
}
.company-page h1 {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 20px;
}
.company-page-header {
    max-width: 680px;
}
.company-page .company-link {
    color: inherit;
    font-weight: 600;
    display: block;
    width: fit-content;
}
.company-page .company-link:hover,
.company-page .company-link:focus {
    color: rgb(var(--brand-highlight));
    text-decoration: none;
}
.company-page .company-weights {
    margin: 24px 0 72px;
    display: flex;
    gap: 12px 20px;
    flex-flow: column;
}
@media (min-width: 768px) {
    .company-page .company-weights {
        flex-flow: row;
    }
}
.company-page .company-weight {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-column-gap: 20px;
    align-items: center;
    background: #fff;
    border: 1px solid rgb(var(--brand-highlight));
    padding: 6px 10px;
    color: inherit;
    max-width: 280px;
}
.company-page .company-weight-nofunds {
    border: 2px solid rgb(var(--brand-highlight));
    background-color: #fff;
    box-shadow: var(--card-box-shadow);
    padding: 20px;
    font-weight: 500;
}
.company-page .company-weight-nofunds p {
    margin: 0;
}
.company-page .company-weight-nofunds strong {
    font-weight: 700;
}
.company-page .company-weight:hover,
.company-page .company-weight:focus {
    outline: 1px solid rgb(var(--brand-highlight));
    text-decoration: none;
}
.company-page .company-weight.--disruptive-technologies,
.company-page .company-weight.--disruptive-technologies-ex-crypto {
    --brand-highlight: var(--teq-disruptive);
    --brand-highlight-alternate: var(--teq-disruptive-alternate);
}
.company-page .company-weight.--small-mid-cap-technologies {
    --brand-highlight: var(--teq-smc);
    --brand-highlight-alternate: var(--teq-smc-alternate);
}
.company-page .company-weight.--clean-technologies {
    --brand-highlight: var(--teq-clean);
    --brand-highlight-alternate: var(--teq-clean-alternate);
}
.company-page .company-weight p {
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
    line-height: 1.2;
    letter-spacing: 0.05em;
}
.company-page .company-weight p strong {
    display: block;
    font-size: 18px;
    letter-spacing: 0.08em;
    color: rgb(var(--brand-highlight));
}
.company-page .company-weight .__weight {
    font-size: 28px;
    font-weight: 500;
    color: rgb(var(--brand-highlight));
}
.company-page .investment-hypothesis {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-areas: "content visual";
    background: #fff;
    color: inherit;
    margin-bottom: 72px;
    box-shadow: var(--card-box-shadow);
}
.company-page .investment-hypothesis:hover,
.company-page .investment-hypothesis:focus {
    text-decoration: none;
    outline: 2px solid rgb(var(--brand-highlight));
}
.company-page .investment-hypothesis .__visual {
    grid-area: visual;
    background: #abc url("/images/portfolio/company-post-background.webp")
        no-repeat 50% 50%;
    background-size: cover;
    display: flex;
    flex-flow: column;
    justify-content: center;
}
.company-page .investment-hypothesis .__visual img {
    width: 40%;
    margin: 0 auto;
    filter: brightness(1000%);
}
.company-page .investment-hypothesis .__content {
    padding: var(--card-padding);
}
.company-page .investment-hypothesis .__content hgroup {
    padding-left: 20px;
    border-left: 2px solid rgb(var(--brand-highlight));
}
.company-page .investment-hypothesis .__content hgroup .headline {
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.company-page .investment-hypothesis .__content hgroup p {
    color: rgb(var(--brand-highlight));
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.company-page .investment-hypothesis .__content p {
    margin: 0;
}
.company-page .investment-hypothesis .__content .__meta {
    margin-top: 24px;
    opacity: 0.4;
}
@media (max-width: 767px) {
    .company-page .investment-hypothesis .__visual {
        display: none;
    }
}
@media (min-width: 1024px) {
    .company-page .investment-hypothesis {
        grid-template-columns: 1fr calc((100% - 80px) / 3);
    }
}

.select-wrapper {
    position: relative;
    width: fit-content;
    max-width: 100%;
}
.select-wrapper::after {
    content: "";
    position: absolute;
    display: block;
    right: 0;
    top: 0;
    height: 100%;
    width: 40px;
    background: rgb(var(--brand-highlight))
        url("/images/icons/select-arrows.svg") no-repeat 50% 50%;
    pointer-events: none;
    border-top-right-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius);
}
select:focus {
    outline-color: rgb(var(--brand-highlight));
}

.content-grid > .company-posts-grid,
.content-grid > .company-posts-grid-filter {
    grid-column: feature;
}
.company-posts-grid-filter {
    padding-bottom: 48px;
}
@media (max-width: 1023px) {
    .content-grid > .company-posts-grid-filter {
        grid-column: full;
        padding-bottom: 12px;
    }
    .company-posts-grid-filter .filter-radio-inner {
        padding: 0 var(--gap) 24px;
        width: fit-content;
    }
    .company-posts-grid-filter .filter-radio {
        overflow: scroll;
    }
}
.company-posts-grid-filter .filter-radio-inner {
    display: flex;
    gap: 20px;
    justify-content: center;
}
.company-posts-grid-filter .filter-radio label {
    cursor: pointer;
    display: block;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}
.company-posts-grid-filter .filter-radio label:hover,
.company-posts-grid-filter .filter-radio label:focus {
    color: rgb(var(--brand-highlight));
}
.company-posts-grid-filter .filter-radio label:has(input:checked) {
    color: rgb(var(--brand-highlight));
}
.company-posts-grid-filter .filter-radio label input {
    display: none;
}
.company-posts-grid-filter select {
    display: block;
    -webkit-appearance: none;
    font: inherit;
    background: #fff;
    color: inherit;
    border: none;
    box-shadow: var(--card-box-shadow);
    padding: 8px 40px 8px 20px;
    width: 388px;
    font-weight: 600;
    border-radius: var(--border-radius);
    position: relative;
    cursor: pointer;
    max-width: 100%;
}
.company-posts-grid-filter .select-wrapper {
    margin-left: auto;
}
.company-posts-grid {
    display: grid;
    grid-gap: var(--card-grid-gap);
}
@media (min-width: 768px) {
    .company-posts-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (min-width: 1024px) {
    .company-posts-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
.post-teaser {
    background: #fff;
    box-shadow: var(--card-box-shadow);
    padding: var(--card-padding);
    color: rgba(var(--brand-text), 0.85);
    transition: transform 0.2s;
    display: flex;
    flex-flow: column;
    position: relative;
    text-align: left;
    border-radius: var(--border-radius);
}
.post-teaser:hover,
.post-teaser:focus {
    text-decoration: none;
    outline: 2px solid rgb(var(--brand-highlight));
}
.post-teaser article {
    height: 100%;
    display: flex;
    flex-flow: column;
}
.post-teaser .__header {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-column-gap: 20px;
    align-items: start;
    margin-bottom: 12px;
    grid-template-areas:
        "title icon"
        "meta meta";
}
.post-teaser .__header .__icon {
    grid-area: icon;
    max-height: 22px;
}
.post-teaser .__header p {
    margin: 0;
    color: rgb(var(--brand-highlight));
    letter-spacing: 0.08em;
    font-size: 14px;
    line-height: 1.25;
    margin-top: 4px;
}
.post-teaser .headline {
    letter-spacing: 0.08em;
    hyphens: auto;
}
.post-teaser .__content {
    --font-size: 15px;
    font-size: var(--font-size);
    max-height: calc(var(--font-size) * 1.6 * 8);
    overflow: hidden;
    margin-bottom: auto;
}
.post-teaser .__meta {
    opacity: 0.6;
    margin: 16px 0 0 0;
    font-size: 15px;
}
.post-teaser.post-teaser-video .__content {
    position: relative;
    max-height: none;
}
.post-teaser.post-teaser-video .__content img {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.funds-teaser-item .fund-title-wkn {
    font-size: 12px;
    font-weight: 600;
    opacity: 0.8;
    margin: 0;
    letter-spacing: 0.06em;
    color: #252526;
}

.fund-title {
}
.fund-title .headline {
    letter-spacing: 0.08em;
}
.fund-title .headline strong {
    display: block;
    letter-spacing: 0.08em;
}
.fund-title .headline.--medium {
    font-size: 16px;
}
.fund-title .headline.--medium strong {
    font-size: min(6vw, 28px);
}
.fund-title .headline.--large {
    font-size: 18px;
}
.fund-title .headline.--large strong {
    font-size: min(6vw, 42px);
}

.help-icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #666;
    border-radius: 50%;
    position: relative;
    font-size: 12px;
    line-height: 16px;
    color: #fff;
    text-align: center;
    font-weight: 600;
    cursor: help;
}

[x-cloak] {
    display: none !important;
}

.cookiebanner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #fff;
    padding: 24px 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    z-index: 200;
}
.cookiebanner-grid {
    display: grid;
    grid-row-gap: 24px;
}
.cookiebanner p:last-child {
    margin-bottom: 0;
    font-size: 14px;
}
.cookiebanner .headline {
    margin-bottom: 6px;
}
.cookiebanner .buttons {
    margin: 0;
    justify-content: center;
    column-gap: 10px;
}
@media (min-width: 768px) {
    .cookiebanner-grid {
        grid-template-columns: 1fr 200px;
        grid-column-gap: 40px;
        align-items: center;
    }
}

.word-switcher {
    display: inline-block;
    position: relative;
    transition: width 0.3s;
}

.word-switcher--separate {
    display: block;
    margin: 0 auto;
}

.word-switcher-word {
    position: absolute;
    top: 0;
    left: 0;
    width: fit-content;
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: none;
}

.word-switcher-word.--active {
    opacity: 1;
    pointer-events: auto;
}

a.video-fallback-button {
    display: none;
}
.video-container:has(iframe[data-cookieblock-src]) {
    display: flex;
    justify-content: center;
    align-items: center;
}
iframe[data-cookieblock-src] + a.video-fallback-button {
    display: block;
    width: fit-content;
}

@keyframes nl-modal {
    100% {
        transform: translate(0, 0);
    }
}
.newsletter-modal {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
    max-height: 600px;
    min-height: 400px;
    transform: translate(0, 100%);
    transition: transform 0.5s cubic-bezier(0.2, 1, 0.6, 1);
    will-change: transform;
    z-index: 30;
}
.newsletter-modal.--visible {
    transform: translate(0, 0);
}
@media (max-width: 768px) {
    .newsletter-modal {
        display: none;
    }
}
.newsletter-modal .__overlay {
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.9) 100px
    );
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.newsletter-modal .__box {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80vw;
    max-width: 600px;
    padding: 20px;
    border-radius: 8px;
    box-shadow:
        0 1px 2px rgba(0, 0, 0, 0.07),
        0 2px 4px rgba(0, 0, 0, 0.07),
        0 4px 8px rgba(0, 0, 0, 0.07),
        0 8px 16px rgba(0, 0, 0, 0.07),
        0 16px 32px rgba(0, 0, 0, 0.07),
        0 32px 64px rgba(0, 0, 0, 0.07);
}
.newsletter-modal #nl-email {
    border: 2px solid rgb(var(--brand-highlight));
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.newsletter-modal .button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.newsletter-modal .headline {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.newsletter-modal .__hide {
    -webkit-appearance: none;
    border: 0 none;
    font: inherit;
    background: transparent;
    width: 100%;
    color: #999;
    cursor: pointer;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.05em;
}
.newsletter-modal .__hide:hover,
.newsletter-modal .__hide:focus {
    color: #000;
}
.newsletter-modal .newsletter-form {
    margin-bottom: 0;
}

.landing-page-cards {
    display: grid;
    grid-gap: 20px;
}
ol.landing-page-cards,
ul.landing-page-cards {
    padding: 0;
}
@media (min-width: 1024px) {
    .landing-page-cards {
        grid-template-columns: repeat(3, 1fr);
    }
    .landing-page-cards.--vertical {
        grid-template-columns: 1fr;
        grid-row-gap: 12px;
    }
}
.landing-page-cards > li {
    margin: 0;
    list-style: none;
    display: block;
    box-shadow: var(--card-box-shadow);
    padding: 20px;
    border-radius: 8px;
}
.landing-page-cards > li > .headline:first-child {
    margin-top: 0;
}
.landing-page .content-grid > .feature {
    margin-bottom: 48px;
}

.article-authors {
    margin-top: 24px;
    display: grid;
    grid-row-gap: 12px;
}
.article-author-box {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 20px;
    max-width: 560px;
    margin: 0 auto;
    box-shadow: var(--card-box-shadow);
    color: inherit;
    transition: box-shadow 0.3s;
}
a.article-author-box {
    color: inherit;
}
a.article-author-box:hover,
a.article-author-box:focus {
    text-decoration: none;
    box-shadow: var(--card-box-shadow-hover);
}
.article-author-box__image img {
    height: 100%;
    object-fit: cover;
    object-position: 50% 0;
}
.article-author-box__content {
    padding: 20px 20px 20px 0;
}
.article-author-box__content h4 {
    font-size: 1.2em;
    color: rgb(var(--brand-highlight));
}
.__meta .article-author-box__content h4 + p {
    margin-bottom: 0.5em;
}
.__meta .article-author-box__content .__vita {
    font-size: 0.8em;
}
@media (max-width: 479px) {
    .article-author-box {
        grid-template-columns: 1fr;
        grid-row-gap: 20px;
    }
    .article-author-box__image img {
        height: auto;
        width: 100%;
    }
    .article-author-box__content {
        padding: 0 20px 20px 20px;
    }
}

@media print {
    :root {
        --navigation-height: 0px;
    }
    body {
        font-size: 12px;
    }
    .main-header {
        display: block;
        position: relative;
        box-shadow: none !important;
    }
    .main-footer,
    .main-nav,
    .main-nav-toggle {
        display: none !important;
    }
    .content-article {
        padding-top: 0;
    }
    h1,
    h2,
    h3,
    h4,
    h5 {
        break-after: avoid;
    }
    .CookieDeclarationType {
        font-size: 10px;
    }
}

.event-list {
    list-style: none;
    display: flex;
    flex-flow: column;
    gap: 20px;
}
.event-item {
    display: block;
    box-shadow: var(--card-box-shadow);
    padding: 40px;
    background: #fff;
    border-radius: var(--border-radius);
}
.event-item .buttons {
    margin-bottom: 0;
    margin-top: 12px;
}
.event-item .event-datetime {
    font-size: 14px;
    letter-spacing: 0.02em;
    margin-top: 0;
}
.event-item hgroup {
    margin-bottom: 6px;
}
.event-description {
    font-size: 15px;
}
.event-datetime:last-child,
.event-description > p:last-child {
    margin-bottom: 0;
}

.events-header {
    padding-top: var(--navigation-height);
    padding-bottom: 72px;
    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 1) 50%,
            rgba(255, 255, 255, 0.1)
        ),
        url("/images/media/media-header.jpg") no-repeat 100% 0%;
    background-size: auto 100%;
    background-color: #fff;
    max-width: 1920px;
    margin: 0 auto;
}
.events-header .headline {
    max-width: 700px;
}
.events-header p {
    max-width: 600px;
}
.events-header + .content-grid {
    padding-top: 0;
    margin-top: -48px;
}

.other-funds-teaser {
    background: linear-gradient(
        180deg,
        rgba(217, 217, 217, 0.5),
        rgb(var(--teq-grey-light))
    );
}

.other-funds-teaser-title h2 {
    max-width: 220px;
}
.other-funds-teaser .funds-teaser-items {
    display: grid;
    grid-gap: min(24px, 2vw);
    grid-row-gap: 12px;
}
@media (max-width: 767px) {
    .other-funds-teaser-title h2 {
        max-width: none;
        text-align: center;
        margin-bottom: 24px;
    }
    .other-funds-teaser .fund-title {
        margin: 0;
    }
    .other-funds-teaser .funds-teaser-item {
        padding: 20px;
    }
}
@media (min-width: 768px) {
    .other-funds-teaser > .feature {
        display: grid;
        grid-template-columns: 1fr 2fr;
        grid-gap: min(24px, 2vw);
    }
    .other-funds-teaser .funds-teaser-items {
        grid-template-columns: repeat(2, 1fr);
    }
    .other-funds-teaser .funds-teaser-item {
        background: #fff url("/images/lines_2/disruptive-technologies.webp")
            no-repeat 50% 32px;
        background-size: 100% auto;
        width: 100%;
        padding-bottom: 70%;
    }
    .other-funds-teaser
        .funds-teaser-item#funds-teaser-small-mid-cap-technologies {
        background-image: url("/images/lines_2/small-mid-cap-technologies.webp");
    }
    .other-funds-teaser .funds-teaser-item#funds-teaser-clean-technologies {
        background-image: url("/images/lines_2/clean-technologies.webp");
    }
}

.split-header {
    position: relative;
    padding: 0;
    min-height: 500px;
}
.split-header .__visual {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}
.split-header .__visual img {
    display: block;
    position: absolute;
    left: 45%;
    top: 0;
    width: 55%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 20%;
    mask-image: linear-gradient(
        to right,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 1) 30%
    );
}
.split-header .content-grid {
    z-index: 2;
    position: relative;
}
.split-header-content {
    max-width: 520px;
    padding-top: var(--navigation-height);
}
.split-header > .content-grid {
    padding: 0;
    padding-top: 48px;
}
@media (max-width: 1023px) {
    .split-header {
        min-height: 0;
    }
    .split-header .__visual img {
        display: none;
    }
    .split-header .__visual {
        background-size: 100% auto;
        background-position: 50% 100%;
    }
    .split-header-content {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (min-width: 1024px) {
    .split-header {
        display: flex;
        flex-flow: column;
        justify-content: flex-end;
    }
}

.document-teaser {
    position: relative;
}
.document-teaser-box {
    grid-area: popout;
    background-color: #fff;
    border-radius: var(--border-radius-large);
    box-shadow: var(--card-box-shadow);
}
.document-teaser-box-content {
    padding: 40px;
    container-type: inline-size;
}
.document-teaser-box-visual {
    padding: 40px 40px 40px 0;
    align-self: start;
}
.document-teaser-box-visual img {
    box-shadow: var(--card-box-shadow);
}
.document-teaser-box-content .headline {
    color: rgb(var(--brand-highlight));
    font-size: 22px;
}
.document-teaser-box-content .headline strong {
    color: #000;
    font-size: 1.8em;
    line-height: 1.4;
}
@media (max-width: 767px) {
    .document-teaser-box {
        grid-column: full;
        border-radius: 0;
    }
    .document-teaser-box-visual {
        display: none;
    }
}
@media (min-width: 768px) {
    .document-teaser-box {
        display: grid;
        grid-template-columns: 1.4fr 1fr;
        align-items: center;
        grid-column-gap: 20px;
        position: relative;
        z-index: 2;
    }
}

.site-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 20;
    transition: transform 0.5s ease-out;
}
.site-banner.is-hidden {
    transform: translate(0, 100%);
}
.site-banner .inner {
    display: grid;
    grid-template-columns: 1fr 40px;
    box-shadow: var(--card-box-shadow);
}
.site-banner a {
    display: block;
    padding: 12px 20px;
    text-align: center;
    box-shadow: var(--card-box-shadow);
    font-weight: 400;
    font-size: clamp(16px, 4vw, 18px);
    background: rgb(var(--teq-clean));
    line-height: 1.2;
    color: #fff;
}
.site-banner a:hover,
.site-banner a:focus {
    background: rgb(var(--teq-clean-alternate));
    color: #fff;
    text-decoration: none;
}
.site-banner .close-button {
    background: rgb(var(--teq-clean))
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30'><path d='M6,6L24,24M6,24L24,6' fill='none' stroke='white' stroke-width='2' /></svg>")
        no-repeat 50% 50%;
    color: transparent;
    font-size: 0;
    text-indent: 1000px;
    -webkit-appearance: none;
    border: none;
    display: block;
    cursor: pointer;
}
.site-banner .close-button:hover,
.site-banner .close-button:focus {
    background-color: rgb(var(--teq-clean-alternate));
}
@media (min-width: 780px) {
    .site-banner {
        padding: 0 10px 20px;
    }
    .site-banner .inner {
        max-width: 740px;
        margin: 0 auto;
        border-radius: var(--border-radius);
        overflow: hidden;
    }
}
