/**
 * Dos Queseros — estilos de la tienda
 *
 * Criterios tomados del comercio electronico profesional:
 *
 * 1. En una grilla de productos el titulo NO es el protagonista. El precio es
 *    lo que el ojo debe encontrar primero.
 * 2. Las imagenes comparten proporcion para que la grilla no baile.
 * 3. Una sola accion principal por pantalla.
 * 4. Ningun callejon sin salida: siempre hay una vuelta visible.
 * 5. El dorado de la marca (#F8C412) se usa como FONDO de boton con texto
 *    oscuro encima. Como color de texto sobre blanco su contraste es 1.7:1,
 *    insuficiente para leerse, asi que ahi se usa el gris oscuro.
 *
 * Sobre !important: Avada define tamanos de titulo muy grandes (h1 72px,
 * h2 60px) y colorea los botones de WooCommerce en verde con reglas de alta
 * especificidad. Donde aparece !important es para ganarle a esas reglas del
 * tema; esta comentado caso por caso.
 */

:root {
	--dq-oro: #f8c412;
	--dq-oro-oscuro: #e0ae06;
	--dq-tinta: #212934;
	--dq-gris: #5a5f6a;
	--dq-borde: #e6e7ea;
	--dq-fondo: #fafafa;
	--dq-exito: #1f7a3d;
	--dq-radio: 10px;
	/* Nota: `.wc-proceed-to-checkout .checkout-button` conserva el estilo
	   principal aunque tambien lleve clases de Avada; se define mas abajo con
	   mayor especificidad. */
	--dq-sombra: 0 1px 2px rgba(33, 41, 52, .06);
	--dq-sombra-alta: 0 8px 24px rgba(33, 41, 52, .10);
}

/* =========================================================
   1. TIPOGRAFIA
   Solo dentro de la tienda; el resto del sitio no se toca.
   ========================================================= */

/* Titulo de pagina. Avada lo pone en 72px desde varios selectores. */
.woocommerce .woocommerce-products-header__title,
.woocommerce-page .page-title,
.woocommerce-cart .fusion-page-title-bar h1,
.woocommerce-checkout .fusion-page-title-bar h1,
.woocommerce .fusion-page-title-bar h1,
.single-product .fusion-page-title-bar h1,
.woocommerce-page .entry-title {
	font-size: 36px !important; /* Avada: 72px */
	line-height: 1.25 !important;
	font-weight: 600 !important;
	color: var(--dq-tinta) !important;
}

/* Titulos de seccion: Totales del carrito, Datos de facturacion, etc. */
.woocommerce-cart h2,
.woocommerce-checkout h2,
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout h3,
.single-product .related h2,
.single-product .upsells h2 {
	font-size: 22px !important; /* Avada: 60px */
	line-height: 1.35 !important;
	font-weight: 600 !important;
	color: var(--dq-tinta) !important;
	margin-bottom: 18px !important;
}

.woocommerce-page p,
.single-product p {
	font-size: 16px;
	line-height: 1.7;
}

/* =========================================================
   2. GRILLA DE PRODUCTOS
   ========================================================= */

.woocommerce ul.products {
	display: grid;
	/* Con solo dos productos, cuatro columnas los dejan diminutos y perdidos en
	   pantallas grandes. Se limita el ancho para que se vean como corresponde. */
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	max-width: 760px;
	gap: 32px;
	margin: 28px auto 0;
	padding: 0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	content: none;
}

.woocommerce ul.products li.product {
	/* Avada da anchos y margenes propios a la lista de productos. */
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--dq-borde);
	border-radius: var(--dq-radio);
	overflow: hidden;
	box-shadow: var(--dq-sombra);
	transition: box-shadow .25s ease, transform .25s ease;
}

.woocommerce ul.products li.product:hover {
	box-shadow: var(--dq-sombra-alta);
	transform: translateY(-3px);
}

.woocommerce .woocommerce-ordering,
.woocommerce .fusion-woo-product-view,
.woocommerce .catalog-ordering {
	margin-bottom: 8px;
}

