﻿input[type=number] {
    -moz-appearance: textfield;
}

.fs-content-wrapper {
    margin-top: 3.75rem;
}

.recaptcha-container {
    display: flex;
    justify-content: center;
}

@media screen and (max-height: 767px) {
    #rc-imageselect, .g-recaptcha {transform:scale(1);-webkit-transform:scale(1);transform-origin:0 0;-webkit-transform-origin:0 0;}

    .g-recaptcha > div {
        width: 100% !important; 
    }

    .g-recaptcha iframe {
        width: 100% !important;
    }
}

@media (min-width: 48rem) {
    .fs-content-wrapper {
        margin-top: 5rem;
    }
}

@media (min-width: 90rem) {
    .fs-content-wrapper {
        margin-top: 5.9375rem;
    }
}

@media (min-width: 112.5rem) {
    .fs-content-wrapper {
        margin-top: 120px;
    }
}


.fs-wrapper {
    background: #fff;
    padding-bottom: 140px;
    width: 100%;
}

.fs-content {
    max-width: 76.083333%;
    margin: auto;
    text-align: left;
}

@media (min-width: 1500px) {
    .fs-content {
        max-width: 60%;
    }
}

.fs-content ul {
    list-style-type: inherit;
}

.fs-content ul li {
    margin-left: 1rem;
}

.fs-content .pane {
    position: relative;
}

.cta {
    cursor: pointer;
}

button.cta {
    width: auto;
    height: auto;
}

.side-periometer,
.side-periperks {
    padding-left: 2rem;
}

.chip-cap,
.client-validation-error {
    background: #FF0;
    padding: 2rem 4rem;
    text-align: center;
    margin-bottom: 1rem !important;
}

.melbourne-cup {
    background-color: #01E2C2;
    padding: 2rem 0;
    margin-bottom: -1rem;
}

.melbourne-cup h2 {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.melbourne-cup .fs-content {
    text-align: center;
}

#select-site .melbourne-cup {
    margin-top: -15px;
    margin-bottom: 30px;
}

#select-date .message {
    margin: 15px 0 5px 0;
    background-color: #ff0;
    padding: 10px;
}

@media (min-width: 48rem) {
    button.cta span {
        width: auto;
    }
}

.info {
    background: #FF0;
    padding: 20px;
    margin-bottom: 20px;
}

b {
    font-weight: bold;
}

table {
    margin-top: 0;
}

table th {
    background: #fff;
    border-bottom: none;
    padding: 0.5rem;
}

table tr {
    background: none;
}

table td {
    padding: 0.5rem;
}

.line-it {
    background: url(top-line-black.png) no-repeat top center;
    background-size: 110px 11px;
    margin-bottom: 42px;
}

.line-it > .line-it-bt {
    margin-top: 10px;
    height: 14px;
    background: url(bottom-line-black.png) no-repeat bottom center;
    background-size: 100px 5px;
}

@media (min-width: 768px) {
    .line-it {
        margin-bottom: 34px;
        background-size: 120px 13px;
    }

    .line-it > .line-it-bt {
        height: 7px;
        background-size: 120px 7px;
    }
}


@media (min-width: 1200px) {
    .line-it {
        margin-bottom: 72px;
    }
}

@media (min-width: 1200px) {
    .line-it {
        margin-bottom: 34px;
        background-size: auto auto;
    }

    .line-it > .line-it-bt {
        height: 22px;
        background-size: auto auto;
    }
}



.line-it h2 {
    font-size: 38px;
    color: #000;
    padding-top: 14px;
    text-align: center;
}

.line-it h2 {
    -moz-transform: skewY(-3deg);
    -ms-transform: skewY(-3deg);
    -o-transform: skewY(-3deg);
    -webkit-transform: skewY(-3deg);
    transform: skewY(-3deg);
    display: block;
    line-height: 1;
}


@media (min-width: 768px) {
    .line-it h2 {
        font-size: 34px;
        padding-top: 22px;
    }
}

@media (min-width: 992px) {
    .line-it h2 {
        font-size: 54px;
        padding-top: 18px;
    }
}

@media (min-width: 1400px) {
    .line-it h2 {
        font-size: 62px;
        padding-top: 20px;
    }
}

