@media only screen and (min-width: 40em) {
    .responsive-size {
        /* override other styles to make responsive */
        max-width: 500px;
        width: 100%;
    }

    .reveal .responsive-size {
        /* override other styles to make responsive for reveals */
        max-width: 100%;
        width: 100%;
    }
}

.responsive-embed {
    position: relative;
    height: 0;
    margin-bottom: 1rem;
    padding-bottom: 75%;
    overflow: hidden;
}

.responsive-embed.widescreen {
    padding-bottom: 56.25%;
}

.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.responsive-size.responsive-left {
    float: left;
    margin-right: 2rem;
}
.responsive-size.responsive-center,
.responsive-size.responsive-centre {
    margin: 0 auto;
}
.responsive-size.responsive-right {
    float: right;
    margin-left: 2rem;
}