/* ==========================================================================
   Gold Top — Visual Polish v1.0.0

   STATUS: scaffolded and visually inert. Plugin, enqueue, body class,
   WooCommerce template override filter, and the checkout template file all
   remain in place. This stylesheet holds only the design-token layer so
   the upcoming redesign has a ready foundation. No visual rules are active
   yet — the site renders with unmodified Astra + WooCommerce defaults.
   ========================================================================== */

/* --- 1. Design tokens -------------------------------------------------- */
:root {
	/* Brand — sourced from Astra's --ast-global-color-0. Do NOT invent
	   beige/gold accents; they don't belong to this site's palette. */
	--gt-accent:         #f35b04;
	--gt-accent-hover:   #c44a03;
	--gt-accent-soft:    rgba(243, 91, 4, 0.12);

	/* Surfaces */
	--gt-bg:             #FAFAF7;
	--gt-surface:        #FFFFFF;
	--gt-surface-alt:    #F5F4EE;

	/* Text */
	--gt-text:           #0F172A;
	--gt-text-muted:     #64748B;
	--gt-text-soft:      #94A3B8;

	/* Borders */
	--gt-border:         #E2E8F0;
	--gt-border-strong:  #CBD5E1;

	/* Status */
	--gt-success:        #059669;
	--gt-danger:         #DC2626;

	/* Radii */
	--gt-radius-sm:      6px;
	--gt-radius-md:      10px;
	--gt-radius-lg:      14px;
	--gt-radius-xl:      20px;
	--gt-radius-pill:    999px;

	/* Shadows */
	--gt-shadow-xs:      0 1px 2px rgba(15,23,42,.05);
	--gt-shadow-sm:      0 1px 3px rgba(15,23,42,.06), 0 1px 2px rgba(15,23,42,.04);
	--gt-shadow-md:      0 4px 12px rgba(15,23,42,.08), 0 2px 4px rgba(15,23,42,.05);
	--gt-shadow-lg:      0 10px 24px rgba(15,23,42,.10), 0 4px 8px rgba(15,23,42,.06);
	--gt-shadow-xl:      0 20px 40px rgba(15,23,42,.12), 0 8px 16px rgba(15,23,42,.08);

	/* Motion */
	--gt-ease:           cubic-bezier(.2, .6, .2, 1);
	--gt-dur-fast:       140ms;
	--gt-dur-base:       220ms;
}

/* --- 2. Base & typography --------------------------------------------- */
/* Intentionally empty: theme defaults preserved. */

/* --- 3. Buttons -------------------------------------------------------- */
/* Intentionally empty: theme defaults preserved. */

/* --- 4. Forms ---------------------------------------------------------- */
/* Intentionally empty: theme defaults preserved. */

/* --- 5. Product cards (shop loop) ------------------------------------- */

/* Home page only: cards in each grid row render at equal heights, with the
   add-to-cart button anchored at the bottom of every card.
   Why: Astra nests the summary inside .astra-shop-summary-wrap, so we need
   three flex-column containers (li → summary-wrap → button with margin-top:auto)
   for the button to settle at the bottom regardless of title/price line count. */
.has-goldtop-polish.home ul.products > li.product {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	height: 100%;
}

.has-goldtop-polish.home ul.products > li.product > .astra-shop-summary-wrap {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.has-goldtop-polish.home ul.products > li.product > .astra-shop-summary-wrap > a.button {
	margin-top: auto;
	text-align: center;
}

/* --- 6. Single product page ------------------------------------------- */
/* Related-products and upsells grid at the bottom: same equal-height
   cards + bottom-anchored centered CTA as the homepage product grid.
   On a single-product page, the only ul.products listings are these
   "related" / "upsells" sections, so the broad selector is safe. */
.has-goldtop-polish.single-product ul.products > li.product {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	height: 100%;
}

.has-goldtop-polish.single-product ul.products > li.product > .astra-shop-summary-wrap {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.has-goldtop-polish.single-product ul.products > li.product > .astra-shop-summary-wrap > a.button {
	margin-top: auto;
	text-align: center;
	/* All related-product buttons ("Leer más", "Agregar al carrito",
	   etc.) locked to 67px height. flex-centering vertically aligns
	   text inside the fixed box. box-sizing:border-box ensures the
	   horizontal padding stays inside the 67px height envelope. */
	display: flex;
	align-items: center;
	justify-content: center;
	height: 67px;
	box-sizing: border-box;
	padding: 0 18px;
	line-height: 1.3;
}

/* Hide the "Ver carrito" link WC injects beside the add-to-cart button
   after an AJAX add on related-products cards. */
.has-goldtop-polish.single-product ul.products a.added_to_cart {
	display: none;
}

/* After click, .added-state button gets pushed down ~7px (WC pseudo /
   layout artefact). Compensate by shifting it back up the same amount. */
.has-goldtop-polish.single-product ul.products > li.product > .astra-shop-summary-wrap > a.button.added {
	position: relative;
	top: -7px;
}

/* --- 7. Checkout (body.woocommerce-checkout) ------------------------- */
/* Two-column grid on desktop: form on the left, sticky order-summary
   aside on the right. Uses site palette only (orange / black / white)
   — no peach, no grays. Complements the template override at
   templates/woocommerce/checkout/form-checkout.php. */

.has-goldtop-polish.woocommerce-checkout .entry-content {
	padding: 2em 3em;
}

/* Heading */
.has-goldtop-polish.woocommerce-checkout .entry-title,
.has-goldtop-polish.woocommerce-checkout h1.page-title {
	text-align: center;
	font-size: 2.2em;
	font-weight: 700;
	letter-spacing: -0.015em;
	color: #000;
	margin: 0 0 0.4em;
	padding-top: 0.8em;
}

.has-goldtop-polish.woocommerce-checkout .entry-title::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background: var(--gt-accent);
	margin: 0.5em auto 2em;
}

/* Two-column grid. Aside on the right collapses below on narrow screens. */
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2em;
}

