@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
    margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 2em;
    margin: 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;
    /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
    border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
    /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: none;
}

    /**
 * Remove the inner border and padding in Firefox.
 */
    button::-moz-focus-inner,
    [type="button"]::-moz-focus-inner,
    [type="reset"]::-moz-focus-inner,
    [type="submit"]::-moz-focus-inner {
        border-style: none;
        padding: 0;
    }

    /**
 * Restore the focus styles unset by the previous rule.
 */
    button:-moz-focusring,
    [type="button"]:-moz-focusring,
    [type="reset"]:-moz-focusring,
    [type="submit"]:-moz-focusring {
        outline: 1px dotted ButtonText;
    }

/**
 * Correct the padding in Firefox.
 */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

    /**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
    [type="search"]::-webkit-search-decoration {
        -webkit-appearance: none;
    }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
    display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
    display: none;
}

* {
    padding: 0;
    margin: 0;
}

body {
    font-family: "Roboto", sans-serif;
    color: var(--grey-dark-2);
}

.label {
    font-family: "Questrial", sans-serif;
    font-size: 16px;
    line-height: 26px;
    color: var(--grey-dark-2);
}

    .label.small {
        font-size: 14px;
        line-height: 20px;
    }

    .label .notice {
        font-family: "Roboto";
        font-weight: bold;
        font-size: 12px;
        line-height: 20px;
        margin-left: 8px;
    }

        .label .notice.green {
            color: var(--green-dark-1);
        }

.row-title {
    font-family: "Questrial";
    font-weight: normal;
    font-size: 18px;
    line-height: 24px;
    color: var(--grey-dark-2);
}

.row-subheading {
    font-family: "Questrial";
    font-size: 14px;
    line-height: 20px;
    color: var(--grey-dark-1);
    margin-bottom: 8px;
}

a:not(.underline) {
    text-decoration: none;
}

a {
    font-family: "Roboto";
    color: var(--blue);
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

    a > * {
        vertical-align: middle;
    }

    a:not(.card-wrapper-link):hover {
        color: var(--blue-dark-1);
    }

.link {
    font-family: "Roboto";
    color: var(--blue);
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

    .link.medium {
        font-size: 14px;
        line-height: 16px;
    }

    .link.sm-text {
        font-size: 12px;
        line-height: 16px;
    }

    .link .icon {
        margin-right: 4px;
    }

    .link > * {
        display: inline-block;
        vertical-align: middle;
    }

    .link.underline {
        text-decoration: underline;
    }

    .link.dark-grey {
        color: var(--grey-dark-1);
    }

        .link.dark-grey:hover {
            color: var(--grey-dark-2);
        }

    .link.dark-grey-2 {
        color: var(--grey-dark-2);
    }

    .link.red {
        color: var(--red) !important;
    }

    .link.grey {
        color: var(--grey);
    }

        .link.grey:hover {
            color: var(--grey-dark-2);
        }

    .link.blue {
        color: var(--blue);
    }

        .link.blue:hover {
            color: var(--blue);
        }

        .link.blue.underline:hover {
            color: var(--blue-dark-1);
        }

    .link.white {
        color: white;
    }

        .link.white:hover {
            color: white;
        }

    .link.black {
        color: var(--black);
    }

    .link:not(.underline) {
        text-decoration: none;
    }

        .link:not(.underline):hover {
            text-decoration: underline;
        }

    .link:hover {
        color: var(--blue-dark-1);
    }

.alert {
    font-size: 12px;
    padding: 8px 8px 0;
    color: var(--red);
}

    .alert ul {
        list-style-type: none;
    }

.roboto-bold {
    font-family: "Roboto";
    font-weight: 600;
}

    .roboto-bold.black {
        color: var(--black);
    }

.bold {
    font-weight: bold;
}

.footer-note {
    font-size: 12px;
    line-height: 17px;
    color: var(--grey-dark-2);
    font-family: "Questrial";
}

    .footer-note .link {
        color: var(--grey-dark-2) !important;
        display: inline-block;
    }

* {
    box-sizing: border-box;
}

#goog_conv_iframe {
    display: none;
}

.icon {
    display: inline-block;
}

html,
body {
    width: 100%;
    height: 100%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background-color: white;
    font-family: "Roboto", sans-serif;
}

    body.grey {
        background-color: var(--grey-light-3);
    }

.no-scroll {
    overflow: hidden;
}

main:not(.portal-screen) {
    padding-top: 80px;
}

main.grey {
    background-color: var(--grey-light-3);
}

.slide-image {
    height: 100%;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.inner-wrapper {
    max-width: 1360px;
    margin: 0 auto;
}

.content-wrapper {
    max-width: 1360px;
    width: 100%;
    margin: 0 auto 56px;
    display: block;
}

@media screen and (min-width: 768px) and (max-width: 1424px) {
    .content-wrapper {
        padding: 0 32px;
    }
}

.titles-container {
    padding: 40px 0 32px;
}

.title-group {
    margin-bottom: 32px;
}

.link-bullet:after {
    content: "â—";
    vertical-align: baseline;
}

.p-0 {
    padding: 0 !important;
}

.m-0 {
    margin: 0 !important;
}

.mt-32 {
    margin-top: 32px;
}

.mb-32 {
    margin-bottom: 32px;
}

.mb-16 {
    margin-bottom: 16px;
}

.tag-list {
    display: flex;
    flex-wrap: wrap;
}

    .tag-list .tag-bubble {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        padding: 8px 16px;
        font-weight: 500;
        font-size: 14px;
        line-height: 16px;
        color: var(--grey-dark-2);
        margin: 8px 16px 8px 0;
        cursor: pointer;
    }

.tag-cloud {
    margin: 8px auto 48px;
}

    .tag-cloud .tag-bubble {
        background: #ffffff;
        box-shadow: 0px 1px 2px rgba(60, 72, 78, 0.08), 0px 0px 2px rgba(60, 72, 78, 0.02);
        border-radius: 50px;
        margin: 0 16px 16px 0;
    }

        .tag-cloud .tag-bubble.selected {
            background-color: var(--black);
            color: white;
            box-shadow: none;
        }

        .tag-cloud .tag-bubble:hover:not(.selected) {
            color: var(--black);
            box-shadow: 0px 1px 2px rgba(60, 72, 78, 0.06), 0px 2px 6px rgba(60, 72, 78, 0.1);
        }

.pill {
    background: #ffffff;
    border: 1px solid var(--grey-light-1);
    box-sizing: border-box;
    border-radius: 40px;
    box-shadow: none;
    cursor: pointer;
}

    .pill.white {
        background-color: white;
        border: none;
    }

    .pill:hover {
        border-color: var(--grey);
        color: var(--black) !important;
        box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
    }

.hidden,
.hide {
    display: none !important;
}

.invisible {
    visibility: hidden;
    opacity: 0;
}

.split-half {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 16px;
    width: 100%;
    align-items: center;
}

.split-3-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 16px;
    width: 100%;
    align-items: center;
}

.justify-self-right {
    justify-self: flex-end;
}

.align-self-end {
    align-self: flex-end;
}

.inline-group > * {
    display: inline-block;
    vertical-align: middle;
}

.help-block {
    font-size: 12px;
    line-height: 14px;
    text-align: left;
    margin: 8px 2px 0;
}

    .help-block.comfortable {
        margin-top: 16px;
    }

    .help-block.helper-text {
        color: var(--grey-dark-1);
    }

    .help-block.global {
        color: var(--red-dark-1);
        text-align: center;
    }

    .help-block .link {
        color: var(--red-dark-1);
        font-weight: normal;
    }

.row-title-container {
    margin-bottom: 24px;
}

    .row-title-container.mb-16 {
        margin-bottom: 16px;
    }

    .row-title-container.incl-border {
        border-bottom: solid 1px var(--grey-light-2);
        padding: 16px 0;
    }

.incl-bg {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.validation-msg {
    display: grid;
    grid-template-columns: 16px 1fr;
    grid-gap: 8px;
    align-items: center;
}

    .validation-msg > * {
        color: var(--red);
    }

    .validation-msg .icon {
        font-size: 16px;
    }

    .validation-msg p {
        font-family: "Questrial";
        font-size: 14px;
        line-height: 16px;
    }

.required-indicator {
    color: var(--red);
}

.counter-row {
    padding: 16px 0;
    border-bottom: solid 1px var(--grey-light-2);
}

    .counter-row .booking-fee-link {
        font-size: 12px;
        line-height: 14px;
    }

    .counter-row .ticket-type-info {
        font-family: "Questrial";
        font-size: 12px;
        line-height: 16px;
        color: var(--grey-dark-1);
    }

    .counter-row .group-title {
        margin-bottom: 4px !important;
        font-weight: bold;
        font-size: 16px;
        line-height: 20px;
        color: var(--grey-dark-2);
    }

    .counter-row .ticket-price .price-total {
        font-weight: bold;
        font-size: 16px;
        line-height: 19px;
        color: var(--grey-dark-2);
        margin-bottom: 4px;
    }

    .counter-row.disabled .group-title {
        color: var(--grey);
    }

    .counter-row.disabled .ticket-details .ticket-type-info {
        color: var(--grey);
    }

    .counter-row.disabled .ticket-price .price-total {
        color: var(--grey);
    }

    .counter-row.disabled .ticket-price .booking-fee-link {
        opacity: 0.2;
        pointer-events: none;
    }

    .counter-row.disabled .ticket-quantity p {
        font-family: "Roboto";
        font-weight: bold;
        font-size: 16px;
        line-height: 24px;
        color: var(--grey);
    }

.counter {
    height: 56px;
    line-height: 24px;
    background: var(--grey-light-3);
    border-radius: 8px;
    padding: 8px;
    text-align: center;
    max-width: fit-content;
}

    .counter .sh-event-ticket-info-qty {
        display: grid;
        grid-gap: 8px;
        grid-auto-flow: column;
        align-items: center;
    }

        .counter .sh-event-ticket-info-qty .manage-qty-btn {
            height: 40px;
            width: 80px;
            background-color: var(--blue);
            border-radius: 4px;
            line-height: 40px;
            transition: background-color 0.2s;
        }

            .counter .sh-event-ticket-info-qty .manage-qty-btn a {
                height: 40px;
                width: 80px;
                display: block;
            }

            .counter .sh-event-ticket-info-qty .manage-qty-btn .icon {
                color: white;
            }

            .counter .sh-event-ticket-info-qty .manage-qty-btn:hover {
                background-color: var(--blue-dark-1);
            }

        .counter
        .sh-event-ticket-info-qty
        .sh-event-ticket-info-qty-input-wrapper
        .sh-event-ticket-info-qty-input {
            height: 40px;
            width: 80px;
            padding: 8px;
            text-align: center;
        }

figure {
    margin-bottom: 64px;
}

    figure .inline-image {
        margin-bottom: 16px !important;
    }

    figure figcaption {
        font-family: "Questrial";
        font-style: normal;
        font-weight: normal;
        font-size: 14px;
        line-height: 16px;
        color: var(--grey-dark-1);
        text-align: center;
    }

@media screen and (max-width: 768px) {
    .counter-row .ticket-price {
        padding: 16px 0;
    }
}

@media screen and (max-width: 992px) {
    .mobile-hidden {
        display: none !important;
    }
}

@media screen and (min-width: 993px) {
    .desktop-hidden {
        display: none !important;
    }

    .bubble,
    .bubble-icon {
        min-width: 32px;
        border-radius: 32px;
        text-align: center;
        background-color: white;
        color: var(--grey-dark-1);
        line-height: 32px;
        box-sizing: border-box;
        padding: 8px;
    }

        .bubble > .icon,
        .bubble p,
        .bubble-icon > .icon,
        .bubble-icon p {
            display: inline-block;
            vertical-align: middle;
        }

        .bubble:not(.bubble-icon) .icon,
        .bubble-icon:not(.bubble-icon) .icon {
            margin-left: 8px;
            font-size: 16px;
        }

        .bubble .bubble-text,
        .bubble-icon .bubble-text {
            color: var(--grey-dark-1);
            margin: 0 8px;
            font-weight: bold;
            font-size: 14px;
            line-height: 16px;
        }

        .bubble.black,
        .bubble-icon.black {
            color: var(--black);
        }

            .bubble.black .bubble-text,
            .bubble-icon.black .bubble-text {
                color: var(--black);
            }

        .bubble:hover,
        .bubble-icon:hover {
            background-color: var(--grey-light-3);
            color: var(--black);
        }

            .bubble:hover.user-state-link-container .user-thumbnail .icon,
            .bubble-icon:hover.user-state-link-container .user-thumbnail .icon {
                color: var(--black);
            }

            .bubble:hover .bubble-text,
            .bubble-icon:hover .bubble-text {
                color: var(--black);
            }
}

@media screen and (max-width: 768px) {
    main:not(.portal-screen) {
        padding-top: 64px;
    }

    .content-wrapper {
        padding: 0 8px;
        margin: 0 auto 40px;
    }

    .titles-container {
        padding: 40px 8px 24px;
    }

    .split-3-row {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 32px 24px;
    }
}

@media screen and (min-width: 768px) {
    .split-half-desktop {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 16px;
        width: 100%;
        align-items: center;
    }

    .counter-row {
        display: grid;
        grid-template-columns: 1fr 160px 168px;
        grid-gap: 48px;
        align-items: center;
        padding: 24px 0;
    }

        .counter-row .ticket-price {
            text-align: right;
        }

        .counter-row.disabled .ticket-quantity {
            padding: 16px;
        }

    .counter .sh-event-ticket-info-qty .manage-qty-btn {
        width: 40px;
    }

        .counter .sh-event-ticket-info-qty .manage-qty-btn a {
            width: 40px;
        }

    .counter
    .sh-event-ticket-info-qty
    .sh-event-ticket-info-qty-input-wrapper
    .sh-event-ticket-info-qty-input {
        width: 56px;
    }
}

.cards-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(164px, 1fr));
    grid-gap: 8px;
    position: relative;
}

    .cards-grid:not(.slick-initialized):not(.slick-slider) {
        padding-bottom: 16px;
    }

    .cards-grid.card-slider .slick-list {
        padding-bottom: 16px;
        margin: 0 -8px;
    }

    .cards-grid.card-slider .slick-track {
        display: flex;
        align-items: stretch;
        justify-content: center;
    }

        .cards-grid.card-slider .slick-track .slick-slide {
            height: auto;
        }

            .cards-grid.card-slider .slick-track .slick-slide > div {
                height: 100%;
            }

                .cards-grid.card-slider .slick-track .slick-slide > div .card {
                    height: 100%;
                    width: 100%;
                }

    .cards-grid.card-slider .slick-slide {
        padding: 0 8px;
        min-width: 214px;
    }

        .cards-grid.card-slider .slick-slide .card {
            display: inline-grid !important;
        }

    .cards-grid:hover .slider-btn.cards-slider-btn {
        visibility: visible;
        opacity: 1;
    }

@media screen and (max-width: 768px) {
    .cards-grid .slider-btn.cards-slider-btn {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    .cards-grid {
        grid-gap: 32px;
    }

        .cards-grid.featured {
            grid-gap: 40px;
        }
}

@media screen and (min-width: 768px) and (max-width: 1424px) {
    .cards-grid {
        grid-gap: 16px;
    }

        .cards-grid.featured {
            grid-gap: 32px;
        }
}

@media screen and (min-width: 880px) {
    .cards-grid {
        grid-template-columns: repeat(3, minmax(256px, 1fr));
    }
}

@media screen and (min-width: 1160px) {
    .cards-grid {
        grid-template-columns: repeat(4, minmax(256px, 1fr));
    }

        .cards-grid.col-6 {
            grid-template-columns: repeat(6, minmax(180px, 1fr));
            grid-gap: 16px;
        }

        .cards-grid.featured {
            grid-template-columns: repeat(3, 1fr);
        }
}

@media screen and (min-width: 1024px) and (max-width: 1240px) {
    .cards-grid.col-6 {
        grid-template-columns: repeat(5, minmax(180px, 1fr));
    }
}

@media screen and (min-width: 768px) and (max-width: 1240px) {
    .cards-grid.featured {
        grid-gap: 24px;
    }
}

.loading-text:after {
    overflow: hidden;
    display: inline-block;
    vertical-align: bottom;
    -webkit-animation: ellipsis steps(4, end) 900ms infinite;
    animation: ellipsis steps(4, end) 900ms infinite;
    content: "â€¦";
    /* ascii code for the ellipsis character */
    width: 0px;
}

@keyframes ellipsis {
    to {
        width: 1.25em;
    }
}

@-webkit-keyframes ellipsis {
    to {
        width: 1.25em;
    }
}

#rc-anchor-container {
    border: none;
    background-color: transparent;
    box-shadow: none;
    width: fit-content;
}

.rc-anchor-center-container {
    display: inline-block;
    height: unset;
    line-height: 28px;
}

.rc-anchor-center-item.rc-anchor-checkbox-holder {
    display: inline-block;
    margin-right: 8px;
}

span#recaptcha-anchor {
    margin: 0;
}

.recaptcha-checkbox-border {
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    background: #ffffff;
    border: 1px solid lightgrey;
    border-radius: 4px;
}

.recaptcha-checkbox-spinner {
    width: 24px;
    height: 24px;
}

.recaptcha-checkbox-checkmark {
    height: 24px;
    top: 4px;
    transform: scale(0.8);
}

.rc-anchor-normal .rc-anchor-content {
    width: fit-content;
    margin-right: 16px;
    line-height: 64px;
}

label#recaptcha-anchor-label {
    width: fit-content;
}

.rc-anchor-pt {
    width: 100%;
}

.rc-anchor-logo-portrait {
    margin: 8px 11px 4px;
}

.rc-anchor-normal .rc-anchor-pt {
    width: 100%;
    padding-right: 0;
    position: relative;
    margin-right: 8px;
}

:root {
    --black: #090a0b;
    --black90: rgba(9, 10, 11, 0.9);
    --black80: rgba(9, 10, 11, 0.8);
    --black50: rgba(9, 10, 11, 0.5);
    --black20: rgba(9, 10, 11, 0.2);
    --grey-dark-3: #23292c;
    --grey-dark-2: #3c484e;
    --grey-dark-1: #819197;
    --grey: #b1c2cf;
    --grey-light-1: #d9e3ea;
    --grey-light-2: #ecf2f6;
    --grey-light-3: #f5f8fa;
    --blue-dark-1: #006abf;
    --blue: #008eff;
    --blue-07: rgba(0, 142, 255, 0.07);
    --blue-light-1: #8cdfff;
    --green-dark-1: #008d38;
    --green: #00bc4b;
    --green-08: rgba(0, 188, 75, 0.08);
    --red90: rgba(229, 50, 56, 0.9);
    --red-dark-1: #800006;
    --red: #f95a61;
    --red-light-1: #ff9599;
    --orange: #ffb36e;
    --yellow: #ffe973;
    --yellow-30: rgba(255, 233, 115, 0.3);
    --yellow-20: rgba(255, 233, 115, 0.2);
    --yellow-dark-1: #635300;
    --admin-grey: #222b33;
    --admin-grey80: rgba(34, 43, 51, 0.8);
}

body.incl-announcement-bar {
    margin-top: 48px;
}

    body.incl-announcement-bar header {
        top: 48px;
    }

        body.incl-announcement-bar header.fadeout {
            top: -100px;
        }

    body.incl-announcement-bar .event-details-header.show {
        top: 48px;
    }

