﻿#aViewDetailonHeader {
    float: right;
    font-size: 14px;
    font-weight: bold;
    border: none;
    color: #000000;
}

.sublabeltext {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.2;
}

.ShopCheckoutBillingAddress {
    display: none;
}

.ConfirmationSection {
    font-size: 15px;
    margin: 0 0 15px 15px;
    text-align: left;
    color: #4f4f4f;
}

    .ConfirmationSection span {
        font-weight: bold;
    }

.form .row.gift-cart.section .cart{
    margin-bottom: 12px;
}

.form .row.gift-card-editor {
    padding-left: 0px;
    padding-bottom: 16px;
    margin-top: 24px;
}

.form .row .add-gift-card-link{
    line-height: 36px;
}

.form .row .note-text.rb{
    margin-left: 28px;
}

.form .row.rowNoLabelUp{
    margin-top: -32px;
}

table.cart {
    width: 100%;
}

    table.cart.confirmation {
        margin-bottom: 48px;
    }

.section.postcode-section,
table.cart tbody tr:nth-child(even) {
    background-color: #F9F7F4;
}

table.cart tbody tr.sub-row,
table.cart tbody  tr.cart-promo{
    background-color: #fff;
}

table.cart tbody tr.sub-row td{
    height: 0;
    padding-top: 0;
    border: none;
}


table tr.cart-promo label {
    font-weight: bold;
}

.form tr.promo-header.section.expanded,
table.cart tbody tr.promo-header.expanded td {
    border-bottom: none;
    padding-bottom: 0;
}

table tr.cart-promo td{
    padding-top: 0;
}

table.cart tbody tr.cart-promo.validation-failed label,
table.cart tbody tr.cart-promo .error-message {
    color: #B00020;
}

table.cart tbody tr.cart-promo.validation-failed input[type=text] {
    border: 2px solid #9E2241;
    background: #F7E6E9;
}

table.cart tbody td {
    height: 38px;
}

    table.cart tbody td,
    table.cart tbody th {
        border-bottom: 2px solid #D9D9D9;
        vertical-align: middle;
    }

    table.cart tbody tr.gift-item td {
        border-bottom: none;
    }
    table.cart tbody tr.total-row {
        background-color: #fff;
        border-top: solid 2px #9D9D9D;
    }

        table.cart tbody tr.total-row td {
            padding-top: 15px;
            border: none;
            vertical-align: top;
            height:auto;
        }

            table.cart tbody tr.total-row td b {
                font-weight: 600;
            }

    table.cart td.product {
        width: 35%;
        padding-right: 56px;
    }

    table.cart td.giftnumber {
        width: 65%;
        padding-right: 56px;
    }

    table.cart td.giftrrp,
    table.cart td.giftmember {
        width: 150px;
        text-align: center;
        padding-right: 50px;
    }

    table.cart td.quantity {
        padding-top: 8px;
        padding-bottom: 8px;
        text-align: center;
    }

    table.cart td.rrp,
    table.cart td.member {
        width: 100px;
        text-align: center;
    }

.row-header{
    margin-left: 16px;
}

.input-table {
    padding: 5px 16px;
    height: 46px;
    width: 100%;
    background-color: #ffffff;
    border: 1px solid #B5B5B5;
    border-radius: 4px;
    box-sizing: border-box;
    vertical-align: top;
    transition: all 250ms;
    width: 175px !important;
    margin-bottom: 5px;
    margin-right: 15px;
}

.row.gift-cart.section .button.outline.small{
    margin-left: 17px;
}

.postcode-section .input-number.input-higher {
    margin-right: 10px;
}

.form .row input[type=radio]:not([type="submit"]):not([type="button"]) {
    padding: 0;
    height: 24px;
}

.row.section.postcode-section.validation-failed .control.validation-error {
    display: none;
}

.shop .content.fullWidth {
    width: 800px;
}

.link-row a {
    position: relative;
    top: -25px;
    left: 10px;
}

.form .row.gift-card-error input:not([type="submit"]):not([type="button"]),
.form .row input:not([type="submit"]):not([type="button"]).gift-card-error {
    border: 2px solid #B00020;
    -webkit-transition: all 400ms;
    transition: all 400ms;
    background-color: rgba(176,3,32,0.1) !important;
}

.form .row.gift-card-error label,
.givex-error {
    display: block;
    color: #9F2241;
}

.givex-error-message {
    display: block;
    color: #9F2241;
    margin-top: 28px;
}

.form .row label + input.gift-card-error {
    color: #9F2241
}