@media (min-width: 980px) {
	.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__grid {
		grid-template-columns: 2fr 3fr; /* 40% details, 60% review */
		gap: 3em;
		align-items: start;
	}
}

/* Billing / shipping column: width is controlled by the 40/60 grid
   ratio on .goldtop-checkout__grid — no pixel cap here. */
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__details {
	width: 100%;
	min-width: 0;
}

/* Billing / shipping column: section headings as uppercase tracked labels. */
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__details h3 {
	font-size: 1em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
	margin: 0 0 1em;
	padding-bottom: 0.7em;
	border-bottom: 1px solid #000;
}

.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__details .woocommerce-billing-fields,
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__details .woocommerce-shipping-fields,
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__details .woocommerce-additional-fields {
	margin-bottom: 2em;
}

/* Customer details: 100% width of the details column (which is already
   constrained to 40% of the page via the parent grid). Billing and
   shipping stack vertically inside — side-by-side would leave each
   half too narrow for a form at this container size. */
.has-goldtop-polish.woocommerce-checkout #customer_details {
	width: 100%;
}

.has-goldtop-polish.woocommerce-checkout #customer_details .col-1,
.has-goldtop-polish.woocommerce-checkout #customer_details .col-2 {
	width: 100%;
	float: none;
	margin-bottom: 2em;
}

.has-goldtop-polish.woocommerce-checkout #customer_details .col-2:last-child {
	margin-bottom: 0;
}

/* Form rows: plain block layout so label and input stack naturally,
   no flex-column-vs-flex-row conflict when overrides kick in. */
.has-goldtop-polish.woocommerce-checkout .form-row {
	margin: 0 0 1em;
	padding: 0;
}

/* First/last pair: floated 50/50 on wider widths. Matches WC's own
   default idiom, which avoids inline-block whitespace issues. */
@media (min-width: 560px) {
	.has-goldtop-polish.woocommerce-checkout .woocommerce-billing-fields .form-row-first,
	.has-goldtop-polish.woocommerce-checkout .woocommerce-shipping-fields .form-row-first {
		float: left;
		width: calc(50% - 8px);
		margin-right: 16px;
	}
	.has-goldtop-polish.woocommerce-checkout .woocommerce-billing-fields .form-row-last,
	.has-goldtop-polish.woocommerce-checkout .woocommerce-shipping-fields .form-row-last {
		float: right;
		width: calc(50% - 8px);
		margin-right: 0;
	}
	/* Wide rows below the pair must clear the floats, otherwise they'd
	   wrap up beside them instead of stacking cleanly. */
	.has-goldtop-polish.woocommerce-checkout .form-row-wide {
		clear: both;
	}
	/* And a clearfix on the fields wrappers closes any trailing floats. */
	.has-goldtop-polish.woocommerce-checkout .woocommerce-billing-fields::after,
	.has-goldtop-polish.woocommerce-checkout .woocommerce-shipping-fields::after {
		content: "";
		display: table;
		clear: both;
	}
}

/* Field labels: always block so they sit above the input, not beside. */
.has-goldtop-polish.woocommerce-checkout .form-row > label {
	display: block;
	font-size: 0.88em;
	font-weight: 500;
	color: #000;
	margin-bottom: 6px;
}

.has-goldtop-polish.woocommerce-checkout .form-row .required {
	color: var(--gt-accent);
	text-decoration: none;
}

.has-goldtop-polish.woocommerce-checkout .form-row .optional {
	color: #000;
	font-weight: 400;
	opacity: 0.6;
}

/* Inputs + selects */
.has-goldtop-polish.woocommerce-checkout .form-row input.input-text,
.has-goldtop-polish.woocommerce-checkout .form-row textarea,
.has-goldtop-polish.woocommerce-checkout .form-row select {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	background: #fff;
	color: #000;
	font-size: 1em;
	line-height: 1.4;
	transition: border-color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-checkout .form-row input.input-text:focus,
.has-goldtop-polish.woocommerce-checkout .form-row textarea:focus,
.has-goldtop-polish.woocommerce-checkout .form-row select:focus {
	outline: none;
	border-color: var(--gt-accent);
	border-width: 2px;
	padding: 9px 13px; /* compensate for thicker border */
}

/* Invalid fields */
.has-goldtop-polish.woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
.has-goldtop-polish.woocommerce-checkout .form-row.woocommerce-invalid select {
	border-color: var(--gt-accent);
	border-width: 2px;
}

/* Select2 (country + state widgets) to match native inputs */
.has-goldtop-polish.woocommerce-checkout .select2-container--default .select2-selection--single {
	height: auto;
	padding: 8px 10px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	background: #fff;
}

.has-goldtop-polish.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.4;
	padding-left: 4px;
	color: #000;
}

.has-goldtop-polish.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.has-goldtop-polish.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
	border-color: var(--gt-accent);
	border-width: 2px;
	padding: 7px 9px;
}

/* Textarea (order notes): a bit taller than default. */
.has-goldtop-polish.woocommerce-checkout .form-row textarea {
	min-height: 96px;
	resize: vertical;
}

/* Override WooCommerce's default width:48%; float:right on the order
   review section. WC ships those as .woocommerce form #order_review /
   #order_review_heading (specificity 0,2,2). We match with both class
   pairs (.woocommerce.woocommerce-checkout AND
   .woocommerce-page.woocommerce-checkout) plus .has-goldtop-polish to
   win on specificity (0,3,2 vs 0,2,2) and neutralise every width/float
   constraint so the review aside can fill its grid column. */
.has-goldtop-polish.woocommerce.woocommerce-checkout form #order_review,
.has-goldtop-polish.woocommerce.woocommerce-checkout form #order_review_heading,
.has-goldtop-polish.woocommerce-page.woocommerce-checkout form #order_review,
.has-goldtop-polish.woocommerce-page.woocommerce-checkout form #order_review_heading {
	width: 100%;
	max-width: none;
	float: none;
	clear: none;
	margin: 0;
	padding: 0;
	background: transparent;
}

