.text p:last-child,
.text li:last-child {
    margin-bottom: 0;
}

.text:is(.has-background, :where(.has-background) .text) {
    padding-block: 3.84rem;
    padding-inline: var(--container-gutter-sm);
}
@media (min-width: 960px) {
    .text:is(.has-background, :where(.has-background) .text) {
        padding-inline: var(--container-gutter-md);
    }
}
@media (min-width: 1280px) {
    .text:is(.has-background, :where(.has-background) .text) {
        padding-inline: var(--container-gutter-lg);
    }
}

.text.alignfull {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
}

.text.with-bottom-line-decoration::after {
    content: '';
    display: block;
    width: 48%;
    height: 2.5px;
    margin: 0.96rem auto 0;
    background-color: currentColor;
}

.banner .text {
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 7.68rem;
}
@media (min-width: 1280px) {
    .banner .text {
        padding-bottom: 7.68rem;
    }
}
.banner .text > * {
    position: relative;
    z-index: 2;
    max-width: 80%;
}

.text--small p,
.text--small li {
    font-size: var(--wp--preset--font-size--sm);
}
@media (min-width: 960px) {
    .text--small p,
    .text--small li {
        margin-bottom: 3.2rem;
        font-size: var(--wp--preset--font-size--sm);
    }
}
@media (min-width: 1280px) {
    .text--small p,
    .text--small li {
        font-size: var(--wp--preset--font-size--base);
    }
}
.text--small .btn {
    font-size: 1.28rem;
}
@media (min-width: 960px) {
    .text--small .btn {
        font-size: var(--wp--preset--font-size--base);
    }
}

.text--medium p,
.text--medium li {
    font-size: var(--wp--preset--font-size--base);
}
@media (min-width: 960px) {
    .text--medium p,
    .text--medium li {
        margin-bottom: 3.2rem;
        font-size: var(--wp--preset--font-size--base);
    }
}
@media (min-width: 1280px) {
    .text--medium p,
    .text--medium li {
        font-size: var(--font-size-m);
    }
}
.text--medium .btn {
    padding: 10px 20px;
    font-size: 1.28rem;
}
@media (min-width: 960px) {
    .text--medium .btn {
        padding: 15px 25px;
        font-size: var(--wp--preset--font-size--base);
    }
}

.text--large p,
.text--large li {
    font-size: var(--font-size-l);
}
@media (min-width: 1280px) {
    .text--large p,
    .text--large li {
        font-size: var(--font-size-xl);
    }
}

.text--title-color-primary h2,
.text--title-color-primary h3 {
    color: var(--wp--preset--color--brand-primary);
}

.text--title-color-white h2,
.text--title-color-white h3 {
    color: #fff;
}

.text__buttons-wrapper {
    margin-bottom: 0;
}
