body {
    font-family: 'Noto Sans', sans-serif;
    min-height: 75rem;
    padding-top: 4.5rem;
}

.full-width-background {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    background-color: #464646;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Noto Serif', serif;
}

.text-color-white {
    color: #ffffff!important;
}

.text-color-black {
    color: #000000!important;
}

.bd-placeholder-img {
    font-size: 1.125rem;
    text-anchor: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.bg-primary {
    background-color: #ff0000 !important;
}

.bg-red {
    background-color: #ff0000!important;
}

.bg-white {
    background-color: #ffffff!important;
}

.jumbotron {
    background-color: #8196ac!important;
}

@media (min-width: 768px) {
    .bd-placeholder-img-lg {
        font-size: 3.5rem;
    }
}

main>.container {
    padding: 125px 15px 0;
}

.footer>.container {
    padding-right: 15px;
    padding-left: 15px;
}

.left {
    float: left;
    padding: 0 20px 0 0;
}

a {
    color: #000;
    text-decoration: none;
    background-color: transparent;
}

a:hover {
    color: red;
    text-decoration: none;
}

.btn-primary, .btn-primary:hover, .btn-primary:active, .btn-primary:visited {
    background-color: #ff0000 !important;
    border-color: #ff0000 !important;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f00' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f00' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E");
}

.wide-a {
    background: #ff0000;
    margin-top: 15px;
    margin-bottom: 15px;
    width: 100%;
}

.wide-b {
    background: #ffffff;
    margin-top: 15px;
    margin-bottom: 15px;
    width: 100%;
}

.carousel-indicators {
    z-index: 5;
}

.carousel-img-fluid {
    max-width: 100%;
    height: 500px!important;
}

.card-body {
    padding: 0.75rem!important;
}

.ribbon-wrapper {
    width: 200px;
    height: 200px;
    overflow: hidden;
    position: absolute;
    top: -3px;
    left: 11px;
    z-index: 1;
}

.ribbon {
    font-size: 15px;
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: .05em;
    line-height: 15px;
    text-align: center;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .4);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: relative;
    padding: 8px 0;
    left: -37px;
    top: 32px;
    width: 175px;
    height: 35px;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .3);
    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
    background-color: #dedede;
    background-image: -webkit-linear-gradient(top, #ffffff 45%, #dedede 100%);
    background-image: -o-linear-gradient(top, #ffffff 45%, #dedede 100%);
    background-image: linear-gradient(to bottom, #ffffff 45%, #dedede 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffdedede', GradientType=0)
}

.ribbon:before, .ribbon:after {
    content: "";
    border-top: 3px solid #9e9e9e;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    position: absolute;
    bottom: -3px
}

.ribbon:before {
    left: 0
}

.ribbon:after {
    right: 0
}

.ribbon.green {
    background-color: #2da285;
    background-image: -webkit-linear-gradient(top, #2da285 45%, #227a64 100%);
    background-image: -o-linear-gradient(top, #2da285 45%, #227a64 100%);
    background-image: linear-gradient(to bottom, #2da285 45%, #227a64 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff2da285', endColorstr='#ff227a64', GradientType=0)
}

.ribbon.green:before, .ribbon.green:after {
    border-top: 3px solid #113e33
}

.ribbon.orange {
    background-color: #ff7300;
    background-image: -webkit-linear-gradient(top, #ff7300 45%, #d16f1f 100%);
    background-image: -o-linear-gradient(top, #ff7300 45%, #d16f1f 100%);
    background-image: linear-gradient(to bottom, #ff7300 45%, #d16f1f 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff7300', endColorstr='#d16f1f', GradientType=0)
}

.ribbon.red:before, .ribbon.red:after {
    border-top: 3px solid #8f142c
}

.ribbon.blue {
    background-color: #1a8bbc;
    background-image: -webkit-linear-gradient(top, #177aa6 45%, #1a8bbc 100%);
    background-image: -o-linear-gradient(top, #177aa6 45%, #1a8bbc 100%);
    background-image: linear-gradient(to bottom, #177aa6 45%, #1a8bbc 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#177aa6', endColorstr='#ff1a8bbc', GradientType=0)
}

.ribbon.blue:before, .ribbon.blue:after {
    border-top: 3px solid #115979
}

hr.red {
    border-top: 1px solid red;
}

.modal-content {
    padding: 1rem;
    display: inherit !important;
}

.home-caption {
    padding: 5px 0 0 0 !important;
    position: relative !important;
    top: -30px !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
}

.pb-5, .py-5 {
    padding-bottom: 0!important;
    padding-top: 0!important;
}