/* Order review aside: bordered card, sticky on desktop. */
.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__review {
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-lg);
	padding: 24px 28px;
}

@media (min-width: 980px) {
	.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__review {
		position: sticky;
		top: 24px;
	}
}

.has-goldtop-polish.woocommerce-checkout .goldtop-checkout__review h3 {
	font-size: 1em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
	margin: 0 0 1em;
	padding-bottom: 0.7em;
	border-bottom: 1px solid #000;
}

/* Order review table */
.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table {
	border: none;
	border-collapse: separate;
	border-spacing: 0;
	background: transparent;
	margin: 0 0 1em;
	width: 100%;
}

.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
	padding: 10px 0;
	border: none;
	border-bottom: 1px solid #000;
	background: transparent;
	font-size: 0.95em;
	color: #000;
	font-weight: 500;
}

.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th {
	font-size: 0.78em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot th,
.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot td {
	font-weight: 600;
}

.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total th,
.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
	font-size: 1em;
	padding-top: 14px;
	border-bottom: none;
}

.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total .amount,
.has-goldtop-polish.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total strong {
	font-size: 1.25em;
	font-weight: 700;
	color: #000;
}

/* Payment methods list */
.has-goldtop-polish.woocommerce-checkout #payment {
	background: transparent;
	padding: 0;
	border-radius: 0;
	margin-top: 1.5em;
}

.has-goldtop-polish.woocommerce-checkout #payment ul.payment_methods,
.has-goldtop-polish.woocommerce-checkout #payment ul.wc_payment_methods {
	padding: 0;
	margin: 0 0 1em;
	list-style: none;
	border: none;
	background: transparent;
}

.has-goldtop-polish.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method,
.has-goldtop-polish.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method {
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	padding: 14px 16px;
	margin-bottom: 10px;
	list-style: none;
	transition: border-color var(--gt-dur-fast) var(--gt-ease);
}

/* Currently-selected payment method: 2px orange border */
.has-goldtop-polish.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method:has(input:checked) {
	border-color: var(--gt-accent);
	border-width: 2px;
	padding: 13px 15px;
}

.has-goldtop-polish.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method label {
	font-weight: 500;
	color: #000;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.has-goldtop-polish.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method label img {
	max-height: 28px;
	width: auto;
	margin-left: 8px;
}

/* Payment-method description box (shown when expanded) */
.has-goldtop-polish.woocommerce-checkout #payment div.payment_box {
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	margin-top: 12px;
	padding: 14px;
	color: #000;
	font-size: 0.92em;
}

.has-goldtop-polish.woocommerce-checkout #payment div.payment_box::before {
	display: none;
}

/* Terms + conditions checkbox row */
.has-goldtop-polish.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 1.2em 0;
}

.has-goldtop-polish.woocommerce-checkout .wc-terms-and-conditions,
.has-goldtop-polish.woocommerce-checkout .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.92em;
	color: #000;
	cursor: pointer;
}

.has-goldtop-polish.woocommerce-checkout .woocommerce-form__input-checkbox {
	margin-top: 3px;
	accent-color: var(--gt-accent);
	width: 16px;
	height: 16px;
}

/* Place order button: full-width, orange, the page's visual peak */
.has-goldtop-polish.woocommerce-checkout #place_order {
	display: block;
	width: 100%;
	padding: 16px 24px;
	background: var(--gt-accent);
	color: #fff;
	font-weight: 600;
	font-size: 1.05em;
	text-align: center;
	border: none;
	border-radius: var(--gt-radius-md);
	letter-spacing: 0.01em;
	cursor: pointer;
	text-transform: none;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		transform var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-checkout #place_order:hover {
	background: var(--gt-accent-hover);
	transform: translateY(-1px);
}

.has-goldtop-polish.woocommerce-checkout #place_order:disabled {
	opacity: 0.5;
	cursor: not-allowed;
	transform: none;
}

/* Coupon toggle (top of page collapsible). WC renders an info icon
   via ::before positioned at left:1.5em; the 3em left padding here
   reserves horizontal space so the icon and text don't overlap. */
.has-goldtop-polish.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	background: #fff;
	border: 1px solid #000;
	border-left-width: 3px;
	border-left-color: var(--gt-accent);
	border-radius: var(--gt-radius-md);
	padding: 12px 16px 12px 3em;
	color: #000;
	margin-bottom: 1.5em;
	position: relative;
}

.has-goldtop-polish.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon {
	color: var(--gt-accent);
	text-decoration: none;
	font-weight: 600;
}

.has-goldtop-polish.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon:hover {
	text-decoration: underline;
}

.has-goldtop-polish.woocommerce-checkout form.checkout_coupon {
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	padding: 18px;
	margin-bottom: 2em;
}

.has-goldtop-polish.woocommerce-checkout form.checkout_coupon .form-row-first input {
	width: auto;
}

.has-goldtop-polish.woocommerce-checkout form.checkout_coupon button[type="submit"] {
	padding: 10px 18px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	background: #000;
	color: #fff;
	font-weight: 500;
	cursor: pointer;
	transition: background-color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-checkout form.checkout_coupon button[type="submit"]:hover {
	background: var(--gt-accent);
	border-color: var(--gt-accent);
}

/* Notices */
.has-goldtop-polish.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message,
.has-goldtop-polish.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info,
.has-goldtop-polish.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-error {
	background: #fff;
	border: 1px solid #000;
	border-left-width: 3px;
	border-left-color: var(--gt-accent);
	border-radius: var(--gt-radius-md);
	padding: 14px 18px;
	color: #000;
	margin-bottom: 1.5em;
}

/* --- 10. Product category archives (tax-product_cat) ------------------ */
/* Scoped to any /producto-categoria/* page. Polishes: header, result-count
   + ordering row, product cards (equal-height + bottom-anchored CTA),
   subcategory tiles, pagination. */

/* Header: centered, substantial, gold rule below — matches Sobre Nosotros
   treatment for consistency. */
.has-goldtop-polish.tax-product_cat .woocommerce-products-header {
	text-align: center;
	padding: 1.5em 0 1em;
}

.has-goldtop-polish.tax-product_cat .woocommerce-products-header__title {
	font-size: 2.4em;
	font-weight: 700;
	letter-spacing: -0.015em;
	color: var(--gt-text);
	margin: 0;
	padding-bottom: 0.3em;
	position: relative;
}

.has-goldtop-polish.tax-product_cat .woocommerce-products-header__title::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background: var(--gt-accent);
	margin: 0.5em auto 0;
}

