/*
 * EAE Compra — carrito, checkout y bloque de cuotas del curso.
 * Todo cuelga de las clases que agrega eae-compra.php en <body>:
 *   .eae-compra         carrito y checkout
 *   .eae-compra--cuotas el carrito tiene un curso con cuotas sin interés
 *   .eae-curso-cuotas   página de un curso con cuotas sin interés
 */

body.eae-compra,
body.eae-curso-cuotas {
	--eae-azul: #0271e8;
	--eae-azul-oscuro: #025cc0;
	--eae-tinta: #1b2433;
	--eae-texto: #273044;
	--eae-suave: #5b6577;
	--eae-linea: #d5deea;
	--eae-borde-campo: #c2cedd;
	--eae-fondo: #f5f8fc;
	--eae-verde: #0b6b34;
	--eae-verde-fondo: #e9f5ec;
	--eae-rojo: #b42318;
	--eae-sombra: 0 1px 2px rgba(13, 51, 99, 0.06), 0 14px 30px -18px rgba(13, 51, 99, 0.28);
}

/* ---------- Página del curso: bloque de cuotas arriba del botón ---------- */

.eae-precio {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0 0 14px;
	padding: 18px 20px 16px;
	border: 1px solid var(--eae-linea);
	border-radius: 10px;
	background: #fff;
	color: var(--eae-texto);
	font-family: "Open Sans", sans-serif;
	line-height: 1.4;
	text-align: left;
}

.eae-precio__lead {
	font-size: 14px;
	color: var(--eae-suave);
}

.eae-precio__cuota {
	font-family: Exo, "Open Sans", sans-serif;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: var(--eae-tinta);
	font-variant-numeric: tabular-nums;
}

.eae-precio__medio {
	font-size: 13px;
	color: var(--eae-suave);
}

.eae-precio__total {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--eae-linea);
	font-size: 15px;
	color: var(--eae-tinta);
}

.eae-precio__total del {
	margin-left: 6px;
	font-size: 13px;
	color: var(--eae-suave);
}

.eae-precio__legal {
	font-size: 12px;
	color: var(--eae-suave);
}

.eae-precio__transferencia {
	margin-top: 12px;
	padding: 10px 12px;
	border-radius: 6px;
	background: var(--eae-verde-fondo);
	color: var(--eae-verde);
	font-size: 13px;
}

.eae-precio__transferencia strong {
	display: block;
	font-size: 14px;
}

body.eae-curso-cuotas .masterstudy-buy-button__separator,
body.eae-curso-cuotas .masterstudy-buy-button__price {
	display: none;
}

body.eae-curso-cuotas .masterstudy-buy-button__link {
	justify-content: center;
}

body.eae-curso-cuotas .masterstudy-buy-button__title {
	flex: 1;
	text-align: center;
}

/* ---------- Carrito y checkout: marco general ---------- */

body.eae-compra .entry-header {
	padding-top: 30px;
	padding-bottom: 30px;
}

body.eae-compra .entry-header h1 {
	font-size: 32px;
	line-height: 1.15;
}

body.eae-compra .apss-social-share,
body.eae-compra .multiseparator {
	display: none;
}

body.eae-compra #main > .container {
	padding-top: 12px;
	padding-bottom: 56px;
}

/* El sitio fuerza overflow en body (CSS adicional, con !important) y el tema en #wrapper #main; eso anula
   position: sticky. clip recorta igual a lo ancho, pero no crea un contenedor de desplazamiento. */
@supports (overflow: clip) {
	body.eae-compra {
		overflow-x: clip !important;
		overflow-y: visible !important;
	}

	body.eae-compra #wrapper #main {
		display: flow-root;
		overflow-x: clip;
		overflow-y: visible;
	}
}

/* Avisos (cupón, carrito vacío) */
body.eae-compra .woocommerce .woocommerce-info {
	margin: 0 0 24px;
	padding: 12px 16px;
	border: 1px solid var(--eae-linea);
	border-radius: 8px;
	background: var(--eae-fondo);
	color: var(--eae-texto);
	font-size: 14px;
	line-height: 1.5;
	text-transform: none;
}

body.eae-compra .woocommerce .woocommerce-info > span:first-of-type {
	display: none;
}

body.eae-compra .woocommerce .woocommerce-info .fa {
	margin-right: 8px;
	color: var(--eae-azul);
}

