/* Cart */

span#block-discount-heading,
.product-item-actions .actions-secondary > .action, 
.table-comparison .wishlist.split.button>.action.split, 
.product-items .wishlist.split.button>.action.split, 
.product-items .action.towishlist, 
.products.list.items .action.towishlist, 
.table-comparison .action.towishlist,
.authentication-wrapper {
    display: none;
}


.cart.table-wrapper .product-item-details {
  vertical-align: middle;
}

.cart.table-wrapper  table>tbody>tr>th, 
.cart.table-wrapper  table>tfoot>tr>th, 
.cart.table-wrapper  table>tbody>tr>td, 
.cart.table-wrapper  table>tfoot>tr>td {
  vertical-align: middle;
}

.cart.item .product-item-details {
  display: table-cell;
}

.crosssell .product-item-info {
  max-width: 100%;
  width: fit-content;
}

.crosssell li.item.product.product-item {
  border: 1px solid var(--color-mid-gray);
  width: calc((100% - 4rem) / 2);
  padding: 2rem;
}

.crosssell .product-item-actions .actions-secondary > .action {
  display: none;
}

.crosssell ol.products.list.items.product-items {
  display: flex;
  gap: 2rem;
  justify-content: flex-start;
}

.cart.main.actions {
  margin-bottom: 4rem;
}


@media only screen and (min-width: 768px) {
  .block.crosssell {
      width: 73%;
  } 

  .crosssell li.item.product.product-item {
      width: calc((100% - 8rem) / 3);
  }

  .cart.table-wrapper .col.price, 
  .order-items.table-wrapper .col.price, 
  .cart.table-wrapper .col.qty, 
  .order-items.table-wrapper .col.qty, 
  .cart.table-wrapper .col.subtotal, 
  .order-items.table-wrapper .col.subtotal, 
  .cart.table-wrapper .col.msrp, 
  .order-items.table-wrapper .col.msrp,
  .cart.table-wrapper .product-item-details {
      vertical-align: middle;
  }
}


/* Checkout */

.opc-progress-bar-item._active:before,
.opc-progress-bar-item._active > span:before {
    background: var(--color-branding-primary);
}

.opc-progress-bar-item>span {
  color: var(--color-dark-gray);
}

.opc-progress-bar-item>span:before, 
.opc-progress-bar-item:before {
  background: var(--color-mid-gray);
}

.form-login span.note {
   display: none !important;
}

.fieldset > .field:not(.choice) > .control,
.fieldset > .field:not(.choice) > .label {
    width: 100%;
    float: none;
    text-align: left;
}

input[name="s_vin"] {
    margin-bottom: 1rem;
}

#coaf-checkout-form,
#co-payment-form,
#shipping .step-title,
#opc-shipping_method,
.dynamicfields-checkout-form,
.opc-wrapper .form-login,
.opc-wrapper .form-shipping-address {
    max-width: 80rem;
    margin: 0px !important;
}

.opc-block-shipping-information,
#coaf-checkout-form,
#co-payment-form,
#shipping .step-title,
#opc-shipping_method,
.dynamicfields-checkout-form,
.opc-wrapper .form-login,
.opc-wrapper .form-shipping-address {
    background: #f5f5f5;
    padding: 2.4rem 2.72rem;
    border: .1rem solid #ddd;
}

.opc-wrapper .form-login {
 border-top: 0;
 border-bottom: 0;
}

.checkout-index-index .opc-wrapper {
   margin-top: 4.8rem;
}

.form-login .fieldset {
   margin: 0px;
}

.checkout-index-index .field[name="billingAddressfree.firstname"],
.checkout-index-index .field[name="billingAddressfree.city"],
.checkout-index-index .field[name="billingAddressfree.postcode"],
.checkout-index-index .field[name="shippingAddress.firstname"],
.checkout-index-index .field[name="shippingAddress.city"],
.checkout-index-index .field[name="shippingAddress.country_id"] {
 float: left;
 width: 47%;
 margin-right: 3%;
 clear: both;
}

.checkout-index-index .field[name="billingAddressfree.firstname"],
.checkout-index-index .field[name="billingAddressfree.city"],
.checkout-index-index .field[name="billingAddressfree.postcode"] {
   margin-right: 3% !important;
}