@media (min-width: 1600px) {
    .line-it h2 {
        font-size: 76px;
        padding-top: 22px;
    }
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {

    -webkit-appearance: none;
    margin: 0;
}

.cta-primary.off {
    background: url(cta-primary-disabled.png);
    cursor: default !important;
}


.catering-col-1 {
    float: left;
    width: 66%;
}

.catering-col-2 {
    float: left;
    width: 33%;
}

.catering-home {
    padding-bottom: -140px;
}

.catering-home .fs-wrapper {
    background: #e3e3e3;
}

.catering-home .home-row-1 {
    font-size: 1.3rem;
}

.home-row-1 {
    padding: 100px 0 40px;
}

@media (min-width:30rem) {
    .home-row-1 {
        padding: 100px 0 40px;
    }
}

@media (min-width:48rem) {
    .home-row-1 {
        padding: 100px 0 40px;
    }
}

@media (min-width:56.25rem) {
    .home-row-1 {
        padding: 130px 0 40px;
    }
}

@media (min-width:64rem) {
    .home-row-1 {
        padding: 150px 0 40px;
    }
}

@media (min-width:75rem) {
    .home-row-1 {
        padding: 180px 0 60px;
    }
}

@media (min-width:90rem) {
    .home-row-1 {
        padding: 180px 0 60px;
    }
}

@media (min-width:112.5rem) {
    .home-row-1 {
        padding: 200px 0 60px;
    }
}

.catering-home .home-row-1 p {
    margin-bottom: 1rem;
}

.catering-home .home-row-1 ul {
    text-align: left;
    width: 70%;
    margin: auto;
}

.home-row-1 {
    overflow: auto;
    width: 80%;
    margin: auto;
}

.home-row-1 .catering-col-1 {
    margin-top: 9.5rem;
}

.home-row-1 .catering-col-2 {
    margin-top: 5rem;
}

.home-row-2 {
    margin-top: 1rem;
    clear: both;
}

.validation-message {
    background: #FF2350;
    color: #fff;
    padding: 2rem 4rem;
}

.package-added-to-cart {
    background: #FF0;
    padding: 2rem 4rem;
    text-align: center;
}

.package-added-to-cart h2 {
    font-size: 2.75rem;
    margin-bottom: 1rem;
}

.package-added-to-cart .cart-nav {
    text-align: center;
}

.catering-packages-intro {
    background: #e7e7e7;
    padding: 2rem 4rem;
}

.catering-packages-intro p {
    margin-bottom: 1rem;
}

ul.format,
ol.format {
    list-style-type: none;
}

ul.format li,
ol.format li {
    background-image: url(li-arrow.png);
    background-repeat: no-repeat;
    background-position: 0 2px;
    padding-left: 22px;
    margin-bottom: 1rem;
    background-size: 14px;
}

.order-placed-header {
    padding: 2rem 4rem;
    margin-bottom: 1rem;
    background: url('teal-grey-bg.png') top right no-repeat;
    background-size: cover;
}

#account .panel.account-options h2 {
    text-align: left;
    font-size: 2rem;
}

p.foodstorm a {
    color: #666;
    font-size: 14px;
}

@media screen and (min-width:640px) {
    .menu a.icon {
        padding-left: 30px !important;
        display: inline-block !important;
        background-position: 0 10px !important;
        background-repeat: no-repeat !important;
    }

    .menu a.icon-login {
        background-image: url(icon-login.png) !important;
        margin-left: 10px !important;
    }

    .menu a.icon-cart {
        background-image: url(icon-bag.png) !important;
        margin-left: 0 !important;
    }

    .menu a.icon-account {
        background-image: url(icon-account.png) !important;
        margin-left: 0 !important;
        padding-left: 25px !important;
    }
}

.buttonarea {
    text-align: right;
    position: relative;
    padding: 0;
}

.lead {
    font-size: 2rem;
}

.message {
    margin-bottom: 0;
}

.catering-packages .pkg {
    position: relative;
    height: 450px;
    background-size: cover;
}

.catering-packages .pkg .overlay {
    background: rgba(0,0,0,.25);
    z-index: 99;
    width: 100%;
    height: 450px;
    -webkit-transition: background 1s;
    transition: background 1s;
    position: absolute;
    top: 0;
    left: 0;
}

.catering-packages .pkg:hover .overlay {
    background: 0 0;
}

.catering-packages .pkg .pkg-header {
    background: #ff2350;
    color: #fff;
    display: block;
    width: 60%;
    text-decoration: none;
    padding: 20px;
    margin: auto;
}

.catering-packages .pkg .pkg-header h2 {
    font-family: nandos,Helvetica,Arial,Geneva,sans-serif;
    font-weight: 400;
    font-size: 30px;
    margin-bottom: 0.5rem;
}