.announcement-bar {
    height: 48px;
    background-color: var(--black);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99999;
    font-family: "Questrial";
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 14px;
    text-align: center;
    color: #ffffff;
    padding: 0 16px;
    display: grid;
    align-items: center;
    box-sizing: border-box;
    transition: top 0.4s ease-in;
}

    .announcement-bar .text {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .announcement-bar span {
        display: inline-block;
        vertical-align: middle;
        text-decoration: underline;
    }

@media screen and (max-width: 992px) {
    .announcement-bar {
        padding: 0 8px;
        font-size: 12px;
        word-wrap: break-word !important;
    }
}

.announcement-bar.fadeout {
    top: -100px;
}

.announcement-box {
    margin-bottom: 48px;
    overflow: hidden;
    box-sizing: border-box;
    border-radius: 8px;
    display: grid;
    grid-template-rows: minmax(48px, min-content) min-content;
    border: 2px solid var(--blue-07);
}

    .announcement-box .box-header {
        padding: 16px;
        box-sizing: border-box;
        text-align: center;
        background: var(--blue-07);
        color: var(--blue-dark-1);
    }

        .announcement-box .box-header > * {
            display: inline-block;
        }

        .announcement-box .box-header .icon {
            margin-right: 8px;
            font-size: 16px;
        }

        .announcement-box .box-header > p {
            font-size: 14px !important;
            line-height: 16px !important;
            margin: 0 !important;
        }

    .announcement-box .box-content {
        padding: 16px;
        box-sizing: border-box;
    }

        .announcement-box .box-content div:first-child {
            margin-top: 0;
        }

        .announcement-box .box-content > p,
        .announcement-box .box-content .list li {
            font-size: 14px;
            line-height: 24px;
            color: var(--grey-dark-2);
        }

        .announcement-box .box-content .list {
            margin: 8px 16px;
        }

            .announcement-box .box-content .list li {
                padding: 4px 0;
            }

        .announcement-box .box-content .action-container {
            margin-top: 24px;
        }

            .announcement-box .box-content .action-container .form-group {
                width: 50%;
                margin: 0;
            }

                .announcement-box .box-content .action-container .form-group .input-btn-group {
                    grid-template-columns: 1fr minmax(150px, min-content);
                }

    .announcement-box.offer {
        border: 2px solid var(--green-08);
    }

        .announcement-box.offer .box-header {
            background: var(--green-08);
            color: var(--green-dark-1);
        }

    .announcement-box.warning {
        border: 2px solid var(--yellow-20);
    }

        .announcement-box.warning .box-header {
            background: var(--yellow-20);
            color: var(--yellow-dark-1);
        }

@media screen and (max-width: 768px) {
    .announcement-box {
        margin-bottom: 32px;
    }

        .announcement-box .box-header {
            display: grid;
            grid-gap: 8px;
            text-align: left;
            align-items: center;
        }

            .announcement-box .box-header .icon {
                margin: 0;
            }

        .announcement-box .box-content .action-container .form-group {
            width: 100%;
        }

        .announcement-box.offer .box-header,
        .announcement-box.warning .box-header {
            grid-template-columns: 16px 1fr;
        }
}

.dropdown-panel {
    background: white;
    border: 1px solid var(--grey-light-1);
    box-shadow: 0px 2px 6px rgba(9, 10, 11, 0.1);
    border-radius: 8px;
    padding: 8px;
    z-index: 99;
}

    .dropdown-panel.popover {
        position: absolute;
    }

.dropdown {
    position: relative;
    cursor: pointer;
}

    .dropdown.user-navigation .dropdown-panel {
        width: 168px;
        left: unset;
        right: 0;
    }

    .dropdown.show .dropdown-list {
        visibility: visible;
        height: fit-content;
        max-height: 372px;
        transition: max-height 0.2s ease-in, visibility 0.2s;
    }

    .dropdown .dropdown-list.show {
        visibility: visible;
        height: fit-content;
        max-height: 372px;
        transition: max-height 0.2s ease-in, visibility 0.2s;
    }

    .dropdown .dropdown-list .row-item,
    .dropdown .dropdown-list .list-item {
        height: 56px;
        padding: 8px;
        text-align: left;
    }

        .dropdown .dropdown-list .row-item:hover,
        .dropdown .dropdown-list .list-item:hover {
            background-color: var(--grey-light-3);
            border-radius: 6px;
        }

    .dropdown .dropdown-list.cosy,
    .dropdown .dropdown-list.comfortable {
        padding: 8px 0;
        text-align: left;
        border: 1px solid var(--grey-light-1);
        box-shadow: 0px 4px 16px rgba(60, 72, 78, 0.08);
        background-color: white;
    }

        .dropdown .dropdown-list.cosy .dropdown-item,
        .dropdown .dropdown-list.comfortable .dropdown-item {
            padding: 8px 16px;
            font-family: "Roboto";
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            color: var(--grey-dark-1);
            display: block;
        }

            .dropdown .dropdown-list.cosy .dropdown-item:hover,
            .dropdown .dropdown-list.comfortable .dropdown-item:hover {
                cursor: pointer;
                background-color: var(--grey-light-3);
                color: var(--black);
                text-decoration: none;
            }

    .dropdown .dropdown-list.cosy {
        border-radius: 6px;
    }

        .dropdown .dropdown-list.cosy .dropdown-item {
            padding: 8px 16px;
        }

    .dropdown .dropdown-list.comfortable {
        border-radius: 8px;
    }

        .dropdown .dropdown-list.comfortable .dropdown-item {
            padding: 16px 24px;
        }

@media screen and (max-width: 768px) {
    .dropdown.user-navigation {
        top: 32px;
        right: -32px;
    }

        .dropdown.user-navigation.show {
            display: block;
        }

        .dropdown.user-navigation .dropdown-panel {
            top: 8px;
        }
}

.dropdown.search-results {
    min-width: unset !important;
}

    .dropdown.search-results .dropdown-list {
        max-width: 100%;
    }

.dropdown .row-item {
    display: grid;
    grid-gap: 8px;
    align-items: center;
    cursor: pointer;
}

    .dropdown .row-item .event-name {
        margin: 0;
        font-weight: 700;
        font-size: 16px;
        line-height: 19px;
        font-weight: 500;
        font-size: 14px;
        line-height: 23px;
        color: var(--grey-dark-2);
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }

    .dropdown .row-item .image-container {
        width: 24px;
        height: 24px;
        border-radius: 4px;
        overflow: hidden;
        background-color: var(--grey-light-2);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

        .dropdown .row-item .image-container .event-flyer {
            width: 100%;
        }

    .dropdown .row-item .icon {
        text-align: center;
        font-size: 10px;
    }

        .dropdown .row-item .icon.icon-chevron-up {
            animation: transform 0.2s linear;
            font-size: 10px;
        }

            .dropdown .row-item .icon.icon-chevron-up:before {
                transform: rotateX(-180deg);
                transform-origin: center;
            }

    .dropdown .row-item.selected-event {
        grid-template-columns: 24px 1fr 16px;
        border-radius: 56px;
        overflow: hidden;
        height: 40px;
        width: fit-content;
        max-width: 311px;
        padding: 8px 16px 8px 8px;
        transition: all 0.2s ease-in-out;
    }

        .dropdown .row-item.selected-event .event-name {
            white-space: nowrap;
            overflow: hidden;
        }

        .dropdown .row-item.selected-event .event-name,
        .dropdown .row-item.selected-event .icon {
            color: var(--blue);
        }

        .dropdown .row-item.selected-event:hover {
            background: #ffffff;
            box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
        }

        .dropdown .row-item.selected-event.show {
            background-color: var(--grey-light-2);
            box-shadow: none;
        }

            .dropdown .row-item.selected-event.show .event-name,
            .dropdown .row-item.selected-event.show .icon {
                color: var(--grey-dark-2);
            }

                .dropdown .row-item.selected-event.show .icon:before {
                    transform: rotateX(0deg);
                }

.dropdown .dropdown-list {
    background: var(--grey-light-3);
    visibility: hidden;
    position: absolute;
    top: 32px;
    left: 0;
    width: 311px;
    max-height: 0;
    overflow: hidden;
    padding: 0;
    transition: max-height 0.15s ease-in, visibility 0.15s;
}

    .dropdown .dropdown-list .row-item {
        grid-template-columns: 40px 1fr;
        grid-gap: 8px;
    }

        .dropdown .dropdown-list .row-item .image-container {
            width: 40px;
            height: 40px;
        }

        .dropdown .dropdown-list .row-item:hover .event-name {
            color: var(--black);
        }

.dropdown.search-results {
    min-width: 440px;
}

    .dropdown.search-results .dropdown-list {
        top: 8px;
        width: 100%;
        background-color: white;
    }

.dropdown .list-container {
    overflow-y: scroll;
    max-height: 270px;
    margin: 0;
}

.dropdown .results-container {
    background-color: white;
    padding: 8px;
    width: 100%;
}

.no-results {
    padding: 32px 16px;
    text-align: center;
}

    .no-results .icon-container {
        position: relative;
        background-color: var(--grey-light-3);
        border-radius: 6px;
        width: 48px;
        height: 48px;
        text-align: center;
        margin: 0 auto 24px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

        .no-results .icon-container .icon {
            font-size: 16px;
            color: var(--grey);
        }

    .no-results p:not(.link) {
        font-family: Questrial;
        font-size: 14px;
        color: var(--grey-dark-1);
        line-height: 24px;
        margin-bottom: 8px;
    }

    .no-results.large {
        padding: 80px 16px;
    }

        .no-results.large .icon-container .icon {
            font-size: 48px;
        }

        .no-results.large p {
            font-size: 16px;
            margin-top: 32px;
        }

.banner-container {
    position: relative;
}

    .banner-container .slider {
        height: 200px;
        overflow: hidden;
        margin-bottom: 0 !important;
    }

        .banner-container .slider .slick-slide {
            height: 200px;
        }

            .banner-container .slider .slick-slide .slide {
                position: relative;
                height: 200px;
                outline: none;
            }

                .banner-container .slider .slick-slide .slide .slide-image {
                    width: 100%;
                }

                .banner-container .slider .slick-slide .slide .information {
                    visibility: hidden;
                    opacity: 0;
                    position: absolute;
                    color: white;
                    padding: 24px 16px;
                    box-sizing: border-box;
                    top: 0px;
                    height: 100%;
                    width: 100%;
                    z-index: 6;
                }

                    .banner-container .slider .slick-slide .slide .information .info-item {
                        margin: 0;
                        width: fit-content;
                    }

                    .banner-container .slider .slick-slide .slide .information .banner-subheading,
                    .banner-container .slider .slick-slide .slide .information .banner-headline {
                        transition: all 0.2s;
                    }

                    .banner-container .slider .slick-slide .slide .information .banner-headline {
                        font-weight: 900;
                        font-size: 32px;
                        line-height: 37px;
                        letter-spacing: -0.2px;
                        text-shadow: 0 0px 0.8px black, 1px 1px 6px black, 0px 0px 1px black;
                        max-width: 85%;
                        text-transform: uppercase;
                        margin-bottom: 16px;
                    }

                    .banner-container .slider .slick-slide .slide .information .banner-subheading {
                        font-family: "Questrial", sans-serif;
                        text-shadow: 0 0 2px black, 1px 1px 3px black, 1px 1px 1px black, 0 1px 0.5px black, 0 1px 0.5px black;
                        font-size: 24px;
                        line-height: 32px;
                        max-width: 85%;
                        font-weight: normal;
                    }

                .banner-container .slider .slick-slide .slide .slide-overlay {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    background-color: rgba(0, 0, 0, 0.1);
                    z-index: 5;
                    top: 0;
                    transition: all 0.2s;
                }

                .banner-container .slider .slick-slide .slide:hover {
                    /* .slide-overlay {
  	background-color: rgba(0, 0, 0, 0.40);
  } */
                }

                    .banner-container
                    .slider
                    .slick-slide
                    .slide:hover
                    .information
                    .banner-headline {
                        text-shadow: 0px 1px 10px rgba(0, 0, 0, 0.8), 0px 1px 10px rgba(0, 0, 0, 0.8), 0px 1px 1px rgba(0, 0, 0, 0.8);
                    }

                    .banner-container
                    .slider
                    .slick-slide
                    .slide:hover
                    .information
                    .banner-subheading {
                        text-shadow: 0px 1px 10px rgba(0, 0, 0, 0.8), 0px 1px 5px rgba(0, 0, 0, 0.8), 0px 1px 15px rgba(0, 0, 0, 0.8), 0px 1px 15px rgba(0, 0, 0, 0.8);
                    }

        .banner-container .slider .slick-dots {
            bottom: 24px;
            z-index: 1;
        }

            .banner-container .slider .slick-dots li {
                width: 32px;
                height: 4px;
                background: #ffffff;
                border-radius: 8px;
                opacity: 0.4;
            }

                .banner-container .slider .slick-dots li.slick-active {
                    opacity: 1;
                }

                .banner-container .slider .slick-dots li button {
                    height: 0;
                    padding: 0 8px;
                }

                    .banner-container .slider .slick-dots li button:before {
                        content: "";
                    }

@media screen and (max-width: 768px) {
    .banner-container .slider .slick-slide .slide .information .banner-headline {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 4px;
    }

    .banner-container
    .slider
    .slick-slide
    .slide
    .information
    .banner-subheading {
        font-size: 16px;
        line-height: 22px;
    }

    .banner-container .slider .slick-slide .slide.show-text .information {
        visibility: visible;
        opacity: 1;
    }

    .banner-container .slider .slick-current .slide .information {
        visibility: visible !important;
        opacity: 1 !important;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .banner-container .slider .slick-current .slide .banner-subheading {
        margin-top: -10px;
    }

    .banner-container .slider .slick-dots {
        visibility: hidden;
        bottom: 16px;
    }

        .banner-container .slider .slick-dots li {
            height: 2px;
            width: 32px;
        }
}

@media screen and (min-width: 992px) and (max-width: 1424px) {
    .banner-container .slider .slick-slide .slide .information {
        padding: 0 32px;
    }
}

@media screen and (min-width: 768px) {
    .banner-container .slider {
        height: 232px;
    }

        .banner-container .slider .slick-slide {
            height: 232px;
            min-width: 670px;
        }

            .banner-container .slider .slick-slide .slide {
                height: 232px;
            }

                .banner-container .slider .slick-slide .slide .information {
                    top: 0;
                    max-width: 100%;
                    left: 0;
                    right: 0;
                    margin: auto;
                    padding: 24px 0;
                    transition: all 0.2s;
                }

        .banner-container .slider .slick-current .slide .information {
            visibility: visible !important;
            opacity: 1 !important;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
        }

        .banner-container .slider .slick-current .slide .banner-subheading {
            margin-top: -10px;
        }

        .banner-container .slider:hover .slider-btn {
            visibility: visible;
            opacity: 1;
        }

            .banner-container .slider:hover .slider-btn.slick-prev {
                left: 0;
            }

            .banner-container .slider:hover .slider-btn.slick-next {
                right: 0;
            }
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    .banner-container .slider {
        height: 280px;
    }

        .banner-container .slider .slick-slide {
            height: 280px;
        }

            .banner-container .slider .slick-slide .slide {
                position: relative;
                height: 280px;
            }

        .banner-container .slider .slick-current .slide .information {
            width: 100%;
        }
}

@media screen and (min-width: 993px) {
    .banner-container .slider .slick-slide {
        min-width: 670px;
        height: 232px;
    }

        .banner-container .slider .slick-slide .slide .information {
            transition: all 0.3s;
        }

        .banner-container
        .slider
        .slick-slide.slick-current
        .slide.show-text
        .information {
            visibility: visible;
            opacity: 1;
        }

    .banner-container .slider .slick-current .slide .information {
        width: 80%;
    }
}

@media screen and (max-width: 992px) {
    .banner-container .slider .slider-btn {
        display: none;
    }

    .banner-container .slider .slick-slide .slide .information {
        padding: 24px 16px;
        top: unset;
        bottom: 0;
        height: fit-content;
        margin: 0;
        /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0+0,0.5+100 */
        background: -moz-linear-gradient( top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100% );
        /* FF3.6-15 */
        background: -webkit-linear-gradient( top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100% );
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient( to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100% );
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#80000000",GradientType=0 );
        /* IE6-9 */
    }
}

.card-wrapper-link {
    color: unset;
    text-decoration: none;
    height: 100%;
    outline: none;
}

.card {
    height: 100%;
    background: white;
    box-sizing: border-box;
    overflow: hidden;
    display: inline-block;
    vertical-align: top;
    display: grid;
    transition: box-shadow 300ms ease-out;
    box-shadow: none;
    /******************************************************************
  Card types 
  ******************************************************************/
    /******************************************************************
  Card sizes 
  ******************************************************************/
}

    .card .card-header {
        overflow: hidden;
        position: relative;
    }

        .card .card-header:after {
            content: "";
            padding-bottom: 140%;
            display: block;
        }

        .card .card-header .tag {
            position: absolute;
            width: auto;
            height: 24px;
            box-sizing: border-box;
            background: #ffffff;
            box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
            border-radius: 4px;
            top: 4px;
            padding: 4px 8px;
            font-size: 12px;
            line-height: 16px;
            z-index: 10;
        }

            .card .card-header .tag.price-tag {
                right: 4px;
                color: var(--black);
                font-weight: 700;
            }

                .card .card-header .tag.price-tag span {
                    color: var(--grey-dark-1);
                    font-weight: normal;
                    margin-right: 4px;
                }

        .card .card-header .card-media {
            transition: transform 300ms ease-out;
            height: 100%;
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            background-color: var(--grey-light-3);
        }

        .card .card-header .card-notice-bar {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            margin: auto;
            background-color: var(--black90);
            color: white;
            text-transform: uppercase;
            font-family: Roboto;
            font-style: normal;
            font-weight: bold;
            font-size: 12px;
            line-height: 14px;
            padding: 8px;
            text-align: center;
        }

            .card .card-header .card-notice-bar.warning {
                background-color: var(--red90);
            }

    .card .card-content {
        padding: 16px;
    }

        .card .card-content .date {
            color: var(--red);
        }

        .card .card-content .date {
            font-size: 14px;
            line-height: 16px;
            font-family: "Questrial";
        }

        .card .card-content .title {
            margin: 8px 0 0;
            font-size: 18px;
            line-height: 24px;
            font-weight: 700;
            font-family: "Roboto", sans-serif;
            transition: color 300ms ease-out;
        }

        .card .card-content .title,
        .card .card-content .description {
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .card .card-content .description,
        .card .card-content .preview-text {
            margin-top: 8px;
        }

    .card .card-footer {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
    }

        .card .card-footer .label {
            font-size: 14px;
            color: var(--grey-dark-1);
        }

        .card .card-footer .read-duration {
            font-weight: normal;
            font-size: 12px;
            line-height: 16px;
            color: var(--grey-dark-1);
        }

        .card .card-footer .event-tags {
            font-weight: normal;
            font-size: 12px !important;
            line-height: 16px !important;
            margin: 0 !important;
            padding: 0 16px;
        }

            .card .card-footer .event-tags .tag {
                color: var(--grey-dark-1);
                display: inline-block;
                vertical-align: middle;
            }

                .card .card-footer .event-tags .tag:not(:last-of-type):after {
                    color: var(--grey-light-1);
                    padding: 0 0 0 4px;
                }

    .card:focus {
        outline: none;
    }

    .card.event {
        border: none;
        border-radius: 8px;
    }

        .card.event .card-footer {
            border: none;
        }

            .card.event .card-footer .price {
                justify-self: flex-end;
            }

                .card.event .card-footer .price .label,
                .card.event .card-footer .price .amount {
                    display: inline-block;
                }

    .card.blog {
        border-radius: 8px;
    }

        .card.blog .tag-group .tag {
            display: inline-block;
            vertical-align: middle;
            font-weight: normal;
            font-size: 12px;
            line-height: 16px;
            color: var(--grey-dark-1);
        }

            .card.blog .tag-group .tag:not(:last-of-type):after {
                color: var(--grey-light-1);
                padding: 0 8px;
            }

        .card.blog .tag {
            color: var(--grey-dark-1);
        }

        .card.blog .card-content .date {
            font-size: 14px;
            line-height: 16px;
        }

        .card.blog .card-content .preview-text {
            font-family: "Questrial";
            font-weight: normal;
            font-size: 14px;
            line-height: 20px;
            color: var(--grey);
        }

        .card.blog .card-footer {
            padding: 0 24px;
            display: grid;
            grid-template-columns: repeat(2, 50%);
            align-items: center;
            height: 48px;
        }

            .card.blog .card-footer .author-profile-picture {
                width: 32px;
                height: 32px;
                border-radius: 32px;
            }

        .card.blog .read-duration {
            justify-self: flex-end;
        }

    .card.small,
    .card.x-small {
        grid-template-rows: auto 1fr minmax(48px, max-content);
    }

        .card.small .card-media,
        .card.x-small .card-media {
            width: 100%;
            position: absolute;
        }

    .card.medium {
        grid-template-rows: 232px 1fr 56px;
    }

        .card.medium .card-content {
            padding: 24px;
        }

            .card.medium .card-content .description,
            .card.medium .card-content .preview-text {
                line-height: 20px;
                font-size: 14px;
                color: var(--grey);
            }

        .card.medium .card-footer .event-tags {
            padding-left: 24px;
            padding-right: 24px;
        }

@media screen and (min-width: 768px) {
    .card {
        box-shadow: 0px 2px 4px rgba(60, 72, 78, 0.01), 0px 2px 16px rgba(60, 72, 78, 0.02);
        /******************************************************************
    Card hover 
    ******************************************************************/
    }

        .card.small,
        .card.x-small {
            grid-template-rows: auto 1fr 48px;
        }

        .card.event,
        .card.blog {
            border: 1px solid var(--grey-light-1);
        }

            .card.event .card-footer {
                border-top: solid 1px var(--grey-light-1);
            }

        .card .card-header .tag {
            top: 8px;
        }

            .card .card-header .tag.price-tag {
                right: 8px;
            }

        .card:hover {
            box-shadow: 0px 2px 4px rgba(60, 72, 78, 0.04), 0px 2px 16px rgba(60, 72, 78, 0.08);
            cursor: pointer;
        }

            .card:hover .card-header .card-media {
                transform: scale(1.05);
            }

            .card:hover .card-content .title {
                color: var(--black);
            }
}

.titles-container .title {
    font-family: "Questrial";
    font-weight: normal;
    display: inline-block;
    vertical-align: middle;
    font-size: 24px;
    line-height: 40px;
    color: var(--grey-dark-1);
    margin-right: 32px;
    text-decoration: none;
}

    .titles-container .title.selected,
    .titles-container .title:not(.tab-title) {
        font-size: 28px;
        line-height: 28px;
        color: var(--grey-dark-2);
    }

    .titles-container .title:not(.selected):hover {
        color: var(--black);
    }

@media screen and (max-width: 992px) {
    .titles-container .title {
        margin-right: 16px;
    }

    .titles-container.title-tabs {
        white-space: nowrap;
        overflow-x: scroll;
    }
}

footer {
    background-color: var(--grey-light-3);
    /* Mobile Styles */
    /* Tablet Styles */
}

    footer .info-section {
        padding: 48px 40px 24px;
    }

        footer .info-section .inner-wrapper {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-gap: 240px;
            font-size: 14px;
            line-height: 22px;
            color: var(--grey-dark-1);
            align-items: center;
        }

            footer .info-section .inner-wrapper .address-container {
                justify-self: flex-end;
                max-width: 224px;
            }

                footer .info-section .inner-wrapper .address-container .disclaimer {
                    color: var(--grey);
                    font-size: 11px;
                    margin-top: 8px;
                    line-height: 16px;
                }

            footer .info-section .inner-wrapper .scroll-to-top-button {
                align-self: flex-start;
                justify-self: center;
                text-align: center;
                cursor: pointer;
            }

                footer .info-section .inner-wrapper .scroll-to-top-button .scroll-btn {
                    margin: 0 auto;
                    background-color: var(--grey-light-2);
                    box-shadow: none;
                    transition: all 0.2s;
                }

                    footer .info-section .inner-wrapper .scroll-to-top-button .scroll-btn .icon {
                        color: var(--grey);
                    }

                footer .info-section .inner-wrapper .scroll-to-top-button .btn-text {
                    margin-top: 8px;
                    visibility: hidden;
                    opacity: 0;
                    transition: all 0.2s;
                    color: var(--black);
                    cursor: pointer;
                }

                footer .info-section .inner-wrapper .scroll-to-top-button:hover .scroll-btn {
                    background-color: white;
                    box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
                }

                    footer
                    .info-section
                    .inner-wrapper
                    .scroll-to-top-button:hover
                    .scroll-btn
                    .icon {
                        color: var(--black);
                    }

                footer .info-section .inner-wrapper .scroll-to-top-button:hover .btn-text {
                    opacity: 1;
                    visibility: visible;
                }

            footer .info-section .inner-wrapper .company-message {
                max-width: 286px;
            }

                footer .info-section .inner-wrapper .company-message .logo {
                    line-height: 1;
                    margin-bottom: 16px;
                }

                footer .info-section .inner-wrapper .company-message .message {
                    font-size: 12px;
                    line-height: 18px;
                }

    footer .links-section {
        height: 56px;
        padding: 16px 40px;
        background-color: var(--grey-light-3);
    }

        footer .links-section .inner-wrapper {
            height: 100%;
            display: grid;
            grid-auto-flow: column;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            align-items: center;
            grid-gap: 16px;
            font-size: 14px;
            color: var(--grey-light-1);
        }

            footer .links-section .inner-wrapper .copyright {
                color: var(--grey);
            }

            footer .links-section .inner-wrapper a.link {
                color: var(--grey);
            }

                footer .links-section .inner-wrapper a.link:hover {
                    color: var(--grey-dark-2);
                }

            footer .links-section .inner-wrapper .general-links ul {
                list-style-type: none;
                width: fit-content;
                margin: 0 auto;
            }

                footer .links-section .inner-wrapper .general-links ul li {
                    width: fit-content;
                    display: inline-block;
                }

                    footer .links-section .inner-wrapper .general-links ul li.link-bullet:after {
                        font-size: 12px;
                        color: var(--grey-light-1);
                        line-height: 16px;
                        position: relative;
                        padding: 0px 8px;
                    }

            footer .links-section .inner-wrapper .social-media-links {
                justify-self: right;
            }

                footer
                .links-section
                .inner-wrapper
                .social-media-links
                .link.social-media-link {
                    margin-left: 16px;
                }

                    footer
                    .links-section
                    .inner-wrapper
                    .social-media-links
                    .link.social-media-link:hover {
                        text-decoration: none;
                    }

                    footer
                    .links-section
                    .inner-wrapper
                    .social-media-links
                    .link.social-media-link
                    .icon {
                        font-size: 18px;
                    }

@media screen and (max-width: 768px) {
    footer .info-section {
        padding: 0 16px;
    }

        footer .info-section .inner-wrapper {
            grid-template-columns: unset;
            grid-auto-flow: row;
            grid-gap: 32px;
            padding: 16px 0;
        }

            footer .info-section .inner-wrapper .company-message,
            footer .info-section .inner-wrapper .address-container {
                display: none;
            }

            footer .info-section .inner-wrapper .scroll-to-top-button .btn-text {
                display: none;
            }

    footer .links-section {
        height: fit-content;
        padding: 16px;
    }

        footer .links-section .inner-wrapper {
            grid-auto-flow: row;
            grid-template-columns: 1fr 0.5fr;
            justify-content: left;
            grid-template-areas: "links links" "copyright social";
        }

            footer .links-section .inner-wrapper .general-links {
                grid-area: links;
                justify-self: center;
            }

                footer .links-section .inner-wrapper .general-links ul li {
                    line-height: 24px;
                }

                    footer .links-section .inner-wrapper .general-links ul li.link-bullet:after {
                        padding: 0px 8px;
                    }

            footer .links-section .inner-wrapper .copyright {
                grid-area: copyright;
            }

            footer .links-section .inner-wrapper .social-media-links {
                grid-area: social;
            }
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    footer .info-section {
        padding: 0 32px;
    }

        footer .info-section .inner-wrapper {
            padding: 32px 0;
        }
}

header {
    background-color: white;
    height: 64px;
    width: 100%;
    box-sizing: border-box;
    padding: 16px;
    line-height: 1;
    box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
    position: fixed;
    top: 0;
    z-index: 999;
    transition: box-shadow 0.2s ease-in-out, top 0.4s ease-in;
}

    header.fadeout {
        top: -100px;
    }

    header.logo-only .header-content-wrapper .searchbar-container,
    header.logo-only .header-content-wrapper .nav-links {
        display: none;
    }

    header .header-content-wrapper {
        width: 100%;
        display: grid;
        grid-auto-flow: column;
        grid-gap: 16px;
        align-items: center;
        grid-template-areas: "logo search nav";
        height: 100%;
    }

    header .logo,
    header .logo img {
        max-height: 32px;
    }

    header .logo {
        grid-area: logo;
    }

    header .searchbar-container {
        grid-area: search;
    }

    header .nav-links {
        grid-area: nav;
        justify-self: flex-end;
    }

        header .nav-links > * {
            display: inline-block;
            vertical-align: middle;
        }

        header .nav-links .user-state-link-container > * {
            display: inline-block;
            vertical-align: middle;
        }

        header .nav-links .user-state-link-container .initials-thumbnail {
            width: 32px;
            height: 32px;
            border-radius: 32px;
            text-align: center;
            background-color: var(--blue);
            color: white;
            line-height: 32px;
            font-size: 14px;
            font-weight: 500;
        }

        header .nav-links .header-link {
            transition: color 0.3s ease-in-out;
            color: var(--grey-dark-1);
            font-size: 14px;
            text-decoration: none;
        }

            header .nav-links .header-link > *:not(.dropdown) {
                display: inline-block;
                vertical-align: middle;
            }

            header .nav-links .header-link.black {
                color: var(--black);
            }

            header .nav-links .header-link:hover {
                color: var(--black);
            }

                header .nav-links .header-link:hover ~ a {
                    color: var(--grey-dark-1);
                }

        header .nav-links .tickets-cart > * {
            display: inline-block;
            vertical-align: middle;
        }

        header .nav-links .tickets-cart .tooltip-container {
            min-height: 28px;
        }

@media screen and (max-width: 768px) {
    header.logo-only .header-content-wrapper {
        display: block;
    }

        header.logo-only .header-content-wrapper .searchbar-container,
        header.logo-only .header-content-wrapper .nav-links {
            display: none;
        }

        header.logo-only .header-content-wrapper .logo {
            display: flex;
            align-items: center;
            height: 100%;
        }

        header.logo-only .header-content-wrapper .header-link:not(:last-child) {
            margin-right: 8px;
        }

    header .header-content-wrapper {
        grid-template-columns: 1fr 32px 32px;
    }

        header .header-content-wrapper.incl-cart {
            grid-template-columns: 1fr 32px 80px;
        }

        header .header-content-wrapper .header-link:not(:last-of-type) {
            margin-right: 8px;
        }
}

@media screen and (max-width: 992px) {
    header .logo,
    header .nav-links {
        opacity: 1;
        transition: opacity 0.2s ease-in-out;
    }

    header .nav-links {
        justify-self: center;
    }

    header .header-content-wrapper:not(.open-search) .searchbar-container .icon {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        line-height: 28px;
        color: var(--black);
        height: fit-content;
    }

    header .header-content-wrapper.open-search .searchbar-container {
        z-index: 99;
    }

    header .header-content-wrapper.open-search .logo,
    header .header-content-wrapper.open-search .nav-links {
        opacity: 0;
    }

    header .header-content-wrapper.incl-cart .nav-links {
        grid-gap: 0.6em;
    }

    header .header-content-wrapper .nav-links {
        display: grid;
        grid-auto-flow: column;
        grid-template-areas: "cart user";
    }

        header .header-content-wrapper .nav-links .tickets-cart {
            grid-area: cart;
            position: relative;
        }

            header .header-content-wrapper .nav-links .tickets-cart .ticket-quantity {
                color: var(--black);
                font-weight: 600;
                position: absolute;
                top: 4px;
                bottom: 0;
                left: 0;
                right: 0;
                margin: auto;
                font-size: 10px;
                height: fit-content;
                width: fit-content;
            }

        header .header-content-wrapper .nav-links .user-state-link-container {
            grid-area: user;
        }

        header .header-content-wrapper .nav-links .bubble-link {
            display: none;
        }

        header .header-content-wrapper .nav-links .icon {
            font-size: 28px;
            line-height: 28px;
            color: var(--black);
            height: fit-content;
            display: inline-block;
            vertical-align: middle;
        }
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    header .header-content-wrapper {
        grid-template-columns: 1fr 48px 48px;
    }

        header .header-content-wrapper.incl-cart {
            grid-template-columns: 1fr 48px 112px;
        }

        header .header-content-wrapper .nav-links {
            grid-gap: 8px;
        }

        header .header-content-wrapper .header-link:not(:last-of-type) {
            margin-right: 16px;
        }
}

@media screen and (min-width: 768px) {
    header {
        height: 80px;
        padding: 16px;
    }

        header .header-content-wrapper {
            height: 100%;
        }

            header .header-content-wrapper .logo,
            header .header-content-wrapper .logo img {
                height: 40px;
            }
}

@media screen and (min-width: 1180px) {
    header .header-content-wrapper {
        grid-gap: 24px;
        grid-template-columns: 326px 1fr 326px;
        max-width: 1360px;
        margin: 0 auto;
    }

    header .searchbar-container {
        width: fit-content;
        min-width: 440px;
    }

    header .nav-links .user-state-link-container .user-thumbnail {
        width: 32px;
        height: 32px;
        border-radius: 32px;
        text-align: center;
        background-color: var(--grey-light-3);
    }

        header .nav-links .user-state-link-container .user-thumbnail .icon {
            color: var(--grey);
            font-size: 16px;
            margin: 0;
        }

    header .nav-links .tickets-cart.tooltip-container {
        min-height: 48px;
    }
}

.event-details-header {
    top: -112px;
    position: fixed;
    background-color: white;
    transition: all 0.4s ease-in-out;
    width: 100%;
    height: 80px;
    box-sizing: border-box;
    padding: 16px;
    line-height: 1;
    z-index: 9999;
    left: 0;
}

    .event-details-header .container {
        display: grid;
        grid-auto-flow: column;
        justify-content: space-between;
        align-items: center;
        max-width: 1360px;
        margin: 0 auto;
        grid-gap: 24px;
        grid-template-columns: calc(100% - 98px) 72px;
    }

        .event-details-header .container .right-group,
        .event-details-header .container .left-group {
            width: fit-content;
        }

        .event-details-header .container .right-group {
            justify-self: flex-end;
        }

        .event-details-header .container .left-group {
            width: 100%;
        }

            .event-details-header .container .left-group .image-container {
                height: 48px;
                width: 48px;
                background-color: var(--grey-light-3);
                background-size: cover;
                background-position: center;
                background-repeat: no-repeat;
                border-radius: 6px;
                margin-right: 8px;
            }

            .event-details-header .container .left-group .event-details-container {
                max-width: calc(100% - 72px);
            }

                .event-details-header .container .left-group .event-details-container h2 {
                    color: var(--grey-dark-2);
                    font-weight: 900;
                    width: 100%;
                    text-overflow: ellipsis;
                    white-space: nowrap;
                    overflow: hidden;
                    font-size: 16px;
                    line-height: 20px;
                }

            .event-details-header .container .left-group .image-container,
            .event-details-header .container .left-group .event-details-container {
                display: inline-block;
                vertical-align: middle;
            }

    .event-details-header.show {
        top: 0;
    }

@media screen and (max-width: 768px) {
    .event-details-header {
        height: 64px;
        padding: 8px;
    }

        .event-details-header .container .right-group .buy-tickets-btn {
            font-size: 0;
            padding: 12px;
            min-width: 48px;
            font-size: 12px;
            padding: 0 16px;
        }
}

@media screen and (min-width: 992px) {
    .event-details-header .container {
        max-width: 1360px;
        margin: 0 auto;
        grid-template-columns: calc(100% - 172px) 148px;
        grid-gap: 24px;
        grid-auto-flow: unset;
    }

        .event-details-header .container .left-group {
            max-width: calc(100% - 64px);
            width: 100%;
        }

            .event-details-header .container .left-group .image-container {
                height: 48px;
                width: 48px;
                margin-right: 24px;
            }

            .event-details-header .container .left-group .event-details-container {
                max-width: calc(100% - 148px);
            }

                .event-details-header .container .left-group .event-details-container h2 {
                    text-overflow: ellipsis;
                    white-space: nowrap;
                    overflow: hidden;
                    font-size: 20px;
                    line-height: 28px;
                }

                .event-details-header .container .left-group .event-details-container p {
                    font-weight: bold;
                    font-size: 16px;
                    line-height: 16px;
                    margin-top: 8px;
                }
}

header.open-search {
    padding: 8px 16px;
}

.searchbar-container {
    position: relative;
    margin: 0 auto;
    background-color: var(--grey-light-3);
    width: 32px;
    height: 48px;
    border-radius: 32px;
    transition: all 0.2s ease-in-out;
}

    .searchbar-container .icon {
        position: absolute;
        font-size: 24px;
        line-height: 48px;
        left: 10px;
        z-index: 1;
        color: var(--grey);
    }

    .searchbar-container .mobile-cancel-link {
        visibility: hidden;
        opacity: 0;
        margin-left: 16px;
        font-size: 14px;
    }

    .searchbar-container .input-container .searchbar {
        width: 100%;
        background-color: var(--grey-light-3);
        border-radius: 40px;
        height: 48px;
        padding: 16px;
        box-sizing: border-box;
        font-size: 14px;
        border: solid 1px transparent;
        transition: all 0.2s;
    }

        .searchbar-container .input-container .searchbar::placeholder {
            /* Firefox, Chrome, Opera */
            color: var(--grey-dark-1);
            font-weight: 300;
        }

        .searchbar-container .input-container .searchbar:-ms-input-placeholder {
            /* Internet Explorer 10-11 */
            color: var(--grey-dark-1);
        }

        .searchbar-container .input-container .searchbar::-ms-input-placeholder {
            /* Microsoft Edge */
            color: var(--grey-dark-1);
        }

        .searchbar-container .input-container .searchbar:focus {
            background-color: white;
            border-color: var(--grey);
            box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
        }

            .searchbar-container .input-container .searchbar:focus::placeholder {
                /* Firefox, Chrome, Opera */
                color: var(--grey-light-1);
            }

            .searchbar-container .input-container .searchbar:focus:-ms-input-placeholder {
                /* Internet Explorer 10-11 */
                color: var(--grey-light-1);
            }

            .searchbar-container .input-container .searchbar:focus::-ms-input-placeholder {
                /* Microsoft Edge */
                color: var(--grey-light-1);
            }

            .searchbar-container .input-container .searchbar:focus + .icon {
                color: var(--black);
            }

        .searchbar-container .input-container .searchbar.w-icon {
            padding: 12px 24px 12px 56px;
        }

@media screen and (max-width: 992px) {
    .header-content-wrapper:not(.open-search) .searchbar-container .icon {
        position: relative;
    }

    .header-content-wrapper.incl-cart .searchbar-container {
        right: 110px;
    }

    .searchbar-container {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        cursor: pointer;
        border-radius: 0;
        right: 64px;
        text-align: center;
        background-color: transparent;
    }

        .searchbar-container .icon {
            left: 0;
            font-size: 28px;
            line-height: 48px;
        }

        .searchbar-container .input-container,
        .searchbar-container .mobile-cancel-link {
            display: inline-block;
            vertical-align: middle;
        }

        .searchbar-container .mobile-cancel-link {
            line-height: 48px;
            transition: opacity 0.5s ease-in-out;
        }

        .searchbar-container .input-container {
            width: calc(100% - 68px);
        }

            .searchbar-container .input-container .searchbar {
                width: 100%;
                height: 48px;
                visibility: hidden;
            }

                .searchbar-container .input-container .searchbar.w-icon {
                    padding: 8px 8px 8px 40px;
                }

    .header-content-wrapper.open-search .searchbar-container {
        width: calc(100% - 31px);
        right: 16px;
        background-color: white;
        border-radius: 0;
    }

        .header-content-wrapper.open-search .searchbar-container .icon {
            position: absolute;
            left: 16px;
            font-size: 16px;
            line-height: 48px;
        }

        .header-content-wrapper.open-search
        .searchbar-container
        .input-container
        .searchbar {
            visibility: visible;
        }

        .header-content-wrapper.open-search .searchbar-container .mobile-cancel-link {
            opacity: 1;
            visibility: visible;
        }
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    .searchbar-container {
        right: 72px;
        width: 48px;
        height: 48px;
    }

        .searchbar-container .icon {
            line-height: 52px;
        }

        .searchbar-container .input-container .searchbar {
            height: 48px;
        }

            .searchbar-container .input-container .searchbar.w-icon {
                padding: 8px 8px 8px 48px;
            }

    .header-content-wrapper.incl-cart .searchbar-container {
        right: 96px;
    }

    .header-content-wrapper.open-search .searchbar-container .icon {
        left: 24px;
        font-size: 20px;
        line-height: 48px;
    }
}

@media screen and (min-width: 993px) {
    .searchbar-container {
        background-color: transparent;
        width: 100%;
        height: unset;
        border-radius: unset;
    }

        .searchbar-container .searchbar {
            max-width: 440px;
        }

        .searchbar-container .icon {
            font-size: 24px;
            line-height: 48px;
            left: 16px;
        }

        .searchbar-container .input-container {
            display: block;
        }

        .searchbar-container .mobile-cancel-link {
            display: none;
        }
}

.bottom-promotion-banner {
    background-color: var(--grey-light-2);
}

    .bottom-promotion-banner .slide {
        position: relative;
        display: block;
        height: 200px;
    }

        .bottom-promotion-banner .slide .information {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            margin: auto;
            color: white;
            text-align: center;
            padding: 0 32px;
            height: fit-content;
        }

            .bottom-promotion-banner .slide .information .banner-headline,
            .bottom-promotion-banner .slide .information .banner-subheading {
                text-shadow: 0px 1px 4px rgba(0, 0, 0, 0.1);
                margin: 0;
            }

            .bottom-promotion-banner .slide .information .banner-headline {
                font-size: 24px;
                line-height: 32px;
                margin-bottom: 16px;
            }

            .bottom-promotion-banner .slide .information .banner-subheading {
                font-size: 16px;
                line-height: 20px;
                font-weight: normal;
            }

@media screen and (min-width: 768px) {
    .bottom-promotion-banner .slide {
        height: 232px;
    }

        .bottom-promotion-banner .slide .information .banner-headline {
            font-size: 44px;
            line-height: 52px;
        }

        .bottom-promotion-banner .slide .information .banner-subheading {
            font-size: 24px;
            line-height: 28px;
        }
}

.bottom-ad-banner {
    position: relative;
    display: block;
    height: 200px;
}

@media screen and (min-width: 768px) {
    .bottom-ad-banner {
        height: 232px;
    }
}

.ad-banner {
    background-color: var(--grey-light-2);
    display: flex;
    align-items: center;
    justify-content: center;
}

    .ad-banner.ad-card {
        border-radius: 8px;
    }

    .ad-banner .ad-box-placeholder {
        background-color: var(--blue);
        text-align: center;
        margin: 16px;
        align-items: center;
        justify-content: center;
        display: none;
    }

        .ad-banner .ad-box-placeholder.show {
            display: flex;
        }

        .ad-banner .ad-box-placeholder .dimensions {
            color: white;
            font-size: 16px;
        }

        .ad-banner .ad-box-placeholder.leaderboard {
            width: 728px;
            height: 90px;
        }

            .ad-banner .ad-box-placeholder.leaderboard.large {
                width: 970px;
                height: 90px;
            }

            .ad-banner .ad-box-placeholder.leaderboard.small {
                width: 468px;
                height: 60px;
            }

        .ad-banner .ad-box-placeholder.rectangle {
            width: 336px;
            height: 280px;
        }

            .ad-banner .ad-box-placeholder.rectangle .medium {
                width: 300px;
                height: 250px;
            }

        .ad-banner .ad-box-placeholder.square {
            width: 250px;
            height: 250px;
        }

            .ad-banner .ad-box-placeholder.square.small {
                width: 200px;
                height: 200px;
            }

        .ad-banner .ad-box-placeholder.billboard {
            width: 970px;
            height: 250px;
        }

        .ad-banner .ad-box-placeholder.portrait {
            width: 300px;
            height: 1050px;
        }

            .ad-banner .ad-box-placeholder.portrait.medium {
                width: 300px;
                height: 600px;
            }

            .ad-banner .ad-box-placeholder.portrait.small {
                width: 160px;
                height: 600px;
            }

        .ad-banner .ad-box-placeholder.mobile-leaderboard {
            width: 300px;
            height: 50px;
        }

            .ad-banner .ad-box-placeholder.mobile-leaderboard.large {
                width: 300px;
                height: 100px;
            }

        .ad-banner .ad-box-placeholder.mobile-rectangle {
            width: 300px;
            height: 200px;
        }

        .ad-banner .ad-box-placeholder.large-mobile-banner {
            width: 320px;
            height: 100px;
        }

input {
    -webkit-appearance: none;
}

.signup-form .split-half-desktop,
.login-form .split-half-desktop {
    align-items: flex-start;
}

.field-validation-valid {
    margin: 0 !important;
    padding: 0 !important;
}

fieldset {
    padding: 0;
    margin: 0;
}

label {
    font-family: "Roboto";
    font-weight: normal;
    font-size: 14px;
    line-height: 16px;
    color: var(--grey-dark-1);
    margin-bottom: 8px;
    display: inline-block;
}

.input-validation-error {
    border-color: var(--red) !important;
}

.field-validation-error {
    color: var(--red);
}

input:not([type="range"]),
select {
    font-family: "Roboto";
    outline: none;
    width: 100%;
    height: 64px;
    background-color: white;
    border: 1px solid var(--grey-light-1);
    box-sizing: border-box;
    border-radius: 5px;
    position: relative;
    font-weight: 500;
    font-size: 16px;
    color: var(--black);
    padding: 32px 24px 16px;
    transition: border-color 0.2s ease-out;
}

    input:not([type="range"]).no-label,
    select.no-label {
        padding: 16px;
        line-height: 24px;
        font-size: 20px;
    }

        input:not([type="range"]).no-label::placeholder,
        select.no-label::placeholder {
            font-weight: normal;
        }

    input:not([type="range"]).regular,
    select.regular {
        padding: 8px 16px;
        height: 48px;
        font-size: 14px;
        font-weight: 400;
        line-height: 1;
        color: var(--black);
    }

        input:not([type="range"]).regular.small-padding,
        select.regular.small-padding {
            padding-right: 8px;
        }

        input:not([type="range"]).regular::placeholder,
        select.regular::placeholder {
            /* Firefox, Chrome, Opera */
            color: var(--grey);
            font-size: 14px;
            line-height: 16px;
        }

        input:not([type="range"]).regular:-ms-input-placeholder,
        select.regular:-ms-input-placeholder {
            /* Internet Explorer 10-11 */
            color: var(--grey);
        }

        input:not([type="range"]).regular::-ms-input-placeholder,
        select.regular::-ms-input-placeholder {
            /* Microsoft Edge */
            color: var(--grey);
        }

        input:not([type="range"]).regular.incl-icon,
        select.regular.incl-icon {
            padding: 20px 40px 20px 48px;
            position: relative;
        }

        input:not([type="range"]).regular.incl-icon-right.num-percentage,
        select.regular.incl-icon-right.num-percentage {
            padding-right: 32px;
        }

            input:not([type="range"]).regular.incl-icon-right.num-percentage:before,
            select.regular.incl-icon-right.num-percentage:before {
                content: "%";
                font-size: 14px;
            }

    input:not([type="range"]):hover,
    select:hover {
        border-color: var(--grey);
    }

    input:not([type="range"]):disabled,
    input:not([type="range"]):not(.form-time-input)[readonly],
    select:disabled,
    select:not(.form-time-input)[readonly] {
        background-color: var(--grey-light-3) !important;
        color: var(--grey);
        border-color: var(--grey-light-3);
    }

    input:not([type="range"]) .disabled-read-only,
    select .disabled-read-only {
        color: var(--grey-light-1);
    }

    input:not([type="range"])::placeholder,
    select::placeholder {
        /* Firefox, Chrome, Opera */
        color: var(--grey);
        font-size: 16px;
        line-height: 22px;
    }

    input:not([type="range"]):-ms-input-placeholder,
    select:-ms-input-placeholder {
        /* Internet Explorer 10-11 */
        color: var(--grey);
        font-size: 16px;
        line-height: 22px;
    }

    input:not([type="range"])::-ms-input-placeholder,
    select::-ms-input-placeholder {
        /* Microsoft Edge */
        color: var(--grey);
        font-size: 16px;
        line-height: 22px;
    }

    input:not([type="range"]):focus::placeholder,
    select:focus::placeholder {
        /* Firefox, Chrome, Opera */
        color: var(--grey-light-1);
    }

    input:not([type="range"]):focus:-ms-input-placeholder,
    select:focus:-ms-input-placeholder {
        /* Internet Explorer 10-11 */
        color: var(--grey-light-1);
    }

    input:not([type="range"]):focus::-ms-input-placeholder,
    select:focus::-ms-input-placeholder {
        /* Microsoft Edge */
        color: var(--grey-light-1);
    }

    input:not([type="range"]).incl-icon,
    select.incl-icon {
        padding: 16px 16px 16px 48px;
    }

    input:not([type="range"]).small,
    select.small {
        height: 48px;
        font-size: 14px;
        padding: 16px;
    }

        input:not([type="range"]).small::placeholder,
        select.small::placeholder {
            /* Firefox, Chrome, Opera */
            font-size: 14px;
            line-height: 16px;
        }

        input:not([type="range"]).small:-ms-input-placeholder,
        select.small:-ms-input-placeholder {
            /* Internet Explorer 10-11 */
            font-size: 14px;
            line-height: 16px;
        }

        input:not([type="range"]).small::-ms-input-placeholder,
        select.small::-ms-input-placeholder {
            /* Microsoft Edge */
            font-size: 14px;
            line-height: 16px;
        }

    input:not([type="range"]):focus,
    input:not([type="range"]):active,
    select:focus,
    select:active {
        border-color: var(--blue);
    }

textarea {
    display: block;
    height: 144px;
    width: 100%;
    padding: 16px;
    border: 1px solid var(--grey-light-1);
    border-radius: 6px;
    position: relative;
    outline: 0;
    font-weight: 500;
    font-size: 14px;
    line-height: 22px;
    color: var(--black);
    resize: none;
    transition: border-color 0.2s ease-in;
}

    textarea::placeholder {
        /* Firefox, Chrome, Opera */
        color: var(--grey);
        font-weight: normal;
    }

    textarea:-ms-input-placeholder {
        /* Internet Explorer 10-11 */
        color: var(--grey);
        font-weight: normal;
    }

    textarea::-ms-input-placeholder {
        /* Microsoft Edge */
        color: var(--grey);
        font-weight: normal;
    }

    textarea.regular {
        font-weight: 400;
    }

    textarea.small {
        height: 72px;
    }

    textarea:hover {
        border-color: var(--grey);
    }

    textarea:focus,
    textarea:active {
        background-color: white !important;
        border-color: var(--blue);
    }

        textarea:focus::placeholder,
        textarea:active::placeholder {
            /* Firefox, Chrome, Opera */
            color: var(--grey-light-1);
        }

        textarea:focus:-ms-input-placeholder,
        textarea:active:-ms-input-placeholder {
            /* Internet Explorer 10-11 */
            color: var(--grey-light-1);
        }

        textarea:focus::-ms-input-placeholder,
        textarea:active::-ms-input-placeholder {
            /* Microsoft Edge */
            color: var(--grey-light-1);
        }

.form-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 24px;
    width: 100%;
}

    .form-group.center-group {
        justify-self: center;
    }

    .form-group .input-btn-group {
        display: grid;
        grid-template-columns: 1fr 120px;
        grid-gap: 16px;
    }

        .form-group .input-btn-group.fields2 {
            grid-template-columns: 0.5fr 0.5fr 88px;
        }

            .form-group .input-btn-group.fields2 :last-child {
                align-self: flex-end;
            }

        .form-group .input-btn-group button {
            width: 100%;
        }

    .form-group .bottom-block {
        position: absolute;
        margin: 4px 0 8px;
        color: var(--grey-dark-1);
        font-size: 12px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
    }

        .form-group .bottom-block.bold {
            color: var(--black);
        }

    .form-group.validated input,
    .form-group.validated textarea,
    .form-group.validated select,
    .form-group.validated .dx-tagbox.dx-texteditor.dx-editor-outlined,
    .form-group.has-error input,
    .form-group.has-error textarea,
    .form-group.has-error select,
    .form-group.has-error .dx-tagbox.dx-texteditor.dx-editor-outlined {
        border: 1px solid var(--green);
    }

        .form-group.validated .dx-tagbox.dx-texteditor.dx-editor-outlined input,
        .form-group.has-error .dx-tagbox.dx-texteditor.dx-editor-outlined input {
            border-color: transparent;
        }

    .form-group.validated .help-block,
    .form-group.has-error .help-block {
        font-size: 12px;
        text-align: left;
        margin: 4px 2px 8px;
        position: absolute;
    }

    .form-group.validated.dates-error .help-block,
    .form-group.has-error.dates-error .help-block {
        margin-top: 16px;
        text-align: center;
        width: 100%;
    }

    .form-group.validated input,
    .form-group.validated textarea,
    .form-group.validated select,
    .form-group.validated .dx-tagbox.dx-texteditor.dx-editor-outlined {
        border-color: var(--green);
    }

    .form-group.validated .help-block {
        color: var(--green);
    }

    .form-group.has-error input,
    .form-group.has-error textarea,
    .form-group.has-error select,
    .form-group.has-error .dx-tagbox.dx-texteditor.dx-editor-outlined {
        border-color: var(--red) !important;
    }

    .form-group.has-error .help-block {
        color: var(--red);
    }

    .form-group:focus-within .form-label,
    .form-group.focused .form-label {
        transform: translateY(0);
        top: 14px;
        font-size: 12px;
    }

    .form-group .form-label {
        font-family: Questrial;
        font-size: 16px;
        color: var(--grey-dark-1);
        position: absolute;
        left: 24px;
        top: 32px;
        transform: translateY(-50%);
        z-index: 10;
        transition: transform 200ms ease-out, font-size 200ms ease-out, top 200ms ease-out;
    }

    .form-group .show-icon,
    .form-group .hide-icon {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        margin: auto;
        right: 24px;
        vertical-align: middle;
        cursor: pointer;
        transition: 0.2s ease-out;
    }

    .form-group .label-group.inline > * {
        display: inline-block;
    }

    .form-group .label-group.inline .icon {
        font-size: 12px;
        margin-left: 8px;
    }

    .form-group .label-group.split-width {
        display: flex;
        justify-content: space-between;
    }

.radio-button-group {
    display: grid;
    grid-gap: 96px;
    grid-auto-flow: column;
    margin: 24px 0;
}

.custom-checkbox-container,
.custom-radio-container {
    line-height: 1;
}

    .custom-checkbox-container.standalone,
    .custom-radio-container.standalone {
        height: fit-content;
        display: flex;
        align-items: center;
        margin-top: 16px;
    }

        .custom-checkbox-container.standalone .checkbox-label,
        .custom-radio-container.standalone .checkbox-label {
            padding-left: 32px;
            position: relative;
        }

            .custom-checkbox-container.standalone .checkbox-label:before,
            .custom-radio-container.standalone .checkbox-label:before {
                position: absolute;
                left: 0;
            }

    .custom-checkbox-container .checkbox-label,
    .custom-checkbox-container .radio-btn-label,
    .custom-radio-container .checkbox-label,
    .custom-radio-container .radio-btn-label {
        position: relative;
        cursor: pointer;
        color: var(--black);
        font-size: 14px;
        line-height: 24px;
        margin: 0;
        text-align: left;
    }

        .custom-checkbox-container .radio-btn-label .radio-btn-label-image,
        .custom-radio-container .radio-btn-label .radio-btn-label-image {
            margin: 0 4px;
        }

    .custom-checkbox-container .checkbox-label,
    .custom-radio-container .checkbox-label {
        line-height: 24px;
    }

    .custom-radio-container.box-container {
        border: solid 1px var(--grey-light-1);
        padding: 16px;
        border-radius: 6px;
        box-sizing: border-box;
        margin-bottom: 16px;
    }

        .custom-radio-container.box-container label {
            width: 100%;
        }

            .custom-radio-container.box-container label .img-text-group * {
                display: inline-block;
                vertical-align: middle;
            }

    .custom-checkbox-container .checkbox-label:not(.m-0):before,
    .custom-checkbox-container .radio-btn-label:not(.m-0):before,
    .custom-radio-container .checkbox-label:not(.m-0):before,
    .custom-radio-container .radio-btn-label:not(.m-0):before {
        margin-right: 10px;
    }

    .custom-checkbox-container .checkbox-label:before,
    .custom-checkbox-container .radio-btn-label:before,
    .custom-radio-container .checkbox-label:before,
    .custom-radio-container .radio-btn-label:before {
        content: "";
        display: inline-block;
        vertical-align: middle;
        width: 24px;
        height: 24px;
        box-sizing: border-box;
        background: white;
        border: solid 1px var(--grey-light-1);
        transition: border-color 0.2s;
    }

    .custom-checkbox-container .checkbox-label:after,
    .custom-checkbox-container .radio-btn-label:after,
    .custom-radio-container .checkbox-label:after,
    .custom-radio-container .radio-btn-label:after {
        position: absolute;
    }

    .custom-checkbox-container .checkbox-label:hover:before,
    .custom-checkbox-container .radio-btn-label:hover:before,
    .custom-radio-container .checkbox-label:hover:before,
    .custom-radio-container .radio-btn-label:hover:before {
        border-color: var(--grey);
    }

    .custom-checkbox-container .radio-btn-label,
    .custom-radio-container .radio-btn-label {
        min-width: max-content;
    }

        .custom-checkbox-container .radio-btn-label > *,
        .custom-radio-container .radio-btn-label > * {
            display: inline-block;
            vertical-align: middle;
        }

        .custom-checkbox-container .radio-btn-label .logo,
        .custom-radio-container .radio-btn-label .logo {
            margin-left: 16px;
            height: 24px;
        }

        .custom-checkbox-container .radio-btn-label:before,
        .custom-radio-container .radio-btn-label:before {
            border-radius: 24px;
        }

        .custom-checkbox-container .radio-btn-label:after,
        .custom-radio-container .radio-btn-label:after {
            content: "";
            background-color: white;
            width: 6px;
            height: 6px;
            border-radius: 6px;
            border: solid 1px white;
            left: 8px;
            top: 0;
            bottom: 0;
            margin: auto;
        }

    .custom-checkbox-container .checkbox-label:before,
    .custom-radio-container .checkbox-label:before {
        border-radius: 4px;
    }

    .custom-checkbox-container .checkbox-label:after,
    .custom-radio-container .checkbox-label:after {
        content: "\f107";
        color: white;
        font-size: 12px;
        font-family: "fontcustom";
        left: 6px;
        top: 0;
    }

    .custom-checkbox-container .custom-checkbox,
    .custom-checkbox-container .custom-radio-btn,
    .custom-radio-container .custom-checkbox,
    .custom-radio-container .custom-radio-btn {
        cursor: pointer;
        display: none;
    }

        .custom-checkbox-container .custom-checkbox:checked + label:before,
        .custom-checkbox-container .custom-radio-btn:checked + label:before,
        .custom-radio-container .custom-checkbox:checked + label:before,
        .custom-radio-container .custom-radio-btn:checked + label:before {
            background-color: var(--blue);
            border-color: var(--blue);
        }

    .custom-checkbox-container.text-only .checkbox-label,
    .custom-radio-container.text-only .checkbox-label {
        color: var(--blue);
        font-weight: 700;
    }

        .custom-checkbox-container.text-only .checkbox-label:before,
        .custom-checkbox-container.text-only .checkbox-label:after,
        .custom-radio-container.text-only .checkbox-label:before,
        .custom-radio-container.text-only .checkbox-label:after {
            content: none;
        }

select.form-dropdown {
    -webkit-appearance: none;
    -moz-appearance: none;
    border: solid 1px var(--grey-light-1);
    border-radius: 6px;
    height: 48px;
    line-height: 2;
    display: grid;
    align-items: center;
    padding: 8px 16px;
    font-size: 14px;
    position: relative;
    background-image: url(/Content/v2/images/icons/chevron-down.svg);
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 12px;
    font-weight: 500;
    color: var(--black);
    transition: border-color 0.2s ease-in;
}

    select.form-dropdown.disabled-bg-chevron-down {
        background-image: url(/Content/v2/images/icons/chevron-down-grey.svg);
    }

    select.form-dropdown:hover {
        border-color: var(--grey);
    }

    select.form-dropdown.open {
        border: solid 1px var(--grey-light-2);
    }

@media screen and (max-width: 768px) {
    .radio-button-group {
        grid-auto-flow: row;
        grid-gap: 32px;
    }
}

#portal-card {
    grid-area: portal-card;
    text-align: center;
    color: var(--black);
    padding: 40px 16px;
    box-sizing: border-box;
    width: 384px;
    background-color: white;
    height: fit-content;
}

    #portal-card.sign-up-card {
        width: 472px;
    }

        #portal-card.sign-up-card .custom-checkbox-container:first-of-type {
            margin-top: 0;
        }

    #portal-card.forgot-password-card .label,
    #portal-card.resent-link-sent-card .label,
    #portal-card.reset-password-card .label {
        margin-bottom: 16px;
    }

    #portal-card.forgot-password-card,
    #portal-card.resent-link-sent-card,
    #portal-card.reset-password-card,
    #portal-card.reset-complete-card,
    #portal-card.reset-link-expired-card {
        width: 424px;
    }

        #portal-card.forgot-password-card .portal-form,
        #portal-card.resent-link-sent-card .portal-form,
        #portal-card.reset-password-card .portal-form,
        #portal-card.reset-complete-card .portal-form,
        #portal-card.reset-link-expired-card .portal-form {
            margin-bottom: 0;
        }

        #portal-card.forgot-password-card .label,
        #portal-card.resent-link-sent-card .label,
        #portal-card.reset-password-card .label,
        #portal-card.reset-complete-card .label,
        #portal-card.reset-link-expired-card .label {
            text-align: left;
        }

        #portal-card.forgot-password-card .user-email,
        #portal-card.resent-link-sent-card .user-email,
        #portal-card.reset-password-card .user-email,
        #portal-card.reset-complete-card .user-email,
        #portal-card.reset-link-expired-card .user-email {
            margin: 40px 0 16px;
        }

        #portal-card.resent-link-sent-card .portal-card-title,
        #portal-card.reset-password-card .portal-card-title,
        #portal-card.reset-complete-card .portal-card-title,
        #portal-card.reset-link-expired-card .portal-card-title {
            margin-bottom: 32px;
        }

    #portal-card .bottom-link {
        margin-top: 24px;
    }

        #portal-card .bottom-link:not(.split-width) {
            text-align: center;
        }

        #portal-card .bottom-link.split-width {
            justify-content: space-between;
            grid-template-columns: unset;
            grid-auto-flow: column;
        }

        #portal-card .bottom-link .link .icon {
            font-size: 16px;
            margin-right: 8px;
        }

    #portal-card .homepage-link {
        grid-area: homepage-link;
        color: var(--black);
        font-size: 14px;
        margin-bottom: 40px;
        height: 24px;
    }

        #portal-card .homepage-link .logo {
            height: 24px;
        }

        #portal-card .homepage-link .logo,
        #portal-card .homepage-link .website-url {
            display: inline-block;
            vertical-align: middle;
        }

        #portal-card .homepage-link .website-url {
            padding: 0 8px;
        }

    #portal-card .portal-card-title {
        font-family: "Questrial";
        font-weight: normal;
        font-size: 20px;
        line-height: 24px;
        color: var(--grey-dark-2);
    }

    #portal-card h1 {
        font-weight: 900;
        font-size: 32px;
        line-height: 34px;
        margin: 0;
    }

    #portal-card h2 {
        font-weight: 900;
        font-size: 24px;
        line-height: 40px;
        color: #ffffff;
    }

    #portal-card .btn {
        width: 100%;
        margin: 24px 0 0;
    }

    #portal-card .portal-form {
        margin: 32px 0 24px;
    }

        #portal-card .portal-form.login-form .split-half .checkboxes-container {
            justify-self: flex-start;
        }

        #portal-card .portal-form .login-btn.loading {
            background-color: var(--blue-dark-1);
            pointer-events: none;
        }

        #portal-card .portal-form .forgot-password {
            text-align: right;
            font-size: 14px;
        }

    #portal-card .login-type-divider {
        font-size: 14px;
        font-family: Questrial;
        color: var(--grey-dark-2);
        margin: 24px 0;
    }

        #portal-card .login-type-divider p {
            width: 272px;
            margin: 0 auto;
            position: relative;
        }

            #portal-card .login-type-divider p::before,
            #portal-card .login-type-divider p::after {
                content: "";
                height: 1px;
                position: absolute;
                width: 72px;
                background-color: var(--grey-light-1);
                top: 0;
                bottom: 0;
                margin: auto;
            }

            #portal-card .login-type-divider p::before {
                left: 0;
            }

            #portal-card .login-type-divider p::after {
                right: 0;
            }

    #portal-card .portal-link {
        padding: 40px 0 0;
        text-align: left;
    }

        #portal-card .portal-link:before {
            content: "";
            display: inline-block;
            position: absolute;
            width: 100%;
            left: 0;
            margin-top: -40px;
            height: 1px;
            background-color: var(--grey-light-1);
        }

        #portal-card .portal-link .link {
            font-size: 14px;
            line-height: 16px;
            margin-left: 8px;
        }

    #portal-card .footer-note {
        margin: 24px 0 0;
        text-align: left;
    }

