/* VATO commerce presentation. Native forms, validation, AJAX and blocks remain intact. */
.vato-commerce {
  --vato-surface:#fff;
  --vato-border:#e4e4e7;
  --vato-radius:14px;
  --vato-shadow:0 5px 24px #17171705;
  --wp--preset--color--primary:var(--accent);
  --wp--preset--color--contrast:var(--ink);
  --wp--preset--color--base:#fff;
}
.vato-commerce .content-page { padding-block:36px 48px; }
.vato-commerce .content-page>h1 { font-size:clamp(28px,3vw,38px); letter-spacing:-1.2px; margin-bottom:30px; }
.vato-commerce :where(.woocommerce,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) { font-family:inherit; color:var(--ink); line-height:1.6; }
.vato-commerce :where(h2,h3) { letter-spacing:-.5px; }
.vato-commerce :where(.woocommerce,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) h2 { font-size:23px; }
.vato-commerce :where(.woocommerce,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) h3 { font-size:18px; }
.vato-commerce :where(.woocommerce,.wc-block-components-form) label { font-size:13px; font-weight:600; }
.vato-commerce .woocommerce :where(input.input-text,textarea,select),
.vato-commerce .wc-block-components-form :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
  border:1px solid #bfc2c5;
  border-radius:8px;
  background:#fff;
  color:var(--ink);
  font-family:inherit;
  font-size:15px;
  min-height:46px;
}
.vato-commerce .woocommerce :where(input.input-text,textarea,select) { padding:12px 14px; width:100%; }
.vato-commerce .woocommerce textarea { min-height:110px; resize:vertical; }
.vato-commerce :where(input,select,textarea,button,a):focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.vato-commerce :where(input[type="checkbox"],input[type="radio"]) { accent-color:var(--accent); width:18px; height:18px; vertical-align:middle; }
.vato-commerce .woocommerce form .form-row { margin:0 0 18px; padding:0; }
.vato-commerce .woocommerce form .form-row label { margin-bottom:6px; }
.vato-commerce .woocommerce .required { color:#b5121b; }
.vato-commerce .woocommerce form .form-row.woocommerce-invalid :where(input.input-text,select,textarea) { border-color:#b5121b; }
.vato-commerce .woocommerce :where(a.button,button.button,input.button),
.vato-commerce .woocommerce :where(a.button.alt,button.button.alt,input.button.alt),
.vato-commerce .wc-block-components-button:not(.is-link) {
  background:var(--accent);
  color:#fff;
  border:1px solid transparent;
  border-radius:var(--vato-button-radius,8px);
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  min-height:46px;
  padding:13px 20px;
  text-decoration:none;
  box-shadow:none;
}
.vato-commerce .woocommerce :where(a.button,button.button,input.button):hover,
.vato-commerce .wc-block-components-button:not(.is-link):hover { background:var(--accent-hover); color:#fff; }
.vato-commerce .woocommerce :where(button:disabled,button.disabled),
.vato-commerce .wc-block-components-button:disabled { cursor:not-allowed; opacity:.55; }
.vato-commerce .woocommerce :where(.woocommerce-info,.woocommerce-message,.woocommerce-error),
.vato-commerce .wc-block-components-notice-banner {
  border-radius:10px;
  border:1px solid var(--vato-border);
  border-left:4px solid var(--ink);
  background:#fff;
  color:var(--ink);
  box-shadow:none;
  font-size:14px;
}
.vato-commerce .woocommerce .woocommerce-error { border-left-color:var(--accent); }
.vato-commerce .woocommerce .woocommerce-message { border-left-color:#247348; }
.vato-commerce .woocommerce :where(.woocommerce-info,.woocommerce-message,.woocommerce-error) a:not(.button) { text-decoration:underline; text-underline-offset:3px; }
.vato-commerce .woocommerce :where(.woocommerce-info,.woocommerce-message,.woocommerce-error)::before { color:inherit; }
.vato-commerce .woocommerce table.shop_table {
  border:1px solid var(--vato-border);
  border-radius:12px;
  border-spacing:0;
  background:#fff;
  font-size:14px;
  overflow:hidden;
}
.vato-commerce .woocommerce table.shop_table th { background:#f6f6f7; font-size:12px; font-weight:700; padding:16px; }
.vato-commerce .woocommerce table.shop_table td { padding:18px 16px; border-top:1px solid var(--vato-border); }
.vato-commerce .woocommerce table.shop_table td a:not(.button):not(.remove) { font-weight:600; }
.vato-commerce .woocommerce table.shop_table tfoot th { background:#fff; }
.vato-commerce .woocommerce :where(.order-total,.order-total .amount) { font-size:21px; color:var(--ink); }
.vato-commerce .woocommerce .select2-container .select2-selection--single { height:46px; border:1px solid #bfc2c5; border-radius:8px; }
.vato-commerce .woocommerce .select2-container .select2-selection__rendered { line-height:44px; padding-left:14px; }
.vato-commerce .woocommerce .select2-container .select2-selection__arrow { height:44px; }

/* Account: native endpoint list, including extension endpoints and logout nonce. */
.vato-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  align-items:start;
  gap:28px;
}
.vato-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.vato-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { display:none; }
.vato-account .woocommerce>.woocommerce-notices-wrapper { grid-column:1/-1; }
.vato-account .woocommerce>.woocommerce-notices-wrapper:empty { display:none; }
.vato-account .woocommerce .woocommerce-MyAccount-navigation,
.vato-account .woocommerce .woocommerce-MyAccount-content { float:none; width:auto; min-width:0; }
.vato-account .woocommerce-MyAccount-navigation {
  padding:12px;
  border:1px solid var(--vato-border);
  border-radius:var(--vato-radius);
  background:#fff;
  box-shadow:var(--vato-shadow);
}
.vato-account .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; margin:0; display:grid; gap:5px; }
.vato-account .woocommerce-MyAccount-navigation li { list-style:none; margin:0; }
.vato-account .woocommerce-MyAccount-navigation a {
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border-radius:8px;
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  min-height:46px;
}
.vato-account .woocommerce-MyAccount-navigation a:hover { background:#f5f5f5; }
.vato-account .woocommerce-MyAccount-navigation .is-active a { background:var(--accent); color:#fff; }
.vato-account .woocommerce-MyAccount-navigation a::before {
  content:'';
  display:block;
  flex:0 0 19px;
  width:19px;
  height:19px;
  background:currentColor;
  mask:var(--account-icon,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h6v6H4zm10 0h6v6h-6zM4 14h6v6H4zm10 0h6v6h-6z'/%3E%3C/svg%3E")) center/contain no-repeat;
}
.woocommerce-MyAccount-navigation-link--orders { --account-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 3h14v18H5zM8 8h8M8 12h8M8 16h5' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--downloads { --account-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M4 16v5h16v-5' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-address { --account-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22S4 14 4 9a8 8 0 0 1 16 0c0 5-8 13-8 13Z' fill='none' stroke='black' stroke-width='2'/%3E%3Ccircle cx='12' cy='9' r='3'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-account { --account-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M4 22v-4a8 8 0 0 1 16 0v4' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--customer-logout { --account-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 3H3v18h7m4-14 5 5-5 5m-7-5h12' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E"); }
.vato-account .woocommerce-MyAccount-content {
  padding:30px;
  border:1px solid var(--vato-border);
  border-radius:var(--vato-radius);
  background:#fff;
  box-shadow:var(--vato-shadow);
}
.vato-account .woocommerce-MyAccount-content>p:first-child { font-size:18px; }
.vato-account .woocommerce-MyAccount-content p a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.vato-account-shortcuts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:28px; }
.vato-account-shortcuts>a { border:1px solid var(--vato-border); border-radius:12px; padding:24px; background:#fafafa; }
.vato-account-shortcuts>a:hover { border-color:var(--accent); }
.vato-account-shortcuts>a>span { font-size:10px; letter-spacing:1px; color:var(--muted); }
.vato-account-shortcuts h2 { margin-top:18px; }
.vato-account-shortcuts p { font-size:13px; color:var(--muted); }
.vato-account .woocommerce .col2-set { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; width:100%; }
.vato-account .woocommerce .col2-set::before,.vato-account .woocommerce .col2-set::after { display:none; }
.vato-account .woocommerce .col2-set :where(.col-1,.col-2) { float:none; width:auto; }
.vato-account .woocommerce :where(form.login,form.register,form.lost_reset_password) { padding:28px; background:#fff; border:1px solid var(--vato-border); border-radius:var(--vato-radius); }
.vato-account .woocommerce .woocommerce-Address { padding:22px; border:1px solid var(--vato-border); border-radius:12px; }
.vato-account .woocommerce .woocommerce-Address address { font-style:normal; line-height:1.8; color:var(--muted); }
.vato-account .woocommerce .woocommerce-Address .title { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.vato-account .woocommerce .woocommerce-Address .title h2,.vato-account .woocommerce .woocommerce-Address .title h3 { font-size:18px; }
.vato-account .woocommerce .woocommerce-Address .edit { font-size:12px; color:var(--accent); text-decoration:underline; }
.vato-account .woocommerce fieldset { padding:22px; margin:24px 0; border:1px solid var(--vato-border); border-radius:10px; }
.vato-account .woocommerce legend { font-weight:700; padding:0 8px; }

/* Product: leave gallery markup, zoom, variation form and stock scripts untouched. */
.vato-product.woocommerce div.product {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  gap:32px 40px;
  align-items:start;
}
.vato-product.woocommerce div.product::before,.vato-product.woocommerce div.product::after { display:none; }
.vato-product.woocommerce div.product div.images,
.vato-product.woocommerce div.product div.summary { float:none; width:100%; margin:0; min-width:0; }
.vato-product.woocommerce div.product div.images { padding:20px; border:1px solid var(--vato-border); border-radius:var(--vato-radius); background:#fff; }
.vato-product.woocommerce div.product div.images img { border-radius:9px; }
.vato-product.woocommerce div.product .flex-control-thumbs { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.vato-product.woocommerce div.product .flex-control-thumbs li { width:calc(25% - 8px); }
.vato-product.woocommerce div.product div.summary { background:white; padding:30px; border:1px solid var(--vato-border); border-radius:var(--vato-radius); }
.vato-product.woocommerce div.product .product_title { font-size:clamp(26px,3vw,36px); line-height:1.2; letter-spacing:-1px; }
.vato-product.woocommerce div.product :where(p.price,span.price) { font-size:30px; color:var(--accent); font-weight:700; margin:18px 0; }
.vato-product.woocommerce div.product .price del { font-size:16px; color:var(--muted); font-weight:400; }
.vato-product.woocommerce div.product .price ins { text-decoration:none; }
.vato-product .woocommerce-product-details__short-description { color:var(--muted); line-height:1.8; }
.vato-product.woocommerce div.product .stock { display:inline-block; padding:7px 12px; border-radius:6px; font-size:12px; font-weight:600; }
.vato-product.woocommerce div.product .in-stock { color:#21603b; background:#eaf5ed; }
.vato-product.woocommerce div.product .out-of-stock { color:#9f1721; background:#fff0f0; }
.vato-product.woocommerce div.product form.cart { margin-top:24px; }
.vato-product.woocommerce div.product form.cart:not(.variations_form):not(.grouped_form),
.vato-product .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.vato-commerce .woocommerce .quantity .qty,.vato-product.woocommerce .quantity .qty { width:80px; min-height:48px; text-align:center; border:1px solid #bfc2c5; border-radius:8px; padding:8px; font-size:16px; }
.vato-product.woocommerce div.product form.cart .button { flex:1; min-width:160px; }
.vato-product.woocommerce div.product form.cart .variations { margin-bottom:18px; }
.vato-product.woocommerce div.product form.cart .variations :where(th,td) { padding:8px 0; vertical-align:middle; }
.vato-product.woocommerce div.product form.cart .variations label { margin-right:16px; }
.vato-product.woocommerce div.product form.cart .variations select { width:100%; min-height:46px; border-radius:8px; border:1px solid #bfc2c5; padding:10px; }
.vato-product .reset_variations { font-size:12px; color:var(--muted); text-decoration:underline; }
.vato-product .product_meta { border-top:1px solid var(--vato-border); margin-top:24px; padding-top:18px; font-size:12px; color:var(--muted); }
.vato-product .product_meta>span { display:block; margin:4px 0; }
.vato-product.woocommerce div.product :where(.woocommerce-tabs,.related,.upsells) { grid-column:1/-1; width:100%; min-width:0; }
.vato-product.woocommerce div.product .woocommerce-tabs { background:#fff; border:1px solid var(--vato-border); padding:24px; border-radius:var(--vato-radius); }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs { padding:0; margin:0 0 24px; display:flex; flex-wrap:wrap; gap:8px; }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display:none; }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; border-radius:7px; background:#f4f4f4; }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding:12px 18px; font-size:13px; }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background:var(--ink); color:#fff; }
.vato-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color:#fff; }
.vato-product.woocommerce div.product .woocommerce-tabs .panel { margin:0; line-height:1.8; }
.vato-product.woocommerce :where(.related,.upsells) ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:20px 0 0; padding:0; }
.vato-product.woocommerce :where(.related,.upsells) ul.products::before,
.vato-product.woocommerce :where(.related,.upsells) ul.products::after { display:none; }
.vato-product.woocommerce :where(.related,.upsells) ul.products li.product { display:flex; flex-direction:column; width:auto; float:none; margin:0; padding:18px; border:1px solid var(--vato-border); border-radius:12px; background:#fff; }
.vato-product.woocommerce :where(.related,.upsells) ul.products li.product .price { font-size:22px; }
.vato-product.woocommerce :where(.related,.upsells) ul.products li.product h2 { font-size:14px; letter-spacing:0; line-height:1.5; }
.vato-product.woocommerce :where(.related,.upsells) ul.products li.product img { aspect-ratio:1; object-fit:contain; }
.vato-product.woocommerce :where(.related,.upsells) ul.products li.product .button { margin-top:auto; }

/* Shop/category grids share the same card language without touching search. */
.vato-commerce.woocommerce.archive:not(.search) ul.products {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}
.vato-commerce.woocommerce.archive:not(.search) ul.products::before,
.vato-commerce.woocommerce.archive:not(.search) ul.products::after { display:none; }
.vato-commerce.woocommerce.archive:not(.search) ul.products li.product {
  float:none; width:auto; margin:0; padding:18px;
  background:#fff; border:1px solid var(--vato-border); border-radius:12px;
  display:flex; flex-direction:column;
}
.vato-commerce.woocommerce.archive:not(.search) ul.products li.product img { aspect-ratio:1; object-fit:contain; }
.vato-commerce.woocommerce.archive:not(.search) ul.products li.product h2 { font-size:15px; line-height:1.5; letter-spacing:0; }
.vato-commerce.woocommerce.archive:not(.search) ul.products li.product .price { color:var(--accent); font-size:23px; margin-bottom:18px; }
.vato-commerce.woocommerce.archive:not(.search) ul.products li.product .button { margin-top:auto; }

/* Classic cart. Keep update/remove/coupon controls and native responsive data-title. */
.vato-cart .woocommerce-cart-form { min-width:0; }
.vato-cart .woocommerce table.cart td.product-thumbnail { width:110px; }
.vato-cart .woocommerce table.cart img { width:76px; border-radius:8px; }
.vato-cart .woocommerce .remove { display:inline-grid; place-items:center; width:32px; height:32px; border:0; border-radius:50%; color:#9f1721; background:#fff0f0; font-size:22px; }
.vato-cart .woocommerce .remove:hover { color:#fff; background:var(--accent); }
.vato-cart .woocommerce table.cart td.actions { background:#fafafa; }
.vato-cart .woocommerce table.cart td.actions .coupon .input-text { width:180px; min-height:46px; }
.vato-cart .woocommerce .cart-collaterals { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:24px; margin-top:28px; }
.vato-cart .woocommerce .cart-collaterals .cart_totals { float:none; width:min(100%,460px); padding:28px; border:1px solid var(--vato-border); border-radius:var(--vato-radius); background:white; }
.vato-cart .woocommerce .cart-collaterals .cross-sells { float:none; flex:1; min-width:0; }
.vato-cart .woocommerce .cart_totals h2 { margin-bottom:22px; }
.vato-cart .woocommerce .cart_totals table { border:0; }
.vato-cart .woocommerce .wc-proceed-to-checkout { padding:16px 0 0; }
.vato-cart .woocommerce .wc-proceed-to-checkout a.checkout-button { display:block; text-align:center; font-size:16px; margin:0; }
.vato-cart .woocommerce :where(.cart-empty,.return-to-shop) { padding:28px; background:white; border-radius:12px; }
.vato-cart .woocommerce .cart-empty { font-size:20px; }
.vato-cart .woocommerce .return-to-shop { margin-top:16px; text-align:center; }

/* Classic checkout. Grid uses native IDs; optional plugin content spans full width. */
.vato-checkout .woocommerce form.checkout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,1fr); grid-template-rows:auto min-content 1fr; gap:24px 32px; align-items:start; }
.vato-checkout .woocommerce form.checkout>* { grid-column:1/-1; }
.vato-checkout .woocommerce form.checkout>.woocommerce-NoticeGroup-checkout { grid-column:1/-1; grid-row:1; }
.vato-checkout .woocommerce form.checkout #customer_details { grid-column:1; grid-row:2 / span 2; width:100%; }
.vato-checkout .woocommerce form.checkout #order_review_heading { grid-column:2; grid-row:2; margin:0; font-size:23px; }
.vato-checkout .woocommerce form.checkout #order_review { grid-column:2; grid-row:3; min-width:0; }
.vato-checkout .woocommerce #customer_details :where(.col-1,.col-2) { float:none; width:100%; }
.vato-checkout .woocommerce :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields) { padding:26px; border:1px solid var(--vato-border); border-radius:var(--vato-radius); background:#fff; margin-bottom:24px; }
.vato-checkout .woocommerce .woocommerce-shipping-fields:empty { display:none; }
.vato-checkout .woocommerce #payment { background:#fff; border:1px solid var(--vato-border); border-radius:var(--vato-radius); }
.vato-checkout .woocommerce #payment ul.payment_methods { padding:20px; border-bottom:1px solid var(--vato-border); }
.vato-checkout .woocommerce #payment ul.payment_methods li { padding:10px 0; }
.vato-checkout .woocommerce #payment div.payment_box { background:#f6f6f6; border-radius:8px; color:var(--muted); font-size:13px; }
.vato-checkout .woocommerce #payment div.payment_box::before { border-bottom-color:#f6f6f6; }
.vato-checkout .woocommerce #payment div.form-row { padding:20px; }
.vato-checkout .woocommerce #place_order { float:none; width:100%; margin-top:16px; font-size:16px; }
.vato-checkout .woocommerce :where(.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper) { font-size:12px; color:var(--muted); }
.vato-checkout .woocommerce ul#shipping_method li { padding:7px 0; }
.vato-checkout .woocommerce :where(.woocommerce-order,.woocommerce-order-pay) { padding:28px; background:white; border:1px solid var(--vato-border); border-radius:var(--vato-radius); }
.vato-checkout .site-footer { margin-top:24px; }
.vato-checkout-header>.container { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:14px; }
.vato-checkout-header .brand img { width:82px; height:82px; }
.vato-checkout-header span { color:var(--muted); font-size:13px; }
.vato-back-to-cart { font-size:13px; font-weight:600; }
.vato-back-to-cart:hover { color:var(--accent); }

/* Cart and checkout blocks: styling only, retaining their own layouts and controls. */
.vato-commerce :where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) { --wc-form-color-text:var(--ink); --wc-form-color-background:#fff; --wc-form-border-radius:8px; }
.vato-commerce .wc-block-components-main { min-width:0; }
.vato-commerce .wc-block-components-sidebar {
  padding:24px;
  background:#fff;
  border:1px solid var(--vato-border);
  border-radius:var(--vato-radius);
  box-shadow:var(--vato-shadow);
}
.vato-commerce .wc-block-cart-items { border:1px solid var(--vato-border); border-radius:12px; background:#fff; }
.vato-commerce .wc-block-cart-items :where(th,td) { padding:18px; }
.vato-commerce .wc-block-components-product-name { color:var(--ink); font-weight:600; text-decoration:none; }
.vato-commerce .wc-block-components-product-price { font-weight:700; }
.vato-commerce .wc-block-components-quantity-selector { border-radius:8px; border-color:#bfc2c5; min-height:42px; }
.vato-commerce .wc-block-components-totals-footer-item { border-top:1px solid var(--vato-border); margin-top:16px; padding-top:20px; font-weight:700; font-size:21px; }
.vato-commerce .wc-block-components-checkout-step { padding:24px; margin-bottom:20px; background:white; border:1px solid var(--vato-border); border-radius:var(--vato-radius); }
.vato-commerce .wc-block-components-checkout-step__heading { margin-bottom:20px; }
.vato-commerce .wc-block-components-checkout-step__title { color:var(--ink); font-weight:700; }
.vato-commerce .wc-block-components-radio-control { border-color:var(--vato-border); border-radius:8px; }
.vato-commerce .wc-block-components-radio-control__option { border-radius:8px; }
.vato-commerce .wc-block-components-radio-control__option-checked { background:#fff5f5; }
.vato-commerce .wc-block-components-validation-error { color:#b5121b; }
.vato-commerce .wc-block-components-checkout-place-order-button,.vato-commerce .wc-block-cart__submit-button { width:100%; }
.vato-commerce .wc-block-cart__empty-cart__title { font-size:28px; letter-spacing:-.8px; }

@media(max-width:1000px) {
  .vato-commerce.woocommerce.archive:not(.search) ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .vato-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns:200px minmax(0,1fr); gap:20px; }
  .vato-account .woocommerce-MyAccount-content { padding:22px; }
  .vato-product.woocommerce div.product { gap:24px; }
  .vato-product.woocommerce div.product div.summary { padding:22px; }
  .vato-checkout .woocommerce form.checkout { grid-template-columns:1fr; grid-template-rows:none; }
  .vato-checkout .woocommerce form.checkout :where(#customer_details,#order_review_heading,#order_review) { grid-column:1; grid-row:auto; }
}
@media(max-width:700px) {
  .vato-commerce.woocommerce.archive:not(.search) ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .vato-commerce.woocommerce.archive:not(.search) ul.products li.product { padding:12px; }
  .vato-account-shortcuts { grid-template-columns:1fr; }
  .vato-checkout-header span { display:none; }
  .vato-commerce .content-page { padding-block:24px; }
  .vato-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns:1fr; gap:20px; }
  .vato-account .woocommerce-MyAccount-navigation ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vato-account .woocommerce-MyAccount-navigation a { font-size:12px; padding:12px 10px; gap:8px; }
  .vato-account .woocommerce-MyAccount-content { padding:18px; overflow-x:auto; }
  .vato-account .woocommerce .col2-set { grid-template-columns:1fr; }
  .vato-account .woocommerce :where(form.login,form.register,form.lost_reset_password) { padding:20px; }
  .vato-commerce .woocommerce form :where(.form-row-first,.form-row-last) { float:none; width:100%; }
  .vato-commerce .woocommerce :where(input.input-text,textarea,select),.vato-commerce .wc-block-components-form input { font-size:16px; }
  .vato-product.woocommerce div.product { grid-template-columns:1fr; gap:20px; }
  .vato-product.woocommerce div.product div.images { padding:12px; }
  .vato-product.woocommerce div.product div.summary { padding:20px; }
  .vato-product.woocommerce div.product .woocommerce-tabs { padding:18px; }
  .vato-product.woocommerce :where(.related,.upsells) ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .vato-product.woocommerce :where(.related,.upsells) ul.products li.product { padding:12px; }
  .vato-product.woocommerce :where(.related,.upsells) ul.products li.product .button { padding:10px; font-size:12px; }
  .vato-cart .woocommerce table.shop_table td { padding:14px; }
  .vato-cart .woocommerce table.cart td.product-thumbnail { display:block; width:100%; text-align:center; }
  .vato-cart .woocommerce table.cart td.product-thumbnail::before { display:none; }
  .vato-cart .woocommerce table.cart img { margin-inline:auto; width:80px; }
  .vato-cart .woocommerce table.cart td.actions .coupon { display:flex; flex-wrap:wrap; gap:8px; float:none; margin-bottom:12px; }
  .vato-cart .woocommerce table.cart td.actions .coupon .input-text { flex:1; width:100%; min-width:130px; }
  .vato-cart .woocommerce .cart-collaterals { display:block; }
  .vato-cart .woocommerce .cart-collaterals .cart_totals { padding:20px; width:100%; }
  .vato-checkout .woocommerce :where(.woocommerce-billing-fields,.woocommerce-shipping-fields,.woocommerce-additional-fields) { padding:20px; }
  .vato-commerce .wc-block-components-sidebar,.vato-commerce .wc-block-components-checkout-step { padding:18px; }
}
@media(prefers-reduced-motion:reduce) { .vato-commerce * { scroll-behavior:auto; } }