.catering-packages .pkg .pkg-content {
    position: absolute;
    z-index: 999;
    width: 100%;
    top: 140px;
}

.catering-packages .pkg.pkg-finger-food {
    background-image: url('package-ff-platter.jpg?v=3');
}

.catering-packages .pkg-chick-sides {
    background-image: url('package-chicken-sides.jpg?v=2');
}

.catering-packages .pkg-create-own {
    background-image: url('package-create-own.jpg?v=3');
}

.panel {
    background: #e7e7e7;
    padding: 3rem 4rem;
    margin-bottom: 1rem;
}

.panel.panel-header {
    text-align: center;
}

.signin-methods {
    display: table;
    width: 100%;
}

.signin-methods .inner {
    display: table-row;
}

.signin-methods .existingcustomers,
 .signin-methods .newcustomers{
    display: table-cell;
    width: 50%;
    vertical-align: top;
    background: #e7e7e7;
}

.signin-methods .existingcustomers {
    border-right: 10px solid #fff;
}

.signin-methods .newcustomers {
    border-left: 10px solid #fff;
}

.signin-methods .buttonarea {
    text-align: center;
}

.signin .panel.existingcustomers a {
    margin-top: 1rem;
    display: block;
}

.panel .signinpanel .form-row {
    margin-bottom: 0.5rem;
}

.panel p {
    margin-bottom: 1rem;
}

@media screen and (min-width:640px) {
    .catering-packages .pkg {
        width: 50%;
        float: left;
        margin-bottom: 0;
    }
}
.catering-packages .pkg p {
    margin: 0;
}

.catering-packages .pkg .desc {
        background: #fbf9f6;
        max-width: 265px;
        margin: auto;
        padding: 10px 20px;
        margin-top: 5px;
        color: #800411;
        font-weight: bold;
        position: relative;
}

.catering-packages .pkg .desc:before, 
.catering-packages .pkg .desc:after {
    background: url(catering-packages-box-top.png);
    background-size: 100% 100%; 
    background-repeat: no-repeat;
    content: "";
    display: block;
    height: 10px;
    left: 0;
    position: absolute;
    top: -10px;
    width: 100%;
    z-index: 9;
}

.catering-packages .pkg .desc:after {
    background-image: url(catering-packages-box-bottom.png);
    top: auto;
    bottom: -10px;
    height: 10px;
}

.catering-packages .rope {
    position: relative;
    max-width: 265px;
    margin: auto;
}

.catering-packages .rope:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    top: -150px;
    height: 150px;
    z-index: -1;
    background: url(string.png) repeat-y 8.55% 0,url(string.png) repeat-y 91.45% 0;
}

.block-red-catering {
    background: url(red-block-bg.png);
    background-size: 100% auto;
    background-repeat: repeat-y;
    position: relative;
    padding: 5px 40px 15px 40px;
    margin-top: 50px;
    margin-bottom: 20px;
}

.block-red-catering:before, .block-red-catering:after {
    background: url(red-block-top.png);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: 100% auto;
    content: "";
    display: block;
    height: 126px;
    left: 0;
    position: absolute;
    top: -126px;
    width: 100%;
    z-index: 9;
}

.block-red-catering:after {
    background-image: url(red-block-bottom.png);
    background-position: top;
    top: auto;
    bottom: -31px;
    height: 31px;
}

.block-red-catering h2 {
    font-size: 4.4rem;
}

.block-red-catering a.cta-primary {
    font-size: 22px;
    padding: 10px 25px;
}

.block-green-catering {
    background: url(green-block-bg.png?v=2);
    background-size: 100% auto;
    background-repeat: repeat-y;
    position: relative;
    margin-top: 32px;
    padding: 10px 30px 20px 30px;
    margin-bottom: 95px;
}

.block-green-catering:before, .block-green-catering:after {
    background: url(green-block-top.png?v=2);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 100% auto; 
    content: "";
    display: block;
    height: 32px;
    left: 0;
    position: absolute;
    top: -32px;
    width: 100%;
    z-index: 9;
}

.block-green-catering:after {
    background-image: url(green-block-bottom.png?v=2);
    background-position: top;
    top: auto;
    bottom: -52px;
    height: 52px;
}

