
/* shopping cart */

.shoppingCart {
    margin: 0 0 10px;
}

.cartList {
}

    .cartList .item:before, .cartList .item:after {
        content: " ";
        display: table;
    }

    .cartList .item:after {
        clear: both;
    }

    .cartList .item {
        *zoom: 1;
    }

form[action*="/checkout/"] .advFooter .emailSignup,
form[action*="/shopping-cart/"] .advFooter .emailSignup {
    display: none;
}

form[action="/my-account/saved-orders/"] .costSummary, form[action="/checkout/confirm/"] .costSummary {
    padding: 0;
}

form[action="/my-account/saved-orders/"] .cartList .itemInfo {
    width: 56%;
}

@media (max-width: 47.938em) {
    form[action="/my-account/saved-orders/"] .cartList .itemInfo {
        width: 100%;
    }

    form[action="/my-account/saved-orders/"] .cartList .itemTotal {
        padding-top: 0;
    }
}

form[action="/checkout/confirm/"] .cartList .itemInfo {
    width: 30%;
}

@media (max-width: 47.938em) {
    form[action="/checkout/confirm/"] .cartList .itemInfo {
        width: 100%;
    }
}

.cartList .media {
    display: table-cell;
    width: 90px;
    min-width: 90px;
}

.cartList .content {
    display: table-cell;
    vertical-align: top;
}

    .cartList .content p {
        margin-bottom: 0.725em;
    }

.cartList .itemInfo > .title {
    margin-bottom: 10px;
    font-size: 1.125em;
}

    .cartList .itemInfo > .title > a {
        color: #236bb3;
        text-decoration: none;
        font-weight: 600;
    }

        .cartList .itemInfo > .title > a:hover {
            text-decoration: underline;
        }

.cartList .cartItemDetails {
    display: table;
    width: 100%;
}

.shoppingCart .cartList .cartItemDetails label, .shoppingCart .cartList .cartItemDetails .label {
    display: block;
    float: none;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
}

.cartList .contentExtra {
    padding-left: 10px;
}

.cartList .itemInfo {
    padding-right: 20px;
    padding-left: 0;
    width: 40%;
}

.cartList .itemRecipient {
    min-width: 50px;
    vertical-align: top;
}

.cartList .itemFacility {
    width: 150px;
}

.cartList .contentExtra.itemDates {
    width: 130px;
}

.cartList .itemQty {
    width: 105px;
}

    .cartList .itemQty label {
        margin: 0 0 5px 0;
        padding: 0;
        vertical-align: middle;
        display: inline-block;
    }

    .cartList .itemQty input {
        margin-bottom: 0;
        width: 50px;
        vertical-align: middle;
        display: inline-block;
    }

.cartList .itemGiftMessage {
    width: 100px;
    padding-left: 20px;
    text-align: center;
    font-size: 0.923em;
}

.cartList .itemTotal {
    width: 115px;
    vertical-align: top;
    text-align: right;
}

    .cartList .itemTotal li {
        margin-bottom: 5px;
    }

.cartList .itemPrice {
    margin-bottom: 8px;
    font-size: 1rem;
}

.cartList .itemMessage {
    padding: 12px 17px;
    background-color: #f1f9fa;
}

.cartList .itemAction .icon-edit {
    margin-bottom: 5px;
}

    .cartList .itemAction .icon-edit > a {
        text-decoration: none;
    }

@media (min-width: 62em) {
    .cartwrpr .cartItemDetails {
        padding-right: 20px;
    }

    .cartList .itemQty label {
        margin: 0 5px 0 0;
    }
}

@media (min-width: 48em) and (max-width: 75em) {
    .cartList .itemAction .icon-edit:before,
    .cartList .itemAction .icon-remove:before {
        content: none;
    }
}

.reorderItemInfo {
    width: 31%;
}

.contentExtra.attendees {
}

    .contentExtra.attendees ul {
        margin: 0;
        padding: 0;
        list-style-position: inside;
    }

        .contentExtra.attendees ul li {
            margin: 0 0 10px 0;
            font-size: 0.913em;
        }

            .contentExtra.attendees ul li:last-child {
                margin: 0;
            }