/* Toolbar row: result count floats left, ordering floats right, both on
   a single line separated from the grid below by a subtle border. */
.has-goldtop-polish.tax-product_cat .woocommerce-result-count {
	color: var(--gt-text-muted);
	font-size: 0.95em;
	margin: 0;
	float: left;
	line-height: 42px; /* align vertically with ordering select */
}

.has-goldtop-polish.tax-product_cat .woocommerce-ordering {
	margin: 0;
	float: right;
}

.has-goldtop-polish.tax-product_cat .woocommerce-ordering select {
	padding: 10px 36px 10px 14px;
	border: 1px solid var(--gt-border);
	border-radius: var(--gt-radius-md);
	background-color: var(--gt-surface);
	font-size: 0.95em;
	color: var(--gt-text);
	cursor: pointer;
	transition:
		border-color var(--gt-dur-fast) var(--gt-ease),
		box-shadow var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat .woocommerce-ordering select:hover {
	border-color: var(--gt-border-strong);
}

.has-goldtop-polish.tax-product_cat .woocommerce-ordering select:focus {
	outline: none;
	border-color: var(--gt-accent);
	box-shadow: 0 0 0 4px var(--gt-accent-soft);
}

/* Clear floats from the toolbar row and add a divider + spacing before
   the product grid begins. Symmetric left+right padding indents the
   grid from the content column's edges. gap controls both the horizontal
   AND vertical spacing between cards equally (Astra's grid has no gap
   by default, so cards would otherwise touch horizontally). */
.has-goldtop-polish.tax-product_cat ul.products {
	clear: both;
	padding-top: 1.5em;
	padding-left: 1.5em;
	padding-right: 1.5em;
	border-top: 1px solid var(--gt-border);
	margin-top: 1.2em;
	gap: 24px;
}

/* Breadcrumbs: align to the same 1.5em left inset as the grid, with a
   bit of top padding so they're not hard against the header. */
.has-goldtop-polish.tax-product_cat nav.woocommerce-breadcrumb {
	padding-top: 1.2em;
	padding-left: 1.5em;
	padding-right: 1.5em;
}

/* Result count: matching left inset so it lines up with the grid below. */
.has-goldtop-polish.tax-product_cat .woocommerce-result-count {
	padding-left: 1.5em;
}

/* Ordering dropdown: matching right inset for symmetry. */
.has-goldtop-polish.tax-product_cat .woocommerce-ordering {
	padding-right: 1.5em;
}

/* Card: quiet in idle, confident on hover. Hairline border gives gentle
   definition against the white page; shadow does the heavy lifting on hover. */
.has-goldtop-polish.tax-product_cat ul.products > li.product {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	height: 100%;
	padding: 16px 16px 20px;
	background: var(--gt-surface);
	border: 1px solid var(--gt-border);
	border-radius: var(--gt-radius-lg);
	box-shadow: var(--gt-shadow-xs);
	transition:
		transform var(--gt-dur-base) var(--gt-ease),
		box-shadow var(--gt-dur-base) var(--gt-ease),
		border-color var(--gt-dur-base) var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat ul.products > li.product:hover {
	transform: translateY(-4px);
	box-shadow: var(--gt-shadow-lg);
	border-color: transparent;
}

/* Image wrapper: rounded frame, overflow hidden so the hover zoom stays
   contained. No tinted backdrop — the image sits directly on the card's
   white, which reads cleaner than a tinted underlay behind every product. */
.has-goldtop-polish.tax-product_cat ul.products > li.product .astra-shop-thumbnail-wrap {
	border-radius: var(--gt-radius-md);
	overflow: hidden;
	margin: 0 0 1em;
}

.has-goldtop-polish.tax-product_cat ul.products > li.product .astra-shop-thumbnail-wrap img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform 450ms var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat ul.products > li.product:hover .astra-shop-thumbnail-wrap img {
	transform: scale(1.03);
}

/* Category label ("Consolas", etc.): tiny uppercase caption above the
   title. Muted so it reads as metadata, not headline. */
.has-goldtop-polish.tax-product_cat ul.products > li.product .ast-woo-product-category {
	display: block;
	font-size: 0.72em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.09em;
	color: var(--gt-text-muted);
	margin: 0;
}

/* Title link: strip underline + inherit color so it doesn't blue-link. */
.has-goldtop-polish.tax-product_cat ul.products > li.product .ast-loop-product__link {
	text-decoration: none;
	color: inherit;
	margin: 0;
	display: block;
}

/* Product title: readable, no line-clamp. Let titles wrap naturally —
   flex:1 on summary-wrap already keeps cards equal-height. */
.has-goldtop-polish.tax-product_cat ul.products > li.product .woocommerce-loop-product__title {
	font-size: 0.98em;
	font-weight: 500;
	line-height: 1.4;
	color: var(--gt-text);
	margin: 0;
	padding: 0;
}

/* Price: bold, slightly larger. No currency-symbol manipulation — the
   theme's default rendering reads clean enough without it. */
.has-goldtop-polish.tax-product_cat ul.products > li.product .price {
	display: block;
	font-size: 1.15em;
	font-weight: 700;
	color: var(--gt-text);
	margin: 0;
}

.has-goldtop-polish.tax-product_cat ul.products > li.product .price del {
	opacity: 0.55;
	font-weight: 400;
	margin-right: 6px;
}

.has-goldtop-polish.tax-product_cat ul.products > li.product > .astra-shop-summary-wrap {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 0.6em; /* vertical rhythm between category / title / price */
	padding-top: 0.8em;
}

.has-goldtop-polish.tax-product_cat ul.products > li.product > .astra-shop-summary-wrap > a.button {
	margin-top: auto;
	text-align: center;
	padding: 8px 18px;
	font-size: 0.85em;
}

/* Subcategory tiles: hover-lift + soft shadow, matching our product card idiom. */
.has-goldtop-polish.tax-product_cat ul.products > li.product-category {
	border-radius: var(--gt-radius-lg);
	overflow: hidden;
	background: var(--gt-surface);
	border: 1px solid var(--gt-border);
	box-shadow: var(--gt-shadow-xs);
	transition:
		transform var(--gt-dur-base) var(--gt-ease),
		box-shadow var(--gt-dur-base) var(--gt-ease),
		border-color var(--gt-dur-base) var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat ul.products > li.product-category:hover {
	transform: translateY(-4px);
	box-shadow: var(--gt-shadow-md);
	border-color: transparent;
}

/* Pagination: bordered pill buttons, dots as inline text, prev/next
   widened for emphasis, current-page inverted. */
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination {
	margin: 2.5em 0 1em;
	text-align: center;
	border-top: none;
}

.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
	border: none;
}

.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li {
	margin: 0;
	border: none;
	display: inline-flex;
}

.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li a,
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	border: 1px solid var(--gt-border);
	border-radius: var(--gt-radius-md);
	background: var(--gt-surface);
	color: var(--gt-text);
	font-weight: 500;
	text-decoration: none;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		color var(--gt-dur-fast) var(--gt-ease),
		border-color var(--gt-dur-fast) var(--gt-ease);
}

/* Hover: invert any clickable button */
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li a:hover {
	background: var(--gt-text);
	color: #fff;
	border-color: var(--gt-text);
}

/* Current page: inverted, bold */
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li span.current {
	background: var(--gt-text);
	color: #fff;
	border-color: var(--gt-text);
	font-weight: 700;
}

/* Ellipsis dots: render as inline text, no button treatment */
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li span.dots {
	border: none;
	background: transparent;
	min-width: 0;
	height: auto;
	padding: 0 6px;
	color: var(--gt-text-muted);
}

/* Prev / next: widen, keep arrow readable */
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li a.prev,
.has-goldtop-polish.tax-product_cat nav.woocommerce-pagination ul.page-numbers li a.next {
	padding: 0 18px;
	font-weight: 600;
}

/* Left sidebar: pushed in from both the screen edge (left) and the
   products column (right). Bottom padding keeps the last widget (usually
   a categories list) clear of the fixed WhatsApp floater. */
.has-goldtop-polish.tax-product_cat #secondary {
	padding-left: 1.5em;
	padding-right: 1.5em;
	padding-bottom: 200px;
}

