.carousel-fullscreen,
.carousel-fullscreen .carousel-inner .item,
.carousel-fullscreen .carousel-inner,
.carousel-fullscreen .carousel-inner .item .carousel-caption,
.carousel-fullscreen .carousel-inner .item .overly {
    height: 100%;
    z-index: 7;
}

@keyframes gotobottom {
    0% {
        padding: 10px 0;
    }
    100% {
        padding: 15px 0;
    }
}

.carousel .carousel-inner .item .carousel-caption {
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 0;
}

.carousel .carousel-inner .item .carousel-caption .carousel-item-bg {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.carousel .carousel-inner .item .carousel-caption .overly {
    background-color: rgba(0, 0, 0, 0.6);
    padding: 90px 0 0 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}

.carousel .carousel-inner .item .carousel-caption .overly-half {
    background-color: rgba(0, 0, 0, 0.3);
}

.carousel .carousel-inner .item .carousel-caption .overly .carousel-item-title {
    position: absolute;
    bottom: 110px;
    right: 30px;
    left: 30px;
    text-align: left;
}

.carousel .carousel-inner .item .carousel-caption .overly .carousel-item-title a {
    color: #fff;
    font-size: 30px;
}

.carousel .carousel-inner .item .carousel-caption .overly .carousel-item-caption {
    position: absolutep;
    left: 0;
    right: 0;
    margin: auto;
}

.carousel .carousel-inner .item .carousel-caption .overly .carousel-item-caption img {
    display: inline-block;
}

.carousel .carousel-inner .item .carousel-caption .overly .carousel-left-bottom {
    position: absolute;
    bottom: 150px;
    right: 12%;
}

.carousel-default .carousel-inner .item,
.carousel .carousel-inner .item .overly {
    min-height: 400px;
}


/* ------------------------- Carousel Footer ------------------------- */

.carousel .carousel-footer {
    position: absolute;
    z-index: 8;
    left: 30px;
    right: 30px;
    bottom: 5px;
    height: 110px;
}

.carousel .carousel-footer .carousel-indicators {
    position: unset;
    border-bottom: 3px solid #de0022;
    left: 0;
    right: 0;
    width: 100%;
    text-align: right;
    margin: 0;
    margin-bottom: 10px;
    padding: 5px;
}

.carousel .carousel-footer .carousel-indicators li {
    height: 14px;
    margin: 0 2px;
    margin-bottom: 10px;
    width: 14px;
    border-width: 2px;
}

.carousel .carousel-footer .carousel-ctrlarea {
    float: right;
}

.carousel .carousel-footer .carousel-ctrlarea .carousel-control {
    background: transparent;
    position: unset;
    border: 2px solid #eee;
    border-radius: 50%;
    height: 50px;
    width: 50px;
    display: inline-block;
    padding: 7px 0px;
    text-align: center;
    opacity: 1;
    margin: 0 3px;
}

.carousel .carousel-footer .carousel-ctrlarea .carousel-control:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 30px;
}

.carousel .carousel-footer .carousel-ctrlarea .carousel-control.left:before {
    content: "\f104";
}

.carousel .carousel-footer .carousel-ctrlarea .carousel-control.right:before {
    content: "\f105";
}

.carousel .carousel-footer .gotobottom {
    height: 50px;
    width: 50px;
    color: #fff;
    border: 2px solid #eee;
    font-size: 30px;
    display: inline-block;
    text-align: center;
    border-radius: 50%;
    padding: 13px 0;
    animation-name: gotobottom;
    animation-duration: 0.5s;
    animation-iteration-count: infinite;
    animation-direction: alternate-reverse;
}

.carousel .carousel-footer .gotobottom:after {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    vertical-align: middle;
    content: "\f103";
}


/* ------------------------- Carousel Controls ----------------------- */

.carousel .carousel-control {
    max-width: 150px;
}

.carousel .carousel-control,
.carousel .carousel-control:hover {
    -webkit-transition: all ease 0.3s;
    -moz-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

.carousel .carousel-control .fa {
    font-size: 40px;
    position: absolute;
    top: 50%;
    height: 40px;
    margin-top: -10px;
    left: 10px;
}

.carousel .carousel-control.left>.fa {
    right: 5px;
}

.carousel-default .carousel-indicators li {
    height: 16px;
    width: 16px;
    border: 3px solid transparent;
    background-color: #fff;
    margin: 0 3px;
}

.carousel-default .carousel-indicators li.active {
    border: 3px solid #fff;
    background-color: #333;
    height: 16px;
    width: 16px;
}


/* ------------------------- Image Carousel -------------------------- */

.carousel.imagecarousel {
    border: 2px solid #eee;
    border-radius: 5px;
    box-shadow: 0 0 5px #999;
}

.carousel.imagecarousel .carousel-inner,
.carousel.imagecarousel img {
    border-radius: 5px;
}

.carousel.imagecarousel .carousel-control {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all ease 0.5s 0.3s;
    -moz-transition: all ease 0.5s 0.3s;
    transition: all ease 0.5s 0.3s;
}

.carousel.imagecarousel .carousel-control.right {
    border-radius: 0 5px 5px 0;
}

.carousel.imagecarousel .carousel-control.left {
    border-radius: 5px 0 0 5px;
}

.carousel.imagecarousel:hover .carousel-control {
    visibility: visible;
    opacity: 1;
    -webkit-transition: all ease 0.5s 0.3s;
    -moz-transition: all ease 0.5s 0.3s;
    transition: all ease 0.5s 0.3s;
}

.carousel .bgbox {
    background-color: #fff;
    padding: 12px 20px;
    font-size: 32px;
    color: #df0022;
    text-shadow: none;
}

.carousel-fullscreen .item .overly .fixtobottom {
    bottom: 75px;
    left: 100px;
    position: absolute;
}

.certificatescarousel .item {
    padding-top: 10px;
}