.cartList a.removeLink {
    text-decoration: none;
}

.cartHistory .contentExtra {
    width: 21%;
    text-align: left;
}

.cartHistory .itemPrice {
    font-weight: normal;
    font-size: 1rem;
}

.cartHistory .itemStatus {
    font-weight: bold;
}

    .cartHistory .itemStatus span {
        font-weight: normal;
    }

.cartToolsAlt {
    margin-bottom: 20px;
    padding: 20px 15px;
    background-color: #f7f7f7;
}

    .cartToolsAlt .content input {
        margin-bottom: 0;
    }

    .cartToolsAlt .content label {
        margin-top: 0;
    }

    .cartToolsAlt .content input[type="button"] {
        padding: 10px;
    }

.cartTools {
    padding: 1px;
    margin: 0 0 20px 0;
    border: 1px solid #D2D2D2;
}

    .cartTools .title {
        margin: 0;
        padding: 15px;
        font-size: 1.153em;
        font-weight: 600;
        color: #fff;
        background: #236bb3;
    }

    .cartTools .content {
        padding: 15px;
        border-top: 1px solid #e3e3e3;
    }

    .cartTools ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
        position: relative;
    }

    .cartTools li {
        margin: 0 0 5px;
    }

    .cartTools .popup {
        position: absolute;
        display: none;
        left: -14px;
        right: -14px;
        margin-top: -1px;
        padding: 20px 15px;
        margin-bottom: 2px;
        border: 1px solid #3f3f3f;
        background: #fff;
        z-index: 2;
        -webkit-box-shadow: 1px 2px 5px 1px rgba(0, 0, 0, 0.25);
        box-shadow: 1px 2px 5px 1px rgba(0, 0, 0, 0.25);
    }

    .cartTools .icon-close {
        position: absolute;
        right: 3px;
        top: 3px;
        cursor: pointer;
    }

    .cartTools .popup li {
        position: static;
        display: block;
    }

    .cartTools .showTool {
        display: block;
    }

    .cartTools a,
    .cartTools a:link,
    .cartTools a:visited {
        font-size: 0.9em;
        font-weight: bold;
        text-decoration: none;
        cursor: pointer;
    }

        .cartTools a:hover,
        .cartTools a:active {
            text-decoration: underline;
        }


.backTo {
    margin: 0 0 10px;
}

    .backTo a.bringBackTo {
        padding: 0 0 0 10px;
    }

.cartTools .sf-menu ul {
    float: none;
    background-color: #fff;
}

.cartwrpr {
    margin: 0 auto;
    padding: 2px 0 13px 0;
}

.shiphdng {
    margin: 0 0 10px 0;
    padding: 5px;
    font-weight: bold;
    background-color: #efefef;
    border: 1px solid #D2D2D2;
}

.shipAddr {
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #999999;
}

    .shipAddr table td {
        padding: 5px 10px 5px 3px;
    }

.cart {
    width: 100%;
    margin: 0 auto 5px auto;
    border-collapse: collapse;
}

    /* ******** */
    /* Cart Fix */
    /* ******** */
    .cart table tr td {
        border-bottom: none;
    }

    .cart .edit table tr td {
        font-size: .9em;
    }

    .cart .edit div a {
        font-size: .9em;
    }
    /* ************ */
    /* End Cart Fix */
    /* ************ */

    .cart table.innerTable td {
        border: 0;
        vertical-align: top;
        padding: 0;
    }

        .cart table.innerTable td.pImg {
            padding-right: 10px;
        }

    .cart th {
        padding: 5px;
        color: #fff;
        background-color: #3F3F3F;
    }

    .cart td {
        background-color: #fff;
        vertical-align: top;
        padding: 10px 0 10px 5px;
        border-bottom: 1px solid #d2d2d2;
    }

    .cart tr.noborder td {
        border-bottom-width: 0;
    }

    .cart td.edit div {
        padding: 5px 0 0 0;
        font-size: .9em;
    }

    .cart td.qty input.text, table.cart td.wrapping input.text {
        width: 20px;
        padding-left: 3px;
        padding-right: 3px;
        text-align: center;
    }

    .cart td .name {
        font-weight: bold;
        margin: 0;
        color: #000;
    }

    .cart td ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

        .cart td ul.selections li {
            margin-bottom: 5px;
            padding-left: 10px;
            background: url(/cms/images/arrowRight.gif) no-repeat 0 4px;
            font-weight: bold;
            font-size: 13px;
        }

    .cart .prodInfo {
        font-size: .9em;
    }

