@font-face {
    font-family: 'Learning Curve';
    src: url('/files/fonts/learning_curve/LearningCurve-Bold.eot');
    src: url('/files/fonts/learning_curve/LearningCurve-Bold.eot?#iefix') format('embedded-opentype'),
        url('/files/fonts/learning_curve/LearningCurve-Bold.woff2') format('woff2'),
        url('/files/fonts/learning_curve/LearningCurve-Bold.woff') format('woff'),
        url('/files/fonts/learning_curve/LearningCurve-Bold.ttf') format('truetype'),
        url('/files/fonts/learning_curve/LearningCurve-Bold.svg#LearningCurve-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Learning Curve';
    src: url('/files/fonts/learning_curve/LearningCurve.eot');
    src: url('/files/fonts/learning_curve/LearningCurve.eot?#iefix') format('embedded-opentype'),
        url('/files/fonts/learning_curve/LearningCurve.woff2') format('woff2'),
        url('/files/fonts/learning_curve/LearningCurve.woff') format('woff'),
        url('/files/fonts/learning_curve/LearningCurve.ttf') format('truetype'),
        url('/files/fonts/learning_curve/LearningCurve.svg#LearningCurve') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Bebas Neue';
    src: url('/files/fonts/bebas_neue/BebasNeue-Bold.eot');
    src: url('/files/fonts/bebas_neue/BebasNeue-Bold.eot?#iefix') format('embedded-opentype'),
        url('/files/fonts/bebas_neue/BebasNeue-Bold.woff2') format('woff2'),
        url('/files/fonts/bebas_neue/BebasNeue-Bold.woff') format('woff'),
        url('/files/fonts/bebas_neue/BebasNeue-Bold.ttf') format('truetype'),
        url('/files/fonts/bebas_neue/BebasNeue-Bold.svg#BebasNeue-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Bebas Neue';
    src: url('/files/fonts/bebas_neue/BebasNeue-Light.eot');
    src: url('/files/fonts/bebas_neue/BebasNeue-Light.eot?#iefix') format('embedded-opentype'),
        url('/files/fonts/bebas_neue/BebasNeue-Light.woff2') format('woff2'),
        url('/files/fonts/bebas_neue/BebasNeue-Light.woff') format('woff'),
        url('/files/fonts/bebas_neue/BebasNeue-Light.ttf') format('truetype'),
        url('/files/fonts/bebas_neue/BebasNeue-Light.svg#BebasNeue-Light') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Bebas Neue';
    src: url('/files/fonts/bebas_neue/BebasNeue-Regular.eot');
    src: url('/files/fonts/bebas_neue/BebasNeue-Regular.eot?#iefix') format('embedded-opentype'),
        url('/files/fonts/bebas_neue/BebasNeue-Regular.woff2') format('woff2'),
        url('/files/fonts/bebas_neue/BebasNeue-Regular.woff') format('woff'),
        url('/files/fonts/bebas_neue/BebasNeue-Regular.ttf') format('truetype'),
        url('/files/fonts/bebas_neue/BebasNeue-Regular.svg#BebasNeue-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@light_orange: #e2c8aa;    /*nav_font*/
@light_yellow: #e5dec7;    /*slide-indicator, title, frame, footer_font, footer_btn*/
@light_ygreen: #eae8d3;   /*top-social, footer-social*/
@brown: #7f5d43;      /*scrollbar-thumb:hover*/
@dark_red: #32161a;     /*top_nav, footer, slide-indicator-bar, button*/



@plight: #e5dec7;
@pdark: green;
@primary: blue;
/*@yellow: #ba9647;*/
@yellow: #e5dec7;
@light-brown: #e1dcd5;
@grey: #bcb9b4;

@small-border-radius: 7px;
@large-border-radius: 32px;

@min-width-1920px: ~"only screen and (min-width: 1920px)";
@max-width-1200px: ~"only screen and (max-width: 1200px)";
@max-width-992px: ~"only screen and (max-width: 992px)";
@max-width-768px: ~"only screen and (max-width: 768px)";
@max-width-576px: ~"only screen and (max-width: 576px)";

header {
    margin:0;
    h1 {
        font-size:2.75em;
        font-weight:bold;
    }
    span.address {
        font-weight:400;
        font-size:1.5em;
    }

    div.hours {
        color:black;
        span {
            font-size:0.8em;
        }
        span.days {
            font-weight:bold;
        }
        span.hour {
        }
    }
}
div.client-logo img {
    background:white;
    height:200px;
    max-width:235px;
    padding:15px;
    width:auto;
    border:4px solid transparent;
}
div#store-category-selector-mobile {
    display: none;

    @media @max-width-992px {
        display: block;
    }
}
div#store-category-selector-sidebar {
    @media @max-width-992px {
        display: none;
    }
}
.category-selector {
    // position: sticky;
    top: 15px;

    &.store-category-selector {
        margin: 0 25px 10px 25px;

        & > a {
            i {
                float: right;
                margin-top: 5px;
                color: @yellow;

                &.fa-chevron-down {
                    display: none;
                }
            }

            &.collapsed {
                i.fa-chevron-up {
                    display: none;
                }
                i.fa-chevron-down {
                    display: inline;
                }
            }

            &:hover {
                text-decoration: none;
                
                h3 {
                    color: @yellow;
                }
            }
        }
    }

    .row {
        margin-bottom: 1px;
        border-radius: @large-border-radius;

        h3 {
            color: #fff;
            font-size: 1.5rem;
            padding: 10px 0;

            a {
                color: #fff;
                display: block;
                i {
                    color: @yellow;
                    float: right;
                    margin-top: 5px;
                }
            }
        }

        .col > a {
            display: block;
            color: #000;
            margin: 3px 16px;
        }
    }
}
@media only screen and (max-width:1199px) {
    .category-selector .row {
        h3 {
            font-size: 1.3rem;
        }
    }
}

@media only screen and (max-width:992px) {
    .category-selector .row {
        margin-bottom: 12px;
    }
}

@media only screen and (max-width:575px) {
    .category-selector .row {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 3px;
        line-height: 1.2;
        h3 {
            padding: 3px 0;
        }
    }
}
div#menu-container {
    &.store-menu-container {
        padding-left: 25px;

        @media @max-width-992px {
            padding: 0;
        }
        @media @max-width-576px {
            padding: 0 25px;
        }
    }

    .menu-item {
        margin-bottom: 5px;

        .inner-container {
            margin: 0;
            padding: 5px 0;
/*            padding: 5px 15px;*/
        }
        @media @max-width-992px {
            .inner-container {
                padding: 5px 8px;
            }
        }
        .title {
            margin-bottom: 0;
            
            h3:hover {
                a,
                .fa-plus,
                .fa-minus {
                    text-decoration: none;
                    color: @yellow;
                    transition: color .1s;
                }
            }
        }

        &.active {
/*            background: @grey;*/
            border-radius: @small-border-radius;

            .inner-container {
                margin: 0 0 10px;
            }

            .title {
                margin-bottom: 24px;
            }
        }

        .regular-input {
            label {
                font-size: 16px;
                text-transform: none;

                &::after {
                    content: ':';
                }
            }
            select {
                border: 2px solid @yellow;
                margin-left: 5px;
            }
        }

        .checkbox {
            label {
                font-size: 14px;
                text-transform: none;
            }
            input[type='checkbox'] {
                width: auto;
            }
            select {
                margin-left: 5px;
            }
        }

        .input-group {
            input, button {
                min-width: 0;
            }
            
            input {
                font-size: 16px;
            }
    
            button {
                background: @yellow;
                color: #fff;
                border: none;
            }
        }
    }
}

.store-item {
    .inner-container {
        height: 100%;
        width: 100%;
        border: 2px solid @yellow;
        border-radius: @small-border-radius;
        overflow: hidden;
        cursor: pointer;
        transition: color .2s;

        .img-container {
            height: 120px;
            -webkit-background-size: cover;
            -moz-background-size: cover;
            -o-background-size: cover;
            background-size: cover;
        }

        .item-info-container {
            padding: 5px 15px 0 15px;

            p {
                font-size: 1.2em;
                transition: color .1s;

                .item-title {
                    max-width: 73.5%;
                }
            }

            .description {
                font-size: .9em;
                line-height: 1em;
                min-height: 14px;
            }
        }
        
        i.fa-plus {
            position: absolute;
            right: 15px;
            bottom: 15px;
            transition: color .1s, font-size .1s;
        }

        &:hover {
            p,
            i.fa-plus {
                color: @yellow;
            }
            i.fa-plus {
                font-size: 1.5em;
            }
        }
    }
}
.store-item-popup {
    background: rgba(0,0,0,0.5);
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    .store-item {
        display: flex;
        align-items: center;
        justify-content: center;

        .btn-close-popup {
            position: absolute;
            z-index: 12;
            top: -10px;
            right: 30%;
            background-color: @yellow;
            color: #fff;
            width: 32px;
            height: 32px;
            font-size: 24px;
            text-align: center;
            border-radius: 100%;
            transition: color .2s, background-color .2s;

            i.fa-times {
                position: relative;
                top: -1px;
            }

            &:hover {
                background-color: red;
            }
        }

        .inner-container {
            width: 40%;
            cursor: default;
    
            &:hover {
                color: #fff;
            }
            
            .img-container {
                height: 400px;
            }

            .item-title,
            .item-price {
                color: @yellow;
                max-width: unset;
            }

            .description {
                border-bottom: 2px solid #fff;
            }

            .regular-input {
                label {
                    font-size: 16px;
                    text-transform: none;
    
                    &::after {
                        content: ':';
                    }
                }
                select {
                    border: 2px solid @yellow;
                    margin-left: 5px;
                }
            }
    
            .checkbox {
                label {
                    font-size: 14px;
                    text-transform: none;
                }
                input[type='checkbox'] {
                    width: auto;
                }
            }

            .input-group {
                flex-wrap: nowrap;

                input, button {
                    min-width: 0;
                }
                
                input {
                    font-size: 16px;
                }
        
                button {
                    background: @yellow;
                    color: #fff;
                    border: none;
                }
            }

            &:hover {
                border: 2px solid @yellow;
            }
        }

        @media @min-width-1920px {
            .inner-container {
                width: 750px;

                input[type='submit'] {
                    float:right;
                }
            }
            .btn-close-popup {
                right: calc((100% - 764px)/2);
            }
        }
        @media @max-width-1200px {
            .inner-container {
                width: 60%;
            }
            .btn-close-popup {
                right: 20%;
            }
        }
        @media @max-width-768px {
            .inner-container {
                width: 82%;
            }
            .btn-close-popup {
                right: 9%;
            }
        }
        @media @max-width-576px {
            .inner-container {
                width: 88%;

                
            }
            .btn-close-popup {
                right: 6%;
            }
        }
    }
}

div.category-border {
/*    padding-bottom:5px;*/
/*    margin-bottom:10px;*/
    // border-bottom: 3px solid @dark_red;

    &.shop-category-border {
        padding-bottom: 10px;
        border-bottom: 2px solid @yellow;
    }

    h2.category-title {
        margin:0;
        padding:0 0 5px;
        font-weight:bold;

        a:first-of-type {
/*            font-family: 'Bebas Neue';*/
/*            font-size: 36px;*/
        }
        a.back-to-top {
            float:right;
            color:black;
            font-size:0.5em;
            line-height:45px;

            i {
                line-height:45px;
            }
            &:hover {
                text-decoration:none;
            }

            span {
                display:none;
                padding-right:10px;
            }
        }
    }

    p {
        margin:0;
        font-size:16px;
        line-height: 22px;
        font-weight:400;
    }

    .img-container {
        max-height: 195px;
        overflow: hidden;
        padding: 20px 0;
        margin-top: 20px;
        border-top: 2px solid @yellow;
        border-radius: 0 0 @small-border-radius @small-border-radius;

        img {
            width: 100%;
            border-radius: @small-border-radius;
        }
    }
}
@media only screen and (max-width: 575px) {
    div.category-border {
        margin-bottom:0;
        h2.category-title a:first-of-type {
            font-size: 22px;
        }
        .img-container {
            margin-top: 6px;
            padding: 8px 0;
        }
    }
}
.view-container .body {
    display: block;
}
div.inner-container {
    margin:0 0 10px;
    padding:10px 0;

    h3 {
        margin:0;
        font-size: 24px;

        span {
            display:inline-block;
        }
        span.item-price {
            font-weight: 800;
        }
        a {
            display:block;
            color:#222;
        }
        i {
            float:right;
            text-align:right;
            width:10%;
/*            padding-top:3px;*/
            color:#313131;
        }
    }

    .description {
        font-size: 16px;
        padding-right: 8%;
    }

    div.body {
        display:none;

        &.active {
            display:block;
        }

        div.description {
            padding:5px 0 10px;
            font-size:0.9em;
            font-weight:400;
        }
    }
    label, input, select {
        font-size:0.8em;
    }
    div.regular-input label {
        min-width:110px;
    }
    fieldset legend {
        font-size:1.15em;
        margin:0;
    }
    fieldset label {
        margin-bottom:2px;
    }

    div.input-group input[type="number"] {
        width:70px;
        flex-grow:0;
    }

    div.input-group-append, div.input-group-prepend {
        button.btn {
            padding:0.175rem 0.75rem;
            font-weight: bold;
            background: #fff;
        }
    }
}
@media only screen and (max-width: 575px) {
    div.inner-container h3 {
        font-size: 18px;
        i {
            width: unset;
        }
    }
}
div.checkbox input[type="checkbox"] {
    float:left;
    margin:6px 6px 0 0;
}

#table-cart td i {
    color:red;
}


