/**
Theme Name: Astra
Theme URI: https://wpastra.com/
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Version: 4.13.10
Requires at least: 5.3
WC requires at least: 3.0
WC tested up to: 11.0.1
Tested up to: 7.1
Requires PHP: 5.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra
Domain Path: /languages
Tags: custom-menu, custom-logo, entertainment, one-column, two-columns, left-sidebar, e-commerce, right-sidebar, custom-colors, editor-style, featured-images, full-width-template, microformats, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready, blog
AMP: true

Astra WordPress Theme, Copyright 2020 WPAstra.
Astra is distributed under the terms of the GNU GPL.

Astra is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of.
Nicolas Gallagher and Jonathan Neal https://necolas.github.com/normalize.css/

Astra icon font is based on IcoMoon-Free vector icon by Keyamoon.
IcoMoon-Free vector icon distributed under terms of CC BY 4.0 or GPL. (https://creativecommons.org/licenses/by/4.0/ or https://www.gnu.org/licenses/gpl.html)
Source: http://keyamoon.com/

Flexibility is a JavaScript polyfill for Flexbox By Jonathan Neal, 10up. (https://github.com/jonathantneal/flexibility)
Licensed under MIT ( https://github.com/jonathantneal/flexibility/blob/master/LICENSE.md )

Screenshot image is a collage of actual sites created using the Astra WordPress Theme.

Icons used in the Screenshot image are all licensed under Creative Commons ( CC BY 4.0 ) License ( https://fontawesome.com/license/free )
https://fontawesome.com/v5.15/icons/store?style=solid
https://fontawesome.com/v5.15/icons/shopping-cart?style=solid
https://fontawesome.com/v5.15/icons/pen-square?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid

Illustrations used in the Screenshot images are all licensed under Creative Commons ( CC0 ) License ( https://gumroad.com/l/humaaans )
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/standing-24.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/sitting-2.png

Hand-drawn illustrations used are created by Brainstorm Force and released under Creative Commons ( CC0 ) License.
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/girl-with-image-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/boy-with-code-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/web-browser.png

The same site as screenshot can be imported from here https://websitedemos.net/web-design-agency-08/.

For more information, refer to this document on how to create a page like in the screenshot - https://wpastra.com/docs/replicating-the-screenshot/.

Astra default breadcrumb is based on Breadcrumb Trail by Justin Tadlock. (https://github.com/justintadlock/breadcrumb-trail)
Breadcrumb Trail is distributed under the terms of the GNU GPL v2 or later.

Astra local fonts feature is based on Webfonts Loader by WordPress Themes Team (WPTT). (https://github.com/WPTT/webfont-loader)
Licensed under MIT ( https://github.com/WPTT/webfont-loader/blob/master/LICENSE )

/* Note: The CSS files are loaded from assets/css/ folder. */