.cartInfo {
    height: 1%;
    margin: 0 auto;
}

    .cartInfo .promoCode {
        margin-bottom: 10px;
        padding: 15px 10px 10px;
        border: 1px solid #D2D2D2;
    }

        .cartInfo .promoCode input.select {
            width: 117px;
            background-color: #f7f7f7;
        }

.updateCart {
    padding-top: 13px;
    margin-bottom: 11px;
}

    .updateCart .pretty-btn {
        margin-bottom: 10px;
        margin-right: 5px;
        padding-left: 20px;
        padding-right: 20px;
        font-size: 0.913rem;
    }

.cartSupport {
}

    .cartSupport .clear {
        width: 0px;
    }

.checkoutBlock {
    float: right;
    width: 296px;
}

.multipleShips {
    padding: 0 0 10px 0;
    margin: 0 0 20px 0;
    border-bottom: 1px solid #D2D2D2;
}

.chkoutBoxes {
    margin-bottom: 15px;
    font-size: 0.9em;
}

    .chkoutBoxes .chkoutRow {
        position: relative;
        min-height: 1px;
        *height: 1%;
        background: #fff;
        border: 1px solid #e3e3e3;
        margin-bottom: 2px;
    }

        .chkoutBoxes .chkoutRow .title {
            float: left;
            display: inline;
            width: 176px;
            padding: 7px 5px 7px 0;
            margin: 0;
            text-align: right;
            border-right: 1px solid #fff;
            background-color: #e3e3e3;
        }

        .chkoutBoxes .chkoutRow .price {
            float: right;
            display: inline;
            width: 95px;
            padding: 6px 15px 0 0;
            font-size: 1.1em;
            font-weight: bold;
            text-align: right;
        }

    .chkoutBoxes a.enterZip, .chkoutBoxes a.enterZip:link, .chkoutBoxes a.enterZip:visited {
        position: absolute;
        top: 9px;
        left: 5px;
        font-size: 0.75em;
        color: #000000;
        text-decoration: underline;
        z-index: 10;
    }

.costSummary {
    display: block;
    width: 100%;
    margin: 0 0 25px 0;
    padding: 10px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 0.875em;
}

form[action="/checkout/"] .costSummary {
    margin: 0 0 10px;
    color: #fff;
    background-color: #236bb3;
}

.costSummary .costRow {
    display: table-row;
}

.costSummary .title {
    display: table-cell;
    padding: 5px;
    font-weight: 600;
    font-size: 1em;
    text-transform: none;
    vertical-align: middle;
}

    .costSummary .title a {
        display: inline-block;
        font-size: 0.8em;
    }

.costSummary .price {
    display: table-cell;
    width: 35%;
    padding: 2px;
    text-align: right;
    vertical-align: middle;
}

.costSummary .totalPrice {
    font-size: 1.2em;
    font-weight: bold;
}

@media (min-width: 62em) {
    .costSummary {
        display: table;
        padding: 20px;
    }

        .costSummary .title {
            padding: 10px;
        }

        .costSummary .price {
            padding: 5px;
        }
}

.recipientSummary {
    margin-bottom: 20px;
    border-bottom: 2px solid #000;
}

    .recipientSummary .costSummary {
        border: 0;
        font-size: 0.9em;
    }

        .recipientSummary .costSummary .price {
            padding-right: 0;
        }

