/**************************************************

  --------------------
  Cart and Checkout base styles for all brands
  --------------------
    
**************************************************/

/**************************************************
    Icon Web Fonts
**************************************************/

@font-face {
    font-family: 'MTD Checkout';
    src: url('../font/pictos_custom.eot');
    src: url('../font/pictos_custom.eot?#iefix') format('embedded-opentype'),
         url('../font/pictos_custom.woff') format('woff'),
         url('../font/pictos_custom.ttf') format('truetype'),
         url('../font/pictos_custom.svg#pictosregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
.icon {
  font-family: 'MTD Checkout';
  font-size: 18px;
  line-height: 14px;
  font-style: normal;
  font-weight: normal;
  margin-left: 15px;
  display: inline-block;
  margin-top: 3px;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
}
.icon-check {
  font-size: 20px;
}
#promotion-code-fields .icon-check, 
#secure-options .icon-check,
#secure-options-bottom .icon-check {
  margin-top: -5px;
}
.icon-caret {
  font-size: 14px;
  margin-top: 2px;
  margin-left: 5px;
}
.cart-item .icon-circle-x {
  font-size: 32px;
  line-height: 32px; 
  margin-top: -2px; 
}
.major .icon-circle-x {
  font-size: 28px;
  line-height: 28px;
  margin-right: 5px;
  margin-top: -3px;
}
#cart-totals .icon-circle-x, .shipping-method .icon-circle-x {
  margin-top: 0;
}
.icon-lock {
  font-size: 26px;
  margin-left: 0;
}
.icon-chat {
  font-size: 26px;
  margin-left: 0;
  margin-right: 5px;
}
.icon-lock:before {
  content: 'a';
}
.icon-chat:before {
  content: 'b';
}
.icon-circle-x:before {
  content: 'd';
}
.icon-caret:before {
  content: 'r';
}
.icon-check:before {
  content: 'c'; 
}
.icon-x:before {
  content: 'x';
}
/* graphic icon */
.icon-caret-left {
  background: url(../../../wcpics/SharedCheckoutSAS/en_US/images/icon-continue.png) no-repeat 0 center;
  background-size: 8px 10px;
  width: 8px;
  height: 20px;
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}
.icon-bundle {
  display: inline-block;
  width: 32px;
  height: 32px;
}
.field-valid.error, .field-valid.valid {
  display: inline-block;
  margin-top: -4px;
}
.field-valid .message {
  margin-left: 7px;
  font-size: 14px;
  line-height: 17px;
  padding-top: 2px;
}
.field-valid .icon {
  margin-top: 0px;
}
.field-valid .icon-check, 
.field-valid .icon-x, 
.field-valid .message {
  display: none;
  vertical-align: middle;
}
.edit-mode .field-valid .icon-check {
  display: inline-block;
}
.edit-mode .field-valid.error .icon-check {
  display: none;
}
.field-valid.error .message, 
.field-valid.error .icon-x {
  display: inline-block;
}
.field-valid.error .icon-check {
  display: none;
}
.field-valid.valid .icon-check {
  display: inline-block;
}
.field-valid.valid .message, 
.field-valid.valid .icon-x {
  display: none;
}
#promotion-code-fields .field-valid.error,
#secure-options .field-valid.error,
#secure-options-bottom .field-valid.error {
  display: block;
  margin-left: 120px;
  padding-top: 8px;
}
#secure-options .field-valid.error,
#secure-options-bottom .field-valid.error {
  margin-left: 80px;
}
/* error colors for all platforms */
.next-day .icon-circle-x {
  color: #870a0d;
}
.major.alert .icon-circle-x {
  color: #870a0d;
}
#page-alert .alert-box .close .icon {
  color: #870a0d;
}
.alert-box.alert .close {
  color: #870a0d;
}
.alert-box.successGreen {
  background-color: #007d3b;
  border-color: #007d3b;
  color: #fff; 
}
.alert-box.alertRed {
  background-color: #C1271F;
  border-color: #C1271F;
  color: #fff; 
}



