.column-wraper {
    position:relative;
}

.column-right {
    position:absolute !important;
    right:0;
}
    
    
/*
    Wocommerce Global Overwrites
*/
.woocommerce-checkout-review-order-table tbody {
    max-height: 600px;
    overflow: auto;
}

.woocommerce-info:focus-visible, 
.woocommerce-message:focus-visible, 
.woocommerce-noreviews:focus-visible,
.no-comments:focus-visible {
    outline:none;
}

.order-actions-button {
    margin:0 10px;
}

.woocommerce-page .hentry {
    margin:0 !important;
}

.woocommerce-checkout {
    margin: 0;
    padding: 0;
}

.wc-saved-payment-methods {
    margin: 0;
    padding: 0;
}

.wc-stripe-banner-checkout {
    max-width:100% !important;
}

.wc-saved-payment-methods input {
    display: none;
}

.woocommerce-shipping-fields {
    display:none;
}

.checkout-inline-error-message {
    color: #e2401c;
    font-size: 12px;
    margin: 0;
}

.pizzaro-order-steps {
    margin-bottom:2rem !important;
}

#pizza-tip-selector {
    margin-bottom:15px;
}

.delivery_information {
    text-align: center;
    padding: 20px;
    border: 1px solid #CCC;
    margin-top: 20px;
    border-radius:5px;
    display: flex;
    flex-direction: column;
    font-size: 14px;
}

.delivery_information-icon {
    display: block;
    font-size: 30px;
    margin-bottom: 10px;
}

.delivery_information-info {
    padding: 20px 0 0;
    margin: 0;
}

.tip-selector {
    margin: 0;
    cursor: pointer;
    border: 2px solid #111;
    width: 100%;
    padding: 2px 5px;
    text-align: center;
    font-size: 12px;
    color: #111;
    background-color:#FFF;
    border-radius:10px;
}

.tip-selector.active {
    border: 2px solid #111;
    color: #FFF;
    background-color:#111;
}

.tip-selector input {
    display:none;
} 

#pizza-tip-selector-other {
    display: none;
    padding: 20px 0;
    border: 1px solid #CCC;
}

/*
    Order ahead calendar
*/

.order-schedule {
    margin-bottom: 10px;
}

.order-schedule-input {
    display:none !important;    
}

.order-schedule-options {
    margin-bottom: 15px;    
}

.order-delivery-alert,
.order-schedule-alert {
    display:none;
    margin: 15px 0 0 0 !important;
    border-radius:0 !important;
    background-color:#e2401c !important;
    border:0 !important;
    color:#FFF !important;
}

.order-delivery-alert {
    display:block;
}

.order_ahead_type {
    visibility: hidden;
}

.order_ahead_icon {
    margin-bottom: 15px;
}

.order_ahead_icon svg {
    transform: scale(1.8);
    fill: #111;
}

.order_ahead-calendar {
    background-color: #FFF;
}

.order_ahead-container {
    display: flex;
    background-color: #EEE;
    border: 1px solid #cecece;
    overflow: hidden;
}

.order_ahead-calendar {
    padding: 10px;
    background-color: #FFF;
}

.order_ahead-time-picker {
    display: flex;
    justify-content: center;
    width: 100%;
    text-align: center;
    overflow-x: auto;
    min-height: 250px;
    max-height: 350px;
}

.order_ahead-time-container {
    padding: 8px;
    width:100%;
}

.order_ahead-time-picker-message {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.radio-time-picker {
    display: block;
    padding: 0 2px 0;
    margin: auto;
    width: 25%;
    float: left;
}

.radio-time-picker input { 
    display: none; 
}

.radio-time-picker label {
    display: inline-block;
    font-size: 12px;
    text-align: center;
    color: #222;
    border: 1px solid #CCC;
    background: #FFF;
    transition: 200ms all;
    cursor: pointer;
    padding: 0px 4px;
    width: 100%;
    border-radius: 15px;
}

.radio-time-picker input:checked + label {
    color: #FFF !important;
    background-color: #111;
    border: 1px solid #111;
}


.order-schedule input:checked + label {
    color: #FFF !important;
    background-color: #111;
    border: 1px solid #111;
}

#payment .select2-container .select2-selection--single {
    height:auto !important;
    margin:auto !important;
}