.shipData {
    position: absolute;
    display: none;
    left: -5px;
    right: -5px;
    margin-top: -1px;
    padding: 20px 15px;
    margin-bottom: 2px;
    border: 1px solid #3f3f3f;
    background: #fff;
    z-index: 2;
    -webkit-box-shadow: 1px 2px 5px 1px rgba(0, 0, 0, 0.25);
    box-shadow: 1px 2px 5px 1px rgba(0, 0, 0, 0.25);
}

    .shipData .icon-cancel-circle {
        position: absolute;
        top: -4px;
        right: -4px;
        font-size: 1.5em;
        cursor: pointer;
    }

    .shipData .shipRow {
        height: 1%;
        padding: 10px 0 0 0;
    }

    .shipData .shipTitle {
        float: left;
        display: block;
        width: 95px;
        margin-top: 3px;
    }

    .shipData .icon-close {
        position: absolute;
        right: 3px;
        top: 3px;
        cursor: pointer;
    }

.promoOffer {
    border: 1px dashed #ff0000;
    padding: 10px;
    margin-bottom: 10px;
    color: #FF0000;
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
}

#promoOfferPopup {
    position: realtive;
    display: none;
    padding: 10px;
    border: 2px solid #1C4E87;
}

    #promoOfferPopup .pagination .paging {
        padding-right: 0;
        border-right: 0;
    }

    #promoOfferPopup .collectionItems {
        margin-bottom: 10px;
    }

        #promoOfferPopup .collectionItems .itemWrapper a.itemLink,
        #promoOfferPopup .collectionItems .itemWrapper a.itemLink:link,
        #promoOfferPopup .collectionItems .itemWrapper a.itemLink:visited {
            width: 101px;
        }

    #promoOfferPopup .closeBtn {
        position: absolute;
        right: 0;
        top: -15px;
        width: 53px;
        height: 15px;
        z-index: 1000;
        background: url(/cms/images/layout/ui/icon_close.gif) 0 0 no-repeat;
        overflow: hidden;
        text-indent: -9999em;
        cursor: pointer;
    }

.checkoutSummary {
    position: relative;
}

    .checkoutSummary > .title {
        margin: 0;
        padding: 10px;
        font-weight: 600;
        color: #fff;
        font-size: 1.153em;
        background: #236bb3;
    }

    .checkoutSummary > .content {
        padding: 0 20px 20px;
    }

    .checkoutSummary .totalPrice {
        margin: 0 0 10px;
        font-weight: bold;
        text-align: center;
    }

        .checkoutSummary .totalPrice > .price {
            display: block;
            font-size: 1.5em;
        }

.cartwrpr .checkoutSummary {
    margin-bottom: 20px;
    padding: 1px;
    border: 1px solid #D2D2D2;
}

    .cartwrpr .checkoutSummary > .title {
        padding: 15px;
    }

@media (min-width: 62em) {
    .checkoutSummary > .title {
        padding: 20px;
    }
}

.checkoutSummary .costSummary .price {
    border-bottom: 1px dashed #ccc;
}

.checkoutSummary .costSummary .title {
    text-align: left;
    border-bottom: 1px dashed #ccc;
}

.chkoutTotalRow {
    margin-top: 10px;
    line-height: 1em;
    display: block !important;
}

    .chkoutTotalRow .title,
    .chkoutTotalRow .price {
        font-weight: bold;
        font-size: 1.253em;
    }

    .chkoutTotalRow .title {
        margin: 0;
        display: block;
    }

    .chkoutTotalRow .price {
        text-align: left;
    }

.slideCart {
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.slideCartRail {
    position: relative;
}


/* one page checkout */

.memberBar {
    min-height: 1px;
    margin: 0 0 7px 0;
    padding: 5px;
    background: #ECF1F8;
}

    .memberBar .hdng {
        margin: 0;
        padding: 0 10px;
        line-height: 30px;
        border: 0;
        border-right: 1px solid #fff;
    }

    .memberBar .memberBarInner {
        padding: 3px 15px 0 15px;
        text-align: right;
    }

    .memberBar label {
        margin-right: 2px;
        font-weight: bold;
        vertical-align: baseline;
    }

    .memberBar span.btnWrapper {
        margin-right: 10px;
    }

.useSavedAddress {
    padding: 4px;
    font-size: .9em;
    color: #4e4e4e;
    background: #e2e2e2;
}

    .useSavedAddress label {
        margin: 0 !important;
        cursor: pointer;
        font-weight: bold;
    }

    .useSavedAddress input {
        margin-right: 5px;
        vertical-align: middle;
    }

.onePageCheckout {
    position: relative;
    padding-left: 10px;
    padding-right: 10px;
}

    .onePageCheckout .checkoutSteps {
        margin-right: 300px;
    }

@media (min-width: 80em) {
    .onePageCheckout {
        padding-left: 0;
        padding-right: 0;
    }
}

#stepReview.stepContent {
    color: #fff;
    background: #236bb3;
}