body.eae-compra .woocommerce .woocommerce-info a {
	margin-left: 4px;
	color: var(--eae-azul);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Errores y mensajes: una sola lista compacta en lugar de un recuadro por error */
body.eae-compra .woocommerce ul.woocommerce-error,
body.eae-compra .woocommerce .woocommerce-message {
	margin: 0 0 24px;
	padding: 12px 18px;
	border: 1px solid #f0c5c0;
	border-radius: 8px;
	background: #fdf3f2;
	list-style: none;
	color: #7a1a12;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	text-transform: none;
}

body.eae-compra .woocommerce .woocommerce-message {
	border-color: #cfe6d6;
	background: var(--eae-verde-fondo);
	color: var(--eae-verde);
}

body.eae-compra .woocommerce .woocommerce-message .button {
	float: right;
	height: 32px;
	margin: -5px 0 -5px 12px;
	padding: 0 12px;
	font-size: 12px;
	line-height: 30px;
}

body.eae-compra .woocommerce ul.woocommerce-error li {
	margin: 0;
	padding: 3px 0;
	border: 0;
	background: none;
	color: inherit;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	text-transform: none;
}

body.eae-compra .woocommerce ul.woocommerce-error li a {
	color: inherit;
	text-decoration: none;
}

body.eae-compra .woocommerce ul.woocommerce-error li a:hover {
	text-decoration: underline;
}

body.eae-compra .woocommerce ul.woocommerce-error li strong {
	font-weight: 600;
}

body.eae-compra .woocommerce ul.woocommerce-error li span:first-of-type,
body.eae-compra .woocommerce .woocommerce-message > span:first-of-type {
	display: none;
}

body.eae-compra .woocommerce ul.woocommerce-error li .fa {
	margin-right: 8px;
	color: var(--eae-rojo);
	font-size: 12px;
}

/* Campos */
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .form-row {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .form-row > label,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .form-row label.required_field {
	display: block;
	margin: 0 0 6px;
	color: var(--eae-texto);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.35;
}

body.eae-compra :is(#customer_details, #payment .place-order) .required {
	color: var(--eae-rojo);
	text-decoration: none;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .form-row .optional {
	color: var(--eae-suave);
	font-weight: 400;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .input-text,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) select,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) textarea,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container .select2-selection--single {
	box-sizing: border-box;
	width: 100%;
	height: 46px;
	padding: 0 14px;
	border: 1px solid var(--eae-borde-campo);
	border-radius: 6px;
	background: #fff;
	box-shadow: none;
	color: var(--eae-tinta);
	font-family: "Open Sans", sans-serif;
	font-size: 15px;
	line-height: 44px;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) textarea {
	height: auto;
	min-height: 96px;
	padding: 10px 14px;
	line-height: 1.5;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .input-text::placeholder {
	color: #8691a3;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .input-text:hover,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) select:hover,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container .select2-selection--single:hover {
	border-color: #9fb0c6;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .input-text:focus,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) select:focus,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) textarea:focus,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container--focus .select2-selection--single,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container--open .select2-selection--single {
	border-color: var(--eae-azul);
	box-shadow: 0 0 0 3px rgba(2, 113, 232, 0.16);
	outline: 0;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .woocommerce-invalid .input-text,
body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .woocommerce-invalid .select2-selection--single {
	border-color: var(--eae-rojo);
}

body.eae-compra #customer_details .checkout-inline-error-message {
	margin: 6px 0 0;
	color: var(--eae-rojo);
	font-size: 12.5px;
	line-height: 1.4;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container {
	width: 100% !important;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0 28px 0 0;
	color: var(--eae-tinta);
	line-height: 44px;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container .select2-selection--single .select2-selection__arrow {
	top: 0;
	right: 8px;
	height: 44px;
}

body.eae-compra :is(#customer_details, form.checkout_coupon, .woocommerce-cart-form) .select2-container .select2-selection--single .select2-selection__clear {
	margin-right: 4px;
	color: var(--eae-suave);
}

/* Botones */
body.eae-compra .woocommerce .button,
body.eae-compra .woocommerce input[type="submit"].button {
	height: 46px;
	padding: 0 20px;
	border: 1px solid var(--eae-azul);
	border-radius: 6px;
	background: #fff;
	color: var(--eae-azul) !important;
	font-family: Exo, "Open Sans", sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 44px;
	text-transform: uppercase;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.1s ease;
}

body.eae-compra .woocommerce .button:hover {
	background: var(--eae-azul);
	color: #fff !important;
}

body.eae-compra .woocommerce #place_order,
body.eae-compra .woocommerce .wc-proceed-to-checkout .checkout-button {
	display: block;
	width: 100%;
	max-width: none;
	height: 54px;
	border-color: var(--eae-azul);
	border-radius: 8px;
	background: var(--eae-azul);
	color: #fff !important;
	font-size: 15px;
	line-height: 52px;
	text-align: center;
}

body.eae-compra .woocommerce #place_order:hover,
body.eae-compra .woocommerce .wc-proceed-to-checkout .checkout-button:hover {
	border-color: var(--eae-azul-oscuro);
	background: var(--eae-azul-oscuro);
}

body.eae-compra .woocommerce .button:active {
	transform: translateY(1px);
}

body.eae-compra .woocommerce .button:focus-visible,
body.eae-compra .woocommerce a:focus-visible,
body.eae-compra #payment ul.wc_payment_methods > li > input[type="radio"]:focus-visible,
body.eae-compra :is(#customer_details, .woocommerce-terms-and-conditions-wrapper) input[type="checkbox"]:focus-visible {
	outline: 3px solid rgba(2, 113, 232, 0.4);
	outline-offset: 2px;
}

/* ---------- Checkout ---------- */

body.eae-compra form.checkout_coupon {
	display: grid;
	grid-template-columns: minmax(0, 320px) auto;
	gap: 12px;
	justify-content: start;
	margin: -8px 0 24px;
	padding: 16px;
	border: 1px solid var(--eae-linea);
	border-radius: 8px;
}

body.eae-compra form.checkout_coupon .clear {
	display: none;
}

/* Datos de facturación y del alumno */
body.eae-compra .woocommerce-billing-fields > h3 {
	display: none;
}

body.eae-compra #customer_details {
	margin-right: 0;
	margin-left: 0;
}

body.eae-compra #customer_details > div {
	float: none;
	width: auto;
	padding: 0;
}

body.eae-compra .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 20px;
}

body.eae-compra .woocommerce-billing-fields__field-wrapper > * {
	grid-column: 1 / -1;
}

body.eae-compra .thwcfd-field-heading h3,
body.eae-compra #order_review_heading,
body.eae-compra #payment_heading {
	margin: 0;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--eae-linea);
	color: var(--eae-tinta);
	font-family: Exo, "Open Sans", sans-serif;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.25;
	text-transform: none;
}