.card-info img {
    max-width: 338px;
    margin: 10px 0 10px -8px;
}

.card-info .icon {
    margin-left: 5px;
    cursor: pointer;
}

.card-info {
    margin: 15px 0;
}

.card-result {
    background-color: #E8E2D3;
    padding: 20px;
    margin-bottom: 48px;
}

    .card-result h2 {
        margin-bottom: 0;
    }

h3 {
    margin-top: 0;
}

.card-info .icon.changed {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

@media (max-width: 480px) {
    .card-info img {
        max-width: 100%;
    }

    .postcode-section .row input[type=radio] + label.title {
        display: flex;
        margin-left: 30px;
        padding-right: 10px;
        position: relative;
    }
    
}

@media (max-width: 860px) {
    .shop .content.fullWidth {
        width: 100%;
    }
}

@media (max-width: 767px) {

    table.cart td.product {
        width: auto;
        padding-right: 16px;
    }

    table.cart td.rrp,
    table.cart td.member {
        width: auto;
    }

    tr.cart-promo td.member {
        width: 100px;
        display: contents;
    }
}

.qty-buttons {
    position: relative;
    display: flex;
    text-align: center;
    align-items: center;
    display: inline-flex;
}

    .qty-buttons input[type=text] {
        height: 48px;
        width: 60px;
        padding: 13px 16px;
        box-sizing: border-box;
        background-color: #ffffff;
        border: 1px solid #B5B5B5;
        text-align: center;
    }

        .qty-buttons input[type=text]:focus {
            border-width: 2px;
            border-color: #949494;
        }

    .qty-buttons .genericButton {
        /* position: absolute; */
        top: 0;
        width: 48px;
        height: 48px;
        background: #262626;
        border-color: #262626 !important;
        color: #fff !important;
        font-family: "Courier New",Courier,monospace;
        font-size: 32px;
        font-weight: normal !important;
    }

        .qty-buttons .genericButton:focus {
            outline-style: dotted;
            outline-color: #949494;
        }

        .qty-buttons .genericButton.minus {
            left: 0;
            border-radius: 4px 0 0 4px;
        }

        .qty-buttons .genericButton.plus {
            right: 0;
            border-radius: 0 4px 4px 0;
        }

        .qty-buttons .genericButton:hover {
            background-color: #f0ece3;
            border-color: #f0ece3 !important;
            color: #000 !important;
        }

table.cart td.rrp,
table.cart td.members {
    white-space: nowrap;
}

table.cart td .delete {
    display: block;
    height: 20px;
    border-bottom: none !important;
    color: #130064 !important;
    font-size: 0;
    transition: color 250ms;
    cursor: pointer;
}

    table.cart td .delete:after {
        content: '\f00d';
        font-size: 20px;
        font-family: "Font Awesome 5 Pro";
        font-weight: 300;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        line-height: 1;
    }

    table.cart td .delete:hover {
        color: #000000;
    }

table.cart td .productSpec {
    color: #5a5a5a;
    margin-top: 5px;
}

table.cart td .unitPrice {
    color: #7d7d7d;
    font-size: 14px;
}

table.cart td .promoDiscount {
    color: red;
    font-weight: 600;
    font-size: 13px;
}

table.cart thead tr.subheader td.product,
table.cart thead tr.subheader td.quantity,
table.cart thead tr.subheader td.rrp,
table.cart thead tr.subheader td.member {
    text-align: center;
}

.form .row.section.postcode-section input[type=radio]:not([type="submit"]):not([type="button"]) {
    height: 28px;
}

form .row input[type=radio] + label .title{
    font-weight: bold;
}

form .section.postcode-section .sub-text,
form .row.section.postcode-section .sub-text {
    margin: 5px 0 0 30px;
}

form .section.postcode-section .row {
    padding-bottom: 0;
    padding-left: 0;
    display: flex;
    align-items: center;
    padding: 10px 0;
}

form .section.postcode-section .row .col {
    width: 25%;
}

form .section.postcode-section .row .col.right {
    text-align: right
}

form .section.postcode-section .row .col.title {
    font-weight: bold;
}

form .section.postcode-section .row .col:first-child {
    flex-grow: 1;
}

form .row.section.postcode-section .radio-section.left {
    width: 70%;
}

form .row.section.postcode-section .right {
    width: 25%;
    margin-right: 0;
}

    form .row.section.postcode-section .right select {
        width: 95% !important;
    }


.form .section {
    padding: 8px 16px 0 16px;
}

    .form .section.endingRow {
        border-bottom: 2px solid #D9D9D9;
        padding: 24px 16px;
    }

form .section.postcode-section.last .row {
    padding-top: 0;
}

.form .gift-cart.section {
    border-bottom: 2px solid #D9D9D9;
    background-color: #F9F7F4;
    padding:24px 16px;
}

.promo-header.section {
    border-top: 1px solid #D9D9D9;
}

.form .section:last-child {
    margin-top: -24px;
    border-bottom: none;
    padding-bottom: 24px;
}

    .form .section:after {
        clear: both;
        content: "";
        display: table;
    }

    .form .section label {
        display: inline-block;
    }

        .form .section label .subtitle {
            color: #5a5a5a;
            font-size: 12px;
            line-height: 12px;
            display: block;
        }

        .form .section label .subtitle-error {
            display: none;
            color: #000;
            font-size: 14px;
        }

/*.form .row.validation-failed label {
    color: #000;
}*/

.form .validation-failed label .subtitle-error {
    display: block;
    color: #9F2241;
}

.form .row.validation-failed input[type=submit] {
    border: 2px solid #c4c4c4 !important;
    background-color: #fff !important;
}

.form .section input[type=text]:not([type="submit"]):not([type="button"]) {
    width: 175px;
    margin-bottom: 5px;
}

.form .row.gift-cart.section .gift-card-editor input[type=password],
.form .row.gift-cart.section .gift-card-editor input[type=text] {
    width: 85px;
}

.form .row.gift-cart.section .gift-card-editor input[type=text].long {
    width: 275px;
}

.form .promo-header .icon,
.form .row.gift-cart.section .icon {
    margin-left: 3px;
    font-weight: 500;
}
.postcode-section a.changed .icon, 
.form .promo-header .icon.changed,
.form .row.gift-cart.section .icon.changed {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.postcode-section ul {
    margin: 14px 0 0 30px;
}

.postcode-section ul li {
    list-style: none;
    padding: 5px 0;
}


.form .section .longAnswer {
    float: right;
    text-align: right;
    width: 260px;
    margin-right: 53px;
}

.form .section .button.outline.small,
.form .section .genericButton {
    margin-left: 5px;
    margin-bottom: 5px;
    line-height: 42px;
}

.form .section .result {
    text-align: left;
}

.form .section h4 {
    font-size: 20px;
    line-height: 26px;
}

.form .section .result:after {
    clear: both;
    content: "";
    display: table;
}

.form .section .result .title {
    float: left;
    width: 130px;
    text-align: right;
}

.form .section .result .value {
    float: right;
}

.form .row.checkoutControls {
    padding: 16px;
    margin-top: 24px;
}

    .form .row.checkoutControls .continueShopping {
        float: left;
        margin-top: 8px;
        margin-bottom: 16px;
    }

    .form .row.checkoutControls .continueCheckoutButtons {
        float: right;
    }

a.checkoutButton,
.update-cart-section input.button,
.go-home-button a.button {
    float: right;
    width: 328px;
    margin-bottom: 10px;
}

    a.checkoutButton + a.checkoutButton {
        clear: right;
    }

.form .row.checkoutControls .continueCheckoutButtons.-left,
.-left a.checkoutButton {
    float: none;
}

table.cart tr.reviewhead td {
    border-bottom: 0px solid transparent;
}

table.cart .topRow td {
    font-weight: bold;
    font-size: 0.7em;
    border-bottom: 1px solid #BFBFBF;
}


table.cart.confirmation td.quantity {
    text-align: center;
}

table.cart.confirmation td.price {
    text-align: center;
}

.form .row.checkoutControls .continueCheckoutButtons a.nextButton {
    padding-right: 30px;
}

.cartConfirmationDetails {
    margin-top: 24px;
}

.printConfirmation {
    margin: 20px 0px;
    display: inline-block;
}

table.cart.confirmation + .header {
    margin-top: 48px;
}

.cartConfirmationDetails .row.long span.label {
    width: 30%;
}

@media screen and (max-width: 800px) and (max-device-width: 800px), screen and (max-width: 800px) and (-webkit-min-device-pixel-ratio: 2) {
    .form .row.gift-cart.section .gift-card-editor input[type=password],
    .form .row.gift-cart.section .gift-card-editor input[type=text] {
        width: 90px !important;
    }

    .form .row.gift-cart.section .gift-card-editor input[type=text].long {
        width: 100% !important;
    }

    .form .section .button.outline.small {
        margin-left: 0;
    }
}

@media (max-width: 540px) {
    /* Force table to not be like tables anymore */
    table.cart,
    table.cart thead,
    table.cart tbody,
    table.cart tr,
    table.cart th,
    table.cart td {
        display: block;
    }

    .row.gift-cart.section table.cart {
        margin-bottom: 24px;
    }



    table.cart tr.gift-item,
    table.cart .gift-item td {
        display: inline-block;
    }

    .add-gift-card-link {
        line-height: 36px;
    }

    table.cart .gift-item td {
        width: auto;
    }

    table.cart td.giftnumber {
        padding-right: 0;
    }

    /* Hide table headers (but not display: none;, for accessibility) */
    table.cart thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    table tr.row {
        padding: 0 !important;
    }

    table tr.cart-promo,
    table tr.cart-item {
        position: relative;
        padding-bottom: 8px !important;
        border-bottom: 2px solid #D9D9D9;
    }

    table tr.cart-promo {
        border-bottom: none;
    }

    table tr td[colspan="3"],
    table tr td[colspan="3"] + td {
        width: 50%;
        display: inline-block;
        box-sizing: border-box;
        border-bottom: none;
    }

        table tr td[colspan="3"] + td {
            margin-left: -4px;
        }

    table.cart td {
        height: auto !important;
        border: none !important;
    }

    table.cart tr.cart-item td {
        /* Behave like a "row" */
        position: relative;
        padding: 4px 16px;
        padding-left: 40%;
    }

        table.cart tr.cart-item td:nth-of-type(1) {
            padding-top: 16px;
            padding-left: 16px;
            padding-right: 32px;
        }

        table.cart tr.cart-item td.quantity {
            text-align: right;
        }

        table.cart tr.cart-item td:nth-of-type(5) {
            position: static;
        }

    table.cart tr.cart-promo td.action,
    table.cart tr.cart-promo td.rrp {
        display: contents;
    }

    table.cart tr.cart-promo td .delete,
    table.cart tr.cart-item td .delete {
        position: absolute;
        top: 16px;
        right: 16px;
    }

    table.cart tr.gift-item td.action {
        position: relative;
    }

    table.cart tr.gift-item td .delete {
        position: absolute;
        top: -9px;
        right: -14px;
    }

    table.cart tr.cart-promo td:before,
    table.cart tr.cart-item td:before {
        /* Now like a table header */
        position: absolute;
        left: 16px;
        width: 35%;
        padding-right: 16px;
        white-space: nowrap;
        font-weight: 600;
        text-align: left !important;
    }
    /* Label the data */
    table.cart tr.cart-item td:nth-of-type(1):before {
        content: "Product";
        display: block;
        position: static;
        width: auto;
    }

    table.cart tr.cart-item td:nth-of-type(2):before {
        content: "Qty";
    }

    table.cart tr.cart-item td:nth-of-type(2):before {
        top: 16px;
    }

    table.cart.confirmation tr.cart-item td:nth-of-type(2):before {
        top:auto;
    }

    table.cart tr.cart-item td:nth-of-type(3):before {
        content: "Non-members ($)";
    }

    table.cart tr.cart-item td:nth-of-type(4):before {
        content: "Member price ($)";
    }

    table.cart.confirmation tr.cart-item td:nth-of-type(3):before {
        content: "Unit price ($)";
    }

    table.cart.confirmation tr.cart-item td:nth-of-type(4):before {
        content: "Total ($)";
    }


    table.cart.confirmation td.quantity,table.cart.confirmation td.price,table.cart td.rrp, table.cart td.member {
        text-align: right;
        position: relative;
    }

    

    table.cart tbody tr.total-row td {
        padding-top: 8px;
    }

    
    .form .section .longAnswer {
        width: 100% !important;
        margin-right: 0;
    }

    .form .row.checkoutControls {
        display: flex;
        flex-direction: column;
        margin-top: 5px;
    }

        .form .row.checkoutControls .continueShopping {
            order: 2;
        }
}

@media (max-width: 480px) {
    .contentBody {
        padding: 0 8px;
    }

    .important-information .title {
        padding-left: 10px;
    }


    .promo-header.section {
        padding: 10px 0;
    }

    .form tr.promo-header.section.expanded, 
    table.cart tbody tr.promo-header.expanded td {
        padding: 10px 16px 0 10px;
    }

    table tr.cart-promo td {
         padding-top: 15px;
    }

    .form .row .credit-card-type select {
        width: 50% !important;
    }

    form .row.section.postcode-section .radio-section.left {
        width: 100%;
    }

    table.cart tbody tr.promo-header td + td {
        display: none;
    }

    table.cart tbody tr.promo-header.expanded td + td {
        display: block;
    }
}
