/***** tpi_infobox ****/
:root{
    --tpi-secondary-background: #f4f6f8;
    --tpi-primary-color: #415f77;
}

.ce_tpi_infobox {
    background: var(--tpi-secondary-background);
    padding: 35px;
}
.ce_tpi_infobox .ce_tpi_infobox__headline > *{
    margin-top: 0;
    margin-bottom: 1rem;
    font-weight: 600 !important;
    text-transform: none;
    font-size: 24px;
    color: var(--tpi-primary-color);
}
.ce_tpi_infobox ul {
    margin: 0.5rem 0 0 1.25rem;
    font-size: 17px;
    line-height: 1.8;
    padding: 0;
}

.ce_tpi_infobox p {
    margin: 0;
}

/***** tpi_headline ****/

.ce_tpi_headline__title {
    margin-bottom: 0;
}

.ce_tpi_headline__subtitle {
    margin-top: 0.25rem;
    margin-bottom: 0;
    font-size: 18px;
    color: var(--tpi-primary-color);
}

.ce_tpi_headline {
    margin-bottom: 1.8em; /*set default header margin*/
}

/***** tpi_cards ****/
.ce_tpi_cards {
    margin: 2rem 0;
}
.ce_tpi_cards__headline {
    margin-bottom: 1.5rem;
    color: var(--tpi-primary-color);
}
.ce_tpi_cards__grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(3, 1fr);
}
.ce_tpi_cards--cols-1 .ce_tpi_cards__grid { grid-template-columns: 1fr; }
.ce_tpi_cards--cols-2 .ce_tpi_cards__grid { grid-template-columns: repeat(2, 1fr); }
.ce_tpi_cards--cols-3 .ce_tpi_cards__grid,
.ce_tpi_cards--cols-4 .ce_tpi_cards__grid,
.ce_tpi_cards--cols-5 .ce_tpi_cards__grid,
.ce_tpi_cards--cols-6 .ce_tpi_cards__grid { grid-template-columns: repeat(3, 1fr); }

@media (max-width: 900px) {
    .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-3 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-4 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-5 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-6 .ce_tpi_cards__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-2 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-3 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-4 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-5 .ce_tpi_cards__grid,
    .ce_tpi_cards--cols-6 .ce_tpi_cards__grid {
        grid-template-columns: 1fr;
    }
}

.ce_tpi_cards__card {
    background: var(--tpi-secondary-background);
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
}
.ce_tpi_cards__card-media img {
    max-width: 100%;
    height: auto;
    margin-bottom: 1rem;
}
.ce_tpi_cards__card-icon {
    font-size: 2.5rem;
    color: var(--tpi-primary-color);
    margin-bottom: 1rem;
}
.ce_tpi_cards__card-title {
    margin: 0 0 0.5rem;
    color: var(--tpi-primary-color);
    font-size: 1.25rem;
    font-weight: 600;
}
.ce_tpi_cards__card-text p {
    margin: 0 0 0.5rem;
}

/***** tpi_bulletpoints ****/

ul.ce_tpi_bulletpoints_tick {
    margin-left: 1rem;
}

ul.ce_tpi_bulletpoints_tick > li {
    list-style-type: none;
    position: relative;
}

ul.ce_tpi_bulletpoints_tick > li::before  {
    content: '';
    height: 24px;
    width: 24px;
    line-height: 2rem;
    position: absolute;
    left: -30px;
    list-style-type: none;
    -webkit-mask-image: url("/system/modules/tpi_elements/assets/images/Check.svg");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url("/system/modules/tpi_elements/assets/images/Check.svg");
    mask-repeat: no-repeat;
    mask-position: center;

    background-color: var(--tpi-primary-color);
}
/* ---------- tpi_accordion ---------- */
.ce_tpi_accordion { margin: 1.5rem 0; }
.ce_tpi_accordion__headline { margin: 0 0 1rem; }
.ce_tpi_accordion__intro { margin: 0 0 1rem; }
.ce_tpi_accordion__list { display: flex; flex-direction: column; gap: .5rem; }

.ce_tpi_accordion__item {
    border: 1px solid rgba(0,0,0,.12);
    background: #fff;
}

@media (prefers-reduced-motion: reduce) {
    .ce_tpi_accordion__icon::after {
        transition: none;
    }
}

.ce_tpi_accordion__summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: .9rem 1.1rem;
    cursor: pointer;
    list-style: none;
    font-weight: 600;
    user-select: none;
}
.ce_tpi_accordion__summary::-webkit-details-marker { display: none; }
.ce_tpi_accordion__title {
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
}
.ce_tpi_accordion__summary:hover { background: rgba(0,0,0,.03); }
.ce_tpi_accordion__summary:focus-visible {
    outline: 2px solid var(--tpi-primary-color, #1976d2);
    outline-offset: -2px;
}

.ce_tpi_accordion__icon {
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    position: relative;
    transition: transform .2s ease;
}
.ce_tpi_accordion__icon::before,
.ce_tpi_accordion__icon::after {
    content: "";
    position: absolute;
    background: currentColor;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    transform: translateY(-50%);
}
.ce_tpi_accordion__icon::after { transform: translateY(-50%) rotate(90deg); transition: transform .2s ease; }
.ce_tpi_accordion__item[open] .ce_tpi_accordion__icon::after { transform: translateY(-50%) rotate(0); }

.ce_tpi_accordion__content {
    padding: 0 1.1rem 1.1rem;
}

.ce_tpi_accordion__content p{
    margin: 0;
}