body.eae-compra .woocommerce-billing-fields__field-wrapper > .thwcfd-field-heading:not(:first-child) {
	margin-top: 22px;
}

body.eae-compra .thwcfd-field-paragraph {
	padding: 10px 14px;
	border-radius: 6px;
	background: var(--eae-fondo);
	color: var(--eae-suave);
	font-size: 13px;
	line-height: 1.5;
}

body.eae-compra .thwcfd-field-checkbox label,
body.eae-compra .woocommerce-terms-and-conditions-wrapper label {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 0;
	color: var(--eae-texto);
	font-size: 13.5px;
	font-weight: 400;
	line-height: 1.5;
}

body.eae-compra :is(#customer_details, .woocommerce-terms-and-conditions-wrapper) input[type="checkbox"],
body.eae-compra #payment ul.wc_payment_methods > li > input[type="radio"] {
	position: static;
	flex: none;
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: var(--eae-azul);
}

/* Resumen del pedido */
body.eae-compra form.checkout #order_review > .row > div {
	float: none;
	width: auto;
	padding: 0;
}

body.eae-compra form.checkout #order_review > .row > div:first-child {
	margin-top: 36px;
	padding: 22px 24px 20px;
	border: 1px solid var(--eae-linea);
	border-radius: 12px;
	background: #fff;
	box-shadow: var(--eae-sombra);
}

body.eae-compra #order_review_heading {
	padding-bottom: 10px;
	border-bottom: 0;
}

body.eae-compra table.woocommerce-checkout-review-order-table,
body.eae-compra table.woocommerce-checkout-review-order-table tbody,
body.eae-compra table.woocommerce-checkout-review-order-table tfoot {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
	border: 0;
}

