#jslock {
	background: rgba(255, 255, 255, 0.35);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999999999;
}
#jslock > div {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 50px;
	transform: translate(-50%, -50%);
}


#jslock .loader {
	display: block;
	width: 50px;
	aspect-ratio: 1;
	border-radius: 50%;
	padding: 6px;
	background:
			conic-gradient(from 135deg at top,currentColor 90deg, #0000 0) 0 calc(50% - 4px)/17px 8.5px,
			radial-gradient(farthest-side at bottom left,#0000 calc(100% - 6px),currentColor calc(100% - 5px) 99%,#0000) top right/50%  50% content-box content-box,
			radial-gradient(farthest-side at top        ,#0000 calc(100% - 6px),currentColor calc(100% - 5px) 99%,#0000) bottom   /100% 50% content-box content-box;
	background-repeat: no-repeat;
	animation: l11 1s infinite linear;
}
@keyframes l11{
	100%{transform: rotate(1turn)}
}

.select2-container .select2-selection--single {
    font-size: var(--scale5);
    line-height: var(--scale5)!important;
    height: auto;
    width: 100%;
    box-sizing: border-box;
    padding: var(--scale4) calc(var(--scale5)*1.125);
    background: #fff;
    border: solid 1px var(--c-sep);
    border-radius: var(--rad-s);
    transition: var(--an-f);
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: calc(calc(var(--scale4)*2) + var(--scale6));
}

.avatar {
	aspect-ratio: 1 / 1;
	background: #eee;
	background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ddd' d='M0 96C0 60.7 28.7 32 64 32H448c35.3 0 64 28.7 64 64V416c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6h96 32H424c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z'/%3E%3C/svg%3E");
	background-size: 1rem auto;
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: 100rem;
	position: relative;
	font-size: 0;
}
.avatar:first-letter {
	font-size: 1rem;
}

.beneficios-wrapper {
	font-size: 0;
	margin: 0 -.375rem!important;
}
.beneficios-wrapper .beneficio {
	display: inline-block;
	vertical-align: top;
	margin: .375rem;
	position: relative;
}
.beneficios-wrapper .beneficio.acumulable + .beneficio:not(.acumulable) {
	margin-left: 1.5rem;
}
.beneficios-wrapper .beneficio:after {
	content: 'No Acumulable';
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	font-size: .5rem;
	text-align: center;
}
.beneficios-wrapper .beneficio.acumulable:after {
	content: 'Acumulable';
}
.beneficios-wrapper > a {
	display: inline-block;
	vertical-align: top;
	line-height: 2.375rem;
	height: 2.375rem;
	font-size: .875rem;
	padding: 0 1.25em;
	margin: .375rem;
	text-align: center;
}
.list-item .beneficios-wrapper > h6 + a {
	font-size: 0;
	width: 2.375rem;
	margin-left: 1.5rem;
}
.beneficios-wrapper > h6 + a i {
	margin: 0;
}
.beneficios-wrapper > a i {
	font-size: 1rem;
}
.beneficios-wrapper .beneficio a {
	position: absolute;
	top: 0;
	right: 0;
	transform: translate(25% , -25%);
	width: 1rem;
	height: 1rem;
	line-height: 1rem;
	text-align: center;
	font-size: .75rem;
	color: #fff;
	background: var(--c-acc);
	border-radius: 1rem;
}

.beneficio {
	font-size: 1rem;
	background: #b2081511;
	border-radius: .25rem;
	display: inline-block;
	vertical-align: top;
	padding: 0 .625rem;
	position: relative;
	
}
.beneficio span {
	font-size: 1.5em;
	display: inline-block;
	color: inherit!important;
	vertical-align: top;
	height: 2.5rem;
	line-height: 2.5rem;
}
.beneficio span + span:before {
	content: '+ ';
	color: #56585f;
}
.beneficio span strong {
	font-weight: 700;
	color: #b20815;
	font-size: 1.5em;
	letter-spacing: -.02em;
	margin-right: .125rem;
}
.beneficio span small {
	font-size: .5rem;
	letter-spacing: 0;
	text-transform: uppercase;
	width: 1em;
	text-align: center;
	font-weight: 600;
	display: inline-block;
	line-height: 1.1em;
	padding-right: 2em;
}

.modal .beneficio-list .field label {
	margin-top: 0;
}

.categorias-list .col12 label {
	font-weight: bold;
}
.categorias-list label.switch:first-child {
	margin-top: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	display: block;
}

.main-campanias .list-item .col {
	vertical-align: middle;
}
.main-campanias .list-item .actions {
	transform: none;
	top: 2rem;
}
.campania-promociones-wrapper {
	margin: 1rem -8.5rem .5rem 2rem;
	background: #fafafa;
	border-radius: .5rem;
	padding: 1.5rem;
	border: dashed 1px #999;
}
.campania-promociones-wrapper h4 {
	border-bottom: solid 1px #999;
	padding-bottom: .5rem;
}
.campania-promociones-wrapper h4 a {
	float: right;
	font-size: .875rem;
	font-weight: normal;
	color: #777;
}
.campania-promociones-wrapper h4 a i{
	margin-right: .5rem;
	color: var(--c-acc);
}
.campania-promociones-wrapper .row .col {
	vertical-align: top;
}
.campania-promociones-wrapper + form button {
	display: block;
	margin: 1rem -8.5rem .5rem 2rem;
	background: #fff;
}

.main-campanias .entities-list {
	line-height: 2.375rem;
	vertical-align: top;
}
.main-campanias .entities-list li {
	display: inline-block;
	vertical-align: top;
}
.main-campanias .entities-list li p {
	line-height: inherit;
}
.main-campanias .entities-list li + li p:before {
	content: ' / ';
	color: #aaa;
}
.main-campanias .entities-list .avatar,
.main-campanias .entities-list li a {
	display: block;
	width: 2.375rem;
	height: 2.375rem;
	object-fit: contain;
	border: none;
	border-radius: 5rem;
	text-align: center;
	margin-bottom: .25rem;
}
.main-campanias .entities-list li a {
	padding: 0;
	line-height: 2.375rem;
}
.main-campanias .entities-list .avatar img {
	border-radius: 10rem;
	width: 2.375rem;
	height: 2.375rem;
	object-fit: contain;
}
.main-campanias .entities-list span.avatar {
	background: #faf2f2;
	font-weight: bold;
}

.modal .comercios-list p {
	padding: .25rem 1rem;
	border-radius: 10rem;
	background: #fff;
	border: solid 1px #ccc;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-right: 2rem;
	position: relative;
}
.modal .comercios-list p a {
	position: absolute;
	right: 0;
	width: 2rem;
	text-align: center;
	color: var(--c-acc);
}
.access-block > * {
	color: #ffffff!important;
}
.access-block i {
	font-size: 3rem;
	vertical-align: middle;
	margin-right: 1rem;
}
i.filetype {
	font-style: normal;
	font-weight: bold;
	color: #252525;
}
i.filetype:before {
	content: '.';
}
.slick-wrapper .slide {
	position: relative;
}
.slick-wrapper .slide .slide-box {
	position: absolute;
	z-index: 10;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.slick-wrapper .slide .slide-box .bt {
	position: absolute;
	right: 1rem;
	bottom: 1rem;
	background: var(--c-acc-op25);
}
.slick-wrapper .slide .slide-box:hover .bt {
	background: var(--c-acc);
}
.actions form.search > .field {
	display: inline-block;
}
.actions form.search {
	border: none;
}