@media screen and (min-width:640px) {
    .block-red-catering {
        margin-bottom: 70px;
    }

    .block-green-catering h2.arrow:after {
        background-image: url(heading-arrow-orange-corner.png);
    }

    .block-green-catering h2.arrow > span:before {
        background-image: url(heading-arrow-orange-top.png);
    }

    .block-green-catering h2.arrow > span > span {
        background-image: url(heading-arrow-orange-background.png);
    }

    .block-green-catering h2.arrow > span > span:before {
        background-image: url(heading-arrow-orange-left.png);
    }

    .block-green-catering h2.arrow > span > span:after {
        background-image: url(heading-arrow-orange-arrow.png);
    }
}

    .block-orange-catering {
    background: url(orange-block-bg.png?v=2);
    background-size: 100% auto;
    background-repeat: repeat-y;
    position: relative;
    margin-top: 115px;
    margin-bottom: 80px;
    padding: 10px 50px 20px 50px;
}

.block-orange-catering:before, .block-orange-catering:after {
    background: url(orange-block-top.png?v=2);
    background-size: 100% auto;
    background-position: bottom;
    background-repeat: no-repeat; 
    content: "";
    display: block;
    height: 52px;
    left: 0;
    position: absolute;
    top: -52px;
    width: 100%;
    z-index: 9;
}

.block-orange-catering:after {
    background-image: url(orange-block-bottom.png?v=2);
    background-position: top;
    top: auto;
    bottom: -37px;
    height: 37px;
}

.block-orange-catering h2 {
    color: #ed5815;
    margin: 0;
}

.block-orange-catering a.cta-primary {
    padding: 10px 20px;
}

.sub-block {
    background: #fff;
    position: relative;
    padding: 19px 15px 13px 15px;
}

.fs-content .sub-block ul li {
    margin-left: 0;
}

.sub-block ul {
    margin: 0;
}

.qty-item {
    display: table;
    width: 100%;
}

.qty-item .inner {
    display: table-row;
}

.qty-item .qty {
    display: table-cell;
    vertical-align: middle;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding-box;
    background-clip: padding-box;
    position: relative;
    text-align: center;
    text-transform: uppercase;
}

.qty-item .qty input {
    font-size: 34px;
    padding: 0;
    border: none;
    background-color: transparent;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    text-align: center;
    width: 50px;
}

.qty-item .qty .label {
    font-size: 11px;
    line-height: 11px;
}

.qty-item .spinner {
    display: table-cell;
    position: relative;
    padding: 0 10px;
    min-width: 50px;
}

.qty-item .spinner a {
    font-size: 30px;
    cursor: pointer;
    height: 30px;
    width: 30px;
    margin: 0;
    position: relative;
    background: #14e1c1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    text-align: center;
    line-height: 32px;
}

@media screen and (min-width:640px) {
    .qty-item .spinner a.small {
        height: 30px;
        width: 30px;
    }
}

.qty-item .spinner a.qty-up {
    position: absolute;
    top: 0;
}

.qty-item .spinner a.qty-down {
    position: absolute;
    top: 32px;
}

.qty-item .item {
    display: table-cell;
    width: 100%;
}

.qty-item .item .price {
    font-size: 30px;
    line-height: 30px;
    margin-top: 5px;
    margin-left: 30px;
}

.qty-item .item .unit-type {
    font-size: 22px;
    line-height: 22px;
}

@media screen and (min-width:640px) {
    .qty-item .item ul {
        display: inline-block;
        vertical-align: middle;
        width: 70%;
    }

    .qty-item .item .price {
        display: inline-block;
        vertical-align: middle;
        margin-top: 0;
        margin-left: 10px;
    }
}

#pack .pack-content {
    background: #dcdcdc;
}

#pack .pack-banner {
    height: 400px;
    line-height: 400px;
    padding: 0 100px;
    text-align: center;
    margin-bottom: 1rem;
    background-size: cover;
}

#pack .pack-banner .inner {
    vertical-align: middle;
    line-height: normal;
    display: inline-block;
}

#pack .pack-banner .line-it {
    background: url(line.png) no-repeat top center;
}

#pack .pack-banner .line-it h2 {
    color: #fff;
}

#pack .pack-banner .line-it > .line-it-bt {
    background: url(line.png) no-repeat bottom center;
}

#pack .selections {
    padding: 1rem;
}

#pack .selection-banner {
    height: 250px;
    line-height: 250px;
    color: #fff;
    text-align: center;
    margin-bottom: 16px;
    background-size: cover;
}

#pack .selection-banner .inner {
    vertical-align: middle;
    line-height: normal;
    display: inline-block;
}