/* Widgets: flat, no box. Vertical rhythm between them via margin. */
.has-goldtop-polish.tax-product_cat .ast-woo-sidebar-widget,
.has-goldtop-polish.tax-product_cat #secondary .widget {
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 0;
	margin-bottom: 2em;
	box-shadow: none;
}

/* Widget titles: formal caps treatment with hairline separator. */
.has-goldtop-polish.tax-product_cat #secondary .widget-title,
.has-goldtop-polish.tax-product_cat .ast-woo-sidebar-widget > h2 {
	font-size: 0.9em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--gt-text);
	margin: 0 0 1em;
	padding-bottom: 0.7em;
	border-bottom: 1px solid var(--gt-border);
}

/* Search widget: label doubles as widget heading; input + button sit on
   one row with a small gap. */
.has-goldtop-polish.tax-product_cat .wp-block-search .wp-block-search__label {
	display: block;
	font-size: 0.9em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--gt-text);
	margin: 0 0 0.9em;
	padding-bottom: 0.7em;
	border-bottom: 1px solid var(--gt-border);
}

.has-goldtop-polish.tax-product_cat .wp-block-search__inside-wrapper {
	display: flex;
	align-items: stretch;
	gap: 6px;
}

.has-goldtop-polish.tax-product_cat .wp-block-search__input {
	flex: 1 1 auto;
	min-width: 0;
	padding: 10px 14px;
	border: 1px solid var(--gt-border);
	border-radius: var(--gt-radius-md);
	background: var(--gt-surface);
	font-size: 0.95em;
	color: var(--gt-text);
	transition:
		border-color var(--gt-dur-fast) var(--gt-ease),
		box-shadow var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat .wp-block-search__input:focus {
	outline: none;
	border-color: var(--gt-accent);
	box-shadow: 0 0 0 4px var(--gt-accent-soft);
}

.has-goldtop-polish.tax-product_cat .wp-block-search__button {
	padding: 0 16px;
	border: none;
	border-radius: var(--gt-radius-md);
	background: var(--gt-text);
	color: #fff;
	font-weight: 500;
	font-size: 0.88em;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.tax-product_cat .wp-block-search__button:hover {
	background: var(--gt-accent);
}

/* --- 11. Cart page (body.woocommerce-cart) --------------------------- */
/* Formal, calm checkout flow: centered heading, cleanly separated cart
   table, summary panel as a distinct "receipt" card, primary CTA in the
   brand accent. Scoped to .woocommerce-cart only — shop_table styling
   doesn't leak to checkout or order pages. */

/* Right-hand content column: generous symmetric horizontal padding so
   nothing inside (title, cart table, totals, notices, cross-sells)
   touches the column edges. Astra defaults to 60px padding-left for
   .ast-left-sidebar layouts but adds nothing on the right — this rule
   sets both sides to a larger, balanced value. */
.has-goldtop-polish.woocommerce-cart .entry-content {
	padding: 2em 3em;
}

.has-goldtop-polish.woocommerce-cart .entry-title,
.has-goldtop-polish.woocommerce-cart h1.page-title {
	text-align: center;
	font-size: 2.2em;
	font-weight: 700;
	letter-spacing: -0.015em;
	color: #000;
	margin: 0 0 0.4em;
	padding-top: 0.8em;
}

.has-goldtop-polish.woocommerce-cart .entry-title::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background: var(--gt-accent);
	margin: 0.5em auto 2em;
}

/* Cart item table: distinct card, no cell borders, clean row separators */
.has-goldtop-polish.woocommerce-cart table.shop_table.cart {
	border: 1px solid #000;
	border-radius: var(--gt-radius-lg);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	box-shadow: var(--gt-shadow-xs);
	margin-bottom: 2em;
	background: #fff;
}

.has-goldtop-polish.woocommerce-cart table.shop_table.cart thead tr {
	background: transparent;
}

.has-goldtop-polish.woocommerce-cart table.shop_table.cart th {
	font-size: 0.78em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
	padding: 14px 16px;
	border: none;
	border-bottom: 1px solid #000;
	text-align: left;
	background: transparent;
}

.has-goldtop-polish.woocommerce-cart table.shop_table.cart td {
	padding: 18px 16px;
	border: none;
	border-bottom: 1px solid #000;
	vertical-align: middle;
	background: transparent;
}

.has-goldtop-polish.woocommerce-cart table.shop_table.cart tbody tr:last-child td {
	border-bottom: none;
}

/* Product thumbnail: compact, rounded, subtle border */
.has-goldtop-polish.woocommerce-cart .product-thumbnail img {
	width: 72px;
	height: auto;
	border-radius: var(--gt-radius-md);
	border: 1px solid #000;
	display: block;
}

/* Product name: link in body color, accent on hover */
.has-goldtop-polish.woocommerce-cart .product-name a {
	color: #000;
	font-weight: 500;
	text-decoration: none;
	transition: color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .product-name a:hover {
	color: var(--gt-accent);
}

/* Quantity input matches our form input idiom */
.has-goldtop-polish.woocommerce-cart .quantity input.qty {
	width: 72px;
	padding: 8px 10px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	text-align: center;
	background: #fff;
	font-size: 0.95em;
	transition:
		border-color var(--gt-dur-fast) var(--gt-ease),
		box-shadow var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .quantity input.qty:focus {
	outline: none;
	border-color: var(--gt-accent);
	box-shadow: none;
}

/* Remove (×) button: small circular, quiet until hover → danger */
.has-goldtop-polish.woocommerce-cart .product-remove a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	background: transparent;
	color: #000;
	border-radius: 50%;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	line-height: 1;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .product-remove a.remove:hover {
	background: var(--gt-accent);
	color: #fff;
}

/* Price / subtotal text: bold primary */
.has-goldtop-polish.woocommerce-cart .product-price,
.has-goldtop-polish.woocommerce-cart .product-subtotal {
	font-weight: 600;
	color: #000;
}

/* Coupon + update-cart actions row: muted strip at the bottom of the table */
.has-goldtop-polish.woocommerce-cart tr.actions td {
	padding: 18px 16px;
	background: transparent;
	border-bottom: none;
}

.has-goldtop-polish.woocommerce-cart .coupon {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.has-goldtop-polish.woocommerce-cart .coupon label {
	display: none; /* "Código de cupón" label is redundant with placeholder */
}

.has-goldtop-polish.woocommerce-cart .coupon input[type="text"] {
	padding: 9px 14px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	font-size: 0.95em;
	background: #fff;
	min-width: 180px;
	transition:
		border-color var(--gt-dur-fast) var(--gt-ease),
		box-shadow var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .coupon input[type="text"]:focus {
	outline: none;
	border-color: var(--gt-accent);
	box-shadow: none;
}

/* Secondary buttons: apply-coupon, update-cart */
.has-goldtop-polish.woocommerce-cart .coupon button[name="apply_coupon"],
.has-goldtop-polish.woocommerce-cart button[name="update_cart"] {
	padding: 10px 18px;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	background: #000;
	color: #fff;
	font-weight: 500;
	font-size: 0.9em;
	cursor: pointer;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		border-color var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .coupon button[name="apply_coupon"]:hover,
.has-goldtop-polish.woocommerce-cart button[name="update_cart"]:hover {
	background: var(--gt-accent);
	border-color: var(--gt-accent);
}

/* Cart totals panel: the "receipt" card on the right */
.has-goldtop-polish.woocommerce-cart .cart_totals {
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-lg);
	padding: 24px 28px;
	box-shadow: var(--gt-shadow-sm);
	margin-bottom: 2em;
}

.has-goldtop-polish.woocommerce-cart .cart_totals h2 {
	font-size: 1.15em;
	font-weight: 700;
	margin: 0 0 1em;
	padding-bottom: 0.8em;
	border-bottom: 1px solid #000;
	color: #000;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

/* Inner totals table: no chrome, just clean rows */
.has-goldtop-polish.woocommerce-cart .cart_totals table.shop_table {
	border: none;
	box-shadow: none;
	border-radius: 0;
	margin-bottom: 1em;
	background: transparent;
}

.has-goldtop-polish.woocommerce-cart .cart_totals table.shop_table th,
.has-goldtop-polish.woocommerce-cart .cart_totals table.shop_table td {
	padding: 12px 0;
	border: none;
	border-bottom: 1px solid #000;
	background: transparent;
	font-size: 0.95em;
	text-transform: none;
	letter-spacing: 0;
	color: #000;
	font-weight: 500;
}

.has-goldtop-polish.woocommerce-cart .cart_totals table.shop_table th {
	color: #000;
	font-weight: 500;
}

/* Order total row: bigger, bolder, no bottom border */
.has-goldtop-polish.woocommerce-cart .cart_totals tr.order-total th,
.has-goldtop-polish.woocommerce-cart .cart_totals tr.order-total td {
	border-bottom: none;
	padding-top: 16px;
	font-size: 1.05em;
}

.has-goldtop-polish.woocommerce-cart .cart_totals tr.order-total strong,
.has-goldtop-polish.woocommerce-cart .cart_totals tr.order-total .amount {
	font-size: 1.25em;
	font-weight: 700;
	color: #000;
}

/* Shipping calculator links */
.has-goldtop-polish.woocommerce-cart .shipping-calculator-button {
	color: var(--gt-accent);
	text-decoration: none;
	font-weight: 500;
}

.has-goldtop-polish.woocommerce-cart .shipping-calculator-button:hover {
	text-decoration: underline;
}

/* Proceed-to-checkout: full-width primary CTA in brand accent */
.has-goldtop-polish.woocommerce-cart .wc-proceed-to-checkout {
	padding: 0;
	margin-top: 1em;
}

.has-goldtop-polish.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	display: block;
	width: 100%;
	padding: 14px 24px;
	background: var(--gt-accent);
	color: #fff;
	font-weight: 600;
	font-size: 1em;
	text-align: center;
	border: none;
	border-radius: var(--gt-radius-md);
	text-decoration: none;
	box-shadow: var(--gt-shadow-sm);
	letter-spacing: 0.01em;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		box-shadow var(--gt-dur-fast) var(--gt-ease),
		transform var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--gt-accent-hover);
	box-shadow: var(--gt-shadow-md);
	transform: translateY(-1px);
}

/* Notices (success / info banners) */
.has-goldtop-polish.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.has-goldtop-polish.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
.has-goldtop-polish.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error {
	background: transparent;
	border-left: 3px solid var(--gt-accent);
	border-top: none;
	border-radius: var(--gt-radius-md);
	padding: 14px 18px;
	color: #000;
	margin-bottom: 1.5em;
}

.has-goldtop-polish.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error {
	border-left-color: var(--gt-accent);
}

/* Cross-sells section heading */
.has-goldtop-polish.woocommerce-cart .cross-sells > h2 {
	font-size: 1.3em;
	font-weight: 700;
	margin: 2em 0 1em;
	text-align: center;
	color: #000;
}

/* Left sidebar hidden on the cart page entirely — cart is a focused
   transactional flow, filter/search widgets add noise, not value.
   Primary content column expands to fill the reclaimed space. */
.has-goldtop-polish.woocommerce-cart #secondary {
	display: none;
}

.has-goldtop-polish.woocommerce-cart #primary {
	width: 100%;
	max-width: 100%;
	flex: 1 1 100%;
}

/* --- 12. Order received / thank-you (body.woocommerce-order-received) - */
/* Post-checkout confirmation: celebratory success notice, key-detail
   cards (order #, date, email, total, payment method), order-items
   table, and customer addresses. Uses only site palette (orange / black
   / white). Scoped to .woocommerce-order-received so it doesn't leak to
   the main checkout page. */

/* Hide the sidebar and let the page content own the whole column. */
.has-goldtop-polish.woocommerce-order-received #secondary {
	display: none;
}

.has-goldtop-polish.woocommerce-order-received #primary {
	width: 100%;
	max-width: 100%;
	flex: 1 1 100%;
}