#cart {
/*    background: #f6f6f6;*/
    padding: 20px;
    .line-break {
        border-bottom: 1px solid #ebebeb;
        display: block;
        width: 100%;
        margin: 0 auto;
    }
    .cart-mobile {
        padding: 30px 0;
        .cart-item {
            padding:15px 0;
            &:not(:last-of-type) {
                border-bottom: 1px solid #ebebeb;
            }
            h3 {
                padding: 15px 0 5px 0 !important;
            }
        }
        .cancel-order {
            border: none;
            outline: none;
            background: #f6f6f6;
            cursor: pointer;
            color: @pdark;
            padding: 0;
            margin: 0;
        }
        .seating-info {
            padding: 15px;
            span {
                display: block;
            }
            .label {
                font-size: 12px;
                font-weight: 400;
            }
            .data {
                font-weight: 500;
                font-size: 16px;
            }
        }
        .order-summary {
            h2 {
                font-size: 22px;
                font-weight: 500;
                margin: 0;
                padding: 0;
            }
            h3 {
                font-weight: 400;
                font-size: 18px;
                margin: 0;
                padding: 0;
                color: #000000;
            }
            h4 {
                font-weight: 600;
                font-size: 16px;
                margin: 0;
                padding: 0;
                color: #000000;
            }
            h5 {
                font-weight: 400;
                font-size: 12px;
                margin: 0;
                padding: 0;
                color: #727272;
            }
        }
        .total {
            span {
                font-weight: 500;
            }
        }
        .weight-600 {
            font-weight: 500;
        }
        .padding-bottom-small {
            padding-bottom: 10px !important;
        }
        .padding-bottom-xsmall {
            padding-bottom: 5px !important;
        }
        .padding {
            padding:15px 0 !important;
        }
        .padding-bottom {
            padding-bottom: 15px !important;
        }
        .cancel {
            padding: 15px !important;
            a {
                color: @primary;
                transition: 0.15s;
                &:hover {
                    color: @pdark;
                }
            }
        }
        span {
            color: #000000;
        }
        .line-item {
            span {
                color: #727272;
            }
        }
        .text-large {
            font-size: 16px;
        }
        .text-small {
            font-size: 12px;
        }
        .inner-break {
            border-bottom: 1px solid #ebebeb;
            display: block;
            width: 100%;
            margin: 0 auto;
        }
        .container-full-width {
            width: 100%;
            .line-break {
                display: block;
                width: 100%;
                height: 1px;
                background: #ebebeb;
            }
        }
        .padding-extra {
            padding: 30px 0;
        }
        .remove_ticket {
            font-size: 28px;
            border: none;
            border-radius: 72px;
            display: flex;
            margin: 0;
            padding: 0;
            width: 50px;
            height: 50px;
            text-align: center;
            vertical-align: middle;
            line-height: 1;
            box-shadow: 0 3px 5px -1px rgba(0,0,0,0.2), 0 6px 10px 0 rgba(0,0,0,0.14), 0 1px 18px 0 rgba(0,0,0,0.12);
            outline: none;
            transition: 0.15s;
            cursor: pointer;
            background: #ffffff;
            color: #757575;
            align-items: center;
            justify-content: center;
            svg {
                fill: #757575;
                transition: 0.15s;
            }
            &:hover {
                background: #eeeeee;
                svg {
                    fill: #000000;
                }
            }
        }
        .toggle-quantity {
            button {
                font-size: 28px;
                border: none;
                border-radius: 72px;
                display: inline-block;
                margin: 0;
                padding: 0;
                width: 50px;
                height: 50px;
                text-align: center;
                vertical-align: middle;
                line-height: 1;
                box-shadow: 0 3px 5px -1px rgba(0,0,0,0.2), 0 6px 10px 0 rgba(0,0,0,0.14), 0 1px 18px 0 rgba(0,0,0,0.12);
                outline: none;
                transition: 0.15s;
                cursor: pointer;
            }
            .add {
                background: @primary;
                color: #000000;
                &:hover {
                    background: @pdark;
                }
            }
            .remove {
                background: #ffffff;
                color: @primary;
                &:hover {
                    background: #eeeeee;
                }
            }
            .disabled {
                background: #cdcdcd !important;
                color: #9e9e9e !important;
                box-shadow: none !important;
            }
            .quantity {
                margin: 0 10px;
                vertical-align: middle;
                font-weight: bold;
            }
        }
    }
    form[name="removeTicket"] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin: 15px 0;
    }
}
#cart .ticket:hover{
    padding-right: 50px;
    & .ticket__actions{
        background-color: rgb(226, 20, 20);
        visibility: visible;
    }
}
.ticket{
    display:flex;
    align-items:center;
    justify-content: center;
    border: 1px solid rgba(0,0,0,0.125);
    border-radius: 5px;
    background-color: white;
    padding: 20px;
    flex-direction: column;
    margin-bottom: 10px;
    position: relative;
    transition: all ease .5s; 
    &--no-hover{
        &:hover{
            padding-right: 20px;
        }
    }
    &__top, &__bottom, &__middle{
        width: 100%;
    }
    &__title{
        &--section, &--seat{
            font-family: 'Open Sans', sans-serif;
            color: #AFAFAF;
            font-weight: 700;
        }
        &--seat{ float: right; }
        &--show, &--price{
            font-weight: 700;
            font-family: 'Open Sans', sans-serif;
        }
        &--price{
            float: right;
        }
        &--price::before{
            content: "$";
        }
        &--section {
            span.title-part {
                display:inline-block;
                padding-right:50px;
            }
        }
    }
    &__actions{
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        visibility: hidden;
        display: flex;
        align-items:center;
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px;
    }
    &__delete{
        cursor: pointer;
        background-color: transparent;
        border: none;
        width: 100%;
        height: 100%;
        color:white;
        padding: 0 15px;
    }
}
#spanCode{
    display:block;
}
#spanLoader{
    display:none;
}
#discountLabel{
    color: lightblue;
}
#discountAmount{
    color: lightblue;
    font-size: 15px;
}

