:root {
  --to-wine: #5b1530;
  --to-wine-dark: #411022;
  --to-rose: #f50087;
  --to-cream: #f8f3f0;
  --to-paper: #fffdfb;
  --to-ink: #2f292b;
  --to-muted: #746a6d;
  --to-line: #e6d8dc;
  --to-shadow: 0 22px 60px rgba(67, 16, 35, .08);
}

.toysonly-boutique-commerce { background: var(--to-paper); color: var(--to-ink); }
.toysonly-boutique-commerce .to-commerce-host { flex-direction: column !important; background: var(--to-paper) !important; padding-top: 22px !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page,
.toysonly-boutique-commerce .to-commerce-intro,
.toysonly-boutique-commerce .to-checkout-steps,
.toysonly-boutique-commerce .to-commerce-trust { width: min(100% - 40px, 1304px); margin-inline: auto; }

.to-commerce-intro { padding: 48px 0 38px; text-align: center; }
.toysonly-boutique-commerce .to-commerce-eyebrow { margin: 0 0 18px; color: var(--to-rose); font-family: Montserrat, Arial, sans-serif !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: .38em !important; text-transform: uppercase !important; }
.toysonly-boutique-commerce .to-commerce-title { margin: 0; color: var(--to-wine); font-family: "Cormorant Garamond", Georgia, serif !important; font-size: clamp(48px, 5vw, 72px) !important; font-weight: 500 !important; line-height: .98 !important; letter-spacing: normal !important; text-transform: none !important; }
.to-commerce-copy { max-width: 680px; margin: 22px auto 0; color: var(--to-muted); font: 400 16px/1.75 Montserrat, sans-serif; }

.to-checkout-steps { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 30px; border: 1px solid var(--to-line); background: #fff; }
.to-checkout-steps li { display: flex; align-items: center; gap: 12px; padding: 17px 22px; border-right: 1px solid var(--to-line); list-style: none; color: var(--to-muted); }
.to-checkout-steps li:last-child { border-right: 0; }
.to-checkout-steps .is-active { color: var(--to-wine); box-shadow: inset 0 2px var(--to-rose); }
.to-step-number { color: var(--to-rose); font: 700 10px/1 Montserrat, sans-serif; letter-spacing: .18em; }
.to-step-label { font: 600 12px/1.2 Montserrat, sans-serif; text-transform: uppercase; letter-spacing: .12em; }

.toysonly-boutique-commerce .elementor-widget-woocommerce-cart .woocommerce,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .woocommerce { font-family: Montserrat, sans-serif; }
.toysonly-boutique-commerce .e-cart__container,
.toysonly-boutique-commerce .e-checkout__container { gap: 30px !important; align-items: start; }
.toysonly-boutique-commerce .e-cart__column-start,
.toysonly-boutique-commerce .e-cart__column-end,
.toysonly-boutique-commerce .e-checkout__column-start,
.toysonly-boutique-commerce .e-checkout__column-end > div { border: 1px solid var(--to-line) !important; border-radius: 0 !important; background: #fff !important; box-shadow: var(--to-shadow); }

.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .woocommerce-billing-fields { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .e-checkout__column-inner,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .e-checkout__order_review,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .e-checkout__order_review-2,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .woocommerce-additional-fields { border-color: var(--to-line) !important; border-radius: 0 !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .woocommerce-checkout-review-order-table,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page #payment { border-color: var(--to-line) !important; border-radius: 0 !important; }
.toysonly-boutique-commerce .e-cart__column-start,
.toysonly-boutique-commerce .e-checkout__column-start { padding: 38px !important; }
.toysonly-boutique-commerce .e-cart__column-end,
.toysonly-boutique-commerce .e-checkout__column-end { position: sticky; top: 110px; }
.toysonly-boutique-commerce .e-cart__column-end > div,
.toysonly-boutique-commerce .e-checkout__column-end > div { padding: 38px !important; }

.toysonly-boutique-commerce .elementor-widget-woocommerce-cart h2,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart h3,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page h2,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page h3,
.toysonly-boutique-commerce .cart_totals h2,
.toysonly-boutique-commerce .woocommerce-checkout-review-order-table + h3 { color: var(--to-wine) !important; font-family: Cormorant Garamond, Georgia, serif !important; font-weight: 500 !important; letter-spacing: 0 !important; }
.toysonly-boutique-commerce .cart_totals h2,
.toysonly-boutique-commerce .e-checkout__column-end h3 { font-size: 34px !important; }

.toysonly-boutique-commerce .elementor-widget-woocommerce-cart table,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart table th,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart table td,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page table,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page table th,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page table td { border-color: var(--to-line) !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart table th,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page table th { color: var(--to-wine) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .12em; text-transform: uppercase; }
.toysonly-boutique-commerce .product-name a { color: var(--to-ink) !important; font-family: Cormorant Garamond, Georgia, serif; font-size: 21px; line-height: 1.25; }
.toysonly-boutique-commerce .product-thumbnail img { background: var(--to-cream); padding: 8px; }
.toysonly-boutique-commerce .woocommerce-Price-amount { color: var(--to-wine); }

.toysonly-boutique-commerce .elementor-widget-woocommerce-cart input.input-text,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart input.qty,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart textarea,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart select,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page input.input-text,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page input.qty,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page textarea,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page select,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .select2-selection { min-height: 54px !important; border: 1px solid var(--to-line) !important; border-radius: 0 !important; background: #fff !important; color: var(--to-ink) !important; box-shadow: none !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart input:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart textarea:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart select:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page input:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page textarea:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page select:focus,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .select2-container--focus .select2-selection { border-color: var(--to-wine) !important; outline: 2px solid rgba(91, 21, 48, .09) !important; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart label,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page label { color: var(--to-ink) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .04em; }

.toysonly-boutique-commerce .elementor-widget-woocommerce-cart button,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart .button,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page button,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .button,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page #place_order,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart .checkout-button { min-height: 54px; border: 1px solid var(--to-wine) !important; border-radius: 0 !important; background: var(--to-wine) !important; color: #fff !important; font: 700 12px/1 Montserrat, sans-serif !important; letter-spacing: .14em; text-transform: uppercase; transition: background .2s ease, color .2s ease, transform .2s ease; }
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart button:hover,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart .button:hover,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page button:hover,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .button:hover,
.toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page #place_order:hover,
.toysonly-boutique-commerce .elementor-widget-woocommerce-cart .checkout-button:hover { background: var(--to-wine-dark) !important; color: #fff !important; transform: translateY(-1px); }
.toysonly-boutique-commerce .coupon button { background: transparent !important; color: var(--to-wine) !important; }
.toysonly-boutique-commerce .coupon button:hover { background: var(--to-wine) !important; color: #fff !important; }

.toysonly-boutique-commerce .woocommerce-error,
.toysonly-boutique-commerce .woocommerce-info,
.toysonly-boutique-commerce .woocommerce-message { border: 1px solid var(--to-line); border-top: 2px solid var(--to-rose); background: var(--to-cream); color: var(--to-ink); }
.toysonly-boutique-commerce #payment { background: var(--to-cream) !important; border-radius: 0 !important; }
.toysonly-boutique-commerce #payment .payment_box { background: #fff !important; }
.toysonly-boutique-commerce #payment ul.payment_methods { border-color: var(--to-line) !important; }
.toysonly-boutique-commerce #payment li.wc_payment_method { padding-block: 8px; }
.toysonly-boutique-commerce #payment li.wc_payment_method > label { font-size: 13px !important; }
.toysonly-boutique-commerce .woocommerce-privacy-policy-text { color: var(--to-muted); font-size: 12px; line-height: 1.65; }

.to-commerce-trust { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 34px; margin-bottom: 80px; border: 1px solid var(--to-line); background: var(--to-cream); }
.to-trust-item { display: flex; align-items: center; gap: 16px; padding: 25px 28px; border-right: 1px solid var(--to-line); }
.to-trust-item:last-child { border-right: 0; }
.to-trust-number { color: var(--to-rose); font: 700 10px/1 Montserrat, sans-serif; letter-spacing: .16em; }
.to-trust-text { display: flex; flex-direction: column; gap: 5px; }
.to-trust-text strong { color: var(--to-wine); font-family: Cormorant Garamond, Georgia, serif; font-size: 20px; font-weight: 600; }
.to-trust-text span { color: var(--to-muted); font: 400 12px/1.5 Montserrat, sans-serif; }

@media (max-width: 1024px) {
  .to-commerce-intro { padding-top: 38px; }
  .toysonly-boutique-commerce .e-cart__container,
  .toysonly-boutique-commerce .e-checkout__container { grid-template-columns: 1fr !important; }
  .toysonly-boutique-commerce .e-cart__column-end,
  .toysonly-boutique-commerce .e-checkout__column-end { position: static; }
}

@media (max-width: 767px) {
  .toysonly-boutique-commerce .to-commerce-host { padding-top: 8px !important; }
  .toysonly-boutique-commerce .elementor-widget-woocommerce-cart,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page,
  .toysonly-boutique-commerce .to-commerce-intro,
  .toysonly-boutique-commerce .to-checkout-steps,
  .toysonly-boutique-commerce .to-commerce-trust { width: min(100% - 28px, 1304px); }
  .to-commerce-intro { padding: 30px 0 24px; text-align: left; }
  .toysonly-boutique-commerce .to-commerce-eyebrow { font-size: 10px !important; letter-spacing: .28em !important; }
  .toysonly-boutique-commerce .to-commerce-title { font-size: 46px !important; }
  .to-commerce-copy { margin-top: 16px; font-size: 14px; line-height: 1.65; }
  .to-checkout-steps { grid-template-columns: repeat(2, 1fr); }
  .to-checkout-steps li:nth-child(2) { border-right: 0; }
  .to-checkout-steps li:nth-child(-n+2) { border-bottom: 1px solid var(--to-line); }
  .to-checkout-steps li { padding: 14px 12px; }
  .toysonly-boutique-commerce .e-cart__column-start,
  .toysonly-boutique-commerce .e-cart__column-end > div,
  .toysonly-boutique-commerce .e-checkout__column-start,
  .toysonly-boutique-commerce .e-checkout__column-end > div { padding: 22px 18px !important; box-shadow: none; }
  .toysonly-boutique-commerce .product-name a { font-size: 18px; }
  .toysonly-boutique-commerce .quantity .qty { min-height: 46px !important; }
  .toysonly-boutique-commerce .elementor-widget-woocommerce-cart button,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-cart .button,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page button,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page .button,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-checkout-page #place_order,
  .toysonly-boutique-commerce .elementor-widget-woocommerce-cart .checkout-button { width: 100% !important; min-height: 56px; }
  .to-commerce-trust { grid-template-columns: 1fr; margin-bottom: 50px; }
  .to-trust-item { border-right: 0; border-bottom: 1px solid var(--to-line); padding: 20px; }
  .to-trust-item:last-child { border-bottom: 0; }
}