/* Generous content inset, centered constraint so the page doesn't
   stretch uncomfortably wide on big screens. */
.has-goldtop-polish.woocommerce-order-received .entry-content {
	padding: 2em 3em;
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

/* Page heading */
.has-goldtop-polish.woocommerce-order-received h1.entry-title,
.has-goldtop-polish.woocommerce-order-received h1.page-title {
	text-align: center;
	font-size: 2.2em;
	font-weight: 700;
	letter-spacing: -0.015em;
	color: #000;
	margin: 0 0 0.4em;
	padding-top: 0.8em;
}

.has-goldtop-polish.woocommerce-order-received h1.entry-title::after,
.has-goldtop-polish.woocommerce-order-received h1.page-title::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background: var(--gt-accent);
	margin: 0.5em auto 2em;
}

/* Success notice — "Gracias. Tu pedido ha sido recibido" */
.has-goldtop-polish.woocommerce-order-received .woocommerce-thankyou-order-received {
	text-align: center;
	font-size: 1.35em;
	font-weight: 500;
	color: #000;
	padding: 2.5em 1.5em;
	background: #fff;
	border: 1px solid #000;
	border-left-width: 3px;
	border-left-color: var(--gt-accent);
	border-radius: var(--gt-radius-lg);
	margin: 0 0 2.5em;
	line-height: 1.5;
}

