/* RPM skin for WooCommerce cart / checkout / account / shop pages. */

:root {
  --rpm-navy: #1b3a5c;
  --rpm-red: #d11f26;
  --rpm-sand: #faf9f5;
  --rpm-line: #e4ddd0;
  --rpm-ink: #3a3d40;
}

body.woocommerce,
body.woocommerce-page,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
  background: var(--rpm-sand);
  color: var(--rpm-ink);
  font-family: 'Barlow', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 17px;
  line-height: 1.6;
}

.rpm-woo-bar {
  display: flex;
  align-items: center;
  gap: 18px;
  background: var(--rpm-navy);
  color: #fff;
  padding: 14px 26px;
}

.rpm-woo-bar a {
  color: #fff;
  text-decoration: none;
}

.rpm-woo-back {
  font-size: 15px;
  opacity: 0.85;
}

.rpm-woo-back:hover {
  opacity: 1;
}

.rpm-woo-brand {
  margin-left: auto;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.rpm-woo-phone {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 19px;
  color: #fff;
}

.rpm-woo-wrap {
  max-width: 1280px;
  margin: 0 auto;
  padding: 34px 26px 70px;
}

.rpm-woo-foot {
  background: var(--rpm-navy);
  color: #cfdbe8;
  text-align: center;
  padding: 22px 26px;
  font-size: 15px;
}

.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce-page h1,
.woocommerce-page h2,
.woocommerce-page h3 {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  color: var(--rpm-navy);
  line-height: 1.08;
}

.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: var(--rpm-red) !important;
  color: #fff !important;
  border-radius: 9px !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 700 !important;
  font-size: 19px !important;
  letter-spacing: 0.02em;
  padding: 12px 22px !important;
  border: 0 !important;
  text-transform: none;
}

.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background: #b31a20 !important;
  color: #fff !important;
}

.woocommerce table.shop_table,
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce .cart-collaterals .cart_totals > h2 + * {
  background: #fff;
  border: 1px solid var(--rpm-line) !important;
  border-radius: 12px !important;
  overflow: hidden;
}

.woocommerce table.shop_table th {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: var(--rpm-navy);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single {
  background: #fff;
  border: 1px solid var(--rpm-line) !important;
  border-radius: 8px !important;
  padding: 12px 15px !important;
  font-size: 17px;
  height: auto !important;
  color: var(--rpm-ink);
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review_heading + #order_review {
  background: #fff;
  border: 1px solid var(--rpm-line);
  border-radius: 14px;
  padding: 24px 26px;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--rpm-navy);
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 24px;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-top-color: var(--rpm-red);
  background: #fff;
  border-radius: 10px;
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--rpm-red);
}

@media (max-width: 640px) {
  .rpm-woo-bar {
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 16px;
  }

  .rpm-woo-brand {
    font-size: 18px;
  }

  .rpm-woo-wrap {
    padding: 22px 16px 50px;
  }
}
