.d-none {
    display: none !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important;
}

.d-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
}

@media (min-width: 576px) {
    .d-sm-none {
        display: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-md-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }
}

@media (min-width: 992px) {
    .d-lg-none {
        display: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }
}

@media (min-width: 1200px) {
    .d-xl-none {
        display: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }
}

.card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.card-deck .card {
    flex-grow: 1;
    flex-shrink: 0;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 30px;
}


@media (min-width: 0) {
    .card-deck .card {
        flex-basis: calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);
    }

    .card-deck.card-deck--three .card {
        flex-basis: calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);
    }
}

@media (min-width: 576px) {
    .card-deck .card {
        flex-basis: calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);
    }

    .card-deck.card-deck--three .card {
        flex-basis: calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);
    }
}

@media (min-width: 768px) {
    .card-deck .card {
        flex-basis: calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);
    }

    .card-deck.card-deck--three .card {
        flex-basis: calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);
    }
}

@media (min-width: 992px) {
    .card-deck .card {
        flex-basis: calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);
    }

    .card-deck.card-deck--three .card {
        flex-basis: calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);
    }
}

@media (min-width: 1200px) {
    .card-deck .card {
        flex-basis: calc(25% - 30px);
        flex: 0 0 calc(25% - 30px);
        max-width: calc(25% - 30px);
    }

    .card-deck.card-deck--three .card {
        flex-basis: calc(33.33333% - 30px);
        flex: 0 0 calc(33.33333% - 30px);
        max-width: calc(33.33333% - 30px);
    }
}


@media (min-width: 576px) {
    .text-sm-left {
        text-align: left !important;
    }

    .text-sm-right {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .text-md-left {
        text-align: left !important;
    }

    .text-md-right {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .text-lg-left {
        text-align: left !important;
    }

    .text-lg-right {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-left {
        text-align: left !important;
    }

    .text-xl-right {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}