@media screen and (max-width: 768px) {
    #portal-card {
        height: fit-content;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 100% !important;
    }

        #portal-card .footer-note {
            margin: 24px 0;
        }
}

@media screen and (min-width: 768px) {
    #portal-card {
        width: 384px;
        margin: 0 80px 0 96px;
        border-radius: 12px;
        padding: 32px;
    }

        #portal-card .portal-link {
            display: none;
        }

        #portal-card .footer-note {
            text-align: center;
        }

        #portal-card .portal-form {
            margin: 32px 0 24px;
        }

            #portal-card .portal-form.login-form {
                margin-bottom: 0;
            }
}

.btn {
    border: none;
    font-family: Roboto;
    border-radius: 6px;
    outline: none !important;
    min-width: 320px;
    min-height: 56px;
    line-height: 1;
    font-size: 16px;
    text-align: center;
    font-weight: 700;
    text-transform: initial !important;
    outline: none !important;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
    box-sizing: border-box;
}

    .btn * {
        display: inline-block;
        vertical-align: middle;
    }

    .btn > .icon + p {
        margin-left: 8px;
    }

    .btn .btn-loader {
        width: 48px;
        height: 48px;
    }

    .btn.incl-total {
        line-height: 21px;
    }

        .btn.incl-total span {
            vertical-align: middle;
            display: inline-block;
            margin-left: 8px;
            line-height: 20px;
        }

    .btn.btn-refresh.rotate .icon {
        animation: spin 2s linear infinite;
        transform-origin: 50% 50%;
    }

    .btn.incl-icon .icon {
        margin-right: 8px;
    }

    .btn.btn-regular {
        min-width: 152px;
        width: fit-content;
        height: 56px;
        font-size: 14px;
        line-height: 16px;
    }

        .btn.btn-regular.small {
            min-height: 48px;
            height: 48px;
            min-width: 124px;
        }

    .btn.primary-btn {
        background-color: var(--blue);
        color: white;
        padding: 16px;
    }

        .btn.primary-btn:not(.no-shadow):not(:disabled):not(.clickable-disabled) {
            box-shadow: 0px 1px 2px rgba(177, 194, 207, 0.5);
        }

        .btn.primary-btn:hover {
            background-color: var(--blue-dark-1);
        }

        .btn.primary-btn.red:not([disabled]) {
            background-color: var(--red);
        }

            .btn.primary-btn.red:not([disabled]):hover {
                background-color: var(--red-dark-1);
            }

        .btn.primary-btn > a {
            color: white;
        }

            .btn.primary-btn > a > .icon + p {
                margin-left: 8px;
            }

    .btn.secondary-btn {
        outline: none !important;
        border: solid 2px var(--grey-light-1);
        color: var(--grey-dark-2);
        background-color: transparent;
    }

        .btn.secondary-btn:hover {
            color: var(--black);
            border-color: var(--black);
        }

    .btn.total-ticket-qty {
        min-width: unset;
    }

        .btn.total-ticket-qty > * {
            vertical-align: top;
            display: inline-block;
        }

        .btn.total-ticket-qty .icon {
            margin-right: 8px;
        }

    .btn.paypal-btn {
        color: white;
        background-color: #00457c;
    }

        .btn.paypal-btn .logo {
            display: inline-block;
            vertical-align: middle;
            height: 18px;
            margin-left: 8px;
        }

    .btn.white-outline {
        background-color: transparent;
        border-radius: 6px;
        min-width: 168px;
        width: 168px;
        height: 48px;
        line-height: 36px;
        border: solid 2px rgba(255, 255, 255, 0.5);
        padding: 8px 36px;
        box-sizing: border-box;
        display: inline-block;
        margin-right: 24px;
    }

        .btn.white-outline a {
            color: white;
            font-size: 14px;
            text-decoration: none;
            line-height: 36px;
        }

        .btn.white-outline:hover {
            background-color: white;
        }

            .btn.white-outline:hover a {
                color: var(--black);
            }

    .btn.overlay-button {
        position: absolute;
        left: 16px;
        top: 16px;
        width: 40px;
        height: 40px;
        border-radius: 4px;
        padding: 0;
        box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
        background-color: white;
    }

    .btn.btn-medium {
        width: 168px;
    }

    .btn.btn-small {
        min-width: 132px;
        min-height: 56px;
        font-size: 16px;
        font-weight: 700;
        line-height: 16px;
        padding: 16px 24px;
    }

    .btn.btn-x-small {
        width: fit-content;
        min-width: fit-content;
        min-height: 48px;
        font-size: 14px;
        line-height: 16px;
        padding: 16px 24px;
        font-weight: 700;
    }

    .btn.btn-large {
        height: 64px;
    }

    .btn.full-width {
        width: 100%;
    }

    .btn.center {
        margin: 0 auto;
        display: block;
    }

    .btn:disabled {
        border: 1px solid var(--grey-light-3);
        background-color: var(--grey-light-3);
        color: var(--grey);
        pointer-events: none;
        box-shadow: none;
        opacity: 1;
    }

    .btn.clickable-disabled {
        border: 1px solid var(--grey-light-3);
        background-color: var(--grey-light-3);
        color: var(--grey);
        box-shadow: none;
        opacity: 1;
    }

        .btn.clickable-disabled:hover {
            background-color: var(--grey-light-3);
        }

    .btn.disabled {
        background-color: var(--grey-light-2) !important;
    }

        .btn.disabled:not(.btn-refresh) {
            border: 1px solid var(--grey-light-2) !important;
        }

    .btn:hover {
        cursor: pointer;
    }

    .btn.active {
        background-color: var(--grey-light-2);
        color: var(--grey);
        outline: none;
        box-shadow: none !important;
    }

    .btn.activated {
        background-color: var(--grey-light-3);
        color: var(--green);
        font-size: 18px;
        outline: none;
        box-shadow: none !important;
        pointer-events: none;
    }

    .btn:active,
    .btn.loading {
        box-shadow: none !important;
    }

    .btn.loading {
        font-size: 0 !important;
        padding: 0 !important;
        pointer-events: none;
    }