#pack .selection-no-banner h2 {
    font-family: "Din Next W01", Helvetica, Geneva, Arial, sans-serif;
    font-size: 26px;
    margin-bottom: 0.5rem;
}

#pack .selection-no-banner p {
    margin-bottom: 0.5rem;
}

#pack .selection > ul {
    list-style-type: none;
    padding: 0;
    margin-bottom: 0; 
}

#pack .pack-banner p {
    color: #fff;
}

#pack .choose-basting {
    background: #e7e7e7;
    padding: 1rem;
    margin-bottom: 1rem;
    -webkit-transition: background 1s;
    transition: background 1s;
}

#pack .choose-basting h2 {
    text-align: center;
    margin-bottom: 0.5rem;
}

#pack .choose-basting p {
    margin: 0.5rem 0;
}

#pack .highlight {
    background: #FF0;
}

#pack .with-basting .price {
    vertical-align: top;
}

#pack .with-basting .qty {
    background: none;
    vertical-align: top;
}

#pack .with-basting .qty-inner {
    background: #fff;
    padding: 5px 0;
}

#pack .with-basting .basting-wrapper select {
    background-color: #e7e7e7;
    margin: 10px 0;
    font-size: 1em;
}

#pack .with-basting .basting-wrapper p {
    font-weight: 400;
}

.fs-content #pack .selection > ul > li {
    list-style-image: none;
    margin-bottom: 16px;
    margin-left: 0;
}

#pack .selection .block-container {
    padding: 0 0 15px 0;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#paymentframe {
    border: none;
    height: 600px;
    width: 100%;
    max-width: none;
    z-index: 99;
}

table caption {
    display: none;
}

table.stored-cards label {
    display: inline !important;
}

fieldset {
    margin: 0;
}

.panel h2 {
    text-align: center;
    margin-bottom: 1rem;
}

#cartitemtable .quantity {
    width: 50px;
}

#cartitemtable .remove {
    font-size: 16px;
    cursor: pointer;
    width: 30px;
    height: 30px;
    margin: 0;
    background: #14e1c1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    text-align: center;
    line-height: 32px;
}

#cartitemtable .actions {
    text-align: right;
}

#cartitems .buttonarea {
    position: relative;
    padding: 0;
    overflow: auto;
    margin-bottom: 1rem;
}

#cartitems .promo-code {
    display: inline-block;
    float: left;
}

#cartitems .buttonarea button.add-items {
    float: right;
}

#cartitems .promo-qty {
    padding: 10px;
    color: #000;
}

@media screen and (max-width:640px) {
    #cartitems .flourish-chillies {
        display: none;
    }
}

.promo-code input {
    width: 150px !important;
    display: inline-block;
    background: #fff;
    vertical-align: bottom;
}

.totals {
    font-size: 26px;
    margin: auto;
    padding: 0.5rem;
    min-height: inherit;
    clear: both;
    background: #fff;
    overflow: auto;
}

.totals label {
    float: left;
    width: 70%;
}

.totals .amount {
    float: left;
    width: 30%;
    text-align: right;
}

.panel .form-row {
    text-align: center;
    margin-bottom: 2rem;
}

.panel label {
    display: block;
    font-size: 1.25rem;
    margin-bottom: 0.5rem;
}

.panel .form-element__input {
    width: 100%;
}

.order-details .delivery-date input,
.order-details .delivery-date select {
    width: 150px;
    display: inline-block;
}

.order-details input[type="checkbox"] ~ label {
    padding: 0;
    padding-left: 30px;
}

.affix-parent {
    padding: 0 !important;
}

.affix-parent,
#pack form {
    position: static !important;
}

#sidebar .inner {
    padding: 0 0 0 20px;
}

#pack .buttonarea {
    display: none;
}

input[type=checkbox] + label {
    font-size: 1.25rem;
}

@media screen and (min-width:640px) {
    #sidebar {
        max-width: 314px;
    }
            
    #sidebar.affix {
        position: fixed;
        top: 80px;
    }

    #pack .buttonarea {
        display: block;
    }
}

@media screen and (min-width: 90rem) {
    #sidebar.affix {
        position: fixed;
        top: 95px;
    }
}

#sidebar.affix-bottom {
    position: absolute;
    top: auto;
    bottom: 0;
}

.block-pp {
    background: url(pp-block-bg.png);
    background-size: 100% auto;
    background-repeat: repeat-y;
    position: relative;
    padding: 5px 30px 5px 30px;
    color: #800411;
    margin-top: 70px;
}