body.eae-compra table.woocommerce-checkout-review-order-table thead {
	display: none;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr {
	display: flex;
	gap: 16px;
	justify-content: space-between;
	align-items: baseline;
	padding: 8px 0;
	border: 0;
	background: none;
}

body.eae-compra table.woocommerce-checkout-review-order-table th,
body.eae-compra table.woocommerce-checkout-review-order-table td {
	padding: 0;
	border: 0;
	background: none;
	color: var(--eae-suave);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
	text-align: left;
}

body.eae-compra table.woocommerce-checkout-review-order-table td:last-child {
	flex: none;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

body.eae-compra table.woocommerce-checkout-review-order-table td strong {
	font-weight: 400;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.cart_item {
	padding: 4px 0 14px;
	border-bottom: 1px solid var(--eae-linea);
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.cart_item td.product-name {
	color: var(--eae-tinta);
	font-size: 15px;
	font-weight: 600;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.cart_item .product-quantity {
	color: var(--eae-suave);
	font-weight: 400;
}

body.eae-compra table.woocommerce-checkout-review-order-table tfoot {
	padding-top: 6px;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.cart-subtotal:has(+ tr.order-total) {
	display: none;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.fee td {
	color: var(--eae-verde);
	font-weight: 600;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.order-total th,
body.eae-compra table.woocommerce-checkout-review-order-table tr.order-total td,
body.eae-compra table.woocommerce-checkout-review-order-table tr.order-total td strong {
	color: var(--eae-tinta);
	font-size: 17px;
	font-weight: 700;
}

/* Con cuotas: la cuota es lo protagónico y el total queda secundario */
body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-cuotas-fila {
	order: -1;
	display: block;
	padding: 12px 0 10px;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-cuotas-fila td {
	display: block;
	text-align: left;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-cuotas-fila ~ tr.order-total th,
body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-cuotas-fila ~ tr.order-total td,
body.eae-compra table.woocommerce-checkout-review-order-table tfoot:has(tr.eae-cuotas-fila) tr.order-total th,
body.eae-compra table.woocommerce-checkout-review-order-table tfoot:has(tr.eae-cuotas-fila) tr.order-total td,
body.eae-compra table.woocommerce-checkout-review-order-table tfoot:has(tr.eae-cuotas-fila) tr.order-total td strong {
	color: var(--eae-suave);
	font-size: 14px;
	font-weight: 600;
}

.eae-cuotas {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 16px 18px 14px;
	border: 1px solid #cfe0f5;
	border-radius: 8px;
	background: #f3f8ff;
	text-align: left;
}

.eae-cuotas__lead {
	color: var(--eae-suave);
	font-size: 13px;
}

.eae-cuotas__linea {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	align-items: baseline;
}

.eae-cuotas__monto {
	color: var(--eae-tinta);
	font-family: Exo, "Open Sans", sans-serif;
	font-size: 38px;
	font-weight: 700 !important;
	line-height: 1.05;
	letter-spacing: -0.01em;
	font-variant-numeric: tabular-nums;
}

.eae-cuotas__n {
	color: var(--eae-verde);
	font-size: 14px;
	font-weight: 700;
}

.eae-cuotas__nota {
	margin-top: 2px;
	color: var(--eae-suave);
	font-size: 12.5px;
	line-height: 1.5;
}

.eae-cuotas--transferencia {
	border-color: #cfe6d6;
	background: var(--eae-verde-fondo);
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-modificar-fila {
	order: 10;
	display: block;
	padding: 10px 0 0;
}

body.eae-compra table.woocommerce-checkout-review-order-table tr.eae-modificar-fila td {
	display: block;
	text-align: left;
}

body.eae-compra tr.eae-modificar-fila a {
	color: var(--eae-azul);
	font-size: 13px;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Medios de pago */
body.eae-compra form.checkout #order_review > .row > div:last-child {
	margin-top: 36px;
}

body.eae-compra #payment {
	margin-top: 18px;
	padding: 0;
	border: 0;
	background: none;
}

body.eae-compra #payment ul.wc_payment_methods {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

body.eae-compra #payment ul.wc_payment_methods > li.wc_payment_method {
	margin: 0;
	padding: 14px 16px;
	border: 1px solid var(--eae-linea);
	border-radius: 8px;
	background: #fff;
	line-height: 1.4;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

body.eae-compra #payment ul.wc_payment_methods > li.wc_payment_method:hover {
	border-color: #9fb0c6;
}

body.eae-compra #payment ul.wc_payment_methods > li.wc_payment_method:has(> input[type="radio"]:checked) {
	border-color: var(--eae-azul);
	background: #f7faff;
	box-shadow: 0 0 0 1px var(--eae-azul);
}

body.eae-compra #payment ul.wc_payment_methods > li > input[type="radio"] {
	margin: 0 10px 0 0;
	vertical-align: middle;
}

body.eae-compra #payment ul.wc_payment_methods > li > label {
	display: inline;
	margin: 0;
	color: var(--eae-tinta);
	font-size: 15px;
	font-weight: 600;
	text-transform: none;
	vertical-align: middle;
	cursor: pointer;
}

body.eae-compra #payment ul.wc_payment_methods > li > label img {
	float: none;
	max-height: 22px;
	margin: 0 0 0 8px;
	vertical-align: middle;
}

body.eae-compra #payment ul.wc_payment_methods > li > label::after {
	display: inline-block;
	margin-left: 10px;
	padding: 3px 8px;
	border-radius: 4px;
	background: var(--eae-verde-fondo);
	color: var(--eae-verde);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: none;
	vertical-align: middle;
	white-space: nowrap;
}

body.eae-compra #payment div.payment_box {
	margin: 12px 0 0;
	padding: 14px 16px;
	border-radius: 6px;
	background: var(--eae-fondo);
	color: var(--eae-texto);
	font-size: 13.5px;
	font-style: normal;
	line-height: 1.55;
}

body.eae-compra #payment div.payment_box p {
	font-style: normal;
}

body.eae-compra #payment div.payment_box::before,
body.eae-compra #payment div.payment_box::after {
	display: none;
}

body.eae-compra #payment div.payment_box p:last-child {
	margin-bottom: 0;
}

