.glcr-position-top {
    top: 0;
    left: 0;
    right: 0;
}

.glcr-position-bottom {
    bottom: 0;
    left: 0;
    right: 0;
}

.glcr-position-left {
    top: 0;
    bottom: 0;
    left: 0;
}

.glcr-position-right {
    top: 0;
    bottom: 0;
    right: 0;
}

.glcr-position-top-left {
    top: 0;
    left: 0;
}

.glcr-position-top-right {
    top: 0;
    right: 0;
}

.glcr-position-bottom-left {
    bottom: 0;
    left: 0;
}

.glcr-position-bottom-right {
    bottom: 0;
    right: 0;
}

.glcr-position-center {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    box-sizing: border-box;
}

.glcr-position-center-left {
    left: 0;
}

.glcr-position-center-right {
    right: 0;
}

.glcr-position-center-left-out {
    right: 100%;
    width: -moz-max-content;
    width: max-content;
}

.glcr-position-center-right-out {
    left: 100%;
    width: -moz-max-content;
    width: max-content;
}

.glcr-position-top-center,
.glcr-position-bottom-center {
    left: 50%;
    transform: translateX(-50%);
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    box-sizing: border-box;
}

.glcr-position-top-center {
    top: 0;
}

.glcr-position-bottom-center {
    bottom: 0;
}

.glcr-position-cover {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.glcr-position-relative {
    position: relative !important;
}

.glcr-position-absolute {
    position: absolute !important;
}

.glcr-position-fixed {
    position: fixed !important;
}

.glcr-position-z-index {
    z-index: 1;
}

.glcr-position-small {
    max-width: calc(100% - (15px * 2));
    margin: 15px;
}

.glcr-position-small.glcr-position-center {
    transform: translate(-50%, -50%) translate(-15px, -15px);
}

.glcr-position-small.glcr-position-top-center,
.glcr-position-small.glcr-position-bottom-center {
    transform: translateX(-50%) translateX(-15px);
}

.glcr-position-medium {
    max-width: calc(100% - (30px * 2));
    margin: 30px;
}

.glcr-position-medium.glcr-position-center {
    transform: translate(-50%, -50%) translate(-30px, -30px);
}

.glcr-position-medium.glcr-position-top-center,
.glcr-position-medium.glcr-position-bottom-center {
    transform: translateX(-50%) translateX(-30px);
}

.glcr-position-large {
    max-width: calc(100% - (30px * 2));
    margin: 30px;
}

.glcr-position-large.glcr-position-center {
    transform: translate(-50%, -50%) translate(-30px, -30px);
}

.glcr-position-large.glcr-position-top-center,
.glcr-position-large.glcr-position-bottom-center {
    transform: translateX(-50%) translateX(-30px);
}

[class*='glcr-position-top'],
[class*='glcr-position-bottom'],
[class*='glcr-position-left'],
[class*='glcr-position-right'],
[class*='glcr-position-center'] {
    position: absolute !important;
}

[class*='glcr-position-center-left'],
[class*='glcr-position-center-right'] {
    top: 50%;
    transform: translateY(-50%);
}

.glcr-position-small[class*='glcr-position-center-left'],
.glcr-position-small[class*='glcr-position-center-right'] {
    transform: translateY(-50%) translateY(-15px);
}

.glcr-position-medium[class*='glcr-position-center-left'],
.glcr-position-medium[class*='glcr-position-center-right'] {
    transform: translateY(-50%) translateY(-30px);
}

.glcr-position-large[class*='glcr-position-center-left'],
.glcr-position-large[class*='glcr-position-center-right'] {
    transform: translateY(-50%) translateY(-30px);
}

@media (min-width:1200px) {
    .glcr-position-large {
        max-width: calc(100% - (50px * 2));
        margin: 50px;
    }

    .glcr-position-large.glcr-position-center {
        transform: translate(-50%, -50%) translate(-50px, -50px);
    }

    .glcr-position-large[class*='glcr-position-center-left'],
    .glcr-position-large[class*='glcr-position-center-right'] {
        transform: translateY(-50%) translateY(-50px);
    }

    .glcr-position-large.glcr-position-top-center,
    .glcr-position-large.glcr-position-bottom-center {
        transform: translateX(-50%) translateX(-50px);
    }

}