.posts-inner    {
    max-width:960px;
    padding:0 20px;
}

.post-content ul, .post-content ol  {
    margin:0 0 0 20px;
}
.post-content a {
    color:inherit;
}

@media screen and (min-width:0px)   {
    .post .thumbnail    {
        height:150px;
        border-radius:10px;
        border:1px solid var(--brand-border-colour);
        margin:0 0 10px 0;
        background-size: cover !important;
        background-position: center center !important;
    }

    .post   {
        display:block;
        margin:0 0 50px 0;
    }
    .post .four-columns, .post .eight-columns {
        width:100%;
    }
    .post .text {
        padding:0;
    }
    .post .text p:first-child   {
        font-weight: 700;
        font-size:1.2em;
        line-height:1.3em;
        margin:0 0 10px 0;
    }
    .post .text a   {
        position: relative;
        top:10px;
        color:inherit;
        font-weight:700;
    }

    main.post-content   {
        display: block;
    }
    main.post-content section   {
        margin:0 0 20px 0;
    }

    section.floating-cta .inner {
        display: block;
        justify-content: center;
        align-items: center;
        max-width:960px;
        background: var(--brand-background);
        border:1px solid var(--brand-border-colour);
        border-radius:10px;
        padding:20px;
        font-weight:700;
        box-shadow:5px 5px 5px 5px rgba(0, 0, 0, 0.6);
    }
    section.floating-cta .inner p   {
        margin:0 0 10px 0;
    }
}

@media screen and (min-width:768px) {
    .post   {
        display:flex;
        align-items: center;
        justify-content: center;
    }
    .post .four-columns {
        width:33.333%;
    }
    .post .eight-columns {
        width:66.666%;
    }
    .post .thumbnail    {
        height:150px;
        margin:0;
    }
     .post   {
        margin:0 0 30px 0;
    }
    .post .text {
        padding:0 0 0 20px;
    }
    .post .text p:first-child   {
        font-weight: 700;
        font-size:1.6em;
        line-height:1.3em;
        margin:0 0 10px 0;
    }

    main.post-content   {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    section.floating-cta .inner {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    section.floating-cta .inner p   {
        margin:0;
    }
}

main.post-content article   {
    max-width:960px;
    padding: 20px;
}

section.floating-cta    {
    position: fixed;
    top:initial;
    bottom:0;
    padding:20px;
    z-index:10;
}
section.floating-cta .inner .button {
    background:var(--brand-purple);
}