.m-text {
    position: relative;
    display: block;
    width: 100%;
    height: fit-content;
    padding: 0 var(--lateralMargin);
    overflow: hidden;
}

.m-text .m-text-inner {
    position: relative;
    display: flex;
    flex-flow: column;
    height: fit-content;
    row-gap: 1.944vw; /*28px*/
    margin-left: calc( (100% / 12) * var(--innerMarginLeft) );
}

.m-text .m-text-inner.columns-1 {
    width: 31.25vw; /*450px*/
}

.m-text .m-text-inner.columns-2 {
    width: 64.58vw; /*930px*/
}

.m-text .m-text-inner.columns-2 p {
    break-inside: avoid;
}

.m-text .m-text-inner .title {
    position: relative;
    display: block;
    width: 30.25vw; /*450px*/
}

.m-text .m-text-inner.columns-2 .text {
    column-count: 2;
    column-gap: 2.08vw; /*30px*/
    overflow: hidden;
}

.m-text .m-text-inner .text p {
    margin-bottom: 1.45vw; /*21px*/
}

.m-text .m-text-inner .text p:last-child {
    margin-bottom: 0px;
}

.m-text .m-text-inner .cta {
    position: relative;
    display: inline-block;
    width: fit-content;
    text-decoration: underline;
    text-decoration-style: dotted;
    text-decoration-thickness: 1px;
    padding-bottom: .347vw; /*5px*/
    text-underline-offset: .347vw; /*5px*/
    margin-top: .486vw; /*7px*/
}

.m-text .m-text-inner .cta:hover {
    text-decoration: none;
}


@media screen and (max-width: 1440px) {
    .m-text .m-text-inner {
        row-gap: 28px;
    }

    .m-text .m-text-inner.columns-1 {
        width: 450px; 
    }

    .m-text .m-text-inner.columns-2 {
        width: 930px;
    }

    .m-text .m-text-inner .title {
        width: 450px;
    }

    .m-text .m-text-inner.columns-2 .text {
        column-gap: 30px;
    }

    .m-text .m-text-inner .text p {
        margin-bottom: 21px;
    }

    .m-text .m-text-inner .cta {
        text-decoration-thickness: 1px;
        padding-bottom: 5px;
        text-underline-offset: 5px;
        margin-top: 7px;
    }
}


@media only screen and (max-width: 1100px) {
    .m-text .m-text-inner {
        margin-left: 0;
        row-gap: 25px;
    }
    
    .m-text .m-text-inner .title {
        width: 100%;
    }

    .m-text .m-text-inner.columns-1,
    .m-text .m-text-inner.columns-2 {
        width: 100%;
    }

    .m-text .m-text-inner.columns-2 .text {
        column-count: 1;
        column-gap: 30px;
    }

    .m-text .m-text-inner .cta {
        margin-top: 11px;
    }
}


@media only screen and (max-width: 550px) {
    .m-text .m-text-inner .title {
        max-width: 350px;
    }
}