.scroll-btn {
    cursor: pointer;
    background-color: white;
    color: var(--black);
    width: 40px;
    height: 40px;
    border-radius: 32px;
    text-align: center;
    line-height: 32px;
    box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
}

    .scroll-btn .icon {
        font-size: 18px;
        line-height: 40px;
        display: inline-block;
    }

div.btn {
    line-height: 50px;
}

    div.btn p {
        line-height: 1;
    }

a.btn.white-outline {
    color: white;
    font-size: 14px;
    text-decoration: none;
    line-height: 28px;
}

    a.btn.white-outline:hover {
        color: var(--black);
    }

.action-btn {
    height: 56px;
    font-size: 16px;
    background: #ffffff;
    box-shadow: 0px 1px 2px rgba(177, 194, 207, 0.5);
    border-radius: 6px;
    color: var(--grey-dark-2);
    padding: 20px 16px;
}

    .action-btn p {
        font-size: 14px;
    }

    .action-btn.loading {
        padding: 0 16px;
    }

        .action-btn.loading .btn-loader {
            filter: brightness(0);
        }

    .action-btn.small {
        padding: 8px;
        height: 56px;
        width: 56px;
    }

    .action-btn.medium {
        padding: 8px;
        height: 56px;
        width: 114px;
        line-height: 36px;
    }

.slider-btn {
    background: #ffffff !important;
    padding: 16px;
    color: var(--black) !important;
    border: none;
    outline: none;
    cursor: pointer;
    font-family: Roboto;
    box-sizing: border-box;
    box-shadow: none;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 99;
    transition: all 0.2s ease-in-out;
    min-width: unset;
}

    .slider-btn .icon {
        color: var(--black);
    }

    .slider-btn.cards-slider-btn {
        width: 56px;
        height: 88px;
        font-size: 16px;
        box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 4px;
        visibility: hidden;
        opacity: 0;
    }

        .slider-btn.cards-slider-btn.prev-arrow {
            left: -28px;
        }

        .slider-btn.cards-slider-btn.next-arrow {
            right: -28px;
        }

        .slider-btn.cards-slider-btn:hover.prev-arrow {
            padding-right: 24px;
            width: 64px;
            left: -36px;
        }

        .slider-btn.cards-slider-btn:hover.next-arrow {
            padding-left: 24px;
            width: 64px;
            right: -36px;
        }

    .slider-btn.slick-arrow {
        width: 56px;
        height: 56px;
        font-size: 24px;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        z-index: 10;
        transition: all 0.2s ease-in-out;
        box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
        visibility: hidden;
        opacity: 0;
        transform: none;
    }

        .slider-btn.slick-arrow.slick-prev {
            left: -56px;
            border-radius: 0px 4px 4px 0px;
        }

        .slider-btn.slick-arrow.slick-next {
            right: -56px;
            border-radius: 4px 0px 0px 4px;
        }

            .slider-btn.slick-arrow.slick-prev:before,
            .slider-btn.slick-arrow.slick-next:before {
                display: none;
            }

        .slider-btn.slick-arrow:hover {
            width: 64px;
        }

            .slider-btn.slick-arrow:hover.slick-prev {
                left: 0;
                padding-left: 8px;
            }

            .slider-btn.slick-arrow:hover.slick-next {
                right: 0;
                padding-right: 8px;
            }

        .slider-btn.slick-arrow.slick-disabled {
            display: none !important;
        }

.dropdown-btn {
    background: #ffffff;
    border: 1px solid var(--grey-light-1);
    box-sizing: border-box;
    border-radius: 6px;
    height: 56px;
    padding: 16px;
    cursor: pointer;
}

    .dropdown-btn .icon,
    .dropdown-btn p {
        font-weight: 500;
        font-size: 16px;
        line-height: 19px;
        color: var(--grey-dark-2);
        display: inline-block;
        vertical-align: middle;
    }

    .dropdown-btn .icon {
        margin-right: 16px;
    }

    .dropdown-btn:hover {
        border-color: var(--grey);
    }

    .dropdown-btn.focused {
        border-color: var(--blue);
    }

/* General styles for the modal */
/* 
Styles for the html/body for special modal where we want 3d effects
Note that we need a container wrapping all content on the page for the 
perspective effects (not including the modals and the overlay).
*/
.modal-container {
    font-family: "Questrial";
    background-color: white;
    padding: 32px 24px 24px;
    overflow: hidden;
}

    .modal-container .modal-img {
        width: 100%;
        margin: 24px 0;
    }

    .modal-container .form-group {
        width: 100%;
    }

    .modal-container .modal-info-header {
        position: relative;
    }

        .modal-container .modal-info-header .page-title {
            padding-bottom: 32px;
            line-height: 40px;
            font-weight: normal;
        }

        .modal-container .modal-info-header > .close-icon {
            position: absolute;
            right: 0;
            top: 0;
        }

    .modal-container .modal-paragraph {
        font-size: 16px;
        color: var(--grey-dark-1);
        line-height: 26px;
        padding-bottom: 16px;
    }

    .modal-container h3 {
        padding: 16px 0;
        margin: 0;
        font-size: 16px;
        color: var(--grey-dark-2);
    }

    .modal-container .panel-buttons-group {
        display: grid;
        justify-content: flex-end;
        margin-top: 24px;
        grid-auto-flow: column;
        grid-gap: 24px;
    }

        .modal-container .panel-buttons-group.split-width {
            display: flex;
            justify-content: space-between;
        }

.md-perspective,
.md-perspective body {
    height: 100%;
    overflow: hidden;
}

    .md-perspective body {
        background: #222;
        -webkit-perspective: 600px;
        -moz-perspective: 600px;
        perspective: 600px;
    }

.md-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 540px;
    min-width: 320px;
    height: fit-content;
    z-index: 99999999999;
    border-radius: 12px;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    /* Modal Types */
    /* End Modal Types */
}

    .md-modal.w-open-nav {
        left: 96px;
    }

@media screen and (min-width: 1160px) {
    .md-modal.w-open-nav {
        left: 256px;
    }
}

.md-modal.cancel-modal {
    height: fit-content;
    box-shadow: 0px 2px 20px rgba(60, 72, 78, 0.2);
}

    .md-modal.cancel-modal.status-screen-container {
        width: 380px;
    }

.md-modal.alert-modal {
    display: flex;
    flex-direction: column;
}

    .md-modal.alert-modal .alert-text {
        margin-bottom: 24px;
    }

    .md-modal.alert-modal button {
        align-self: flex-end;
    }

.md-modal.welcome-modal {
    text-align: left;
}

    .md-modal.welcome-modal .panel-buttons-group {
        display: grid;
        grid-gap: 16px;
        justify-content: unset;
        grid-template-columns: repeat(2, 1fr);
    }

        .md-modal.welcome-modal .panel-buttons-group button {
            width: 100%;
        }

.md-modal.form-modal {
    transform: none;
    max-height: 715px;
    padding-bottom: 96px;
}

    .md-modal.form-modal .modal-body {
        overflow-y: scroll;
        max-height: 544px;
    }

    .md-modal.form-modal .footer-group {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 96px;
        background-color: white;
        padding: 24px;
        margin: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

        .md-modal.form-modal .footer-group .panel-buttons-group {
            margin-top: 0;
        }

.md-modal.text-modal .modal-info-header {
    padding: 0;
}

.md-modal.text-modal .list-container {
    margin-left: 16px;
}

    .md-modal.text-modal .list-container li {
        line-height: 20px;
    }

.md-modal.text-modal .modal-body {
    max-height: 480px;
    overflow: scroll;
}

    .md-modal.text-modal .modal-body .row-subheading {
        margin-bottom: 16px;
    }

.md-modal.text-modal.change-location-modal #map_canvas {
    height: 280px;
}

.md-modal.media-modal {
    background-color: transparent;
    padding: 0;
    border-radius: 0;
    width: fit-content;
    height: fit-content;
    overflow: visible;
}

    .md-modal.media-modal .media-container {
        box-shadow: 1px 1px 24px rgba(0, 0, 0, 0.7);
    }

    .md-modal.media-modal.poster-preview-modal {
        height: calc(100% - 160px);
    }

        .md-modal.media-modal.poster-preview-modal * {
            height: 100%;
        }

        .md-modal.media-modal.poster-preview-modal .image-container {
            width: fit-content;
        }

.md-modal.landscape {
    width: 90%;
}

.md-modal.confirm-modal.delete-event .event-details {
    color: var(--black);
    font-family: "Roboto";
    font-weight: 700;
}

    .md-modal.confirm-modal.delete-event .event-details .event-poster-thumbnail {
        background-color: var(--grey-light-3);
        width: 40px;
        height: 40px;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        display: inline-block;
        vertical-align: middle;
        margin-right: 16px;
        border-radius: 4px;
    }

.md-modal.form-modal .page-title,
.md-modal.confirm-modal .page-title {
    margin-bottom: 0;
}

.md-modal.terms-modal {
    width: 720px;
    height: 680px;
}

    .md-modal.terms-modal .page-title {
        padding-bottom: 24px;
    }

    .md-modal.terms-modal .modal-sub-heading {
        font-family: Questrial;
        color: var(--grey-dark-1);
    }

        .md-modal.terms-modal .modal-sub-heading .divider {
            color: var(--grey-light-1);
        }

    .md-modal.terms-modal .panel-buttons-group {
        margin-top: 32px;
    }

    .md-modal.terms-modal
    .custom-checkbox-container.accept-terms-checkbox
    .checkbox-label {
        font-size: 16px;
    }

.md-show {
    visibility: visible;
}

.md-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    visibility: hidden;
    top: 0;
    left: 0;
    z-index: 9999999 !important;
    background-color: var(--black);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

    .md-overlay.below {
        z-index: 1 !important;
    }

    .md-overlay.open {
        visibility: visible;
        opacity: 0.7;
    }

        .md-overlay.open.dark {
            opacity: 0.9;
        }

    .md-overlay.includes-close .icon-close {
        position: absolute;
        right: 24px;
        top: 24px;
        opacity: 0.2;
        color: white;
        cursor: pointer;
        transition: all 0.3s;
        font-size: 32px;
    }

        .md-overlay.includes-close .icon-close:hover {
            opacity: 1;
        }

    .md-overlay:not(.includes-close) .icon-close {
        display: none;
    }

/* Individual modal styles with animations/transitions */
/* Effect 1: Fade in and scale up */
.md-effect-1 {
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.md-show.md-effect-1 {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

/* Effect 2: Slide from the right */
.md-effect-2 {
    -webkit-transform: translateX(60%);
    -moz-transform: translateX(60%);
    -ms-transform: translateX(60%);
    transform: translateX(60%);
    opacity: 0;
    -webkit-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
    -moz-transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
    transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.md-show.md-effect-2 {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
}

/* Effect 3: Slide from the bottom */
.md-effect-3 {
    -webkit-transform: translateY(20%);
    -moz-transform: translateY(20%);
    -ms-transform: translateY(20%);
    transform: translateY(20%);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.md-show.md-effect-3 {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

/* Effect 5: fall */
.md-effect-5.md-modal {
    -webkit-perspective: 1300px;
    -moz-perspective: 1300px;
    perspective: 1300px;
}

.md-effect-5 .md-content {
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform: translateZ(600px) rotateX(20deg);
    -moz-transform: translateZ(600px) rotateX(20deg);
    -ms-transform: translateZ(600px) rotateX(20deg);
    transform: translateZ(600px) rotateX(20deg);
    opacity: 0;
}

.md-show.md-effect-5 .md-content {
    -webkit-transition: all 0.3s ease-in;
    -moz-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
    -webkit-transform: translateZ(0px) rotateX(0deg);
    -moz-transform: translateZ(0px) rotateX(0deg);
    -ms-transform: translateZ(0px) rotateX(0deg);
    transform: translateZ(0px) rotateX(0deg);
    opacity: 1;
}

/* Effect 7:  slide and stick to top */
.md-effect-7 {
    top: 0;
    bottom: auto;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.md-effect-7 {
    -webkit-transform: translateY(-200%);
    -moz-transform: translateY(-200%);
    -ms-transform: translateY(-200%);
    transform: translateY(-200%);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
}

.md-show.md-effect-7 {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
    border-radius: 0 0 6px 6px;
    opacity: 1;
}

/* Effect 11: Super scaled */
.md-effect-11 {
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    transform: scale(2);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.md-show.md-effect-11 {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

/* Effect 12:  Just me */
.md-effect-12 .md-content {
    -webkit-transform: scale(0.8);
    -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

    .md-effect-12 .md-content h3,
    .md-effect-12 .md-content {
        background: transparent;
    }

.md-show.md-effect-12 .md-content {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}

/* Effect 16:  Blur */
.md-show.md-effect-16 ~ .md-overlay {
    background: rgba(180, 46, 32, 0.5);
}

.md-show.md-effect-16 ~ .container {
    -webkit-filter: blur(3px);
    -moz-filter: blur(3px);
    filter: blur(3px);
}

.md-effect-16 .md-content {
    -webkit-transform: translateY(-5%);
    -moz-transform: translateY(-5%);
    -ms-transform: translateY(-5%);
    transform: translateY(-5%);
    opacity: 0;
}

.md-show.md-effect-16 ~ .container,
.md-effect-16 .md-content {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.md-show.md-effect-16 .md-content {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

/*Mobile styles */
@media screen and (max-width: 768px) {
    .md-overlay.includes-close .icon-close {
        right: 16px;
        top: 16px;
    }

    .modal-container {
        padding: 16px;
    }

        .modal-container .panel-buttons-group {
            justify-content: space-between;
        }

    .md-modal .modal-info-header .page-title {
        padding-bottom: 24px;
    }

    .md-modal .panel-buttons-group {
        justify-content: flex-end;
    }

    .md-modal.text-modal,
    .md-modal.form-modal {
        left: 0;
        top: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        border-radius: 0;
    }

    .md-modal.w-open-nav {
        left: 0;
    }

    .md-modal.text-modal .modal-body {
        max-height: calc(100% - 64px);
    }

    .md-modal.text-modal.booking-fee-modal {
        overflow: auto;
    }

    .md-modal.terms-modal {
        margin: 16px auto;
        height: calc(100% - 32px);
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

        .md-modal.terms-modal .terms {
            max-height: 324px;
        }

        .md-modal.terms-modal .custom-checkbox-container {
            height: inherit;
        }

    .md-modal.alert-modal {
        height: fit-content;
    }

    .md-modal.welcome-modal,
    .md-modal.alert-modal,
    .md-modal.terms-modal,
    .md-modal.confirm-modal {
        width: 94%;
    }

    .md-modal.media-player-modal iframe {
        width: 100%;
    }

    .md-modal.media-modal.poster-preview-modal {
        height: fit-content;
    }

        .md-modal.media-modal.poster-preview-modal * {
            width: 100%;
            height: auto;
        }
}

.time-slot {
    background: var(--grey-light-3);
    border: 1px solid var(--grey-light-1);
    border-radius: 8px;
    height: fit-content;
    overflow: hidden;
    text-align: center;
    cursor: pointer;
}

    .time-slot .date-container {
        background-color: white;
        padding: 16px;
    }

        .time-slot .date-container .month {
            text-transform: uppercase;
            color: var(--red);
            font-size: 14px;
            line-height: 16px;
            font-weight: 700;
        }

        .time-slot .date-container .date {
            font-family: "Roboto";
            font-weight: 900;
            font-size: 20px;
            line-height: 24px;
            color: var(--grey-dark-2);
            margin: 4px 0;
        }

        .time-slot .date-container .weekday {
            font-family: "Questrial";
            font-size: 14px;
            line-height: 16px;
            color: var(--grey-dark-1);
        }

    .time-slot .time-container {
        font-family: "Roboto";
        font-weight: 700;
        font-size: 14px;
        line-height: 16px;
        color: var(--grey-dark-2);
        padding: 8px 16px;
    }

    .time-slot .date-container,
    .time-slot .time-container {
        box-sizing: border-box;
    }

    .time-slot.selected {
        border: solid 2px var(--blue);
    }

        .time-slot.selected .time-container {
            background-color: var(--blue);
            color: white;
        }

    .time-slot.disabled {
        pointer-events: none;
        border-color: var(--grey-light-3);
    }

        .time-slot.disabled .time-container,
        .time-slot.disabled .date-container {
            background-color: var(--grey-light-3);
        }

            .time-slot.disabled .date-container > * {
                color: var(--grey);
            }

        .time-slot.disabled .time-container {
            color: var(--grey);
        }

    .time-slot:hover:not(.selected) {
        border-color: var(--grey);
        box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
    }

@media screen and (min-width: 768px) {
    .time-slot {
        width: 96px;
        margin-right: 16px;
    }
}

#calendar-panel {
    padding: 0;
}

    #calendar-panel .cal-month-day.cal-day-inmonth.sold-out {
        background-color: unset;
        color: var(--grey-light-1);
        pointer-events: none;
    }

        #calendar-panel
        .cal-month-day.cal-day-inmonth.sold-out
        .cal-month-day
        span[data-cal-date] {
            color: var(--grey-light-1);
        }

    #calendar-panel .timeslots-container {
        min-width: 224px;
        max-width: 360px;
        /*this should only be added to the time slots component but it currently doesnt have any other classes */
        padding: 24px 16px 16px;
        border: solid 1px var(--grey-light-1);
        border-radius: 8px;
        margin-left: 8px;
        background-color: var(--grey-light-3);
        width: fit-content;
        max-height: 459px;
        overflow-y: scroll;
    }

    #calendar-panel .timeslots-group {
        margin: 0;
    }

    #calendar-panel .timeslots-container,
    #calendar-panel .schedulecalendarwrapper {
        display: inline-block;
        vertical-align: top;
    }

    #calendar-panel .schedulecalendarwrapper {
        max-width: 42rem;
        min-width: 376px;
        width: 100%;
        margin: 0;
        border: solid 1px var(--grey-light-1);
        border-radius: 8px;
    }

    #calendar-panel .calendar-title-wrapper > * {
        display: inline-block;
        vertical-align: middle;
        border: none;
    }

    #calendar-panel .calendar-title-wrapper {
        width: 100%;
        margin: 0 auto;
    }

        #calendar-panel .calendar-title-wrapper.row {
            margin-bottom: 0;
        }

    #calendar-panel .schedulecalendartitle {
        /* This div need to be split into 2 - month and year. */
        font-family: "Roboto";
        font-style: normal;
        font-size: 20px;
        line-height: 24px;
        text-align: center;
        color: var(--grey-dark-2);
        border-radius: 8px;
        width: calc(100% - 132px);
        padding-top: 0;
    }

        #calendar-panel .schedulecalendartitle .month {
            color: #f95a61;
            /* var(--red) */
            font-weight: bold;
            text-transform: uppercase;
        }

    #calendar-panel .schedulecalendarcontainer .cal-row-head .cal-cell1 {
        /*  The weekdays need to be shortened to just 3 charcters eg. MON, TUES etc    */
        font-family: "Questrial";
        font-style: normal;
        font-weight: normal;
        font-size: 14px;
        line-height: 16px;
        text-align: center;
        /* grey-dark-1 */
        color: #819197;
        margin: 0;
        width: unset;
        max-width: 14.28%;
        padding: 8px;
        flex: 0 0 14.28%;
        flex-direction: column;
    }

    #calendar-panel .schedulecalendarcontainer.cal-context {
        margin-top: 0;
    }

    #calendar-panel .cal-row-fluid.cal-row-head {
        margin: 24px auto 8px;
        width: 100%;
        border-bottom: solid 1px #ecf2f6;
        /* var(--grey-light-2) */
        display: flex;
        flex-wrap: wrap;
    }

    #calendar-panel .cal-month-box {
        border: none;
        max-width: 42rem;
        width: 100%;
        margin: 0 auto;
    }

        #calendar-panel .cal-month-box [class*="cal-cell"] {
            border: none;
            height: 40px;
            min-height: unset;
            text-align: center;
            line-height: 40px;
            margin: 0;
            display: flex;
            max-width: 14.28%;
            flex: 0 0 14.28%;
            flex-direction: column;
            align-items: center;
            width: unset;
        }

        #calendar-panel .cal-month-box .cal-row-fluid {
            border: none;
            margin-bottom: 8px;
            display: flex;
            flex-wrap: wrap;
        }

    #calendar-panel .cal-month-day span.pull-right {
        margin: 0;
        width: 100%;
        height: 100%;
    }

    #calendar-panel .cal-month-day {
        height: 40px;
        width: 40px;
        border-radius: 40px;
    }

        #calendar-panel .cal-month-day:not(.sold-out) {
            cursor: pointer;
        }

        #calendar-panel .cal-month-day span[data-cal-date] {
            font-family: "Roboto";
            font-style: normal;
            font-weight: bold;
            font-size: 16px;
            line-height: 40px;
            text-align: center;
            color: #3c484e;
            opacity: 1;
        }

        #calendar-panel .cal-month-day.cal-day-today {
            /* blue */
            background: #008eff;
            border-radius: 40px;
            color: white;
        }

    #calendar-panel .cal-month-box .cal-day-today span[data-cal-date] {
        font-size: unset;
        color: white;
    }

    #calendar-panel .cal-month-day .cal-day-today {
        /* blue */
        background: #008eff;
        border-radius: 40px;
        color: white;
    }

    #calendar-panel .cal-month-day.selected span[data-cal-date] {
        color: white;
    }

    #calendar-panel .cal-month-day.previous-month span[data-cal-date] {
        color: #d9e3ea;
    }

    #calendar-panel .previousmonthbutton:disabled,
    #calendar-panel .nextmonthbutton:disabled {
        opacity: 1;
        color: var(--grey-light-1);
        pointer-events: none;
    }

    #calendar-panel .previousmonthbutton,
    #calendar-panel .nextmonthbutton {
        cursor: pointer;
        width: 60px;
        height: 32px;
        background-color: transparent;
        outline: none;
        border: none;
    }

    #calendar-panel button.nextmonthbutton.pull-right:hover {
        background-color: var(--grey-light-3);
        border-radius: 16px;
    }

    #calendar-panel .cal-event-list.cal-event-list-main {
        margin-top: 8px;
    }

    #calendar-panel a.btn.btn-xs.btn-shedule-time {
        height: 32px;
        background: #ffffff;
        box-shadow: 0px 1px 2px rgba(60, 72, 78, 0.08), 0px 0px 2px rgba(60, 72, 78, 0.02);
        border-radius: 40px;
        font-family: "Roboto";
        font-style: normal;
        font-weight: 600;
        font-size: 14px;
        line-height: 16px;
        text-align: center;
        display: inline-block;
        min-width: unset;
        width: 72px;
        min-height: unset;
        padding: 8px 16px;
        color: var(--grey-dark-2);
        margin: 8px 2px;
        position: relative;
    }

        #calendar-panel a.btn.btn-xs.btn-shedule-time:hover:not(.selected) {
            color: var(--black);
            box-shadow: 0px 1px 2px rgba(60, 72, 78, 0.06), 0px 2px 6px rgba(60, 72, 78, 0.1);
        }

        #calendar-panel a.btn.btn-xs.btn-shedule-time.selected {
            background-color: #008eff;
            color: white;
            box-shadow: none;
        }

    #calendar-panel .schedulecalendar-day-times {
        width: 100%;
        border: none;
        margin: 0;
        float: none;
    }

    #calendar-panel a.btn.btn-xs.btn-shedule-time.disabled {
        /* grey-light-2 */
        background-color: #ecf2f6;
        opacity: 1;
        /* grey */
        color: #b1c2cf;
        pointer-events: none;
        box-shadow: none;
    }

    #calendar-panel a.btn.btn-xs.btn-shedule-time.sold-out {
        /* grey-light-1 */
        color: #d9e3ea;
        pointer-events: none;
        box-shadow: none;
        background-color: #ecf2f6;
        opacity: 1;
    }

    #calendar-panel .calendardaydisabled {
        pointer-events: none;
    }

        #calendar-panel .calendardaydisabled span[data-cal-date] {
            /* grey-light-1 */
            color: #d9e3ea;
        }

    #calendar-panel p.time-slots-label {
        margin-bottom: 16px;
        padding: 0 8px;
        font-family: "Roboto";
        font-style: normal;
        font-weight: normal;
        font-size: 14px;
        line-height: 20px;
        display: flex;
        align-items: center;
        /* grey-dark-1 */
        color: #819197;
    }

    #calendar-panel .sh-event-schedule-label {
        font-family: "Questrial";
        font-weight: normal;
        font-size: 14px;
        line-height: 14px;
        color: var(--grey-dark-1);
        margin: 8px 4px;
    }

    #calendar-panel span.sh-event-schedule-label.schedule-label-choose-time {
        display: none;
    }

    #calendar-panel .cal-row-fluid:hover {
        background-color: transparent;
    }

    #calendar-panel .cal-cell1.cal-cell {
        border-radius: 40px;
        position: relative;
        margin: 0;
    }

        #calendar-panel .cal-cell1.cal-cell:hover {
            background-color: transparent;
        }

    #calendar-panel .cal-month-day.has-events:after {
        content: "";
        /* blue */
        background: #008eff;
        border-radius: 4px;
        width: 4px;
        height: 4px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 4px;
        margin: auto;
    }

    #calendar-panel .cal-month-day.few-remaining:after {
        content: "";
        /* orange */
        background: #ffb36e;
        border-radius: 4px;
        width: 4px;
        height: 4px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 4px;
        margin: auto;
    }

    #calendar-panel a.btn.btn-xs.btn-shedule-time.few-remaining:after {
        content: "";
        /* orange */
        background: #ffb36e;
        border-radius: 4px;
        width: 4px;
        height: 4px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 3px;
        margin: auto;
    }

    #calendar-panel .cal-month-day.cal-day-today.few-remaining:after {
        background: var(--blue);
    }

    #calendar-panel .cal-month-day.sold-out:after {
        content: "";
        /* red */
        background: #f95a61;
        border-radius: 4px;
        width: 4px;
        height: 4px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 4px;
        margin: auto;
    }

    #calendar-panel a.btn.btn-xs.btn-shedule-time.sold-out::after {
        content: "Sold out";
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        color: lightgrey;
        font-family: "Roboto";
        font-weight: 900;
        font-size: 10px;
        line-height: 16px;
        text-align: center;
        /* red */
        color: #f95a61;
        bottom: 3px;
    }

    #calendar-panel
    .cal-cell1.cal-cell:hover
    .cal-month-day:not(.calendardaydisabled):not(.sold-out):not(.cal-day-today) {
        background-color: #f5f8fa;
        color: var(--black);
    }

    #calendar-panel .cal-month-day span[data-cal-date].previous-month {
        color: var(--grey-light-1);
    }

    #calendar-panel .cal-event-list-main .row.show {
        margin: 0;
    }

    #calendar-panel .row {
        margin: 0 auto;
    }

    #calendar-panel .calendar-legend {
        background: var(--grey-light-3);
        border-radius: 4px;
        padding: 8px 24px;
        display: grid;
        grid-gap: 16px;
        grid-auto-flow: column;
        margin-top: 24px;
    }

        #calendar-panel .calendar-legend .legend-group {
            font-family: "Roboto";
            font-weight: normal;
            font-size: 12px;
            line-height: 16px;
            color: var(--grey-dark-2);
        }

            #calendar-panel .calendar-legend .legend-group.available:before {
                background-color: #008eff;
            }

            #calendar-panel .calendar-legend .legend-group.sold-out:before {
                background-color: #f95a61;
            }

            #calendar-panel .calendar-legend .legend-group.few-remaining:before {
                background-color: #ffb36e;
            }

            #calendar-panel .calendar-legend .legend-group:before {
                content: "";
                width: 6px;
                height: 6px;
                line-height: 16px;
                border-radius: 6px;
                margin-right: 6px;
                display: inline-block;
            }

@media screen and (max-width: 768px) {
    #calendar-panel .timeslots-container {
        padding: 16px;
        border-radius: 4px;
        margin-left: 0;
    }

        #calendar-panel .timeslots-container .sh-event-schedule-label {
            line-height: 14px;
            margin-bottom: 8px;
        }

        #calendar-panel .timeslots-container a.btn.btn-xs.btn-shedule-time {
            width: 70px;
        }
}

@media screen and (max-width: 1030px) {
    #calendar-panel {
        flex-direction: column;
    }

        #calendar-panel .schedulecalendarwrapper {
            padding: 0;
            min-width: 100%;
            margin-bottom: 16px;
        }

        #calendar-panel .timeslots-container {
            max-width: unset;
            width: 100%;
            border: none;
        }
}

@media screen and (min-width: 1030px) {
    #calendar-panel {
        display: flex;
        justify-content: flex-start;
    }

        #calendar-panel .schedulecalendarwrapper {
            padding: 24px;
        }
}

.notice-bar {
    padding: 8px 16px;
    border-radius: 4px;
    font-size: 14px;
    width: 100%;
    text-align: center;
    min-height: 48px;
    line-height: 32px;
    margin: 16px 0;
}

    .notice-bar > * {
        display: inline-block;
        vertical-align: middle;
    }

    .notice-bar.small {
        min-height: 32px;
        line-height: 16px;
    }

    .notice-bar .bold {
        font-weight: bold;
    }

    .notice-bar .icon {
        font-size: 16px;
        margin-right: 8px;
    }

    .notice-bar.warning {
        background: var(--yellow-30);
        color: var(--yellow-dark-1);
    }

    .notice-bar.success {
        background: var(--green-08);
        color: var(--green-dark-1);
    }

@media screen and (max-width: 768px) {
    .notice-bar {
        line-height: 18px;
        padding: 16px;
        display: grid;
        grid-template-columns: 16px 1fr;
        grid-gap: 8px;
    }

        .notice-bar .icon {
            margin: 0;
            align-self: center;
        }

        .notice-bar p {
            text-align: left;
        }
}