@media screen and (min-width:640px) {
    .block-pp {
        margin-top: 0;
    }
}

.block-pp:before, .block-pp:after {
    background: url(pp-block-top.png);
    background-size: 100% 100%; 
    background-repeat: no-repeat;
    content: "";
    display: block;
    height: 12px;
    left: 0;
    position: absolute;
    top: -12px;
    width: 100%;
    z-index: 9;
}

.block-pp:after {
    background-image: url(pp-block-bottom.png);
    top: auto;
    bottom: -28px;
    height: 28px;
}

.block-pp p {
    color: #800411;
    margin-top: 5px;
    margin-bottom: 0;
    line-height: 20px;
}

.block-pp .sign-up {
    display: inline-block;
    width: 40%;
    min-width: 115px;
    vertical-align: middle;
    text-align: center;
}

.block-pp .pp-heart {
    display: inline-block;
    vertical-align: middle;
    margin-left: -25px;
    margin-top: 10px;
    margin-right: 5px;
    width: 60%;
}

.block-pp .sign-up p {
    color: #5c4a3d;
}

.block-pp .pp-flourish {
    top: -50px;
    right: -15px;
    background-image: url(pp-flourish.png);
    width: 147px;
    height: 91px;
    z-index: 10;
    position: absolute;
}

.block-package {
    background: #dcdcdc;
    position: relative;
    padding: 2rem 2rem 1rem 2rem;
    margin-bottom: 2rem;
}

.block-package h2 {
    font-family: "Din Next W01", Helvetica, Geneva, Arial, sans-serif;
    font-size: 24px;
    padding-bottom: 16px;
}

.block-package table td {
    padding: 0 0 0.5rem 0;
    font-size: 1rem;
}

.block-package table tr:nth-child(even) {
    background: none;
}

.block-package .total-col {
    width: 25%;
    text-align: right;
}

.block-package .subtotal {
    font-weight: bold;
}

.block-package tbody {
    border-top: none;
}

.block-package .buttons {
    text-align: center;
}

.block-package .hidden {
    display: none;
}

.block-package #no-people {
    border: none;
    text-align: right;
    width: 50px;
}

.block-package #items {
    margin-bottom: 1rem;
}

#map-canvas img {
    max-width: none;
}
        
#search-form .search button {
    min-width: 23% !important;
}

.packitem td.itemcolumn {
    padding-left: 20px;
}

.totals .tax {
    font-size: 20px;
}

.totals .stitch {
    background: url(stitch.png) no-repeat;
    width: 323px;
    height: 8px;
    margin: auto;
    padding: 10px 0;
    clear: both;
}

.totals .points {
    color: #F701B5;
}

.ordersummary .table {
    margin-bottom: 1rem;
}

.ordersummary .totals {
    margin: auto;
}

.ordersummary .order-details p {
    margin-bottom: 1rem;
}

.ordersummary .totalcolumn {
    text-align: right;
}

#select-site .nearest {
    text-align: center;
}

#select-site .sidebar img {
    padding: 0 10px 25px 10px;
}

#select-site .sidebar .block-package {
    margin-left: 15px;
}

#select-site #sites li.selected .liner {
    background: #FF0;
}

#get-position {
    display: inline-block;
    position: relative;
    padding-left: 1.75rem;
    color: #fff;
    cursor: pointer;
    text-decoration: none;
}

#get-position span {
    text-decoration: underline;
}

#get-position:before {
    font-size: 22px;
    font-size: 1.375rem;
    position: absolute;
    top: 50%;
    left: 0;
    font-family: icomoon;
    font-weight: 400;
    content: "\e605";
    color: #FF00B4;
    -webkit-transform: translate(0,-50%);
    -ms-transform: translate(0,-50%);
    transform: translate(0,-50%);
}

#ui-datepicker-div {
    z-index: 99999 !important;
}

@media screen and (min-width:640px) {
    #select-site .sidebar img {
        padding-left: 0;
        padding-right: 0;
    }
}

#select-site h2.arrow > span > span {
    max-width: 530px;
}

#select-site .block {
    margin-top: 30px;
}

/*
.map-results h4:before {
    content: "";
    width: 12px;
    height: 18px;
    margin: 0 0 0 6px;
    background: url(marker.png) no-repeat;
    background-size: cover;
    display: inline-block;
}*/

#map-query {
    background-color: #fff;
    font-size: 16px;
}

#search-form .or {
    display: inline-block;
    margin: 0 10px 0 0;
}

