/* Store screens in the Doraré grammar: marfil ground, cacao ink, square controls, thin gold lines */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.cordobas { display: block; font-size: 0.8125rem; color: var(--tinta-suave); }
.gratis { color: var(--tinta-suave); }
.price ins { text-decoration: none; }
.price del { color: var(--tinta-suave); }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notices-wrapper > ul {
  list-style: none; margin: 0 0 1.5rem; padding: 1rem 1.1rem; background: var(--arena); border-top: 1px solid var(--champan);
  display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; justify-content: space-between; align-items: center; font-size: 0.9375rem;
}
.woocommerce-error { border-top-color: #8a2f1f; display: grid; justify-content: stretch; }
.woocommerce-error li { list-style: none; }
.woocommerce-message .button, .woocommerce-info .button {
  display: inline-flex; align-items: center; min-height: 2.75rem; padding: 0 1rem;
  background: var(--cacao); color: var(--marfil); text-decoration: none; order: 2;
}
.woocommerce-notices-wrapper:empty { display: none; }

/* Shared form controls */
.woocommerce form .input-text, .woocommerce form select, .woocommerce form textarea, .qty {
  font: inherit; color: var(--cacao); background: var(--blanco); border: 1px solid var(--dorado-claro); border-radius: 0;
  min-height: 3rem; padding: 0.6rem 0.8rem; width: 100%;
  transition: border-color 0.2s var(--ease-out);
}
.woocommerce form .input-text:hover, .woocommerce form select:hover { border-color: var(--champan); }
.woocommerce form .input-text:focus, .woocommerce form textarea:focus { outline: 2px solid var(--cacao); outline-offset: 0; border-color: var(--cacao); }
.woocommerce form textarea { min-height: 5.5rem; resize: vertical; }
::placeholder { color: var(--tinta-suave); opacity: 0.85; }
.select2-container .select2-selection--single {
  height: 3rem !important; border-radius: 0 !important; border: 1px solid var(--dorado-claro) !important; background: var(--blanco) !important;
  display: flex !important; align-items: center;
}
.select2-container .select2-selection__rendered { color: var(--cacao) !important; padding-left: 0.8rem !important; line-height: 3rem !important; }
.select2-container .select2-selection__arrow { height: 3rem !important; right: 0.4rem !important; }
.select2-dropdown { border-radius: 0 !important; border-color: var(--dorado-claro) !important; background: var(--blanco); font-family: var(--font-texto); }
.select2-results__option--highlighted { background: var(--cacao) !important; color: var(--marfil) !important; }
.select2-search__field { border: 1px solid var(--dorado-claro) !important; border-radius: 0; min-height: 2.5rem; }

/* Shop and collections */
.tienda { max-width: var(--max); margin: 0 auto; padding: clamp(1.75rem, 5vw, 3rem) var(--gutter) clamp(3rem, 8vw, 5rem); }
.tienda__head { margin-bottom: clamp(1.25rem, 3vw, 2rem); }
.tienda__titulo { font-family: var(--font-texto); font-weight: 400; font-size: clamp(2rem, 6vw, 2.75rem); letter-spacing: -0.01em; }
.tienda__intro { max-width: 36rem; margin-top: 0.5rem; color: var(--tinta-suave); }
.tienda__barra {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0 1.5rem;
  margin-top: 0.75rem; border-bottom: 1px solid rgb(184 147 90 / 0.4);
}
.tienda__colecciones ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0 1.5rem; }
.tienda__colecciones a {
  display: inline-flex; align-items: center; min-height: 2.75rem; text-decoration: none; color: var(--tinta-suave);
  font-size: 0.9375rem; transition: color 0.2s var(--ease-out);
}
.tienda__colecciones a:hover { color: var(--cacao); }
.tienda__colecciones a[aria-current="page"] { color: var(--cacao); box-shadow: inset 0 -1px 0 var(--cacao); }
.tienda__cuenta { font-size: 0.8125rem; color: var(--tinta-suave); }
.tienda__vacia { display: grid; gap: 1.25rem; justify-items: start; padding: 2rem 0; }
.woocommerce-pagination ul { display: flex; gap: 0.5rem; list-style: none; padding: 0; margin: 2.5rem 0 0; }
.woocommerce-pagination a, .woocommerce-pagination span { display: grid; place-items: center; min-width: 2.75rem; height: 2.75rem; border: 1px solid var(--dorado-claro); text-decoration: none; }
.woocommerce-pagination .current { background: var(--cacao); color: var(--marfil); border-color: var(--cacao); }