.totals-container .totals-row {
    display: grid;
    justify-content: space-between;
    grid-gap: 16px;
    grid-template-columns: 1fr 1fr;
    align-items: center;
}

    .totals-container .totals-row .amount {
        justify-self: flex-end;
        color: var(--black);
    }

    .totals-container .totals-row.border-top {
        padding: 24px 0 0;
        border-top: solid 1px var(--grey-light-1);
        position: relative;
    }

        .totals-container .totals-row.border-top:before {
            content: "";
            height: 1px;
            width: 100%;
            position: absolute;
            top: -4px;
            background-color: var(--grey-light-1);
        }

.totals-container .totals-row {
    margin: 16px 0;
}

    .totals-container .totals-row .amount {
        font-weight: 500;
    }

        .totals-container .totals-row .amount.status {
            font-weight: bold;
            font-size: 14px;
            line-height: 20px;
        }

            .totals-container .totals-row .amount.status .icon {
                font-size: 14px;
                margin-right: 4px;
                vertical-align: middle;
            }

            .totals-container .totals-row .amount.status.complete {
                color: var(--green);
            }

            .totals-container .totals-row .amount.status.pending {
                color: var(--red);
            }

    .totals-container .totals-row .label {
        color: var(--grey-dark-1);
    }

        .totals-container .totals-row .label .icon {
            color: var(--blue);
            margin-left: 8px;
            font-size: 14px;
            line-height: 20px;
            cursor: pointer;
        }

.totals-container .order-total-breakdown {
    margin: 24px 0;
}

.totals-container .order-total .amount {
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
}

@media screen and (max-width: 768px) {
    .totals-container .order-total-breakdown {
        margin: 16px 0;
    }

    .totals-container .totals-row {
        grid-template-columns: 1fr 0.5fr;
        margin: 8px 0;
    }

        .totals-container .totals-row.border-top {
            padding: 16px 0 0;
        }
}

#credit-card {
    margin: 32px 0;
}

#tblCardDetails * {
    padding: 0 !important;
    margin: 0;
}

div#trAmount,
.Border,
#tblCardsArea {
    display: none;
}

#tblCardDetails .PositionDivLabels span {
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 16px;
    display: flex;
    align-items: center;
    /* grey-dark-1 */
    color: #819197;
    margin-bottom: 8px;
}

.Container input.Textboxes {
    background: #ffffff;
    /* grey-light-1 */
    border: 1px solid #d9e3ea;
    box-sizing: border-box;
    border-radius: 5px;
    outline: none;
    height: 48px;
    max-width: 566px;
    box-shadow: none;
}

#tblCardDetails.Container .align {
    font-size: 12px;
    line-height: 14px;
    text-align: left;
    margin: 4px 2px 0;
    color: #819197;
    display: block;
}

div#tblCardType,
#trCardNum,
#trExpiry,
#trCardHolderName {
    margin-bottom: 24px;
}

#trButtons *,
#trMerchantDetails * {
    margin: 0;
    position: relative;
    left: 0;
}

#trMerchantDetails {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 100px 1fr;
    grid-gap: 16px;
    margin-top: 24px;
}

#trButtons {
    display: none;
}

    #trButtons input[type="submit"] {
        text-shadow: none;
        border: none;
        font-family: "Roboto";
        border-radius: 6px;
        outline: none !important;
        min-height: 48px;
        line-height: 1;
        font-size: 16px;
        text-align: center;
        font-weight: 700;
        text-transform: initial !important;
        outline: none !important;
        transition: background-color 0.2s, border-color 0.2s, color 0.2s;
        box-sizing: border-box;
        box-shadow: none;
    }

    #trButtons #btnCancel {
        outline: none !important;
        border: solid 2px var(--grey-light-1);
        color: var(--grey-dark-2);
        background-color: transparent;
    }

        #trButtons #btnCancel:hover {
            color: var(--black);
            border-color: var(--black);
        }

    #trButtons #btnSubmit {
        background-color: #008eff;
        color: white;
        padding: 16px;
    }

#trExpiry select {
    width: 136px;
}

#tblCardDetails .DropCards,
#tblCardDetails #trExpiry select.DropDown {
    height: 48px;
    padding: 8px 16px !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: solid 1px var(--grey-light-1);
    border-radius: 6px;
    line-height: 2;
    font-size: 14px;
    position: relative;
    background-image: url(../../images/icons/chevron-down.svg);
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 12px;
    font-weight: 500;
    color: var(--black);
    transition: border-color 0.2s ease-in;
}

#tblCardType select {
    max-width: 566px;
}

.custom-list {
    list-style-type: none;
    margin: 24px 0;
}

    .custom-list:last-of-type {
        margin-bottom: 0;
    }

    .custom-list li {
        font-family: "Roboto";
        font-weight: normal;
        font-size: 16px;
        line-height: 24px;
        color: var(--black);
        padding-left: 32px;
        position: relative;
        margin: 0 !important;
    }

        .custom-list li:not(:last-of-type) {
            padding-bottom: 16px;
        }

        .custom-list li:before {
            font-family: "fontcustom";
            font-size: 16px;
            position: absolute;
            left: 0;
        }

    .custom-list.inline li {
        display: inline-block;
        padding-left: 24px;
        padding-bottom: 0;
    }

custom-list.checklist.dark-text li:before {
    color: var(--dark-grey-2);
}

.custom-list.checklist li:before {
    content: "\f107";
    color: var(--green);
}

.custom-list.warning li:before {
    content: "\f11b";
    color: var(--red);
}

.custom-list.message li:before {
    content: "\f11a";
    color: var(--blue);
}

.notification-container {
    margin: 0 auto;
    max-width: 1360px;
    padding: 0;
    position: fixed;
    transition: all 0.4s;
    opacity: 0;
    z-index: 90;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 32px;
}

    .notification-container.hidden {
        bottom: -80px;
    }

    .notification-container.show {
        opacity: 1;
        bottom: 32px;
    }

    .notification-container.article-actions .bottom-notification {
        grid-template-columns: repeat(2, 1fr);
    }

    .notification-container .bottom-notification {
        width: 100%;
        background-color: var(--black);
        display: grid;
        grid-template-columns: 1fr 124px;
        grid-gap: 48px;
        align-items: center;
        padding: 16px;
        box-shadow: 0px 4px 16px rgba(60, 72, 78, 0.16);
        border-radius: 8px;
        box-sizing: border-box;
    }

        .notification-container .bottom-notification .notification-message {
            margin-left: 16px;
        }

            .notification-container .bottom-notification .notification-message p {
                font-family: "Questrial";
                font-size: 16px;
                line-height: 24px;
                color: #ffffff;
            }

            .notification-container .bottom-notification .notification-message .link {
                margin-left: 16px;
                display: inline-block;
                vertical-align: middle;
            }

        .notification-container .bottom-notification .action-button-container {
            justify-self: flex-end;
            align-self: center;
        }

        .notification-container .bottom-notification .left-content button,
        .notification-container .bottom-notification .right-content button {
            box-shadow: none !important;
        }

            .notification-container .bottom-notification .left-content button.btn-x-small,
            .notification-container .bottom-notification .right-content button.btn-x-small {
                height: 48px;
                padding: 16px;
            }

                .notification-container
                .bottom-notification
                .left-content
                button.btn-x-small
                .icon,
                .notification-container
                .bottom-notification
                .right-content
                button.btn-x-small
                .icon {
                    font-size: 16px;
                }

            .notification-container .bottom-notification .left-content button.saved,
            .notification-container .bottom-notification .right-content button.saved {
                background-color: var(--grey-dark-3);
                color: white;
                pointer-events: none;
            }

        .notification-container .bottom-notification .left-content {
            color: var(--grey-light-1);
            font-family: "Questrial";
            font-style: normal;
            font-weight: normal;
            font-size: 16px;
            line-height: 32px;
            display: grid;
            grid-gap: 8px;
            grid-template-columns: min-content 1fr;
            align-items: center;
        }

            .notification-container .bottom-notification .left-content span {
                color: white;
                font-family: "Roboto";
                font-style: normal;
                font-weight: bold;
            }

            .notification-container .bottom-notification .left-content .btn-delete .icon {
                color: var(--red);
            }

            .notification-container .bottom-notification .left-content .btn-delete:hover {
                background-color: var(--red);
            }

                .notification-container
                .bottom-notification
                .left-content
                .btn-delete:hover
                .icon {
                    color: white;
                }

            .notification-container .bottom-notification .left-content .article-details * {
                display: inline-block;
                vertical-align: bottom;
            }

            .notification-container
            .bottom-notification
            .left-content
            .article-details
            .group {
                margin-left: 32px;
            }

        .notification-container .bottom-notification .right-content {
            justify-self: right;
            display: grid;
            grid-gap: 16px;
            grid-auto-flow: column;
        }

@media screen and (max-width: 768px) {
    .notification-container {
        margin: 0;
        padding: 0 8px;
    }

        .notification-container.show {
            bottom: 16px;
        }

        .notification-container .bottom-notification {
            grid-template-columns: 1fr 96px;
            grid-gap: 16px;
        }

            .notification-container .bottom-notification .notification-message {
                margin: 0;
            }

                .notification-container .bottom-notification .notification-message p {
                    font-size: 12px;
                    line-height: 16px;
                }

                .notification-container .bottom-notification .notification-message .link {
                    margin-left: 8px;
                }

            .notification-container .bottom-notification .action-button-container button {
                min-width: 96px;
            }
}

@media screen and (max-width: 1424px) and (min-width: 768px) {
    .notification-container {
        padding: 0 32px;
    }
}

.tooltip-container {
    position: relative;
}

.tooltip-trigger {
    position: relative;
}

    .tooltip-trigger:not(.disable-tooltip):hover + .info-tooltip {
        transition-delay: 1s;
        opacity: 1;
        visibility: visible;
    }

        .tooltip-trigger:not(.disable-tooltip):hover + .info-tooltip.cart-update {
            transition-delay: 0.5s;
        }

.info-tooltip {
    visibility: hidden;
    opacity: 0;
    background-color: rgba(9, 10, 11, 0.9);
    padding: 8px;
    position: absolute;
    border-radius: 4px;
    font-size: 12px;
    font-family: "Roboto";
    z-index: 10;
    color: white;
    line-height: 16px;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.16);
    min-width: 72px;
    max-width: 364px;
    bottom: 48px;
    left: 0px;
}

    .info-tooltip:not(.wrap) {
        white-space: nowrap;
    }

    .info-tooltip.bottom {
        bottom: -40px;
    }

    .info-tooltip.cart-update {
        left: unset;
        right: 0;
        bottom: -40px;
    }

        .info-tooltip.cart-update.show {
            opacity: 1;
            visibility: visible;
        }

        .info-tooltip.cart-update.warning {
            background: var(--yellow);
            color: var(--yellow-dark-1);
        }

        .info-tooltip.cart-update.expired {
            background: var(--red-light-1);
            color: var(--red-dark-1);
        }

    .info-tooltip:not(.no-arrow):before {
        content: " ";
        position: absolute;
        top: 50%;
        margin-top: -6px;
        border-width: 8px;
        border-style: solid;
    }

    .info-tooltip.top-arrow:before {
        bottom: 100%;
        /* At the top of the tooltip */
        left: 50%;
        border-color: transparent transparent var(--black) transparent;
    }

    .info-tooltip.bottom-arrow:before {
        top: 108%;
        /* At the bottom of the tooltip */
        left: 16px;
        border-color: var(--black) transparent transparent transparent;
    }

    .info-tooltip.bottom-arrow.wrap:before {
        top: 104%;
    }

    .info-tooltip.bottom-arrow.center-arrow:before {
        left: 50%;
        transform: translateX(-50%);
        top: unset;
        bottom: -14px;
    }

    .info-tooltip.left-arrow:before {
        right: 100%;
        /* To the left of the tooltip */
        border-color: transparent var(--black) transparent transparent;
    }

    .info-tooltip.right-arrow:before {
        left: 100%;
        /* To the right of the tooltip */
        border-color: transparent transparent transparent black;
    }

    .info-tooltip.grey {
        background-color: var(--grey-light-2);
        box-shadow: none;
    }

        .info-tooltip.grey .icon {
            color: var(--black);
            font-size: 16px;
        }

        .info-tooltip.grey.inner-wrapper {
            padding: 4px;
        }

            .info-tooltip.grey.inner-wrapper .tooltip-item {
                height: 32px;
                width: 100%;
                line-height: 22px;
                background: #ffffff;
                box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
                border-radius: 4px;
                padding: 6px;
                text-align: center;
            }

        .info-tooltip.grey.top-arrow:before {
            border-color: transparent transparent var(--grey-light-2) transparent;
        }

        .info-tooltip.grey.bottom-arrow:before {
            border-color: var(--grey-light-2) transparent transparent transparent;
        }

        .info-tooltip.grey.left-arrow:before {
            border-color: transparent var(--grey-light-2) transparent transparent;
        }

        .info-tooltip.grey.right-arrow:before {
            border-color: transparent transparent transparent var(--grey-light-2);
        }

@media screen and (max-width: 768px) {
    .info-tooltip.cart-update {
        right: -24px;
    }
}

.table {
    border-radius: 4px 4px 0 0;
    border: solid 1px var(--grey-light-1);
    overflow-x: scroll;
    box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
    width: 100%;
}

    .table .row-cell:not(.ticket-actions-container) {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }

    .table .row-cell.actions {
        justify-self: flex-end;
        transition: color 0.2s;
        position: relative;
    }

        .table .row-cell.actions .icon-more {
            color: var(--grey);
        }

        .table .row-cell.actions:hover .icon-more {
            color: var(--black);
        }

        .table .row-cell.actions .dropdown .dropdown-panel {
            top: 8px;
            right: -8px;
            left: unset;
            min-width: 148px;
            width: fit-content;
        }

            .table .row-cell.actions .dropdown .dropdown-panel .dropdown-item {
                white-space: nowrap;
            }

        .table .row-cell.actions .icon {
            font-size: 16px;
        }

        .table .row-cell.actions:hover {
            cursor: pointer;
            color: var(--black);
        }

    .table > .table-header,
    .table > .table-body .row-overview {
        display: grid;
        grid-gap: 56px;
        grid-template-columns: 120px 120px minmax(172px, 280px) 48px 92px 80px minmax( 48px, 1fr );
        align-items: center;
    }

        .table > .table-header .column.tickets,
        .table > .table-header .row-cell.tickets,
        .table > .table-body .row-overview .column.tickets,
        .table > .table-body .row-overview .row-cell.tickets {
            justify-self: center;
        }

    .table.incl-status-column > .table-header,
    .table.incl-status-column > .table-body .row-overview {
        display: grid;
        grid-gap: 48px;
        grid-template-columns: 116px minmax(172px, 280px) 120px 48px 92px 110px 80px minmax( 48px, 1fr );
    }

    .table > .table-header {
        background-color: var(--grey-light-3);
        border-bottom: 1px solid var(--grey-light-1);
        box-sizing: border-box;
        border-radius: 4px 4px 0px 0px;
        padding: 16px 24px;
        box-sizing: border-box;
        height: 48px;
        min-width: fit-content;
    }

        .table > .table-header .column.label {
            font-family: "Roboto";
            font-style: normal;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            color: var(--grey-dark-1);
        }

    .table > .table-body {
        background-color: white;
        min-width: fit-content;
    }

        .table > .table-body > .table-row {
            min-width: fit-content;
            height: 64px;
            overflow: visible;
            transition: height 0.2s;
        }

            .table > .table-body > .table-row:not(:last-child) {
                border-bottom: solid 1px var(--grey-light-2);
            }

            .table > .table-body > .table-row .row-overview {
                padding: 16px 24px;
                height: 64px;
            }

                .table > .table-body > .table-row .row-overview .row-cell {
                    font-family: "Questrial";
                    font-style: normal;
                    font-weight: normal;
                    font-size: 13px;
                    line-height: 16px;
                    color: var(--grey-dark-2);
                }

                    .table > .table-body > .table-row .row-overview .row-cell.order-number {
                        color: var(--black);
                    }

                .table > .table-body > .table-row .row-overview.pending .status {
                    color: var(--red);
                }

                .table > .table-body > .table-row .row-overview.completed .status {
                    color: var(--green);
                }

            .table > .table-body > .table-row .row-details-container {
                padding: 24px;
                background-color: var(--grey-light-3);
            }

                .table > .table-body > .table-row
                .row-details-container
                .table-header
                .column.quantity,
                .table > .table-body > .table-row
                .row-details-container
                .table-header
                .row-cell.quantity,
                .table > .table-body > .table-row
                .row-details-container
                .table-body
                .column.quantity,
                .table > .table-body > .table-row
                .row-details-container
                .table-body
                .row-cell.quantity {
                    justify-self: center;
                }

                .table > .table-body > .table-row .row-details-container .table-header {
                    padding: 0 16px 16px 24px;
                }

                    .table > .table-body > .table-row .row-details-container .table-header .label {
                        font-family: "Roboto";
                        font-style: normal;
                        font-weight: 500;
                        font-size: 14px;
                        line-height: 16px;
                        color: var(--grey);
                    }

                .table > .table-body > .table-row
                .row-details-container
                .table-body
                .table-row {
                    background-color: white;
                    border-radius: 4px;
                    box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
                    padding: 0 16px 0 24px;
                    height: 48px;
                    box-sizing: border-box;
                }

                    .table > .table-body > .table-row
                    .row-details-container
                    .table-body
                    .table-row:not(:last-of-type) {
                        margin-bottom: 8px;
                    }

                    .table > .table-body > .table-row
                    .row-details-container
                    .table-body
                    .table-row
                    .row-cell {
                        font-family: "Questrial";
                        font-style: normal;
                        font-weight: normal;
                        font-size: 13px;
                        line-height: 16px;
                        color: var(--grey-dark-2);
                    }

            .table > .table-body > .table-row.open-details {
                height: fit-content;
                overflow: visible;
            }

                .table > .table-body > .table-row.open-details .row-details-container {
                    box-shadow: inset 0 5px 5px -5px rgba(158, 178, 195, 0.3);
                }

@media screen and (max-width: 992px) {
    .table {
        overflow-x: scroll;
    }

        .table > .table-header,
        .table > .table-body .row-overview {
            grid-gap: 8px;
        }

        .table > .table-header {
            padding: 8px 16px;
            height: 40px;
            width: fit-content;
        }

            .table > .table-header .column.label {
                font-size: 13px;
                line-height: 24px;
            }

        .table > .table-body .table-row {
            width: fit-content;
            height: 48px;
        }

            .table > .table-body .table-row .row-overview {
                padding: 16px;
            }

            .table > .table-body .table-row .row-details-container {
                padding: 8px 8px 16px;
            }

                .table > .table-body .table-row .row-details-container .table-header {
                    padding: 8px;
                    width: fit-content;
                }

                    .table > .table-body .table-row .row-details-container .table-header .label {
                        font-size: 13px;
                        line-height: 24px;
                    }

                .table > .table-body
                .table-row
                .row-details-container
                .table-body
                .table-row {
                    width: fit-content;
                    padding: 8px 16px 8px 8px;
                }
}

table.table {
    border-collapse: inherit;
    border-spacing: 0;
    overflow: hidden;
    overflow-x: scroll;
    border-radius: 8px;
}

    table.table .main-table-header {
        background-color: var(--grey-light-3);
        box-sizing: border-box;
        border-radius: 4px 4px 0px 0px;
        padding: 16px 24px;
        box-sizing: border-box;
        height: 48px;
        min-width: fit-content;
    }

        table.table .main-table-header th {
            font-family: "Roboto";
            font-style: normal;
            font-weight: 500;
            font-size: 14px;
            line-height: 16px;
            color: var(--grey-dark-1);
            text-align: left;
            border-bottom: 1px solid var(--grey-light-1);
            min-width: 140px;
        }

            table.table .main-table-header th:first-of-type {
                padding-left: 24px;
            }

            table.table .main-table-header th:last-of-type {
                padding-right: 24px;
            }

    table.table tbody tr {
        height: 64px;
    }

        table.table tbody tr .icon {
            margin-right: 4px;
        }

        table.table tbody tr td {
            padding: 16px 0;
            font-family: "Questrial";
            font-style: normal;
            font-weight: normal;
            font-size: 13px;
            line-height: 16px;
            color: var(--grey-dark-2);
            min-width: 200px;
            border-bottom: solid 1px var(--grey-light-2);
        }

            table.table tbody tr td:first-of-type {
                padding-left: 24px;
            }

            table.table tbody tr td:last-of-type {
                padding-right: 24px;
            }

.seat-selection-svg-container {
    background-color: #222326;
}

    .seat-selection-svg-container .loading-screen-container {
        background-color: #222326;
    }

.seatingplancontainer {
    overflow: hidden;
    touch-action: none; /* prevents browser's default scroll during drag operation */
}

    .seatingplancontainer .btn-back-plan {
        max-width: unset;
        margin: 8px;
        box-sizing: border-box;
        min-width: unset;
        width: calc(100% - 16px);
    }

    .seatingplancontainer object {
        width: 100%;
        display: block;
        height: auto;
        position: relative;
    }

    .seatingplancontainer .seatingcontainer {
        display: inline-block;
        position: relative;
        width: 100%;
        vertical-align: middle;
        overflow: hidden;
    }

#event-page .zoomsvgcontainers .control-buttons {
    background-color: #222326;
    padding: 16px;
}

    #event-page .zoomsvgcontainers .control-buttons .row {
        margin-bottom: 24px;
    }

        #event-page .zoomsvgcontainers .control-buttons .row:last-of-type {
            margin-bottom: 0;
        }

        #event-page .zoomsvgcontainers .control-buttons .row input[type="range"] {
            margin: 0;
        }

    #event-page .zoomsvgcontainers .control-buttons .btn-group-justified {
        display: flex;
        justify-content: space-between;
        grid-auto-flow: column;
        width: 100%;
    }

        #event-page
        .zoomsvgcontainers
        .control-buttons
        .btn-group-justified
        .btn-group {
            width: 14.2857142857%;
        }

            #event-page
            .zoomsvgcontainers
            .control-buttons
            .btn-group-justified
            .btn-group
            .btn {
                background: #ffffff;
                border: 1px solid var(--grey-light-1);
                box-sizing: border-box;
                display: inline-block;
                cursor: pointer;
                min-width: unset;
                padding: 8px 16px;
                width: 100%;
                border-radius: 0;
                min-height: unset;
                line-height: 24px;
                height: 40px;
            }

                #event-page
                .zoomsvgcontainers
                .control-buttons
                .btn-group-justified
                .btn-group
                .btn:hover {
                    border-color: var(--grey);
                    color: var(--black) !important;
                    box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
                }

            #event-page
            .zoomsvgcontainers
            .control-buttons
            .btn-group-justified
            .btn-group:first-of-type > .btn {
                border-radius: 4px 0 0 4px;
            }

            #event-page
            .zoomsvgcontainers
            .control-buttons
            .btn-group-justified
            .btn-group:last-of-type > .btn {
                border-radius: 0 4px 4px 0;
            }

            #event-page
            .zoomsvgcontainers
            .control-buttons
            .btn-group-justified
            .btn-group:not(:first-of-type) > .btn {
                border-left: none;
            }

@media screen and (max-width: 768px) {
    #event-page .zoomsvgcontainers .control-buttons {
        padding: 8px;
    }

        #event-page
        .zoomsvgcontainers
        .control-buttons
        .btn-group-justified
        .btn-group
        .btn {
            padding: 8px;
        }
}

[type="range"] {
    -webkit-appearance: none;
    background: transparent;
    margin: 16px 0;
    width: 100%;
    padding: 0;
    height: 32px;
}

    [type="range"]::-moz-focus-outer {
        border: 0;
    }

    [type="range"]:focus {
        outline: 0;
    }

        [type="range"]:focus::-webkit-slider-runnable-track {
            background: #141719;
        }

        [type="range"]:focus::-ms-fill-lower {
            background: #090a0b;
        }

        [type="range"]:focus::-ms-fill-upper {
            background: #141719;
        }

    [type="range"]::-webkit-slider-runnable-track {
        cursor: default;
        height: 8px;
        transition: all 0.2s ease;
        width: 100%;
        background: #090a0b;
        border: 2px solid #090a0b;
        border-radius: 4px;
    }

    [type="range"]::-webkit-slider-thumb {
        box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
        background: white;
        border: 2px solid #eceff1;
        border-radius: 4px;
        box-sizing: border-box;
        cursor: default;
        height: 32px;
        width: 16px;
        -webkit-appearance: none;
        margin-top: -14px;
    }

    [type="range"]::-moz-range-track {
        cursor: default;
        height: 8px;
        transition: all 0.2s ease;
        width: 100%;
        background: #090a0b;
        border: 2px solid #090a0b;
        border-radius: 4px;
        height: 4px;
    }

    [type="range"]::-moz-range-thumb {
        box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
        background: white;
        border: 2px solid #eceff1;
        border-radius: 4px;
        box-sizing: border-box;
        cursor: default;
        height: 32px;
        width: 16px;
    }

    [type="range"]::-ms-track {
        cursor: default;
        height: 8px;
        transition: all 0.2s ease;
        width: 100%;
        background: transparent;
        border-color: transparent;
        border-width: 16px 0;
        color: transparent;
    }

    [type="range"]::-ms-fill-lower {
        box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2), 0 0 1px rgba(13, 13, 13, 0.2);
        background: black;
        border: 2px solid #090a0b;
        border-radius: 8px;
    }

    [type="range"]::-ms-fill-upper {
        box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2), 0 0 1px rgba(13, 13, 13, 0.2);
        background: #090a0b;
        border: 2px solid #090a0b;
        border-radius: 8px;
    }

    [type="range"]::-ms-thumb {
        box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
        background: white;
        border: 2px solid #eceff1;
        border-radius: 4px;
        box-sizing: border-box;
        cursor: default;
        height: 32px;
        width: 16px;
        margin-top: 2px;
    }

    [type="range"]:disabled::-webkit-slider-thumb,
    [type="range"]:disabled::-moz-range-thumb,
    [type="range"]:disabled::-ms-thumb,
    [type="range"]:disabled::-webkit-slider-runnable-track,
    [type="range"]:disabled::-ms-fill-lower,
    [type="range"]:disabled::-ms-fill-upper {
        cursor: not-allowed;
    }

.cc_banner {
    margin: 0 auto;
    max-width: 1360px;
    padding: 0;
    transition: all 0.4s;
    opacity: 0;
    bottom: -80px;
    z-index: 90;
    width: 100%;
    left: 0;
    right: 0;
    padding: 16px;
    border-radius: 8px;
    background-color: var(--black);
    box-shadow: 0px 4px 16px rgba(60, 72, 78, 0.16);
    display: grid;
    grid-template-areas: "message btn";
    align-items: center;
}

    .cc_banner .cc_message,
    .cc_banner .cc_btn {
        display: inline-block;
        vertical-align: middle;
    }

    .cc_banner.cc_container.cc_container--open {
        opacity: 1;
        bottom: 32px;
    }

.cc_container .cc_message {
    font-family: "Questrial";
    font-size: 16px;
    line-height: 24px;
    color: #ffffff;
    margin: 0 0 0 16px !important;
    grid-area: message;
}

.cc_container .cc_more_info {
    margin-left: 16px;
    display: inline-block;
    vertical-align: middle;
}

    .cc_container .cc_more_info:visited,
    .cc_container .cc_more_info:hover {
        color: var(--blue-dark-1);
        outline: none;
    }

@media screen and (max-width: 768px) {
    .cc_banner {
        margin: 0 16px;
        width: calc(100% - 32px);
    }

    .cc_container--open {
        bottom: 16px;
    }

    .cc_container .cc_message {
        margin: 0 !important;
        font-size: 12px;
        line-height: 16px;
    }

    .cc_container .cc_more_info {
        margin-left: 8px;
    }
}

.cc_banner.cc_container .cc_btn {
    border: none;
    font-family: Roboto;
    border-radius: 6px;
    outline: none !important;
    text-align: center;
    font-weight: 700;
    text-transform: initial !important;
    outline: none !important;
    -webkit-transition: background-color 0.2s, border-color 0.2s, color 0.2s;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: fit-content;
    font-size: 14px;
    line-height: 32px;
    min-height: 48px;
    height: 48px;
    min-width: 96px;
    background-color: white;
    float: none;
    grid-area: btn;
    justify-self: flex-end;
}

@media screen and (max-width: 1424px) and (min-width: 768px) {
    .cc_banner {
        margin: 0 32px;
        width: calc(100% - 64px);
    }
}

@media screen and (min-width: 768px) {
    .cc_container {
        padding: 16px;
    }
}

#svg-legend {
    background-color: #222326;
    padding: 16px 32px;
}

    #svg-legend .legend-inner-wrapper {
        display: flex;
        flex-wrap: wrap;
        grid-gap: 32px;
    }

    #svg-legend .legend-color-marker {
        left: 0;
        box-sizing: border-box;
        height: 12px;
        width: 12px;
        display: block;
        border-radius: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    #svg-legend .ticket-type-wrapper {
        position: relative;
        min-width: fit-content;
    }

    #svg-legend .ticket-type {
        padding-left: 20px;
        font-family: "Roboto";
        font-style: normal;
        font-weight: normal;
        font-size: 14px;
        line-height: 16px;
        color: #ffffff;
    }

@media screen and (max-width: 992px) {
    #svg-legend {
        padding: 16px;
    }

        #svg-legend .legend-inner-wrapper {
            display: grid;
            grid-gap: 8px;
            grid-template-columns: repeat(2, 1fr);
            grid-auto-flow: unset;
        }

        #svg-legend .ticket-type {
            font-size: 12px;
        }
}