.fs-content ul.map-results {
    list-style-type: none;
}

.fs-content ul.map-results li {
    display: inline-block;
    width: 33%;
    vertical-align: top;
    margin: 0 0 2rem 0;
}

.map-results li .liner {
    background: #dcdcdc;
    padding: 2rem;
    text-align: center;
}

.map-results li:nth-of-type(3n+1) .liner {
    margin-right: 1rem;
}

.map-results li:nth-of-type(3n+2) .liner {
    margin: 0 1rem;
}

.map-results li:nth-of-type(3n+3) .liner {
    margin-left: 1rem;
}

.map-results li .liner h4 {
    margin-bottom: 1rem;
}

@media screen and (min-width:640px) {
    #map-query {
        width: 50%;
        display: inline-block;
    }

    #search-form .or {
        margin-left: 10px;
    }

    .map-results li .highlight-box {
        min-height: 275px;
    }
}

#map-canvas { 
    height: 500px; 
    margin: 0; 
    padding: 0;
}

#map-wrapper {
    margin: 15px 0;
    position: relative;
    clear: both;
}

#map-wrapper .flourish-31 {
    position: absolute;
    left: -150px;
    bottom: -65px;
}

.map-results {
    margin-top: 15px;
}

.map-results .closed {
    color: #FF00B4;
    font-weight: bold;
    margin-top: 1rem;
}

#select-date {
    width: 500px;
    padding: 1rem 2rem;
}

#select-date h2 {
    font-size: 2rem;
    margin-top: 10px;
}

#select-date p {
    text-align: center;
}

#select-date input {
    width: 180px;
    display: inline-block;
    border: 1px solid #666;
    vertical-align: bottom;
    margin-right: 0.5rem;
}

#select-date .cta {
    vertical-align: bottom;
}

.ui-datepicker th,
.ui-datepicker td {
    font-size: 1rem;
}

.form-element__input {
    font-family: "Din Next W01", Helvetica, Geneva, Arial, sans-serif;
    font-size: 1.25rem
}

.form-element__select {
    padding: 0 0.5rem;
    color: #000;
}

textarea {
    font-size: 1.25rem;
    border: none;
}

@media (max-width: 767px) {
    #select-date {
        width: auto;
    }
}

.checkout-header {
    background: url('teal-grey-bg.png') top right no-repeat;
    background-size: cover;
    padding: 2rem 4rem;
    margin-bottom: 1rem;
}

.faster-checkout {
    margin-bottom: 1rem;
    text-align: center;
    background: #FF0;
    padding: 1rem 2rem;
}

.faster-checkout a.sign-in {
    margin-right: 2rem;
}

.cart-items {
    background: #e7e7e7;
    padding: 2rem;
    margin-bottom: 1rem;
}

.order-details {
    background: #e7e7e7;
    padding: 2rem 4rem;
}

.payment-details {
    background: #fff;
    padding: 0;
}

.payment-details .liner {
    background: #e7e7e7;
    padding: 2rem 4rem;
}

.payment-details img.card-types {
    display: inline-block;
    margin-right: 5px;
}

.payment-details input[type="checkbox"] ~ label {
    padding: 0;
    padding-left: 30px;
}

.payment-details h2 {
    text-align: center;
    margin-bottom: 1rem;
}

.payment-details h3 {
    font-size: 2rem;
    margin-bottom: 0.6rem;
}

.payment-details h3 label {
    font-size: 2rem;
}

.payment-details th,
.payment-details td {
    font-size: 1rem;
}

.payment-details .ccicon {
    height: 26px;
    width: 41px;
    display: inline-block;
}

.payment-details .stored-cards {
    margin-bottom: 1rem;
}

.payment-details .paymentmethods {
    margin-bottom: 1rem;
}

#editorder .site {
    font-weight: bold;
    display: block;
    background: #fff;
    height: 46px;
    line-height: 46px;
}

#editorder .site a {
    display: inline-block;
    margin-left: 5px;
    font-weight: bold;
}

#editorder #TimeSlot_Hour,
#editorder #TimeSlot_Minute {
    width: 100px;
}

::-webkit-input-placeholder {
    color: #646464;
}

:-moz-placeholder { /* Firefox 18- */
    color: #646464;  
}

::-moz-placeholder {  /* Firefox 19+ */
    color: #646464;  
}

:-ms-input-placeholder {  
    color: #646464;  
}

.first-block {
    margin-top: 50px;
}