/* Product page */
.pieza-wrap { max-width: var(--max); margin: 0 auto; padding: 0 var(--gutter) clamp(3rem, 8vw, 5rem); }
.pieza-wrap > .woocommerce-notices-wrapper { padding-top: 1rem; }
.pieza__galeria { margin: 0 calc(-1 * var(--gutter)); }
.pieza__fotos {
  display: flex; list-style: none; margin: 0; padding: 0;
  overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none;
}
.pieza__fotos::-webkit-scrollbar { display: none; }
.pieza__fotos li { flex: 0 0 100%; scroll-snap-align: start; background: var(--arena); }
.pieza__fotos img { width: 100%; aspect-ratio: 660 / 731; object-fit: cover; }
.pieza__puntos { display: flex; justify-content: center; padding: 0.25rem 0; }
.pieza__puntos button { width: 2.75rem; height: 2.25rem; padding: 0; border: 0; background: none; cursor: pointer; display: grid; place-items: center; }
.pieza__puntos button::before {
  content: ""; width: 0.375rem; height: 0.375rem; background: var(--dorado-claro);
  transition: background-color 0.3s var(--ease-out), transform 0.3s var(--ease-out);
}
.pieza__puntos button[aria-current="true"]::before { background: var(--cacao); transform: scale(1.25); }

.pieza__resumen { display: flex; flex-direction: column; padding-top: 1rem; }
.pieza__nombre { font-family: var(--font-texto); font-weight: 400; font-size: clamp(1.625rem, 5vw, 2.25rem); line-height: 1.15; letter-spacing: -0.01em; }
.pieza__material { margin-top: 0.4rem; font-size: 0.875rem; color: var(--tinta-suave); letter-spacing: 0.02em; }
.pieza__precio { margin-top: 1rem; font-size: 1.25rem; line-height: 1.3; }
.pieza__precio .cordobas { font-size: 0.875rem; margin-top: 0.1rem; }
.pieza__form { display: flex; flex-direction: column; }
.pieza__color-unico, .pieza__ultima { margin-top: 1.25rem; font-size: 0.9375rem; }
.pieza__ultima { font-weight: 500; }