.calendarcontainer {
    padding: 0;
}

    .calendarcontainer .cal__header {
        font-family: "Roboto";
        font-style: normal;
        font-size: 20px;
        line-height: 24px;
        text-align: center;
        color: #3c484e;
        border-radius: 8px;
        width: 100%;
        padding-top: 0;
        text-transform: uppercase;
    }

        .calendarcontainer .cal__header .btn {
            min-width: unset;
        }

    .calendarcontainer .cal__week span {
        font-family: "Questrial";
        font-style: normal;
        font-weight: normal;
        font-size: 14px;
        line-height: 16px;
        text-align: center;
        color: #819197;
        padding: 8px;
    }

    .calendarcontainer .cal__week {
        background-color: unset;
        border-bottom: solid 1px #ecf2f6;
    }

    .calendarcontainer .cal__date {
        font-family: "Roboto";
        font-style: normal;
        font-weight: bold;
        text-align: center;
        color: #3c484e;
        opacity: 1;
        position: relative;
        padding: 8px 0;
        background-color: unset;
        border: unset;
    }

        .calendarcontainer .cal__date.cal__date--disabled {
            color: #d9e3ea;
        }

    .calendarcontainer .cal.sh-cal-select-date {
        box-shadow: none;
        border: solid 1px var(--grey-light-1);
        margin: 0 !important;
        border-radius: 8px;
        padding: 16px;
    }

    .calendarcontainer .cal__body {
        background-color: unset;
        padding: 8px 0;
    }

    .calendarcontainer .cal__date.cal__date--active:hover {
        background-color: unset;
    }

    .calendarcontainer .cal__date span {
        height: 40px;
        width: 40px;
        border-radius: 40px;
        font-size: 16px;
        line-height: 40px;
    }

    .calendarcontainer
    .cal__date.cal__date--active:not(.cal__date--disabled):hover
    span {
        background-color: #f5f8fa;
        height: 40px;
        width: 40px;
        border-radius: 40px;
        font-size: 16px;
        line-height: 40px;
    }

    .calendarcontainer .cal__date.cal__date--active.cal__date--selected span {
        background-color: #008eff;
        color: white;
    }

    .calendarcontainer .cal__header svg {
        fill: #000;
    }

    .calendarcontainer .cal__date.sold-out:after {
        content: "";
        background: #f95a61;
        border-radius: 5px;
        width: 5px;
        height: 5px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 12px;
        margin: auto;
    }

    .calendarcontainer .cal__date.few-remaining:after {
        content: "";
        background: #ffb36e;
        border-radius: 4px;
        width: 4px;
        height: 4px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 12px;
        margin: auto;
    }

    .calendarcontainer .cal__date.has-events:after {
        content: "";
        background: #008eff;
        border-radius: 5px;
        width: 5px;
        height: 5px;
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 12px;
        margin: auto;
    }

.fileuploader {
    font-family: "Roboto";
    position: relative;
}

    .fileuploader * {
        padding: 0;
        margin: 0;
    }

    .fileuploader.article-main-image
    .fileuploader-wrapper
    .fileuploader-container
    .fileuploader-content {
        padding-top: 296px;
        align-items: flex-start;
    }

    .fileuploader .fileuploader-files-container {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-color: white;
    }

        .fileuploader .fileuploader-files-container .btn-overlay {
            margin: 16px;
            line-height: 1;
        }

            .fileuploader .fileuploader-files-container .btn-overlay .icon {
                height: 100%;
                line-height: 36px;
            }

    .fileuploader .fileuploader-wrapper {
        height: 100%;
    }

        .fileuploader .fileuploader-wrapper .fileuploader-container {
            height: 100%;
        }

            .fileuploader
            .fileuploader-wrapper
            .fileuploader-container
            .fileuploader-content {
                height: 100%;
                display: grid;
                align-items: center;
                justify-content: center;
            }

                .fileuploader
                .fileuploader-wrapper
                .fileuploader-container
                .fileuploader-content
                .fileuploader-input-wrapper {
                    height: 140px;
                    width: fit-content;
                    margin: 0 auto;
                    display: grid;
                    grid-gap: 8px;
                    padding: 16px;
                    grid-auto-flow: row;
                    grid-template-areas: "btn" "text";
                    grid-template-columns: minmax(0, 1fr);
                }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper:not(.image-selected):not(.no-border) {
                        background-color: var(--grey-light-3);
                        border: dashed 2px var(--grey-light-1);
                    }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper:after,
                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper:before {
                        content: none;
                    }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper
                    .fileuploader-button {
                        grid-area: btn;
                        background-color: transparent;
                        border: none;
                        width: 100%;
                        text-align: center;
                    }

                        .fileuploader
                        .fileuploader-wrapper
                        .fileuploader-container
                        .fileuploader-content
                        .fileuploader-input-wrapper
                        .fileuploader-button
                        .icon-image {
                            height: 40px;
                            font-size: 48px;
                            width: 100%;
                            color: var(--grey);
                            text-align: center;
                            transition: all 0.2s;
                        }

                        .fileuploader
                        .fileuploader-wrapper
                        .fileuploader-container
                        .fileuploader-content
                        .fileuploader-input-wrapper
                        .fileuploader-button
                        p.button-content {
                            font-family: "Roboto";
                            padding: 16px 0 0;
                            height: fit-content;
                            color: var(--grey-dark-2);
                            font-weight: 700;
                            line-height: 20px;
                            font-size: 14px;
                            display: block;
                            transition: all 0.2s;
                        }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper
                    .fileuploader-input-container {
                        grid-area: text;
                    }

                        .fileuploader
                        .fileuploader-wrapper
                        .fileuploader-container
                        .fileuploader-content
                        .fileuploader-input-wrapper
                        .fileuploader-input-container
                        .fileuploader-input {
                            opacity: 0;
                            margin: 0;
                            cursor: pointer;
                            padding: 0;
                            line-height: 2;
                            position: absolute;
                            width: 100%;
                            height: 100%;
                            top: 0;
                            left: 0;
                        }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper
                    .button-content,
                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper
                    .fileuploader-input-label {
                        white-space: pre-wrap;
                        text-overflow: unset;
                        text-align: center;
                        height: fit-content;
                    }

                    .fileuploader
                    .fileuploader-wrapper
                    .fileuploader-container
                    .fileuploader-content
                    .fileuploader-input-wrapper:hover {
                        border-color: var(--blue);
                        cursor: pointer;
                    }

                        .fileuploader
                        .fileuploader-wrapper
                        .fileuploader-container
                        .fileuploader-content
                        .fileuploader-input-wrapper:hover
                        .fileuploader-button
                        .icon-image {
                            color: var(--blue);
                        }

                        .fileuploader
                        .fileuploader-wrapper
                        .fileuploader-container
                        .fileuploader-content
                        .fileuploader-input-wrapper:hover
                        .fileuploader-button
                        p.button-content {
                            color: var(--black);
                        }

    .fileuploader.fileuploader-dragover
    .fileuploader-wrapper
    .fileuploader-container
    .fileuploader-content
    .fileuploader-input-wrapper {
        border-color: var(--blue);
    }

        .fileuploader.fileuploader-dragover
        .fileuploader-wrapper
        .fileuploader-container
        .fileuploader-content
        .fileuploader-input-wrapper
        .fileuploader-button {
            display: block;
        }

        .fileuploader.fileuploader-dragover
        .fileuploader-wrapper
        .fileuploader-container
        .fileuploader-content
        .fileuploader-input-wrapper
        .fileuploader-input-container {
            border: none;
        }

    .fileuploader.selected .fileuploader-wrapper .fileuploader-content {
        display: none;
    }

.fileuploader-input-label {
    bottom: 0;
    top: unset;
    color: var(--grey-dark-1);
    font-size: 12px;
    line-height: 16px;
}

.ui-widget.ui-widget-content {
    background: white;
    box-shadow: 0px 2px 6px rgba(9, 10, 11, 0.1);
    border-radius: 8px;
    padding: 8px;
}

    .ui-widget.ui-widget-content.ui-autocomplete {
        border: 1px solid var(--grey-light-1);
    }

        .ui-widget.ui-widget-content.ui-autocomplete .ui-menu-item {
            list-style-image: unset;
        }

            .ui-widget.ui-widget-content.ui-autocomplete
            .ui-menu-item
            .ui-menu-item-wrapper {
                padding: 8px;
                font-family: "Roboto";
                font-weight: 500;
                font-size: 14px;
                line-height: 16px;
                color: var(--grey-dark-1);
                display: block;
                border-radius: 6px;
            }

                .ui-widget.ui-widget-content.ui-autocomplete
                .ui-menu-item
                .ui-menu-item-wrapper.ui-state-active {
                    background-color: var(--grey-light-3);
                    color: var(--black);
                    border: unset;
                    margin: 0;
                }

                .ui-widget.ui-widget-content.ui-autocomplete
                .ui-menu-item
                .ui-menu-item-wrapper:hover {
                    cursor: pointer;
                    background-color: var(--grey-light-3);
                    color: var(--black);
                    text-decoration: none;
                }

section .titles-container .section-link {
    font-size: 16px;
    font-weight: 600;
}

    section .titles-container .section-link .icon {
        font-size: 12px;
        margin: 0 0 0 4px;
    }

.portal-screen {
    width: 100%;
    height: fit-content;
    min-height: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow-x: hidden;
    background-color: white;
    position: relative;
}

    .portal-screen .contact-us-link,
    .portal-screen .promotional-message {
        display: none;
    }

@media screen and (max-width: 768px) {
    .portal-screen {
        background-image: unset !important;
    }
}

@media screen and (min-width: 768px) {
    .portal-screen {
        display: grid;
        align-items: center;
        background-color: var(--black);
        background-size: cover;
        background-position: bottom center;
        background-repeat: no-repeat;
        grid-template-rows: 20px 1fr 20px;
        grid-template-columns: 560px 1fr;
        grid-template-areas: ". . " "portal-card promotional-info" ". contact-us-link";
        padding: 24px;
    }

        .portal-screen.sign-up-screen {
            grid-template-columns: 648px 1fr;
        }

            .portal-screen.sign-up-screen .promotional-message ul {
                margin: 32px 0 64px;
            }

            .portal-screen.sign-up-screen .promotional-message h2 {
                margin-bottom: 16px;
                line-height: 40px;
            }

        .portal-screen .contact-us-link {
            display: block;
            grid-area: contact-us-link;
            justify-self: flex-end;
            color: white !important;
            font-family: Questrial;
            font-size: 14px;
        }

            .portal-screen .contact-us-link a {
                font-family: "Roboto";
                font-weight: 700;
                color: white !important;
            }

        .portal-screen .promotional-message {
            display: block;
            grid-area: promotional-info;
            color: white;
            align-self: center;
        }

            .portal-screen .promotional-message h1 {
                font-weight: 900;
                font-size: 44px;
                line-height: 62px;
                margin: 0;
            }

            .portal-screen .promotional-message ul {
                font-family: "Questrial";
                margin: 32px 0 44px;
            }

                .portal-screen .promotional-message ul li {
                    font-size: 18px;
                    line-height: 24px;
                    list-style-type: none;
                    margin: 24px 16px;
                    opacity: 0.8;
                    position: relative;
                    padding: 0 16px;
                }

                    .portal-screen .promotional-message ul li::before {
                        font-family: "fontcustom";
                        content: "\f107";
                        position: absolute;
                        left: -16px;
                        top: 0;
                        bottom: 0;
                        margin: auto;
                        font-size: 16px;
                    }

        .portal-screen #login-card {
            width: 384px;
            margin: 0 80px 0 96px;
            border-radius: 12px;
        }
}

#event-page .row {
    margin-bottom: 48px;
}

#event-page .event-details-banner {
    height: 128px;
    position: relative;
    background-color: var(--black);
}

    #event-page .event-details-banner .bg-image-container {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        margin: auto;
        overflow: hidden;
    }

    #event-page .event-details-banner .banner-bg-image {
        background-repeat: no-repeat;
        background-size: 200%;
        background-position: top;
        filter: blur(4rem);
        opacity: 0.5;
        width: 100%;
        height: 100%;
    }

    #event-page .event-details-banner .banner-wrapper {
        z-index: 2;
        position: absolute;
        left: 16px;
        right: 16px;
        top: 16px;
        margin: auto;
        display: grid;
        grid-template-columns: 96px 1fr;
        grid-gap: 16px;
        width: unset;
        grid-template-rows: unset;
        top: 0;
    }

        #event-page .event-details-banner .banner-wrapper .event-poster {
            background-color: var(--grey-light-3);
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            height: 96px;
            border-radius: 4px;
        }

@media screen and (max-width: 768px) {
    #event-page .event-details-banner .banner-wrapper .event-poster {
        /* New change */
        height: auto;
        aspect-ratio: auto 1 / 1.41;
    }
}

#event-page .event-details-banner .banner-wrapper .event-poster .backdrop {
    height: 100%;
}

    #event-page
    .event-details-banner
    .banner-wrapper
    .event-poster
    .backdrop
    .icon {
        display: none;
    }

#event-page .event-details-banner .banner-wrapper .event-details {
    margin-top: 8px;
}

@media screen and (max-width: 768px) {
    #event-page .event-details-banner .banner-wrapper .event-details {
        /* New change */
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

#event-page
.event-details-banner
.banner-wrapper
.event-details
.details-container
.event-name {
    font-weight: 900;
    font-size: 18px;
    line-height: 24px;
    color: white;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 16px;
}

#event-page
.event-details-banner
.banner-wrapper
.event-details
.details-container
.promotor-details {
    font-family: "Questrial";
    font-weight: normal;
    font-size: 16px;
    line-height: 16px;
    display: flex;
    align-items: center;
    color: #ffffff;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05);
}

    #event-page
    .event-details-banner
    .banner-wrapper
    .event-details
    .details-container
    .promotor-details
    .promotor-name {
        font-family: "Roboto";
        font-weight: bold;
        font-size: 16px;
        line-height: 19px;
        display: flex;
        align-items: center;
        color: #ffffff;
        text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05);
    }

    #event-page
    .event-details-banner
    .banner-wrapper
    .event-details
    .details-container
    .promotor-details
    .promoter-follow-button {
        font-family: "Roboto";
        font-style: normal;
        font-weight: bold;
        font-size: 14px;
        line-height: 16px;
        display: flex;
        align-items: center;
        text-align: center;
        background-color: transparent;
        color: #ffffff;
        border: 2px solid rgba(255, 255, 255, 0.5);
        box-sizing: border-box;
        border-radius: 4px;
        padding: 8px 16px;
        transition: background-color 0.2s, border-color 0.2s, color 0.2s;
        cursor: pointer;
        margin-left: 16px;
    }

        #event-page
        .event-details-banner
        .banner-wrapper
        .event-details
        .details-container
        .promotor-details
        .promoter-follow-button:hover {
            background-color: #ffffff;
            color: black;
        }

#event-page
.event-details-banner
.banner-wrapper
.event-details
.cta-container {
    visibility: hidden;
}

#event-page > .content-wrapper {
    display: grid;
    margin-bottom: 0;
    grid-template-areas: "content" "sidebar" "additional-info";
    grid-template-columns: minmax(auto, 100%);
}

    #event-page > .content-wrapper .sidebar {
        grid-area: sidebar;
    }

        #event-page > .content-wrapper .sidebar .event-media {
            cursor: pointer;
        }

            #event-page > .content-wrapper .sidebar .event-media .thumbnail-container {
                height: 185px;
                border-radius: 8px;
                background-repeat: no-repeat;
                background-size: cover;
                background-position: center;
                display: flex;
                align-items: center;
                justify-content: center;
                color: white;
                overflow: hidden;
                position: relative;
            }

                #event-page > .content-wrapper
                .sidebar
                .event-media
                .thumbnail-container
                .backdrop {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    background-color: var(--black50);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    color: white;
                    border-radius: 8px;
                    visibility: hidden;
                    opacity: 0;
                    transition: all 0.2s;
                }

                #event-page > .content-wrapper
                .sidebar
                .event-media
                .thumbnail-container
                .icon {
                    border: solid 4px white;
                    background-color: rgba(9, 10, 11, 0.6);
                    height: 48px;
                    width: 48px;
                    border-radius: 64px;
                    text-align: center;
                    font-size: 20px;
                    line-height: 40px;
                    transition: all 0.2s;
                }

            #event-page > .content-wrapper
            .sidebar
            .event-media:hover
            .thumbnail-container
            .backdrop {
                visibility: visible;
                opacity: 1;
            }

            #event-page > .content-wrapper
            .sidebar
            .event-media:hover
            .thumbnail-container
            .icon {
                transform: scale(1.2);
            }

        #event-page > .content-wrapper .sidebar .location-map {
            background: #ffffff;
            border: 1px solid var(--grey-light-1);
            box-sizing: border-box;
            border-radius: 8px;
            height: fit-content;
            overflow: hidden;
            cursor: pointer;
        }

            #event-page > .content-wrapper .sidebar .location-map:hover {
                border-color: var(--grey);
                box-shadow: 0px 1px 2px rgba(158, 178, 195, 0.3);
            }

                #event-page > .content-wrapper
                .sidebar
                .location-map:hover
                .venue-details
                .directions-icon-container:before {
                    border-color: var(--grey);
                }

                #event-page > .content-wrapper
                .sidebar
                .location-map:hover
                .venue-details
                .directions-icon-container
                .icon {
                    color: var(--black);
                }

            #event-page > .content-wrapper .sidebar .location-map .map {
                background-repeat: no-repeat;
                background-size: cover;
                background-position: center;
                min-height: 240px;
            }

            #event-page > .content-wrapper .sidebar .location-map .venue-details {
                padding: 24px;
                box-sizing: border-box;
                font-size: 14px;
                line-height: 22px;
                align-items: center;
                display: grid;
                grid-auto-flow: column;
                align-items: center;
                grid-gap: 24px;
            }

                #event-page > .content-wrapper
                .sidebar
                .location-map
                .venue-details
                .location-address {
                    justify-self: flex-start;
                }

                #event-page > .content-wrapper
                .sidebar
                .location-map
                .venue-details
                .directions-icon-container {
                    position: relative;
                    height: 40px;
                    width: 40px;
                    text-align: center;
                    line-height: 40px;
                    justify-self: flex-end;
                }

                    #event-page > .content-wrapper
                    .sidebar
                    .location-map
                    .venue-details
                    .directions-icon-container:before {
                        content: "";
                        border: solid 2px var(--grey-light-1);
                        height: 40px;
                        width: 40px;
                        border-radius: 4px;
                        position: absolute;
                        left: -2px;
                        top: -2px;
                        transform: rotate(45deg);
                    }

                    #event-page > .content-wrapper
                    .sidebar
                    .location-map
                    .venue-details
                    .directions-icon-container
                    .icon {
                        font-size: 14px;
                    }

        #event-page > .content-wrapper .sidebar .contact-links a {
            color: var(--grey-dark-2);
        }

        #event-page > .content-wrapper .sidebar .icon-bubble {
            width: 40px;
            height: 40px;
            line-height: 40px;
            text-align: center;
            margin: 8px 16px 0 0;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

            #event-page > .content-wrapper .sidebar .icon-bubble .icon {
                margin-right: 0;
            }

    #event-page > .content-wrapper .main-content {
        grid-area: content;
    }

    #event-page > .content-wrapper .additional-info {
        grid-area: additional-info;
    }

    #event-page > .content-wrapper .label {
        font-family: "Questrial";
        font-weight: normal;
        font-size: 14px;
        line-height: 14px;
        color: var(--grey-dark-1);
        margin-bottom: 8px;
    }

    #event-page > .content-wrapper .data {
        font-family: "Roboto";
        font-weight: bold;
        font-size: 16px;
        line-height: 19px;
        color: var(--grey-dark-2);
    }

    #event-page > .content-wrapper .desc-text {
        font-family: "Questrial";
        font-style: normal;
        font-weight: normal;
        font-size: 17px;
        line-height: 27px;
        color: var(--grey-dark-2);
    }

        #event-page > .content-wrapper .desc-text.event-description {
            max-height: 144px;
            overflow: hidden;
        }

    #event-page > .content-wrapper .promoter-desc-text {
        font-family: "Questrial";
        font-weight: 400;
        font-style: normal;
        font-size: 14px;
        line-height: 24px;
        color: var(--grey-dark-2);
    }

    #event-page > .content-wrapper .link {
        font-size: 12px;
        line-height: 14px;
    }

    #event-page > .content-wrapper .group {
        margin-bottom: 64px;
    }

        #event-page > .content-wrapper .group .group-title {
            font-weight: bold;
            font-size: 16px;
            line-height: 20px;
            color: var(--grey-dark-2);
            margin-bottom: 24px;
        }

        #event-page > .content-wrapper .group.admin-tools .data {
            display: grid;
            grid-auto-flow: column;
            grid-gap: 24px;
        }

            #event-page > .content-wrapper .group.admin-tools .data button {
                min-width: unset;
                width: 100%;
            }

        #event-page > .content-wrapper .group .admin-tools.form-group.split-width {
            width: 30%;
        }

        #event-page > .content-wrapper .group.event-info .row.split-half {
            align-items: flex-start;
        }

        #event-page > .content-wrapper .group.event-info .data {
            line-height: 24px;
        }

        #event-page > .content-wrapper .group.event-info .event-date-time .data {
            max-width: 300px;
        }

        #event-page > .content-wrapper .group.event-info .event-location .data {
            max-width: 340px;
        }

        #event-page > .content-wrapper .group.event-info .event-date-time .data span {
            color: var(--red);
        }

        #event-page > .content-wrapper .group.event-info .event-location .text {
            margin-right: 8px;
        }

        #event-page > .content-wrapper .group.ticket-selection .label {
            color: var(--grey-dark-2);
            line-height: 20px;
            margin: 0;
        }

        #event-page > .content-wrapper .group.ticket-selection .row-title-container {
            position: relative;
        }

            #event-page > .content-wrapper
            .group.ticket-selection
            .row-title-container
            .date-dropdown {
                width: 100%;
            }

            #event-page > .content-wrapper
            .group.ticket-selection
            .row-title-container
            #calendar-panel {
                right: 0;
                top: 64px;
                display: none;
                padding: 24px;
                z-index: 99;
            }

                #event-page > .content-wrapper
                .group.ticket-selection
                .row-title-container
                #calendar-panel.open {
                    display: block;
                }

        #event-page > .content-wrapper .group.ticket-selection .ticket-row {
            padding: 16px 0;
            border-bottom: solid 1px var(--grey-light-2);
        }

            #event-page > .content-wrapper
            .group.ticket-selection
            .ticket-row:first-of-type {
                border-top: solid 1px var(--grey-light-2);
            }

        #event-page > .content-wrapper .group.ticket-selection .event-time-slots {
            display: flex;
            margin-bottom: 24px;
        }

        #event-page > .content-wrapper
        .group
        .tickets-list-container
        .tickets-list-table {
            overflow-y: scroll;
        }

            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table
            .table-header,
            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table
            .table-body
            .table-row {
                display: grid;
                grid-template-columns: 212px minmax(60px, 1fr) 34px 72px 16px;
                grid-gap: 24px;
                align-items: center;
            }

                #event-page > .content-wrapper
                .group
                .tickets-list-container
                .tickets-list-table
                .table-header
                .row-cell.quantity,
                #event-page > .content-wrapper
                .group
                .tickets-list-container
                .tickets-list-table
                .table-header
                .column.quantity,
                #event-page > .content-wrapper
                .group
                .tickets-list-container
                .tickets-list-table
                .table-body
                .table-row
                .row-cell.quantity,
                #event-page > .content-wrapper
                .group
                .tickets-list-container
                .tickets-list-table
                .table-body
                .table-row
                .column.quantity {
                    justify-self: center;
                }

            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table.includes-child-senior-checkbox
            .table-header,
            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table.includes-child-senior-checkbox
            .table-body
            .table-row {
                grid-template-columns: minmax(146px, 0.5fr) minmax(60px, 1fr) 140px 34px 72px 16px;
            }

            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table
            .table-body
            .table-row {
                padding: 16px 0;
                border-bottom: solid 1px var(--grey-light-2);
                font-weight: 500;
                font-size: 14px;
                line-height: 20px;
                color: var(--black);
            }

                #event-page > .content-wrapper
                .group
                .tickets-list-container
                .tickets-list-table
                .table-body
                .table-row
                .row-cell.actions
                .icon {
                    color: var(--grey-light-1);
                    cursor: pointer;
                    transition: color 0.2s;
                }

                    #event-page > .content-wrapper
                    .group
                    .tickets-list-container
                    .tickets-list-table
                    .table-body
                    .table-row
                    .row-cell.actions
                    .icon:hover {
                        color: var(--black);
                    }

        #event-page > .content-wrapper .group .cta-container {
            margin-top: 24px;
        }

        #event-page > .content-wrapper .group.additional-info .question-group {
            margin-bottom: 16px;
        }

            #event-page > .content-wrapper
            .group.additional-info
            .question-group
            .question {
                font-weight: 500;
                font-size: 14px;
                line-height: 24px;
                color: var(--grey-dark-2);
            }

        #event-page > .content-wrapper .group.additional-info .terms-list ul {
            list-style: none;
            padding-left: 16px;
        }

        #event-page > .content-wrapper .group.additional-info .terms-list li::before {
            content: "•";
            color: var(--grey);
            font-weight: bold;
            display: inline-block;
            width: 1em;
            margin-left: -1em;
        }

@media screen and (max-width: 768px) {
    #event-page .event-details-banner .banner-wrapper {
        padding: 16px 0;
        /* New change */
        align-self: anchor-center;
    }

    #event-page > .content-wrapper {
        padding: 32px 16px 0;
    }

        #event-page > .content-wrapper .sidebar {
            margin-bottom: 16px;
        }

            #event-page > .content-wrapper .sidebar .row {
                margin-bottom: 32px;
            }

        #event-page > .content-wrapper .group {
            margin-bottom: 48px;
        }

            #event-page > .content-wrapper .group .row.split-half {
                grid-template-columns: unset;
                grid-gap: 32px;
            }

            #event-page > .content-wrapper
            .group.ticket-selection
            .ticket-row
            .ticket-price {
                padding: 16px 0;
            }

                #event-page > .content-wrapper
                .group.ticket-selection
                .ticket-row
                .ticket-price > * {
                    display: inline-block;
                    vertical-align: middle;
                }

                #event-page > .content-wrapper
                .group.ticket-selection
                .ticket-row
                .ticket-price
                .price-total {
                    margin-right: 8px;
                }

            #event-page > .content-wrapper
            .group.ticket-selection
            .ticket-row
            .ticket-quantity
            .sh-event-ticket-info-qty
            .manage-qty-btn.sh-event-ticket-info-qty-increase-wrapper {
                justify-self: flex-end;
            }

            #event-page > .content-wrapper .group.ticket-selection .event-time-slots {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                grid-gap: 16px;
            }

            #event-page > .content-wrapper
            .group
            .tickets-list-container
            .tickets-list-table
            .table-body
            .table-row {
                width: fit-content;
            }

            #event-page > .content-wrapper .group.admin-tools .data {
                grid-gap: 16px;
            }

                #event-page > .content-wrapper .group.admin-tools .data button {
                    height: 72px;
                    line-height: 20px;
                }
}

@media screen and (min-width: 768px) {
    #event-page .event-details-banner {
        max-height: 200px;
        height: auto;
        min-height: 200px;
        display: flex;
    }

        #event-page .event-details-banner .banner-wrapper {
            max-width: 1360px;
            grid-template-columns: 328px 1fr;
            grid-template-areas: "poster details";
            grid-gap: 64px;
            height: 100%;
            padding-top: 56px;
            padding-bottom: 56px;
            left: 0;
            right: 0;
        }

            #event-page .event-details-banner .banner-wrapper .promoter-picture {
                padding-top: 100%;
            }

            #event-page .event-details-banner .banner-wrapper .event-picture {
                padding-top: 140%;
            }

            #event-page .event-details-banner .banner-wrapper .event-poster {
                grid-area: poster;
                height: 100%;
                position: absolute;
                width: 100%;
                border-radius: 16px;
                border: solid 4px white;
                cursor: pointer;
            }

                #event-page .event-details-banner .banner-wrapper .event-poster .backdrop {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    background-color: var(--black50);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    color: white;
                    border-radius: 16px;
                    visibility: hidden;
                    opacity: 0;
                    transition: all 0.2s;
                }

                    #event-page
                    .event-details-banner
                    .banner-wrapper
                    .event-poster
                    .backdrop
                    .icon {
                        font-size: 32px;
                        transition: all 0.2s;
                        display: block;
                    }

                #event-page
                .event-details-banner
                .banner-wrapper
                .event-poster:hover
                .backdrop {
                    visibility: visible;
                    opacity: 1;
                }

                    #event-page
                    .event-details-banner
                    .banner-wrapper
                    .event-poster:hover
                    .backdrop
                    .icon {
                        transform: scale(1.2);
                    }

            #event-page .event-details-banner .banner-wrapper .event-details {
                grid-area: details;
                display: grid;
                align-items: center;
                grid-gap: 128px;
                grid-template-columns: 1fr max-content;
                margin: 0;
            }

                #event-page
                .event-details-banner
                .banner-wrapper
                .event-details
                .details-container
                .event-name {
                    font-size: 24px;
                    line-height: 34px;
                    margin-bottom: 24px;
                    -webkit-line-clamp: 3;
                }

                #event-page
                .event-details-banner
                .banner-wrapper
                .event-details
                .cta-container {
                    visibility: visible;
                }

    @media screen and (max-width: 768px) {
        #event-page
        .event-details-banner
        .banner-wrapper
        .event-details
        .cta-container {
            /* New change */
            display: none;
        }
    }

    #event-page .content-wrapper {
        grid-template-areas: ". content" "sidebar content" "sidebar additional-info";
        grid-template-columns: 328px 1fr;
        grid-gap: 0 64px;
        grid-template-rows: 244px 1fr min-content;
        margin-top: 48px;
    }

        #event-page .content-wrapper#content-wrapper-promoter {
            grid-template-rows: 148px 1fr min-content !important;
        }

        #event-page .content-wrapper .sidebar .row:first-of-type {
            margin-top: 48px;
        }

        #event-page .content-wrapper .group.ticket-selection .row-title-container {
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
        }

            #event-page
            .content-wrapper
            .group.ticket-selection
            .row-title-container
            .date-dropdown {
                max-width: 323px;
            }

        #event-page .content-wrapper .group.ticket-selection #calendar-panel {
            min-width: 376px;
        }

        #event-page .content-wrapper .group.ticket-selection .ticket-row {
            display: grid;
            grid-template-columns: 1fr 160px 168px;
            align-items: center;
            grid-gap: 48px;
            padding: 24px 0;
        }

            #event-page
            .content-wrapper
            .group.ticket-selection
            .ticket-row
            .ticket-price {
                text-align: right;
            }
}