body.eae-compra #payment .place-order {
	margin: 22px 0 0;
	padding: 0;
}

body.eae-compra .woocommerce-terms-and-conditions-wrapper {
	margin: 0 0 16px;
}

body.eae-compra .woocommerce-terms-and-conditions-wrapper a {
	color: var(--eae-azul);
	text-decoration: underline;
	text-underline-offset: 2px;
}

body.eae-compra .woocommerce-privacy-policy-text {
	color: var(--eae-suave);
	font-size: 13px;
	line-height: 1.5;
}

/* ---------- Carrito ---------- */

body.eae-compra .woocommerce-cart-form .table-responsive {
	overflow: hidden;
	border: 1px solid var(--eae-linea);
	border-radius: 12px;
	background: #fff;
	box-shadow: var(--eae-sombra);
}

body.eae-compra .woocommerce-cart-form table.cart {
	margin: 0;
	border: 0;
}

body.eae-compra .woocommerce-cart-form table.cart thead th {
	padding: 12px 16px;
	border: 0;
	background: var(--eae-fondo);
	color: var(--eae-suave);
	font-family: "Open Sans", sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.eae-compra .woocommerce-cart-form table.cart td {
	padding: 16px;
	border: 0;
	border-top: 1px solid var(--eae-linea);
	color: var(--eae-texto);
	font-size: 15px;
	vertical-align: middle;
	font-variant-numeric: tabular-nums;
}

body.eae-compra .woocommerce-cart-form table.cart td.product-name a {
	color: var(--eae-tinta);
	font-weight: 600;
}

body.eae-compra .woocommerce-cart-form table.cart td.product-name img {
	width: 64px;
	height: auto;
	margin-right: 14px;
	border-radius: 6px;
	vertical-align: middle;
}

body.eae-compra .woocommerce-cart-form table.cart td.product-remove a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	color: var(--eae-suave);
	transition: background-color 0.18s ease, color 0.18s ease;
}

body.eae-compra .woocommerce-cart-form table.cart td.product-remove a.remove:hover {
	background: #fdecec;
	color: var(--eae-rojo);
}

body.eae-compra .woocommerce-cart-form table.cart td.actions {
	padding: 16px;
	background: #fff;
}

body.eae-compra .woocommerce-cart-form table.cart td.actions .coupon {
	display: inline-flex;
	gap: 10px;
	float: left;
}

body.eae-compra .woocommerce-cart-form table.cart td.actions .coupon .input-text {
	width: 220px;
}

body.eae-compra .woocommerce-cart-form table.cart td.actions .update-cart {
	float: right;
}

body.eae-compra .cart-collaterals {
	margin-top: 32px;
}

body.eae-compra .cart-collaterals .cart_totals > h2,
body.eae-compra .cart-collaterals .cart_totals > h3 {
	margin: 0 0 14px;
	color: var(--eae-tinta);
	font-family: Exo, "Open Sans", sans-serif;
	font-size: 21px;
	font-weight: 600;
	text-transform: none;
}

body.eae-compra .cart-collaterals .cart-totals_wrap {
	margin: 0 0 18px;
	padding: 8px 24px;
	border: 1px solid var(--eae-linea);
	border-radius: 12px;
	background: #fff;
	box-shadow: var(--eae-sombra);
}

body.eae-compra .cart-collaterals .cart-totals_wrap table {
	width: 100%;
	margin: 0;
}

