:root {
  --amz-color-accent: #f45504;
  --amz-color-accent-hover: #cf4303;
  --amz-color-text: #202124;
  --amz-color-muted: #5f6368;
  --amz-color-border: #dedede;
  --amz-color-surface: #f6f6f6;
  --amz-radius: 4px;
  --amz-space-1: 8px;
  --amz-space-2: 16px;
  --amz-space-3: 24px;
  --amz-space-4: 32px;
  --amz-space-5: 48px;
}

body {
  color: var(--amz-color-text);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

.woocommerce p, .woocommerce ul, .woocommerce ol, .woocommerce dl { margin-top: 0; margin-bottom: var(--amz-space-2); }
.woocommerce h1, .woocommerce h2, .woocommerce h3, .woocommerce h4 { color: var(--amz-color-text); line-height: 1.2; margin-top: 0; margin-bottom: var(--amz-space-2); }
.woocommerce h1 { font-size: clamp(28px, 3vw, 38px); }
.woocommerce h2 { font-size: clamp(24px, 2.2vw, 30px); }
.woocommerce h3 { font-size: clamp(20px, 1.8vw, 24px); }
.woocommerce h4 { font-size: 18px; }
.elementor-widget-text-editor p { line-height: 1.6; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

a { text-underline-offset: 3px; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--amz-color-accent);
  outline-offset: 3px;
}

button, input, select, textarea, .button {
  font: inherit;
}

input[type='text'], input[type='email'], input[type='tel'], input[type='number'],
input[type='password'], select, textarea {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--amz-color-border);
  border-radius: var(--amz-radius);
  color: var(--amz-color-text);
  background: #fff;
}

input[type='submit'], .woocommerce a.button, .woocommerce button.button,
.woocommerce input.button {
  min-height: 44px;
  padding: 11px 22px;
  border-radius: var(--amz-radius);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit {
  background: var(--amz-color-accent);
  color: #fff;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: var(--amz-color-accent-hover);
  color: #fff;
}

.woocommerce-message, .woocommerce-info, .woocommerce-error {
  margin-bottom: var(--amz-space-3);
  padding: 16px 20px 16px 48px;
  border-top-color: var(--amz-color-accent);
  line-height: 1.5;
}

.woocommerce form .form-row { margin: 0 0 var(--amz-space-2); padding: 0; }
.woocommerce form .form-row label { margin-bottom: 6px; font-size: 15px; font-weight: 600; line-height: 1.4; }
.woocommerce table.shop_table { border-color: var(--amz-color-border); border-radius: var(--amz-radius); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 14px 12px; vertical-align: middle; }
.woocommerce table.shop_table th { font-size: 14px; font-weight: 700; }

.woocommerce-cart .woocommerce,
.woocommerce-checkout .cartflows-container,
.single-product .elementor-widget-woocommerce-product-content,
.single-product .woocommerce-tabs {
  font-size: 16px;
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout,
.woocommerce-checkout .wcf-order-wrap,
.single-product .summary,
.single-product .woocommerce-tabs {
  margin-bottom: var(--amz-space-4);
}

.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-additional-fields {
  padding: var(--amz-space-3);
}

.woocommerce-checkout h3,
.woocommerce-cart .cart_totals h2,
.single-product .product_title,
.single-product .woocommerce-tabs h2 {
  margin-bottom: var(--amz-space-3);
}

.single-product .price { margin-bottom: var(--amz-space-2); }
.single-product .woocommerce-product-details__short-description { color: var(--amz-color-text); }
.single-product .woocommerce-product-details__short-description p { line-height: 1.6; margin-bottom: var(--amz-space-2); }
.single-product form.cart { margin-top: var(--amz-space-3); margin-bottom: var(--amz-space-4); }
.single-product .woocommerce-tabs ul.tabs { margin-bottom: var(--amz-space-3); }
.single-product .woocommerce-tabs .panel > :last-child { margin-bottom: 0; }

@media (max-width: 767px) {
  body { font-size: 15px; }
  .woocommerce h1 { font-size: 28px; }
  .woocommerce h2 { font-size: 23px; }
  .woocommerce h3 { font-size: 20px; }
  .woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 12px 10px; }
  .woocommerce-cart .cart-collaterals .cart_totals,
  .woocommerce-checkout #order_review,
  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-additional-fields { padding: var(--amz-space-2); }
}