#event-page .content-wrapper > div:last-of-type .row:last-of-type {
    margin: 0;
}

.loading-screen-container {
    background-color: white;
    text-align: center;
    min-height: 500px;
    display: grid;
    grid-template-rows: 1fr 56px;
    width: 100%;
}

    .loading-screen-container .loader-wrapper {
        align-self: center;
        height: fit-content;
    }

        .loading-screen-container .loader-wrapper .loading-header {
            font-size: 16px;
            color: var(--grey-dark-1);
            font-family: "Questrial";
        }

        .loading-screen-container .loader-wrapper img.loader {
            margin: 0 auto;
            display: block;
        }

    .loading-screen-container .created-by-container {
        margin-bottom: 32px;
    }

        .loading-screen-container .created-by-container * {
            vertical-align: middle;
            display: inline-block;
        }

        .loading-screen-container .created-by-container .text {
            color: var(--grey);
            font-size: 12px;
            margin-right: 8px;
        }

#buy-tickets .row.split-half .event-date-time .data span {
    color: var(--red);
}

#buy-tickets .row.split-half .event-date-time .data .year {
    color: var(--grey);
}

#buy-tickets .slider-btn.cards-slider-btn.next-arrow {
    right: 0px;
}

#buy-tickets .slider-btn.cards-slider-btn:hover.next-arrow {
    right: 0px;
}

#buy-tickets .slider-btn.cards-slider-btn:hover.prev-arrow {
    left: 0;
}

#buy-tickets .slider-btn.cards-slider-btn.prev-arrow {
    left: 0;
}

#buy-tickets .card-slider .slick-track {
    justify-content: left;
}

    #buy-tickets .card-slider .slick-track .slick-slide {
        width: 120px !important;
    }

#buy-tickets .row.split-half .data span {
    color: var(--red);
}

#checkout-page .content-wrapper {
    margin: 16px auto 0;
}

    #checkout-page .content-wrapper section {
        margin-bottom: 64px;
    }

        #checkout-page
        .content-wrapper
        section.account-details
        .login-form-checkout
        .forgot-password {
            margin-top: 16px;
            text-align: right;
        }

        #checkout-page .content-wrapper section.account-details .forms-container {
            margin-top: 32px;
            display: grid;
            grid-gap: 120px;
            grid-template-columns: 1fr 16px 1fr;
        }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .form
            .checkboxes-container
            .custom-checkbox-container:first-of-type {
                margin-top: 0;
            }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .divider {
                width: 1px;
                height: 100%;
                background-color: var(--grey-light-1);
                position: relative;
            }

                #checkout-page
                .content-wrapper
                section.account-details
                .forms-container
                .divider:after {
                    content: "or";
                    position: absolute;
                    height: 96px;
                    background-color: white;
                    font-size: 14px;
                    line-height: 96px;
                    top: 0;
                    bottom: 0;
                    left: -8px;
                    margin: auto;
                }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            button {
                width: 100%;
                margin: 24px 0 16px;
            }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .footer-note {
                width: 100%;
            }

        #checkout-page
        .content-wrapper
        section.ticket-details
        .ticket-details-form
        .row.validation-msg {
            margin: 16px 0;
        }

        #checkout-page
        .content-wrapper
        section.ticket-details
        .ticket-details-form
        .ticket-details-list-wrapper {
            display: grid;
            grid-template-columns: 1fr 1fr;
            grid-gap: 24px;
            margin-top: 24px;
        }

            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box {
                background-color: var(--grey-light-3);
                border: 1px solid var(--grey-light-1);
                box-sizing: border-box;
                border-radius: 6px;
                padding: 16px;
                box-sizing: border-box;
            }

                #checkout-page
                .content-wrapper
                section.ticket-details
                .ticket-details-form
                .ticket-details-list-wrapper
                .ticket-box
                .box-header {
                    margin-bottom: 24px;
                }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .box-header > * {
                        display: inline-block;
                        vertical-align: middle;
                    }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .box-header
                    .box-title {
                        font-family: "Roboto";
                        font-weight: bold;
                        font-size: 18px;
                        line-height: 24px;
                        color: var(--grey-dark-2);
                    }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .box-header
                    .ticket-type,
                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .box-header
                    .seat-details {
                        margin-left: 16px;
                    }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .box-header
                    .ticket-type {
                        font-family: "Questrial";
                        font-size: 16px;
                        line-height: 24px;
                        color: var(--grey-dark-2);
                    }

                #checkout-page
                .content-wrapper
                section.ticket-details
                .ticket-details-form
                .ticket-details-list-wrapper
                .ticket-box
                .ticket-form
                .row:last-of-type {
                    margin-bottom: 0;
                }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .ticket-form
                    .row:last-of-type
                    .form-group:last-of-type {
                        margin-bottom: 0;
                    }

                    #checkout-page
                    .content-wrapper
                    section.ticket-details
                    .ticket-details-form
                    .ticket-details-list-wrapper
                    .ticket-box
                    .ticket-form
                    .row:last-of-type.split-half
                    .form-group {
                        margin-bottom: 0;
                    }

        #checkout-page .content-wrapper section.ticket-details .btn-row {
            margin: 24px 0 32px;
        }

        #checkout-page
        .content-wrapper
        section#payment-details
        .payment-details-form-container
        .footer-note {
            margin: 32px 0 24px;
        }

            #checkout-page
            .content-wrapper
            section#payment-details
            .payment-details-form-container
            .footer-note > * {
                display: inline-block;
                vertical-align: middle;
            }

            #checkout-page
            .content-wrapper
            section#payment-details
            .payment-details-form-container
            .footer-note
            .logos-container
            .logo {
                height: 28px;
                margin-left: 16px;
            }

                #checkout-page
                .content-wrapper
                section#payment-details
                .payment-details-form-container
                .footer-note
                .logos-container
                .logo.small {
                    height: 24px;
                }

            #checkout-page
            .content-wrapper
            section#payment-details
            .payment-details-form-container
            .footer-note
            .security-msg {
                margin-right: 16px;
            }

                #checkout-page
                .content-wrapper
                section#payment-details
                .payment-details-form-container
                .footer-note
                .security-msg
                .icon {
                    margin-right: 4px;
                    color: var(--green);
                }

        #checkout-page
        .content-wrapper
        section#payment-details
        #book-and-collect
        .pickup-outlet-selection-container {
            align-items: flex-start;
            grid-gap: 72px;
            margin: 32px 0;
        }

            #checkout-page
            .content-wrapper
            section#payment-details
            #book-and-collect
            .pickup-outlet-selection-container
            .map-container {
                border-radius: 5px;
            }

        #checkout-page
        .content-wrapper
        section#payment-details
        #door-delivery
        .row-subheading {
            margin-bottom: 16px;
        }

        #checkout-page .content-wrapper section.other-details .group-title {
            margin-bottom: 24px;
            font-family: "Roboto";
            font-weight: 500;
            font-size: 16px;
            line-height: 20px;
            color: var(--black);
        }

        #checkout-page .content-wrapper section.other-details .btn-row {
            margin-top: 40px;
        }

        #checkout-page .content-wrapper section.other-details.completed input {
            pointer-events: none;
            border: none;
            padding: 16px 0;
            font-family: "Roboto";
            font-style: normal;
            font-weight: 500;
            font-size: 14px;
            line-height: 24px;
        }

        #checkout-page
        .content-wrapper
        section.checkout-addons
        .availableaddonscontainer
        .split-half-desktop {
            grid-gap: 16px 88px;
        }

        #checkout-page
        .content-wrapper
        section.checkout-addons
        .availableaddonscontainer
        .addons-title {
            font-size: 16px;
            color: black;
            margin-top: 32px;
            margin-bottom: 24px;
        }

        #checkout-page .content-wrapper section.discount-vouchers-container.split-half {
            grid-gap: 48px;
        }

        #checkout-page .content-wrapper section.continue-section .validation-msg {
            margin-bottom: 16px;
        }

.ticket-details-table .table-header,
.ticket-details-table .table-body .table-row {
    display: grid;
    grid-template-columns: 40px minmax(124px, 1fr) 280px 280px 188px;
    grid-gap: 32px;
    align-items: center;
}

.ticket-details-table.pay-by-cash.incl-complimentary-column .table-header,
.ticket-details-table.pay-by-cash.incl-complimentary-column
.table-body
.table-row {
    grid-template-columns: 40px 192px minmax(272px, 1fr) minmax(144px, 1fr) 144px 80px 97px;
}

.ticket-details-table.pay-by-cash:not(.incl-complimentary-column) .table-header,
.ticket-details-table.pay-by-cash:not(.incl-complimentary-column)
.table-body
.table-row {
    grid-template-columns: 40px 192px minmax(272px, 1fr) minmax(144px, 1fr) 144px 80px;
}

.ticket-details-table.pay-by-cash:not(.incl-complimentary-column)
.column.complimentary,
.ticket-details-table.pay-by-cash:not(.incl-complimentary-column)
.row-cell.complimentary {
    display: none;
}

.ticket-details-table .table-header .column.label {
    font-family: "Questrial";
    font-size: 14px;
    line-height: 20px;
    color: var(--grey-dark-1);
}

.ticket-details-table .table-body .table-row {
    border-bottom: solid 1px var(--grey-light-2);
    padding: 16px 0;
}

    .ticket-details-table .table-body .table-row .row-cell {
        font-weight: 500;
        font-size: 16px;
        line-height: 20px;
        color: var(--black);
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }

.booking-details {
    margin: 32px 0 24px;
}

.booking-details,
.security-msg {
    font-family: "Questrial";
    font-size: 12px;
    line-height: 16px;
    color: var(--grey-dark-2);
}

.tickets-list-wrapper .checkout-ticket-row {
    padding: 24px 0;
    border-bottom: solid 1px var(--grey-light-2);
    display: grid;
    align-items: center;
}

    .tickets-list-wrapper .checkout-ticket-row .event-details {
        display: grid;
        grid-template-columns: 64px 1fr;
        grid-gap: 24px;
        align-items: center;
    }

        .tickets-list-wrapper
        .checkout-ticket-row
        .event-details
        .event-poster-thumbnail {
            width: 64px;
            height: 64px;
            border-radius: 4px;
        }

    .tickets-list-wrapper .checkout-ticket-row .column-label {
        font-family: "Questrial";
        font-size: 14px;
        line-height: 20px;
        display: flex;
        align-items: center;
        color: var(--grey-dark-1);
        margin-bottom: 8px;
    }

    .tickets-list-wrapper .checkout-ticket-row .column-data {
        font-family: "Roboto";
        font-weight: 500;
        font-size: 16px;
        line-height: 20px;
        color: var(--black);
    }

        .tickets-list-wrapper .checkout-ticket-row .column-data.incl-link :last-child {
            margin-left: 8px;
        }

        .tickets-list-wrapper .checkout-ticket-row .column-data.incl-link > * {
            display: inline-block;
            vertical-align: middle;
        }

#checkout-page
.content-wrapper
section.existing-payment-methods
.saved-card-container {
    border: solid 1px var(--grey-light-1);
    padding: 16px;
    border-radius: 6px;
    box-sizing: border-box;
    margin-bottom: 24px;
    display: grid;
    grid-template-columns: 1fr 72px;
    grid-gap: 16px;
    align-items: center;
}

    #checkout-page
    .content-wrapper
    section.existing-payment-methods
    .saved-card-container
    .right {
        justify-self: flex-end;
    }

    #checkout-page
    .content-wrapper
    section.existing-payment-methods
    .saved-card-container
    label {
        display: grid;
        grid-gap: 16px;
        align-items: center;
        grid-template-columns: 24px 140px 0.5fr 0.5fr;
        font-weight: normal;
    }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label.card-payment {
            grid-template-columns: 24px 1fr 80px 80px;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.payment-type
        * {
            display: inline-block;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.card-type
        img {
            max-height: 24px;
            vertical-align: middle;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.expiry-date {
            font-size: 12px;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.center {
            justify-self: center;
            text-align: center;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.right {
            justify-self: flex-end;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.info-text {
            font-size: 10px;
            line-height: 12px;
        }

        #checkout-page
        .content-wrapper
        section.existing-payment-methods
        .saved-card-container
        label
        .card-details.charge-info-text {
            font-size: 14px;
            line-height: 16px;
        }

#checkout-page .content-wrapper section.existing-payment-methods .btn-row {
    margin-bottom: 32px;
}
/*# sourceMappingURL=style.css.map */


@media screen and (max-width: 768px) {
    #checkout-page .content-wrapper {
        padding: 0 16px;
    }

        #checkout-page .content-wrapper section:not(:last-of-type) {
            margin-bottom: 32px;
        }

        #checkout-page .content-wrapper section.account-details .forms-container {
            margin-top: 16px;
            display: block;
        }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .form
            .row-title-container,
            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .divider {
                display: none;
            }

            #checkout-page
            .content-wrapper
            section.account-details
            .forms-container
            .tab-container {
                display: grid;
                grid-template-columns: 1fr 32px 1fr;
            }

                #checkout-page
                .content-wrapper
                section.account-details
                .forms-container
                .tab-container
                .spacer {
                    border-bottom: solid 1px var(--grey-light-2);
                }

                #checkout-page
                .content-wrapper
                section.account-details
                .forms-container
                .tab-container
                .tab
                .row-title {
                    color: var(--grey-dark-1);
                }

                #checkout-page
                .content-wrapper
                section.account-details
                .forms-container
                .tab-container
                .tab.incl-border.selected {
                    border-bottom: solid 2px var(--blue);
                }

                #checkout-page
                .content-wrapper
                section.account-details
                .forms-container
                .tab-container
                .tab.selected
                .row-title {
                    color: var(--black);
                }

        #checkout-page
        .content-wrapper
        section.ticket-details
        .ticket-details-form
        .ticket-details-list-wrapper {
            grid-template-columns: 1fr;
        }

            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .box-title {
                font-size: 16px;
                line-height: 24px;
            }

            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .box-title,
            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .seat-details {
                margin-right: 8px;
                margin-left: 0;
            }

            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .ticket-type {
                margin: 0;
            }

            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .seat-details,
            #checkout-page
            .content-wrapper
            section.ticket-details
            .ticket-details-form
            .ticket-details-list-wrapper
            .ticket-box
            .box-header
            .ticket-type {
                font-size: 14px;
                line-height: 24px;
            }

        #checkout-page
        .content-wrapper
        section#payment-details
        .payment-details-form-container
        .footer-note > * {
            display: block;
        }

        #checkout-page
        .content-wrapper
        section#payment-details
        .payment-details-form-container
        .footer-note
        .logos-container
        .logo {
            height: 24px;
            margin-right: 14px;
            margin-left: 0;
        }

        #checkout-page
        .content-wrapper
        section#payment-details
        .payment-details-form-container
        .footer-note
        .security-msg {
            margin: 0 0 16px;
        }

            #checkout-page
            .content-wrapper
            section#payment-details
            .payment-details-form-container
            .footer-note
            .security-msg
            .icon {
                margin-right: 4px;
                color: var(--green);
            }

        #checkout-page
        .content-wrapper
        section#payment-details
        #book-and-collect
        .pickup-outlet-selection-container {
            display: block;
        }

        #checkout-page .content-wrapper section.other-details .btn-row {
            margin-top: 8px;
        }

        #checkout-page
        .content-wrapper
        section.order-details-summary
        .tickets-summary
        .row-title-container {
            margin: 0;
        }

        #checkout-page
        .content-wrapper
        section.user-details
        .userinformationcontainerform
        .form
        .form-group:last-of-type {
            margin-bottom: 0;
        }

        #checkout-page .content-wrapper section.split-half {
            grid-template-columns: 1fr;
            grid-gap: 32px;
        }


    .ticket-details-table {
        overflow-y: scroll;
    }

        .ticket-details-table .table-body .table-row {
            width: -webkit-fit-content;
            width: -moz-fit-content;
            width: fit-content;
        }

    .tickets-list-wrapper .checkout-ticket-row {
        grid-template-areas: "details actions" "type type" "qty qty" "price price";
        grid-gap: 8px 16px;
    }

        .tickets-list-wrapper .checkout-ticket-row .event-details {
            grid-area: details;
            grid-template-columns: 40px 1fr;
            grid-gap: 16px;
            align-items: flex-start;
        }

            .tickets-list-wrapper
            .checkout-ticket-row
            .event-details
            .event-poster-thumbnail {
                height: 40px;
                width: 40px;
            }

            .tickets-list-wrapper
            .checkout-ticket-row
            .event-details
            .event-info
            .event-date {
                margin-top: 8px;
            }

        .tickets-list-wrapper .checkout-ticket-row .ticket-type {
            grid-area: type;
        }

        .tickets-list-wrapper .checkout-ticket-row .ticket-quantity {
            grid-area: qty;
        }

        .tickets-list-wrapper .checkout-ticket-row .ticket-price {
            grid-area: price;
        }

        .tickets-list-wrapper .checkout-ticket-row .actions {
            grid-area: actions;
            align-self: flex-start;
        }

        .tickets-list-wrapper .checkout-ticket-row .column-data {
            font-size: 14px;
            line-height: 20px;
        }

        .tickets-list-wrapper .checkout-ticket-row .column-label {
            margin-bottom: 0;
        }

        .tickets-list-wrapper .checkout-ticket-row .column {
            display: grid;
            grid-gap: 16px;
            grid-template-columns: 40px 1fr;
        }
}

@media screen and (min-width: 768px) {
    #checkout-page .content-wrapper {
        margin: 32px auto 0;
    }

        #checkout-page
        .content-wrapper
        section.discount-vouchers-container.split-half {
            grid-gap: 72px;
        }

        #checkout-page .content-wrapper section.account-details .tab-container {
            display: none;
        }

    .tickets-list-wrapper .checkout-ticket-row {
        grid-template-columns: 1fr 252px 80px 80px;
        grid-gap: 80px;
    }

        .tickets-list-wrapper .checkout-ticket-row .column.ticket-price {
            justify-self: flex-end;
            text-align: right;
        }
}

.ui-message-page {
    height: 100%;
}

    .ui-message-page .content-wrapper {
        height: 100%;
        margin: 0 auto;
    }

        .ui-message-page .content-wrapper .message-container {
            margin: 48px 0;
        }

            .ui-message-page .content-wrapper .message-container .row-subheading {
                margin-top: 16px;
            }

        .ui-message-page .content-wrapper .actions-container {
            grid-gap: 24px;
        }

            .ui-message-page .content-wrapper .actions-container button {
                width: 100%;
            }

@media screen and (max-width: 768px) {
    .ui-message-page .content-wrapper {
        padding: 0 16px;
        height: auto;
    }

        .ui-message-page .content-wrapper .actions-container a button {
            margin-bottom: 24px;
        }
}

#pay-by-cash .content-wrapper {
    margin: 16px auto 32px;
}

    #pay-by-cash .content-wrapper .ticket-details-table {
        margin: 24px 0 42px;
    }

        #pay-by-cash
        .content-wrapper
        .ticket-details-table
        .table-body
        .row-cell.complimentary,
        #pay-by-cash
        .content-wrapper
        .ticket-details-table
        .table-body
        .column.complimentary {
            justify-self: center;
        }

@media screen and (max-width: 768px) {
    #pay-by-cash .content-wrapper {
        padding: 0 16px;
    }
}

.confirmation-page .content-wrapper {
    margin: 32px auto;
}

    .confirmation-page .content-wrapper .confirmation-text-section .row-subheading {
        margin: 16px 0 32px;
        line-height: 24px;
    }

    .confirmation-page .content-wrapper > div[class*="-section"] {
        margin-bottom: 48px;
    }

    .confirmation-page .content-wrapper .order-details-section .details-container {
        border-bottom: solid 1px var(--grey-light-2);
    }

        .confirmation-page
        .content-wrapper
        .order-details-section
        .details-container
        .details-row {
            display: grid;
            grid-template-columns: 100px 1fr;
            grid-gap: 8px;
            margin-bottom: 24px;
        }

            .confirmation-page
            .content-wrapper
            .order-details-section
            .details-container
            .details-row
            .row-label {
                font-family: "Questrial";
                font-size: 14px;
                line-height: 20px;
                color: var(--grey-dark-1);
            }

            .confirmation-page
            .content-wrapper
            .order-details-section
            .details-container
            .details-row
            .row-data {
                font-weight: 500;
                font-size: 16px;
                line-height: 20px;
                color: var(--grey-dark-2);
            }

                .confirmation-page
                .content-wrapper
                .order-details-section
                .details-container
                .details-row
                .row-data
                .ticket {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    align-items: center;
                }

                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket:not(:last-of-type) {
                        margin-bottom: 16px;
                    }

                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket
                    .details > * {
                        display: inline-block;
                        vertical-align: middle;
                    }

                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket
                    .details
                    .amount,
                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket
                    .details
                    .ticket-type {
                        font-family: "Questrial";
                        font-size: 16px;
                        line-height: 20px;
                        color: var(--grey-dark-2);
                    }

                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket
                    .details
                    .sign {
                        line-height: 20px;
                    }

                        .confirmation-page
                        .content-wrapper
                        .order-details-section
                        .details-container
                        .details-row
                        .row-data
                        .ticket
                        .details
                        .sign
                        .icon {
                            margin: 0 8px;
                            font-size: 8px;
                            color: var(--grey);
                        }

                    .confirmation-page
                    .content-wrapper
                    .order-details-section
                    .details-container
                    .details-row
                    .row-data
                    .ticket
                    .price {
                        justify-self: flex-end;
                        font-weight: 500;
                        font-size: 16px;
                        line-height: 20px;
                        text-align: right;
                        color: var(--black);
                    }

    .confirmation-page .content-wrapper .order-details-section .totals-container {
        margin-bottom: 64px;
    }

    .confirmation-page .content-wrapper .page-actions-section {
        margin-bottom: 48px;
        grid-gap: 24px;
    }

@media screen and (min-width: 768px) {
    .confirmation-page
    .content-wrapper
    .email-tickets-section
    .send-tickets-form {
        max-width: 760px;
    }

    .confirmation-page .content-wrapper .email-tickets-section .input-btn-group {
        margin-top: 16px;
    }
}

@media screen and (max-width: 768px) {
    .confirmation-page .content-wrapper {
        padding: 0 16px;
    }

        .confirmation-page
        .content-wrapper
        .page-actions-section
        a:not(:last-of-type)
        button {
            margin-bottom: 24px;
        }

        .confirmation-page
        .content-wrapper
        .email-tickets-section
        .send-tickets-form
        .input-btn-group {
            grid-template-columns: unset;
        }
}

.content-page:not(#dashboard) .content-wrapper p:not(.row-subheading),
.content-page:not(#dashboard) .content-wrapper li {
    font-family: "Questrial";
    font-size: 16px;
    line-height: 28px;
    margin: 16px 0;
}

.content-page .content-wrapper {
    margin: 56px auto;
}

    .content-page .content-wrapper .content-page-title {
        font-family: "Questrial";
        color: var(--grey-dark-2);
        font-weight: normal;
        width: 100%;
        font-size: 28px;
        line-height: 40px;
        margin-bottom: 24px;
    }

    .content-page .content-wrapper .content-page-subheading {
        font-size: 20px;
        line-height: 32px;
        font-weight: 700;
    }

    .content-page .content-wrapper .group {
        margin: 48px 0;
    }

        .content-page .content-wrapper .group .group-data {
            font-family: "Questrial";
            font-style: normal;
            font-weight: normal;
            font-size: 16px;
            line-height: 28px;
            color: var(--grey-dark-2);
        }

        .content-page .content-wrapper .group ul,
        .content-page .content-wrapper .group ol {
            list-style-position: outside;
            padding-left: 24px;
        }

            .content-page .content-wrapper .group ul li,
            .content-page .content-wrapper .group ol li {
                line-height: 24px;
                margin: 16px 0;
            }

@media screen and (max-width: 768px) {
    .content-page .content-wrapper {
        margin: 32px 0;
        padding: 0 16px;
    }

        .content-page .content-wrapper h1 {
            font-size: 24px;
            line-height: 32px;
        }

        .content-page .content-wrapper h2 {
            font-size: 18px;
            line-height: 28px;
        }

        .content-page .content-wrapper .group {
            margin: 32px 0;
        }
}

#dashboard .content-wrapper .ticket-list-wrapper {
    margin-bottom: 64px;
}

    #dashboard .content-wrapper .ticket-list-wrapper .announcement-box {
        margin-bottom: 32px;
    }

    #dashboard .content-wrapper .ticket-list-wrapper .purchased-tickets-table {
        overflow-y: visible;
    }

        #dashboard
        .content-wrapper
        .ticket-list-wrapper
        .purchased-tickets-table > .table-body > .table-row
        .row-overview {
            cursor: pointer;
        }

        #dashboard
        .content-wrapper
        .ticket-list-wrapper
        .purchased-tickets-table > .table-body > .table-row:hover > .row-overview:not(.pending):not(.completed)
        .row-cell {
            color: var(--black);
        }

        #dashboard
        .content-wrapper
        .ticket-list-wrapper
        .purchased-tickets-table > .table-body > .table-row:not(.open-details):hover {
            box-shadow: 0 1px 5px rgba(129, 145, 151, 0.16);
        }

    #dashboard
    .content-wrapper
    .ticket-list-wrapper
    .row-details-container
    .row-ticket-details-table > .table-header,
    #dashboard
    .content-wrapper
    .ticket-list-wrapper
    .row-details-container
    .row-ticket-details-table > .table-body
    .table-row {
        display: grid;
        grid-template-columns: 56px minmax(200px, 280px) 200px 120px 204px minmax( 16px, 1fr );
        align-items: center;
        grid-gap: 56px;
    }

@media screen and (max-width: 992px) {
    #dashboard .content-wrapper .ticket-list-wrapper {
        margin-bottom: 32px;
    }

        #dashboard
        .content-wrapper
        .ticket-list-wrapper
        .row-details-container
        .row-ticket-details-table > .table-header,
        #dashboard
        .content-wrapper
        .ticket-list-wrapper
        .row-details-container
        .row-ticket-details-table > .table-body
        .table-row {
            grid-gap: 8px;
        }
}

#dashboard .content-wrapper .older-purchases-link-container {
    margin-top: 32px;
    text-align: center;
    width: 100%;
}

#tour .image-container,
#tour img {
    max-width: 590px;
    width: 100%;
}

#tour .group.split-half-desktop {
    grid-gap: 80px;
    align-items: flex-start;
}

    #tour .group.split-half-desktop .content.no-title .group-text:first-of-type {
        margin-top: 0;
    }

    #tour .group.split-half-desktop .content .content-group:not(:last-of-type) {
        margin-bottom: 48px;
    }

#tour .primary-btn {
    line-height: 24px;
    padding: 16px 24px;
}

@media screen and (max-width: 768px) {
    #tour .group .group-title {
        margin-top: 16px;
    }

    #tour .group .content:not(:last-of-type) {
        margin-bottom: 32px;
    }

    #tour .group.split-half-desktop .content .content-group:not(:last-of-type) {
        margin-bottom: 32px;
    }
}

#blog-article .article-page .article-header {
    text-align: center;
    margin: 40px 0 32px;
}

    #blog-article .article-page .article-header .edit-link {
        display: inline-block;
        margin-bottom: 24px;
    }

    #blog-article .article-page .article-header .article-date {
        font-size: 14px;
        line-height: 16px;
        font-family: "Questrial";
        color: var(--red);
    }

    #blog-article .article-page .article-header .article-title {
        margin: 8px 0;
        font-weight: 900;
        font-size: 32px;
        line-height: 40px;
        color: var(--black);
    }

    #blog-article .article-page .article-header .article-categories:not(.creator) {
        font-family: "Roboto";
        font-style: normal;
        font-weight: 500;
        font-size: 14px;
        line-height: 16px;
        color: var(--black);
    }

    #blog-article .article-page .article-header .article-categories p.tag {
        display: inline-block;
        vertical-align: middle;
        font-weight: normal;
        font-size: 12px;
        line-height: 16px;
        color: var(--grey-dark-1);
    }

        #blog-article
        .article-page
        .article-header
        .article-categories
        p.tag:not(:last-of-type):after {
            color: var(--grey-light-1);
            padding: 0 8px;
        }

#blog-article .article-page .content-container {
    position: relative;
}

    #blog-article .article-page .content-container .article-main-image {
        width: 100%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-color: var(--grey-light-3);
    }

    #blog-article .article-page .content-container .article-content {
        background-color: white;
        padding: 32px 16px 0;
    }

        #blog-article
        .article-page
        .content-container
        .article-content
        .featured-content {
            font-style: italic;
            font-weight: bold;
            font-size: 24px;
            line-height: 32px;
            margin-bottom: 40px;
        }

        #blog-article .article-page .content-container .article-content > p {
            margin-bottom: 32px;
            font-family: "Questrial";
            font-style: normal;
            font-weight: normal;
            font-size: 16px;
            line-height: 24px;
        }

        #blog-article .article-page .content-container .article-content .inline-image {
            background-color: var(--grey-light-3);
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            width: 100%;
            height: 203px;
            margin: 40px auto;
        }

            #blog-article
            .article-page
            .content-container
            .article-content
            .inline-image.custom {
                background-size: contain;
                background-color: transparent;
            }

        #blog-article
        .article-page
        .content-container
        .article-content.author-details-wrapper {
            padding-top: 40px;
            padding-bottom: 0;
        }

            #blog-article
            .article-page
            .content-container
            .article-content.author-details-wrapper > * {
                display: inline-block;
                vertical-align: middle;
            }

            #blog-article
            .article-page
            .content-container
            .article-content.author-details-wrapper
            .author-profile-picture {
                width: 40px;
                height: 40px;
                border-radius: 40px;
            }

            #blog-article
            .article-page
            .content-container
            .article-content.author-details-wrapper
            .details {
                margin-left: 16px;
            }

                #blog-article
                .article-page
                .content-container
                .article-content.author-details-wrapper
                .details
                .author-name {
                    font-family: "Roboto";
                    font-style: normal;
                    font-weight: bold;
                    font-size: 14px;
                    line-height: 16px;
                    color: var(--grey-dark-2);
                }

                #blog-article
                .article-page
                .content-container
                .article-content.author-details-wrapper
                .details
                .label {
                    font-family: "Questrial";
                    font-weight: normal;
                    font-size: 12px;
                    line-height: 16px;
                    color: var(--grey-dark-1);
                    margin-top: 4px;
                }