#stepReview .listhdng {
    margin-bottom: 15px;
    font-weight: 600;
    font-size: 1.193em;
    display: block;
}

#stepReview .titleAlt {
    margin-bottom: 25px;
    font-weight: 600;
    font-size: 1.4em;
}

#stepReview label,
#stepReview .label {
    font-weight: normal;
    font-size: 1.153em;
    color: #fff;
}

#stepReview .formee-list-vertical li {
    margin-left: 0;
    margin-bottom: 15px;
}

#btnReview {
    padding: 20px;
    max-width: 242px;
    width: 100%;
    font-weight: 600;
    font-size: 1.215em;
}

#stepReview .confirmPasswordSection {
    margin: 20px 0;
}

    #stepReview .confirmPasswordSection p {
        margin-bottom: 20px;
    }

#stepReview .password-inputs-container label {
    font-weight: 600;
}

@media (min-width: 48em) {
    #stepReview .titleAlt {
        font-size: 1.8em;
    }
}

.checkout-page .newsletterField {
    display: none !important;
}

.newsletterField .formee-lbl {
    color: #fff;
}

.newsletterField .formee-list li {
    margin: 0 15px 0 0;
}

.newsletterField input[type="checkbox"],
.newsletterField input[type="radio"] {
    margin-right: 15px;
}

.newsletterField label {
    min-width: 100px;
    display: inline-block;
}

.gsa-modal-content {
    padding: 10px;
}

    .gsa-modal-content h2 {
        margin-top: 0;
        margin-bottom: 15px;
        color: #236bb3;
    }

    .gsa-modal-content p {
        line-height: 1.75em;
    }

.cartToolsAlt .formee .grid_8 input {
    margin-bottom: 10px;
}

@media (min-width: 48em) and (max-width: 62em) {
    .cartToolsAlt .formee .grid_8,
    .cartToolsAlt .formee .grid_4 {
        width: 100%;
        float: none;
    }

    .cartToolsAlt .formee .grid_4 {
        padding: 0;
    }

    .checkoutCart .itemWrapper .itemContent .itemTitle {
        margin-bottom: 5px;
        width: 100%;
        float: none;
    }

    .checkoutCart .content.cartItems {
        padding: 10px;
    }
}