.colores { border: 0; margin: 1.5rem 0 0; padding: 0; min-width: 0; }
.colores legend { padding: 0; margin-bottom: 0.75rem; font-size: 0.9375rem; }
.colores__lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(5.5rem, 1fr)); gap: 0.5rem; }
.color {
  position: relative; display: flex; flex-direction: column; gap: 0.35rem; padding: 0.35rem 0.35rem 0.5rem;
  border: 1px solid transparent; cursor: pointer; transition: border-color 0.2s var(--ease-out);
}
.color input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.color:hover { border-color: var(--dorado-claro); }
.color:has(input:checked) { border-color: var(--cacao); }
.color:has(input:focus-visible) { outline: 2px solid var(--cacao); outline-offset: 2px; }
.color__foto { display: block; background: var(--arena); }
.color__foto img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.color__nombre { font-size: 0.8125rem; line-height: 1.25; }
.color__nota { font-size: 0.75rem; line-height: 1.2; color: var(--tinta-suave); }
.color__nota--ultima { color: var(--cacao); font-weight: 500; }
.color.is-agotado { cursor: not-allowed; }
.color.is-agotado:hover { border-color: transparent; }
.color.is-agotado .color__foto { opacity: 0.45; }
.color.is-agotado .color__nombre { text-decoration: line-through; color: var(--tinta-suave); }
.color.is-agotado input { cursor: not-allowed; }
.colores__pide { margin-top: 0.75rem; font-size: 0.875rem; color: #8a2f1f; }

.pieza__add { width: 100%; min-height: 3.5rem; margin-top: 1.25rem; font-size: 1.0625rem; }
.pieza__add svg { width: 1.2rem; height: 1.2rem; }
.pieza__add[aria-disabled="true"] { background: transparent; color: var(--cacao); border-color: var(--cacao); }
.pieza__add[aria-disabled="true"]:hover { background: var(--arena); }
.pieza__add[disabled] { background: var(--arena); color: var(--tinta-suave); border-color: var(--arena); cursor: not-allowed; }
.pieza__add.is-loading { opacity: 0.75; cursor: progress; }

.pieza__promesas {
  list-style: none; margin: 1.75rem 0 0; padding: 1.1rem 0; display: grid; gap: 0.7rem;
  border-top: 1px solid rgb(184 147 90 / 0.4); border-bottom: 1px solid rgb(184 147 90 / 0.4); font-size: 0.9375rem;
}
.pieza__promesas li { display: flex; align-items: center; gap: 0.75rem; }
.pieza__promesas svg { width: 1.3rem; height: 1.3rem; color: var(--champan); flex: none; }

.plegable { border-bottom: 1px solid rgb(184 147 90 / 0.4); }
.plegable summary {
  list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  min-height: 3.25rem; cursor: pointer; font-size: 0.9375rem; font-weight: 500;
}
.plegable summary::-webkit-details-marker { display: none; }
.plegable summary svg { width: 1.1rem; height: 1.1rem; flex: none; }
.plegable summary .mas-v { transition: transform 0.3s var(--ease-out); transform-origin: center; }
.plegable[open] summary .mas-v { transform: scaleY(0); }
.plegable__texto { padding: 0 0 1.25rem; font-size: 0.9375rem; color: var(--tinta-suave); max-width: 60ch; }
.plegable__texto > * + * { margin-top: 0.6em; }
.plegable__texto ul { margin: 0; padding-left: 1.1rem; }
.plegable__texto li + li { margin-top: 0.3em; }

.mas { margin-top: clamp(3rem, 8vw, 5rem); padding-top: clamp(2rem, 5vw, 3rem); border-top: 1px solid rgb(184 147 90 / 0.4); }
.mas h2 { font-family: var(--font-texto); font-weight: 400; font-size: clamp(1.5rem, 4vw, 2rem); letter-spacing: -0.01em; margin-bottom: 1.25rem; }

/* The bar that follows the buyer down a product page on phones */
.pieza-barra {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 45;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 0.65rem var(--gutter) calc(0.65rem + env(safe-area-inset-bottom));
  background: var(--cacao); color: var(--marfil); border-top: var(--hairline);
  transform: translateY(100%); transition: transform 0.45s var(--ease-out);
}
.pieza-barra[data-visible] { transform: none; }
.pieza-barra__datos { display: grid; min-width: 0; }
.pieza-barra__nombre { font-size: 0.875rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--crema); }
.pieza-barra__precio { font-size: 1rem; }
.pieza-barra .btn { flex: none; min-height: 3rem; padding: 0 1.25rem; }
.pieza-barra .btn[aria-disabled="true"] { background: transparent; color: var(--marfil); border-color: var(--marfil); }

/* Bag panel, from the right */
.bolsa { position: fixed; inset: 0; z-index: 60; visibility: hidden; transition: visibility 0s linear 0.45s; }
.bolsa[data-open] { visibility: visible; transition: none; }
.bolsa__scrim { position: absolute; inset: 0; background: rgb(46 33 27 / 0.45); opacity: 0; transition: opacity 0.3s var(--ease-out); }
.bolsa[data-open] .bolsa__scrim { opacity: 1; }
.bolsa__panel {
  position: absolute; top: 0; right: 0; bottom: 0; width: min(26rem, 92vw);
  background: var(--marfil); color: var(--cacao); display: flex; flex-direction: column;
  transform: translateX(100%); transition: transform 0.45s var(--ease-out);
}
.bolsa[data-open] .bolsa__panel { transform: none; }
.bolsa__head {
  display: flex; align-items: center; justify-content: space-between;
  min-height: var(--header-h); padding: 0 0.25rem 0 var(--gutter); background: var(--cacao); color: var(--marfil); border-bottom: var(--hairline);
}
.bolsa__head h2 { font-family: var(--font-texto); font-weight: 400; font-size: 1.125rem; }
.bolsa__head h2:focus { outline: none; }
.bolsa__head h2:focus-visible { outline: 2px solid var(--champan); outline-offset: 3px; }
.bolsa__body { flex: 1; display: flex; flex-direction: column; min-height: 0; }
.bolsa__lista { flex: 1; overflow-y: auto; overscroll-behavior: contain; list-style: none; margin: 0; padding: 0 var(--gutter); }
.bolsa__vacia { padding: 2rem var(--gutter); display: grid; gap: 1.25rem; justify-items: start; }
.bolsa__pie {
  display: grid; gap: 0.75rem; padding: 1.25rem var(--gutter) calc(1.25rem + env(safe-area-inset-bottom));
  border-top: var(--hairline); background: var(--marfil);
}
.bolsa__pie .btn, .bolsa-pagina__total .btn { width: 100%; min-height: 3.25rem; }
.bolsa__subtotal { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; font-size: 1.0625rem; }
.bolsa__subtotal > span:last-child { text-align: right; }
.bolsa__nota { font-size: 0.8125rem; color: var(--tinta-suave); }
.bolsa__seguir {
  justify-self: center; min-height: 2.75rem; padding: 0 0.5rem; border: 0; background: none; cursor: pointer;
  font: inherit; font-size: 0.9375rem; color: var(--cacao); text-decoration: underline; text-underline-offset: 0.2em; text-decoration-thickness: 1px;
  display: inline-flex; align-items: center;
}