@media screen and (max-width: 768px) {
    #blog-article .content-wrapper {
        padding: 0;
    }

    #blog-article .article-page .article-main-image {
        height: 236px;
    }

    #blog-article .article-page .content-container .article-content {
        width: 100%;
    }
}

@media screen and (max-width: 992px) {
    #blog-article .scroll-to-article-button {
        display: none;
    }
}

@media screen and (min-width: 768px) and (max-width: 992px) {
    #blog-article .article-page .content-container .article-content {
        width: 90%;
    }
}

@media screen and (min-width: 992px) {
    #blog-article .scroll-to-article-button {
        position: fixed;
        bottom: 32px;
        left: 0;
        right: 0;
        margin: auto;
        display: block;
        z-index: 10;
        transition: all 0.2s ease-in;
        transform: translatey(0px);
        animation: float 2s ease-in-out infinite;
    }

        #blog-article .scroll-to-article-button.fade {
            opacity: 0;
            visibility: hidden;
        }

    #blog-article .article-page .article-header {
        margin: 64px 0 48px;
    }

    #blog-article .article-page .content-container .article-main-image {
        height: 853px;
    }

    #blog-article .article-page .content-container .article-content {
        max-width: 1040px;
        margin: 0 auto;
        padding: 80px 96px 0;
        transform: translateY(-160px);
    }

        #blog-article
        .article-page
        .content-container
        .article-content
        .featured-content {
            font-size: 28px;
            line-height: 40px;
        }

        #blog-article
        .article-page
        .content-container
        .article-content
        .inline-image {
            margin: 64px auto;
            height: 500px;
        }

    #blog-article .related-articles {
        margin-top: -72px;
    }
}

@keyframes float {
    0% {
        transform: translate(0, 0px);
    }

    50% {
        transform: translate(0, 8px);
    }

    100% {
        transform: translate(0, 0px);
    }
}

.blog .titles-container {
    padding-top: 64px;
}

@media screen and (max-width: 768px) {
    .blog .tag-list {
        flex-wrap: nowrap;
        overflow-x: scroll;
        margin-bottom: 16px;
    }

        .blog .tag-list .tag-bubble {
            margin-bottom: 16px;
            margin-right: 8px;
        }

    .blog .cards-wrapper.cards-grid {
        grid-template-columns: minmax(164px, 1fr);
        grid-gap: 16px;
    }
}

.article-creator-form#blog-article .creator-block-actions {
    width: 40px;
    height: fit-content;
    background: var(--grey-light-2);
    border-radius: 6px;
    transition: all 0.2s;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    position: absolute;
    right: -48px;
    top: 0;
    bottom: 0;
    margin: auto;
}

    .article-creator-form#blog-article .creator-block-actions .action-item {
        width: 32px;
        height: 32px;
        background-color: white;
        text-align: center;
        line-height: 32px;
        border-radius: 4px;
        color: var(--grey-dark-2);
        box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
    }

        .article-creator-form#blog-article
        .creator-block-actions
        .action-item:not(:last-of-type) {
            margin-bottom: 4px;
        }

        .article-creator-form#blog-article .creator-block-actions .action-item.delete {
            color: var(--red);
        }

.article-creator-form#blog-article
.content-container
.article-main-image
.fileuploader-wrapper {
    position: relative;
}

    .article-creator-form#blog-article
    .content-container
    .article-main-image
    .fileuploader-wrapper
    .creator-block-actions {
        opacity: 0;
        visibility: hidden;
        right: 16px;
        top: 16px;
        bottom: unset;
    }

.article-creator-form#blog-article
.content-container
.article-main-image.selected:hover
.fileuploader-wrapper
.creator-block-actions {
    opacity: 1;
    visibility: visible;
}

.article-creator-form#blog-article #article-content .inline-image.fileuploader {
    margin: 0;
    transition: height 0.2s, padding 0.2s;
}

    .article-creator-form#blog-article
    #article-content
    .inline-image.fileuploader.slide {
        height: 0;
        overflow: hidden;
        padding: 0 16px;
    }

.article-creator-form .article-header {
    position: relative;
}

    .article-creator-form .article-header .article-settings-wrapper {
        position: absolute;
        right: -16px;
        top: -48px;
    }

        .article-creator-form
        .article-header
        .article-settings-wrapper
        .settings-container {
            position: relative;
        }

            .article-creator-form
            .article-header
            .article-settings-wrapper
            .settings-container
            button.action-btn {
                min-width: unset;
            }

            .article-creator-form
            .article-header
            .article-settings-wrapper
            .settings-container
            .settings-panel {
                position: absolute;
                right: 0;
                top: 72px;
                background-color: white;
                width: 400px;
                border: 1px solid var(--grey-light-1);
                box-shadow: 0px 2px 6px rgba(9, 10, 11, 0.1);
                border-radius: 8px;
                padding: 24px;
                z-index: 99;
                opacity: 0;
                visibility: hidden;
            }

                .article-creator-form
                .article-header
                .article-settings-wrapper
                .settings-container
                .settings-panel
                * {
                    width: 100%;
                }

                .article-creator-form
                .article-header
                .article-settings-wrapper
                .settings-container
                .settings-panel
                label {
                    text-align: left;
                }

                .article-creator-form
                .article-header
                .article-settings-wrapper
                .settings-container
                .settings-panel
                .form-group:last-of-type {
                    margin-bottom: 0;
                }

                .article-creator-form
                .article-header
                .article-settings-wrapper
                .settings-container
                .settings-panel.show {
                    opacity: 1;
                    visibility: visible;
                }

.article-creator-form .article-title .creator-block input {
    font-weight: 900;
    font-size: 24px;
    line-height: 32px;
}

    .article-creator-form .article-title .creator-block input::placeholder {
        font-weight: normal;
    }

.article-creator-form .image-group-wrapper {
    position: relative;
}

    .article-creator-form .image-group-wrapper .input-group {
        margin-top: 16px;
    }

    .article-creator-form .image-group-wrapper .format-switch {
        position: absolute;
        top: 16px;
        left: 16px;
        padding: 8px 16px;
        width: fit-content;
        background-color: white;
        text-align: center;
        line-height: 32px;
        border-radius: 4px;
        color: var(--grey-dark-2);
        box-shadow: 0px 1px 2px rgba(9, 10, 11, 0.1);
        opacity: 0;
        visibility: hidden;
        transition: all 0.2s;
    }

        .article-creator-form .image-group-wrapper .format-switch .radio-button-group {
            grid-gap: 32px;
        }

            .article-creator-form
            .image-group-wrapper
            .format-switch
            .radio-button-group
            .custom-radio-container
            .radio-btn-label {
                line-height: 16px;
                font-size: 12px;
            }

                .article-creator-form
                .image-group-wrapper
                .format-switch
                .radio-button-group
                .custom-radio-container
                .radio-btn-label:before {
                    width: 16px;
                    height: 16px;
                    margin-right: 8px;
                    vertical-align: sub;
                }

                .article-creator-form
                .image-group-wrapper
                .format-switch
                .radio-button-group
                .custom-radio-container
                .radio-btn-label:after {
                    width: 2px;
                    height: 2px;
                    left: 6px;
                    top: 6px;
                }

    .article-creator-form .image-group-wrapper .inline-image.selected:hover.custom {
        background-color: var(--grey-light-3) !important;
    }

    .article-creator-form
    .image-group-wrapper
    .inline-image.selected:hover
    .format-switch {
        opacity: 1;
        visibility: visible;
    }

.article-creator-form .creator-block {
    position: relative;
}

    .article-creator-form .creator-block:not(.fixed):after {
        content: "";
        height: 202px;
        width: 56px;
        display: block;
        right: -56px;
        top: 0;
        position: absolute;
        z-index: -1;
    }

    .article-creator-form .creator-block:not(.fixed).image-group-wrapper:after {
        height: 500px;
    }

    .article-creator-form .creator-block .paragraph-block {
        transition: height 0.2s, padding 0.2s;
        height: 202px;
        font-size: 16px;
        line-height: 24px;
    }

        .article-creator-form .creator-block .paragraph-block.featured-content {
            font-size: 24px !important;
            line-height: 32px !important;
            height: 194px;
            font-weight: 400 !important;
        }

        .article-creator-form .creator-block .paragraph-block.slide {
            height: 0;
            overflow: hidden;
            padding: 0 16px;
        }

    .article-creator-form .creator-block.incl-icon * {
        display: inline-block;
        vertical-align: middle;
    }

    .article-creator-form .creator-block.incl-icon.main-group {
        margin-bottom: 24px;
    }

        .article-creator-form .creator-block.incl-icon.main-group .icon {
            color: var(--grey-light-1);
            font-size: 32px;
            margin-right: 16px;
        }

        .article-creator-form .creator-block.incl-icon.main-group input {
            width: 800px;
        }

    .article-creator-form .creator-block.incl-icon.sub-group .icon {
        color: var(--grey-light-1);
        font-size: 24px;
        line-height: 22px;
        margin-right: 8px;
    }

    .article-creator-form
    .creator-block.incl-icon.sub-group
    .tagsinput#tag-input_tagsinput {
        width: 480px !important;
        border-radius: 5px;
        padding: 8px;
        text-align: left;
        display: inline-flex !important;
    }

        .article-creator-form
        .creator-block.incl-icon.sub-group
        .tagsinput#tag-input_tagsinput
        .tag {
            margin: 0 4px 0 0;
            height: 32px;
            padding: 8px 36px 8px 8px;
            background-color: var(--grey-light-2);
            font-family: "Roboto";
            font-style: normal;
            font-weight: 500;
            font-size: 14px;
            line-height: 14px;
            color: var(--black);
            border-radius: 4px;
        }

            .article-creator-form
            .creator-block.incl-icon.sub-group
            .tagsinput#tag-input_tagsinput
            .tag
            .tag-remove {
                height: 100%;
                width: 32px;
                outline: none;
                border-radius: 0 4px 4px 0;
            }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                .tag
                .tag-remove:before,
                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                .tag
                .tag-remove:after {
                    content: unset;
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                .tag
                .tag-remove:after {
                    font-family: "fontcustom";
                    content: "\f12e";
                    background: unset;
                    width: 32px;
                    height: 32px;
                    line-height: 32px;
                    transform: none;
                    top: 0;
                    left: unset;
                    right: 0;
                    font-size: 10px;
                    color: var(--grey);
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                .tag
                .tag-remove:hover {
                    cursor: pointer;
                    background: rgba(249, 90, 97, 0.1);
                }

                    .article-creator-form
                    .creator-block.incl-icon.sub-group
                    .tagsinput#tag-input_tagsinput
                    .tag
                    .tag-remove:hover:after {
                        color: var(--red);
                    }

        .article-creator-form
        .creator-block.incl-icon.sub-group
        .tagsinput#tag-input_tagsinput
        #tag-input_addTag {
            height: 32px;
            width: auto;
        }

            .article-creator-form
            .creator-block.incl-icon.sub-group
            .tagsinput#tag-input_tagsinput
            #tag-input_addTag
            #tag-input_tag {
                height: 100%;
                max-width: unset;
                margin: 0;
                padding: 0 4px;
            }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag::placeholder {
                    /* Firefox, Chrome, Opera */
                    color: var(--grey);
                    font-size: 14px;
                    line-height: 16px;
                    font-weight: normal;
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag:-ms-input-placeholder {
                    /* Internet Explorer 10-11 */
                    color: var(--grey);
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag::-ms-input-placeholder {
                    /* Microsoft Edge */
                    color: var(--grey);
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag:focus::placeholder {
                    /* Firefox, Chrome, Opera */
                    color: var(--grey-light-1);
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag:focus:-ms-input-placeholder {
                    /* Internet Explorer 10-11 */
                    color: var(--grey-light-1);
                }

                .article-creator-form
                .creator-block.incl-icon.sub-group
                .tagsinput#tag-input_tagsinput
                #tag-input_addTag
                #tag-input_tag:focus::-ms-input-placeholder {
                    /* Microsoft Edge */
                    color: var(--grey-light-1);
                }

        .article-creator-form
        .creator-block.incl-icon.sub-group
        .tagsinput#tag-input_tagsinput:hover {
            border-color: var(--grey);
        }

        .article-creator-form
        .creator-block.incl-icon.sub-group
        .tagsinput#tag-input_tagsinput:focus-within {
            border-color: var(--blue);
        }

.article-creator-form .spacer {
    height: 40px;
    width: 100%;
    position: relative;
}

    .article-creator-form .spacer .spacer-actions {
        visibility: hidden;
    }

    .article-creator-form .spacer:after {
        content: "";
        height: 40px;
        width: 56px;
        display: block;
        right: -56px;
        top: 0;
        position: absolute;
        z-index: -1;
    }

.article-creator-form .new-block-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 40px;
    margin-top: 40px;
}

    .article-creator-form .new-block-wrapper .new-creator-block {
        border: dashed 2px var(--grey-light-1);
        height: 200px;
        display: grid;
        align-items: center;
        justify-content: center;
        text-align: center;
        cursor: pointer;
        border-radius: 6px;
        transition: all 0.2s ease-in;
    }

        .article-creator-form
        .new-block-wrapper
        .new-creator-block:not(.tooltip-item)
        .block-content {
            height: fit-content;
        }

            .article-creator-form
            .new-block-wrapper
            .new-creator-block:not(.tooltip-item)
            .block-content
            .icon {
                font-size: 40px;
                color: var(--grey);
                text-align: center;
                margin: 0 auto 24px;
                position: relative;
                transition: all 0.2s ease-in;
            }

                .article-creator-form
                .new-block-wrapper
                .new-creator-block:not(.tooltip-item)
                .block-content
                .icon:after {
                    font-family: "fontcustom";
                    content: "\f10a";
                    position: absolute;
                    font-size: 10px;
                    color: var(--grey-light-2);
                    left: -16px;
                    font-style: normal;
                    transition: all 0.2s ease-in;
                }

            .article-creator-form
            .new-block-wrapper
            .new-creator-block:not(.tooltip-item)
            .block-content
            span {
                display: block;
                font-family: "Roboto";
                font-style: normal;
                font-weight: bold;
                font-size: 16px;
                line-height: 24px;
                color: var(--grey-dark-2);
                transition: all 0.2s ease-in;
            }

        .article-creator-form .new-block-wrapper .new-creator-block:hover {
            border-color: var(--grey);
        }

            .article-creator-form
            .new-block-wrapper
            .new-creator-block:hover
            .block-content
            .icon {
                color: var(--blue);
            }

                .article-creator-form
                .new-block-wrapper
                .new-creator-block:hover
                .block-content
                .icon:after {
                    color: var(--blue);
                }

            .article-creator-form
            .new-block-wrapper
            .new-creator-block:hover
            .block-content
            span {
                color: var(--black);
            }

@media screen and (min-width: 768px) {
    .article-creator-form .spacer {
        cursor: pointer;
    }

        .article-creator-form .spacer .spacer-actions {
            position: absolute;
            right: -56px;
            top: 0;
            bottom: 0;
            margin: auto;
            left: unset;
            width: 40px;
            min-width: unset;
            height: 40px;
            transition: none;
        }

            .article-creator-form .spacer .spacer-actions:hover .icon {
                color: var(--blue);
            }

            .article-creator-form .spacer .spacer-actions .action-list {
                opacity: 0;
                visibility: hidden;
            }

            .article-creator-form .spacer .spacer-actions.show-actions {
                width: 114px;
                height: fit-content;
                right: -130px;
                transition: all 0.3s;
            }

                .article-creator-form .spacer .spacer-actions.show-actions .btn-add-new {
                    display: none;
                }

                .article-creator-form .spacer .spacer-actions.show-actions .action-list {
                    opacity: 1;
                    visibility: visible;
                }

                    .article-creator-form
                    .spacer
                    .spacer-actions.show-actions
                    .action-list
                    .tooltip-item {
                        text-align: left;
                        color: var(--grey-dark-2);
                        font-size: 12px;
                        line-height: 21px;
                        font-weight: bold;
                        height: 32px;
                    }

                        .article-creator-form
                        .spacer
                        .spacer-actions.show-actions
                        .action-list
                        .tooltip-item
                        .icon {
                            color: var(--grey);
                            margin-right: 8px;
                            font-size: 16px;
                            line-height: 16px;
                        }

                        .article-creator-form
                        .spacer
                        .spacer-actions.show-actions
                        .action-list
                        .tooltip-item:not(:last-of-type) {
                            margin-bottom: 4px;
                        }

                        .article-creator-form
                        .spacer
                        .spacer-actions.show-actions
                        .action-list
                        .tooltip-item > * {
                            display: inline-block;
                            vertical-align: middle;
                        }

                        .article-creator-form
                        .spacer
                        .spacer-actions.show-actions
                        .action-list
                        .tooltip-item:hover
                        .icon {
                            color: var(--blue);
                        }

        .article-creator-form .spacer:hover .spacer-actions {
            visibility: visible;
            opacity: 1;
        }
}

/* Groups */

.ticket-row .ticket-details.ticket-group {
    display: flex;
    gap: 14px;
}

    .ticket-row .ticket-details.ticket-group .group-img {
        width: 100px;
        height: 85px;
        object-fit: contain;
    }

.ticket-row .ticket-price.ticket-group-price {
    height: 100%;
    padding-top: 8px;
}

.ticket-row .ticket-details.ticket-group .group-desc-block {
    padding-top: 8px;
}

.ticket-row .ticket-group-button {
    background: #f5f8fa;
    border-radius: 8px;
    padding: 8px;
}

    .ticket-row .ticket-group-button button {
        width: 100%;
    }

@media screen and (max-width: 768px) {
    .ticket-row .ticket-price.ticket-group-price {
        padding: 16px 0 16px 116px !important;
    }
}

/**
 * Country in homepage
 */

.country-dropdown {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(-4px, -50%);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    user-select: none;
}

.country-dropdown-label {
    font-size: 14px;
    color: #819197;
    user-select: none;
}

.country-dropdown-content {
    position: absolute;
    background-color: #fff;
    padding: 12px 14px;
    border-radius: 8px;
    right: -27px;
    top: 40px;
    min-width: 120px;
    box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.4);
    display: none;
}

    .country-dropdown-content.show {
        display: block;
    }

    .country-dropdown-content ul {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 14px;
        font-size: 14px;
        color: #819197;
        cursor: pointer;
        user-select: none;
    }

.country-dropdown-icon {
    display: block;
    width: 18px;
    height: 18px;
}

@media (max-width: 993px) {
    .hide-mobile {
        display: none;
    }

    .country-dropdown {
        right: 70px;
    }
}

@media screen and (max-width: 768px) {
    .country-dropdown {
        right: 40px;
    }
}

/**
 * FAQs
 */

.faq_button {
    display: flex;
    width: 65px;
    height: 65px;
    position: fixed;
    bottom: 100px;
    right: 10px;
    background: #008eff;
    border: none;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    cursor: pointer;
}

    .faq_button:hover {
        background: #1757c5;
    }

.faq_container_wrapper {
    flex-direction: column;
    width: 450px;
    box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    min-height: 80px;
    height: min(704px, 100% - 104px);
    max-height: 704px;
    background: white;
    border-radius: 16px;
    position: fixed;
    bottom: 95px;
    right: 20px;
    display: none;
    transition: width 200ms ease 0s, height 200ms ease 0s, max-height 200ms ease 0s, transform 300ms cubic-bezier(0, 1.2, 1, 1) 0s, opacity 83ms ease-out 0s;
}

    .faq_container_wrapper.show_faq {
        display: flex;
        -webkit-animation: scale-in-br 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
        animation: scale-in-br 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    }

    .faq_container_wrapper.hide_faq {
        -webkit-animation: scale-out-br 0.25s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
        animation: scale-out-br 0.25s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
    }

    .faq_container_wrapper.full_size {
        height: calc(100% - 104px);
        max-height: calc(100% - 104px);
        width: 688px;
    }

        .faq_container_wrapper.full_size
        .faq_container_content
        .faq_item_content
        .faq_item_content_text {
            max-width: 80%;
        }

@media screen and (max-width: 500px) {
    .faq_container_wrapper {
        width: 100%;
        height: 100%;
        max-height: 100%;
        inset: 0;
        border-radius: 0;
    }
}

.faq_container_header {
    width: 100%;
    background-color: #008eff;
    padding: 24px 20px 24px 32px;
    border-radius: 16px 16px 0 0;
    color: white;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media screen and (max-width: 500px) {
    .faq_container_header {
        border-radius: 0;
    }
}

.faq_container_header p {
    padding: 0 !important;
    margin: 0 !important;
}

.faq_container_content {
    padding: 24px 32px;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 14px;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #000000;
    height: 88%;
    overflow-y: scroll;
}

    .faq_container_content::-webkit-scrollbar {
        width: 0 !important;
        background: transparent !important;
        display: none !important;
    }

    .faq_container_content::-webkit-scrollbar-thumb {
        background-color: transparent !important;
        width: 0 !important;
        display: none !important;
    }

@media screen and (max-width: 500px) {
    .faq_container_content {
        padding: 24px 20px;
    }
}

.faq_container_header_actions {
    display: flex;
    align-items: center;
    gap: 14px;
}

.faq_container_header_close {
    cursor: pointer;
    background: none;
    border: none;
    color: white;
}

.faq_resize_button {
    display: flex;
    align-items: center;
    width: 16px;
    height: 16px;
    cursor: pointer;
    color: white;
}

    .faq_resize_button .increase {
        display: block;
    }

    .faq_resize_button .decrease {
        display: none;
    }

    .faq_resize_button.zoomed .increase {
        display: none;
    }

    .faq_resize_button.zoomed .decrease {
        display: block;
    }

@media screen and (max-width: 768px) {
    .faq_resize_button {
        display: none;
    }
}

.faq_item_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}

    .faq_item_header div {
        max-width: 300px;
    }

@media screen and (max-width: 500px) {
    .faq_item_header div {
        max-width: 250px;
    }
}

.faq_open_item_btn {
    position: relative;
    width: 20px;
    height: 20px;
    cursor: pointer;
}

    .faq_open_item_btn::before {
        content: "";
        position: absolute;
        border-top: 2px solid black;
        border-right: 2px solid black;
        width: 10px;
        height: 10px;
        top: 50%;
        left: 50%;
        transform: rotate(135deg) translate(-10%, 70%);
    }

.faq_item_content {
    display: flex;
    flex-direction: column;
    gap: 14px;
    border-bottom: 1px solid #d9e3ea;
    padding-bottom: 8px;
    padding-left: 0 !important;
}

.faq_item_content_text {
    display: none;
    font-weight: 400;
    max-width: 320px;
}

    .faq_item_content_text.show_faq_text {
        display: flex;
    }

@-webkit-keyframes scale-in-br {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
        display: none;
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
        display: flex;
    }
}

@keyframes scale-in-br {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }
}

@-webkit-keyframes scale-out-br {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }
}

@keyframes scale-out-br {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }

    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1;
    }
}

@media screen and (max-width: 768px) {
    #event-page .event-details-banner .banner-wrapper .event-details {
        /* New change */
        display: flex;
        flex-direction: column;
        align-items: center;
    }

        #event-page
        .event-details-banner
        .banner-wrapper
        .event-details
        .cta-container {
            /* New change */
            display: none;
        }

    #event-page .event-details-banner .banner-wrapper {
        padding: 16px 0;
        /* New change */
        align-self: anchor-center;
    }

    #event-page .event-details-banner {
        /* New change */
        max-height: 200px;
        height: auto;
        min-height: 200px;
        display: flex;
    }

        #event-page .event-details-banner .banner-wrapper .event-poster {
            /* New change */
            height: auto;
            aspect-ratio: auto 1 / 1.41;
        }
}
/*
    refundable checkout section
*/

#checkout-page
.content-wrapper
section#refundable_container_section
.custom-radio-container.refundable-container {
    background-color: var(--grey-light-3);
    display: grid;
    grid-template-columns: 1fr 64px;
    grid-gap: 16px;
    align-items: center;
    border: none;
    border-bottom: 1px solid var(--grey-light-1);
    border-radius: 0;
    padding: 12px;
}

#checkout-page .content-wrapper section#refundable_container_section {
    margin-bottom: 8px;
}

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel
    .refund-conditions-notice
    .custom-list {
        grid-auto-flow: row;
    }

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .custom-radio-container.refundable-container
    .price {
        color: var(--grey-dark-2);
        font-weight: bold;
        text-align: right;

        @media (max-width: 768px) {
            text-align: left;
        }
    }

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel {
        margin-bottom: 32px;
        background-color: var(--grey-light-3);
        padding: 16px;
        border-radius: 6px;
        border: solid 1px var(--grey-light-1);
        box-sizing: border-box;
    }

.img-text-group {
    display: flex;
    align-items: center;
}

#checkout-page
.content-wrapper
section#refundable_container_section
.refundable-panel
.refund-terms-notice {
    color: var(--grey-dark-1);
    font-size: 12px;
}

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel
    .refund-terms-notice
    p:not(:last-of-type) {
        margin-bottom: 16px;
    }

#checkout-page
.content-wrapper
section#refundable_container_section
.refundable-panel
.covid-19-notice {
    margin: 24px 0;
    border-radius: 8px;
    background-color: var(--green-dark-1);
    color: white;
    text-align: left;
    padding: 16px 24px;
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
}

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel
    .covid-19-notice
    .icon {
        margin-right: 8px;
    }

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel
    .covid-19-notice
    .link {
        font-weight: normal;
    }

#checkout-page
.content-wrapper
section#refundable_container_section
.refundable-panel
.refund-conditions-notice
.custom-list {
    display: grid;
    grid-auto-flow: row;
    grid-gap: 8px;
    margin-bottom: 16px;
}

    #checkout-page
    .content-wrapper
    section#refundable_container_section
    .refundable-panel
    .refund-conditions-notice
    .custom-list
    li {
        font-size: 14px;
    }

#checkout-page
.content-wrapper
section#refundable_container_section
.custom-radio-container.refundable-container
.recommended-notice {
    background-color: var(--blue-dark-1);
    color: white;
    border-radius: 24px;
    text-align: center;
    padding: 6px 12px;
    margin-left: 8px;

    @media screen and (max-width: 768px) {
        border-radius: 16px;
        padding: 2px 8px;
        position: absolute;
        top: -40px;
        left: 24px;
        font-size: 10px;
    }
}

#checkout-page
.content-wrapper
section#refundable_container_section
.custom-radio-container.insurance-container {
    border: none;
    margin-top: 24px;
    border-top: 1px solid var(--grey-light-1);
    border-radius: 0;
    margin-bottom: 0;
    padding-bottom: 8px;
}

#checkout-page
.content-wrapper
section#refundable_container_section
.custom-radio-container.non-refundable-container {
    border: none;
    margin-top: 24px;
    border-top: 1px solid var(--grey-light-1);
    border-radius: 0;
    margin-bottom: 0;
    padding-bottom: 8px;
}

.donate-input-wrapper {
    position: relative;
    display: inline-block;
}

.donate-prefix {
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-45%);
    color: #333;
    font-size: 16px;
    pointer-events: none;
    z-index: 10;
}

/*
    donation checkout section
*/
.donate-title {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 110%; /* 19.8px */
    letter-spacing: -0.36px;
}

.donate-label {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.donation-company-flyer {
    width: 180px;
    margin: 24px 16px;
}

    .donation-company-flyer[src$=".svg"] {
        filter: brightness(0) saturate(100%) invert(78%) sepia(14%) saturate(1597%) hue-rotate(137deg) brightness(95%) contrast(92%);
        width: 180px;
        margin: 24px 16px;
    }


.donate-container {
    width: 100%;
    margin-bottom: 24px;
}

.donate-detail {
    color: black;
    margin: 24px 16px;

    @media (max-width: 768px) {
        margin: 16px;
    }
}

.donate-price-selector {
    margin-top: 24px;
}

.donate-button-group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
    margin-bottom: 24px;
}

.donate-price-button,
#donationCustomAmount {
    padding: 4px 12px;
    border: 1px solid #afb5d1;
    height: 40px;
    width: 54px;
    border-radius: 20px; /* fully rounded */
    font-size: 16px;
    cursor: pointer;
    background-color: white;
    color: black;
    transition: all 0.2s ease;
}

.donationcustomamount {
    padding: 4px 12px 4px 24px !important;
}

.donate-price-button.selected {
    background-color: #007bff; /* blue */
    color: white;
    border: none;
}

#donationCustomAmount {
    width: 200px;
}

    /* Optional: highlight input when in use */
    #donationCustomAmount:focus {
        border-color: #007bff;
        outline: none;
    }

.donate-content {
    border-radius: 8px;
    border: solid 1px var(--grey-light-1);
    background-color: var(--grey-light-3);
    display: grid;
    grid-template-columns: 1fr 7fr;
    grid-gap: 24px;
    align-items: flex-start;

    @media (max-width: 768px) {
        grid-template-columns: 1fr;
        grid-gap: 0;
        grid-template-rows: auto auto; /* Optional: makes it clear it's 2 rows */
    }
}

#donationCustomAmount::placeholder {
    font-size: 16px;
    color: #999;
}

.totals-container {
    margin-bottom: 48px;
}

.split-partly-desktop {
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-gap: 16px;
    width: 100%;
    align-items: center;

    @media (max-width: 768px) {
        grid-template-columns: 1fr;
    }
}

#checkout-page
.content-wrapper
section.ticket-details
.ticket-details-form
.ticket-details-list-wrapper.single-ticket {
    grid-template-columns: 75%;
    justify-content: center;
}

#checkout-page
.content-wrapper
section.ticket-details
.ticket-details-form
.ticket-details-list-wrapper.multiple-tickets {
    grid-template-columns: 1fr 1fr;
}



.company-invoice-container {
    margin: 16px 0;
    border-radius: 8px;
    border: solid 1px var(--grey-light-1);
    background-color: var(--grey-light-3);
    padding: 24px;
}

.vat-no-container {
    display: grid;
    grid-template-columns: 2fr 1.5fr;
    grid-gap: 16px;
    width: 100%;
    align-items: center;
    margin-top: 12px;

    @media (max-width: 768px) {
        grid-template-columns: 1fr;
        grid-gap: 12px;
    }
}