/* Order overview: the 5 key details (number, date, email, total,
   payment method) displayed as cards in a responsive grid. WC's
   default renders this as an inline list with vertical separators —
   we replace with individual cards that read much better. */
.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1em;
	padding: 0;
	margin: 0 0 2.5em;
	list-style: none;
	border: none;
}

/* Kill the clearfix ::before/::after that WC/Astra injects — in a CSS
   grid parent they become grid items and push the real <li>s into the
   wrong cells. */
.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview::before,
.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview::after {
	content: none;
	display: none;
}

.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview li {
	padding: 18px 20px;
	background: #fff;
	border: 1px solid #000;
	border-right: 1px solid #000; /* neutralise WC's divider between list items */
	border-radius: var(--gt-radius-md);
	margin: 0;
	font-size: 0.78em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
}

.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview li strong {
	display: block;
	font-size: 1.3em;
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
	color: #000;
	margin-top: 0.5em;
	word-break: break-word; /* long emails don't overflow */
}

/* Order total gets brand emphasis — it's the headline number here. */
.has-goldtop-polish.woocommerce-order-received ul.woocommerce-order-overview li.woocommerce-order-overview__total strong {
	color: var(--gt-accent);
}

/* Section headings ("Detalles del pedido", "Datos de facturación") */
.has-goldtop-polish.woocommerce-order-received h2 {
	font-size: 1.05em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
	margin: 2.5em 0 1em;
	padding-bottom: 0.7em;
	border-bottom: 1px solid #000;
}

/* Order items table */
.has-goldtop-polish.woocommerce-order-received table.woocommerce-table--order-details,
.has-goldtop-polish.woocommerce-order-received table.shop_table {
	border: 1px solid #000;
	border-radius: var(--gt-radius-lg);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
	margin-bottom: 2em;
	background: #fff;
}