/**************************************************
    Forms
**************************************************/
#page-alert .alert-box {
  margin: 15px 0 0 0;
  font-size: 16px;
  font-weight: normal;
}
#page-alert .alert-box .close .icon {
  font-size: 24px;
  margin-top: 5px;
}
.checkout #promotion-code-fields label,
.checkout #secure-options label,
.checkout #secure-options-bottom label { 
  display: inline-block; 
  font-size: 14px; 
}
.checkout #promotion-code-fields label {
  width: 126px; 
}
.checkout fieldset p {
  font-size: 14px;
}
.pmm-finder input { 
  font-size: 14px;
  padding: 5px;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  width: 210px;
}
.checkout #promotion-code-fields input, 
.checkout #secure-options input, 
.checkout #secure-options-bottom input, 
.checkout fieldset input { 
  font-size: 14px;
  padding: 5px;
  width: 265px;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
.checkout #secure-options input, 
.checkout #secure-options-bottom input { 
  width: 285px;
}
.checkout .form-input,
.pmm-finder .form-input { 
  clear: both;
  margin-bottom: 15px; 
}
.checkout .form-input.col,
.pmm-finder .form-input.col {
  clear: none;
}
.checkout .form-input.float-dropdown,
.pmm-finder .form-input.float-dropdown {
  margin-bottom: 0;
}
.checkout .form-input.float-dropdown .custom.dropdown,
.pmm-finder .form-input.float-dropdown .custom.dropdown {
  float: left;
}
.checkout .form-input.last,
.pmm-finder .form-input.last { 
  margin-bottom: 0px; 
}
.checkout .form-input.checkbox,
.pmm-finder .form-input.checkbox { 
  margin-top: 20px; 
}
.checkout .forgot-password,.checkout .form-input.checkbox{margin-top:20px}
.checkout #secure-options .forgot-password form,.checkout #secure-options-bottom .forgot-password form{border:0;margin-top:0;padding-top:0}
.checkout #secure-options .forgot-form,.checkout #secure-options-bottom .forgot-form{display:none}
.checkout #secure-options .forgot-form.show,.checkout #secure-options-bottom .forgot-form.show{display:block}
.checkout #secure-options .forgot-link a,.checkout #secure-options-bottom .forgot-link a{font-size:14px}
.checkout #secure-options .forgot-password label,.checkout #secure-options-bottom .forgot-password label{width:60px}
.checkout #secure-options .forgot-password input,.checkout #secure-options-bottom .forgot-password input{width:200px}
.checkout #secure-options .forgot-password button,.checkout #secure-options-bottom .forgot-password button{width:110px;margin-left:10px}
.checkout #secure-options .forgot-password .field-valid.error,.checkout #secure-options-bottom .forgot-password .field-valid.error{margin-left:47px}

.checkout #secure-options .alert-box {
  display: none;
}
.checkout #secure-options.login-error .alert-box {
  display: block;
}

/**************************************************
    Helpers
**************************************************/
.checkout .group,
.pmm-finder .group, 
.pmm-finder.group,
.shop-by .group { 
  overflow: hidden; 
  clear: both; 
}
.checkout .col,
.pmm-finder .col,
.shop-by .col { 
  float: left;
}
.checkout .col.one-fourth {
  width: 23%;
  padding-right: 2%;
}
.checkout .col.one-third {
  width: 31%;
  padding-right: 2%;
}
.checkout .col.one-half {
  width: 48%;
  padding-right: 2%;
}
.checkout .action { 
  text-align: right; 
}
.checkout .hide { 
  display: none; 
}
.checkout .flat { 
  height: 0px; 
}
.checkout .clear { 
  clear: both; 
}
.checkout .alignright { 
  text-align: right;
}
.pmm-finder .floatright {
  float: right;
}

/**************************************************
    Buttons
**************************************************/
.checkout .btn,
.pmm-finder .btn { 
  display: inline-block; 
  font-size: 14px; 
  line-height: 18px; 
  font-weight: bold;
  padding: 12px 0px 10px 0;
  border-radius: 4px;
  width: 190px;
  text-align: center;
  text-decoration: none; 
  border-top: 0;
  border-left: 0;
  border-right: 0;
  outline: 0;
  cursor: pointer;
  -webkit-font-smoothing: antialiased;
}
.pmm-finder .btn {
  width: auto;
}
.checkout .btn:hover,
.pmm-finder .btn:hover { 
  text-decoration: none; 
}
.checkout .btn.btn-small,
.pmm-finder .btn.btn-small { 
  font-size: 12px; 
  font-weight: bold; 
  padding: 6px 0 4px 0; 
  width: 70px; 
}
.pmm-finder .btn.btn-small { 
  width: 46px; 
}
.checkout .btn.btn-medium,
.pmm-finder .btn.btn-medium { 
  font-size: 13px; 
  padding: 7px 20px 3px 14px; 
  width: auto;
}
.checkout .btn.btn-medium-alt,
.pmm-finder .btn.btn-medium-alt { 
  font-size: 14px; 
  padding: 8px 20px 4px 20px; 
  width: auto;
}
.checkout button,
.pmm-finder button { 
  height: auto; 
}
.checkout .btn.btn-compound,
.pmm-finder .btn.btn-compound { 
  text-align: left;
  padding: 4px 40px 4px 60px;
  width: auto;
  position: relative;
}
.checkout .btn.btn-compound strong,
.pmm-finder .btn.btn-compound strong {
  display: block;
  margin: 0 0 2px 0;
}
.checkout .btn.btn-compound small,
.pmm-finder .btn.btn-compound small {
  display: block;
  margin: 0;
  font-weight: normal;
}
.checkout .btn.btn-compound .icon,
.pmm-finder .btn.btn-compound .icon {
  color: inherit;
}
.checkout .btn.btn-compound .icon.left-icon,
.pmm-finder .btn.btn-compound .icon.left-icon {
  position: absolute;
  margin: 0;
  left: 15px;
  top: 4px;
  z-index: 500;
}
.checkout .btn.btn-compound .icon.right-icon,
.pmm-finder .btn.btn-compound .icon.right-icon {
  position: absolute;
  right: 15px;
  top: 13px;
}

