/* Quimera Por Mayor */
:root {
	--qpm-verde: #62ab9d;
	--qpm-verde-oscuro: #3f7f73;
	--qpm-verde-claro: #eef6f4;
	--qpm-tinta: #1c1c1c;
	--qpm-crema: #f5f1ea;
	--qpm-texto: #2b2b2b;
	--qpm-borde: #d9d3c9;
	--qpm-serif: 'Cormorant Garamond', Georgia, serif;
}

/* Precio por mayor bajo el precio normal */
.qpm-precio-mayor {
	display: block;
	margin-top: 4px;
	font-size: 0.85em;
	color: var(--qpm-verde-oscuro);
}
.qpm-precio-mayor small { color: #777; font-size: 0.85em; }
.qpm-precio-mayor--bloqueado a { color: var(--qpm-verde-oscuro); text-decoration: underline; }

/* Aviso «te faltan X» */
.qpm-aviso {
	margin: 0 0 20px;
	padding: 14px 18px;
	border-radius: 0;
	border: 1px solid var(--qpm-borde);
	background: #fff;
	color: var(--qpm-texto);
	font-size: 15px;
	line-height: 1.5;
}
.qpm-aviso p { margin: 0; }
.qpm-aviso a { color: var(--qpm-tinta); font-weight: 600; text-decoration: underline; }
.qpm-aviso--pendiente { background: #fff8ec; border-color: #f2d49b; }
.qpm-aviso--ok { background: var(--qpm-verde-claro); border-color: var(--qpm-verde); }
.qpm-aviso__barra {
	display: block;
	height: 6px;
	margin-top: 10px;
	border-radius: 0;
	height: 3px;
	background: #e9e4dc;
	overflow: hidden;
}
.qpm-aviso__barra span { display: block; height: 100%; background: var(--qpm-verde); transition: width .3s; }

/* Botón */
.qpm-boton,
.qpm-registro button.qpm-boton {
	display: inline-block;
	padding: 17px 34px;
	border: 1px solid var(--qpm-tinta);
	border-radius: 0;
	background: var(--qpm-tinta);
	color: #fff !important;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 3px;
	text-transform: uppercase;
	text-decoration: none !important;
	cursor: pointer;
	transition: background .2s;
}
.qpm-boton:hover,
.qpm-registro button.qpm-boton:hover { background: var(--qpm-verde); border-color: var(--qpm-verde); }

/* Formulario de registro */
.qpm-registro {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 18px;
	padding: 36px;
	border-radius: 0;
	background: #fff;
	border: 1px solid var(--qpm-borde);
}
.qpm-registro p { margin: 0; }
.qpm-registro__intro { font-size: 15px; color: #555; }
.qpm-precios--bloqueado p { font-size: 15px; color: #555; }
.qpm-registro__intro,
.qpm-registro__errores,
.qpm-campo--ancho { grid-column: 1 / -1; }
.qpm-campo label { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: var(--qpm-tinta); }
.qpm-campo input[type="text"],
.qpm-campo input[type="tel"],
.qpm-campo input[type="email"],
.qpm-campo input[type="password"],
.qpm-campo select {
	width: 100%;
	padding: 13px 14px;
	border: 1px solid var(--qpm-borde);
	border-radius: 0;
	background: #fff;
	font-size: 15px;
}
.qpm-campo input:focus,
.qpm-campo select:focus { outline: none; border-color: var(--qpm-tinta); box-shadow: none; }
.qpm-campo--check label { font-weight: 300; font-size: 14px; letter-spacing: 0; text-transform: none; color: #555; }
.qpm-campo--check input { margin-right: 6px; }
.qpm-campo--check a,
.qpm-registro__login a { color: var(--qpm-tinta); text-decoration: underline; }
.qpm-registro button.qpm-boton { width: 100%; }
.qpm-registro__login { font-size: 14px; text-align: center; }
.qpm-registro__errores {
	padding: 12px 16px;
	border-radius: 0;
	background: #fdecec;
	border: 1px solid #f3b6b6;
	color: #8a1f1f;
	font-size: 14px;
}
.qpm-registro__errores p + p { margin-top: 4px; }
.qpm-oculto { position: absolute !important; left: -9999px !important; }
.qpm-registro--listo { display: block; text-align: center; }
.qpm-registro--listo p { margin-bottom: 16px; }
.qpm-registro__titulo { font-family: var(--qpm-serif); font-style: italic; font-size: 34px; font-weight: 400; color: var(--qpm-tinta); }

/* Precios para mayoristas */
.qpm-precios { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.qpm-precios--bloqueado { display: block; text-align: left; }
.qpm-precios--bloqueado p { margin-bottom: 16px; }
.qpm-precios__tarjeta {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 28px 22px;
	border-top: 1px solid var(--qpm-tinta);
	background: transparent;
	text-align: left;
}
.qpm-precios__tipo { font-size: 11px; font-weight: 500; letter-spacing: 3px; text-transform: uppercase; color: var(--qpm-tinta); }
.qpm-precios__valor { font-family: var(--qpm-serif); font-style: italic; font-size: 64px; font-weight: 400; line-height: 1; color: var(--qpm-tinta); }
.qpm-precios__nota { font-size: 13px; color: #777; }

@media (max-width: 640px) {
	.qpm-registro { grid-template-columns: 1fr; padding: 20px; }
	.qpm-precios { grid-template-columns: 1fr; }
}
