/* ------------ General [START] ------------ */
@media only screen and (min-width : 1200px) {
    .container-wide { max-width: 2000px; }
}

.toasted-container .toasted {
    border-radius: 6px;
}

.pagination button {
    height: auto;
    margin: 0px;
}
/* ------------ General [END] ------------ */

.cursor-pointer {
    cursor: pointer;
    color: #4a90e2;
}
.cursor-pointer:hover {
    color: #2275d7;
    text-decoration: underline;
}
.type--normal {
    font-weight: normal;
}
.type--light {
    font-weight: 300;
}

.color--dark {
    color: #252525 !important;
}

/* ------------ Profile picture [START] ------------ */
.profile-picture-container {
    display: inline-block;
    position: relative;
}

.profile-picture-container .profile-picture-img {
    width: 150px;
    height:150px;
    object-fit: cover;
}

.profile-picture-container-main-icon {
    position: absolute;
    bottom: 0px;
    right: 0px;
    border: 4px solid white;
    background: whitesmoke;
    border-radius: 20px;
    font-size: 2.5em;
}

.event-cover-container {
    position: relative;
}

.event-cover-container::after {
    content: "";
    display: block;
    padding-bottom: 50%;
}

.event-cover-img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px 6px 0 0;
}

.bg--warning {
    color: #161209 !important;
    background-color: #ffb300 !important;
    border-color: #df9c00 !important;
}

.bg--light-warning {
    color: #161209 !important;
    background-color: #ffb3001a !important;
    border-color: #df9c00 !important;
}

/* ------------ Profile picture [END] ------------ */

/* ------------ Pass booking states [START] ------------ */
/*
    light :     registration.invitation, registration.request
    danger :    registration.waitinglist
    info :      registration.confirmation, registration.reminder
    gray-400 :  cancellation.payment_deadline, cancellation.guest_request
    warning :   cancellation.onhold, cancellation.transfer, cancellation.resell, cancellation.refund
    info :      preconfirmation.message, preconfirmation.flights, confirmation.deposit, confirmation.payment, confirmation.transfer
    success :   check.in
*/

.pbs-registration-invitation {
    color: #47404f !important;
    background-color: #b0b0b0 !important;
    border-color: #b0b0b0 !important;
}

.pbs-registration-request {
    color: #47404f !important;
    background-color: #b0b0b0 !important;
    border-color: #b0b0b0 !important;
}

.pbs-registration-waitinglist {
    color: #f0f0f0 !important;
    background-color: #f44336 !important;
    border-color: #f44336 !important;
}

.pbs-registration-confirmation {
    color: #f0f0f0 !important;
    background-color: #5ca5ff !important;
    border-color: #5ca5ff !important;
}

.pbs-registration-reminder {
    color: #f0f0f0 !important;
    background-color: #a859ee !important;
    border-color: #a859ee !important;
}

.pbs-cancellation-payment_deadline {
    color: #47404f !important;
    background-color: #ced4da !important;
    border-color: #ced4da !important;
}

.pbs-cancellation-guest_request {
    color: #47404f !important;
    background-color: #ced4da !important;
    border-color: #ced4da !important;
}

.pbs-cancellation-onhold {
    color: #47404f !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
}

.pbs-cancellation-transfer {
    color: #47404f !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
}

.pbs-cancellation-resell {
    color: #47404f !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
}

.pbs-cancellation-refund {
    color: #47404f !important;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
}

.pbs-preconfirmation-message {
    color: #f0f0f0 !important;
    background-color: #0452b0 !important;
    border-color: #0452b0 !important;
}

.pbs-preconfirmation-flights {
    color: #f0f0f0 !important;
    background-color: #0452b0 !important;
    border-color: #0452b0 !important;
}

.pbs-confirmation-deposit {
    color: #f0f0f0 !important;
    background-color: #0452b0 !important;
    border-color: #0452b0 !important;
}

.pbs-confirmation-payment {
    color: #f0f0f0 !important;
    background-color: #0452b0 !important;
    border-color: #0452b0 !important;
}

.pbs-confirmation-transfer {
    color: #f0f0f0 !important;
    background-color: #0452b0 !important;
    border-color: #0452b0 !important;
}

.pbs-check-in {
    color: #f0f0f0 !important;
    background-color: #4caf50 !important;
    border-color: #4caf50 !important;
}

.pbs-payment-note {
    background-color: #f44336 !important;
}

.pbs-note-low {
    background-color: #52495a !important;
}

.pbs-note-normal {
    background-color: #003473 !important;
}

.pbs-note-high {
    background-color: #dd0a1f !important;
}

.qr-code {
    display: inline-block;
    position: absolute;
    bottom: 1.6em;
    right: 1.6em;
}

.dance-level {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
}

/* ------------ Pass booking states [END] ------------ */


/* ------------ Profile picture [START] ------------ */

.diet-specs {
    margin-left: 1.5rem;
}