/* A line in the bag (panel and page) */
.linea {
  display: grid; grid-template-columns: 4.5rem minmax(0, 1fr) auto; gap: 0 1rem; align-items: start;
  padding: 1.1rem 0; border-bottom: 1px solid rgb(184 147 90 / 0.4);
}
.linea:last-child { border-bottom: 0; }
.linea__foto { display: block; background: var(--arena); }
.linea__foto img { width: 100%; aspect-ratio: 660 / 731; object-fit: cover; }
.linea__datos { display: flex; flex-direction: column; align-items: flex-start; gap: 0.15rem; min-width: 0; }
.linea__nombre { font-size: 0.9375rem; line-height: 1.3; text-decoration: none; }
.linea__nombre:hover { text-decoration: underline; }
.linea__color { font-size: 0.8125rem; color: var(--tinta-suave); }
.linea__quitar {
  min-height: 2.75rem; padding: 0; border: 0; background: none; cursor: pointer; font: inherit; font-size: 0.8125rem;
  color: var(--tinta-suave); text-decoration: underline; text-underline-offset: 0.2em; text-decoration-thickness: 1px;
  display: inline-flex; align-items: center;
}
.linea__quitar:hover { color: var(--cacao); }
.linea__precio { font-size: 0.9375rem; text-align: right; }

/* Bag page and checkout page */
.page-wrap--woo { max-width: var(--max); }
.page-wrap--woo .page-title { font-family: var(--font-texto); font-weight: 400; font-size: clamp(1.9rem, 5vw, 2.5rem); letter-spacing: -0.01em; }
.bolsa-pagina { display: grid; gap: 2rem; }
.lineas { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgb(184 147 90 / 0.4); }
.lineas .linea:last-child { border-bottom: 1px solid rgb(184 147 90 / 0.4); }
.linea__cantidad { display: flex; align-items: center; gap: 1rem; margin-top: 0.5rem; }
.linea__cantidad .qty { width: 4.25rem; min-height: 2.75rem; text-align: center; padding: 0.25rem; }
.bolsa-pagina__acciones { margin-top: 1.25rem; }
.bolsa-pagina__acciones .btn[disabled] { opacity: 0.45; cursor: not-allowed; }
.bolsa-pagina__total { display: grid; gap: 0.75rem; align-content: start; padding: 1.5rem; background: var(--arena); }
.bolsa-pagina__vacia { display: grid; gap: 1.25rem; justify-items: start; padding: 1rem 0 2rem; }