.checkout-index-index .field[name="billingAddressfree.lastname"],
.checkout-index-index .field[name="billingAddressfree.region_id"],
.checkout-index-index .field[name="billingAddressfree.country_id"],
.checkout-index-index .field[name="shippingAddress.postcode"],
.checkout-index-index .field[name="shippingAddress.lastname"],
.checkout-index-index .field[name="shippingAddress.region_id"] {
 float: left;
 width: 50%;
 margin-top: 0;
}

.checkout-index-index .field[name="shippingAddress.telephone"] {
 border-bottom: .1rem solid #ddd;
 margin-bottom: 3.2rem;
 padding-bottom: 4rem;
}

.fieldset > .field {
   margin: 0px 0 1rem;
}

.opc-block-summary {
   border: .1rem solid #ddd;
}

.payment-method-content form#co-payment-form {
   padding: 0;
   border: none;
}

.checkout-payment-method .payment-method-content .fieldset > .field.type .control {
   margin-left: 0;
}

.opc-wrapper .form-login {
    border-top: 0;
    border-bottom: 0;
    margin-bottom: -2rem !important;
    padding-bottom: 0;
}

form#co-shipping-form {
    border-top: none;
}

#shipping .step-title {
    border-bottom: 0;
    padding-bottom: 0;
}

#shipping .step-title::after {
    content: ' ';
    border-bottom: .1rem solid #ddd;
    display: block;
    padding-top: 1rem
}

.opc-wrapper #service {
    background: #f5f5f5;
    padding: 2.4rem;
    border: 0.1rem solid #ddd;
}

.opc-wrapper .step-title {
    font-size: 2.6rem;
}

.service-fields {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-template-areas:
    "s_account"
    "s_firstname"
    "s_lastname"
    "s_address_1"
    "s_address_2"
    "s_city"
    "s_state"
    "s_zip";
  grid-column-gap: 3rem;
}

.field[name='serviceCheckout.s_account_number'] {
  grid-area: s_account;
}

.field[name='serviceCheckout.s_first_name'] {
  grid-area: s_firstname;
}

.field[name='serviceCheckout.s_last_name'] {
  grid-area: s_lastname;
}

.field[name='serviceCheckout.s_address_line1'] {
  grid-area: s_address_1;
}

.field[name='serviceCheckout.s_address_line2'] {
  grid-area: s_address_2;
}

.field[name='serviceCheckout.s_city'] {
  grid-area: s_city;
}

.field[name='serviceCheckout.s_zip_code'] {
  grid-area: s_zip;
}

.field[name='dynamicFieldsCheckoutForm.dynamicfields_heating_equipment_type_select'] {
  grid-area: s_state;
}

#service .step-title,
.field[name='serviceCheckout.s_vin'] label.label{
  border-bottom: 1px solid #cccccc;
  padding-bottom: 10px;
  color: #333333;
  font-weight: 300;
  font-size: 2.6rem;
  margin-bottom: 2rem;
  line-height: 3.4rem;
}

.field[name='serviceCheckout.s_vin'] {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 10px;
  margin-bottom: 4rem;
}

span.tooltip {
    margin-top: 0.5rem;
    display: inline-block;
}

.vin-section .field .tooltip .tooltip-content {
    min-width: 300px;
    max-width: 360px;
    left: 0;
    top: 3rem;
}

.checkout-index-index .action.primary, .action-primary {
    font-size: 1.8rem;
    line-height: 2.4rem;
}

.opc-progress-bar {
  margin: 2rem 0 0;
}


/* Success page */

.checkout-onepage-success .page-header {
  border-bottom: 1px solid #d1d1d1;
  margin-bottom: 0;
}

.shipping-message {
  margin-top: 2rem;
}

a.action.primary.continue {
  display: none;
}

.checkout-onepage-success .top-container {
  margin-bottom: 2rem;
}

.checkout-onepage-success h1 {
  margin-bottom: 0;
  text-wrap: pretty;
  text-align: center;
}


@media only screen and (min-width: 768px) {

  .checkout-onepage-success .page-header {
    margin-bottom: 2rem;
  }

  .checkout-onepage-success .top-container {
    margin-bottom: 5rem;
  }

}