/* DREAMStienda: cart and checkout readability on phones. */
@media (max-width: 767px) {
	/* Shared mobile rhythm */
	body.woocommerce-cart .entry-content,
	body.woocommerce-checkout .entry-content {
		font-size: 15px;
	}

	body.woocommerce-cart .woocommerce,
	body.woocommerce-checkout .fc-wrapper {
		--dream-border: #eadfc9;
		--dream-ink: #1f3553;
	}

	/* Cart product: compact card with aligned image, title and totals */
	body.woocommerce-cart .woocommerce-cart-form {
		margin-bottom: 20px;
	}

	body.woocommerce-cart table.shop_table_responsive tr.woocommerce-cart-form__cart-item {
		position: relative;
		display: grid;
		grid-template-columns: 82px minmax(0, 1fr);
		gap: 8px 14px;
		padding: 18px 16px;
		border: 1px solid var(--dream-border);
		border-radius: 18px;
	}

	body.woocommerce-cart table.shop_table_responsive tr.woocommerce-cart-form__cart-item td {
		padding: 0;
		border: 0;
		text-align: left !important;
	}

	body.woocommerce-cart .product-remove {
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 2;
	}

	body.woocommerce-cart .product-thumbnail {
		grid-column: 1;
		grid-row: 1 / span 4;
	}

	body.woocommerce-cart .product-thumbnail img {
		width: 82px !important;
		height: 100px;
		object-fit: cover;
		border-radius: 12px;
	}

	body.woocommerce-cart .product-name,
	body.woocommerce-cart .product-price,
	body.woocommerce-cart .product-quantity,
	body.woocommerce-cart .product-subtotal {
		grid-column: 2;
	}

	body.woocommerce-cart .product-name {
		padding-right: 26px !important;
		font-size: 15px;
		font-weight: 700;
		line-height: 1.3;
	}

	body.woocommerce-cart .product-price,
	body.woocommerce-cart .product-subtotal {
		font-size: 15px;
		line-height: 1.25;
	}

	body.woocommerce-cart .quantity.buttons_added {
		width: 126px;
		min-height: 40px;
	}

	body.woocommerce-cart .quantity.buttons_added .qty,
	body.woocommerce-cart .quantity.buttons_added a {
		height: 40px;
		min-height: 40px;
	}

	body.woocommerce-cart .woocommerce-cart-form td.actions {
		padding: 16px 0 0 !important;
	}

	body.woocommerce-cart .woocommerce-cart-form .coupon {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px;
		width: 100%;
	}

	body.woocommerce-cart .woocommerce-cart-form .coupon .input-text,
	body.woocommerce-cart .woocommerce-cart-form .coupon button {
		width: 100% !important;
		min-height: 46px;
		margin: 0 !important;
		padding: 10px 14px !important;
		font-size: 14px !important;
		line-height: 1.15;
	}

	body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
		min-height: 44px;
		margin-top: 10px;
		padding: 9px 16px !important;
		font-size: 14px !important;
	}

	body.woocommerce-cart .cart_totals {
		padding: 18px 14px !important;
		border-radius: 18px;
	}

	body.woocommerce-cart .cart_totals h2 {
		margin-bottom: 14px;
		font-size: 25px !important;
		line-height: 1.15;
	}

	body.woocommerce-cart .cart_totals table th,
	body.woocommerce-cart .cart_totals table td {
		padding: 12px 10px !important;
		font-size: 15px;
		line-height: 1.35;
		vertical-align: top;
	}

	body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li {
		margin-bottom: 12px;
	}

	body.woocommerce-cart .cart_totals .woocommerce-shipping-methods label {
		display: inline;
		font-size: 14px;
		line-height: 1.35;
	}

	body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-calculator {
		font-size: 14px;
		line-height: 1.45;
	}

	/* Fluid Checkout: reduce nested boxes and wasted space */
	body.woocommerce-checkout .fc-step__substep {
		margin-bottom: 14px !important;
		padding: 18px 14px !important;
		border-radius: 18px !important;
	}

	body.woocommerce-checkout .fc-step__substep-title {
		margin-bottom: 14px !important;
		font-size: 21px !important;
		line-height: 1.2 !important;
	}

	body.woocommerce-checkout #payment,
	body.woocommerce-checkout #payment .fc-payment-methods__wrapper,
	body.woocommerce-checkout #payment .wc_payment_methods,
	body.woocommerce-checkout #payment .wc_payment_method,
	body.woocommerce-checkout #payment .payment_box {
		margin: 0 !important;
	}

	body.woocommerce-checkout #payment .fc-payment-methods__wrapper {
		padding: 0 !important;
		border: 0 !important;
	}

	body.woocommerce-checkout #payment .wc_payment_method,
	body.woocommerce-checkout #payment .payment_box {
		padding: 12px !important;
		border-radius: 14px !important;
	}

	body.woocommerce-checkout #payment #wc-stripe-upe-form {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.woocommerce-checkout #payment .wc-stripe-upe-element {
		min-height: 300px;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew {
		display: flex !important;
		gap: 8px;
		align-items: center;
		width: 100% !important;
		margin: 10px 0 0 !important;
		padding: 0 !important;
		line-height: 1.3;
	}

	body.woocommerce-checkout #payment #wc-stripe-new-payment-method {
		flex: 0 0 20px !important;
		width: 20px !important;
		min-width: 20px !important;
		max-width: 20px !important;
		height: 20px !important;
		min-height: 20px !important;
		margin: 0 !important;
		padding: 0 !important;
		border-radius: 5px !important;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label {
		display: block !important;
		flex: 1 1 auto;
		width: auto !important;
		margin: 0 !important;
		font-size: 0 !important;
		font-weight: 500;
		line-height: 1.3;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label::after {
		content: "Guardar tarjeta para futuras compras";
		font-size: 13px;
	}

	/* Order summary: compact product row and easy-to-scan totals */
	body.woocommerce-checkout .fc-checkout-order-review {
		margin-top: 16px !important;
		border-radius: 18px !important;
	}

	body.woocommerce-checkout .fc-checkout-order-review__head {
		padding: 16px !important;
	}

	body.woocommerce-checkout #fc-checkout-order-review-heading {
		margin: 0 !important;
		font-size: 21px !important;
		line-height: 1.2 !important;
	}

	body.woocommerce-checkout .fc-checkout-order-review__edit-cart {
		font-size: 14px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px 12px;
		padding: 16px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name {
		display: grid;
		grid-template-columns: 68px minmax(0, 1fr);
		gap: 12px;
		align-items: start;
		min-width: 0;
		font-size: 14px;
		line-height: 1.35;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name img {
		width: 68px !important;
		height: 82px !important;
		object-fit: cover;
		border-radius: 10px;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-details,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .cart-item__name {
		min-width: 0;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-total {
		align-self: end;
		white-space: nowrap;
		font-size: 15px;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		padding: 13px 16px !important;
		font-size: 15px !important;
		line-height: 1.3;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		text-align: right;
		white-space: nowrap;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
		font-size: 18px !important;
		font-weight: 700;
		color: var(--dream-ink);
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total {
		min-height: auto !important;
	}

	/* Second pass: clearer labels without adding height. */
	body.woocommerce-cart .woocommerce-cart-form__cart-item dl.variation {
		display: grid !important;
		grid-template-columns: max-content minmax(0, 1fr);
		gap: 2px 6px;
		align-items: baseline;
		margin: 5px 0 0 !important;
		font-size: 13px;
		line-height: 1.25;
	}

	body.woocommerce-cart .woocommerce-cart-form__cart-item dl.variation dt,
	body.woocommerce-cart .woocommerce-cart-form__cart-item dl.variation dd,
	body.woocommerce-cart .woocommerce-cart-form__cart-item dl.variation p {
		float: none !important;
		clear: none !important;
		margin: 0 !important;
		padding: 0 !important;
		white-space: nowrap;
	}

	body.woocommerce-cart .woocommerce-cart-form__cart-item .product-price,
	body.woocommerce-cart .woocommerce-cart-form__cart-item .product-subtotal {
		display: grid;
		grid-template-columns: 70px minmax(0, 1fr);
		align-items: baseline;
		gap: 6px;
	}

	body.woocommerce-cart table.shop_table_responsive .woocommerce-cart-form__cart-item td.product-price::before {
		content: "Precio del producto:" !important;
		display: inline-block !important;
		float: none !important;
		width: auto !important;
		font-weight: 600;
		color: #6f6f6f;
	}

	body.woocommerce-cart table.shop_table_responsive .woocommerce-cart-form__cart-item td.product-subtotal::before {
		content: "Subtotal:" !important;
		display: inline-block !important;
		float: none !important;
		width: auto !important;
		font-weight: 700;
		color: var(--dream-ink);
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals > th {
		display: none !important;
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals > td {
		display: block !important;
		width: 100% !important;
		padding-top: 10px !important;
	}

	/* Payment: one clear outer section, not several nested cards. */
	body.woocommerce-checkout .fc-step__substep:has(.fc-step__substep-title--payment) {
		padding: 16px !important;
	}

	body.woocommerce-checkout #payment,
	body.woocommerce-checkout #payment .fc-payment-methods__wrapper,
	body.woocommerce-checkout #payment .wc_payment_methods,
	body.woocommerce-checkout #payment .wc_payment_method,
	body.woocommerce-checkout #payment .payment_box,
	body.woocommerce-checkout #payment .wc-saved-payment-methods,
	body.woocommerce-checkout #payment #wc-stripe-upe-form {
		border: 0 !important;
		outline: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
	}

	body.woocommerce-checkout #payment .wc_payment_method,
	body.woocommerce-checkout #payment .payment_box {
		padding: 0 !important;
	}

	body.woocommerce-checkout #payment .wc-stripe-upe-element {
		overflow: hidden;
		border: 1px solid var(--dream-border) !important;
		border-radius: 12px !important;
		background: #fff !important;
	}

	/* Order summary: product first, price directly beneath it, totals separate. */
	body.woocommerce-checkout .fc-checkout-order-review__inner {
		overflow: hidden;
		border: 1px solid var(--dream-border);
		border-radius: 16px;
		background: #fff;
	}

	body.woocommerce-checkout .fc-checkout-order-review__head {
		padding: 15px 16px !important;
		border-bottom: 1px solid var(--dream-border);
		background: #fffaf1;
	}

	body.woocommerce-checkout #fc-checkout-order-review-heading {
		font-size: 19px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		padding: 16px !important;
		border-bottom: 1px dashed var(--dream-border);
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name {
		grid-template-columns: 62px minmax(0, 1fr);
		gap: 11px;
		font-size: 14px;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name img {
		width: 62px !important;
		height: 72px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-total {
		margin-left: 73px;
		text-align: left !important;
		font-size: 14px;
		font-weight: 700;
		color: var(--dream-ink);
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-total::before {
		content: "Precio: ";
		font-weight: 500;
		color: #707070;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		min-height: 48px !important;
		margin: 0 16px;
		border-bottom: 1px solid #eee5d6;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		display: block !important;
		padding: 12px 0 !important;
		border: 0 !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total {
		margin: 0;
		padding: 0 16px;
		border-top: 2px solid #c9a75d;
		border-bottom: 0;
		background: #fffaf1;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
		font-size: 17px !important;
	}

	/* Third pass: compact shipping choices, saved-card row and order summary. */
	body.woocommerce-cart .cart_totals tr.shipping > th,
	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals.shipping > th {
		display: none !important;
	}

	body.woocommerce-cart .cart_totals tr.shipping > td,
	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals.shipping > td {
		display: block !important;
		width: 100% !important;
		padding: 10px 4px !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li {
		display: grid !important;
		grid-template-columns: 22px minmax(0, 1fr);
		gap: 8px;
		align-items: start;
		margin: 0 0 8px !important;
		padding: 10px !important;
		border: 1px solid #eadfc9;
		border-radius: 10px;
		background: #fff;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method input {
		width: 18px !important;
		height: 18px !important;
		min-height: 18px !important;
		margin: 1px 0 0 !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method label {
		display: block !important;
		margin: 0 !important;
		font-size: 13px !important;
		font-weight: 600;
		line-height: 1.3 !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals tr.shipping td > p:not([class]) {
		margin: 6px 4px 0 !important;
		font-size: 0 !important;
		line-height: 1.35;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals tr.shipping td > p:not([class])::after {
		content: "El envío debe estar pagado antes del despacho.";
		font-size: 12px;
		color: #727272;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew {
		display: grid !important;
		grid-template-columns: 20px minmax(0, 1fr) !important;
		gap: 8px !important;
		align-items: center !important;
		justify-content: stretch !important;
		clear: both !important;
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		min-height: 24px !important;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label {
		min-width: 0 !important;
		max-width: none !important;
		white-space: nowrap !important;
		text-align: left !important;
	}

	body.woocommerce-checkout .fc-checkout-order-review {
		margin-top: 12px !important;
	}

	body.woocommerce-checkout .fc-checkout-order-review__head {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 10px;
		padding: 13px 14px !important;
	}

	body.woocommerce-checkout #fc-checkout-order-review-heading {
		font-size: 17px !important;
		white-space: nowrap;
	}

	body.woocommerce-checkout .fc-checkout-order-review__edit-cart {
		font-size: 12px !important;
		white-space: nowrap;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item {
		padding: 13px 14px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name {
		grid-template-columns: 56px minmax(0, 1fr) !important;
		gap: 10px !important;
		font-size: 13px !important;
		line-height: 1.3 !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-name img {
		width: 56px !important;
		height: 66px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .cart-item__name {
		font-size: 13px !important;
		line-height: 1.3 !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item .product-total {
		display: none !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr {
		min-height: 42px !important;
		margin: 0 14px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		padding: 10px 0 !important;
		font-size: 14px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total {
		min-height: 50px !important;
		margin: 0 !important;
		padding: 0 14px !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
		font-size: 16px !important;
	}

	/* Final simplification: show decisions, not explanations. */
	body.woocommerce-cart .cart_totals table.shop_table tr.shipping > th,
	body.woocommerce-cart .cart_totals table.shop_table tr.shipping > td::before {
		display: none !important;
		content: none !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr.shipping > td {
		padding: 6px 0 !important;
	}

	body.woocommerce-cart .cart_totals .dreams-shipping-help,
	body.woocommerce-cart .cart_totals .dreams-shipping-help-clean {
		display: none !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li {
		min-height: 44px !important;
		margin-bottom: 7px !important;
		padding: 9px 10px !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li > label {
		font-size: 0 !important;
		text-indent: 0 !important;
		text-transform: none !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li:first-child > label::before {
		content: "Pagar envío ahora · ";
		font-size: 13px;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li:first-child > label .amount {
		font-size: 13px !important;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li:nth-child(2) > label::before {
		content: "Pagar con el saldo";
		font-size: 13px;
	}

	body.woocommerce-cart .cart_totals ul#shipping_method li:nth-child(2) > label > label {
		display: none !important;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew #wc-stripe-new-payment-method {
		grid-column: 1 !important;
		grid-row: 1 !important;
		align-self: center !important;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label {
		grid-column: 2 !important;
		grid-row: 1 !important;
		align-self: center !important;
		white-space: nowrap !important;
	}

	body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label::after {
		content: "Guardar tarjeta";
		font-size: 13px;
	}

	/* Apply the same concise shipping language inside checkout. */
	body.woocommerce-checkout .fc-step__substep:has(.fc-step__substep-title--shipping_method) {
		padding: 16px 14px !important;
	}

	body.woocommerce-checkout .fc-step__substep:has(.fc-step__substep-title--shipping_method) .dreams-shipping-help,
	body.woocommerce-checkout .fc-step__substep:has(.fc-step__substep-title--shipping_method) .dreams-shipping-help-clean {
		display: none !important;
	}

	body.woocommerce-checkout ul#shipping_method li > label {
		font-size: 0 !important;
		text-indent: 0 !important;
		text-transform: none !important;
		text-align: left !important;
	}

	body.woocommerce-checkout ul#shipping_method li:first-child > label::before {
		content: "Pagar envío ahora · ";
		font-size: 13px;
		color: var(--dream-ink);
	}

	body.woocommerce-checkout ul#shipping_method li:first-child > label .amount {
		font-size: 13px !important;
	}

	body.woocommerce-checkout ul#shipping_method li:nth-child(2) > label::before {
		content: "Pagar con el saldo";
		font-size: 13px;
		color: var(--dream-ink);
	}

	body.woocommerce-checkout ul#shipping_method li:nth-child(2) > label > label {
		display: none !important;
	}

	body.woocommerce-checkout #payment p.form-row.woocommerce-SavedPaymentMethods-saveNew {
		display: grid !important;
		grid-template-columns: 20px minmax(0, 1fr) !important;
		grid-template-rows: 24px !important;
		align-items: center !important;
		justify-items: start !important;
		column-gap: 8px !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.woocommerce-checkout #payment p.form-row.woocommerce-SavedPaymentMethods-saveNew > input {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	body.woocommerce-checkout #payment p.form-row.woocommerce-SavedPaymentMethods-saveNew > label {
		grid-column: 2 !important;
		grid-row: 1 !important;
		width: 100% !important;
		color: transparent !important;
		font-size: 0 !important;
	}

	body.woocommerce-checkout #payment p.form-row.woocommerce-SavedPaymentMethods-saveNew > label::after {
		content: "Guardar tarjeta" !important;
		color: var(--dream-ink) !important;
		font-size: 13px !important;
	}

	/* Chile-friendly totals: one familiar summary and no repeated subtotal per item. */
	body.woocommerce-cart .woocommerce-cart-form__cart-item .product-subtotal {
		display: none !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot {
		border-color: var(--dream-border) !important;
		border-radius: 14px !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr:not(.shipping),
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr {
		min-height: 46px !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table th,
	body.woocommerce-cart .cart_totals table.shop_table td,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
		font-size: 14px !important;
		line-height: 1.25 !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table .order-total,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total {
		border-top: 2px solid #c9a75d !important;
		background: #fffaf1 !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table .order-total th,
	body.woocommerce-cart .cart_totals table.shop_table .order-total td,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total th,
	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total td {
		font-size: 16px !important;
		font-weight: 700 !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
		white-space: normal !important;
	}

	body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:nth-last-child(2) th {
		font-weight: 700 !important;
	}

	/* Final checkout polish: full-width country and cleaner card fields. */
	body.woocommerce-checkout #shipping_country_field,
	body.woocommerce-checkout #shipping_country_field .woocommerce-input-wrapper,
	body.woocommerce-checkout #shipping_country_field .fc-input-wrap,
	body.woocommerce-checkout #shipping_country_field .select2-container,
	body.woocommerce-checkout #shipping_country_field .ts-wrapper {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
	}

	body.woocommerce-checkout #shipping_country_field strong,
	body.woocommerce-checkout #shipping_country_field input,
	body.woocommerce-checkout #shipping_country_field select,
	body.woocommerce-checkout #shipping_country_field .select2-selection,
	body.woocommerce-checkout #shipping_country_field .ts-control {
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		max-width: none !important;
		min-height: 48px !important;
		padding: 10px 14px !important;
		border: 1px solid var(--dream-border) !important;
		border-radius: 12px !important;
		background: #fff !important;
		font-size: 15px !important;
		font-weight: 400 !important;
	}

	body.woocommerce-checkout #payment .wc-stripe-upe-element {
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
	}

	body.woocommerce-checkout #payment p.form-row.woocommerce-SavedPaymentMethods-saveNew > label::after {
		content: "Guardar tarjeta en Mi cuenta" !important;
	}

	/* Mobile footer: two equal columns. */
	footer .elementor-top-section > .elementor-container {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
	}

	footer .elementor-top-section > .elementor-container > .elementor-column:first-child {
		flex: 0 0 40% !important;
		width: 40% !important;
		max-width: 40% !important;
		padding-right: 8px !important;
	}

	footer .elementor-top-section > .elementor-container > .elementor-column:nth-child(2) {
		flex: 0 0 60% !important;
		width: 60% !important;
		max-width: 60% !important;
		padding-left: 8px !important;
	}

	/* Homepage mobile cards: shorter, clearer and more inviting. */
	body.home .elementor-widget-wrap:has(> .elementor-element-3c47f44),
	body.home .elementor-widget-wrap:has(> .elementor-element-2ff6583) {
		display: flex !important;
		flex-direction: column !important;
		justify-content: center !important;
		gap: 10px !important;
		min-height: 270px !important;
		height: auto !important;
		padding: 20px 12px !important;
		border: 1px solid #c9a75d !important;
		border-radius: 20px !important;
		background: linear-gradient(180deg, #fffdf9 0%, #fff8ec 100%) !important;
		box-shadow: 0 8px 22px rgba(31, 53, 83, 0.08);
	}

	body.home .elementor-widget-wrap:has(> .elementor-element-3c47f44) > .elementor-element,
	body.home .elementor-widget-wrap:has(> .elementor-element-2ff6583) > .elementor-element {
		margin: 0 !important;
	}

	body.home .elementor-element-3c47f44 .elementor-heading-title,
	body.home .elementor-element-2ff6583 .elementor-heading-title {
		font-size: 15px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		text-decoration: none !important;
	}

	body.home .elementor-widget-wrap:has(> .elementor-element-3c47f44) .elementor-widget-text-editor,
	body.home .elementor-widget-wrap:has(> .elementor-element-2ff6583) .elementor-widget-text-editor {
		display: none !important;
	}

	body.home .elementor-element-3c47f44::after,
	body.home .elementor-element-2ff6583::after {
		display: block;
		padding: 0 4px;
		font-size: 13px;
		font-weight: 500;
		line-height: 1.35;
		text-align: center;
		color: var(--dream-ink);
	}

	body.home .elementor-element-3c47f44::after {
		content: "Productos disponibles para reservar";
	}

	body.home .elementor-element-2ff6583::after {
		content: "Reserva con 25% y paga el saldo después";
	}

	body.home .elementor-widget-wrap:has(> .elementor-element-3c47f44) .elementor-widget-icon,
	body.home .elementor-widget-wrap:has(> .elementor-element-2ff6583) .elementor-widget-icon {
		margin: 2px auto !important;
	}

	/* Compact tracking callout. */
	body.home .elementor-element:has(> .elementor-element-a14798c) {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 10px !important;
		min-height: 0 !important;
		height: auto !important;
		padding: 18px 14px !important;
		border-radius: 18px !important;
	}

	body.home .elementor-element:has(> .elementor-element-a14798c) > .elementor-element {
		width: 100% !important;
		margin: 0 !important;
	}

	body.home .elementor-element-a14798c .elementor-heading-title {
		margin: 0 !important;
		font-size: 18px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		text-align: center !important;
	}

	body.home .elementor-element-a14798c + .elementor-widget-button .elementor-button,
	body.home .elementor-element-a14798c ~ .elementor-widget-button .elementor-button {
		min-height: 46px !important;
		padding: 11px 18px !important;
		border-radius: 23px !important;
		font-size: 14px !important;
	}

	body.home .elementor-element:has(> .elementor-element-a14798c) .elementor-widget-icon {
		position: static !important;
		margin: 0 auto !important;
	}

	/* Even mobile spacing: small gap between cards and matching outer margins. */
	body.home .elementor-top-section:has(.elementor-element-3c47f44):has(.elementor-element-2ff6583) {
		padding-right: 12px !important;
		padding-left: 12px !important;
	}

	body.home .elementor-top-section:has(.elementor-element-3c47f44):has(.elementor-element-2ff6583) > .elementor-container {
		display: flex !important;
		flex-wrap: nowrap !important;
		gap: 10px !important;
		width: 100% !important;
	}

	body.home .elementor-top-section:has(.elementor-element-3c47f44):has(.elementor-element-2ff6583) > .elementor-container > .elementor-column {
		flex: 0 0 calc(50% - 5px) !important;
		width: calc(50% - 5px) !important;
		max-width: calc(50% - 5px) !important;
		padding: 0 !important;
	}

	body.home .elementor-top-section:has(.elementor-element-3c47f44):has(.elementor-element-2ff6583) .elementor-widget-wrap {
		width: 100% !important;
	}

	footer .elementor-top-section {
		padding-right: 12px !important;
		padding-left: 12px !important;
	}

	footer .elementor-top-section > .elementor-container {
		gap: 10px !important;
		width: 100% !important;
	}

	footer .elementor-top-section > .elementor-container > .elementor-column:first-child {
		flex-basis: calc(40% - 5px) !important;
		width: calc(40% - 5px) !important;
		max-width: calc(40% - 5px) !important;
		padding: 0 !important;
	}

	footer .elementor-top-section > .elementor-container > .elementor-column:nth-child(2) {
		flex-basis: calc(60% - 5px) !important;
		width: calc(60% - 5px) !important;
		max-width: calc(60% - 5px) !important;
		padding: 0 !important;
	}

	footer .elementor-widget {
		margin-bottom: 8px !important;
	}

	/* Footer correction: 40/60 only for the first link row. */
	footer .elementor-top-section:first-of-type h2,
	footer .elementor-top-section:first-of-type .elementor-heading-title {
		font-size: 13px !important;
		line-height: 1.15 !important;
		white-space: nowrap !important;
	}

	footer .elementor-top-section:not(:first-of-type) > .elementor-container {
		display: block !important;
		width: 100% !important;
	}

	footer .elementor-top-section:not(:first-of-type) > .elementor-container > .elementor-column {
		display: block !important;
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 !important;
	}

	footer .elementor-top-section:not(:first-of-type) .elementor-widget-wrap,
	footer .elementor-top-section:not(:first-of-type) .elementor-widget {
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Center the tracking icon directly above the heading. */
	body.home .elementor-element-c9178fd {
		position: static !important;
		width: 100% !important;
		margin: 0 auto 6px !important;
		text-align: center !important;
	}

	body.home .elementor-element-c9178fd .elementor-icon-wrapper {
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
		text-align: center !important;
	}

	body.home .elementor-element:has(> .elementor-element-a14798c) {
		display: grid !important;
		grid-template-columns: auto auto !important;
		align-items: center !important;
		justify-content: center !important;
		column-gap: 8px !important;
		row-gap: 10px !important;
	}

	body.home .elementor-element-c9178fd {
		grid-column: 1 !important;
		grid-row: 1 !important;
		width: auto !important;
		margin: 0 !important;
	}

	body.home .elementor-element-a14798c {
		grid-column: 2 !important;
		grid-row: 1 !important;
		width: auto !important;
		margin: 0 !important;
	}

	body.home .elementor-element:has(> .elementor-element-a14798c) > .elementor-widget-button,
	body.home .elementor-element:has(> .elementor-element-a14798c) > .elementor-element:not(.elementor-element-c9178fd):not(.elementor-element-a14798c) {
		grid-column: 1 / -1 !important;
		width: 100% !important;
	}

	footer .elementor-top-section:first-of-type > .elementor-container > .elementor-column:first-child a,
	footer .elementor-top-section:first-of-type > .elementor-container > .elementor-column:first-child p {
		font-size: 12px !important;
		line-height: 1.35 !important;
		white-space: nowrap !important;
	}

	/* Tracking: icon immediately before the real title widget. */
	body.home .elementor-element.elementor-element-c9178fd {
		display: none !important;
	}

	body.home .elementor-element.elementor-element-a7b79fa {
		width: 100% !important;
		margin: 0 !important;
	}

	body.home .elementor-element.elementor-element-a7b79fa .elementor-heading-title {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 8px !important;
		margin: 0 !important;
		font-size: 18px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		white-space: nowrap !important;
	}

	body.home .elementor-element.elementor-element-a7b79fa .elementor-heading-title::before {
		content: "\f3c5";
		flex: 0 0 auto;
		font-family: "Font Awesome 5 Free";
		font-size: 18px;
		font-weight: 900;
		line-height: 1;
		color: #d2ad57;
	}

	/* Mobile information links: target their Elementor IDs directly. */
	body.home .elementor-element.elementor-element-36b2488b,
	body.home .elementor-element.elementor-element-3f1fd0fa,
	body.home .elementor-element.elementor-element-1cfccaa0,
	body.home .elementor-element.elementor-element-630ecdb5,
	body.home .elementor-element.elementor-element-713a576e,
	body.home .elementor-element.elementor-element-7284b77e {
		margin: 0 0 12px !important;
	}

	body.home .elementor-element.elementor-element-36b2488b p,
	body.home .elementor-element.elementor-element-3f1fd0fa p,
	body.home .elementor-element.elementor-element-1cfccaa0 p,
	body.home .elementor-element.elementor-element-630ecdb5 p,
	body.home .elementor-element.elementor-element-713a576e p,
	body.home .elementor-element.elementor-element-7284b77e p {
		margin: 0 !important;
		font-size: 12px !important;
		line-height: 1.4 !important;
		white-space: normal !important;
	}

	/* Only "Términos y condiciones" stays on one row. */
	body.home .elementor-element.elementor-element-3f1fd0fa p,
	body.home .elementor-element.elementor-element-3f1fd0fa a {
		display: block !important;
		width: max-content !important;
		max-width: none !important;
		font-size: 11px !important;
		line-height: 1.4 !important;
		white-space: nowrap !important;
	}

	body.home .elementor-element.elementor-element-630ecdb5 p,
	body.home .elementor-element.elementor-element-630ecdb5 a {
		display: block !important;
		font-size: 0 !important;
		line-height: 0 !important;
		white-space: normal !important;
	}

	body.home .elementor-element.elementor-element-630ecdb5 a::before,
	body.home .elementor-element.elementor-element-630ecdb5 a::after {
		display: block !important;
		font-size: 12px !important;
		line-height: 1.4 !important;
		white-space: nowrap !important;
	}

	body.home .elementor-element.elementor-element-630ecdb5 a::before {
		content: "Políticas de cambios";
	}

	body.home .elementor-element.elementor-element-630ecdb5 a::after {
		content: "y devoluciones";
	}

	/* Keep the Instagram heading on exactly two balanced lines. */
	body.home .elementor-element.elementor-element-7f7c824c .elementor-heading-title {
		font-size: 0 !important;
		line-height: 0 !important;
		text-align: center !important;
	}

	body.home .elementor-element.elementor-element-7f7c824c .elementor-heading-title::before,
	body.home .elementor-element.elementor-element-7f7c824c .elementor-heading-title::after {
		display: block !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		line-height: 1.15 !important;
		white-space: nowrap !important;
	}

	body.home .elementor-element.elementor-element-7f7c824c .elementor-heading-title::before {
		content: "SÍGUENOS EN";
	}

	body.home .elementor-element.elementor-element-7f7c824c .elementor-heading-title::after {
		content: "INSTAGRAM";
	}
}