.checkout-process-step-1 {
    form.checkout {
        label,input:not([type="submit"]), select {
            display: block;
            width: 100%;
            text-align: left;
        }
        input:not([type="submit"]) {
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            padding-left: 5px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
        }
        label {
            font-size: 0.85em;
        }
        select {
            vertical-align:top;
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
            min-height: 27px;
        }
        .save-above {
            label,input {
                display: inline-block;
                width: auto;
                margin-bottom: 15px;
                font-size: 1em;
            }
            label {
                margin-right: 15px;
            }
        }
    }
}

.customer-my-account {
    form {
        label,input:not([type="submit"]), select {
            display: block;
            width: 100%;
            text-align: left;
        }
        input:not([type="submit"]) {
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            padding-left: 5px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
        }
        label {
            font-size: 0.85em;
        }
        select {
            vertical-align:top;
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
            min-height: 27px;
        }
        .validation-error {
            color: red;
            font-size: 12px;
            padding-bottom: 20px;
            &:before {
                content: "↑";
                vertical-align: top;
                line-height: 14px;
                margin-right: 5px;
            }
        }
    }
    .booking-history {
        .date-booked {
            width: 33.33333%;
            width: ~"calc(100% / 3)";
            text-align: center;
        }
        .confirmation-number {
            width: 33.33333%;
            width: ~"calc(100% / 3)";
            text-align: center;
        }
        .total {
            width: 33.33333%;
            width: ~"calc(100% / 3)";
            text-align: center;
        }
        .booking-legend {
            display: flex;
            text-align: center;
            div {
                width: 33.33333%;
                width: ~"calc(100% / 3)";
                font-weight: bold;
            }
        }
        .booking {
            display: flex;
            flex-wrap: wrap;
            .children {
                width: 100%;
                .legend {
                    display: flex;
                    text-align: center;
                    div {
                        width: 33.33333%;
                        width: ~"calc(100% / 3)";
                        text-align: center;
                    }
                }
                .child {
                    display: flex;
                    text-align: center;
                    div {
                        width: 33.33333%;
                        width: ~"calc(100% / 3)";
                        text-align: center;
                    }
                }
            }
        }
        .booking:nth-child(even) {
            background: #dee2e6;
            border: 1px solid #9c9c9c;
        }
    }
}