dl.checkoutProcess {
    min-height: 1px;
    margin: 0 0 9px 0;
}

    dl.checkoutProcess dt.stepTitle {
        border-radius: 7px 7px 0 0;
        overflow: hidden;
    }

        dl.checkoutProcess dt.stepTitle span.stepTitleInner {
            position: relative;
            display: block;
            padding: 15px 20px;
            color: #fff;
            font-size: 1.153em;
            font-weight: 600;
            background-color: #1c60a1;
        }

    dl.checkoutProcess dt.inactive {
        margin-bottom: 5px;
        border-radius: 7px;
    }

        dl.checkoutProcess dt.inactive span.stepTitleInner {
            color: #707070;
            background-color: #e3e3e3;
        }

    dl.checkoutProcess dt.previous {
        margin-bottom: 5px;
        border: 1px solid #d2d2d2;
    }

        dl.checkoutProcess dt.previous span.stepTitleInner {
            color: #707070;
            background-color: #e3e3e3
        }

            dl.checkoutProcess dt.previous span.stepTitleInner .editLink {
                top: 22px;
                right: 25px;
                text-decoration: underline;
                font-weight: 300;
            }

    dl.checkoutProcess dd.stepContent {
        margin: 0 0 1px 0;
        padding: 15px;
        background: #f7f7f7;
        background: -moz-linear-gradient(top, #f7f7f7 0%, #fbfcfe 50%, #ffffff 100%);
        background: -webkit-linear-gradient(top, #f7f7f7 0%,#fbfcfe 50%,#ffffff 100%);
        background: linear-gradient(to bottom, #f7f7f7 0%,#fbfcfe 50%,#ffffff 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ffffff',GradientType=0 );
    }

    dl.checkoutProcess .stepGroupTitle {
        margin-bottom: 20px;
        padding: 0;
        text-align: left;
    }

        dl.checkoutProcess .stepGroupTitle .hdng {
            margin: 0;
            font-size: 1.7rem;
            font-weight: 600;
            border: 0;
        }

        dl.checkoutProcess .stepGroupTitle .formRow {
            float: right;
            display: inline;
            margin-top: 5px;
        }

    dl.checkoutProcess .stepGroupContent {
        margin-bottom: 30px;
        padding: 0;
    }

        dl.checkoutProcess .stepGroupContent .accountBlocks {
            margin: 0;
            border: 0;
        }

    dl.checkoutProcess .stepGroupTitle .hdng span {
        font-size: 0.786em;
        font-weight: normal;
        text-transform: none;
        color: #eb1c30;
    }

    dl.checkoutProcess .stepGroupTitle .hdng .formRow {
        margin: 0;
        font-size: 0.517em;
        font-weight: normal;
        text-transform: capitalize;
        color: #eb1c30;
    }

@media (min-width: 62em) {
    dl.checkoutProcess dt.stepTitle span.stepTitleInner {
        padding: 25px 60px 25px 25px;
        font-size: 1.352em;
    }

    dl.checkoutProcess dd.stepContent {
        padding: 50px;
    }
}

.checkoutProcess .forms fieldset {
    position: relative;
    margin: 0 0 10px 130px;
}

    .checkoutProcess .forms fieldset legend {
        position: absolute;
        left: -130px;
        top: 0;
        width: 110px;
        color: #4E4E4E;
        font-size: 17px;
        font-weight: normal;
        white-space: normal;
    }

        .checkoutProcess .forms fieldset legend span {
            float: left;
        }

            .checkoutProcess .forms fieldset legend span.note {
                float: none;
                font-size: 11px;
            }

.checkoutSummary {
}

.checkoutCart {
    -webkit-box-shadow: 0px 0px 23px 1px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 0px 23px 1px rgba(0,0,0,0.2);
    box-shadow: 0px 0px 23px 1px rgba(0,0,0,0.2);
}

.checkoutCartInner {
    margin: 0 0 2px 0;
}

.checkoutCart .cartItems {
    padding: 10px 20px;
}

.checkoutCart .itemWrapper {
    padding: 10px 0;
    border-top: 1px dashed #ccc;
}

    .checkoutCart .itemWrapper:first-child {
        border-top: 0;
    }

.checkoutCart .itemImage {
    float: left;
    display: inline;
    height: auto;
}

.checkoutCart .itemContent {
    position: static;
    padding: 0;
    text-align: left;
    font-size: 1em;
}

    .checkoutCart .itemContent .itemTitle {
        margin: 0 0 5px 0;
        font-size: 0.913em;
        font-weight: 600;
    }

    .checkoutCart .itemContent .itemDate {
        font-size: 0.913em;
    }

.checkoutCart .recipHeader {
    padding: 10px 0 0 0;
    border-bottom: 1px dotted #ccc;
}

.checkoutCart .itemWrapper .itemSwatch {
    float: left;
    display: inline;
    margin: 7px 0 12px 0;
}

.checkoutCart .itemWrapper .itemPrice {
    float: right;
    display: inline;
    width: 40%;
    margin: 0;
    font-size: 0.913em;
    text-align: right;
    font-weight: normal;
}

.checkoutCart .itemWrapper .qtyNum {
}

.checkoutCart .chkoutBoxes .chkoutRow .title {
    width: 160px;
}

.checkoutCart .chkoutBoxes .chkoutRow .price {
    width: 105px;
}

.siteStamps {
    margin: 10px 0;
}

    .siteStamps img {
        vertical-align: middle;
    }

dl.checkoutProcess dt.stepTitle a.editLink {
    position: absolute;
    right: 25px;
    top: 18px;
    font-size: 0.813em;
    font-weight: 300;
    text-decoration: underline;
    text-transform: none;
}

.checkoutCart .cartHeader a.editLink,
.checkoutCart .cartHeader a.editLink:link,
.checkoutCart .cartHeader a.editLink:visited {
    font-size: 0.813em;
    font-weight: 300;
    text-decoration: underline;
    text-transform: none;
    color: #fff;
}

@media (min-width: 62em) {
    dl.checkoutProcess dt.stepTitle a.editLink {
        top: 24px;
    }
}

.dateSelection .selector {
    float: left;
    display: inline;
    width: 90px;
    margin-right: 10px;
}

.dateSelection div.selector span {
    width: 60px;
}

.dateSelection div.selector select {
    width: 97px;
}

.checkoutProcess .supportedPayments {
    margin: 0 0 10px;
}

.userMessage {
    width: 46%;
    padding: 10px 15px;
    margin-bottom: 10px;
    background: #E0E0E0;
    border: 1px solid #c7c7c7;
}

.helpfulInfo {
    font-size: 14px;
    color: #4e4e4e;
    line-height: 1.7em;
}

    .helpfulInfo .hdng2 {
        margin: 0;
        font-size: 18px;
        font-weight: normal;
        color: #4e4e4e;
    }

.cartQuestionsText {
    float: left;
    display: inline;
    width: 255px;
    padding: 0 20px;
}

.helpLinks {
    float: left;
    display: inline;
    width: 320px;
}

    .helpLinks ul.linkList {
    }

        .helpLinks ul.linkList li {
            float: left;
            display: inline;
            width: 140px;
            margin: 0 10px 0 0;
            padding: 0 0 0 10px;
            background: url(/images/layout/arrow_right_red_open.gif) no-repeat 0 8px;
        }

        .helpLinks ul.linkList a,
        .helpLinks ul.linkList a:link,
        .helpLinks ul.linkList a:visited {
            color: #4e4e4e;
            text-decoration: none;
        }

.shippingOptions {
    margin-bottom: 7px;
    font-size: 0.9em;
}

    .shippingOptions .shipOpt {
        float: left;
        display: inline;
        width: 178px;
        margin: 0 5px 5px 0;
        padding: 5px 10px 5px 5px;
    }

        .shippingOptions .shipOpt label {
            margin: 0;
            cursor: pointer;
        }

.shipping-selected {
    background-color: #EFEFEF;
}

.checkoutSummaryHeading {
    margin-bottom: 5px;
    padding-bottom: 5px;
    font-weight: bold;
    border-bottom: 1px solid #CCCCCC;
}

.checkoutBox {
    padding: 20px 9px;
    background: #efefef;
    border: 1px solid #e3e3e3;
}

.checkoutSubBox {
    padding: 10px;
    background: #F9F9F9;
    border: 1px solid #e3e3e3;
}

.accountBlocks .forms .card-number,
.accountBlocks .forms .expiration,
.accountBlocks .forms .security-code {
    display: none;
}

/* ## Checkout Review ## */
.billingEmail {
    word-wrap: break-word;
}

.checkoutReviewTotals {
    margin-top: 50px;
    padding-top: 35px;
    padding-bottom: 35px;
    border-top: 1px solid #73a8de;
    text-align: center;
}

    .checkoutReviewTotals .reviewTotalBreakdown {
        display: inline-block;
    }

    .checkoutReviewTotals .grandTotal {
        margin-top: 20px;
        font-size: 1.2em;
        font-weight: 600;
        display: block;
    }

    .checkoutReviewTotals p {
        margin-bottom: 0;
    }

.reviewOptions {
    border-top: 1px solid #73a8de;
    padding: 30px !important;
}

.edit-quick-jump,
.edit-quick-jump:visited {
    margin-top: 30px;
    color: #d6d8d7;
    display: block;
}

/* 16px baseline (0 - 479px) */
@media only screen and (max-width:29.938em) {
    .cartList .itemTotal {
        display: block;
        float: none !important;
        padding-top: 10px;
        margin-bottom: 10px;
        clear: both;
        text-align: left;
    }

    .cartList .media {
        float: left;
        display: inline;
        margin: 0 10px 10px 0;
    }

    .cartList .content {
        display: block;
        padding: 0;
    }

    .cartList .cartItemDetails {
        display: block;
        width: auto;
    }

    .cartList .contentExtra {
        clear: left;
        margin-bottom: 15px;
        padding-left: 0;
    }

    .cartList .itemInfo {
        clear: left !important;
        padding-left: 0 !important;
    }

    .cartList .itemGiftMessage {
        clear: none;
        text-align: left;
        padding-left: 10px
    }
}

/* 16px baseline (0 - 641px) */
@media only screen and (max-width:40.063em) {
    .cartHistory.cartList .contentExtra {
        float: none;
    }

    .cartList .contentExtra {
        margin-bottom: 15px;
        display: block;
    }

    .cartList .itemInfo {
        clear: none;
        display: block;
        float: none;
        width: auto;
        max-width: 100%;
        padding-left: 10px;
    }

    .cartList .itemTotal {
        display: block;
        float: right;
    }
}

/* 16px baseline (0 - 767px) */
@media only screen and (max-width:47.938em) {
    .slideCartRail {
        min-height: 0 !important;
    }

    .slideCartCompanion {
        min-height: 0 !important;
    }
}

/* 16px baseline (768px+) */
@media only screen and (min-width:48em) {
    .slideCartWrapper {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }

    .slideCart {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        max-width: 320px;
    }

    .slideCartRail .stickyTop {
    }

    .slideCartRail .stickyFixed {
        position: fixed;
        left: auto;
        right: auto;
        width: 25%;
        padding: 0 5px 0 10px;
        margin-left: -10px;
    }

    .slideCartRail .stickyBottom {
        top: auto;
        bottom: 0;
    }
}

/* 16px baseline (960px+) */
@media only screen and (min-width:60em) {
    .reviewTotalBreakdown .grandTotal {
    }
}

/* 

    Overwrite for cart items

    Previously it was all wrapped in tables, it still is, but now we made the items break down a bit early. 
    We also want to be super specific so we don't accidentally style somethign else.
*/


.cartList .content {
    text-align: center;
}

.shoppingCart .cartList .cartItemDetails {
    display: block;
}

.shoppingCart .cartList .content {
    display: block;
}

.shoppingCart .cartList .item {
    display: block;
}

.shoppingCart .cartList .content .cartItemDetails .contentExtra {
    padding: 20px;
    background: #f7f7f7;
    text-align: center;
    width: 100%;
}

    .shoppingCart .cartList .content .cartItemDetails .contentExtra .btn {
        color: #ffffff;
    }

        .shoppingCart .cartList .content .cartItemDetails .contentExtra .btn:focus {
            border: 2px solid #113050;
        }

        .shoppingCart .cartList .content .cartItemDetails .contentExtra .btn:hover {
            color: #236bb3;
        }

        .shoppingCart .cartList .content .cartItemDetails .contentExtra .btn:visited {
            color: none;
        }

.checkoutSummary div.cartRate {
    text-align: center;
    margin-top: 10px;
}

.checkoutSummary div.rateit div.rateit-preset {
    background: url(/cms/images/layout/star.png) left -96px !important;
}

@media(min-width:870px) {
    .shoppingCart .cartList .cartItemDetails {
        display: table;
    }

    .shoppingCart .cartList .content {
        display: table-cell;
    }

    .shoppingCart .cartList .item {
        display: table;
    }

    .shoppingCart .cartList .content .cartItemDetails .content img {
        max-width: 417px !important;
    }

    .shoppingCart .cartList .content .cartItemDetails .contentExtra {
        width: 275px;
        text-align: left;
    }
}



.stepGroupContent.primaryPayment .formee .grid_6 table input {
    display:inline-block;
    margin-right:10px;
}

.stepGroupContent.primaryPayment .formee .grid_6 table label {
    display: inline-block;
}