/**
 * Petaro cart + checkout — aligned with site cream / terracotta system.
 */

/* ---------- Page shell ---------- */
body.woocommerce-cart,
body.woocommerce-checkout {
  background-color: var(--ph-cream, #f0e8dc) !important;
  color: var(--ph-ink, #141210);
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
}

body.woocommerce-cart .lakit-site-wrapper,
body.woocommerce-checkout .lakit-site-wrapper,
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.woocommerce-cart .elementor-location-single,
body.woocommerce-checkout .elementor-location-single {
  background: transparent !important;
}

/* Replace old purple/orange cartoon page title banner */
body.woocommerce-cart .elementor-element-bd3227e,
body.woocommerce-checkout .elementor-element-bd3227e,
body.petaro-cartflow .elementor-element-bd3227e {
  --background-image: none !important;
  background-color: var(--ph-beige, #e7dece) !important;
  background-image:
    radial-gradient(120% 80% at 12% 0%, rgba(196, 93, 58, 0.14) 0%, transparent 55%),
    radial-gradient(90% 70% at 88% 10%, rgba(106, 138, 104, 0.12) 0%, transparent 50%),
    linear-gradient(180deg, var(--ph-beige, #e7dece) 0%, var(--ph-cream, #f0e8dc) 100%) !important;
  background-size: auto !important;
  background-position: 0 0 !important;
  background-repeat: no-repeat !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  padding: calc(var(--ph-header-h, 72px) + 1.1rem) 0 1.35rem !important;
  border-bottom: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12));
}

body.woocommerce-cart .elementor-element-bd3227e > .e-con-inner,
body.woocommerce-checkout .elementor-element-bd3227e > .e-con-inner,
body.woocommerce-cart .elementor-element-0b8ec88,
body.woocommerce-checkout .elementor-element-0b8ec88 {
  min-height: 0 !important;
  height: auto !important;
  width: min(1180px, calc(100% - 2.5rem)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.woocommerce-cart .lakit-breadcrumbs,
body.woocommerce-checkout .lakit-breadcrumbs {
  text-align: left !important;
  width: 100%;
}

/* Remove cartoon layer images + wave divider from the old title banner */
body.petaro-cartflow .elementor-element-bd3227e .elementor-shape,
body.petaro-cartflow .elementor-element-9b908eb,
body.petaro-cartflow .elementor-element-298aae7,
body.petaro-cartflow .elementor-element-b3c9542,
body.petaro-cartflow .elementor-element-bd3227e img[src*="bg-header-layer"] {
  display: none !important;
}

body.woocommerce-cart .lakit-breadcrumbs__title,
body.woocommerce-checkout .lakit-breadcrumbs__title {
  margin: 0 0 0.35rem !important;
  color: var(--ph-ink, #141210) !important;
  font-family: var(--ph-display, "Plus Jakarta Sans", "Segoe UI", sans-serif) !important;
  font-size: clamp(34px, 5vw, 48px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.05 !important;
  text-shadow: none !important;
}

body.woocommerce-cart .lakit-breadcrumbs__item-link,
body.woocommerce-cart .lakit-breadcrumbs__item-target,
body.woocommerce-cart .lakit-breadcrumbs__item-sep,
body.woocommerce-checkout .lakit-breadcrumbs__item-link,
body.woocommerce-checkout .lakit-breadcrumbs__item-target,
body.woocommerce-checkout .lakit-breadcrumbs__item-sep {
  color: var(--ph-muted, rgba(20, 18, 16, 0.7)) !important;
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

body.woocommerce-cart .lakit-breadcrumbs__item-link:hover,
body.woocommerce-checkout .lakit-breadcrumbs__item-link:hover {
  color: var(--ph-accent, #c45d3a) !important;
}

body.woocommerce-cart .lakit-breadcrumbs__item-sep i,
body.woocommerce-checkout .lakit-breadcrumbs__item-sep i {
  font-size: 11px !important;
}

/* Main Woo content width + breathing room */
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce {
  width: min(1180px, calc(100% - 2.5rem));
  margin-left: auto;
  margin-right: auto;
  padding: 0.5rem 0 3rem;
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
  color: var(--ph-ink, #141210);
}

body.woocommerce-cart .woocommerce h1,
body.woocommerce-cart .woocommerce h2,
body.woocommerce-cart .woocommerce h3,
body.woocommerce-checkout .woocommerce h1,
body.woocommerce-checkout .woocommerce h2,
body.woocommerce-checkout .woocommerce h3,
body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading {
  font-family: var(--ph-display, "Plus Jakarta Sans", "Segoe UI", sans-serif) !important;
  letter-spacing: -0.03em;
  color: var(--ph-ink, #141210) !important;
}

/* ---------- Progress ---------- */
.petaro-progress {
  width: min(720px, 100%);
  margin: 0.35rem auto 1.85rem;
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
  color: var(--ph-ink, #141210);
}

.petaro-progress__track {
  height: 4px;
  border-radius: 999px;
  background: rgba(20, 18, 16, 0.1);
  overflow: hidden;
  margin-bottom: 0.85rem;
}

.petaro-progress__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ph-accent, #c45d3a), #d4896a);
  transition: width 0.45s var(--ph-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.petaro-progress__steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.petaro-progress__step {
  display: grid;
  justify-items: center;
  gap: 0.35rem;
  text-align: center;
  opacity: 0.42;
}

.petaro-progress__step.is-done,
.petaro-progress__step.is-current {
  opacity: 1;
}

.petaro-progress__dot {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--ph-paper, #f6efe4);
  border: 1.5px solid var(--ph-line, rgba(20, 18, 16, 0.12));
  font-size: 12px;
  font-weight: 700;
}

.petaro-progress__step.is-done .petaro-progress__dot {
  background: var(--ph-sage, #6a8a68);
  border-color: var(--ph-sage, #6a8a68);
  color: #fff;
}

.petaro-progress__step.is-current .petaro-progress__dot {
  background: var(--ph-accent, #c45d3a);
  border-color: var(--ph-accent, #c45d3a);
  color: var(--ph-on-accent, #fff8f2);
  box-shadow: 0 8px 18px rgba(196, 93, 58, 0.28);
}

.petaro-progress__label {
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* ---------- Surfaces / tables ---------- */
body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table,
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-payment,
body.woocommerce-cart .cart-collaterals .cart_totals {
  background: var(--ph-paper, #f6efe4) !important;
  border: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12)) !important;
  border-radius: var(--ph-radius, 16px) !important;
  box-shadow: none !important;
}

body.woocommerce-cart table.shop_table.cart {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout table.shop_table th,
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table td {
  border-color: var(--ph-line, rgba(20, 18, 16, 0.1)) !important;
  background: transparent !important;
  color: var(--ph-ink, #141210) !important;
  font-size: 15px !important;
  padding: 1rem 0.9rem !important;
  vertical-align: middle;
}

body.woocommerce-cart table.shop_table thead th {
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ph-muted, rgba(20, 18, 16, 0.7)) !important;
  background: rgba(20, 18, 16, 0.03) !important;
}

body.woocommerce-cart table.shop_table .product-name a,
body.woocommerce-checkout table.shop_table .product-name a {
  color: var(--ph-ink, #141210) !important;
  font-family: var(--ph-display, "Plus Jakarta Sans", "Segoe UI", sans-serif) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  text-decoration: none !important;
}

body.woocommerce-cart table.shop_table .product-name a:hover,
body.woocommerce-checkout table.shop_table .product-name a:hover {
  color: var(--ph-accent, #c45d3a) !important;
}

body.woocommerce-cart table.shop_table .product-thumbnail img,
body.woocommerce-checkout table.shop_table .product-thumbnail img {
  border-radius: 12px;
  background: var(--ph-beige, #e7dece);
  width: 72px;
  height: 72px;
  object-fit: cover;
}

body.woocommerce-cart table.shop_table .product-remove a,
body.woocommerce-cart table.shop_table .product-remove a.remove {
  color: var(--ph-muted, rgba(20, 18, 16, 0.55)) !important;
  font-size: 22px !important;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(20, 18, 16, 0.05);
  text-decoration: none !important;
}

body.woocommerce-cart table.shop_table .product-remove a:hover {
  color: var(--ph-accent, #c45d3a) !important;
  background: var(--ph-accent-soft, rgba(196, 93, 58, 0.12));
}

body.woocommerce-cart .woocommerce-Price-amount,
body.woocommerce-checkout .woocommerce-Price-amount {
  font-weight: 700;
  color: var(--ph-ink, #141210);
}

body.woocommerce-cart .order-total .woocommerce-Price-amount,
body.woocommerce-checkout .order-total .woocommerce-Price-amount {
  color: var(--ph-accent, #c45d3a);
  font-size: 1.15em;
}

/* Quantity */
body.woocommerce-cart .quantity,
body.woocommerce-checkout .quantity {
  display: inline-flex;
  align-items: center;
  gap: 0;
  border: 1.5px solid var(--ph-line, rgba(20, 18, 16, 0.14));
  border-radius: 999px;
  background: #fffdf9;
  overflow: hidden;
}

body.woocommerce-cart .quantity .qty,
body.woocommerce-checkout .quantity .qty {
  min-height: 42px !important;
  width: 3rem !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center;
  font-size: 15px !important;
  font-weight: 700;
  color: var(--ph-ink, #141210);
}

body.woocommerce-cart .quantity .minus,
body.woocommerce-cart .quantity .plus,
body.woocommerce-cart .quantity button {
  border: 0 !important;
  background: transparent !important;
  min-width: 36px;
  min-height: 42px;
  color: var(--ph-ink, #141210);
  font-weight: 700;
  cursor: pointer;
}

/* Coupon / actions row */
body.woocommerce-cart .actions {
  background: transparent !important;
  border: 0 !important;
  padding: 1rem 0 0 !important;
}

body.woocommerce-cart .coupon {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}

body.woocommerce-cart .coupon .input-text,
body.woocommerce-checkout .coupon .input-text,
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
  min-height: 48px !important;
  border: 1.5px solid var(--ph-line, rgba(20, 18, 16, 0.14)) !important;
  border-radius: 12px !important;
  background: #fffdf9 !important;
  color: var(--ph-ink, #141210) !important;
  font-size: 16px !important;
  box-shadow: none !important;
  padding: 0.65rem 0.9rem !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single {
  display: flex;
  align-items: center;
  padding: 0 0.9rem !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--ph-ink, #141210) !important;
  line-height: 45px !important;
  padding: 0 !important;
}

body.woocommerce-cart .coupon .input-text:focus,
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus {
  border-color: var(--ph-accent, #c45d3a) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px var(--ph-accent-soft, rgba(196, 93, 58, 0.12)) !important;
}

/* Buttons */
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-checkout .woocommerce input.button,
body.woocommerce-checkout #place_order,
body.woocommerce-cart .checkout-button,
.petaro-checkout-sticky__btn {
  min-height: 50px !important;
  padding: 0.7rem 1.35rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition:
    transform 0.28s var(--ph-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 0.28s var(--ph-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    background 0.25s ease;
}

body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce a.button:not(.checkout-button),
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-checkout .woocommerce button.button:not(#place_order),
body.woocommerce-checkout .woocommerce a.button {
  background: transparent !important;
  color: var(--ph-ink, #141210) !important;
  border: 1.5px solid rgba(20, 18, 16, 0.18) !important;
  box-shadow: none !important;
}

body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart .woocommerce a.button:not(.checkout-button):hover,
body.woocommerce-checkout .woocommerce button.button:not(#place_order):hover {
  background: var(--ph-paper, #f6efe4) !important;
  border-color: rgba(20, 18, 16, 0.28) !important;
  transform: translateY(-2px);
}

body.woocommerce-cart .checkout-button,
body.woocommerce-cart a.checkout-button.button.alt,
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order,
.petaro-checkout-sticky__btn {
  background: linear-gradient(180deg, #d06a45 0%, var(--ph-accent, #c45d3a) 100%) !important;
  color: var(--ph-on-accent, #fff8f2) !important;
  box-shadow: 0 12px 28px rgba(196, 93, 58, 0.28) !important;
  text-transform: none !important;
}

body.woocommerce-cart .checkout-button:hover,
body.woocommerce-checkout #place_order:hover,
.petaro-checkout-sticky__btn:hover {
  background: linear-gradient(180deg, #c45d3a 0%, var(--ph-accent-hover, #b04f2f) 100%) !important;
  box-shadow: 0 18px 40px rgba(176, 79, 47, 0.34) !important;
  transform: translateY(-2px);
  color: var(--ph-on-accent, #fff8f2) !important;
}

/* Totals card */
body.woocommerce-cart .cart_totals {
  padding: 1.25rem 1.35rem 1.4rem;
  margin-top: 0;
}

body.woocommerce-cart .cart_totals h2,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields > h3,
body.woocommerce-checkout .woocommerce-additional-fields > h3 {
  margin: 0 0 1rem !important;
  font-size: clamp(22px, 3vw, 28px) !important;
  font-weight: 800 !important;
}

body.woocommerce-cart .cart_totals table.shop_table,
body.woocommerce-checkout #order_review table.shop_table {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td,
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  padding: 0.75rem 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--ph-line, rgba(20, 18, 16, 0.1)) !important;
}

body.woocommerce-cart .wc-proceed-to-checkout {
  padding-top: 0.85rem;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 !important;
}

/* Side widgets (estimate shipping / coupon blocks from theme) */
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .la-cart-coupon,
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart aside .widget,
body.woocommerce-cart .elementor-widget-sidebar .widget,
body.woocommerce-cart .widget_shopping_cart,
body.woocommerce-cart .lakit-cart-totals {
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
}

body.woocommerce-cart .cart-collaterals > div,
body.woocommerce-cart .lasf-extra-cart,
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart .la-cart-coupon,
body.woocommerce-cart .widget,
body.woocommerce-cart .elementor-widget-wp-widget-woocommerce_widget_cart,
body.woocommerce-cart .lakit-wc-shipping-calculator,
body.woocommerce-cart .lakit-wc-coupon-form {
  background: var(--ph-paper, #f6efe4) !important;
  border: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12)) !important;
  border-radius: var(--ph-radius, 16px) !important;
  padding: 1.15rem 1.25rem !important;
  box-shadow: none !important;
}

body.woocommerce-cart .lasf-extra-cart p,
body.woocommerce-cart .lasf-extra-cart .subtitle {
  color: var(--ph-muted, rgba(20, 18, 16, 0.7)) !important;
  font-size: 14px !important;
}

body.woocommerce-cart .widget h2,
body.woocommerce-cart .widget .widget-title,
body.woocommerce-cart .lakit-wc-shipping-calculator h2,
body.woocommerce-cart .lakit-wc-coupon-form h2 {
  font-family: var(--ph-display, "Plus Jakarta Sans", "Segoe UI", sans-serif) !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  margin: 0 0 0.45rem !important;
}

/* Empty cart */
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .woocommerce-info {
  background: var(--ph-paper, #f6efe4) !important;
  border: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12)) !important;
  border-radius: var(--ph-radius, 16px) !important;
  color: var(--ph-ink, #141210) !important;
  padding: 1.1rem 1.25rem !important;
}

body.woocommerce-cart .return-to-shop .button,
body.woocommerce-cart a.button.wc-backward {
  background: linear-gradient(180deg, #d06a45 0%, var(--ph-accent, #c45d3a) 100%) !important;
  color: var(--ph-on-accent, #fff8f2) !important;
  border: 0 !important;
  box-shadow: 0 12px 28px rgba(196, 93, 58, 0.28) !important;
}

/* Notices */
body.woocommerce-cart .woocommerce-message,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-error {
  background: var(--ph-paper, #f6efe4) !important;
  border-top-color: var(--ph-accent, #c45d3a) !important;
  border-radius: 12px !important;
  color: var(--ph-ink, #141210) !important;
}

/* ---------- Upsells ---------- */
.petaro-cart-upsell {
  width: min(1180px, calc(100% - 2.5rem));
  margin: 2.25rem auto 3rem;
  padding-top: 1.75rem;
  border-top: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12));
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
  color: var(--ph-ink, #141210);
}

.petaro-cart-upsell__kicker {
  margin: 0 0 0.4rem;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(20, 18, 16, 0.55);
}

.petaro-cart-upsell__title {
  margin: 0 0 1.1rem;
  font-family: var(--ph-display, "Plus Jakarta Sans", "Segoe UI", sans-serif) !important;
  font-size: clamp(28px, 4vw, 40px) !important;
  letter-spacing: -0.04em;
  font-weight: 800;
}

/* ---------- Checkout ---------- */
body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
  font-family: var(--ph-font, "Instrument Sans", "Segoe UI", sans-serif);
}

body.woocommerce-checkout .form-row label {
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  color: var(--ph-muted, rgba(20, 18, 16, 0.75)) !important;
  margin-bottom: 0.35rem !important;
}

body.woocommerce-checkout .form-row {
  margin-bottom: 1rem !important;
}

body.woocommerce-checkout #order_review {
  padding: 1.25rem 1.35rem 1.4rem;
}

body.woocommerce-checkout #payment {
  background: transparent !important;
  border-radius: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid var(--ph-line, rgba(20, 18, 16, 0.1)) !important;
  padding: 0 0 1rem !important;
  margin: 0 0 1rem !important;
  background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  background: #fffdf9;
  border: 1.5px solid var(--ph-line, rgba(20, 18, 16, 0.12));
  border-radius: 12px;
  padding: 0.85rem 1rem !important;
  margin: 0 0 0.65rem !important;
}

body.woocommerce-checkout #payment ul.payment_methods li label {
  font-weight: 700 !important;
  color: var(--ph-ink, #141210) !important;
}

body.woocommerce-checkout #payment div.payment_box {
  background: var(--ph-beige, #e7dece) !important;
  color: var(--ph-ink, #141210) !important;
  border-radius: 10px !important;
}

body.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: var(--ph-beige, #e7dece) !important;
}

body.woocommerce-checkout #payment div.form-row {
  padding: 0 !important;
}

.petaro-checkout-trust {
  margin: 0 0 1.1rem;
  padding: 0.95rem 1.1rem;
  border-radius: 14px;
  background: var(--ph-cream, #f0e8dc);
  border: 1px solid var(--ph-line, rgba(20, 18, 16, 0.1));
}

.petaro-checkout-trust__list {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.petaro-checkout-trust__list li {
  position: relative;
  padding-left: 1.2rem;
  font-size: 15px !important;
  font-weight: 600;
  color: var(--ph-ink, #141210);
}

.petaro-checkout-trust__list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--ph-sage, #6a8a68);
  font-weight: 700;
}

body.woocommerce-checkout .woocommerce-form-login,
body.woocommerce-checkout .woocommerce-form-coupon {
  background: var(--ph-paper, #f6efe4) !important;
  border: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12)) !important;
  border-radius: var(--ph-radius, 16px) !important;
  padding: 1.1rem 1.2rem !important;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text {
  color: var(--ph-muted, rgba(20, 18, 16, 0.7));
  font-size: 14px !important;
}

body.woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: var(--ph-accent, #c45d3a) !important;
}

/* Sticky place order (mobile) */
.petaro-checkout-sticky {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 90;
  padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom));
  background: rgba(240, 232, 220, 0.94);
  border-top: 1px solid var(--ph-line, rgba(20, 18, 16, 0.12));
  backdrop-filter: blur(10px);
  box-shadow: 0 -10px 30px rgba(20, 18, 16, 0.08);
}

.petaro-checkout-sticky[hidden] {
  display: none !important;
}

.petaro-checkout-sticky__btn {
  width: 100%;
  color: var(--ph-on-accent, #fff8f2) !important;
}

@media (min-width: 901px) {
  .petaro-checkout-sticky {
    display: none !important;
  }
}

@media (max-width: 900px) {
  body.woocommerce-checkout {
    padding-bottom: 5.5rem;
  }

  body.woocommerce-cart .elementor-element-bd3227e,
  body.woocommerce-checkout .elementor-element-bd3227e {
    padding: calc(var(--ph-header-h, 64px) + 0.85rem) 0 1rem !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr,
  body.woocommerce-checkout table.shop_table_responsive tr {
    background: transparent !important;
  }

  body.woocommerce-cart table.shop_table_responsive tr td {
    border-color: var(--ph-line, rgba(20, 18, 16, 0.1)) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce-cart .woocommerce button.button,
  body.woocommerce-cart .woocommerce a.button,
  body.woocommerce-checkout .woocommerce button.button,
  body.woocommerce-checkout #place_order,
  .petaro-checkout-sticky__btn,
  .petaro-progress__fill {
    transition: none !important;
    transform: none !important;
  }
}