/**************************************************
    Cart
**************************************************/
.checkout {
  -webkit-font-smoothing: antialiased;
  min-height: 580px;
}
#shopping-cart { 
  font-family: Arial, sans-serif; 
  padding: 15px 25px 45px 25px; 
}
#shopping-cart h1, 
.checkout h1 { 
  margin: 15px 0 0 0;
  font-size: 24px; 
  line-height: 24px;
  font-weight: normal; 
  text-transform: none; 
}
.cart .btn-group { 
  overflow: visible; 
  padding: 15px 0; 
}
.cart .btn-group .col
{
  width: 50%;
} 
.cart .btn-group .col.one-half {
  text-align: left;
}
.cart .btn-group.bottom { 
  padding-top: 15px; 
}
.cart-item { 
  font-size: 14px; 
  padding: 15px; 
}
#secure-options, 
#secure-options-bottom { 
  text-align: left; 
}
#secure-options h2, 
#secure-options-bottom h2 {
  font-size: 18px;
  text-transform: none;
}
#secure-options p, 
#secure-options-bottom p { 
  font-size: 14px; 
  margin-bottom: 15px;
}
#secure-options form, 
#secure-options-bottom form { 
  margin-top: 20px; 
  margin-left: -20px; 
  margin-right: -20px; 
  padding-left: 20px; 
  padding-right: 20px; 
  padding-top: 15px;
}
#secure-options-bottom form {

}
#secure-options form h2, 
#secure-options-bottom form h2 { 
  margin-bottom: 15px; 
}
#secure-options form button, 
#secure-options-bottom form button { 
  margin-top: 15px; 
}
#secure-options form label, 
#secure-options-bottom form label { 
  width: 90px; 
}
#secure-options form input, 
#secure-options-bottom form input { 
  width: 340px; 
}
.checkout .cart-item.group { 
  overflow: visible; 
}
.cart-item .col.pic { 
  width: 130px; 
}
.cart-item .pic img { 
  display: block; 
}
.cart-item .pic .bundle-icon {
  background: #fff;
  padding: 12px 11px;
}
.cart-item .pic a {
  text-decoration: none;
}
.cart-item span { 
  display: block; 
  margin-bottom: 10px; 
  line-height: 16px; 
}
.cart-item strong { 
  display: block; 
  margin-bottom: 11px; 
  line-height: 16px; 
}
.cart-item .col.description { 
  padding-right: 15px;
  width: 270px; 
  line-height: 19px;
}
.cart-item .col.description a {
  text-decoration: none;
}
.checkout .cart-item .col.description .has-tip {
  margin-left: 0;
  font-size: 14px;
  text-decoration: underline;
  color: inherit;
}
.tooltip .product-tmb {
  display: inline-block;
  width: 95px;
  margin-left: 10px;
  text-align: center;
  line-height: 15px;
}
.tooltip .product-tmb:first-child {
  margin-left: 0;
}
.tooltip .product-tmb img {
  max-width: 95px;
  height: auto;
  margin-bottom: 4px;
}
.cart-item .col.description em.product-note {
  font-style: normal;
}
.cart-item .col.description em.free-shipping {
  font-style: italic;
}
.cart-item .col.availability { 
  width: 160px; 
}
.checkout form.custom .cart-item .custom.dropdown { 
  float: left; 
  margin-right: 5px; 
  width: 44px; 
}
.cart-item .col.quantity { 
  width: 160px; 
}
.cart-item .quantity button { 
  position: relative; 
  top: -1px; 
  margin-left: 5px; 
}
.cart-item .col.price { 
  width: 70px; 
}
.cart-item .col.total { 
  width: 70px; 
  text-align: right; 
}
.cart-item span.item-total { 
  display: inline; 
  margin-bottom: 0; 
}
.cart-item .col.remove { 
  padding-top: 20px; 
  text-align: right; 
  width: 40px; 
}
.cart-item .remove button { 
  background: none; 
  display: inline-block; 
  height: auto; 
  font-size: 30px; 
  border: 0;
}
.cart-item .btn.btn-compound.btn-bundle {
  float: right;
  margin-top: -8px;
  width: 500px;
}
.checkout .cart-summary { 
  padding: 15px 0; 
}
.checkout .cart-summary h2 {
  margin-top: 0;
}
#promotion-code-fields { 
  padding: 15px 15px 18px 15px; 
  max-height: 25px;
  width: 525px;
  overflow: hidden;
  -webkit-transition: max-height .5s linear;
     -moz-transition: height 1s linear;
      -ms-transition: height 1s linear;
       -o-transition: height 1s linear;
          transition: max-height .5s linear;
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}
#promotion-code-fields.focused {
  max-height: 200px;
  -webkit-transition: max-height .5s linear;
     -moz-transition: height 1s linear;
      -ms-transition: height 1s linear;
       -o-transition: height 1s linear;
          transition: max-height .5s linear;
}
#promotion-code-fields a { 
  font-size: 12px;
  display: inline-block; 
  margin-left: 10px; 
  text-decoration: underline;
}
#promotion-code-fields a:hover {
  text-decoration: none;
}
#promotion-code-fields button.btn-small { 
  margin-left: 133px; 
  width: 105px;
}
#cart-totals { 
  float: right;
  font-size: 14px;
  padding: 10px 5px 15px 5px;
  width: 340px; 
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
}
#cart-totals .alert-box { 
  margin: 0 -7px 5px -7px;
}
#cart-totals .group {
  padding: 5px 10px 0;
}
#cart-totals .label {
  width: 200px;
}
.reveal-content #cart-totals .label {
  width: 180px;
}
.reveal-content #cart-totals .val {
  width: 90px;
}
#cart-totals .val {
  text-align: right;
  width: 120px; 
}
#cart-totals .label.total, 
#cart-totals .val.total { 
  font-weight: bold; 
}
#cart-totals p { 
  font-size: 12px; 
  line-height: 1.8em; 
  margin-bottom: 5px; 
  padding: 10px 10px 0; 
}
.cart-empty h2 {
  font-weight: normal;
  margin: 30px 0px 60px 0px;
}
#cart-disclaimers {
  float: right;
  padding: 10px 10px 5px 0px;
}
#cart-disclaimers ul {
  float: right;
  margin-right: 15px;
}
#cart-disclaimers li {
  padding: 0;
  font-size: 12px;
  line-height: 18px;
  list-style-type: disc;
}