.diet-specs img {
    margin-bottom: 0;
    font-size: 0.85714286em;
    width: 12px;
    height: 12px;
    filter: contrast(20%) grayscale(100%);
}

/* ------------ Guest profile [START] ------------ */
.circle {
    border-radius: 50%;
}

.rect-img-container {
    position: relative;
    width: 100%;
    padding-top: 100%; /* 1:1 Aspect Ratio */
}

.rect-img-container .rect-img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.rect-img-container .rect-img img {
    width: 100%;
    height: 100%;
    margin-bottom: 0;
    object-fit: cover;
}

/* ------------ Guest profile [END] ------------ */

/* ------------ Guest registration [START] ------------ */
.field-error + .error-message {
    color: #e23636;
}

.required {
    color: #e23636 !important;
}
/* ------------ Guest registration [END] ------------ */

/* ------------ Input group addon [START] ------------ */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.row {
    margin: 10px;
}

.input-group-addon {
    padding: 6px 12px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: #555;
    text-align: center;
    background-color: #eee;
    border: 1px solid #ccc;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle;
    display: table-cell;
}

.input-gp-addon {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0;
    display: table-cell;
    padding: 6px 12px;
    border: 1px solid #ccc;
    margin: 0;
}

.suffix input {
    border-radius: 4px 0px 0px 4px;
}
.suffix .input-group-addon {
    border-left: 0;
    border-radius: 0px 4px 4px 0px;
}
.prefix input {
    border-radius: 0px 4px 4px 0px;
}
.prefix .input-group-addon {
    border-right: 0;
    border-radius: 4px 0px 0px 4px;
}
.presuffix input {
    border-radius: 0px;
}
.input-group-addon.prefix {
    border-radius: 4px 0px 0px 4px;
    border-right: 0;
}
.input-group-addon.suffix {
    border-radius: 0px 4px 4px 0px;
    border-left: 0;
}
.input-group {
    position: relative;
    display: table;
    border-collapse: separate;
}
/* ------------ Input group addon [END] ------------ */

/* ------------ Bootstrap XXXL [START] ------------ */

/*
*   Bootstrap grid classes for xxl and xxxl screens.
*   Author: Ibrahim YILMAZ
*/

.col-xxl-1, .col-xxl-2, .col-xxl-3, .col-xxl-4, .col-xxl-5, .col-xxl-6, .col-xxl-7, .col-xxl-8, .col-xxl-9, .col-xxl-10, .col-xxl-11, .col-xxl-12, .col-xxl,
.col-xxl-auto, .col-xxxl-1, .col-xxxl-2, .col-xxxl-3, .col-xxxl-4, .col-xxxl-5, .col-xxxl-6, .col-xxxl-7, .col-xxxl-8, .col-xxxl-9, .col-xxxl-10, .col-xxxl-11, .col-xxxl-12, .col-xxxl,
.col-xxxl-auto {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}