#signin .existingcustomers label {
    font-weight: bold;
    color: #82010b;
}

.panel-signin {
    background-image: url(teal-grey-bg.png);
    background-size: cover;
}

#orderplaced .buttonarea {
    text-align: center;
}

#orderplaced .whathappensnext {
    background: #e7e7e7;
    padding: 2rem 4rem;
}

#orderplaced .whathappensnext h2 {
    text-align: center;
    margin-bottom: 1rem;
}

.item-note {
    padding-left: 20px;
    font-style: italic;
    color: #9d928b;
}

.clear {
    clear: both;
}

#footer .copyright {
    margin-bottom: 3px;
}

#footer .foodstorm {
    margin-top: 0;
}

#footer .foodstorm a {
    color: #90745f;
    font-size: 10px;
}

input[type=radio] {
    position: relative;
}

@media (max-width: 1100px) {
    #signin .existingcustomers,
    #signin .newcustomers {
        display: block;
        width: auto;
    }

    #signin .existingcustomers {
        border-right: none;
    }

    #signin .newcustomers {
        border-left: none;
    }
}

@media (max-width: 639px) 
{
    .fs-content {
        max-width: 90%;
    }

    .fs-content ul.map-results li {
        display: block;
        width: auto;
    }

    .side-periometer, .side-periperks {
        padding-left: 0;
    }

    .map-results li:nth-of-type(3n+1) .liner {
        margin-right: 0;
    }

    .map-results li:nth-of-type(3n+2) .liner {
        margin: 0;
    }

    .map-results li:nth-of-type(3n+3) .liner {
        margin-left: 0;
    }

    #map-query {
        margin-bottom: 1rem;
    }

    .catering-home .side-periperks {
        display: none;
    }

    .catering-home .home-row-1 ul {
        width: auto;
    }

    .catering-packages-intro {
        padding: 2rem;
    }

    .catering-packages .pkg {
        margin-bottom: 1rem;
    }

    .catering-packages .pkg.pkg-finger-food .inner {
        margin-right: 0;
    }

    .catering-packages .pkg-chick-sides .inner {
        margin: 0;
    }

    .catering-packages .pkg-create-own .inner {
        margin-left: 0;
    }

    .form-element--find {
        margin-bottom: 0;
    }

    .panel {
        padding: 2rem;
    }

    .catering-col-1 {
        float: none;
        width: auto;
    }

    .catering-col-2 {
        float: none;
        width: auto;
        margin-top: 2rem;
    }

    #sidebar.affix-bottom {
        position: static;
    }

    #sidebar .inner {
        padding: 0;
        margin-top: 1rem;
    }

    .order-details {
        padding: 1.5rem;
    }

    .payment-details .liner {
        padding: 2rem 2rem 1rem 2rem;
    }

    #Order_DeliveryDate {
        display: block;
        margin: auto;
        margin-bottom: 0.5rem;
    }

    .faster-checkout a.sign-in {
        margin-right: 0;
    }

	/* Force table to not be like tables anymore */
	table.table, 
    table.table thead, 
    table.table tbody, 
    table.table th, 
    table.table td, 
    table.table tr 
    { 
		display: block; 
	}

	/* Hide table headers */
	table.table thead tr 
    { 
		display: none;
	}

    table.table tr
    {
        position: relative;
    }

	table.table td 
    { 
		/* Behave  like a "row" */
		border: none;
		position: relative;
        padding: 0 !important;
	}

    table.table .itemcolumn
    {
        padding-top: 15px !important;
        font-weight: bold;
    }

    table.table .qtycolumn
    {
        display: inline-block;
        vertical-align: middle;
    }

    table.table .qtycolumn:before
    {
        content: "Qty";
        display: block;
        margin-bottom: 3px;
    }

    table.table .pricecolumn
    {
        display: inline-block;
        vertical-align: middle;
    }

    table.table .discountcolumn {
        display: none;
    }

    table.table .actions
    {
        position: absolute;
        right: 0;
        bottom: 6px;
    }

    table.table .totalcolumn
    {
        position: absolute;
        right: 0;
        bottom: 6px;
        font-weight: bold;
    }

    table.table .ordernocolumn
    {
        display: inline-block;
        font-weight: bold;
    }

    table.table .deliverydatecolumn
    {
        display: inline-block;
    }

    #confirmorder .catering-col-2 {
        display: none;
    }

    .payment-details img.card-types {
        display: block;
        margin-right: 0;
        margin-bottom: 5px;
    }
}