/**************************************************
    Shipping
**************************************************/
.shared fieldset.first {
  padding: 15px;
}
.shared fieldset {
  border-top: 0;
  padding: 15px;
}
.shared fieldset h2, 
.shared .shipping-method h2  {
  font-size: 18px;
  line-height: 18px;
  text-transform: none;
  font-weight: normal;
  margin: 0 0 15px 0;
}
.shared fieldset label {
  display: block;
  font-size: 14px;
  margin-bottom: 3px;
}
.shared fieldset label.inline-label {
  display: inline-block;
  margin-left: 12px;
}
.shared fieldset input { 
  width: 320px;
}
.shared form.custom .custom.dropdown { 
  width: 333px;
}
.shared fieldset input.zip {
  width: 150px;
}
.shared fieldset input.field-phone {
  width: 52px;
  margin-left: 5px;
}
.shared fieldset input.field-phone.field1 {
  margin-left: 0;
}
.shared .has-tip {
  font-size: 12px;
  margin-left: 10px;
  display: inline-block;
  text-decoration: underline;
}
.shared .has-tip:hover {
  text-decoration: none;
}
.shared fieldset .radio-buttons .form-input {
  margin-bottom: 12px;
}
.shared fieldset .radio-buttons.form-input .icon {
  margin-left: 0;
}
.shared .shipping-method {
  padding: 15px;
}
#shipping-method-fields {
  padding-left: 0;
  padding-top: 5px;
  width: 500px;
}
.shipping-method .alert.next-day {
  display: none;
}
.shipping-method .alert.next-day.show {
  display: block;
}
.shared .shipping-method .alert-box.success {
  width: 50%;
}
.shared .shipping-method .alert-box.alert {
  width: 105%;
}
.shared .review-place-order .shipping-method .alert-box.alert {
  width: auto;
}
.shipping-method #cart-totals p { 
  margin: 0 0 5px 0;
}
.shared .address-fields {
  font-size: 14px;
  line-height: 1.7em;
  margin: 20px 0 0 0;
}
.shared .address-fields .custom.radio {
  margin-top: 2px;
  margin-right: 15px;
}
.shared fieldset .address-fields label {
  display: block;
  margin-bottom: 15px;
}
.shared #ziplookup {
  font-size: 14px;
  display: none;
  margin-left: 15px;
  padding-left: 32px;
  line-height: 24px;
}
.shared #ziplookup.show {
  display: inline-block;
}
.shared .shipping-address-fields .custom.radio {
  margin-right: 15px;
  margin-top: 2px;
}
.shared .field-instructions {
  display: block;
  margin: 5px 0 15px 0;
  font-size: 12px;
}
.shared #optional-registration {
  padding: 15px 15px 3px 15px;
}
.shared #optional-registration h2 {
  margin-bottom: 0px;
}
.shared .shipping .create-account {
  font-size: 14px;
  margin-left: 10px; 
}
.shared .shipping .create-account:hover {
  cursor: pointer;
}
.shared .shipping .create-account .create-now {
  text-decoration: underline;
}
.shared .shipping .create-account .create-now:hover {
  text-decoration: none;
}
.shared .shipping .create-account .plus-minus {
  font-style: normal;
  font-size: 20px;
}
.shared .shipping .create-account .plus-minus:after {
  content: '+';
}
.shared .shipping .expanded .create-account .plus-minus:after {
  content: '-';
}
.shared .shipping .registration-info {
  height: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 300ms ease-in-out;
     -moz-transition: opacity 300ms ease-in-out;
      -ms-transition: opacity 300ms ease-in-out;
       -o-transition: opacity 300ms ease-in-out;
          transition: opacity 300ms ease-in-out;
}
.shared .shipping .expanded .registration-info {
  height: auto;
  visibility: visible;
  opacity: 1;
}