body.eae-compra .cart-collaterals .cart-totals_wrap th,
body.eae-compra .cart-collaterals .cart-totals_wrap td {
	padding: 12px 0;
	border: 0;
	color: var(--eae-suave);
	font-size: 14px;
	font-weight: 400;
	text-align: left;
}

body.eae-compra .cart-collaterals .cart-totals_wrap td {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

body.eae-compra .cart-collaterals .cart-totals_wrap tr.order-total th,
body.eae-compra .cart-collaterals .cart-totals_wrap tr.order-total td {
	border-top: 1px solid var(--eae-linea);
	color: var(--eae-tinta);
	font-size: 17px;
	font-weight: 700;
}

body.eae-compra .woocommerce > a.button.wc-backward,
body.eae-compra .woocommerce .return-to-shop a.button {
	display: inline-block;
	margin-right: 10px;
}

/* ---------- Escritorio: formulario a la izquierda, resumen fijo a la derecha ---------- */

@media (min-width: 992px) {
	body.eae-compra form.checkout.woocommerce-checkout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 420px);
		column-gap: 48px;
		align-items: start;
	}

	body.eae-compra form.checkout.woocommerce-checkout::before,
	body.eae-compra form.checkout.woocommerce-checkout::after,
	body.eae-compra form.checkout #order_review > .row::before,
	body.eae-compra form.checkout #order_review > .row::after {
		display: none;
	}

	body.eae-compra form.checkout.woocommerce-checkout > * {
		grid-column: 1 / -1;
	}

	body.eae-compra form.checkout.woocommerce-checkout > wc-order-attribution-inputs {
		display: none;
	}

	body.eae-compra form.checkout.woocommerce-checkout > .woocommerce-NoticeGroup {
		grid-row: 1;
	}

	body.eae-compra form.checkout.woocommerce-checkout > #customer_details {
		grid-column: 1;
		grid-row: 2;
	}

	body.eae-compra form.checkout.woocommerce-checkout > #order_review,
	body.eae-compra form.checkout #order_review > .row {
		display: contents;
	}

	body.eae-compra form.checkout #order_review > .row > div:first-child {
		position: sticky;
		top: 24px;
		grid-column: 2;
		grid-row: 2 / span 2;
		margin-top: 0;
	}

	body.eae-compra form.checkout #order_review > .row > div:last-child {
		grid-column: 1;
		grid-row: 3;
	}

	body.eae-compra #billing_first_name_field,
	body.eae-compra #billing_last_name_field,
	body.eae-compra #cuit__field,
	body.eae-compra #condicion_iva_field,
	body.eae-compra #billing_country_field,
	body.eae-compra #billing_state_field,
	body.eae-compra #billing_city_field,
	body.eae-compra #billing_postcode_field,
	body.eae-compra #alumno_nombre_field,
	body.eae-compra #alumno_apellido_field,
	body.eae-compra #alumno_dni_field,
	body.eae-compra #billing_nacimiento_field,
	body.eae-compra #alumno_email_field,
	body.eae-compra #celular_alumno_field {
		grid-column: span 1;
	}
}

/* ---------- Celular ---------- */

@media (max-width: 991px) {
	body.eae-compra form.checkout.woocommerce-checkout {
		display: flex;
		flex-direction: column;
	}

	body.eae-compra form.checkout.woocommerce-checkout > #order_review,
	body.eae-compra form.checkout #order_review > .row {
		display: contents;
	}

	body.eae-compra form.checkout #order_review > .row > div:first-child {
		order: -1;
		margin-top: 0;
		margin-bottom: 28px;
	}
}

@media (max-width: 600px) {
	body.eae-compra .entry-header h1 {
		font-size: 26px;
	}

	body.eae-compra .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: minmax(0, 1fr);
	}

	body.eae-compra form.checkout_coupon {
		grid-template-columns: minmax(0, 1fr);
	}

	body.eae-compra .woocommerce-cart-form table.cart td.actions .coupon,
	body.eae-compra .woocommerce-cart-form table.cart td.actions .update-cart {
		float: none;
		width: 100%;
	}

	body.eae-compra .woocommerce-cart-form table.cart td.actions .coupon {
		display: flex;
		flex-direction: column;
		margin-bottom: 10px;
	}

	body.eae-compra .woocommerce-cart-form table.cart td.actions .coupon .input-text {
		width: 100%;
	}

	.eae-precio__cuota {
		font-size: 36px;
	}

	.eae-cuotas__monto {
		font-size: 34px;
	}
}
