/*
 * Comgrap DigitalHub - landing de planes ([comgrap_dh_planes]).
 *
 * Neutro a proposito: hereda tipografia y color del tema. Todo lo que se puede
 * pintar sale de una variable CSS, de modo que el equipo de tema redefine el
 * aspecto sin tocar este archivo:
 *
 *   .comgrap-dh-plans { --comgrap-dh-accent: #b40000; --comgrap-dh-radius: 0; }
 *
 * Sin frameworks, sin resets globales y sin selectores fuera de .comgrap-dh-*.
 */

.comgrap-dh-plans {
	--comgrap-dh-plans-columns: 3;
	--comgrap-dh-gap: 1.5rem;
	--comgrap-dh-radius: 10px;
	--comgrap-dh-border: #dcdcdc;
	--comgrap-dh-border-strong: #111111;
	--comgrap-dh-surface: #ffffff;
	--comgrap-dh-surface-alt: #f6f6f6;
	--comgrap-dh-text: inherit;
	--comgrap-dh-muted: #666666;
	--comgrap-dh-accent: #1c62d6;
	--comgrap-dh-accent-text: #ffffff;
	--comgrap-dh-badge-bg: #111111;
	--comgrap-dh-badge-text: #ffffff;
	--comgrap-dh-current-bg: #e8f3ea;
	--comgrap-dh-current-text: #1d6b31;
	--comgrap-dh-shadow: 0 1px 2px rgba(0, 0, 0, .06);
	--comgrap-dh-card-padding: 1.5rem;

	display: block;
	color: var(--comgrap-dh-text);
}

.comgrap-dh-plans *,
.comgrap-dh-plans *::before,
.comgrap-dh-plans *::after {
	box-sizing: border-box;
}

/* ------------------------------------------------------------------ */
/* Rejilla                                                             */
/* ------------------------------------------------------------------ */

.comgrap-dh-plans__grid {
	display: grid;
	grid-template-columns: repeat(var(--comgrap-dh-plans-columns), minmax(0, 1fr));
	gap: var(--comgrap-dh-gap);
	align-items: stretch;
	margin: 0;
	padding: 0;
}

.comgrap-dh-plans__empty {
	margin: 0;
	padding: 1.25rem;
	border: 1px dashed var(--comgrap-dh-border);
	border-radius: var(--comgrap-dh-radius);
	background: var(--comgrap-dh-surface-alt);
	color: var(--comgrap-dh-muted);
	text-align: center;
}

/* ------------------------------------------------------------------ */
/* Tarjeta                                                             */
/* ------------------------------------------------------------------ */

.comgrap-dh-plan {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	padding: var(--comgrap-dh-card-padding);
	border: 1px solid var(--comgrap-dh-border);
	border-radius: var(--comgrap-dh-radius);
	background: var(--comgrap-dh-surface);
	box-shadow: var(--comgrap-dh-shadow);
}

.comgrap-dh-plan--featured {
	border-color: var(--comgrap-dh-border-strong);
	border-width: 2px;
}

.comgrap-dh-plan--current {
	border-color: var(--comgrap-dh-current-text);
	border-width: 2px;
}

.comgrap-dh-plan__badge,
.comgrap-dh-plan__current-flag {
	align-self: flex-start;
	margin: 0;
	padding: .2rem .6rem;
	border-radius: 999px;
	font-size: .75rem;
	font-weight: 700;
	letter-spacing: .03em;
	text-transform: uppercase;
	line-height: 1.4;
}

.comgrap-dh-plan__badge {
	background: var(--comgrap-dh-badge-bg);
	color: var(--comgrap-dh-badge-text);
}

.comgrap-dh-plan__current-flag {
	background: var(--comgrap-dh-current-bg);
	color: var(--comgrap-dh-current-text);
}

.comgrap-dh-plan__name {
	margin: 0;
	font-size: 1.25rem;
	line-height: 1.25;
}

.comgrap-dh-plan__price {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .35rem;
}

.comgrap-dh-plan__amount {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.1;
}

.comgrap-dh-plan__amount .woocommerce-Price-currencySymbol {
	font-size: .6em;
	vertical-align: super;
}

.comgrap-dh-plan__unit {
	font-size: .95rem;
	color: var(--comgrap-dh-muted);
}

.comgrap-dh-plan__period {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: .15rem;
	font-size: .9rem;
}

.comgrap-dh-plan__period-label {
	font-weight: 600;
}

.comgrap-dh-plan__period-detail,
.comgrap-dh-plan__courses {
	margin: 0;
	font-size: .875rem;
	color: var(--comgrap-dh-muted);
}

.comgrap-dh-plan__description {
	font-size: .95rem;
}

.comgrap-dh-plan__description p:last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------ */
/* Beneficios                                                          */
/* ------------------------------------------------------------------ */

.comgrap-dh-plan__features {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: .4rem;
	font-size: .95rem;
}

.comgrap-dh-plan__feature {
	position: relative;
	margin: 0;
	padding-left: 1.4rem;
	line-height: 1.45;
}

.comgrap-dh-plan__feature::before {
	content: "";
	position: absolute;
	left: .15rem;
	top: .45em;
	width: .55rem;
	height: .55rem;
	border-radius: 50%;
	background: var(--comgrap-dh-accent);
}

/* ------------------------------------------------------------------ */
/* CTA                                                                 */
/* ------------------------------------------------------------------ */

.comgrap-dh-plan__cta-wrap {
	margin: auto 0 0;
	padding-top: .5rem;
}

.comgrap-dh-plan__cta {
	display: block;
	width: 100%;
	padding: .75rem 1rem;
	border: 1px solid var(--comgrap-dh-accent);
	border-radius: var(--comgrap-dh-radius);
	background: var(--comgrap-dh-accent);
	color: var(--comgrap-dh-accent-text);
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
}

.comgrap-dh-plan__cta:hover,
.comgrap-dh-plan__cta:focus {
	opacity: .88;
	color: var(--comgrap-dh-accent-text);
	text-decoration: none;
}

.comgrap-dh-plan__cta:focus-visible {
	outline: 2px solid var(--comgrap-dh-border-strong);
	outline-offset: 2px;
}

.comgrap-dh-plan__cta--current {
	background: transparent;
	border-color: var(--comgrap-dh-current-text);
	color: var(--comgrap-dh-current-text);
}

.comgrap-dh-plan__cta--current:hover,
.comgrap-dh-plan__cta--current:focus {
	color: var(--comgrap-dh-current-text);
}

/* ------------------------------------------------------------------ */
/* Responsive                                                          */
/* ------------------------------------------------------------------ */

@media (max-width: 900px) {
	.comgrap-dh-plans__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.comgrap-dh-plans__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.comgrap-dh-plan,
	.comgrap-dh-plan__cta {
		transition: none;
	}
}