/**************************************************
    Review and Place Order
**************************************************/
.review-place-order {
  position: relative;
}
#place-order-top {
  position: absolute;
  top: 15px;
  right: 0;
}
.shipping-billing .shipping-address,
.shipping-billing .billing-address {
  padding-left: 5px;
  padding-right: 15px;
  padding-top: 10px;
  width: 215px;
  font-size: 14px;
}
.shipping-billing .shipping-address h3,
.shipping-billing .billing-address h3 {
  font-size: 14px;
  font-weight: normal;
  margin: 0 0 2px 0;
  padding: 0;
}
.shipping-billing .shipping-address p,
.shipping-billing .billing-address p {
  margin-top: 0;
  line-height: 1.5em;
}
.checkout .shipping-billing .shipping-method {
  width: 460px;
  padding: 12px 0 0 0;
  border: 0;
}
.shipping-method .form-input {
  margin: 0;
}
.review-place-order #cart-items {
  padding: 15px;
}
.review-place-order #cart-items h2 {
  font-size: 18px;
  line-height: 18px;
  text-transform: none;
  font-weight: normal;
  margin: 0;
}
.review-place-order .cart-item {
  padding-left: 0;
  padding-right: 0;
}
/*
.review-place-order .cart-item .quantity {
  width: 178px;
}
.review-place-order .cart-item .price, 
.review-place-order .cart-item .total {
  width: 80px;
}
*/
.review-place-order .cart-item form.custom .custom.dropdown,
.review-place-order form.custom .custom.dropdown .selector {
  height: 28px;
}
.review-place-order .cart-item:last-child {
  border: 0;
  padding-bottom: 0;
}
.cart .btn-group.bottom .cancel {
  margin-right: 50px;
}
#payment-form fieldset {
  padding: 15px 10px;
}
#payment-form h2 {
  margin-bottom: 0;
  margin-left: 5px;
}
#payment-form #payment-method {
  padding-left: 5px;
}
#payment-form #cart-totals {
  padding-right: 5px;
}
#payment-method p {
  margin: 10px 0 5px 0;
}
.card-icon {
  display: inline-block;
  margin-right: 10px;
}
.review-place-order input.card-number {
  width: 200px;
}
.checkout.cart .review-place-order .amex, 
.checkout.cart .review-place-order .discover,
.checkout.cart .review-place-order .mastercard,
.checkout.cart .review-place-order .visa {
  background: url(../../../wcpics/SharedCheckoutSAS/en_US/images/sprite-credit-cards.png) no-repeat;
}
.checkout.cart .review-place-order .amex {
  background-position: 177px 4px;
}
.checkout.cart .review-place-order .discover {
  background-position: 177px -28px;
}
.checkout.cart .review-place-order .mastercard {
  background-position: 177px -60px;
}
.checkout.cart .review-place-order .visa {
  background-position: 177px -92px;
}
.review-place-order input.expiration-date,
.review-place-order input.security-code {
  width: 100px;
}
.checkout #terms .form-input.checkbox {
  margin: 0;
}
.checkout #terms {
  padding: 20px 15px;
}
.checkout a.has-tip {
  cursor: help;
}

/**************************************************
    Order Confirmation
**************************************************/
.confirmation .alert-box.secondary {
  border: 0;
  font-weight: normal;
  font-size: 14px;
  margin-top: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}
.confirmation .alert-box.secondary h2 {
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 7px;
  font-size: 18px;
}
.confirmation .alert-box.secondary p {
  font-size: 14px;
  line-height: 23px;
  margin-bottom: 0;
  padding: 0;
}
.confirmation .shipping-billing .col {
  width: 220px;
  padding-right: 20px;
}
.confirmation .shipping-billing {
  font-size: 14px;
}
.confirmation .shipping-billing h2 {
  font-size: 18px;
  font-weight: normal;
  margin: 0 0 5px 0;
}
.confirmation .shipping-billing p {
  margin: 0;
  font-size: 14px;
  line-height: 25px;
}
.confirmation .shipping-billing .shipping {
  margin-bottom: 15px;
}
.confirmation #order-details {
  margin-top: 15px;
  padding: 15px 15px 0px 15px;
}
.confirmation #order-summary {
  padding-bottom: 15px;
}
.confirmation #cart-items {
  border: 0;
  padding: 0;
}
.confirmation .cart-item {
  border-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}
.confirmation .cart-item .col.quantity { 
  width: 158px; 
}
.confirmation .cart-item .col.price { 
  width: 90px; 
}
.confirmation .cart-item .col.total { 
  width: 90px; 
  text-align: right; 
}

/**************************************************
    Policy Modal
**************************************************/
#policy-modal {
  width: 860px;
}
#policy-modal .close-btn {
  top: 0.55em;
}

/**************************************************
    Cart Modal
**************************************************/
#add-to-cart-modal.reveal-modal.cart.checkout {
  -webkit-font-smoothing: antialiased;
  min-height: 200px;
}

#add-to-cart-modal {
  width: 860px;
  z-index: 100001;
}
#add-to-cart-modal .close-btn {
  top: 0.90em;
}
#add-to-cart-modal.reveal-modal .reveal-content {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 15px;
}
.reveal-modal .cart-info {
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 15px;
}
.reveal-modal #cart-totals {
  text-align: left;
  width: 320px;
}
.reveal-modal #cart-totals .group {
  padding: 5px 25px 0;
}
.reveal-modal #cart-totals .label,
.reveal-modal #cart-totals .val {
  font-weight: bold;
}
.reveal-modal .btn-group {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 0px;
}
.reveal-modal.cart .cart-item {
  border: 0;
  text-align: left;
  padding: 0;
}
.reveal-modal.cart .cart-item span,
.reveal-modal.cart .cart-item strong {
  margin-bottom: 5px;
}
.reveal-modal.cart .cart-item p {
  margin: 0;
  min-height: 60px;
  font-size: 14px;
}
.reveal-modal.cart .cart-item .product-info {
  width: 310px;
}
.reveal-modal.cart .cart-item .col.quantity{
  width: 130px;
}
.shared .reveal-modal {
  min-height: 0px;
}