.has-goldtop-polish.woocommerce-order-received table.shop_table th,
.has-goldtop-polish.woocommerce-order-received table.shop_table td {
	padding: 14px 16px;
	border: none;
	border-bottom: 1px solid #000;
	text-align: left;
	color: #000;
	background: transparent;
	font-weight: 500;
}

.has-goldtop-polish.woocommerce-order-received table.shop_table thead th {
	font-size: 0.78em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.has-goldtop-polish.woocommerce-order-received table.shop_table tbody tr:last-child td {
	border-bottom: 2px solid #000; /* thicker separator before totals */
}

.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot th,
.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot td {
	font-size: 0.95em;
	padding: 12px 16px;
}

.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot tr:last-child th,
.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot tr:last-child td {
	border-bottom: none;
	padding-top: 16px;
	font-size: 1em;
}

.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot tr.order_total .amount,
.has-goldtop-polish.woocommerce-order-received table.shop_table tfoot tr:last-child .amount {
	font-size: 1.2em;
	font-weight: 700;
	color: #000;
}

/* Customer addresses section (billing / shipping) */
.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details {
	margin-top: 2em;
}

.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .col2-set,
.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1.5em;
}

.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .col-1,
.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .col-2 {
	width: 100%;
	float: none;
	margin: 0;
}

.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details address {
	padding: 20px;
	background: #fff;
	border: 1px solid #000;
	border-radius: var(--gt-radius-md);
	font-style: normal;
	line-height: 1.6;
	color: #000;
}

.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .woocommerce-customer-details--phone,
.has-goldtop-polish.woocommerce-order-received .woocommerce-customer-details .woocommerce-customer-details--email {
	padding-left: 1em;
	position: relative;
	margin-top: 0.5em;
	color: #000;
}

/* Downloads table (for downloadable products) */
.has-goldtop-polish.woocommerce-order-received .woocommerce-order-downloads__title {
	font-size: 1.05em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #000;
	margin: 2em 0 1em;
}

/* Notices (if any) */
.has-goldtop-polish.woocommerce-order-received .woocommerce-notice {
	background: #fff;
	border: 1px solid #000;
	border-left-width: 3px;
	border-left-color: var(--gt-accent);
	border-radius: var(--gt-radius-md);
	padding: 14px 18px;
	color: #000;
}

.has-goldtop-polish.woocommerce-order-received .woocommerce-notice--error {
	border-left-color: var(--gt-accent);
}

/* Pay-now button (for pending/failed orders) */
.has-goldtop-polish.woocommerce-order-received .button.pay {
	display: inline-block;
	padding: 12px 24px;
	background: var(--gt-accent);
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	border: none;
	border-radius: var(--gt-radius-md);
	margin-right: 8px;
	transition:
		background-color var(--gt-dur-fast) var(--gt-ease),
		transform var(--gt-dur-fast) var(--gt-ease);
}

.has-goldtop-polish.woocommerce-order-received .button.pay:hover {
	background: var(--gt-accent-hover);
	transform: translateY(-1px);
}

/* --- 9. Sobre Nosotros page (post ID 6185) ---------------------------- */
/* Formal, centered treatment: constrained reading measure, refined
   typography, a small gold rule under the heading for gravitas.
   Scoped to .page-id-6185 so no other page is affected. */

.has-goldtop-polish.page-id-6185 {
	background: var(--gt-bg);
}

.has-goldtop-polish.page-id-6185 .elementor-widget-heading .elementor-heading-title {
	text-align: center;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--gt-text);
}

.has-goldtop-polish.page-id-6185 .elementor-widget-heading .elementor-heading-title::after {
	content: "";
	display: block;
	width: 60px;
	height: 2px;
	background: var(--gt-accent);
	margin: 0.8em auto 0;
}

.has-goldtop-polish.page-id-6185 .elementor-widget-text-editor {
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.has-goldtop-polish.page-id-6185 .elementor-widget-text-editor p {
	text-align: center;
	font-size: 1.08em;
	line-height: 1.78;
	color: var(--gt-text);
	margin-bottom: 1.4em;
}

/* First paragraph reads bigger — acts as narrative lead-in. */
.has-goldtop-polish.page-id-6185 .elementor-widget-text-editor .elementor-widget-container > p:first-child {
	font-size: 1.2em;
	font-weight: 500;
	margin-bottom: 1.6em;
}

.has-goldtop-polish.page-id-6185 .elementor-widget img {
	border-radius: var(--gt-radius-lg);
	box-shadow: var(--gt-shadow-sm);
}

.has-goldtop-polish.page-id-6185 .elementor-widget-facebook-page {
	display: flex;
	justify-content: center;
}

/* --- 8. Home & site chrome -------------------------------------------- */

/* Injected slider arrows (from assets/js/slider-arrows.js) get a black circle
   background. Scoped to our injected arrows only so the native brand-logo
   carousel's existing arrow styling stays untouched. */
.has-goldtop-polish.home .goldtop-injected-arrow.elementor-swiper-button {
	background: #000;
	color: #fff;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition:
		background-color 200ms var(--gt-ease),
		box-shadow 200ms var(--gt-ease),
		translate 200ms var(--gt-ease);
}

.has-goldtop-polish.home .goldtop-injected-arrow.elementor-swiper-button i {
	color: #fff;
	font-size: 1em;
	line-height: 1;
	margin: 0;
	padding: 0;
	display: block;
}

/* Optical centering: push the eicon chevron inward with a margin on the
   "pointing" side. Flex-centers the (icon + margin) block, which moves
   the visible glyph off the em-square geometric center back to the
   visual center of the black circle. */
.has-goldtop-polish.home .goldtop-injected-arrow.elementor-swiper-button-prev i {
	margin-right: 3px;
}
.has-goldtop-polish.home .goldtop-injected-arrow.elementor-swiper-button-next i {
	margin-left: 3px;
}

.has-goldtop-polish.home .goldtop-injected-arrow.elementor-swiper-button:hover {
	background: #2a2a2a;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.26);
	translate: 0 2px;
}
