.at-banner__inner {
    text-align: center;
}

.at-banner__imageColumn {
    display: flex;
    justify-content: center;
}

.at-banner__imageWrapper {
    position: relative;
    margin-bottom: 3rem;
}

.at-banner__imageWrapper::before,
.at-banner__imageBlock::before,
.at-banner__imageBlock::after {
    position: absolute;
    content: '';
    display: block;
    border-radius: 50%;
    background: #bed7e4;
}

.at-banner__imageWrapper::before {
    left: 0;
    top: 0;
    width: 9rem;
    height: 9rem;
}

.at-banner__image {
    position: relative;
    display: block;
    margin: 3rem 0 0 0;
    border-radius: 50%;
    box-shadow: 0 3px 0 #bed7e4;
}

/** Overwrite border-radius in design options, to make image always round **/
.at-banner .at-banner__image {
    border-radius: 50%;
}

.at-banner__imageBlock {
    position: relative;
    display: block;
}

.at-banner__imageBlock::before {
    right: 0;
    top: 1rem;
    width: 7rem;
    height: 7rem;
}

.at-banner__imageBlock::after {
    right: 5rem;
    bottom: -1rem;
    width: 4rem;
    height: 4rem;
    opacity: .8;
}

.at-banner__title {
    margin: 0 0 .7rem;
}

.at-banner__textColumn {
    max-width: 30rem;
    margin: auto;
}

.at-banner__textColumn p {
    margin-bottom: 1em;
}

.at-banner__link,
.at-banner__link:hover::after {
    text-decoration: none;
}

.at-banner__link::after {
    display: inline-block;
    vertical-align: middle;
    margin-left: 1rem;
}

/**
*   Banner in sidebar
 */


.twoColumn .twoColumn__sidebar .at-banner__imageWrapper {
    margin-bottom: 3rem;
}

.twoColumn .twoColumn__sidebar .at-banner__imageBlock::after {
    opacity: .8;
}

.twoColumn .twoColumn__sidebar .at-banner__image {
    margin: 3rem auto 1rem;
}

@media (min-width: 450px) {
    .at-banner__imageBlock::after {
        opacity: 1;
    }

    .at-banner__image {
        margin: 3rem 8rem 0 3rem;
    }
}

@media (min-width: 900px) {
    .at-banner__inner {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
    }

    .at-banner--right .at-banner__inner {
        flex-flow: row-reverse;
        flex-wrap: wrap;
    }

    .at-banner__imageWrapper {
        margin-bottom: 0;
    }

    .at-banner__textColumn {
        flex: 1;
        text-align: left;
    }

    .at-banner--left .at-banner__textColumn {
        margin-left: 1.6em;
    }

    .at-banner--right .at-banner__textColumn {
        margin-right: 1.6em;
    }

    .at-banner--top .at-banner__textColumn {
        margin: 3rem 0 0 0;
    }

    .at-banner--top .at-banner__inner {
        flex-direction: column;
    }
}

@media (min-width: 1024px) {
    .twoColumn .twoColumn__sidebar .at-banner__textColumn {
        margin: 0;
    }
}