/* Imagen */
.woocommerce ul.products li.product a img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	margin: 0;
	display: block;
	transition: transform .4s ease;
}

.woocommerce ul.products li.product:hover a img {
	transform: scale(1.04);
}

/* Nombre del producto: dos lineas como maximo. */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .product-title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
	font-size: 16px !important; /* Avada: 48px */
	line-height: 1.45 !important;
	font-weight: 600 !important;
	color: var(--dq-tinta) !important;
	margin: 18px 18px 8px !important;
	padding: 0 !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.9em;
}

/* Precio: el protagonista. */
.woocommerce ul.products li.product .price {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: var(--dq-tinta) !important;
	margin: 0 18px 4px !important;
	display: block;
}

.woocommerce ul.products li.product .price .amount,
.woocommerce ul.products li.product .price bdi {
	color: var(--dq-tinta) !important; /* Avada los pinta en oro: ilegible. */
	font-weight: 700 !important;
}

.woocommerce ul.products li.product .price::after {
	content: "IVA incluido · 12 unidades";
	display: block;
	font-size: 13px;
	font-weight: 400;
	color: var(--dq-gris);
	margin-top: 2px;
}

/* =========================================================
   3. BOTONES
   ========================================================= */

/* Primarios */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce .checkout-button,
.woocommerce #place_order,
.dq-boton-principal {
	display: block !important;
	background: var(--dq-oro) !important; /* Avada: verde #65BC7B */
	color: var(--dq-tinta) !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 13px 20px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	min-height: 44px;
	text-align: center;
	text-transform: none !important;
	white-space: nowrap !important;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: background .2s ease;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
	margin: 14px 18px 18px !important;
	margin-top: auto !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce .checkout-button:hover,
.woocommerce #place_order:hover,
.dq-boton-principal:hover {
	background: var(--dq-oro-oscuro) !important;
	color: var(--dq-tinta) !important;
}

.woocommerce .button:focus-visible,
.woocommerce #place_order:focus-visible,
.dq-boton-principal:focus-visible {
	outline: 3px solid rgba(248, 196, 18, .45);
	outline-offset: 2px;
}

/* Avada envuelve el boton en cajas propias que agregan alto. */
.woocommerce ul.products li.product .fusion-woo-buttons,
.woocommerce ul.products li.product .product-buttons,
.woocommerce ul.products li.product .fusion-product-buttons {
	display: block !important;
	width: auto !important;
	min-height: 0 !important;
}

/* Secundarios.
   Avada pinta sus botones de verde con `.fusion-button.button-default`, que
   tiene mas especificidad que un selector simple. Por eso se nombran esas
   clases explicitamente. */
.woocommerce button[name="update_cart"],
.woocommerce .fusion-button.button-default[name="update_cart"],
.woocommerce-cart .cart .button.fusion-button,
.woocommerce-cart button.fusion-button.button-default,
.woocommerce-cart a.fusion-button.button-default,
.woocommerce-cart input.fusion-button,
.dq-seguir-comprando {
	display: inline-block;
	background: #fff !important; /* Avada: verde */
	color: var(--dq-tinta) !important;
	border: 1px solid var(--dq-borde) !important;
	border-radius: 6px !important;
	padding: 11px 18px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	min-height: 44px;
	text-transform: none !important;
	text-decoration: none;
	transition: background .2s ease;
}

.woocommerce button[name="update_cart"]:hover,
.woocommerce-cart button.fusion-button.button-default:hover,
.woocommerce-cart a.fusion-button.button-default:hover,
.dq-seguir-comprando:hover {
	background: var(--dq-fondo) !important;
	color: var(--dq-tinta) !important;
}

/* Enlace "Ver detalle": no debe competir con la accion principal. */
.woocommerce ul.products li.product .show_details_button {
	display: block !important;
	margin: 0 18px 16px !important;
	padding: 0 !important;
	background: none !important;
	border: none !important;
	color: var(--dq-gris) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	min-height: 0;
	text-align: center;
	text-decoration: underline;
}

/* =========================================================
   4. NAVEGACION
   ========================================================= */

.dq-volver {
	margin: 0 0 18px;
}

.dq-carrito-vacio-accion {
	margin: 20px 0;
}

.dq-carrito-vacio-accion .button,
.dq-cta-tienda .button {
	display: inline-block !important;
	width: auto;
	min-width: 220px;
}

.dq-cta-tienda {
	margin: 32px 0 8px;
	text-align: center;
}

/* Menu repuesto en paginas de tienda.
   Avada no lo genera ahi; el plugin lo inserta y aqui se le da el aspecto del
   menu original para que no se note la diferencia. */
.dq-menu-repuesto {
	/* `inline-flex` y no `flex`: un contenedor flex en bloque ocupa todo el
	   ancho disponible, y como el <nav> del encabezado flota a la derecha, el
	   menu no cabia junto al logo y bajaba a una segunda linea, agrandando la
	   barra. Con inline-flex mide lo que miden sus enlaces. */
	display: inline-flex;
	align-items: center;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	height: auto;
	vertical-align: middle;
}

.dq-menu-repuesto > li {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
}

.dq-menu-repuesto > li > a {
	display: inline-flex;
	align-items: center;
	height: auto;
	line-height: 1.2;
	white-space: nowrap;
	font-size: 15px;
	font-weight: 500;
	color: var(--dq-tinta);
	text-decoration: none;
	transition: color .15s ease;
}

.dq-menu-repuesto > li > a:hover,
.dq-menu-repuesto > li.current-menu-item > a {
	color: var(--dq-oro-oscuro);
}

/* Submenus */
.dq-menu-repuesto .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 190px;
	background: #fff;
	border: 1px solid var(--dq-borde);
	border-radius: 6px;
	box-shadow: var(--dq-sombra-alta);
	list-style: none;
	margin: 0;
	padding: 6px 0;
	z-index: 999;
}