/* Checkout */
.woocommerce-checkout .woocommerce-form-coupon-toggle { display: none; }
form.checkout { display: grid; gap: 2rem; }
#customer_details h3, #order_review_heading {
  font-family: var(--font-texto); font-weight: 400; font-size: 1.375rem; letter-spacing: -0.01em; margin: 0 0 1rem;
}
.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 0.75rem; }
.form-row { margin: 0 0 1rem; display: grid; gap: 0.35rem; grid-column: 1 / -1; align-content: start; }
.form-row-first { grid-column: 1; }
.form-row-last { grid-column: 2; }
.form-row label { font-size: 0.875rem; }
.form-row .required { color: #8a2f1f; text-decoration: none; }
.form-row .optional { color: var(--tinta-suave); }
.form-row.woocommerce-invalid .input-text, .form-row.woocommerce-invalid .select2-selection { border-color: #8a2f1f !important; }
.checkout-inline-error-message, .form-row .woocommerce-error-message { font-size: 0.8125rem; color: #8a2f1f; margin: 0; }
.woocommerce-NoticeGroup .woocommerce-error { margin-bottom: 1.5rem; }
#ship-to-different-address { font-size: 1rem; font-family: var(--font-texto); margin: 1rem 0; }
#ship-to-different-address label, .regalo__casilla label {
  display: inline-flex; align-items: center; gap: 0.6rem; cursor: pointer; min-height: 2.75rem; font-size: 0.9375rem;
}
.woocommerce form input[type="checkbox"], .woocommerce form input[type="radio"] { accent-color: var(--cacao); width: 1.1rem; height: 1.1rem; margin: 0; flex: none; }
.woocommerce-additional-fields { margin-top: 1rem; }
.regalo { margin-top: 0.5rem; padding: 1rem 1.1rem 0.25rem; border: 1px solid rgb(184 147 90 / 0.4); }
.regalo__casilla { margin-bottom: 0.25rem; }
.regalo:not(:has(input:checked)) .regalo__mensaje { display: none; }
.regalo__nota { font-size: 0.8125rem; color: var(--tinta-suave); margin: -0.5rem 0 1rem; }

#order_review { display: grid; gap: 1.5rem; }
.resumen { width: 100%; border-collapse: collapse; font-size: 0.9375rem; }
.resumen td, .resumen th { padding: 0.85rem 0; border-bottom: 1px solid rgb(184 147 90 / 0.4); text-align: left; vertical-align: top; font-weight: 400; }
.resumen td:last-child, .resumen th + td { text-align: right; }
.resumen .cart_item td { vertical-align: middle; }
.resumen__pieza { display: flex; gap: 0.85rem; align-items: center; }
.resumen__pieza img { width: 3.5rem; aspect-ratio: 1; object-fit: cover; flex: none; }
.resumen__datos { display: grid; gap: 0.1rem; }
.resumen__color { font-size: 0.8125rem; color: var(--tinta-suave); }
.resumen tr.woocommerce-shipping-totals { display: block; border-bottom: 1px solid rgb(184 147 90 / 0.4); padding: 0.85rem 0; }
.resumen tr.woocommerce-shipping-totals th, .resumen tr.woocommerce-shipping-totals td { display: block; padding: 0; border: 0; text-align: left; }
.resumen tr.woocommerce-shipping-totals th { margin-bottom: 0.6rem; }
.woocommerce-shipping-methods { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.5rem; }
.woocommerce-shipping-methods li { display: flex; align-items: flex-start; gap: 0.6rem; }
.woocommerce-shipping-methods li input { margin-top: 0.2rem; }
.woocommerce-shipping-methods label { cursor: pointer; }
.woocommerce-shipping-methods .cordobas { display: inline; margin-left: 0.4rem; }
.woocommerce-shipping-methods .cordobas::before { content: "("; }
.woocommerce-shipping-methods .cordobas::after { content: ")"; }
.woocommerce-shipping-destination, .woocommerce-shipping-contents { font-size: 0.8125rem; color: var(--tinta-suave); margin-top: 0.5rem; }
.resumen__aviso td { font-size: 0.875rem; color: var(--tinta-suave); text-align: left !important; }
.resumen .order-total th, .resumen .order-total td { font-size: 1.125rem; border-bottom: 0; padding-top: 1rem; }
.resumen .order-total .cordobas { font-size: 0.875rem; }

#payment { background: var(--arena); padding: 1.25rem; }
#payment ul.payment_methods { list-style: none; padding: 0; margin: 0 0 1.25rem; display: grid; gap: 0.25rem; }
#payment li.wc_payment_method > label { display: inline-flex; align-items: center; min-height: 2.75rem; cursor: pointer; margin-left: 0.6rem; font-size: 0.9375rem; }
#payment li.wc_payment_method { display: flex; flex-wrap: wrap; align-items: center; }
#payment .payment_box { flex-basis: 100%; padding: 0 0 0.5rem 1.7rem; font-size: 0.875rem; color: var(--tinta-suave); }
#payment .woocommerce-privacy-policy-text { font-size: 0.8125rem; color: var(--tinta-suave); margin-bottom: 1rem; }
#place_order {
  width: 100%; min-height: 3.5rem; background: var(--cacao); color: var(--marfil); border: 1px solid var(--cacao); border-radius: 0;
  font: 400 1.0625rem/1 var(--font-texto); cursor: pointer; transition: background-color 0.25s var(--ease-out);
}
#place_order:hover { background: var(--cacao-deep); }
.blockUI.blockOverlay { background: rgb(247 241 232 / 0.6) !important; }

/* Thank you */
.gracias { display: grid; gap: 2.5rem; max-width: 44rem; }
.gracias__estado { display: grid; gap: 0.75rem; justify-items: start; padding: clamp(1.25rem, 4vw, 2rem); background: var(--arena); border-top: 1px solid var(--champan); }
.gracias__numero { font-size: 0.875rem; color: var(--tinta-suave); }
.gracias__lead { font-size: 1.375rem; line-height: 1.25; }
.gracias__retiro { display: flex; align-items: center; gap: 0.6rem; }
.gracias__retiro svg { width: 1.3rem; height: 1.3rem; color: var(--champan); }
.gracias .btn { margin-top: 0.5rem; }
.gracias .btn svg { width: 1.25rem; height: 1.25rem; }
.woocommerce-bacs-bank-details { width: 100%; }
.wc-bacs-bank-details-heading { font-family: var(--font-texto); font-weight: 400; font-size: 1.125rem; margin: 0.5rem 0; }
.wc-bacs-bank-details-account-name { font-size: 1rem; font-weight: 500; margin: 0.75rem 0 0.25rem; }
.wc-bacs-bank-details { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.4rem; font-size: 0.9375rem; }
.wc-bacs-bank-details li { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem 0.5rem; }
.copiar {
  min-height: 2.25rem; padding: 0 0.75rem; border: 1px solid var(--cacao); background: transparent; color: var(--cacao);
  font: inherit; font-size: 0.8125rem; cursor: pointer;
}
.copiar:hover { background: var(--cacao); color: var(--marfil); }
.woocommerce-order-details, .woocommerce-customer-details { font-size: 0.9375rem; }
.page-wrap--woo .woocommerce-order-details__title, .page-wrap--woo .woocommerce-column__title, .page-wrap--woo .wc-bacs-bank-details-heading { font-family: var(--font-texto); font-weight: 400; font-size: 1.25rem; margin: 0 0 0.75rem; }
.woocommerce-table--order-details { width: 100%; border-collapse: collapse; }
.woocommerce-table--order-details th, .woocommerce-table--order-details td { padding: 0.75rem 0; border-bottom: 1px solid rgb(184 147 90 / 0.4); text-align: left; font-weight: 400; }
.woocommerce-table--order-details td:last-child, .woocommerce-table--order-details tfoot td { text-align: right; }
.woocommerce-customer-details address { font-style: normal; line-height: 1.6; }
.woocommerce-customer-details .woocommerce-columns { display: grid; gap: 1.5rem; }

@media (min-width: 48rem) {
  .bolsa-pagina { grid-template-columns: minmax(0, 1fr) 22rem; gap: 3rem; align-items: start; }
  .bolsa-pagina__total { position: sticky; top: calc(var(--header-h) + 1.5rem); }
  .woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 64rem) {
  .pieza { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(2.5rem, 5vw, 5rem); align-items: start; padding-top: 2rem; }
  .pieza__galeria { margin: 0; }
  .pieza__fotos { flex-direction: column; overflow: visible; gap: var(--gap-cards); scroll-snap-type: none; }
  .pieza__fotos li { flex: none; }
  .pieza__puntos { display: none; }
  .pieza__resumen { position: sticky; top: calc(var(--header-h) + 2rem); padding-top: 0; }
  .pieza-barra { display: none; }
  form.checkout { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); grid-template-rows: auto auto 1fr; gap: 0 clamp(2.5rem, 5vw, 4.5rem); align-items: start; }
  form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; grid-row: 1; }
  #customer_details { grid-column: 1; grid-row: 2 / span 2; }
  #order_review_heading { grid-column: 2; grid-row: 2; }
  #order_review { grid-column: 2; grid-row: 3; position: sticky; top: calc(var(--header-h) + 1.5rem); }
}
body.admin-bar .pieza__resumen { top: calc(var(--header-h) + 32px + 2rem); }