.customer-login {
    form {
        label,input:not([type="submit"]), select {
            display: block;
            width: 100%;
            text-align: left;
        }
        input:not([type="submit"]) {
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            padding-left: 5px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
        }
        label {
            font-size: 0.85em;
        }
        select {
            vertical-align:top;
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
            min-height: 27px;
        }
        .validation-error {
            color: red;
            font-size: 12px;
            padding-bottom: 20px;
            &:before {
                content: "↑";
                vertical-align: top;
                line-height: 14px;
                margin-right: 5px;
            }
        }
    }
}

.checkout-process-step-2 {
    form.checkout {
        label,input:not([type="submit"]), textarea {
            display: block;
            width: 100%;
            text-align: left;
        }
        input:not([type="submit"]), textarea {
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
        }
        label {
            font-size: 0.85em;
        }
    }
}

.checkout-process-step-2, .checkout-process-step-3 {
    .buttons {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
}

.checkout-process-step-3 {
    .box {
        p {
            display: block;
            margin-bottom: 5px;
        }
    }
    .list-items {
        .ticket {
            .wrapper {
                background: #e9ecef;
                .image {
                    width: 100%;
                    border: 5px solid #9c9c9c;
                }
                .info {
                    width: 100%;
                    padding: 5px 5px 0 5px;
                    border-left: 1px solid #9c9c9c;
                    border-right: 1px solid #9c9c9c;
                    .seating {
                        margin: 0;
                        img {
                            width: 16px;
                            height: auto;
                            margin-right: 3px;
                        }
                    }
                }
                .pricing {
                    width: 100%;
                    padding: 0px 5px 5px 5px;
                    border-left: 1px solid #9c9c9c;
                    border-right: 1px solid #9c9c9c;
                    display: flex;
                    .price-type {
                        margin-right: 4px;
                    }
                }
            }
        }
    }
    .sub-totals {
        .wrapper {
            background: @plight;
            padding: 5px 5px 0 5px;
            border-top: 2px solid @primary;
            .sub-total {
                display: flex;
                justify-content: space-between;
                .value {
                    padding: 0 5px;
                }
            }
            .promotions {
                display: flex;
                justify-content: space-between;
                .value {
                    padding: 0 5px;
                }
            }
            .taxes {
                display: flex;
                justify-content: space-between;
                .value {
                    padding: 0 5px;
                }
            }
            .fees {
                display: flex;
                justify-content: space-between;
                .value {
                    padding: 0 5px;
                }
            }
        }
    }
    .total {
        .wrapper {
            background: @plight;
            padding: 10px 5px;
            border-top: 1px solid @primary;
            .total {
                display: flex;
                justify-content: space-between;
                .value {
                    padding: 0 5px;
                    font-weight: bold;
                }
            }
        }
    }
}

.checkout-process-step-4 {
    form {
        label,input:not([type="submit"]), select {
            display: block;
            width: 100%;
            text-align: left;
        }
        input:not([type="submit"]) {
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            padding-left: 5px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
        }
        label {
            font-size: 0.85em;
        }
        select {
            vertical-align:top;
            border-left: none;
            border-top: none;
            border-right: none;
            outline: none;
            border-bottom: 1px solid @plight;
            transition: 0.3s;
            margin-bottom: 15px;
            &:focus {
                border-bottom-color: @pdark;
            }
            font-size: 1em;
            min-height: 27px;
        }
        .validation-error {
            color: red;
            font-size: 12px;
            padding-bottom: 20px;
            &:before {
                content: "↑";
                vertical-align: top;
                line-height: 14px;
                margin-right: 5px;
            }
        }
        div.checkbox {
            display:flex;
            label {
                order:2;
            }
            input[type="checkbox"] {
                order:1;
                display:inline;
                width:auto;
                float:right;
                margin:0 10px 0 0;
                align-self:center;
            }
        }
    }

    div.container-billing-info p {
        display:flex;

        strong {
            width:50%;
        }
        span {
            display: inline-block;
            width: 80px;
            text-align: right;
        }
    }
}
label.required {
    &::after {
        color:red;
        content:"*";
    }
}
.cat-listing {
    display: none;
}
@media only screen and (min-width:769px) and (max-width:992px) {
    div.cart-container-div table#table-cart.table-sm tbody tr {
        &.total-row {
            td.gap-container {
                width: 115%;
            }
        }
        
        td div.gap-container {
            width: 115%;
        }
    }
    div.cart-container-div table#table-cart.table-sm.shop-cart td .gap-container {
        width: 118%;
    }
}
@media only screen and (max-width:768px) {
    header h1, header span.address {
        color:black;
    }
    .ticket {
    padding-right:50px;
        .ticket__actions {
            background-color: #e21414;
            visibility: visible;
        }
    }
    div.cart-container-div table#table-cart.table-sm tbody tr {
        &.total-row {
            td.gap-container {
                width: 111%;
            }
        }
        
        td div.gap-container {
            width: 111%;
        }
    }
    div.cart-container-div table#table-cart.table-sm.shop-cart td .gap-container {
        width: 114%;
    }
}
@media only screen and (max-width:640px) {
    header {
        font-size:90%;
/*        padding-top:15px;*/

        span.address {
            font-size:1.15em;
        }
    }
    div.client-logo img {
        height:140px;
    }
}
@media only screen and (max-width:576px) {
    div.cart-container-div table#table-cart.table-sm tbody tr {
        &.total-row {
            td.gap-container {
                width: 107%;
            }
        }
        
        td div.gap-container {
            width: 107%;
        }
    }
    div.cart-container-div table#table-cart.table-sm.shop-cart td .gap-container {
        width: 105%;
    }
}
div.cart-column {
/*    padding: 0;*/

    & > div.position-sticky {
        top: 15px;
    }

    @media @max-width-992px {
         order: 3 !important;

        div#category-selector-sidebar {
            display: none;
        }
    }
    @media @max-width-576px {
/*        padding: 0 25px;*/
    }
}
div.cart-container-div {
    position: sticky;
    top: 15px;
    padding-bottom: 15px;
    background-color: @light-brown;
    color:white;

    table#table-cart.table-sm {
        margin:0 0 3px;

        thead {
            padding: 0 10px;

            th {
                font-size: 1.5em;
                font-weight: normal;
                padding-bottom: 5px;
                
                &:first-of-type {
                    border-radius: @large-border-radius 0 0 @large-border-radius;
                }
                
                &#num-items {
                    font-size: .8em;
/*                    color: @yellow;*/
                    white-space: nowrap;
                }

                &:last-of-type {
                    border-radius: 0 @large-border-radius @large-border-radius 0;
                }
            }
        }

        tbody tr {
            &:first-of-type td {
                padding-top: 16px;
            }

            td {
/*                color:@light_yellow;*/
                font-size: 1.1em;
                
                vertical-align: top;

                i {
                    color: red;
                }

                &.gap-container,
                .gap-container {
                    display: flex;
                    width: 101%;
                    overflow: visible;

                    & > span {
                        flex-grow: 4;
                        height: 1.15em;
                        border-bottom: 2px dotted @yellow;
                    }
                }

                &.item-name {
/*                    color: @yellow;*/
                    vertical-align: top;

                    p {
                        margin-bottom: 0;
                    }

                    & > span {
                        display: block;
                        color: #000;
                        font-size: 14px;
                    }
                }

                &.price {
                    font-weight: bold;
                }
            }

            &.total-row {
                &.sub-total {
                    td:first-of-type {
                        border-top-left-radius: @small-border-radius;
                    }
                    td:last-of-type {
                        border-top-right-radius: @small-border-radius;
                    }
                }
                &.total {
                    td:first-of-type {
                        border-bottom-left-radius: @small-border-radius;
                    }
                    td:last-of-type {
                        border-bottom-right-radius: @small-border-radius;
                    }
                }

                td {
                    padding: 0 .3rem;
/*                    color: @yellow;*/
                    
                    &.gap-container > span {
/*                        border-color: @yellow;*/
                    }
                }
            }
        }

        &.shop-cart .gap-container {
            width: 104%;
        }
    }

    form {
        border-radius: @small-border-radius;

        div.col-12 {
            padding: 0 30px;
        }
    }

    label {
        font-size: 0.8em;
        text-transform: none;
        margin: 0;
    }
    label::after {
/*        content: ':';*/
    }

    small {
        font-family: 'Open Sans', sans-serif;

        b {
            font-size: .9rem;
        }
    }

    .col-6 {
        label {
            display: block;
        }
    }

    input,select {
        width: 100%;
        border-radius: 3px;
        border: 2px solid @yellow;;
        padding: 0 2px;
        margin-bottom: 16px;

        &[name='data[Orders][cutlery_quantity]'] {
            width: auto;
            margin-left: 5px;
        }

        &.datepicker {
            max-width: 120px;
        }
    }

    #checkout-button {
        border:none;
        font-size: 16px;
        text-transform: uppercase;
        padding: 16px 0;

        &:hover {
            background: @light-brown;
        }
    }

    h4 {
/*        color: @light_yellow;*/
    }

    ul.hours-list {
/*        color: @light_yellow;*/
        margin:0 15px;
        padding: 0;
        font-size:0.9em;
        li.days {
            display:flex;

            span.gap {
                flex-grow:2;
                border-bottom:1px dotted #000;
            }
        }
    }
}

div.cat-listing {
    position:relative;
    padding:0 30px;
    /*padding:0;
    text-align:center;
    list-style-type:none;*/

    button.slick-arrow {
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        z-index:50;
        background:transparent;
        border:none;
        font-size:1.5em;

        span {
            display:none;
        }

        &.slick-prev {
            left:0;
        }
        &.slick-next {
            right:0;
        }
    }

    div.item {
        margin:5px;
        /*display:inline-block;*/
        a {
            display:inline-block;
            text-align:center;
            width:100%;
            padding:3px 10px;
            border:2px solid @yellow;
            text-transform:uppercase;
            transition: 0.15s;
            font-size:1em;
            color:@yellow;
            text-decoration:none;

            &:hover {
                background:@yellow;
                color:white;
                transition: 0.15s;
            }
        }
    }
}