.dq-menu-repuesto > li:hover .sub-menu {
	display: block;
}

.dq-menu-repuesto .sub-menu a {
	display: block;
	padding: 9px 16px;
	font-size: 14px;
	color: var(--dq-tinta);
	text-decoration: none;
}

.dq-menu-repuesto .sub-menu a:hover {
	background: var(--dq-fondo);
}

@media (max-width: 900px) {
	/* En pantallas chicas Avada usa su menu movil propio, que si funciona. */
	.dq-menu-repuesto {
		display: none;
	}
}

/* Bloque "mi cuenta" que Avada muestra en el checkout a usuarios con sesion
   iniciada. Trae datos de contacto de EJEMPLO del tema: un telefono
   888-555-5555 y un correo info@yourshop.com que no existen. Un cliente con
   dudas llamaria a un numero inventado. No aporta nada al proceso de compra,
   asi que se oculta por completo. */
.woocommerce-checkout .avada-myaccount-user,
.woocommerce-cart .avada-myaccount-user {
	display: none !important;
}

/* Barra de ayuda del checkout de Avada.
   Trae datos de ejemplo del tema (un telefono 888-555-5555 y un correo
   info@yourshop.com que no existen). Las traducciones del plugin los sustituyen
   por los reales; esta regla es la red de seguridad por si el tema los imprime
   desde su configuracion en vez de como texto traducible. */
.woocommerce-checkout .avada-checkout-support,
.woocommerce-checkout .fusion-checkout-support,
.woocommerce-checkout .woocommerce-info-bar {
	font-size: 14px;
	color: var(--dq-gris);
}

/* Burbuja con la cantidad, adosada al icono de carrito de Avada. */
.fusion-main-menu-cart > a {
	position: relative;
}

.fusion-main-menu-cart > a > .dq-cart-num {
	position: absolute;
	top: 50%;
	right: -6px;
	transform: translateY(-16px);
	pointer-events: none;
}

/* Enlace de carrito propio: icono + cantidad + total. */
.dq-cart-item {
	list-style: none;
}

