
body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

#top-block {
    flex-grow: 1;
}

.form label {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.75rem;
}

    .form label.required::after {
        content: "*";
        color: #ed1d24;
        font-width: bold;
        margin-left: 0.125rem;
        font-size: 1rem;
    }

.red {
    color:#ed1d24;
}

.custom-control-input:checked~.custom-control-label::before {
    color: #fff;
    border-color: #ed1d24;
    background-color: #ed1d24;
}

.jumbotron {
    background:#F1F1F1;
    padding: 2rem;
}

.canvas-image {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
}

.canvas-box {
    z-index: 1;
}

#place-tab-content {
    background: #fff;
    overflow: auto;
}

#place-tab-content.no-overflow {
    overflow: hidden;
}

.custom-radio .custom-control-label::before,
.custom-control-label::after{
    top:0;
}

.transparent {
    opacity: 0;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label::after {
    top:4px;
}

.term {
    font-size:0.8rem;
    margin-top:3px;
}

.term a {
    text-decoration: underline;
    color: #2273db;
}

.custom-select-lg {
    height: calc(2.875rem + 6px);
}

#info-map-overlay {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: #000000c7;
    z-index: 1;
}

    #info-map-overlay > div {
        width: 60%;
    }

        #info-map-overlay img {
            width:100%;
        }

.sale-code-tick.sale-code-ok::after {
    content: '\f00c';
    color: green;
}

.sale-code-tick.sale-code-nook::after {
    content: '\f00d';
    color: red;
}

.sale-code-tick {
    position: absolute;
    top: 0;
    right: 0;
    height: 58px;
    width: 58px;
    line-height: 58px;
    text-align: center;
    font-size: 34px;
}

@media (max-width: 575px) {
    .jumbotron {
        padding:1rem;
    }

    #info-map-overlay > div {
        width:94%;
    }

    #place-tab-content {
        margin: 0 -15px;
    }

    #place-tab-content .btn {
        white-space: normal !important;
    }
}