.sh-pqe{
	max-width:1100px;
	margin:0 auto;
	padding:56px clamp(20px,5vw,64px) 80px;
	font-family:'Inter', sans-serif;
	overflow-x:hidden;
}

.sh-pqe-intro{
	text-align:center;
	max-width:600px;
	margin:0 auto 44px;
}
.sh-pqe-intro .eyebrow{
	color:var(--sh-accent-red); font-size:.85rem; font-weight:700;
	text-transform:uppercase; letter-spacing:.04em; margin-bottom:10px;
}
.sh-pqe-intro h1{
	font-family:'Fraunces', serif; font-weight:500; font-size:clamp(1.8rem,3.6vw,2.6rem);
	color:#1c130d; line-height:1.22; margin-bottom:12px;
}
.sh-pqe-intro .sub{ color:#5a5148; font-size:1rem; line-height:1.5; }

/* ---------- Tarjetas: mismo alto siempre, borde de color propio ---------- */
.sh-pqe-cards{
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:22px;
	margin-bottom:20px;
	align-items:stretch;
}
.sh-pqe-card{
	background:#fff;
	border:1.5px solid #ece6da;
	border-top:4px solid #ece6da;
	border-radius:16px;
	padding:28px 24px;
	box-shadow:0 10px 28px rgba(20,15,10,.05);
	display:flex;
	flex-direction:column;
	height:100%;
	min-width:0;
	transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.sh-pqe-card:hover{
	transform:translateY(-6px);
	box-shadow:0 20px 40px rgba(20,15,10,.14);
}
.sh-pqe-card-venta{ border-top-color:var(--sh-accent-red); }
.sh-pqe-card-arriendo{ border-top-color:var(--sh-accent-gold); }
.sh-pqe-card-smiley{ border-top-color:var(--sh-logo-green); background:#f6fbf7; }

.sh-pqe-card-icon{ font-size:2rem; margin-bottom:10px; }
.sh-pqe-card h3{
	font-family:'Fraunces', serif; font-weight:500; font-size:1.25rem;
	color:#1c130d; margin-bottom:6px;
}
.sh-pqe-ejemplo{ font-size:.82rem; color:#8a8378; margin-bottom:16px; }

.sh-pqe-compara{ margin-bottom:14px; }
.sh-pqe-fila{
	display:flex; flex-direction:column; gap:2px;
	padding:10px 0; border-bottom:1px solid #f0ece2;
	font-size:.85rem;
}
.sh-pqe-fila span{ color:#5a5148; }
.sh-pqe-fila strong{ font-weight:700; white-space:normal; word-break:break-word; }
.sh-pqe-malo strong{ color:#c1391f; }
.sh-pqe-bueno strong{ color:#2a7a2a; }

.sh-pqe-lista{ margin:0 0 14px; padding-left:18px; }
.sh-pqe-lista li{ font-size:.86rem; color:#5a5148; line-height:1.6; margin-bottom:4px; }

.sh-pqe-ahorro{
	margin-top:auto;
	font-size:.9rem; color:#1c130d;
	background:#f6f1e7; border-radius:10px; padding:10px 14px;
}
.sh-pqe-card-smiley .sh-pqe-ahorro{ background:#e8f3ea; }
.sh-pqe-ahorro strong{ color:var(--sh-accent-red); }

.sh-pqe-doble-ahorro{
	max-width:760px; margin:0 auto 56px;
	text-align:center;
	background:#fffaf0;
	border:1px solid var(--sh-accent-gold);
	border-radius:12px;
	padding:16px 22px;
	font-size:.9rem;
	color:#5a5148;
	line-height:1.55;
}

/* ---------- Explicación mensualidad ---------- */
.sh-pqe-fee{
	background:#fdfbf7;
	border-radius:16px;
	padding:32px clamp(20px,4vw,40px);
	margin-bottom:56px;
	max-width:760px;
	margin-left:auto; margin-right:auto;
}
.sh-pqe-fee h2{
	font-family:'Fraunces', serif; font-weight:500; font-size:1.4rem;
	color:#1c130d; margin-bottom:22px; text-align:center;
}
.sh-pqe-fee-lista{ list-style:none; margin:0 0 20px; padding:0; }
.sh-pqe-fee-lista li{
	display:flex; gap:14px; align-items:flex-start;
	margin-bottom:18px;
}
.sh-pqe-fee-icon{ font-size:1.4rem; flex-shrink:0; line-height:1.4; }
.sh-pqe-fee-lista strong{ color:#1c130d; }
.sh-pqe-fee-lista div{ color:#5a5148; font-size:.92rem; line-height:1.6; }
.sh-pqe-fee-lista a{ color:var(--sh-accent-red); }
.sh-pqe-fee-nota{
	color:#5a5148; font-size:.88rem; line-height:1.6; text-align:center;
	border-top:1px solid #ece6da; padding-top:16px;
}

/* ---------- Precios ---------- */
.sh-pqe-pricing{ text-align:center; margin-bottom:48px; }
.sh-pqe-pricing h2{
	font-family:'Fraunces', serif; font-weight:500; font-size:1.6rem; color:#1c130d; margin-bottom:8px;
}
.sh-pqe-pricing-sub{ color:#5a5148; font-size:.92rem; margin-bottom:28px; }

.sh-pqe-progress-wrap{ max-width:480px; margin:0 auto 32px; }
.sh-pqe-progress-label{
	font-size:.9rem; color:#1c130d; margin-bottom:8px; font-weight:600;
}
.sh-pqe-progress-label strong{ color:var(--sh-accent-red); font-size:1.1rem; }
.sh-pqe-progress-bar{
	height:10px; background:#ece6da; border-radius:100px; overflow:hidden;
}
.sh-pqe-progress-fill{
	height:100%; background:linear-gradient(90deg, var(--sh-accent-gold), var(--sh-accent-red));
	border-radius:100px; transition:width .4s ease;
}

.sh-pqe-tiers{
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:18px;
	max-width:760px;
	margin:0 auto;
}
.sh-pqe-tier{
	background:#fff; border:1.5px solid #ece6da; border-radius:14px; padding:22px 14px;
	min-width:0;
	transition:transform .22s ease, box-shadow .22s ease;
}
.sh-pqe-tier:hover{ transform:translateY(-4px); box-shadow:0 14px 28px rgba(20,15,10,.1); }
.sh-pqe-tier.is-active{
	border:1.5px solid var(--sh-accent-gold);
	background:#fffaf0;
	transform:scale(1.04);
}
.sh-pqe-tier.is-active:hover{ transform:translateY(-4px) scale(1.04); }
.sh-pqe-tier-badge{
	display:block; font-size:.75rem; font-weight:700; text-transform:uppercase;
	letter-spacing:.03em; color:#8a8378; margin-bottom:2px;
}
.sh-pqe-tier.is-active .sh-pqe-tier-badge{ color:var(--sh-accent-red); }
.sh-pqe-tier-rango{ display:block; font-size:.72rem; color:#8a8378; margin-bottom:10px; }
.sh-pqe-tier-precio{
	font-family:'Fraunces', serif; font-weight:500; font-size:1.5rem; color:#1c130d;
}
.sh-pqe-tier-precio small{ font-size:.6em; font-weight:400; color:#8a8378; }
.sh-pqe-tier-mensual{ font-size:.78rem; color:#8a8378; margin-top:4px; }

.sh-pqe-nota{ font-size:.78rem; color:#8a8378; margin-top:18px; }

/* ---------- CTA ---------- */
.sh-pqe-cta{ text-align:center; }
.sh-pqe-btn{
	display:inline-block;
	background:var(--sh-accent-red) !important; color:#fff !important;
	text-decoration:none; font-weight:600; font-size:1rem;
	padding:15px 36px; border-radius:100px;
	transition:background .2s ease;
}
.sh-pqe-btn:hover{ background:var(--sh-accent-red-hover) !important; }

@media (max-width:820px){
	.sh-pqe-cards{ grid-template-columns:1fr; max-width:440px; margin-left:auto; margin-right:auto; }
	.sh-pqe-card:hover{ transform:translateY(-3px); }
	.sh-pqe-tiers{ grid-template-columns:1fr; max-width:320px; }
	.sh-pqe-tier.is-active{ transform:none; }
	.sh-pqe-fee-lista li{ flex-direction:column; gap:6px; }
}