.dq-cart-icono {
	/* Avada aplica reglas propias a los svg del encabezado que los dejan sin
	   ancho; se fijan las medidas explicitamente. */
	width: 20px !important;
	height: 20px !important;
	flex-shrink: 0;
	display: inline-block;
	vertical-align: middle;
	color: var(--dq-tinta);
}

/* Contador propio de respaldo, si el tema no expone su icono */
.dq-cart-item .dq-cart-enlace {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	color: var(--dq-tinta);
}

.dq-cart-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	background: var(--dq-oro);
	color: var(--dq-tinta);
	border-radius: 11px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.dq-cart-total {
	font-size: 14px;
	color: var(--dq-tinta);
}

.dq-cart-vacio .dq-cart-num {
	background: var(--dq-borde);
	color: var(--dq-gris);
}

/* =========================================================
   5. CARRITO
   ========================================================= */

/* Cupones y calculadora de envio: no se usan. El transporte siempre es $0. */
.woocommerce .coupon,
.woocommerce-cart .coupon,
.woocommerce-form-coupon-toggle,
.woocommerce-cart .cart-collaterals .shipping-calculator-form,
.woocommerce-cart .woocommerce-shipping-calculator,
.woocommerce-cart .shipping-calculator-button,
.woocommerce-cart .cart-collaterals .cross-sells {
	display: none !important;
}

.woocommerce table.shop_table {
	border-radius: var(--dq-radio);
	border-color: var(--dq-borde);
	border-collapse: separate;
}

.woocommerce table.shop_table th {
	font-size: 14px;
	font-weight: 600;
	color: var(--dq-tinta);
	text-transform: none;
}

.woocommerce table.shop_table td {
	font-size: 15px;
	color: var(--dq-tinta);
	vertical-align: middle;
}

.woocommerce table.shop_table img {
	width: 72px !important;
	height: 72px;
	object-fit: cover;
	border-radius: 6px;
}

.woocommerce .cart_totals table.shop_table td,
.woocommerce .cart_totals table.shop_table th {
	padding: 12px 10px;
}

.woocommerce .cart_totals .order-total .amount,
.woocommerce .cart_totals .order-total th {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: var(--dq-tinta) !important;
}

.woocommerce .cart_totals .woocommerce-shipping-methods label {
	font-size: 14px;
	line-height: 1.5;
	color: var(--dq-tinta);
}

.woocommerce .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.fusion-button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button.fusion-button {
	width: 100%;
	background: var(--dq-oro) !important;
	color: var(--dq-tinta) !important;
	border: none !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 15px 20px !important;
}

/* Aviso de transporte por pagar: que se lea, no que grite. */
.dq-aviso-transporte,
.woocommerce-info.dq-aviso-transporte {
	background: #fffaf0 !important;
	border: none !important;
	border-left: 3px solid var(--dq-oro) !important;
	border-radius: 6px;
	padding: 14px 16px !important;
	font-size: 14px;
	line-height: 1.6;
	color: var(--dq-tinta);
	text-transform: none;
}

.dq-aviso-transporte::before {
	content: none !important;
}

/* =========================================================
   6. FICHA DE PRODUCTO
   ========================================================= */

.single-product div.product .images img,
.single-product div.product .woocommerce-product-gallery img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--dq-radio);
}

.single-product div.product .product_title {
	font-size: 30px !important; /* Avada: 48px */
	line-height: 1.3 !important;
	font-weight: 600 !important;
	color: var(--dq-tinta) !important;
	margin-bottom: 12px !important;
}

.single-product div.product p.price,
.single-product div.product span.price {
	font-size: 28px !important;
	font-weight: 700 !important;
	color: var(--dq-tinta) !important;
	margin-bottom: 6px !important;
}

.single-product div.product p.price .amount,
.single-product div.product p.price bdi {
	color: var(--dq-tinta) !important;
}

.single-product div.product p.price::after {
	content: "IVA incluido · caja de 12 unidades de aprox. 1 kg cada una";
	display: block;
	font-size: 13px;
	font-weight: 400;
	color: var(--dq-gris);
	margin-top: 4px;
}