/**************************************************
    Minicart Dropdown
**************************************************/
#minicart {
  position: absolute;
  display: block;
  top: 12px;
  right: 0px;
  z-index: 5000;
}
#minicart.hide {
  display: none;
}
#minicart .group {
  clear: both;
  overflow: hidden;
}
#minicart.checkout {
  min-height: 0px;
}
#minicart .cart-item span.col {
  display: block;
  margin-bottom: 0;
}
#minicart.content {
  padding: 0;
  width: 240px;
}
#minicart h2 {
  font-size: 14px;
  font-weight: normal;
  padding: 10px;
  text-align: left;
  margin: 0;
}
#minicart h2 .item-count {
  float: right;
}
#minicart a.cart-item {
  border: 0;
  text-align: left;
  font-size: 12px;
  font-weight: normal;
  padding: 10px;
  display: block;
}
#minicart.cart img {
  display: block;
  margin-top: 3px;
  width: 62px;
  height: auto;
}
#minicart.cart .cart-item .col.pic {
  width: 74px;
}
#minicart.cart .cart-item .col.product-info {
  width: 145px;
}
#minicart.cart .cart-item .title {
  margin-bottom: 2px;
}
#minicart.cart .cart-item span {
  display: inline;
}
#minicart.cart .cart-item .desc {
  display: block;
  height: 30px;
  line-height: 14px;
  margin-bottom: 3px;
  overflow: hidden;
}
#minicart.cart .cart-item strong.quantity,
#minicart.cart .cart-item strong.price {
  display: inline-block;
  font-weight: normal;
  margin-bottom: 0;
}
#minicart.cart .cart-item .quantity{
  margin-top: 0px;
  margin-right: 5px;
  width: 45px;
}
#minicart.cart {
  min-height: 0px;
}
#minicart.cart .minicart-action {
  padding: 10px;
  text-align: center;
  margin: 0;
}
#minicart.hide-overflow.content {
  width: 270px;
}
#minicart.hide-overflow .minicart-links {
  max-height: 265px;
  overflow: auto;
}

/**************************************************
    Checkout Header
**************************************************/
#checkout-header { 
  padding: 20px 0px 15px 0; 
}
#checkout-header .top { 
  height: 80px; 
  padding: 0 0 5px 0; 
}
#checkout-header #brand { 
  width: 610px; 
  margin: 0;
}
#checkout-header .chat { 
  width: 142px; 
  padding-top: 25px; 
}
#checkout-header .nochat { 
  width: 142px; 
  padding-top: 25px; 
}
#checkout-header .phone { 
  font-size: 20px;
  padding-top: 28px;
  text-align: right; 
  width: 160px; 
  margin: 0;
}
/* Checkout Nav Bar */
.checkout-steps { 
  margin: 0;
  padding: 0;
}
.checkout-steps ul { 
  margin: 0;
  padding: 0;
  font-size: 14px; 
  font-weight: bold;
}
.checkout-steps li {
  width: 185px;
  text-align: center;
}
.checkout-steps li.secure {
  padding: 12px 0;
  color: #555;
}
.checkout-steps li.secure i {
  font-size: 22px;
  line-height: 14px;
  vertical-align: middle;
  padding-right: 7px;
}
.checkout-steps li.review {
  border-right: none;
}
.checkout-steps li.disabled {
  padding: 12px 0;
}
.checkout-steps a, .checkout-steps a:visited {
  text-decoration: none;
  display: block;
  padding: 12px 0;
}
.checkout-steps a:hover {
  text-decoration: underline;
}


/**************************************************
    Checkout Footer
**************************************************/
#checkout-footer { 
  padding: 20px 25px;
  margin: 60px -25px 0; 
}
#checkout-footer nav,
#checkout-footer ul {
  padding: 0;
  margin: 0;
}
#checkout-footer li { 
  padding: 0 10px; 
  line-height: 13px;
}
#checkout-footer li:first-child { 
  border-left: 0; 
  padding: 0 10px 0 0; 
}
#checkout-footer a { 
  font-size: 12px; 
  line-height: 13px;
  text-decoration: none;
}
#checkout-footer a:hover {
  text-decoration: underline;
}

