




@media (min-width: 768px) {
	.woocommerce-checkout .storex-content > .st-py-default {
		padding-inline: 0 !important;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container {
		width: var(--ct-contenedor-ancho);
		max-width: var(--ct-contenedor-max);
		margin-inline: auto;
		padding-inline: 0;
		box-sizing: border-box;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container > .row {
		width: 100%;
		margin-inline: 0;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container > .row > [class*='col-'] {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
		padding-inline: 0;
	}

	.woocommerce-checkout .ctsys-checkout,
	.woocommerce-checkout .ctsys-checkout-guest {
		width: 100%;
		margin-inline: auto;
		box-sizing: border-box;
	}

	.woocommerce-checkout .ctsys-checkout-guest {
		max-width: 940px;
	}

	.woocommerce-checkout .ctsys-checkout-intro,
	.woocommerce-checkout .ctsys-checkout-guest__intro,
	.woocommerce-checkout .ctsys-checkout-card,
	.woocommerce-checkout .ctsys-acceso-cuenta {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}

	.woocommerce-checkout .ctsys-checkout__grid {
		min-width: 0;
	}
}



.ctsys-checkout-intro {
	margin: 0 0 20px;
}

.ctsys-checkout-intro h1 {
	margin: 0 0 10px;
	color: var(--ct-tinta);
	font-size: clamp(1.5rem, 2.4vw, 1.875rem);
	font-weight: 700;
	line-height: 1.15;
}

.ctsys-checkout-eyebrow {
	margin: 0 0 4px;
	color: var(--ct-naranja-osc);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}


.ctsys-identidad {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 12px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9375rem;
}

.ctsys-identidad__texto {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 8px;
}

.ctsys-identidad strong {
	color: var(--ct-tinta);
	font-weight: 700;
}

.ctsys-identidad__correo {
	color: var(--ct-tinta-tenue);
}




.ctsys-checkout__grid {
	display: grid;
	grid-template-columns: minmax(280px, 32fr) minmax(0, 68fr);
	grid-template-areas: 'datos transaccion';
	gap: 20px;
	align-items: start;
}

.ctsys-checkout__grid--con-acceso {
	grid-template-areas:
		'acceso       transaccion'
		'datos        transaccion';

	grid-template-rows: max-content minmax(0, 1fr);
}

.ctsys-checkout-card--acceso { grid-area: acceso; }
.ctsys-checkout__datos { grid-area: datos; }
.ctsys-checkout__transaccion { grid-area: transaccion; }


.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) {
	grid-template-areas:
		'resumen pago'
		'resumen confirmar';
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout__datos {
	display: none;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout__transaccion {
	display: contents;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-card--pago {
	grid-area: pago;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-card--resumen {
	grid-area: resumen;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-card--confirmar {
	grid-area: confirmar;
}


.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea {
	grid-template-columns: 58px minmax(0, 1fr) 84px;
	grid-template-areas: 'imagen datos compra';
	align-items: start;
	column-gap: 10px;
	row-gap: 0;
	padding: 12px;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__imagen img {
	width: 58px;
	height: 58px;
	object-fit: contain;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__nombre {
	margin-bottom: 3px;
	font-size: .96rem;
	line-height: 1.25;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__unitario {
	font-size: .78rem;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__compra {
	display: grid;
	grid-area: compra;
	align-items: center;
	justify-items: end;
	gap: 8px;
	min-width: 0;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__cantidad,
.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__total {
	grid-area: auto;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-productos .ctsys-carrito-linea__total {
	min-width: 0;
	margin-left: 0;
	font-size: .94rem;
}


form.ctsys-checkout {
	display: contents;
}

.ctsys-checkout__datos,
.ctsys-checkout__transaccion {
	position: relative;
	display: grid;
	gap: 16px;
	min-width: 0;
}



.ctsys-checkout-card,
.ctsys-acceso-cuenta,
.ctsys-checkout-guest__intro {
	border: 1px solid var(--ct-borde);
	border-radius: var(--ct-radio);
	background: var(--ct-superficie);
	box-shadow: var(--ct-sombra);
}

.ctsys-checkout-card {
	padding: 24px;
}

.ctsys-checkout-card__titulo {
	margin: 0 0 18px;
	color: var(--ct-tinta);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.25;
}


.ctsys-checkout-card__titulo::after {
	display: block;
	width: 40px;
	height: 2px;
	margin-top: 8px;
	background: var(--ct-naranja);
	content: '';
}

.ctsys-checkout-card__cabecera {
	margin-bottom: 20px;
}

.ctsys-checkout-card__cabecera .ctsys-checkout-card__titulo {
	margin-bottom: 10px;
}

.ctsys-checkout-card__cabecera p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}




.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row {
	display: block;
	float: none;
	width: 100%;
	margin: 0 0 14px;
	padding: 0;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row label {
	display: block;
	margin: 0 0 6px;
	color: var(--ct-tinta);
	font-size: .875rem;
	font-weight: 500;
	line-height: 1.3;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row abbr.required,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) abbr.required {
	border: 0;
	color: var(--ct-naranja-osc);
	text-decoration: none;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}


.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row select,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 40px;
	padding: 9px 12px;
	border: 1px solid var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie);
	color: var(--ct-tinta);
	font: inherit;
	font-size: .9375rem;
	line-height: 1.3;
	transition: border-color var(--ct-transicion), box-shadow var(--ct-transicion);
}

.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea {
	min-height: 96px;
	padding: 10px 12px;
	resize: vertical;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input::placeholder,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea::placeholder {
	color: var(--ct-tinta-tenue);
	opacity: 1;
}

.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input:focus,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row select:focus,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea:focus {
	border-color: var(--ct-cyan);
	box-shadow: var(--ct-foco);
	outline: 0;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-invalid input.input-text,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-invalid select {
	border-color: var(--ct-error);
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-validated input.input-text {
	border-color: var(--ct-exito);
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: grid;
	grid-template-columns: 128px minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-height: 38px;
	margin: 0 0 8px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	padding: 8px 0;
	font-size: .75rem;
	white-space: normal;
	line-height: 1.3;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-checkout-card--facturacion .form-row > input:not([type='checkbox']),
.ctsys-checkout-card--facturacion .form-row > select,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > input:not([type='checkbox']),
.ctsys-cuenta-nueva .form-row > select {
	grid-column: 2;
	grid-row: 1;
}


.ctsys-checkout .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr;
}

.ctsys-checkout .woocommerce-billing-fields__field-wrapper > .form-row-wide {
	grid-column: 1 / -1;
}


.ctsys-checkout .select2-container .select2-selection--single {
	height: 40px;
	border: 1px solid var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie);
}

.ctsys-checkout .select2-container .select2-selection--single .select2-selection__rendered {
	padding-left: 12px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	line-height: 38px;
}

.ctsys-checkout .select2-container .select2-selection--single .select2-selection__arrow {
	height: 38px;
}

.ctsys-checkout .select2-container--focus .select2-selection--single,
.ctsys-checkout .select2-container--open .select2-selection--single {
	border-color: var(--ct-cyan);
	box-shadow: var(--ct-foco);
}




.ctsys-checkout-card--acceso {
	padding: 20px 24px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo {
	margin-bottom: 16px;
	font-size: 1.0625rem;
}


.ctsys-acceso-checkout__selector {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 28px;
}

.ctsys-acceso-checkout__selector label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	font-weight: 500;
	cursor: pointer;
}

.ctsys-acceso-checkout__selector input[type='radio'] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}


.ctsys-acceso-checkout__login {
	display: none;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-checkout-card--acceso:has(#ctsys-modo-login:checked) .ctsys-acceso-checkout__login {
	display: block;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 16px;
	margin: 4px 0 0;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones label.checkbox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	font-weight: 400;
	cursor: pointer;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones input[type='checkbox'] {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 8px 0 0;
	font-size: .875rem;
}

.ctsys-acceso-checkout__login .woocommerce-LostPassword a {
	color: var(--ct-cyan);
	font-weight: 600;
}

.ctsys-acceso-checkout__login .ctsys-boton-login {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	margin-left: auto;
	padding: 10px 22px;
	border: 0;
	border-radius: var(--ct-radio-campo);
	background: var(--ct-cyan);
	color: #fff;
	font: inherit;
	font-size: .9375rem;
	font-weight: 700;
	cursor: pointer;
	transition: background-color var(--ct-transicion);
}

.ctsys-acceso-checkout__login .ctsys-boton-login:hover,
.ctsys-acceso-checkout__login .ctsys-boton-login:focus-visible {
	background: var(--ct-cyan-osc);
	outline: 0;
}


.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__datos {
	display: none;
}

.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__transaccion {
	pointer-events: none;
}


.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__transaccion::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 5;
	border-radius: var(--ct-radio);
	background: color-mix(in srgb, var(--ct-fondo) 72%, transparent);
}


.ctsys-cuenta-nueva {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-cuenta-nueva__titulo {
	margin: 0 0 6px;
	color: var(--ct-tinta);
	font-size: 1rem;
	font-weight: 600;
}

.ctsys-cuenta-nueva__nota {
	margin: 0 0 14px;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-cuenta-nueva__campos {
	display: grid;
	grid-template-columns: 1fr;
}


.ctsys-gmail-drive {
	margin-top: 22px;
	padding: 18px;
	border: 1px solid var(--ct-naranja);
	border-radius: 10px;
	background: var(--ct-naranja-tinte);
}

.ctsys-gmail-drive h3 {
	margin: 0 0 8px;
	color: var(--ct-tinta);
	font-size: 1rem;
	font-weight: 700;
}

.ctsys-gmail-drive__aviso {
	margin: 0 0 14px;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-gmail-drive__nota {
	display: block;
	margin-top: 6px;
	color: var(--ct-tinta-suave);
	font-size: .8125rem;
	line-height: 1.4;
}



.ctsys-checkout .wc_payment_methods {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ctsys-checkout .wc_payment_methods > li {
	margin: 0;
	padding: 0;
	border: 1px solid var(--ct-borde);
	border-radius: 10px;
	background: var(--ct-superficie);
	list-style: none;
	transition: border-color var(--ct-transicion), background-color var(--ct-transicion);
}


.ctsys-checkout .wc_payment_methods > li > label {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 15px 16px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	font-weight: 600;
	cursor: pointer;
}

.ctsys-checkout .wc_payment_methods > li input[type='radio'] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-checkout .wc_payment_methods > li img {
	max-height: 24px;
	width: auto;
	margin-left: auto;
}

.ctsys-checkout .wc_payment_methods > li:hover {
	border-color: var(--ct-borde-fuerte);
}

.ctsys-checkout .wc_payment_methods > li:has(input[type='radio']:checked) {
	border-color: var(--ct-cyan);
	background: var(--ct-cyan-tinte);
	box-shadow: inset 0 0 0 1px var(--ct-cyan);
}

.ctsys-checkout .wc_payment_methods > li:focus-within {
	box-shadow: var(--ct-foco);
}


.ctsys-checkout .wc_payment_methods .payment_box {
	margin: 0;
	padding: 0 16px 15px 46px;
	border-radius: 0;
	background: none;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-checkout .wc_payment_methods .payment_box::before {
	display: none;
}

.ctsys-checkout .wc_payment_methods .payment_box p:last-child {
	margin-bottom: 0;
}

.ctsys-checkout .wc_payment_methods > li .woocommerce-info,
.ctsys-pago__sin-cobro {
	margin: 0;
	padding: 14px 16px;
	border: 0;
	border-radius: 10px;
	background: var(--ct-aviso-tinte);
	color: var(--ct-aviso);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-checkout .wc_payment_methods > li .woocommerce-info::before {
	display: none;
}



.ctsys-resumen__cabecera {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.ctsys-checkout .woocommerce-checkout-review-order-table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: .9375rem;
}


.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table thead th {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}


.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table td,
.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table th {
	padding: 12px 0;
	border: 0;
	border-bottom: 1px solid var(--ct-borde);
	background: none;
	vertical-align: middle;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-name {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-right: 16px;
	color: var(--ct-tinta);
}

.ctsys-resumen__miniatura {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border: 1px solid var(--ct-borde);
	border-radius: 8px;
	background: var(--ct-superficie-suave);
	object-fit: contain;
}

.ctsys-resumen__nombre {
	flex: 1 1 auto;
	font-weight: 600;
	line-height: 1.35;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-quantity {
	flex: 0 0 auto;
	color: var(--ct-tinta-suave);
	font-weight: 500;
	white-space: nowrap;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-total {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot th {
	color: var(--ct-tinta-suave);
	font-weight: 500;
	text-align: left;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot td {
	color: var(--ct-tinta);
	font-variant-numeric: tabular-nums;
	text-align: right;
	white-space: nowrap;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .order-total th,
.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .order-total td {
	padding-top: 14px;
	border-bottom: 0;
	color: var(--ct-tinta);
	font-size: 1.125rem;
	font-weight: 700;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .cart-discount td {
	color: var(--ct-exito);
}


.ctsys-checkout-productos {
	width: 100%;
	margin: 0;
	font-size: .9375rem;
}

.ctsys-checkout-productos__lista {
	display: block;
	max-height: min(62dvh, 540px);
	margin: 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--ct-borde);
	border-radius: 12px;
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-color: #b8c4d5 transparent;
	scrollbar-width: thin;
}

.ctsys-checkout-productos .ctsys-carrito-linea {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr) 74px 112px;
	grid-template-areas: 'imagen datos cantidad total';
	align-items: center;
	gap: 18px;
	padding: 16px;
	background: #fff;
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-checkout-productos .ctsys-carrito-linea:last-child {
	border-bottom: 0;
}

.ctsys-checkout-productos .ctsys-carrito-linea__compra {
	display: contents;
}

.ctsys-checkout-productos .ctsys-carrito-linea__imagen {
	grid-area: imagen;
}

.ctsys-checkout-productos .ctsys-carrito-linea__imagen img {
	width: 84px;
	height: auto;
	border: 1px solid var(--ct-borde);
	border-radius: 8px;
}

.ctsys-checkout-productos .ctsys-carrito-linea__datos {
	grid-area: datos;
	min-width: 0;
}

.ctsys-checkout-productos .ctsys-carrito-linea__nombre {
	margin: 0 0 4px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
}

.ctsys-checkout-productos .ctsys-carrito-linea__nombre a {
	color: var(--ct-tinta);
	text-decoration: none;
}

.ctsys-checkout-productos .ctsys-carrito-linea__nombre a:hover,
.ctsys-checkout-productos .ctsys-carrito-linea__nombre a:focus-visible {
	color: var(--ct-cyan);
}

.ctsys-checkout-productos .ctsys-carrito-linea__unitario {
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .83rem;
}

.ctsys-checkout-productos .ctsys-carrito-linea__cantidad {
	grid-area: cantidad;
}

.ctsys-checkout-productos .ctsys-carrito-linea__cantidad .quantity {
	display: grid;
	grid-template-columns: 46px 28px;
	grid-template-rows: repeat(2, minmax(0, 1fr));
	width: 74px;
	height: 44px;
	min-height: 44px;
	box-sizing: border-box;
	overflow: hidden;
	border: 1.5px solid var(--ct-borde);
	border-radius: 8px;
	background: #fff;
}

.ctsys-checkout-productos .ctsys-carrito-linea__cantidad input.qty {
	grid-column: 1;
	grid-row: 1 / -1;
	width: 46px;
	height: 100%;
	min-height: 0;
	box-sizing: border-box;
	padding: 0 2px;
	border: 0;
	color: var(--ct-tinta);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	text-align: center;
	appearance: textfield;
}

.ctsys-checkout-productos .ctsys-carrito-linea__cantidad input.qty::-webkit-inner-spin-button,
.ctsys-checkout-productos .ctsys-carrito-linea__cantidad input.qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.ctsys-checkout-productos .ctsys-cantidad__accion {
	display: grid;
	grid-column: 2;
	place-items: center;
	width: 28px;
	height: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	border-left: 1px solid var(--ct-naranja-hover);
	border-radius: 0;
	background: var(--ct-naranja);
	color: var(--ct-sobre-naranja);
	cursor: pointer;
}

.ctsys-checkout-productos .ctsys-cantidad__accion--subir {
	grid-row: 1;
	border-bottom: 1px solid var(--ct-naranja-hover);
}

.ctsys-checkout-productos .ctsys-cantidad__accion--bajar {
	grid-row: 2;
}

.ctsys-checkout-productos .ctsys-cantidad__accion:hover,
.ctsys-checkout-productos .ctsys-cantidad__accion:focus-visible {
	background: var(--ct-naranja-hover);
	color: var(--ct-sobre-naranja);
	outline: 0;
}

.ctsys-checkout-productos .ctsys-carrito-linea__total {
	grid-area: total;
	min-width: 112px;
	color: var(--ct-tinta);
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	text-align: right;
	white-space: nowrap;
}

.ctsys-checkout-productos__totales {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	font-size: .92rem;
	font-variant-numeric: tabular-nums;
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila--descuento {
	color: var(--ct-exito);
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila--total {
	padding-top: 12px;
	border-top: 1px solid var(--ct-borde);
	color: var(--ct-tinta);
	font-size: 1.15rem;
	font-weight: 800;
}



@media (max-width: 619px) {
	.ctsys-checkout-productos__lista {
		max-height: min(48dvh, 408px);
	}

	.ctsys-checkout-productos .ctsys-carrito-linea {
		grid-template-columns: 58px minmax(0, 1fr) 84px;
		grid-template-areas: 'imagen datos compra';
		align-items: start;
		column-gap: 10px;
		row-gap: 0;
		padding: 12px;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__imagen img {
		width: 58px;
		height: 58px;
		object-fit: contain;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__nombre {
		margin-bottom: 3px;
		font-size: .96rem;
		line-height: 1.25;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__unitario {
		font-size: .78rem;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__compra {
		display: flex;
		grid-area: compra;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-start;
		gap: 8px;
		min-width: 0;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__cantidad,
	.ctsys-checkout-productos .ctsys-carrito-linea__total {
		grid-area: auto;
	}

	.ctsys-checkout-productos .ctsys-carrito-linea__total {
		min-width: 0;
		margin-left: auto;
		font-size: .94rem;
	}
}

.ctsys-confirmar__notas {
	margin-bottom: 6px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-confirmar__notas-boton {
	padding: 0;
	border: 0;
	background: none;
	color: var(--ct-tinta);
	font: inherit;
	font-size: .9375rem;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
}

.ctsys-confirmar__notas-boton:hover,
.ctsys-confirmar__notas-boton:focus-visible {
	color: var(--ct-tinta);
	text-decoration: underline;
}

.ctsys-confirmar__notas-boton[aria-expanded='true'] {
	margin-bottom: 12px;
}

.ctsys-checkout .ctsys-notas-pedido .form-row {
	margin: 0;
}

.ctsys-confirmar__consentimientos {
	display: grid;
	gap: 10px;
	margin: 16px 0 20px;
}

.ctsys-checkout .ctsys-consentimiento,
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
	margin: 0;
}


.woocommerce form.ctsys-checkout .ctsys-consentimiento label.checkbox,
.woocommerce form.ctsys-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.45;
	cursor: pointer;
}

.ctsys-checkout .ctsys-consentimiento input[type='checkbox'],
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper input[type='checkbox'] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-checkout .ctsys-consentimiento a,
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper a {
	color: var(--ct-cyan);
	font-weight: 600;
	text-decoration: underline;
}

.ctsys-checkout .ctsys-consentimiento abbr.required {
	grid-column: 2;
	margin-top: -4px;
}

.ctsys-checkout .ctsys-consentimiento--obligatorio abbr.required {
	display: inline;
	grid-column: auto;
	margin: 0 0 0 2px;
	color: #dc2626;
	font-size: .95em;
	vertical-align: baseline;
}

.ctsys-checkout .woocommerce-terms-and-conditions-checkbox-text abbr.required {
	display: inline;
	margin-left: 2px;
	color: #dc2626;
	font-size: .95em;
	vertical-align: baseline;
}

.ctsys-checkout .place-order {
	margin: 0;
	padding: 0;
}

.ctsys-confirmar__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	padding: 14px 16px;
	border-radius: 10px;
	background: var(--ct-superficie-suave);
}

.ctsys-confirmar__total-etiqueta {
	color: var(--ct-tinta-suave);
	font-size: .9375rem;
	font-weight: 500;
}

.ctsys-confirmar__total-cifra {
	color: var(--ct-tinta);
	font-size: 1.375rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.ctsys-confirmar__total-cifra .includes_tax {
	display: block;
	color: var(--ct-tinta-suave);
	font-size: .8125rem;
	font-weight: 400;
}


.ctsys-checkout .ctsys-boton-pagar,
.ctsys-checkout #place_order {
	display: block;
	width: 100%;
	min-height: 52px;
	padding: 15px 24px;
	border: 0;
	border-radius: 8px;
	background: var(--ct-naranja);
	color: var(--ct-sobre-naranja);
	font-size: .9375rem;
	font-weight: 800;
	letter-spacing: .03em;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color var(--ct-transicion), transform var(--ct-transicion);
}

.ctsys-checkout .ctsys-boton-pagar:hover,
.ctsys-checkout #place_order:hover {
	background: var(--ct-naranja-hover);
	color: var(--ct-sobre-naranja);
}

.ctsys-checkout .ctsys-boton-pagar:focus-visible,
.ctsys-checkout #place_order:focus-visible {
	box-shadow: var(--ct-foco);
	outline: 0;
}

.ctsys-checkout .ctsys-boton-pagar:active,
.ctsys-checkout #place_order:active {
	transform: scale(.99);
}

.ctsys-confirmar__seguridad {
	margin: 12px 0 0;
	color: var(--ct-tinta-tenue);
	font-size: .8125rem;
	line-height: 1.45;
	text-align: center;
}

.ctsys-confirmar__noscript {
	margin: 0 0 14px;
	padding: 12px 14px;
	border-radius: 8px;
	background: var(--ct-aviso-tinte);
	color: var(--ct-aviso);
	font-size: .875rem;
}




@media (min-width: 992px) {
	.woocommerce-checkout .ctsys-confianza-banda {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin-bottom: 24px;
	}
}



.ctsys-checkout-guest {
	max-width: 940px;
	margin: 0 auto;
}

.ctsys-checkout-guest__intro {
	padding: 28px 32px;
	margin-bottom: 18px;
}

.ctsys-checkout-guest__intro h1 {
	margin: 3px 0 8px;
	color: var(--ct-tinta);
}

.ctsys-checkout-guest__intro p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
}

.ctsys-acceso-cuenta {
	overflow: hidden;
}

.ctsys-acceso-cuenta__cabecera {
	padding: 30px 32px 18px;
}

.ctsys-acceso-cuenta__cabecera h2 {
	margin: 4px 0 8px;
}

.ctsys-acceso-cuenta__cabecera p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
}

.ctsys-acceso-cuenta__selector {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-top: 1px solid var(--ct-borde);
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-acceso-cuenta__selector button {
	border: 0;
	padding: 15px;
	background: var(--ct-superficie-suave);
	color: var(--ct-tinta-suave);
	font-weight: 800;
	cursor: pointer;
}

.ctsys-acceso-cuenta__selector button[aria-selected='true'] {
	background: var(--ct-cyan);
	color: #fff;
}

.ctsys-acceso-cuenta__panel {
	padding: 28px 32px 32px;
}

.ctsys-acceso-cuenta__panel[hidden] {
	display: none;
}

.ctsys-acceso-cuenta__panel h3 {
	margin-top: 0;
}

.ctsys-acceso-cuenta__acciones {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

.ctsys-acceso-cuenta__acciones .button {
	margin-left: auto;
}

.ctsys-acceso-cuenta label {
	font-weight: 700;
}

.ctsys-acceso-cuenta input {
	min-height: 42px;
	border-radius: var(--ct-radio-campo);
}

.ctsys-aceptacion-terminos {
	clear: both;
	margin-top: 4px;
}

.ctsys-registro-perfil .form-row {
	margin-bottom: 16px;
}

.ctsys-registro-perfil label {
	font-weight: 700;
}

.ctsys-registro-perfil input,
.ctsys-registro-perfil select {
	min-height: 42px;
	border-radius: var(--ct-radio-campo);
}

.ctsys-registro-perfil__campos::after {
	display: table;
	clear: both;
	content: '';
}

.ctsys-registro-perfil__aviso {
	clear: both;
	margin: 2px 0 18px;
	padding: 12px;
	border-radius: 8px;
	background: var(--ct-naranja-tinte);
	color: var(--ct-naranja-osc);
	font-size: 14px;
}




.ctsys-cuenta-acceso {
	box-sizing: border-box;
	width: min(100%, 820px);
	margin: 0 auto 48px;
	padding: clamp(24px, 4vw, 40px) clamp(18px, 4vw, 40px) 0;
	border: 1px solid var(--ct-borde);
	border-radius: 16px;
	background: var(--ct-superficie);
	color: var(--ct-tinta);
	font-family: 'Alata', Arial, sans-serif;
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2,
.ctsys-cuenta-acceso p,
.ctsys-cuenta-acceso label,
.ctsys-cuenta-acceso input,
.ctsys-cuenta-acceso select,
.ctsys-cuenta-acceso button {
	font-family: 'Alata', Arial, sans-serif !important;
}

.ctsys-cuenta-acceso__cabecera {
	padding: 0 0 20px;
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2 {
	margin: 0;
	font-weight: 400;
	line-height: 1.2;
}

.ctsys-cuenta-acceso h1 {
	font-size: clamp(1.35rem, 2.4vw, 1.65rem);
	letter-spacing: -0.02em;
}

.ctsys-cuenta-acceso h2 {
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: -0.01em;
}

.ctsys-cuenta-acceso h1::after,
.ctsys-cuenta-acceso h2::after {
	display: block;
	width: 56px;
	height: 2px;
	margin-top: 10px;
	background: var(--ct-naranja);
	content: '';
}

.ctsys-cuenta-acceso__nuevo {
	margin-top: 24px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.ctsys-cuenta-acceso__panel {
	padding-top: 28px;
}

.ctsys-cuenta-acceso__nuevo p {
	max-width: 65ch;
	margin: 14px 0 18px;
	color: var(--ct-tinta-suave);
	font-size: .95rem;
	line-height: 1.6;
}

.ctsys-cuenta-acceso .button {
	display: inline-flex;
	box-sizing: border-box;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border: 0;
	border-radius: var(--ct-radio-campo);
	background: var(--ct-cyan);
	color: #fff;
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color var(--ct-transicion), box-shadow var(--ct-transicion), transform var(--ct-transicion);
}

.ctsys-cuenta-acceso__nuevo .button,
.ctsys-cuenta-acceso__accion .button {
	width: 100%;
}


.ctsys-cuenta-acceso__nuevo .button {
	background: var(--ct-naranja) !important;
	border-color: var(--ct-naranja) !important;
	color: var(--ct-tinta) !important;
}

.ctsys-cuenta-acceso__nuevo .button:hover,
.ctsys-cuenta-acceso__nuevo .button:focus-visible {
	background: var(--ct-naranja-hover) !important;
	border-color: var(--ct-naranja-hover) !important;
	color: var(--ct-tinta) !important;
}

.ctsys-cuenta-acceso .button:focus-visible {
	outline: 0;
	box-shadow: var(--ct-foco);
}

.ctsys-cuenta-acceso .button:active {
	transform: translateY(1px);
}

.ctsys-cuenta-acceso__accion .button,
.ctsys-acceso-cuenta__acciones .button,
.ctsys-modal-form .button,
.ctsys-checkout-card--cupon .button {
	background: var(--ct-cyan) !important;
	border-color: var(--ct-cyan) !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso__accion .button:hover,
.ctsys-cuenta-acceso__accion .button:focus-visible,
.ctsys-acceso-cuenta__acciones .button:hover,
.ctsys-acceso-cuenta__acciones .button:focus-visible,
.ctsys-modal-form .button:hover,
.ctsys-modal-form .button:focus-visible {
	background: var(--ct-cyan-osc) !important;
	border-color: var(--ct-cyan-osc) !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso__panel[hidden] {
	display: none;
}

.ctsys-cuenta-acceso__panel form {
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent;
	box-shadow: none !important;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword {
	margin: 2px 0 18px;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword a {
	color: var(--ct-cyan);
	font-weight: 700;
	text-underline-offset: 3px;
}

.ctsys-cuenta-acceso__acerca {
	margin-top: 28px;
	padding: 26px 0 30px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-cuenta-acceso__acerca p {
	margin: 12px 0 0;
	color: var(--ct-tinta-suave);
	line-height: 1.55;
}

/* El footer ya contiene esta información; no duplicarla en Mi cuenta. */
.ctsys-cuenta-acceso__acerca {
	display: none !important;
}

@media (min-width: 768px) {

	.ctsys-cuenta-acceso {
		width: min(100%, 980px);
		display: grid;
		grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
		column-gap: clamp(24px, 4vw, 48px);
		align-items: start;
	}

	.ctsys-cuenta-acceso__cabecera {
		grid-column: 1 / -1;
	}

	.ctsys-cuenta-acceso__nuevo {
		margin-top: 24px;
		padding: 0;
	}

	.ctsys-cuenta-acceso__panel {
		min-width: 0;
		padding-top: 24px;
	}

	.ctsys-cuenta-acceso .woocommerce-form-register,
	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}

@media (max-width: 767px) {

	.ctsys-cuenta-acceso .woocommerce-form-register,
	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) {
	display: block !important;
	width: 100% !important;
	min-height: 0;
	margin: 0 0 18px !important;
	padding: 0 !important;
	float: none !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > label {
	display: block;
	margin: 0 0 7px !important;
	padding: 0 !important;
	color: var(--ct-tinta);
	font-size: .9375rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	white-space: normal;
	overflow-wrap: anywhere;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .password-input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > input:not([type='checkbox']),
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > select {
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper > input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper > select,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .password-input > input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > input:not([type='checkbox']),
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > select {
	box-sizing: border-box !important;
	width: 100% !important;
	height: auto !important;
	min-height: 48px !important;
	padding: 10px 14px !important;
	border: 1px solid var(--ct-borde-fuerte) !important;
	border-radius: var(--ct-radio-campo) !important;
	background: var(--ct-superficie);
	font-size: 1rem !important;
	line-height: 1.35 !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) input:not([type='checkbox'])::placeholder {
	color: var(--ct-tinta-tenue);
	opacity: 1;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) input:not([type='checkbox']):focus,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) select:focus {
	border-color: var(--ct-cyan) !important;
	box-shadow: var(--ct-foco) !important;
}

.ctsys-cuenta-acceso__sesion,
.ctsys-cuenta-acceso__accion,
.ctsys-cuenta-acceso .ctsys-aceptacion-terminos {
	display: block !important;
	min-height: 0 !important;
}

.ctsys-cuenta-acceso__sesion {
	margin: 2px 0 16px !important;
}

.ctsys-cuenta-acceso__sesion label {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9375rem !important;
	font-weight: 400 !important;
	cursor: pointer;
}

.ctsys-cuenta-acceso__sesion input[type='checkbox'] {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-cuenta-acceso__accion {
	margin: 4px 0 0 !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos {
	margin: 18px 0 12px !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos label.checkbox {
	display: flex;
	min-height: 44px;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos input[type='checkbox'] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	accent-color: var(--ct-cyan);
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos a {
	color: var(--ct-cyan);
	font-weight: 700;
	text-underline-offset: 3px;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__aviso {
	margin: 2px 0 0;
	padding: 12px 14px;
	border: 1px solid var(--ct-borde);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie-suave);
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 16px;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-wide {
	grid-column: 1 / -1;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-first {
	grid-column: 1;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-last {
	grid-column: 2;
}

.ctsys-cuenta-acceso .woocommerce-form-register {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 16px;
}

.ctsys-cuenta-acceso .woocommerce-form-register > h2,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-form-aviso,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-trampa,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-registro-perfil,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-aceptacion-terminos,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-cuenta-acceso__accion,
.ctsys-cuenta-acceso .woocommerce-form-register > wc-order-attribution-inputs,
.ctsys-cuenta-acceso .woocommerce-form-register > .woocommerce-privacy-policy-text {
	grid-column: 1 / -1;
}

.ctsys-cuenta-acceso .woocommerce-form-register > .form-row-first {
	grid-column: 1;
}

.ctsys-cuenta-acceso .woocommerce-form-register > .form-row-last {
	grid-column: 2;
}



@media (min-width: 992px) {

	.ctsys-cuenta .storex-content .row > .col-lg-9 {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
	}
}

@media (min-width: 1024px) {

	html body.ctsys-cuenta .storex-content > .post-section > .container {
		box-sizing: border-box;
		width: var(--ct-contenedor-ancho);
		max-width: var(--ct-contenedor-max);
		margin-inline: auto;
		padding-inline: 0;
	}

	html body.ctsys-cuenta .storex-content > .post-section > .container > .row {
		display: block;
		width: 100%;
		margin-inline: 0;
	}

	html body.ctsys-cuenta .storex-content > .post-section > .container > .row > .col-lg-9 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
		padding-inline: 0;
	}

	.ctsys-cuenta-acceso {
		margin-top: 0;
		margin-right: auto;
		margin-left: auto;
	}
}



@media (max-width: 767px) {
	.ctsys-checkout__grid {
		grid-template-columns: 1fr;
		grid-template-areas:
			'datos'
			'transaccion';
		grid-template-rows: none;
		gap: 16px;
	}

	.ctsys-checkout__grid--con-acceso {
		grid-template-areas:
			'acceso'
			'datos'
			'transaccion';
		grid-template-rows: none;
	}

	.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) {
		grid-template-areas:
			'resumen'
			'pago'
			'confirmar';
	}
}


@media (min-width: 768px) and (max-width: 1023px) {
	.ctsys-checkout__grid {
		grid-template-columns: minmax(280px, 32fr) minmax(0, 68fr);
		gap: 16px;
	}
}

@media (max-width: 600px) {
	.ctsys-checkout-card {
		padding: 20px;
	}


	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row {
		grid-template-columns: 96px minmax(0, 1fr);
		column-gap: 10px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		font-size: .6875rem;
	}

	.ctsys-checkout-guest__intro,
	.ctsys-acceso-cuenta__cabecera,
	.ctsys-acceso-cuenta__panel {
		padding-left: 20px;
		padding-right: 20px;
	}

	.ctsys-acceso-cuenta__acciones .button {
		width: 100%;
		margin-left: 0;
	}

	.ctsys-registro-perfil .form-row-first,
	.ctsys-registro-perfil .form-row-last,
	.ctsys-acceso-cuenta .form-row-first,
	.ctsys-acceso-cuenta .form-row-last,
	.ctsys-cuenta-acceso .form-row-first,
	.ctsys-cuenta-acceso .form-row-last {
		float: none;
		width: 100%;
	}

	.ctsys-cuenta-acceso {
		width: 100%;
	margin: 0 auto 32px;
	padding: 22px 18px 0;
	border-radius: 14px;
}

	.ctsys-cuenta-acceso__nuevo {
		margin-top: 20px;
		padding: 0;
	}

	.ctsys-cuenta-acceso__panel {
		padding-top: 24px;
	}

	.ctsys-cuenta-acceso__acerca {
		margin-top: 24px;
		padding: 22px 0 24px;
	}

	.ctsys-cuenta-acceso .woocommerce-form-register {
		display: block;
	}

	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: block;
	width: 100%;
	min-height: 0;
	margin: 0 0 9px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	display: block;
	margin: 0 0 4px;
	padding: 0;
	font-family: 'Alata', Arial, sans-serif;
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input {
	display: block;
	width: 100%;
}

.ctsys-cuenta-nueva .show-password-input,
.ctsys-cuenta-nueva button.show-password-input {
	display: none !important;
}

.woocommerce .ctsys-cuenta-nueva input[type='password'] {
	padding-right: 12px;
}


.ctsys-checkout-card--facturacion .required,
.ctsys-cuenta-nueva .required,
.ctsys-checkout-card--facturacion abbr.required,
.ctsys-cuenta-nueva abbr.required {
	border: 0;
	color: #d92d20;
	font-size: .875em;
	font-weight: 400;
	line-height: inherit;
	text-decoration: none;
}


.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login {
	margin-top: 24px;
	padding-top: 0;
	border-top: 0;
}

.ctsys-checkout-card--acceso .ctsys-modal-form.ctsys-modal-form--login {
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none !important;
	color: var(--ct-tinta);
	font-family: 'Alata', Arial, sans-serif;
}

.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) {
	display: block;
	min-height: 0;
	margin: 0 0 16px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > label {
	display: block;
	margin: 0 0 6px;
	padding: 0;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
}


.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .required {
	display: none;
}


body.woocommerce-checkout .storex-content,
body.woocommerce-checkout .storex-content > .st-py-default {
	background: #f8f8f8;
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	column-gap: 20px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .woocommerce-input-wrapper,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .password-input {
	display: block;
	width: 100%;
}

.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) input:not([type='checkbox']):not([type='radio']) {
	width: 100%;
	min-height: 36px;
	height: 36px;
	padding: 5px 12px;
	border-color: #ddd;
	border-radius: 3px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 0 0 16px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones {
	gap: 14px;
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	grid-template-columns: max-content minmax(0, 1fr);
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	white-space: nowrap;
	overflow-wrap: normal;
}


.woocommerce-checkout {
	--ct-cyan: #1758dd;
	--ct-cyan-osc: #0d3fa0;
	--ct-cyan-tinte: #eef4ff;
	--ct-foco: 0 0 0 3px rgb(23 88 221 / 22%);
	--ct-naranja: #ff8514;
	--ct-naranja-hover: #d96700;
	--ct-naranja-osc: #d96700;
	--ct-naranja-tinte: #fff3e8;
	--ct-sobre-naranja: #fff;
}


.ctsys-checkout-card--acceso .ctsys-modal-form__acciones input[type='checkbox'] {
	accent-color: var(--ct-naranja);
}

.ctsys-checkout-card--acceso .ctsys-boton-login {
	background: var(--ct-naranja) !important;
	border-color: var(--ct-naranja) !important;
	color: var(--ct-sobre-naranja) !important;
}

.ctsys-checkout-card--acceso .ctsys-boton-login:hover,
.ctsys-checkout-card--acceso .ctsys-boton-login:focus-visible {
	background: var(--ct-naranja-hover) !important;
	border-color: var(--ct-naranja-hover) !important;
	color: var(--ct-sobre-naranja) !important;
}




.ctsys-checkout-card--acceso,
.ctsys-checkout-card--facturacion {
	border: 1px solid #e2e2e2;
	border-radius: 20px;
	box-shadow: 0 5px 50px -10px rgba(0, 0, 0, .05);
	font-family: 'Alata', Arial, sans-serif;
}

.ctsys-checkout-card--acceso {
	padding: 16px;
}

.ctsys-checkout-card--facturacion {
	padding: 16px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo,
.ctsys-cuenta-nueva__titulo {
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.3;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo {
	margin-bottom: 12px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo::after,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo::after,
.ctsys-cuenta-nueva__titulo::after {
	width: 50px;
	margin-top: 7px;
}

.ctsys-checkout-card--facturacion .ctsys-checkout-card__cabecera {
	margin-bottom: 14px;
}

.ctsys-checkout-card--facturacion .ctsys-checkout-card__cabecera p:last-child,
.ctsys-cuenta-nueva__nota {
	font-family: 'Alata', Arial, sans-serif;
	font-size: .875rem;
	line-height: 1.4;
}

.ctsys-acceso-checkout__selector {
	gap: 8px 18px;
}

.ctsys-acceso-checkout__selector label {
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row,
.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) {
	display: grid;
	grid-template-columns: minmax(128px, 42%) minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-height: 36px;
	margin: 0 0 8px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > label {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	padding: 0;
	color: var(--ct-tinta);
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-checkout-card--facturacion .form-row > .password-input,
.ctsys-checkout-card--facturacion .form-row > input:not([type='checkbox']),
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input,
.ctsys-cuenta-nueva .form-row > input:not([type='checkbox']),
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .woocommerce-input-wrapper,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .password-input,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > input:not([type='checkbox']) {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-cuenta-nueva .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-checkout-card--facturacion .form-row select,
.woocommerce .ctsys-cuenta-nueva .form-row select {
	min-height: 36px;
	height: 36px;
	padding: 5px 12px;
	border-color: #ddd;
	border-radius: 3px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	line-height: 1.2;
}

.ctsys-checkout-card--facturacion .form-row input::placeholder,
.ctsys-cuenta-nueva .form-row input::placeholder,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row input::placeholder {
	color: #9aa2ad;
}

.ctsys-checkout-card--facturacion .select2-container .select2-selection--single {
	height: 36px;
	border-color: #ddd;
	border-radius: 3px;
}

.ctsys-checkout-card--facturacion .select2-container {
	height: 36px !important;
}

.ctsys-checkout-card--facturacion .select2-container .select2-selection--single .select2-selection__rendered {
	padding-left: 12px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
	line-height: 34px;
}

.ctsys-checkout-card--facturacion .select2-container .select2-selection--single .select2-selection__arrow {
	height: 34px;
}

.ctsys-cuenta-nueva {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.ctsys-cuenta-nueva__titulo {
	margin-bottom: 5px;
}

.ctsys-cuenta-nueva__nota {
	margin-bottom: 10px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login {
	margin-top: 14px;
	padding-top: 14px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 4px 0 10px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones {
	display: grid;
	gap: 12px;
	margin: 0;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones label.checkbox {
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-boton-login {
	width: 100%;
	min-height: 40px;
	margin: 0;
	border-radius: 3px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: .9375rem;
	text-transform: uppercase;
}

@media (max-width: 600px) {
	.ctsys-checkout-card--acceso,
	.ctsys-checkout-card--facturacion {
		padding: 14px;
	}

	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row,
	.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) {
		grid-template-columns: minmax(128px, 42%) minmax(0, 1fr);
		column-gap: 10px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label,
	.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > label {
		font-size: .9375rem;
	}

	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row {
		grid-template-columns: max-content minmax(0, 1fr);
		column-gap: 16px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		white-space: nowrap;
		overflow-wrap: normal;
	}
}

@media (max-width: 600px) {
	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		font-size: .875rem;
		white-space: normal;
	}
}

/* El acceso de visitante no comparte la retícula lateral del tablero autenticado. */
html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) {
	display: block;
}

@media (min-width: 768px) {
	html body.ctsys-cuenta .storex-content > #post-section:has(.ctsys-cuenta-acceso) > .container > .row {
		--bs-gutter-y: 0;
		margin-top: 0;
	}

	html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) > .woocommerce-notices-wrapper:empty {
		display: none;
	}

	html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) > .ctsys-cuenta-acceso {
		margin-top: 0;
	}
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: block !important;
	float: none !important;
	width: 100% !important;
	min-height: 0;
	margin: 0 0 9px !important;
	padding: 0;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	display: block;
	margin: 0 0 4px;
	padding: 0;
	font-family: 'Alata', Arial, sans-serif;
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input {
	display: block;
	width: 100%;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-checkout-card--facturacion .form-row select,
.woocommerce .ctsys-cuenta-nueva .form-row input:not([type='checkbox']):not([type='radio']) {
	width: 100%;
	height: 36px;
	min-height: 36px;
	padding: 5px 12px;
	border-radius: 3px;
	font-family: 'Alata', Arial, sans-serif;
	font-size: 1rem;
}

.ctsys-cuenta-nueva .show-password-input,
.ctsys-cuenta-nueva button.show-password-input {
	display: none !important;
}

.ctsys-checkout-card--facturacion .required,
.ctsys-cuenta-nueva .required,
.ctsys-checkout-card--facturacion abbr.required,
.ctsys-cuenta-nueva abbr.required {
	border: 0;
	color: #d92d20;
	font-size: .875em;
	font-weight: 400;
	text-decoration: none;
}


@media (max-width: 619px) {
	.woocommerce-checkout .ctsys-checkout-card {
		padding: 16px 12px;
		border-radius: 16px;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen {
		padding: 18px 12px 16px;
	}

	.woocommerce-checkout .ctsys-resumen__cabecera {
		align-items: center;
		gap: 0;
		margin-bottom: 14px;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-checkout-card__titulo {
		margin-bottom: 0;
		font-size: 1.08rem;
		line-height: 1.2;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-checkout-card__titulo::after {
		width: 42px;
		height: 2px;
		margin-top: 8px;
	}

	.woocommerce-checkout .ctsys-checkout-productos__lista {
		border-radius: 12px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea {
		grid-template-columns: 56px minmax(0, 1fr) 88px;
		grid-template-areas: 'imagen datos compra';
		column-gap: 10px;
		padding: 12px 10px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__imagen img {
		width: 56px;
		height: 56px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__datos {
		padding-top: 1px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__nombre {
		margin-bottom: 5px;
		font-size: .91rem;
		line-height: 1.22;
		overflow-wrap: anywhere;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__unitario {
		margin-top: 6px;
		font-size: .75rem;
		line-height: 1.25;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__compra {
		align-items: flex-end;
		gap: 8px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__cantidad .quantity {
		width: 74px;
		height: 44px;
	}

	.woocommerce-checkout .ctsys-checkout-productos .ctsys-carrito-linea__total {
		font-size: .88rem;
		line-height: 1.15;
		text-align: right;
	}

	.woocommerce-checkout .ctsys-checkout-productos__totales {
		gap: 8px;
		margin-top: 12px;
		padding-inline: 2px;
	}

	.woocommerce-checkout .ctsys-checkout-productos__totales .ctsys-resumen-fila {
		font-size: .88rem;
	}
}



.ctsys-campo-error,
.ctsys-campo--error {

	--ctsys-icono-alerta: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1 5h2v8h-2V7zm0 10h2v2h-2v-2z%27/%3E%3C/svg%3E");
}

.ctsys-campo-error {
	display: block;
	margin-top: 6px;
	color: var(--ct-error);
	font-size: .82rem;
	font-weight: 600;
	line-height: 1.35;
	animation: ctsys-error-entra 260ms var(--ct-ease) both;
}


.ctsys-campo-error::before {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 6px;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask: var(--ctsys-icono-alerta) center / contain no-repeat;
	mask: var(--ctsys-icono-alerta) center / contain no-repeat;
}

.ctsys-campo--error input:not([type="checkbox"]),
.ctsys-campo--error select,
.ctsys-campo--error textarea {
	border-color: var(--ct-error) !important;
	box-shadow: 0 0 0 3px rgba(207, 54, 6, .18);
}


.ctsys-campo--error {
	animation: ctsys-campo-sacude 320ms var(--ct-ease) both;
}

.ctsys-campo--error .woocommerce-form__label-for-checkbox {
	color: var(--ct-error);
}

@keyframes ctsys-error-entra {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: none; }
}

@keyframes ctsys-campo-sacude {
	0%, 100% { transform: none; }
	20%      { transform: translateX(-5px); }
	40%      { transform: translateX(4px); }
	60%      { transform: translateX(-3px); }
	80%      { transform: translateX(2px); }
}


.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente,
.ctsys-boton-pagar--pendiente {
	background: var(--ct-borde-fuerte) !important;
	border-color: var(--ct-borde-fuerte) !important;
	color: var(--ct-tinta-tenue) !important;
	box-shadow: none !important;
	cursor: not-allowed;
}

.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente:hover,
.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente:focus-visible,
.ctsys-boton-pagar--pendiente:hover,
.ctsys-boton-pagar--pendiente:focus-visible {
	background: var(--ct-borde-fuerte) !important;
	border-color: var(--ct-borde-fuerte) !important;
	color: var(--ct-tinta-tenue) !important;
}

@media (prefers-reduced-motion: reduce) {
	.ctsys-campo-error,
	.ctsys-campo--error {
		animation: none;
	}
}

.ctsys-cuenta-acceso {
	--ctsys-acceso-azul: #1757d9;
	--ctsys-acceso-azul-oscuro: #0e2f73;
	--ctsys-acceso-naranja: #ff7a00;
	--ctsys-acceso-borde: #d9e2f0;
	--ctsys-acceso-borde-suave: #e8edf5;
	--ctsys-acceso-texto: #071d49;
	--ctsys-acceso-texto-suave: #5e6a85;
	--ctsys-acceso-icono-correo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e6a85' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
	--ctsys-acceso-icono-candado: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e6a85' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
	--ctsys-acceso-ojo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12s3.4-5.5 9.5-5.5S21.5 12 21.5 12 18.1 17.5 12 17.5 2.5 12 2.5 12Z'/%3E%3Ccircle cx='12' cy='12' r='2.5'/%3E%3C/svg%3E");
	--ctsys-acceso-ojo-tachado: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18'/%3E%3Cpath d='M10.5 6.7A10.9 10.9 0 0 1 12 6.5c6.1 0 9.5 5.5 9.5 5.5a16.5 16.5 0 0 1-3.1 3.6M6.1 6.1A16.5 16.5 0 0 0 2.5 12s3.4 5.5 9.5 5.5c1.2 0 2.3-.2 3.3-.6'/%3E%3Cpath d='M9.8 9.8a3.1 3.1 0 0 0 4.4 4.4'/%3E%3C/svg%3E");
	box-sizing: border-box;
	width: min(100%, 1160px);
	margin: 0 auto clamp(28px, 4vw, 44px);
	padding: clamp(24px, 3vw, 36px);
	border: 1px solid var(--ctsys-acceso-borde);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 24px rgba(14, 47, 115, .06);
	color: var(--ctsys-acceso-texto);
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2 {
	font-family: 'Alata', Arial, sans-serif !important;
}

.ctsys-cuenta-acceso p,
.ctsys-cuenta-acceso label,
.ctsys-cuenta-acceso input,
.ctsys-cuenta-acceso button {
	font-family: 'Basic', Arial, sans-serif !important;
}

.ctsys-cuenta-acceso h1 {
	font-size: clamp(1.5rem, 2.2vw, 1.75rem);
	font-weight: 400;
	letter-spacing: -.025em;
}

.ctsys-cuenta-acceso h2 {
	font-size: 1.12rem;
	font-weight: 400;
	letter-spacing: -.015em;
}

.ctsys-cuenta-acceso h1::after,
.ctsys-cuenta-acceso h2::after {
	width: 42px;
	height: 2px;
	margin-top: 8px;
	background: var(--ctsys-acceso-naranja);
}

.ctsys-cuenta-acceso__cabecera {
	padding-bottom: 16px;
	border-bottom-color: var(--ctsys-acceso-borde-suave);
}

.ctsys-cuenta-acceso__nuevo,
.ctsys-cuenta-acceso__panel {
	margin-top: 22px;
	padding-top: 0;
}

.ctsys-cuenta-acceso__nuevo p {
	max-width: 50ch;
	margin: 12px 0 16px;
	color: var(--ctsys-acceso-texto-suave);
	font-size: .94rem;
	line-height: 1.5;
}

.ctsys-cuenta-acceso:has([data-ctsys-access-panel='register']:not([hidden])) .ctsys-cuenta-acceso__nuevo p {
	color: var(--ct-texto-negro) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register > h2 {
	margin: 0 0 16px !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .ctsys-registro-perfil label,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register > .form-row > label,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register input,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register select {
	color: var(--ct-texto-negro) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register input::placeholder {
	color: var(--ct-texto-negro) !important;
	opacity: 1;
}

.ctsys-cuenta-acceso .button {
	display: inline-flex !important;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0 20px !important;
	border: 1px solid transparent;
	border-radius: 8px !important;
	background-image: none !important;
	font-family: 'Basic', Arial, sans-serif !important;
	font-size: .95rem;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1.2;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.ctsys-cuenta-acceso__nuevo .button {
	background-color: var(--ctsys-acceso-naranja) !important;
	border-color: var(--ctsys-acceso-naranja) !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso__nuevo .button:hover,
.ctsys-cuenta-acceso__nuevo .button:focus-visible {
	background-color: #d86500 !important;
	border-color: #d86500 !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso__accion .button {
	background-color: var(--ctsys-acceso-azul) !important;
	border-color: var(--ctsys-acceso-azul) !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso__accion .button:hover,
.ctsys-cuenta-acceso__accion .button:focus-visible {
	background-color: var(--ctsys-acceso-azul-oscuro) !important;
	border-color: var(--ctsys-acceso-azul-oscuro) !important;
	color: #fff !important;
}

.ctsys-cuenta-acceso .button:focus-visible {
	box-shadow: 0 0 0 3px rgba(31, 95, 229, .18);
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) {
	margin-bottom: 10px !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > label {
	margin-bottom: 5px !important;
	color: var(--ctsys-acceso-texto);
	font-family: 'Basic', Arial, sans-serif !important;
	font-size: .95rem !important;
	font-weight: 700 !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text {
	box-sizing: border-box;
	min-height: 46px !important;
	border-color: #cbd7e8 !important;
	border-radius: 8px !important;
	background-color: #fff !important;
	background-repeat: no-repeat !important;
	background-position: 14px 50% !important;
	background-size: 17px 17px !important;
	color: var(--ctsys-acceso-texto) !important;
	font-family: 'Basic', Arial, sans-serif !important;
	font-size: 1rem !important;
	line-height: 1.3 !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='username'] {
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-correo) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .password-input {
	position: relative !important;
	display: block !important;
	width: 100% !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password'] {
	padding-right: 48px !important;
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-candado) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text::placeholder {
	color: #7f8da5;
	opacity: 1;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text:focus {
	border-color: var(--ctsys-acceso-azul) !important;
	box-shadow: 0 0 0 3px rgba(31, 95, 229, .13) !important;
	outline: 0;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input.woocommerce-Input.input-text,
html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input.woocommerce-Input.input-text {
	height: 46px !important;
	min-height: 46px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-color: #cbd7e8 !important;
	border-radius: 8px !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input[name='username'] {
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-correo) !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input[name='password'] {
	padding-right: 48px !important;
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-candado) !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input.woocommerce-Input.input-text:focus,
html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input.woocommerce-Input.input-text:focus {
	border-color: var(--ctsys-acceso-azul) !important;
	box-shadow: 0 0 0 3px rgba(31, 95, 229, .13) !important;
	outline: 0;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:hover,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:active,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus-visible {
	position: absolute !important;
	top: 50% !important;
	right: 5px !important;
	z-index: 2;
	display: grid !important;
	width: 36px !important;
	height: 36px !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-50%) !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--ctsys-acceso-texto-suave) !important;
	font-size: 0 !important;
	line-height: 1 !important;
	place-items: center;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:hover,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus-visible {
	color: var(--ctsys-acceso-azul) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input::before {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	background: currentColor !important;
	content: '' !important;
	-webkit-mask: var(--ctsys-acceso-ojo-tachado) center / contain no-repeat !important;
	mask: var(--ctsys-acceso-ojo-tachado) center / contain no-repeat !important;
	pointer-events: none;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input.display-password::before {
	-webkit-mask-image: var(--ctsys-acceso-ojo) !important;
	mask-image: var(--ctsys-acceso-ojo) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input::after {
	display: none !important;
	content: none !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-ms-reveal,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-ms-clear,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-webkit-credentials-auto-fill-button,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-webkit-clear-button {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.ctsys-cuenta-acceso__sesion {
	margin: 0 0 8px !important;
}

.ctsys-cuenta-acceso__accion {
	margin: 0 !important;
	padding: 0 !important;
}

.ctsys-cuenta-acceso__sesion label {
	min-height: 24px;
	gap: 8px;
	color: var(--ctsys-acceso-texto-suave);
	font-family: 'Basic', Arial, sans-serif !important;
	font-size: .9rem !important;
}

.ctsys-cuenta-acceso__sesion input[type='checkbox'] {
	width: 16px;
	height: 16px;
	accent-color: var(--ctsys-acceso-azul);
}

.ctsys-cuenta-acceso .woocommerce-LostPassword {
	margin: 0 0 8px;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword a {
	color: var(--ctsys-acceso-azul);
	font-family: 'Basic', Arial, sans-serif !important;
	font-size: .9rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (min-width: 768px) {
	.ctsys-cuenta-acceso {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		column-gap: 0;
		align-items: start;
	}

	.ctsys-cuenta-acceso__cabecera {
		grid-column: 1 / -1;
	}

	.ctsys-cuenta-acceso__nuevo {
		padding-right: clamp(28px, 3.5vw, 44px);
	}

	.ctsys-cuenta-acceso__panel {
		min-width: 0;
		padding-left: clamp(28px, 3.5vw, 44px);
		border-left: 1px solid var(--ctsys-acceso-borde-suave) !important;
	}
}


@media (max-width: 767px) {
	.ctsys-cuenta-acceso {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		padding: 18px 18px 22px;
		border-radius: 16px;
	}

	.ctsys-cuenta-acceso__cabecera {
		order: 0;
		padding-bottom: 14px;
	}

	.ctsys-cuenta-acceso__nuevo {
		order: 1;
		margin-top: 16px;
	}

	.ctsys-cuenta-acceso__panel {
		order: 2;
		margin-top: 20px;
		padding-top: 18px;
		border-top: 1px solid var(--ctsys-acceso-borde-suave);
	}

	.ctsys-cuenta-acceso__nuevo p {
		margin-bottom: 14px;
		font-size: .94rem;
		line-height: 1.48;
	}

	.ctsys-cuenta-acceso h1 {
		font-size: 1.5rem;
	}

	.ctsys-cuenta-acceso h2 {
		font-size: 1.08rem;
	}

	.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text,
	.ctsys-cuenta-acceso .button {
		min-height: 48px !important;
	}
}