.single-product div.product .woocommerce-product-details__short-description {
	font-size: 16px;
	line-height: 1.7;
	color: var(--dq-gris);
	margin: 18px 0;
}

.single-product .stock.in-stock {
	color: var(--dq-exito);
	font-weight: 600;
	font-size: 14px;
}

.single-product .stock.out-of-stock {
	color: var(--dq-gris);
	font-weight: 600;
	font-size: 14px;
}

.single-product div.product form.cart .quantity input.qty {
	height: 44px !important; /* Avada lo deja en 40px */
	min-height: 44px;
	min-width: 72px;
	padding: 0 10px;
	border: 1px solid var(--dq-borde);
	border-radius: 6px;
	font-size: 15px;
	text-align: center;
}

.single-product div.product form.cart {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	margin: 20px 0;
}

.single-product div.product form.cart .single_add_to_cart_button {
	display: inline-block !important;
	min-width: 220px;
	font-size: 16px !important;
	padding: 14px 28px !important;
}

/* =========================================================
   7. CHECKOUT
   ========================================================= */

.woocommerce form .form-row label {
	font-size: 14px;
	font-weight: 500;
	color: var(--dq-tinta);
	margin-bottom: 6px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row .select2-container .select2-selection {
	padding: 11px 13px !important;
	min-height: 44px;
	border: 1px solid var(--dq-borde) !important;
	border-radius: 6px !important;
	font-size: 15px !important;
	background: #fff;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--dq-oro) !important;
	box-shadow: 0 0 0 3px rgba(248, 196, 18, .18) !important;
	outline: none;
}

#place_order {
	width: 100%;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 15px 28px !important;
}

/* Los campos condicionales llevan "(opcional)" de WooCommerce y el asterisco
   que agrega nuestro JavaScript. Mostrar ambos confunde. */
#dq_sucursal_field .optional,
#dq_necesita_factura_field .optional,
#dq_fecha_despacho_field .optional,
.dq-factura .optional {
	display: none;
}

/* =========================================================
   8. CELULAR
   ========================================================= */