/* FOUNDATION ELEMENTS */
.cart *,
.cart *:before,
.cart *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; 
}
/* We use this to get basic styling on all basic form elements */
.cart input[type="text"],
.cart input[type="password"],
.cart input[type="email"],
.cart input[type="tel"],
.cart textarea {
  -webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out;
  -moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out; 
}
.cart input[type="text"]:focus,
.cart input[type="password"]:focus,
.cart input[type="email"]:focus,
.cart input[type="tel"]:focus
.cart textarea:focus {
  outline: none; 
}
.reveal-modal-bg {
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: 100000;
  display: none;
  top: 0;
  left: 0; 
}
.reveal-modal {
  visibility: hidden;
  display: none;
  position: absolute;
  left: 50%;
  z-index: 100001;
  height: auto;
  margin-left: -430px;
  width: 80%;
  padding: 0;
  top: 50px;
}
.reveal-modal .reveal-title h1,
.reveal-modal .reveal-title h2,
.reveal-modal .reveal-title h3 {
  font-size: 24px;
  font-weight: normal;
  margin: 0;
  padding: 0;
  line-height: 1.25em;
}
.reveal-modal .reveal-title h1 .icon {
  font-size: 24px;
  margin: 0 10px 0 0;
}
.reveal-modal .reveal-title {
  padding: .75em 1.25em;
  text-align: left;
}
.reveal-modal .reveal-content {
  padding: 1.25em;
}
.reveal-modal .reveal-content-inner {
  max-height: 465px;
  overflow: auto;
  padding: .5em;
}
.reveal-modal .reveal-content-inner h1,
.reveal-modal .reveal-content-inner h2,
.reveal-modal .reveal-content-inner h3,
.reveal-modal .reveal-content-inner h4,
.reveal-modal .reveal-content-inner ul,
.reveal-modal .reveal-content-inner ol,
.reveal-modal .reveal-content-inner p {
  font-weight: normal;
  line-height: 1.75em;
  margin-top: 0;
  margin-bottom: 1.75em;
}
.reveal-modal .reveal-content-inner h2 {
  font-size: 18px;
}
.reveal-modal .reveal-content-inner h3 {
  font-size: 16px;
}
.reveal-modal .reveal-content-inner h4 {
  font-size: 14px;
}
.reveal-modal .reveal-content-inner p,
.reveal-modal .reveal-content-inner ol,
.reveal-modal .reveal-content-inner ul {
  font-size: 12px;
  padding-left: 0;
}
.reveal-modal .reveal-content-inner ol,
.reveal-modal .reveal-content-inner ul {
  margin-left: 18px;
}
.reveal-modal .reveal-content-inner .grouped {
  margin-bottom: .03em;
}
.reveal-modal .column,
.reveal-modal .columns {
  min-width: 0; 
}
.reveal-modal > :first-child {
  margin-top: 0; 
}
.reveal-modal > :last-child {
  margin-bottom: 0; 
}
.reveal-modal .close-btn {
  font-size: 1.75em;
  line-height: 1;
  position: absolute;
  top: 0.75em;
  right: 0.6875em;
  font-weight: bold;
  cursor: pointer; 
}
.reveal-modal .close-reveal-modal .icon-circle-x {
  font-size: 34px;
  line-height: 34px;
  margin-top: -10px;
}
/* Foundation Alerts */
.alert-box {
  display: block;
  font-weight: bold;
  margin-bottom: 1.25em;
  position: relative;
  padding: 6px 12px;
  font-size: 12px;
}
.alert-box .close {
  font-size: 16px;
  line-height: 16px;
  position: absolute;
  top: 0.4375em;
  right: 8px;
  text-decoration: none;
}
.cart .alert-box .close {
  top: 5px;
}
.checkout .layout-wrap .alert-box .close {
  padding: 0;
}
.alert-box .close:hover, .alert-box .close:focus {
  opacity: 1; 
}
.alert-box.major {
  margin: 15px 0 0 0; 
  font-size: 16px;
  line-height: 20px;
  font-weight: normal;
}
.alert-box.conflict .close {
  top: 1em;
}
/* Custom Checkbox and Radio Inputs */
form.custom .hidden-field {
  margin-left: -99999px;
  position: absolute;
  visibility: hidden; 
}
form.custom .custom {
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
  top: -1px;
  /* fix centering issue */
  vertical-align: middle;
}
form.custom .custom.checkbox,
form.custom .custom.radio {
  cursor: pointer;
}
form.custom .custom.checkbox {
  padding: -1px; 
}
form.custom .custom.radio {
  padding: 4px; 
  width: 26px;
  height: 26px;
}
form.custom .custom.checkbox:before {
  content: "";
  display: block;
  font-size: 33px;
  font-weight: bold;
}
form.custom .custom.radio.checked:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: relative; 
}
form.custom .custom.checkbox.checked:before {
  content: "\00d7";
  position: absolute;
  top: -50%;
  left: 50%;
  margin-top: -3px;
  margin-left: -10px; 
}
.layout-wrap form.custom .custom.checkbox.checked:before {
  content: "\00d7";
  position: absolute;
  top: -50%;
  left: 50%;
  margin-left: -10px; 
}
/* Custom Select Options and Dropdowns */
form.custom .custom.dropdown {
  display: block;
  position: relative;
  top: 0;
  height: 28px;
  margin-bottom: 1.25em;
  margin-top: 0px;
  padding: 0px;
  width: 100%;
  box-shadow: none;
  font-size: 14px;
  vertical-align: top; 
}
form.custom .custom.dropdown ul {
  overflow-y: auto;
  max-height: 308px; 
}
form.custom .custom.dropdown .current {
  cursor: default;
  white-space: nowrap;
  line-height: 2.0em;
  text-decoration: none;
  overflow: hidden;
  cursor: pointer;
  display: block;
  margin-left: 5px;
  font-weight: normal;
}
form.custom .custom.dropdown .selector {
  cursor: default;
  cursor: pointer;
  position: absolute;
  width: 15px;
  height: 24px;
  display: block;
  right: 15px;
  top: 2px; 
}
form.custom .custom.dropdown .selector:after {
  content: "";
  display: block;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top-style: solid;
  position: absolute;
  left: 0.9375em;
  top: 50%;
  margin-top: -3px; 
}
form.custom .custom.dropdown:hover a.selector:after, 
form.custom .custom.dropdown.open a.selector:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
}
form.custom .custom.dropdown .disabled:hover {
  background: transparent;
}
form.custom .custom.dropdown .disabled:hover:after {
  display: none; 
}
form.custom .custom.dropdown.open ul {
  display: block;
  z-index: 10;
  min-width: 100%;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; 
}
form.custom .custom.dropdown.small {
  max-width: 134px; 
}
form.custom .custom.dropdown.medium {
  max-width: 254px; 
}
form.custom .custom.dropdown.large {
  max-width: 434px; 
}
form.custom .custom.dropdown.expand {
  width: 100%; 
}
form.custom .custom.dropdown.open.small ul {
  min-width: 134px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
form.custom .custom.dropdown.open.medium ul {
  min-width: 254px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
form.custom .custom.dropdown.open.large ul {
  min-width: 434px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; 
}
form.custom .error .custom.dropdown {
  margin-bottom: 0; 
}
form.custom .error .custom.dropdown + small.error {
  margin-top: 0; 
}
form.custom .custom.dropdown ul {
  position: absolute;
  width: auto;
  display: none;
  margin: 0;
  left: -1px;
  top: auto;
  margin: 0;
  padding: 0;
  font-size: 16; 
}
form.custom .custom.dropdown ul li {
  font-size: 14px;
  cursor: default;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  padding-left: 0.375em;
  padding-right: 2.375em;
  min-height: 1.5em;
  line-height: 1.5em;
  margin: 0;
  white-space: nowrap;
  list-style: none; 
}
form.custom .custom.dropdown ul li.selected:hover {
  cursor: default;
}
form.custom .custom.dropdown ul.show {
  display: block; 
}
/* Tooltips */
.has-tip {
  cursor: help;
}
.has-tip.tip-left, .has-tip.tip-right {
  float: none; 
}
.tooltip {
  display: none;
  position: absolute;
  z-index: 999;
  font-size: 12px;
  line-height: 1.5;
  padding: 1em;
  max-width: 85%;
  left: 50%;
  width: 100%;
  max-width: 420px;
  text-align: left;
}
.tooltip > .nub {
  display: block;
  left: 5px;
  position: absolute;
  width: 0;
  height: 0;
  top: -10px; 
}
.tap-to-close {
  display: block;
  font-size: 0.625em;
  font-weight: normal; 
}
/* Foundation Dropdowns */
.f-dropdown {
  position: absolute;
  top: -9999px;
  list-style: none;
  margin-left: 0;
  width: 100%;
  max-height: none;
  height: auto;
  font-size: 16;
  z-index: 5000;
  margin-top: 2px;
  max-width: 200px; 
}
.f-dropdown > *:first-child {
  margin-top: 0; }
.f-dropdown > *:last-child {
  margin-bottom: 0; 
}
.f-dropdown:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -11px;
  left: 10px;
  z-index: 99; 
}
.f-dropdown:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -14px;
  left: 9px;
  z-index: 98; 
}
.f-dropdown.above-btn:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  bottom: -5px;
  left: 10px;
  z-index: 99; 
  top: auto;
}
.f-dropdown.above-btn:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  bottom: -8px;
  left: 9px;
  z-index: 98; 
  top: auto;
}
.f-dropdown.right:before {
  left: auto;
  right: 10px; 
}
.f-dropdown.right:after {
  left: auto;
  right: 9px; 
}
.f-dropdown li {
  font-size: 0.875em;
  cursor: pointer;
  line-height: 1.125em;
  margin: 0; 
}
.f-dropdown li a {
  display: block;
  padding: 0.3125em 0.625em;
}
.f-dropdown.content {
  position: absolute;
  top: -9999px;
  list-style: none;
  margin-left: 0;
  padding: 20px;
  width: 100%;
  height: auto;
  max-height: none;
  font-size: 16;
  z-index: 9999;
  max-width: 200px; 
}
.f-dropdown.content > *:first-child {
  margin-top: 0; 
}
.f-dropdown.content > *:last-child {
  margin-bottom: 0; 
}
.f-dropdown.tiny {
  max-width: 200px; 
}
.f-dropdown.small {
  max-width: 300px; 
}
.f-dropdown.medium {
  max-width: 500px; 
}
.f-dropdown.large {
  max-width: 800px; 
}


@media (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi){ 
  .checkout.cart .review-place-order .amex, 
  .checkout.cart .review-place-order .discover,
  .checkout.cart .review-place-order .mastercard,
  .checkout.cart .review-place-order .visa {
    background: url(../../../wcpics/SharedCheckoutSAS/en_US/images/sprite-credit-cards-2x.png) no-repeat;
    background-size: 30px 128px;
  }
  .checkout.cart .review-place-order .amex {
    background-position: 177px 4px;
  }
  .checkout.cart .review-place-order .discover {
    background-position: 177px -28px;
  }
  .checkout.cart .review-place-order .mastercard {
    background-position: 177px -60px;
  }
  .checkout.cart .review-place-order .visa {
    background-position: 177px -92px;
  }
}