#payment .payment_methods li {
    padding:0;
    margin-bottom:10px !important;
}

#payment .payment_methods li label {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    padding: 5px 15px;
    width: 100%;
    border: 2px solid #111;
    border-radius:10px !important;
}

#payment .payment_methods li label::before {
    display:none !important;
}

#payment .payment_methods li label .payment_method-icon {
    font-size: 19px;
    margin-right: 10px;
}

#payment .payment_methods li label .payment_method-title {
    font-size: 13px;
}

#payment .payment_methods li input:checked + label {
    background-color:#111;
}

#payment .payment_methods li input:checked + label .payment_method-icon {
    color:#FFF;
}

#payment .payment_methods li input:checked + label .payment_method-title {
    color:#FFF;
}

.woocommerce-checkout-payment {
    position: relative;
    display: flex;
    flex-direction: column;
}

.woocommerce-billing-fields .checkbox {
    margin-left: 20px;
    line-height: 23px;
}

.payment_box {
    display: none;
    position: relative;
    overflow: hidden;
    border-top: 0;
    border-bottom:0;
    border: 2px solid #111;
    margin-bottom:10px !important;
    padding: 25px;
    border-radius:10px !important;
}

.restaurant-block {
    border: 1px solid #CCC;
    margin-bottom: 30px;
    padding: 15px;
}

.order-details {
    padding: 15px;
    background-color: #EEE;
    width: auto !important;
    float: none !important;
    clear: none !important;
    margin-bottom:30px;
}

.order-details .form-control {
    margin-bottom:15px !important;
}

.input-text, 
input[type=email], 
input[type=password],
input[type=search], 
input[type=text], 
input[type=url], 
textarea {
    border-radius:0 !important;
}

.input-group-addon {
    background:#DEDEDE !important;
    color:#111 !important;
    border:0 !important;
    border-radius:0 !important;
}

.form-control {
    border-width:2px !important;
    box-shadow:0 0 0 !important;
    height:36px !important;
}

.woocommerce-invalid-required-field .form-control {
    border-color:#e2401c !important;
}

textarea.form-control {
    height:auto !important;    
}

.btn {
    border-radius:0 !important;    
}

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

.btn.btn-default {
    border:2px solid #111 !important;
    background:#FFF !important;
    color:#111 !important;
    border-radius: 10px !important;
}

.btn.btn-default i {
    margin-right:5px;
}

.order-schedule input:checked + .btn-default,
.btn.btn-default.active {
    border:2px solid #111 !important;
    background: #111 !important;
    color:#FFF !important;
}

.orderDetails-content-tab {
    padding: 25px 0 0;
}

.sms_subscription {
    padding: 0 20px;
}

.sms_subscription label {
    font-size: 13px;
    line-height: 22px;
    font-weight: normal;
}

.woocommerce-terms-and-conditions-wrapper {
    padding: 0 20px !important;
    margin-top: 0 !important;
    font-size: 13px !important;
    line-height: 19px !important;
    margin-bottom: 6px !important;
}

.woocommerce-checkout-payment-buttons button {
    border-radius: 15px !important;
    height: 48px !important;
    font-size:17px !important;
}

@media not (min-width: 1400px){
    

} /* 1200 - 1399 */

@media not (min-width: 1200px){
    
    
} /*  992 - 1199 */

@media not (min-width: 992px){
    
    .column-wraper {
        position:relative;
    }

    .column-right {
        position:relative !important;
        right:0;
    }
    
}  /*  768 -  991 */

@media not (min-width: 768px){
    
}  /*  576 -  767 */

@media not (min-width: 576px){
    
    .order-schedule-options label {
        margin-bottom:15px;
    }
    
    .order_ahead-container {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }
    
    .restaurant-block {
        border:0;
        margin-bottom: 30px;
        padding:0;
    }

    .tip-selector {
        margin-bottom:20px;
    }
    
    .order-actions-button {
        display: block !important;
        padding: 5px 10px !important;
        margin-bottom: 10px;
        text-align: center;
        font-size: 12px;
    }

}