@media (max-width: 640px) {

	.woocommerce ul.products {
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
		gap: 16px;
	}

	.woocommerce .woocommerce-products-header__title,
	.woocommerce-page .page-title,
	.woocommerce .fusion-page-title-bar h1,
	.woocommerce-cart .fusion-page-title-bar h1,
	.woocommerce-checkout .fusion-page-title-bar h1,
	.single-product .fusion-page-title-bar h1,
	.woocommerce-page .entry-title,
	.woocommerce-cart h1,
	.woocommerce-checkout h1 {
		font-size: 26px !important;
	}

	.woocommerce-cart h2,
	.woocommerce-checkout h2,
	.woocommerce-checkout h3 {
		font-size: 19px !important;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product .product-title,
	.woocommerce ul.products li.product h2,
	.woocommerce ul.products li.product h3 {
		font-size: 14px !important;
		margin: 12px 12px 6px !important;
	}

	.woocommerce ul.products li.product .price {
		font-size: 18px !important;
		margin: 0 12px 4px !important;
	}

	.woocommerce ul.products li.product .price::after {
		font-size: 12px;
	}

	.woocommerce ul.products li.product .button,
	.woocommerce ul.products li.product .add_to_cart_button {
		margin: 10px 12px 14px !important;
		padding: 12px 10px !important;
		font-size: 13px !important;
	}

	.single-product div.product .product_title {
		font-size: 24px !important;
	}

	.single-product div.product p.price {
		font-size: 24px !important;
	}

	.single-product div.product form.cart .single_add_to_cart_button {
		width: 100%;
		min-width: 0;
	}

	/* Tabla del carrito: cada fila pasa a ser una tarjeta apilada, para que no
	   haya desplazamiento horizontal. */
	.woocommerce-cart table.shop_table,
	.woocommerce-cart table.shop_table tbody,
	.woocommerce-cart table.shop_table tr,
	.woocommerce-cart table.shop_table td {
		display: block;
		width: 100%;
	}

	.woocommerce-cart table.shop_table thead {
		display: none;
	}

	.woocommerce-cart table.shop_table tr {
		border: 1px solid var(--dq-borde);
		border-radius: var(--dq-radio);
		padding: 12px;
		margin-bottom: 14px;
		position: relative;
	}

	.woocommerce-cart table.shop_table td {
		border: none !important;
		padding: 6px 0 !important;
		text-align: left !important;
	}

	.woocommerce-cart table.shop_table td::before {
		content: attr(data-title);
		display: block;
		font-size: 12px;
		font-weight: 600;
		color: var(--dq-gris);
		margin-bottom: 2px;
	}

	.woocommerce-cart table.shop_table td.product-thumbnail::before,
	.woocommerce-cart table.shop_table td.product-remove::before {
		content: none;
	}

	.woocommerce-cart table.shop_table td.product-remove {
		position: absolute;
		top: 8px;
		right: 8px;
		width: auto;
		padding: 0 !important;
	}

	.woocommerce-cart .cart-collaterals,
	.woocommerce-cart .cart_totals {
		width: 100% !important;
		float: none !important;
	}

	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2,
	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review {
		width: 100% !important;
		float: none !important;
	}

	.dq-cart-total {
		display: none; /* En movil solo el numero, por espacio. */
	}
}


/* =========================================================
   9. CONTENIDO DE APOYO BAJO EL CATALOGO
   La tienda con dos productos quedaba muy corta: 345 px desplazables en una
   pantalla de 1920x1080. Eso se sentia como un desplazamiento trabado y
   transmitia una tienda vacia.
   ========================================================= */

.dq-info-tienda { clear: both; max-width: 980px; margin: 64px auto 0; padding: 0 20px; }
.dq-info-titulo { font-size: 24px !important; line-height: 1.3 !important; font-weight: 600 !important; color: var(--dq-tinta) !important; text-align: center; margin: 0 0 28px !important; }
.dq-info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 28px; margin-bottom: 64px; }
.dq-info-item { text-align: center; }
.dq-info-icono { width: 34px; height: 34px; color: var(--dq-oro-oscuro); margin-bottom: 12px; }
.dq-info-item h3 { font-size: 16px !important; font-weight: 600 !important; color: var(--dq-tinta) !important; margin: 0 0 8px !important; line-height: 1.4 !important; }
.dq-info-item p { font-size: 14px; line-height: 1.65; color: var(--dq-gris); margin: 0; }

.dq-faq { max-width: 720px; margin: 0 auto 56px; }
.dq-faq-item { border-bottom: 1px solid var(--dq-borde); }
.dq-faq-item summary { cursor: pointer; padding: 16px 28px 16px 0; font-size: 15px; font-weight: 500; color: var(--dq-tinta); list-style: none; position: relative; }
.dq-faq-item summary::-webkit-details-marker { display: none; }
.dq-faq-item summary::after { content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-size: 20px; color: var(--dq-gris); }
.dq-faq-item[open] summary::after { content: "\2212"; }
.dq-faq-item summary:hover { color: var(--dq-oro-oscuro); }
.dq-faq-item p { margin: 0 0 18px; padding-right: 28px; font-size: 15px; line-height: 1.7; color: var(--dq-gris); }

.dq-contacto-tienda { text-align: center; padding: 28px 20px; background: var(--dq-fondo); border-radius: var(--dq-radio); margin-bottom: 40px; }
.dq-contacto-tienda p { margin: 0; font-size: 15px; color: var(--dq-tinta); }
.dq-contacto-tienda a { color: var(--dq-tinta); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.dq-contacto-tienda a:hover { color: var(--dq-oro-oscuro); }

@media (max-width: 640px) {
	.dq-info-tienda { margin-top: 44px; }
	.dq-info-titulo { font-size: 20px !important; }
	.dq-info-grid { grid-template-columns: 1fr 1fr; gap: 22px; margin-bottom: 44px; }
	.dq-info-item p { font-size: 13px; }
	.dq-faq-item summary { font-size: 14px; padding: 14px 26px 14px 0; }
	.dq-faq-item p { font-size: 14px; }
}