@media (min-width: 1900px) {
    .col-xxl {
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-xxl-auto {
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: none;
    }

    .col-xxl-1 {
        -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-xxl-2 {
        -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-xxl-3 {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-xxl-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-xxl-5 {
        -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-xxl-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-xxl-7 {
        -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-xxl-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-xxl-9 {
        -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-xxl-10 {
        -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-xxl-11 {
        -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-xxl-12 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-xxl-first {
        -ms-flex-order: -1;
        order: -1;
    }

    .order-xxl-last {
        -ms-flex-order: 13;
        order: 13;
    }

    .order-xxl-0 {
        -ms-flex-order: 0;
        order: 0;
    }

    .order-xxl-1 {
        -ms-flex-order: 1;
        order: 1;
    }

    .order-xxl-2 {
        -ms-flex-order: 2;
        order: 2;
    }

    .order-xxl-3 {
        -ms-flex-order: 3;
        order: 3;
    }

    .order-xxl-4 {
        -ms-flex-order: 4;
        order: 4;
    }

    .order-xxl-5 {
        -ms-flex-order: 5;
        order: 5;
    }

    .order-xxl-6 {
        -ms-flex-order: 6;
        order: 6;
    }

    .order-xxl-7 {
        -ms-flex-order: 7;
        order: 7;
    }

    .order-xxl-8 {
        -ms-flex-order: 8;
        order: 8;
    }

    .order-xxl-9 {
        -ms-flex-order: 9;
        order: 9;
    }

    .order-xxl-10 {
        -ms-flex-order: 10;
        order: 10;
    }

    .order-xxl-11 {
        -ms-flex-order: 11;
        order: 11;
    }

    .order-xxl-12 {
        -ms-flex-order: 12;
        order: 12;
    }

    .offset-xxl-0 {
        margin-left: 0;
    }

    .offset-xxl-1 {
        margin-left: 8.333333%;
    }

    .offset-xxl-2 {
        margin-left: 16.666667%;
    }

    .offset-xxl-3 {
        margin-left: 25%;
    }

    .offset-xxl-4 {
        margin-left: 33.333333%;
    }

    .offset-xxl-5 {
        margin-left: 41.666667%;
    }

    .offset-xxl-6 {
        margin-left: 50%;
    }

    .offset-xxl-7 {
        margin-left: 58.333333%;
    }

    .offset-xxl-8 {
        margin-left: 66.666667%;
    }

    .offset-xxl-9 {
        margin-left: 75%;
    }

    .offset-xxl-10 {
        margin-left: 83.333333%;
    }

    .offset-xxl-11 {
        margin-left: 91.666667%;
    }
}

@media (max-width: 1899.98px) {
    .table-responsive-xxl {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }

        .table-responsive-xxl > .table-bordered {
            border: 0;
        }
}

@media (max-width: 1899.98px) {
    .navbar-expand-xxl > .container,
    .navbar-expand-xxl > .container-fluid {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 1900px) {
    .navbar-expand-xxl {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

        .navbar-expand-xxl .navbar-nav {
            -ms-flex-direction: row;
            flex-direction: row;
        }

            .navbar-expand-xxl .navbar-nav .dropdown-menu {
                position: absolute;
            }

            .navbar-expand-xxl .navbar-nav .nav-link {
                padding-right: 0.5rem;
                padding-left: 0.5rem;
            }

        .navbar-expand-xxl > .container,
        .navbar-expand-xxl > .container-fluid {
            -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        }

        .navbar-expand-xxl .navbar-collapse {
            display: -ms-flexbox !important;
            display: flex !important;
            -ms-flex-preferred-size: auto;
            flex-basis: auto;
        }

        .navbar-expand-xxl .navbar-toggler {
            display: none;
        }
}

@media (min-width: 1900px) {
    .d-xxl-none {
        display: none !important;
    }

    .d-xxl-inline {
        display: inline !important;
    }

    .d-xxl-inline-block {
        display: inline-block !important;
    }

    .d-xxl-block {
        display: block !important;
    }

    .d-xxl-table {
        display: table !important;
    }

    .d-xxl-table-row {
        display: table-row !important;
    }

    .d-xxl-table-cell {
        display: table-cell !important;
    }

    .d-xxl-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-xxl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }
}



@media (min-width: 1900px) {
    .flex-xxl-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-xxl-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-xxl-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-xxl-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-xxl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-xxl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-xxl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .flex-xxl-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-xxl-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-xxl-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-xxl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-xxl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .justify-content-xxl-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-xxl-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-xxl-center {
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-xxl-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-xxl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .align-items-xxl-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-xxl-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-xxl-center {
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-xxl-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-xxl-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-xxl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-xxl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-xxl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-xxl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-xxl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-xxl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-xxl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-xxl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-xxl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-xxl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-xxl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-xxl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }
}

@media (min-width: 3000px) {
    .flex-xxxl-row {
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-xxxl-column {
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-xxxl-row-reverse {
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-xxxl-column-reverse {
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-xxxl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-xxxl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-xxxl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .flex-xxxl-fill {
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-xxxl-grow-0 {
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-xxxl-grow-1 {
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-xxxl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-xxxl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .justify-content-xxxl-start {
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-xxxl-end {
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-xxxl-center {
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-xxxl-between {
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-xxxl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .align-items-xxxl-start {
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-xxxl-end {
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-xxxl-center {
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-xxxl-baseline {
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-xxxl-stretch {
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-xxxl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-xxxl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-xxxl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-xxxl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-xxxl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-xxxl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-xxxl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-xxxl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-xxxl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-xxxl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-xxxl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-xxxl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }
}


@media (min-width: 1900px) {
    .float-xxl-left {
        float: left !important;
    }

    .float-xxl-right {
        float: right !important;
    }

    .float-xxl-none {
        float: none !important;
    }
}

@media (min-width: 3000px) {
    .float-xxxl-left {
        float: left !important;
    }

    .float-xxxl-right {
        float: right !important;
    }

    .float-xxxl-none {
        float: none !important;
    }
}


@media (min-width: 1900px) {
    .float-xxl-left {
        float: left !important;
    }

    .float-xxl-right {
        float: right !important;
    }

    .float-xxl-none {
        float: none !important;
    }
}

@media (min-width: 3000px) {
    .float-xxxl-left {
        float: left !important;
    }

    .float-xxxl-right {
        float: right !important;
    }

    .float-xxxl-none {
        float: none !important;
    }
}

@media (min-width: 1900px) {
    .text-xxl-left {
        text-align: left !important;
    }

    .text-xxl-right {
        text-align: right !important;
    }

    .text-xxl-center {
        text-align: center !important;
    }
}

@media (min-width: 3000px) {
    .text-xxxl-left {
        text-align: left !important;
    }

    .text-xxxl-right {
        text-align: right !important;
    }

    .text-xxxl-center {
        text-align: center !important;
    }
}
/* ------------ Bootstrap XXXL [END] ------------ */
